@across-protocol/sdk 3.1.36 → 3.2.0
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.
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +4 -4
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +1 -2
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
- package/dist/cjs/clients/HubPoolClient.d.ts +7 -4
- package/dist/cjs/clients/HubPoolClient.js +37 -25
- package/dist/cjs/clients/HubPoolClient.js.map +1 -1
- package/dist/cjs/clients/SpokePoolClient.d.ts +7 -5
- package/dist/cjs/clients/SpokePoolClient.js +53 -90
- package/dist/cjs/clients/SpokePoolClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockConfigStoreClient.d.ts +4 -3
- package/dist/cjs/clients/mocks/MockConfigStoreClient.js +27 -44
- package/dist/cjs/clients/mocks/MockConfigStoreClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockEvents.d.ts +5 -5
- package/dist/cjs/clients/mocks/MockEvents.js +7 -44
- package/dist/cjs/clients/mocks/MockEvents.js.map +1 -1
- package/dist/cjs/clients/mocks/MockHubPoolClient.d.ts +5 -5
- package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockSpokePoolClient.d.ts +9 -19
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js +22 -96
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
- package/dist/cjs/contracts/utils.d.ts +1 -1
- package/dist/cjs/contracts/utils.js.map +1 -1
- package/dist/cjs/interfaces/Common.d.ts +7 -0
- package/dist/cjs/utils/EventUtils.d.ts +7 -4
- package/dist/cjs/utils/EventUtils.js +9 -5
- package/dist/cjs/utils/EventUtils.js.map +1 -1
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +4 -4
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +2 -3
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
- package/dist/esm/clients/HubPoolClient.d.ts +19 -4
- package/dist/esm/clients/HubPoolClient.js +51 -27
- package/dist/esm/clients/HubPoolClient.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient.d.ts +13 -12
- package/dist/esm/clients/SpokePoolClient.js +61 -104
- package/dist/esm/clients/SpokePoolClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockConfigStoreClient.d.ts +4 -3
- package/dist/esm/clients/mocks/MockConfigStoreClient.js +33 -47
- package/dist/esm/clients/mocks/MockConfigStoreClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockEvents.d.ts +5 -5
- package/dist/esm/clients/mocks/MockEvents.js +9 -50
- package/dist/esm/clients/mocks/MockEvents.js.map +1 -1
- package/dist/esm/clients/mocks/MockHubPoolClient.d.ts +5 -5
- package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockSpokePoolClient.d.ts +9 -19
- package/dist/esm/clients/mocks/MockSpokePoolClient.js +30 -100
- package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
- package/dist/esm/contracts/utils.d.ts +1 -1
- package/dist/esm/contracts/utils.js.map +1 -1
- package/dist/esm/interfaces/Common.d.ts +7 -0
- package/dist/esm/utils/EventUtils.d.ts +7 -4
- package/dist/esm/utils/EventUtils.js +7 -4
- package/dist/esm/utils/EventUtils.js.map +1 -1
- package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +4 -4
- package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts.map +1 -1
- package/dist/types/clients/HubPoolClient.d.ts +19 -4
- package/dist/types/clients/HubPoolClient.d.ts.map +1 -1
- package/dist/types/clients/SpokePoolClient.d.ts +13 -12
- package/dist/types/clients/SpokePoolClient.d.ts.map +1 -1
- package/dist/types/clients/mocks/MockConfigStoreClient.d.ts +4 -3
- package/dist/types/clients/mocks/MockConfigStoreClient.d.ts.map +1 -1
- package/dist/types/clients/mocks/MockEvents.d.ts +5 -5
- package/dist/types/clients/mocks/MockEvents.d.ts.map +1 -1
- package/dist/types/clients/mocks/MockHubPoolClient.d.ts +5 -5
- package/dist/types/clients/mocks/MockHubPoolClient.d.ts.map +1 -1
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts +9 -19
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
- package/dist/types/contracts/utils.d.ts +1 -1
- package/dist/types/contracts/utils.d.ts.map +1 -1
- package/dist/types/interfaces/Common.d.ts +7 -0
- package/dist/types/interfaces/Common.d.ts.map +1 -1
- package/dist/types/utils/EventUtils.d.ts +7 -4
- package/dist/types/utils/EventUtils.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts +9 -10
- package/src/clients/HubPoolClient.ts +34 -24
- package/src/clients/SpokePoolClient.ts +55 -74
- package/src/clients/mocks/MockConfigStoreClient.ts +11 -11
- package/src/clients/mocks/MockEvents.ts +15 -65
- package/src/clients/mocks/MockHubPoolClient.ts +6 -6
- package/src/clients/mocks/MockSpokePoolClient.ts +26 -59
- package/src/contracts/utils.ts +2 -1
- package/src/interfaces/Common.ts +7 -0
- package/src/utils/EventUtils.ts +12 -7
|
@@ -3,7 +3,7 @@ import assert from "assert";
|
|
|
3
3
|
import _ from "lodash";
|
|
4
4
|
import { DEFAULT_CACHING_SAFE_LAG, DEFAULT_CACHING_TTL } from "../constants";
|
|
5
5
|
import * as lpFeeCalculator from "../lpFeeCalculator";
|
|
6
|
-
import { BigNumber, BlockFinder, bnZero, dedupArray, assign, fetchTokenInfo, getCachedBlockForTimestamp, getCurrentTime, getNetworkName, isDefined, mapAsync, paginatedEventQuery, shouldCache, sortEventsDescending,
|
|
6
|
+
import { BigNumber, BlockFinder, bnZero, dedupArray, assign, fetchTokenInfo, getCachedBlockForTimestamp, getCurrentTime, getNetworkName, isDefined, mapAsync, paginatedEventQuery, shouldCache, sortEventsDescending, spreadEventWithBlockNumber, toBN, getTokenInfo, getUsdcSymbol, getL1TokenInfo, } from "../utils";
|
|
7
7
|
import { BaseAbstractClient, isUpdateFailureReason, UpdateFailureReason } from "./BaseAbstractClient";
|
|
8
8
|
var HubPoolClient = /** @class */ (function (_super) {
|
|
9
9
|
__extends(HubPoolClient, _super);
|
|
@@ -184,10 +184,49 @@ var HubPoolClient = /** @class */ (function (_super) {
|
|
|
184
184
|
HubPoolClient.prototype.getL1TokenInfoForAddress = function (tokenAddress, chain) {
|
|
185
185
|
return getL1TokenInfo(tokenAddress, chain);
|
|
186
186
|
};
|
|
187
|
+
/**
|
|
188
|
+
* Resolve a given timestamp to a block number on the HubPool chain.
|
|
189
|
+
* @param timestamp A single timestamp to be resolved to a block number on the HubPool chain.
|
|
190
|
+
* @returns The block number corresponding to the supplied timestamp.
|
|
191
|
+
*/
|
|
187
192
|
HubPoolClient.prototype.getBlockNumber = function (timestamp) {
|
|
188
193
|
var hints = { lowBlock: this.deploymentBlock };
|
|
189
194
|
return getCachedBlockForTimestamp(this.chainId, timestamp, this.blockFinder, this.cachingMechanism, hints);
|
|
190
195
|
};
|
|
196
|
+
/**
|
|
197
|
+
* For an array of timestamps, resolve each unique timestamp to a block number on the HubPool chain.
|
|
198
|
+
* @dev Inputs are filtered for uniqueness and sorted to improve BlockFinder efficiency.
|
|
199
|
+
* @dev Querying block numbers sequentially also improves BlockFinder efficiency.
|
|
200
|
+
* @param timestamps Array of timestamps to be resolved to a block number on the HubPool chain.
|
|
201
|
+
* @returns A mapping of quoteTimestamp -> HubPool block number.
|
|
202
|
+
*/
|
|
203
|
+
HubPoolClient.prototype.getBlockNumbers = function (timestamps) {
|
|
204
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
205
|
+
var sortedTimestamps, blockNumbers, _i, sortedTimestamps_1, timestamp, _a, _b;
|
|
206
|
+
return __generator(this, function (_c) {
|
|
207
|
+
switch (_c.label) {
|
|
208
|
+
case 0:
|
|
209
|
+
sortedTimestamps = dedupArray(timestamps).sort(function (x, y) { return x - y; });
|
|
210
|
+
blockNumbers = {};
|
|
211
|
+
_i = 0, sortedTimestamps_1 = sortedTimestamps;
|
|
212
|
+
_c.label = 1;
|
|
213
|
+
case 1:
|
|
214
|
+
if (!(_i < sortedTimestamps_1.length)) return [3 /*break*/, 4];
|
|
215
|
+
timestamp = sortedTimestamps_1[_i];
|
|
216
|
+
_a = blockNumbers;
|
|
217
|
+
_b = timestamp;
|
|
218
|
+
return [4 /*yield*/, this.getBlockNumber(timestamp)];
|
|
219
|
+
case 2:
|
|
220
|
+
_a[_b] = _c.sent();
|
|
221
|
+
_c.label = 3;
|
|
222
|
+
case 3:
|
|
223
|
+
_i++;
|
|
224
|
+
return [3 /*break*/, 1];
|
|
225
|
+
case 4: return [2 /*return*/, blockNumbers];
|
|
226
|
+
}
|
|
227
|
+
});
|
|
228
|
+
});
|
|
229
|
+
};
|
|
191
230
|
HubPoolClient.prototype.getCurrentPoolUtilization = function (l1Token) {
|
|
192
231
|
var _a;
|
|
193
232
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -287,10 +326,10 @@ var HubPoolClient = /** @class */ (function (_super) {
|
|
|
287
326
|
HubPoolClient.prototype.batchComputeRealizedLpFeePct = function (deposits) {
|
|
288
327
|
var _a;
|
|
289
328
|
return __awaiter(this, void 0, void 0, function () {
|
|
290
|
-
var utilizationTimestamps, utilization, quoteBlocks, hubPoolTokens, getHubPoolToken, getHubPoolTokens, resolveUniqueQuoteTimestamps,
|
|
329
|
+
var utilizationTimestamps, utilization, quoteBlocks, hubPoolTokens, getHubPoolToken, getHubPoolTokens, resolveUniqueQuoteTimestamps, resolveUtilization, computeRealizedLpFeePct, timeToCache, quoteTimestamps, _b, _c;
|
|
291
330
|
var _this = this;
|
|
292
|
-
return __generator(this, function (
|
|
293
|
-
switch (
|
|
331
|
+
return __generator(this, function (_d) {
|
|
332
|
+
switch (_d.label) {
|
|
294
333
|
case 0:
|
|
295
334
|
assert(deposits.length > 0, "No deposits supplied to batchComputeRealizedLpFeePct");
|
|
296
335
|
if (!isDefined(this.currentTime)) {
|
|
@@ -318,20 +357,6 @@ var HubPoolClient = /** @class */ (function (_super) {
|
|
|
318
357
|
utilizationTimestamps[hubPoolToken].push(quoteTimestamp);
|
|
319
358
|
}
|
|
320
359
|
};
|
|
321
|
-
resolveTimestampsToBlocks = function (quoteTimestamp) { return __awaiter(_this, void 0, void 0, function () {
|
|
322
|
-
var quoteBlock;
|
|
323
|
-
return __generator(this, function (_a) {
|
|
324
|
-
switch (_a.label) {
|
|
325
|
-
case 0: return [4 /*yield*/, this.getBlockNumber(quoteTimestamp)];
|
|
326
|
-
case 1:
|
|
327
|
-
quoteBlock = _a.sent();
|
|
328
|
-
if (!isDefined(quoteBlock)) {
|
|
329
|
-
throw new Error("Could not find block for timestamp ".concat(quoteTimestamp));
|
|
330
|
-
}
|
|
331
|
-
return [2 /*return*/, [quoteTimestamp, quoteBlock]];
|
|
332
|
-
}
|
|
333
|
-
});
|
|
334
|
-
}); };
|
|
335
360
|
resolveUtilization = function (hubPoolToken) { return __awaiter(_this, void 0, void 0, function () {
|
|
336
361
|
var _a, _b;
|
|
337
362
|
var _this = this;
|
|
@@ -379,17 +404,16 @@ var HubPoolClient = /** @class */ (function (_super) {
|
|
|
379
404
|
});
|
|
380
405
|
}); };
|
|
381
406
|
timeToCache = (_a = this.configOverride.timeToCache) !== null && _a !== void 0 ? _a : DEFAULT_CACHING_SAFE_LAG;
|
|
382
|
-
// Identify the unique hubPoolToken & quoteTimestamp mappings. This is used to optimise subsequent HubPool queries.
|
|
383
|
-
deposits.forEach(function (deposit) { return resolveUniqueQuoteTimestamps(deposit); });
|
|
384
407
|
quoteTimestamps = dedupArray(deposits.map(function (_a) {
|
|
385
408
|
var quoteTimestamp = _a.quoteTimestamp;
|
|
386
409
|
return quoteTimestamp;
|
|
387
410
|
}));
|
|
388
|
-
|
|
389
|
-
return [4 /*yield*/, mapAsync(quoteTimestamps, function (quoteTimestamp) { return resolveTimestampsToBlocks(quoteTimestamp); })];
|
|
411
|
+
return [4 /*yield*/, this.getBlockNumbers(quoteTimestamps)];
|
|
390
412
|
case 1:
|
|
391
|
-
quoteBlocks =
|
|
392
|
-
|
|
413
|
+
quoteBlocks = _d.sent();
|
|
414
|
+
// Identify the unique hubPoolToken & quoteTimestamp mappings. This is used to optimise subsequent HubPool queries.
|
|
415
|
+
deposits.forEach(function (deposit) { return resolveUniqueQuoteTimestamps(deposit); });
|
|
416
|
+
_c = (_b = Object).fromEntries;
|
|
393
417
|
return [4 /*yield*/, mapAsync(getHubPoolTokens(), function (hubPoolToken) { return __awaiter(_this, void 0, void 0, function () { var _a; return __generator(this, function (_b) {
|
|
394
418
|
switch (_b.label) {
|
|
395
419
|
case 0:
|
|
@@ -401,12 +425,12 @@ var HubPoolClient = /** @class */ (function (_super) {
|
|
|
401
425
|
case 2:
|
|
402
426
|
// For each token / quoteBlock pair, resolve the utilisation for each quoted block.
|
|
403
427
|
// This can be reused for each deposit with the same HubPool token and quoteTimestamp pair.
|
|
404
|
-
utilization =
|
|
428
|
+
utilization = _c.apply(_b, [_d.sent()]);
|
|
405
429
|
return [4 /*yield*/, mapAsync(deposits, function (deposit) { return computeRealizedLpFeePct(deposit); })];
|
|
406
430
|
case 3:
|
|
407
431
|
// For each deposit, compute the post-relay HubPool utilisation independently.
|
|
408
432
|
// @dev The caller expects to receive an array in the same length and ordering as the input `deposits`.
|
|
409
|
-
return [2 /*return*/,
|
|
433
|
+
return [2 /*return*/, _d.sent()];
|
|
410
434
|
}
|
|
411
435
|
});
|
|
412
436
|
});
|
|
@@ -749,7 +773,7 @@ var HubPoolClient = /** @class */ (function (_super) {
|
|
|
749
773
|
}
|
|
750
774
|
}
|
|
751
775
|
if (!eventsToQuery.includes("L1TokenEnabledForLiquidityProvision")) return [3 /*break*/, 3];
|
|
752
|
-
uniqueL1Tokens =
|
|
776
|
+
uniqueL1Tokens = dedupArray(events["L1TokenEnabledForLiquidityProvision"].map(function (event) { return String(event.args["l1Token"]); }));
|
|
753
777
|
return [4 /*yield*/, Promise.all([
|
|
754
778
|
Promise.all(uniqueL1Tokens.map(function (l1Token) { return fetchTokenInfo(l1Token, _this.hubPool.provider); })),
|
|
755
779
|
Promise.all(uniqueL1Tokens.map(function (l1Token) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HubPoolClient.js","sourceRoot":"","sources":["../../../src/clients/HubPoolClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HubPoolClient.js","sourceRoot":"","sources":["../../../src/clients/HubPoolClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Contract,
|
|
1
|
+
import { Contract, EventFilter } from "ethers";
|
|
2
2
|
import winston from "winston";
|
|
3
3
|
import { AnyObject, BigNumber, DefaultLogLevels, EventSearchConfig, MakeOptional } from "../utils";
|
|
4
|
-
import { Deposit, DepositWithBlock, Fill, FillStatus, FillWithBlock,
|
|
4
|
+
import { Deposit, DepositWithBlock, Fill, FillStatus, FillWithBlock, Log, RelayData, RelayerRefundExecutionWithBlock, RootBundleRelayWithBlock, SlowFillRequestWithBlock, SpeedUpWithBlock, TokensBridged } from "../interfaces";
|
|
5
5
|
import { BaseAbstractClient, UpdateFailureReason } from "./BaseAbstractClient";
|
|
6
6
|
import { HubPoolClient } from "./HubPoolClient";
|
|
7
7
|
import { AcrossConfigStoreClient } from "./AcrossConfigStoreClient";
|
|
@@ -11,7 +11,7 @@ type SpokePoolUpdateSuccess = {
|
|
|
11
11
|
oldestTime: number;
|
|
12
12
|
firstDepositId: number;
|
|
13
13
|
latestDepositId: number;
|
|
14
|
-
events:
|
|
14
|
+
events: Log[][];
|
|
15
15
|
searchEndBlock: number;
|
|
16
16
|
};
|
|
17
17
|
type SpokePoolUpdateFailure = {
|
|
@@ -275,18 +275,19 @@ export declare class SpokePoolClient extends BaseAbstractClient {
|
|
|
275
275
|
*/
|
|
276
276
|
static getExecutedRefundLeafL2Token(chainId: number, eventL2Token: string): string;
|
|
277
277
|
/**
|
|
278
|
-
*
|
|
279
|
-
* @param
|
|
280
|
-
* @returns The
|
|
278
|
+
* Resolve a given timestamp to a block number on the HubPool chain via the HubPoolClient.
|
|
279
|
+
* @param timestamp A single timestamp to be resolved via the HubPoolClient.
|
|
280
|
+
* @returns The block number on the HubPool chain corresponding to the supplied timestamp.
|
|
281
281
|
*/
|
|
282
|
-
protected
|
|
282
|
+
protected getBlockNumber(timestamp: number): Promise<number>;
|
|
283
283
|
/**
|
|
284
|
-
*
|
|
285
|
-
* @
|
|
286
|
-
* @
|
|
287
|
-
* @returns The array of realized LP fee percentages and associated HubPool block numbers.
|
|
284
|
+
* For an array of timestamps, resolve each timestamp to a block number on the HubPool chain via the HubPoolClient.
|
|
285
|
+
* @param timestamps Array of timestamps to be resolved to a block number via the HubPoolClient.
|
|
286
|
+
* @returns A mapping of quoteTimestamp -> HubPool block number.
|
|
288
287
|
*/
|
|
289
|
-
protected
|
|
288
|
+
protected getBlockNumbers(timestamps: number[]): Promise<{
|
|
289
|
+
[quoteTimestamp: number]: number;
|
|
290
|
+
}>;
|
|
290
291
|
/**
|
|
291
292
|
* Retrieves the destination token for a given deposit.
|
|
292
293
|
* @param deposit The deposit to retrieve the destination token for.
|
|
@@ -447,16 +447,16 @@ var SpokePoolClient = /** @class */ (function (_super) {
|
|
|
447
447
|
var _a, _b, _c;
|
|
448
448
|
if (eventsToQuery === void 0) { eventsToQuery = this.queryableEventNames; }
|
|
449
449
|
return __awaiter(this, void 0, void 0, function () {
|
|
450
|
-
var update, queryResults, currentTime, oldestTime, searchEndBlock, _i, _d, event_1, depositEvents,
|
|
451
|
-
return __generator(this, function (
|
|
452
|
-
switch (
|
|
450
|
+
var update, queryResults, currentTime, oldestTime, searchEndBlock, _i, _d, event_1, depositEvents, quoteBlockNumbers, _e, depositEvents_1, event_2, quoteBlockNumber, deposit, speedUpEvents, _f, speedUpEvents_1, event_3, speedUp, depositHash, depositDataAssociatedWithSpeedUp, slowFillRequests, _g, slowFillRequests_1, event_4, slowFillRequest, relayDataHash, fillEvents, _h, fillEvents_1, event_5, fill, enableDepositsEvents, _j, enableDepositsEvents_1, event_6, enableDeposit, relayedRootBundleEvents, _k, relayedRootBundleEvents_1, event_7, refundEvents, _l, refundEvents_1, event_8, executedRefund;
|
|
451
|
+
return __generator(this, function (_m) {
|
|
452
|
+
switch (_m.label) {
|
|
453
453
|
case 0:
|
|
454
454
|
if (this.hubPoolClient !== null && !this.hubPoolClient.isUpdated) {
|
|
455
455
|
throw new Error("HubPoolClient not updated");
|
|
456
456
|
}
|
|
457
457
|
return [4 /*yield*/, this._update(eventsToQuery)];
|
|
458
458
|
case 1:
|
|
459
|
-
update =
|
|
459
|
+
update = _m.sent();
|
|
460
460
|
if (!update.success) {
|
|
461
461
|
return [2 /*return*/];
|
|
462
462
|
}
|
|
@@ -468,20 +468,24 @@ var SpokePoolClient = /** @class */ (function (_super) {
|
|
|
468
468
|
}
|
|
469
469
|
}
|
|
470
470
|
if (!eventsToQuery.includes("V3FundsDeposited")) return [3 /*break*/, 3];
|
|
471
|
-
depositEvents =
|
|
471
|
+
depositEvents = (_a = queryResults[eventsToQuery.indexOf("V3FundsDeposited")]) !== null && _a !== void 0 ? _a : [];
|
|
472
472
|
if (depositEvents.length > 0) {
|
|
473
473
|
this.log("debug", "Using ".concat(depositEvents.length, " newly queried deposit events for chain ").concat(this.chainId), {
|
|
474
474
|
earliestEvent: depositEvents[0].blockNumber,
|
|
475
475
|
});
|
|
476
476
|
}
|
|
477
|
-
return [4 /*yield*/, this.
|
|
477
|
+
return [4 /*yield*/, this.getBlockNumbers(depositEvents.map(function (_a) {
|
|
478
|
+
var args = _a.args;
|
|
479
|
+
return Number(args["quoteTimestamp"]);
|
|
480
|
+
}))];
|
|
478
481
|
case 2:
|
|
479
|
-
|
|
480
|
-
for (_e = 0,
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
482
|
+
quoteBlockNumbers = _m.sent();
|
|
483
|
+
for (_e = 0, depositEvents_1 = depositEvents; _e < depositEvents_1.length; _e++) {
|
|
484
|
+
event_2 = depositEvents_1[_e];
|
|
485
|
+
quoteBlockNumber = quoteBlockNumbers[Number(event_2.args["quoteTimestamp"])];
|
|
486
|
+
deposit = __assign(__assign({}, spreadEventWithBlockNumber(event_2)), { quoteBlockNumber: quoteBlockNumber, originChainId: this.chainId,
|
|
487
|
+
// The following properties are placeholders to be updated immediately.
|
|
488
|
+
fromLiteChain: true, toLiteChain: true });
|
|
485
489
|
deposit.fromLiteChain = this.isOriginLiteChain(deposit);
|
|
486
490
|
deposit.toLiteChain = this.isDestinationLiteChain(deposit);
|
|
487
491
|
if (deposit.outputToken === ZERO_ADDRESS) {
|
|
@@ -498,18 +502,14 @@ var SpokePoolClient = /** @class */ (function (_super) {
|
|
|
498
502
|
this.latestDepositIdQueried = deposit.depositId;
|
|
499
503
|
}
|
|
500
504
|
}
|
|
501
|
-
|
|
505
|
+
_m.label = 3;
|
|
502
506
|
case 3:
|
|
503
|
-
// TODO: When validating fills with deposits for the purposes of UBA flows, do we need to consider
|
|
504
|
-
// speed ups as well? For example, do we need to also consider that the speed up is before the fill
|
|
505
|
-
// timestamp to be applied for the fill? My brain hurts.
|
|
506
507
|
// Update deposits with speed up requests from depositor.
|
|
507
508
|
if (eventsToQuery.includes("RequestedSpeedUpV3Deposit")) {
|
|
508
|
-
speedUpEvents =
|
|
509
|
-
for (
|
|
510
|
-
event_3 = speedUpEvents_1[
|
|
511
|
-
|
|
512
|
-
speedUp = __assign(__assign({}, rawEvent), { originChainId: this.chainId });
|
|
509
|
+
speedUpEvents = (_b = queryResults[eventsToQuery.indexOf("RequestedSpeedUpV3Deposit")]) !== null && _b !== void 0 ? _b : [];
|
|
510
|
+
for (_f = 0, speedUpEvents_1 = speedUpEvents; _f < speedUpEvents_1.length; _f++) {
|
|
511
|
+
event_3 = speedUpEvents_1[_f];
|
|
512
|
+
speedUp = __assign(__assign({}, spreadEventWithBlockNumber(event_3)), { originChainId: this.chainId });
|
|
513
513
|
assign(this.speedUps, [speedUp.depositor, speedUp.depositId], [speedUp]);
|
|
514
514
|
depositHash = this.getDepositHash(speedUp);
|
|
515
515
|
depositDataAssociatedWithSpeedUp = this.depositHashes[depositHash];
|
|
@@ -520,8 +520,8 @@ var SpokePoolClient = /** @class */ (function (_super) {
|
|
|
520
520
|
}
|
|
521
521
|
if (eventsToQuery.includes("RequestedV3SlowFill")) {
|
|
522
522
|
slowFillRequests = queryResults[eventsToQuery.indexOf("RequestedV3SlowFill")];
|
|
523
|
-
for (
|
|
524
|
-
event_4 = slowFillRequests_1[
|
|
523
|
+
for (_g = 0, slowFillRequests_1 = slowFillRequests; _g < slowFillRequests_1.length; _g++) {
|
|
524
|
+
event_4 = slowFillRequests_1[_g];
|
|
525
525
|
slowFillRequest = __assign(__assign({}, spreadEventWithBlockNumber(event_4)), { destinationChainId: this.chainId });
|
|
526
526
|
relayDataHash = getRelayDataHash(slowFillRequest, this.chainId);
|
|
527
527
|
if (this.slowFillRequests[relayDataHash] !== undefined) {
|
|
@@ -531,7 +531,7 @@ var SpokePoolClient = /** @class */ (function (_super) {
|
|
|
531
531
|
}
|
|
532
532
|
}
|
|
533
533
|
if (eventsToQuery.includes("FilledV3Relay")) {
|
|
534
|
-
fillEvents =
|
|
534
|
+
fillEvents = (_c = queryResults[eventsToQuery.indexOf("FilledV3Relay")]) !== null && _c !== void 0 ? _c : [];
|
|
535
535
|
if (fillEvents.length > 0) {
|
|
536
536
|
this.log("debug", "Using ".concat(fillEvents.length, " newly queried fill events for chain ").concat(this.chainId), {
|
|
537
537
|
earliestEvent: fillEvents[0].blockNumber,
|
|
@@ -539,8 +539,8 @@ var SpokePoolClient = /** @class */ (function (_super) {
|
|
|
539
539
|
}
|
|
540
540
|
// @note The type assertions here suppress errors that might arise due to incomplete types. For now, verify via
|
|
541
541
|
// test that the types are complete. A broader change in strategy for safely unpacking events will be introduced.
|
|
542
|
-
for (
|
|
543
|
-
event_5 = fillEvents_1[
|
|
542
|
+
for (_h = 0, fillEvents_1 = fillEvents; _h < fillEvents_1.length; _h++) {
|
|
543
|
+
event_5 = fillEvents_1[_h];
|
|
544
544
|
fill = __assign(__assign({}, spreadEventWithBlockNumber(event_5)), { destinationChainId: this.chainId });
|
|
545
545
|
assign(this.fills, [fill.originChainId], [fill]);
|
|
546
546
|
assign(this.depositHashesToFills, [this.getDepositHash(fill)], [fill]);
|
|
@@ -548,23 +548,23 @@ var SpokePoolClient = /** @class */ (function (_super) {
|
|
|
548
548
|
}
|
|
549
549
|
if (eventsToQuery.includes("EnabledDepositRoute")) {
|
|
550
550
|
enableDepositsEvents = queryResults[eventsToQuery.indexOf("EnabledDepositRoute")];
|
|
551
|
-
for (
|
|
552
|
-
event_6 = enableDepositsEvents_1[
|
|
551
|
+
for (_j = 0, enableDepositsEvents_1 = enableDepositsEvents; _j < enableDepositsEvents_1.length; _j++) {
|
|
552
|
+
event_6 = enableDepositsEvents_1[_j];
|
|
553
553
|
enableDeposit = spreadEvent(event_6.args);
|
|
554
554
|
assign(this.depositRoutes, [enableDeposit.originToken, enableDeposit.destinationChainId], enableDeposit.enabled);
|
|
555
555
|
}
|
|
556
556
|
}
|
|
557
557
|
if (eventsToQuery.includes("RelayedRootBundle")) {
|
|
558
558
|
relayedRootBundleEvents = queryResults[eventsToQuery.indexOf("RelayedRootBundle")];
|
|
559
|
-
for (
|
|
560
|
-
event_7 = relayedRootBundleEvents_1[
|
|
559
|
+
for (_k = 0, relayedRootBundleEvents_1 = relayedRootBundleEvents; _k < relayedRootBundleEvents_1.length; _k++) {
|
|
560
|
+
event_7 = relayedRootBundleEvents_1[_k];
|
|
561
561
|
this.rootBundleRelays.push(spreadEventWithBlockNumber(event_7));
|
|
562
562
|
}
|
|
563
563
|
}
|
|
564
564
|
if (eventsToQuery.includes("ExecutedRelayerRefundRoot")) {
|
|
565
565
|
refundEvents = queryResults[eventsToQuery.indexOf("ExecutedRelayerRefundRoot")];
|
|
566
|
-
for (
|
|
567
|
-
event_8 = refundEvents_1[
|
|
566
|
+
for (_l = 0, refundEvents_1 = refundEvents; _l < refundEvents_1.length; _l++) {
|
|
567
|
+
event_8 = refundEvents_1[_l];
|
|
568
568
|
executedRefund = spreadEventWithBlockNumber(event_8);
|
|
569
569
|
executedRefund.l2TokenAddress = SpokePoolClient.getExecutedRefundLeafL2Token(executedRefund.chainId, executedRefund.l2TokenAddress);
|
|
570
570
|
this.relayerRefundExecutions.push(executedRefund);
|
|
@@ -612,70 +612,22 @@ var SpokePoolClient = /** @class */ (function (_super) {
|
|
|
612
612
|
}
|
|
613
613
|
};
|
|
614
614
|
/**
|
|
615
|
-
*
|
|
616
|
-
* @param
|
|
617
|
-
* @returns The
|
|
615
|
+
* Resolve a given timestamp to a block number on the HubPool chain via the HubPoolClient.
|
|
616
|
+
* @param timestamp A single timestamp to be resolved via the HubPoolClient.
|
|
617
|
+
* @returns The block number on the HubPool chain corresponding to the supplied timestamp.
|
|
618
618
|
*/
|
|
619
|
-
SpokePoolClient.prototype.
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
return __generator(this, function (_a) {
|
|
623
|
-
switch (_a.label) {
|
|
624
|
-
case 0: return [4 /*yield*/, this.batchComputeRealizedLpFeePct([depositEvent])];
|
|
625
|
-
case 1:
|
|
626
|
-
lpFee = (_a.sent())[0];
|
|
627
|
-
return [2 /*return*/, lpFee];
|
|
628
|
-
}
|
|
629
|
-
});
|
|
630
|
-
});
|
|
619
|
+
SpokePoolClient.prototype.getBlockNumber = function (timestamp) {
|
|
620
|
+
var _a, _b;
|
|
621
|
+
return (_b = (_a = this.hubPoolClient) === null || _a === void 0 ? void 0 : _a.getBlockNumber(timestamp)) !== null && _b !== void 0 ? _b : Promise.resolve(MAX_BIG_INT.toNumber());
|
|
631
622
|
};
|
|
632
623
|
/**
|
|
633
|
-
*
|
|
634
|
-
* @
|
|
635
|
-
* @
|
|
636
|
-
* @returns The array of realized LP fee percentages and associated HubPool block numbers.
|
|
624
|
+
* For an array of timestamps, resolve each timestamp to a block number on the HubPool chain via the HubPoolClient.
|
|
625
|
+
* @param timestamps Array of timestamps to be resolved to a block number via the HubPoolClient.
|
|
626
|
+
* @returns A mapping of quoteTimestamp -> HubPool block number.
|
|
637
627
|
*/
|
|
638
|
-
SpokePoolClient.prototype.
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
var _this = this;
|
|
642
|
-
return __generator(this, function (_b) {
|
|
643
|
-
switch (_b.label) {
|
|
644
|
-
case 0:
|
|
645
|
-
// If no hub pool client, we're using this for testing. Set quote block very high so that if it's ever
|
|
646
|
-
// used to look up a configuration for a block, it will always match with the latest configuration.
|
|
647
|
-
if (this.hubPoolClient === null) {
|
|
648
|
-
realizedLpFeePct_1 = bnZero;
|
|
649
|
-
quoteBlock_1 = MAX_BIG_INT.toNumber();
|
|
650
|
-
return [2 /*return*/, depositEvents.map(function () {
|
|
651
|
-
return { realizedLpFeePct: realizedLpFeePct_1, quoteBlock: quoteBlock_1 };
|
|
652
|
-
})];
|
|
653
|
-
}
|
|
654
|
-
deposits = depositEvents.map(function (_a) {
|
|
655
|
-
var args = _a.args;
|
|
656
|
-
// For v3 deposits, leave payment chain ID undefined so we don't compute lp fee since we don't have the
|
|
657
|
-
// payment chain ID until we match this deposit with a fill.
|
|
658
|
-
var inputToken = args.inputToken, inputAmount = args.inputAmount, quoteTimestamp = args.quoteTimestamp;
|
|
659
|
-
return {
|
|
660
|
-
inputToken: inputToken,
|
|
661
|
-
inputAmount: inputAmount,
|
|
662
|
-
originChainId: _this.chainId,
|
|
663
|
-
paymentChainId: undefined,
|
|
664
|
-
quoteTimestamp: quoteTimestamp,
|
|
665
|
-
};
|
|
666
|
-
});
|
|
667
|
-
if (!(deposits.length > 0)) return [3 /*break*/, 2];
|
|
668
|
-
return [4 /*yield*/, this.hubPoolClient.batchComputeRealizedLpFeePct(deposits)];
|
|
669
|
-
case 1:
|
|
670
|
-
_a = _b.sent();
|
|
671
|
-
return [3 /*break*/, 3];
|
|
672
|
-
case 2:
|
|
673
|
-
_a = [];
|
|
674
|
-
_b.label = 3;
|
|
675
|
-
case 3: return [2 /*return*/, _a];
|
|
676
|
-
}
|
|
677
|
-
});
|
|
678
|
-
});
|
|
628
|
+
SpokePoolClient.prototype.getBlockNumbers = function (timestamps) {
|
|
629
|
+
var _a, _b;
|
|
630
|
+
return ((_b = (_a = this.hubPoolClient) === null || _a === void 0 ? void 0 : _a.getBlockNumbers(timestamps)) !== null && _b !== void 0 ? _b : Promise.resolve(Object.fromEntries(timestamps.map(function (timestamp) { return [timestamp, MAX_BIG_INT.toNumber()]; }))));
|
|
679
631
|
};
|
|
680
632
|
/**
|
|
681
633
|
* Retrieves the destination token for a given deposit.
|
|
@@ -714,12 +666,13 @@ var SpokePoolClient = /** @class */ (function (_super) {
|
|
|
714
666
|
};
|
|
715
667
|
SpokePoolClient.prototype.findDeposit = function (depositId, destinationChainId) {
|
|
716
668
|
return __awaiter(this, void 0, void 0, function () {
|
|
717
|
-
var searchBounds, tStart, query, tStop, event, srcChain, dstChain,
|
|
718
|
-
|
|
719
|
-
|
|
669
|
+
var searchBounds, tStart, query, tStop, event, srcChain, dstChain, deposit, _a;
|
|
670
|
+
var _b;
|
|
671
|
+
return __generator(this, function (_c) {
|
|
672
|
+
switch (_c.label) {
|
|
720
673
|
case 0: return [4 /*yield*/, this._getBlockRangeForDepositId(depositId, this.deploymentBlock, this.latestBlockSearched, 7)];
|
|
721
674
|
case 1:
|
|
722
|
-
searchBounds =
|
|
675
|
+
searchBounds = _c.sent();
|
|
723
676
|
tStart = Date.now();
|
|
724
677
|
return [4 /*yield*/, paginatedEventQuery(this.spokePool, this.spokePool.filters.V3FundsDeposited(null, null, null, null, null, depositId), {
|
|
725
678
|
fromBlock: searchBounds.low,
|
|
@@ -727,22 +680,26 @@ var SpokePoolClient = /** @class */ (function (_super) {
|
|
|
727
680
|
maxBlockLookBack: this.eventSearchConfig.maxBlockLookBack,
|
|
728
681
|
})];
|
|
729
682
|
case 2:
|
|
730
|
-
query =
|
|
683
|
+
query = _c.sent();
|
|
731
684
|
tStop = Date.now();
|
|
732
|
-
event = query.find(function (
|
|
685
|
+
event = query.find(function (_a) {
|
|
686
|
+
var args = _a.args;
|
|
687
|
+
return args["depositId"] === depositId;
|
|
688
|
+
});
|
|
733
689
|
if (event === undefined) {
|
|
734
690
|
srcChain = getNetworkName(this.chainId);
|
|
735
691
|
dstChain = getNetworkName(destinationChainId);
|
|
736
692
|
throw new Error("Could not find deposit ".concat(depositId, " for ").concat(dstChain, " fill") +
|
|
737
693
|
" between ".concat(srcChain, " blocks [").concat(searchBounds.low, ", ").concat(searchBounds.high, "]"));
|
|
738
694
|
}
|
|
739
|
-
|
|
740
|
-
|
|
695
|
+
_a = [__assign({}, spreadEventWithBlockNumber(event))];
|
|
696
|
+
_b = { originChainId: this.chainId };
|
|
697
|
+
return [4 /*yield*/, this.getBlockNumber(Number(event.args["quoteTimestamp"]))];
|
|
741
698
|
case 3:
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
699
|
+
deposit = __assign.apply(void 0, _a.concat([(_b.quoteBlockNumber = _c.sent(), _b.fromLiteChain = true, _b.toLiteChain = true, _b)]));
|
|
700
|
+
if (deposit.outputToken === ZERO_ADDRESS) {
|
|
701
|
+
deposit.outputToken = this.getDestinationTokenForDeposit(deposit);
|
|
702
|
+
}
|
|
746
703
|
deposit.fromLiteChain = this.isOriginLiteChain(deposit);
|
|
747
704
|
deposit.toLiteChain = this.isDestinationLiteChain(deposit);
|
|
748
705
|
this.logger.debug({
|