@across-protocol/sdk 4.3.118 → 4.3.120-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 (68) hide show
  1. package/dist/cjs/src/clients/BundleDataClient/BundleDataClient.js +26 -16
  2. package/dist/cjs/src/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  3. package/dist/cjs/src/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +1 -0
  4. package/dist/cjs/src/clients/BundleDataClient/utils/PoolRebalanceUtils.js +4 -0
  5. package/dist/cjs/src/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  6. package/dist/cjs/test/constants.d.ts +58 -8
  7. package/dist/cjs/test/constants.js +70 -13
  8. package/dist/cjs/test/constants.js.map +1 -1
  9. package/dist/cjs/test/fixtures/MerkleLib.Fixture.d.ts +4 -0
  10. package/dist/cjs/test/fixtures/MerkleLib.Fixture.js +22 -0
  11. package/dist/cjs/test/fixtures/MerkleLib.Fixture.js.map +1 -0
  12. package/dist/cjs/test/fixtures/SpokePool.Fixture.d.ts +91 -1
  13. package/dist/cjs/test/fixtures/SpokePool.Fixture.js +196 -1
  14. package/dist/cjs/test/fixtures/SpokePool.Fixture.js.map +1 -1
  15. package/dist/cjs/test/types/index.d.ts +10 -11
  16. package/dist/cjs/test/utils/MerkleLib.utils.d.ts +26 -1
  17. package/dist/cjs/test/utils/MerkleLib.utils.js +40 -0
  18. package/dist/cjs/test/utils/MerkleLib.utils.js.map +1 -1
  19. package/dist/cjs/test/utils/index.d.ts +0 -1
  20. package/dist/cjs/test/utils/index.js +1 -2
  21. package/dist/cjs/test/utils/index.js.map +1 -1
  22. package/dist/cjs/test/utils/utils.d.ts +44 -17
  23. package/dist/cjs/test/utils/utils.js +223 -37
  24. package/dist/cjs/test/utils/utils.js.map +1 -1
  25. package/dist/esm/src/clients/BundleDataClient/BundleDataClient.js +32 -17
  26. package/dist/esm/src/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  27. package/dist/esm/src/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +1 -0
  28. package/dist/esm/src/clients/BundleDataClient/utils/PoolRebalanceUtils.js +3 -0
  29. package/dist/esm/src/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  30. package/dist/esm/test/constants.d.ts +58 -8
  31. package/dist/esm/test/constants.js +87 -13
  32. package/dist/esm/test/constants.js.map +1 -1
  33. package/dist/esm/test/fixtures/MerkleLib.Fixture.d.ts +4 -0
  34. package/dist/esm/test/fixtures/MerkleLib.Fixture.js +19 -0
  35. package/dist/esm/test/fixtures/MerkleLib.Fixture.js.map +1 -0
  36. package/dist/esm/test/fixtures/SpokePool.Fixture.d.ts +92 -1
  37. package/dist/esm/test/fixtures/SpokePool.Fixture.js +201 -1
  38. package/dist/esm/test/fixtures/SpokePool.Fixture.js.map +1 -1
  39. package/dist/esm/test/types/index.d.ts +10 -11
  40. package/dist/esm/test/utils/MerkleLib.utils.d.ts +32 -1
  41. package/dist/esm/test/utils/MerkleLib.utils.js +44 -0
  42. package/dist/esm/test/utils/MerkleLib.utils.js.map +1 -1
  43. package/dist/esm/test/utils/index.d.ts +0 -1
  44. package/dist/esm/test/utils/index.js +0 -2
  45. package/dist/esm/test/utils/index.js.map +1 -1
  46. package/dist/esm/test/utils/utils.d.ts +44 -17
  47. package/dist/esm/test/utils/utils.js +205 -29
  48. package/dist/esm/test/utils/utils.js.map +1 -1
  49. package/dist/types/src/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  50. package/dist/types/src/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts +1 -0
  51. package/dist/types/src/clients/BundleDataClient/utils/PoolRebalanceUtils.d.ts.map +1 -1
  52. package/dist/types/test/constants.d.ts +58 -8
  53. package/dist/types/test/constants.d.ts.map +1 -1
  54. package/dist/types/test/fixtures/MerkleLib.Fixture.d.ts +5 -0
  55. package/dist/types/test/fixtures/MerkleLib.Fixture.d.ts.map +1 -0
  56. package/dist/types/test/fixtures/SpokePool.Fixture.d.ts +92 -1
  57. package/dist/types/test/fixtures/SpokePool.Fixture.d.ts.map +1 -1
  58. package/dist/types/test/types/index.d.ts +10 -11
  59. package/dist/types/test/types/index.d.ts.map +1 -1
  60. package/dist/types/test/utils/MerkleLib.utils.d.ts +32 -1
  61. package/dist/types/test/utils/MerkleLib.utils.d.ts.map +1 -1
  62. package/dist/types/test/utils/index.d.ts +0 -1
  63. package/dist/types/test/utils/index.d.ts.map +1 -1
  64. package/dist/types/test/utils/utils.d.ts +44 -17
  65. package/dist/types/test/utils/utils.d.ts.map +1 -1
  66. package/package.json +1 -1
  67. package/src/clients/BundleDataClient/BundleDataClient.ts +28 -9
  68. package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +4 -0
@@ -2,9 +2,100 @@ import "@nomiclabs/hardhat-ethers";
2
2
  import "@openzeppelin/hardhat-upgrades";
3
3
  import "hardhat-deploy";
4
4
  import hre from "hardhat";
5
- import { Contract } from "ethers";
5
+ import { BigNumber, Contract } from "ethers";
6
+ import type { SignerWithAddress } from "@nomiclabs/hardhat-ethers/signers";
6
7
  import { zeroAddress } from "../constants";
7
8
  export { zeroAddress };
9
+ /** V2-era relay data with string chain IDs / deposit IDs */
10
+ export interface ContractRelayData {
11
+ depositor: string;
12
+ recipient: string;
13
+ destinationToken: string;
14
+ amount: BigNumber;
15
+ realizedLpFeePct: BigNumber;
16
+ relayerFeePct: BigNumber;
17
+ depositId: string;
18
+ originChainId: string;
19
+ destinationChainId: string;
20
+ message: string;
21
+ }
22
+ export interface V3RelayData {
23
+ depositor: string;
24
+ recipient: string;
25
+ exclusiveRelayer: string;
26
+ inputToken: string;
27
+ outputToken: string;
28
+ inputAmount: BigNumber;
29
+ outputAmount: BigNumber;
30
+ originChainId: number;
31
+ depositId: BigNumber;
32
+ fillDeadline: number;
33
+ exclusivityDeadline: number;
34
+ message: string;
35
+ }
36
+ export interface V3RelayExecutionParams {
37
+ relay: V3RelayData;
38
+ relayHash: string;
39
+ updatedOutputAmount: BigNumber;
40
+ updatedRecipient: string;
41
+ updatedMessage: string;
42
+ repaymentChainId: number;
43
+ }
44
+ export interface SlowFill {
45
+ relayData: ContractRelayData;
46
+ payoutAdjustmentPct: BigNumber;
47
+ }
48
+ export interface V3SlowFill {
49
+ relayData: V3RelayData;
50
+ chainId: number;
51
+ updatedOutputAmount: BigNumber;
52
+ }
53
+ export interface UpdatedRelayerFeeData {
54
+ newRelayerFeePct: string;
55
+ depositorMessageHash: string;
56
+ depositorSignature: string;
57
+ }
58
+ export declare const enum FillType {
59
+ FastFill = 0,
60
+ ReplacedSlowFill = 1,
61
+ SlowFill = 2
62
+ }
63
+ export declare const enum FillStatus {
64
+ Unfilled = 0,
65
+ RequestedSlowFill = 1,
66
+ Filled = 2
67
+ }
68
+ export declare function getRelayHash(_depositor: string, _recipient: string, _depositId: number, _originChainId: number, _destinationChainId: number, _destinationToken: string, _amount?: BigNumber, _realizedLpFeePct?: BigNumber, _relayerFeePct?: BigNumber, _message?: string): {
69
+ relayHash: string;
70
+ relayData: ContractRelayData;
71
+ };
72
+ export declare function getV3RelayHash(relayData: V3RelayData, destChainId: number): string;
73
+ export declare function getLegacyV3RelayHash(relayData: V3RelayData, destChainId: number): string;
74
+ export declare function getDepositParams(args: {
75
+ recipient?: string;
76
+ originToken: string;
77
+ amount: BigNumber;
78
+ destinationChainId: number;
79
+ relayerFeePct: BigNumber;
80
+ quoteTimestamp: number;
81
+ message?: string;
82
+ maxCount?: BigNumber;
83
+ }): string[];
84
+ export declare function getFillRelayParams(_relayData: ContractRelayData, _maxTokensToSend: BigNumber, _repaymentChain?: number, _maxCount?: BigNumber): string[];
85
+ export declare function getFillRelayUpdatedFeeParams(_relayData: ContractRelayData, _maxTokensToSend: BigNumber, _updatedFee: BigNumber, _signature: string, _repaymentChain?: number, _updatedRecipient?: string, _updatedMessage?: string, _maxCount?: BigNumber): string[];
86
+ export declare function getExecuteSlowRelayParams(_depositor: string, _recipient: string, _destToken: string, _amount: BigNumber, _originChainId: number, _realizedLpFeePct: BigNumber, _relayerFeePct: BigNumber, _depositId: number, _relayerRefundId: number, _message: string, _payoutAdjustment: BigNumber, _proof: string[]): (string | string[])[];
87
+ export declare function modifyRelayHelper(modifiedRelayerFeePct: BigNumber, depositId: string, originChainId: string, depositor: SignerWithAddress, updatedRecipient: string, updatedMessage: string): Promise<{
88
+ signature: string;
89
+ }>;
90
+ export declare function getUpdatedV3DepositSignature(depositor: SignerWithAddress, depositId: BigNumber, originChainId: number, updatedOutputAmount: BigNumber, updatedRecipient: string, updatedMessage: string): Promise<string>;
91
+ export declare function deployMockSpokePoolCaller(spokePool: Contract, rootBundleId: number, leaf: {
92
+ amountToReturn: BigNumber;
93
+ chainId: BigNumber;
94
+ refundAmounts: BigNumber[];
95
+ leafId: BigNumber;
96
+ l2TokenAddress: string;
97
+ refundAddresses: string[];
98
+ }, proof: string[]): Promise<Contract>;
8
99
  /**
9
100
  * Deploys a SpokePool with associated tokens for testing.
10
101
  * This is a local implementation that uses our local getContractFactory
@@ -1 +1 @@
1
- {"version":3,"file":"SpokePool.Fixture.d.ts","sourceRoot":"","sources":["../../../../test/fixtures/SpokePool.Fixture.ts"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AACnC,OAAO,gCAAgC,CAAC;AACxC,OAAO,gBAAgB,CAAC;AACxB,OAAO,GAAG,MAAM,SAAS,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAsC,WAAW,EAAE,MAAM,cAAc,CAAC;AAE/E,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,OAAO,GAAG,CAAC,MAAM,EACzB,aAAa,SAAkB,GAC9B,OAAO,CAAC;IACT,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,QAAQ,CAAC;IAChB,SAAS,EAAE,QAAQ,CAAC;IACpB,kBAAkB,EAAE,QAAQ,CAAC;IAC7B,SAAS,EAAE,QAAQ,CAAC;IACpB,OAAO,EAAE,QAAQ,CAAC;CACnB,CAAC,CAqCD;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB;UAhDrB,QAAQ;WACP,QAAQ;eACJ,QAAQ;wBACC,QAAQ;eACjB,QAAQ;aACV,QAAQ;EA6CjB,CAAC"}
1
+ {"version":3,"file":"SpokePool.Fixture.d.ts","sourceRoot":"","sources":["../../../../test/fixtures/SpokePool.Fixture.ts"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AACnC,OAAO,gCAAgC,CAAC;AACxC,OAAO,gBAAgB,CAAC;AACxB,OAAO,GAAG,MAAM,SAAS,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAuB,MAAM,QAAQ,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAE3E,OAAO,EAQL,WAAW,EAEZ,MAAM,cAAc,CAAC;AAItB,OAAO,EAAE,WAAW,EAAE,CAAC;AAMvB,4DAA4D;AAC5D,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,SAAS,CAAC;IAClB,gBAAgB,EAAE,SAAS,CAAC;IAC5B,aAAa,EAAE,SAAS,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,SAAS,CAAC;IACvB,YAAY,EAAE,SAAS,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,WAAW,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,SAAS,CAAC;IAC/B,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,mBAAmB,EAAE,SAAS,CAAC;CAChC;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,WAAW,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,SAAS,CAAC;CAChC;AAED,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAMD,0BAAkB,QAAQ;IACxB,QAAQ,IAAI;IACZ,gBAAgB,IAAI;IACpB,QAAQ,IAAI;CACb;AAED,0BAAkB,UAAU;IAC1B,QAAQ,IAAI;IACZ,iBAAiB,IAAI;IACrB,MAAM,IAAI;CACX;AAMD,wBAAgB,YAAY,CAC1B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,mBAAmB,EAAE,MAAM,EAC3B,iBAAiB,EAAE,MAAM,EACzB,OAAO,CAAC,EAAE,SAAS,EACnB,iBAAiB,CAAC,EAAE,SAAS,EAC7B,cAAc,CAAC,EAAE,SAAS,EAC1B,QAAQ,CAAC,EAAE,MAAM,GAChB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,iBAAiB,CAAA;CAAE,CAsBrD;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAUlF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAUxF;AAMD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,SAAS,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,GAAG,MAAM,EAAE,CAWX;AAED,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,iBAAiB,EAC7B,gBAAgB,EAAE,SAAS,EAC3B,eAAe,CAAC,EAAE,MAAM,EACxB,SAAS,CAAC,EAAE,SAAS,GACpB,MAAM,EAAE,CAeV;AAED,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,iBAAiB,EAC7B,gBAAgB,EAAE,SAAS,EAC3B,WAAW,EAAE,SAAS,EACtB,UAAU,EAAE,MAAM,EAClB,eAAe,CAAC,EAAE,MAAM,EACxB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,eAAe,CAAC,EAAE,MAAM,EACxB,SAAS,CAAC,EAAE,SAAS,GACpB,MAAM,EAAE,CAmBV;AAED,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,SAAS,EAClB,cAAc,EAAE,MAAM,EACtB,iBAAiB,EAAE,SAAS,EAC5B,cAAc,EAAE,SAAS,EACzB,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,QAAQ,EAAE,MAAM,EAChB,iBAAiB,EAAE,SAAS,EAC5B,MAAM,EAAE,MAAM,EAAE,GACf,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,CAevB;AAMD,wBAAsB,iBAAiB,CACrC,qBAAqB,EAAE,SAAS,EAChC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,iBAAiB,EAC5B,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CA0BhC;AAED,wBAAsB,4BAA4B,CAChD,SAAS,EAAE,iBAAiB,EAC5B,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,MAAM,EACrB,mBAAmB,EAAE,SAAS,EAC9B,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,CAyBjB;AAMD,wBAAsB,yBAAyB,CAC7C,SAAS,EAAE,QAAQ,EACnB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE;IACJ,cAAc,EAAE,SAAS,CAAC;IAC1B,OAAO,EAAE,SAAS,CAAC;IACnB,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B,MAAM,EAAE,SAAS,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B,EACD,KAAK,EAAE,MAAM,EAAE,GACd,OAAO,CAAC,QAAQ,CAAC,CAInB;AAMD;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,OAAO,GAAG,CAAC,MAAM,EACzB,aAAa,SAAkB,GAC9B,OAAO,CAAC;IACT,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,QAAQ,CAAC;IAChB,SAAS,EAAE,QAAQ,CAAC;IACpB,kBAAkB,EAAE,QAAQ,CAAC;IAC7B,SAAS,EAAE,QAAQ,CAAC;IACpB,OAAO,EAAE,QAAQ,CAAC;CACnB,CAAC,CAqCD;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB;UAhDrB,QAAQ;WACP,QAAQ;eACJ,QAAQ;wBACC,QAAQ;eACjB,QAAQ;aACV,QAAQ;EA6CjB,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { HardhatEthersHelpers } from "@nomiclabs/hardhat-ethers/types";
2
- import type { ethers } from "ethers";
2
+ import type { ethers, Contract, BigNumber } from "ethers";
3
3
  import winston from "winston";
4
- import * as utils from "@across-protocol/contracts/dist/test-utils";
5
4
  import { sinon } from "../utils";
6
5
  export type EthersTestLibrary = typeof ethers & HardhatEthersHelpers;
7
6
  export type SpyLoggerResult = {
@@ -9,20 +8,20 @@ export type SpyLoggerResult = {
9
8
  spyLogger: winston.Logger;
10
9
  };
11
10
  export type SpokePoolDeploymentResult = {
12
- weth: utils.Contract;
13
- erc20: utils.Contract;
14
- spokePool: utils.Contract;
15
- unwhitelistedErc20: utils.Contract;
16
- destErc20: utils.Contract;
11
+ weth: Contract;
12
+ erc20: Contract;
13
+ spokePool: Contract;
14
+ unwhitelistedErc20: Contract;
15
+ destErc20: Contract;
17
16
  deploymentBlock: number;
18
17
  };
19
18
  export type ContractsV2SlowFillRelayData = {
20
19
  depositor: string;
21
20
  recipient: string;
22
21
  destinationToken: string;
23
- amount: utils.BigNumber;
24
- realizedLpFeePct: utils.BigNumber;
25
- relayerFeePct: utils.BigNumber;
22
+ amount: BigNumber;
23
+ realizedLpFeePct: BigNumber;
24
+ relayerFeePct: BigNumber;
26
25
  depositId: string;
27
26
  originChainId: string;
28
27
  destinationChainId: string;
@@ -30,6 +29,6 @@ export type ContractsV2SlowFillRelayData = {
30
29
  };
31
30
  export type ContractsV2SlowFill = {
32
31
  relayData: ContractsV2SlowFillRelayData;
33
- payoutAdjustmentPct: utils.BigNumber;
32
+ payoutAdjustmentPct: BigNumber;
34
33
  };
35
34
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../test/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,KAAK,MAAM,4CAA4C,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,MAAM,iBAAiB,GAAG,OAAO,MAAM,GAAG,oBAAoB,CAAC;AACrE,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IACxC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC;IACtB,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC1B,kBAAkB,EAAE,KAAK,CAAC,QAAQ,CAAC;IACnC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,gBAAgB,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,4BAA4B,CAAC;IACxC,mBAAmB,EAAE,KAAK,CAAC,SAAS,CAAC;CACtC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../test/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAC1D,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,MAAM,iBAAiB,GAAG,OAAO,MAAM,GAAG,oBAAoB,CAAC;AACrE,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;IACxC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,QAAQ,CAAC;IAChB,SAAS,EAAE,QAAQ,CAAC;IACpB,kBAAkB,EAAE,QAAQ,CAAC;IAC7B,SAAS,EAAE,QAAQ,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,SAAS,CAAC;IAClB,gBAAgB,EAAE,SAAS,CAAC;IAC5B,aAAa,EAAE,SAAS,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,4BAA4B,CAAC;IACxC,mBAAmB,EAAE,SAAS,CAAC;CAChC,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * These are reimplementations of the utilities from @across-protocol/contracts
4
4
  * to avoid dependency on their getContractFactory which looks for Hardhat artifacts.
5
5
  */
6
- import { BigNumber, ethers } from "ethers";
6
+ import { BigNumber, Contract, ethers } from "ethers";
7
7
  import { MerkleTree } from "@across-protocol/contracts/dist/utils/MerkleTree";
8
8
  /**
9
9
  * Get the parameter type for a contract function parameter.
@@ -64,4 +64,35 @@ export declare function buildSlowRelayTree(slowFills: unknown[]): Promise<Merkle
64
64
  * Build a V3 slow relay Merkle tree.
65
65
  */
66
66
  export declare function buildV3SlowRelayTree(slowFills: unknown[]): Promise<MerkleTree<unknown>>;
67
+ /**
68
+ * Construct a single-leaf relayer refund tree.
69
+ */
70
+ export declare function constructSingleRelayerRefundTree(l2Token: Contract | string, destinationChainId: number, amount?: BigNumber): Promise<{
71
+ leaves: {
72
+ leafId: BigNumber;
73
+ chainId: BigNumber;
74
+ amountToReturn: BigNumber;
75
+ l2TokenAddress: string;
76
+ refundAddresses: string[];
77
+ refundAmounts: BigNumber[];
78
+ }[];
79
+ tree: MerkleTree<unknown>;
80
+ }>;
81
+ /**
82
+ * Construct a single-chain pool rebalance tree.
83
+ */
84
+ export declare function constructSingleChainTree(token: string, scalingSize?: number, repaymentChain?: number, decimals?: number): Promise<{
85
+ tokensSendToL2: BigNumber;
86
+ realizedLpFees: BigNumber;
87
+ leaves: {
88
+ leafId: BigNumber;
89
+ chainId: BigNumber;
90
+ groupIndex: BigNumber;
91
+ bundleLpFees: BigNumber[];
92
+ netSendAmounts: BigNumber[];
93
+ runningBalances: BigNumber[];
94
+ l1Tokens: string[];
95
+ }[];
96
+ tree: MerkleTree<unknown>;
97
+ }>;
67
98
  //# sourceMappingURL=MerkleLib.utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MerkleLib.utils.d.ts","sourceRoot":"","sources":["../../../../test/utils/MerkleLib.utils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAC;AAK9E;;;GAGG;AACH,wBAAsB,YAAY,CAChC,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,CAQ1C;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,mBAAmB,EAAE;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,CAAC;IACnB,cAAc,EAAE,SAAS,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,EAAE,SAAS,EAAE,CAAC;CAC5B,EAAE,GACF,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAO9B;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,mBAAmB,EAAE,MAAM,EAAE,EAC7B,eAAe,EAAE,SAAS,EAAE,EAC5B,QAAQ,EAAE,MAAM,EAAE,EAClB,eAAe,EAAE,MAAM,EAAE,EAAE,EAC3B,aAAa,EAAE,SAAS,EAAE,EAAE,GAC3B;IACD,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,CAAC;IACnB,cAAc,EAAE,SAAS,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,EAAE,SAAS,EAAE,CAAC;CAC5B,EAAE,CAaF;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAC9C,mBAAmB,EAAE;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,CAAC;IACnB,UAAU,EAAE,SAAS,CAAC;IACtB,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B,eAAe,EAAE,SAAS,EAAE,CAAC;IAC7B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,EAAE,GACF,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAW9B;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,mBAAmB,EAAE,MAAM,EAAE,EAC7B,QAAQ,EAAE,MAAM,EAAE,EAAE,EACpB,YAAY,EAAE,SAAS,EAAE,EAAE,EAC3B,cAAc,EAAE,SAAS,EAAE,EAAE,EAC7B,eAAe,EAAE,SAAS,EAAE,EAAE,EAC9B,UAAU,EAAE,MAAM,EAAE,GACnB;IACD,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,SAAS,CAAC;IACnB,UAAU,EAAE,SAAS,CAAC;IACtB,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,cAAc,EAAE,SAAS,EAAE,CAAC;IAC5B,eAAe,EAAE,SAAS,EAAE,CAAC;IAC7B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,EAAE,CAcF;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAI3F;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAI7F"}
1
+ {"version":3,"file":"MerkleLib.utils.d.ts","sourceRoot":"","sources":["../../../../test/utils/MerkleLib.utils.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import "@nomiclabs/hardhat-ethers";
2
- export * as contractsV2Utils from "@across-protocol/contracts/dist/test-utils";
3
2
  export { ethers } from "hardhat";
4
3
  export { smock } from "@defi-wonderland/smock";
5
4
  export * from "./utils";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../test/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AACnC,OAAO,KAAK,gBAAgB,MAAM,4CAA4C,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../test/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAE/C,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
@@ -1,47 +1,74 @@
1
1
  import { AcrossConfigStore } from "@across-protocol/contracts";
2
- import * as utils from "@across-protocol/contracts/dist/test-utils";
3
2
  import chai, { expect } from "chai";
4
- import { Contract, providers } from "ethers";
3
+ import { ethers, BaseContract, Contract, providers, Signer } from "ethers";
4
+ import { FakeContract } from "@defi-wonderland/smock";
5
5
  import sinon from "sinon";
6
6
  import winston from "winston";
7
+ import type { SignerWithAddress } from "@nomiclabs/hardhat-ethers/signers";
7
8
  import { AcrossConfigStoreClient as ConfigStoreClient } from "../../src/clients";
8
9
  import { Deposit, DepositWithBlock, FillWithBlock, RelayData, SlowFillRequestWithBlock } from "../../src/interfaces";
9
10
  import { Address, BigNumber, BigNumberish, toBN, toBNWei, toWei, utf8ToHex } from "../../src/utils";
11
+ import { randomAddress, zeroAddress } from "../constants";
10
12
  import { SpokePoolDeploymentResult, SpyLoggerResult } from "../types";
11
13
  declare const chaiAssert: Chai.AssertStatic;
12
- export type SignerWithAddress = utils.SignerWithAddress;
13
- export declare const getDepositParams: typeof utils.getDepositParams, getUpdatedV3DepositSignature: typeof utils.getUpdatedV3DepositSignature, modifyRelayHelper: typeof utils.modifyRelayHelper, randomAddress: typeof utils.randomAddress, zeroAddress: string;
14
- export { buildPoolRebalanceLeafTree, buildPoolRebalanceLeaves, buildRelayerRefundTree, buildRelayerRefundLeaves, buildSlowRelayTree, buildV3SlowRelayTree, getParamType, } from "./MerkleLib.utils";
14
+ export { ethers };
15
+ export type { SignerWithAddress };
16
+ export { getDepositParams, getUpdatedV3DepositSignature, modifyRelayHelper, getRelayHash, getV3RelayHash, getLegacyV3RelayHash, getFillRelayParams, getFillRelayUpdatedFeeParams, getExecuteSlowRelayParams, deployMockSpokePoolCaller, } from "../fixtures/SpokePool.Fixture";
17
+ export type { ContractRelayData, V3RelayData, V3RelayExecutionParams, SlowFill, V3SlowFill, UpdatedRelayerFeeData, } from "../fixtures/SpokePool.Fixture";
18
+ export { FillType, FillStatus } from "../fixtures/SpokePool.Fixture";
19
+ export { randomAddress, zeroAddress };
20
+ export { buildPoolRebalanceLeafTree, buildPoolRebalanceLeaves, buildRelayerRefundTree, buildRelayerRefundLeaves, buildSlowRelayTree, buildV3SlowRelayTree, getParamType, constructSingleRelayerRefundTree, constructSingleChainTree, } from "./MerkleLib.utils";
15
21
  import { getContractFactory } from "./getContractFactory";
16
22
  export { getContractFactory };
17
23
  import { hubPoolFixture, deployHubPool } from "../fixtures/HubPool.Fixture";
18
24
  import { spokePoolFixture, deploySpokePool } from "../fixtures/SpokePool.Fixture";
19
25
  export { hubPoolFixture, deployHubPool, spokePoolFixture, deploySpokePool };
26
+ export { merkleLibFixture } from "../fixtures/MerkleLib.Fixture";
20
27
  export { BigNumber, Contract, chai, chaiAssert, expect, sinon, toBN, toBNWei, toWei, utf8ToHex, winston };
28
+ declare const defaultAbiCoder: ethers.utils.AbiCoder, keccak256: typeof ethers.utils.keccak256;
29
+ export { defaultAbiCoder, keccak256, Signer, FakeContract };
30
+ export declare const toWeiWithDecimals: (num: string | number | BigNumber, decimals: number) => BigNumber;
31
+ export declare const toBNWeiWithDecimals: (num: string | number | BigNumber, decimals: number) => BigNumber;
32
+ export declare const fromWei: (num: string | number | BigNumber) => string;
33
+ export declare const hexToUtf8: (input: string) => string;
34
+ export declare const hexZeroPad: (input: string, length: number) => string;
35
+ export declare const addressToBytes: (input: string) => string;
36
+ export declare const bytes32ToAddress: (input: string) => string;
37
+ export declare const isBytes32: (input: string) => boolean;
38
+ export declare function randomBigNumber(bytes?: number, signed?: boolean): BigNumber;
39
+ export declare function randomBytes32(): string;
40
+ export declare function seedWallet(walletToFund: Signer, tokens: Contract[], weth: Contract | undefined, amountToSeedWith: number | BigNumber): Promise<void>;
41
+ export declare function seedContract(contract: Contract, walletToFund: Signer, tokens: Contract[], weth: Contract | undefined, amountToSeedWith: number | BigNumber): Promise<void>;
42
+ export declare function createFake(contractName: string, targetAddress?: string): Promise<FakeContract<BaseContract>>;
43
+ export declare function createFakeFromABI(abi: unknown[], targetAddress?: string): Promise<FakeContract<BaseContract>>;
44
+ export declare function createTypedFakeFromABI<T extends BaseContract>(abi: unknown[], targetAddress?: string): Promise<FakeContract<T>>;
45
+ export declare function trimSolanaAddress(bytes32Address: string): string;
46
+ export declare function hashNonEmptyMessage(message: string): string;
47
+ export declare const createRandomBytes32: () => string;
21
48
  export declare function deepEqualsWithBigNumber(x: unknown, y: unknown, omitKeys?: string[]): boolean;
22
49
  export declare function assertPromiseError<T>(promise: Promise<T>, errMessage?: string): Promise<void>;
23
50
  export declare function assertPromisePasses<T>(promise: Promise<T>): Promise<void>;
24
- export declare function setupTokensForWallet(contractToApprove: utils.Contract, wallet: utils.SignerWithAddress, tokens: utils.Contract[], weth?: utils.Contract, seedMultiplier?: number): Promise<void>;
51
+ export declare function setupTokensForWallet(contractToApprove: Contract, wallet: SignerWithAddress, tokens: Contract[], weth?: Contract, seedMultiplier?: number): Promise<void>;
25
52
  export declare function createSpyLogger(): SpyLoggerResult;
26
53
  export declare function deploySpokePoolWithToken(fromChainId?: number): Promise<SpokePoolDeploymentResult>;
27
- export declare function deployConfigStore(signer: utils.SignerWithAddress, tokensToAdd: utils.Contract[], maxL1TokensPerPoolRebalanceLeaf?: number, maxRefundPerRelayerRefundLeaf?: number, rateModel?: unknown, additionalChainIdIndices?: number[]): Promise<{
54
+ export declare function deployConfigStore(signer: SignerWithAddress, tokensToAdd: Contract[], maxL1TokensPerPoolRebalanceLeaf?: number, maxRefundPerRelayerRefundLeaf?: number, rateModel?: unknown, additionalChainIdIndices?: number[]): Promise<{
28
55
  configStore: AcrossConfigStore;
29
56
  deploymentBlock: number;
30
57
  }>;
31
- export declare function deployAndConfigureHubPool(signer: utils.SignerWithAddress, spokePools: {
58
+ export declare function deployAndConfigureHubPool(signer: SignerWithAddress, spokePools: {
32
59
  l2ChainId: number;
33
- spokePool: utils.Contract;
60
+ spokePool: Contract;
34
61
  }[], finderAddress?: string, timerAddress?: string): Promise<{
35
- hubPool: utils.Contract;
36
- mockAdapter: utils.Contract;
37
- l1Token_1: utils.Contract;
38
- l1Token_2: utils.Contract;
62
+ hubPool: Contract;
63
+ mockAdapter: Contract;
64
+ l1Token_1: Contract;
65
+ l1Token_2: Contract;
39
66
  hubPoolDeploymentBlock: number;
40
67
  }>;
41
- export declare function enableRoutesOnHubPool(hubPool: utils.Contract, rebalanceRouteTokens: {
68
+ export declare function enableRoutesOnHubPool(hubPool: Contract, rebalanceRouteTokens: {
42
69
  destinationChainId: number;
43
- l1Token: utils.Contract;
44
- destinationToken: utils.Contract;
70
+ l1Token: Contract;
71
+ destinationToken: Contract;
45
72
  }[]): Promise<void>;
46
73
  /**
47
74
  * Takes as input a body and returns a new object with the body and a message property. Used to appease the typescript
@@ -53,7 +80,7 @@ export declare function appendMessageToResult<T>(body: T): T & {
53
80
  message: string;
54
81
  };
55
82
  export declare function getLastBlockTime(provider: providers.Provider): Promise<number>;
56
- export declare function addLiquidity(signer: utils.SignerWithAddress, hubPool: utils.Contract, l1Token: utils.Contract, amount: utils.BigNumber): Promise<void>;
83
+ export declare function addLiquidity(signer: SignerWithAddress, hubPool: Contract, l1Token: Contract, amount: BigNumber): Promise<void>;
57
84
  export declare function deposit(spokePool: Contract, destinationChainId: number, signer: SignerWithAddress, inputToken: Address, inputAmount: BigNumber, outputToken: Address, outputAmount: BigNumber, opts?: {
58
85
  destinationChainId?: number;
59
86
  recipient?: Address;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../test/utils/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../test/utils/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@across-protocol/sdk",
3
3
  "author": "UMA Team",
4
- "version": "4.3.118",
4
+ "version": "4.3.120-alpha.1",
5
5
  "license": "AGPL-3.0",
6
6
  "homepage": "https://docs.across.to/reference/sdk",
7
7
  "repository": {
@@ -46,6 +46,7 @@ import {
46
46
  BundleDataSS,
47
47
  getRefundInformationFromFill,
48
48
  isChainDisabledAtBlock,
49
+ isChainPaused,
49
50
  prettyPrintV3SpokePoolEvents,
50
51
  V3DepositWithBlock,
51
52
  V3FillWithBlock,
@@ -434,6 +435,15 @@ export class BundleDataClient {
434
435
  // (2) the fill deadline has passed. We'll need to decrement running balances for these deposits on the
435
436
  // destination chain where the slow fill would have been executed.
436
437
 
438
+ const _isChainDisabled = (chainId: number): boolean => {
439
+ return isChainDisabledAtBlock(chainId, bundleStartBlockForMainnet, this.clients.configStoreClient);
440
+ };
441
+
442
+ const _isChainPaused = (chainId: number): boolean => {
443
+ const blockRangeForChain = getBlockRangeForChain(blockRangesForChains, chainId, chainIds);
444
+ return isChainPaused(blockRangeForChain);
445
+ };
446
+
437
447
  const _canCreateSlowFillLeaf = (deposit: DepositWithBlock): boolean => {
438
448
  return (
439
449
  // Cannot slow fill when input and output tokens are not equivalent.
@@ -469,11 +479,7 @@ export class BundleDataClient {
469
479
  // Infer chain ID's to load from number of block ranges passed in.
470
480
  const allChainIds = blockRangesForChains
471
481
  .map((_blockRange, index) => chainIds[index])
472
- .filter(
473
- (chainId) =>
474
- !isChainDisabledAtBlock(chainId, bundleStartBlockForMainnet, this.clients.configStoreClient) &&
475
- spokePoolClients[chainId] !== undefined
476
- );
482
+ .filter((chainId) => !_isChainDisabled(chainId) && spokePoolClients[chainId] !== undefined);
477
483
  allChainIds.forEach((chainId) => {
478
484
  const spokePoolClient = spokePoolClients[chainId];
479
485
  if (!spokePoolClient.isUpdated) {
@@ -573,8 +579,13 @@ export class BundleDataClient {
573
579
  });
574
580
  throw new Error("Duplicate deposit detected");
575
581
  }
576
- bundleDepositHashes.push(newBundleDepositHash);
577
- updateBundleDepositsV3(bundleDepositsV3, deposit);
582
+ // Only save a bundle deposit if the chain is unpaused, otherwise we've already processed this deposit
583
+ // as a "bundle deposit" in the previous bundle because the "paused block range" is equal to the
584
+ // previous bundle's end block.
585
+ if (!_isChainPaused(originChainId)) {
586
+ bundleDepositHashes.push(newBundleDepositHash);
587
+ updateBundleDepositsV3(bundleDepositsV3, deposit);
588
+ }
578
589
  } else if (deposit.blockNumber < originChainBlockRange[0]) {
579
590
  olderDepositHashes.push(newBundleDepositHash);
580
591
  }
@@ -605,9 +616,11 @@ export class BundleDataClient {
605
616
  const validatedBundleSlowFills: V3DepositWithBlock[] = [];
606
617
  const validatedBundleUnexecutableSlowFills: V3DepositWithBlock[] = [];
607
618
  let fillCounter = 0;
608
- for (const originChainId of allChainIds) {
619
+ // Only evaluate fills and slow fills for chains that are unpaused.
620
+ const allFillChainIds = allChainIds.filter((chainId) => !_isChainPaused(chainId));
621
+ for (const originChainId of allFillChainIds) {
609
622
  const originClient = spokePoolClients[originChainId];
610
- for (const destinationChainId of allChainIds) {
623
+ for (const destinationChainId of allFillChainIds) {
611
624
  const destinationClient = spokePoolClients[destinationChainId];
612
625
  const destinationChainBlockRange = getBlockRangeForChain(blockRangesForChains, destinationChainId, chainIds);
613
626
  const originChainBlockRange = getBlockRangeForChain(blockRangesForChains, originChainId, chainIds);
@@ -1061,6 +1074,12 @@ export class BundleDataClient {
1061
1074
  }
1062
1075
  const deposit = deposits[index];
1063
1076
  const { destinationChainId } = deposit;
1077
+
1078
+ // On the off chance the destination chain is paused at the exact block where the deposit.fillDeadline expires,
1079
+ // where the deposit.fillDeadline expires, then we should not process it.
1080
+ if (_isChainPaused(destinationChainId)) {
1081
+ return;
1082
+ }
1064
1083
  const destinationBlockRange = getBlockRangeForChain(blockRangesForChains, destinationChainId, chainIds);
1065
1084
 
1066
1085
  // Only look for deposits that were mined before this bundle and that are newly expired.
@@ -98,6 +98,10 @@ export async function getWidestPossibleExpectedBlockRange(
98
98
  });
99
99
  }
100
100
 
101
+ export function isChainPaused(blockRangeForChain: number[]): boolean {
102
+ return blockRangeForChain[0] === blockRangeForChain[1];
103
+ }
104
+
101
105
  export function isChainDisabledAtBlock(
102
106
  chainId: number,
103
107
  mainnetBlock: number,