@across-protocol/sdk 3.3.26 → 3.3.27
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/BundleDataClient/BundleDataClient.js.map +1 -1
- package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +28 -28
- package/dist/cjs/clients/SpokePoolClient.d.ts +0 -4
- package/dist/cjs/clients/SpokePoolClient.js +1 -4
- package/dist/cjs/clients/SpokePoolClient.js.map +1 -1
- package/dist/cjs/constants.d.ts +1 -0
- package/dist/cjs/constants.js +2 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/utils/Multicall.js +2 -0
- package/dist/cjs/utils/Multicall.js.map +1 -1
- package/dist/cjs/utils/SpokeUtils.d.ts +1 -0
- package/dist/cjs/utils/SpokeUtils.js +6 -1
- package/dist/cjs/utils/SpokeUtils.js.map +1 -1
- package/dist/cjs/utils/common.d.ts +0 -51
- package/dist/cjs/utils/common.js +1 -55
- package/dist/cjs/utils/common.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +28 -28
- package/dist/esm/clients/SpokePoolClient.d.ts +0 -19
- package/dist/esm/clients/SpokePoolClient.js +1 -19
- package/dist/esm/clients/SpokePoolClient.js.map +1 -1
- package/dist/esm/constants.d.ts +1 -0
- package/dist/esm/constants.js +3 -0
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/utils/Multicall.js +2 -0
- package/dist/esm/utils/Multicall.js.map +1 -1
- package/dist/esm/utils/SpokeUtils.d.ts +1 -0
- package/dist/esm/utils/SpokeUtils.js +10 -1
- package/dist/esm/utils/SpokeUtils.js.map +1 -1
- package/dist/esm/utils/common.d.ts +0 -62
- package/dist/esm/utils/common.js +0 -63
- package/dist/esm/utils/common.js.map +1 -1
- package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
- package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +28 -28
- package/dist/types/clients/SpokePoolClient.d.ts +0 -19
- package/dist/types/clients/SpokePoolClient.d.ts.map +1 -1
- package/dist/types/constants.d.ts +1 -0
- package/dist/types/constants.d.ts.map +1 -1
- package/dist/types/utils/Multicall.d.ts.map +1 -1
- package/dist/types/utils/SpokeUtils.d.ts +1 -0
- package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
- package/dist/types/utils/common.d.ts +0 -62
- package/dist/types/utils/common.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/clients/BundleDataClient/BundleDataClient.ts +7 -0
- package/src/clients/SpokePoolClient.ts +3 -29
- package/src/constants.ts +4 -0
- package/src/utils/Multicall.ts +2 -0
- package/src/utils/SpokeUtils.ts +11 -1
- package/src/utils/common.ts +0 -101
|
@@ -6,7 +6,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
6
6
|
transactionHash: string;
|
|
7
7
|
logIndex: number;
|
|
8
8
|
message: string;
|
|
9
|
-
depositId: number;
|
|
10
9
|
originChainId: number;
|
|
11
10
|
inputToken: string;
|
|
12
11
|
inputAmount: BigNumber;
|
|
@@ -16,16 +15,17 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
16
15
|
toLiteChain: boolean;
|
|
17
16
|
depositor: string;
|
|
18
17
|
recipient: string;
|
|
18
|
+
depositId: number;
|
|
19
19
|
outputToken: string;
|
|
20
20
|
outputAmount: BigNumber;
|
|
21
21
|
fillDeadline: number;
|
|
22
22
|
exclusiveRelayer: string;
|
|
23
23
|
exclusivityDeadline: number;
|
|
24
24
|
quoteBlockNumber: number;
|
|
25
|
+
speedUpSignature?: string | undefined;
|
|
25
26
|
updatedRecipient?: string | undefined;
|
|
26
|
-
updatedMessage?: string | undefined;
|
|
27
27
|
updatedOutputAmount?: BigNumber | undefined;
|
|
28
|
-
|
|
28
|
+
updatedMessage?: string | undefined;
|
|
29
29
|
relayerFeePct?: BigNumber | undefined;
|
|
30
30
|
}[]>>;
|
|
31
31
|
bundleFillsV3: Record<string, Record<string, {
|
|
@@ -35,7 +35,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
35
35
|
transactionHash: string;
|
|
36
36
|
logIndex: number;
|
|
37
37
|
message: string;
|
|
38
|
-
depositId: number;
|
|
39
38
|
originChainId: number;
|
|
40
39
|
inputToken: string;
|
|
41
40
|
inputAmount: BigNumber;
|
|
@@ -43,6 +42,7 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
43
42
|
destinationChainId: number;
|
|
44
43
|
depositor: string;
|
|
45
44
|
recipient: string;
|
|
45
|
+
depositId: number;
|
|
46
46
|
outputToken: string;
|
|
47
47
|
outputAmount: BigNumber;
|
|
48
48
|
fillDeadline: number;
|
|
@@ -53,8 +53,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
53
53
|
relayer: string;
|
|
54
54
|
relayExecutionInfo: {
|
|
55
55
|
updatedRecipient: string;
|
|
56
|
-
updatedMessage: string;
|
|
57
56
|
updatedOutputAmount: BigNumber;
|
|
57
|
+
updatedMessage: string;
|
|
58
58
|
fillType: number;
|
|
59
59
|
};
|
|
60
60
|
}[];
|
|
@@ -68,7 +68,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
68
68
|
transactionHash: string;
|
|
69
69
|
logIndex: number;
|
|
70
70
|
message: string;
|
|
71
|
-
depositId: number;
|
|
72
71
|
originChainId: number;
|
|
73
72
|
inputToken: string;
|
|
74
73
|
inputAmount: BigNumber;
|
|
@@ -78,6 +77,7 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
78
77
|
toLiteChain: boolean;
|
|
79
78
|
depositor: string;
|
|
80
79
|
recipient: string;
|
|
80
|
+
depositId: number;
|
|
81
81
|
outputToken: string;
|
|
82
82
|
outputAmount: BigNumber;
|
|
83
83
|
fillDeadline: number;
|
|
@@ -85,10 +85,10 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
85
85
|
exclusivityDeadline: number;
|
|
86
86
|
quoteBlockNumber: number;
|
|
87
87
|
lpFeePct: BigNumber;
|
|
88
|
+
speedUpSignature?: string | undefined;
|
|
88
89
|
updatedRecipient?: string | undefined;
|
|
89
|
-
updatedMessage?: string | undefined;
|
|
90
90
|
updatedOutputAmount?: BigNumber | undefined;
|
|
91
|
-
|
|
91
|
+
updatedMessage?: string | undefined;
|
|
92
92
|
relayerFeePct?: BigNumber | undefined;
|
|
93
93
|
}[]>>;
|
|
94
94
|
expiredDepositsToRefundV3: Record<string, Record<string, {
|
|
@@ -97,7 +97,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
97
97
|
transactionHash: string;
|
|
98
98
|
logIndex: number;
|
|
99
99
|
message: string;
|
|
100
|
-
depositId: number;
|
|
101
100
|
originChainId: number;
|
|
102
101
|
inputToken: string;
|
|
103
102
|
inputAmount: BigNumber;
|
|
@@ -107,16 +106,17 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
107
106
|
toLiteChain: boolean;
|
|
108
107
|
depositor: string;
|
|
109
108
|
recipient: string;
|
|
109
|
+
depositId: number;
|
|
110
110
|
outputToken: string;
|
|
111
111
|
outputAmount: BigNumber;
|
|
112
112
|
fillDeadline: number;
|
|
113
113
|
exclusiveRelayer: string;
|
|
114
114
|
exclusivityDeadline: number;
|
|
115
115
|
quoteBlockNumber: number;
|
|
116
|
+
speedUpSignature?: string | undefined;
|
|
116
117
|
updatedRecipient?: string | undefined;
|
|
117
|
-
updatedMessage?: string | undefined;
|
|
118
118
|
updatedOutputAmount?: BigNumber | undefined;
|
|
119
|
-
|
|
119
|
+
updatedMessage?: string | undefined;
|
|
120
120
|
relayerFeePct?: BigNumber | undefined;
|
|
121
121
|
}[]>>;
|
|
122
122
|
unexecutableSlowFills: Record<string, Record<string, {
|
|
@@ -125,7 +125,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
125
125
|
transactionHash: string;
|
|
126
126
|
logIndex: number;
|
|
127
127
|
message: string;
|
|
128
|
-
depositId: number;
|
|
129
128
|
originChainId: number;
|
|
130
129
|
inputToken: string;
|
|
131
130
|
inputAmount: BigNumber;
|
|
@@ -135,6 +134,7 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
135
134
|
toLiteChain: boolean;
|
|
136
135
|
depositor: string;
|
|
137
136
|
recipient: string;
|
|
137
|
+
depositId: number;
|
|
138
138
|
outputToken: string;
|
|
139
139
|
outputAmount: BigNumber;
|
|
140
140
|
fillDeadline: number;
|
|
@@ -142,10 +142,10 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
142
142
|
exclusivityDeadline: number;
|
|
143
143
|
quoteBlockNumber: number;
|
|
144
144
|
lpFeePct: BigNumber;
|
|
145
|
+
speedUpSignature?: string | undefined;
|
|
145
146
|
updatedRecipient?: string | undefined;
|
|
146
|
-
updatedMessage?: string | undefined;
|
|
147
147
|
updatedOutputAmount?: BigNumber | undefined;
|
|
148
|
-
|
|
148
|
+
updatedMessage?: string | undefined;
|
|
149
149
|
relayerFeePct?: BigNumber | undefined;
|
|
150
150
|
}[]>>;
|
|
151
151
|
}, {
|
|
@@ -155,7 +155,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
155
155
|
transactionHash: string;
|
|
156
156
|
logIndex: number;
|
|
157
157
|
message: string;
|
|
158
|
-
depositId: number;
|
|
159
158
|
originChainId: number;
|
|
160
159
|
inputToken: string;
|
|
161
160
|
inputAmount: BigNumber;
|
|
@@ -165,16 +164,17 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
165
164
|
toLiteChain: boolean;
|
|
166
165
|
depositor: string;
|
|
167
166
|
recipient: string;
|
|
167
|
+
depositId: number;
|
|
168
168
|
outputToken: string;
|
|
169
169
|
outputAmount: BigNumber;
|
|
170
170
|
fillDeadline: number;
|
|
171
171
|
exclusiveRelayer: string;
|
|
172
172
|
exclusivityDeadline: number;
|
|
173
173
|
quoteBlockNumber: number;
|
|
174
|
+
speedUpSignature?: string | undefined;
|
|
174
175
|
updatedRecipient?: string | undefined;
|
|
175
|
-
updatedMessage?: string | undefined;
|
|
176
176
|
updatedOutputAmount?: BigNumber | undefined;
|
|
177
|
-
|
|
177
|
+
updatedMessage?: string | undefined;
|
|
178
178
|
relayerFeePct?: BigNumber | undefined;
|
|
179
179
|
}[]>>, null>;
|
|
180
180
|
expiredDepositsToRefundV3: import("superstruct").Struct<Record<string, Record<string, {
|
|
@@ -183,7 +183,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
183
183
|
transactionHash: string;
|
|
184
184
|
logIndex: number;
|
|
185
185
|
message: string;
|
|
186
|
-
depositId: number;
|
|
187
186
|
originChainId: number;
|
|
188
187
|
inputToken: string;
|
|
189
188
|
inputAmount: BigNumber;
|
|
@@ -193,16 +192,17 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
193
192
|
toLiteChain: boolean;
|
|
194
193
|
depositor: string;
|
|
195
194
|
recipient: string;
|
|
195
|
+
depositId: number;
|
|
196
196
|
outputToken: string;
|
|
197
197
|
outputAmount: BigNumber;
|
|
198
198
|
fillDeadline: number;
|
|
199
199
|
exclusiveRelayer: string;
|
|
200
200
|
exclusivityDeadline: number;
|
|
201
201
|
quoteBlockNumber: number;
|
|
202
|
+
speedUpSignature?: string | undefined;
|
|
202
203
|
updatedRecipient?: string | undefined;
|
|
203
|
-
updatedMessage?: string | undefined;
|
|
204
204
|
updatedOutputAmount?: BigNumber | undefined;
|
|
205
|
-
|
|
205
|
+
updatedMessage?: string | undefined;
|
|
206
206
|
relayerFeePct?: BigNumber | undefined;
|
|
207
207
|
}[]>>, null>;
|
|
208
208
|
unexecutableSlowFills: import("superstruct").Struct<Record<string, Record<string, {
|
|
@@ -211,7 +211,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
211
211
|
transactionHash: string;
|
|
212
212
|
logIndex: number;
|
|
213
213
|
message: string;
|
|
214
|
-
depositId: number;
|
|
215
214
|
originChainId: number;
|
|
216
215
|
inputToken: string;
|
|
217
216
|
inputAmount: BigNumber;
|
|
@@ -221,6 +220,7 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
221
220
|
toLiteChain: boolean;
|
|
222
221
|
depositor: string;
|
|
223
222
|
recipient: string;
|
|
223
|
+
depositId: number;
|
|
224
224
|
outputToken: string;
|
|
225
225
|
outputAmount: BigNumber;
|
|
226
226
|
fillDeadline: number;
|
|
@@ -228,10 +228,10 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
228
228
|
exclusivityDeadline: number;
|
|
229
229
|
quoteBlockNumber: number;
|
|
230
230
|
lpFeePct: BigNumber;
|
|
231
|
+
speedUpSignature?: string | undefined;
|
|
231
232
|
updatedRecipient?: string | undefined;
|
|
232
|
-
updatedMessage?: string | undefined;
|
|
233
233
|
updatedOutputAmount?: BigNumber | undefined;
|
|
234
|
-
|
|
234
|
+
updatedMessage?: string | undefined;
|
|
235
235
|
relayerFeePct?: BigNumber | undefined;
|
|
236
236
|
}[]>>, null>;
|
|
237
237
|
bundleSlowFillsV3: import("superstruct").Struct<Record<string, Record<string, {
|
|
@@ -240,7 +240,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
240
240
|
transactionHash: string;
|
|
241
241
|
logIndex: number;
|
|
242
242
|
message: string;
|
|
243
|
-
depositId: number;
|
|
244
243
|
originChainId: number;
|
|
245
244
|
inputToken: string;
|
|
246
245
|
inputAmount: BigNumber;
|
|
@@ -250,6 +249,7 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
250
249
|
toLiteChain: boolean;
|
|
251
250
|
depositor: string;
|
|
252
251
|
recipient: string;
|
|
252
|
+
depositId: number;
|
|
253
253
|
outputToken: string;
|
|
254
254
|
outputAmount: BigNumber;
|
|
255
255
|
fillDeadline: number;
|
|
@@ -257,10 +257,10 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
257
257
|
exclusivityDeadline: number;
|
|
258
258
|
quoteBlockNumber: number;
|
|
259
259
|
lpFeePct: BigNumber;
|
|
260
|
+
speedUpSignature?: string | undefined;
|
|
260
261
|
updatedRecipient?: string | undefined;
|
|
261
|
-
updatedMessage?: string | undefined;
|
|
262
262
|
updatedOutputAmount?: BigNumber | undefined;
|
|
263
|
-
|
|
263
|
+
updatedMessage?: string | undefined;
|
|
264
264
|
relayerFeePct?: BigNumber | undefined;
|
|
265
265
|
}[]>>, null>;
|
|
266
266
|
bundleFillsV3: import("superstruct").Struct<Record<string, Record<string, {
|
|
@@ -270,7 +270,6 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
270
270
|
transactionHash: string;
|
|
271
271
|
logIndex: number;
|
|
272
272
|
message: string;
|
|
273
|
-
depositId: number;
|
|
274
273
|
originChainId: number;
|
|
275
274
|
inputToken: string;
|
|
276
275
|
inputAmount: BigNumber;
|
|
@@ -278,6 +277,7 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
278
277
|
destinationChainId: number;
|
|
279
278
|
depositor: string;
|
|
280
279
|
recipient: string;
|
|
280
|
+
depositId: number;
|
|
281
281
|
outputToken: string;
|
|
282
282
|
outputAmount: BigNumber;
|
|
283
283
|
fillDeadline: number;
|
|
@@ -288,8 +288,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
288
288
|
relayer: string;
|
|
289
289
|
relayExecutionInfo: {
|
|
290
290
|
updatedRecipient: string;
|
|
291
|
-
updatedMessage: string;
|
|
292
291
|
updatedOutputAmount: BigNumber;
|
|
292
|
+
updatedMessage: string;
|
|
293
293
|
fillType: number;
|
|
294
294
|
};
|
|
295
295
|
}[];
|
|
@@ -212,25 +212,6 @@ export declare class SpokePoolClient extends BaseAbstractClient {
|
|
|
212
212
|
depositId: number;
|
|
213
213
|
originChainId: number;
|
|
214
214
|
}): string;
|
|
215
|
-
/**
|
|
216
|
-
* Find the block range that contains the deposit ID. This is a binary search that searches for the block range
|
|
217
|
-
* that contains the deposit ID.
|
|
218
|
-
* @param targetDepositId The target deposit ID to search for.
|
|
219
|
-
* @param initLow The initial lower bound of the block range to search.
|
|
220
|
-
* @param initHigh The initial upper bound of the block range to search.
|
|
221
|
-
* @param maxSearches The maximum number of searches to perform. This is used to prevent infinite loops.
|
|
222
|
-
* @returns The block range that contains the deposit ID.
|
|
223
|
-
* @note // We want to find the block range that satisfies these conditions:
|
|
224
|
-
* // - the low block has deposit count <= targetDepositId
|
|
225
|
-
* // - the high block has a deposit count > targetDepositId.
|
|
226
|
-
* // This way the caller can search for a V3FundsDeposited event between [low, high] that will always
|
|
227
|
-
* // contain the event emitted when deposit ID was incremented to targetDepositId + 1. This is the same transaction
|
|
228
|
-
* // where the deposit with deposit ID = targetDepositId was created.
|
|
229
|
-
*/
|
|
230
|
-
_getBlockRangeForDepositId(targetDepositId: number, initLow: number, initHigh: number, maxSearches: number): Promise<{
|
|
231
|
-
low: number;
|
|
232
|
-
high: number;
|
|
233
|
-
}>;
|
|
234
215
|
/**
|
|
235
216
|
* Finds the deposit id at a specific block number.
|
|
236
217
|
* @param blockTag The block number to search for the deposit ID at.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpokePoolClient.d.ts","sourceRoot":"","sources":["../../../src/clients/SpokePoolClient.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SpokePoolClient.d.ts","sourceRoot":"","sources":["../../../src/clients/SpokePoolClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { ChainFamily, CHAIN_IDs, MAINNET_CHAIN_IDs, PUBLIC_NETWORKS, TESTNET_CHAIN_IDs, TOKEN_SYMBOLS_MAP, } from "@across-protocol/constants";
|
|
2
2
|
export declare const ZERO_ADDRESS: string;
|
|
3
3
|
export declare const MAX_SAFE_ALLOWANCE = "79228162514264337593543950335";
|
|
4
|
+
export declare const MAX_SAFE_DEPOSIT_ID = "4294967295";
|
|
4
5
|
export declare const SECONDS_PER_YEAR = 31557600;
|
|
5
6
|
/**
|
|
6
7
|
* This is the protocol default chain Id for the hub pool.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AAEpC,eAAO,MAAqB,YAAY,QAAoB,CAAC;AAG7D,eAAO,MAAM,kBAAkB,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AAEpC,eAAO,MAAqB,YAAY,QAAoB,CAAC;AAG7D,eAAO,MAAM,kBAAkB,kCAAkC,CAAC;AAIlE,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAEhD,eAAO,MAAM,gBAAgB,WAAW,CAAC;AAEzC;;GAEG;AACH,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAGlC,eAAO,MAAM,2CAA2C,IAAI,CAAC;AAG7D,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAGtD,eAAO,MAAM,uBAAuB,IAAI,CAAC;AAEzC;;;;;;;GAOG;AACH,eAAO,MAAM,iCAAiC,UAA2B,CAAC;AAE1E,eAAO,MAAM,mBAAmB,QAAuB,CAAC;AACxD,eAAO,MAAM,wBAAwB,QAAU,CAAC;AAEhD,eAAO,MAAM,iCAAiC,+CAA+C,CAAC;AAC9F,eAAO,MAAM,sCAAsC,+CAA+C,CAAC;AAEnG,eAAO,MAAM,+BAA+B,gDAAgD,CAAC;AAE7F,eAAO,MAAM,aAAa,OAAO,CAAC;AAElC,eAAO,MAAM,oBAAoB,UAIhC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Multicall.d.ts","sourceRoot":"","sources":["../../../src/utils/Multicall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAI3E,OAAO,EAAE,UAAU,EAAuB,MAAM,iBAAiB,CAAC;AAElE,KAAK,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;AACnC,KAAK,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;AACnC,KAAK,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;AAEjC,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IAEf,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;CACd,CAAC;
|
|
1
|
+
{"version":3,"file":"Multicall.d.ts","sourceRoot":"","sources":["../../../src/utils/Multicall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAI3E,OAAO,EAAE,UAAU,EAAuB,MAAM,iBAAiB,CAAC;AAElE,KAAK,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;AACnC,KAAK,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;AACnC,KAAK,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;AAEjC,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IAEf,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;CACd,CAAC;AA0BF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKvE;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAO1G;AAED,wBAAsB,SAAS,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAY5G"}
|
|
@@ -42,6 +42,7 @@ export declare function getDepositIdAtBlock(contract: Contract, blockTag: number
|
|
|
42
42
|
*/
|
|
43
43
|
export declare function getRelayDataHash(relayData: RelayData, destinationChainId: number): string;
|
|
44
44
|
export declare function getRelayHashFromEvent(e: Deposit | Fill | SlowFillRequest): string;
|
|
45
|
+
export declare function isUnsafeDepositId(depositId: number): boolean;
|
|
45
46
|
/**
|
|
46
47
|
* Find the amount filled for a deposit at a particular block.
|
|
47
48
|
* @param spokePool SpokePool contract instance.
|
|
@@ -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;AAM7C,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,MAAM,EACvB,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,CAmHD;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO/F;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;;;;;;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"}
|
|
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;AAM7C,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,MAAM,EACvB,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,CAmHD;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO/F;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,MAAM,GAAG,OAAO,CAQ5D;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"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { L2Provider } from "@eth-optimism/sdk/dist/interfaces/l2-provider";
|
|
2
2
|
import Decimal from "decimal.js";
|
|
3
3
|
import { ethers, PopulatedTransaction, providers } from "ethers";
|
|
4
|
-
import { TypedMessage } from "../interfaces/TypedData";
|
|
5
4
|
import { BigNumber, BigNumberish, BN } from "./BigNumberUtils";
|
|
6
5
|
import { Transport } from "viem";
|
|
7
6
|
export type Decimalish = string | number | Decimal;
|
|
@@ -148,66 +147,5 @@ export declare function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx
|
|
|
148
147
|
gasUnits: BigNumberish;
|
|
149
148
|
transport: Transport;
|
|
150
149
|
}>): Promise<TransactionCostEstimate>;
|
|
151
|
-
export type UpdateDepositDetailsMessageType = {
|
|
152
|
-
UpdateDepositDetails: [
|
|
153
|
-
{
|
|
154
|
-
name: "depositId";
|
|
155
|
-
type: "uint32";
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
name: "originChainId";
|
|
159
|
-
type: "uint256";
|
|
160
|
-
},
|
|
161
|
-
{
|
|
162
|
-
name: "updatedRelayerFeePct";
|
|
163
|
-
type: "int64";
|
|
164
|
-
},
|
|
165
|
-
{
|
|
166
|
-
name: "updatedRecipient";
|
|
167
|
-
type: "address";
|
|
168
|
-
},
|
|
169
|
-
{
|
|
170
|
-
name: "updatedMessage";
|
|
171
|
-
type: "bytes";
|
|
172
|
-
}
|
|
173
|
-
];
|
|
174
|
-
};
|
|
175
|
-
export type UpdateV3DepositDetailsMessageType = {
|
|
176
|
-
UpdateDepositDetails: [
|
|
177
|
-
{
|
|
178
|
-
name: "depositId";
|
|
179
|
-
type: "uint32";
|
|
180
|
-
},
|
|
181
|
-
{
|
|
182
|
-
name: "originChainId";
|
|
183
|
-
type: "uint256";
|
|
184
|
-
},
|
|
185
|
-
{
|
|
186
|
-
name: "updatedOutputAmount";
|
|
187
|
-
type: "uint256";
|
|
188
|
-
},
|
|
189
|
-
{
|
|
190
|
-
name: "updatedRecipient";
|
|
191
|
-
type: "address";
|
|
192
|
-
},
|
|
193
|
-
{
|
|
194
|
-
name: "updatedMessage";
|
|
195
|
-
type: "bytes";
|
|
196
|
-
}
|
|
197
|
-
];
|
|
198
|
-
};
|
|
199
|
-
/**
|
|
200
|
-
* Utility function to get EIP-712 compliant typed data that can be signed with the JSON-RPC method
|
|
201
|
-
* `eth_signedTypedDataV4` in MetaMask (https://docs.metamask.io/guide/signing-data.html). The resulting signature
|
|
202
|
-
* can then be used to call the method `speedUpDeposit` of a `SpokePool.sol` contract.
|
|
203
|
-
* @param depositId The deposit ID to speed up.
|
|
204
|
-
* @param originChainId The chain ID of the origin chain.
|
|
205
|
-
* @param updatedRelayerFeePct The new relayer fee percentage.
|
|
206
|
-
* @param updatedRecipient The new recipient address.
|
|
207
|
-
* @param updatedMessage The new message that should be provided to the recipient.
|
|
208
|
-
* @return EIP-712 compliant typed data.
|
|
209
|
-
*/
|
|
210
|
-
export declare function getUpdateDepositTypedData(depositId: number, originChainId: number, updatedRelayerFeePct: BigNumber, updatedRecipient: string, updatedMessage: string): TypedMessage<UpdateDepositDetailsMessageType>;
|
|
211
|
-
export declare function getUpdateV3DepositTypedData(depositId: number, originChainId: number, updatedOutputAmount: BigNumber, updatedRecipient: string, updatedMessage: string): TypedMessage<UpdateV3DepositDetailsMessageType>;
|
|
212
150
|
export declare function randomAddress(): string;
|
|
213
151
|
//# sourceMappingURL=common.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+CAA+C,CAAC;AAG3E,OAAO,OAAO,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,SAAS,EAAc,MAAM,QAAQ,CAAC;AAE7E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@across-protocol/sdk",
|
|
3
3
|
"author": "UMA Team",
|
|
4
|
-
"version": "3.3.
|
|
4
|
+
"version": "3.3.27",
|
|
5
5
|
"license": "AGPL-3.0",
|
|
6
6
|
"homepage": "https://docs.across.to/reference/sdk",
|
|
7
7
|
"files": [
|
|
@@ -99,8 +99,8 @@
|
|
|
99
99
|
},
|
|
100
100
|
"dependencies": {
|
|
101
101
|
"@across-protocol/across-token": "^1.0.0",
|
|
102
|
-
"@across-protocol/constants": "^3.1.
|
|
103
|
-
"@across-protocol/contracts": "^3.0.
|
|
102
|
+
"@across-protocol/constants": "^3.1.24",
|
|
103
|
+
"@across-protocol/contracts": "^3.0.19",
|
|
104
104
|
"@eth-optimism/sdk": "^3.3.1",
|
|
105
105
|
"@ethersproject/bignumber": "^5.7.0",
|
|
106
106
|
"@pinata/sdk": "^2.1.0",
|
|
@@ -899,6 +899,9 @@ export class BundleDataClient {
|
|
|
899
899
|
bundleInvalidFillsV3.push(fill);
|
|
900
900
|
return;
|
|
901
901
|
}
|
|
902
|
+
// If deposit is using the deterministic relay hash feature, then the following binary search-based
|
|
903
|
+
// algorithm will not work. However, it is impossible to emit an infinite fill deadline using
|
|
904
|
+
// the unsafeDepositV3 function so there is no need to catch the special case.
|
|
902
905
|
const historicalDeposit = await queryHistoricalDepositForFill(originClient, fill);
|
|
903
906
|
if (!historicalDeposit.found) {
|
|
904
907
|
bundleInvalidFillsV3.push(fill);
|
|
@@ -1003,6 +1006,10 @@ export class BundleDataClient {
|
|
|
1003
1006
|
// older deposit in case the spoke pool client's lookback isn't old enough to find the matching deposit.
|
|
1004
1007
|
// We can skip this step if the deposit's fill deadline is not infinite, because we can assume that the
|
|
1005
1008
|
// spoke pool clients have loaded deposits old enough to cover all fills with a non-infinite fill deadline.
|
|
1009
|
+
// We do not need to handle the case where the deposit ID is > uint32 (in which case we wouldn't
|
|
1010
|
+
// want to perform a binary search lookup for it because the deposit ID is "unsafe" and cannot be
|
|
1011
|
+
// found using such a method) because infinite fill deadlines cannot be produced from the unsafeDepositV3()
|
|
1012
|
+
// function.
|
|
1006
1013
|
if (
|
|
1007
1014
|
INFINITE_FILL_DEADLINE.eq(slowFillRequest.fillDeadline) &&
|
|
1008
1015
|
slowFillRequest.blockNumber >= destinationChainBlockRange[0]
|
|
@@ -400,33 +400,6 @@ export class SpokePoolClient extends BaseAbstractClient {
|
|
|
400
400
|
return `${event.depositId}-${event.originChainId}`;
|
|
401
401
|
}
|
|
402
402
|
|
|
403
|
-
/**
|
|
404
|
-
* Find the block range that contains the deposit ID. This is a binary search that searches for the block range
|
|
405
|
-
* that contains the deposit ID.
|
|
406
|
-
* @param targetDepositId The target deposit ID to search for.
|
|
407
|
-
* @param initLow The initial lower bound of the block range to search.
|
|
408
|
-
* @param initHigh The initial upper bound of the block range to search.
|
|
409
|
-
* @param maxSearches The maximum number of searches to perform. This is used to prevent infinite loops.
|
|
410
|
-
* @returns The block range that contains the deposit ID.
|
|
411
|
-
* @note // We want to find the block range that satisfies these conditions:
|
|
412
|
-
* // - the low block has deposit count <= targetDepositId
|
|
413
|
-
* // - the high block has a deposit count > targetDepositId.
|
|
414
|
-
* // This way the caller can search for a V3FundsDeposited event between [low, high] that will always
|
|
415
|
-
* // contain the event emitted when deposit ID was incremented to targetDepositId + 1. This is the same transaction
|
|
416
|
-
* // where the deposit with deposit ID = targetDepositId was created.
|
|
417
|
-
*/
|
|
418
|
-
public _getBlockRangeForDepositId(
|
|
419
|
-
targetDepositId: number,
|
|
420
|
-
initLow: number,
|
|
421
|
-
initHigh: number,
|
|
422
|
-
maxSearches: number
|
|
423
|
-
): Promise<{
|
|
424
|
-
low: number;
|
|
425
|
-
high: number;
|
|
426
|
-
}> {
|
|
427
|
-
return getBlockRangeForDepositId(targetDepositId, initLow, initHigh, maxSearches, this);
|
|
428
|
-
}
|
|
429
|
-
|
|
430
403
|
/**
|
|
431
404
|
* Finds the deposit id at a specific block number.
|
|
432
405
|
* @param blockTag The block number to search for the deposit ID at.
|
|
@@ -814,11 +787,12 @@ export class SpokePoolClient extends BaseAbstractClient {
|
|
|
814
787
|
//
|
|
815
788
|
// @dev Limiting between 5-10 searches empirically performs best when there are ~300,000 deposits
|
|
816
789
|
// for a spoke pool and we're looking for a deposit <5 days older than HEAD.
|
|
817
|
-
const searchBounds = await
|
|
790
|
+
const searchBounds = await getBlockRangeForDepositId(
|
|
818
791
|
depositId,
|
|
819
792
|
this.deploymentBlock,
|
|
820
793
|
this.latestBlockSearched,
|
|
821
|
-
7
|
|
794
|
+
7,
|
|
795
|
+
this
|
|
822
796
|
);
|
|
823
797
|
|
|
824
798
|
const tStart = Date.now();
|
package/src/constants.ts
CHANGED
|
@@ -15,6 +15,10 @@ export const { AddressZero: ZERO_ADDRESS } = ethersConstants;
|
|
|
15
15
|
// 2^96 - 1 is a conservative erc20 max allowance.
|
|
16
16
|
export const MAX_SAFE_ALLOWANCE = "79228162514264337593543950335";
|
|
17
17
|
|
|
18
|
+
// The maximum depositId that can be emitted in a depositV3 method is the maximum uint32 value, so
|
|
19
|
+
// 2^32 - 1.
|
|
20
|
+
export const MAX_SAFE_DEPOSIT_ID = "4294967295";
|
|
21
|
+
|
|
18
22
|
export const SECONDS_PER_YEAR = 31557600; // 365.25 days per year.
|
|
19
23
|
|
|
20
24
|
/**
|
package/src/utils/Multicall.ts
CHANGED
|
@@ -25,6 +25,7 @@ const NON_DETERMINISTIC_MULTICALL_ADDRESSES = {
|
|
|
25
25
|
// Multicall3 is an OP stack predeploy, so don't specify it here.
|
|
26
26
|
const DETERMINISTIC_MULTICALL_CHAINS = [
|
|
27
27
|
CHAIN_IDs.ARBITRUM,
|
|
28
|
+
CHAIN_IDs.INK,
|
|
28
29
|
CHAIN_IDs.LINEA,
|
|
29
30
|
CHAIN_IDs.MAINNET,
|
|
30
31
|
CHAIN_IDs.POLYGON,
|
|
@@ -32,6 +33,7 @@ const DETERMINISTIC_MULTICALL_CHAINS = [
|
|
|
32
33
|
// Testnet:
|
|
33
34
|
CHAIN_IDs.BASE_SEPOLIA,
|
|
34
35
|
CHAIN_IDs.BLAST_SEPOLIA,
|
|
36
|
+
CHAIN_IDs.INK_SEPOLIA,
|
|
35
37
|
CHAIN_IDs.POLYGON_AMOY,
|
|
36
38
|
CHAIN_IDs.SCROLL_SEPOLIA,
|
|
37
39
|
CHAIN_IDs.SEPOLIA,
|
package/src/utils/SpokeUtils.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import assert from "assert";
|
|
2
2
|
import { BytesLike, Contract, PopulatedTransaction, providers, utils as ethersUtils } from "ethers";
|
|
3
|
-
import { CHAIN_IDs, ZERO_ADDRESS } from "../constants";
|
|
3
|
+
import { CHAIN_IDs, MAX_SAFE_DEPOSIT_ID, ZERO_ADDRESS } from "../constants";
|
|
4
4
|
import { Deposit, Fill, FillStatus, RelayData, SlowFillRequest } from "../interfaces";
|
|
5
5
|
import { SpokePoolClient } from "../clients";
|
|
6
6
|
import { chunk } from "./ArrayUtils";
|
|
@@ -244,6 +244,16 @@ export function getRelayHashFromEvent(e: Deposit | Fill | SlowFillRequest): stri
|
|
|
244
244
|
return getRelayDataHash(e, e.destinationChainId);
|
|
245
245
|
}
|
|
246
246
|
|
|
247
|
+
export function isUnsafeDepositId(depositId: number): boolean {
|
|
248
|
+
// SpokePool.unsafeDepositV3() produces a uint256 depositId by hashing the msg.sender, depositor and input
|
|
249
|
+
// uint256 depositNonce. There is a possibility that this resultant uint256 is less than the maxSafeDepositId (i.e.
|
|
250
|
+
// the maximum uint32 value) which makes it possible that an unsafeDepositV3's depositId can collide with a safe
|
|
251
|
+
// depositV3's depositId, but the chances of a collision are 1 in 2^(256 - 32), so we'll ignore this
|
|
252
|
+
// possibility.
|
|
253
|
+
const maxSafeDepositId = BigNumber.from(MAX_SAFE_DEPOSIT_ID);
|
|
254
|
+
return maxSafeDepositId.lt(depositId);
|
|
255
|
+
}
|
|
256
|
+
|
|
247
257
|
/**
|
|
248
258
|
* Find the amount filled for a deposit at a particular block.
|
|
249
259
|
* @param spokePool SpokePool contract instance.
|