@chainlink/ccip-sdk 1.1.1 → 1.2.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/api/index.d.ts +165 -15
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +236 -61
- package/dist/api/index.js.map +1 -1
- package/dist/api/types.d.ts +119 -1
- package/dist/api/types.d.ts.map +1 -1
- package/dist/chain.d.ts +53 -27
- package/dist/chain.d.ts.map +1 -1
- package/dist/chain.js +72 -17
- package/dist/chain.js.map +1 -1
- package/dist/errors/codes.d.ts +1 -0
- package/dist/errors/codes.d.ts.map +1 -1
- package/dist/errors/codes.js +1 -0
- package/dist/errors/codes.js.map +1 -1
- package/dist/errors/index.d.ts +1 -1
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +1 -1
- package/dist/errors/index.js.map +1 -1
- package/dist/errors/recovery.d.ts.map +1 -1
- package/dist/errors/recovery.js +1 -0
- package/dist/errors/recovery.js.map +1 -1
- package/dist/errors/specialized.d.ts +21 -0
- package/dist/errors/specialized.d.ts.map +1 -1
- package/dist/errors/specialized.js +31 -1
- package/dist/errors/specialized.js.map +1 -1
- package/dist/evm/abi/OffRamp_2_0.d.ts +18 -17
- package/dist/evm/abi/OffRamp_2_0.d.ts.map +1 -1
- package/dist/evm/abi/OffRamp_2_0.js +19 -21
- package/dist/evm/abi/OffRamp_2_0.js.map +1 -1
- package/dist/evm/abi/TokenPool_2_0.d.ts +0 -4
- package/dist/evm/abi/TokenPool_2_0.d.ts.map +1 -1
- package/dist/evm/abi/TokenPool_2_0.js +0 -1
- package/dist/evm/abi/TokenPool_2_0.js.map +1 -1
- package/dist/evm/gas.d.ts +14 -4
- package/dist/evm/gas.d.ts.map +1 -1
- package/dist/evm/gas.js +7 -6
- package/dist/evm/gas.js.map +1 -1
- package/dist/evm/index.d.ts +39 -8
- package/dist/evm/index.d.ts.map +1 -1
- package/dist/evm/index.js +114 -28
- package/dist/evm/index.js.map +1 -1
- package/dist/evm/types.d.ts +1 -1
- package/dist/evm/types.d.ts.map +1 -1
- package/dist/extra-args.d.ts +18 -8
- package/dist/extra-args.d.ts.map +1 -1
- package/dist/extra-args.js +6 -6
- package/dist/extra-args.js.map +1 -1
- package/dist/gas.d.ts +1 -1
- package/dist/gas.d.ts.map +1 -1
- package/dist/gas.js +7 -2
- package/dist/gas.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/offchain.d.ts.map +1 -1
- package/dist/offchain.js +6 -6
- package/dist/offchain.js.map +1 -1
- package/dist/requests.d.ts +11 -5
- package/dist/requests.d.ts.map +1 -1
- package/dist/requests.js +6 -7
- package/dist/requests.js.map +1 -1
- package/dist/solana/index.d.ts +2 -2
- package/dist/solana/index.d.ts.map +1 -1
- package/dist/solana/index.js +1 -1
- package/dist/solana/index.js.map +1 -1
- package/dist/solana/utils.js +2 -2
- package/dist/solana/utils.js.map +1 -1
- package/dist/sui/index.d.ts.map +1 -1
- package/dist/sui/index.js +1 -1
- package/dist/sui/index.js.map +1 -1
- package/dist/ton/index.d.ts.map +1 -1
- package/dist/ton/index.js +34 -26
- package/dist/ton/index.js.map +1 -1
- package/dist/utils.d.ts +10 -4
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +10 -4
- package/dist/utils.js.map +1 -1
- package/package.json +9 -9
- package/src/api/index.ts +271 -59
- package/src/api/types.ts +126 -1
- package/src/chain.ts +121 -43
- package/src/errors/codes.ts +1 -0
- package/src/errors/index.ts +1 -0
- package/src/errors/recovery.ts +2 -0
- package/src/errors/specialized.ts +33 -1
- package/src/evm/abi/OffRamp_2_0.ts +19 -21
- package/src/evm/abi/TokenPool_2_0.ts +0 -1
- package/src/evm/gas.ts +18 -20
- package/src/evm/index.ts +141 -28
- package/src/evm/types.ts +1 -1
- package/src/extra-args.ts +18 -8
- package/src/gas.ts +8 -3
- package/src/index.ts +4 -0
- package/src/offchain.ts +6 -8
- package/src/requests.ts +19 -12
- package/src/solana/index.ts +3 -1
- package/src/solana/utils.ts +2 -2
- package/src/sui/index.ts +3 -1
- package/src/ton/index.ts +47 -26
- package/src/utils.ts +10 -4
package/dist/api/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { memoize } from 'micro-memoize';
|
|
2
|
-
import { CCIPApiClientNotAvailableError, CCIPHttpError, CCIPLaneNotFoundError, CCIPMessageIdNotFoundError, CCIPMessageNotFoundInTxError, CCIPTimeoutError, CCIPUnexpectedPaginationError, } from "../errors/index.js";
|
|
2
|
+
import { CCIPAbortError, CCIPApiClientNotAvailableError, CCIPHttpError, CCIPLaneNotFoundError, CCIPMessageIdNotFoundError, CCIPMessageNotFoundInTxError, CCIPTimeoutError, CCIPUnexpectedPaginationError, } from "../errors/index.js";
|
|
3
3
|
import { HttpStatus } from "../http-status.js";
|
|
4
4
|
import { decodeMessageV1 } from "../messages.js";
|
|
5
5
|
import { decodeMessage } from "../requests.js";
|
|
6
6
|
import { CCIPVersion, ChainFamily, MessageStatus, NetworkType, } from "../types.js";
|
|
7
|
-
import { bigIntReviver, parseJson } from "../utils.js";
|
|
7
|
+
import { bigIntReviver, decodeAddress, parseJson } from "../utils.js";
|
|
8
8
|
import { calculateManualExecProof } from "../execution.js";
|
|
9
9
|
/** Default CCIP API base URL */
|
|
10
10
|
export const DEFAULT_API_BASE_URL = 'https://api.ccip.chain.link';
|
|
@@ -13,7 +13,7 @@ export const DEFAULT_TIMEOUT_MS = 30000;
|
|
|
13
13
|
/** SDK version string for telemetry header */
|
|
14
14
|
// generate:nofail
|
|
15
15
|
// `export const SDK_VERSION = '${require('./package.json').version}-${require('child_process').execSync('git rev-parse --short HEAD').toString().trim()}'`
|
|
16
|
-
export const SDK_VERSION = '1.
|
|
16
|
+
export const SDK_VERSION = '1.2.1-9b9bb0e';
|
|
17
17
|
// generate:end
|
|
18
18
|
/** SDK telemetry header name */
|
|
19
19
|
export const SDK_VERSION_HEADER = 'X-SDK-Version';
|
|
@@ -35,6 +35,7 @@ const validateMessageStatus = (value, logger) => {
|
|
|
35
35
|
};
|
|
36
36
|
const ensureNetworkInfo = (o, logger) => {
|
|
37
37
|
return Object.assign(o, {
|
|
38
|
+
chainSelector: BigInt(o.chainSelector),
|
|
38
39
|
networkType: o.name.includes('-mainnet') ? NetworkType.Mainnet : NetworkType.Testnet,
|
|
39
40
|
...(!('family' in o) && { family: validateChainFamily(o.chainFamily, logger) }),
|
|
40
41
|
});
|
|
@@ -129,12 +130,12 @@ export class CCIPAPIClient {
|
|
|
129
130
|
* @throws CCIPTimeoutError if request times out
|
|
130
131
|
* @internal
|
|
131
132
|
*/
|
|
132
|
-
async _fetchWithTimeout(url, operation) {
|
|
133
|
-
const
|
|
134
|
-
const
|
|
133
|
+
async _fetchWithTimeout(url, operation, signal) {
|
|
134
|
+
const timeoutSignal = AbortSignal.timeout(this.timeoutMs);
|
|
135
|
+
const combinedSignal = signal ? AbortSignal.any([timeoutSignal, signal]) : timeoutSignal;
|
|
135
136
|
try {
|
|
136
137
|
return await this._fetch(url, {
|
|
137
|
-
signal:
|
|
138
|
+
signal: combinedSignal,
|
|
138
139
|
headers: {
|
|
139
140
|
'Content-Type': 'application/json',
|
|
140
141
|
[SDK_VERSION_HEADER]: `CCIP SDK v${SDK_VERSION}`,
|
|
@@ -142,24 +143,30 @@ export class CCIPAPIClient {
|
|
|
142
143
|
});
|
|
143
144
|
}
|
|
144
145
|
catch (error) {
|
|
145
|
-
if (error instanceof Error &&
|
|
146
|
+
if (error instanceof Error &&
|
|
147
|
+
(error.name === 'AbortError' || error.name === 'TimeoutError')) {
|
|
148
|
+
if (signal?.aborted) {
|
|
149
|
+
throw new CCIPAbortError(operation);
|
|
150
|
+
}
|
|
146
151
|
throw new CCIPTimeoutError(operation, this.timeoutMs);
|
|
147
152
|
}
|
|
148
153
|
throw error;
|
|
149
154
|
}
|
|
150
|
-
finally {
|
|
151
|
-
clearTimeout(timeoutId);
|
|
152
|
-
}
|
|
153
155
|
}
|
|
154
156
|
/**
|
|
155
157
|
* Fetches estimated lane latency between source and destination chains.
|
|
156
158
|
*
|
|
157
159
|
* @param sourceChainSelector - Source chain selector (bigint)
|
|
158
160
|
* @param destChainSelector - Destination chain selector (bigint)
|
|
161
|
+
* @param numberOfBlocks - Optional number of block confirmations for latency calculation.
|
|
162
|
+
* When omitted or 0, uses the lane's default finality. When provided as a positive
|
|
163
|
+
* integer, the API returns latency for that custom finality value (sent as `numOfBlocks`
|
|
164
|
+
* query parameter).
|
|
159
165
|
* @returns Promise resolving to {@link LaneLatencyResponse} with totalMs
|
|
160
166
|
*
|
|
161
167
|
* @throws {@link CCIPLaneNotFoundError} when lane not found (404)
|
|
162
168
|
* @throws {@link CCIPTimeoutError} if request times out
|
|
169
|
+
* @throws {@link CCIPAbortError} if request is aborted via signal
|
|
163
170
|
* @throws {@link CCIPHttpError} on other HTTP errors with context:
|
|
164
171
|
* - `status` - HTTP status code (e.g., 500)
|
|
165
172
|
* - `statusText` - HTTP status message
|
|
@@ -175,6 +182,15 @@ export class CCIPAPIClient {
|
|
|
175
182
|
* console.log(`Estimated delivery: ${Math.round(latency.totalMs / 60000)} minutes`)
|
|
176
183
|
* ```
|
|
177
184
|
*
|
|
185
|
+
* @example Custom block confirmations
|
|
186
|
+
* ```typescript
|
|
187
|
+
* const latency = await api.getLaneLatency(
|
|
188
|
+
* 5009297550715157269n, // Ethereum mainnet
|
|
189
|
+
* 4949039107694359620n, // Arbitrum mainnet
|
|
190
|
+
* 10, // 10 block confirmations
|
|
191
|
+
* )
|
|
192
|
+
* ```
|
|
193
|
+
*
|
|
178
194
|
* @example Handling specific API errors
|
|
179
195
|
* ```typescript
|
|
180
196
|
* try {
|
|
@@ -186,12 +202,15 @@ export class CCIPAPIClient {
|
|
|
186
202
|
* }
|
|
187
203
|
* ```
|
|
188
204
|
*/
|
|
189
|
-
async getLaneLatency(sourceChainSelector, destChainSelector) {
|
|
205
|
+
async getLaneLatency(sourceChainSelector, destChainSelector, numberOfBlocks, options) {
|
|
190
206
|
const url = new URL(`${this.baseUrl}/v2/lanes/latency`);
|
|
191
207
|
url.searchParams.set('sourceChainSelector', sourceChainSelector.toString());
|
|
192
208
|
url.searchParams.set('destChainSelector', destChainSelector.toString());
|
|
209
|
+
if (numberOfBlocks) {
|
|
210
|
+
url.searchParams.set('numOfBlocks', numberOfBlocks.toString());
|
|
211
|
+
}
|
|
193
212
|
this.logger.debug(`CCIPAPIClient: GET ${url.toString()}`);
|
|
194
|
-
const response = await this._fetchWithTimeout(url.toString(), 'getLaneLatency');
|
|
213
|
+
const response = await this._fetchWithTimeout(url.toString(), 'getLaneLatency', options?.signal);
|
|
195
214
|
if (!response.ok) {
|
|
196
215
|
// Try to parse structured error response from API
|
|
197
216
|
let apiError;
|
|
@@ -235,6 +254,7 @@ export class CCIPAPIClient {
|
|
|
235
254
|
*
|
|
236
255
|
* @throws {@link CCIPMessageIdNotFoundError} when message not found (404)
|
|
237
256
|
* @throws {@link CCIPTimeoutError} if request times out
|
|
257
|
+
* @throws {@link CCIPAbortError} if request is aborted via signal
|
|
238
258
|
* @throws {@link CCIPHttpError} on HTTP errors with context:
|
|
239
259
|
* - `status` - HTTP status code
|
|
240
260
|
* - `statusText` - HTTP status message
|
|
@@ -261,10 +281,10 @@ export class CCIPAPIClient {
|
|
|
261
281
|
* }
|
|
262
282
|
* ```
|
|
263
283
|
*/
|
|
264
|
-
async getMessageById(messageId) {
|
|
284
|
+
async getMessageById(messageId, options) {
|
|
265
285
|
const url = `${this.baseUrl}/v2/messages/${encodeURIComponent(messageId)}`;
|
|
266
286
|
this.logger.debug(`CCIPAPIClient: GET ${url}`);
|
|
267
|
-
const response = await this._fetchWithTimeout(url, 'getMessageById');
|
|
287
|
+
const response = await this._fetchWithTimeout(url, 'getMessageById', options?.signal);
|
|
268
288
|
if (!response.ok) {
|
|
269
289
|
// Try to parse structured error response from API
|
|
270
290
|
let apiError;
|
|
@@ -300,81 +320,235 @@ export class CCIPAPIClient {
|
|
|
300
320
|
return this._transformMessageResponse(raw);
|
|
301
321
|
}
|
|
302
322
|
/**
|
|
303
|
-
*
|
|
323
|
+
* Searches CCIP messages using filters with cursor-based pagination.
|
|
304
324
|
*
|
|
305
|
-
* @param
|
|
306
|
-
*
|
|
325
|
+
* @param filters - Optional search filters. Ignored when `options.cursor` is provided
|
|
326
|
+
* (the cursor already encodes the original filters).
|
|
327
|
+
* @param options - Optional pagination options: `limit` (max results per page) and
|
|
328
|
+
* `cursor` (opaque token from a previous {@link MessageSearchPage} for the next page).
|
|
329
|
+
* @returns Promise resolving to a {@link MessageSearchPage} with results and pagination info.
|
|
307
330
|
*
|
|
308
|
-
* @
|
|
309
|
-
*
|
|
310
|
-
*
|
|
311
|
-
*
|
|
331
|
+
* @remarks
|
|
332
|
+
* A 404 response is treated as "no results found" and returns an empty page,
|
|
333
|
+
* unlike {@link CCIPAPIClient.getMessageById} which throws on 404.
|
|
334
|
+
* When paginating with a cursor, the `filters` parameter is ignored because
|
|
335
|
+
* the cursor encodes the original filters.
|
|
312
336
|
*
|
|
313
|
-
* @
|
|
337
|
+
* @throws {@link CCIPTimeoutError} if request times out.
|
|
338
|
+
* @throws {@link CCIPAbortError} if request is aborted via signal.
|
|
339
|
+
* @throws {@link CCIPHttpError} on HTTP errors (4xx/5xx, except 404 which returns empty).
|
|
340
|
+
*
|
|
341
|
+
* @see {@link MessageSearchFilters} — available filter fields
|
|
342
|
+
* @see {@link MessageSearchPage} — return type with pagination
|
|
343
|
+
* @see {@link CCIPAPIClient.searchAllMessages} — async generator that handles pagination automatically
|
|
344
|
+
* @see {@link CCIPAPIClient.getMessageById} — fetch full message details for a search result
|
|
345
|
+
* @see {@link CCIPAPIClient.getMessageIdsInTx} — convenience wrapper using `sourceTransactionHash`
|
|
346
|
+
*
|
|
347
|
+
* @example Search by sender
|
|
314
348
|
* ```typescript
|
|
315
|
-
* const
|
|
316
|
-
* '
|
|
317
|
-
* )
|
|
318
|
-
*
|
|
349
|
+
* const page = await api.searchMessages({
|
|
350
|
+
* sender: '0x9d087fC03ae39b088326b67fA3C788236645b717',
|
|
351
|
+
* })
|
|
352
|
+
* for (const msg of page.data) {
|
|
353
|
+
* console.log(`${msg.messageId}: ${msg.status}`)
|
|
354
|
+
* }
|
|
355
|
+
* ```
|
|
356
|
+
*
|
|
357
|
+
* @example Paginate through all results
|
|
358
|
+
* ```typescript
|
|
359
|
+
* let page = await api.searchMessages({ sender: '0x...' }, { limit: 10 })
|
|
360
|
+
* const all = [...page.data]
|
|
361
|
+
* while (page.hasNextPage) {
|
|
362
|
+
* page = await api.searchMessages(undefined, { cursor: page.cursor! })
|
|
363
|
+
* all.push(...page.data)
|
|
364
|
+
* }
|
|
365
|
+
* ```
|
|
366
|
+
*
|
|
367
|
+
* @example Filter by lane and sender
|
|
368
|
+
* ```typescript
|
|
369
|
+
* const page = await api.searchMessages({
|
|
370
|
+
* sender: '0x9d087fC03ae39b088326b67fA3C788236645b717',
|
|
371
|
+
* sourceChainSelector: 16015286601757825753n,
|
|
372
|
+
* destChainSelector: 14767482510784806043n,
|
|
373
|
+
* })
|
|
319
374
|
* ```
|
|
320
375
|
*/
|
|
321
|
-
async
|
|
376
|
+
async searchMessages(filters, options) {
|
|
322
377
|
const url = new URL(`${this.baseUrl}/v2/messages`);
|
|
323
|
-
|
|
324
|
-
|
|
378
|
+
if (options?.cursor) {
|
|
379
|
+
// Cursor encodes all original filters — only send cursor (and optional limit)
|
|
380
|
+
url.searchParams.set('cursor', options.cursor);
|
|
381
|
+
}
|
|
382
|
+
else if (filters) {
|
|
383
|
+
if (filters.sender)
|
|
384
|
+
url.searchParams.set('sender', filters.sender);
|
|
385
|
+
if (filters.receiver)
|
|
386
|
+
url.searchParams.set('receiver', filters.receiver);
|
|
387
|
+
if (filters.sourceChainSelector != null)
|
|
388
|
+
url.searchParams.set('sourceChainSelector', filters.sourceChainSelector.toString());
|
|
389
|
+
if (filters.destChainSelector != null)
|
|
390
|
+
url.searchParams.set('destChainSelector', filters.destChainSelector.toString());
|
|
391
|
+
if (filters.sourceTransactionHash)
|
|
392
|
+
url.searchParams.set('sourceTransactionHash', filters.sourceTransactionHash);
|
|
393
|
+
if (filters.readyForManualExecOnly != null)
|
|
394
|
+
url.searchParams.set('readyForManualExecOnly', String(filters.readyForManualExecOnly));
|
|
395
|
+
}
|
|
396
|
+
if (options?.limit != null)
|
|
397
|
+
url.searchParams.set('limit', options.limit.toString());
|
|
325
398
|
this.logger.debug(`CCIPAPIClient: GET ${url.toString()}`);
|
|
326
|
-
const response = await this._fetchWithTimeout(url.toString(), '
|
|
399
|
+
const response = await this._fetchWithTimeout(url.toString(), 'searchMessages', options?.signal);
|
|
327
400
|
if (!response.ok) {
|
|
328
|
-
//
|
|
401
|
+
// 404 → empty results (search found nothing)
|
|
402
|
+
if (response.status === HttpStatus.NOT_FOUND) {
|
|
403
|
+
return { data: [], hasNextPage: false };
|
|
404
|
+
}
|
|
329
405
|
let apiError;
|
|
330
406
|
try {
|
|
331
407
|
apiError = parseJson(await response.text());
|
|
332
408
|
}
|
|
333
409
|
catch {
|
|
334
|
-
// Response body not JSON
|
|
335
|
-
}
|
|
336
|
-
// 404 - No messages found
|
|
337
|
-
if (response.status === HttpStatus.NOT_FOUND) {
|
|
338
|
-
throw new CCIPMessageNotFoundInTxError(txHash, {
|
|
339
|
-
context: apiError
|
|
340
|
-
? {
|
|
341
|
-
apiErrorCode: apiError.error,
|
|
342
|
-
apiErrorMessage: apiError.message,
|
|
343
|
-
}
|
|
344
|
-
: undefined,
|
|
345
|
-
});
|
|
410
|
+
// Response body not JSON
|
|
346
411
|
}
|
|
347
|
-
// Generic HTTP error for other cases
|
|
348
412
|
throw new CCIPHttpError(response.status, response.statusText, {
|
|
349
413
|
context: apiError
|
|
350
|
-
? {
|
|
351
|
-
apiErrorCode: apiError.error,
|
|
352
|
-
apiErrorMessage: apiError.message,
|
|
353
|
-
}
|
|
414
|
+
? { apiErrorCode: apiError.error, apiErrorMessage: apiError.message }
|
|
354
415
|
: undefined,
|
|
355
416
|
});
|
|
356
417
|
}
|
|
357
418
|
const raw = parseJson(await response.text());
|
|
358
|
-
this.logger.debug('
|
|
359
|
-
|
|
360
|
-
|
|
419
|
+
this.logger.debug('searchMessages raw response:', raw);
|
|
420
|
+
return {
|
|
421
|
+
data: raw.data.map((msg) => {
|
|
422
|
+
const sourceInfo = ensureNetworkInfo(msg.sourceNetworkInfo, this.logger);
|
|
423
|
+
const destInfo = ensureNetworkInfo(msg.destNetworkInfo, this.logger);
|
|
424
|
+
return {
|
|
425
|
+
...msg,
|
|
426
|
+
status: validateMessageStatus(msg.status, this.logger),
|
|
427
|
+
sourceNetworkInfo: sourceInfo,
|
|
428
|
+
destNetworkInfo: destInfo,
|
|
429
|
+
sender: decodeAddress(msg.sender, sourceInfo.family),
|
|
430
|
+
receiver: decodeAddress(msg.receiver, destInfo.family),
|
|
431
|
+
origin: decodeAddress(msg.origin, sourceInfo.family),
|
|
432
|
+
};
|
|
433
|
+
}),
|
|
434
|
+
hasNextPage: raw.pagination.hasNextPage,
|
|
435
|
+
cursor: raw.pagination.cursor ?? undefined,
|
|
436
|
+
};
|
|
437
|
+
}
|
|
438
|
+
/**
|
|
439
|
+
* Async generator that streams all messages matching the given filters,
|
|
440
|
+
* handling cursor-based pagination automatically.
|
|
441
|
+
*
|
|
442
|
+
* @param filters - Optional search filters (same as {@link CCIPAPIClient.searchMessages}).
|
|
443
|
+
* @param options - Optional `limit` controlling the per-page fetch size (number of
|
|
444
|
+
* results fetched per API call). The total number of results is controlled by the
|
|
445
|
+
* consumer — break out of the loop to stop early.
|
|
446
|
+
* @returns AsyncGenerator yielding {@link MessageSearchResult} one at a time, across all pages.
|
|
447
|
+
*
|
|
448
|
+
* @throws {@link CCIPTimeoutError} if a page request times out.
|
|
449
|
+
* @throws {@link CCIPAbortError} if a page request is aborted via signal.
|
|
450
|
+
* @throws {@link CCIPHttpError} on HTTP errors (4xx/5xx, except 404 which yields nothing).
|
|
451
|
+
*
|
|
452
|
+
* @see {@link CCIPAPIClient.searchMessages} — for page-level control and explicit cursor handling
|
|
453
|
+
* @see {@link CCIPAPIClient.getMessageById} — fetch full message details for a search result
|
|
454
|
+
*
|
|
455
|
+
* @example Iterate all messages for a sender
|
|
456
|
+
* ```typescript
|
|
457
|
+
* for await (const msg of api.searchAllMessages({ sender: '0x...' })) {
|
|
458
|
+
* console.log(`${msg.messageId}: ${msg.status}`)
|
|
459
|
+
* }
|
|
460
|
+
* ```
|
|
461
|
+
*
|
|
462
|
+
* @example Stop after collecting 5 results
|
|
463
|
+
* ```typescript
|
|
464
|
+
* const results: MessageSearchResult[] = []
|
|
465
|
+
* for await (const msg of api.searchAllMessages({ sender: '0x...' })) {
|
|
466
|
+
* results.push(msg)
|
|
467
|
+
* if (results.length >= 5) break
|
|
468
|
+
* }
|
|
469
|
+
* ```
|
|
470
|
+
*/
|
|
471
|
+
async *searchAllMessages(filters, options) {
|
|
472
|
+
let cursor;
|
|
473
|
+
do {
|
|
474
|
+
const page = await this.searchMessages(filters, {
|
|
475
|
+
limit: options?.limit,
|
|
476
|
+
cursor,
|
|
477
|
+
signal: options?.signal,
|
|
478
|
+
});
|
|
479
|
+
yield* page.data;
|
|
480
|
+
cursor = page.cursor;
|
|
481
|
+
} while (cursor);
|
|
482
|
+
}
|
|
483
|
+
/**
|
|
484
|
+
* Fetches message IDs from a source transaction hash.
|
|
485
|
+
*
|
|
486
|
+
* @remarks
|
|
487
|
+
* Uses {@link CCIPAPIClient.searchMessages} internally with `sourceTransactionHash` filter and `limit: 100`.
|
|
488
|
+
*
|
|
489
|
+
* @param txHash - Source transaction hash.
|
|
490
|
+
* @returns Promise resolving to array of message IDs.
|
|
491
|
+
*
|
|
492
|
+
* @throws {@link CCIPMessageNotFoundInTxError} when no messages found (404 or empty).
|
|
493
|
+
* @throws {@link CCIPUnexpectedPaginationError} when hasNextPage is true.
|
|
494
|
+
* @throws {@link CCIPTimeoutError} if request times out.
|
|
495
|
+
* @throws {@link CCIPAbortError} if request is aborted via signal.
|
|
496
|
+
* @throws {@link CCIPHttpError} on HTTP errors.
|
|
497
|
+
*
|
|
498
|
+
* @example Basic usage
|
|
499
|
+
* ```typescript
|
|
500
|
+
* const messageIds = await api.getMessageIdsInTx(
|
|
501
|
+
* '0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef'
|
|
502
|
+
* )
|
|
503
|
+
* console.log(`Found ${messageIds.length} messages`)
|
|
504
|
+
* ```
|
|
505
|
+
*
|
|
506
|
+
* @example Fetch full details for each message
|
|
507
|
+
* ```typescript
|
|
508
|
+
* const api = CCIPAPIClient.fromUrl()
|
|
509
|
+
* const messageIds = await api.getMessageIdsInTx(txHash)
|
|
510
|
+
* for (const id of messageIds) {
|
|
511
|
+
* const request = await api.getMessageById(id)
|
|
512
|
+
* console.log(`${id}: ${request.metadata.status}`)
|
|
513
|
+
* }
|
|
514
|
+
* ```
|
|
515
|
+
*/
|
|
516
|
+
async getMessageIdsInTx(txHash, options) {
|
|
517
|
+
const result = await this.searchMessages({ sourceTransactionHash: txHash }, { limit: 100, signal: options?.signal });
|
|
518
|
+
if (result.data.length === 0) {
|
|
361
519
|
throw new CCIPMessageNotFoundInTxError(txHash);
|
|
362
520
|
}
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
throw new CCIPUnexpectedPaginationError(txHash, raw.data.length);
|
|
521
|
+
if (result.hasNextPage) {
|
|
522
|
+
throw new CCIPUnexpectedPaginationError(txHash, result.data.length);
|
|
366
523
|
}
|
|
367
|
-
return
|
|
524
|
+
return result.data.map((msg) => msg.messageId);
|
|
368
525
|
}
|
|
369
526
|
/**
|
|
370
527
|
* Fetches the execution input for a given message by id.
|
|
371
|
-
*
|
|
372
|
-
*
|
|
528
|
+
* For v2.0 messages, returns `{ encodedMessage, verifications }`.
|
|
529
|
+
* For pre-v2 messages, returns `{ message, offchainTokenData, proofs, ... }` with merkle proof.
|
|
530
|
+
*
|
|
531
|
+
* @param messageId - The CCIP message ID (32-byte hex string)
|
|
532
|
+
* @returns Execution input with offRamp address and lane info
|
|
533
|
+
*
|
|
534
|
+
* @throws {@link CCIPMessageIdNotFoundError} when message not found (404)
|
|
535
|
+
* @throws {@link CCIPTimeoutError} if request times out
|
|
536
|
+
* @throws {@link CCIPAbortError} if request is aborted via signal
|
|
537
|
+
* @throws {@link CCIPHttpError} on other HTTP errors
|
|
538
|
+
*
|
|
539
|
+
* @example
|
|
540
|
+
* ```typescript
|
|
541
|
+
* const api = CCIPAPIClient.fromUrl()
|
|
542
|
+
* const execInput = await api.getExecutionInput('0x1234...')
|
|
543
|
+
* // Use with dest.execute():
|
|
544
|
+
* const { offRamp, ...input } = execInput
|
|
545
|
+
* await dest.execute({ offRamp, input, wallet })
|
|
546
|
+
* ```
|
|
373
547
|
*/
|
|
374
|
-
async getExecutionInput(messageId) {
|
|
548
|
+
async getExecutionInput(messageId, options) {
|
|
375
549
|
const url = `${this.baseUrl}/v2/messages/${encodeURIComponent(messageId)}/execution-inputs`;
|
|
376
550
|
this.logger.debug(`CCIPAPIClient: GET ${url}`);
|
|
377
|
-
const response = await this._fetchWithTimeout(url, 'getExecutionInput');
|
|
551
|
+
const response = await this._fetchWithTimeout(url, 'getExecutionInput', options?.signal);
|
|
378
552
|
if (!response.ok) {
|
|
379
553
|
// Try to parse structured error response from API
|
|
380
554
|
let apiError;
|
|
@@ -470,7 +644,7 @@ export class CCIPAPIClient {
|
|
|
470
644
|
_transformMessageResponse(text) {
|
|
471
645
|
// Build message with extraArgs spread and tokenAmounts included
|
|
472
646
|
const raw = decodeMessage(text);
|
|
473
|
-
const { sourceNetworkInfo, destNetworkInfo, status, origin, onramp, version, readyForManualExecution, sendTransactionHash, receiptTransactionHash, sendTimestamp, receiptTimestamp, deliveryTime, sendBlockNumber, sendLogIndex, ...message } = raw;
|
|
647
|
+
const { sourceNetworkInfo, destNetworkInfo, status, origin, onramp, offramp, version, readyForManualExecution, sendTransactionHash, receiptTransactionHash, sendTimestamp, receiptTimestamp, deliveryTime, sendBlockNumber, sendLogIndex, ...message } = raw;
|
|
474
648
|
const sendDate = new Date(sendTimestamp);
|
|
475
649
|
const sendTimestamp_ = isNaN(sendDate.getTime()) ? 0 : Math.floor(sendDate.getTime() / 1000);
|
|
476
650
|
const receiptDate = receiptTimestamp && new Date(receiptTimestamp);
|
|
@@ -522,6 +696,7 @@ export class CCIPAPIClient {
|
|
|
522
696
|
deliveryTime,
|
|
523
697
|
sourceNetworkInfo: ensureNetworkInfo(sourceNetworkInfo, this.logger),
|
|
524
698
|
destNetworkInfo: ensureNetworkInfo(destNetworkInfo, this.logger),
|
|
699
|
+
offRamp: offramp,
|
|
525
700
|
},
|
|
526
701
|
};
|
|
527
702
|
}
|
package/dist/api/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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"}
|
package/dist/api/types.d.ts
CHANGED
|
@@ -89,6 +89,7 @@ export type RawMessageResponse = {
|
|
|
89
89
|
origin: string;
|
|
90
90
|
sequenceNumber: string;
|
|
91
91
|
onramp: string;
|
|
92
|
+
offramp?: string;
|
|
92
93
|
sendBlockNumber: bigint;
|
|
93
94
|
sendLogIndex: bigint;
|
|
94
95
|
nonce?: string | null;
|
|
@@ -120,6 +121,114 @@ export type RawMessagesResponse = {
|
|
|
120
121
|
cursor?: string | null;
|
|
121
122
|
};
|
|
122
123
|
};
|
|
124
|
+
/**
|
|
125
|
+
* Filters for searching CCIP messages via the API.
|
|
126
|
+
*
|
|
127
|
+
* All fields are optional — omit a field to leave it unfiltered.
|
|
128
|
+
* Chain selectors are accepted as `bigint` and converted to strings for the API.
|
|
129
|
+
*
|
|
130
|
+
* @see {@link CCIPAPIClient.searchMessages}
|
|
131
|
+
*
|
|
132
|
+
* @example
|
|
133
|
+
* ```typescript
|
|
134
|
+
* const api = CCIPAPIClient.fromUrl()
|
|
135
|
+
* // Find messages from a specific sender on a specific lane
|
|
136
|
+
* const page = await api.searchMessages({
|
|
137
|
+
* sender: '0x9d087fC03ae39b088326b67fA3C788236645b717',
|
|
138
|
+
* sourceChainSelector: 16015286601757825753n,
|
|
139
|
+
* destChainSelector: 14767482510784806043n,
|
|
140
|
+
* })
|
|
141
|
+
* ```
|
|
142
|
+
*/
|
|
143
|
+
export type MessageSearchFilters = {
|
|
144
|
+
/** Filter by sender address */
|
|
145
|
+
sender?: string;
|
|
146
|
+
/** Filter by receiver address */
|
|
147
|
+
receiver?: string;
|
|
148
|
+
/** Filter by source chain selector */
|
|
149
|
+
sourceChainSelector?: bigint;
|
|
150
|
+
/** Filter by destination chain selector */
|
|
151
|
+
destChainSelector?: bigint;
|
|
152
|
+
/** Filter by source transaction hash */
|
|
153
|
+
sourceTransactionHash?: string;
|
|
154
|
+
/** When `true`, return only messages eligible for manual execution (stuck/failed messages) */
|
|
155
|
+
readyForManualExecOnly?: boolean;
|
|
156
|
+
};
|
|
157
|
+
/**
|
|
158
|
+
* A single message search result from the CCIP API.
|
|
159
|
+
*
|
|
160
|
+
* @remarks
|
|
161
|
+
* This is a lightweight summary — it does not include `extraArgs`, `tokenAmounts`,
|
|
162
|
+
* `fees`, or other detailed fields available via {@link CCIPAPIClient.getMessageById}.
|
|
163
|
+
*
|
|
164
|
+
* @see {@link CCIPAPIClient.getMessageById} — to fetch full message details
|
|
165
|
+
* @see {@link CCIPAPIClient.searchMessages}
|
|
166
|
+
*
|
|
167
|
+
* @example
|
|
168
|
+
* ```typescript
|
|
169
|
+
* const page = await api.searchMessages({ sender: '0x...' })
|
|
170
|
+
* for (const msg of page.data) {
|
|
171
|
+
* console.log(`${msg.messageId}: ${msg.status} (${msg.sourceNetworkInfo.name} → ${msg.destNetworkInfo.name})`)
|
|
172
|
+
* }
|
|
173
|
+
* ```
|
|
174
|
+
*/
|
|
175
|
+
export type MessageSearchResult = {
|
|
176
|
+
/** Unique CCIP message ID (0x-prefixed, 32-byte hex string) */
|
|
177
|
+
messageId: string;
|
|
178
|
+
/** Transaction originator address (EOA that submitted the send transaction) */
|
|
179
|
+
origin: string;
|
|
180
|
+
/** Message sender address */
|
|
181
|
+
sender: string;
|
|
182
|
+
/** Message receiver address */
|
|
183
|
+
receiver: string;
|
|
184
|
+
/** Message lifecycle status */
|
|
185
|
+
status: MessageStatus;
|
|
186
|
+
/** Source network metadata */
|
|
187
|
+
sourceNetworkInfo: NetworkInfo;
|
|
188
|
+
/** Destination network metadata */
|
|
189
|
+
destNetworkInfo: NetworkInfo;
|
|
190
|
+
/** Source chain transaction hash */
|
|
191
|
+
sendTransactionHash: string;
|
|
192
|
+
/** ISO 8601 timestamp of the send transaction */
|
|
193
|
+
sendTimestamp: string;
|
|
194
|
+
};
|
|
195
|
+
/**
|
|
196
|
+
* A page of message search results with cursor-based pagination.
|
|
197
|
+
*
|
|
198
|
+
* @remarks
|
|
199
|
+
* When `hasNextPage` is `true`, pass the `cursor` value to
|
|
200
|
+
* {@link CCIPAPIClient.searchMessages} to fetch the next page.
|
|
201
|
+
* The cursor encodes all original filters, so you do not need
|
|
202
|
+
* to re-supply them when paginating.
|
|
203
|
+
*
|
|
204
|
+
* @see {@link MessageSearchFilters}
|
|
205
|
+
* @see {@link CCIPAPIClient.searchMessages}
|
|
206
|
+
* @see {@link CCIPAPIClient.searchAllMessages} — async generator alternative that handles
|
|
207
|
+
* pagination automatically
|
|
208
|
+
*
|
|
209
|
+
* @example Manual pagination
|
|
210
|
+
* ```typescript
|
|
211
|
+
* let page = await api.searchMessages({ sender: '0x...' }, { limit: 10 })
|
|
212
|
+
* while (page.hasNextPage) {
|
|
213
|
+
* page = await api.searchMessages(undefined, { cursor: page.cursor! })
|
|
214
|
+
* }
|
|
215
|
+
* ```
|
|
216
|
+
*
|
|
217
|
+
* @example Automatic pagination (preferred for most use cases)
|
|
218
|
+
* ```typescript
|
|
219
|
+
* for await (const msg of api.searchAllMessages({ sender: '0x...' })) {
|
|
220
|
+
* console.log(msg.messageId)
|
|
221
|
+
* }
|
|
222
|
+
* ```
|
|
223
|
+
*/
|
|
224
|
+
export type MessageSearchPage = {
|
|
225
|
+
/** Array of message search results */
|
|
226
|
+
data: MessageSearchResult[];
|
|
227
|
+
/** Whether more results are available */
|
|
228
|
+
hasNextPage: boolean;
|
|
229
|
+
/** Opaque cursor for fetching the next page */
|
|
230
|
+
cursor?: string;
|
|
231
|
+
};
|
|
123
232
|
/**
|
|
124
233
|
* API-specific metadata fields for CCIP requests.
|
|
125
234
|
*
|
|
@@ -153,8 +262,17 @@ export type APICCIPRequestMetadata = {
|
|
|
153
262
|
sourceNetworkInfo: NetworkInfo;
|
|
154
263
|
/** Destination network metadata. */
|
|
155
264
|
destNetworkInfo: NetworkInfo;
|
|
265
|
+
/** OffRamp address on dest */
|
|
266
|
+
offRamp?: string;
|
|
156
267
|
};
|
|
157
|
-
/**
|
|
268
|
+
/**
|
|
269
|
+
* Raw API response from GET /v2/messages/:messageId/execution-inputs.
|
|
270
|
+
*
|
|
271
|
+
* @remarks
|
|
272
|
+
* The response has two union branches:
|
|
273
|
+
* - **v2.0+**: contains `encodedMessage` (MessageV1Codec-serialized), optional `ccvData` array, and `verifierAddresses`
|
|
274
|
+
* - **pre-v2**: contains `messageBatch` array with decoded messages, `merkleRoot`, and optional USDC/LBTC attestation data
|
|
275
|
+
*/
|
|
158
276
|
export type RawExecutionInputsResult = {
|
|
159
277
|
offramp: string;
|
|
160
278
|
} & ({
|