@across-protocol/sdk 4.1.32 → 4.1.33

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 (96) hide show
  1. package/dist/cjs/arch/evm/index.d.ts +1 -0
  2. package/dist/cjs/arch/evm/index.js +5 -0
  3. package/dist/cjs/arch/evm/index.js.map +1 -0
  4. package/dist/cjs/arch/index.d.ts +2 -0
  5. package/dist/cjs/arch/index.js +7 -0
  6. package/dist/cjs/arch/index.js.map +1 -0
  7. package/dist/cjs/arch/svm/index.d.ts +1 -0
  8. package/dist/cjs/arch/svm/index.js +5 -0
  9. package/dist/cjs/arch/svm/index.js.map +1 -0
  10. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +24 -3
  11. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  12. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +2 -2
  13. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +19 -0
  14. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +170 -0
  15. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -0
  16. package/dist/cjs/clients/{SpokePoolClient.d.ts → SpokePoolClient/SpokePoolClient.d.ts} +17 -22
  17. package/dist/cjs/clients/{SpokePoolClient.js → SpokePoolClient/SpokePoolClient.js} +24 -174
  18. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -0
  19. package/dist/cjs/clients/SpokePoolClient/index.d.ts +5 -0
  20. package/dist/cjs/clients/SpokePoolClient/index.js +13 -0
  21. package/dist/cjs/clients/SpokePoolClient/index.js.map +1 -0
  22. package/dist/cjs/clients/index.d.ts +1 -1
  23. package/dist/cjs/clients/index.js +2 -1
  24. package/dist/cjs/clients/index.js.map +1 -1
  25. package/dist/cjs/clients/mocks/MockSpokePoolClient.d.ts +2 -2
  26. package/dist/cjs/clients/mocks/MockSpokePoolClient.js +1 -1
  27. package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
  28. package/dist/cjs/utils/BundleUtils.js +7 -7
  29. package/dist/cjs/utils/BundleUtils.js.map +1 -1
  30. package/dist/esm/arch/evm/index.d.ts +1 -0
  31. package/dist/esm/arch/evm/index.js +2 -0
  32. package/dist/esm/arch/evm/index.js.map +1 -0
  33. package/dist/esm/arch/index.d.ts +2 -0
  34. package/dist/esm/arch/index.js +5 -0
  35. package/dist/esm/arch/index.js.map +1 -0
  36. package/dist/esm/arch/svm/index.d.ts +1 -0
  37. package/dist/esm/arch/svm/index.js +2 -0
  38. package/dist/esm/arch/svm/index.js.map +1 -0
  39. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +30 -3
  40. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  41. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +2 -2
  42. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +22 -0
  43. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +174 -0
  44. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -0
  45. package/dist/{types/clients → esm/clients/SpokePoolClient}/SpokePoolClient.d.ts +58 -57
  46. package/dist/esm/clients/{SpokePoolClient.js → SpokePoolClient/SpokePoolClient.js} +22 -212
  47. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -0
  48. package/dist/esm/clients/SpokePoolClient/index.d.ts +10 -0
  49. package/dist/esm/clients/SpokePoolClient/index.js +12 -0
  50. package/dist/esm/clients/SpokePoolClient/index.js.map +1 -0
  51. package/dist/esm/clients/index.d.ts +1 -1
  52. package/dist/esm/clients/index.js +1 -1
  53. package/dist/esm/clients/index.js.map +1 -1
  54. package/dist/esm/clients/mocks/MockSpokePoolClient.d.ts +2 -2
  55. package/dist/esm/clients/mocks/MockSpokePoolClient.js +2 -2
  56. package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
  57. package/dist/esm/utils/BundleUtils.js +7 -7
  58. package/dist/esm/utils/BundleUtils.js.map +1 -1
  59. package/dist/esm/utils/abi/typechain/Multicall3.d.ts +1 -4
  60. package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js.map +1 -1
  61. package/dist/types/arch/evm/index.d.ts +2 -0
  62. package/dist/types/arch/evm/index.d.ts.map +1 -0
  63. package/dist/types/arch/index.d.ts +3 -0
  64. package/dist/types/arch/index.d.ts.map +1 -0
  65. package/dist/types/arch/svm/index.d.ts +2 -0
  66. package/dist/types/arch/svm/index.d.ts.map +1 -0
  67. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  68. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +2 -2
  69. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +23 -0
  70. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts.map +1 -0
  71. package/dist/{esm/clients → types/clients/SpokePoolClient}/SpokePoolClient.d.ts +59 -56
  72. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -0
  73. package/dist/types/clients/SpokePoolClient/index.d.ts +11 -0
  74. package/dist/types/clients/SpokePoolClient/index.d.ts.map +1 -0
  75. package/dist/types/clients/index.d.ts +1 -1
  76. package/dist/types/clients/index.d.ts.map +1 -1
  77. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts +2 -2
  78. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
  79. package/dist/types/utils/abi/typechain/Multicall3.d.ts +1 -4
  80. package/dist/types/utils/abi/typechain/Multicall3.d.ts.map +1 -1
  81. package/dist/types/utils/abi/typechain/common.d.ts.map +1 -1
  82. package/dist/types/utils/abi/typechain/factories/Multicall3__factory.d.ts.map +1 -1
  83. package/package.json +4 -3
  84. package/src/arch/evm/index.ts +1 -0
  85. package/src/arch/index.ts +2 -0
  86. package/src/arch/svm/index.ts +1 -0
  87. package/src/clients/BundleDataClient/BundleDataClient.ts +29 -1
  88. package/src/clients/SpokePoolClient/EVMSpokePoolClient.ts +206 -0
  89. package/src/clients/{SpokePoolClient.ts → SpokePoolClient/SpokePoolClient.ts} +87 -237
  90. package/src/clients/SpokePoolClient/index.ts +14 -0
  91. package/src/clients/index.ts +1 -1
  92. package/src/clients/mocks/MockSpokePoolClient.ts +2 -2
  93. package/src/utils/BundleUtils.ts +6 -6
  94. package/dist/cjs/clients/SpokePoolClient.js.map +0 -1
  95. package/dist/esm/clients/SpokePoolClient.js.map +0 -1
  96. package/dist/types/clients/SpokePoolClient.d.ts.map +0 -1
@@ -5,6 +5,7 @@ import { FillType, FillStatus, } from "../../interfaces";
5
5
  import { BigNumber, bnZero, queryHistoricalDepositForFill, assign, fixedPointAdjustment, isDefined, toBN, forEachAsync, getBlockRangeForChain, getImpliedBundleBlockRanges, getMessageHash, getRelayEventKey, isSlowFill, mapAsync, bnUint32Max, isZeroValueDeposit, findFillEvent, isZeroValueFillOrSlowFillRequest, chainIsEvm, isValidEvmAddress, duplicateEvent, } from "../../utils";
6
6
  import { BundleDataSS, getEndBlockBuffers, getRefundInformationFromFill, getRefundsFromBundle, getWidestPossibleExpectedBlockRange, isChainDisabled, prettyPrintV3SpokePoolEvents, verifyFillRepayment, } from "./utils";
7
7
  import { UNDEFINED_MESSAGE_HASH } from "../../constants";
8
+ import { isEVMSpokePoolClient } from "../SpokePoolClient";
8
9
  // max(uint256) - 1
9
10
  export var INFINITE_FILL_DEADLINE = bnUint32Max;
10
11
  // V3 dictionary helper functions
@@ -307,7 +308,7 @@ var BundleDataClient = /** @class */ (function () {
307
308
  return hasMatchingDeposit;
308
309
  });
309
310
  return [4 /*yield*/, forEachAsync(fillsToCount, function (_fill) { return __awaiter(_this, void 0, void 0, function () {
310
- var matchingDeposit, fill, _a, chainToSendRefundTo, repaymentToken, relayer, refundAmount, existingRefundAmount;
311
+ var matchingDeposit, spokeClient, fill, _a, chainToSendRefundTo, repaymentToken, relayer, refundAmount, existingRefundAmount;
311
312
  var _b, _c, _d;
312
313
  var _e;
313
314
  return __generator(this, function (_f) {
@@ -315,7 +316,12 @@ var BundleDataClient = /** @class */ (function () {
315
316
  case 0:
316
317
  matchingDeposit = this.spokePoolClients[_fill.originChainId].getDeposit(_fill.depositId);
317
318
  assert(isDefined(matchingDeposit), "Deposit not found for fill.");
318
- return [4 /*yield*/, verifyFillRepayment(_fill, this.spokePoolClients[_fill.destinationChainId].spokePool.provider, matchingDeposit, this.clients.hubPoolClient)];
319
+ spokeClient = this.spokePoolClients[_fill.destinationChainId];
320
+ if (!isEVMSpokePoolClient(spokeClient)) {
321
+ // FIXME: Handle non-EVM chains.
322
+ throw new Error("Destination chain is not an EVM chain.");
323
+ }
324
+ return [4 /*yield*/, verifyFillRepayment(_fill, spokeClient.spokePool.provider, matchingDeposit, this.clients.hubPoolClient)];
319
325
  case 1:
320
326
  fill = _f.sent();
321
327
  if (!isDefined(fill)) {
@@ -761,6 +767,10 @@ var BundleDataClient = /** @class */ (function () {
761
767
  assert(isDefined(deposits) && deposits.length > 0, "Deposit should exist in relay hash dictionary.");
762
768
  v3RelayHashes[relayDataHash].fill = fill;
763
769
  if (!(fill.blockNumber >= destinationChainBlockRange[0])) return [3 /*break*/, 2];
770
+ if (!isEVMSpokePoolClient(destinationClient)) {
771
+ // FIXME: Handle non-EVM chains.
772
+ throw new Error("Destination chain is not an EVM chain.");
773
+ }
764
774
  return [4 /*yield*/, verifyFillRepayment(fill, destinationClient.spokePool.provider, deposits[0], this.clients.hubPoolClient)];
765
775
  case 1:
766
776
  fillToRefund_1 = _a.sent();
@@ -830,6 +840,10 @@ var BundleDataClient = /** @class */ (function () {
830
840
  return [2 /*return*/];
831
841
  }
832
842
  v3RelayHashes[relayDataHash].deposits = [matchedDeposit];
843
+ if (!isEVMSpokePoolClient(destinationClient)) {
844
+ // FIXME: Handle non-EVM chains.
845
+ throw new Error("Destination chain is not an EVM chain.");
846
+ }
833
847
  return [4 /*yield*/, verifyFillRepayment(fill, destinationClient.spokePool.provider, matchedDeposit, this.clients.hubPoolClient)];
834
848
  case 8:
835
849
  fillToRefund = _a.sent();
@@ -992,6 +1006,10 @@ var BundleDataClient = /** @class */ (function () {
992
1006
  }
993
1007
  if (!fill) return [3 /*break*/, 3];
994
1008
  if (!(fill.blockNumber < destinationChainBlockRange[0])) return [3 /*break*/, 2];
1009
+ if (!isEVMSpokePoolClient(destinationClient)) {
1010
+ // FIXME: Handle non-EVM chains.
1011
+ throw new Error("Destination chain is not an EVM chain.");
1012
+ }
995
1013
  return [4 /*yield*/, verifyFillRepayment(fill, destinationClient.spokePool.provider, deposits[0], this.clients.hubPoolClient)];
996
1014
  case 1:
997
1015
  fillToRefund = _c.sent();
@@ -1033,6 +1051,10 @@ var BundleDataClient = /** @class */ (function () {
1033
1051
  prefill = _c.sent();
1034
1052
  assert(isDefined(prefill), "findFillEvent# Cannot find prefill: ".concat(relayDataHash));
1035
1053
  assert(getRelayEventKey(prefill) === relayDataHash, "Relay hashes should match.");
1054
+ if (!isEVMSpokePoolClient(destinationClient)) {
1055
+ // FIXME: Handle non-EVM chains.
1056
+ throw new Error("Destination chain is not an EVM chain.");
1057
+ }
1036
1058
  return [4 /*yield*/, verifyFillRepayment(prefill, destinationClient.spokePool.provider, deposit, this.clients.hubPoolClient)];
1037
1059
  case 6:
1038
1060
  verifiedFill = _c.sent();
@@ -1341,7 +1363,12 @@ var BundleDataClient = /** @class */ (function () {
1341
1363
  return __awaiter(this, void 0, void 0, function () {
1342
1364
  return __generator(this, function (_a) {
1343
1365
  switch (_a.label) {
1344
- case 0: return [4 /*yield*/, findFillEvent(spokePoolClient.spokePool, deposit, spokePoolClient.deploymentBlock, spokePoolClient.latestBlockSearched)];
1366
+ case 0:
1367
+ if (!isEVMSpokePoolClient(spokePoolClient)) {
1368
+ // FIXME: Handle non-EVM chains.
1369
+ throw new Error("Destination chain is not an EVM chain.");
1370
+ }
1371
+ return [4 /*yield*/, findFillEvent(spokePoolClient.spokePool, deposit, spokePoolClient.deploymentBlock, spokePoolClient.latestBlockSearched)];
1345
1372
  case 1: return [2 /*return*/, _a.sent()];
1346
1373
  }
1347
1374
  });
@@ -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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"}
@@ -52,6 +52,7 @@ export declare const BundleDataSS: import("superstruct").Struct<{
52
52
  exclusivityDeadline: number;
53
53
  relayer: string;
54
54
  repaymentChainId: number;
55
+ lpFeePct: BigNumber;
55
56
  relayExecutionInfo: {
56
57
  updatedRecipient: string;
57
58
  updatedOutputAmount: BigNumber;
@@ -59,7 +60,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
59
60
  updatedMessageHash: string;
60
61
  updatedMessage?: string | undefined;
61
62
  };
62
- lpFeePct: BigNumber;
63
63
  message?: string | undefined;
64
64
  }[];
65
65
  refunds: Record<string, BigNumber>;
@@ -296,6 +296,7 @@ export declare const BundleDataSS: import("superstruct").Struct<{
296
296
  exclusivityDeadline: number;
297
297
  relayer: string;
298
298
  repaymentChainId: number;
299
+ lpFeePct: BigNumber;
299
300
  relayExecutionInfo: {
300
301
  updatedRecipient: string;
301
302
  updatedOutputAmount: BigNumber;
@@ -303,7 +304,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
303
304
  updatedMessageHash: string;
304
305
  updatedMessage?: string | undefined;
305
306
  };
306
- lpFeePct: BigNumber;
307
307
  message?: string | undefined;
308
308
  }[];
309
309
  refunds: Record<string, BigNumber>;
@@ -0,0 +1,22 @@
1
+ import { Contract } from "ethers";
2
+ import { BigNumber, DepositSearchResult, MakeOptional } from "../../utils";
3
+ import { EventSearchConfig } from "../../utils/EventUtils";
4
+ import { SpokePoolClient, SpokePoolUpdate } from "./SpokePoolClient";
5
+ import winston from "winston";
6
+ import { HubPoolClient } from "../HubPoolClient";
7
+ import { FillStatus, RelayData } from "../../interfaces";
8
+ /**
9
+ * An EVM-specific SpokePoolClient.
10
+ */
11
+ export declare class EVMSpokePoolClient extends SpokePoolClient {
12
+ readonly spokePool: Contract;
13
+ constructor(logger: winston.Logger, spokePool: Contract, hubPoolClient: HubPoolClient | null, chainId: number, deploymentBlock: number, eventSearchConfig?: MakeOptional<EventSearchConfig, "toBlock">);
14
+ relayFillStatus(relayData: RelayData, blockTag?: number | "latest", destinationChainId?: number): Promise<FillStatus>;
15
+ getMaxFillDeadlineInRange(startBlock: number, endBlock: number): Promise<number>;
16
+ private _availableEventsOnSpoke;
17
+ _queryableEventNames(): string[];
18
+ protected _update(eventsToQuery: string[]): Promise<SpokePoolUpdate>;
19
+ getTimeAt(blockNumber: number): Promise<number>;
20
+ findDeposit(depositId: BigNumber): Promise<DepositSearchResult>;
21
+ getTimestampForBlock(blockNumber: number): Promise<number>;
22
+ }
@@ -0,0 +1,174 @@
1
+ import { __assign, __awaiter, __extends, __generator, __spreadArray } from "tslib";
2
+ import { BigNumber, getNetworkName, InvalidFill, toBN } from "../../utils";
3
+ import { paginatedEventQuery, sortEventsAscendingInPlace, spreadEventWithBlockNumber, } from "../../utils/EventUtils";
4
+ import { isUpdateFailureReason } from "../BaseAbstractClient";
5
+ import { knownEventNames, SpokePoolClient } from "./SpokePoolClient";
6
+ import { findDepositBlock, getMaxFillDeadlineInRange as getMaxFillDeadline, getTimeAt as _getTimeAt, relayFillStatus, isZeroAddress, getTimestampForBlock as _getTimestampForBlock, } from "../../utils/SpokeUtils";
7
+ /**
8
+ * An EVM-specific SpokePoolClient.
9
+ */
10
+ var EVMSpokePoolClient = /** @class */ (function (_super) {
11
+ __extends(EVMSpokePoolClient, _super);
12
+ function EVMSpokePoolClient(logger, spokePool, hubPoolClient, chainId, deploymentBlock, eventSearchConfig) {
13
+ if (eventSearchConfig === void 0) { eventSearchConfig = { fromBlock: 0, maxBlockLookBack: 0 }; }
14
+ var _this = _super.call(this, logger, hubPoolClient, chainId, deploymentBlock, eventSearchConfig) || this;
15
+ _this.spokePool = spokePool;
16
+ return _this;
17
+ }
18
+ EVMSpokePoolClient.prototype.relayFillStatus = function (relayData, blockTag, destinationChainId) {
19
+ return relayFillStatus(this.spokePool, relayData, blockTag, destinationChainId);
20
+ };
21
+ EVMSpokePoolClient.prototype.getMaxFillDeadlineInRange = function (startBlock, endBlock) {
22
+ return getMaxFillDeadline(this.spokePool, startBlock, endBlock);
23
+ };
24
+ EVMSpokePoolClient.prototype._availableEventsOnSpoke = function (eventNames) {
25
+ var _this = this;
26
+ if (eventNames === void 0) { eventNames = knownEventNames; }
27
+ return Object.fromEntries(this.spokePool.interface.fragments
28
+ .filter(function (_a) {
29
+ var name = _a.name, type = _a.type;
30
+ return type === "event" && eventNames.includes(name);
31
+ })
32
+ .map(function (_a) {
33
+ var name = _a.name;
34
+ return [name, _this.spokePool.filters[name]()];
35
+ }));
36
+ };
37
+ EVMSpokePoolClient.prototype._queryableEventNames = function () {
38
+ return Object.keys(this._availableEventsOnSpoke(knownEventNames));
39
+ };
40
+ EVMSpokePoolClient.prototype._update = function (eventsToQuery) {
41
+ return __awaiter(this, void 0, void 0, function () {
42
+ var searchConfig, reason, eventSearchConfigs, spokePool, timerStart, multicallFunctions, _a, multicallOutput, events, currentTime, errMsg;
43
+ var _this = this;
44
+ return __generator(this, function (_b) {
45
+ switch (_b.label) {
46
+ case 0: return [4 /*yield*/, this.updateSearchConfig(this.spokePool.provider)];
47
+ case 1:
48
+ searchConfig = _b.sent();
49
+ if (isUpdateFailureReason(searchConfig)) {
50
+ reason = searchConfig;
51
+ return [2 /*return*/, { success: false, reason: reason }];
52
+ }
53
+ eventSearchConfigs = eventsToQuery.map(function (eventName) {
54
+ if (!_this._queryableEventNames().includes(eventName)) {
55
+ throw new Error("SpokePoolClient: Cannot query unrecognised SpokePool event name: ".concat(eventName));
56
+ }
57
+ var _searchConfig = __assign({}, searchConfig); // shallow copy
58
+ // By default, an event's query range is controlled by the `eventSearchConfig` passed in during instantiation.
59
+ // However, certain events have special overriding requirements to their search ranges:
60
+ // - EnabledDepositRoute: The full history is always required, so override the requested fromBlock.
61
+ if (eventName === "EnabledDepositRoute" && !_this.isUpdated) {
62
+ _searchConfig.fromBlock = _this.deploymentBlock;
63
+ }
64
+ return {
65
+ filter: _this._availableEventsOnSpoke()[eventName],
66
+ searchConfig: _searchConfig,
67
+ };
68
+ });
69
+ spokePool = this.spokePool;
70
+ this.log("debug", "Updating SpokePool client for chain ".concat(this.chainId), {
71
+ eventsToQuery: eventsToQuery,
72
+ searchConfig: searchConfig,
73
+ spokePool: spokePool.address,
74
+ });
75
+ timerStart = Date.now();
76
+ multicallFunctions = ["getCurrentTime"];
77
+ return [4 /*yield*/, Promise.all(__spreadArray([
78
+ spokePool.callStatic.multicall(multicallFunctions.map(function (f) { return spokePool.interface.encodeFunctionData(f); }), { blockTag: searchConfig.toBlock })
79
+ ], eventSearchConfigs.map(function (config) { return paginatedEventQuery(_this.spokePool, config.filter, config.searchConfig); }), true))];
80
+ case 2:
81
+ _a = _b.sent(), multicallOutput = _a[0], events = _a.slice(1);
82
+ this.log("debug", "Time to query new events from RPC for ".concat(this.chainId, ": ").concat(Date.now() - timerStart, " ms"));
83
+ currentTime = multicallFunctions.map(function (fn, idx) { return spokePool.interface.decodeFunctionResult(fn, multicallOutput[idx])[0]; })[0];
84
+ if (!BigNumber.isBigNumber(currentTime) || currentTime.lt(this.currentTime)) {
85
+ errMsg = BigNumber.isBigNumber(currentTime)
86
+ ? "currentTime: ".concat(currentTime, " < ").concat(toBN(this.currentTime))
87
+ : "currentTime is not a BigNumber: ".concat(JSON.stringify(currentTime));
88
+ throw new Error("SpokePoolClient::update: ".concat(errMsg));
89
+ }
90
+ // Sort all events to ensure they are stored in a consistent order.
91
+ events.forEach(function (events) { return sortEventsAscendingInPlace(events); });
92
+ return [2 /*return*/, {
93
+ success: true,
94
+ currentTime: currentTime.toNumber(),
95
+ searchEndBlock: searchConfig.toBlock,
96
+ events: events,
97
+ }];
98
+ }
99
+ });
100
+ });
101
+ };
102
+ EVMSpokePoolClient.prototype.getTimeAt = function (blockNumber) {
103
+ return _getTimeAt(this.spokePool, blockNumber);
104
+ };
105
+ EVMSpokePoolClient.prototype.findDeposit = function (depositId) {
106
+ return __awaiter(this, void 0, void 0, function () {
107
+ var deposit, upperBound, fromBlock, chain, reason, toBlock, tStart, maxBlockLookBack, query, tStop, event, _a;
108
+ var _b;
109
+ return __generator(this, function (_c) {
110
+ switch (_c.label) {
111
+ case 0:
112
+ deposit = this.getDeposit(depositId);
113
+ if (deposit) {
114
+ return [2 /*return*/, { found: true, deposit: deposit }];
115
+ }
116
+ upperBound = this.latestBlockSearched || undefined;
117
+ return [4 /*yield*/, findDepositBlock(this.spokePool, depositId, this.deploymentBlock, upperBound)];
118
+ case 1:
119
+ fromBlock = _c.sent();
120
+ chain = getNetworkName(this.chainId);
121
+ if (!fromBlock) {
122
+ reason = "Unable to find ".concat(chain, " depositId ").concat(depositId) +
123
+ " within blocks [".concat(this.deploymentBlock, ", ").concat(upperBound !== null && upperBound !== void 0 ? upperBound : "latest", "].");
124
+ return [2 /*return*/, { found: false, code: InvalidFill.DepositIdNotFound, reason: reason }];
125
+ }
126
+ toBlock = fromBlock;
127
+ tStart = Date.now();
128
+ maxBlockLookBack = this.eventSearchConfig.maxBlockLookBack;
129
+ return [4 /*yield*/, Promise.all([
130
+ paginatedEventQuery(this.spokePool, this.spokePool.filters.V3FundsDeposited(null, null, null, null, null, depositId), { fromBlock: fromBlock, toBlock: toBlock, maxBlockLookBack: maxBlockLookBack }),
131
+ paginatedEventQuery(this.spokePool, this.spokePool.filters.FundsDeposited(null, null, null, null, null, depositId), { fromBlock: fromBlock, toBlock: toBlock, maxBlockLookBack: maxBlockLookBack }),
132
+ ])];
133
+ case 2:
134
+ query = (_c.sent()).flat();
135
+ tStop = Date.now();
136
+ event = query.find(function (_a) {
137
+ var args = _a.args;
138
+ return args["depositId"].eq(depositId);
139
+ });
140
+ if (event === undefined) {
141
+ return [2 /*return*/, {
142
+ found: false,
143
+ code: InvalidFill.DepositIdNotFound,
144
+ reason: "".concat(chain, " depositId ").concat(depositId, " not found at block ").concat(fromBlock, "."),
145
+ }];
146
+ }
147
+ _a = [__assign({}, spreadEventWithBlockNumber(event))];
148
+ _b = { originChainId: this.chainId };
149
+ return [4 /*yield*/, this.getBlockNumber(Number(event.args["quoteTimestamp"]))];
150
+ case 3:
151
+ deposit = __assign.apply(void 0, _a.concat([(_b.quoteBlockNumber = _c.sent(), _b.fromLiteChain = true, _b.toLiteChain = true, _b)]));
152
+ if (isZeroAddress(deposit.outputToken)) {
153
+ deposit.outputToken = this.getDestinationTokenForDeposit(deposit);
154
+ }
155
+ deposit.fromLiteChain = this.isOriginLiteChain(deposit);
156
+ deposit.toLiteChain = this.isDestinationLiteChain(deposit);
157
+ this.logger.debug({
158
+ at: "SpokePoolClient#findDeposit",
159
+ message: "Located V3 deposit outside of SpokePoolClient's search range",
160
+ deposit: deposit,
161
+ elapsedMs: tStop - tStart,
162
+ });
163
+ return [2 /*return*/, { found: true, deposit: deposit }];
164
+ }
165
+ });
166
+ });
167
+ };
168
+ EVMSpokePoolClient.prototype.getTimestampForBlock = function (blockNumber) {
169
+ return _getTimestampForBlock(this.spokePool.provider, blockNumber);
170
+ };
171
+ return EVMSpokePoolClient;
172
+ }(SpokePoolClient));
173
+ export { EVMSpokePoolClient };
174
+ //# sourceMappingURL=EVMSpokePoolClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EVMSpokePoolClient.js","sourceRoot":"","sources":["../../../../src/clients/SpokePoolClient/EVMSpokePoolClient.ts"],"names":[],"mappings":"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"}