@across-protocol/sdk 4.3.111-alpha.3 → 4.3.111

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 (566) hide show
  1. package/dist/cjs/addressAggregator/adapters/abstract.js +64 -50
  2. package/dist/cjs/addressAggregator/adapters/abstract.js.map +1 -1
  3. package/dist/cjs/addressAggregator/adapters/bybit.js +29 -16
  4. package/dist/cjs/addressAggregator/adapters/bybit.js.map +1 -1
  5. package/dist/cjs/addressAggregator/adapters/env.js +15 -11
  6. package/dist/cjs/addressAggregator/adapters/env.js.map +1 -1
  7. package/dist/cjs/addressAggregator/adapters/file.js +45 -32
  8. package/dist/cjs/addressAggregator/adapters/file.js.map +1 -1
  9. package/dist/cjs/addressAggregator/adapters/index.js +1 -1
  10. package/dist/cjs/addressAggregator/adapters/risklabs.js +36 -22
  11. package/dist/cjs/addressAggregator/adapters/risklabs.js.map +1 -1
  12. package/dist/cjs/addressAggregator/index.js +87 -57
  13. package/dist/cjs/addressAggregator/index.js.map +1 -1
  14. package/dist/cjs/apiClient/abstractClient.js +8 -9
  15. package/dist/cjs/apiClient/abstractClient.js.map +1 -1
  16. package/dist/cjs/apiClient/index.js +1 -1
  17. package/dist/cjs/apiClient/mockedClient.js +29 -23
  18. package/dist/cjs/apiClient/mockedClient.js.map +1 -1
  19. package/dist/cjs/apiClient/productionClient.js +103 -65
  20. package/dist/cjs/apiClient/productionClient.js.map +1 -1
  21. package/dist/cjs/arch/evm/BlockUtils.js +208 -122
  22. package/dist/cjs/arch/evm/BlockUtils.js.map +1 -1
  23. package/dist/cjs/arch/evm/MessageUtils.js +1 -1
  24. package/dist/cjs/arch/evm/MessageUtils.js.map +1 -1
  25. package/dist/cjs/arch/evm/SpokeUtils.js +288 -134
  26. package/dist/cjs/arch/evm/SpokeUtils.js.map +1 -1
  27. package/dist/cjs/arch/evm/index.js +1 -1
  28. package/dist/cjs/arch/evm/utils/index.js +1 -1
  29. package/dist/cjs/arch/evm/utils/wait.js +49 -38
  30. package/dist/cjs/arch/evm/utils/wait.js.map +1 -1
  31. package/dist/cjs/arch/index.js +1 -1
  32. package/dist/cjs/arch/svm/BlockUtils.js +158 -102
  33. package/dist/cjs/arch/svm/BlockUtils.js.map +1 -1
  34. package/dist/cjs/arch/svm/MessageUtils.js +2 -2
  35. package/dist/cjs/arch/svm/MessageUtils.js.map +1 -1
  36. package/dist/cjs/arch/svm/SpokeUtils.js +1147 -708
  37. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
  38. package/dist/cjs/arch/svm/encoders.js +1 -1
  39. package/dist/cjs/arch/svm/encoders.js.map +1 -1
  40. package/dist/cjs/arch/svm/eventsClient.js +236 -174
  41. package/dist/cjs/arch/svm/eventsClient.js.map +1 -1
  42. package/dist/cjs/arch/svm/index.js +1 -1
  43. package/dist/cjs/arch/svm/provider.js +3 -3
  44. package/dist/cjs/arch/svm/provider.js.map +1 -1
  45. package/dist/cjs/arch/svm/utils.js +355 -166
  46. package/dist/cjs/arch/svm/utils.js.map +1 -1
  47. package/dist/cjs/caching/Arweave/ArweaveClient.js +246 -168
  48. package/dist/cjs/caching/Arweave/ArweaveClient.js.map +1 -1
  49. package/dist/cjs/caching/Arweave/index.js +1 -1
  50. package/dist/cjs/caching/IPFS/PinataIPFSClient.js +49 -40
  51. package/dist/cjs/caching/IPFS/PinataIPFSClient.js.map +1 -1
  52. package/dist/cjs/caching/IPFS/index.js +1 -1
  53. package/dist/cjs/caching/Memory/MemoryCacheClient.js +18 -13
  54. package/dist/cjs/caching/Memory/MemoryCacheClient.js.map +1 -1
  55. package/dist/cjs/caching/Memory/index.js +1 -1
  56. package/dist/cjs/caching/index.js +1 -1
  57. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +381 -302
  58. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  59. package/dist/cjs/clients/AcrossConfigStoreClient/index.js +1 -1
  60. package/dist/cjs/clients/BaseAbstractClient.js +83 -58
  61. package/dist/cjs/clients/BaseAbstractClient.js.map +1 -1
  62. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +900 -709
  63. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  64. package/dist/cjs/clients/BundleDataClient/index.js +1 -1
  65. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js +128 -95
  66. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  67. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js +53 -48
  68. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  69. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js +8 -10
  70. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -1
  71. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +90 -67
  72. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  73. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js +24 -46
  74. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -1
  75. package/dist/cjs/clients/BundleDataClient/utils/index.js +1 -1
  76. package/dist/cjs/clients/HubPoolClient.js +708 -526
  77. package/dist/cjs/clients/HubPoolClient.js.map +1 -1
  78. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +179 -133
  79. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  80. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js +183 -124
  81. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -1
  82. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +389 -357
  83. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  84. package/dist/cjs/clients/SpokePoolClient/SpokePoolClientManager.js +8 -9
  85. package/dist/cjs/clients/SpokePoolClient/SpokePoolClientManager.js.map +1 -1
  86. package/dist/cjs/clients/SpokePoolClient/index.js +3 -3
  87. package/dist/cjs/clients/SpokePoolClient/index.js.map +1 -1
  88. package/dist/cjs/clients/index.js +1 -1
  89. package/dist/cjs/clients/mocks/MockConfigStoreClient.js +67 -58
  90. package/dist/cjs/clients/mocks/MockConfigStoreClient.js.map +1 -1
  91. package/dist/cjs/clients/mocks/MockEvents.js +52 -47
  92. package/dist/cjs/clients/mocks/MockEvents.js.map +1 -1
  93. package/dist/cjs/clients/mocks/MockHubPoolClient.js +185 -142
  94. package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
  95. package/dist/cjs/clients/mocks/MockSpokePoolClient.js +192 -208
  96. package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
  97. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js +143 -140
  98. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
  99. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js +73 -57
  100. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js.map +1 -1
  101. package/dist/cjs/clients/mocks/index.js +1 -1
  102. package/dist/cjs/coingecko/Coingecko.js +437 -285
  103. package/dist/cjs/coingecko/Coingecko.js.map +1 -1
  104. package/dist/cjs/coingecko/index.js +1 -1
  105. package/dist/cjs/constants.js +30 -23
  106. package/dist/cjs/constants.js.map +1 -1
  107. package/dist/cjs/contracts/acrossConfigStore.js +48 -27
  108. package/dist/cjs/contracts/acrossConfigStore.js.map +1 -1
  109. package/dist/cjs/contracts/hubPool.js +20 -36
  110. package/dist/cjs/contracts/hubPool.js.map +1 -1
  111. package/dist/cjs/contracts/index.js +1 -1
  112. package/dist/cjs/contracts/utils.js +8 -6
  113. package/dist/cjs/contracts/utils.js.map +1 -1
  114. package/dist/cjs/gasPriceOracle/adapters/arbitrum.js +16 -7
  115. package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  116. package/dist/cjs/gasPriceOracle/adapters/ethereum.js +45 -26
  117. package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -1
  118. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js +28 -16
  119. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  120. package/dist/cjs/gasPriceOracle/adapters/polygon.js +112 -73
  121. package/dist/cjs/gasPriceOracle/adapters/polygon.js.map +1 -1
  122. package/dist/cjs/gasPriceOracle/adapters/solana.js +33 -20
  123. package/dist/cjs/gasPriceOracle/adapters/solana.js.map +1 -1
  124. package/dist/cjs/gasPriceOracle/oracle.js +104 -77
  125. package/dist/cjs/gasPriceOracle/oracle.js.map +1 -1
  126. package/dist/cjs/gasPriceOracle/types.js +3 -3
  127. package/dist/cjs/gasPriceOracle/types.js.map +1 -1
  128. package/dist/cjs/gasPriceOracle/util.js +8 -8
  129. package/dist/cjs/gasPriceOracle/util.js.map +1 -1
  130. package/dist/cjs/index.js +1 -1
  131. package/dist/cjs/interfaces/index.js +1 -1
  132. package/dist/cjs/lpFeeCalculator/index.js +1 -1
  133. package/dist/cjs/lpFeeCalculator/lpFeeCalculator.js +35 -33
  134. package/dist/cjs/lpFeeCalculator/lpFeeCalculator.js.map +1 -1
  135. package/dist/cjs/lpFeeCalculator/rateModel.js +9 -7
  136. package/dist/cjs/lpFeeCalculator/rateModel.js.map +1 -1
  137. package/dist/cjs/merkleDistributor/MerkleDistributor.js +18 -20
  138. package/dist/cjs/merkleDistributor/MerkleDistributor.js.map +1 -1
  139. package/dist/cjs/merkleDistributor/index.js +1 -1
  140. package/dist/cjs/merkleDistributor/model/index.js +1 -1
  141. package/dist/cjs/pool/TransactionManager.js +100 -45
  142. package/dist/cjs/pool/TransactionManager.js.map +1 -1
  143. package/dist/cjs/pool/index.js +1 -1
  144. package/dist/cjs/pool/poolClient.js +731 -464
  145. package/dist/cjs/pool/poolClient.js.map +1 -1
  146. package/dist/cjs/pool/uma/across/index.js +1 -1
  147. package/dist/cjs/pool/uma/across/transactionManager.js +100 -45
  148. package/dist/cjs/pool/uma/across/transactionManager.js.map +1 -1
  149. package/dist/cjs/pool/uma/clients/erc20/client.js +16 -18
  150. package/dist/cjs/pool/uma/clients/erc20/client.js.map +1 -1
  151. package/dist/cjs/pool/uma/clients/erc20/index.js +1 -1
  152. package/dist/cjs/pool/uma/clients/index.js +1 -1
  153. package/dist/cjs/pool/uma/index.js +1 -1
  154. package/dist/cjs/pool/uma/oracle/index.js +1 -1
  155. package/dist/cjs/pool/uma/oracle/utils.js +5 -4
  156. package/dist/cjs/pool/uma/oracle/utils.js.map +1 -1
  157. package/dist/cjs/pool/uma/utils.js +30 -11
  158. package/dist/cjs/pool/uma/utils.js.map +1 -1
  159. package/dist/cjs/priceClient/adapters/acrossApi.js +39 -22
  160. package/dist/cjs/priceClient/adapters/acrossApi.js.map +1 -1
  161. package/dist/cjs/priceClient/adapters/baseAdapter.js +73 -49
  162. package/dist/cjs/priceClient/adapters/baseAdapter.js.map +1 -1
  163. package/dist/cjs/priceClient/adapters/coingecko.js +61 -34
  164. package/dist/cjs/priceClient/adapters/coingecko.js.map +1 -1
  165. package/dist/cjs/priceClient/adapters/default.js +31 -16
  166. package/dist/cjs/priceClient/adapters/default.js.map +1 -1
  167. package/dist/cjs/priceClient/adapters/defiLlama.js +74 -40
  168. package/dist/cjs/priceClient/adapters/defiLlama.js.map +1 -1
  169. package/dist/cjs/priceClient/adapters/index.js +1 -1
  170. package/dist/cjs/priceClient/index.js +1 -1
  171. package/dist/cjs/priceClient/priceClient.js +159 -110
  172. package/dist/cjs/priceClient/priceClient.js.map +1 -1
  173. package/dist/cjs/providers/alchemy.js +19 -17
  174. package/dist/cjs/providers/alchemy.js.map +1 -1
  175. package/dist/cjs/providers/cachedProvider.js +129 -88
  176. package/dist/cjs/providers/cachedProvider.js.map +1 -1
  177. package/dist/cjs/providers/drpc.js +11 -9
  178. package/dist/cjs/providers/drpc.js.map +1 -1
  179. package/dist/cjs/providers/index.js +1 -1
  180. package/dist/cjs/providers/infura.js +12 -10
  181. package/dist/cjs/providers/infura.js.map +1 -1
  182. package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.js +15 -7
  183. package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.js.map +1 -1
  184. package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.js +14 -6
  185. package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.js.map +1 -1
  186. package/dist/cjs/providers/mocks/MockRetrySolanaRpcFactory.js +15 -7
  187. package/dist/cjs/providers/mocks/MockRetrySolanaRpcFactory.js.map +1 -1
  188. package/dist/cjs/providers/mocks/MockSolanaRpcFactory.js +66 -42
  189. package/dist/cjs/providers/mocks/MockSolanaRpcFactory.js.map +1 -1
  190. package/dist/cjs/providers/mocks/index.js +1 -1
  191. package/dist/cjs/providers/mocks/mockEthersProvider.js +31 -29
  192. package/dist/cjs/providers/mocks/mockEthersProvider.js.map +1 -1
  193. package/dist/cjs/providers/quicknode.js +21 -19
  194. package/dist/cjs/providers/quicknode.js.map +1 -1
  195. package/dist/cjs/providers/rateLimitedProvider.js +79 -64
  196. package/dist/cjs/providers/rateLimitedProvider.js.map +1 -1
  197. package/dist/cjs/providers/retryProvider.js +246 -163
  198. package/dist/cjs/providers/retryProvider.js.map +1 -1
  199. package/dist/cjs/providers/solana/baseRpcFactories.js +18 -14
  200. package/dist/cjs/providers/solana/baseRpcFactories.js.map +1 -1
  201. package/dist/cjs/providers/solana/cachedRpcFactory.js +112 -70
  202. package/dist/cjs/providers/solana/cachedRpcFactory.js.map +1 -1
  203. package/dist/cjs/providers/solana/defaultRpcFactory.js +15 -8
  204. package/dist/cjs/providers/solana/defaultRpcFactory.js.map +1 -1
  205. package/dist/cjs/providers/solana/index.js +1 -1
  206. package/dist/cjs/providers/solana/quorumFallbackRpcFactory.js +191 -135
  207. package/dist/cjs/providers/solana/quorumFallbackRpcFactory.js.map +1 -1
  208. package/dist/cjs/providers/solana/rateLimitedRpcFactory.js +90 -67
  209. package/dist/cjs/providers/solana/rateLimitedRpcFactory.js.map +1 -1
  210. package/dist/cjs/providers/solana/retryRpcFactory.js +79 -52
  211. package/dist/cjs/providers/solana/retryRpcFactory.js.map +1 -1
  212. package/dist/cjs/providers/solana/utils.js +2 -2
  213. package/dist/cjs/providers/solana/utils.js.map +1 -1
  214. package/dist/cjs/providers/speedProvider.js +53 -31
  215. package/dist/cjs/providers/speedProvider.js.map +1 -1
  216. package/dist/cjs/providers/types.js +1 -1
  217. package/dist/cjs/providers/types.js.map +1 -1
  218. package/dist/cjs/providers/utils.js +28 -26
  219. package/dist/cjs/providers/utils.js.map +1 -1
  220. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +162 -108
  221. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  222. package/dist/cjs/relayFeeCalculator/chain-queries/customGasToken.js +26 -14
  223. package/dist/cjs/relayFeeCalculator/chain-queries/customGasToken.js.map +1 -1
  224. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +29 -20
  225. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  226. package/dist/cjs/relayFeeCalculator/chain-queries/index.js +1 -1
  227. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js +137 -88
  228. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
  229. package/dist/cjs/relayFeeCalculator/index.js +1 -1
  230. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +297 -199
  231. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  232. package/dist/cjs/typeguards/error.js +7 -5
  233. package/dist/cjs/typeguards/error.js.map +1 -1
  234. package/dist/cjs/typeguards/index.js +1 -1
  235. package/dist/cjs/utils/AddressUtils.js +144 -117
  236. package/dist/cjs/utils/AddressUtils.js.map +1 -1
  237. package/dist/cjs/utils/ArrayUtils.js +78 -21
  238. package/dist/cjs/utils/ArrayUtils.js.map +1 -1
  239. package/dist/cjs/utils/BigNumberUtils.js +10 -9
  240. package/dist/cjs/utils/BigNumberUtils.js.map +1 -1
  241. package/dist/cjs/utils/BlockExplorerUtils.js +30 -26
  242. package/dist/cjs/utils/BlockExplorerUtils.js.map +1 -1
  243. package/dist/cjs/utils/BlockFinder.js +5 -2
  244. package/dist/cjs/utils/BlockFinder.js.map +1 -1
  245. package/dist/cjs/utils/BlockUtils.js +41 -24
  246. package/dist/cjs/utils/BlockUtils.js.map +1 -1
  247. package/dist/cjs/utils/BundleUtils.js +24 -21
  248. package/dist/cjs/utils/BundleUtils.js.map +1 -1
  249. package/dist/cjs/utils/CCTPUtils.js +126 -62
  250. package/dist/cjs/utils/CCTPUtils.js.map +1 -1
  251. package/dist/cjs/utils/CachingUtils.js +42 -20
  252. package/dist/cjs/utils/CachingUtils.js.map +1 -1
  253. package/dist/cjs/utils/ContractUtils.js +5 -5
  254. package/dist/cjs/utils/ContractUtils.js.map +1 -1
  255. package/dist/cjs/utils/DepositUtils.js +99 -122
  256. package/dist/cjs/utils/DepositUtils.js.map +1 -1
  257. package/dist/cjs/utils/EventUtils.js +70 -49
  258. package/dist/cjs/utils/EventUtils.js.map +1 -1
  259. package/dist/cjs/utils/FormattingUtils.js +32 -26
  260. package/dist/cjs/utils/FormattingUtils.js.map +1 -1
  261. package/dist/cjs/utils/HyperLiquidUtils.js +23 -10
  262. package/dist/cjs/utils/HyperLiquidUtils.js.map +1 -1
  263. package/dist/cjs/utils/IPFSUtils.js +34 -16
  264. package/dist/cjs/utils/IPFSUtils.js.map +1 -1
  265. package/dist/cjs/utils/JSONUtils.js +6 -6
  266. package/dist/cjs/utils/JSONUtils.js.map +1 -1
  267. package/dist/cjs/utils/LogUtils.js +12 -10
  268. package/dist/cjs/utils/LogUtils.js.map +1 -1
  269. package/dist/cjs/utils/Multicall.js +115 -56
  270. package/dist/cjs/utils/Multicall.js.map +1 -1
  271. package/dist/cjs/utils/NetworkUtils.js +28 -12
  272. package/dist/cjs/utils/NetworkUtils.js.map +1 -1
  273. package/dist/cjs/utils/NumberUtils.js +3 -1
  274. package/dist/cjs/utils/NumberUtils.js.map +1 -1
  275. package/dist/cjs/utils/ObjectUtils.js +41 -27
  276. package/dist/cjs/utils/ObjectUtils.js.map +1 -1
  277. package/dist/cjs/utils/Profiler.js +83 -80
  278. package/dist/cjs/utils/Profiler.js.map +1 -1
  279. package/dist/cjs/utils/ReviverUtils.js +9 -5
  280. package/dist/cjs/utils/ReviverUtils.js.map +1 -1
  281. package/dist/cjs/utils/SpokeUtils.js +84 -84
  282. package/dist/cjs/utils/SpokeUtils.js.map +1 -1
  283. package/dist/cjs/utils/TokenUtils.js +64 -41
  284. package/dist/cjs/utils/TokenUtils.js.map +1 -1
  285. package/dist/cjs/utils/TypeGuards.js +1 -1
  286. package/dist/cjs/utils/TypeGuards.js.map +1 -1
  287. package/dist/cjs/utils/ValidatorUtils.js +7 -7
  288. package/dist/cjs/utils/ValidatorUtils.js.map +1 -1
  289. package/dist/cjs/utils/abi/contracts/index.js +1 -1
  290. package/dist/cjs/utils/abi/index.js +22 -12
  291. package/dist/cjs/utils/abi/index.js.map +1 -1
  292. package/dist/cjs/utils/abi/typechain/factories/Multicall3__factory.js +12 -9
  293. package/dist/cjs/utils/abi/typechain/factories/Multicall3__factory.js.map +1 -1
  294. package/dist/cjs/utils/abi/typechain/index.js +1 -1
  295. package/dist/cjs/utils/common.js +53 -40
  296. package/dist/cjs/utils/common.js.map +1 -1
  297. package/dist/cjs/utils/index.js +1 -1
  298. package/dist/esm/addressAggregator/adapters/abstract.js +64 -48
  299. package/dist/esm/addressAggregator/adapters/abstract.js.map +1 -1
  300. package/dist/esm/addressAggregator/adapters/bybit.js +29 -15
  301. package/dist/esm/addressAggregator/adapters/bybit.js.map +1 -1
  302. package/dist/esm/addressAggregator/adapters/env.js +14 -9
  303. package/dist/esm/addressAggregator/adapters/env.js.map +1 -1
  304. package/dist/esm/addressAggregator/adapters/file.js +43 -29
  305. package/dist/esm/addressAggregator/adapters/file.js.map +1 -1
  306. package/dist/esm/addressAggregator/adapters/risklabs.js +35 -20
  307. package/dist/esm/addressAggregator/adapters/risklabs.js.map +1 -1
  308. package/dist/esm/addressAggregator/index.js +83 -52
  309. package/dist/esm/addressAggregator/index.js.map +1 -1
  310. package/dist/esm/addressAggregator/types.js +1 -1
  311. package/dist/esm/addressAggregator/types.js.map +1 -1
  312. package/dist/esm/apiClient/abstractClient.js +9 -15
  313. package/dist/esm/apiClient/abstractClient.js.map +1 -1
  314. package/dist/esm/apiClient/mockedClient.js +26 -21
  315. package/dist/esm/apiClient/mockedClient.js.map +1 -1
  316. package/dist/esm/apiClient/productionClient.js +101 -61
  317. package/dist/esm/apiClient/productionClient.js.map +1 -1
  318. package/dist/esm/arch/evm/BlockUtils.js +217 -139
  319. package/dist/esm/arch/evm/BlockUtils.js.map +1 -1
  320. package/dist/esm/arch/evm/SpokeUtils.js +289 -146
  321. package/dist/esm/arch/evm/SpokeUtils.js.map +1 -1
  322. package/dist/esm/arch/evm/utils/wait.js +46 -34
  323. package/dist/esm/arch/evm/utils/wait.js.map +1 -1
  324. package/dist/esm/arch/svm/BlockUtils.js +166 -118
  325. package/dist/esm/arch/svm/BlockUtils.js.map +1 -1
  326. package/dist/esm/arch/svm/SpokeUtils.js +1150 -738
  327. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
  328. package/dist/esm/arch/svm/constants.js +1 -1
  329. package/dist/esm/arch/svm/constants.js.map +1 -1
  330. package/dist/esm/arch/svm/eventsClient.js +232 -172
  331. package/dist/esm/arch/svm/eventsClient.js.map +1 -1
  332. package/dist/esm/arch/svm/provider.js +1 -1
  333. package/dist/esm/arch/svm/provider.js.map +1 -1
  334. package/dist/esm/arch/svm/utils.js +345 -155
  335. package/dist/esm/arch/svm/utils.js.map +1 -1
  336. package/dist/esm/caching/Arweave/ArweaveClient.js +256 -182
  337. package/dist/esm/caching/Arweave/ArweaveClient.js.map +1 -1
  338. package/dist/esm/caching/IPFS/PinataIPFSClient.js +48 -47
  339. package/dist/esm/caching/IPFS/PinataIPFSClient.js.map +1 -1
  340. package/dist/esm/caching/Memory/MemoryCacheClient.js +19 -13
  341. package/dist/esm/caching/Memory/MemoryCacheClient.js.map +1 -1
  342. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +408 -333
  343. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  344. package/dist/esm/clients/BaseAbstractClient.js +92 -66
  345. package/dist/esm/clients/BaseAbstractClient.js.map +1 -1
  346. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +1054 -927
  347. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  348. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js +131 -102
  349. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  350. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js +59 -57
  351. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  352. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js +5 -7
  353. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -1
  354. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +94 -75
  355. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  356. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js +23 -45
  357. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -1
  358. package/dist/esm/clients/HubPoolClient.js +740 -581
  359. package/dist/esm/clients/HubPoolClient.js.map +1 -1
  360. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +178 -133
  361. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  362. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js +183 -126
  363. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -1
  364. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +399 -372
  365. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  366. package/dist/esm/clients/SpokePoolClient/SpokePoolClientManager.js +9 -9
  367. package/dist/esm/clients/SpokePoolClient/SpokePoolClientManager.js.map +1 -1
  368. package/dist/esm/clients/SpokePoolClient/index.js +2 -2
  369. package/dist/esm/clients/SpokePoolClient/index.js.map +1 -1
  370. package/dist/esm/clients/SpokePoolClient/types.js +2 -2
  371. package/dist/esm/clients/SpokePoolClient/types.js.map +1 -1
  372. package/dist/esm/clients/mocks/MockConfigStoreClient.js +64 -53
  373. package/dist/esm/clients/mocks/MockConfigStoreClient.js.map +1 -1
  374. package/dist/esm/clients/mocks/MockEvents.js +49 -42
  375. package/dist/esm/clients/mocks/MockEvents.js.map +1 -1
  376. package/dist/esm/clients/mocks/MockHubPoolClient.js +182 -138
  377. package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
  378. package/dist/esm/clients/mocks/MockSpokePoolClient.js +188 -202
  379. package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
  380. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js +132 -127
  381. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
  382. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js +69 -53
  383. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js.map +1 -1
  384. package/dist/esm/coingecko/Coingecko.js +443 -298
  385. package/dist/esm/coingecko/Coingecko.js.map +1 -1
  386. package/dist/esm/constants.js +47 -40
  387. package/dist/esm/constants.js.map +1 -1
  388. package/dist/esm/contracts/acrossConfigStore.js +46 -24
  389. package/dist/esm/contracts/acrossConfigStore.js.map +1 -1
  390. package/dist/esm/contracts/hubPool.js +18 -34
  391. package/dist/esm/contracts/hubPool.js.map +1 -1
  392. package/dist/esm/contracts/utils.js +5 -3
  393. package/dist/esm/contracts/utils.js.map +1 -1
  394. package/dist/esm/gasPriceOracle/adapters/arbitrum.js +14 -6
  395. package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  396. package/dist/esm/gasPriceOracle/adapters/ethereum.js +42 -22
  397. package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -1
  398. package/dist/esm/gasPriceOracle/adapters/linea-viem.js +25 -13
  399. package/dist/esm/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  400. package/dist/esm/gasPriceOracle/adapters/polygon.js +108 -72
  401. package/dist/esm/gasPriceOracle/adapters/polygon.js.map +1 -1
  402. package/dist/esm/gasPriceOracle/adapters/solana.js +31 -22
  403. package/dist/esm/gasPriceOracle/adapters/solana.js.map +1 -1
  404. package/dist/esm/gasPriceOracle/oracle.js +96 -70
  405. package/dist/esm/gasPriceOracle/oracle.js.map +1 -1
  406. package/dist/esm/gasPriceOracle/types.js +2 -2
  407. package/dist/esm/gasPriceOracle/types.js.map +1 -1
  408. package/dist/esm/gasPriceOracle/util.js +4 -4
  409. package/dist/esm/gasPriceOracle/util.js.map +1 -1
  410. package/dist/esm/lpFeeCalculator/lpFeeCalculator.js +33 -30
  411. package/dist/esm/lpFeeCalculator/lpFeeCalculator.js.map +1 -1
  412. package/dist/esm/lpFeeCalculator/rateModel.js +9 -7
  413. package/dist/esm/lpFeeCalculator/rateModel.js.map +1 -1
  414. package/dist/esm/merkleDistributor/MerkleDistributor.js +17 -18
  415. package/dist/esm/merkleDistributor/MerkleDistributor.js.map +1 -1
  416. package/dist/esm/pool/TransactionManager.js +100 -45
  417. package/dist/esm/pool/TransactionManager.js.map +1 -1
  418. package/dist/esm/pool/poolClient.js +740 -479
  419. package/dist/esm/pool/poolClient.js.map +1 -1
  420. package/dist/esm/pool/uma/across/constants.js +2 -2
  421. package/dist/esm/pool/uma/across/constants.js.map +1 -1
  422. package/dist/esm/pool/uma/across/transactionManager.js +100 -45
  423. package/dist/esm/pool/uma/across/transactionManager.js.map +1 -1
  424. package/dist/esm/pool/uma/clients/erc20/client.js +13 -15
  425. package/dist/esm/pool/uma/clients/erc20/client.js.map +1 -1
  426. package/dist/esm/pool/uma/oracle/utils.js +3 -2
  427. package/dist/esm/pool/uma/oracle/utils.js.map +1 -1
  428. package/dist/esm/pool/uma/utils.js +28 -9
  429. package/dist/esm/pool/uma/utils.js.map +1 -1
  430. package/dist/esm/priceClient/adapters/acrossApi.js +40 -21
  431. package/dist/esm/priceClient/adapters/acrossApi.js.map +1 -1
  432. package/dist/esm/priceClient/adapters/baseAdapter.js +72 -46
  433. package/dist/esm/priceClient/adapters/baseAdapter.js.map +1 -1
  434. package/dist/esm/priceClient/adapters/coingecko.js +61 -33
  435. package/dist/esm/priceClient/adapters/coingecko.js.map +1 -1
  436. package/dist/esm/priceClient/adapters/default.js +31 -15
  437. package/dist/esm/priceClient/adapters/default.js.map +1 -1
  438. package/dist/esm/priceClient/adapters/defiLlama.js +73 -38
  439. package/dist/esm/priceClient/adapters/defiLlama.js.map +1 -1
  440. package/dist/esm/priceClient/priceClient.js +158 -109
  441. package/dist/esm/priceClient/priceClient.js.map +1 -1
  442. package/dist/esm/providers/alchemy.js +18 -16
  443. package/dist/esm/providers/alchemy.js.map +1 -1
  444. package/dist/esm/providers/cachedProvider.js +134 -99
  445. package/dist/esm/providers/cachedProvider.js.map +1 -1
  446. package/dist/esm/providers/constants.js +3 -3
  447. package/dist/esm/providers/constants.js.map +1 -1
  448. package/dist/esm/providers/drpc.js +10 -8
  449. package/dist/esm/providers/drpc.js.map +1 -1
  450. package/dist/esm/providers/infura.js +11 -9
  451. package/dist/esm/providers/infura.js.map +1 -1
  452. package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.js +15 -6
  453. package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.js.map +1 -1
  454. package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.js +14 -5
  455. package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.js.map +1 -1
  456. package/dist/esm/providers/mocks/MockRetrySolanaRpcFactory.js +15 -6
  457. package/dist/esm/providers/mocks/MockRetrySolanaRpcFactory.js.map +1 -1
  458. package/dist/esm/providers/mocks/MockSolanaRpcFactory.js +66 -41
  459. package/dist/esm/providers/mocks/MockSolanaRpcFactory.js.map +1 -1
  460. package/dist/esm/providers/mocks/mockEthersProvider.js +30 -27
  461. package/dist/esm/providers/mocks/mockEthersProvider.js.map +1 -1
  462. package/dist/esm/providers/quicknode.js +20 -18
  463. package/dist/esm/providers/quicknode.js.map +1 -1
  464. package/dist/esm/providers/rateLimitedProvider.js +80 -68
  465. package/dist/esm/providers/rateLimitedProvider.js.map +1 -1
  466. package/dist/esm/providers/retryProvider.js +259 -186
  467. package/dist/esm/providers/retryProvider.js.map +1 -1
  468. package/dist/esm/providers/solana/baseRpcFactories.js +19 -13
  469. package/dist/esm/providers/solana/baseRpcFactories.js.map +1 -1
  470. package/dist/esm/providers/solana/cachedRpcFactory.js +112 -75
  471. package/dist/esm/providers/solana/cachedRpcFactory.js.map +1 -1
  472. package/dist/esm/providers/solana/defaultRpcFactory.js +14 -6
  473. package/dist/esm/providers/solana/defaultRpcFactory.js.map +1 -1
  474. package/dist/esm/providers/solana/quorumFallbackRpcFactory.js +202 -149
  475. package/dist/esm/providers/solana/quorumFallbackRpcFactory.js.map +1 -1
  476. package/dist/esm/providers/solana/rateLimitedRpcFactory.js +90 -70
  477. package/dist/esm/providers/solana/rateLimitedRpcFactory.js.map +1 -1
  478. package/dist/esm/providers/solana/retryRpcFactory.js +74 -50
  479. package/dist/esm/providers/solana/retryRpcFactory.js.map +1 -1
  480. package/dist/esm/providers/solana/utils.js +1 -1
  481. package/dist/esm/providers/solana/utils.js.map +1 -1
  482. package/dist/esm/providers/speedProvider.js +51 -28
  483. package/dist/esm/providers/speedProvider.js.map +1 -1
  484. package/dist/esm/providers/types.js +2 -2
  485. package/dist/esm/providers/types.js.map +1 -1
  486. package/dist/esm/providers/utils.js +20 -17
  487. package/dist/esm/providers/utils.js.map +1 -1
  488. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +152 -98
  489. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  490. package/dist/esm/relayFeeCalculator/chain-queries/customGasToken.js +26 -13
  491. package/dist/esm/relayFeeCalculator/chain-queries/customGasToken.js.map +1 -1
  492. package/dist/esm/relayFeeCalculator/chain-queries/factory.js +19 -9
  493. package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  494. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +128 -83
  495. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
  496. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +299 -211
  497. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  498. package/dist/esm/typeguards/error.js +5 -3
  499. package/dist/esm/typeguards/error.js.map +1 -1
  500. package/dist/esm/utils/AddressUtils.js +147 -115
  501. package/dist/esm/utils/AddressUtils.js.map +1 -1
  502. package/dist/esm/utils/ArrayUtils.js +78 -21
  503. package/dist/esm/utils/ArrayUtils.js.map +1 -1
  504. package/dist/esm/utils/BigNumberUtils.js +12 -11
  505. package/dist/esm/utils/BigNumberUtils.js.map +1 -1
  506. package/dist/esm/utils/BlockExplorerUtils.js +23 -19
  507. package/dist/esm/utils/BlockExplorerUtils.js.map +1 -1
  508. package/dist/esm/utils/BlockFinder.js +6 -2
  509. package/dist/esm/utils/BlockFinder.js.map +1 -1
  510. package/dist/esm/utils/BlockUtils.js +40 -31
  511. package/dist/esm/utils/BlockUtils.js.map +1 -1
  512. package/dist/esm/utils/BundleUtils.js +24 -21
  513. package/dist/esm/utils/BundleUtils.js.map +1 -1
  514. package/dist/esm/utils/CCTPUtils.js +123 -62
  515. package/dist/esm/utils/CCTPUtils.js.map +1 -1
  516. package/dist/esm/utils/CachingUtils.js +38 -17
  517. package/dist/esm/utils/CachingUtils.js.map +1 -1
  518. package/dist/esm/utils/ContractUtils.js +3 -3
  519. package/dist/esm/utils/ContractUtils.js.map +1 -1
  520. package/dist/esm/utils/DepositUtils.js +98 -121
  521. package/dist/esm/utils/DepositUtils.js.map +1 -1
  522. package/dist/esm/utils/EventUtils.js +69 -52
  523. package/dist/esm/utils/EventUtils.js.map +1 -1
  524. package/dist/esm/utils/FormattingUtils.js +26 -20
  525. package/dist/esm/utils/FormattingUtils.js.map +1 -1
  526. package/dist/esm/utils/HyperLiquidUtils.js +22 -8
  527. package/dist/esm/utils/HyperLiquidUtils.js.map +1 -1
  528. package/dist/esm/utils/IPFSUtils.js +35 -16
  529. package/dist/esm/utils/IPFSUtils.js.map +1 -1
  530. package/dist/esm/utils/JSONUtils.js +4 -4
  531. package/dist/esm/utils/JSONUtils.js.map +1 -1
  532. package/dist/esm/utils/LogUtils.js +12 -8
  533. package/dist/esm/utils/LogUtils.js.map +1 -1
  534. package/dist/esm/utils/Multicall.js +110 -50
  535. package/dist/esm/utils/Multicall.js.map +1 -1
  536. package/dist/esm/utils/NetworkUtils.js +28 -12
  537. package/dist/esm/utils/NetworkUtils.js.map +1 -1
  538. package/dist/esm/utils/NumberUtils.js +3 -1
  539. package/dist/esm/utils/NumberUtils.js.map +1 -1
  540. package/dist/esm/utils/ObjectUtils.js +41 -27
  541. package/dist/esm/utils/ObjectUtils.js.map +1 -1
  542. package/dist/esm/utils/Profiler.js +82 -77
  543. package/dist/esm/utils/Profiler.js.map +1 -1
  544. package/dist/esm/utils/ReviverUtils.js +7 -3
  545. package/dist/esm/utils/ReviverUtils.js.map +1 -1
  546. package/dist/esm/utils/SpokeUtils.js +78 -83
  547. package/dist/esm/utils/SpokeUtils.js.map +1 -1
  548. package/dist/esm/utils/TokenUtils.js +57 -33
  549. package/dist/esm/utils/TokenUtils.js.map +1 -1
  550. package/dist/esm/utils/ValidatorUtils.js +4 -4
  551. package/dist/esm/utils/ValidatorUtils.js.map +1 -1
  552. package/dist/esm/utils/abi/index.js +20 -10
  553. package/dist/esm/utils/abi/index.js.map +1 -1
  554. package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js +12 -8
  555. package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js.map +1 -1
  556. package/dist/esm/utils/common.js +52 -38
  557. package/dist/esm/utils/common.js.map +1 -1
  558. package/dist/types/constants.d.ts.map +1 -1
  559. package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -1
  560. package/dist/types/utils/Multicall.d.ts.map +1 -1
  561. package/dist/types/utils/NetworkUtils.d.ts.map +1 -1
  562. package/package.json +3 -3
  563. package/src/constants.ts +1 -0
  564. package/src/gasPriceOracle/oracle.ts +1 -0
  565. package/src/utils/Multicall.ts +1 -0
  566. package/src/utils/NetworkUtils.ts +8 -1
@@ -1 +1 @@
1
- {"version":3,"file":"rateLimitedRpcFactory.js","sourceRoot":"","sources":["../../../../src/providers/solana/rateLimitedRpcFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rateLimitedRpcFactory.js","sourceRoot":"","sources":["../../../../src/providers/solana/rateLimitedRpcFactory.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { __awaiter, __extends, __generator, __spreadArray } from "tslib";
1
2
  import { SOLANA_ERROR__RPC__TRANSPORT_HTTP_ERROR } from "@solana/kit";
2
3
  import { getThrowSolanaErrorResponseTransformer } from "@solana/rpc-transformers";
3
4
  import { isSolanaError } from "../../arch/svm";
@@ -7,77 +8,100 @@ import { RateLimitedSolanaRpcFactory } from "./rateLimitedRpcFactory";
7
8
  import { shouldFailImmediate } from "./utils";
8
9
  // This factory adds retry logic on top of the RateLimitedSolanaRpcFactory.
9
10
  // It follows the same composition pattern as other factories in this module.
10
- export class RetrySolanaRpcFactory extends SolanaClusterRpcFactory {
11
- retries;
12
- retryDelaySeconds;
13
- // Holds the underlying transport that the retry wrapper wraps.
14
- rateLimitedTransport;
15
- logger;
16
- constructor(retries, retryDelaySeconds, ...rateLimitedConstructorParams) {
11
+ var RetrySolanaRpcFactory = /** @class */ (function (_super) {
12
+ __extends(RetrySolanaRpcFactory, _super);
13
+ function RetrySolanaRpcFactory(retries, retryDelaySeconds) {
14
+ var rateLimitedConstructorParams = [];
15
+ for (var _i = 2; _i < arguments.length; _i++) {
16
+ rateLimitedConstructorParams[_i - 2] = arguments[_i];
17
+ }
18
+ var _this = this;
17
19
  // SolanaClusterRpcFactory shares the last two constructor parameters with RateLimitedSolanaRpcFactory.
18
- const superParams = rateLimitedConstructorParams.slice(-2);
19
- super(...superParams);
20
- this.retries = retries;
21
- this.retryDelaySeconds = retryDelaySeconds;
20
+ var superParams = rateLimitedConstructorParams.slice(-2);
21
+ _this = _super.apply(this, superParams) || this;
22
+ _this.retries = retries;
23
+ _this.retryDelaySeconds = retryDelaySeconds;
22
24
  // Validate retry configuration
23
- if (this.retries < 0 || !Number.isInteger(this.retries)) {
24
- throw new Error(`retries cannot be < 0 and must be an integer. Currently set to ${this.retries}`);
25
+ if (_this.retries < 0 || !Number.isInteger(_this.retries)) {
26
+ throw new Error("retries cannot be < 0 and must be an integer. Currently set to ".concat(_this.retries));
25
27
  }
26
- if (this.retryDelaySeconds < 0) {
27
- throw new Error(`retryDelaySeconds cannot be < 0. Currently set to ${this.retryDelaySeconds}`);
28
+ if (_this.retryDelaySeconds < 0) {
29
+ throw new Error("retryDelaySeconds cannot be < 0. Currently set to ".concat(_this.retryDelaySeconds));
28
30
  }
29
31
  // Create the rate limited transport.
30
- const rateLimitedRpcFactory = new RateLimitedSolanaRpcFactory(...rateLimitedConstructorParams);
31
- this.rateLimitedTransport = rateLimitedRpcFactory.createTransport();
32
- this.logger = rateLimitedRpcFactory.logger;
32
+ var rateLimitedRpcFactory = new (RateLimitedSolanaRpcFactory.bind.apply(RateLimitedSolanaRpcFactory, __spreadArray([void 0], rateLimitedConstructorParams, false)))();
33
+ _this.rateLimitedTransport = rateLimitedRpcFactory.createTransport();
34
+ _this.logger = rateLimitedRpcFactory.logger;
35
+ return _this;
33
36
  }
34
- createTransport() {
35
- return (...args) => {
36
- return this._tryCall(() => this.rateLimitedTransport(...args), args);
37
+ RetrySolanaRpcFactory.prototype.createTransport = function () {
38
+ var _this = this;
39
+ return function () {
40
+ var args = [];
41
+ for (var _i = 0; _i < arguments.length; _i++) {
42
+ args[_i] = arguments[_i];
43
+ }
44
+ return _this._tryCall(function () { return _this.rateLimitedTransport.apply(_this, args); }, args);
37
45
  };
38
- }
46
+ };
39
47
  /**
40
48
  * Retry wrapper for transport calls with Solana-specific error handling.
41
49
  * @param transportCall Function that makes the transport call
42
50
  * @param args Original transport arguments for logging
43
51
  * @returns Promise that resolves to the transport response
44
52
  */
45
- async _tryCall(transportCall, args) {
46
- const { method, params } = args[0].payload;
47
- let retryAttempt = 0;
48
- // eslint-disable-next-line no-constant-condition
49
- while (true) {
50
- try {
51
- const response = await transportCall();
52
- // Make sure SolanaErrors get thrown
53
- getThrowSolanaErrorResponseTransformer()(response, { methodName: method, params });
54
- return response;
55
- }
56
- catch (error) {
57
- if (retryAttempt++ >= this.retries || shouldFailImmediate(method, error)) {
58
- throw error;
53
+ RetrySolanaRpcFactory.prototype._tryCall = function (transportCall, args) {
54
+ return __awaiter(this, void 0, void 0, function () {
55
+ var _a, method, params, retryAttempt, response, error_1, retryDelaySeconds, exponentialBackoff, jitter, delayS;
56
+ return __generator(this, function (_b) {
57
+ switch (_b.label) {
58
+ case 0:
59
+ _a = args[0].payload, method = _a.method, params = _a.params;
60
+ retryAttempt = 0;
61
+ _b.label = 1;
62
+ case 1:
63
+ if (!true) return [3 /*break*/, 7];
64
+ _b.label = 2;
65
+ case 2:
66
+ _b.trys.push([2, 4, , 6]);
67
+ return [4 /*yield*/, transportCall()];
68
+ case 3:
69
+ response = _b.sent();
70
+ // Make sure SolanaErrors get thrown
71
+ getThrowSolanaErrorResponseTransformer()(response, { methodName: method, params: params });
72
+ return [2 /*return*/, response];
73
+ case 4:
74
+ error_1 = _b.sent();
75
+ if (retryAttempt++ >= this.retries || shouldFailImmediate(method, error_1)) {
76
+ throw error_1;
77
+ }
78
+ retryDelaySeconds = this.retryDelaySeconds;
79
+ exponentialBackoff = retryDelaySeconds * Math.pow(2, retryAttempt - 1);
80
+ jitter = 1 + 2 * Math.random();
81
+ delayS = this.isRateLimitResponse(error_1) ? exponentialBackoff + jitter : retryDelaySeconds;
82
+ return [4 /*yield*/, delay(delayS)];
83
+ case 5:
84
+ _b.sent();
85
+ return [3 /*break*/, 6];
86
+ case 6: return [3 /*break*/, 1];
87
+ case 7: return [2 /*return*/];
59
88
  }
60
- // Implement a slightly aggressive exponential backoff to account for fierce parallelism.
61
- const { retryDelaySeconds } = this;
62
- const exponentialBackoff = retryDelaySeconds * Math.pow(2, retryAttempt - 1);
63
- const jitter = 1 + 2 * Math.random(); // Range jitter from [1, 3]s to offset problem where there are many
64
- // concurrent retry requests sent at the same time.
65
- const delayS = this.isRateLimitResponse(error) ? exponentialBackoff + jitter : retryDelaySeconds;
66
- await delay(delayS);
67
- }
68
- }
69
- }
89
+ });
90
+ });
91
+ };
70
92
  /**
71
93
  * Identify whether an error thrown was the result of an RPC provider 429 response.
72
94
  * @param error Error object from the RPC query.
73
95
  * @returns True if the response was a 429 rate-limit response.
74
96
  */
75
- isRateLimitResponse(error) {
97
+ RetrySolanaRpcFactory.prototype.isRateLimitResponse = function (error) {
76
98
  if (!isSolanaError(error)) {
77
99
  return false;
78
100
  }
79
- const { __code: code } = error.context;
101
+ var code = error.context.__code;
80
102
  return code === SOLANA_ERROR__RPC__TRANSPORT_HTTP_ERROR && error.context.statusCode === 429;
81
- }
82
- }
103
+ };
104
+ return RetrySolanaRpcFactory;
105
+ }(SolanaClusterRpcFactory));
106
+ export { RetrySolanaRpcFactory };
83
107
  //# sourceMappingURL=retryRpcFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"retryRpcFactory.js","sourceRoot":"","sources":["../../../../src/providers/solana/retryRpcFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retryRpcFactory.js","sourceRoot":"","sources":["../../../../src/providers/solana/retryRpcFactory.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export function shouldFailImmediate(method, error) {
10
10
  return false;
11
11
  }
12
12
  // JSON-RPC errors: https://www.quicknode.com/docs/solana/error-references
13
- const { __code: code } = error.context;
13
+ var code = error.context.__code;
14
14
  switch (method) {
15
15
  case "getBlock":
16
16
  case "getBlockTime":
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/providers/solana/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,kCAAkC,EAAE,MAAM,gBAAgB,CAAC;AAerG;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,KAAc;IAChE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,0EAA0E;IAC1E,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;IACvC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,UAAU,CAAC;QAChB,KAAK,cAAc;YACjB,mFAAmF;YACnF,OAAO,CAAC,gBAAgB,EAAE,kCAAkC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/E;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/providers/solana/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,kCAAkC,EAAE,MAAM,gBAAgB,CAAC;AAerG;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc,EAAE,KAAc;IAChE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,0EAA0E;IAClE,IAAQ,IAAI,GAAK,KAAK,CAAC,OAAO,OAAlB,CAAmB;IACvC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,UAAU,CAAC;QAChB,KAAK,cAAc;YACjB,mFAAmF;YACnF,OAAO,CAAC,gBAAgB,EAAE,kCAAkC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/E;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { __awaiter, __extends, __generator, __spreadArray } from "tslib";
1
2
  import { ethers } from "ethers";
2
3
  import { CacheProvider } from "./cachedProvider";
3
4
  import { formatProviderError } from "./utils";
@@ -5,35 +6,57 @@ import { PROVIDER_CACHE_TTL } from "./constants";
5
6
  /**
6
7
  * RPC provider that sends requests to multiple providers in parallel and returns the fastest response.
7
8
  */
8
- export class SpeedProvider extends ethers.providers.StaticJsonRpcProvider {
9
- maxConcurrencySpeed;
10
- maxConcurrencyRateLimit;
11
- providers;
12
- constructor(params, chainId, maxConcurrencySpeed, maxConcurrencyRateLimit, providerCacheNamespace, pctRpcCallsLogged, redisClient, standardTtlBlockDistance, noTtlBlockDistance, providerCacheTtl = PROVIDER_CACHE_TTL, logger) {
9
+ var SpeedProvider = /** @class */ (function (_super) {
10
+ __extends(SpeedProvider, _super);
11
+ function SpeedProvider(params, chainId, maxConcurrencySpeed, maxConcurrencyRateLimit, providerCacheNamespace, pctRpcCallsLogged, redisClient, standardTtlBlockDistance, noTtlBlockDistance, providerCacheTtl, logger) {
12
+ if (providerCacheTtl === void 0) { providerCacheTtl = PROVIDER_CACHE_TTL; }
13
13
  // Initialize the super just with the chainId, which stops it from trying to immediately send out a .send before
14
14
  // this derived class is initialized.
15
- super(undefined, chainId);
16
- this.maxConcurrencySpeed = maxConcurrencySpeed;
17
- this.maxConcurrencyRateLimit = maxConcurrencyRateLimit;
18
- this.providers = params.map((inputs) => new CacheProvider(providerCacheNamespace, redisClient, standardTtlBlockDistance, noTtlBlockDistance, providerCacheTtl, maxConcurrencyRateLimit, pctRpcCallsLogged, logger, ...inputs));
15
+ var _this = _super.call(this, undefined, chainId) || this;
16
+ _this.maxConcurrencySpeed = maxConcurrencySpeed;
17
+ _this.maxConcurrencyRateLimit = maxConcurrencyRateLimit;
18
+ _this.providers = params.map(function (inputs) {
19
+ return new (CacheProvider.bind.apply(CacheProvider, __spreadArray([void 0, providerCacheNamespace,
20
+ redisClient,
21
+ standardTtlBlockDistance,
22
+ noTtlBlockDistance,
23
+ providerCacheTtl,
24
+ maxConcurrencyRateLimit,
25
+ pctRpcCallsLogged,
26
+ logger], inputs, false)))();
27
+ });
28
+ return _this;
19
29
  }
20
- async send(method, params) {
21
- try {
22
- const providersToUse = this.providers.slice(0, this.maxConcurrencySpeed);
23
- const result = await Promise.any(providersToUse.map((provider) => provider.send(method, params)));
24
- return result;
25
- }
26
- catch (error) {
27
- // Only thrown if all providers failed to respond
28
- if (error instanceof AggregateError) {
29
- const errors = error.errors.map((error, index) => {
30
- const provider = this.providers[index];
31
- return formatProviderError(provider, error.message);
32
- });
33
- throw new Error("All providers errored:\n" + errors.join("\n"));
34
- }
35
- throw error;
36
- }
37
- }
38
- }
30
+ SpeedProvider.prototype.send = function (method, params) {
31
+ return __awaiter(this, void 0, void 0, function () {
32
+ var providersToUse, result, error_1, errors;
33
+ var _this = this;
34
+ return __generator(this, function (_a) {
35
+ switch (_a.label) {
36
+ case 0:
37
+ _a.trys.push([0, 2, , 3]);
38
+ providersToUse = this.providers.slice(0, this.maxConcurrencySpeed);
39
+ return [4 /*yield*/, Promise.any(providersToUse.map(function (provider) { return provider.send(method, params); }))];
40
+ case 1:
41
+ result = _a.sent();
42
+ return [2 /*return*/, result];
43
+ case 2:
44
+ error_1 = _a.sent();
45
+ // Only thrown if all providers failed to respond
46
+ if (error_1 instanceof AggregateError) {
47
+ errors = error_1.errors.map(function (error, index) {
48
+ var provider = _this.providers[index];
49
+ return formatProviderError(provider, error.message);
50
+ });
51
+ throw new Error("All providers errored:\n" + errors.join("\n"));
52
+ }
53
+ throw error_1;
54
+ case 3: return [2 /*return*/];
55
+ }
56
+ });
57
+ });
58
+ };
59
+ return SpeedProvider;
60
+ }(ethers.providers.StaticJsonRpcProvider));
61
+ export { SpeedProvider };
39
62
  //# sourceMappingURL=speedProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"speedProvider.js","sourceRoot":"","sources":["../../../src/providers/speedProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,MAAM,CAAC,SAAS,CAAC,qBAAqB;IAM5D;IACA;IANF,SAAS,CAA2C;IAE7D,YACE,MAA8E,EAC9E,OAAe,EACN,mBAA2B,EAC3B,uBAA+B,EACxC,sBAA8B,EAC9B,iBAAyB,EACzB,WAAuC,EACvC,wBAAiC,EACjC,kBAA2B,EAC3B,gBAAgB,GAAG,kBAAkB,EACrC,MAAe;QAEf,gHAAgH;QAChH,qCAAqC;QACrC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAZjB,wBAAmB,GAAnB,mBAAmB,CAAQ;QAC3B,4BAAuB,GAAvB,uBAAuB,CAAQ;QAYxC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,CACzB,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,aAAa,CACf,sBAAsB,EACtB,WAAW,EACX,wBAAwB,EACxB,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,EACvB,iBAAiB,EACjB,MAAM,EACN,GAAG,MAAM,CACV,CACJ,CAAC;IACJ,CAAC;IAEQ,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,MAAsB;QACxD,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;YAClG,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,iDAAiD;YACjD,IAAI,KAAK,YAAY,cAAc,EAAE,CAAC;gBACpC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;oBAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;oBACvC,OAAO,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBACtD,CAAC,CAAC,CAAC;gBACH,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAClE,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"speedProvider.js","sourceRoot":"","sources":["../../../src/providers/speedProvider.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAGjD;;GAEG;AACH;IAAmC,iCAAsC;IAGvE,uBACE,MAA8E,EAC9E,OAAe,EACN,mBAA2B,EAC3B,uBAA+B,EACxC,sBAA8B,EAC9B,iBAAyB,EACzB,WAAuC,EACvC,wBAAiC,EACjC,kBAA2B,EAC3B,gBAAqC,EACrC,MAAe;QADf,iCAAA,EAAA,qCAAqC;QAGrC,gHAAgH;QAChH,qCAAqC;QACrC,YAAA,MAAK,YAAC,SAAS,EAAE,OAAO,CAAC,SAAC;QAZjB,yBAAmB,GAAnB,mBAAmB,CAAQ;QAC3B,6BAAuB,GAAvB,uBAAuB,CAAQ;QAYxC,KAAI,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,CACzB,UAAC,MAAM;YACL,YAAI,aAAa,YAAb,aAAa,yBACf,sBAAsB;gBACtB,WAAW;gBACX,wBAAwB;gBACxB,kBAAkB;gBAClB,gBAAgB;gBAChB,uBAAuB;gBACvB,iBAAiB;gBACjB,MAAM,GACH,MAAM;QATX,CAUC,CACJ,CAAC;;IACJ,CAAC;IAEc,4BAAI,GAAnB,UAAoB,MAAc,EAAE,MAAsB;;;;;;;;wBAEhD,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;wBAC1D,qBAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,UAAC,QAAQ,IAAK,OAAA,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAA7B,CAA6B,CAAC,CAAC,EAAA;;wBAA3F,MAAM,GAAG,SAAkF;wBACjG,sBAAO,MAAM,EAAC;;;wBAEd,iDAAiD;wBACjD,IAAI,OAAK,YAAY,cAAc,EAAE,CAAC;4BAC9B,MAAM,GAAG,OAAK,CAAC,MAAM,CAAC,GAAG,CAAC,UAAC,KAAK,EAAE,KAAK;gCAC3C,IAAM,QAAQ,GAAG,KAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gCACvC,OAAO,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;4BACtD,CAAC,CAAC,CAAC;4BACH,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBAClE,CAAC;wBACD,MAAM,OAAK,CAAC;;;;;KAEf;IACH,oBAAC;AAAD,CAAC,AApDD,CAAmC,MAAM,CAAC,SAAS,CAAC,qBAAqB,GAoDxE"}
@@ -2,7 +2,7 @@ import { any, literal, nullable, number, string, type, union } from "superstruct
2
2
  // JSON-RPC 2.0 Error object
3
3
  // See JSON-RPC 2.0 Specification section 5 Response object
4
4
  // https://www.jsonrpc.org/specification
5
- export const JsonRpcError = type({
5
+ export var JsonRpcError = type({
6
6
  jsonrpc: literal("2.0"),
7
7
  id: union([number(), string()]),
8
8
  error: type({
@@ -12,7 +12,7 @@ export const JsonRpcError = type({
12
12
  }),
13
13
  });
14
14
  // Generic/unknown RPC error (may embed a JsonRpcError).
15
- export const RpcError = type({
15
+ export var RpcError = type({
16
16
  reason: string(),
17
17
  body: string(),
18
18
  });
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/providers/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAKlF,4BAA4B;AAC5B,2DAA2D;AAC3D,wCAAwC;AACxC,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC;IACvB,EAAE,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/B,KAAK,EAAE,IAAI,CAAC;QACV,IAAI,EAAE,MAAM,EAAE;QACd,OAAO,EAAE,MAAM,EAAE;QACjB,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC;KACtB,CAAC;CACH,CAAC,CAAC;AAEH,wDAAwD;AACxD,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,EAAE;IAChB,IAAI,EAAE,MAAM,EAAE;CACf,CAAC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/providers/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAKlF,4BAA4B;AAC5B,2DAA2D;AAC3D,wCAAwC;AACxC,MAAM,CAAC,IAAM,YAAY,GAAG,IAAI,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC;IACvB,EAAE,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC/B,KAAK,EAAE,IAAI,CAAC;QACV,IAAI,EAAE,MAAM,EAAE;QACd,OAAO,EAAE,MAAM,EAAE;QACjB,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC;KACtB,CAAC;CACH,CAAC,CAAC;AAEH,wDAAwD;AACxD,MAAM,CAAC,IAAM,QAAQ,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,EAAE;IAChB,IAAI,EAAE,MAAM,EAAE;CACf,CAAC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { __assign } from "tslib";
1
2
  // The async/queue library has a task-based interface for building a concurrent queue.
2
3
  import assert from "assert";
3
4
  import { isEqual, sortBy } from "lodash";
@@ -10,7 +11,7 @@ import * as quicknode from "./quicknode";
10
11
  /**
11
12
  * Infura DIN is identified separately to allow it to be configured explicitly.
12
13
  */
13
- const PROVIDERS = {
14
+ var PROVIDERS = {
14
15
  ALCHEMY: alchemy.getURL,
15
16
  INFURA: infura.getURL,
16
17
  INFURA_DIN: infura.getURL,
@@ -33,9 +34,10 @@ export function isSupportedProvider(provider) {
33
34
  * @param transport Optional transport specifier (HTTPS or WSS).
34
35
  * @returns An RPC URL confirming to the specified inputs.
35
36
  */
36
- export function getURL(provider, chainId, apiKey, transport = "https") {
37
- const getURL = PROVIDERS[provider];
38
- assert(getURL, `Unsupported RPC provider (${provider})`);
37
+ export function getURL(provider, chainId, apiKey, transport) {
38
+ if (transport === void 0) { transport = "https"; }
39
+ var getURL = PROVIDERS[provider];
40
+ assert(getURL, "Unsupported RPC provider (".concat(provider, ")"));
39
41
  return getURL(chainId, apiKey, transport);
40
42
  }
41
43
  /**
@@ -48,32 +50,33 @@ function deleteIgnoredKeys(ignoredKeys, obj) {
48
50
  if (!isDefined(obj)) {
49
51
  return;
50
52
  }
51
- const newObj = { ...obj };
52
- for (const key of ignoredKeys) {
53
+ var newObj = __assign({}, obj);
54
+ for (var _i = 0, ignoredKeys_1 = ignoredKeys; _i < ignoredKeys_1.length; _i++) {
55
+ var key = ignoredKeys_1[_i];
53
56
  delete newObj[key];
54
57
  }
55
58
  return newObj;
56
59
  }
57
60
  export function compareResultsAndFilterIgnoredKeys(ignoredKeys, _objA, _objB) {
58
61
  // Remove ignored keys from copied objects.
59
- const filteredA = deleteIgnoredKeys(ignoredKeys, _objA);
60
- const filteredB = deleteIgnoredKeys(ignoredKeys, _objB);
62
+ var filteredA = deleteIgnoredKeys(ignoredKeys, _objA);
63
+ var filteredB = deleteIgnoredKeys(ignoredKeys, _objB);
61
64
  // Compare objects without the ignored keys.
62
65
  return isEqual(filteredA, filteredB);
63
66
  }
64
67
  export function compareArrayResultsWithIgnoredKeys(ignoredKeys, objA, objB) {
65
68
  // Remove ignored keys from each element of copied arrays.
66
- const filteredA = objA?.map((obj) => deleteIgnoredKeys(ignoredKeys, obj));
67
- const filteredB = objB?.map((obj) => deleteIgnoredKeys(ignoredKeys, obj));
69
+ var filteredA = objA === null || objA === void 0 ? void 0 : objA.map(function (obj) { return deleteIgnoredKeys(ignoredKeys, obj); });
70
+ var filteredB = objB === null || objB === void 0 ? void 0 : objB.map(function (obj) { return deleteIgnoredKeys(ignoredKeys, obj); });
68
71
  // Compare objects without the ignored keys.
69
- const sortKeys = ["transactionIndex", "logIndex"];
72
+ var sortKeys = ["transactionIndex", "logIndex"];
70
73
  return (isDefined(filteredA) && isDefined(filteredB) && isEqual(sortBy(filteredA, sortKeys), sortBy(filteredB, sortKeys)));
71
74
  }
72
75
  /**
73
76
  * A record of error codes that correspond to fields that should be ignored when comparing RPC results.
74
77
  * This is used to compare results from different providers that may have different, but still valid, results.
75
78
  */
76
- const IGNORED_FIELDS = {
79
+ var IGNORED_FIELDS = {
77
80
  // We've seen some RPC's like QuickNode add in transactionLogIndex which isn't in the
78
81
  // JSON RPC spec: https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_getfilterchanges
79
82
  // Additional reference: https://github.com/ethers-io/ethers.js/issues/1721
@@ -103,11 +106,11 @@ const IGNORED_FIELDS = {
103
106
  * @returns The formatted error message.
104
107
  */
105
108
  export function formatProviderError(provider, rawErrorText) {
106
- return `Provider ${getOriginFromURL(provider.connection.url)} failed with error: ${rawErrorText}`;
109
+ return "Provider ".concat(getOriginFromURL(provider.connection.url), " failed with error: ").concat(rawErrorText);
107
110
  }
108
111
  export function createSendErrorWithMessage(message, sendError) {
109
- const error = new Error(message);
110
- return { ...sendError, ...error };
112
+ var error = new Error(message);
113
+ return __assign(__assign({}, sendError), error);
111
114
  }
112
115
  /**
113
116
  * Validate and parse a possible JSON-RPC error response.
@@ -119,12 +122,12 @@ export function parseJsonRpcError(response) {
119
122
  return;
120
123
  }
121
124
  try {
122
- const error = JSON.parse(response.body);
125
+ var error = JSON.parse(response.body);
123
126
  if (JsonRpcError.is(error)) {
124
127
  return error.error;
125
128
  }
126
129
  }
127
- catch {
130
+ catch (_a) {
128
131
  // Suppress error.
129
132
  }
130
133
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/providers/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/providers/utils.ts"],"names":[],"mappings":";AAAA,sFAAsF;AACtF,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAA6B,MAAM,SAAS,CAAC;AAC5E,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAEzC;;GAEG;AACH,IAAM,SAAS,GAAG;IAChB,OAAO,EAAE,OAAO,CAAC,MAAM;IACvB,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,UAAU,EAAE,MAAM,CAAC,MAAM;IACzB,IAAI,EAAE,IAAI,CAAC,MAAM;IACjB,SAAS,EAAE,SAAS,CAAC,MAAM;CAC5B,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,MAAM,CACpB,QAAqB,EACrB,OAAe,EACf,MAAc,EACd,SAAiC;IAAjC,0BAAA,EAAA,mBAAiC;IAEjC,IAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,CAAC,MAAM,EAAE,oCAA6B,QAAQ,MAAG,CAAC,CAAC;IACzD,OAAO,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,WAAqB,EAAE,GAA4B;IAC5E,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO;IACT,CAAC;IACD,IAAM,MAAM,gBAAQ,GAAG,CAAE,CAAC;IAC1B,KAAkB,UAAW,EAAX,2BAAW,EAAX,yBAAW,EAAX,IAAW,EAAE,CAAC;QAA3B,IAAM,GAAG,oBAAA;QACZ,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,kCAAkC,CAChD,WAAqB,EACrB,KAA8B,EAC9B,KAA8B;IAE9B,2CAA2C;IAC3C,IAAM,SAAS,GAAG,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACxD,IAAM,SAAS,GAAG,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAExD,4CAA4C;IAC5C,OAAO,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,kCAAkC,CAAC,WAAqB,EAAE,IAAe,EAAE,IAAe;IACxG,0DAA0D;IAC1D,IAAM,SAAS,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,iBAAiB,CAAC,WAAW,EAAE,GAA8B,CAAC,EAA9D,CAA8D,CAAC,CAAC;IACrG,IAAM,SAAS,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,iBAAiB,CAAC,WAAW,EAAE,GAA8B,CAAC,EAA9D,CAA8D,CAAC,CAAC;IAErG,4CAA4C;IAC5C,IAAM,QAAQ,GAAG,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;IAClD,OAAO,CACL,SAAS,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAClH,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,IAAM,cAAc,GAAG;IACrB,qFAAqF;IACrF,6FAA6F;IAC7F,2EAA2E;IAC3E,yGAAyG;IACzG,sFAAsF;IACtF,8EAA8E;IAC9E,mFAAmF;IACnF,oBAAoB,EAAE;QACpB,OAAO,EAAE,sBAAsB;QAC/B,eAAe,EAAE,SAAS;QAC1B,kBAAkB,EAAE,SAAS;QAC7B,cAAc,EAAE,uBAAuB;QACvC,MAAM,EAAE,+BAA+B;QACvC,iBAAiB,EAAE,gCAAgC;QACnD,WAAW,EAAE,+CAA+C;QAC5D,cAAc,EAAE,0CAA0C;QAC1D,aAAa,EAAE,uBAAuB;QACtC,WAAW,EAAE,WAAW;QACxB,UAAU,EAAE,WAAW;KACxB;IACD,WAAW,EAAE,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,eAAe,EAAE,SAAS,CAAC;CACnF,CAAC;AAeF;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAyC,EAAE,YAAoB;IACjG,OAAO,mBAAY,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,iCAAuB,YAAY,CAAE,CAAC;AACpG,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,OAAe,EAAE,SAAkC;IAC5F,IAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IACjC,6BAAY,SAAS,GAAK,KAAK,EAAG;AACpC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAiB;IACjD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,YAAY,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC,KAAK,CAAC;QACrB,CAAC;IACH,CAAC;IAAC,WAAM,CAAC;QACP,kBAAkB;IACpB,CAAC;IAED,OAAO;AACT,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,UAAmB,EAAE,UAAmB;IACxF,IAAI,MAAM,KAAK,sBAAsB,EAAE,CAAC;QACtC,qGAAqG;QACrG,oEAAoE;QACpE,OAAO,kCAAkC,CACvC,cAAc,CAAC,oBAAoB,EACnC,UAAqC,EACrC,UAAqC,CACtC,CAAC;IACJ,CAAC;SAAM,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;QACpC,OAAO,kCAAkC,CACvC,cAAc,CAAC,WAAW,EAC1B,UAAuB,EACvB,UAAuB,CACxB,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACzC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAe,EAAE,UAAmB,EAAE,UAAmB;IAC5F,OAAO,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,CAAN,IAAY,SAKX;AALD,WAAY,SAAS;IACnB,yCAAI,CAAA;IACJ,iDAAQ,CAAA;IACR,6CAAM,CAAA;IACN,yEAAoB,CAAA;AACtB,CAAC,EALW,SAAS,KAAT,SAAS,QAKpB"}