@across-protocol/sdk 3.4.13 → 3.4.15

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 (55) hide show
  1. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +23 -6
  2. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  3. package/dist/cjs/clients/SpokePoolClient.js +3 -3
  4. package/dist/cjs/clients/SpokePoolClient.js.map +1 -1
  5. package/dist/cjs/clients/mocks/MockSpokePoolClient.js +1 -1
  6. package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
  7. package/dist/cjs/utils/AddressUtils.d.ts +1 -0
  8. package/dist/cjs/utils/AddressUtils.js +14 -1
  9. package/dist/cjs/utils/AddressUtils.js.map +1 -1
  10. package/dist/cjs/utils/CachingUtils.js +1 -1
  11. package/dist/cjs/utils/CachingUtils.js.map +1 -1
  12. package/dist/cjs/utils/DepositUtils.d.ts +2 -1
  13. package/dist/cjs/utils/DepositUtils.js +12 -3
  14. package/dist/cjs/utils/DepositUtils.js.map +1 -1
  15. package/dist/cjs/utils/NetworkUtils.d.ts +1 -0
  16. package/dist/cjs/utils/NetworkUtils.js +6 -1
  17. package/dist/cjs/utils/NetworkUtils.js.map +1 -1
  18. package/dist/cjs/utils/SpokeUtils.js +3 -3
  19. package/dist/cjs/utils/SpokeUtils.js.map +1 -1
  20. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +30 -7
  21. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  22. package/dist/esm/clients/SpokePoolClient.js +3 -3
  23. package/dist/esm/clients/SpokePoolClient.js.map +1 -1
  24. package/dist/esm/clients/mocks/MockSpokePoolClient.js +1 -1
  25. package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
  26. package/dist/esm/utils/AddressUtils.d.ts +1 -0
  27. package/dist/esm/utils/AddressUtils.js +16 -0
  28. package/dist/esm/utils/AddressUtils.js.map +1 -1
  29. package/dist/esm/utils/CachingUtils.js +1 -1
  30. package/dist/esm/utils/CachingUtils.js.map +1 -1
  31. package/dist/esm/utils/DepositUtils.d.ts +2 -1
  32. package/dist/esm/utils/DepositUtils.js +12 -3
  33. package/dist/esm/utils/DepositUtils.js.map +1 -1
  34. package/dist/esm/utils/NetworkUtils.d.ts +6 -0
  35. package/dist/esm/utils/NetworkUtils.js +10 -0
  36. package/dist/esm/utils/NetworkUtils.js.map +1 -1
  37. package/dist/esm/utils/SpokeUtils.js +4 -4
  38. package/dist/esm/utils/SpokeUtils.js.map +1 -1
  39. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  40. package/dist/types/utils/AddressUtils.d.ts +1 -0
  41. package/dist/types/utils/AddressUtils.d.ts.map +1 -1
  42. package/dist/types/utils/DepositUtils.d.ts +2 -1
  43. package/dist/types/utils/DepositUtils.d.ts.map +1 -1
  44. package/dist/types/utils/NetworkUtils.d.ts +6 -0
  45. package/dist/types/utils/NetworkUtils.d.ts.map +1 -1
  46. package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
  47. package/package.json +1 -1
  48. package/src/clients/BundleDataClient/BundleDataClient.ts +29 -1
  49. package/src/clients/SpokePoolClient.ts +3 -3
  50. package/src/clients/mocks/MockSpokePoolClient.ts +1 -1
  51. package/src/utils/AddressUtils.ts +16 -0
  52. package/src/utils/CachingUtils.ts +1 -1
  53. package/src/utils/DepositUtils.ts +12 -3
  54. package/src/utils/NetworkUtils.ts +11 -0
  55. package/src/utils/SpokeUtils.ts +6 -4
@@ -3,7 +3,8 @@ import { CachingMechanismInterface, Deposit, DepositWithBlock, Fill, SlowFillReq
3
3
  export declare enum InvalidFill {
4
4
  DepositIdInvalid = 0,
5
5
  DepositIdNotFound = 1,
6
- FillMismatch = 2
6
+ FillMismatch = 2,
7
+ DepositIdOutOfRange = 3
7
8
  }
8
9
  export type DepositSearchResult = {
9
10
  found: true;
@@ -4,6 +4,7 @@ import { DEFAULT_CACHING_TTL, EMPTY_MESSAGE } from "../constants";
4
4
  import { getNetworkName } from "./NetworkUtils";
5
5
  import { getDepositInCache, getDepositKey, setDepositInCache } from "./CachingUtils";
6
6
  import { validateFillForDeposit } from "./FlowUtils";
7
+ import { isUnsafeDepositId } from "./SpokeUtils";
7
8
  import { getCurrentTime } from "./TimeUtils";
8
9
  import { isDefined } from "./TypeGuards";
9
10
  import { isDepositFormedCorrectly } from "./ValidatorUtils";
@@ -15,6 +16,7 @@ export var InvalidFill;
15
16
  InvalidFill[InvalidFill["DepositIdInvalid"] = 0] = "DepositIdInvalid";
16
17
  InvalidFill[InvalidFill["DepositIdNotFound"] = 1] = "DepositIdNotFound";
17
18
  InvalidFill[InvalidFill["FillMismatch"] = 2] = "FillMismatch";
19
+ InvalidFill[InvalidFill["DepositIdOutOfRange"] = 3] = "DepositIdOutOfRange";
18
20
  })(InvalidFill || (InvalidFill = {}));
19
21
  /**
20
22
  * Attempts to resolve a deposit for a fill. If the fill's deposit Id is within the spoke pool client's search range,
@@ -34,6 +36,13 @@ export function queryHistoricalDepositForFill(spokePoolClient, fill, cache) {
34
36
  return __generator(this, function (_a) {
35
37
  switch (_a.label) {
36
38
  case 0:
39
+ if (isUnsafeDepositId(fill.depositId)) {
40
+ return [2 /*return*/, {
41
+ found: false,
42
+ code: InvalidFill.DepositIdOutOfRange,
43
+ reason: "Cannot find historical deposit for fill with unsafe deposit ID ".concat(fill.depositId, "."),
44
+ }];
45
+ }
37
46
  if (fill.originChainId !== spokePoolClient.chainId) {
38
47
  throw new Error("OriginChainId mismatch (".concat(fill.originChainId, " != ").concat(spokePoolClient.chainId, ")"));
39
48
  }
@@ -48,7 +57,7 @@ export function queryHistoricalDepositForFill(spokePoolClient, fill, cache) {
48
57
  return [2 /*return*/, {
49
58
  found: false,
50
59
  code: InvalidFill.DepositIdInvalid,
51
- reason: "Deposit ID ".concat(depositId, " is outside of SpokePool bounds [").concat(lowId, ",").concat(highId, "]."),
60
+ reason: "Deposit ID ".concat(depositId.toString(), " is outside of SpokePool bounds [").concat(lowId, ",").concat(highId, "]."),
52
61
  }];
53
62
  }
54
63
  (lowId = spokePoolClient.earliestDepositIdQueried, highId = spokePoolClient.latestDepositIdQueried);
@@ -63,13 +72,13 @@ export function queryHistoricalDepositForFill(spokePoolClient, fill, cache) {
63
72
  return [2 /*return*/, {
64
73
  found: false,
65
74
  code: InvalidFill.FillMismatch,
66
- reason: "Fill for ".concat(originChain, " deposit ID ").concat(depositId, " is invalid (").concat(match_1.reason, ")."),
75
+ reason: "Fill for ".concat(originChain, " deposit ID ").concat(depositId.toString(), " is invalid (").concat(match_1.reason, ")."),
67
76
  }];
68
77
  }
69
78
  return [2 /*return*/, {
70
79
  found: false,
71
80
  code: InvalidFill.DepositIdNotFound,
72
- reason: "".concat(originChain, " deposit ID ").concat(depositId, " not found in SpokePoolClient event buffer."),
81
+ reason: "".concat(originChain, " deposit ID ").concat(depositId.toString(), " not found in SpokePoolClient event buffer."),
73
82
  }];
74
83
  }
75
84
  if (!cache) return [3 /*break*/, 2];
@@ -1 +1 @@
1
- {"version":3,"file":"DepositUtils.js","sourceRoot":"","sources":["../../../src/utils/DepositUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DepositUtils.js","sourceRoot":"","sources":["../../../src/utils/DepositUtils.ts"],"names":[],"mappings":"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"}
@@ -76,6 +76,12 @@ export declare function chainIsLinea(chainId: number): boolean;
76
76
  * @returns True if chain corresponding to chainId has a hub pool implementation.
77
77
  */
78
78
  export declare function chainIsL1(chainId: number): boolean;
79
+ /**
80
+ * Determines whether a chain ID runs on an EVM-like execution layer.
81
+ * @param chainId Chain ID to evaluate.
82
+ * @returns True if chain corresponding to chainId has an EVM-like execution layer.
83
+ */
84
+ export declare function chainIsEvm(chainId: number): boolean;
79
85
  /**
80
86
  * Determines whether a chain ID has the capacity for having its USDC bridged via CCTP.
81
87
  * @param chainId Chain ID to evaluate.
@@ -113,6 +113,16 @@ export function chainIsLinea(chainId) {
113
113
  export function chainIsL1(chainId) {
114
114
  return [CHAIN_IDs.MAINNET, CHAIN_IDs.SEPOLIA].includes(chainId);
115
115
  }
116
+ /**
117
+ * Determines whether a chain ID runs on an EVM-like execution layer.
118
+ * @param chainId Chain ID to evaluate.
119
+ * @returns True if chain corresponding to chainId has an EVM-like execution layer.
120
+ */
121
+ export function chainIsEvm(chainId) {
122
+ chainId;
123
+ // TODO: Fix when we support non-EVM chains.
124
+ return true;
125
+ }
116
126
  /**
117
127
  * Determines whether a chain ID has the capacity for having its USDC bridged via CCTP.
118
128
  * @param chainId Chain ID to evaluate.
@@ -1 +1 @@
1
- {"version":3,"file":"NetworkUtils.js","sourceRoot":"","sources":["../../../src/utils/NetworkUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NetworkUtils.js","sourceRoot":"","sources":["../../../src/utils/NetworkUtils.ts"],"names":[],"mappings":"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"}
@@ -132,7 +132,7 @@ export function getBlockRangeForDepositId(targetDepositId, initLow, initHigh, ma
132
132
  // // targetId = 1 <- fail (triggers this error)
133
133
  // // targetId = 2 <- pass (does not trigger this error)
134
134
  // // targetId = 3 <- pass (does not trigger this error)
135
- throw new Error("Target depositId is less than the initial low block (".concat(targetDepositId, " > ").concat(lowestDepositIdInRange, ")"));
135
+ throw new Error("Target depositId is less than the initial low block (".concat(targetDepositId.toString(), " > ").concat(lowestDepositIdInRange, ")"));
136
136
  }
137
137
  low = initLow;
138
138
  high = initHigh;
@@ -186,7 +186,7 @@ export function getDepositIdAtBlock(contract, blockTag) {
186
186
  case 1:
187
187
  _depositIdAtBlock = _a.sent();
188
188
  depositIdAtBlock = toBN(_depositIdAtBlock);
189
- // Sanity check to ensure that the deposit ID is an integer and is greater than or equal to zero.
189
+ // Sanity check to ensure that the deposit ID is greater than or equal to zero.
190
190
  if (depositIdAtBlock.lt(bnZero)) {
191
191
  throw new Error("Invalid deposit count");
192
192
  }
@@ -261,7 +261,7 @@ export function relayFillStatus(spokePool, relayData, blockTag, destinationChain
261
261
  fillStatus = Number(_fillStatus);
262
262
  if (![FillStatus.Unfilled, FillStatus.RequestedSlowFill, FillStatus.Filled].includes(fillStatus)) {
263
263
  originChainId = relayData.originChainId, depositId = relayData.depositId;
264
- throw new Error("relayFillStatus: Unexpected fillStatus for ".concat(originChainId, " deposit ").concat(depositId, " (").concat(fillStatus, ")"));
264
+ throw new Error("relayFillStatus: Unexpected fillStatus for ".concat(originChainId, " deposit ").concat(depositId.toString(), " (").concat(fillStatus, ")"));
265
265
  }
266
266
  return [2 /*return*/, fillStatus];
267
267
  }
@@ -357,7 +357,7 @@ export function findFillBlock(spokePool, relayData, lowBlockNumber, highBlockNum
357
357
  if (initialFillStatus === FillStatus.Filled) {
358
358
  depositId = relayData.depositId, originChainId = relayData.originChainId;
359
359
  _e = [getNetworkName(originChainId), getNetworkName(destinationChainId)], srcChain = _e[0], dstChain = _e[1];
360
- throw new Error("".concat(srcChain, " deposit ").concat(depositId, " filled on ").concat(dstChain, " before block ").concat(lowBlockNumber));
360
+ throw new Error("".concat(srcChain, " deposit ").concat(depositId.toString(), " filled on ").concat(dstChain, " before block ").concat(lowBlockNumber));
361
361
  }
362
362
  _f.label = 9;
363
363
  case 9:
@@ -1 +1 @@
1
- {"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAwD,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AACpG,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACxF,OAAO,EAAiB,UAAU,EAA8B,MAAM,eAAe,CAAC;AAEtF,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAIhD;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,SAAmB,EACnB,OAAgB,EAChB,OAAe,EACf,gBAA6C;IAA7C,iCAAA,EAAA,mBAAmB,OAAO,CAAC,kBAAkB;IAE7C,IAAM,WAAW,GAAc;QAC7B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC;IACF,IAAI,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;QACvC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,OAAO,CAAC,gBAAgB,KAAK,YAAY,CAAC,CAAC;QACzF,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC/C,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAC1C,OAAO,SAAS,CAAC,mBAAmB,CAAC,6BAA6B,CAChE,WAAW,EACX,gBAAgB,EAChB,OAAO,CAAC,mBAAmB,EAC3B,OAAO,CAAC,gBAAgB,EACxB,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,gBAAgB,EACxB,EAAE,IAAI,EAAE,OAAO,EAAE,CAClB,CAAC;KACH;IAED,OAAO,SAAS,CAAC,mBAAmB,CAAC,WAAW,CAAC,WAAW,EAAE,gBAAgB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AACrG,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAgB,yBAAyB,CAC7C,eAA0B,EAC1B,OAAe,EACf,QAAgB,EAChB,WAAmB,EACnB,SAA0B;;;;;;;oBAK1B,kEAAkE;oBAClE,IAAI,iBAAiB,CAAC,eAAe,CAAC;wBACpC,MAAM,IAAI,KAAK,CACb,4BAAqB,eAAe,sEAAmE,CACxG,CAAC;oBAGE,eAAe,GAAG,SAAS,CAAC,eAAe,CAAC;oBAElD,8GAA8G;oBAC9G,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;oBAE7D,yFAAyF;oBACzF,mCAAmC;oBACnC,mEAAmE;oBAEjE;wBACE,+DAA+D;wBAC/D,CAAC,SAAS,CAAC,SAAS,EAAE,kCAAkC,CAAC;wBACzD,4EAA4E;wBAC5E,CAAC,OAAO,IAAI,QAAQ,EAAE,yCAAyC,CAAC;wBAChE,yEAAyE;wBACzE,CAAC,OAAO,IAAI,eAAe,EAAE,6DAA6D,CAAC;wBAC3F,gEAAgE;wBAChE,CAAC,WAAW,GAAG,CAAC,EAAE,yBAAyB,CAAC;wBAC5C,gFAAgF;wBAChF,CAAC,eAAe,IAAI,CAAC,EAAE,8BAA8B,CAAC;qBAEzD,CAAC,OAAO,CAAC,UAAC,EAAyB;4BAAxB,SAAS,QAAA,EAAE,YAAY,QAAA;wBACjC,0DAA0D;wBAC1D,IAAI,CAAC,SAAS,EAAE;4BACd,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;yBAC/B;oBACH,CAAC,CAAC,CAAC;oBAGG,UAAU,GAA8B,EAAE,CAAC;oBAM3C,oBAAoB,GAAG,UAAO,WAAmB;;;;;;gDACrD,UAAU,CAAC,WAAW;;;;oCAAtB,KAAA,UAAU,CAAA;oCAAC,KAAA,WAAW,CAAA;oCAAM,qBAAM,SAAS,CAAC,oBAAoB,CAAC,WAAW,CAAC,EAAA;;mDAAjD,SAAiD;;;oCAA7E,GAA8E;oCAC9E,sBAAO,UAAU,CAAC,WAAW,CAAC,EAAC;;;yBAChC,CAAC;oBAGwD,qBAAM,OAAO,CAAC,GAAG,CAAC;4BAC1E,oBAAoB,CAAC,QAAQ,CAAC;4BAC9B,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;yBAC7D,CAAC,EAAA;;oBAHI,KAAoD,SAGxD,EAHK,uBAAuB,QAAA,EAAE,sBAAsB,QAAA;oBAKtD,oGAAoG;oBACpG,+FAA+F;oBAC/F,IAAI,uBAAuB,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE;wBAChD,kCAAkC;wBAClC,2GAA2G;wBAC3G,2GAA2G;wBAC3G,2GAA2G;wBAC3G,MAAM,IAAI,KAAK,CACb,mEAA4D,eAAe,gBAAM,uBAAuB,MAAG,CAC5G,CAAC;qBACH;oBAED,sGAAsG;oBACtG,2FAA2F;oBAC3F,IAAI,sBAAsB,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE;wBAC9C,kCAAkC;wBAClC,kCAAkC;wBAClC,oFAAoF;wBACpF,4FAA4F;wBAC5F,4FAA4F;wBAC5F,MAAM,IAAI,KAAK,CACb,+DAAwD,eAAe,gBAAM,sBAAsB,MAAG,CACvG,CAAC;qBACH;oBAGG,GAAG,GAAG,OAAO,CAAC;oBACd,IAAI,GAAG,QAAQ,CAAC;oBAEhB,QAAQ,GAAG,CAAC,CAAC;;;oBAIT,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;oBAGpB,qBAAM,oBAAoB,CAAC,GAAG,CAAC,EAAA;;oBAA9C,YAAY,GAAG,SAA+B;oBAG9C,qBAAqB,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBAEtD,kEAAkE;oBAClE,qEAAqE;oBACrE,gDAAgD;oBAChD,IAAI,eAAe,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE;wBAC9C,IAAI,GAAG,GAAG,CAAC;qBACZ;oBACD,oEAAoE;oBACpE,qEAAqE;oBACrE,gDAAgD;yBAC3C;wBACH,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;qBACf;;;wBAIM,EAAE,QAAQ,IAAI,WAAW,IAAI,GAAG,GAAG,IAAI;;;oBAEhD,qEAAqE;oBACrE,IAAI,GAAG,GAAG,IAAI,EAAE;wBACd,MAAM,IAAI,KAAK,CAAC,gCAAyB,GAAG,gBAAM,IAAI,6CAA0C,CAAC,CAAC;qBACnG;oBAED,uFAAuF;oBACvF,sEAAsE;oBACtE,sBAAO,EAAE,GAAG,KAAA,EAAE,IAAI,MAAA,EAAE,EAAC;;;;CACtB;AAED;;;;GAIG;AACH,MAAM,UAAgB,mBAAmB,CAAC,QAAkB,EAAE,QAAgB;;;;;wBAClD,qBAAM,QAAQ,CAAC,gBAAgB,CAAC,EAAE,QAAQ,UAAA,EAAE,CAAC,EAAA;;oBAAjE,iBAAiB,GAAG,SAA6C;oBACjE,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC;oBACjD,iGAAiG;oBACjG,IAAI,gBAAgB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;wBAC/B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;qBAC1C;oBACD,sBAAO,gBAAgB,EAAC;;;;CACzB;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAoB,EAAE,kBAA0B;IAC/E,OAAO,WAAW,CAAC,SAAS,CAC1B,WAAW,CAAC,eAAe,CAAC,MAAM,CAChC;QACE,QAAQ;YACN,oBAAoB;YACpB,oBAAoB;YACpB,2BAA2B;YAC3B,qBAAqB;YACrB,sBAAsB;YACtB,sBAAsB;YACtB,uBAAuB;YACvB,wBAAwB;YACxB,mBAAmB;YACnB,sBAAsB;YACtB,6BAA6B;YAC7B,eAAe;YACf,GAAG;QACL,4BAA4B;KAC7B,EACD,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAChC,CACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,CAAmC;IACvE,OAAO,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,SAAoB;IACpD,0GAA0G;IAC1G,mHAAmH;IACnH,gHAAgH;IAChH,oGAAoG;IACpG,eAAe;IACf,IAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC7D,OAAO,gBAAgB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,eAAe,CACnC,SAAmB,EACnB,SAAoB,EACpB,QAA4B,EAC5B,kBAA2B;;;;;;0BAE3B,kBAAkB,aAAlB,kBAAkB;oBAAlB,KAAA,kBAAkB,CAAA;;wBAAK,qBAAM,SAAS,CAAC,OAAO,EAAE,EAAA;;0BAAhD,kBAAkB,GAAK,SAAyB;;;oBAAhD,GAAiD;oBAC3C,IAAI,GAAG,gBAAgB,CAAC,SAAS,EAAE,kBAAmB,CAAC,CAAC;oBAC1C,qBAAM,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,QAAQ,UAAA,EAAE,CAAC,EAAA;;oBAA9D,WAAW,GAAG,SAAgD;oBAC9D,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;oBAEvC,IAAI,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,iBAAiB,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;wBACxF,aAAa,GAAgB,SAAS,cAAzB,EAAE,SAAS,GAAK,SAAS,UAAd,CAAe;wBAC/C,MAAM,IAAI,KAAK,CAAC,qDAA8C,aAAa,sBAAY,SAAS,eAAK,UAAU,MAAG,CAAC,CAAC;qBACrH;oBAED,sBAAO,UAAU,EAAC;;;;CACnB;AAED,MAAM,UAAgB,eAAe,CACnC,SAAmB,EACnB,SAAsB,EACtB,QAA6B;IAA7B,yBAAA,EAAA,mBAA6B;;;;;;oBAEvB,YAAY,GAAG,cAAc,CAAC;oBACT,qBAAM,SAAS,CAAC,OAAO,EAAE,EAAA;;oBAA9C,kBAAkB,GAAG,SAAyB;oBAE9C,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,UAAC,SAAS;wBACtC,IAAM,IAAI,GAAG,gBAAgB,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;wBAC7D,OAAO,SAAS,CAAC,SAAS,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;oBACtE,CAAC,CAAC,CAAC;oBAGG,SAAS,GAAG,GAAG,CAAC;oBAChB,cAAc,GAAG,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;oBAE9B,qBAAM,OAAO,CAAC,GAAG,CAClC,cAAc,CAAC,GAAG,CAAC,UAAC,OAAO,IAAK,OAAA,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,QAAQ,UAAA,EAAE,CAAC,EAArD,CAAqD,CAAC,CACvF,EAAA;;oBAFK,UAAU,GAAG,SAElB;oBACK,MAAM,GAAG,UAAU;yBACtB,GAAG,CAAC,UAAC,SAAsB;wBAC1B,OAAA,SAAS,CAAC,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,SAAS,CAAC,SAAS,CAAC,oBAAoB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAjE,CAAiE,CAAC;oBAA5F,CAA4F,CAC7F;yBACA,IAAI,EAAE,CAAC;oBAEJ,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;oBACvC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBAEzC,sBAAO,MAAM,CAAC,GAAG,CAAC,UAAC,MAAe;4BAChC,OAAO,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gCACpF,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE;gCACnB,CAAC,CAAC,SAAS,CAAC;wBAChB,CAAC,CAAC,EAAC;;;;CACJ;AAED;;;;;;;;GAQG;AACH,MAAM,UAAgB,aAAa,CACjC,SAAmB,EACnB,SAAoB,EACpB,cAAsB,EACtB,eAAwB;;;;;;oBAEhB,QAAQ,GAAK,SAAS,SAAd,CAAe;0BAC/B,eAAe,aAAf,eAAe;oBAAf,KAAA,eAAe,CAAA;;wBAAK,qBAAM,QAAQ,CAAC,cAAc,EAAE,EAAA;;0BAAnD,eAAe,GAAK,SAA+B;;;oBAAnD,GAAoD;oBACpD,MAAM,CAAC,eAAe,GAAG,cAAc,EAAE,sCAA+B,cAAc,gBAAM,eAAe,MAAG,CAAC,CAAC;yBAMrF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,aAAa,CAAC,EAA1D,wBAA0D;oBAChF,qBAAM,QAAQ,CAAC,UAAU,EAAE,EAAA;;oBAA5B,KAAA,CAAC,SAA2B,CAAC,CAAC,OAAO,CAAA;;;oBACrC,KAAA,MAAM,CAAA;oBAAC,qBAAM,SAAS,CAAC,OAAO,EAAE,EAAA;;oBAAhC,KAAA,kBAAO,SAAyB,EAAC,CAAA;;;oBAF/B,kBAAkB,KAEa;oBACrC,MAAM,CACJ,SAAS,CAAC,aAAa,KAAK,kBAAkB,EAC9C,4DAAqD,kBAAkB,MAAG,CAC3E,CAAC;oBAIA,qBAAM,OAAO,CAAC,GAAG,CAAC;4BAChB,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,kBAAkB,CAAC;4BACzE,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,kBAAkB,CAAC;yBAC3E,CAAC,EAAA;;oBAJE,KAAuC,CAC3C,SAGE,CACH,CAAC,GAAG,CAAC,MAAM,CAAC,EALN,iBAAiB,QAAA,EAAE,eAAe,QAAA;oBAOzC,IAAI,eAAe,KAAK,UAAU,CAAC,MAAM,EAAE;wBACzC,sBAAO,SAAS,EAAC,CAAC,kDAAkD;qBACrE;oBAED,kFAAkF;oBAClF,IAAI,iBAAiB,KAAK,UAAU,CAAC,MAAM,EAAE;wBACnC,SAAS,GAAoB,SAAS,UAA7B,EAAE,aAAa,GAAK,SAAS,cAAd,CAAe;wBACzC,KAAuB,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC,EAAzF,QAAQ,QAAA,EAAE,QAAQ,QAAA,CAAwE;wBACjG,MAAM,IAAI,KAAK,CAAC,UAAG,QAAQ,sBAAY,SAAS,wBAAc,QAAQ,2BAAiB,cAAc,CAAE,CAAC,CAAC;qBAC1G;;;oBAIO,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;oBACvD,qBAAM,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,kBAAkB,CAAC,EAAA;;oBAA5F,UAAU,GAAG,SAA+E;oBAElG,IAAI,UAAU,KAAK,UAAU,CAAC,MAAM,EAAE;wBACpC,eAAe,GAAG,cAAc,CAAC;qBAClC;yBAAM;wBACL,cAAc,GAAG,cAAc,GAAG,CAAC,CAAC;qBACrC;;;wBACM,cAAc,GAAG,eAAe;;yBAEzC,sBAAO,cAAc,EAAC;;;;CACvB;AAED,qFAAqF;AACrF,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,OAAO,OAAO,KAAK,YAAY,IAAI,OAAO,KAAK,UAAU,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"BundleDataClient.d.ts","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAElB,uBAAuB,EAGvB,mBAAmB,EAOnB,OAAO,EACP,eAAe,EAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAA2B,eAAe,EAAE,MAAM,IAAI,CAAC;AAC9D,OAAO,EACL,SAAS,EAeV,MAAM,aAAa,CAAC;AACrB,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAQL,iBAAiB,EAIlB,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,sBAAsB,WAAc,CAAC;AAqFlD,qBAAa,gBAAgB;IAQzB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM;IAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO;IACzB,QAAQ,CAAC,gBAAgB,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAAA;KAAE;IACjE,QAAQ,CAAC,0CAA0C,EAAE,MAAM,EAAE;IAC7D,QAAQ,CAAC,wBAAwB,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE;IAXlE,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,gBAAgB,CAAgE;IAExF,OAAO,CAAC,oBAAoB,CAAuD;gBAIxE,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,OAAO,EAAE,OAAO,EAChB,gBAAgB,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAAA;KAAE,EACxD,0CAA0C,EAAE,MAAM,EAAE,EACpD,wBAAwB,GAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;KAAO;IAKvE,UAAU,IAAI,IAAI;YAIJ,iBAAiB;IAM/B,4BAA4B,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE;IAOtF,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,GAAG,IAAI;IAI1F,MAAM,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM;IAQpE,OAAO,CAAC,6BAA6B;YAIvB,4BAA4B;IAuDpC,iCAAiC,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAiB/D,2BAA2B,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,eAAe,CAAC;IA0CvF,kCAAkC,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,GAAG,eAAe;IAgDhG,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,SAAS;YAYpF,2BAA2B;IAwBnC,0BAA0B,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,iBAAiB,CAAC;QAAC,WAAW,EAAE,MAAM,EAAE,EAAE,CAAA;KAAE,CAAC;IA4B3F,oBAAoB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAmFxD,kBAAkB,CAChB,eAAe,EAAE,eAAe,EAChC,iBAAiB,EAAE,MAAM,GACxB;QACD,CAAC,YAAY,EAAE,MAAM,GAAG;YACtB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;SAC9B,CAAC;KACH;IAuCD,OAAO,CAAC,qBAAqB;IAkC7B,aAAa,CAAC,aAAa,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS;IAQzG,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS;YAM9F,eAAe;IAavB,QAAQ,CACZ,oBAAoB,EAAE,MAAM,EAAE,EAAE,EAChC,gBAAgB,EAAE,uBAAuB,EACzC,kBAAkB,UAAQ,GACzB,OAAO,CAAC,mBAAmB,CAAC;YAqBjB,mBAAmB;IA6qBjC,OAAO,CAAC,qBAAqB;IAIvB,wBAAwB,CAC5B,QAAQ,EAAE,MAAM,EAAE,EAClB,oBAAoB,EAAE,MAAM,EAAE,EAAE,EAChC,gBAAgB,EAAE,uBAAuB,GACxC,OAAO,CAAC;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAC;CAqC5C"}
1
+ {"version":3,"file":"BundleDataClient.d.ts","sourceRoot":"","sources":["../../../../src/clients/BundleDataClient/BundleDataClient.ts"],"names":[],"mappings":"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"}
@@ -8,4 +8,5 @@ import { providers } from "ethers";
8
8
  export declare function isContractDeployedToAddress(address: string, provider: providers.Provider): Promise<boolean>;
9
9
  export declare function compareAddresses(addressA: string, addressB: string): 1 | -1 | 0;
10
10
  export declare function compareAddressesSimple(addressA?: string, addressB?: string): boolean;
11
+ export declare function isValidEvmAddress(address: string): boolean;
11
12
  //# sourceMappingURL=AddressUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AddressUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/AddressUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAS,MAAM,QAAQ,CAAC;AAG1C;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CASjH;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAY/E;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAKpF"}
1
+ {"version":3,"file":"AddressUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/AddressUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAS,MAAM,QAAQ,CAAC;AAG1C;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CASjH;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAY/E;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAKpF;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAc1D"}
@@ -3,7 +3,8 @@ import { CachingMechanismInterface, Deposit, DepositWithBlock, Fill, SlowFillReq
3
3
  export declare enum InvalidFill {
4
4
  DepositIdInvalid = 0,
5
5
  DepositIdNotFound = 1,
6
- FillMismatch = 2
6
+ FillMismatch = 2,
7
+ DepositIdOutOfRange = 3
7
8
  }
8
9
  export type DepositSearchResult = {
9
10
  found: true;
@@ -1 +1 @@
1
- {"version":3,"file":"DepositUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/DepositUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAY5G,oBAAY,WAAW;IACrB,gBAAgB,IAAI;IACpB,iBAAiB,IAAA;IACjB,YAAY,IAAA;CACb;AAED,MAAM,MAAM,mBAAmB,GAC3B;IAAE,KAAK,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,GAC1C;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD;;;;;;;;;;;GAWG;AACH,wBAAsB,6BAA6B,CACjD,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,IAAI,GAAG,eAAe,EAC5B,KAAK,CAAC,EAAE,yBAAyB,GAChC,OAAO,CAAC,mBAAmB,CAAC,CAoF9B;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,CAAC,GAAG,OAAO,CAE7F;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,SAAgB,GAAG,OAAO,CAE/D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAI9D"}
1
+ {"version":3,"file":"DepositUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/DepositUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAa5G,oBAAY,WAAW;IACrB,gBAAgB,IAAI;IACpB,iBAAiB,IAAA;IACjB,YAAY,IAAA;IACZ,mBAAmB,IAAA;CACpB;AAED,MAAM,MAAM,mBAAmB,GAC3B;IAAE,KAAK,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,GAC1C;IAAE,KAAK,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD;;;;;;;;;;;GAWG;AACH,wBAAsB,6BAA6B,CACjD,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,IAAI,GAAG,eAAe,EAC5B,KAAK,CAAC,EAAE,yBAAyB,GAChC,OAAO,CAAC,mBAAmB,CAAC,CA2F9B;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,SAAS,CAAC,GAAG,OAAO,CAE7F;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,SAAgB,GAAG,OAAO,CAE/D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAI9D"}
@@ -76,6 +76,12 @@ export declare function chainIsLinea(chainId: number): boolean;
76
76
  * @returns True if chain corresponding to chainId has a hub pool implementation.
77
77
  */
78
78
  export declare function chainIsL1(chainId: number): boolean;
79
+ /**
80
+ * Determines whether a chain ID runs on an EVM-like execution layer.
81
+ * @param chainId Chain ID to evaluate.
82
+ * @returns True if chain corresponding to chainId has an EVM-like execution layer.
83
+ */
84
+ export declare function chainIsEvm(chainId: number): boolean;
79
85
  /**
80
86
  * Determines whether a chain ID has the capacity for having its USDC bridged via CCTP.
81
87
  * @param chainId Chain ID to evaluate.
@@ -1 +1 @@
1
- {"version":3,"file":"NetworkUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/NetworkUtils.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAGjE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAErE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAa3D;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAExE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMpD"}
1
+ {"version":3,"file":"NetworkUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/NetworkUtils.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAGjE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAErE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAElD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAInD;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAa3D;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAExE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"SpokeUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,QAAQ,EAAE,oBAAoB,EAAE,SAAS,EAAwB,MAAM,QAAQ,CAAC;AAEpG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAuB,MAAM,kBAAkB,CAAC;AAIlE,KAAK,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;AAEnC;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,QAAQ,EACnB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,EACf,gBAAgB,SAA6B,GAC5C,OAAO,CAAC,oBAAoB,CAAC,CA+B/B;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,yBAAyB,CAC7C,eAAe,EAAE,SAAS,EAC1B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,eAAe,GACzB,OAAO,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd,CAAC,CAwHD;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAQlG;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,GAAG,MAAM,CAuBzF;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,eAAe,GAAG,MAAM,CAEjF;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAQ/D;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,EAC5B,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,UAAU,CAAC,CAYrB;AAED,wBAAsB,eAAe,CACnC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EAAE,EACtB,QAAQ,GAAE,QAAmB,GAC5B,OAAO,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC,EAAE,CAAC,CA8BrC;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,MAAM,EACtB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAiD7B;AAGD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEtD"}
1
+ {"version":3,"file":"SpokeUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,QAAQ,EAAE,oBAAoB,EAAE,SAAS,EAAwB,MAAM,QAAQ,CAAC;AAEpG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAuB,MAAM,kBAAkB,CAAC;AAIlE,KAAK,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;AAEnC;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,QAAQ,EACnB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,EACf,gBAAgB,SAA6B,GAC5C,OAAO,CAAC,oBAAoB,CAAC,CA+B/B;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,yBAAyB,CAC7C,eAAe,EAAE,SAAS,EAC1B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,eAAe,GACzB,OAAO,CAAC;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd,CAAC,CAwHD;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAQlG;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,GAAG,MAAM,CAuBzF;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI,GAAG,eAAe,GAAG,MAAM,CAEjF;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAQ/D;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EACpB,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,EAC5B,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,UAAU,CAAC,CAcrB;AAED,wBAAsB,eAAe,CACnC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EAAE,EACtB,QAAQ,GAAE,QAAmB,GAC5B,OAAO,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC,EAAE,CAAC,CA8BrC;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,QAAQ,EACnB,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,MAAM,EACtB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAiD7B;AAGD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEtD"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@across-protocol/sdk",
3
3
  "author": "UMA Team",
4
- "version": "3.4.13",
4
+ "version": "3.4.15",
5
5
  "license": "AGPL-3.0",
6
6
  "homepage": "https://docs.across.to/reference/sdk",
7
7
  "files": [
@@ -32,6 +32,8 @@ import {
32
32
  mapAsync,
33
33
  bnUint32Max,
34
34
  isZeroValueDeposit,
35
+ chainIsEvm,
36
+ isValidEvmAddress,
35
37
  } from "../../utils";
36
38
  import winston from "winston";
37
39
  import {
@@ -55,6 +57,10 @@ type DataCache = Record<string, Promise<LoadDataReturnValue>>;
55
57
 
56
58
  // V3 dictionary helper functions
57
59
  function updateExpiredDepositsV3(dict: ExpiredDepositsToRefundV3, deposit: V3DepositWithBlock): void {
60
+ // A deposit refund for a deposit is invalid if the depositor has a bytes32 address input for an EVM chain. It is valid otherwise.
61
+ if (chainIsEvm(deposit.originChainId) && !isValidEvmAddress(deposit.depositor)) {
62
+ return;
63
+ }
58
64
  const { originChainId, inputToken } = deposit;
59
65
  if (!dict?.[originChainId]?.[inputToken]) {
60
66
  assign(dict, [originChainId, inputToken], []);
@@ -77,6 +83,10 @@ function updateBundleFillsV3(
77
83
  repaymentChainId: number,
78
84
  repaymentToken: string
79
85
  ): void {
86
+ // It is impossible to refund a deposit if the repayment chain is EVM and the relayer is a non-evm address.
87
+ if (chainIsEvm(fill.repaymentChainId) && !isValidEvmAddress(fill.relayer)) {
88
+ return;
89
+ }
80
90
  if (!dict?.[repaymentChainId]?.[repaymentToken]) {
81
91
  assign(dict, [repaymentChainId, repaymentToken], {
82
92
  fills: [],
@@ -807,6 +817,8 @@ export class BundleDataClient {
807
817
 
808
818
  // If deposit block is within origin chain bundle block range, then save as bundle deposit.
809
819
  // If deposit is in bundle and it has expired, additionally save it as an expired deposit.
820
+ // Note: if the `depositor` field in the expired deposit is an invalid address, e.g. a bytes32 address on an EVM
821
+ // chain, then the deposit refund is invalid and ignored.
810
822
  // If deposit is not in the bundle block range, then save it as an older deposit that
811
823
  // may have expired.
812
824
  if (deposit.blockNumber >= originChainBlockRange[0] && deposit.blockNumber <= originChainBlockRange[1]) {
@@ -914,6 +926,18 @@ export class BundleDataClient {
914
926
  bundleInvalidFillsV3.push(fill);
915
927
  return;
916
928
  }
929
+ // If the fill's repayment address is not a valid EVM address and the repayment chain is an EVM chain, the fill is invalid.
930
+ if (chainIsEvm(fill.repaymentChainId) && !isValidEvmAddress(fill.relayer)) {
931
+ const fillTransaction = await originClient.spokePool.provider.getTransaction(fill.transactionHash);
932
+ const originRelayer = fillTransaction.from;
933
+ // Repayment chain is still an EVM chain, but the msg.sender is a bytes32 address, so the fill is invalid.
934
+ if (!isValidEvmAddress(originRelayer)) {
935
+ bundleInvalidFillsV3.push(fill);
936
+ return;
937
+ }
938
+ // Otherwise, assume the relayer to be repaid is the msg.sender.
939
+ fill.relayer = originRelayer;
940
+ }
917
941
  // If deposit is using the deterministic relay hash feature, then the following binary search-based
918
942
  // algorithm will not work. However, it is impossible to emit an infinite fill deadline using
919
943
  // the unsafeDepositV3 function so there is no need to catch the special case.
@@ -1311,7 +1335,11 @@ export class BundleDataClient {
1311
1335
  // spoke pool contract. However, this internal function is used to uniquely identify a bridging event
1312
1336
  // for speed since its easier to build a string from the event data than to hash it.
1313
1337
  private getRelayHashFromEvent(event: V3DepositWithBlock | V3FillWithBlock | SlowFillRequestWithBlock): string {
1314
- return `${event.depositor}-${event.recipient}-${event.exclusiveRelayer}-${event.inputToken}-${event.outputToken}-${event.inputAmount}-${event.outputAmount}-${event.originChainId}-${event.depositId}-${event.fillDeadline}-${event.exclusivityDeadline}-${event.message}-${event.destinationChainId}`;
1338
+ return `${event.depositor}-${event.recipient}-${event.exclusiveRelayer}-${event.inputToken}-${event.outputToken}-${
1339
+ event.inputAmount
1340
+ }-${event.outputAmount}-${event.originChainId}-${event.depositId.toString()}-${event.fillDeadline}-${
1341
+ event.exclusivityDeadline
1342
+ }-${event.message}-${event.destinationChainId}`;
1315
1343
  }
1316
1344
 
1317
1345
  async getBundleBlockTimestamps(
@@ -315,7 +315,7 @@ export class SpokePoolClient extends BaseAbstractClient {
315
315
 
316
316
  this.logger.debug({
317
317
  at: "SpokePoolClient::getDepositForFill",
318
- message: `Rejected fill for ${getNetworkName(fill.originChainId)} deposit ${fill.depositId}.`,
318
+ message: `Rejected fill for ${getNetworkName(fill.originChainId)} deposit ${fill.depositId.toString()}.`,
319
319
  reason: match.reason,
320
320
  deposit,
321
321
  fill,
@@ -399,7 +399,7 @@ export class SpokePoolClient extends BaseAbstractClient {
399
399
  * @note This hash takes the form of: `${depositId}-${originChainId}`.
400
400
  */
401
401
  public getDepositHash(event: { depositId: BigNumber; originChainId: number }): string {
402
- return `${event.depositId}-${event.originChainId}`;
402
+ return `${event.depositId.toString()}-${event.originChainId}`;
403
403
  }
404
404
 
405
405
  /**
@@ -816,7 +816,7 @@ export class SpokePoolClient extends BaseAbstractClient {
816
816
  const srcChain = getNetworkName(this.chainId);
817
817
  const dstChain = getNetworkName(destinationChainId);
818
818
  throw new Error(
819
- `Could not find deposit ${depositId} for ${dstChain} fill` +
819
+ `Could not find deposit ${depositId.toString()} for ${dstChain} fill` +
820
820
  ` between ${srcChain} blocks [${searchBounds.low}, ${searchBounds.high}]`
821
821
  );
822
822
  }
@@ -122,7 +122,7 @@ export class MockSpokePoolClient extends SpokePoolClient {
122
122
  const { blockNumber, transactionIndex } = deposit;
123
123
  let { depositId, depositor, destinationChainId, inputToken, inputAmount, outputToken, outputAmount } = deposit;
124
124
  depositId ??= this.numberOfDeposits;
125
- assert(depositId.gte(this.numberOfDeposits), `${depositId} < ${this.numberOfDeposits}`);
125
+ assert(depositId.gte(this.numberOfDeposits), `${depositId.toString()} < ${this.numberOfDeposits}`);
126
126
  this.numberOfDeposits = depositId.add(bnOne);
127
127
 
128
128
  destinationChainId ??= random(1, 42161, false);
@@ -38,3 +38,19 @@ export function compareAddressesSimple(addressA?: string, addressB?: string): bo
38
38
  }
39
39
  return addressA.toLowerCase() === addressB.toLowerCase();
40
40
  }
41
+
42
+ export function isValidEvmAddress(address: string): boolean {
43
+ if (utils.isAddress(address)) {
44
+ return true;
45
+ }
46
+ // We may throw an error here if hexZeroPadFails. This will happen if the address to pad is greater than 20 bytes long, indicating
47
+ // that the address had less than 12 leading zero bytes.
48
+ // We may also throw at getAddress if the input cannot be converted into a checksummed EVM address for some reason.
49
+ // For both cases, this indicates that the address cannot be casted as a bytes20 EVM address, so we should return false.
50
+ try {
51
+ const evmAddress = utils.hexZeroPad(utils.hexStripZeros(address), 20);
52
+ return utils.isAddress(utils.getAddress(evmAddress));
53
+ } catch (_e) {
54
+ return false;
55
+ }
56
+ }
@@ -52,5 +52,5 @@ export async function setDepositInCache(
52
52
  */
53
53
  export function getDepositKey(bridgeEvent: Deposit | Fill | SlowFillRequest): string {
54
54
  const relayHash = getRelayHashFromEvent(bridgeEvent);
55
- return `deposit_${bridgeEvent.originChainId}_${bridgeEvent.depositId}_${relayHash}`;
55
+ return `deposit_${bridgeEvent.originChainId}_${bridgeEvent.depositId.toString()}_${relayHash}`;
56
56
  }
@@ -5,6 +5,7 @@ import { CachingMechanismInterface, Deposit, DepositWithBlock, Fill, SlowFillReq
5
5
  import { getNetworkName } from "./NetworkUtils";
6
6
  import { getDepositInCache, getDepositKey, setDepositInCache } from "./CachingUtils";
7
7
  import { validateFillForDeposit } from "./FlowUtils";
8
+ import { isUnsafeDepositId } from "./SpokeUtils";
8
9
  import { getCurrentTime } from "./TimeUtils";
9
10
  import { isDefined } from "./TypeGuards";
10
11
  import { isDepositFormedCorrectly } from "./ValidatorUtils";
@@ -17,6 +18,7 @@ export enum InvalidFill {
17
18
  DepositIdInvalid = 0, // Deposit ID seems invalid for origin SpokePool
18
19
  DepositIdNotFound, // Deposit ID not found (bad RPC data?)
19
20
  FillMismatch, // Fill does not match deposit parameters for deposit ID.
21
+ DepositIdOutOfRange, // Fill is for a deterministic deposit.
20
22
  }
21
23
 
22
24
  export type DepositSearchResult =
@@ -40,6 +42,13 @@ export async function queryHistoricalDepositForFill(
40
42
  fill: Fill | SlowFillRequest,
41
43
  cache?: CachingMechanismInterface
42
44
  ): Promise<DepositSearchResult> {
45
+ if (isUnsafeDepositId(fill.depositId)) {
46
+ return {
47
+ found: false,
48
+ code: InvalidFill.DepositIdOutOfRange,
49
+ reason: `Cannot find historical deposit for fill with unsafe deposit ID ${fill.depositId}.`,
50
+ };
51
+ }
43
52
  if (fill.originChainId !== spokePoolClient.chainId) {
44
53
  throw new Error(`OriginChainId mismatch (${fill.originChainId} != ${spokePoolClient.chainId})`);
45
54
  }
@@ -56,7 +65,7 @@ export async function queryHistoricalDepositForFill(
56
65
  return {
57
66
  found: false,
58
67
  code: InvalidFill.DepositIdInvalid,
59
- reason: `Deposit ID ${depositId} is outside of SpokePool bounds [${lowId},${highId}].`,
68
+ reason: `Deposit ID ${depositId.toString()} is outside of SpokePool bounds [${lowId},${highId}].`,
60
69
  };
61
70
  }
62
71
 
@@ -73,14 +82,14 @@ export async function queryHistoricalDepositForFill(
73
82
  return {
74
83
  found: false,
75
84
  code: InvalidFill.FillMismatch,
76
- reason: `Fill for ${originChain} deposit ID ${depositId} is invalid (${match.reason}).`,
85
+ reason: `Fill for ${originChain} deposit ID ${depositId.toString()} is invalid (${match.reason}).`,
77
86
  };
78
87
  }
79
88
 
80
89
  return {
81
90
  found: false,
82
91
  code: InvalidFill.DepositIdNotFound,
83
- reason: `${originChain} deposit ID ${depositId} not found in SpokePoolClient event buffer.`,
92
+ reason: `${originChain} deposit ID ${depositId.toString()} not found in SpokePoolClient event buffer.`,
84
93
  };
85
94
  }
86
95
 
@@ -123,6 +123,17 @@ export function chainIsL1(chainId: number): boolean {
123
123
  return [CHAIN_IDs.MAINNET, CHAIN_IDs.SEPOLIA].includes(chainId);
124
124
  }
125
125
 
126
+ /**
127
+ * Determines whether a chain ID runs on an EVM-like execution layer.
128
+ * @param chainId Chain ID to evaluate.
129
+ * @returns True if chain corresponding to chainId has an EVM-like execution layer.
130
+ */
131
+ export function chainIsEvm(chainId: number): boolean {
132
+ chainId;
133
+ // TODO: Fix when we support non-EVM chains.
134
+ return true;
135
+ }
136
+
126
137
  /**
127
138
  * Determines whether a chain ID has the capacity for having its USDC bridged via CCTP.
128
139
  * @param chainId Chain ID to evaluate.
@@ -153,7 +153,7 @@ export async function getBlockRangeForDepositId(
153
153
  // // targetId = 2 <- pass (does not trigger this error)
154
154
  // // targetId = 3 <- pass (does not trigger this error)
155
155
  throw new Error(
156
- `Target depositId is less than the initial low block (${targetDepositId} > ${lowestDepositIdInRange})`
156
+ `Target depositId is less than the initial low block (${targetDepositId.toString()} > ${lowestDepositIdInRange})`
157
157
  );
158
158
  }
159
159
 
@@ -208,7 +208,7 @@ export async function getBlockRangeForDepositId(
208
208
  export async function getDepositIdAtBlock(contract: Contract, blockTag: number): Promise<BigNumber> {
209
209
  const _depositIdAtBlock = await contract.numberOfDeposits({ blockTag });
210
210
  const depositIdAtBlock = toBN(_depositIdAtBlock);
211
- // Sanity check to ensure that the deposit ID is an integer and is greater than or equal to zero.
211
+ // Sanity check to ensure that the deposit ID is greater than or equal to zero.
212
212
  if (depositIdAtBlock.lt(bnZero)) {
213
213
  throw new Error("Invalid deposit count");
214
214
  }
@@ -280,7 +280,9 @@ export async function relayFillStatus(
280
280
 
281
281
  if (![FillStatus.Unfilled, FillStatus.RequestedSlowFill, FillStatus.Filled].includes(fillStatus)) {
282
282
  const { originChainId, depositId } = relayData;
283
- throw new Error(`relayFillStatus: Unexpected fillStatus for ${originChainId} deposit ${depositId} (${fillStatus})`);
283
+ throw new Error(
284
+ `relayFillStatus: Unexpected fillStatus for ${originChainId} deposit ${depositId.toString()} (${fillStatus})`
285
+ );
284
286
  }
285
287
 
286
288
  return fillStatus;
@@ -369,7 +371,7 @@ export async function findFillBlock(
369
371
  if (initialFillStatus === FillStatus.Filled) {
370
372
  const { depositId, originChainId } = relayData;
371
373
  const [srcChain, dstChain] = [getNetworkName(originChainId), getNetworkName(destinationChainId)];
372
- throw new Error(`${srcChain} deposit ${depositId} filled on ${dstChain} before block ${lowBlockNumber}`);
374
+ throw new Error(`${srcChain} deposit ${depositId.toString()} filled on ${dstChain} before block ${lowBlockNumber}`);
373
375
  }
374
376
 
375
377
  // Find the leftmost block where filledAmount equals the deposit amount.