@across-protocol/sdk 4.2.16-alpha.6 → 4.2.16

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 (234) hide show
  1. package/dist/cjs/arch/evm/SpokeUtils.d.ts +3 -8
  2. package/dist/cjs/arch/evm/SpokeUtils.js +11 -26
  3. package/dist/cjs/arch/evm/SpokeUtils.js.map +1 -1
  4. package/dist/cjs/arch/svm/SpokeUtils.d.ts +2 -8
  5. package/dist/cjs/arch/svm/SpokeUtils.js +50 -41
  6. package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
  7. package/dist/cjs/arch/svm/eventsClient.js +2 -4
  8. package/dist/cjs/arch/svm/eventsClient.js.map +1 -1
  9. package/dist/cjs/arch/svm/utils.d.ts +3 -3
  10. package/dist/cjs/arch/svm/utils.js +14 -16
  11. package/dist/cjs/arch/svm/utils.js.map +1 -1
  12. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +3 -3
  13. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +2 -4
  14. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  15. package/dist/cjs/clients/BundleDataClient/BundleDataClient.d.ts +6 -7
  16. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +83 -78
  17. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  18. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js +13 -13
  19. package/dist/cjs/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  20. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.d.ts +1 -2
  21. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js +2 -3
  22. package/dist/cjs/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  23. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js +1 -5
  24. package/dist/cjs/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -1
  25. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +3 -3
  26. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  27. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +71 -71
  28. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js +8 -13
  29. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -1
  30. package/dist/cjs/clients/HubPoolClient.d.ts +21 -21
  31. package/dist/cjs/clients/HubPoolClient.js +58 -84
  32. package/dist/cjs/clients/HubPoolClient.js.map +1 -1
  33. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +1 -1
  34. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  35. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.d.ts +2 -2
  36. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +45 -65
  37. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  38. package/dist/cjs/clients/SpokePoolClient/SpokePoolClientManager.d.ts +13 -0
  39. package/dist/cjs/clients/SpokePoolClient/SpokePoolClientManager.js +18 -0
  40. package/dist/cjs/clients/SpokePoolClient/SpokePoolClientManager.js.map +1 -0
  41. package/dist/cjs/clients/mocks/MockHubPoolClient.d.ts +9 -9
  42. package/dist/cjs/clients/mocks/MockHubPoolClient.js +9 -15
  43. package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
  44. package/dist/cjs/clients/mocks/MockSpokePoolClient.d.ts +3 -5
  45. package/dist/cjs/clients/mocks/MockSpokePoolClient.js +36 -40
  46. package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
  47. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.d.ts +1 -1
  48. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js +4 -6
  49. package/dist/cjs/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
  50. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.d.ts +2 -2
  51. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js +2 -2
  52. package/dist/cjs/clients/mocks/MockSvmSpokePoolClient.js.map +1 -1
  53. package/dist/cjs/interfaces/HubPool.d.ts +14 -19
  54. package/dist/cjs/interfaces/SpokePool.d.ts +19 -18
  55. package/dist/cjs/interfaces/SpokePool.js.map +1 -1
  56. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +7 -15
  57. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +15 -24
  58. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  59. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +1 -1
  60. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  61. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.d.ts +4 -12
  62. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js +44 -46
  63. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
  64. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +6 -6
  65. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +10 -10
  66. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  67. package/dist/cjs/utils/AddressUtils.d.ts +8 -12
  68. package/dist/cjs/utils/AddressUtils.js +36 -33
  69. package/dist/cjs/utils/AddressUtils.js.map +1 -1
  70. package/dist/cjs/utils/NetworkUtils.js +1 -1
  71. package/dist/cjs/utils/NetworkUtils.js.map +1 -1
  72. package/dist/cjs/utils/SpokeUtils.d.ts +3 -3
  73. package/dist/cjs/utils/SpokeUtils.js +22 -4
  74. package/dist/cjs/utils/SpokeUtils.js.map +1 -1
  75. package/dist/cjs/utils/TokenUtils.d.ts +4 -4
  76. package/dist/cjs/utils/TokenUtils.js +3 -5
  77. package/dist/cjs/utils/TokenUtils.js.map +1 -1
  78. package/dist/esm/arch/evm/SpokeUtils.d.ts +4 -9
  79. package/dist/esm/arch/evm/SpokeUtils.js +14 -29
  80. package/dist/esm/arch/evm/SpokeUtils.js.map +1 -1
  81. package/dist/esm/arch/svm/SpokeUtils.d.ts +3 -9
  82. package/dist/esm/arch/svm/SpokeUtils.js +55 -42
  83. package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
  84. package/dist/esm/arch/svm/eventsClient.js +3 -5
  85. package/dist/esm/arch/svm/eventsClient.js.map +1 -1
  86. package/dist/esm/arch/svm/utils.d.ts +3 -3
  87. package/dist/esm/arch/svm/utils.js +15 -17
  88. package/dist/esm/arch/svm/utils.js.map +1 -1
  89. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +3 -3
  90. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +2 -4
  91. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  92. package/dist/esm/clients/BundleDataClient/BundleDataClient.d.ts +6 -7
  93. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +84 -79
  94. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  95. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js +14 -14
  96. package/dist/esm/clients/BundleDataClient/utils/DataworkerUtils.js.map +1 -1
  97. package/dist/esm/clients/BundleDataClient/utils/FillUtils.d.ts +1 -2
  98. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js +3 -5
  99. package/dist/esm/clients/BundleDataClient/utils/FillUtils.js.map +1 -1
  100. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js +1 -5
  101. package/dist/esm/clients/BundleDataClient/utils/MerkleTreeUtils.js.map +1 -1
  102. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +4 -4
  103. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  104. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +71 -71
  105. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js +10 -20
  106. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.js.map +1 -1
  107. package/dist/esm/clients/HubPoolClient.d.ts +22 -23
  108. package/dist/esm/clients/HubPoolClient.js +63 -98
  109. package/dist/esm/clients/HubPoolClient.js.map +1 -1
  110. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +2 -2
  111. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  112. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.d.ts +2 -2
  113. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +47 -68
  114. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  115. package/dist/esm/clients/SpokePoolClient/SpokePoolClientManager.d.ts +28 -0
  116. package/dist/esm/clients/SpokePoolClient/SpokePoolClientManager.js +30 -0
  117. package/dist/esm/clients/SpokePoolClient/SpokePoolClientManager.js.map +1 -0
  118. package/dist/esm/clients/mocks/MockHubPoolClient.d.ts +9 -9
  119. package/dist/esm/clients/mocks/MockHubPoolClient.js +10 -16
  120. package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
  121. package/dist/esm/clients/mocks/MockSpokePoolClient.d.ts +3 -5
  122. package/dist/esm/clients/mocks/MockSpokePoolClient.js +38 -42
  123. package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
  124. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.d.ts +1 -1
  125. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js +5 -7
  126. package/dist/esm/clients/mocks/MockSvmCpiEventsClient.js.map +1 -1
  127. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.d.ts +2 -2
  128. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js +3 -3
  129. package/dist/esm/clients/mocks/MockSvmSpokePoolClient.js.map +1 -1
  130. package/dist/esm/interfaces/HubPool.d.ts +14 -19
  131. package/dist/esm/interfaces/SpokePool.d.ts +19 -18
  132. package/dist/esm/interfaces/SpokePool.js.map +1 -1
  133. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +10 -18
  134. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +20 -29
  135. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  136. package/dist/esm/relayFeeCalculator/chain-queries/factory.js +2 -2
  137. package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  138. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.d.ts +6 -14
  139. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +48 -51
  140. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
  141. package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +6 -6
  142. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +9 -9
  143. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  144. package/dist/esm/utils/AddressUtils.d.ts +8 -12
  145. package/dist/esm/utils/AddressUtils.js +38 -36
  146. package/dist/esm/utils/AddressUtils.js.map +1 -1
  147. package/dist/esm/utils/NetworkUtils.js +1 -1
  148. package/dist/esm/utils/NetworkUtils.js.map +1 -1
  149. package/dist/esm/utils/SpokeUtils.d.ts +8 -3
  150. package/dist/esm/utils/SpokeUtils.js +26 -4
  151. package/dist/esm/utils/SpokeUtils.js.map +1 -1
  152. package/dist/esm/utils/TokenUtils.d.ts +18 -22
  153. package/dist/esm/utils/TokenUtils.js +4 -6
  154. package/dist/esm/utils/TokenUtils.js.map +1 -1
  155. package/dist/types/arch/evm/SpokeUtils.d.ts +4 -9
  156. package/dist/types/arch/evm/SpokeUtils.d.ts.map +1 -1
  157. package/dist/types/arch/svm/SpokeUtils.d.ts +3 -9
  158. package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -1
  159. package/dist/types/arch/svm/eventsClient.d.ts.map +1 -1
  160. package/dist/types/arch/svm/utils.d.ts +3 -3
  161. package/dist/types/arch/svm/utils.d.ts.map +1 -1
  162. package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +3 -3
  163. package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts.map +1 -1
  164. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts +6 -7
  165. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  166. package/dist/types/clients/BundleDataClient/utils/DataworkerUtils.d.ts.map +1 -1
  167. package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts +1 -2
  168. package/dist/types/clients/BundleDataClient/utils/FillUtils.d.ts.map +1 -1
  169. package/dist/types/clients/BundleDataClient/utils/MerkleTreeUtils.d.ts.map +1 -1
  170. package/dist/types/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts.map +1 -1
  171. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +71 -71
  172. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts.map +1 -1
  173. package/dist/types/clients/HubPoolClient.d.ts +22 -23
  174. package/dist/types/clients/HubPoolClient.d.ts.map +1 -1
  175. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts.map +1 -1
  176. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts +2 -2
  177. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -1
  178. package/dist/types/clients/SpokePoolClient/SpokePoolClientManager.d.ts +29 -0
  179. package/dist/types/clients/SpokePoolClient/SpokePoolClientManager.d.ts.map +1 -0
  180. package/dist/types/clients/mocks/MockHubPoolClient.d.ts +9 -9
  181. package/dist/types/clients/mocks/MockHubPoolClient.d.ts.map +1 -1
  182. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts +3 -5
  183. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
  184. package/dist/types/clients/mocks/MockSvmCpiEventsClient.d.ts +1 -1
  185. package/dist/types/clients/mocks/MockSvmCpiEventsClient.d.ts.map +1 -1
  186. package/dist/types/clients/mocks/MockSvmSpokePoolClient.d.ts +2 -2
  187. package/dist/types/clients/mocks/MockSvmSpokePoolClient.d.ts.map +1 -1
  188. package/dist/types/interfaces/HubPool.d.ts +14 -19
  189. package/dist/types/interfaces/HubPool.d.ts.map +1 -1
  190. package/dist/types/interfaces/SpokePool.d.ts +19 -18
  191. package/dist/types/interfaces/SpokePool.d.ts.map +1 -1
  192. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +10 -18
  193. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
  194. package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts.map +1 -1
  195. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts +6 -14
  196. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts.map +1 -1
  197. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +6 -6
  198. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
  199. package/dist/types/utils/AddressUtils.d.ts +8 -12
  200. package/dist/types/utils/AddressUtils.d.ts.map +1 -1
  201. package/dist/types/utils/SpokeUtils.d.ts +8 -3
  202. package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
  203. package/dist/types/utils/TokenUtils.d.ts +18 -22
  204. package/dist/types/utils/TokenUtils.d.ts.map +1 -1
  205. package/package.json +2 -1
  206. package/src/arch/evm/SpokeUtils.ts +22 -72
  207. package/src/arch/svm/SpokeUtils.ts +53 -67
  208. package/src/arch/svm/eventsClient.ts +8 -40
  209. package/src/arch/svm/utils.ts +6 -6
  210. package/src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts +4 -7
  211. package/src/clients/BundleDataClient/BundleDataClient.ts +90 -77
  212. package/src/clients/BundleDataClient/utils/DataworkerUtils.ts +13 -28
  213. package/src/clients/BundleDataClient/utils/FillUtils.ts +4 -10
  214. package/src/clients/BundleDataClient/utils/MerkleTreeUtils.ts +1 -7
  215. package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +4 -4
  216. package/src/clients/BundleDataClient/utils/SuperstructUtils.ts +10 -22
  217. package/src/clients/HubPoolClient.ts +82 -127
  218. package/src/clients/SpokePoolClient/EVMSpokePoolClient.ts +0 -6
  219. package/src/clients/SpokePoolClient/SpokePoolClient.ts +35 -121
  220. package/src/clients/SpokePoolClient/SpokePoolClientManager.ts +36 -0
  221. package/src/clients/mocks/MockHubPoolClient.ts +19 -24
  222. package/src/clients/mocks/MockSpokePoolClient.ts +27 -39
  223. package/src/clients/mocks/MockSvmCpiEventsClient.ts +5 -8
  224. package/src/clients/mocks/MockSvmSpokePoolClient.ts +3 -12
  225. package/src/interfaces/HubPool.ts +14 -23
  226. package/src/interfaces/SpokePool.ts +19 -19
  227. package/src/relayFeeCalculator/chain-queries/baseQuery.ts +20 -39
  228. package/src/relayFeeCalculator/chain-queries/factory.ts +2 -2
  229. package/src/relayFeeCalculator/chain-queries/svmQuery.ts +56 -57
  230. package/src/relayFeeCalculator/relayFeeCalculator.ts +13 -15
  231. package/src/utils/AddressUtils.ts +51 -39
  232. package/src/utils/NetworkUtils.ts +1 -1
  233. package/src/utils/SpokeUtils.ts +33 -11
  234. package/src/utils/TokenUtils.ts +8 -10
@@ -1,14 +1,12 @@
1
1
  import { ProposedRootBundle, SpokePoolClientsByChain, LoadDataReturnValue, Clients, CombinedRefunds, FillWithBlock, DepositWithBlock } from "../../interfaces";
2
2
  import { SpokePoolClient } from "..";
3
- import { BigNumber, Address } from "../../utils";
3
+ import { BigNumber } from "../../utils";
4
4
  import winston from "winston";
5
+ import { SpokePoolManager } from "../SpokePoolClient/SpokePoolClientManager";
5
6
  export declare const INFINITE_FILL_DEADLINE: BigNumber;
6
7
  export declare class BundleDataClient {
7
8
  readonly logger: winston.Logger;
8
9
  readonly clients: Clients;
9
- readonly spokePoolClients: {
10
- [chainId: number]: SpokePoolClient;
11
- };
12
10
  readonly chainIdListForBundleEvaluationBlockNumbers: number[];
13
11
  readonly blockRangeEndBlockBuffer: {
14
12
  [chainId: number]: number;
@@ -16,6 +14,7 @@ export declare class BundleDataClient {
16
14
  private loadDataCache;
17
15
  private arweaveDataCache;
18
16
  private bundleTimestampCache;
17
+ readonly spokePoolClientManager: SpokePoolManager;
19
18
  constructor(logger: winston.Logger, clients: Clients, spokePoolClients: {
20
19
  [chainId: number]: SpokePoolClient;
21
20
  }, chainIdListForBundleEvaluationBlockNumbers: number[], blockRangeEndBlockBuffer?: {
@@ -35,7 +34,7 @@ export declare class BundleDataClient {
35
34
  getPendingRefundsFromValidBundles(): Promise<CombinedRefunds[]>;
36
35
  getPendingRefundsFromBundle(bundle: ProposedRootBundle): Promise<CombinedRefunds>;
37
36
  getApproximateRefundsForBlockRange(chainIds: number[], blockRanges: number[][]): Promise<CombinedRefunds>;
38
- getUpcomingDepositAmount(chainId: number, l2Token: Address, latestBlockToSearch: number): BigNumber;
37
+ getUpcomingDepositAmount(chainId: number, l2Token: string, latestBlockToSearch: number): BigNumber;
39
38
  getNextBundleRefunds(): Promise<CombinedRefunds[]>;
40
39
  getExecutedRefunds(spokePoolClient: SpokePoolClient, relayerRefundRoot: string): {
41
40
  [tokenAddress: string]: {
@@ -43,8 +42,8 @@ export declare class BundleDataClient {
43
42
  };
44
43
  };
45
44
  private deductExecutedRefunds;
46
- getRefundsFor(bundleRefunds: CombinedRefunds, relayer: Address, chainId: number, token: Address): BigNumber;
47
- getTotalRefund(refunds: CombinedRefunds[], relayer: Address, chainId: number, refundToken: Address): BigNumber;
45
+ getRefundsFor(bundleRefunds: CombinedRefunds, relayer: string, chainId: number, token: string): BigNumber;
46
+ getTotalRefund(refunds: CombinedRefunds[], relayer: string, chainId: number, refundToken: string): BigNumber;
48
47
  private loadArweaveData;
49
48
  loadData(blockRangesForChains: number[][], spokePoolClients: SpokePoolClientsByChain, attemptArweaveLoad?: boolean): Promise<LoadDataReturnValue>;
50
49
  private loadDataFromScratch;
@@ -4,51 +4,52 @@ import _ from "lodash";
4
4
  import { FillType, FillStatus, } from "../../interfaces";
5
5
  import { findFillEvent as findEvmFillEvent } from "../../arch/evm";
6
6
  import { findFillEvent as findSvmFillEvent } from "../../arch/svm";
7
- import { BigNumber, bnZero, queryHistoricalDepositForFill, assign, fixedPointAdjustment, isDefined, toBN, forEachAsync, getBlockRangeForChain, getImpliedBundleBlockRanges, getRelayEventKey, isSlowFill, mapAsync, bnUint32Max, isZeroValueDeposit, isZeroValueFillOrSlowFillRequest, duplicateEvent, invalidOutputToken, } from "../../utils";
7
+ import { BigNumber, bnZero, queryHistoricalDepositForFill, assign, fixedPointAdjustment, isDefined, toBN, forEachAsync, getBlockRangeForChain, getImpliedBundleBlockRanges, getRelayEventKey, isSlowFill, mapAsync, bnUint32Max, isZeroValueDeposit, isZeroValueFillOrSlowFillRequest, chainIsEvm, isValidEvmAddress, duplicateEvent, invalidOutputToken, getNetworkName, } from "../../utils";
8
8
  import { BundleDataSS, getEndBlockBuffers, getRefundInformationFromFill, getRefundsFromBundle, getWidestPossibleExpectedBlockRange, isChainDisabled, prettyPrintV3SpokePoolEvents, verifyFillRepayment, } from "./utils";
9
9
  import { isEVMSpokePoolClient, isSVMSpokePoolClient } from "../SpokePoolClient";
10
+ import { SpokePoolManager } from "../SpokePoolClient/SpokePoolClientManager";
10
11
  // max(uint256) - 1
11
12
  export var INFINITE_FILL_DEADLINE = bnUint32Max;
12
13
  // V3 dictionary helper functions
13
14
  function updateExpiredDepositsV3(dict, deposit) {
14
- var _a, _b;
15
- var _c, _d;
15
+ var _a;
16
16
  // A deposit refund for a deposit is invalid if the depositor has a bytes32 address input for an EVM chain. It is valid otherwise.
17
- if (!deposit.depositor.isValidOn(deposit.originChainId)) {
17
+ if (chainIsEvm(deposit.originChainId) && !isValidEvmAddress(deposit.depositor)) {
18
18
  return;
19
19
  }
20
20
  var originChainId = deposit.originChainId, inputToken = deposit.inputToken;
21
- (_a = dict[originChainId]) !== null && _a !== void 0 ? _a : (dict[originChainId] = {});
22
- (_b = (_c = dict[originChainId])[_d = inputToken.toBytes32()]) !== null && _b !== void 0 ? _b : (_c[_d] = []);
23
- dict[originChainId][inputToken.toBytes32()].push(deposit);
21
+ if (!((_a = dict === null || dict === void 0 ? void 0 : dict[originChainId]) === null || _a === void 0 ? void 0 : _a[inputToken])) {
22
+ assign(dict, [originChainId, inputToken], []);
23
+ }
24
+ dict[originChainId][inputToken].push(deposit);
24
25
  }
25
26
  function updateBundleDepositsV3(dict, deposit) {
26
- var _a, _b;
27
- var _c, _d;
27
+ var _a;
28
28
  var originChainId = deposit.originChainId, inputToken = deposit.inputToken;
29
- (_a = dict[originChainId]) !== null && _a !== void 0 ? _a : (dict[originChainId] = {});
30
- (_b = (_c = dict[originChainId])[_d = inputToken.toBytes32()]) !== null && _b !== void 0 ? _b : (_c[_d] = []);
31
- dict[originChainId][inputToken.toBytes32()].push(deposit);
29
+ if (!((_a = dict === null || dict === void 0 ? void 0 : dict[originChainId]) === null || _a === void 0 ? void 0 : _a[inputToken])) {
30
+ assign(dict, [originChainId, inputToken], []);
31
+ }
32
+ dict[originChainId][inputToken].push(deposit);
32
33
  }
33
34
  function updateBundleFillsV3(dict, fill, lpFeePct, repaymentChainId, repaymentToken, repaymentAddress) {
34
- var _a, _b, _c;
35
- var _d, _e;
35
+ var _a, _b;
36
36
  // We shouldn't pass any unrepayable fills into this function, so we perform an extra safety check.
37
- if (!fill.relayer.isValidOn(repaymentChainId)) {
37
+ if (chainIsEvm(repaymentChainId) && !isValidEvmAddress(fill.relayer)) {
38
38
  return;
39
39
  }
40
- (_a = dict[repaymentChainId]) !== null && _a !== void 0 ? _a : (dict[repaymentChainId] = {});
41
- (_b = (_d = dict[repaymentChainId])[_e = repaymentToken.toBytes32()]) !== null && _b !== void 0 ? _b : (_d[_e] = {
42
- fills: [],
43
- totalRefundAmount: bnZero,
44
- realizedLpFees: bnZero,
45
- refunds: {},
46
- });
40
+ if (!((_a = dict === null || dict === void 0 ? void 0 : dict[repaymentChainId]) === null || _a === void 0 ? void 0 : _a[repaymentToken])) {
41
+ assign(dict, [repaymentChainId, repaymentToken], {
42
+ fills: [],
43
+ totalRefundAmount: bnZero,
44
+ realizedLpFees: bnZero,
45
+ refunds: {},
46
+ });
47
+ }
47
48
  var bundleFill = __assign(__assign({}, fill), { lpFeePct: lpFeePct, relayer: repaymentAddress });
48
49
  // Add all fills, slow and fast, to dictionary.
49
- assign(dict, [repaymentChainId, repaymentToken.toBytes32(), "fills"], [bundleFill]);
50
+ assign(dict, [repaymentChainId, repaymentToken, "fills"], [bundleFill]);
50
51
  // All fills update the bundle LP fees.
51
- var refundObj = dict[repaymentChainId][repaymentToken.toBytes32()];
52
+ var refundObj = dict[repaymentChainId][repaymentToken];
52
53
  var realizedLpFee = bundleFill.inputAmount.mul(bundleFill.lpFeePct).div(fixedPointAdjustment);
53
54
  refundObj.realizedLpFees = refundObj.realizedLpFees ? refundObj.realizedLpFees.add(realizedLpFee) : realizedLpFee;
54
55
  // Only fast fills get refunded.
@@ -58,34 +59,33 @@ function updateBundleFillsV3(dict, fill, lpFeePct, repaymentChainId, repaymentTo
58
59
  ? refundObj.totalRefundAmount.add(refundAmount)
59
60
  : refundAmount;
60
61
  // Instantiate dictionary if it doesn't exist.
61
- (_c = refundObj.refunds) !== null && _c !== void 0 ? _c : (refundObj.refunds = {});
62
- if (refundObj.refunds[bundleFill.relayer.toBytes32()]) {
63
- refundObj.refunds[bundleFill.relayer.toBytes32()] =
64
- refundObj.refunds[bundleFill.relayer.toBytes32()].add(refundAmount);
62
+ (_b = refundObj.refunds) !== null && _b !== void 0 ? _b : (refundObj.refunds = {});
63
+ if (refundObj.refunds[bundleFill.relayer]) {
64
+ refundObj.refunds[bundleFill.relayer] = refundObj.refunds[bundleFill.relayer].add(refundAmount);
65
65
  }
66
66
  else {
67
- refundObj.refunds[bundleFill.relayer.toBytes32()] = refundAmount;
67
+ refundObj.refunds[bundleFill.relayer] = refundAmount;
68
68
  }
69
69
  }
70
70
  }
71
71
  function updateBundleExcessSlowFills(dict, deposit) {
72
- var _a, _b;
73
- var _c, _d;
72
+ var _a;
74
73
  var destinationChainId = deposit.destinationChainId, outputToken = deposit.outputToken;
75
- (_a = dict[destinationChainId]) !== null && _a !== void 0 ? _a : (dict[destinationChainId] = {});
76
- (_b = (_c = dict[destinationChainId])[_d = outputToken.toBytes32()]) !== null && _b !== void 0 ? _b : (_c[_d] = []);
77
- dict[destinationChainId][outputToken.toBytes32()].push(deposit);
74
+ if (!((_a = dict === null || dict === void 0 ? void 0 : dict[destinationChainId]) === null || _a === void 0 ? void 0 : _a[outputToken])) {
75
+ assign(dict, [destinationChainId, outputToken], []);
76
+ }
77
+ dict[destinationChainId][outputToken].push(deposit);
78
78
  }
79
79
  function updateBundleSlowFills(dict, deposit) {
80
- var _a, _b;
81
- var _c, _d;
82
- if (!deposit.recipient.isValidOn(deposit.destinationChainId)) {
80
+ var _a;
81
+ if (chainIsEvm(deposit.destinationChainId) && !isValidEvmAddress(deposit.recipient)) {
83
82
  return;
84
83
  }
85
84
  var destinationChainId = deposit.destinationChainId, outputToken = deposit.outputToken;
86
- (_a = dict[destinationChainId]) !== null && _a !== void 0 ? _a : (dict[destinationChainId] = {});
87
- (_b = (_c = dict[destinationChainId])[_d = outputToken.toBytes32()]) !== null && _b !== void 0 ? _b : (_c[_d] = []);
88
- dict[destinationChainId][outputToken.toBytes32()].push(deposit);
85
+ if (!((_a = dict === null || dict === void 0 ? void 0 : dict[destinationChainId]) === null || _a === void 0 ? void 0 : _a[outputToken])) {
86
+ assign(dict, [destinationChainId, outputToken], []);
87
+ }
88
+ dict[destinationChainId][outputToken].push(deposit);
89
89
  }
90
90
  // @notice Shared client for computing data needed to construct or validate a bundle.
91
91
  var BundleDataClient = /** @class */ (function () {
@@ -94,12 +94,12 @@ var BundleDataClient = /** @class */ (function () {
94
94
  if (blockRangeEndBlockBuffer === void 0) { blockRangeEndBlockBuffer = {}; }
95
95
  this.logger = logger;
96
96
  this.clients = clients;
97
- this.spokePoolClients = spokePoolClients;
98
97
  this.chainIdListForBundleEvaluationBlockNumbers = chainIdListForBundleEvaluationBlockNumbers;
99
98
  this.blockRangeEndBlockBuffer = blockRangeEndBlockBuffer;
100
99
  this.loadDataCache = {};
101
100
  this.arweaveDataCache = {};
102
101
  this.bundleTimestampCache = {};
102
+ this.spokePoolClientManager = new SpokePoolManager(logger, spokePoolClients);
103
103
  }
104
104
  // This should be called whenever it's possible that the loadData information for a block range could have changed.
105
105
  // For instance, if the spoke or hub clients have been updated, it probably makes sense to clear this to be safe.
@@ -275,7 +275,7 @@ var BundleDataClient = /** @class */ (function () {
275
275
  return [4 /*yield*/, this.loadArweaveData(bundleEvaluationBlockRanges)];
276
276
  case 1:
277
277
  arweaveData = _a.sent();
278
- if (!(arweaveData === undefined)) return [3 /*break*/, 3];
278
+ if (!!isDefined(arweaveData)) return [3 /*break*/, 3];
279
279
  return [4 /*yield*/, this.getApproximateRefundsForBlockRange(chainIds, bundleEvaluationBlockRanges)];
280
280
  case 2:
281
281
  combinedRefunds = _a.sent();
@@ -288,7 +288,7 @@ var BundleDataClient = /** @class */ (function () {
288
288
  // a reasonable assumption. This empty refund chain also matches what the alternative
289
289
  // `getApproximateRefundsForBlockRange` would return.
290
290
  Object.keys(combinedRefunds).forEach(function (chainId) {
291
- if (_this.spokePoolClients[Number(chainId)] === undefined) {
291
+ if (!_this.spokePoolClientManager.getClient(Number(chainId))) {
292
292
  delete combinedRefunds[Number(chainId)];
293
293
  }
294
294
  });
@@ -312,39 +312,45 @@ var BundleDataClient = /** @class */ (function () {
312
312
  refundsForChain = {};
313
313
  bundleEndBlockForMainnet = blockRanges[0][1];
314
314
  _loop_1 = function (chainId) {
315
- var chainIndex, fillsToCount;
315
+ var spokePoolClient, chainIndex, fillsToCount;
316
316
  return __generator(this, function (_b) {
317
317
  switch (_b.label) {
318
318
  case 0:
319
- if (this_1.spokePoolClients[chainId] === undefined) {
319
+ spokePoolClient = this_1.spokePoolClientManager.getClient(chainId);
320
+ if (!isDefined(spokePoolClient)) {
320
321
  return [2 /*return*/, "continue"];
321
322
  }
322
323
  chainIndex = chainIds.indexOf(chainId);
323
- fillsToCount = this_1.spokePoolClients[chainId].getFills().filter(function (fill) {
324
+ fillsToCount = spokePoolClient.getFills().filter(function (fill) {
324
325
  if (fill.blockNumber < blockRanges[chainIndex][0] ||
325
326
  fill.blockNumber > blockRanges[chainIndex][1] ||
326
327
  isZeroValueFillOrSlowFillRequest(fill) ||
327
328
  invalidOutputToken(fill)) {
328
329
  return false;
329
330
  }
331
+ var originSpokePoolClient = _this.spokePoolClientManager.getClient(fill.originChainId);
330
332
  // If origin spoke pool client isn't defined, we can't validate it.
331
- if (_this.spokePoolClients[fill.originChainId] === undefined) {
333
+ if (!isDefined(originSpokePoolClient)) {
332
334
  return false;
333
335
  }
334
- var matchingDeposit = _this.spokePoolClients[fill.originChainId].getDeposit(fill.depositId);
336
+ var matchingDeposit = originSpokePoolClient.getDeposit(fill.depositId);
335
337
  var hasMatchingDeposit = matchingDeposit !== undefined && getRelayEventKey(fill) === getRelayEventKey(matchingDeposit);
336
338
  return hasMatchingDeposit;
337
339
  });
338
340
  return [4 /*yield*/, forEachAsync(fillsToCount, function (_fill) { return __awaiter(_this, void 0, void 0, function () {
339
- var matchingDeposit, spokeClient, provider, fill, _a, chainToSendRefundTo, repaymentToken, relayer, refundAmount, existingRefundAmount;
341
+ var originChain, originSpokePoolClient, matchingDeposit, spokeClient, provider, fill, _a, chainToSendRefundTo, repaymentToken, relayer, refundAmount, existingRefundAmount;
340
342
  var _b, _c, _d;
341
- var _e, _f;
342
- return __generator(this, function (_g) {
343
- switch (_g.label) {
343
+ var _e;
344
+ return __generator(this, function (_f) {
345
+ switch (_f.label) {
344
346
  case 0:
345
- matchingDeposit = this.spokePoolClients[_fill.originChainId].getDeposit(_fill.depositId);
346
- assert(isDefined(matchingDeposit), "Deposit not found for fill.");
347
- spokeClient = this.spokePoolClients[_fill.destinationChainId];
347
+ originChain = getNetworkName(_fill.originChainId);
348
+ originSpokePoolClient = this.spokePoolClientManager.getClient(_fill.originChainId);
349
+ assert(isDefined(originSpokePoolClient), "No SpokePoolClient for chain ".concat(originChain));
350
+ matchingDeposit = originSpokePoolClient.getDeposit(_fill.depositId);
351
+ assert(isDefined(matchingDeposit), "No ".concat(originChain, " deposit found for ").concat(getNetworkName(_fill.destinationChainId), " fill ").concat(_fill.depositId));
352
+ spokeClient = this.spokePoolClientManager.getClient(_fill.destinationChainId);
353
+ assert(isDefined(spokeClient), "SpokePoolClient for ".concat(getNetworkName(_fill.destinationChainId), " not found for fill."));
348
354
  if (isEVMSpokePoolClient(spokeClient)) {
349
355
  provider = spokeClient.spokePool.provider;
350
356
  }
@@ -353,17 +359,16 @@ var BundleDataClient = /** @class */ (function () {
353
359
  }
354
360
  return [4 /*yield*/, verifyFillRepayment(_fill, provider, matchingDeposit, this.clients.hubPoolClient, bundleEndBlockForMainnet)];
355
361
  case 1:
356
- fill = _g.sent();
362
+ fill = _f.sent();
357
363
  if (!isDefined(fill)) {
358
364
  return [2 /*return*/];
359
365
  }
360
366
  _a = getRefundInformationFromFill(__assign(__assign({}, fill), { fromLiteChain: matchingDeposit.fromLiteChain }), this.clients.hubPoolClient, bundleEndBlockForMainnet), chainToSendRefundTo = _a.chainToSendRefundTo, repaymentToken = _a.repaymentToken;
361
367
  relayer = fill.relayer, refundAmount = fill.inputAmount;
362
368
  (_b = refundsForChain[chainToSendRefundTo]) !== null && _b !== void 0 ? _b : (refundsForChain[chainToSendRefundTo] = {});
363
- (_c = (_e = refundsForChain[chainToSendRefundTo])[_f = repaymentToken.toBytes32()]) !== null && _c !== void 0 ? _c : (_e[_f] = {});
364
- existingRefundAmount = (_d = refundsForChain[chainToSendRefundTo][repaymentToken.toBytes32()][relayer.toBytes32()]) !== null && _d !== void 0 ? _d : bnZero;
365
- refundsForChain[chainToSendRefundTo][repaymentToken.toBytes32()][relayer.toBytes32()] =
366
- existingRefundAmount.add(refundAmount);
369
+ (_c = (_e = refundsForChain[chainToSendRefundTo])[repaymentToken]) !== null && _c !== void 0 ? _c : (_e[repaymentToken] = {});
370
+ existingRefundAmount = (_d = refundsForChain[chainToSendRefundTo][repaymentToken][relayer]) !== null && _d !== void 0 ? _d : bnZero;
371
+ refundsForChain[chainToSendRefundTo][repaymentToken][relayer] = existingRefundAmount.add(refundAmount);
367
372
  return [2 /*return*/];
368
373
  }
369
374
  });
@@ -393,12 +398,13 @@ var BundleDataClient = /** @class */ (function () {
393
398
  });
394
399
  };
395
400
  BundleDataClient.prototype.getUpcomingDepositAmount = function (chainId, l2Token, latestBlockToSearch) {
396
- if (this.spokePoolClients[chainId] === undefined) {
401
+ var spokePoolClient = this.spokePoolClientManager.getClient(chainId);
402
+ if (!isDefined(spokePoolClient)) {
397
403
  return toBN(0);
398
404
  }
399
- return this.spokePoolClients[chainId]
405
+ return spokePoolClient
400
406
  .getDeposits()
401
- .filter(function (deposit) { return deposit.blockNumber > latestBlockToSearch && deposit.inputToken.eq(l2Token); })
407
+ .filter(function (deposit) { return deposit.blockNumber > latestBlockToSearch && deposit.inputToken === l2Token; })
402
408
  .reduce(function (acc, deposit) {
403
409
  return acc.add(deposit.inputAmount);
404
410
  }, toBN(0));
@@ -444,13 +450,13 @@ var BundleDataClient = /** @class */ (function () {
444
450
  nextBundleMainnetStartBlock = hubPoolClient.getNextBundleStartBlockNumber(this.chainIdListForBundleEvaluationBlockNumbers, hubPoolClient.latestHeightSearched, hubPoolClient.chainId);
445
451
  chainIds = this.clients.configStoreClient.getChainIdIndicesForBlock(nextBundleMainnetStartBlock);
446
452
  combinedRefunds = [];
447
- widestBundleBlockRanges = getWidestPossibleExpectedBlockRange(chainIds, this.spokePoolClients, getEndBlockBuffers(chainIds, this.blockRangeEndBlockBuffer), this.clients, this.clients.hubPoolClient.latestHeightSearched, this.clients.configStoreClient.getEnabledChains(this.clients.hubPoolClient.latestHeightSearched));
453
+ widestBundleBlockRanges = getWidestPossibleExpectedBlockRange(chainIds, this.spokePoolClientManager.getSpokePoolClients(), getEndBlockBuffers(chainIds, this.blockRangeEndBlockBuffer), this.clients, this.clients.hubPoolClient.latestHeightSearched, this.clients.configStoreClient.getEnabledChains(this.clients.hubPoolClient.latestHeightSearched));
448
454
  if (!hubPoolClient.hasPendingProposal()) return [3 /*break*/, 5];
449
455
  pendingBundleBlockRanges = getImpliedBundleBlockRanges(hubPoolClient, this.clients.configStoreClient, hubPoolClient.getLatestProposedRootBundle());
450
456
  return [4 /*yield*/, this.loadArweaveData(pendingBundleBlockRanges)];
451
457
  case 1:
452
458
  arweaveData = _e.sent();
453
- if (!(arweaveData === undefined)) return [3 /*break*/, 3];
459
+ if (!!isDefined(arweaveData)) return [3 /*break*/, 3];
454
460
  _b = (_a = combinedRefunds).push;
455
461
  return [4 /*yield*/, this.getApproximateRefundsForBlockRange(chainIds, pendingBundleBlockRanges)];
456
462
  case 2:
@@ -499,17 +505,17 @@ var BundleDataClient = /** @class */ (function () {
499
505
  for (var _i = 0, executedRefundLeaves_1 = executedRefundLeaves; _i < executedRefundLeaves_1.length; _i++) {
500
506
  var refundLeaf = executedRefundLeaves_1[_i];
501
507
  var tokenAddress = refundLeaf.l2TokenAddress;
502
- if (executedRefunds[tokenAddress.toBytes32()] === undefined) {
503
- executedRefunds[tokenAddress.toBytes32()] = {};
508
+ if (executedRefunds[tokenAddress] === undefined) {
509
+ executedRefunds[tokenAddress] = {};
504
510
  }
505
- var executedTokenRefunds = executedRefunds[tokenAddress.toBytes32()];
511
+ var executedTokenRefunds = executedRefunds[tokenAddress];
506
512
  for (var i = 0; i < refundLeaf.refundAddresses.length; i++) {
507
513
  var relayer = refundLeaf.refundAddresses[i];
508
514
  var refundAmount = refundLeaf.refundAmounts[i];
509
- if (executedTokenRefunds[relayer.toBytes32()] === undefined) {
510
- executedTokenRefunds[relayer.toBytes32()] = bnZero;
515
+ if (executedTokenRefunds[relayer] === undefined) {
516
+ executedTokenRefunds[relayer] = bnZero;
511
517
  }
512
- executedTokenRefunds[relayer.toBytes32()] = executedTokenRefunds[relayer.toBytes32()].add(refundAmount);
518
+ executedTokenRefunds[relayer] = executedTokenRefunds[relayer].add(refundAmount);
513
519
  }
514
520
  }
515
521
  return executedRefunds;
@@ -519,10 +525,11 @@ var BundleDataClient = /** @class */ (function () {
519
525
  for (var _i = 0, _a = Object.keys(allRefunds); _i < _a.length; _i++) {
520
526
  var chainIdStr = _a[_i];
521
527
  var chainId = Number(chainIdStr);
522
- if (!isDefined(this.spokePoolClients[chainId])) {
528
+ var spokePoolClient = this.spokePoolClientManager.getClient(chainId);
529
+ if (!isDefined(spokePoolClient)) {
523
530
  continue;
524
531
  }
525
- var executedRefunds = this.getExecutedRefunds(this.spokePoolClients[chainId], bundleContainingRefunds.relayerRefundRoot);
532
+ var executedRefunds = this.getExecutedRefunds(spokePoolClient, bundleContainingRefunds.relayerRefundRoot);
526
533
  for (var _b = 0, _c = Object.keys(allRefunds[chainId]); _b < _c.length; _b++) {
527
534
  var tokenAddress = _c[_b];
528
535
  var refunds = allRefunds[chainId][tokenAddress];
@@ -544,11 +551,11 @@ var BundleDataClient = /** @class */ (function () {
544
551
  return allRefunds;
545
552
  };
546
553
  BundleDataClient.prototype.getRefundsFor = function (bundleRefunds, relayer, chainId, token) {
547
- if (!bundleRefunds[chainId] || !bundleRefunds[chainId][token.toBytes32()]) {
554
+ if (!bundleRefunds[chainId] || !bundleRefunds[chainId][token]) {
548
555
  return BigNumber.from(0);
549
556
  }
550
- var allRefunds = bundleRefunds[chainId][token.toBytes32()];
551
- return allRefunds && allRefunds[relayer.toBytes32()] ? allRefunds[relayer.toBytes32()] : BigNumber.from(0);
557
+ var allRefunds = bundleRefunds[chainId][token];
558
+ return allRefunds && allRefunds[relayer] ? allRefunds[relayer] : BigNumber.from(0);
552
559
  };
553
560
  BundleDataClient.prototype.getTotalRefund = function (refunds, relayer, chainId, refundToken) {
554
561
  var _this = this;
@@ -731,9 +738,7 @@ var BundleDataClient = /** @class */ (function () {
731
738
  assert(decodedBundleDepositHash.relayDataHash === relayDataHash &&
732
739
  decodedBundleDepositHash.index === deposits.length - 1, "Not using correct bundle deposit hash key");
733
740
  if (deposit.blockNumber >= originChainBlockRange[0]) {
734
- if ((_b = (_a = bundleDepositsV3 === null || bundleDepositsV3 === void 0 ? void 0 : bundleDepositsV3[originChainId]) === null || _a === void 0 ? void 0 : _a[deposit.inputToken.toBytes32()]) === null || _b === void 0 ? void 0 : _b.find(function (d) {
735
- return duplicateEvent(deposit, d);
736
- })) {
741
+ if ((_b = (_a = bundleDepositsV3 === null || bundleDepositsV3 === void 0 ? void 0 : bundleDepositsV3[originChainId]) === null || _a === void 0 ? void 0 : _a[deposit.inputToken]) === null || _b === void 0 ? void 0 : _b.find(function (d) { return duplicateEvent(deposit, d); })) {
737
742
  _this.logger.debug({
738
743
  at: "BundleDataClient#loadData",
739
744
  message: "Duplicate deposit detected",
@@ -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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"}