@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
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../../constants/protocol.constants.cjs"),c=require("../../../crypto/poseidon.cjs");require("circomlibjs-hinkal-fork");require("libsodium-wrappers");require("process");require("buffer");const n=require("../../../functions/utils/amounts.utils.cjs"),o=require("../../merkle-tree/MerkleTree.cjs");require("ethers");require("../../../error-handling/error-codes.constants.cjs");const l=require("./AbstractSolanaSnapshotService.cjs"),i=require("../../../functions/utils/merkleTree.utils.cjs"),u=require("@solana/web3.js");class A extends l.AbstractSolanaSnapshotService{constructor(e){super(e,"NewAccessKeyAdded")}_merkleTree;_senderAddresses;_senderAddressIndexMap;get merkleTree(){return this._merkleTree}get senderAddresses(){return this._senderAddresses}get senderAddressIndexMap(){return this._senderAddressIndexMap}serializeSnapshot(e){return{merkleTree:e.payload.merkleTree.toJSON(),senderAddresses:Array.from(e.payload.senderAddresses),latestBlockNumber:e.latestBlockNumber,senderAddressIndexMap:Array.from(e.payload.senderAddressIndexMap).map(([s,r])=>({address:s,index:r}))}}deserializeSnapshot(e){let s,r;return e.latestBlockNumber&&e.merkleTree?s=i.contructMerkleTreeFromSerialized(e.merkleTree):s=o.MerkleTree.create(c.poseidonFunction,0n),e.latestBlockNumber&&e.senderAddressIndexMap?r=new Map(e.senderAddressIndexMap.map(({address:d,index:t})=>[d,t])):r=new Map,{latestBlockNumber:e.latestBlockNumber??0,payload:{merkleTree:s,senderAddresses:e.senderAddresses??[],senderAddressIndexMap:r}}}acceptEvent(e,s){try{return this._merkleTree.insert(e.access_key,e.index),this._senderAddressIndexMap.set(e.sender_address,Math.max(Number(e.index),this._senderAddressIndexMap.get(e.sender_address)??0)),this._senderAddresses.includes(e.sender_address)||this._senderAddresses.push(e.sender_address),e.access_key===0n&&e.sender_address===a.zeroAddress&&this._merkleTree.remove(e.index),!0}catch(r){return console.error(r),!1}}mapEvent(e){const{access_key:s,index:r,sender_address:d}=e;return{access_key:n.advancedToBigInt(s),index:n.advancedToBigInt(r),sender_address:new u.PublicKey(d).toBase58()}}getSnapshotPayload(){return{merkleTree:this._merkleTree,senderAddresses:this._senderAddresses,senderAddressIndexMap:this._senderAddressIndexMap}}populateSnapshot({payload:{merkleTree:e,senderAddresses:s,senderAddressIndexMap:r}}){this._merkleTree=e,this._senderAddresses=s,this._senderAddressIndexMap=r}}exports.AbstractSolanaAccessTokenSnapshotService=A;
@@ -0,0 +1,34 @@
1
+ import { MerkleTree, MerkleTreeJson } from '../../merkle-tree';
2
+ import { SolanaAccessTokenEvent } from '../../../types';
3
+ import { AbstractSolanaSnapshotService, SolanaSnapshot } from './AbstractSolanaSnapshotService';
4
+ import { SolanaBlockchainEventEmitter } from './SolanaBlockchainEventEmitter';
5
+ export type SolanaSenderAddressIndexMapJson = {
6
+ address: string;
7
+ index: number;
8
+ }[];
9
+ export type SolanaAccessTokenSnapshotPayload = {
10
+ readonly merkleTree: MerkleTree<bigint>;
11
+ readonly senderAddresses: string[];
12
+ readonly senderAddressIndexMap: Map<string, number>;
13
+ };
14
+ export type SolanaAccessTokenSerializedSnapshot = {
15
+ latestBlockNumber?: number;
16
+ merkleTree?: MerkleTreeJson;
17
+ senderAddresses?: string[];
18
+ senderAddressIndexMap?: SolanaSenderAddressIndexMapJson;
19
+ };
20
+ export declare abstract class AbstractSolanaAccessTokenSnapshotService extends AbstractSolanaSnapshotService<SolanaAccessTokenEvent<bigint, string>, SolanaAccessTokenEvent<number[], number[]>, SolanaAccessTokenSnapshotPayload, SolanaAccessTokenSerializedSnapshot> {
21
+ constructor(accessTokenEventFetcher: SolanaBlockchainEventEmitter);
22
+ private _merkleTree;
23
+ private _senderAddresses;
24
+ private _senderAddressIndexMap;
25
+ get merkleTree(): MerkleTree<bigint>;
26
+ get senderAddresses(): string[];
27
+ get senderAddressIndexMap(): Map<string, number>;
28
+ protected serializeSnapshot(snapshot: SolanaSnapshot<SolanaAccessTokenSnapshotPayload>): SolanaAccessTokenSerializedSnapshot;
29
+ protected deserializeSnapshot(serializedSnapshot: SolanaAccessTokenSerializedSnapshot): SolanaSnapshot<SolanaAccessTokenSnapshotPayload>;
30
+ protected acceptEvent(event: SolanaAccessTokenEvent<bigint, string>, _slot: number): boolean;
31
+ protected mapEvent(event: SolanaAccessTokenEvent<number[], number[]>): SolanaAccessTokenEvent<bigint, string>;
32
+ protected getSnapshotPayload(): SolanaAccessTokenSnapshotPayload;
33
+ protected populateSnapshot({ payload: { merkleTree, senderAddresses, senderAddressIndexMap }, }: SolanaSnapshot<SolanaAccessTokenSnapshotPayload>): void;
34
+ }
@@ -0,0 +1,87 @@
1
+ import { zeroAddress as a } from "../../../constants/protocol.constants.mjs";
2
+ import { poseidonFunction as o } from "../../../crypto/poseidon.mjs";
3
+ import "circomlibjs-hinkal-fork";
4
+ import "libsodium-wrappers";
5
+ import "process";
6
+ import "buffer";
7
+ import { advancedToBigInt as t } from "../../../functions/utils/amounts.utils.mjs";
8
+ import { MerkleTree as m } from "../../merkle-tree/MerkleTree.mjs";
9
+ import "ethers";
10
+ import "../../../error-handling/error-codes.constants.mjs";
11
+ import { AbstractSolanaSnapshotService as l } from "./AbstractSolanaSnapshotService.mjs";
12
+ import { contructMerkleTreeFromSerialized as c } from "../../../functions/utils/merkleTree.utils.mjs";
13
+ import { PublicKey as p } from "@solana/web3.js";
14
+ class B extends l {
15
+ constructor(e) {
16
+ super(e, "NewAccessKeyAdded");
17
+ }
18
+ _merkleTree;
19
+ _senderAddresses;
20
+ _senderAddressIndexMap;
21
+ get merkleTree() {
22
+ return this._merkleTree;
23
+ }
24
+ get senderAddresses() {
25
+ return this._senderAddresses;
26
+ }
27
+ get senderAddressIndexMap() {
28
+ return this._senderAddressIndexMap;
29
+ }
30
+ serializeSnapshot(e) {
31
+ return {
32
+ merkleTree: e.payload.merkleTree.toJSON(),
33
+ senderAddresses: Array.from(e.payload.senderAddresses),
34
+ latestBlockNumber: e.latestBlockNumber,
35
+ senderAddressIndexMap: Array.from(e.payload.senderAddressIndexMap).map(([s, r]) => ({
36
+ address: s,
37
+ index: r
38
+ }))
39
+ };
40
+ }
41
+ deserializeSnapshot(e) {
42
+ let s, r;
43
+ return e.latestBlockNumber && e.merkleTree ? s = c(e.merkleTree) : s = m.create(o, 0n), e.latestBlockNumber && e.senderAddressIndexMap ? r = new Map(
44
+ e.senderAddressIndexMap.map(({ address: d, index: n }) => [d, n])
45
+ ) : r = /* @__PURE__ */ new Map(), {
46
+ latestBlockNumber: e.latestBlockNumber ?? 0,
47
+ payload: {
48
+ merkleTree: s,
49
+ senderAddresses: e.senderAddresses ?? [],
50
+ senderAddressIndexMap: r
51
+ }
52
+ };
53
+ }
54
+ acceptEvent(e, s) {
55
+ try {
56
+ return this._merkleTree.insert(e.access_key, e.index), this._senderAddressIndexMap.set(
57
+ e.sender_address,
58
+ Math.max(Number(e.index), this._senderAddressIndexMap.get(e.sender_address) ?? 0)
59
+ ), this._senderAddresses.includes(e.sender_address) || this._senderAddresses.push(e.sender_address), e.access_key === 0n && e.sender_address === a && this._merkleTree.remove(e.index), !0;
60
+ } catch (r) {
61
+ return console.error(r), !1;
62
+ }
63
+ }
64
+ mapEvent(e) {
65
+ const { access_key: s, index: r, sender_address: d } = e;
66
+ return {
67
+ access_key: t(s),
68
+ index: t(r),
69
+ sender_address: new p(d).toBase58()
70
+ };
71
+ }
72
+ getSnapshotPayload() {
73
+ return {
74
+ merkleTree: this._merkleTree,
75
+ senderAddresses: this._senderAddresses,
76
+ senderAddressIndexMap: this._senderAddressIndexMap
77
+ };
78
+ }
79
+ populateSnapshot({
80
+ payload: { merkleTree: e, senderAddresses: s, senderAddressIndexMap: r }
81
+ }) {
82
+ this._merkleTree = e, this._senderAddresses = s, this._senderAddressIndexMap = r;
83
+ }
84
+ }
85
+ export {
86
+ B as AbstractSolanaAccessTokenSnapshotService
87
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("../../../crypto/poseidon.cjs");require("circomlibjs-hinkal-fork");require("libsodium-wrappers");require("process");require("buffer");const m=require("../../merkle-tree/MerkleTree.cjs");require("ethers");require("../../../error-handling/error-codes.constants.cjs");const c=require("../../../functions/utils/amounts.utils.cjs"),d=require("./AbstractSolanaSnapshotService.cjs"),y=require("../../../functions/utils/merkleTree.utils.cjs"),o=require("../../crypto-keys/decodeUTXO.cjs");class O extends d.AbstractSolanaSnapshotService{constructor(e){super(e,"NewCommitment")}_merkleTree;_encryptedOutputs;get merkleTree(){return this._merkleTree}get encryptedOutputs(){return this._encryptedOutputs}serializeSnapshot(e){return{merkleTree:e.payload.merkleTree.toJSON(),latestBlockNumber:e.latestBlockNumber,encryptedOutputs:e.payload.encryptedOutputs.map(t=>({value:t.value,isPositive:String(t.isPositive),isBlocked:t.isBlocked??!1}))}}deserializeSnapshot(e){let t;e.latestBlockNumber&&e.merkleTree?t=y.contructMerkleTreeFromSerialized(e.merkleTree):t=m.MerkleTree.create(p.poseidonFunction,0n);const n=e.encryptedOutputs?.map(r=>({value:r.value,isPositive:JSON.parse(r.isPositive),isBlocked:r.isBlocked??!1}));return{latestBlockNumber:e.latestBlockNumber??0,payload:{merkleTree:t,encryptedOutputs:n||[]}}}getSnapshotPayload(){return{merkleTree:this._merkleTree,encryptedOutputs:this._encryptedOutputs}}populateSnapshot({payload:{merkleTree:e,encryptedOutputs:t}}){this._merkleTree=e,this._encryptedOutputs=t}async mapEvent(e){const{commitment:t,index:n,encrypted_output:r,on_chain_data:s}=e,i=c.advancedToBigInt(t),u=c.advancedToBigInt(n);if(r.length===0){const l=o.encodeSolanaOnChainUtxo(s);return{commitment:i,index:u,encryptedOutput:l}}const a=`0x${Buffer.from(r).toString("hex")}`;return{commitment:i,index:u,encryptedOutput:a}}acceptEvent(e,t,n,r){if(!this.encryptedOutputs.map(s=>s.value).includes(e.encryptedOutput)){if(!this._merkleTree.insert(e.commitment,e.index>=0?e.index:-1n*e.index))return!1;const i={value:e.encryptedOutput,isPositive:!o.isSolanaOnChainUtxo(e.encryptedOutput),isBlocked:r??!1};return this._encryptedOutputs.push(i),!0}return!1}}exports.AbstractSolanaCommitmentsSnapshotService=O;
@@ -0,0 +1,29 @@
1
+ import { MerkleTree, MerkleTreeJson } from '../../merkle-tree';
2
+ import { CommitmentEvent, EncryptedOutputWithSign, SolanaCommitmentEvent } from '../../../types';
3
+ import { AbstractSolanaSnapshotService, SolanaSnapshot } from './AbstractSolanaSnapshotService';
4
+ import { SolanaBlockchainEventEmitter } from './SolanaBlockchainEventEmitter';
5
+ export type SolanaCommitmentsSnapshotPayload = {
6
+ readonly merkleTree: MerkleTree<bigint>;
7
+ readonly encryptedOutputs: EncryptedOutputWithSign[];
8
+ };
9
+ export type SolanaCommitmentsSerializedSnapshot = {
10
+ latestBlockNumber?: number;
11
+ merkleTree?: MerkleTreeJson;
12
+ encryptedOutputs?: EncryptedOutputWithSign<string>[];
13
+ };
14
+ export declare abstract class AbstractSolanaCommitmentsSnapshotService extends AbstractSolanaSnapshotService<CommitmentEvent<bigint>, SolanaCommitmentEvent, SolanaCommitmentsSnapshotPayload, SolanaCommitmentsSerializedSnapshot> {
15
+ constructor(solanaEventEmitter: SolanaBlockchainEventEmitter);
16
+ private _merkleTree;
17
+ private _encryptedOutputs;
18
+ get merkleTree(): MerkleTree<bigint>;
19
+ get encryptedOutputs(): EncryptedOutputWithSign<boolean>[];
20
+ protected serializeSnapshot(snapshot: SolanaSnapshot<SolanaCommitmentsSnapshotPayload>): SolanaCommitmentsSerializedSnapshot;
21
+ protected deserializeSnapshot(serializedSnapshot: SolanaCommitmentsSerializedSnapshot): SolanaSnapshot<SolanaCommitmentsSnapshotPayload>;
22
+ protected getSnapshotPayload(): {
23
+ merkleTree: MerkleTree<bigint>;
24
+ encryptedOutputs: EncryptedOutputWithSign<boolean>[];
25
+ };
26
+ protected populateSnapshot({ payload: { merkleTree, encryptedOutputs }, }: SolanaSnapshot<SolanaCommitmentsSnapshotPayload>): void;
27
+ protected mapEvent(event: SolanaCommitmentEvent): Promise<CommitmentEvent<bigint>>;
28
+ protected acceptEvent(event: CommitmentEvent<bigint>, _slot: number, _signature?: string, isBlocked?: boolean): boolean;
29
+ }
@@ -0,0 +1,96 @@
1
+ import { poseidonFunction as p } from "../../../crypto/poseidon.mjs";
2
+ import "circomlibjs-hinkal-fork";
3
+ import "libsodium-wrappers";
4
+ import "process";
5
+ import "buffer";
6
+ import { MerkleTree as a } from "../../merkle-tree/MerkleTree.mjs";
7
+ import "ethers";
8
+ import "../../../error-handling/error-codes.constants.mjs";
9
+ import { advancedToBigInt as u } from "../../../functions/utils/amounts.utils.mjs";
10
+ import { AbstractSolanaSnapshotService as l } from "./AbstractSolanaSnapshotService.mjs";
11
+ import { contructMerkleTreeFromSerialized as d } from "../../../functions/utils/merkleTree.utils.mjs";
12
+ import { encodeSolanaOnChainUtxo as y, isSolanaOnChainUtxo as O } from "../../crypto-keys/decodeUTXO.mjs";
13
+ class I extends l {
14
+ constructor(e) {
15
+ super(e, "NewCommitment");
16
+ }
17
+ _merkleTree;
18
+ _encryptedOutputs;
19
+ get merkleTree() {
20
+ return this._merkleTree;
21
+ }
22
+ get encryptedOutputs() {
23
+ return this._encryptedOutputs;
24
+ }
25
+ serializeSnapshot(e) {
26
+ return {
27
+ merkleTree: e.payload.merkleTree.toJSON(),
28
+ latestBlockNumber: e.latestBlockNumber,
29
+ encryptedOutputs: e.payload.encryptedOutputs.map((t) => ({
30
+ value: t.value,
31
+ isPositive: String(t.isPositive),
32
+ isBlocked: t.isBlocked ?? !1
33
+ }))
34
+ };
35
+ }
36
+ deserializeSnapshot(e) {
37
+ let t;
38
+ e.latestBlockNumber && e.merkleTree ? t = d(e.merkleTree) : t = a.create(p, 0n);
39
+ const n = e.encryptedOutputs?.map((r) => ({
40
+ value: r.value,
41
+ isPositive: JSON.parse(r.isPositive),
42
+ isBlocked: r.isBlocked ?? !1
43
+ }));
44
+ return {
45
+ latestBlockNumber: e.latestBlockNumber ?? 0,
46
+ payload: {
47
+ merkleTree: t,
48
+ encryptedOutputs: n || []
49
+ }
50
+ };
51
+ }
52
+ getSnapshotPayload() {
53
+ return {
54
+ merkleTree: this._merkleTree,
55
+ encryptedOutputs: this._encryptedOutputs
56
+ };
57
+ }
58
+ populateSnapshot({
59
+ payload: { merkleTree: e, encryptedOutputs: t }
60
+ }) {
61
+ this._merkleTree = e, this._encryptedOutputs = t;
62
+ }
63
+ async mapEvent(e) {
64
+ const { commitment: t, index: n, encrypted_output: r, on_chain_data: i } = e, s = u(t), o = u(n);
65
+ if (r.length === 0) {
66
+ const m = y(i);
67
+ return {
68
+ commitment: s,
69
+ index: o,
70
+ encryptedOutput: m
71
+ };
72
+ }
73
+ const c = `0x${Buffer.from(r).toString("hex")}`;
74
+ return {
75
+ commitment: s,
76
+ index: o,
77
+ encryptedOutput: c
78
+ };
79
+ }
80
+ acceptEvent(e, t, n, r) {
81
+ if (!this.encryptedOutputs.map((i) => i.value).includes(e.encryptedOutput)) {
82
+ if (!this._merkleTree.insert(e.commitment, e.index >= 0 ? e.index : -1n * e.index))
83
+ return !1;
84
+ const s = {
85
+ value: e.encryptedOutput,
86
+ isPositive: !O(e.encryptedOutput),
87
+ isBlocked: r ?? !1
88
+ };
89
+ return this._encryptedOutputs.push(s), !0;
90
+ }
91
+ return !1;
92
+ }
93
+ }
94
+ export {
95
+ I as AbstractSolanaCommitmentsSnapshotService
96
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class i{solanaBlockchainEventEmitter;eventName;constructor(e,s){this.solanaBlockchainEventEmitter=e,this.eventName=s,e.addEventProcessorFunction(this.processEventsPage.bind(this))}get latestBlockNumber(){return this.solanaBlockchainEventEmitter.latestBlockNumber}intervalClear(){this.solanaBlockchainEventEmitter.intervalClear()}async processEventsPage(e){const s=[],n=new Set;e.forEach(({eventName:t,signature:a})=>{t==="BlockedUtxosCreated"&&n.add(a)});const c=e.filter(t=>t.eventName===this.eventName).map(async t=>{try{const a=await this.mapEvent(t.data),o=n.has(t.signature);return await this.acceptEvent(a,t.slot,t.signature,o)?a:null}catch{return null}}),r=(await Promise.all(c)).filter(t=>t!==null);s.push(...r);const l=s.length;return await this.afterEventsAccepted(l),s.length}}exports.AbstractSolanaEventService=i;
@@ -0,0 +1,22 @@
1
+ import { SolanaBlockchainEventEmitter } from './SolanaBlockchainEventEmitter';
2
+ export interface SolanaEvent {
3
+ signature: string;
4
+ slot: number;
5
+ blockTime: number;
6
+ programId: any;
7
+ data: any;
8
+ eventName: string;
9
+ }
10
+ type PromiseOrValue<T> = T | Promise<T>;
11
+ export declare abstract class AbstractSolanaEventService<EventType, SerializedEventType = unknown> {
12
+ protected solanaBlockchainEventEmitter: SolanaBlockchainEventEmitter;
13
+ protected readonly eventName: string;
14
+ protected constructor(solanaBlockchainEventEmitter: SolanaBlockchainEventEmitter, eventName: string);
15
+ get latestBlockNumber(): number;
16
+ intervalClear(): void;
17
+ private processEventsPage;
18
+ protected abstract acceptEvent(event: EventType, slot: number, signature?: string, isBlocked?: boolean): boolean | Promise<boolean>;
19
+ protected abstract mapEvent(event: SerializedEventType): PromiseOrValue<EventType>;
20
+ protected abstract afterEventsAccepted(eventsCount: number): Promise<void>;
21
+ }
22
+ export {};
@@ -0,0 +1,33 @@
1
+ class E {
2
+ solanaBlockchainEventEmitter;
3
+ eventName;
4
+ constructor(e, s) {
5
+ this.solanaBlockchainEventEmitter = e, this.eventName = s, e.addEventProcessorFunction(this.processEventsPage.bind(this));
6
+ }
7
+ get latestBlockNumber() {
8
+ return this.solanaBlockchainEventEmitter.latestBlockNumber;
9
+ }
10
+ intervalClear() {
11
+ this.solanaBlockchainEventEmitter.intervalClear();
12
+ }
13
+ async processEventsPage(e) {
14
+ const s = [], a = /* @__PURE__ */ new Set();
15
+ e.forEach(({ eventName: t, signature: n }) => {
16
+ t === "BlockedUtxosCreated" && a.add(n);
17
+ });
18
+ const c = e.filter((t) => t.eventName === this.eventName).map(async (t) => {
19
+ try {
20
+ const n = await this.mapEvent(t.data), o = a.has(t.signature);
21
+ return await this.acceptEvent(n, t.slot, t.signature, o) ? n : null;
22
+ } catch {
23
+ return null;
24
+ }
25
+ }), r = (await Promise.all(c)).filter((t) => t !== null);
26
+ s.push(...r);
27
+ const l = s.length;
28
+ return await this.afterEventsAccepted(l), s.length;
29
+ }
30
+ }
31
+ export {
32
+ E as AbstractSolanaEventService
33
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("ethers"),i=require("../../../functions/utils/amounts.utils.cjs"),n=require("./AbstractSolanaSnapshotService.cjs");class s extends n.AbstractSolanaSnapshotService{constructor(e){super(e,"Nullified")}_nullifiers;get nullifiers(){return this._nullifiers}serializeSnapshot(e){return{nullifiers:Array.from(e.payload.nullifiers).map(r=>r.toString()),latestBlockNumber:e.latestBlockNumber}}deserializeSnapshot(e){return{latestBlockNumber:e.latestBlockNumber??0,payload:{nullifiers:new Set(e.nullifiers??[])}}}acceptEvent(e,r){try{return this._nullifiers.has(e.nullifier)?!1:(this._nullifiers.add(e.nullifier),!0)}catch(l){return console.error(l),!1}}mapEvent(e){return{nullifier:t.BigNumber.from(i.advancedToBigInt(e.nullifier)).toHexString()}}getSnapshotPayload(){return{nullifiers:this._nullifiers}}populateSnapshot({payload:{nullifiers:e}}){this._nullifiers=e}}exports.AbstractSolanaNullifierSnapshotService=s;
@@ -0,0 +1,21 @@
1
+ import { NullifierEvent } from '../../../types/commitments.types';
2
+ import { AbstractSolanaSnapshotService, SolanaSnapshot } from './AbstractSolanaSnapshotService';
3
+ import { SolanaBlockchainEventEmitter } from './SolanaBlockchainEventEmitter';
4
+ export type SolanaNullifierSnapshotPayload = {
5
+ readonly nullifiers: Set<string>;
6
+ };
7
+ export type SolanaNullifierSerializedSnapshot = {
8
+ latestBlockNumber?: number;
9
+ nullifiers?: string[];
10
+ };
11
+ export declare abstract class AbstractSolanaNullifierSnapshotService extends AbstractSolanaSnapshotService<NullifierEvent<string>, NullifierEvent<number[]>, SolanaNullifierSnapshotPayload, SolanaNullifierSerializedSnapshot> {
12
+ constructor(solanaEventEmitter: SolanaBlockchainEventEmitter);
13
+ private _nullifiers;
14
+ get nullifiers(): Set<string>;
15
+ protected serializeSnapshot(snapshot: SolanaSnapshot<SolanaNullifierSnapshotPayload>): SolanaNullifierSerializedSnapshot;
16
+ protected deserializeSnapshot(serializedSnapshot: SolanaNullifierSerializedSnapshot): SolanaSnapshot<SolanaNullifierSnapshotPayload>;
17
+ protected acceptEvent(event: NullifierEvent<string>, _slot: number): boolean;
18
+ protected mapEvent(event: NullifierEvent<number[]>): NullifierEvent<string>;
19
+ protected getSnapshotPayload(): SolanaNullifierSnapshotPayload;
20
+ protected populateSnapshot({ payload: { nullifiers } }: SolanaSnapshot<SolanaNullifierSnapshotPayload>): void;
21
+ }
@@ -0,0 +1,49 @@
1
+ import { BigNumber as i } from "ethers";
2
+ import { advancedToBigInt as t } from "../../../functions/utils/amounts.utils.mjs";
3
+ import { AbstractSolanaSnapshotService as n } from "./AbstractSolanaSnapshotService.mjs";
4
+ class f extends n {
5
+ constructor(r) {
6
+ super(r, "Nullified");
7
+ }
8
+ _nullifiers;
9
+ get nullifiers() {
10
+ return this._nullifiers;
11
+ }
12
+ serializeSnapshot(r) {
13
+ return {
14
+ nullifiers: Array.from(r.payload.nullifiers).map((e) => e.toString()),
15
+ latestBlockNumber: r.latestBlockNumber
16
+ };
17
+ }
18
+ deserializeSnapshot(r) {
19
+ return {
20
+ latestBlockNumber: r.latestBlockNumber ?? 0,
21
+ payload: {
22
+ nullifiers: new Set(r.nullifiers ?? [])
23
+ }
24
+ };
25
+ }
26
+ acceptEvent(r, e) {
27
+ try {
28
+ return this._nullifiers.has(r.nullifier) ? !1 : (this._nullifiers.add(r.nullifier), !0);
29
+ } catch (l) {
30
+ return console.error(l), !1;
31
+ }
32
+ }
33
+ mapEvent(r) {
34
+ return {
35
+ nullifier: i.from(t(r.nullifier)).toHexString()
36
+ };
37
+ }
38
+ getSnapshotPayload() {
39
+ return {
40
+ nullifiers: this._nullifiers
41
+ };
42
+ }
43
+ populateSnapshot({ payload: { nullifiers: r } }) {
44
+ this._nullifiers = r;
45
+ }
46
+ }
47
+ export {
48
+ f as AbstractSolanaNullifierSnapshotService
49
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./AbstractSolanaEventService.cjs"),e=require("../../../constants/save-depths.cjs");class o extends a.AbstractSolanaEventService{savedLatestSlot=0;chainId=0;constructor(t,s){super(t,s)}async init(){await this.loadSnapshot(),this.chainId=this.solanaBlockchainEventEmitter.chainId}async retrieveEventsFromLatestBlock(){await this.solanaBlockchainEventEmitter.retrieveEvents(this.latestBlockNumber)}async loadSnapshot(){const t=await this.fetchSnapshot(),s=this.deserializeSnapshot(t);this.populateSnapshot(s),this.solanaBlockchainEventEmitter.syncFromAtMost(s.latestBlockNumber),this.savedLatestSlot=s.latestBlockNumber}saveSnapshot(){return this.savedLatestSlot=this.latestBlockNumber,this.persistSnapshot(this.serializeSnapshot({latestBlockNumber:this.latestBlockNumber,payload:this.getSnapshotPayload()}))}async afterEventsAccepted(t){(t>0||this.savedLatestSlot+e.saveDepths[this.chainId]<this.latestBlockNumber)&&await this.saveSnapshot()}}exports.AbstractSolanaSnapshotService=o;
@@ -0,0 +1,22 @@
1
+ import { AbstractSolanaEventService } from './AbstractSolanaEventService';
2
+ import { SolanaBlockchainEventEmitter } from './SolanaBlockchainEventEmitter';
3
+ export interface SolanaSnapshot<SnapshotPayloadType> {
4
+ readonly latestBlockNumber: number;
5
+ readonly payload: SnapshotPayloadType;
6
+ }
7
+ export declare abstract class AbstractSolanaSnapshotService<EventType, SerializedEventType, SnapshotPayloadType, SerializedSnapshotType> extends AbstractSolanaEventService<EventType, SerializedEventType> {
8
+ private savedLatestSlot;
9
+ private chainId;
10
+ protected constructor(solanaBlockchainEventEmitter: SolanaBlockchainEventEmitter, eventName: string);
11
+ init(): Promise<void>;
12
+ retrieveEventsFromLatestBlock(): Promise<void>;
13
+ private loadSnapshot;
14
+ protected saveSnapshot(): Promise<unknown>;
15
+ protected afterEventsAccepted(eventsCount: number): Promise<void>;
16
+ protected abstract getSnapshotPayload(): SnapshotPayloadType;
17
+ protected abstract populateSnapshot(snapshot: SolanaSnapshot<SnapshotPayloadType>): void;
18
+ protected abstract serializeSnapshot(snapshot: SolanaSnapshot<SnapshotPayloadType>): SerializedSnapshotType;
19
+ protected abstract deserializeSnapshot(serializedSnapshot: SerializedSnapshotType): SolanaSnapshot<SnapshotPayloadType>;
20
+ protected abstract fetchSnapshot(): Promise<SerializedSnapshotType>;
21
+ protected abstract persistSnapshot(serializedSnapshot: SerializedSnapshotType): Promise<unknown>;
22
+ }
@@ -0,0 +1,33 @@
1
+ import { AbstractSolanaEventService as a } from "./AbstractSolanaEventService.mjs";
2
+ import { saveDepths as e } from "../../../constants/save-depths.mjs";
3
+ class n extends a {
4
+ savedLatestSlot = 0;
5
+ chainId = 0;
6
+ constructor(t, s) {
7
+ super(t, s);
8
+ }
9
+ async init() {
10
+ await this.loadSnapshot(), this.chainId = this.solanaBlockchainEventEmitter.chainId;
11
+ }
12
+ async retrieveEventsFromLatestBlock() {
13
+ await this.solanaBlockchainEventEmitter.retrieveEvents(this.latestBlockNumber);
14
+ }
15
+ async loadSnapshot() {
16
+ const t = await this.fetchSnapshot(), s = this.deserializeSnapshot(t);
17
+ this.populateSnapshot(s), this.solanaBlockchainEventEmitter.syncFromAtMost(s.latestBlockNumber), this.savedLatestSlot = s.latestBlockNumber;
18
+ }
19
+ saveSnapshot() {
20
+ return this.savedLatestSlot = this.latestBlockNumber, this.persistSnapshot(
21
+ this.serializeSnapshot({
22
+ latestBlockNumber: this.latestBlockNumber,
23
+ payload: this.getSnapshotPayload()
24
+ })
25
+ );
26
+ }
27
+ async afterEventsAccepted(t) {
28
+ (t > 0 || this.savedLatestSlot + e[this.chainId] < this.latestBlockNumber) && await this.saveSnapshot();
29
+ }
30
+ }
31
+ export {
32
+ n as AbstractSolanaSnapshotService
33
+ };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("@coral-xyz/anchor"),m=require("../../../functions/utils/resolve-sync.utils.cjs"),p=require("../../../functions/utils/mutexes.utils.cjs"),l=require("../../../error-handling/logger.cjs"),g=require("../../../constants/chains.constants.cjs"),f=require("../../../functions/utils/caseInsensitive.utils.cjs"),d=1e3;class y{connection;programId;_latestSlot;_initialSlot;onEventsProcessed;eventProcessors=new Set;maxPageSize;isReady=!1;isServer;intervalId;inProgress;anchorParser;constructor(e,r,a,s,n){this.connection=e,this.programId=r,this._initialSlot=a,this.maxPageSize=n,this.isServer=s,this.inProgress=!1}get latestBlockNumber(){return this._latestSlot??this._initialSlot}setIdl(e){try{const r=new v.BorshCoder(e);this.anchorParser=new v.EventParser(this.programId,r)}catch(r){l.Logger.error("Failed to initialize Anchor EventParser:",r),this.anchorParser=void 0}}syncFromAtMost(e){(this._latestSlot===void 0||e<this._latestSlot)&&(this._latestSlot=e)}intervalClear(){this.isReady=!1,this.eventProcessors=new Set,clearInterval(this.intervalId)}async init(){if(this.isReady)throw new Error("Already initialized");this.isReady=!0,await this.retrieveEvents(this.latestBlockNumber+1),this.intervalId=setInterval(async()=>{await this.retrieveEvents(this.latestBlockNumber)},3500)}requireReady(){if(!this.isReady)throw new Error("Not ready")}get chainId(){const e=this.connection.rpcEndpoint;return f.caseInsensitiveEqual(e,g.networkRegistry[g.chainIds.solanaMainnet].fetchRpcUrl)?g.chainIds.solanaMainnet:g.chainIds.solanaLocalnet}addEventProcessorFunction(e){if(this.isReady)throw new Error("Can't add event processor after event emitter initialized");this.eventProcessors.add(e)}async getLastSlotForEventRequest(){const e=await this.connection.getSlot();return this.isServer?Math.max(this.latestBlockNumber,e-32+1):e}async retrieveEvents(e,r=!1){const a=e;return this.requireReady(),await p.balanceFetchingMutex.runExclusive(async()=>{try{if(this.inProgress&&!r)return!1;this.inProgress=!0;let n=0;const o=await this.getLastSlotForEventRequest();if(o<a)return this.inProgress=!1,!1;const c=m.getSequence(a,o,this.maxPageSize),h=[];await m.resolveSync(c.map(({from:t,to:u})=>async()=>{const S=await this.getProgramEvents(t,u);h.push(...S)}));const i=await Promise.all([...this.eventProcessors].map(t=>t(h)));return this._latestSlot=o,n+=i.reduce((t,u)=>t+u,0),this.onEventsProcessed?.(n),this.inProgress=!1,!0}catch(n){return l.Logger.error("retrieveEvents error:",n),this.inProgress=!1,!1}})}async getProgramEvents(e,r){const a=[];try{const s=await this.connection.getSignaturesForAddress(this.programId,{limit:d,before:void 0});let n=s.length;for(;n>=d;){const i=s[s.length-1],t=await this.connection.getSignaturesForAddress(this.programId,{limit:d,before:i.signature});if(t.length===0)break;s.push(...t),n=t.length}const c=s.filter(i=>i.slot>=e&&i.slot<=r).map(async i=>{try{const t=await this.connection.getTransaction(i.signature,{commitment:"confirmed",maxSupportedTransactionVersion:0});return t&&t.meta&&t.meta.logMessages?this.parseLogsForEvents(t.meta.logMessages,i.signature,i.slot,t.blockTime||null):[]}catch(t){return l.Logger.error(`Failed to get transaction ${i.signature}:`,t),[]}}),h=await Promise.all(c);a.push(...h.flat())}catch(s){l.Logger.error("Error getting program events:",s)}return a}parseLogsForEvents(e,r,a,s){if(!this.anchorParser)return[];try{return Array.from(this.anchorParser.parseLogs(e)).map(({name:o,data:c})=>({signature:r,slot:a,blockTime:s||0,programId:this.programId,data:c,eventName:o}))}catch(n){return l.Logger.error("Anchor EventParser failed; falling back to generic parsing:",n),[]}}}exports.SolanaBlockchainEventEmitter=y;
@@ -0,0 +1,39 @@
1
+ import { Connection, PublicKey } from '@solana/web3.js';
2
+ import type { Idl } from '@coral-xyz/anchor';
3
+ interface SolanaEvent {
4
+ signature: string;
5
+ slot: number;
6
+ blockTime: number;
7
+ programId: PublicKey;
8
+ data: any;
9
+ eventName: string;
10
+ }
11
+ export type SolanaEventProcessorFunction = (events: SolanaEvent[]) => Promise<number> | number;
12
+ export declare class SolanaBlockchainEventEmitter {
13
+ readonly connection: Connection;
14
+ readonly programId: PublicKey;
15
+ private _latestSlot;
16
+ private _initialSlot;
17
+ onEventsProcessed?: (acceptedEventCount: number) => void;
18
+ private eventProcessors;
19
+ private readonly maxPageSize?;
20
+ private isReady;
21
+ private isServer;
22
+ private intervalId?;
23
+ private inProgress;
24
+ private anchorParser?;
25
+ constructor(connection: Connection, programId: PublicKey, initialSlot: number, isServer: boolean, maxPageSize?: number);
26
+ get latestBlockNumber(): number;
27
+ setIdl(idl: Idl): void;
28
+ syncFromAtMost(slot: number): void;
29
+ intervalClear(): void;
30
+ init(): Promise<void>;
31
+ private requireReady;
32
+ get chainId(): number;
33
+ addEventProcessorFunction(eventProcessorFunction: SolanaEventProcessorFunction): void;
34
+ private getLastSlotForEventRequest;
35
+ retrieveEvents(fromBlock: number, useForce?: boolean): Promise<boolean>;
36
+ private getProgramEvents;
37
+ private parseLogsForEvents;
38
+ }
39
+ export {};