@chainlink/ccip-sdk 0.92.1 → 0.94.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 (232) hide show
  1. package/README.md +20 -18
  2. package/dist/api/index.d.ts +103 -0
  3. package/dist/api/index.d.ts.map +1 -0
  4. package/dist/api/index.js +141 -0
  5. package/dist/api/index.js.map +1 -0
  6. package/dist/api/types.d.ts +38 -0
  7. package/dist/api/types.d.ts.map +1 -0
  8. package/dist/api/types.js +2 -0
  9. package/dist/api/types.js.map +1 -0
  10. package/dist/aptos/index.d.ts +20 -33
  11. package/dist/aptos/index.d.ts.map +1 -1
  12. package/dist/aptos/index.js +41 -29
  13. package/dist/aptos/index.js.map +1 -1
  14. package/dist/aptos/logs.js +1 -1
  15. package/dist/aptos/logs.js.map +1 -1
  16. package/dist/aptos/send.js +1 -1
  17. package/dist/aptos/send.js.map +1 -1
  18. package/dist/aptos/token.js.map +1 -1
  19. package/dist/chain.d.ts +215 -73
  20. package/dist/chain.d.ts.map +1 -1
  21. package/dist/chain.js +103 -20
  22. package/dist/chain.js.map +1 -1
  23. package/dist/commits.d.ts +2 -2
  24. package/dist/commits.d.ts.map +1 -1
  25. package/dist/commits.js +4 -4
  26. package/dist/commits.js.map +1 -1
  27. package/dist/errors/CCIPError.d.ts.map +1 -1
  28. package/dist/errors/CCIPError.js +3 -2
  29. package/dist/errors/CCIPError.js.map +1 -1
  30. package/dist/errors/codes.d.ts +4 -1
  31. package/dist/errors/codes.d.ts.map +1 -1
  32. package/dist/errors/codes.js +6 -1
  33. package/dist/errors/codes.js.map +1 -1
  34. package/dist/errors/index.d.ts +5 -2
  35. package/dist/errors/index.d.ts.map +1 -1
  36. package/dist/errors/index.js +8 -2
  37. package/dist/errors/index.js.map +1 -1
  38. package/dist/errors/recovery.d.ts.map +1 -1
  39. package/dist/errors/recovery.js +4 -1
  40. package/dist/errors/recovery.js.map +1 -1
  41. package/dist/errors/specialized.d.ts +29 -4
  42. package/dist/errors/specialized.d.ts.map +1 -1
  43. package/dist/errors/specialized.js +48 -6
  44. package/dist/errors/specialized.js.map +1 -1
  45. package/dist/evm/errors.js.map +1 -1
  46. package/dist/evm/index.d.ts +24 -48
  47. package/dist/evm/index.d.ts.map +1 -1
  48. package/dist/evm/index.js +82 -66
  49. package/dist/evm/index.js.map +1 -1
  50. package/dist/evm/logs.js.map +1 -1
  51. package/dist/evm/offchain.js +3 -2
  52. package/dist/evm/offchain.js.map +1 -1
  53. package/dist/evm/viem/client-adapter.d.ts +68 -0
  54. package/dist/evm/viem/client-adapter.d.ts.map +1 -0
  55. package/dist/evm/viem/client-adapter.js +104 -0
  56. package/dist/evm/viem/client-adapter.js.map +1 -0
  57. package/dist/evm/viem/index.d.ts +29 -0
  58. package/dist/evm/viem/index.d.ts.map +1 -0
  59. package/dist/evm/viem/index.js +28 -0
  60. package/dist/evm/viem/index.js.map +1 -0
  61. package/dist/evm/viem/types.d.ts +13 -0
  62. package/dist/evm/viem/types.d.ts.map +1 -0
  63. package/dist/evm/viem/types.js +2 -0
  64. package/dist/evm/viem/types.js.map +1 -0
  65. package/dist/evm/viem/wallet-adapter.d.ts +58 -0
  66. package/dist/evm/viem/wallet-adapter.d.ts.map +1 -0
  67. package/dist/evm/viem/wallet-adapter.js +197 -0
  68. package/dist/evm/viem/wallet-adapter.js.map +1 -0
  69. package/dist/execution.d.ts +1 -1
  70. package/dist/execution.d.ts.map +1 -1
  71. package/dist/execution.js +2 -2
  72. package/dist/execution.js.map +1 -1
  73. package/dist/explorer.d.ts +74 -0
  74. package/dist/explorer.d.ts.map +1 -0
  75. package/dist/explorer.js +67 -0
  76. package/dist/explorer.js.map +1 -0
  77. package/dist/gas.js.map +1 -1
  78. package/dist/hasher/merklemulti.js.map +1 -1
  79. package/dist/http-status.d.ts +20 -0
  80. package/dist/http-status.d.ts.map +1 -0
  81. package/dist/http-status.js +25 -0
  82. package/dist/http-status.js.map +1 -0
  83. package/dist/index.d.ts +10 -3
  84. package/dist/index.d.ts.map +1 -1
  85. package/dist/index.js +4 -2
  86. package/dist/index.js.map +1 -1
  87. package/dist/offchain.js.map +1 -1
  88. package/dist/requests.d.ts +12 -6
  89. package/dist/requests.d.ts.map +1 -1
  90. package/dist/requests.js +16 -6
  91. package/dist/requests.js.map +1 -1
  92. package/dist/selectors.d.ts.map +1 -1
  93. package/dist/selectors.js +20 -0
  94. package/dist/selectors.js.map +1 -1
  95. package/dist/solana/cleanup.js +2 -2
  96. package/dist/solana/cleanup.js.map +1 -1
  97. package/dist/solana/exec.js +1 -5
  98. package/dist/solana/exec.js.map +1 -1
  99. package/dist/solana/index.d.ts +33 -58
  100. package/dist/solana/index.d.ts.map +1 -1
  101. package/dist/solana/index.js +126 -73
  102. package/dist/solana/index.js.map +1 -1
  103. package/dist/solana/logs.js +2 -2
  104. package/dist/solana/logs.js.map +1 -1
  105. package/dist/solana/offchain.js +3 -3
  106. package/dist/solana/offchain.js.map +1 -1
  107. package/dist/solana/send.js +1 -1
  108. package/dist/solana/send.js.map +1 -1
  109. package/dist/solana/utils.js +1 -1
  110. package/dist/solana/utils.js.map +1 -1
  111. package/dist/sui/discovery.d.ts.map +1 -1
  112. package/dist/sui/discovery.js +2 -5
  113. package/dist/sui/discovery.js.map +1 -1
  114. package/dist/sui/events.d.ts.map +1 -1
  115. package/dist/sui/events.js +1 -4
  116. package/dist/sui/events.js.map +1 -1
  117. package/dist/sui/index.d.ts +29 -35
  118. package/dist/sui/index.d.ts.map +1 -1
  119. package/dist/sui/index.js +71 -45
  120. package/dist/sui/index.js.map +1 -1
  121. package/dist/sui/manuallyExec/encoder.d.ts.map +1 -1
  122. package/dist/sui/manuallyExec/encoder.js +1 -3
  123. package/dist/sui/manuallyExec/encoder.js.map +1 -1
  124. package/dist/sui/manuallyExec/index.d.ts.map +1 -1
  125. package/dist/sui/manuallyExec/index.js +2 -2
  126. package/dist/sui/manuallyExec/index.js.map +1 -1
  127. package/dist/sui/objects.d.ts.map +1 -1
  128. package/dist/sui/objects.js +6 -5
  129. package/dist/sui/objects.js.map +1 -1
  130. package/dist/ton/exec.d.ts +2 -2
  131. package/dist/ton/exec.d.ts.map +1 -1
  132. package/dist/ton/exec.js.map +1 -1
  133. package/dist/ton/hasher.d.ts.map +1 -1
  134. package/dist/ton/hasher.js +6 -5
  135. package/dist/ton/hasher.js.map +1 -1
  136. package/dist/ton/index.d.ts +54 -49
  137. package/dist/ton/index.d.ts.map +1 -1
  138. package/dist/ton/index.js +332 -236
  139. package/dist/ton/index.js.map +1 -1
  140. package/dist/ton/logs.d.ts +11 -22
  141. package/dist/ton/logs.d.ts.map +1 -1
  142. package/dist/ton/logs.js +95 -118
  143. package/dist/ton/logs.js.map +1 -1
  144. package/dist/ton/types.d.ts +9 -9
  145. package/dist/ton/types.d.ts.map +1 -1
  146. package/dist/ton/types.js +5 -9
  147. package/dist/ton/types.js.map +1 -1
  148. package/dist/ton/utils.d.ts +8 -27
  149. package/dist/ton/utils.d.ts.map +1 -1
  150. package/dist/ton/utils.js +31 -111
  151. package/dist/ton/utils.js.map +1 -1
  152. package/dist/types.d.ts +44 -2
  153. package/dist/types.d.ts.map +1 -1
  154. package/dist/types.js +30 -0
  155. package/dist/types.js.map +1 -1
  156. package/dist/utils.d.ts +7 -5
  157. package/dist/utils.d.ts.map +1 -1
  158. package/dist/utils.js +77 -52
  159. package/dist/utils.js.map +1 -1
  160. package/dist/viem.d.ts +6 -0
  161. package/dist/viem.d.ts.map +1 -0
  162. package/dist/viem.js +6 -0
  163. package/dist/viem.js.map +1 -0
  164. package/package.json +30 -9
  165. package/src/api/index.ts +167 -0
  166. package/src/api/types.ts +39 -0
  167. package/src/aptos/index.ts +71 -64
  168. package/src/aptos/logs.ts +10 -10
  169. package/src/aptos/send.ts +1 -1
  170. package/src/aptos/token.ts +1 -1
  171. package/src/chain.ts +299 -98
  172. package/src/commits.ts +5 -5
  173. package/src/errors/CCIPError.ts +5 -2
  174. package/src/errors/codes.ts +8 -1
  175. package/src/errors/index.ts +15 -2
  176. package/src/errors/recovery.ts +9 -1
  177. package/src/errors/specialized.ts +61 -6
  178. package/src/evm/errors.ts +2 -2
  179. package/src/evm/index.ts +127 -124
  180. package/src/evm/logs.ts +4 -4
  181. package/src/evm/offchain.ts +5 -4
  182. package/src/evm/viem/client-adapter.ts +124 -0
  183. package/src/evm/viem/index.ts +29 -0
  184. package/src/evm/viem/types.ts +14 -0
  185. package/src/evm/viem/wallet-adapter.ts +233 -0
  186. package/src/execution.ts +9 -9
  187. package/src/explorer.ts +90 -0
  188. package/src/gas.ts +2 -2
  189. package/src/hasher/merklemulti.ts +7 -7
  190. package/src/http-status.ts +31 -0
  191. package/src/index.ts +19 -2
  192. package/src/offchain.ts +1 -1
  193. package/src/requests.ts +22 -13
  194. package/src/selectors.ts +20 -0
  195. package/src/solana/cleanup.ts +4 -4
  196. package/src/solana/exec.ts +13 -18
  197. package/src/solana/index.ts +185 -118
  198. package/src/solana/logs.ts +8 -8
  199. package/src/solana/offchain.ts +3 -3
  200. package/src/solana/send.ts +20 -20
  201. package/src/solana/utils.ts +4 -4
  202. package/src/sui/discovery.ts +4 -10
  203. package/src/sui/events.ts +4 -8
  204. package/src/sui/index.ts +94 -73
  205. package/src/sui/manuallyExec/encoder.ts +2 -4
  206. package/src/sui/manuallyExec/index.ts +3 -3
  207. package/src/sui/objects.ts +17 -15
  208. package/src/ton/exec.ts +2 -5
  209. package/src/ton/hasher.ts +7 -5
  210. package/src/ton/index.ts +394 -316
  211. package/src/ton/logs.ts +122 -143
  212. package/src/ton/types.ts +17 -21
  213. package/src/ton/utils.ts +39 -145
  214. package/src/types.ts +47 -2
  215. package/src/utils.ts +98 -66
  216. package/src/viem.ts +5 -0
  217. package/tsconfig.json +3 -2
  218. package/dist/ton/bindings/offramp.d.ts +0 -48
  219. package/dist/ton/bindings/offramp.d.ts.map +0 -1
  220. package/dist/ton/bindings/offramp.js +0 -63
  221. package/dist/ton/bindings/offramp.js.map +0 -1
  222. package/dist/ton/bindings/onramp.d.ts +0 -40
  223. package/dist/ton/bindings/onramp.d.ts.map +0 -1
  224. package/dist/ton/bindings/onramp.js +0 -51
  225. package/dist/ton/bindings/onramp.js.map +0 -1
  226. package/dist/ton/bindings/router.d.ts +0 -47
  227. package/dist/ton/bindings/router.d.ts.map +0 -1
  228. package/dist/ton/bindings/router.js +0 -51
  229. package/dist/ton/bindings/router.js.map +0 -1
  230. package/src/ton/bindings/offramp.ts +0 -96
  231. package/src/ton/bindings/onramp.ts +0 -72
  232. package/src/ton/bindings/router.ts +0 -65
package/src/ton/exec.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { beginCell } from '@ton/core'
1
+ import { type Cell, beginCell } from '@ton/core'
2
2
 
3
3
  import type { ExecutionReport } from '../types.ts'
4
4
  import {
@@ -19,10 +19,7 @@ export function generateUnsignedExecuteReport(
19
19
  offRamp: string,
20
20
  execReport: ExecutionReport<CCIPMessage_V1_6_TON>,
21
21
  opts?: { gasLimit?: number },
22
- ): {
23
- to: string
24
- body: ReturnType<typeof beginCell>['endCell'] extends () => infer R ? R : never
25
- } {
22
+ ): { to: string; body: Cell } {
26
23
  // Serialize the execution report
27
24
  const serializedReport = serializeExecutionReport(execReport)
28
25
 
package/src/ton/hasher.ts CHANGED
@@ -1,3 +1,5 @@
1
+ import { Buffer } from 'buffer'
2
+
1
3
  import { type Cell, Address, beginCell } from '@ton/core'
2
4
  import { sha256, toBigInt } from 'ethers'
3
5
 
@@ -8,8 +10,8 @@ import {
8
10
  import { decodeExtraArgs } from '../extra-args.ts'
9
11
  import type { LeafHasher } from '../hasher/common.ts'
10
12
  import { type CCIPMessage, type CCIPMessage_V1_6, CCIPVersion } from '../types.ts'
11
- import { networkInfo } from '../utils.ts'
12
- import { hexToBuffer, tryParseCell } from './utils.ts'
13
+ import { bytesToBuffer, networkInfo } from '../utils.ts'
14
+ import { tryParseCell } from './utils.ts'
13
15
 
14
16
  // TON uses 256 bits (32 bytes) of zeros as leaf domain separator
15
17
  const TON_LEAF_DOMAIN_SEPARATOR = 0n
@@ -62,7 +64,7 @@ export const hashTONMetadata = (
62
64
  ): string => {
63
65
  // Domain separator for TON messages
64
66
  const versionHash = BigInt(sha256(Buffer.from('Any2TVMMessageHashV1')))
65
- const onRampBytes = hexToBuffer(onRamp)
67
+ const onRampBytes = bytesToBuffer(onRamp)
66
68
 
67
69
  // Build metadata cell
68
70
  const metadataCell = beginCell()
@@ -114,7 +116,7 @@ function hashV16TONMessage(message: CCIPMessage_V1_6, metadataHash: string): str
114
116
  .endCell()
115
117
 
116
118
  // Build sender cell with address bytes
117
- const senderBytes = hexToBuffer(message.sender)
119
+ const senderBytes = bytesToBuffer(message.sender)
118
120
  const senderCell = beginCell()
119
121
  .storeUint(BigInt(senderBytes.length), 8)
120
122
  .storeBuffer(senderBytes)
@@ -155,7 +157,7 @@ function buildTokenAmountsCell(tokenAmounts: readonly TokenAmount[]): Cell {
155
157
 
156
158
  // Process each token transfer
157
159
  for (const ta of tokenAmounts) {
158
- const sourcePoolBytes = hexToBuffer(ta.sourcePoolAddress)
160
+ const sourcePoolBytes = bytesToBuffer(ta.sourcePoolAddress)
159
161
 
160
162
  // Extract amount
161
163
  const amountSource =