@across-protocol/sdk 4.3.110 → 4.3.111-alpha.1

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 (558) hide show
  1. package/dist/cjs/addressAggregator/adapters/abstract.js +50 -64
  2. package/dist/cjs/addressAggregator/adapters/abstract.js.map +1 -1
  3. package/dist/cjs/addressAggregator/adapters/bybit.js +16 -29
  4. package/dist/cjs/addressAggregator/adapters/bybit.js.map +1 -1
  5. package/dist/cjs/addressAggregator/adapters/env.js +11 -15
  6. package/dist/cjs/addressAggregator/adapters/env.js.map +1 -1
  7. package/dist/cjs/addressAggregator/adapters/file.js +32 -45
  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 +22 -36
  11. package/dist/cjs/addressAggregator/adapters/risklabs.js.map +1 -1
  12. package/dist/cjs/addressAggregator/index.js +57 -87
  13. package/dist/cjs/addressAggregator/index.js.map +1 -1
  14. package/dist/cjs/apiClient/abstractClient.js +9 -8
  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 +23 -29
  18. package/dist/cjs/apiClient/mockedClient.js.map +1 -1
  19. package/dist/cjs/apiClient/productionClient.js +65 -103
  20. package/dist/cjs/apiClient/productionClient.js.map +1 -1
  21. package/dist/cjs/arch/evm/BlockUtils.js +122 -208
  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 +134 -288
  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 +38 -49
  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 +102 -158
  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 +708 -1147
  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 +174 -236
  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 +166 -355
  46. package/dist/cjs/arch/svm/utils.js.map +1 -1
  47. package/dist/cjs/caching/Arweave/ArweaveClient.js +168 -246
  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 +40 -49
  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 +13 -18
  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 +302 -381
  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 +58 -83
  61. package/dist/cjs/clients/BaseAbstractClient.js.map +1 -1
  62. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +709 -900
  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 +95 -128
  66. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  67. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js +48 -53
  68. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  69. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js +10 -8
  70. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -1
  71. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +67 -90
  72. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  73. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js +46 -24
  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 +526 -708
  77. package/dist/cjs/clients/HubPoolClient.js.map +1 -1
  78. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +133 -179
  79. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  80. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js +124 -183
  81. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -1
  82. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +357 -389
  83. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  84. package/dist/cjs/clients/SpokePoolClient/SpokePoolClientManager.js +9 -8
  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 +58 -67
  90. package/dist/cjs/clients/mocks/MockConfigStoreClient.js.map +1 -1
  91. package/dist/cjs/clients/mocks/MockEvents.js +47 -52
  92. package/dist/cjs/clients/mocks/MockEvents.js.map +1 -1
  93. package/dist/cjs/clients/mocks/MockHubPoolClient.js +142 -185
  94. package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
  95. package/dist/cjs/clients/mocks/MockSpokePoolClient.js +208 -192
  96. package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
  97. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js +140 -143
  98. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
  99. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js +57 -73
  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 +285 -437
  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 +23 -29
  106. package/dist/cjs/constants.js.map +1 -1
  107. package/dist/cjs/contracts/acrossConfigStore.js +27 -48
  108. package/dist/cjs/contracts/acrossConfigStore.js.map +1 -1
  109. package/dist/cjs/contracts/hubPool.js +36 -20
  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 +6 -8
  113. package/dist/cjs/contracts/utils.js.map +1 -1
  114. package/dist/cjs/gasPriceOracle/adapters/arbitrum.js +7 -16
  115. package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  116. package/dist/cjs/gasPriceOracle/adapters/ethereum.js +26 -45
  117. package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -1
  118. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js +16 -28
  119. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  120. package/dist/cjs/gasPriceOracle/adapters/polygon.js +73 -112
  121. package/dist/cjs/gasPriceOracle/adapters/polygon.js.map +1 -1
  122. package/dist/cjs/gasPriceOracle/adapters/solana.js +20 -33
  123. package/dist/cjs/gasPriceOracle/adapters/solana.js.map +1 -1
  124. package/dist/cjs/gasPriceOracle/oracle.js +77 -103
  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 +33 -35
  134. package/dist/cjs/lpFeeCalculator/lpFeeCalculator.js.map +1 -1
  135. package/dist/cjs/lpFeeCalculator/rateModel.js +7 -9
  136. package/dist/cjs/lpFeeCalculator/rateModel.js.map +1 -1
  137. package/dist/cjs/merkleDistributor/MerkleDistributor.js +20 -18
  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 +45 -100
  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 +464 -731
  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 +45 -100
  148. package/dist/cjs/pool/uma/across/transactionManager.js.map +1 -1
  149. package/dist/cjs/pool/uma/clients/erc20/client.js +18 -16
  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 +4 -5
  156. package/dist/cjs/pool/uma/oracle/utils.js.map +1 -1
  157. package/dist/cjs/pool/uma/utils.js +11 -30
  158. package/dist/cjs/pool/uma/utils.js.map +1 -1
  159. package/dist/cjs/priceClient/adapters/acrossApi.js +22 -39
  160. package/dist/cjs/priceClient/adapters/acrossApi.js.map +1 -1
  161. package/dist/cjs/priceClient/adapters/baseAdapter.js +49 -73
  162. package/dist/cjs/priceClient/adapters/baseAdapter.js.map +1 -1
  163. package/dist/cjs/priceClient/adapters/coingecko.js +34 -61
  164. package/dist/cjs/priceClient/adapters/coingecko.js.map +1 -1
  165. package/dist/cjs/priceClient/adapters/default.js +16 -31
  166. package/dist/cjs/priceClient/adapters/default.js.map +1 -1
  167. package/dist/cjs/priceClient/adapters/defiLlama.js +40 -74
  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 +110 -159
  172. package/dist/cjs/priceClient/priceClient.js.map +1 -1
  173. package/dist/cjs/providers/alchemy.js +17 -19
  174. package/dist/cjs/providers/alchemy.js.map +1 -1
  175. package/dist/cjs/providers/cachedProvider.js +88 -129
  176. package/dist/cjs/providers/cachedProvider.js.map +1 -1
  177. package/dist/cjs/providers/drpc.js +9 -11
  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 +10 -12
  181. package/dist/cjs/providers/infura.js.map +1 -1
  182. package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.js +7 -15
  183. package/dist/cjs/providers/mocks/MockCachedSolanaRpcFactory.js.map +1 -1
  184. package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.js +6 -14
  185. package/dist/cjs/providers/mocks/MockRateLimitedSolanaRpcFactory.js.map +1 -1
  186. package/dist/cjs/providers/mocks/MockRetrySolanaRpcFactory.js +7 -15
  187. package/dist/cjs/providers/mocks/MockRetrySolanaRpcFactory.js.map +1 -1
  188. package/dist/cjs/providers/mocks/MockSolanaRpcFactory.js +42 -66
  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 +29 -31
  192. package/dist/cjs/providers/mocks/mockEthersProvider.js.map +1 -1
  193. package/dist/cjs/providers/quicknode.js +19 -21
  194. package/dist/cjs/providers/quicknode.js.map +1 -1
  195. package/dist/cjs/providers/rateLimitedProvider.js +64 -79
  196. package/dist/cjs/providers/rateLimitedProvider.js.map +1 -1
  197. package/dist/cjs/providers/retryProvider.js +163 -246
  198. package/dist/cjs/providers/retryProvider.js.map +1 -1
  199. package/dist/cjs/providers/solana/baseRpcFactories.js +14 -18
  200. package/dist/cjs/providers/solana/baseRpcFactories.js.map +1 -1
  201. package/dist/cjs/providers/solana/cachedRpcFactory.js +70 -112
  202. package/dist/cjs/providers/solana/cachedRpcFactory.js.map +1 -1
  203. package/dist/cjs/providers/solana/defaultRpcFactory.js +8 -15
  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 +135 -191
  207. package/dist/cjs/providers/solana/quorumFallbackRpcFactory.js.map +1 -1
  208. package/dist/cjs/providers/solana/rateLimitedRpcFactory.js +67 -90
  209. package/dist/cjs/providers/solana/rateLimitedRpcFactory.js.map +1 -1
  210. package/dist/cjs/providers/solana/retryRpcFactory.js +52 -79
  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 +31 -53
  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 +26 -28
  219. package/dist/cjs/providers/utils.js.map +1 -1
  220. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +108 -162
  221. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  222. package/dist/cjs/relayFeeCalculator/chain-queries/customGasToken.js +14 -26
  223. package/dist/cjs/relayFeeCalculator/chain-queries/customGasToken.js.map +1 -1
  224. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +20 -29
  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 +88 -137
  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 +199 -297
  231. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  232. package/dist/cjs/typeguards/error.js +5 -7
  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 +117 -144
  236. package/dist/cjs/utils/AddressUtils.js.map +1 -1
  237. package/dist/cjs/utils/ArrayUtils.js +21 -78
  238. package/dist/cjs/utils/ArrayUtils.js.map +1 -1
  239. package/dist/cjs/utils/BigNumberUtils.js +9 -10
  240. package/dist/cjs/utils/BigNumberUtils.js.map +1 -1
  241. package/dist/cjs/utils/BlockExplorerUtils.js +26 -30
  242. package/dist/cjs/utils/BlockExplorerUtils.js.map +1 -1
  243. package/dist/cjs/utils/BlockFinder.js +2 -5
  244. package/dist/cjs/utils/BlockFinder.js.map +1 -1
  245. package/dist/cjs/utils/BlockUtils.js +24 -41
  246. package/dist/cjs/utils/BlockUtils.js.map +1 -1
  247. package/dist/cjs/utils/BundleUtils.js +21 -24
  248. package/dist/cjs/utils/BundleUtils.js.map +1 -1
  249. package/dist/cjs/utils/CCTPUtils.js +62 -126
  250. package/dist/cjs/utils/CCTPUtils.js.map +1 -1
  251. package/dist/cjs/utils/CachingUtils.js +20 -42
  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 +122 -99
  256. package/dist/cjs/utils/DepositUtils.js.map +1 -1
  257. package/dist/cjs/utils/EventUtils.js +49 -70
  258. package/dist/cjs/utils/EventUtils.js.map +1 -1
  259. package/dist/cjs/utils/FormattingUtils.js +26 -32
  260. package/dist/cjs/utils/FormattingUtils.js.map +1 -1
  261. package/dist/cjs/utils/HyperLiquidUtils.js +10 -23
  262. package/dist/cjs/utils/HyperLiquidUtils.js.map +1 -1
  263. package/dist/cjs/utils/IPFSUtils.js +16 -34
  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 +10 -12
  268. package/dist/cjs/utils/LogUtils.js.map +1 -1
  269. package/dist/cjs/utils/Multicall.js +56 -114
  270. package/dist/cjs/utils/Multicall.js.map +1 -1
  271. package/dist/cjs/utils/NetworkUtils.js +12 -21
  272. package/dist/cjs/utils/NetworkUtils.js.map +1 -1
  273. package/dist/cjs/utils/NumberUtils.js +1 -3
  274. package/dist/cjs/utils/NumberUtils.js.map +1 -1
  275. package/dist/cjs/utils/ObjectUtils.js +27 -41
  276. package/dist/cjs/utils/ObjectUtils.js.map +1 -1
  277. package/dist/cjs/utils/Profiler.js +80 -83
  278. package/dist/cjs/utils/Profiler.js.map +1 -1
  279. package/dist/cjs/utils/ReviverUtils.js +5 -9
  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 +41 -64
  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 +12 -22
  291. package/dist/cjs/utils/abi/index.js.map +1 -1
  292. package/dist/cjs/utils/abi/typechain/factories/Multicall3__factory.js +9 -12
  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 +40 -53
  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 +48 -64
  299. package/dist/esm/addressAggregator/adapters/abstract.js.map +1 -1
  300. package/dist/esm/addressAggregator/adapters/bybit.js +15 -29
  301. package/dist/esm/addressAggregator/adapters/bybit.js.map +1 -1
  302. package/dist/esm/addressAggregator/adapters/env.js +9 -14
  303. package/dist/esm/addressAggregator/adapters/env.js.map +1 -1
  304. package/dist/esm/addressAggregator/adapters/file.js +29 -43
  305. package/dist/esm/addressAggregator/adapters/file.js.map +1 -1
  306. package/dist/esm/addressAggregator/adapters/risklabs.js +20 -35
  307. package/dist/esm/addressAggregator/adapters/risklabs.js.map +1 -1
  308. package/dist/esm/addressAggregator/index.js +52 -83
  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 +15 -9
  313. package/dist/esm/apiClient/abstractClient.js.map +1 -1
  314. package/dist/esm/apiClient/mockedClient.js +21 -26
  315. package/dist/esm/apiClient/mockedClient.js.map +1 -1
  316. package/dist/esm/apiClient/productionClient.js +61 -101
  317. package/dist/esm/apiClient/productionClient.js.map +1 -1
  318. package/dist/esm/arch/evm/BlockUtils.js +139 -217
  319. package/dist/esm/arch/evm/BlockUtils.js.map +1 -1
  320. package/dist/esm/arch/evm/SpokeUtils.js +146 -289
  321. package/dist/esm/arch/evm/SpokeUtils.js.map +1 -1
  322. package/dist/esm/arch/evm/utils/wait.js +34 -46
  323. package/dist/esm/arch/evm/utils/wait.js.map +1 -1
  324. package/dist/esm/arch/svm/BlockUtils.js +118 -166
  325. package/dist/esm/arch/svm/BlockUtils.js.map +1 -1
  326. package/dist/esm/arch/svm/SpokeUtils.js +738 -1150
  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 +172 -232
  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 +155 -345
  335. package/dist/esm/arch/svm/utils.js.map +1 -1
  336. package/dist/esm/caching/Arweave/ArweaveClient.js +182 -256
  337. package/dist/esm/caching/Arweave/ArweaveClient.js.map +1 -1
  338. package/dist/esm/caching/IPFS/PinataIPFSClient.js +47 -48
  339. package/dist/esm/caching/IPFS/PinataIPFSClient.js.map +1 -1
  340. package/dist/esm/caching/Memory/MemoryCacheClient.js +13 -19
  341. package/dist/esm/caching/Memory/MemoryCacheClient.js.map +1 -1
  342. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +333 -408
  343. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  344. package/dist/esm/clients/BaseAbstractClient.js +66 -92
  345. package/dist/esm/clients/BaseAbstractClient.js.map +1 -1
  346. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +927 -1054
  347. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  348. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js +102 -131
  349. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  350. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js +57 -59
  351. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  352. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js +7 -5
  353. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -1
  354. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +75 -94
  355. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  356. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js +45 -23
  357. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -1
  358. package/dist/esm/clients/HubPoolClient.js +581 -740
  359. package/dist/esm/clients/HubPoolClient.js.map +1 -1
  360. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +133 -178
  361. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  362. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js +126 -183
  363. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js.map +1 -1
  364. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +372 -399
  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 +53 -64
  373. package/dist/esm/clients/mocks/MockConfigStoreClient.js.map +1 -1
  374. package/dist/esm/clients/mocks/MockEvents.js +42 -49
  375. package/dist/esm/clients/mocks/MockEvents.js.map +1 -1
  376. package/dist/esm/clients/mocks/MockHubPoolClient.js +138 -182
  377. package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
  378. package/dist/esm/clients/mocks/MockSpokePoolClient.js +202 -188
  379. package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
  380. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js +127 -132
  381. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
  382. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js +53 -69
  383. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js.map +1 -1
  384. package/dist/esm/coingecko/Coingecko.js +298 -443
  385. package/dist/esm/coingecko/Coingecko.js.map +1 -1
  386. package/dist/esm/constants.js +40 -46
  387. package/dist/esm/constants.js.map +1 -1
  388. package/dist/esm/contracts/acrossConfigStore.js +24 -46
  389. package/dist/esm/contracts/acrossConfigStore.js.map +1 -1
  390. package/dist/esm/contracts/hubPool.js +34 -18
  391. package/dist/esm/contracts/hubPool.js.map +1 -1
  392. package/dist/esm/contracts/utils.js +3 -5
  393. package/dist/esm/contracts/utils.js.map +1 -1
  394. package/dist/esm/gasPriceOracle/adapters/arbitrum.js +6 -14
  395. package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  396. package/dist/esm/gasPriceOracle/adapters/ethereum.js +22 -42
  397. package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -1
  398. package/dist/esm/gasPriceOracle/adapters/linea-viem.js +13 -25
  399. package/dist/esm/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  400. package/dist/esm/gasPriceOracle/adapters/polygon.js +72 -108
  401. package/dist/esm/gasPriceOracle/adapters/polygon.js.map +1 -1
  402. package/dist/esm/gasPriceOracle/adapters/solana.js +22 -31
  403. package/dist/esm/gasPriceOracle/adapters/solana.js.map +1 -1
  404. package/dist/esm/gasPriceOracle/oracle.js +70 -95
  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 +30 -33
  411. package/dist/esm/lpFeeCalculator/lpFeeCalculator.js.map +1 -1
  412. package/dist/esm/lpFeeCalculator/rateModel.js +7 -9
  413. package/dist/esm/lpFeeCalculator/rateModel.js.map +1 -1
  414. package/dist/esm/merkleDistributor/MerkleDistributor.js +18 -17
  415. package/dist/esm/merkleDistributor/MerkleDistributor.js.map +1 -1
  416. package/dist/esm/pool/TransactionManager.js +45 -100
  417. package/dist/esm/pool/TransactionManager.js.map +1 -1
  418. package/dist/esm/pool/poolClient.js +479 -740
  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 +45 -100
  423. package/dist/esm/pool/uma/across/transactionManager.js.map +1 -1
  424. package/dist/esm/pool/uma/clients/erc20/client.js +15 -13
  425. package/dist/esm/pool/uma/clients/erc20/client.js.map +1 -1
  426. package/dist/esm/pool/uma/oracle/utils.js +2 -3
  427. package/dist/esm/pool/uma/oracle/utils.js.map +1 -1
  428. package/dist/esm/pool/uma/utils.js +9 -28
  429. package/dist/esm/pool/uma/utils.js.map +1 -1
  430. package/dist/esm/priceClient/adapters/acrossApi.js +21 -40
  431. package/dist/esm/priceClient/adapters/acrossApi.js.map +1 -1
  432. package/dist/esm/priceClient/adapters/baseAdapter.js +46 -72
  433. package/dist/esm/priceClient/adapters/baseAdapter.js.map +1 -1
  434. package/dist/esm/priceClient/adapters/coingecko.js +33 -61
  435. package/dist/esm/priceClient/adapters/coingecko.js.map +1 -1
  436. package/dist/esm/priceClient/adapters/default.js +15 -31
  437. package/dist/esm/priceClient/adapters/default.js.map +1 -1
  438. package/dist/esm/priceClient/adapters/defiLlama.js +38 -73
  439. package/dist/esm/priceClient/adapters/defiLlama.js.map +1 -1
  440. package/dist/esm/priceClient/priceClient.js +109 -158
  441. package/dist/esm/priceClient/priceClient.js.map +1 -1
  442. package/dist/esm/providers/alchemy.js +16 -18
  443. package/dist/esm/providers/alchemy.js.map +1 -1
  444. package/dist/esm/providers/cachedProvider.js +99 -134
  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 +8 -10
  449. package/dist/esm/providers/drpc.js.map +1 -1
  450. package/dist/esm/providers/infura.js +9 -11
  451. package/dist/esm/providers/infura.js.map +1 -1
  452. package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.js +6 -15
  453. package/dist/esm/providers/mocks/MockCachedSolanaRpcFactory.js.map +1 -1
  454. package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.js +5 -14
  455. package/dist/esm/providers/mocks/MockRateLimitedSolanaRpcFactory.js.map +1 -1
  456. package/dist/esm/providers/mocks/MockRetrySolanaRpcFactory.js +6 -15
  457. package/dist/esm/providers/mocks/MockRetrySolanaRpcFactory.js.map +1 -1
  458. package/dist/esm/providers/mocks/MockSolanaRpcFactory.js +41 -66
  459. package/dist/esm/providers/mocks/MockSolanaRpcFactory.js.map +1 -1
  460. package/dist/esm/providers/mocks/mockEthersProvider.js +27 -30
  461. package/dist/esm/providers/mocks/mockEthersProvider.js.map +1 -1
  462. package/dist/esm/providers/quicknode.js +18 -20
  463. package/dist/esm/providers/quicknode.js.map +1 -1
  464. package/dist/esm/providers/rateLimitedProvider.js +68 -80
  465. package/dist/esm/providers/rateLimitedProvider.js.map +1 -1
  466. package/dist/esm/providers/retryProvider.js +186 -259
  467. package/dist/esm/providers/retryProvider.js.map +1 -1
  468. package/dist/esm/providers/solana/baseRpcFactories.js +13 -19
  469. package/dist/esm/providers/solana/baseRpcFactories.js.map +1 -1
  470. package/dist/esm/providers/solana/cachedRpcFactory.js +75 -112
  471. package/dist/esm/providers/solana/cachedRpcFactory.js.map +1 -1
  472. package/dist/esm/providers/solana/defaultRpcFactory.js +6 -14
  473. package/dist/esm/providers/solana/defaultRpcFactory.js.map +1 -1
  474. package/dist/esm/providers/solana/quorumFallbackRpcFactory.js +149 -202
  475. package/dist/esm/providers/solana/quorumFallbackRpcFactory.js.map +1 -1
  476. package/dist/esm/providers/solana/rateLimitedRpcFactory.js +70 -90
  477. package/dist/esm/providers/solana/rateLimitedRpcFactory.js.map +1 -1
  478. package/dist/esm/providers/solana/retryRpcFactory.js +50 -74
  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 +28 -51
  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 +17 -20
  487. package/dist/esm/providers/utils.js.map +1 -1
  488. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +98 -152
  489. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  490. package/dist/esm/relayFeeCalculator/chain-queries/customGasToken.js +13 -26
  491. package/dist/esm/relayFeeCalculator/chain-queries/customGasToken.js.map +1 -1
  492. package/dist/esm/relayFeeCalculator/chain-queries/factory.js +9 -19
  493. package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  494. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +83 -128
  495. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
  496. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +211 -299
  497. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  498. package/dist/esm/typeguards/error.js +3 -5
  499. package/dist/esm/typeguards/error.js.map +1 -1
  500. package/dist/esm/utils/AddressUtils.js +115 -147
  501. package/dist/esm/utils/AddressUtils.js.map +1 -1
  502. package/dist/esm/utils/ArrayUtils.js +21 -78
  503. package/dist/esm/utils/ArrayUtils.js.map +1 -1
  504. package/dist/esm/utils/BigNumberUtils.js +11 -12
  505. package/dist/esm/utils/BigNumberUtils.js.map +1 -1
  506. package/dist/esm/utils/BlockExplorerUtils.js +19 -23
  507. package/dist/esm/utils/BlockExplorerUtils.js.map +1 -1
  508. package/dist/esm/utils/BlockFinder.js +2 -6
  509. package/dist/esm/utils/BlockFinder.js.map +1 -1
  510. package/dist/esm/utils/BlockUtils.js +31 -40
  511. package/dist/esm/utils/BlockUtils.js.map +1 -1
  512. package/dist/esm/utils/BundleUtils.js +21 -24
  513. package/dist/esm/utils/BundleUtils.js.map +1 -1
  514. package/dist/esm/utils/CCTPUtils.js +62 -123
  515. package/dist/esm/utils/CCTPUtils.js.map +1 -1
  516. package/dist/esm/utils/CachingUtils.js +17 -38
  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 +121 -98
  521. package/dist/esm/utils/DepositUtils.js.map +1 -1
  522. package/dist/esm/utils/EventUtils.js +52 -69
  523. package/dist/esm/utils/EventUtils.js.map +1 -1
  524. package/dist/esm/utils/FormattingUtils.js +20 -26
  525. package/dist/esm/utils/FormattingUtils.js.map +1 -1
  526. package/dist/esm/utils/HyperLiquidUtils.js +8 -22
  527. package/dist/esm/utils/HyperLiquidUtils.js.map +1 -1
  528. package/dist/esm/utils/IPFSUtils.js +16 -35
  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 +8 -12
  533. package/dist/esm/utils/LogUtils.js.map +1 -1
  534. package/dist/esm/utils/Multicall.js +50 -109
  535. package/dist/esm/utils/Multicall.js.map +1 -1
  536. package/dist/esm/utils/NetworkUtils.js +12 -21
  537. package/dist/esm/utils/NetworkUtils.js.map +1 -1
  538. package/dist/esm/utils/NumberUtils.js +1 -3
  539. package/dist/esm/utils/NumberUtils.js.map +1 -1
  540. package/dist/esm/utils/ObjectUtils.js +27 -41
  541. package/dist/esm/utils/ObjectUtils.js.map +1 -1
  542. package/dist/esm/utils/Profiler.js +77 -82
  543. package/dist/esm/utils/Profiler.js.map +1 -1
  544. package/dist/esm/utils/ReviverUtils.js +3 -7
  545. package/dist/esm/utils/ReviverUtils.js.map +1 -1
  546. package/dist/esm/utils/SpokeUtils.js +83 -78
  547. package/dist/esm/utils/SpokeUtils.js.map +1 -1
  548. package/dist/esm/utils/TokenUtils.js +33 -57
  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 +10 -20
  553. package/dist/esm/utils/abi/index.js.map +1 -1
  554. package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js +8 -12
  555. package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js.map +1 -1
  556. package/dist/esm/utils/common.js +38 -52
  557. package/dist/esm/utils/common.js.map +1 -1
  558. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BundleDataClient.js","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { __assign, __awaiter, __generator } from "tslib";
2
1
  // Create a combined `refunds` object containing refunds for V2 + V3 fills
3
2
  import assert from "assert";
4
3
  import { bnZero, fixedPointAdjustment, count2DDictionaryValues, count3DDictionaryValues, toAddressType, getImpliedBundleBlockRanges, isDefined, EvmAddress, } from "../../../utils";
@@ -6,43 +5,39 @@ import { addLastRunningBalance, constructPoolRebalanceLeaves, updateRunningBalan
6
5
  import { buildPoolRebalanceLeafTree } from "./MerkleTreeUtils";
7
6
  // and expired deposits.
8
7
  export function getRefundsFromBundle(bundleFillsV3, expiredDepositsToRefundV3) {
9
- var combinedRefunds = {};
10
- Object.entries(bundleFillsV3).forEach(function (_a) {
11
- var _b;
12
- var repaymentChainId = _a[0], fillsForChain = _a[1];
13
- (_b = combinedRefunds[repaymentChainId]) !== null && _b !== void 0 ? _b : (combinedRefunds[repaymentChainId] = {});
14
- Object.entries(fillsForChain).forEach(function (_a) {
15
- var l2TokenAddress = _a[0], refunds = _a[1].refunds;
8
+ const combinedRefunds = {};
9
+ Object.entries(bundleFillsV3).forEach(([repaymentChainId, fillsForChain]) => {
10
+ combinedRefunds[repaymentChainId] ??= {};
11
+ Object.entries(fillsForChain).forEach(([l2TokenAddress, { refunds }]) => {
16
12
  // refunds can be undefined if these fills were all slow fill executions.
17
13
  if (refunds === undefined) {
18
14
  return;
19
15
  }
20
16
  // @dev use shallow copy so that modifying combinedRefunds doesn't modify the original refunds object.
21
- var refundsShallowCopy = __assign({}, refunds);
17
+ const refundsShallowCopy = { ...refunds };
22
18
  if (combinedRefunds[repaymentChainId][l2TokenAddress] === undefined) {
23
19
  combinedRefunds[repaymentChainId][l2TokenAddress] = refundsShallowCopy;
24
20
  }
25
21
  else {
26
22
  // Each refunds object should have a unique refund address so we can add new ones to the
27
23
  // existing dictionary.
28
- combinedRefunds[repaymentChainId][l2TokenAddress] = __assign(__assign({}, combinedRefunds[repaymentChainId][l2TokenAddress]), refundsShallowCopy);
24
+ combinedRefunds[repaymentChainId][l2TokenAddress] = {
25
+ ...combinedRefunds[repaymentChainId][l2TokenAddress],
26
+ ...refundsShallowCopy,
27
+ };
29
28
  }
30
29
  });
31
30
  });
32
- Object.entries(expiredDepositsToRefundV3).forEach(function (_a) {
33
- var _b;
34
- var originChainId = _a[0], depositsForChain = _a[1];
35
- (_b = combinedRefunds[originChainId]) !== null && _b !== void 0 ? _b : (combinedRefunds[originChainId] = {});
36
- Object.entries(depositsForChain).forEach(function (_a) {
37
- var l2TokenAddress = _a[0], deposits = _a[1];
38
- deposits.forEach(function (deposit) {
39
- var _a;
31
+ Object.entries(expiredDepositsToRefundV3).forEach(([originChainId, depositsForChain]) => {
32
+ combinedRefunds[originChainId] ??= {};
33
+ Object.entries(depositsForChain).forEach(([l2TokenAddress, deposits]) => {
34
+ deposits.forEach((deposit) => {
40
35
  if (combinedRefunds[originChainId][l2TokenAddress] === undefined) {
41
- combinedRefunds[originChainId][l2TokenAddress] = (_a = {}, _a[deposit.depositor.toBytes32()] = deposit.inputAmount, _a);
36
+ combinedRefunds[originChainId][l2TokenAddress] = { [deposit.depositor.toBytes32()]: deposit.inputAmount };
42
37
  }
43
38
  else {
44
- var existingRefundAmount = combinedRefunds[originChainId][l2TokenAddress][deposit.depositor.toBytes32()];
45
- combinedRefunds[originChainId][l2TokenAddress][deposit.depositor.toBytes32()] = deposit.inputAmount.add(existingRefundAmount !== null && existingRefundAmount !== void 0 ? existingRefundAmount : bnZero);
39
+ const existingRefundAmount = combinedRefunds[originChainId][l2TokenAddress][deposit.depositor.toBytes32()];
40
+ combinedRefunds[originChainId][l2TokenAddress][deposit.depositor.toBytes32()] = deposit.inputAmount.add(existingRefundAmount ?? bnZero);
46
41
  }
47
42
  });
48
43
  });
@@ -71,7 +66,7 @@ export function getEndBlockBuffers(chainIdListForBundleEvaluationBlockNumbers, b
71
66
  // Reducing the latest block that we query also gives partially filled deposits slightly more buffer for relayers
72
67
  // to fully fill the deposit and reduces the chance that the data worker includes a slow fill payment that gets
73
68
  // filled during the challenge period.
74
- return chainIdListForBundleEvaluationBlockNumbers.map(function (chainId) { var _a; return (_a = blockRangeEndBlockBuffer[chainId]) !== null && _a !== void 0 ? _a : 0; });
69
+ return chainIdListForBundleEvaluationBlockNumbers.map((chainId) => blockRangeEndBlockBuffer[chainId] ?? 0);
75
70
  }
76
71
  /*
77
72
  * @notice Constructs a new pool rebalance root given the input bundle data.
@@ -88,21 +83,15 @@ export function getEndBlockBuffers(chainIdListForBundleEvaluationBlockNumbers, b
88
83
  * @param clients Clients required to construct a new pool rebalance root.
89
84
  * @maxL1TokenCountOverride Optional parameter to cap the number of tokens in a single pool rebalance leaf.
90
85
  */
91
- export function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients, maxL1TokenCountOverride) {
92
- return __awaiter(this, void 0, void 0, function () {
93
- return __generator(this, function (_a) {
94
- switch (_a.label) {
95
- case 0:
96
- if (!(clients.hubPoolClient.hasPendingProposal() &&
97
- clients.hubPoolClient.getPendingRootBundle().bundleEvaluationBlockNumbers[0] < mainnetBundleEndBlock)) return [3 /*break*/, 2];
98
- return [4 /*yield*/, _buildOptimisticPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients, maxL1TokenCountOverride)];
99
- case 1: return [2 /*return*/, _a.sent()];
100
- case 2:
101
- // Otherwise, we can synchronously reconstruct a historical pool rebalance root from the input data.
102
- return [2 /*return*/, _buildHistoricalPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients, maxL1TokenCountOverride)];
103
- }
104
- });
105
- });
86
+ export async function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients, maxL1TokenCountOverride) {
87
+ // If there is a pending proposal and the mainnet bundle end block is greater than the pending proposal's mainnet end block, then this pool rebalance root is being built during the liveness
88
+ // of a different root bundle, so running balance calculations will be slightly different.
89
+ if (clients.hubPoolClient.hasPendingProposal() &&
90
+ clients.hubPoolClient.getPendingRootBundle().bundleEvaluationBlockNumbers[0] < mainnetBundleEndBlock) {
91
+ return await _buildOptimisticPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients, maxL1TokenCountOverride);
92
+ }
93
+ // Otherwise, we can synchronously reconstruct a historical pool rebalance root from the input data.
94
+ return _buildHistoricalPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients, maxL1TokenCountOverride);
106
95
  }
107
96
  /*
108
97
  * @notice Constructs a new pool rebalance root given historical bundle data.
@@ -117,13 +106,13 @@ export function _buildPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBloc
117
106
  * @maxL1TokenCountOverride Optional parameter to cap the number of tokens in a single pool rebalance leaf.
118
107
  */
119
108
  export function _buildHistoricalPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients, maxL1TokenCountOverride) {
120
- var _a = _getMarginalRunningBalances(mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients), runningBalances = _a.runningBalances, realizedLpFees = _a.realizedLpFees, chainWithRefundsOnly = _a.chainWithRefundsOnly;
109
+ const { runningBalances, realizedLpFees, chainWithRefundsOnly } = _getMarginalRunningBalances(mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients);
121
110
  addLastRunningBalance(latestMainnetBlock, runningBalances, clients.hubPoolClient);
122
- var leaves = constructPoolRebalanceLeaves(mainnetBundleEndBlock, runningBalances, realizedLpFees, Array.from(chainWithRefundsOnly).filter(function (chainId) { return !Object.keys(runningBalances).includes(chainId.toString()); }), clients.configStoreClient, maxL1TokenCountOverride);
111
+ const leaves = constructPoolRebalanceLeaves(mainnetBundleEndBlock, runningBalances, realizedLpFees, Array.from(chainWithRefundsOnly).filter((chainId) => !Object.keys(runningBalances).includes(chainId.toString())), clients.configStoreClient, maxL1TokenCountOverride);
123
112
  return {
124
- runningBalances: runningBalances,
125
- realizedLpFees: realizedLpFees,
126
- leaves: leaves,
113
+ runningBalances,
114
+ realizedLpFees,
115
+ leaves,
127
116
  tree: buildPoolRebalanceLeafTree(leaves),
128
117
  };
129
118
  }
@@ -139,58 +128,50 @@ export function _buildHistoricalPoolRebalanceRoot(latestMainnetBlock, mainnetBun
139
128
  * @param clients Clients required to construct a new pool rebalance root.
140
129
  * @maxL1TokenCountOverride Optional parameter to cap the number of tokens in a single pool rebalance leaf.
141
130
  */
142
- export function _buildOptimisticPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients, maxL1TokenCountOverride) {
143
- return __awaiter(this, void 0, void 0, function () {
144
- var _a, runningBalances, realizedLpFees, chainWithRefundsOnly, mostRecentProposedRootBundle, blockRangesForChains, pendingRootBundleData, _b, leaves, tree, poolRebalanceLeaves;
145
- return __generator(this, function (_c) {
146
- switch (_c.label) {
147
- case 0:
148
- _a = _getMarginalRunningBalances(mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients), runningBalances = _a.runningBalances, realizedLpFees = _a.realizedLpFees, chainWithRefundsOnly = _a.chainWithRefundsOnly;
149
- mostRecentProposedRootBundle = clients.hubPoolClient.getLatestProposedRootBundle();
150
- blockRangesForChains = getImpliedBundleBlockRanges(clients.hubPoolClient, clients.configStoreClient, mostRecentProposedRootBundle);
151
- return [4 /*yield*/, clients.bundleDataClient.loadData(blockRangesForChains, clients.spokePoolClients, true)];
152
- case 1:
153
- pendingRootBundleData = _c.sent();
154
- _b = _buildHistoricalPoolRebalanceRoot(latestMainnetBlock, blockRangesForChains[0][1], pendingRootBundleData.bundleDepositsV3, pendingRootBundleData.bundleFillsV3, pendingRootBundleData.bundleSlowFillsV3, pendingRootBundleData.unexecutableSlowFills, pendingRootBundleData.expiredDepositsToRefundV3, clients, maxL1TokenCountOverride), leaves = _b.leaves, tree = _b.tree;
155
- // Assert that the rebuilt pool rebalance root matches the pending root bundle's value. If it does not, then we likely misconstructed the pending root bundle and should throw.
156
- assert(tree.getHexRoot() === mostRecentProposedRootBundle.poolRebalanceRoot);
157
- // Only add marginal pending running balances if there is already an entry in `runningBalances`. If there is no entry in `runningBalances`, then
158
- // The running balance for this entry was unchanged since the last root bundle.
159
- Object.keys(runningBalances).forEach(function (_repaymentChainId) {
160
- Object.keys(runningBalances[Number(_repaymentChainId)]).forEach(function (_l1TokenAddress) {
161
- var repaymentChainId = Number(_repaymentChainId);
162
- var l1TokenAddress = EvmAddress.from(_l1TokenAddress);
163
- var pendingPoolRebalanceLeaf = leaves.find(function (leaf) { return leaf.chainId === repaymentChainId && leaf.l1Tokens.some(function (l1Token) { return l1Token.eq(l1TokenAddress); }); });
164
- // If the pending pool rebalance root has running balances defined, then add it to `runningBalances`.
165
- if (isDefined(pendingPoolRebalanceLeaf)) {
166
- var pendingLeafTokenIdx = pendingPoolRebalanceLeaf.l1Tokens.findIndex(function (l1Token) {
167
- return l1Token.eq(l1TokenAddress);
168
- });
169
- assert(pendingLeafTokenIdx !== -1);
170
- var pendingRunningBalanceAmount = pendingPoolRebalanceLeaf.runningBalances[pendingLeafTokenIdx];
171
- if (!pendingRunningBalanceAmount.eq(bnZero)) {
172
- updateRunningBalance(runningBalances, repaymentChainId, _l1TokenAddress, pendingRunningBalanceAmount);
173
- }
174
- }
175
- else {
176
- // Otherwise, add the last running balance for this token.
177
- var lastExecutedBundleRunningBalance = clients.hubPoolClient.getRunningBalanceBeforeBlockForChain(latestMainnetBlock, repaymentChainId, l1TokenAddress).runningBalance;
178
- if (!lastExecutedBundleRunningBalance.eq(bnZero)) {
179
- updateRunningBalance(runningBalances, repaymentChainId, _l1TokenAddress, lastExecutedBundleRunningBalance);
180
- }
181
- }
182
- });
183
- });
184
- poolRebalanceLeaves = constructPoolRebalanceLeaves(mainnetBundleEndBlock, runningBalances, realizedLpFees, Array.from(chainWithRefundsOnly).filter(function (chainId) { return !Object.keys(runningBalances).includes(chainId.toString()); }), clients.configStoreClient, maxL1TokenCountOverride);
185
- return [2 /*return*/, {
186
- runningBalances: runningBalances,
187
- realizedLpFees: realizedLpFees,
188
- leaves: poolRebalanceLeaves,
189
- tree: buildPoolRebalanceLeafTree(poolRebalanceLeaves),
190
- }];
131
+ export async function _buildOptimisticPoolRebalanceRoot(latestMainnetBlock, mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients, maxL1TokenCountOverride) {
132
+ const { runningBalances, realizedLpFees, chainWithRefundsOnly } = _getMarginalRunningBalances(mainnetBundleEndBlock, bundleV3Deposits, bundleFillsV3, bundleSlowFillsV3, unexecutableSlowFills, expiredDepositsToRefundV3, clients);
133
+ // Get the pool rebalance root for the pending bundle so that we may account for its calculated running balances.
134
+ // @dev It is safe to index the hub pool client's proposed root bundles here since there is guaranteed to be a pending proposal in this code block.
135
+ const mostRecentProposedRootBundle = clients.hubPoolClient.getLatestProposedRootBundle();
136
+ const blockRangesForChains = getImpliedBundleBlockRanges(clients.hubPoolClient, clients.configStoreClient, mostRecentProposedRootBundle);
137
+ // We are loading data from a pending root bundle which should be well into liveness, so we want to use arweave if possible.
138
+ const pendingRootBundleData = await clients.bundleDataClient.loadData(blockRangesForChains, clients.spokePoolClients, true);
139
+ // Build the pool rebalance root for the pending root bundle.
140
+ const { leaves, tree } = _buildHistoricalPoolRebalanceRoot(latestMainnetBlock, blockRangesForChains[0][1], pendingRootBundleData.bundleDepositsV3, pendingRootBundleData.bundleFillsV3, pendingRootBundleData.bundleSlowFillsV3, pendingRootBundleData.unexecutableSlowFills, pendingRootBundleData.expiredDepositsToRefundV3, clients, maxL1TokenCountOverride);
141
+ // Assert that the rebuilt pool rebalance root matches the pending root bundle's value. If it does not, then we likely misconstructed the pending root bundle and should throw.
142
+ assert(tree.getHexRoot() === mostRecentProposedRootBundle.poolRebalanceRoot);
143
+ // Only add marginal pending running balances if there is already an entry in `runningBalances`. If there is no entry in `runningBalances`, then
144
+ // The running balance for this entry was unchanged since the last root bundle.
145
+ Object.keys(runningBalances).forEach((_repaymentChainId) => {
146
+ Object.keys(runningBalances[Number(_repaymentChainId)]).forEach((_l1TokenAddress) => {
147
+ const repaymentChainId = Number(_repaymentChainId);
148
+ const l1TokenAddress = EvmAddress.from(_l1TokenAddress);
149
+ const pendingPoolRebalanceLeaf = leaves.find((leaf) => leaf.chainId === repaymentChainId && leaf.l1Tokens.some((l1Token) => l1Token.eq(l1TokenAddress)));
150
+ // If the pending pool rebalance root has running balances defined, then add it to `runningBalances`.
151
+ if (isDefined(pendingPoolRebalanceLeaf)) {
152
+ const pendingLeafTokenIdx = pendingPoolRebalanceLeaf.l1Tokens.findIndex((l1Token) => l1Token.eq(l1TokenAddress));
153
+ assert(pendingLeafTokenIdx !== -1);
154
+ const pendingRunningBalanceAmount = pendingPoolRebalanceLeaf.runningBalances[pendingLeafTokenIdx];
155
+ if (!pendingRunningBalanceAmount.eq(bnZero)) {
156
+ updateRunningBalance(runningBalances, repaymentChainId, _l1TokenAddress, pendingRunningBalanceAmount);
157
+ }
158
+ }
159
+ else {
160
+ // Otherwise, add the last running balance for this token.
161
+ const { runningBalance: lastExecutedBundleRunningBalance } = clients.hubPoolClient.getRunningBalanceBeforeBlockForChain(latestMainnetBlock, repaymentChainId, l1TokenAddress);
162
+ if (!lastExecutedBundleRunningBalance.eq(bnZero)) {
163
+ updateRunningBalance(runningBalances, repaymentChainId, _l1TokenAddress, lastExecutedBundleRunningBalance);
164
+ }
191
165
  }
192
166
  });
193
167
  });
168
+ const poolRebalanceLeaves = constructPoolRebalanceLeaves(mainnetBundleEndBlock, runningBalances, realizedLpFees, Array.from(chainWithRefundsOnly).filter((chainId) => !Object.keys(runningBalances).includes(chainId.toString())), clients.configStoreClient, maxL1TokenCountOverride);
169
+ return {
170
+ runningBalances,
171
+ realizedLpFees,
172
+ leaves: poolRebalanceLeaves,
173
+ tree: buildPoolRebalanceLeafTree(poolRebalanceLeaves),
174
+ };
194
175
  }
195
176
  /*
196
177
  * @notice Gets the running balance amounts derived from the input bundle data.
@@ -210,31 +191,29 @@ export function _getMarginalRunningBalances(mainnetBundleEndBlock, bundleV3Depos
210
191
  // to LP's for each running balance.
211
192
  // For each FilledV3Relay group, identified by { repaymentChainId, L1TokenAddress }, initialize a "running balance"
212
193
  // to the total refund amount for that group.
213
- var runningBalances = {};
214
- var realizedLpFees = {};
194
+ const runningBalances = {};
195
+ const realizedLpFees = {};
215
196
  // Keep track of any chains that we want to create a PoolRebalanceLeaf (and send a root bundle to) but don't have
216
197
  // any running balances.
217
- var chainWithRefundsOnly = new Set();
198
+ const chainWithRefundsOnly = new Set();
218
199
  /**
219
200
  * REFUNDS FOR FAST FILLS
220
201
  */
221
202
  // Add running balances and lp fees for v3 relayer refunds using BundleDataClient.bundleFillsV3. Refunds
222
203
  // should be equal to inputAmount - lpFees so that relayers get to keep the relayer fee. Add the refund amount
223
204
  // to the running balance for the repayment chain.
224
- Object.entries(bundleFillsV3).forEach(function (_a) {
225
- var _repaymentChainId = _a[0], fillsForChain = _a[1];
226
- var repaymentChainId = Number(_repaymentChainId);
227
- Object.entries(fillsForChain).forEach(function (_a) {
228
- var l2TokenAddress = _a[0], _b = _a[1], totalRealizedLpFee = _b.realizedLpFees, totalRefundAmount = _b.totalRefundAmount;
205
+ Object.entries(bundleFillsV3).forEach(([_repaymentChainId, fillsForChain]) => {
206
+ const repaymentChainId = Number(_repaymentChainId);
207
+ Object.entries(fillsForChain).forEach(([l2TokenAddress, { realizedLpFees: totalRealizedLpFee, totalRefundAmount }]) => {
229
208
  // If the repayment token and repayment chain ID do not map to a PoolRebalanceRoute graph, then
230
209
  // there are no relevant L1 running balances.
231
- var l1Token = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(l2TokenAddress, repaymentChainId), repaymentChainId, mainnetBundleEndBlock);
210
+ const l1Token = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(l2TokenAddress, repaymentChainId), repaymentChainId, mainnetBundleEndBlock);
232
211
  if (!l1Token) {
233
212
  chainWithRefundsOnly.add(repaymentChainId);
234
213
  return;
235
214
  }
236
- var l1TokenAddr = l1Token.toNative();
237
- assert(l1Token.isEVM(), "Expected an EVM address: ".concat(l1TokenAddr));
215
+ const l1TokenAddr = l1Token.toNative();
216
+ assert(l1Token.isEVM(), `Expected an EVM address: ${l1TokenAddr}`);
238
217
  updateRunningBalance(runningBalances, repaymentChainId, l1TokenAddr, totalRefundAmount);
239
218
  updateRunningBalance(realizedLpFees, repaymentChainId, l1TokenAddr, totalRealizedLpFee);
240
219
  });
@@ -245,15 +224,13 @@ export function _getMarginalRunningBalances(mainnetBundleEndBlock, bundleV3Depos
245
224
  // Add running balances and lp fees for v3 slow fills using BundleDataClient.bundleSlowFillsV3.
246
225
  // Slow fills should still increment bundleLpFees and updatedOutputAmount should be equal to inputAmount - lpFees.
247
226
  // Increment the updatedOutputAmount to the destination chain.
248
- Object.entries(bundleSlowFillsV3).forEach(function (_a) {
249
- var _destinationChainId = _a[0], depositsForChain = _a[1];
250
- var destinationChainId = Number(_destinationChainId);
251
- Object.entries(depositsForChain).forEach(function (_a) {
252
- var outputToken = _a[0], deposits = _a[1];
253
- deposits.forEach(function (deposit) {
254
- var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(outputToken, destinationChainId), destinationChainId, mainnetBundleEndBlock);
227
+ Object.entries(bundleSlowFillsV3).forEach(([_destinationChainId, depositsForChain]) => {
228
+ const destinationChainId = Number(_destinationChainId);
229
+ Object.entries(depositsForChain).forEach(([outputToken, deposits]) => {
230
+ deposits.forEach((deposit) => {
231
+ const l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(outputToken, destinationChainId), destinationChainId, mainnetBundleEndBlock);
255
232
  assert(isDefined(l1TokenCounterpart), "getRefundInformationFromFill: l1TokenCounterpart is undefined");
256
- var lpFee = deposit.lpFeePct.mul(deposit.inputAmount).div(fixedPointAdjustment);
233
+ const lpFee = deposit.lpFeePct.mul(deposit.inputAmount).div(fixedPointAdjustment);
257
234
  updateRunningBalance(runningBalances, destinationChainId, l1TokenCounterpart.toEvmAddress(), deposit.inputAmount.sub(lpFee));
258
235
  // Slow fill LP fees are accounted for when the slow fill executes and a V3FilledRelay is emitted. i.e. when
259
236
  // the slow fill execution is included in bundleFillsV3.
@@ -266,15 +243,13 @@ export function _getMarginalRunningBalances(mainnetBundleEndBlock, bundleV3Depos
266
243
  // Subtract destination chain running balances for BundleDataClient.unexecutableSlowFills.
267
244
  // These are all slow fills that are impossible to execute and therefore the amount to return would be
268
245
  // the updatedOutputAmount = inputAmount - lpFees.
269
- Object.entries(unexecutableSlowFills).forEach(function (_a) {
270
- var _destinationChainId = _a[0], slowFilledDepositsForChain = _a[1];
271
- var destinationChainId = Number(_destinationChainId);
272
- Object.entries(slowFilledDepositsForChain).forEach(function (_a) {
273
- var outputToken = _a[0], slowFilledDeposits = _a[1];
274
- slowFilledDeposits.forEach(function (deposit) {
275
- var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(outputToken, destinationChainId), destinationChainId, mainnetBundleEndBlock);
246
+ Object.entries(unexecutableSlowFills).forEach(([_destinationChainId, slowFilledDepositsForChain]) => {
247
+ const destinationChainId = Number(_destinationChainId);
248
+ Object.entries(slowFilledDepositsForChain).forEach(([outputToken, slowFilledDeposits]) => {
249
+ slowFilledDeposits.forEach((deposit) => {
250
+ const l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(outputToken, destinationChainId), destinationChainId, mainnetBundleEndBlock);
276
251
  assert(isDefined(l1TokenCounterpart), "getRefundInformationFromFill: l1TokenCounterpart is undefined");
277
- var lpFee = deposit.lpFeePct.mul(deposit.inputAmount).div(fixedPointAdjustment);
252
+ const lpFee = deposit.lpFeePct.mul(deposit.inputAmount).div(fixedPointAdjustment);
278
253
  updateRunningBalance(runningBalances, destinationChainId, l1TokenCounterpart.toEvmAddress(), lpFee.sub(deposit.inputAmount));
279
254
  // Slow fills don't add to lpFees, only when the slow fill is executed and a V3FilledRelay is emitted, so
280
255
  // we don't need to subtract it here. Moreover, the HubPoole expects bundleLpFees to be > 0.
@@ -286,11 +261,9 @@ export function _getMarginalRunningBalances(mainnetBundleEndBlock, bundleV3Depos
286
261
  */
287
262
  // Handle v3Deposits. These decrement running balances from the origin chain equal to the inputAmount.
288
263
  // There should not be early deposits in v3.
289
- Object.entries(bundleV3Deposits).forEach(function (_a) {
290
- var depositsForChain = _a[1];
291
- Object.entries(depositsForChain).forEach(function (_a) {
292
- var deposits = _a[1];
293
- deposits.forEach(function (deposit) {
264
+ Object.entries(bundleV3Deposits).forEach(([, depositsForChain]) => {
265
+ Object.entries(depositsForChain).forEach(([, deposits]) => {
266
+ deposits.forEach((deposit) => {
294
267
  // If the repayment token and repayment chain ID do not map to a PoolRebalanceRoute graph, then
295
268
  // there are no relevant L1 running balances.
296
269
  if (!clients.hubPoolClient.l2TokenHasPoolRebalanceRoute(deposit.inputToken, deposit.originChainId, mainnetBundleEndBlock)) {
@@ -304,15 +277,13 @@ export function _getMarginalRunningBalances(mainnetBundleEndBlock, bundleV3Depos
304
277
  * REFUNDS FOR EXPIRED DEPOSITS
305
278
  */
306
279
  // Add origin chain running balance for expired v3 deposits. These should refund the inputAmount.
307
- Object.entries(expiredDepositsToRefundV3).forEach(function (_a) {
308
- var _originChainId = _a[0], depositsForChain = _a[1];
309
- var originChainId = Number(_originChainId);
310
- Object.entries(depositsForChain).forEach(function (_a) {
311
- var inputToken = _a[0], deposits = _a[1];
312
- deposits.forEach(function (deposit) {
280
+ Object.entries(expiredDepositsToRefundV3).forEach(([_originChainId, depositsForChain]) => {
281
+ const originChainId = Number(_originChainId);
282
+ Object.entries(depositsForChain).forEach(([inputToken, deposits]) => {
283
+ deposits.forEach((deposit) => {
313
284
  // If the repayment token and repayment chain ID do not map to a PoolRebalanceRoute graph, then
314
285
  // there are no relevant L1 running balances.
315
- var l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(inputToken, originChainId), originChainId, mainnetBundleEndBlock);
286
+ const l1TokenCounterpart = clients.hubPoolClient.getL1TokenForL2TokenAtBlock(toAddressType(inputToken, originChainId), originChainId, mainnetBundleEndBlock);
316
287
  if (!l1TokenCounterpart) {
317
288
  chainWithRefundsOnly.add(deposit.originChainId);
318
289
  return;
@@ -321,6 +292,6 @@ export function _getMarginalRunningBalances(mainnetBundleEndBlock, bundleV3Depos
321
292
  });
322
293
  });
323
294
  });
324
- return { runningBalances: runningBalances, chainWithRefundsOnly: chainWithRefundsOnly, realizedLpFees: realizedLpFees };
295
+ return { runningBalances, chainWithRefundsOnly, realizedLpFees };
325
296
  }
326
297
  //# sourceMappingURL=DataworkerUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataworkerUtils.js","sourceRoot":"","sources":["../../../../../src/clients/BundleDataClient/utils/DataworkerUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataworkerUtils.js","sourceRoot":"","sources":["../../../../../src/clients/BundleDataClient/utils/DataworkerUtils.ts"],"names":[],"mappings":"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"}