@sabaaa1/common 0.1.7 → 0.1.14

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 (674) hide show
  1. package/API/API.cjs +1 -1
  2. package/API/API.d.ts +16 -12
  3. package/API/API.mjs +73 -69
  4. package/API/accessCodeCalls.cjs +1 -0
  5. package/API/accessCodeCalls.d.ts +23 -0
  6. package/API/accessCodeCalls.mjs +23 -0
  7. package/API/admin-calls.cjs +1 -1
  8. package/API/admin-calls.mjs +5 -7
  9. package/API/ai-calls.cjs +1 -1
  10. package/API/ai-calls.mjs +11 -10
  11. package/API/brotherhoodCalls.cjs +1 -1
  12. package/API/brotherhoodCalls.mjs +43 -69
  13. package/API/callLifiAPI.cjs +1 -1
  14. package/API/callLifiAPI.mjs +8 -7
  15. package/API/callOdosAPI.cjs +1 -1
  16. package/API/callOdosAPI.mjs +16 -16
  17. package/API/callOkxAPI.cjs +1 -0
  18. package/API/callOkxAPI.d.ts +10 -0
  19. package/API/callOkxAPI.mjs +13 -0
  20. package/API/callOneInchAPI.cjs +1 -1
  21. package/API/callOneInchAPI.mjs +8 -7
  22. package/API/callRelayer.cjs +1 -1
  23. package/API/callRelayer.d.ts +11 -0
  24. package/API/callRelayer.mjs +15 -7
  25. package/API/checkRisk.cjs +1 -1
  26. package/API/checkRisk.mjs +5 -4
  27. package/API/duneAPI.cjs +1 -1
  28. package/API/duneAPI.mjs +2 -3
  29. package/API/enclaveCalls.cjs +1 -1
  30. package/API/enclaveCalls.mjs +9 -11
  31. package/API/fetchCommitmentsCache.cjs +1 -1
  32. package/API/fetchCommitmentsCache.d.ts +2 -2
  33. package/API/fetchCommitmentsCache.mjs +13 -10
  34. package/API/generate-trading-points.cjs +1 -1
  35. package/API/generate-trading-points.mjs +34 -39
  36. package/API/get-token-data.cjs +1 -1
  37. package/API/get-token-data.mjs +5 -4
  38. package/API/getBridgeProtocols.cjs +1 -1
  39. package/API/getBridgeProtocols.mjs +4 -3
  40. package/API/getGasEstimates.cjs +1 -1
  41. package/API/getGasEstimates.d.ts +2 -1
  42. package/API/getGasEstimates.mjs +14 -16
  43. package/API/getLifiStatus.cjs +1 -1
  44. package/API/getLifiStatus.mjs +11 -10
  45. package/API/getRelayerURL.cjs +1 -1
  46. package/API/getRelayerURL.mjs +4 -4
  47. package/API/getServerURL.cjs +1 -1
  48. package/API/getServerURL.mjs +42 -36
  49. package/API/getTokenPrice.cjs +1 -1
  50. package/API/getTokenPrice.d.ts +0 -11
  51. package/API/getTokenPrice.mjs +8 -23
  52. package/API/getWebsiteURL.cjs +1 -1
  53. package/API/getWebsiteURL.d.ts +1 -1
  54. package/API/getWebsiteURL.mjs +6 -7
  55. package/API/index.d.ts +2 -1
  56. package/API/is-tx-stateless.cjs +1 -1
  57. package/API/is-tx-stateless.mjs +17 -22
  58. package/API/kycCalls.cjs +1 -1
  59. package/API/kycCalls.d.ts +2 -2
  60. package/API/kycCalls.mjs +31 -30
  61. package/API/leaderboardCalls.cjs +1 -1
  62. package/API/leaderboardCalls.mjs +11 -16
  63. package/API/proxyAccountsCalls.cjs +1 -1
  64. package/API/proxyAccountsCalls.mjs +19 -18
  65. package/API/referralsCalls.cjs +1 -1
  66. package/API/referralsCalls.mjs +16 -24
  67. package/API/relayCalls.cjs +1 -1
  68. package/API/relayCalls.mjs +6 -8
  69. package/API/resolve-sns.cjs +1 -0
  70. package/API/resolve-sns.d.ts +1 -0
  71. package/API/resolve-sns.mjs +12 -0
  72. package/API/restoreSnapshots.cjs +1 -1
  73. package/API/restoreSnapshots.mjs +5 -5
  74. package/API/rewardsUserCalls.cjs +1 -1
  75. package/API/rewardsUserCalls.mjs +37 -54
  76. package/API/seedless-calls.cjs +1 -0
  77. package/API/seedless-calls.d.ts +53 -0
  78. package/API/seedless-calls.mjs +12 -0
  79. package/API/send-telegram-callback.cjs +1 -1
  80. package/API/send-telegram-callback.mjs +9 -11
  81. package/API/simulate-batch-tx.cjs +1 -1
  82. package/API/simulate-batch-tx.mjs +11 -13
  83. package/API/solana-calls.cjs +1 -0
  84. package/API/solana-calls.d.ts +34 -0
  85. package/API/solana-calls.mjs +19 -0
  86. package/API/tenderly.api.cjs +1 -1
  87. package/API/tenderly.api.mjs +48 -59
  88. package/API/token-calls.cjs +1 -1
  89. package/API/token-calls.mjs +11 -13
  90. package/API/weeklyAnalyticCalls.cjs +1 -1
  91. package/API/weeklyAnalyticCalls.mjs +9 -14
  92. package/README.md +164 -0
  93. package/_virtual/_commonjsHelpers.cjs +1 -0
  94. package/_virtual/_commonjsHelpers.mjs +30 -0
  95. package/_virtual/bn.cjs +1 -0
  96. package/_virtual/bn.mjs +4 -0
  97. package/_virtual/bn2.cjs +1 -0
  98. package/_virtual/bn2.mjs +4 -0
  99. package/_virtual/common.cjs +1 -0
  100. package/_virtual/common.mjs +4 -0
  101. package/_virtual/common2.cjs +1 -0
  102. package/_virtual/common2.mjs +4 -0
  103. package/_virtual/hash.cjs +1 -0
  104. package/_virtual/hash.mjs +4 -0
  105. package/_virtual/index.cjs +1 -0
  106. package/_virtual/index.mjs +6 -0
  107. package/_virtual/index10.cjs +1 -0
  108. package/_virtual/index10.mjs +6 -0
  109. package/_virtual/index11.cjs +1 -0
  110. package/_virtual/index11.mjs +6 -0
  111. package/_virtual/index12.cjs +1 -0
  112. package/_virtual/index12.mjs +6 -0
  113. package/_virtual/index13.cjs +1 -0
  114. package/_virtual/index13.mjs +6 -0
  115. package/_virtual/index14.cjs +1 -0
  116. package/_virtual/index14.mjs +6 -0
  117. package/_virtual/index15.cjs +1 -0
  118. package/_virtual/index15.mjs +6 -0
  119. package/_virtual/index16.cjs +1 -0
  120. package/_virtual/index16.mjs +6 -0
  121. package/_virtual/index17.cjs +1 -0
  122. package/_virtual/index17.mjs +6 -0
  123. package/_virtual/index18.cjs +1 -0
  124. package/_virtual/index18.mjs +6 -0
  125. package/_virtual/index19.cjs +1 -0
  126. package/_virtual/index19.mjs +6 -0
  127. package/_virtual/index2.cjs +1 -0
  128. package/_virtual/index2.mjs +6 -0
  129. package/_virtual/index20.cjs +1 -0
  130. package/_virtual/index20.mjs +6 -0
  131. package/_virtual/index21.cjs +1 -0
  132. package/_virtual/index21.mjs +6 -0
  133. package/_virtual/index22.cjs +1 -0
  134. package/_virtual/index22.mjs +4 -0
  135. package/_virtual/index3.cjs +1 -0
  136. package/_virtual/index3.mjs +6 -0
  137. package/_virtual/index4.cjs +1 -0
  138. package/_virtual/index4.mjs +6 -0
  139. package/_virtual/index5.cjs +1 -0
  140. package/_virtual/index5.mjs +6 -0
  141. package/_virtual/index6.cjs +1 -0
  142. package/_virtual/index6.mjs +6 -0
  143. package/_virtual/index7.cjs +1 -0
  144. package/_virtual/index7.mjs +6 -0
  145. package/_virtual/index8.cjs +1 -0
  146. package/_virtual/index8.mjs +6 -0
  147. package/_virtual/index9.cjs +1 -0
  148. package/_virtual/index9.mjs +6 -0
  149. package/_virtual/inherits_browser.cjs +1 -0
  150. package/_virtual/inherits_browser.mjs +4 -0
  151. package/_virtual/ripemd.cjs +1 -0
  152. package/_virtual/ripemd.mjs +4 -0
  153. package/_virtual/scrypt.cjs +1 -0
  154. package/_virtual/scrypt.mjs +4 -0
  155. package/_virtual/sha.cjs +1 -0
  156. package/_virtual/sha.mjs +4 -0
  157. package/_virtual/sha3.cjs +1 -0
  158. package/_virtual/sha3.mjs +4 -0
  159. package/_virtual/utils.cjs +1 -0
  160. package/_virtual/utils.mjs +4 -0
  161. package/_virtual/utils2.cjs +1 -0
  162. package/_virtual/utils2.mjs +4 -0
  163. package/constants/backend.constants.cjs +1 -1
  164. package/constants/backend.constants.d.ts +2 -1
  165. package/constants/backend.constants.mjs +5 -7
  166. package/constants/chains.constants.cjs +1 -1
  167. package/constants/chains.constants.d.ts +5 -0
  168. package/constants/chains.constants.mjs +63 -35
  169. package/constants/coingecko.constants.cjs +1 -1
  170. package/constants/coingecko.constants.d.ts +1 -1
  171. package/constants/coingecko.constants.mjs +18 -11
  172. package/constants/contracts.constants.cjs +1 -1
  173. package/constants/contracts.constants.mjs +19 -15
  174. package/constants/deploy-data/deploy-data-arbMainnet.json.cjs +1 -1
  175. package/constants/deploy-data/deploy-data-arbMainnet.json.mjs +1218 -8
  176. package/constants/deploy-data/deploy-data-arcTestnet.json.cjs +1 -1
  177. package/constants/deploy-data/deploy-data-arcTestnet.json.mjs +1214 -4
  178. package/constants/deploy-data/deploy-data-base.json.cjs +1 -1
  179. package/constants/deploy-data/deploy-data-base.json.mjs +1218 -8
  180. package/constants/deploy-data/deploy-data-ethMainnet.json.cjs +1 -1
  181. package/constants/deploy-data/deploy-data-ethMainnet.json.mjs +1213 -3
  182. package/constants/deploy-data/deploy-data-optimism.json.cjs +1 -1
  183. package/constants/deploy-data/deploy-data-optimism.json.mjs +1218 -8
  184. package/constants/deploy-data/deploy-data-polygon.json.cjs +1 -1
  185. package/constants/deploy-data/deploy-data-polygon.json.mjs +1218 -8
  186. package/constants/deploy-data/deploy-data-solana.json.cjs +1 -0
  187. package/constants/deploy-data/deploy-data-solana.json.mjs +6111 -0
  188. package/constants/deploy-data/index.d.ts +2 -1
  189. package/constants/index.d.ts +1 -1
  190. package/constants/mediaUrls.constants.cjs +1 -1
  191. package/constants/mediaUrls.constants.d.ts +9 -0
  192. package/constants/mediaUrls.constants.mjs +13 -4
  193. package/constants/okx.constants.cjs +1 -0
  194. package/constants/okx.constants.d.ts +2 -0
  195. package/constants/okx.constants.mjs +5 -0
  196. package/constants/protocol.constants.cjs +1 -1
  197. package/constants/protocol.constants.d.ts +12 -1
  198. package/constants/protocol.constants.mjs +37 -29
  199. package/constants/save-depths.cjs +1 -1
  200. package/constants/save-depths.mjs +4 -1
  201. package/constants/server.constants.cjs +1 -1
  202. package/constants/server.constants.d.ts +23 -10
  203. package/constants/server.constants.mjs +102 -89
  204. package/constants/token-data/ERC20Registry.cjs +1 -1
  205. package/constants/token-data/ERC20Registry.mjs +49 -35
  206. package/constants/token-data/index.cjs +1 -1
  207. package/constants/token-data/index.d.ts +17 -1
  208. package/constants/token-data/index.mjs +29 -25
  209. package/constants/token-data/solanaLocalnetRegistry.json.cjs +1 -0
  210. package/constants/token-data/solanaLocalnetRegistry.json.mjs +24 -0
  211. package/constants/token-data/solanaMainnetRegistry.json.cjs +1 -0
  212. package/constants/token-data/solanaMainnetRegistry.json.mjs +560 -0
  213. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.cjs +1 -1
  214. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.mjs +41 -41
  215. package/data-structures/Hinkal/Hinkal.cjs +1 -1
  216. package/data-structures/Hinkal/Hinkal.d.ts +19 -10
  217. package/data-structures/Hinkal/Hinkal.mjs +290 -125
  218. package/data-structures/Hinkal/IHinkal.d.ts +18 -11
  219. package/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
  220. package/data-structures/Hinkal/handleAutoDepositBack.mjs +36 -32
  221. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.cjs +1 -1
  222. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.mjs +24 -23
  223. package/data-structures/Hinkal/hinkalActionReceive.cjs +1 -1
  224. package/data-structures/Hinkal/hinkalActionReceive.mjs +13 -12
  225. package/data-structures/Hinkal/hinkalCheckSolanaTokenRegistry.cjs +1 -0
  226. package/data-structures/Hinkal/hinkalCheckSolanaTokenRegistry.d.ts +3 -0
  227. package/data-structures/Hinkal/hinkalCheckSolanaTokenRegistry.mjs +28 -0
  228. package/data-structures/Hinkal/hinkalCheckTokenRegistry.cjs +1 -1
  229. package/data-structures/Hinkal/hinkalCheckTokenRegistry.mjs +11 -8
  230. package/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -0
  231. package/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +4 -0
  232. package/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +167 -0
  233. package/data-structures/Hinkal/hinkalGetRecipientInfo.cjs +1 -1
  234. package/data-structures/Hinkal/hinkalGetRecipientInfo.d.ts +1 -1
  235. package/data-structures/Hinkal/hinkalGetRecipientInfo.mjs +4 -4
  236. package/data-structures/Hinkal/hinkalMultiSend.cjs +1 -1
  237. package/data-structures/Hinkal/hinkalMultiSend.mjs +6 -6
  238. package/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
  239. package/data-structures/Hinkal/hinkalPrivateWallet.d.ts +2 -2
  240. package/data-structures/Hinkal/hinkalPrivateWallet.mjs +109 -93
  241. package/data-structures/Hinkal/hinkalProxySwap.cjs +1 -1
  242. package/data-structures/Hinkal/hinkalProxySwap.mjs +23 -22
  243. package/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -0
  244. package/data-structures/Hinkal/hinkalProxyToPrivate.d.ts +6 -0
  245. package/data-structures/Hinkal/hinkalProxyToPrivate.mjs +45 -0
  246. package/data-structures/Hinkal/hinkalSignSubAccount.cjs +1 -1
  247. package/data-structures/Hinkal/hinkalSignSubAccount.mjs +11 -9
  248. package/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -0
  249. package/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +4 -0
  250. package/data-structures/Hinkal/hinkalSolanaDeposit.mjs +133 -0
  251. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -0
  252. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +3 -0
  253. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +216 -0
  254. package/data-structures/Hinkal/hinkalSolanaProxySend.cjs +1 -0
  255. package/data-structures/Hinkal/hinkalSolanaProxySend.d.ts +6 -0
  256. package/data-structures/Hinkal/hinkalSolanaProxySend.mjs +55 -0
  257. package/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -0
  258. package/data-structures/Hinkal/hinkalSolanaProxyShield.d.ts +6 -0
  259. package/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +99 -0
  260. package/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -0
  261. package/data-structures/Hinkal/hinkalSolanaProxySwap.d.ts +5 -0
  262. package/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +96 -0
  263. package/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -0
  264. package/data-structures/Hinkal/hinkalSolanaSwap.d.ts +4 -0
  265. package/data-structures/Hinkal/hinkalSolanaSwap.mjs +120 -0
  266. package/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -0
  267. package/data-structures/Hinkal/hinkalSolanaTransfer.d.ts +3 -0
  268. package/data-structures/Hinkal/hinkalSolanaTransfer.mjs +90 -0
  269. package/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -0
  270. package/data-structures/Hinkal/hinkalSolanaWithdraw.d.ts +3 -0
  271. package/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +106 -0
  272. package/data-structures/Hinkal/hinkalSwap.cjs +1 -1
  273. package/data-structures/Hinkal/hinkalSwap.mjs +33 -27
  274. package/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
  275. package/data-structures/Hinkal/hinkalTransfer.mjs +20 -14
  276. package/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
  277. package/data-structures/Hinkal/hinkalWithdraw.mjs +15 -9
  278. package/data-structures/Hinkal/index.d.ts +4 -0
  279. package/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
  280. package/data-structures/Hinkal/resetMerkleTrees.mjs +56 -23
  281. package/data-structures/IndexedDB/activity-db.cjs +1 -1
  282. package/data-structures/IndexedDB/activity-db.d.ts +0 -1
  283. package/data-structures/IndexedDB/activity-db.mjs +86 -86
  284. package/data-structures/IndexedDB/balances-db.cjs +1 -1
  285. package/data-structures/IndexedDB/balances-db.mjs +15 -12
  286. package/data-structures/IndexedDB/contact-db.cjs +1 -1
  287. package/data-structures/IndexedDB/contact-db.mjs +29 -26
  288. package/data-structures/IndexedDB/signatures-db.cjs +1 -1
  289. package/data-structures/IndexedDB/signatures-db.mjs +14 -10
  290. package/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.cjs +1 -1
  291. package/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.d.ts +2 -2
  292. package/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.mjs +32 -31
  293. package/data-structures/TokenDBs/AlchemyPublicTokensDB.cjs +1 -1
  294. package/data-structures/TokenDBs/AlchemyPublicTokensDB.d.ts +6 -1
  295. package/data-structures/TokenDBs/AlchemyPublicTokensDB.mjs +154 -79
  296. package/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
  297. package/data-structures/TokenDBs/EventsPublicTokensDB.mjs +24 -21
  298. package/data-structures/TokenDBs/PrivateTokensDB.cjs +1 -1
  299. package/data-structures/TokenDBs/PrivateTokensDB.mjs +39 -34
  300. package/data-structures/crypto-keys/decodeUTXO.cjs +1 -1
  301. package/data-structures/crypto-keys/decodeUTXO.d.ts +15 -3
  302. package/data-structures/crypto-keys/decodeUTXO.mjs +84 -26
  303. package/data-structures/crypto-keys/encryptDecryptUtxo.cjs +1 -1
  304. package/data-structures/crypto-keys/encryptDecryptUtxo.mjs +36 -30
  305. package/data-structures/crypto-keys/keys.cjs +1 -1
  306. package/data-structures/crypto-keys/keys.d.ts +19 -5
  307. package/data-structures/crypto-keys/keys.mjs +117 -60
  308. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.cjs +1 -0
  309. package/data-structures/event-service/{AbstractAccessTokenSnapshotService.d.ts → evm/AbstractAccessTokenSnapshotService.d.ts} +2 -2
  310. package/data-structures/event-service/{AbstractAccessTokenSnapshotService.mjs → evm/AbstractAccessTokenSnapshotService.mjs} +6 -6
  311. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.cjs +1 -0
  312. package/data-structures/event-service/{AbstractApprovalsSnapshotService.d.ts → evm/AbstractApprovalsSnapshotService.d.ts} +2 -2
  313. package/data-structures/event-service/{AbstractApprovalsSnapshotService.mjs → evm/AbstractApprovalsSnapshotService.mjs} +2 -2
  314. package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.cjs +1 -0
  315. package/data-structures/event-service/{AbstractCommitmentsSnapshotService.d.ts → evm/AbstractCommitmentsSnapshotService.d.ts} +3 -3
  316. package/data-structures/event-service/{AbstractCommitmentsSnapshotService.mjs → evm/AbstractCommitmentsSnapshotService.mjs} +24 -21
  317. package/data-structures/event-service/evm/AbstractEventService.cjs +1 -0
  318. package/data-structures/event-service/{AbstractEventService.d.ts → evm/AbstractEventService.d.ts} +1 -1
  319. package/data-structures/event-service/evm/AbstractEventService.mjs +37 -0
  320. package/data-structures/event-service/{AbstractNullifierSnapshotService.d.ts → evm/AbstractNullifierSnapshotService.d.ts} +1 -1
  321. package/data-structures/event-service/evm/AbstractSnapshotService.cjs +1 -0
  322. package/data-structures/event-service/{AbstractSnapshotService.mjs → evm/AbstractSnapshotService.mjs} +1 -1
  323. package/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -0
  324. package/data-structures/event-service/{BlockchainEventEmitter.d.ts → evm/BlockchainEventEmitter.d.ts} +2 -1
  325. package/data-structures/event-service/evm/BlockchainEventEmitter.mjs +89 -0
  326. package/data-structures/event-service/index.d.ts +13 -7
  327. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.cjs +1 -0
  328. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.d.ts +34 -0
  329. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.mjs +87 -0
  330. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.cjs +1 -0
  331. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.d.ts +29 -0
  332. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.mjs +96 -0
  333. package/data-structures/event-service/solana/AbstractSolanaEventService.cjs +1 -0
  334. package/data-structures/event-service/solana/AbstractSolanaEventService.d.ts +22 -0
  335. package/data-structures/event-service/solana/AbstractSolanaEventService.mjs +33 -0
  336. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.cjs +1 -0
  337. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.d.ts +21 -0
  338. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.mjs +49 -0
  339. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.cjs +1 -0
  340. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.d.ts +22 -0
  341. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.mjs +33 -0
  342. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.cjs +1 -0
  343. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +39 -0
  344. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.mjs +153 -0
  345. package/data-structures/http/BasicHttpClient.cjs +1 -0
  346. package/data-structures/http/BasicHttpClient.d.ts +11 -0
  347. package/data-structures/http/BasicHttpClient.mjs +25 -0
  348. package/data-structures/http/HttpClient.cjs +1 -0
  349. package/data-structures/http/HttpClient.d.ts +10 -0
  350. package/data-structures/http/HttpClient.mjs +15 -0
  351. package/data-structures/http/index.d.ts +2 -0
  352. package/data-structures/index.d.ts +1 -0
  353. package/data-structures/provider-adapter/IProviderAdapter.d.ts +1 -3
  354. package/data-structures/snapshot/SnapshotFetcherService.d.ts +1 -1
  355. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs +1 -0
  356. package/data-structures/snapshot/{ClientAccessTokenSnapshotService.d.ts → evm-snapshots/ClientAccessTokenSnapshotService.d.ts} +2 -2
  357. package/data-structures/snapshot/{ClientAccessTokenSnapshotService.mjs → evm-snapshots/ClientAccessTokenSnapshotService.mjs} +13 -9
  358. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs +1 -0
  359. package/data-structures/snapshot/{ClientApprovalsSnapshotService.d.ts → evm-snapshots/ClientApprovalsSnapshotService.d.ts} +2 -3
  360. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs +43 -0
  361. package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs +1 -0
  362. package/data-structures/snapshot/{ClientCommitmentsSnapshotService.d.ts → evm-snapshots/ClientCommitmentsSnapshotService.d.ts} +2 -2
  363. package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.mjs +35 -0
  364. package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs +1 -0
  365. package/data-structures/snapshot/{ClientNullifierSnapshotService.d.ts → evm-snapshots/ClientNullifierSnapshotService.d.ts} +2 -2
  366. package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.mjs +34 -0
  367. package/data-structures/snapshot/index.d.ts +7 -0
  368. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs +1 -0
  369. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.d.ts +8 -0
  370. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs +42 -0
  371. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs +1 -0
  372. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.d.ts +8 -0
  373. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.mjs +34 -0
  374. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs +1 -0
  375. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.d.ts +8 -0
  376. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.mjs +34 -0
  377. package/data-structures/token-price-fetcher/TokenChecker.cjs +1 -1
  378. package/data-structures/token-price-fetcher/TokenChecker.mjs +5 -4
  379. package/data-structures/utxo/Utxo.cjs +1 -1
  380. package/data-structures/utxo/Utxo.d.ts +6 -1
  381. package/data-structures/utxo/Utxo.mjs +37 -24
  382. package/error-handling/error-codes.constants.cjs +1 -1
  383. package/error-handling/error-codes.constants.d.ts +2 -0
  384. package/error-handling/error-codes.constants.mjs +4 -2
  385. package/functions/connectors.types.d.ts +14 -0
  386. package/functions/index.d.ts +1 -0
  387. package/functions/pre-transaction/addressTableLookup.cjs +1 -0
  388. package/functions/pre-transaction/addressTableLookup.d.ts +4 -0
  389. package/functions/pre-transaction/addressTableLookup.mjs +44 -0
  390. package/functions/pre-transaction/constructAdminData.cjs +1 -1
  391. package/functions/pre-transaction/constructAdminData.d.ts +2 -1
  392. package/functions/pre-transaction/constructAdminData.mjs +30 -12
  393. package/functions/pre-transaction/convert-okx-instructions.cjs +1 -0
  394. package/functions/pre-transaction/convert-okx-instructions.d.ts +12 -0
  395. package/functions/pre-transaction/convert-okx-instructions.mjs +30 -0
  396. package/functions/pre-transaction/getSolanaCalldataHash.cjs +1 -0
  397. package/functions/pre-transaction/getSolanaCalldataHash.d.ts +4 -0
  398. package/functions/pre-transaction/getSolanaCalldataHash.mjs +36 -0
  399. package/functions/pre-transaction/getVolatileTransferAmount.cjs +1 -1
  400. package/functions/pre-transaction/getVolatileTransferAmount.mjs +11 -7
  401. package/functions/pre-transaction/index.d.ts +10 -0
  402. package/functions/pre-transaction/initTokenLimitIfNeeded.cjs +1 -0
  403. package/functions/pre-transaction/initTokenLimitIfNeeded.d.ts +3 -0
  404. package/functions/pre-transaction/initTokenLimitIfNeeded.mjs +20 -0
  405. package/functions/pre-transaction/outputUtxoProcessing.cjs +1 -1
  406. package/functions/pre-transaction/outputUtxoProcessing.mjs +14 -13
  407. package/functions/pre-transaction/process-gas-estimates.cjs +1 -1
  408. package/functions/pre-transaction/process-gas-estimates.d.ts +2 -2
  409. package/functions/pre-transaction/process-gas-estimates.mjs +13 -12
  410. package/functions/pre-transaction/recipientUtxoProcessing.cjs +1 -0
  411. package/functions/pre-transaction/recipientUtxoProcessing.d.ts +3 -0
  412. package/functions/pre-transaction/recipientUtxoProcessing.mjs +36 -0
  413. package/functions/pre-transaction/sendInitNullifiersTransaction.cjs +1 -0
  414. package/functions/pre-transaction/sendInitNullifiersTransaction.d.ts +11 -0
  415. package/functions/pre-transaction/sendInitNullifiersTransaction.mjs +41 -0
  416. package/functions/pre-transaction/sendV0Transaction.cjs +1 -0
  417. package/functions/pre-transaction/sendV0Transaction.d.ts +22 -0
  418. package/functions/pre-transaction/sendV0Transaction.mjs +121 -0
  419. package/functions/pre-transaction/solana-public-signals.cjs +1 -0
  420. package/functions/pre-transaction/solana-public-signals.d.ts +19 -0
  421. package/functions/pre-transaction/solana-public-signals.mjs +60 -0
  422. package/functions/pre-transaction/solana.cjs +1 -0
  423. package/functions/pre-transaction/solana.d.ts +17 -0
  424. package/functions/pre-transaction/solana.mjs +96 -0
  425. package/functions/pre-transaction/solanaTransfer.utils.cjs +1 -0
  426. package/functions/pre-transaction/solanaTransfer.utils.d.ts +6 -0
  427. package/functions/pre-transaction/solanaTransfer.utils.mjs +38 -0
  428. package/functions/pre-transaction/store-instructions.cjs +1 -0
  429. package/functions/pre-transaction/store-instructions.d.ts +4 -0
  430. package/functions/pre-transaction/store-instructions.mjs +9 -0
  431. package/functions/pre-transaction/store-proof.cjs +1 -0
  432. package/functions/pre-transaction/store-proof.d.ts +7 -0
  433. package/functions/pre-transaction/store-proof.mjs +55 -0
  434. package/functions/private-wallet/emporium.helpers.cjs +1 -1
  435. package/functions/private-wallet/emporium.helpers.mjs +33 -29
  436. package/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
  437. package/functions/private-wallet/emporium.swap.helpers.d.ts +1 -1
  438. package/functions/private-wallet/emporium.swap.helpers.mjs +79 -69
  439. package/functions/snarkjs/constant.cjs +1 -1
  440. package/functions/snarkjs/constant.d.ts +40 -0
  441. package/functions/snarkjs/constant.mjs +66 -23
  442. package/functions/snarkjs/constructEmporiumProof.cjs +1 -1
  443. package/functions/snarkjs/constructEmporiumProof.mjs +32 -32
  444. package/functions/snarkjs/constructGeneralZkProof.cjs +1 -1
  445. package/functions/snarkjs/constructGeneralZkProof.d.ts +1 -1
  446. package/functions/snarkjs/constructGeneralZkProof.mjs +63 -61
  447. package/functions/snarkjs/constructSolanaZkProof.cjs +1 -0
  448. package/functions/snarkjs/constructSolanaZkProof.d.ts +13 -0
  449. package/functions/snarkjs/constructSolanaZkProof.mjs +109 -0
  450. package/functions/snarkjs/generateCircomData.cjs +1 -1
  451. package/functions/snarkjs/generateCircomData.d.ts +1 -1
  452. package/functions/snarkjs/generateCircomData.mjs +9 -9
  453. package/functions/snarkjs/generateZkProofEnclave.cjs +1 -1
  454. package/functions/snarkjs/generateZkProofEnclave.mjs +10 -9
  455. package/functions/snarkjs/getZKFiles.cjs +1 -1
  456. package/functions/snarkjs/getZKFiles.mjs +13 -13
  457. package/functions/snarkjs/index.d.ts +1 -0
  458. package/functions/utils/addresses.cjs +1 -1
  459. package/functions/utils/addresses.d.ts +1 -1
  460. package/functions/utils/addresses.mjs +21 -17
  461. package/functions/utils/amounts.utils.cjs +1 -1
  462. package/functions/utils/amounts.utils.d.ts +1 -0
  463. package/functions/utils/amounts.utils.mjs +53 -40
  464. package/functions/utils/bytes32.utils.cjs +1 -0
  465. package/functions/utils/bytes32.utils.d.ts +2 -0
  466. package/functions/utils/bytes32.utils.mjs +10 -0
  467. package/functions/utils/cacheDevice.utils.cjs +1 -1
  468. package/functions/utils/cacheDevice.utils.mjs +2 -3
  469. package/functions/utils/cacheFunctions.cjs +1 -1
  470. package/functions/utils/cacheFunctions.mjs +53 -52
  471. package/functions/utils/convertIntegrationProviderToExternalActionId.cjs +1 -1
  472. package/functions/utils/convertIntegrationProviderToExternalActionId.mjs +1 -0
  473. package/functions/utils/create-provider.cjs +1 -1
  474. package/functions/utils/create-provider.d.ts +4 -1
  475. package/functions/utils/create-provider.mjs +8 -6
  476. package/functions/utils/encodeTokenWithId.cjs +1 -1
  477. package/functions/utils/encodeTokenWithId.d.ts +1 -1
  478. package/functions/utils/encodeTokenWithId.mjs +6 -2
  479. package/functions/utils/encryptInputForEnclave.cjs +1 -1
  480. package/functions/utils/encryptInputForEnclave.mjs +29 -28
  481. package/functions/utils/erc20tokenFunctions.cjs +1 -1
  482. package/functions/utils/erc20tokenFunctions.mjs +29 -29
  483. package/functions/utils/ethers-formatter.utils.cjs +1 -1
  484. package/functions/utils/ethers-formatter.utils.d.ts +2 -0
  485. package/functions/utils/ethers-formatter.utils.mjs +45 -15
  486. package/functions/utils/evmNetworkFunctions.cjs +1 -1
  487. package/functions/utils/evmNetworkFunctions.mjs +3 -4
  488. package/functions/utils/fees.utils.cjs +1 -1
  489. package/functions/utils/fees.utils.d.ts +1 -0
  490. package/functions/utils/fees.utils.mjs +19 -9
  491. package/functions/utils/get-hinkal-approvals.cjs +1 -1
  492. package/functions/utils/get-hinkal-approvals.mjs +1 -1
  493. package/functions/utils/getBlockExplorerUrl.cjs +1 -1
  494. package/functions/utils/getBlockExplorerUrl.mjs +2 -2
  495. package/functions/utils/getRecipientInfoFromUserKeys.cjs +1 -1
  496. package/functions/utils/getRecipientInfoFromUserKeys.d.ts +0 -1
  497. package/functions/utils/getRecipientInfoFromUserKeys.mjs +10 -13
  498. package/functions/utils/getUtxosFromReceipt.utils.cjs +1 -0
  499. package/functions/utils/getUtxosFromReceipt.utils.d.ts +4 -0
  500. package/functions/utils/getUtxosFromReceipt.utils.mjs +29 -0
  501. package/functions/utils/getUtxosFromReceiptSolana.cjs +1 -0
  502. package/functions/utils/getUtxosFromReceiptSolana.d.ts +5 -0
  503. package/functions/utils/getUtxosFromReceiptSolana.mjs +19 -0
  504. package/functions/utils/index.d.ts +5 -1
  505. package/functions/utils/networks.utils.cjs +1 -1
  506. package/functions/utils/networks.utils.mjs +2 -3
  507. package/functions/utils/nftTokenFunctions.cjs +1 -1
  508. package/functions/utils/nftTokenFunctions.mjs +8 -4
  509. package/functions/utils/prepareHinkal.cjs +1 -0
  510. package/functions/utils/prepareHinkal.d.ts +7 -1
  511. package/functions/utils/prepareHinkal.mjs +88 -0
  512. package/functions/utils/publicBalance.utils.cjs +1 -1
  513. package/functions/utils/publicBalance.utils.d.ts +1 -0
  514. package/functions/utils/publicBalance.utils.mjs +75 -45
  515. package/functions/utils/solanaMint.utils.cjs +1 -0
  516. package/functions/utils/solanaMint.utils.d.ts +10 -0
  517. package/functions/utils/solanaMint.utils.mjs +14 -0
  518. package/functions/utils/time.utils.cjs +1 -1
  519. package/functions/utils/time.utils.d.ts +1 -1
  520. package/functions/utils/time.utils.mjs +11 -11
  521. package/functions/utils/userAgent.cjs +1 -1
  522. package/functions/utils/userAgent.mjs +6 -7
  523. package/functions/utils/walletBalances.utils.cjs +1 -1
  524. package/functions/utils/walletBalances.utils.d.ts +2 -1
  525. package/functions/utils/walletBalances.utils.mjs +18 -17
  526. package/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
  527. package/functions/web3/events/getInputUtxoAndBalance.mjs +98 -91
  528. package/functions/web3/events/getInputUtxosEnclave.cjs +1 -1
  529. package/functions/web3/events/getInputUtxosEnclave.mjs +38 -16
  530. package/functions/web3/events/getShieldedBalance.cjs +2 -2
  531. package/functions/web3/events/getShieldedBalance.mjs +70 -62
  532. package/functions/web3/events/getTransactionLogEvents.cjs +1 -1
  533. package/functions/web3/events/getTransactionLogEvents.d.ts +3 -2
  534. package/functions/web3/events/getTransactionLogEvents.mjs +12 -9
  535. package/functions/web3/fetchSolanaMerkleTreeRootHash.cjs +1 -0
  536. package/functions/web3/fetchSolanaMerkleTreeRootHash.d.ts +4 -0
  537. package/functions/web3/fetchSolanaMerkleTreeRootHash.mjs +45 -0
  538. package/functions/web3/functionCalls/accessTokenCalls.cjs +1 -1
  539. package/functions/web3/functionCalls/accessTokenCalls.d.ts +2 -0
  540. package/functions/web3/functionCalls/accessTokenCalls.mjs +25 -7
  541. package/functions/web3/functionCalls/estimateGasRelayer.cjs +1 -1
  542. package/functions/web3/functionCalls/estimateGasRelayer.mjs +12 -12
  543. package/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
  544. package/functions/web3/functionCalls/transactCallRelayer.d.ts +20 -0
  545. package/functions/web3/functionCalls/transactCallRelayer.mjs +61 -19
  546. package/functions/web3/getContractMetadata.cjs +1 -1
  547. package/functions/web3/getContractMetadata.mjs +20 -50
  548. package/functions/web3/getTokenHolder.cjs +1 -1
  549. package/functions/web3/getTokenHolder.mjs +29 -24
  550. package/functions/web3/index.d.ts +2 -0
  551. package/functions/web3/odosAPI.cjs +1 -1
  552. package/functions/web3/odosAPI.mjs +11 -8
  553. package/functions/web3/okxAPI.cjs +1 -0
  554. package/functions/web3/okxAPI.d.ts +8 -0
  555. package/functions/web3/okxAPI.mjs +43 -0
  556. package/functions/web3/oneInchAPI.cjs +1 -1
  557. package/functions/web3/oneInchAPI.mjs +7 -4
  558. package/functions/web3/runContractFunction.cjs +1 -1
  559. package/functions/web3/runContractFunction.mjs +22 -18
  560. package/functions/web3/signAndSendSerializedTransaction.cjs +1 -0
  561. package/functions/web3/signAndSendSerializedTransaction.d.ts +2 -0
  562. package/functions/web3/signAndSendSerializedTransaction.mjs +11 -0
  563. package/functions/web3/uniswapAPI.cjs +1 -1
  564. package/functions/web3/uniswapAPI.mjs +7 -4
  565. package/index.cjs +1 -1
  566. package/index.mjs +922 -810
  567. package/package.json +12 -16
  568. package/providers/CustomEthersProvider.cjs +1 -0
  569. package/providers/{TorExternalProvider.d.ts → CustomEthersProvider.d.ts} +2 -2
  570. package/providers/CustomEthersProvider.mjs +29 -0
  571. package/providers/CustomSolanaConnection.cjs +1 -0
  572. package/providers/CustomSolanaConnection.d.ts +4 -0
  573. package/providers/CustomSolanaConnection.mjs +33 -0
  574. package/providers/EthersProviderAdapter.cjs +1 -1
  575. package/providers/EthersProviderAdapter.d.ts +1 -2
  576. package/providers/EthersProviderAdapter.mjs +8 -48
  577. package/providers/SolanaProviderAdapter.cjs +1 -0
  578. package/providers/SolanaProviderAdapter.d.ts +44 -0
  579. package/providers/SolanaProviderAdapter.mjs +125 -0
  580. package/providers/WagmiProviderAdapter.cjs +1 -1
  581. package/providers/WagmiProviderAdapter.d.ts +1 -2
  582. package/providers/WagmiProviderAdapter.mjs +26 -24
  583. package/providers/prepareEthersHinkal.cjs +1 -1
  584. package/providers/prepareEthersHinkal.mjs +10 -7
  585. package/providers/prepareWagmiHinkal.cjs +1 -1
  586. package/providers/prepareWagmiHinkal.mjs +9 -6
  587. package/types/IMultiThreadedUtxoUtils.d.ts +2 -2
  588. package/types/TransactionSimulator.types.d.ts +1 -0
  589. package/types/activities.types.cjs +1 -1
  590. package/types/activities.types.d.ts +1 -0
  591. package/types/activities.types.mjs +6 -4
  592. package/types/admin.types.cjs +1 -1
  593. package/types/admin.types.d.ts +16 -0
  594. package/types/admin.types.mjs +1 -1
  595. package/types/all-points.types.d.ts +0 -1
  596. package/types/cache.types.cjs +1 -1
  597. package/types/cache.types.d.ts +8 -1
  598. package/types/cache.types.mjs +1 -1
  599. package/types/circom-data.types.d.ts +6 -0
  600. package/types/commitments.types.d.ts +12 -0
  601. package/types/ethereum-network.types.cjs +1 -1
  602. package/types/ethereum-network.types.d.ts +9 -3
  603. package/types/ethereum-network.types.mjs +1 -1
  604. package/types/external-action.types.cjs +1 -1
  605. package/types/external-action.types.d.ts +3 -1
  606. package/types/external-action.types.mjs +2 -2
  607. package/types/hinkal.types.cjs +1 -1
  608. package/types/hinkal.types.d.ts +3 -2
  609. package/types/hinkal.types.mjs +8 -8
  610. package/types/http.types.d.ts +8 -0
  611. package/types/index.d.ts +3 -2
  612. package/types/new-rewards.type.d.ts +2 -9
  613. package/types/offscreen.types.cjs +1 -1
  614. package/types/offscreen.types.d.ts +2 -1
  615. package/types/offscreen.types.mjs +2 -2
  616. package/types/okx.types.d.ts +57 -0
  617. package/types/rewards.types.d.ts +0 -11
  618. package/types/sandbox.types.cjs +1 -1
  619. package/types/sandbox.types.d.ts +19 -2
  620. package/types/sandbox.types.mjs +2 -2
  621. package/types/solana.types.d.ts +75 -0
  622. package/types/token.types.d.ts +6 -0
  623. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.cjs +1 -1
  624. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.mjs +1 -1
  625. package/webworker/snarkjsWorker/snarkjsWorkerLogic.cjs +1 -1
  626. package/webworker/snarkjsWorker/snarkjsWorkerLogic.d.ts +0 -1
  627. package/webworker/snarkjsWorker/snarkjsWorkerLogic.mjs +28 -30
  628. package/webworker/utxoWorker/utxoWorker.types.d.ts +2 -0
  629. package/webworker/utxoWorker/utxoWorkerLauncher.cjs +1 -1
  630. package/webworker/utxoWorker/utxoWorkerLauncher.mjs +1 -1
  631. package/webworker/utxoWorker/utxoWorkerLogic.cjs +1 -1
  632. package/webworker/utxoWorker/utxoWorkerLogic.mjs +33 -31
  633. package/webworker/viteWorkerURL.constant.cjs +21 -1
  634. package/webworker/viteWorkerURL.constant.mjs +21 -12
  635. package/webworker/zkProofWorker/zkProofWorkerLauncher.cjs +1 -1
  636. package/webworker/zkProofWorker/zkProofWorkerLauncher.mjs +1 -1
  637. package/API/mysteryBoxesCalls.cjs +0 -1
  638. package/API/mysteryBoxesCalls.d.ts +0 -60
  639. package/API/mysteryBoxesCalls.mjs +0 -66
  640. package/assets/snarkjsWorkerLauncher-CWaDqRaL.js +0 -14803
  641. package/assets/utxoWorkerLauncher-BUhBaUSg.js +0 -115868
  642. package/assets/zkProofWorkerLauncher-DlWQP3l9.js +0 -115360
  643. package/constants/mystery-boxes.constants.cjs +0 -1
  644. package/constants/mystery-boxes.constants.d.ts +0 -63
  645. package/constants/mystery-boxes.constants.mjs +0 -355
  646. package/data-structures/event-service/AbstractAccessTokenSnapshotService.cjs +0 -1
  647. package/data-structures/event-service/AbstractApprovalsSnapshotService.cjs +0 -1
  648. package/data-structures/event-service/AbstractCommitmentsSnapshotService.cjs +0 -1
  649. package/data-structures/event-service/AbstractEventService.cjs +0 -1
  650. package/data-structures/event-service/AbstractEventService.mjs +0 -33
  651. package/data-structures/event-service/AbstractSnapshotService.cjs +0 -1
  652. package/data-structures/event-service/BlockchainEventEmitter.cjs +0 -1
  653. package/data-structures/event-service/BlockchainEventEmitter.mjs +0 -80
  654. package/data-structures/snapshot/ClientAccessTokenSnapshotService.cjs +0 -1
  655. package/data-structures/snapshot/ClientApprovalsSnapshotService.cjs +0 -1
  656. package/data-structures/snapshot/ClientApprovalsSnapshotService.mjs +0 -23
  657. package/data-structures/snapshot/ClientCommitmentsSnapshotService.cjs +0 -1
  658. package/data-structures/snapshot/ClientCommitmentsSnapshotService.mjs +0 -31
  659. package/data-structures/snapshot/ClientNullifierSnapshotService.cjs +0 -1
  660. package/data-structures/snapshot/ClientNullifierSnapshotService.mjs +0 -30
  661. package/functions/utils/mystery-box-auction.utils.cjs +0 -1
  662. package/functions/utils/mystery-box-auction.utils.d.ts +0 -8
  663. package/functions/utils/mystery-box-auction.utils.mjs +0 -51
  664. package/providers/TorExternalProvider.cjs +0 -1
  665. package/providers/TorExternalProvider.mjs +0 -29
  666. package/types/merch-order.types.cjs +0 -1
  667. package/types/merch-order.types.d.ts +0 -16
  668. package/types/merch-order.types.mjs +0 -4
  669. package/types/mystery-boxes.types.cjs +0 -1
  670. package/types/mystery-boxes.types.d.ts +0 -43
  671. package/types/mystery-boxes.types.mjs +0 -6
  672. /package/data-structures/event-service/{AbstractNullifierSnapshotService.cjs → evm/AbstractNullifierSnapshotService.cjs} +0 -0
  673. /package/data-structures/event-service/{AbstractNullifierSnapshotService.mjs → evm/AbstractNullifierSnapshotService.mjs} +0 -0
  674. /package/data-structures/event-service/{AbstractSnapshotService.d.ts → evm/AbstractSnapshotService.d.ts} +0 -0
@@ -1,43 +1,43 @@
1
- import { stealthPairCacheDevice as d, stealthAddressCacheDevice as S } from "../crypto-keys/keys.mjs";
2
- import { Utxo as h } from "../utxo/Utxo.mjs";
3
- import { UtxoWorkerActionType as l } from "../../webworker/utxoWorker/utxoWorker.types.mjs";
4
- import { performTaskWithWorker as O } from "../../webworker/performTaskWithWorker.mjs";
5
- import { WorkerVariant as U } from "../../webworker/worker.registry.mjs";
6
- import { isNode as y } from "../../constants/vite.constants.mjs";
7
- class T {
1
+ import { stealthPairCacheDevice as S, stealthAddressCacheDevice as O } from "../crypto-keys/keys.mjs";
2
+ import { Utxo as m } from "../utxo/Utxo.mjs";
3
+ import { UtxoWorkerActionType as p } from "../../webworker/utxoWorker/utxoWorker.types.mjs";
4
+ import { performTaskWithWorker as U } from "../../webworker/performTaskWithWorker.mjs";
5
+ import { WorkerVariant as y } from "../../webworker/worker.registry.mjs";
6
+ import { isNode as P } from "../../constants/vite.constants.mjs";
7
+ class M {
8
8
  NUM_WORKERS;
9
9
  NUM_WORKERS_BATCH_PROCESS;
10
10
  constructor() {
11
- y ? (this.NUM_WORKERS = 1, this.NUM_WORKERS_BATCH_PROCESS = 1) : (this.NUM_WORKERS = 3, this.NUM_WORKERS_BATCH_PROCESS = Math.ceil(navigator.deviceMemory ?? 4));
11
+ P ? (this.NUM_WORKERS = 1, this.NUM_WORKERS_BATCH_PROCESS = 1) : (this.NUM_WORKERS = 3, this.NUM_WORKERS_BATCH_PROCESS = Math.ceil(navigator.deviceMemory ?? 4));
12
12
  }
13
13
  async createUtxoPromise(e) {
14
- return await O({
15
- type: U.UTXO,
14
+ return await U({
15
+ type: y.UTXO,
16
16
  payload: e
17
17
  });
18
18
  }
19
19
  async batchFilterUtxosWithNullifier(e, t) {
20
20
  const a = this.sliceArrayIntoParts(e, this.NUM_WORKERS).map(
21
21
  (s) => this.createUtxoPromise({
22
- type: l.BATCH_FILTER_UTXOS_WITH_NULLIFIER,
22
+ type: p.BATCH_FILTER_UTXOS_WITH_NULLIFIER,
23
23
  data: {
24
- utxos: s.map((n) => n.getConstructableParams()),
24
+ utxos: s.map((u) => u.getConstructableParams()),
25
25
  nullifiers: t
26
26
  }
27
27
  })
28
28
  ), i = await Promise.all(a);
29
29
  return i.forEach((s) => {
30
- d.mergeWithSerialized(s.stealthPairCache), S.mergeWithSerialized(s.stealthAddressCache);
31
- }), i.flatMap((s) => s.utxoConstructors).map((s) => new h(s));
30
+ S.mergeWithSerialized(s.stealthPairCache), O.mergeWithSerialized(s.stealthAddressCache);
31
+ }), i.flatMap((s) => s.utxoConstructors).map((s) => new m(s));
32
32
  }
33
- async buildBatchProcess(e, t) {
34
- const a = this.sliceArrayIntoParts(e, this.NUM_WORKERS).map(
35
- (c) => this.createUtxoPromise({
36
- type: l.BUILD_UTXOS,
37
- data: { signature: t.getSignature(), encryptedOutputs: c }
33
+ async buildBatchProcess(e, t, r) {
34
+ const i = this.sliceArrayIntoParts(e, this.NUM_WORKERS).map(
35
+ (n) => this.createUtxoPromise({
36
+ type: p.BUILD_UTXOS,
37
+ data: { signature: t.getSignature(), encryptedOutputs: n, chainId: r }
38
38
  })
39
39
  );
40
- return (await Promise.all(a)).flat().map((c) => new h(c));
40
+ return (await Promise.all(i)).flat().map((n) => new m(n));
41
41
  }
42
42
  sliceArrayIntoParts(e, t) {
43
43
  const r = Math.ceil(e.length / t);
@@ -52,29 +52,30 @@ class T {
52
52
  a !== t && (r = a);
53
53
  }), r;
54
54
  }
55
- async batchProcess(e, t, r) {
56
- const a = this.sliceArrayIntoParts(e, this.NUM_WORKERS_BATCH_PROCESS), i = r.getSignature(), s = a.map((o) => {
57
- const u = {
58
- type: l.DECIPHER_OUTPUTS,
55
+ async batchProcess(e, t, r, a) {
56
+ const i = this.sliceArrayIntoParts(e, this.NUM_WORKERS_BATCH_PROCESS), s = r.getSignature(), u = i.map((o) => {
57
+ const c = {
58
+ type: p.DECIPHER_OUTPUTS,
59
59
  data: {
60
60
  encryptedOutputs: o,
61
61
  lastOutput: t,
62
62
  // doesn't matter what we pass here, it will not be used regardless
63
- signature: i
63
+ signature: s,
64
+ chainId: a
64
65
  }
65
66
  };
66
- return this.createUtxoPromise(u);
67
- }), n = await Promise.all(s), c = n.map(({ additionalEncryptedOutputs: o }) => o).flat(), p = /* @__PURE__ */ new Set(), m = c.reduce((o, u) => p.has(u.value) ? o : (p.add(u.value), [...o, u]), []), R = this.findLastOutput(
68
- n.map((o) => o.lastOutput),
67
+ return this.createUtxoPromise(c);
68
+ }), l = await Promise.all(u), n = l.map(({ additionalEncryptedOutputs: o }) => o).flat(), h = /* @__PURE__ */ new Set(), R = n.reduce((o, c) => h.has(c.value) ? o : (h.add(c.value), [...o, c]), []), d = this.findLastOutput(
69
+ l.map((o) => o.lastOutput),
69
70
  t
70
71
  );
71
72
  return {
72
- additionalEncryptedOutputs: m,
73
- lastOutput: R ?? t
73
+ additionalEncryptedOutputs: R,
74
+ lastOutput: d ?? t
74
75
  // keep the last output the same if no new output is present
75
76
  };
76
77
  }
77
78
  }
78
79
  export {
79
- T as MultiThreadedUtxoUtils
80
+ M as MultiThreadedUtxoUtils
80
81
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("idb-keyval"),S=require("../../API/API.cjs"),r=require("../../constants/chains.constants.cjs"),y=require("../../constants/protocol.constants.cjs"),f=require("../../functions/utils/caseInsensitive.utils.cjs"),w=require("../../functions/utils/publicBalance.utils.cjs"),g=require("../../functions/utils/string.utils.cjs"),A=require("../../types/cache.types.cjs"),B=require("./token-visibility-db.cjs"),b=require("axios");class _{fetchedTokens={};ALCHEMY_URLS={[r.chainIds.ethMainnet]:"eth-mainnet",[r.chainIds.polygon]:"polygon-mainnet",[r.chainIds.arbMainnet]:"arb-mainnet",[r.chainIds.optimism]:"opt-mainnet",[r.chainIds.base]:"base-mainnet",[r.chainIds.avalanche]:"avax-mainnet"};KNOWN_GOOD_NFTS={[r.chainIds.base]:["0x20bc8d248fe9c18a947406cea50d716828ab821f"],[r.chainIds.optimism]:["0x3c3e0e73b53a19bcaf4178b8f9c9428fd2a2775e"]};isWhitelistedNFT(t,s){return this.KNOWN_GOOD_NFTS[s]?this.KNOWN_GOOD_NFTS[s].some(n=>f.caseInsensitiveEqual(t,n)):!1}async getPublicTokens(t,s){const n=g.getStateKey(s,t);return(await m.get(A.StorageKeys.ALCHEMY_PUBLIC_TOKENS))?.[n]||[]}getFetchedTokens(t,s){const n=g.getStateKey(s,t);return this.fetchedTokens[n]||[]}async fetchAndUpdatePublicTokens(t,s){const n=g.getStateKey(t,s),l=await this.getERC20TokenAddresses(s,t),a=await this.getNFTTokens(s,t),u=a.map(o=>o.contractAddress),i=[...l,...u];if(!i.length)return;const c=(await S.API.tokensInfoCall(s,i)).map((o,h)=>{if(o)return o;const p=i[h],T=a.find(N=>f.caseInsensitiveEqual(N.contractAddress,p));return T&&T.tokenIds&&T.tokenIds.length>0&&this.isWhitelistedNFT(p,s)?{chainId:s,name:"Unknown NFT",symbol:"NFT",erc20TokenAddress:p,decimals:0,nftTokenType:y.TokenType.ERC721,tokenIds:T.tokenIds}:null}).filter(o=>!!o),d=await B.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(s,c),I=c.filter(o=>!f.lowerCaseIncludes(d,o.erc20TokenAddress)).map(o=>({...o,tokenIds:a.find(h=>f.caseInsensitiveEqual(h.contractAddress,o.erc20TokenAddress))?.tokenIds}));await m.update(A.StorageKeys.ALCHEMY_PUBLIC_TOKENS,(o={})=>{const h={...o,[n]:I};return this.fetchedTokens=h,h})}async getERC20TokenAddresses(t,s){const n=await w.getPublicBalanceByTokenAddress(t,s,y.zeroAddress),l=`https://${this.ALCHEMY_URLS[t]}.g.alchemy.com/v2/${r.ALCHEMY_API_KEY}`,a=[];let u;do{const e=[s,"erc20"];u&&e.push({pageKey:u});const{data:c}=await b.post(l,{jsonrpc:"2.0",id:1,method:"alchemy_getTokenBalances",params:e}),{result:d}=c;a.push(...d?.tokenBalances??[]),u=d?.pageKey}while(u);n&&n>0n&&a.push({contractAddress:y.zeroAddress,tokenBalance:n.toString()});const i={};return a.forEach(e=>{(!i[e.contractAddress]||BigInt(e.tokenBalance)>0n)&&(i[e.contractAddress]=e)}),Object.keys(i)}async getNFTTokens(t,s){const n=`https://${this.ALCHEMY_URLS[t]}.g.alchemy.com/nft/v3/${r.ALCHEMY_API_KEY}/getNFTsForOwner`,l=[];let a;do{const e=new URLSearchParams({owner:s,withMetadata:"false",pageSize:"100"});a&&e.append("pageKey",a);const{data:c}=await b.get(`${n}?${e.toString()}`),{ownedNfts:d=[],pageKey:k}=c;l.push(...d),a=k}while(a);const i=l.filter(({contractAddress:e,tokenId:c})=>e&&c).reduce((e,{contractAddress:c,tokenId:d})=>{const k=c.toLowerCase();return e.has(k)||e.set(k,[]),e.get(k)?.push(d),e},new Map);return Array.from(i.entries()).map(([e,c])=>({contractAddress:e,tokenIds:c}))}}const E=new _;exports.AlchemyPublicTokensDB=_;exports.alchemyPublicTokensDB=E;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("idb-keyval"),N=require("../../API/API.cjs"),d=require("../../constants/chains.constants.cjs"),h=require("../../constants/protocol.constants.cjs"),p=require("../../functions/utils/caseInsensitive.utils.cjs"),B=require("../../functions/utils/publicBalance.utils.cjs"),g=require("../../functions/utils/string.utils.cjs"),w=require("../../types/cache.types.cjs"),P=require("./token-visibility-db.cjs"),S=require("../http/HttpClient.cjs");require("axios");const _=require("@solana/spl-token"),b=require("@solana/web3.js"),K=require("../../error-handling/logger.cjs"),C=require("../../functions/utils/create-provider.cjs");class E{fetchedTokens={};ALCHEMY_URLS={[d.chainIds.ethMainnet]:"eth-mainnet",[d.chainIds.polygon]:"polygon-mainnet",[d.chainIds.arbMainnet]:"arb-mainnet",[d.chainIds.optimism]:"opt-mainnet",[d.chainIds.base]:"base-mainnet",[d.chainIds.avalanche]:"avax-mainnet",[d.chainIds.solanaMainnet]:"solana-mainnet"};KNOWN_GOOD_NFTS={[d.chainIds.base]:["0x20bc8d248fe9c18a947406cea50d716828ab821f"],[d.chainIds.optimism]:["0x3c3e0e73b53a19bcaf4178b8f9c9428fd2a2775e"]};isWhitelistedNFT(t,e){return this.KNOWN_GOOD_NFTS[e]?this.KNOWN_GOOD_NFTS[e].some(s=>p.caseInsensitiveEqual(t,s)):!1}async getPublicTokens(t,e){const s=g.getStateKey(e,t);return(await m.get(w.StorageKeys.ALCHEMY_PUBLIC_TOKENS))?.[s]||[]}getFetchedTokens(t,e){const s=g.getStateKey(e,t);return this.fetchedTokens[s]||[]}fetchAndUpdatePublicTokens(t,e){return d.isSolanaLike(e)?this.fetchAndUpdateSolanaTokens(t,e):this.fetchAndUpdateEVMTokens(t,e)}async fetchAndUpdateSolanaTokens(t,e){const s=g.getStateKey(t,e),[c,o]=await Promise.all([this.getSolanaTokenAddresses(e,t),this.getNFTAddresses(e,t)]),l=Array.from(new Set([...c,...o]));if(!l.length)return;const n=(await N.API.tokensInfoCall(e,l)).filter(i=>!!i),r=await P.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(e,n),a=n.filter(i=>!p.lowerCaseIncludes(r,i.erc20TokenAddress));await m.update(w.StorageKeys.ALCHEMY_PUBLIC_TOKENS,(i={})=>{const T={...i,[s]:a};return this.fetchedTokens=T,T})}async getWalletTokenAddresses(t,e){return d.isSolanaLike(t)?this.getSolanaTokenAddresses(t,e):this.getEVMTokenAddresses(t,e)}async fetchAndUpdateEVMTokens(t,e){const s=g.getStateKey(t,e),c=await this.getEVMTokenAddresses(e,t),o=await this.getNFTTokens(e,t),l=o.map(k=>k.contractAddress),u=[...c,...l];if(!u.length)return;const r=(await N.API.tokensInfoCall(e,u)).map((k,f)=>{if(k)return k;const y=u[f],A=o.find(I=>p.caseInsensitiveEqual(I.contractAddress,y));return A&&A.tokenIds&&A.tokenIds.length>0&&this.isWhitelistedNFT(y,e)?{chainId:e,name:"Unknown NFT",symbol:"NFT",erc20TokenAddress:y,decimals:0,nftTokenType:h.TokenType.ERC721,tokenIds:A.tokenIds}:null}).filter(k=>!!k),a=await P.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(e,r),T=r.filter(k=>!p.lowerCaseIncludes(a,k.erc20TokenAddress)).map(k=>({...k,tokenIds:o.find(f=>p.caseInsensitiveEqual(f.contractAddress,k.erc20TokenAddress))?.tokenIds}));await m.update(w.StorageKeys.ALCHEMY_PUBLIC_TOKENS,(k={})=>{const f={...k,[s]:T};return this.fetchedTokens=f,f})}async getSolanaTokenAddresses(t,e){const{fetchRpcUrl:s}=d.networkRegistry[t];if(!s)throw new Error("RPC URL not found for the specified chain ID");const c=C.createCustomSolanaConnection(s),o=await c.getBalance(new b.PublicKey(e)),[l,u]=await Promise.all([c.getParsedTokenAccountsByOwner(new b.PublicKey(e),{programId:_.TOKEN_PROGRAM_ID}),c.getParsedTokenAccountsByOwner(new b.PublicKey(e),{programId:_.TOKEN_2022_PROGRAM_ID})]),r=[...l.value,...u.value].filter(a=>{const i=a.account.data.parsed.info,{amount:T}=i.tokenAmount;return BigInt(T)>0n}).map(a=>a.account.data.parsed.info.mint);return o>0&&r.unshift(h.solanaNativeAddress),Array.from(new Set(r))}async getNFTAddresses(t,e){const{fetchRpcUrl:s}=d.networkRegistry[t];if(!s)throw new Error("RPC URL not found for the specified chain ID");try{const c=[];let o=1;do{const l=await S.httpClient.post(s,{jsonrpc:"2.0",id:1,method:"getAssetsByOwner",params:{ownerAddress:e,page:o,limit:1e3,displayOptions:{showFungible:!1,showCollectionMetadata:!0}}}),{items:u=[],page:n}=l.result||{},r=u.filter(a=>a.interface&&h.SOLANA_NFT_INTERFACES.includes(a.interface)).map(a=>a.id);c.push(...r),o=n&&n>o?n:0}while(o>0);return c}catch(c){return K.Logger.error("Failed to fetch NFTs from DAS API",c),[]}}async getEVMTokenAddresses(t,e){const s=await B.getPublicBalanceByTokenAddress(t,e,h.zeroAddress),c=`https://${this.ALCHEMY_URLS[t]}.g.alchemy.com/v2/${d.ALCHEMY_API_KEY}`,o=[];let l;do{const n=[e,"erc20"];l&&n.push({pageKey:l});const r=await S.httpClient.post(c,{jsonrpc:"2.0",id:1,method:"alchemy_getTokenBalances",params:n}),{result:a}=r;o.push(...a?.tokenBalances??[]),l=a?.pageKey}while(l);s&&s>0n&&o.push({contractAddress:h.zeroAddress,tokenBalance:s.toString()});const u={};return o.forEach(n=>{(!u[n.contractAddress]||BigInt(n.tokenBalance)>0n)&&(u[n.contractAddress]=n)}),Object.keys(u)}async getNFTTokens(t,e){const s=`https://${this.ALCHEMY_URLS[t]}.g.alchemy.com/nft/v3/${d.ALCHEMY_API_KEY}/getNFTsForOwner`,c=[];let o;do{const n=new URLSearchParams({owner:e,withMetadata:"false",pageSize:"100"});o&&n.append("pageKey",o);const r=await S.httpClient.get(`${s}?${n.toString()}`),{ownedNfts:a=[],pageKey:i}=r;c.push(...a),o=i}while(o);const u=c.filter(({contractAddress:n,tokenId:r})=>n&&r).reduce((n,{contractAddress:r,tokenId:a})=>{const i=r.toLowerCase();return n.has(i)||n.set(i,[]),n.get(i)?.push(a),n},new Map);return Array.from(u.entries()).map(([n,r])=>({contractAddress:n,tokenIds:r}))}}const F=new E;exports.AlchemyPublicTokensDB=E;exports.alchemyPublicTokensDB=F;
@@ -8,7 +8,12 @@ export declare class AlchemyPublicTokensDB implements IPublicTokensDB {
8
8
  getPublicTokens(chainId: number, walletAddress: string): Promise<ERC20Token[]>;
9
9
  getFetchedTokens(chainId: number, walletAddress: string): ERC20Token[];
10
10
  fetchAndUpdatePublicTokens(walletAddress: string, chainId: number): Promise<void>;
11
- private getERC20TokenAddresses;
11
+ private fetchAndUpdateSolanaTokens;
12
+ getWalletTokenAddresses(chainId: number, walletAddress: string): Promise<string[]>;
13
+ private fetchAndUpdateEVMTokens;
14
+ private getSolanaTokenAddresses;
15
+ private getNFTAddresses;
16
+ private getEVMTokenAddresses;
12
17
  private getNFTTokens;
13
18
  }
14
19
  export declare const alchemyPublicTokensDB: AlchemyPublicTokensDB;
@@ -1,129 +1,204 @@
1
- import { get as B, update as E } from "idb-keyval";
1
+ import { get as O, update as N } from "idb-keyval";
2
2
  import { API as S } from "../../API/API.mjs";
3
- import { chainIds as d, ALCHEMY_API_KEY as g } from "../../constants/chains.constants.mjs";
4
- import { TokenType as _, zeroAddress as y } from "../../constants/protocol.constants.mjs";
5
- import { caseInsensitiveEqual as h, lowerCaseIncludes as C } from "../../functions/utils/caseInsensitive.utils.mjs";
6
- import { getPublicBalanceByTokenAddress as F } from "../../functions/utils/publicBalance.utils.mjs";
3
+ import { chainIds as m, isSolanaLike as E, networkRegistry as F, ALCHEMY_API_KEY as B } from "../../constants/chains.constants.mjs";
4
+ import { TokenType as K, SOLANA_NFT_INTERFACES as L, zeroAddress as b, solanaNativeAddress as M } from "../../constants/protocol.constants.mjs";
5
+ import { caseInsensitiveEqual as A, lowerCaseIncludes as P } from "../../functions/utils/caseInsensitive.utils.mjs";
6
+ import { getPublicBalanceByTokenAddress as U } from "../../functions/utils/publicBalance.utils.mjs";
7
7
  import { getStateKey as u } from "../../functions/utils/string.utils.mjs";
8
- import { StorageKeys as A } from "../../types/cache.types.mjs";
9
- import { tokenVisibilityStorage as K } from "./token-visibility-db.mjs";
10
- import b from "axios";
11
- class L {
8
+ import { StorageKeys as g } from "../../types/cache.types.mjs";
9
+ import { tokenVisibilityStorage as _ } from "./token-visibility-db.mjs";
10
+ import { httpClient as y } from "../http/HttpClient.mjs";
11
+ import "axios";
12
+ import { TOKEN_PROGRAM_ID as R, TOKEN_2022_PROGRAM_ID as I } from "@solana/spl-token";
13
+ import { PublicKey as w } from "@solana/web3.js";
14
+ import { Logger as H } from "../../error-handling/logger.mjs";
15
+ import { createCustomSolanaConnection as v } from "../../functions/utils/create-provider.mjs";
16
+ class D {
12
17
  fetchedTokens = {};
13
18
  ALCHEMY_URLS = {
14
- [d.ethMainnet]: "eth-mainnet",
15
- [d.polygon]: "polygon-mainnet",
16
- [d.arbMainnet]: "arb-mainnet",
17
- [d.optimism]: "opt-mainnet",
18
- [d.base]: "base-mainnet",
19
- [d.avalanche]: "avax-mainnet"
19
+ [m.ethMainnet]: "eth-mainnet",
20
+ [m.polygon]: "polygon-mainnet",
21
+ [m.arbMainnet]: "arb-mainnet",
22
+ [m.optimism]: "opt-mainnet",
23
+ [m.base]: "base-mainnet",
24
+ [m.avalanche]: "avax-mainnet",
25
+ [m.solanaMainnet]: "solana-mainnet"
20
26
  };
21
27
  // Known legitimate NFT collections that should be included in fallback
22
28
  KNOWN_GOOD_NFTS = {
23
- [d.base]: [
29
+ [m.base]: [
24
30
  "0x20bc8d248fe9c18a947406cea50d716828ab821f"
25
31
  // Hinkal Mason NFT
26
32
  ],
27
- [d.optimism]: [
33
+ [m.optimism]: [
28
34
  "0x3c3e0e73b53a19bcaf4178b8f9c9428fd2a2775e"
29
35
  // Uniswap v4 Positions
30
36
  ]
31
37
  };
32
- isWhitelistedNFT(n, t) {
33
- return this.KNOWN_GOOD_NFTS[t] ? this.KNOWN_GOOD_NFTS[t].some((s) => h(n, s)) : !1;
38
+ isWhitelistedNFT(t, e) {
39
+ return this.KNOWN_GOOD_NFTS[e] ? this.KNOWN_GOOD_NFTS[e].some((s) => A(t, s)) : !1;
34
40
  }
35
- async getPublicTokens(n, t) {
36
- const s = u(t, n);
37
- return (await B(A.ALCHEMY_PUBLIC_TOKENS))?.[s] || [];
41
+ async getPublicTokens(t, e) {
42
+ const s = u(e, t);
43
+ return (await O(g.ALCHEMY_PUBLIC_TOKENS))?.[s] || [];
38
44
  }
39
- getFetchedTokens(n, t) {
40
- const s = u(t, n);
45
+ getFetchedTokens(t, e) {
46
+ const s = u(e, t);
41
47
  return this.fetchedTokens[s] || [];
42
48
  }
43
- async fetchAndUpdatePublicTokens(n, t) {
44
- const s = u(n, t), l = await this.getERC20TokenAddresses(t, n), a = await this.getNFTTokens(t, n), m = a.map((o) => o.contractAddress), c = [...l, ...m];
45
- if (!c.length)
49
+ fetchAndUpdatePublicTokens(t, e) {
50
+ return E(e) ? this.fetchAndUpdateSolanaTokens(t, e) : this.fetchAndUpdateEVMTokens(t, e);
51
+ }
52
+ async fetchAndUpdateSolanaTokens(t, e) {
53
+ const s = u(t, e), [c, o] = await Promise.all([
54
+ this.getSolanaTokenAddresses(e, t),
55
+ this.getNFTAddresses(e, t)
56
+ ]), d = Array.from(/* @__PURE__ */ new Set([...c, ...o]));
57
+ if (!d.length)
58
+ return;
59
+ const n = (await S.tokensInfoCall(e, d)).filter((i) => !!i), r = await _.hideSpamsAndFetchHiddenTokensAddresses(
60
+ e,
61
+ n
62
+ ), a = n.filter(
63
+ (i) => !P(r, i.erc20TokenAddress)
64
+ );
65
+ await N(g.ALCHEMY_PUBLIC_TOKENS, (i = {}) => {
66
+ const p = {
67
+ ...i,
68
+ [s]: a
69
+ };
70
+ return this.fetchedTokens = p, p;
71
+ });
72
+ }
73
+ async getWalletTokenAddresses(t, e) {
74
+ return E(t) ? this.getSolanaTokenAddresses(t, e) : this.getEVMTokenAddresses(t, e);
75
+ }
76
+ async fetchAndUpdateEVMTokens(t, e) {
77
+ const s = u(t, e), c = await this.getEVMTokenAddresses(e, t), o = await this.getNFTTokens(e, t), d = o.map((f) => f.contractAddress), l = [...c, ...d];
78
+ if (!l.length)
46
79
  return;
47
- const r = (await S.tokensInfoCall(t, c)).map((o, k) => {
48
- if (o)
49
- return o;
50
- const T = c[k], p = a.find((w) => h(w.contractAddress, T));
51
- return p && p.tokenIds && p.tokenIds.length > 0 && this.isWhitelistedNFT(T, t) ? {
52
- chainId: t,
80
+ const r = (await S.tokensInfoCall(e, l)).map((f, k) => {
81
+ if (f)
82
+ return f;
83
+ const h = l[k], T = o.find((C) => A(C.contractAddress, h));
84
+ return T && T.tokenIds && T.tokenIds.length > 0 && this.isWhitelistedNFT(h, e) ? {
85
+ chainId: e,
53
86
  name: "Unknown NFT",
54
87
  symbol: "NFT",
55
- erc20TokenAddress: T,
88
+ erc20TokenAddress: h,
56
89
  decimals: 0,
57
- nftTokenType: _.ERC721,
58
- tokenIds: p.tokenIds
90
+ nftTokenType: K.ERC721,
91
+ tokenIds: T.tokenIds
59
92
  } : null;
60
- }).filter((o) => !!o), i = await K.hideSpamsAndFetchHiddenTokensAddresses(
61
- t,
93
+ }).filter((f) => !!f), a = await _.hideSpamsAndFetchHiddenTokensAddresses(
94
+ e,
62
95
  r
63
- ), N = r.filter(
64
- (o) => !C(i, o.erc20TokenAddress)
96
+ ), p = r.filter(
97
+ (f) => !P(a, f.erc20TokenAddress)
65
98
  // filter out hidden tokens
66
- ).map((o) => ({
67
- ...o,
68
- tokenIds: a.find((k) => h(k.contractAddress, o.erc20TokenAddress))?.tokenIds
99
+ ).map((f) => ({
100
+ ...f,
101
+ tokenIds: o.find((k) => A(k.contractAddress, f.erc20TokenAddress))?.tokenIds
69
102
  }));
70
- await E(A.ALCHEMY_PUBLIC_TOKENS, (o = {}) => {
103
+ await N(g.ALCHEMY_PUBLIC_TOKENS, (f = {}) => {
71
104
  const k = {
72
- ...o,
73
- [s]: N
105
+ ...f,
106
+ [s]: p
74
107
  };
75
108
  return this.fetchedTokens = k, k;
76
109
  });
77
110
  }
78
- async getERC20TokenAddresses(n, t) {
79
- const s = await F(n, t, y), l = `https://${this.ALCHEMY_URLS[n]}.g.alchemy.com/v2/${g}`, a = [];
80
- let m;
111
+ async getSolanaTokenAddresses(t, e) {
112
+ const { fetchRpcUrl: s } = F[t];
113
+ if (!s)
114
+ throw new Error("RPC URL not found for the specified chain ID");
115
+ const c = v(s), o = await c.getBalance(new w(e)), [d, l] = await Promise.all([
116
+ c.getParsedTokenAccountsByOwner(new w(e), { programId: R }),
117
+ c.getParsedTokenAccountsByOwner(new w(e), { programId: I })
118
+ ]), r = [...d.value, ...l.value].filter((a) => {
119
+ const i = a.account.data.parsed.info, { amount: p } = i.tokenAmount;
120
+ return BigInt(p) > 0n;
121
+ }).map((a) => a.account.data.parsed.info.mint);
122
+ return o > 0 && r.unshift(M), Array.from(new Set(r));
123
+ }
124
+ async getNFTAddresses(t, e) {
125
+ const { fetchRpcUrl: s } = F[t];
126
+ if (!s)
127
+ throw new Error("RPC URL not found for the specified chain ID");
128
+ try {
129
+ const c = [];
130
+ let o = 1;
131
+ do {
132
+ const d = await y.post(s, {
133
+ jsonrpc: "2.0",
134
+ id: 1,
135
+ method: "getAssetsByOwner",
136
+ params: {
137
+ ownerAddress: e,
138
+ page: o,
139
+ limit: 1e3,
140
+ displayOptions: {
141
+ showFungible: !1,
142
+ showCollectionMetadata: !0
143
+ }
144
+ }
145
+ }), { items: l = [], page: n } = d.result || {}, r = l.filter((a) => a.interface && L.includes(a.interface)).map((a) => a.id);
146
+ c.push(...r), o = n && n > o ? n : 0;
147
+ } while (o > 0);
148
+ return c;
149
+ } catch (c) {
150
+ return H.error("Failed to fetch NFTs from DAS API", c), [];
151
+ }
152
+ }
153
+ async getEVMTokenAddresses(t, e) {
154
+ const s = await U(t, e, b), c = `https://${this.ALCHEMY_URLS[t]}.g.alchemy.com/v2/${B}`, o = [];
155
+ let d;
81
156
  do {
82
- const e = [t, "erc20"];
83
- m && e.push({ pageKey: m });
84
- const { data: r } = await b.post(l, {
157
+ const n = [e, "erc20"];
158
+ d && n.push({ pageKey: d });
159
+ const r = await y.post(c, {
85
160
  jsonrpc: "2.0",
86
161
  id: 1,
87
162
  method: "alchemy_getTokenBalances",
88
- params: e
89
- }), { result: i } = r;
90
- a.push(...i?.tokenBalances ?? []), m = i?.pageKey;
91
- } while (m);
92
- s && s > 0n && a.push({
93
- contractAddress: y,
163
+ params: n
164
+ }), { result: a } = r;
165
+ o.push(...a?.tokenBalances ?? []), d = a?.pageKey;
166
+ } while (d);
167
+ s && s > 0n && o.push({
168
+ contractAddress: b,
94
169
  tokenBalance: s.toString()
95
170
  });
96
- const c = {};
97
- return a.forEach((e) => {
98
- (!c[e.contractAddress] || BigInt(e.tokenBalance) > 0n) && (c[e.contractAddress] = e);
99
- }), Object.keys(c);
171
+ const l = {};
172
+ return o.forEach((n) => {
173
+ (!l[n.contractAddress] || BigInt(n.tokenBalance) > 0n) && (l[n.contractAddress] = n);
174
+ }), Object.keys(l);
100
175
  }
101
- async getNFTTokens(n, t) {
102
- const s = `https://${this.ALCHEMY_URLS[n]}.g.alchemy.com/nft/v3/${g}/getNFTsForOwner`, l = [];
103
- let a;
176
+ async getNFTTokens(t, e) {
177
+ const s = `https://${this.ALCHEMY_URLS[t]}.g.alchemy.com/nft/v3/${B}/getNFTsForOwner`, c = [];
178
+ let o;
104
179
  do {
105
- const e = new URLSearchParams({
106
- owner: t,
180
+ const n = new URLSearchParams({
181
+ owner: e,
107
182
  withMetadata: "false",
108
183
  pageSize: "100"
109
184
  // max is 100
110
185
  });
111
- a && e.append("pageKey", a);
112
- const { data: r } = await b.get(`${s}?${e.toString()}`), { ownedNfts: i = [], pageKey: f } = r;
113
- l.push(...i), a = f;
114
- } while (a);
115
- const c = l.filter(({ contractAddress: e, tokenId: r }) => e && r).reduce((e, { contractAddress: r, tokenId: i }) => {
116
- const f = r.toLowerCase();
117
- return e.has(f) || e.set(f, []), e.get(f)?.push(i), e;
186
+ o && n.append("pageKey", o);
187
+ const r = await y.get(`${s}?${n.toString()}`), { ownedNfts: a = [], pageKey: i } = r;
188
+ c.push(...a), o = i;
189
+ } while (o);
190
+ const l = c.filter(({ contractAddress: n, tokenId: r }) => n && r).reduce((n, { contractAddress: r, tokenId: a }) => {
191
+ const i = r.toLowerCase();
192
+ return n.has(i) || n.set(i, []), n.get(i)?.push(a), n;
118
193
  }, /* @__PURE__ */ new Map());
119
- return Array.from(c.entries()).map(([e, r]) => ({
120
- contractAddress: e,
194
+ return Array.from(l.entries()).map(([n, r]) => ({
195
+ contractAddress: n,
121
196
  tokenIds: r
122
197
  }));
123
198
  }
124
199
  }
125
- const x = new L();
200
+ const se = new D();
126
201
  export {
127
- L as AlchemyPublicTokensDB,
128
- x as alchemyPublicTokensDB
202
+ D as AlchemyPublicTokensDB,
203
+ se as alchemyPublicTokensDB
129
204
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("ethers"),T=require("idb-keyval"),_=require("../../API/API.cjs"),A=require("../../constants/chains.constants.cjs"),p=require("../../error-handling/logger.cjs"),E=require("../../functions/utils/caseInsensitive.utils.cjs"),g=require("../../types/cache.types.cjs"),d=require("../../functions/utils/string.utils.cjs"),m=require("../../constants/protocol.constants.cjs"),C=require("async-mutex"),S=require("../../functions/utils/erc20tokenFunctions.cjs"),I=require("./token-visibility-db.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("../../constants/kyc.constants.cjs");const K=require("../../functions/utils/create-provider.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("circomlibjs-hinkal-fork");require("../../error-handling/error-codes.constants.cjs");require("../crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../constants/vite.constants.cjs");require("axios");require("../../API/getServerURL.cjs");require("../../constants/reorg-depths.constants.cjs");require("../../functions/utils/mutexes.utils.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/save-depths.cjs");require("../../constants/token-data/index.cjs");require("../../constants/contracts.constants.cjs");require("../../constants/coingecko.constants.cjs");require("../../constants/addresses.constants.cjs");require("../../constants/token.limits.constants.cjs");require("../../constants/presale.constants.cjs");require("../../constants/mystery-boxes.constants.cjs");require("../../constants/activity.constants.cjs");require("../../constants/tasks.constants.cjs");const x=require("../../constants/events.constants.cjs");require("../../functions/utils/userAgent.cjs");require("multiformats");require("../../API/tenderly.api.cjs");require("node-forge");require("../../functions/web3/events/getApprovedBalance.cjs");require("../../functions/web3/getTokenHolder.cjs");require("ethers-v6h");class P{fetchedTokens={};updateMutexes={};transferEventTopic=k.ethers.utils.id("Transfer(address,address,uint256)");getMutex(t){return this.updateMutexes[t]||(this.updateMutexes[t]=new C.Mutex),this.updateMutexes[t]}async getPublicTokens(t,o){const r=d.getStateKey(o,t);return(await T.get(g.StorageKeys.EVENTS_PUBLIC_TOKENS))?.[r]||[]}getFetchedTokens(t,o){const r=d.getStateKey(o,t);return this.fetchedTokens[r]||[]}async fetchAndUpdatePublicTokens(t,o){const r=d.getStateKey(t,o);await this.getMutex(r).runExclusive(async()=>{try{const s=(await this.getPublicTokens(o,t)).map(a=>a.erc20TokenAddress),{toEvents:i,fromEvents:u,latestBlock:c}=await this.getEvents(t,o),q=[...i,...u],{erc20Tokens:l}=await this.fetchPublicTokens(q,o,s),b=await I.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(o,l),B=l.filter(a=>!E.lowerCaseIncludes(b,a.erc20TokenAddress));await T.update(g.StorageKeys.EVENTS_PUBLIC_TOKENS,(a={})=>{const h=a[r]||[],w=h.map(f=>f.erc20TokenAddress),L=B.filter(f=>!E.lowerCaseIncludes(w,f.erc20TokenAddress));h.push(...L);const v=this.updateTokenIds(u,i,h),y={...a,[r]:v};return this.fetchedTokens=y,y}),c&&await this.updateLastProcessedBlock(o,t,c)}catch(e){p.Logger.error("public tokens db error",e)}})}async getLastProcessedBlock(t,o){const r=await T.get(g.StorageKeys.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS)||{},n=d.getStateKey(o,t);return r[n]||x.EVENTS_INITIAL_BLOCKS[t]}async updateLastProcessedBlock(t,o,r){await T.update(g.StorageKeys.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS,(n={})=>{const e=d.getStateKey(o,t);return{...n,[e]:r}})}async getEvents(t,o){try{const{fetchRpcUrl:r}=A.networkRegistry[o];if(!r)throw Error("No fetchRpcUrl in PublicTokensDB");const n=K.createTorRpcProvider(r),e=await this.getLastProcessedBlock(o,t)+1,s=await n.getBlockNumber(),i=k.ethers.utils.hexZeroPad(t.toLowerCase(),32),u={topics:[this.transferEventTopic,null,i],fromBlock:e,toBlock:s},c={topics:[this.transferEventTopic,i,null],fromBlock:e,toBlock:s},[q,l]=await Promise.all([n.getLogs(u),n.getLogs(c)]);return{toEvents:q,fromEvents:l,latestBlock:s}}catch(r){return p.Logger.error("Error fetching events:",r),{toEvents:[],fromEvents:[],latestBlock:void 0}}}updateTokenIds(t,o,r){const n=new Map;return r.forEach(e=>{if(S.isNFTToken(e)&&e.tokenIds){const s=e.erc20TokenAddress.toLowerCase();n.set(s,[...e.tokenIds])}}),o.forEach(e=>{if(e.topics.length<=3)return;const s=e.address.toLowerCase(),i=k.ethers.BigNumber.from(e.topics[3]).toString();n.has(s)||n.set(s,[]),n.get(s)?.push(i)}),t.forEach(e=>{if(e.topics.length<=3)return;const s=e.address.toLowerCase(),i=n.get(s);if(i?.length){const u=k.ethers.BigNumber.from(e.topics[3]).toString(),c=i.indexOf(u);c!==-1&&i.splice(c,1)}}),r.forEach(e=>{if(S.isNFTToken(e)){const s=e.erc20TokenAddress.toLowerCase(),i=n.get(s);e.tokenIds=i?.length&&i.length>0?i:void 0}}),r}async fetchPublicTokens(t,o,r){try{const n=[m.zeroAddress,...new Set(t.map(s=>s.address))].filter(s=>s&&!E.lowerCaseIncludes(r,s));return n.length?{erc20Tokens:(await _.API.tokensInfoCall(o,n)).filter(s=>!!s)}:{erc20Tokens:[]}}catch(n){return p.Logger.error("Error fetching public tokens:",n),{erc20Tokens:[]}}}}const N=new P;exports.EventsPublicTokensDB=P;exports.eventsPublicTokensDB=N;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("ethers"),T=require("idb-keyval"),_=require("../../API/API.cjs"),m=require("../../constants/chains.constants.cjs"),p=require("../../error-handling/logger.cjs"),E=require("../../functions/utils/caseInsensitive.utils.cjs"),g=require("../../types/cache.types.cjs"),d=require("../../functions/utils/string.utils.cjs"),A=require("../../constants/protocol.constants.cjs"),C=require("async-mutex"),S=require("../../functions/utils/erc20tokenFunctions.cjs"),I=require("./token-visibility-db.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("@coral-xyz/anchor");require("@solana/web3.js");require("../../constants/kyc.constants.cjs");const K=require("../../functions/utils/create-provider.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("circomlibjs-hinkal-fork");require("../../error-handling/error-codes.constants.cjs");require("../crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../constants/vite.constants.cjs");require("../http/HttpClient.cjs");require("axios");require("../../API/getServerURL.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/save-depths.cjs");require("../../constants/reorg-depths.constants.cjs");require("../../functions/utils/mutexes.utils.cjs");require("@solana/spl-token");require("../../constants/token-data/index.cjs");require("../../constants/contracts.constants.cjs");require("../../constants/coingecko.constants.cjs");require("../../constants/addresses.constants.cjs");require("../../constants/token.limits.constants.cjs");require("../../constants/presale.constants.cjs");require("../../constants/activity.constants.cjs");require("../../constants/tasks.constants.cjs");const x=require("../../constants/events.constants.cjs");require("../../functions/utils/userAgent.cjs");require("multiformats");require("../../API/tenderly.api.cjs");require("node-forge");require("../../functions/web3/events/getApprovedBalance.cjs");require("../../functions/web3/getTokenHolder.cjs");require("ethers-v6h");class P{fetchedTokens={};updateMutexes={};transferEventTopic=k.ethers.utils.id("Transfer(address,address,uint256)");getMutex(r){return this.updateMutexes[r]||(this.updateMutexes[r]=new C.Mutex),this.updateMutexes[r]}async getPublicTokens(r,o){const t=d.getStateKey(o,r);return(await T.get(g.StorageKeys.EVENTS_PUBLIC_TOKENS))?.[t]||[]}getFetchedTokens(r,o){const t=d.getStateKey(o,r);return this.fetchedTokens[t]||[]}async fetchAndUpdatePublicTokens(r,o){const t=d.getStateKey(r,o);await this.getMutex(t).runExclusive(async()=>{try{const s=(await this.getPublicTokens(o,r)).map(a=>a.erc20TokenAddress),{toEvents:i,fromEvents:u,latestBlock:c}=await this.getEvents(r,o),q=[...i,...u],{erc20Tokens:l}=await this.fetchPublicTokens(q,o,s),b=await I.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(o,l),B=l.filter(a=>!E.lowerCaseIncludes(b,a.erc20TokenAddress));await T.update(g.StorageKeys.EVENTS_PUBLIC_TOKENS,(a={})=>{const h=a[t]||[],w=h.map(f=>f.erc20TokenAddress),L=B.filter(f=>!E.lowerCaseIncludes(w,f.erc20TokenAddress));h.push(...L);const v=this.updateTokenIds(u,i,h),y={...a,[t]:v};return this.fetchedTokens=y,y}),c&&await this.updateLastProcessedBlock(o,r,c)}catch(e){p.Logger.error("public tokens db error",e)}})}async getLastProcessedBlock(r,o){const t=await T.get(g.StorageKeys.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS)||{},n=d.getStateKey(o,r);return t[n]||x.EVENTS_INITIAL_BLOCKS[r]}async updateLastProcessedBlock(r,o,t){await T.update(g.StorageKeys.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS,(n={})=>{const e=d.getStateKey(o,r);return{...n,[e]:t}})}async getEvents(r,o){try{const{fetchRpcUrl:t}=m.networkRegistry[o];if(!t)throw Error("No fetchRpcUrl in PublicTokensDB");const n=K.createCustomRpcProvider(t),e=await this.getLastProcessedBlock(o,r)+1,s=await n.getBlockNumber(),i=k.ethers.utils.hexZeroPad(r.toLowerCase(),32),u={topics:[this.transferEventTopic,null,i],fromBlock:e,toBlock:s},c={topics:[this.transferEventTopic,i,null],fromBlock:e,toBlock:s},[q,l]=await Promise.all([n.getLogs(u),n.getLogs(c)]);return{toEvents:q,fromEvents:l,latestBlock:s}}catch(t){return p.Logger.error("Error fetching events:",t),{toEvents:[],fromEvents:[],latestBlock:void 0}}}updateTokenIds(r,o,t){const n=new Map;return t.forEach(e=>{if(S.isNFTToken(e)&&e.tokenIds){const s=e.erc20TokenAddress.toLowerCase();n.set(s,[...e.tokenIds])}}),o.forEach(e=>{if(e.topics.length<=3)return;const s=e.address.toLowerCase(),i=k.ethers.BigNumber.from(e.topics[3]).toString();n.has(s)||n.set(s,[]),n.get(s)?.push(i)}),r.forEach(e=>{if(e.topics.length<=3)return;const s=e.address.toLowerCase(),i=n.get(s);if(i?.length){const u=k.ethers.BigNumber.from(e.topics[3]).toString(),c=i.indexOf(u);c!==-1&&i.splice(c,1)}}),t.forEach(e=>{if(S.isNFTToken(e)){const s=e.erc20TokenAddress.toLowerCase(),i=n.get(s);e.tokenIds=i?.length&&i.length>0?i:void 0}}),t}async fetchPublicTokens(r,o,t){try{const n=[A.zeroAddress,...new Set(r.map(s=>s.address))].filter(s=>s&&!E.lowerCaseIncludes(t,s));return n.length?{erc20Tokens:(await _.API.tokensInfoCall(o,n)).filter(s=>!!s)}:{erc20Tokens:[]}}catch(n){return p.Logger.error("Error fetching public tokens:",n),{erc20Tokens:[]}}}}const N=new P;exports.EventsPublicTokensDB=P;exports.eventsPublicTokensDB=N;
@@ -1,11 +1,11 @@
1
1
  import { ethers as u } from "ethers";
2
2
  import { get as B, update as w } from "idb-keyval";
3
- import { API as v } from "../../API/API.mjs";
4
- import { networkRegistry as C } from "../../constants/chains.constants.mjs";
3
+ import { API as C } from "../../API/API.mjs";
4
+ import { networkRegistry as v } from "../../constants/chains.constants.mjs";
5
5
  import { Logger as h } from "../../error-handling/logger.mjs";
6
6
  import { lowerCaseIncludes as g } from "../../functions/utils/caseInsensitive.utils.mjs";
7
7
  import { StorageKeys as k } from "../../types/cache.types.mjs";
8
- import { getStateKey as d } from "../../functions/utils/string.utils.mjs";
8
+ import { getStateKey as m } from "../../functions/utils/string.utils.mjs";
9
9
  import { zeroAddress as x } from "../../constants/protocol.constants.mjs";
10
10
  import { Mutex as _ } from "async-mutex";
11
11
  import { isNFTToken as P } from "../../functions/utils/erc20tokenFunctions.mjs";
@@ -13,29 +13,32 @@ import { tokenVisibilityStorage as N } from "./token-visibility-db.mjs";
13
13
  import "../../types/circom-data.types.mjs";
14
14
  import "../../types/transactions.types.mjs";
15
15
  import "../../types/activities.types.mjs";
16
+ import "@coral-xyz/anchor";
17
+ import "@solana/web3.js";
16
18
  import "../../constants/kyc.constants.mjs";
17
- import { createTorRpcProvider as I } from "../../functions/utils/create-provider.mjs";
19
+ import { createCustomRpcProvider as I } from "../../functions/utils/create-provider.mjs";
18
20
  import "../../functions/utils/convertIntegrationProviderToExternalActionId.mjs";
19
21
  import "circomlibjs-hinkal-fork";
20
22
  import "../../error-handling/error-codes.constants.mjs";
21
23
  import "../crypto-keys/keys.mjs";
22
24
  import "../../constants/server.constants.mjs";
23
25
  import "../../constants/vite.constants.mjs";
26
+ import "../http/HttpClient.mjs";
24
27
  import "axios";
25
28
  import "../../API/getServerURL.mjs";
26
- import "../../constants/reorg-depths.constants.mjs";
27
- import "../../functions/utils/mutexes.utils.mjs";
28
29
  import "libsodium-wrappers";
29
30
  import "process";
30
31
  import "buffer";
31
32
  import "../../constants/save-depths.mjs";
33
+ import "../../constants/reorg-depths.constants.mjs";
34
+ import "../../functions/utils/mutexes.utils.mjs";
35
+ import "@solana/spl-token";
32
36
  import "../../constants/token-data/index.mjs";
33
37
  import "../../constants/contracts.constants.mjs";
34
38
  import "../../constants/coingecko.constants.mjs";
35
39
  import "../../constants/addresses.constants.mjs";
36
40
  import "../../constants/token.limits.constants.mjs";
37
41
  import "../../constants/presale.constants.mjs";
38
- import "../../constants/mystery-boxes.constants.mjs";
39
42
  import "../../constants/activity.constants.mjs";
40
43
  import "../../constants/tasks.constants.mjs";
41
44
  import { EVENTS_INITIAL_BLOCKS as O } from "../../constants/events.constants.mjs";
@@ -54,21 +57,21 @@ class K {
54
57
  return this.updateMutexes[e] || (this.updateMutexes[e] = new _()), this.updateMutexes[e];
55
58
  }
56
59
  async getPublicTokens(e, s) {
57
- const o = d(s, e);
60
+ const o = m(s, e);
58
61
  return (await B(k.EVENTS_PUBLIC_TOKENS))?.[o] || [];
59
62
  }
60
63
  getFetchedTokens(e, s) {
61
- const o = d(s, e);
64
+ const o = m(s, e);
62
65
  return this.fetchedTokens[o] || [];
63
66
  }
64
67
  async fetchAndUpdatePublicTokens(e, s) {
65
- const o = d(e, s);
68
+ const o = m(e, s);
66
69
  await this.getMutex(o).runExclusive(async () => {
67
70
  try {
68
- const r = (await this.getPublicTokens(s, e)).map((a) => a.erc20TokenAddress), { toEvents: i, fromEvents: p, latestBlock: c } = await this.getEvents(e, s), l = [...i, ...p], { erc20Tokens: m } = await this.fetchPublicTokens(l, s, r), S = await N.hideSpamsAndFetchHiddenTokensAddresses(
71
+ const r = (await this.getPublicTokens(s, e)).map((a) => a.erc20TokenAddress), { toEvents: i, fromEvents: p, latestBlock: c } = await this.getEvents(e, s), l = [...i, ...p], { erc20Tokens: d } = await this.fetchPublicTokens(l, s, r), S = await N.hideSpamsAndFetchHiddenTokensAddresses(
69
72
  s,
70
- m
71
- ), L = m.filter(
73
+ d
74
+ ), L = d.filter(
72
75
  (a) => !g(S, a.erc20TokenAddress)
73
76
  // filter out hidden tokens
74
77
  );
@@ -89,12 +92,12 @@ class K {
89
92
  });
90
93
  }
91
94
  async getLastProcessedBlock(e, s) {
92
- const o = await B(k.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS) || {}, n = d(s, e);
95
+ const o = await B(k.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS) || {}, n = m(s, e);
93
96
  return o[n] || O[e];
94
97
  }
95
98
  async updateLastProcessedBlock(e, s, o) {
96
99
  await w(k.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS, (n = {}) => {
97
- const t = d(s, e);
100
+ const t = m(s, e);
98
101
  return {
99
102
  ...n,
100
103
  [t]: o
@@ -103,7 +106,7 @@ class K {
103
106
  }
104
107
  async getEvents(e, s) {
105
108
  try {
106
- const { fetchRpcUrl: o } = C[s];
109
+ const { fetchRpcUrl: o } = v[s];
107
110
  if (!o)
108
111
  throw Error("No fetchRpcUrl in PublicTokensDB");
109
112
  const n = I(o), t = await this.getLastProcessedBlock(s, e) + 1, r = await n.getBlockNumber(), i = u.utils.hexZeroPad(e.toLowerCase(), 32), p = {
@@ -114,8 +117,8 @@ class K {
114
117
  topics: [this.transferEventTopic, i, null],
115
118
  fromBlock: t,
116
119
  toBlock: r
117
- }, [l, m] = await Promise.all([n.getLogs(p), n.getLogs(c)]);
118
- return { toEvents: l, fromEvents: m, latestBlock: r };
120
+ }, [l, d] = await Promise.all([n.getLogs(p), n.getLogs(c)]);
121
+ return { toEvents: l, fromEvents: d, latestBlock: r };
119
122
  } catch (o) {
120
123
  return h.error("Error fetching events:", o), { toEvents: [], fromEvents: [], latestBlock: void 0 };
121
124
  }
@@ -155,7 +158,7 @@ class K {
155
158
  const n = [x, ...new Set(e.map((r) => r.address))].filter(
156
159
  (r) => r && !g(o, r)
157
160
  );
158
- return n.length ? { erc20Tokens: (await v.tokensInfoCall(s, n)).filter(
161
+ return n.length ? { erc20Tokens: (await C.tokensInfoCall(s, n)).filter(
159
162
  (r) => !!r
160
163
  ) } : { erc20Tokens: [] };
161
164
  } catch (n) {
@@ -163,8 +166,8 @@ class K {
163
166
  }
164
167
  }
165
168
  }
166
- const _t = new K();
169
+ const Ot = new K();
167
170
  export {
168
171
  K as EventsPublicTokensDB,
169
- _t as eventsPublicTokensDB
172
+ Ot as eventsPublicTokensDB
170
173
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("idb-keyval"),w=require("../../API/API.cjs"),P=require("../../error-handling/logger.cjs"),k=require("../../functions/utils/caseInsensitive.utils.cjs"),T=require("../../types/cache.types.cjs"),d=require("../../functions/utils/string.utils.cjs"),S=require("./token-visibility-db.cjs");class g{fetchedTokens={};initalFetched=!1;async updateFetchedTokens(){const t=await c.get(T.StorageKeys.PRIVATE_TOKENS);this.fetchedTokens=t??{},this.initalFetched=!0}async getPrivateTokens(t,e){const s=d.getStateKey(e,t);return(await c.get(T.StorageKeys.PRIVATE_TOKENS))?.[s]||[]}async fetchPrivateTokens(t,e,s){try{const r=[...new Set(e.map(n=>n.toLowerCase()))].filter(n=>n&&!k.lowerCaseIncludes(s,n));return r.length?(await w.API.tokensInfoCall(t,r)).filter(n=>!!n):[]}catch(r){return P.Logger.error("Error fetching private tokens:",r),[]}}async fetchAndUpdatePrivateTokens(t,e,s,r){const n=(await this.getPrivateTokens(e,s)).map(i=>i.erc20TokenAddress),u=r??await this.fetchPrivateTokens(e,t,n),v=await S.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(e,u),l=d.getStateKey(s,e);await c.update(T.StorageKeys.PRIVATE_TOKENS,(i={})=>{const a=i?.[l]||[],p=a.map(o=>o.erc20TokenAddress),f=u.filter(o=>!k.lowerCaseIncludes(p,o.erc20TokenAddress));a.push(...f);const A=a.filter(o=>!k.lowerCaseIncludes(v,o.erc20TokenAddress)),h={...i,[l]:A};return this.fetchedTokens=h,h})}getFetchedTokens(t,e){const s=d.getStateKey(e,t);return this.fetchedTokens[s]||[]}}const K=new g;exports.PrivateTokensDB=g;exports.privateTokensDB=K;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("idb-keyval"),w=require("../../API/API.cjs"),P=require("../../error-handling/logger.cjs"),T=require("../../functions/utils/caseInsensitive.utils.cjs"),d=require("../../types/cache.types.cjs"),u=require("../../functions/utils/string.utils.cjs"),S=require("./token-visibility-db.cjs");class y{fetchedTokens={};initalFetched=!1;async updateFetchedTokens(){const s=await k.get(d.StorageKeys.PRIVATE_TOKENS);this.fetchedTokens=s??{},this.initalFetched=!0}async getPrivateTokens(s,e){const n=u.getStateKey(e,s);return(await k.get(d.StorageKeys.PRIVATE_TOKENS))?.[n]||[]}async fetchPrivateTokens(s,e,n){try{const r=[...new Set(e)].filter(t=>t&&!T.lowerCaseIncludes(n,t));if(!r.length)return[];const l=(await w.API.tokensInfoCall(s,r)).filter(t=>!!t),i=new Map;return l.forEach(t=>{i.set(t.erc20TokenAddress.toLowerCase(),t)}),Array.from(i.values())}catch(r){return P.Logger.error("Error fetching private tokens:",r),[]}}async fetchAndUpdatePrivateTokens(s,e,n,r){const i=(await this.getPrivateTokens(e,n)).map(a=>a.erc20TokenAddress),t=r??await this.fetchPrivateTokens(e,s,i),v=await S.tokenVisibilityStorage.hideSpamsAndFetchHiddenTokensAddresses(e,t),h=u.getStateKey(n,e);await k.update(d.StorageKeys.PRIVATE_TOKENS,(a={})=>{const c=a?.[h]||[],p=c.map(o=>o.erc20TokenAddress),f=t.filter(o=>!T.lowerCaseIncludes(p,o.erc20TokenAddress));c.push(...f);const A=c.filter(o=>!T.lowerCaseIncludes(v,o.erc20TokenAddress)),g={...a,[h]:A};return this.fetchedTokens=g,g})}getFetchedTokens(s,e){const n=u.getStateKey(e,s);return this.fetchedTokens[n]||[]}}const K=new y;exports.PrivateTokensDB=y;exports.privateTokensDB=K;