@across-protocol/sdk 3.0.3 → 3.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +7 -2
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +37 -0
- package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
- package/dist/cjs/clients/SpokePoolClient.d.ts +3 -2
- package/dist/cjs/clients/SpokePoolClient.js +7 -7
- package/dist/cjs/clients/SpokePoolClient.js.map +1 -1
- package/dist/cjs/clients/mocks/MockSpokePoolClient.d.ts +2 -0
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js +3 -0
- package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
- package/dist/cjs/interfaces/ConfigStore.d.ts +3 -0
- package/dist/cjs/interfaces/SpokePool.d.ts +1 -0
- package/dist/cjs/interfaces/SpokePool.js.map +1 -1
- package/dist/cjs/utils/BlockUtils.js +8 -7
- package/dist/cjs/utils/BlockUtils.js.map +1 -1
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +25 -2
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +65 -0
- package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
- package/dist/esm/clients/SpokePoolClient.d.ts +9 -12
- package/dist/esm/clients/SpokePoolClient.js +13 -17
- package/dist/esm/clients/SpokePoolClient.js.map +1 -1
- package/dist/esm/clients/mocks/MockSpokePoolClient.d.ts +2 -0
- package/dist/esm/clients/mocks/MockSpokePoolClient.js +3 -0
- package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
- package/dist/esm/interfaces/ConfigStore.d.ts +3 -0
- package/dist/esm/interfaces/SpokePool.d.ts +1 -0
- package/dist/esm/interfaces/SpokePool.js.map +1 -1
- package/dist/esm/utils/BlockUtils.js +9 -8
- package/dist/esm/utils/BlockUtils.js.map +1 -1
- package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +25 -2
- package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts.map +1 -1
- package/dist/types/clients/SpokePoolClient.d.ts +9 -12
- package/dist/types/clients/SpokePoolClient.d.ts.map +1 -1
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts +2 -0
- package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
- package/dist/types/interfaces/ConfigStore.d.ts +3 -0
- package/dist/types/interfaces/ConfigStore.d.ts.map +1 -1
- package/dist/types/interfaces/SpokePool.d.ts +1 -0
- package/dist/types/interfaces/SpokePool.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts +67 -0
- package/src/clients/SpokePoolClient.ts +16 -18
- package/src/clients/mocks/MockSpokePoolClient.ts +5 -0
- package/src/interfaces/ConfigStore.ts +4 -0
- package/src/interfaces/SpokePool.ts +1 -0
- package/src/utils/BlockUtils.ts +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AcrossConfigStoreClient.d.ts","sourceRoot":"","sources":["../../../../src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,MAAM,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,iBAAiB,EACjB,YAAY,EAab,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"AcrossConfigStoreClient.d.ts","sourceRoot":"","sources":["../../../../src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { AnyObject, DefaultLogLevels, EventSearchConfig, MakeOptional } from "..
|
|
|
4
4
|
import { Deposit, DepositWithBlock, Fill, FillWithBlock, RealizedLpFee, RelayData, RelayerRefundExecutionWithBlock, RootBundleRelayWithBlock, SlowFillRequestWithBlock, SpeedUp, TokensBridged, V3FundsDepositedEvent } from "../interfaces";
|
|
5
5
|
import { BaseAbstractClient, UpdateFailureReason } from "./BaseAbstractClient";
|
|
6
6
|
import { HubPoolClient } from "./HubPoolClient";
|
|
7
|
+
import { AcrossConfigStoreClient } from "./AcrossConfigStoreClient";
|
|
7
8
|
type SpokePoolUpdateSuccess = {
|
|
8
9
|
success: true;
|
|
9
10
|
currentTime: number;
|
|
@@ -53,6 +54,7 @@ export declare class SpokePoolClient extends BaseAbstractClient {
|
|
|
53
54
|
protected rootBundleRelays: RootBundleRelayWithBlock[];
|
|
54
55
|
protected relayerRefundExecutions: RelayerRefundExecutionWithBlock[];
|
|
55
56
|
protected queryableEventNames: string[];
|
|
57
|
+
protected configStoreClient: AcrossConfigStoreClient | undefined;
|
|
56
58
|
earliestDepositIdQueried: number;
|
|
57
59
|
latestDepositIdQueried: number;
|
|
58
60
|
firstDepositIdForSpokePool: number;
|
|
@@ -102,18 +104,6 @@ export declare class SpokePoolClient extends BaseAbstractClient {
|
|
|
102
104
|
[DestinationChainId: number]: boolean;
|
|
103
105
|
};
|
|
104
106
|
};
|
|
105
|
-
/**
|
|
106
|
-
* Determines whether a deposit route is enabled for the given origin token and destination chain ID.
|
|
107
|
-
* @param originToken The origin token address.
|
|
108
|
-
* @param destinationChainId The destination chain ID.
|
|
109
|
-
* @returns True if the deposit route is enabled, false otherwise.
|
|
110
|
-
*/
|
|
111
|
-
isDepositRouteEnabled(originToken: string, destinationChainId: number): boolean;
|
|
112
|
-
/**
|
|
113
|
-
* Retrieves a list of all the available origin tokens that can be bridged.
|
|
114
|
-
* @returns A list of origin tokens.
|
|
115
|
-
*/
|
|
116
|
-
getAllOriginTokens(): string[];
|
|
117
107
|
/**
|
|
118
108
|
* Retrieves a list of fills from the SpokePool contract.
|
|
119
109
|
* @returns A list of fills.
|
|
@@ -306,6 +296,13 @@ export declare class SpokePoolClient extends BaseAbstractClient {
|
|
|
306
296
|
*/
|
|
307
297
|
getOldestTime(): number;
|
|
308
298
|
findDeposit(depositId: number, destinationChainId: number, depositor: string): Promise<DepositWithBlock>;
|
|
299
|
+
/**
|
|
300
|
+
* Determines whether a deposit originates from a lite chain.
|
|
301
|
+
* @param deposit The deposit to evaluate.
|
|
302
|
+
* @returns True if the deposit originates from a lite chain, false otherwise. If the hub pool client is not defined,
|
|
303
|
+
* this method will return false.
|
|
304
|
+
*/
|
|
305
|
+
protected doesDepositOriginateFromLiteChain(deposit: DepositWithBlock): boolean;
|
|
309
306
|
}
|
|
310
307
|
export {};
|
|
311
308
|
//# sourceMappingURL=SpokePoolClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokePoolClient.d.ts","sourceRoot":"","sources":["../../../src/clients/SpokePoolClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACjE,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EACL,SAAS,EAET,gBAAgB,EAChB,iBAAiB,EAEjB,YAAY,EAKb,MAAM,UAAU,CAAC;AAUlB,OAAO,EACL,OAAO,EACP,gBAAgB,EAChB,IAAI,EACJ,aAAa,EAEb,aAAa,EACb,SAAS,EACT,+BAA+B,EAC/B,wBAAwB,EACxB,wBAAwB,EACxB,OAAO,EACP,aAAa,EACb,qBAAqB,EACtB,MAAM,eAAe,CAAC;AAIvB,OAAO,EAAE,kBAAkB,EAAyB,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AACtG,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"SpokePoolClient.d.ts","sourceRoot":"","sources":["../../../src/clients/SpokePoolClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { DepositWithBlock, V3FundsDepositedEvent, RealizedLpFee, RelayerRefundEx
|
|
|
4
4
|
import { SpokePoolClient, SpokePoolUpdate } from "../SpokePoolClient";
|
|
5
5
|
import { HubPoolClient } from "../HubPoolClient";
|
|
6
6
|
import { EventManager, EventOverrides } from "./MockEvents";
|
|
7
|
+
import { AcrossConfigStoreClient } from "../AcrossConfigStoreClient";
|
|
7
8
|
type Block = providers.Block;
|
|
8
9
|
export declare class MockSpokePoolClient extends SpokePoolClient {
|
|
9
10
|
eventManager: EventManager;
|
|
@@ -17,6 +18,7 @@ export declare class MockSpokePoolClient extends SpokePoolClient {
|
|
|
17
18
|
hubPoolClient: HubPoolClient | null;
|
|
18
19
|
});
|
|
19
20
|
setDefaultRealizedLpFeePct(fee: BigNumber): void;
|
|
21
|
+
setConfigStoreClient(configStore?: AcrossConfigStoreClient): void;
|
|
20
22
|
clearDefaultRealizedLpFeePct(): void;
|
|
21
23
|
computeRealizedLpFeePct(depositEvent: V3FundsDepositedEvent): Promise<RealizedLpFee>;
|
|
22
24
|
batchComputeRealizedLpFeePct(depositEvents: V3FundsDepositedEvent[]): Promise<RealizedLpFee[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MockSpokePoolClient.d.ts","sourceRoot":"","sources":["../../../../src/clients/mocks/MockSpokePoolClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE/D,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,gBAAgB,EAEhB,qBAAqB,EACrB,aAAa,EACb,+BAA+B,EAC/B,wBAAwB,EAExB,aAAa,EACb,YAAY,EACZ,OAAO,EACR,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAmB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"MockSpokePoolClient.d.ts","sourceRoot":"","sources":["../../../../src/clients/mocks/MockSpokePoolClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAE/D,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,gBAAgB,EAEhB,qBAAqB,EACrB,aAAa,EACb,+BAA+B,EAC/B,wBAAwB,EAExB,aAAa,EACb,YAAY,EACZ,OAAO,EACR,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAmB,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAErE,KAAK,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;AAI7B,qBAAa,mBAAoB,SAAQ,eAAe;IAC/C,YAAY,EAAE,YAAY,CAAC;IAClC,OAAO,CAAC,gBAAgB,CAAqB;IAC7C,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,gCAAgC,CAA8B;IAE/D,gBAAgB,EAAE,MAAM,EAAE,CAAM;IAChC,gBAAgB,SAAK;IACrB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAM;gBAGxC,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,SAAS,EAAE,QAAQ,EACnB,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EACvB,IAAI,GAAE;QAAE,aAAa,EAAE,aAAa,GAAG,IAAI,CAAA;KAA4B;IAOzE,0BAA0B,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI;IAKhD,oBAAoB,CAAC,WAAW,CAAC,EAAE,uBAAuB,GAAG,IAAI;IAIjE,4BAA4B,IAAI,IAAI;IAI9B,uBAAuB,CAAC,YAAY,EAAE,qBAAqB;IAQ3D,4BAA4B,CAAC,aAAa,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IASpG,2BAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAIjE,6BAA6B,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM;IAIhE,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAI/C,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI;IAc1C,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIjD,OAAO,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAsChE,SAAgB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAIrD;IAEF,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,KAAK;IA8C3C,WAAW,CAAC,IAAI,EAAE,aAAa,GAAG,KAAK;IAkDvC,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK;IAazC,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,KAAK;IAmB3D,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,KAAK;IAiBjD,wBAAwB,CAAC,MAAM,EAAE,+BAA+B,GAAG,KAAK;IA2BxE,cAAc,CACZ,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,MAAM,EAC1B,OAAO,EAAE,OAAO,EAChB,SAAS,GAAE,cAAmB,GAC7B,KAAK;CAcT"}
|
|
@@ -53,6 +53,9 @@ export interface ConfigStoreVersionUpdate<ValueStore = number> extends GlobalCon
|
|
|
53
53
|
export interface DisabledChainsUpdate extends SortableEvent {
|
|
54
54
|
chainIds: number[];
|
|
55
55
|
}
|
|
56
|
+
export interface LiteChainsIdListUpdate<ValueStore = number[]> extends GlobalConfigUpdate<ValueStore> {
|
|
57
|
+
timestamp: number;
|
|
58
|
+
}
|
|
56
59
|
/**
|
|
57
60
|
* A generic type of a dictionary that has string keys and values of type T. This
|
|
58
61
|
* record is enforced to have a default entry within the "default" key.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigStore.d.ts","sourceRoot":"","sources":["../../../src/interfaces/ConfigStore.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ConfigStore.d.ts","sourceRoot":"","sources":["../../../src/interfaces/ConfigStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,cAAc,CAAC,EAAE;QACf,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,CAAC;KACrC,CAAC;IACF,GAAG,CAAC,EAAE,oBAAoB,CAAC;IAC3B,mBAAmB,CAAC,EAAE;QACpB,CAAC,OAAO,EAAE,MAAM,GAAG;YACjB,MAAM,EAAE,MAAM,CAAC;YACf,SAAS,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,MAAM,iCAAiC,GAAG,IAAI,CAAC,sBAAsB,EAAE,WAAW,GAAG,QAAQ,CAAC,GAAG;IACrG,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,WAAW,wBAAyB,SAAQ,aAAa;IAC7D,mBAAmB,CAAC,EAAE;QACpB,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB,CAAC;KAC3C,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mCAAoC,SAAQ,aAAa;IACxE,mBAAmB,CAAC,EAAE;QACpB,CAAC,OAAO,EAAE,MAAM,GAAG,iCAAiC,CAAC;KACtD,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,cAAc,EAAE;QACd,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;KACxB,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB,CAAC,UAAU,GAAG,MAAM,CAAE,SAAQ,aAAa;IAC5E,KAAK,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB,CAAC,UAAU,GAAG,MAAM,CAAE,SAAQ,kBAAkB,CAAC,UAAU,CAAC;IACnG,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB,CAAC,UAAU,GAAG,MAAM,EAAE,CAAE,SAAQ,kBAAkB,CAAC,UAAU,CAAC;IACnG,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,KAAK,sBAAsB,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE3D;;;GAGG;AACH,KAAK,aAAa,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;AAE7C;;;;;;;;;;GAUG;AACH,KAAK,qBAAqB,CAAC,CAAC,IAAI;IAC9B;;OAEG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC5C;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACxC;;;OAGG;IACH,KAAK,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC;IACjC;;;;OAIG;IACH,KAAK,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD;;;;;;OAMG;IACH,KAAK,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAChD;;;OAGG;IACH,SAAS,EAAE,sBAAsB,CAAC;QAChC;;;;WAIG;QACH,eAAe,CAAC,EAAE,CAAC,CAAC;QACpB;;;;WAIG;QACH,eAAe,CAAC,EAAE,CAAC,CAAC;QACpB;;;WAGG;QACH,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB;;;WAGG;QACH,YAAY,CAAC,EAAE,CAAC,CAAC;KAClB,CAAC,CAAC;CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;AAEjE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG,aAAa,GAAG;IACvD,MAAM,EAAE,oBAAoB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC"}
|
|
@@ -25,6 +25,7 @@ export interface Deposit extends RelayData {
|
|
|
25
25
|
updatedRecipient?: string;
|
|
26
26
|
updatedOutputAmount?: BigNumber;
|
|
27
27
|
updatedMessage?: string;
|
|
28
|
+
originatesFromLiteChain: boolean;
|
|
28
29
|
}
|
|
29
30
|
export interface DepositWithBlock extends Deposit, SortableEvent {
|
|
30
31
|
quoteBlockNumber: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokePool.d.ts","sourceRoot":"","sources":["../../../src/interfaces/SpokePool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAChH,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,CAAC;AAEjG,MAAM,WAAW,SAAS;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,SAAS,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,OAAQ,SAAQ,SAAS;IACxC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,SAAS,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"SpokePool.d.ts","sourceRoot":"","sources":["../../../src/interfaces/SpokePool.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -24,6 +24,7 @@ import {
|
|
|
24
24
|
ConfigStoreVersionUpdate,
|
|
25
25
|
DisabledChainsUpdate,
|
|
26
26
|
GlobalConfigUpdate,
|
|
27
|
+
LiteChainsIdListUpdate,
|
|
27
28
|
ParsedTokenConfig,
|
|
28
29
|
RouteRateModelUpdate,
|
|
29
30
|
SpokePoolTargetBalance,
|
|
@@ -58,6 +59,7 @@ export enum GLOBAL_CONFIG_STORE_KEYS {
|
|
|
58
59
|
VERSION = "VERSION",
|
|
59
60
|
DISABLED_CHAINS = "DISABLED_CHAINS",
|
|
60
61
|
CHAIN_ID_INDICES = "CHAIN_ID_INDICES",
|
|
62
|
+
LITE_CHAIN_ID_INDICES = "LITE_CHAIN_ID_INDICES",
|
|
61
63
|
}
|
|
62
64
|
|
|
63
65
|
export class AcrossConfigStoreClient extends BaseAbstractClient {
|
|
@@ -67,6 +69,7 @@ export class AcrossConfigStoreClient extends BaseAbstractClient {
|
|
|
67
69
|
public cumulativeMaxRefundCountUpdates: GlobalConfigUpdate[] = [];
|
|
68
70
|
public cumulativeMaxL1TokenCountUpdates: GlobalConfigUpdate[] = [];
|
|
69
71
|
public chainIdIndicesUpdates: GlobalConfigUpdate<number[]>[] = [];
|
|
72
|
+
public liteChainIndicesUpdates: LiteChainsIdListUpdate[] = [];
|
|
70
73
|
public cumulativeSpokeTargetBalanceUpdates: SpokeTargetBalanceUpdate[] = [];
|
|
71
74
|
public cumulativeConfigStoreVersionUpdates: ConfigStoreVersionUpdate[] = [];
|
|
72
75
|
public cumulativeDisabledChainUpdates: DisabledChainsUpdate[] = [];
|
|
@@ -153,6 +156,38 @@ export class AcrossConfigStoreClient extends BaseAbstractClient {
|
|
|
153
156
|
return chainIdIndices ?? this.implicitChainIdIndices(this.chainId);
|
|
154
157
|
}
|
|
155
158
|
|
|
159
|
+
/**
|
|
160
|
+
* Resolves the lite chain ids that were available to the protocol at a given block range.
|
|
161
|
+
* @param blockNumber Block number to search for. Defaults to latest block.
|
|
162
|
+
* @returns List of lite chain IDs that were available to the protocol at the given block number.
|
|
163
|
+
* @note This dynamic functionality has been added after the launch of Across.
|
|
164
|
+
*/
|
|
165
|
+
getLiteChainIdIndicesForBlock(blockNumber: number = Number.MAX_SAFE_INTEGER): number[] {
|
|
166
|
+
const liteChainIdList = sortEventsDescending(this.liteChainIndicesUpdates);
|
|
167
|
+
return liteChainIdList.find((update) => update.blockNumber <= blockNumber)?.value ?? [];
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* Resolves the lite chain ids that were available to the protocol at a given timestamp.
|
|
172
|
+
* @param timestamp Timestamp to search for. Defaults to latest time - in seconds.
|
|
173
|
+
* @returns List of lite chain IDs that were available to the protocol at the given timestamp.
|
|
174
|
+
* @note This dynamic functionality has been added after the launch of Across.
|
|
175
|
+
*/
|
|
176
|
+
getLiteChainIdIndicesForTimestamp(timestamp: number = Number.MAX_SAFE_INTEGER): number[] {
|
|
177
|
+
const liteChainIdList = sortEventsDescending(this.liteChainIndicesUpdates);
|
|
178
|
+
return liteChainIdList.find((update) => update.timestamp <= timestamp)?.value ?? [];
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
/**
|
|
182
|
+
* Checks if a chain ID was a lite chain at a given timestamp.
|
|
183
|
+
* @param chainId The chain ID to check.
|
|
184
|
+
* @param timestamp The timestamp to check. Defaults to latest time - in seconds.
|
|
185
|
+
* @returns True if the chain ID was a lite chain at the given timestamp. False otherwise.
|
|
186
|
+
*/
|
|
187
|
+
isChainLiteChainAtTimestamp(chainId: number, timestamp: number = Number.MAX_SAFE_INTEGER): boolean {
|
|
188
|
+
return this.getLiteChainIdIndicesForTimestamp(timestamp).includes(chainId);
|
|
189
|
+
}
|
|
190
|
+
|
|
156
191
|
getSpokeTargetBalancesForBlock(
|
|
157
192
|
l1Token: string,
|
|
158
193
|
chainId: number,
|
|
@@ -407,6 +442,38 @@ export class AcrossConfigStoreClient extends BaseAbstractClient {
|
|
|
407
442
|
if (!isNaN(args.value)) {
|
|
408
443
|
this.cumulativeMaxRefundCountUpdates.push(args);
|
|
409
444
|
}
|
|
445
|
+
} else if (args.key === utf8ToHex(GLOBAL_CONFIG_STORE_KEYS.LITE_CHAIN_ID_INDICES)) {
|
|
446
|
+
// We need to parse the chain ID indices array from the stringified JSON. However,
|
|
447
|
+
// the on-chain string has quotes around the array, which will parse our JSON as a
|
|
448
|
+
// string instead of an array. We need to remove these quotes before parsing.
|
|
449
|
+
// To be sure, we can check for single quotes, double quotes, and spaces.
|
|
450
|
+
|
|
451
|
+
// Use a regular expression to check if the string is a valid array. We need to check for
|
|
452
|
+
// leading and trailing quotes, as well as leading and trailing whitespace. We also need to
|
|
453
|
+
// check for commas between the numbers. Alternatively, this can be an empty array.
|
|
454
|
+
if (!/^\s*["']?\[(\d+(,\d+)*)?\]["']?\s*$/.test(args.value)) {
|
|
455
|
+
this.logger.warn({ at: "ConfigStore", message: `The array ${args.value} is invalid.` });
|
|
456
|
+
// If not a valid array, skip.
|
|
457
|
+
continue;
|
|
458
|
+
}
|
|
459
|
+
const chainIndices = JSON.parse(args.value.replace(/['"\s]/g, ""));
|
|
460
|
+
// Check that the array is valid and that every element is a number.
|
|
461
|
+
if (!isArrayOf<number>(chainIndices, isPositiveInteger)) {
|
|
462
|
+
this.logger.warn({ at: "ConfigStore", message: `The array ${chainIndices} is invalid.` });
|
|
463
|
+
// If not a valid array, skip.
|
|
464
|
+
continue;
|
|
465
|
+
}
|
|
466
|
+
// Let's also check that the array doesn't contain any duplicates.
|
|
467
|
+
if (new Set(chainIndices).size !== chainIndices.length) {
|
|
468
|
+
this.logger.warn({
|
|
469
|
+
at: "ConfigStore",
|
|
470
|
+
message: `The array ${chainIndices} contains duplicates making it invalid.`,
|
|
471
|
+
});
|
|
472
|
+
// If not a valid array, skip.
|
|
473
|
+
continue;
|
|
474
|
+
}
|
|
475
|
+
// If all else passes, we can add this update.
|
|
476
|
+
this.liteChainIndicesUpdates.push({ ...args, value: chainIndices, timestamp: globalConfigUpdateTimes[i] });
|
|
410
477
|
} else if (args.key === utf8ToHex(GLOBAL_CONFIG_STORE_KEYS.CHAIN_ID_INDICES)) {
|
|
411
478
|
try {
|
|
412
479
|
// We need to parse the chain ID indices array from the stringified JSON. However,
|
|
@@ -41,6 +41,7 @@ import { getNetworkName } from "../utils/NetworkUtils";
|
|
|
41
41
|
import { getBlockRangeForDepositId, getDepositIdAtBlock } from "../utils/SpokeUtils";
|
|
42
42
|
import { BaseAbstractClient, isUpdateFailureReason, UpdateFailureReason } from "./BaseAbstractClient";
|
|
43
43
|
import { HubPoolClient } from "./HubPoolClient";
|
|
44
|
+
import { AcrossConfigStoreClient } from "./AcrossConfigStoreClient";
|
|
44
45
|
|
|
45
46
|
type SpokePoolUpdateSuccess = {
|
|
46
47
|
success: true;
|
|
@@ -73,6 +74,7 @@ export class SpokePoolClient extends BaseAbstractClient {
|
|
|
73
74
|
protected rootBundleRelays: RootBundleRelayWithBlock[] = [];
|
|
74
75
|
protected relayerRefundExecutions: RelayerRefundExecutionWithBlock[] = [];
|
|
75
76
|
protected queryableEventNames: string[] = [];
|
|
77
|
+
protected configStoreClient: AcrossConfigStoreClient | undefined;
|
|
76
78
|
public earliestDepositIdQueried = Number.MAX_SAFE_INTEGER;
|
|
77
79
|
public latestDepositIdQueried = 0;
|
|
78
80
|
public firstDepositIdForSpokePool = Number.MAX_SAFE_INTEGER;
|
|
@@ -101,6 +103,7 @@ export class SpokePoolClient extends BaseAbstractClient {
|
|
|
101
103
|
this.firstBlockToSearch = eventSearchConfig.fromBlock;
|
|
102
104
|
this.latestBlockSearched = 0;
|
|
103
105
|
this.queryableEventNames = Object.keys(this._queryableEventNames());
|
|
106
|
+
this.configStoreClient = hubPoolClient?.configStoreClient;
|
|
104
107
|
}
|
|
105
108
|
|
|
106
109
|
public _queryableEventNames(): { [eventName: string]: EventFilter } {
|
|
@@ -161,24 +164,6 @@ export class SpokePoolClient extends BaseAbstractClient {
|
|
|
161
164
|
return this.depositRoutes;
|
|
162
165
|
}
|
|
163
166
|
|
|
164
|
-
/**
|
|
165
|
-
* Determines whether a deposit route is enabled for the given origin token and destination chain ID.
|
|
166
|
-
* @param originToken The origin token address.
|
|
167
|
-
* @param destinationChainId The destination chain ID.
|
|
168
|
-
* @returns True if the deposit route is enabled, false otherwise.
|
|
169
|
-
*/
|
|
170
|
-
public isDepositRouteEnabled(originToken: string, destinationChainId: number): boolean {
|
|
171
|
-
return this.depositRoutes[originToken]?.[destinationChainId] ?? false;
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
/**
|
|
175
|
-
* Retrieves a list of all the available origin tokens that can be bridged.
|
|
176
|
-
* @returns A list of origin tokens.
|
|
177
|
-
*/
|
|
178
|
-
public getAllOriginTokens(): string[] {
|
|
179
|
-
return Object.keys(this.depositRoutes);
|
|
180
|
-
}
|
|
181
|
-
|
|
182
167
|
/**
|
|
183
168
|
* Retrieves a list of fills from the SpokePool contract.
|
|
184
169
|
* @returns A list of fills.
|
|
@@ -561,6 +546,7 @@ export class SpokePoolClient extends BaseAbstractClient {
|
|
|
561
546
|
// Derive and append the common properties that are not part of the onchain event.
|
|
562
547
|
const { quoteBlock: quoteBlockNumber } = dataForQuoteTime[index];
|
|
563
548
|
const deposit = { ...(rawDeposit as DepositWithBlock), originChainId: this.chainId, quoteBlockNumber };
|
|
549
|
+
deposit.originatesFromLiteChain = this.doesDepositOriginateFromLiteChain(deposit);
|
|
564
550
|
if (deposit.outputToken === ZERO_ADDRESS) {
|
|
565
551
|
deposit.outputToken = this.getDestinationTokenForDeposit(deposit);
|
|
566
552
|
}
|
|
@@ -634,6 +620,7 @@ export class SpokePoolClient extends BaseAbstractClient {
|
|
|
634
620
|
...(spreadEventWithBlockNumber(event) as FillWithBlock),
|
|
635
621
|
destinationChainId: this.chainId,
|
|
636
622
|
};
|
|
623
|
+
|
|
637
624
|
assign(this.fills, [fill.originChainId], [fill]);
|
|
638
625
|
assign(this.depositHashesToFills, [this.getDepositHash(fill)], [fill]);
|
|
639
626
|
}
|
|
@@ -856,6 +843,7 @@ export class SpokePoolClient extends BaseAbstractClient {
|
|
|
856
843
|
? this.getDestinationTokenForDeposit({ ...partialDeposit, originChainId: this.chainId })
|
|
857
844
|
: partialDeposit.outputToken,
|
|
858
845
|
};
|
|
846
|
+
deposit.originatesFromLiteChain = this.doesDepositOriginateFromLiteChain(deposit);
|
|
859
847
|
|
|
860
848
|
this.logger.debug({
|
|
861
849
|
at: "SpokePoolClient#findDeposit",
|
|
@@ -866,4 +854,14 @@ export class SpokePoolClient extends BaseAbstractClient {
|
|
|
866
854
|
|
|
867
855
|
return deposit;
|
|
868
856
|
}
|
|
857
|
+
|
|
858
|
+
/**
|
|
859
|
+
* Determines whether a deposit originates from a lite chain.
|
|
860
|
+
* @param deposit The deposit to evaluate.
|
|
861
|
+
* @returns True if the deposit originates from a lite chain, false otherwise. If the hub pool client is not defined,
|
|
862
|
+
* this method will return false.
|
|
863
|
+
*/
|
|
864
|
+
protected doesDepositOriginateFromLiteChain(deposit: DepositWithBlock): boolean {
|
|
865
|
+
return this.configStoreClient?.isChainLiteChainAtTimestamp(deposit.originChainId, deposit.quoteTimestamp) ?? false;
|
|
866
|
+
}
|
|
869
867
|
}
|
|
@@ -19,6 +19,7 @@ import { bnZero, toBN, toBNWei, forEachAsync, getCurrentTime, randomAddress } fr
|
|
|
19
19
|
import { SpokePoolClient, SpokePoolUpdate } from "../SpokePoolClient";
|
|
20
20
|
import { HubPoolClient } from "../HubPoolClient";
|
|
21
21
|
import { EventManager, EventOverrides, getEventManager } from "./MockEvents";
|
|
22
|
+
import { AcrossConfigStoreClient } from "../AcrossConfigStoreClient";
|
|
22
23
|
|
|
23
24
|
type Block = providers.Block;
|
|
24
25
|
|
|
@@ -51,6 +52,10 @@ export class MockSpokePoolClient extends SpokePoolClient {
|
|
|
51
52
|
this.realizedLpFeePctOverride = true;
|
|
52
53
|
}
|
|
53
54
|
|
|
55
|
+
setConfigStoreClient(configStore?: AcrossConfigStoreClient): void {
|
|
56
|
+
this.configStoreClient = configStore;
|
|
57
|
+
}
|
|
58
|
+
|
|
54
59
|
clearDefaultRealizedLpFeePct(): void {
|
|
55
60
|
this.realizedLpFeePctOverride = false;
|
|
56
61
|
}
|
|
@@ -64,6 +64,10 @@ export interface DisabledChainsUpdate extends SortableEvent {
|
|
|
64
64
|
chainIds: number[];
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
+
export interface LiteChainsIdListUpdate<ValueStore = number[]> extends GlobalConfigUpdate<ValueStore> {
|
|
68
|
+
timestamp: number;
|
|
69
|
+
}
|
|
70
|
+
|
|
67
71
|
/**
|
|
68
72
|
* A generic type of a dictionary that has string keys and values of type T. This
|
|
69
73
|
* record is enforced to have a default entry within the "default" key.
|
package/src/utils/BlockUtils.ts
CHANGED
|
@@ -6,7 +6,7 @@ import { isDefined } from "./TypeGuards";
|
|
|
6
6
|
import { getCurrentTime } from "./TimeUtils";
|
|
7
7
|
import { CachingMechanismInterface } from "../interfaces";
|
|
8
8
|
import { shouldCache } from "./CachingUtils";
|
|
9
|
-
import { DEFAULT_CACHING_SAFE_LAG } from "../constants";
|
|
9
|
+
import { CHAIN_IDs, DEFAULT_CACHING_SAFE_LAG } from "../constants";
|
|
10
10
|
|
|
11
11
|
type Opts = {
|
|
12
12
|
highBlock?: number;
|
|
@@ -34,11 +34,11 @@ const defaultHighBlockOffset = 10;
|
|
|
34
34
|
const cacheTTL = 60 * 15;
|
|
35
35
|
const now = getCurrentTime(); // Seed the cache with initial values.
|
|
36
36
|
const blockTimes: { [chainId: number]: BlockTimeAverage } = {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
37
|
+
[CHAIN_IDs.BASE]: { average: 2, timestamp: now, blockRange: 1 },
|
|
38
|
+
[CHAIN_IDs.LINEA]: { average: 3, timestamp: now, blockRange: 1 },
|
|
39
|
+
[CHAIN_IDs.MAINNET]: { average: 12.5, timestamp: now, blockRange: 1 },
|
|
40
|
+
[CHAIN_IDs.MODE]: { average: 2, timestamp: now, blockRange: 1 },
|
|
41
|
+
[CHAIN_IDs.OPTIMISM]: { average: 2, timestamp: now, blockRange: 1 },
|
|
42
42
|
};
|
|
43
43
|
|
|
44
44
|
/**
|