@across-protocol/sdk 4.1.63 → 4.2.0

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 (519) hide show
  1. package/dist/cjs/arch/evm/BlockUtils.d.ts +15 -0
  2. package/dist/cjs/arch/evm/BlockUtils.js +218 -0
  3. package/dist/cjs/arch/evm/BlockUtils.js.map +1 -0
  4. package/dist/cjs/arch/evm/SpokeUtils.d.ts +1 -1
  5. package/dist/cjs/arch/evm/SpokeUtils.js +6 -5
  6. package/dist/cjs/arch/evm/SpokeUtils.js.map +1 -1
  7. package/dist/cjs/arch/evm/index.d.ts +1 -0
  8. package/dist/cjs/arch/evm/index.js +1 -0
  9. package/dist/cjs/arch/evm/index.js.map +1 -1
  10. package/dist/cjs/arch/svm/SpokeUtils.d.ts +20 -0
  11. package/dist/cjs/arch/svm/SpokeUtils.js +449 -0
  12. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -0
  13. package/dist/cjs/arch/svm/constants.d.ts +2 -0
  14. package/dist/cjs/arch/svm/constants.js +7 -0
  15. package/dist/cjs/arch/svm/constants.js.map +1 -0
  16. package/dist/cjs/arch/svm/eventsClient.d.ts +26 -0
  17. package/dist/cjs/arch/svm/eventsClient.js +253 -0
  18. package/dist/cjs/arch/svm/eventsClient.js.map +1 -0
  19. package/dist/cjs/arch/svm/index.d.ts +5 -1
  20. package/dist/cjs/arch/svm/index.js +6 -2
  21. package/dist/cjs/arch/svm/index.js.map +1 -1
  22. package/dist/cjs/{svm → arch/svm}/types.d.ts +9 -4
  23. package/dist/cjs/arch/svm/types.js.map +1 -0
  24. package/dist/cjs/arch/svm/utils.d.ts +18 -0
  25. package/dist/cjs/arch/svm/utils.js +212 -0
  26. package/dist/cjs/arch/svm/utils.js.map +1 -0
  27. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
  28. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +7 -7
  29. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  30. package/dist/cjs/clients/BaseAbstractClient.d.ts +6 -5
  31. package/dist/cjs/clients/BaseAbstractClient.js +30 -19
  32. package/dist/cjs/clients/BaseAbstractClient.js.map +1 -1
  33. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +15 -11
  34. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  35. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +1 -1
  36. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  37. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +114 -114
  38. package/dist/cjs/clients/HubPoolClient.d.ts +4 -3
  39. package/dist/cjs/clients/HubPoolClient.js +18 -17
  40. package/dist/cjs/clients/HubPoolClient.js.map +1 -1
  41. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
  42. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +23 -20
  43. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  44. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +23 -0
  45. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js +172 -0
  46. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -0
  47. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.d.ts +5 -5
  48. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +54 -57
  49. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  50. package/dist/cjs/clients/SpokePoolClient/index.d.ts +3 -0
  51. package/dist/cjs/clients/SpokePoolClient/index.js +8 -1
  52. package/dist/cjs/clients/SpokePoolClient/index.js.map +1 -1
  53. package/dist/cjs/clients/index.d.ts +1 -1
  54. package/dist/cjs/clients/index.js +2 -1
  55. package/dist/cjs/clients/index.js.map +1 -1
  56. package/dist/cjs/clients/mocks/MockConfigStoreClient.d.ts +1 -1
  57. package/dist/cjs/clients/mocks/MockConfigStoreClient.js +2 -2
  58. package/dist/cjs/clients/mocks/MockConfigStoreClient.js.map +1 -1
  59. package/dist/cjs/clients/mocks/MockHubPoolClient.js +2 -2
  60. package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
  61. package/dist/cjs/clients/mocks/MockSpokePoolClient.js +7 -4
  62. package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
  63. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.d.ts +33 -0
  64. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js +184 -0
  65. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js.map +1 -0
  66. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.d.ts +30 -0
  67. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js +90 -0
  68. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js.map +1 -0
  69. package/dist/cjs/clients/mocks/index.d.ts +2 -0
  70. package/dist/cjs/clients/mocks/index.js +2 -0
  71. package/dist/cjs/clients/mocks/index.js.map +1 -1
  72. package/dist/cjs/constants.d.ts +1 -0
  73. package/dist/cjs/constants.js +2 -1
  74. package/dist/cjs/constants.js.map +1 -1
  75. package/dist/cjs/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
  76. package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  77. package/dist/cjs/gasPriceOracle/adapters/ethereum.d.ts +4 -4
  78. package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -1
  79. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js +3 -2
  80. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  81. package/dist/cjs/gasPriceOracle/adapters/polygon.d.ts +3 -3
  82. package/dist/cjs/gasPriceOracle/adapters/solana.d.ts +4 -0
  83. package/dist/cjs/gasPriceOracle/adapters/solana.js +43 -0
  84. package/dist/cjs/gasPriceOracle/adapters/solana.js.map +1 -0
  85. package/dist/cjs/gasPriceOracle/index.d.ts +1 -1
  86. package/dist/cjs/gasPriceOracle/oracle.d.ts +4 -3
  87. package/dist/cjs/gasPriceOracle/oracle.js +16 -9
  88. package/dist/cjs/gasPriceOracle/oracle.js.map +1 -1
  89. package/dist/cjs/gasPriceOracle/types.d.ts +6 -1
  90. package/dist/cjs/index.d.ts +0 -1
  91. package/dist/cjs/index.js +1 -2
  92. package/dist/cjs/index.js.map +1 -1
  93. package/dist/cjs/interfaces/SpokePool.d.ts +13 -0
  94. package/dist/cjs/interfaces/SpokePool.js.map +1 -1
  95. package/dist/cjs/providers/index.d.ts +1 -1
  96. package/dist/cjs/providers/index.js +1 -2
  97. package/dist/cjs/providers/index.js.map +1 -1
  98. package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.d.ts +5 -0
  99. package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.js +21 -0
  100. package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.js.map +1 -0
  101. package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.d.ts +5 -0
  102. package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.js +20 -0
  103. package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.js.map +1 -0
  104. package/dist/cjs/providers/mocks/MockSolanaRpcFactory.d.ts +13 -0
  105. package/dist/cjs/providers/mocks/MockSolanaRpcFactory.js +76 -0
  106. package/dist/cjs/providers/mocks/MockSolanaRpcFactory.js.map +1 -0
  107. package/dist/cjs/providers/mocks/index.d.ts +4 -0
  108. package/dist/cjs/providers/mocks/index.js +8 -0
  109. package/dist/cjs/providers/mocks/index.js.map +1 -0
  110. package/dist/cjs/providers/{mockProvider.js → mocks/mockEthersProvider.js} +2 -2
  111. package/dist/cjs/providers/mocks/mockEthersProvider.js.map +1 -0
  112. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
  113. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +10 -8
  114. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  115. package/dist/cjs/relayFeeCalculator/chain-queries/factory.d.ts +4 -2
  116. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +8 -2
  117. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  118. package/dist/cjs/relayFeeCalculator/chain-queries/index.d.ts +1 -0
  119. package/dist/cjs/relayFeeCalculator/chain-queries/index.js +1 -0
  120. package/dist/cjs/relayFeeCalculator/chain-queries/index.js.map +1 -1
  121. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.d.ts +37 -0
  122. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js +171 -0
  123. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -0
  124. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +2 -0
  125. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +9 -3
  126. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  127. package/dist/cjs/utils/AddressUtils.d.ts +9 -3
  128. package/dist/cjs/utils/AddressUtils.js +36 -6
  129. package/dist/cjs/utils/AddressUtils.js.map +1 -1
  130. package/dist/cjs/utils/ArrayUtils.d.ts +1 -0
  131. package/dist/cjs/utils/ArrayUtils.js +6 -1
  132. package/dist/cjs/utils/ArrayUtils.js.map +1 -1
  133. package/dist/cjs/utils/BlockFinder.d.ts +22 -0
  134. package/dist/cjs/utils/BlockFinder.js +10 -0
  135. package/dist/cjs/utils/BlockFinder.js.map +1 -0
  136. package/dist/cjs/utils/BlockUtils.d.ts +2 -27
  137. package/dist/cjs/utils/BlockUtils.js +2 -208
  138. package/dist/cjs/utils/BlockUtils.js.map +1 -1
  139. package/dist/cjs/utils/EventUtils.d.ts +4 -4
  140. package/dist/cjs/utils/EventUtils.js +7 -4
  141. package/dist/cjs/utils/EventUtils.js.map +1 -1
  142. package/dist/cjs/utils/JSONUtils.js +3 -0
  143. package/dist/cjs/utils/JSONUtils.js.map +1 -1
  144. package/dist/cjs/utils/NumberUtils.d.ts +1 -0
  145. package/dist/cjs/utils/NumberUtils.js +7 -1
  146. package/dist/cjs/utils/NumberUtils.js.map +1 -1
  147. package/dist/cjs/utils/SpokeUtils.js +5 -0
  148. package/dist/cjs/utils/SpokeUtils.js.map +1 -1
  149. package/dist/cjs/utils/index.d.ts +1 -0
  150. package/dist/cjs/utils/index.js +1 -0
  151. package/dist/cjs/utils/index.js.map +1 -1
  152. package/dist/esm/arch/evm/BlockUtils.d.ts +24 -0
  153. package/dist/esm/arch/evm/BlockUtils.js +250 -0
  154. package/dist/esm/arch/evm/BlockUtils.js.map +1 -0
  155. package/dist/esm/arch/evm/SpokeUtils.d.ts +1 -1
  156. package/dist/esm/arch/evm/SpokeUtils.js +6 -5
  157. package/dist/esm/arch/evm/SpokeUtils.js.map +1 -1
  158. package/dist/esm/arch/evm/index.d.ts +1 -0
  159. package/dist/esm/arch/evm/index.js +1 -0
  160. package/dist/esm/arch/evm/index.js.map +1 -1
  161. package/dist/esm/arch/svm/SpokeUtils.d.ts +122 -0
  162. package/dist/esm/arch/svm/SpokeUtils.js +566 -0
  163. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -0
  164. package/dist/esm/arch/svm/constants.d.ts +2 -0
  165. package/dist/esm/arch/svm/constants.js +3 -0
  166. package/dist/esm/arch/svm/constants.js.map +1 -0
  167. package/dist/esm/arch/svm/eventsClient.d.ts +87 -0
  168. package/dist/esm/arch/svm/eventsClient.js +316 -0
  169. package/dist/esm/arch/svm/eventsClient.js.map +1 -0
  170. package/dist/esm/arch/svm/index.d.ts +5 -1
  171. package/dist/esm/arch/svm/index.js +5 -1
  172. package/dist/esm/arch/svm/index.js.map +1 -1
  173. package/dist/esm/{svm → arch/svm}/types.d.ts +9 -4
  174. package/dist/esm/arch/svm/types.js.map +1 -0
  175. package/dist/esm/arch/svm/utils.d.ts +63 -0
  176. package/dist/esm/arch/svm/utils.js +258 -0
  177. package/dist/esm/arch/svm/utils.js.map +1 -0
  178. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
  179. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +7 -7
  180. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  181. package/dist/esm/clients/BaseAbstractClient.d.ts +6 -5
  182. package/dist/esm/clients/BaseAbstractClient.js +30 -19
  183. package/dist/esm/clients/BaseAbstractClient.js.map +1 -1
  184. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +17 -14
  185. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  186. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +1 -1
  187. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  188. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +114 -114
  189. package/dist/esm/clients/HubPoolClient.d.ts +4 -3
  190. package/dist/esm/clients/HubPoolClient.js +19 -18
  191. package/dist/esm/clients/HubPoolClient.js.map +1 -1
  192. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
  193. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +23 -20
  194. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  195. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +66 -0
  196. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js +225 -0
  197. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -0
  198. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.d.ts +7 -7
  199. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +57 -59
  200. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  201. package/dist/esm/clients/SpokePoolClient/index.d.ts +8 -0
  202. package/dist/esm/clients/SpokePoolClient/index.js +10 -0
  203. package/dist/esm/clients/SpokePoolClient/index.js.map +1 -1
  204. package/dist/esm/clients/index.d.ts +1 -1
  205. package/dist/esm/clients/index.js +1 -1
  206. package/dist/esm/clients/index.js.map +1 -1
  207. package/dist/esm/clients/mocks/MockConfigStoreClient.d.ts +1 -1
  208. package/dist/esm/clients/mocks/MockConfigStoreClient.js +2 -2
  209. package/dist/esm/clients/mocks/MockConfigStoreClient.js.map +1 -1
  210. package/dist/esm/clients/mocks/MockHubPoolClient.js +2 -2
  211. package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
  212. package/dist/esm/clients/mocks/MockSpokePoolClient.js +8 -5
  213. package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
  214. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.d.ts +33 -0
  215. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js +183 -0
  216. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js.map +1 -0
  217. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.d.ts +30 -0
  218. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js +89 -0
  219. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js.map +1 -0
  220. package/dist/esm/clients/mocks/index.d.ts +2 -0
  221. package/dist/esm/clients/mocks/index.js +2 -0
  222. package/dist/esm/clients/mocks/index.js.map +1 -1
  223. package/dist/esm/constants.d.ts +1 -0
  224. package/dist/esm/constants.js +1 -0
  225. package/dist/esm/constants.js.map +1 -1
  226. package/dist/esm/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
  227. package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  228. package/dist/esm/gasPriceOracle/adapters/ethereum.d.ts +4 -4
  229. package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -1
  230. package/dist/esm/gasPriceOracle/adapters/linea-viem.js +3 -2
  231. package/dist/esm/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  232. package/dist/esm/gasPriceOracle/adapters/polygon.d.ts +4 -4
  233. package/dist/esm/gasPriceOracle/adapters/polygon.js +1 -1
  234. package/dist/esm/gasPriceOracle/adapters/solana.d.ts +8 -0
  235. package/dist/esm/gasPriceOracle/adapters/solana.js +43 -0
  236. package/dist/esm/gasPriceOracle/adapters/solana.js.map +1 -0
  237. package/dist/esm/gasPriceOracle/index.d.ts +1 -1
  238. package/dist/esm/gasPriceOracle/oracle.d.ts +4 -3
  239. package/dist/esm/gasPriceOracle/oracle.js +18 -9
  240. package/dist/esm/gasPriceOracle/oracle.js.map +1 -1
  241. package/dist/esm/gasPriceOracle/types.d.ts +6 -1
  242. package/dist/esm/index.d.ts +0 -1
  243. package/dist/esm/index.js +0 -2
  244. package/dist/esm/index.js.map +1 -1
  245. package/dist/esm/interfaces/SpokePool.d.ts +13 -0
  246. package/dist/esm/interfaces/SpokePool.js.map +1 -1
  247. package/dist/esm/providers/index.d.ts +1 -1
  248. package/dist/esm/providers/index.js +1 -2
  249. package/dist/esm/providers/index.js.map +1 -1
  250. package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.d.ts +5 -0
  251. package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.js +19 -0
  252. package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.js.map +1 -0
  253. package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.d.ts +5 -0
  254. package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.js +18 -0
  255. package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.js.map +1 -0
  256. package/dist/esm/providers/mocks/MockSolanaRpcFactory.d.ts +13 -0
  257. package/dist/esm/providers/mocks/MockSolanaRpcFactory.js +74 -0
  258. package/dist/esm/providers/mocks/MockSolanaRpcFactory.js.map +1 -0
  259. package/dist/esm/providers/mocks/index.d.ts +4 -0
  260. package/dist/esm/providers/mocks/index.js +5 -0
  261. package/dist/esm/providers/mocks/index.js.map +1 -0
  262. package/dist/esm/providers/{mockProvider.js → mocks/mockEthersProvider.js} +2 -2
  263. package/dist/esm/providers/mocks/mockEthersProvider.js.map +1 -0
  264. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
  265. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +10 -8
  266. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  267. package/dist/esm/relayFeeCalculator/chain-queries/factory.d.ts +4 -2
  268. package/dist/esm/relayFeeCalculator/chain-queries/factory.js +11 -5
  269. package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  270. package/dist/esm/relayFeeCalculator/chain-queries/index.d.ts +1 -0
  271. package/dist/esm/relayFeeCalculator/chain-queries/index.js +1 -0
  272. package/dist/esm/relayFeeCalculator/chain-queries/index.js.map +1 -1
  273. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.d.ts +84 -0
  274. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +216 -0
  275. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -0
  276. package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +12 -1
  277. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +9 -4
  278. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  279. package/dist/esm/utils/AddressUtils.d.ts +9 -3
  280. package/dist/esm/utils/AddressUtils.js +41 -6
  281. package/dist/esm/utils/AddressUtils.js.map +1 -1
  282. package/dist/esm/utils/ArrayUtils.d.ts +6 -0
  283. package/dist/esm/utils/ArrayUtils.js +9 -0
  284. package/dist/esm/utils/ArrayUtils.js.map +1 -1
  285. package/dist/esm/utils/BlockFinder.d.ts +22 -0
  286. package/dist/esm/utils/BlockFinder.js +7 -0
  287. package/dist/esm/utils/BlockFinder.js.map +1 -0
  288. package/dist/esm/utils/BlockUtils.d.ts +2 -36
  289. package/dist/esm/utils/BlockUtils.js +2 -243
  290. package/dist/esm/utils/BlockUtils.js.map +1 -1
  291. package/dist/esm/utils/EventUtils.d.ts +4 -4
  292. package/dist/esm/utils/EventUtils.js +7 -4
  293. package/dist/esm/utils/EventUtils.js.map +1 -1
  294. package/dist/esm/utils/JSONUtils.js +3 -0
  295. package/dist/esm/utils/JSONUtils.js.map +1 -1
  296. package/dist/esm/utils/NumberUtils.d.ts +7 -0
  297. package/dist/esm/utils/NumberUtils.js +11 -0
  298. package/dist/esm/utils/NumberUtils.js.map +1 -1
  299. package/dist/esm/utils/SpokeUtils.js +5 -0
  300. package/dist/esm/utils/SpokeUtils.js.map +1 -1
  301. package/dist/esm/utils/index.d.ts +1 -0
  302. package/dist/esm/utils/index.js +1 -0
  303. package/dist/esm/utils/index.js.map +1 -1
  304. package/dist/types/arch/evm/BlockUtils.d.ts +25 -0
  305. package/dist/types/arch/evm/BlockUtils.d.ts.map +1 -0
  306. package/dist/types/arch/evm/SpokeUtils.d.ts +1 -1
  307. package/dist/types/arch/evm/SpokeUtils.d.ts.map +1 -1
  308. package/dist/types/arch/evm/index.d.ts +1 -0
  309. package/dist/types/arch/evm/index.d.ts.map +1 -1
  310. package/dist/types/arch/svm/SpokeUtils.d.ts +123 -0
  311. package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -0
  312. package/dist/types/arch/svm/constants.d.ts +3 -0
  313. package/dist/types/arch/svm/constants.d.ts.map +1 -0
  314. package/dist/types/arch/svm/eventsClient.d.ts +88 -0
  315. package/dist/types/arch/svm/eventsClient.d.ts.map +1 -0
  316. package/dist/types/arch/svm/index.d.ts +5 -1
  317. package/dist/types/arch/svm/index.d.ts.map +1 -1
  318. package/dist/types/{svm → arch/svm}/types.d.ts +9 -4
  319. package/dist/types/arch/svm/types.d.ts.map +1 -0
  320. package/dist/types/arch/svm/utils.d.ts +64 -0
  321. package/dist/types/arch/svm/utils.d.ts.map +1 -0
  322. package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
  323. package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts.map +1 -1
  324. package/dist/types/clients/BaseAbstractClient.d.ts +6 -5
  325. package/dist/types/clients/BaseAbstractClient.d.ts.map +1 -1
  326. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  327. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +114 -114
  328. package/dist/types/clients/HubPoolClient.d.ts +4 -3
  329. package/dist/types/clients/HubPoolClient.d.ts.map +1 -1
  330. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
  331. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts.map +1 -1
  332. package/dist/types/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +67 -0
  333. package/dist/types/clients/SpokePoolClient/SVMSpokePoolClient.d.ts.map +1 -0
  334. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts +7 -7
  335. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -1
  336. package/dist/types/clients/SpokePoolClient/index.d.ts +8 -0
  337. package/dist/types/clients/SpokePoolClient/index.d.ts.map +1 -1
  338. package/dist/types/clients/index.d.ts +1 -1
  339. package/dist/types/clients/index.d.ts.map +1 -1
  340. package/dist/types/clients/mocks/MockConfigStoreClient.d.ts +1 -1
  341. package/dist/types/clients/mocks/MockConfigStoreClient.d.ts.map +1 -1
  342. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
  343. package/dist/types/clients/mocks/MockSvmCpiEventsClient.d.ts +34 -0
  344. package/dist/types/clients/mocks/MockSvmCpiEventsClient.d.ts.map +1 -0
  345. package/dist/types/clients/mocks/MockSvmSpokePoolClient.d.ts +31 -0
  346. package/dist/types/clients/mocks/MockSvmSpokePoolClient.d.ts.map +1 -0
  347. package/dist/types/clients/mocks/index.d.ts +2 -0
  348. package/dist/types/clients/mocks/index.d.ts.map +1 -1
  349. package/dist/types/constants.d.ts +1 -0
  350. package/dist/types/constants.d.ts.map +1 -1
  351. package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
  352. package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts.map +1 -1
  353. package/dist/types/gasPriceOracle/adapters/ethereum.d.ts +4 -4
  354. package/dist/types/gasPriceOracle/adapters/ethereum.d.ts.map +1 -1
  355. package/dist/types/gasPriceOracle/adapters/linea-viem.d.ts.map +1 -1
  356. package/dist/types/gasPriceOracle/adapters/polygon.d.ts +4 -4
  357. package/dist/types/gasPriceOracle/adapters/polygon.d.ts.map +1 -1
  358. package/dist/types/gasPriceOracle/adapters/solana.d.ts +9 -0
  359. package/dist/types/gasPriceOracle/adapters/solana.d.ts.map +1 -0
  360. package/dist/types/gasPriceOracle/index.d.ts +1 -1
  361. package/dist/types/gasPriceOracle/index.d.ts.map +1 -1
  362. package/dist/types/gasPriceOracle/oracle.d.ts +4 -3
  363. package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -1
  364. package/dist/types/gasPriceOracle/types.d.ts +6 -1
  365. package/dist/types/gasPriceOracle/types.d.ts.map +1 -1
  366. package/dist/types/index.d.ts +0 -1
  367. package/dist/types/index.d.ts.map +1 -1
  368. package/dist/types/interfaces/SpokePool.d.ts +13 -0
  369. package/dist/types/interfaces/SpokePool.d.ts.map +1 -1
  370. package/dist/types/providers/index.d.ts +1 -1
  371. package/dist/types/providers/index.d.ts.map +1 -1
  372. package/dist/types/providers/mocks/MockCachedSolanaRpcFactory.d.ts +6 -0
  373. package/dist/types/providers/mocks/MockCachedSolanaRpcFactory.d.ts.map +1 -0
  374. package/dist/types/providers/mocks/MockRateLimitedSolanaRpcFactory.d.ts +6 -0
  375. package/dist/types/providers/mocks/MockRateLimitedSolanaRpcFactory.d.ts.map +1 -0
  376. package/dist/types/providers/mocks/MockSolanaRpcFactory.d.ts +14 -0
  377. package/dist/types/providers/mocks/MockSolanaRpcFactory.d.ts.map +1 -0
  378. package/dist/types/providers/mocks/index.d.ts +5 -0
  379. package/dist/types/providers/mocks/index.d.ts.map +1 -0
  380. package/dist/types/providers/{mockProvider.d.ts → mocks/mockEthersProvider.d.ts} +1 -1
  381. package/dist/types/providers/mocks/mockEthersProvider.d.ts.map +1 -0
  382. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
  383. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
  384. package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts +4 -2
  385. package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts.map +1 -1
  386. package/dist/types/relayFeeCalculator/chain-queries/index.d.ts +1 -0
  387. package/dist/types/relayFeeCalculator/chain-queries/index.d.ts.map +1 -1
  388. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts +85 -0
  389. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts.map +1 -0
  390. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +12 -1
  391. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
  392. package/dist/types/utils/AddressUtils.d.ts +9 -3
  393. package/dist/types/utils/AddressUtils.d.ts.map +1 -1
  394. package/dist/types/utils/ArrayUtils.d.ts +6 -0
  395. package/dist/types/utils/ArrayUtils.d.ts.map +1 -1
  396. package/dist/types/utils/BlockFinder.d.ts +23 -0
  397. package/dist/types/utils/BlockFinder.d.ts.map +1 -0
  398. package/dist/types/utils/BlockUtils.d.ts +2 -36
  399. package/dist/types/utils/BlockUtils.d.ts.map +1 -1
  400. package/dist/types/utils/EventUtils.d.ts +4 -4
  401. package/dist/types/utils/EventUtils.d.ts.map +1 -1
  402. package/dist/types/utils/JSONUtils.d.ts.map +1 -1
  403. package/dist/types/utils/NumberUtils.d.ts +7 -0
  404. package/dist/types/utils/NumberUtils.d.ts.map +1 -1
  405. package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
  406. package/dist/types/utils/index.d.ts +1 -0
  407. package/dist/types/utils/index.d.ts.map +1 -1
  408. package/package.json +3 -1
  409. package/src/arch/evm/BlockUtils.ts +209 -0
  410. package/src/arch/evm/SpokeUtils.ts +5 -5
  411. package/src/arch/evm/index.ts +1 -0
  412. package/src/arch/svm/SpokeUtils.ts +581 -0
  413. package/src/arch/svm/constants.ts +2 -0
  414. package/src/arch/svm/eventsClient.ts +342 -0
  415. package/src/arch/svm/index.ts +5 -1
  416. package/src/{svm → arch/svm}/types.ts +21 -4
  417. package/src/arch/svm/utils.ts +233 -0
  418. package/src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts +7 -7
  419. package/src/clients/BaseAbstractClient.ts +20 -13
  420. package/src/clients/BundleDataClient/BundleDataClient.ts +28 -19
  421. package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +1 -1
  422. package/src/clients/HubPoolClient.ts +19 -19
  423. package/src/clients/SpokePoolClient/EVMSpokePoolClient.ts +23 -21
  424. package/src/clients/SpokePoolClient/SVMSpokePoolClient.ts +268 -0
  425. package/src/clients/SpokePoolClient/SpokePoolClient.ts +50 -59
  426. package/src/clients/SpokePoolClient/index.ts +11 -0
  427. package/src/clients/index.ts +1 -1
  428. package/src/clients/mocks/MockConfigStoreClient.ts +2 -2
  429. package/src/clients/mocks/MockHubPoolClient.ts +2 -2
  430. package/src/clients/mocks/MockSpokePoolClient.ts +9 -4
  431. package/src/clients/mocks/MockSvmCpiEventsClient.ts +226 -0
  432. package/src/clients/mocks/MockSvmSpokePoolClient.ts +119 -0
  433. package/src/clients/mocks/index.ts +2 -0
  434. package/src/constants.ts +1 -0
  435. package/src/gasPriceOracle/adapters/arbitrum.ts +5 -2
  436. package/src/gasPriceOracle/adapters/ethereum.ts +7 -4
  437. package/src/gasPriceOracle/adapters/linea-viem.ts +3 -1
  438. package/src/gasPriceOracle/adapters/polygon.ts +6 -6
  439. package/src/gasPriceOracle/adapters/solana.ts +45 -0
  440. package/src/gasPriceOracle/index.ts +1 -1
  441. package/src/gasPriceOracle/oracle.ts +20 -4
  442. package/src/gasPriceOracle/types.ts +7 -1
  443. package/src/index.ts +0 -1
  444. package/src/interfaces/SpokePool.ts +14 -0
  445. package/src/providers/index.ts +1 -1
  446. package/src/providers/mocks/MockCachedSolanaRpcFactory.ts +15 -0
  447. package/src/providers/mocks/MockRateLimitedSolanaRpcFactory.ts +14 -0
  448. package/src/providers/mocks/MockSolanaRpcFactory.ts +55 -0
  449. package/src/providers/mocks/index.ts +4 -0
  450. package/src/providers/{mockProvider.ts → mocks/mockEthersProvider.ts} +1 -1
  451. package/src/relayFeeCalculator/chain-queries/baseQuery.ts +11 -9
  452. package/src/relayFeeCalculator/chain-queries/factory.ts +24 -8
  453. package/src/relayFeeCalculator/chain-queries/index.ts +1 -0
  454. package/src/relayFeeCalculator/chain-queries/svmQuery.ts +225 -0
  455. package/src/relayFeeCalculator/relayFeeCalculator.ts +15 -3
  456. package/src/utils/AddressUtils.ts +49 -6
  457. package/src/utils/ArrayUtils.ts +12 -0
  458. package/src/utils/BlockFinder.ts +26 -0
  459. package/src/utils/BlockUtils.ts +5 -215
  460. package/src/utils/EventUtils.ts +11 -11
  461. package/src/utils/JSONUtils.ts +2 -0
  462. package/src/utils/NumberUtils.ts +10 -0
  463. package/src/utils/SpokeUtils.ts +7 -3
  464. package/src/utils/index.ts +1 -0
  465. package/dist/cjs/providers/mockProvider.js.map +0 -1
  466. package/dist/cjs/svm/eventsClient.d.ts +0 -15
  467. package/dist/cjs/svm/eventsClient.js +0 -157
  468. package/dist/cjs/svm/eventsClient.js.map +0 -1
  469. package/dist/cjs/svm/index.d.ts +0 -3
  470. package/dist/cjs/svm/index.js +0 -8
  471. package/dist/cjs/svm/index.js.map +0 -1
  472. package/dist/cjs/svm/types.js.map +0 -1
  473. package/dist/cjs/svm/utils/events.d.ts +0 -8
  474. package/dist/cjs/svm/utils/events.js +0 -47
  475. package/dist/cjs/svm/utils/events.js.map +0 -1
  476. package/dist/cjs/svm/utils/helpers.d.ts +0 -2
  477. package/dist/cjs/svm/utils/helpers.js +0 -19
  478. package/dist/cjs/svm/utils/helpers.js.map +0 -1
  479. package/dist/cjs/svm/utils/index.d.ts +0 -1
  480. package/dist/cjs/svm/utils/index.js +0 -5
  481. package/dist/cjs/svm/utils/index.js.map +0 -1
  482. package/dist/esm/providers/mockProvider.js.map +0 -1
  483. package/dist/esm/svm/eventsClient.d.ts +0 -51
  484. package/dist/esm/svm/eventsClient.js +0 -195
  485. package/dist/esm/svm/eventsClient.js.map +0 -1
  486. package/dist/esm/svm/index.d.ts +0 -3
  487. package/dist/esm/svm/index.js +0 -5
  488. package/dist/esm/svm/index.js.map +0 -1
  489. package/dist/esm/svm/types.js.map +0 -1
  490. package/dist/esm/svm/utils/events.d.ts +0 -17
  491. package/dist/esm/svm/utils/events.js +0 -55
  492. package/dist/esm/svm/utils/events.js.map +0 -1
  493. package/dist/esm/svm/utils/helpers.d.ts +0 -5
  494. package/dist/esm/svm/utils/helpers.js +0 -18
  495. package/dist/esm/svm/utils/helpers.js.map +0 -1
  496. package/dist/esm/svm/utils/index.d.ts +0 -1
  497. package/dist/esm/svm/utils/index.js +0 -2
  498. package/dist/esm/svm/utils/index.js.map +0 -1
  499. package/dist/types/providers/mockProvider.d.ts.map +0 -1
  500. package/dist/types/svm/eventsClient.d.ts +0 -52
  501. package/dist/types/svm/eventsClient.d.ts.map +0 -1
  502. package/dist/types/svm/index.d.ts +0 -4
  503. package/dist/types/svm/index.d.ts.map +0 -1
  504. package/dist/types/svm/types.d.ts.map +0 -1
  505. package/dist/types/svm/utils/events.d.ts +0 -18
  506. package/dist/types/svm/utils/events.d.ts.map +0 -1
  507. package/dist/types/svm/utils/helpers.d.ts +0 -6
  508. package/dist/types/svm/utils/helpers.d.ts.map +0 -1
  509. package/dist/types/svm/utils/index.d.ts +0 -2
  510. package/dist/types/svm/utils/index.d.ts.map +0 -1
  511. package/src/svm/eventsClient.ts +0 -199
  512. package/src/svm/index.ts +0 -3
  513. package/src/svm/utils/events.ts +0 -58
  514. package/src/svm/utils/helpers.ts +0 -9
  515. package/src/svm/utils/index.ts +0 -1
  516. /package/dist/cjs/{svm → arch/svm}/types.js +0 -0
  517. /package/dist/cjs/providers/{mockProvider.d.ts → mocks/mockEthersProvider.d.ts} +0 -0
  518. /package/dist/esm/{svm → arch/svm}/types.js +0 -0
  519. /package/dist/esm/providers/{mockProvider.d.ts → mocks/mockEthersProvider.d.ts} +0 -0
@@ -83,9 +83,9 @@ export function isValidEvmAddress(address) {
83
83
  * @returns a child `Address` type most fitting for the chain ID.
84
84
  * @todo: Change this to `toAddress` once we remove the other `toAddress` function.
85
85
  */
86
- export function toAddressType(address, chainId) {
86
+ export function toAddressType(address) {
87
87
  try {
88
- if (chainIsEvm(chainId)) {
88
+ if (utils.isHexString(address)) {
89
89
  return EvmAddress.from(address);
90
90
  }
91
91
  return SvmAddress.from(address);
@@ -148,6 +148,10 @@ var Address = /** @class */ (function () {
148
148
  Address.prototype.toAddress = function () {
149
149
  return this.toBytes32();
150
150
  };
151
+ // Converts the address to a Buffer type.
152
+ Address.prototype.toBuffer = function () {
153
+ return Buffer.from(this.rawAddress);
154
+ };
151
155
  // Implements `Hexable` for `Address`. Needed for encoding purposes. This class is treated by default as a bytes32 primitive type, but can change for subclasses.
152
156
  Address.prototype.toHexString = function () {
153
157
  return this.toBytes32();
@@ -182,6 +186,14 @@ var Address = /** @class */ (function () {
182
186
  Address.prototype.isZeroAddress = function () {
183
187
  return utils.stripZeros(this.rawAddress).length === 0;
184
188
  };
189
+ // Forces `rawAddress` to become an SvmAddress type. This will only throw if `rawAddress.length > 32`.
190
+ Address.prototype.forceSvmAddress = function () {
191
+ return SvmAddress.from(this.toBase58());
192
+ };
193
+ // Forces `rawAddress` to become an EvmAddress type. This will throw if `rawAddress.length > 20`.
194
+ Address.prototype.forceEvmAddress = function () {
195
+ return EvmAddress.from(this.toEvmAddress());
196
+ };
185
197
  // Checks if the other address is equivalent to this address.
186
198
  Address.prototype.eq = function (other) {
187
199
  return this.toString() === other.toString();
@@ -222,8 +234,18 @@ var EvmAddress = /** @class */ (function (_super) {
222
234
  return this.toEvmAddress();
223
235
  };
224
236
  // Constructs a new EvmAddress type.
225
- EvmAddress.from = function (hexString) {
226
- return new this(utils.arrayify(hexString));
237
+ EvmAddress.from = function (address, encoding) {
238
+ if (encoding === void 0) { encoding = "base16"; }
239
+ if (encoding === "base16") {
240
+ return new this(utils.arrayify(address));
241
+ }
242
+ var decodedAddress = bs58.decode(address);
243
+ var padding = decodedAddress.subarray(0, 12);
244
+ var evmAddress = decodedAddress.subarray(12);
245
+ if (padding.length !== 12 || utils.stripZeros(padding).length !== 0 || evmAddress.length !== 20) {
246
+ throw new Error("Not a valid base58-encoded EVM address: ".concat(address));
247
+ }
248
+ return new this(evmAddress);
227
249
  };
228
250
  return EvmAddress;
229
251
  }(Address));
@@ -240,12 +262,25 @@ var SvmAddress = /** @class */ (function (_super) {
240
262
  SvmAddress.prototype.toAddress = function () {
241
263
  return this.toBase58();
242
264
  };
265
+ // Small utility to convert an SvmAddress to a Solana Kit branded type.
266
+ SvmAddress.prototype.toV2Address = function () {
267
+ return this.toBase58();
268
+ };
269
+ // Forces an SvmAddress to an EVM address string by truncating the leading 12 bytes.
243
270
  SvmAddress.prototype.toEvmAddress = function () {
244
271
  return toAddress("0x".concat(this.toBytes32().slice(-40)));
245
272
  };
246
273
  // Constructs a new SvmAddress type.
247
- SvmAddress.from = function (bs58Address) {
248
- return new this(bs58.decode(bs58Address));
274
+ SvmAddress.from = function (address, encoding) {
275
+ if (encoding === void 0) { encoding = "base58"; }
276
+ if (encoding === "base58") {
277
+ return new this(bs58.decode(address));
278
+ }
279
+ var decodedAddress = utils.arrayify(address);
280
+ if (decodedAddress.length !== 32) {
281
+ throw new Error("Not a valid base16-encoded SVM address: ".concat(address));
282
+ }
283
+ return new this(decodedAddress);
249
284
  };
250
285
  return SvmAddress;
251
286
  }(Address));
@@ -1 +1 @@
1
- {"version":3,"file":"AddressUtils.js","sourceRoot":"","sources":["../../../src/utils/AddressUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AddressUtils.js","sourceRoot":"","sources":["../../../src/utils/AddressUtils.ts"],"names":[],"mappings":"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"}
@@ -96,3 +96,9 @@ export declare function includesAsync<T>(array: T[], predicate: (value: T, index
96
96
  * @note This function uses Array.prototype.every.
97
97
  */
98
98
  export declare function isArrayOf<T>(array: unknown, predicate: (value: unknown) => value is T): array is T[];
99
+ /**
100
+ * Checks if a value is a Uint8Array.
101
+ * @param value The value to check.
102
+ * @returns True if the value is a Uint8Array, false otherwise.
103
+ */
104
+ export declare function isUint8Array(value: unknown): value is Uint8Array;
@@ -193,4 +193,13 @@ export function includesAsync(array, predicate) {
193
193
  export function isArrayOf(array, predicate) {
194
194
  return Array.isArray(array) && array.every(predicate);
195
195
  }
196
+ /**
197
+ * Checks if a value is a Uint8Array.
198
+ * @param value The value to check.
199
+ * @returns True if the value is a Uint8Array, false otherwise.
200
+ */
201
+ export function isUint8Array(value) {
202
+ return (Array.isArray(value) &&
203
+ value.every(function (item) { return typeof item === "number" && Number.isInteger(item) && item >= 0 && item < 256; }));
204
+ }
196
205
  //# sourceMappingURL=ArrayUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArrayUtils.js","sourceRoot":"","sources":["../../../src/utils/ArrayUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ArrayUtils.js","sourceRoot":"","sources":["../../../src/utils/ArrayUtils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAI,KAAU;IACtC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AACpC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,KAAK,CAAI,KAAU,EAAE,SAAiB;IACpD,IAAM,MAAM,GAAU,EAAE,CAAC;IAEzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE;QAChD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;KAC5C;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAI,KAAU,EAAE,SAAyD;IACpG,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAC1C,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE;YACjC,OAAO,CAAC,CAAC;SACV;KACF;IACD,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAI,KAAU,EAAE,SAAyD;IAC/F,IAAM,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC9C,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,WAAW,CAC/B,KAAU,EACV,SAAkE;;;;;wBAElD,qBAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAA;;oBAAjD,OAAO,GAAG,SAAuC;oBACvD,sBAAO,KAAK,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,KAAK,IAAK,OAAA,OAAO,CAAC,KAAK,CAAC,EAAd,CAAc,CAAC,EAAC;;;;CACnD;AAED;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAO,KAAU,EAAE,MAAyD;IAClG,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAgB,WAAW,CAC/B,KAAU,EACV,OAAwF,EACxF,YAAe;;;;;;oBAEX,WAAW,GAAG,YAAY,CAAC;oBACtB,CAAC,GAAG,CAAC;;;yBAAE,CAAA,CAAC,GAAG,KAAK,CAAC,MAAM,CAAA;oBAChB,qBAAM,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAA;;oBAA5D,WAAW,GAAG,SAA8C,CAAC;;;oBAD7B,CAAC,EAAE,CAAA;;wBAGrC,sBAAO,WAAW,EAAC;;;;CACpB;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,YAAY,CAChC,KAAU,EACV,QAA8D;;;;wBAE9D,qBAAM,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAA;;oBAA/B,SAA+B,CAAC;;;;;CACjC;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,SAAS,CAC7B,KAAU,EACV,SAAkE;;;;;wBAElD,qBAAM,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,EAAA;;oBAA1C,OAAO,GAAG,SAAgC;oBAChD,sBAAO,OAAO,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,EAAL,CAAK,CAAC,EAAC;;;;CACvC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAgB,UAAU,CAC9B,KAAU,EACV,SAAkE;;;;;wBAEzD,qBAAM,SAAS,CAAC,KAAK,EAAE,UAAO,KAAK,EAAE,KAAK,EAAE,GAAG;;oCAAO,qBAAM,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,EAAA;oCAApC,sBAAA,CAAC,CAAC,SAAkC,CAAC,EAAA;;6BAAA,CAAC,EAAA;wBAAnG,sBAAO,CAAC,CAAC,SAA0F,CAAC,EAAC;;;;CACtG;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAC3B,KAAU,EACV,SAAkE;IAElE,OAAO,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAI,KAAc,EAAE,SAAyC;IACpF,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AACxD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACpB,KAAK,CAAC,KAAK,CAAC,UAAC,IAAI,IAAK,OAAA,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,GAAG,EAA7E,CAA6E,CAAC,CACrG,CAAC;AACJ,CAAC"}
@@ -0,0 +1,22 @@
1
+ export type BlockFinderOpts = {
2
+ highBlock?: number;
3
+ highBlockOffset?: number;
4
+ blockRange?: number;
5
+ };
6
+ export type BlockTimeAverage = {
7
+ average: number;
8
+ blockRange: number;
9
+ timestamp: number;
10
+ };
11
+ export interface Block {
12
+ hash: string;
13
+ number: number;
14
+ timestamp: number;
15
+ }
16
+ export type BlockFinderHints = {
17
+ lowBlock?: number;
18
+ highBlock?: number;
19
+ };
20
+ export declare abstract class BlockFinder<TBlock extends Block> {
21
+ abstract getBlockForTimestamp(timestamp: number | string, hints: BlockFinderHints): Promise<TBlock>;
22
+ }
@@ -0,0 +1,7 @@
1
+ var BlockFinder = /** @class */ (function () {
2
+ function BlockFinder() {
3
+ }
4
+ return BlockFinder;
5
+ }());
6
+ export { BlockFinder };
7
+ //# sourceMappingURL=BlockFinder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlockFinder.js","sourceRoot":"","sources":["../../../src/utils/BlockFinder.ts"],"names":[],"mappings":"AAuBA;IAAA;IAEA,CAAC;IAAD,kBAAC;AAAD,CAAC,AAFD,IAEC"}
@@ -1,38 +1,5 @@
1
- import type { Block, Provider } from "@ethersproject/abstract-provider";
2
1
  import { CachingMechanismInterface } from "../interfaces";
3
- type Opts = {
4
- highBlock?: number;
5
- highBlockOffset?: number;
6
- blockRange?: number;
7
- };
8
- type BlockTimeAverage = {
9
- average: number;
10
- blockRange: number;
11
- timestamp: number;
12
- };
13
- /**
14
- * @description Compute the average block time over a block range.
15
- * @returns Average number of seconds per block.
16
- */
17
- export declare function averageBlockTime(provider: Provider, { highBlock, highBlockOffset, blockRange }?: Opts): Promise<Pick<BlockTimeAverage, "average" | "blockRange">>;
18
- export type BlockFinderHints = {
19
- lowBlock?: number;
20
- highBlock?: number;
21
- };
22
- export declare class BlockFinder {
23
- private readonly provider;
24
- private readonly blocks;
25
- constructor(provider: Provider, blocks?: Block[]);
26
- /**
27
- * @notice Gets the latest block whose timestamp is <= the provided timestamp.
28
- * @param number Timestamp timestamp to search.
29
- * @param hints Optional low and high block to bound the search space.
30
- */
31
- getBlockForTimestamp(timestamp: number | string, hints?: BlockFinderHints): Promise<Block>;
32
- private getLatestBlock;
33
- private getBlock;
34
- private findBlock;
35
- }
2
+ import { BlockFinderHints, BlockFinder, Block } from "./BlockFinder";
36
3
  /**
37
4
  * @notice Get the block number for a given timestamp fresh from on-chain data if not found in redis cache.
38
5
  * If redis cache is not available, then requests block from blockFinder.
@@ -42,5 +9,4 @@ export declare class BlockFinder {
42
9
  * or loading from cache. This is useful for testing primarily.
43
10
  * @returns Block number for the requested timestamp.
44
11
  */
45
- export declare function getCachedBlockForTimestamp(chainId: number, timestamp: number, blockFinder: BlockFinder, cache?: CachingMechanismInterface, hints?: BlockFinderHints): Promise<number>;
46
- export {};
12
+ export declare function getCachedBlockForTimestamp<TBlock extends Block>(chainId: number, timestamp: number, blockFinder: BlockFinder<TBlock>, cache?: CachingMechanismInterface, hints?: BlockFinderHints): Promise<number>;
@@ -1,249 +1,8 @@
1
- var _a;
2
1
  import { __awaiter, __generator } from "tslib";
3
- import assert from "assert";
4
- import { clamp, sortedIndexBy } from "lodash";
5
- import { chainIsOPStack, getNetworkName } from "./NetworkUtils";
6
2
  import { isDefined } from "./TypeGuards";
7
3
  import { getCurrentTime } from "./TimeUtils";
8
4
  import { shouldCache } from "./CachingUtils";
9
- import { CHAIN_IDs, DEFAULT_CACHING_SAFE_LAG } from "../constants";
10
- // Archive requests typically commence at 128 blocks past the head of the chain.
11
- // Round down to 120 blocks to avoid slipping into archive territory.
12
- var defaultBlockRange = 120;
13
- // Default offset to the high block number. This is subtracted from the block number of the high block
14
- // when it is queried from the network, rather than having been specified by the caller. This is useful
15
- // since the supplied Provider instance may be backed by multiple RPC providers, which can lead to some
16
- // providers running slower than others and taking time to synchronise on the latest block.
17
- var defaultHighBlockOffset = 10;
18
- // Retain computations for 15 minutes.
19
- var cacheTTL = 60 * 15;
20
- var now = getCurrentTime(); // Seed the cache with initial values.
21
- var blockTimes = (_a = {},
22
- _a[CHAIN_IDs.INK] = { average: 1, timestamp: now, blockRange: 1 },
23
- _a[CHAIN_IDs.LINEA] = { average: 3, timestamp: now, blockRange: 1 },
24
- _a[CHAIN_IDs.MAINNET] = { average: 12.5, timestamp: now, blockRange: 1 },
25
- _a[CHAIN_IDs.OPTIMISM] = { average: 2, timestamp: now, blockRange: 1 },
26
- _a[CHAIN_IDs.UNICHAIN] = { average: 1, timestamp: now, blockRange: 1 },
27
- _a);
28
- /**
29
- * @description Compute the average block time over a block range.
30
- * @returns Average number of seconds per block.
31
- */
32
- export function averageBlockTime(provider, _a) {
33
- var _b;
34
- var _c = _a === void 0 ? {} : _a, highBlock = _c.highBlock, highBlockOffset = _c.highBlockOffset, blockRange = _c.blockRange;
35
- return __awaiter(this, void 0, void 0, function () {
36
- var chainId, cache, now, earliestBlockNumber, _d, firstBlock, lastBlock, average;
37
- return __generator(this, function (_e) {
38
- switch (_e.label) {
39
- case 0: return [4 /*yield*/, provider.getNetwork()];
40
- case 1:
41
- chainId = (_e.sent()).chainId;
42
- cache = (_b = blockTimes[chainId]) !== null && _b !== void 0 ? _b : (chainIsOPStack(chainId) ? blockTimes[CHAIN_IDs.OPTIMISM] : undefined);
43
- now = getCurrentTime();
44
- if (isDefined(cache) && now < cache.timestamp + cacheTTL) {
45
- return [2 /*return*/, { average: cache.average, blockRange: cache.blockRange }];
46
- }
47
- if (!!isDefined(highBlock)) return [3 /*break*/, 3];
48
- return [4 /*yield*/, provider.getBlockNumber()];
49
- case 2:
50
- highBlock = _e.sent();
51
- highBlock -= highBlockOffset !== null && highBlockOffset !== void 0 ? highBlockOffset : defaultHighBlockOffset;
52
- _e.label = 3;
53
- case 3:
54
- blockRange !== null && blockRange !== void 0 ? blockRange : (blockRange = defaultBlockRange);
55
- earliestBlockNumber = highBlock - blockRange;
56
- return [4 /*yield*/, Promise.all([
57
- provider.getBlock(earliestBlockNumber),
58
- provider.getBlock(highBlock),
59
- ])];
60
- case 4:
61
- _d = _e.sent(), firstBlock = _d[0], lastBlock = _d[1];
62
- [firstBlock, lastBlock].forEach(function (block) {
63
- if (!isDefined(block === null || block === void 0 ? void 0 : block.timestamp)) {
64
- var network = getNetworkName(chainId);
65
- var blockNumber = block === firstBlock ? earliestBlockNumber : highBlock;
66
- throw new Error("BlockFinder: Failed to fetch block ".concat(blockNumber, " on ").concat(network));
67
- }
68
- });
69
- average = (lastBlock.timestamp - firstBlock.timestamp) / blockRange;
70
- blockTimes[chainId] = { timestamp: now, average: average, blockRange: blockRange };
71
- return [2 /*return*/, { average: average, blockRange: blockRange }];
72
- }
73
- });
74
- });
75
- }
76
- function estimateBlocksElapsed(seconds, cushionPercentage, provider) {
77
- if (cushionPercentage === void 0) { cushionPercentage = 0.0; }
78
- return __awaiter(this, void 0, void 0, function () {
79
- var cushionMultiplier, average;
80
- return __generator(this, function (_a) {
81
- switch (_a.label) {
82
- case 0:
83
- cushionMultiplier = cushionPercentage + 1.0;
84
- return [4 /*yield*/, averageBlockTime(provider)];
85
- case 1:
86
- average = (_a.sent()).average;
87
- return [2 /*return*/, Math.floor((seconds * cushionMultiplier) / average)];
88
- }
89
- });
90
- });
91
- }
92
- var BlockFinder = /** @class */ (function () {
93
- function BlockFinder(provider, blocks) {
94
- if (blocks === void 0) { blocks = []; }
95
- this.provider = provider;
96
- this.blocks = blocks;
97
- }
98
- /**
99
- * @notice Gets the latest block whose timestamp is <= the provided timestamp.
100
- * @param number Timestamp timestamp to search.
101
- * @param hints Optional low and high block to bound the search space.
102
- */
103
- BlockFinder.prototype.getBlockForTimestamp = function (timestamp, hints) {
104
- if (hints === void 0) { hints = {}; }
105
- return __awaiter(this, void 0, void 0, function () {
106
- var block, initialBlock, cushion, incrementDistance, _a, _b, multiplier, distance, blockNumber, block, index;
107
- var _this = this;
108
- return __generator(this, function (_c) {
109
- switch (_c.label) {
110
- case 0:
111
- timestamp = Number(timestamp);
112
- assert(timestamp !== undefined && timestamp !== null, "timestamp must be provided");
113
- if (!(this.blocks.length === 0 || this.blocks[this.blocks.length - 1].timestamp < timestamp)) return [3 /*break*/, 2];
114
- return [4 /*yield*/, this.getLatestBlock()];
115
- case 1:
116
- block = _c.sent();
117
- if (timestamp >= block.timestamp)
118
- return [2 /*return*/, block];
119
- _c.label = 2;
120
- case 2:
121
- // Prime the BlockFinder cache with any supplied hints.
122
- // If the hint is accurate, then this will bypass the subsequent estimation.
123
- return [4 /*yield*/, Promise.all(Object.values(hints)
124
- .filter(function (blockNumber) { return isDefined(blockNumber); })
125
- .map(function (blockNumber) { return _this.getBlock(blockNumber); }))];
126
- case 3:
127
- // Prime the BlockFinder cache with any supplied hints.
128
- // If the hint is accurate, then this will bypass the subsequent estimation.
129
- _c.sent();
130
- if (!(this.blocks[0].timestamp > timestamp)) return [3 /*break*/, 8];
131
- initialBlock = this.blocks[0];
132
- cushion = 1;
133
- _b = (_a = Math).max;
134
- // Ensure the increment block distance is _at least_ a single block to prevent an infinite loop.
135
- return [4 /*yield*/, estimateBlocksElapsed(initialBlock.timestamp - timestamp, cushion, this.provider)];
136
- case 4:
137
- incrementDistance = _b.apply(_a, [
138
- // Ensure the increment block distance is _at least_ a single block to prevent an infinite loop.
139
- _c.sent(), 1]);
140
- multiplier = 1;
141
- _c.label = 5;
142
- case 5:
143
- distance = multiplier * incrementDistance;
144
- blockNumber = Math.max(0, initialBlock.number - distance);
145
- return [4 /*yield*/, this.getBlock(blockNumber)];
146
- case 6:
147
- block = _c.sent();
148
- if (block.timestamp <= timestamp)
149
- return [3 /*break*/, 8]; // Found an earlier block.
150
- assert(blockNumber > 0, "timestamp is before block 0"); // Block 0 was not earlier than this timestamp. The row.
151
- _c.label = 7;
152
- case 7:
153
- multiplier++;
154
- return [3 /*break*/, 5];
155
- case 8:
156
- index = sortedIndexBy(this.blocks, { timestamp: timestamp }, "timestamp");
157
- return [2 /*return*/, this.findBlock(this.blocks[index - 1], this.blocks[index], timestamp)];
158
- }
159
- });
160
- });
161
- };
162
- // Grabs the most recent block and caches it.
163
- BlockFinder.prototype.getLatestBlock = function () {
164
- var _a;
165
- return __awaiter(this, void 0, void 0, function () {
166
- var block, index;
167
- return __generator(this, function (_b) {
168
- switch (_b.label) {
169
- case 0: return [4 /*yield*/, this.provider.getBlock("latest")];
170
- case 1:
171
- block = _b.sent();
172
- index = sortedIndexBy(this.blocks, block, "number");
173
- if (((_a = this.blocks[index]) === null || _a === void 0 ? void 0 : _a.number) !== block.number)
174
- this.blocks.splice(index, 0, block);
175
- return [2 /*return*/, this.blocks[index]];
176
- }
177
- });
178
- });
179
- };
180
- // Grabs the block for a particular number and caches it.
181
- BlockFinder.prototype.getBlock = function (number) {
182
- var _a, _b;
183
- return __awaiter(this, void 0, void 0, function () {
184
- var index, block;
185
- return __generator(this, function (_c) {
186
- switch (_c.label) {
187
- case 0:
188
- index = sortedIndexBy(this.blocks, { number: number }, "number");
189
- if (((_a = this.blocks[index]) === null || _a === void 0 ? void 0 : _a.number) === number)
190
- return [2 /*return*/, this.blocks[index]]; // Return early if block already exists.
191
- return [4 /*yield*/, this.provider.getBlock(number)];
192
- case 1:
193
- block = _c.sent();
194
- // Recompute the index after the async call since the state of this.blocks could have changed!
195
- index = sortedIndexBy(this.blocks, { number: number }, "number");
196
- // Rerun this check to avoid duplicate insertion.
197
- if (((_b = this.blocks[index]) === null || _b === void 0 ? void 0 : _b.number) === number)
198
- return [2 /*return*/, this.blocks[index]];
199
- this.blocks.splice(index, 0, block); // A simple insert at index.
200
- return [2 /*return*/, block];
201
- }
202
- });
203
- });
204
- };
205
- // Return the latest block, between startBlock and endBlock, whose timestamp is <= timestamp.
206
- // Effectively, this is an interpolation search algorithm to minimize block requests.
207
- // Note: startBlock and endBlock _must_ be different blocks.
208
- BlockFinder.prototype.findBlock = function (_startBlock, _endBlock, timestamp) {
209
- return __awaiter(this, void 0, void 0, function () {
210
- var _a, startBlock, endBlock, totalTimeDifference, totalBlockDistance, blockPercentile, estimatedBlock, newBlock;
211
- return __generator(this, function (_b) {
212
- switch (_b.label) {
213
- case 0:
214
- _a = [_startBlock, _endBlock], startBlock = _a[0], endBlock = _a[1];
215
- // In the case of equality, the endBlock is expected to be passed as the one whose timestamp === the requested
216
- // timestamp.
217
- if (endBlock.timestamp === timestamp)
218
- return [2 /*return*/, endBlock];
219
- // If there's no equality, but the blocks are adjacent, return the startBlock, since we want the returned block's
220
- // timestamp to be <= the requested timestamp.
221
- if (endBlock.number === startBlock.number + 1)
222
- return [2 /*return*/, startBlock];
223
- assert(endBlock.number !== startBlock.number, "startBlock cannot equal endBlock");
224
- assert(timestamp < endBlock.timestamp && timestamp > startBlock.timestamp, "timestamp not in between start and end blocks");
225
- totalTimeDifference = endBlock.timestamp - startBlock.timestamp;
226
- totalBlockDistance = endBlock.number - startBlock.number;
227
- blockPercentile = (timestamp - startBlock.timestamp) / totalTimeDifference;
228
- estimatedBlock = startBlock.number + Math.round(blockPercentile * totalBlockDistance);
229
- return [4 /*yield*/, this.getBlock(clamp(estimatedBlock, startBlock.number + 1, endBlock.number - 1))];
230
- case 1:
231
- newBlock = _b.sent();
232
- // Depending on whether the new block is below or above the timestamp, narrow the search space accordingly.
233
- if (newBlock.timestamp < timestamp) {
234
- return [2 /*return*/, this.findBlock(newBlock, endBlock, timestamp)];
235
- }
236
- else {
237
- return [2 /*return*/, this.findBlock(startBlock, newBlock, timestamp)];
238
- }
239
- return [2 /*return*/];
240
- }
241
- });
242
- });
243
- };
244
- return BlockFinder;
245
- }());
246
- export { BlockFinder };
5
+ import { DEFAULT_CACHING_SAFE_LAG } from "../constants";
247
6
  /**
248
7
  * @notice Get the block number for a given timestamp fresh from on-chain data if not found in redis cache.
249
8
  * If redis cache is not available, then requests block from blockFinder.
@@ -262,7 +21,7 @@ export function getCachedBlockForTimestamp(chainId, timestamp, blockFinder, cach
262
21
  case 0:
263
22
  resolver = function () { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
264
23
  switch (_a.label) {
265
- case 0: return [4 /*yield*/, blockFinder.getBlockForTimestamp(timestamp, hints)];
24
+ case 0: return [4 /*yield*/, blockFinder.getBlockForTimestamp(timestamp, hints || {})];
266
25
  case 1: return [2 /*return*/, (_a.sent()).number];
267
26
  }
268
27
  }); }); };
@@ -1 +1 @@
1
- {"version":3,"file":"BlockUtils.js","sourceRoot":"","sources":["../../../src/utils/BlockUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BlockUtils.js","sourceRoot":"","sources":["../../../src/utils/BlockUtils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAExD;;;;;;;;GAQG;AACH,MAAM,UAAgB,0BAA0B,CAC9C,OAAe,EACf,SAAiB,EACjB,WAAgC,EAChC,KAAiC,EACjC,KAAwB;;;;;;;oBAIlB,QAAQ,GAAG;;oCAAa,qBAAM,WAAW,CAAC,oBAAoB,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE,CAAC,EAAA;oCAA/D,sBAAA,CAAC,SAA8D,CAAC,CAAC,MAAM,EAAA;;6BAAA,CAAC;oBAErG,2DAA2D;oBAC3D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;wBACrB,sBAAO,QAAQ,EAAE,EAAC;qBACnB;oBAKK,GAAG,GAAG,UAAG,OAAO,2BAAiB,SAAS,CAAE,CAAC;yBAE/C,WAAW,CAAC,SAAS,EAAE,cAAc,EAAE,EAAE,wBAAwB,CAAC,EAAlE,wBAAkE;oBAErD,qBAAM,KAAK,CAAC,GAAG,CAAS,GAAG,CAAC,EAAA;;oBAArC,MAAM,GAAG,SAA4B;yBAEvC,CAAA,MAAM,KAAK,IAAI,CAAA,EAAf,wBAAe;oBACjB,sBAAO,QAAQ,CAAC,MAAM,CAAC,EAAC;wBAIJ,qBAAM,QAAQ,EAAE,EAAA;;oBAA9B,WAAW,GAAG,SAAgB;oBACpC,4BAA4B;oBAC5B,qBAAM,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAA;;oBAD/D,4BAA4B;oBAC5B,SAA+D,CAAC,CAAC,UAAU;oBAC3E,sBAAO,WAAW,EAAC;;wBAKrB,sBAAO,QAAQ,EAAE,EAAC;;;;;CAErB"}
@@ -5,9 +5,9 @@ export declare function spreadEvent(args: Result | Record<string, unknown>): {
5
5
  [key: string]: any;
6
6
  };
7
7
  export interface EventSearchConfig {
8
- fromBlock: number;
9
- toBlock: number;
10
- maxBlockLookBack?: number;
8
+ from: number;
9
+ to: number;
10
+ maxLookBack?: number;
11
11
  }
12
12
  export declare const eventToLog: (event: Event) => Log;
13
13
  export declare function paginatedEventQuery(contract: Contract, filter: EventFilter, searchConfig: EventSearchConfig, retryCount?: number): Promise<Log[]>;
@@ -25,7 +25,7 @@ export declare function paginatedEventQuery(contract: Contract, filter: EventFil
25
25
  * input range, but can include blocks outside of the desired range, so results should be filtered. Results
26
26
  * are ordered from smallest to largest.
27
27
  */
28
- export declare function getPaginatedBlockRanges({ fromBlock, toBlock, maxBlockLookBack, }: EventSearchConfig): [number, number][];
28
+ export declare function getPaginatedBlockRanges({ from, to, maxLookBack }: EventSearchConfig): [number, number][];
29
29
  export declare function logToSortableEvent(log: Log): SortableEvent;
30
30
  export declare function spreadEventWithBlockNumber(event: Log): SortableEvent;
31
31
  type PartialSortableEvent = Pick<SortableEvent, "blockNumber" | "logIndex">;
@@ -98,8 +98,8 @@ export function paginatedEventQuery(contract, filter, searchConfig, retryCount)
98
98
  return __generator(this, function (_a) {
99
99
  switch (_a.label) {
100
100
  case 0:
101
- if (!(searchConfig.maxBlockLookBack === 0)) return [3 /*break*/, 2];
102
- return [4 /*yield*/, contract.queryFilter(filter, searchConfig.fromBlock, searchConfig.toBlock)];
101
+ if (!(searchConfig.maxLookBack === 0)) return [3 /*break*/, 2];
102
+ return [4 /*yield*/, contract.queryFilter(filter, searchConfig.from, searchConfig.to)];
103
103
  case 1:
104
104
  events = _a.sent();
105
105
  return [2 /*return*/, events.map(eventToLog)];
@@ -115,7 +115,7 @@ export function paginatedEventQuery(contract, filter, searchConfig, retryCount)
115
115
  case 4: return [2 /*return*/, ((_a.sent())
116
116
  .flat()
117
117
  // Filter events by block number because ranges can include blocks that are outside the range specified for caching reasons.
118
- .filter(function (event) { return event.blockNumber >= searchConfig.fromBlock && event.blockNumber <= searchConfig.toBlock; })
118
+ .filter(function (event) { return event.blockNumber >= searchConfig.from && event.blockNumber <= searchConfig.to; })
119
119
  .map(eventToLog))];
120
120
  case 5:
121
121
  error_1 = _a.sent();
@@ -147,7 +147,10 @@ export function paginatedEventQuery(contract, filter, searchConfig, retryCount)
147
147
  * are ordered from smallest to largest.
148
148
  */
149
149
  export function getPaginatedBlockRanges(_a) {
150
- var fromBlock = _a.fromBlock, toBlock = _a.toBlock, maxBlockLookBack = _a.maxBlockLookBack;
150
+ var from = _a.from, to = _a.to, maxLookBack = _a.maxLookBack;
151
+ var fromBlock = from;
152
+ var toBlock = to;
153
+ var maxBlockLookBack = maxLookBack;
151
154
  // If the maxBlockLookBack is undefined, we can look back as far as we like. Just return the entire range.
152
155
  if (maxBlockLookBack === undefined) {
153
156
  return [[fromBlock, toBlock]];
@@ -1 +1 @@
1
- {"version":3,"file":"EventUtils.js","sourceRoot":"","sources":["../../../src/utils/EventUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EventUtils.js","sourceRoot":"","sources":["../../../src/utils/EventUtils.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,9 @@ export function stringifyJSONWithNumericString(obj) {
33
33
  if (typeof value === "object" && value !== null && value.type === "BigNumber") {
34
34
  return BigNumber.from(value).toString();
35
35
  }
36
+ else if (typeof value === "bigint" && value !== null) {
37
+ return value.toString();
38
+ }
36
39
  return value;
37
40
  });
38
41
  }