@chainlink/ccip-sdk 0.97.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/README.md +12 -9
  2. package/dist/api/index.d.ts +4 -0
  3. package/dist/api/index.d.ts.map +1 -1
  4. package/dist/api/index.js +16 -4
  5. package/dist/api/index.js.map +1 -1
  6. package/dist/aptos/index.d.ts +4 -6
  7. package/dist/aptos/index.d.ts.map +1 -1
  8. package/dist/aptos/index.js +0 -5
  9. package/dist/aptos/index.js.map +1 -1
  10. package/dist/aptos/logs.d.ts +2 -2
  11. package/dist/aptos/logs.d.ts.map +1 -1
  12. package/dist/chain.d.ts +11 -12
  13. package/dist/chain.d.ts.map +1 -1
  14. package/dist/chain.js +19 -1
  15. package/dist/chain.js.map +1 -1
  16. package/dist/errors/index.d.ts +3 -3
  17. package/dist/errors/index.d.ts.map +1 -1
  18. package/dist/errors/index.js +3 -3
  19. package/dist/errors/index.js.map +1 -1
  20. package/dist/evm/abi/OnRamp_2_0.d.ts +1 -1
  21. package/dist/evm/abi/OnRamp_2_0.js +1 -1
  22. package/dist/evm/abi/OnRamp_2_0.js.map +1 -1
  23. package/dist/evm/index.d.ts +1 -3
  24. package/dist/evm/index.d.ts.map +1 -1
  25. package/dist/evm/index.js +1 -5
  26. package/dist/evm/index.js.map +1 -1
  27. package/dist/evm/logs.d.ts +1 -1
  28. package/dist/evm/logs.js +1 -1
  29. package/dist/evm/offchain.d.ts +1 -14
  30. package/dist/evm/offchain.d.ts.map +1 -1
  31. package/dist/evm/offchain.js +1 -133
  32. package/dist/evm/offchain.js.map +1 -1
  33. package/dist/index.d.ts +3 -2
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +2 -1
  36. package/dist/index.js.map +1 -1
  37. package/dist/offchain.d.ts +23 -6
  38. package/dist/offchain.d.ts.map +1 -1
  39. package/dist/offchain.js +92 -17
  40. package/dist/offchain.js.map +1 -1
  41. package/dist/requests.d.ts.map +1 -1
  42. package/dist/requests.js +0 -1
  43. package/dist/requests.js.map +1 -1
  44. package/dist/solana/idl/1.6.0/BASE_TOKEN_POOL.d.ts +1 -1
  45. package/dist/solana/idl/1.6.0/BASE_TOKEN_POOL.js +1 -1
  46. package/dist/solana/idl/1.6.0/BURN_MINT_TOKEN_POOL.d.ts +1 -1
  47. package/dist/solana/idl/1.6.0/BURN_MINT_TOKEN_POOL.js +1 -1
  48. package/dist/solana/idl/1.6.0/CCIP_CCTP_TOKEN_POOL.d.ts +1 -1
  49. package/dist/solana/idl/1.6.0/CCIP_CCTP_TOKEN_POOL.js +1 -1
  50. package/dist/solana/idl/1.6.0/CCIP_COMMON.d.ts +16 -1
  51. package/dist/solana/idl/1.6.0/CCIP_COMMON.d.ts.map +1 -1
  52. package/dist/solana/idl/1.6.0/CCIP_COMMON.js +16 -1
  53. package/dist/solana/idl/1.6.0/CCIP_COMMON.js.map +1 -1
  54. package/dist/solana/idl/1.6.0/CCIP_OFFRAMP.d.ts +1 -1
  55. package/dist/solana/idl/1.6.0/CCIP_OFFRAMP.js +1 -1
  56. package/dist/solana/idl/1.6.0/CCIP_ROUTER.d.ts +1 -1
  57. package/dist/solana/idl/1.6.0/CCIP_ROUTER.js +1 -1
  58. package/dist/solana/index.d.ts +6 -8
  59. package/dist/solana/index.d.ts.map +1 -1
  60. package/dist/solana/index.js +2 -7
  61. package/dist/solana/index.js.map +1 -1
  62. package/dist/solana/offchain.d.ts +1 -13
  63. package/dist/solana/offchain.d.ts.map +1 -1
  64. package/dist/solana/offchain.js +1 -66
  65. package/dist/solana/offchain.js.map +1 -1
  66. package/dist/solana/utils.d.ts +4 -4
  67. package/dist/solana/utils.d.ts.map +1 -1
  68. package/dist/solana/utils.js +1 -1
  69. package/dist/solana/utils.js.map +1 -1
  70. package/dist/sui/index.d.ts +4 -6
  71. package/dist/sui/index.d.ts.map +1 -1
  72. package/dist/sui/index.js +0 -5
  73. package/dist/sui/index.js.map +1 -1
  74. package/dist/ton/exec.d.ts +2 -2
  75. package/dist/ton/exec.d.ts.map +1 -1
  76. package/dist/ton/exec.js +1 -1
  77. package/dist/ton/exec.js.map +1 -1
  78. package/dist/ton/index.d.ts +5 -6
  79. package/dist/ton/index.d.ts.map +1 -1
  80. package/dist/ton/index.js +0 -4
  81. package/dist/ton/index.js.map +1 -1
  82. package/dist/ton/types.d.ts +3 -5
  83. package/dist/ton/types.d.ts.map +1 -1
  84. package/dist/ton/types.js.map +1 -1
  85. package/dist/types.d.ts +10 -10
  86. package/dist/types.d.ts.map +1 -1
  87. package/dist/types.js.map +1 -1
  88. package/package.json +9 -5
  89. package/src/api/index.ts +21 -8
  90. package/src/aptos/index.ts +4 -11
  91. package/src/aptos/logs.ts +2 -2
  92. package/src/chain.ts +17 -12
  93. package/src/errors/index.ts +3 -0
  94. package/src/evm/abi/OnRamp_2_0.ts +1 -1
  95. package/src/evm/index.ts +4 -10
  96. package/src/evm/logs.ts +1 -1
  97. package/src/evm/offchain.ts +2 -191
  98. package/src/index.ts +8 -1
  99. package/src/offchain.ts +125 -28
  100. package/src/requests.ts +2 -3
  101. package/src/solana/idl/1.6.0/BASE_TOKEN_POOL.ts +2 -2
  102. package/src/solana/idl/1.6.0/BURN_MINT_TOKEN_POOL.ts +2 -2
  103. package/src/solana/idl/1.6.0/CCIP_CCTP_TOKEN_POOL.ts +2 -2
  104. package/src/solana/idl/1.6.0/CCIP_COMMON.ts +32 -2
  105. package/src/solana/idl/1.6.0/CCIP_OFFRAMP.ts +2 -2
  106. package/src/solana/idl/1.6.0/CCIP_ROUTER.ts +2 -2
  107. package/src/solana/index.ts +10 -17
  108. package/src/solana/offchain.ts +3 -100
  109. package/src/solana/utils.ts +8 -5
  110. package/src/sui/index.ts +5 -12
  111. package/src/ton/exec.ts +3 -6
  112. package/src/ton/index.ts +10 -15
  113. package/src/ton/types.ts +3 -6
  114. package/src/types.ts +13 -10
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA2DA;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,OAAO,EAAE,SAAS;CACV,CAAA;AAIV;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;CACV,CAAA;AAIV;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;CACL,CAAA;AA2LV;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,gCAAgC;IAChC,UAAU,EAAE,CAAC;IACb,wCAAwC;IACxC,OAAO,EAAE,CAAC;IACV,wBAAwB;IACxB,MAAM,EAAE,CAAC;CACD,CAAA;AAIV;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,0DAA0D;IAC1D,IAAI,EAAE,MAAM;IACZ,0CAA0C;IAC1C,eAAe,EAAE,kBAAkB;IACnC,mDAAmD;IACnD,SAAS,EAAE,WAAW;IACtB,iDAAiD;IACjD,OAAO,EAAE,SAAS;IAClB,oDAAoD;IACpD,OAAO,EAAE,SAAS;IAClB,+CAA+C;IAC/C,MAAM,EAAE,QAAQ;IAChB,oDAAoD;IACpD,SAAS,EAAE,WAAW;IACtB,oDAAoD;IACpD,QAAQ,EAAE,UAAU;IACpB;;;;OAIG;IACH,OAAO,EAAE,SAAS;CACV,CAAA;AAIV;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,4CAA4C;IAC5C,OAAO,EAAE,SAAS;IAClB,qCAAqC;IACrC,SAAS,EAAE,WAAW;IACtB,qBAAqB;IACrB,MAAM,EAAE,QAAQ;CACR,CAAA"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA2DA;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,OAAO,EAAE,SAAS;CACV,CAAA;AAIV;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;CACV,CAAA;AAIV;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;CACL,CAAA;AA8LV;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,gCAAgC;IAChC,UAAU,EAAE,CAAC;IACb,wCAAwC;IACxC,OAAO,EAAE,CAAC;IACV,wBAAwB;IACxB,MAAM,EAAE,CAAC;CACD,CAAA;AAIV;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,0DAA0D;IAC1D,IAAI,EAAE,MAAM;IACZ,0CAA0C;IAC1C,eAAe,EAAE,kBAAkB;IACnC,mDAAmD;IACnD,SAAS,EAAE,WAAW;IACtB,iDAAiD;IACjD,OAAO,EAAE,SAAS;IAClB,oDAAoD;IACpD,OAAO,EAAE,SAAS;IAClB,+CAA+C;IAC/C,MAAM,EAAE,QAAQ;IAChB,oDAAoD;IACpD,SAAS,EAAE,WAAW;IACtB,oDAAoD;IACpD,QAAQ,EAAE,UAAU;IACpB;;;;OAIG;IACH,OAAO,EAAE,SAAS;CACV,CAAA;AAIV;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,4CAA4C;IAC5C,OAAO,EAAE,SAAS;IAClB,qCAAqC;IACrC,SAAS,EAAE,WAAW;IACtB,qBAAqB;IACrB,MAAM,EAAE,QAAQ;CACR,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chainlink/ccip-sdk",
3
- "version": "0.97.0",
3
+ "version": "1.0.0",
4
4
  "description": "SDK/Library to interact with CCIP",
5
5
  "author": "Chainlink devs",
6
6
  "license": "MIT",
@@ -8,6 +8,10 @@
8
8
  "type": "git",
9
9
  "url": "git+https://github.com/smartcontractkit/ccip-tools-ts.git"
10
10
  },
11
+ "homepage": "https://docs.chain.link/ccip/tools/sdk/",
12
+ "bugs": {
13
+ "url": "https://github.com/smartcontractkit/ccip-tools-ts/issues"
14
+ },
11
15
  "type": "module",
12
16
  "sideEffects": false,
13
17
  "exports": {
@@ -61,15 +65,15 @@
61
65
  "eslint-config-prettier": "10.1.8",
62
66
  "eslint-import-resolver-typescript": "4.4.4",
63
67
  "eslint-plugin-import": "^2.32.0",
64
- "eslint-plugin-jsdoc": "^62.7.0",
68
+ "eslint-plugin-jsdoc": "^62.7.1",
65
69
  "eslint-plugin-prettier": "^5.5.5",
66
- "eslint-plugin-tsdoc": "^0.5.0",
70
+ "eslint-plugin-tsdoc": "^0.5.1",
67
71
  "ethers-abitype": "1.0.3",
68
72
  "prettier": "^3.8.1",
69
73
  "prool": "^0.0.17",
70
74
  "typescript": "5.9.3",
71
- "typescript-eslint": "8.56.0",
72
- "viem": "^2.46.2"
75
+ "typescript-eslint": "8.56.1",
76
+ "viem": "^2.46.3"
73
77
  },
74
78
  "dependencies": {
75
79
  "@aptos-labs/ts-sdk": "^5.2.1",
package/src/api/index.ts CHANGED
@@ -15,9 +15,8 @@ import { decodeMessage } from '../requests.ts'
15
15
  import {
16
16
  type CCIPMessage,
17
17
  type CCIPRequest,
18
- type ChainTransaction,
18
+ type ChainLog,
19
19
  type ExecutionInput,
20
- type Log_,
21
20
  type Logger,
22
21
  type NetworkInfo,
23
22
  type WithLogger,
@@ -44,6 +43,15 @@ export const DEFAULT_API_BASE_URL = 'https://api.ccip.chain.link'
44
43
  /** Default timeout for API requests in milliseconds */
45
44
  export const DEFAULT_TIMEOUT_MS = 30000
46
45
 
46
+ /** SDK version string for telemetry header */
47
+ // generate:nofail
48
+ // `export const SDK_VERSION = '${require('./package.json').version}-${require('child_process').execSync('git rev-parse --short HEAD').toString().trim()}'`
49
+ export const SDK_VERSION = '1.0.0-4cc6ccc'
50
+ // generate:end
51
+
52
+ /** SDK telemetry header name */
53
+ export const SDK_VERSION_HEADER = 'X-SDK-Version'
54
+
47
55
  /**
48
56
  * Context for CCIPAPIClient initialization.
49
57
  */
@@ -139,7 +147,7 @@ export class CCIPAPIClient {
139
147
  this.baseUrl = baseUrl ?? DEFAULT_API_BASE_URL
140
148
  this.logger = ctx?.logger ?? console
141
149
  this.timeoutMs = ctx?.timeoutMs ?? DEFAULT_TIMEOUT_MS
142
- this._fetch = ctx?.fetch ?? globalThis.fetch
150
+ this._fetch = ctx?.fetch ?? globalThis.fetch.bind(globalThis)
143
151
  }
144
152
 
145
153
  /**
@@ -167,7 +175,13 @@ export class CCIPAPIClient {
167
175
  const timeoutId = setTimeout(() => controller.abort(), this.timeoutMs)
168
176
 
169
177
  try {
170
- return await this._fetch(url, { signal: controller.signal })
178
+ return await this._fetch(url, {
179
+ signal: controller.signal,
180
+ headers: {
181
+ 'Content-Type': 'application/json',
182
+ [SDK_VERSION_HEADER]: `CCIP SDK v${SDK_VERSION}`,
183
+ },
184
+ })
171
185
  } catch (error) {
172
186
  if (error instanceof Error && error.name === 'AbortError') {
173
187
  throw new CCIPTimeoutError(operation, this.timeoutMs)
@@ -429,7 +443,7 @@ export class CCIPAPIClient {
429
443
  getExecutionInput(messageId: string): Promise<ExecutionInput & { offRamp: string }> {
430
444
  throw new CCIPNotImplementedError(`CCIPAPIClient.getExecutionInput`)
431
445
  // TODO: fetch (memoized) request with metadata from `getMessageById`
432
- // TODO: if request doesn't contain averything needed (e.g. <v2.0), fetch `batch` and
446
+ // TODO: if request doesn't contain everything needed (e.g. <v2.0), fetch `batch` and
433
447
  // `offchainTokenData` from `/execution-input`
434
448
  // TODO: if <v2.0, `calculateManualExecProof` and return `offRamp` and `input`
435
449
  }
@@ -483,7 +497,7 @@ export class CCIPAPIClient {
483
497
  }
484
498
 
485
499
  // Build log from API data
486
- const log: Log_ = {
500
+ const log: ChainLog = {
487
501
  transactionHash: sendTransactionHash,
488
502
  address: raw.onramp,
489
503
  data: { message: parseJson(text) },
@@ -493,11 +507,10 @@ export class CCIPAPIClient {
493
507
  }
494
508
 
495
509
  // Build tx from API data
496
- const tx: ChainTransaction = {
510
+ const tx = {
497
511
  hash: log.transactionHash,
498
512
  timestamp: sendTimestamp_,
499
513
  from: origin,
500
- logs: [log],
501
514
  blockNumber: Number(sendBlockNumber),
502
515
  }
503
516
  log.tx = tx
@@ -56,14 +56,13 @@ import {
56
56
  type CCIPExecution,
57
57
  type CCIPMessage,
58
58
  type CCIPRequest,
59
+ type ChainLog,
59
60
  type ChainTransaction,
60
61
  type CommitReport,
61
62
  type ExecutionInput,
62
63
  type ExecutionReceipt,
63
64
  type Lane,
64
- type Log_,
65
65
  type NetworkInfo,
66
- type OffchainTokenData,
67
66
  type WithLogger,
68
67
  ChainFamily,
69
68
  } from '../types.ts'
@@ -236,7 +235,7 @@ export class AptosChain extends Chain<typeof ChainFamily.Aptos> {
236
235
  }
237
236
 
238
237
  /** {@inheritDoc Chain.getLogs} */
239
- async *getLogs(opts: LogFilter & { versionAsHash?: boolean }): AsyncIterableIterator<Log_> {
238
+ async *getLogs(opts: LogFilter & { versionAsHash?: boolean }): AsyncIterableIterator<ChainLog> {
240
239
  yield* streamAptosLogs(this, opts)
241
240
  }
242
241
 
@@ -415,7 +414,7 @@ export class AptosChain extends Chain<typeof ChainFamily.Aptos> {
415
414
  * @returns Array of CommitReport or undefined if not valid.
416
415
  * @throws {@link CCIPAptosLogInvalidError} if log data format is invalid
417
416
  */
418
- static decodeCommits({ data }: Pick<Log_, 'data'>, lane?: Lane): CommitReport[] | undefined {
417
+ static decodeCommits({ data }: Pick<ChainLog, 'data'>, lane?: Lane): CommitReport[] | undefined {
419
418
  if (!data || typeof data != 'object') throw new CCIPAptosLogInvalidError(data)
420
419
  const data_ = data as {
421
420
  blessed_merkle_roots: unknown[] | undefined
@@ -449,7 +448,7 @@ export class AptosChain extends Chain<typeof ChainFamily.Aptos> {
449
448
  * @returns ExecutionReceipt or undefined if not valid.
450
449
  * @throws {@link CCIPAptosLogInvalidError} if log data format is invalid
451
450
  */
452
- static decodeReceipt({ data }: Pick<Log_, 'data'>): ExecutionReceipt | undefined {
451
+ static decodeReceipt({ data }: Pick<ChainLog, 'data'>): ExecutionReceipt | undefined {
453
452
  if (!data || typeof data != 'object') throw new CCIPAptosLogInvalidError(data)
454
453
  const data_ = data as { message_id: string; state: number }
455
454
  if (!data_.message_id || !data_.state) return
@@ -553,12 +552,6 @@ export class AptosChain extends Chain<typeof ChainFamily.Aptos> {
553
552
  return (await this.getMessagesInTx(await this.getTransaction(hash)))[0]!
554
553
  }
555
554
 
556
- /** {@inheritDoc Chain.getOffchainTokenData} */
557
- getOffchainTokenData(request: CCIPRequest): Promise<OffchainTokenData[]> {
558
- // default offchain token data
559
- return Promise.resolve(request.message.tokenAmounts.map(() => undefined))
560
- }
561
-
562
555
  /**
563
556
  * {@inheritDoc Chain.generateUnsignedExecute}
564
557
  * @throws {@link CCIPAptosExtraArgsV2RequiredError} if message missing EVMExtraArgsV2 fields
package/src/aptos/logs.ts CHANGED
@@ -15,7 +15,7 @@ import {
15
15
  CCIPLogsWatchRequiresStartError,
16
16
  CCIPTopicsInvalidError,
17
17
  } from '../errors/index.ts'
18
- import type { Log_ } from '../types.ts'
18
+ import type { ChainLog } from '../types.ts'
19
19
  import { sleep } from '../utils.ts'
20
20
 
21
21
  const DEFAULT_POLL_INTERVAL = 5e3
@@ -241,7 +241,7 @@ async function* fetchEventsBackward(
241
241
  export async function* streamAptosLogs(
242
242
  ctx: { provider: Aptos },
243
243
  opts: LogFilter & { versionAsHash?: boolean },
244
- ): AsyncGenerator<Log_> {
244
+ ): AsyncGenerator<ChainLog> {
245
245
  const limit = 100
246
246
  if (!opts.address || !opts.address.includes('::')) throw new CCIPAptosAddressModuleRequiredError()
247
247
  if (opts.topics?.length !== 1 || typeof opts.topics[0] !== 'string')
package/src/chain.ts CHANGED
@@ -22,6 +22,7 @@ import type {
22
22
  SuiExtraArgsV1,
23
23
  } from './extra-args.ts'
24
24
  import type { LeafHasher } from './hasher/common.ts'
25
+ import { getOffchainTokenData } from './offchain.ts'
25
26
  import { getMessagesInTx } from './requests.ts'
26
27
  import { DEFAULT_GAS_LIMIT } from './shared/constants.ts'
27
28
  import type { UnsignedSolanaTx } from './solana/types.ts'
@@ -34,12 +35,12 @@ import {
34
35
  type CCIPVerifications,
35
36
  type CCIPVersion,
36
37
  type ChainFamily,
38
+ type ChainLog,
37
39
  type ChainTransaction,
38
40
  type CommitReport,
39
41
  type ExecutionInput,
40
42
  type ExecutionReceipt,
41
43
  type Lane,
42
- type Log_,
43
44
  type Logger,
44
45
  type MessageInput,
45
46
  type NetworkInfo,
@@ -501,7 +502,7 @@ export abstract class Chain<F extends ChainFamily = ChainFamily> {
501
502
  * @throws {@link CCIPLogsWatchRequiresStartError} if watch mode is used without startBlock or startTime
502
503
  * @throws {@link CCIPLogsAddressRequiredError} if address is required but not provided (chain-specific)
503
504
  */
504
- abstract getLogs(opts: LogFilter): AsyncIterableIterator<Log_>
505
+ abstract getLogs(opts: LogFilter): AsyncIterableIterator<ChainLog>
505
506
 
506
507
  /**
507
508
  * Fetch all CCIP requests in a transaction.
@@ -910,20 +911,24 @@ export abstract class Chain<F extends ChainFamily = ChainFamily> {
910
911
  ): Promise<CCIPRequest>
911
912
  /**
912
913
  * Fetch supported offchain token data for a request from this network.
914
+ * It logs but doesn't throw in case it can't fetch attestation, as the transfers may not be
915
+ * from the expected attestation providers. It returns default offchainData=undefined for those.
913
916
  *
914
- * @param request - CCIP request, with tx, logs and message
917
+ * @param request - CCIP request, with tx.hash and message
915
918
  * @returns Promise resolving to array with one offchain token data for each token transfer
916
919
  *
917
- * @throws {@link CCIPUsdcAttestationError} if USDC attestation fetch fails (transient)
918
- * @throws {@link CCIPLbtcAttestationError} if LBTC attestation fetch fails (transient)
919
- *
920
920
  * @example Get offchain token data for USDC transfer
921
921
  * ```typescript
922
922
  * const offchainData = await source.getOffchainTokenData(request)
923
923
  * // Use in execution report
924
924
  * ```
925
925
  */
926
- abstract getOffchainTokenData(request: CCIPRequest): Promise<OffchainTokenData[]>
926
+ async getOffchainTokenData(
927
+ request: PickDeep<CCIPRequest, 'tx.hash' | `message`>,
928
+ ): Promise<OffchainTokenData[]> {
929
+ return getOffchainTokenData(request, this)
930
+ }
931
+
927
932
  /**
928
933
  * Generate unsigned tx to manuallyExecute a message.
929
934
  *
@@ -934,7 +939,7 @@ export abstract class Chain<F extends ChainFamily = ChainFamily> {
934
939
  * ```typescript
935
940
  * const unsignedTx = await dest.generateUnsignedExecute({
936
941
  * offRamp: offRampAddress,
937
- * execReport,
942
+ * input,
938
943
  * payer: walletAddress,
939
944
  * })
940
945
  * // Sign and send with external wallet
@@ -977,7 +982,7 @@ export abstract class Chain<F extends ChainFamily = ChainFamily> {
977
982
  * May be specialized by some subclasses.
978
983
  *
979
984
  * @param opts - getVerifications options
980
- * @returns CCIPCommit info
985
+ * @returns CCIPVerifications
981
986
  *
982
987
  * @throws {@link CCIPCommitNotFoundError} if no commit found for the request (transient)
983
988
  *
@@ -1405,7 +1410,7 @@ export type ChainStatic<F extends ChainFamily = ChainFamily> = Function & {
1405
1410
  * }
1406
1411
  * ```
1407
1412
  */
1408
- decodeMessage(log: Pick<Log_, 'data'>): CCIPMessage | undefined
1413
+ decodeMessage(log: Pick<ChainLog, 'data'>): CCIPMessage | undefined
1409
1414
  /**
1410
1415
  * Try to decode an extraArgs array serialized for this chain family.
1411
1416
  *
@@ -1461,7 +1466,7 @@ export type ChainStatic<F extends ChainFamily = ChainFamily> = Function & {
1461
1466
  * }
1462
1467
  * ```
1463
1468
  */
1464
- decodeCommits(log: Pick<Log_, 'data'>, lane?: Lane): CommitReport[] | undefined
1469
+ decodeCommits(log: Pick<ChainLog, 'data'>, lane?: Lane): CommitReport[] | undefined
1465
1470
  /**
1466
1471
  * Decode a receipt (ExecutionStateChanged) event.
1467
1472
  *
@@ -1476,7 +1481,7 @@ export type ChainStatic<F extends ChainFamily = ChainFamily> = Function & {
1476
1481
  * }
1477
1482
  * ```
1478
1483
  */
1479
- decodeReceipt(log: Pick<Log_, 'data'>): ExecutionReceipt | undefined
1484
+ decodeReceipt(log: Pick<ChainLog, 'data'>): ExecutionReceipt | undefined
1480
1485
  /**
1481
1486
  * Receive a bytes array and try to decode and normalize it as an address of this chain family.
1482
1487
  *
@@ -10,6 +10,7 @@ export {
10
10
  CCIPChainFamilyUnsupportedError,
11
11
  CCIPChainNotFoundError,
12
12
  CCIPMethodUnsupportedError,
13
+ CCIPNetworkFamilyUnsupportedError,
13
14
  } from './specialized.ts'
14
15
 
15
16
  // Specialized errors - Block & Transaction
@@ -67,6 +68,7 @@ export { CCIPExtraArgsInvalidError, CCIPExtraArgsParseError } from './specialize
67
68
 
68
69
  // Specialized errors - Token & Registry
69
70
  export {
71
+ CCIPLegacyTokenPoolsUnsupportedError,
70
72
  CCIPTokenDecimalsInsufficientError,
71
73
  CCIPTokenNotConfiguredError,
72
74
  CCIPTokenNotFoundError,
@@ -135,6 +137,7 @@ export {
135
137
  CCIPAptosNetworkUnknownError,
136
138
  CCIPAptosRegistryTypeInvalidError,
137
139
  CCIPAptosTokenNotRegisteredError,
140
+ CCIPAptosTopicInvalidError,
138
141
  CCIPAptosTransactionInvalidError,
139
142
  CCIPAptosTransactionTypeInvalidError,
140
143
  CCIPAptosTransactionTypeUnexpectedError,
@@ -831,7 +831,7 @@ export default [
831
831
  },
832
832
  {
833
833
  type: 'error',
834
- name: 'CustomBlockConfirmationNotSupportedOnPoolV1',
834
+ name: 'CustomBlockConfirmationsNotSupportedOnPoolV1',
835
835
  inputs: [],
836
836
  },
837
837
  {
package/src/evm/index.ts CHANGED
@@ -60,15 +60,14 @@ import {
60
60
  type CCIPMessage,
61
61
  type CCIPRequest,
62
62
  type CCIPVerifications,
63
+ type ChainLog,
63
64
  type ChainTransaction,
64
65
  type CommitReport,
65
66
  type ExecutionInput,
66
67
  type ExecutionReceipt,
67
68
  type ExecutionState,
68
69
  type Lane,
69
- type Log_,
70
70
  type NetworkInfo,
71
- type OffchainTokenData,
72
71
  type WithLogger,
73
72
  CCIPVersion,
74
73
  ChainFamily,
@@ -122,7 +121,7 @@ import {
122
121
  } from './messages.ts'
123
122
  export { decodeMessageV1 }
124
123
  export type { MessageV1, TokenTransferV1 }
125
- import { encodeEVMOffchainTokenData, fetchEVMOffchainTokenData } from './offchain.ts'
124
+ import { encodeEVMOffchainTokenData } from './offchain.ts'
126
125
  import { buildMessageForDest, decodeMessage, getMessagesInBatch } from '../requests.ts'
127
126
  import { type UnsignedEVMTx, resultToObject } from './types.ts'
128
127
  export type { UnsignedEVMTx }
@@ -339,9 +338,9 @@ export class EVMChain extends Chain<typeof ChainFamily.EVM> {
339
338
  const chainTx = {
340
339
  ...tx,
341
340
  timestamp,
342
- logs: [] as Log_[],
341
+ logs: [] as ChainLog[],
343
342
  }
344
- const logs: Log_[] = tx.logs.map((l) => Object.assign(l, { tx: chainTx }))
343
+ const logs: ChainLog[] = tx.logs.map((l) => Object.assign(l, { tx: chainTx }))
345
344
  chainTx.logs = logs
346
345
  return chainTx
347
346
  }
@@ -1073,11 +1072,6 @@ export class EVMChain extends Chain<typeof ChainFamily.EVM> {
1073
1072
  return (await this.getMessagesInTx(await this.getTransaction(tx)))[0]!
1074
1073
  }
1075
1074
 
1076
- /** {@inheritDoc Chain.getOffchainTokenData} */
1077
- getOffchainTokenData(request: CCIPRequest): Promise<OffchainTokenData[]> {
1078
- return fetchEVMOffchainTokenData(request, this)
1079
- }
1080
-
1081
1075
  /**
1082
1076
  * {@inheritDoc Chain.generateUnsignedExecute}
1083
1077
  * @returns array containing one unsigned `manuallyExecute` TransactionRequest object
package/src/evm/logs.ts CHANGED
@@ -183,7 +183,7 @@ async function getFallbackArchiveLogs(
183
183
  * - If undefined (default): paginate main provider only by filter.page
184
184
  * - If false: first try whole range with main provider, then fallback to archive provider
185
185
  * - If true: don't paginate (throw if can't fetch wide range from either provider)
186
- * @param ctx - Context object containing provider, logger and destry$ notify promise
186
+ * @param ctx - Context object containing provider, logger and destroy$ notify promise
187
187
  * @returns Async iterator of logs.
188
188
  */
189
189
  export async function* getEvmLogs(
@@ -1,90 +1,5 @@
1
- import { type Addressable, type Log, EventFragment } from 'ethers'
2
-
3
- import { getLbtcAttestation, getUsdcAttestation } from '../offchain.ts'
4
- import type {
5
- CCIPMessage,
6
- CCIPRequest,
7
- NetworkType,
8
- OffchainTokenData,
9
- WithLogger,
10
- } from '../types.ts'
11
- import { networkInfo } from '../utils.ts'
12
- import { defaultAbiCoder, interfaces, requestsFragments } from './const.ts'
13
- import { type SourceTokenData, parseSourceTokenData } from './messages.ts'
14
-
15
- const BURNED_EVENT_1_5 = interfaces.TokenPool_v1_5.getEvent('Burned')!
16
- const BURNED_EVENT_1_6 = interfaces.TokenPool_v1_6.getEvent('LockedOrBurned')!
17
- const BURNED_EVENT_TOPIC_HASHES = new Set([BURNED_EVENT_1_5.topicHash, BURNED_EVENT_1_6.topicHash])
18
-
19
- const USDC_EVENT = EventFragment.from('MessageSent(bytes message)')
20
- const TRANSFER_EVENT = EventFragment.from('Transfer(address from, address to, uint256 value)')
21
-
22
- export const LBTC_EVENT = EventFragment.from(
23
- 'DepositToBridge(address fromAddress, bytes32 toAddress, bytes32 payloadHash, bytes payload)',
24
- )
25
- export const LBTC_EVENT_V2 = EventFragment.from(
26
- 'DepositToBridge(address fromAddress, bytes32 toAddress, bytes32 payloadHash)',
27
- )
28
- const LBTC_EVENTS_HASHES = new Set([LBTC_EVENT.topicHash, LBTC_EVENT_V2.topicHash])
29
-
30
- /**
31
- * Fetch offchain token data for all transfers in request
32
- *
33
- * @param request - Request (or subset of) to fetch offchainTokenData for
34
- * @returns Array of byte arrays, one per transfer in request
35
- */
36
- export async function fetchEVMOffchainTokenData(
37
- request: Pick<CCIPRequest, 'tx'> & {
38
- message: CCIPMessage
39
- log: Pick<CCIPRequest['log'], 'index'>
40
- },
41
- ctx: WithLogger,
42
- ): Promise<OffchainTokenData[]> {
43
- const { networkType } = networkInfo(request.message.sourceChainSelector)
44
- // there's a chance there are other CCIPSendRequested in same tx,
45
- // and they may contain USDC transfers as well, so we select
46
- // any USDC logs after that and before our CCIPSendRequested
47
- const prevCcipRequestIdx =
48
- request.tx.logs.find(
49
- ({ topics, index }) => topics[0]! in requestsFragments && index < request.log.index,
50
- )?.index ?? -1
51
- const usdcRequestLogs = request.tx.logs.filter(
52
- ({ index }) => prevCcipRequestIdx < index && index < request.log.index,
53
- ) as Log[]
54
-
55
- const offchainTokenData: OffchainTokenData[] = request.message.tokenAmounts.map(
56
- () => undefined, // default tokenData
57
- )
58
- const usdcTokenData = await getUsdcTokenData(
59
- request.message.tokenAmounts,
60
- usdcRequestLogs,
61
- networkType,
62
- ctx,
63
- )
64
- let lbtcTokenData: OffchainTokenData[] = []
65
- try {
66
- let tokenAmounts
67
- if ('sourceTokenData' in request.message) {
68
- tokenAmounts = request.message.sourceTokenData.map(parseSourceTokenData)
69
- } else {
70
- tokenAmounts = request.message.tokenAmounts
71
- }
72
- //for lbtc we distinguish logs by hash in event, so we can pass all of them
73
- lbtcTokenData = await getLbtcTokenData(tokenAmounts, request.tx.logs as Log[], networkType, ctx)
74
- } catch (_) {
75
- // pass
76
- }
77
-
78
- for (let i = 0; i < offchainTokenData.length; i++) {
79
- if (usdcTokenData[i]) {
80
- offchainTokenData[i] = usdcTokenData[i]
81
- } else if (lbtcTokenData[i]) {
82
- offchainTokenData[i] = lbtcTokenData[i]
83
- }
84
- }
85
-
86
- return offchainTokenData
87
- }
1
+ import type { OffchainTokenData } from '../types.ts'
2
+ import { defaultAbiCoder } from './const.ts'
88
3
 
89
4
  /**
90
5
  * Encodes offchain token data for EVM execution.
@@ -99,107 +14,3 @@ export function encodeEVMOffchainTokenData(data: OffchainTokenData): string {
99
14
  }
100
15
  return '0x'
101
16
  }
102
-
103
- /**
104
- * Try to fetch USDC attestations for transfers, return undefined in position if can't
105
- *
106
- * @param tokenAmounts - all tokenAmounts to try
107
- * @param allLogsInRequest - all other logs in same tx as CCIPSendRequested
108
- * @param networkType - network type (mainnet or testnet)
109
- * @returns array where each position is either the attestation for that transfer or undefined
110
- **/
111
- async function getUsdcTokenData(
112
- tokenAmounts: CCIPMessage['tokenAmounts'],
113
- allLogsInRequest: Pick<Log, 'topics' | 'address' | 'data'>[],
114
- networkType: NetworkType,
115
- { logger = console }: WithLogger = {},
116
- ): Promise<OffchainTokenData[]> {
117
- const attestations: OffchainTokenData[] = []
118
-
119
- const messageSentPerTokenAndPool = allLogsInRequest.reduce((acc, log, i, arr) => {
120
- // for our MessageSent of interest (USDC-like), the token is the contract
121
- // which emitted a (burn) Transfer immediately before this event, and the pool emitted a Burned
122
- // event 2 events after
123
- const transferLog = arr[i - 1]
124
- const poolLog = arr[i + 2]
125
- if (
126
- log.topics[0] !== USDC_EVENT.topicHash ||
127
- transferLog?.topics[0] !== TRANSFER_EVENT.topicHash ||
128
- !poolLog?.topics.length ||
129
- !BURNED_EVENT_TOPIC_HASHES.has(poolLog.topics[0]!)
130
- ) {
131
- return acc
132
- }
133
- const token = transferLog.address
134
- const pool = poolLog.address
135
- acc.set(token, [...(acc.get(token) ?? []), log])
136
- acc.set(pool, [...(acc.get(pool) ?? []), log])
137
- return acc
138
- }, new Map<string | Addressable, (typeof allLogsInRequest)[number][]>())
139
-
140
- for (const [i, tokenAmount] of tokenAmounts.entries()) {
141
- const tokenOrPool = 'token' in tokenAmount ? tokenAmount.token : tokenAmount.sourcePoolAddress
142
-
143
- // what if there are more USDC transfers of this same token after this one?
144
- const tokenTransfersCountAfter = tokenAmounts.filter(
145
- (ta, j) => ('token' in ta ? ta.token : ta.sourcePoolAddress) === tokenOrPool && j > i,
146
- ).length
147
-
148
- let messageSentLog: (typeof allLogsInRequest)[number] | undefined
149
- const messageSents = messageSentPerTokenAndPool.get(tokenOrPool)
150
- if (messageSents) {
151
- // look from the end (near our request), but skip MessageSents for further transfers
152
- messageSentLog = messageSents[messageSents.length - 1 - tokenTransfersCountAfter]
153
- }
154
-
155
- let tokenData: OffchainTokenData
156
- if (messageSentLog) {
157
- let message
158
- try {
159
- message = defaultAbiCoder.decode(USDC_EVENT.inputs, messageSentLog.data)[0] as string
160
- const attestation = await getUsdcAttestation(message, networkType)
161
- tokenData = {
162
- _tag: 'usdc',
163
- message,
164
- attestation,
165
- }
166
- // encoding of OffchainTokenData to be done as part of Chain.executeReceipt
167
- } catch (err) {
168
- // maybe not a USDC transfer, or not ready
169
- logger.warn(`❌ EVM CCTP: Failed to fetch attestation for message:`, message, err)
170
- }
171
- }
172
- attestations.push(tokenData)
173
- }
174
-
175
- return attestations
176
- }
177
-
178
- /**
179
- * Try to fetch LBTC attestations for transfers, return undefined in position if can't or not required
180
- **/
181
- async function getLbtcTokenData(
182
- tokenAmounts: readonly Pick<SourceTokenData, 'extraData'>[],
183
- allLogsInRequest: readonly Pick<Log, 'topics' | 'address' | 'data'>[],
184
- networkType: NetworkType,
185
- { logger = console }: WithLogger = {},
186
- ): Promise<OffchainTokenData[]> {
187
- const lbtcDepositHashes = new Set(
188
- allLogsInRequest
189
- .filter(({ topics }) => LBTC_EVENTS_HASHES.has(topics[0]!))
190
- .map(({ topics }) => topics[3]),
191
- )
192
- return Promise.all(
193
- tokenAmounts.map(async ({ extraData }) => {
194
- // Attestation is required when SourceTokenData.extraData is 32 bytes long ('0x' + 64 hex chars)
195
- // otherwise attestation is not required
196
- if (lbtcDepositHashes.has(extraData)) {
197
- try {
198
- return { _tag: 'lbtc', extraData, ...(await getLbtcAttestation(extraData, networkType)) }
199
- } catch (err) {
200
- logger.warn(`❌ EVM LBTC: Failed to fetch attestation for message:`, extraData, err)
201
- }
202
- }
203
- }),
204
- )
205
- }
package/src/index.ts CHANGED
@@ -13,7 +13,12 @@ export type {
13
13
  CCIPAPIClientContext,
14
14
  LaneLatencyResponse,
15
15
  } from './api/index.ts'
16
- export { CCIPAPIClient, DEFAULT_API_BASE_URL } from './api/index.ts'
16
+ export {
17
+ CCIPAPIClient,
18
+ DEFAULT_API_BASE_URL,
19
+ SDK_VERSION,
20
+ SDK_VERSION_HEADER,
21
+ } from './api/index.ts'
17
22
 
18
23
  export type {
19
24
  ApiRetryConfig,
@@ -41,12 +46,14 @@ export {
41
46
  encodeExtraArgs,
42
47
  } from './extra-args.ts'
43
48
  export { estimateReceiveExecution } from './gas.ts'
49
+ export { getOffchainTokenData } from './offchain.ts'
44
50
  export { decodeMessage, getMessagesForSender, sourceToDestTokenAddresses } from './requests.ts'
45
51
  export {
46
52
  type CCIPExecution,
47
53
  type CCIPMessage,
48
54
  type CCIPRequest,
49
55
  type CCIPVerifications,
56
+ type ChainLog,
50
57
  type ChainTransaction,
51
58
  type CommitReport,
52
59
  type ExecutionInput,