@chainlink/ccip-sdk 0.95.0 → 0.97.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.
- package/README.md +2 -2
- package/dist/all-chains.d.ts +23 -0
- package/dist/all-chains.d.ts.map +1 -0
- package/dist/all-chains.js +24 -0
- package/dist/all-chains.js.map +1 -0
- package/dist/api/index.d.ts +31 -19
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +46 -25
- package/dist/api/index.js.map +1 -1
- package/dist/api/types.d.ts +24 -30
- package/dist/api/types.d.ts.map +1 -1
- package/dist/aptos/exec.d.ts +2 -2
- package/dist/aptos/exec.d.ts.map +1 -1
- package/dist/aptos/exec.js.map +1 -1
- package/dist/aptos/hasher.d.ts.map +1 -1
- package/dist/aptos/hasher.js +1 -1
- package/dist/aptos/hasher.js.map +1 -1
- package/dist/aptos/index.d.ts +43 -15
- package/dist/aptos/index.d.ts.map +1 -1
- package/dist/aptos/index.js +112 -105
- package/dist/aptos/index.js.map +1 -1
- package/dist/aptos/types.d.ts +2 -19
- package/dist/aptos/types.d.ts.map +1 -1
- package/dist/aptos/types.js +0 -11
- package/dist/aptos/types.js.map +1 -1
- package/dist/chain.d.ts +734 -174
- package/dist/chain.d.ts.map +1 -1
- package/dist/chain.js +216 -31
- package/dist/chain.js.map +1 -1
- package/dist/commits.d.ts +4 -6
- package/dist/commits.d.ts.map +1 -1
- package/dist/commits.js +4 -4
- package/dist/commits.js.map +1 -1
- package/dist/errors/CCIPError.d.ts +33 -4
- package/dist/errors/CCIPError.d.ts.map +1 -1
- package/dist/errors/CCIPError.js +33 -4
- package/dist/errors/CCIPError.js.map +1 -1
- package/dist/errors/codes.d.ts +5 -0
- package/dist/errors/codes.d.ts.map +1 -1
- package/dist/errors/codes.js +5 -1
- package/dist/errors/codes.js.map +1 -1
- package/dist/errors/index.d.ts +2 -2
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +2 -2
- package/dist/errors/index.js.map +1 -1
- package/dist/errors/recovery.d.ts.map +1 -1
- package/dist/errors/recovery.js +6 -1
- package/dist/errors/recovery.js.map +1 -1
- package/dist/errors/specialized.d.ts +1702 -121
- package/dist/errors/specialized.d.ts.map +1 -1
- package/dist/errors/specialized.js +1729 -125
- package/dist/errors/specialized.js.map +1 -1
- package/dist/errors/utils.d.ts.map +1 -1
- package/dist/errors/utils.js +0 -1
- package/dist/errors/utils.js.map +1 -1
- package/dist/evm/abi/OffRamp_2_0.d.ts +764 -0
- package/dist/evm/abi/OffRamp_2_0.d.ts.map +1 -0
- package/dist/evm/abi/OffRamp_2_0.js +744 -0
- package/dist/evm/abi/OffRamp_2_0.js.map +1 -0
- package/dist/evm/abi/OnRamp_2_0.d.ts +925 -0
- package/dist/evm/abi/OnRamp_2_0.d.ts.map +1 -0
- package/dist/evm/abi/OnRamp_2_0.js +992 -0
- package/dist/evm/abi/OnRamp_2_0.js.map +1 -0
- package/dist/evm/const.d.ts +12 -2
- package/dist/evm/const.d.ts.map +1 -1
- package/dist/evm/const.js +8 -2
- package/dist/evm/const.js.map +1 -1
- package/dist/evm/errors.d.ts.map +1 -1
- package/dist/evm/errors.js +7 -2
- package/dist/evm/errors.js.map +1 -1
- package/dist/evm/extra-args.d.ts +25 -0
- package/dist/evm/extra-args.d.ts.map +1 -0
- package/dist/evm/extra-args.js +309 -0
- package/dist/evm/extra-args.js.map +1 -0
- package/dist/evm/gas.d.ts.map +1 -1
- package/dist/evm/gas.js +7 -12
- package/dist/evm/gas.js.map +1 -1
- package/dist/evm/hasher.d.ts.map +1 -1
- package/dist/evm/hasher.js +23 -13
- package/dist/evm/hasher.js.map +1 -1
- package/dist/evm/index.d.ts +140 -35
- package/dist/evm/index.d.ts.map +1 -1
- package/dist/evm/index.js +306 -226
- package/dist/evm/index.js.map +1 -1
- package/dist/evm/messages.d.ts +59 -5
- package/dist/evm/messages.d.ts.map +1 -1
- package/dist/evm/messages.js +210 -0
- package/dist/evm/messages.js.map +1 -1
- package/dist/evm/offchain.js.map +1 -1
- package/dist/evm/types.d.ts +7 -2
- package/dist/evm/types.d.ts.map +1 -1
- package/dist/evm/types.js +22 -1
- package/dist/evm/types.js.map +1 -1
- package/dist/execution.d.ts +62 -22
- package/dist/execution.d.ts.map +1 -1
- package/dist/execution.js +102 -51
- package/dist/execution.js.map +1 -1
- package/dist/extra-args.d.ts +113 -4
- package/dist/extra-args.d.ts.map +1 -1
- package/dist/extra-args.js +38 -3
- package/dist/extra-args.js.map +1 -1
- package/dist/gas.d.ts +31 -5
- package/dist/gas.d.ts.map +1 -1
- package/dist/gas.js +43 -9
- package/dist/gas.js.map +1 -1
- package/dist/index.d.ts +11 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -8
- package/dist/index.js.map +1 -1
- package/dist/requests.d.ts +101 -22
- package/dist/requests.d.ts.map +1 -1
- package/dist/requests.js +115 -24
- package/dist/requests.js.map +1 -1
- package/dist/selectors.d.ts.map +1 -1
- package/dist/selectors.js +24 -0
- package/dist/selectors.js.map +1 -1
- package/dist/shared/bcs-codecs.d.ts +61 -0
- package/dist/shared/bcs-codecs.d.ts.map +1 -0
- package/dist/shared/bcs-codecs.js +102 -0
- package/dist/shared/bcs-codecs.js.map +1 -0
- package/dist/shared/constants.d.ts +3 -0
- package/dist/shared/constants.d.ts.map +1 -0
- package/dist/shared/constants.js +3 -0
- package/dist/shared/constants.js.map +1 -0
- package/dist/solana/exec.d.ts +2 -2
- package/dist/solana/exec.d.ts.map +1 -1
- package/dist/solana/exec.js.map +1 -1
- package/dist/solana/index.d.ts +148 -30
- package/dist/solana/index.d.ts.map +1 -1
- package/dist/solana/index.js +137 -44
- package/dist/solana/index.js.map +1 -1
- package/dist/sui/hasher.d.ts.map +1 -1
- package/dist/sui/hasher.js +1 -1
- package/dist/sui/hasher.js.map +1 -1
- package/dist/sui/index.d.ts +49 -19
- package/dist/sui/index.d.ts.map +1 -1
- package/dist/sui/index.js +76 -43
- package/dist/sui/index.js.map +1 -1
- package/dist/sui/manuallyExec/encoder.d.ts +2 -2
- package/dist/sui/manuallyExec/encoder.d.ts.map +1 -1
- package/dist/sui/manuallyExec/encoder.js.map +1 -1
- package/dist/sui/manuallyExec/index.d.ts +2 -2
- package/dist/sui/manuallyExec/index.d.ts.map +1 -1
- package/dist/ton/exec.d.ts +2 -2
- package/dist/ton/exec.d.ts.map +1 -1
- package/dist/ton/exec.js.map +1 -1
- package/dist/ton/index.d.ts +66 -27
- package/dist/ton/index.d.ts.map +1 -1
- package/dist/ton/index.js +172 -47
- package/dist/ton/index.js.map +1 -1
- package/dist/ton/send.d.ts +52 -0
- package/dist/ton/send.d.ts.map +1 -0
- package/dist/ton/send.js +166 -0
- package/dist/ton/send.js.map +1 -0
- package/dist/ton/types.d.ts +2 -2
- package/dist/ton/types.d.ts.map +1 -1
- package/dist/ton/types.js.map +1 -1
- package/dist/types.d.ts +148 -12
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +6 -1
- package/dist/types.js.map +1 -1
- package/dist/utils.d.ts +79 -4
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +92 -7
- package/dist/utils.js.map +1 -1
- package/package.json +16 -11
- package/src/all-chains.ts +26 -0
- package/src/api/index.ts +58 -34
- package/src/api/types.ts +24 -31
- package/src/aptos/exec.ts +2 -2
- package/src/aptos/hasher.ts +1 -1
- package/src/aptos/index.ts +127 -129
- package/src/aptos/types.ts +2 -15
- package/src/chain.ts +837 -191
- package/src/commits.ts +9 -9
- package/src/errors/CCIPError.ts +33 -4
- package/src/errors/codes.ts +5 -1
- package/src/errors/index.ts +2 -1
- package/src/errors/recovery.ts +9 -1
- package/src/errors/specialized.ts +1745 -132
- package/src/errors/utils.ts +0 -1
- package/src/evm/abi/OffRamp_2_0.ts +743 -0
- package/src/evm/abi/OnRamp_2_0.ts +991 -0
- package/src/evm/const.ts +10 -3
- package/src/evm/errors.ts +6 -2
- package/src/evm/extra-args.ts +360 -0
- package/src/evm/gas.ts +14 -13
- package/src/evm/hasher.ts +30 -18
- package/src/evm/index.ts +376 -281
- package/src/evm/messages.ts +323 -11
- package/src/evm/offchain.ts +2 -2
- package/src/evm/types.ts +20 -2
- package/src/execution.ts +126 -71
- package/src/extra-args.ts +118 -4
- package/src/gas.ts +44 -11
- package/src/index.ts +14 -11
- package/src/requests.ts +128 -24
- package/src/selectors.ts +24 -0
- package/src/shared/bcs-codecs.ts +132 -0
- package/src/shared/constants.ts +2 -0
- package/src/solana/exec.ts +4 -4
- package/src/solana/index.ts +170 -82
- package/src/sui/hasher.ts +1 -1
- package/src/sui/index.ts +88 -56
- package/src/sui/manuallyExec/encoder.ts +2 -2
- package/src/sui/manuallyExec/index.ts +2 -2
- package/src/ton/exec.ts +2 -2
- package/src/ton/index.ts +220 -58
- package/src/ton/send.ts +222 -0
- package/src/ton/types.ts +2 -2
- package/src/types.ts +173 -30
- package/src/utils.ts +91 -7
- package/dist/aptos/utils.d.ts +0 -12
- package/dist/aptos/utils.d.ts.map +0 -1
- package/dist/aptos/utils.js +0 -15
- package/dist/aptos/utils.js.map +0 -1
- package/src/aptos/utils.ts +0 -24
package/src/utils.ts
CHANGED
|
@@ -38,7 +38,8 @@ import { type NetworkInfo, type WithLogger, ChainFamily } from './types.ts'
|
|
|
38
38
|
* @param timestamp - target timestamp
|
|
39
39
|
* @param precision - returned blockNumber should be within this many blocks before timestamp
|
|
40
40
|
* @returns blockNumber of a block at provider which is close but before target timestamp
|
|
41
|
-
|
|
41
|
+
* @throws {@link CCIPBlockBeforeTimestampNotFoundError} if no block exists before the given timestamp
|
|
42
|
+
*/
|
|
42
43
|
export async function getSomeBlockNumberBefore(
|
|
43
44
|
getBlockTimestamp: (blockNumber: number) => Promise<number>,
|
|
44
45
|
recentBlockNumber: number,
|
|
@@ -106,9 +107,9 @@ export async function getSomeBlockNumberBefore(
|
|
|
106
107
|
}
|
|
107
108
|
|
|
108
109
|
/**
|
|
109
|
-
*
|
|
110
|
+
* Converts a chain ID to complete NetworkInfo.
|
|
111
|
+
* Memoized to return the same object reference for a given chainId.
|
|
110
112
|
*/
|
|
111
|
-
// memoized so we always output the same object for a given chainId
|
|
112
113
|
const networkInfoFromChainId = memoize((chainId: NetworkInfo['chainId']): NetworkInfo => {
|
|
113
114
|
const sel = SELECTORS[chainId]
|
|
114
115
|
if (!sel?.name) throw new CCIPChainNotFoundError(chainId)
|
|
@@ -129,6 +130,24 @@ const networkInfoFromChainId = memoize((chainId: NetworkInfo['chainId']): Networ
|
|
|
129
130
|
* - Chain ID as number, bigint or string (EVM: "1", Aptos: "aptos:1", Solana: genesisHash)
|
|
130
131
|
* - Chain name as string ("ethereum-mainnet")
|
|
131
132
|
* @returns Complete NetworkInfo object
|
|
133
|
+
* @throws {@link CCIPChainNotFoundError} if chain is not found
|
|
134
|
+
*
|
|
135
|
+
* @example
|
|
136
|
+
* ```typescript
|
|
137
|
+
* import { networkInfo } from '@chainlink/ccip-sdk'
|
|
138
|
+
*
|
|
139
|
+
* // By chain name
|
|
140
|
+
* const sepolia = networkInfo('ethereum-testnet-sepolia')
|
|
141
|
+
* console.log('Selector:', sepolia.chainSelector)
|
|
142
|
+
*
|
|
143
|
+
* // By chain selector
|
|
144
|
+
* const fuji = networkInfo(14767482510784806043n)
|
|
145
|
+
* console.log('Name:', fuji.name) // 'avalanche-testnet-fuji'
|
|
146
|
+
*
|
|
147
|
+
* // By chain ID
|
|
148
|
+
* const mainnet = networkInfo(1)
|
|
149
|
+
* console.log('Family:', mainnet.family) // 'EVM'
|
|
150
|
+
* ```
|
|
132
151
|
*/
|
|
133
152
|
export const networkInfo = memoize(function networkInfo_(
|
|
134
153
|
selectorOrIdOrName: bigint | number | string,
|
|
@@ -204,6 +223,15 @@ export function* blockRangeGenerator(
|
|
|
204
223
|
* @param _key - Property key (unused).
|
|
205
224
|
* @param value - Value to transform.
|
|
206
225
|
* @returns String representation if BigInt, otherwise unchanged value.
|
|
226
|
+
* @example
|
|
227
|
+
* ```typescript
|
|
228
|
+
* import { bigIntReplacer } from '@chainlink/ccip-sdk'
|
|
229
|
+
*
|
|
230
|
+
* const data = { amount: 1000000000000000000n }
|
|
231
|
+
* const json = JSON.stringify(data, bigIntReplacer)
|
|
232
|
+
* console.log(json) // '{"amount":"1000000000000000000"}'
|
|
233
|
+
* ```
|
|
234
|
+
* @see {@link bigIntReviver} - Revive BigInt values when parsing
|
|
207
235
|
*/
|
|
208
236
|
export function bigIntReplacer(_key: string, value: unknown): unknown {
|
|
209
237
|
if (typeof value === 'bigint') {
|
|
@@ -217,6 +245,15 @@ export function bigIntReplacer(_key: string, value: unknown): unknown {
|
|
|
217
245
|
* @param _key - Property key (unused).
|
|
218
246
|
* @param value - Value to transform.
|
|
219
247
|
* @returns BigInt if numeric string, otherwise unchanged value.
|
|
248
|
+
* @example
|
|
249
|
+
* ```typescript
|
|
250
|
+
* import { bigIntReviver } from '@chainlink/ccip-sdk'
|
|
251
|
+
*
|
|
252
|
+
* const json = '{"amount":"1000000000000000000"}'
|
|
253
|
+
* const data = JSON.parse(json, bigIntReviver)
|
|
254
|
+
* console.log(typeof data.amount) // 'bigint'
|
|
255
|
+
* ```
|
|
256
|
+
* @see {@link bigIntReplacer} - Stringify BigInt values
|
|
220
257
|
*/
|
|
221
258
|
export function bigIntReviver(_key: string, value: unknown): unknown {
|
|
222
259
|
if (typeof value === 'string' && /^\d+$/.test(value)) {
|
|
@@ -236,8 +273,26 @@ export function parseJson<T = unknown>(text: string): T {
|
|
|
236
273
|
}
|
|
237
274
|
|
|
238
275
|
/**
|
|
239
|
-
* Decode address from a 32-byte hex string
|
|
240
|
-
|
|
276
|
+
* Decode address from a 32-byte hex string.
|
|
277
|
+
*
|
|
278
|
+
* @param address - Address bytes to decode (hex string or Uint8Array)
|
|
279
|
+
* @param family - Chain family for address format (defaults to EVM)
|
|
280
|
+
* @returns Decoded address string
|
|
281
|
+
* @throws {@link CCIPChainFamilyUnsupportedError} if chain family is not supported
|
|
282
|
+
*
|
|
283
|
+
* @example
|
|
284
|
+
* ```typescript
|
|
285
|
+
* import { decodeAddress, ChainFamily } from '@chainlink/ccip-sdk'
|
|
286
|
+
*
|
|
287
|
+
* // Decode EVM address from 32-byte hex
|
|
288
|
+
* const evmAddr = decodeAddress('0x000000000000000000000000abc123...', ChainFamily.EVM)
|
|
289
|
+
* console.log(evmAddr) // '0xABC123...'
|
|
290
|
+
*
|
|
291
|
+
* // Decode Solana address
|
|
292
|
+
* const solAddr = decodeAddress(bytes, ChainFamily.Solana)
|
|
293
|
+
* console.log(solAddr) // Base58 encoded address
|
|
294
|
+
* ```
|
|
295
|
+
*/
|
|
241
296
|
export function decodeAddress(address: BytesLike, family: ChainFamily = ChainFamily.EVM): string {
|
|
242
297
|
const chain = supportedChains[family]
|
|
243
298
|
if (!chain) throw new CCIPChainFamilyUnsupportedError(family)
|
|
@@ -246,7 +301,11 @@ export function decodeAddress(address: BytesLike, family: ChainFamily = ChainFam
|
|
|
246
301
|
|
|
247
302
|
/**
|
|
248
303
|
* Validate a value is a txHash string in some supported chain family
|
|
249
|
-
|
|
304
|
+
* @param txHash - Value to check
|
|
305
|
+
* @param family - Optional chain family to validate against
|
|
306
|
+
* @returns true if value is a valid transaction hash
|
|
307
|
+
* @throws {@link CCIPChainFamilyUnsupportedError} if specified chain family is not supported
|
|
308
|
+
*/
|
|
250
309
|
export function isSupportedTxHash(txHash: unknown, family?: ChainFamily): txHash is string {
|
|
251
310
|
let chains: ChainStatic[]
|
|
252
311
|
if (!family) chains = Object.values(supportedChains)
|
|
@@ -309,6 +368,21 @@ export function isBase64(data: unknown): data is string {
|
|
|
309
368
|
* Converts various data formats to Uint8Array.
|
|
310
369
|
* @param data - Bytes, number array, or Base64 string.
|
|
311
370
|
* @returns Uint8Array representation.
|
|
371
|
+
* @throws {@link CCIPDataFormatUnsupportedError} if data format is not recognized
|
|
372
|
+
*
|
|
373
|
+
* @example
|
|
374
|
+
* ```typescript
|
|
375
|
+
* import { getDataBytes } from '@chainlink/ccip-sdk'
|
|
376
|
+
*
|
|
377
|
+
* // From hex string
|
|
378
|
+
* const bytes1 = getDataBytes('0x1234abcd')
|
|
379
|
+
*
|
|
380
|
+
* // From number array
|
|
381
|
+
* const bytes2 = getDataBytes([0x12, 0x34, 0xab, 0xcd])
|
|
382
|
+
*
|
|
383
|
+
* // From Base64
|
|
384
|
+
* const bytes3 = getDataBytes('EjSrzQ==')
|
|
385
|
+
* ```
|
|
312
386
|
*/
|
|
313
387
|
export function getDataBytes(data: BytesLike | readonly number[]): Uint8Array {
|
|
314
388
|
if (Array.isArray(data)) return new Uint8Array(data)
|
|
@@ -358,6 +432,14 @@ export function getAddressBytes(address: BytesLike | readonly number[]): Uint8Ar
|
|
|
358
432
|
? '0x' + address
|
|
359
433
|
: address,
|
|
360
434
|
)
|
|
435
|
+
} else if (typeof address === 'string' && /^-?\d+:[0-9a-f]{64}$/i.test(address)) {
|
|
436
|
+
// TON raw format: "workchain:hash" → 36-byte CCIP format (4-byte BE workchain + 32-byte hash)
|
|
437
|
+
const [workchain, hash] = address.split(':')
|
|
438
|
+
const buf = new Uint8Array(36)
|
|
439
|
+
const view = new DataView(buf.buffer)
|
|
440
|
+
view.setInt32(0, parseInt(workchain!, 10), false) // big-endian
|
|
441
|
+
buf.set(getBytes('0x' + hash), 4)
|
|
442
|
+
bytes = buf
|
|
361
443
|
} else {
|
|
362
444
|
try {
|
|
363
445
|
const bytes_ = bs58.decode(address as string)
|
|
@@ -409,7 +491,8 @@ export function convertKeysToCamelCase(
|
|
|
409
491
|
* @param ms - Duration in milliseconds.
|
|
410
492
|
* @returns Promise that resolves after the specified duration.
|
|
411
493
|
*/
|
|
412
|
-
|
|
494
|
+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- unref is Node.js-only; browsers return number
|
|
495
|
+
export const sleep = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms).unref?.())
|
|
413
496
|
|
|
414
497
|
/**
|
|
415
498
|
* Configuration for the withRetry utility.
|
|
@@ -518,6 +601,7 @@ export async function withRetry<T>(
|
|
|
518
601
|
* Parses a typeAndVersion string into its components.
|
|
519
602
|
* @param typeAndVersion - String in format "TypeName vX.Y.Z".
|
|
520
603
|
* @returns Tuple of [type, version, original, suffix?].
|
|
604
|
+
* @throws {@link CCIPTypeVersionInvalidError} if string format is invalid
|
|
521
605
|
*/
|
|
522
606
|
export function parseTypeAndVersion(
|
|
523
607
|
typeAndVersion: string,
|
package/dist/aptos/utils.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { type BigNumberish, type BytesLike } from 'ethers';
|
|
2
|
-
/**
|
|
3
|
-
* Encodes a numeric value as a 32-byte hex string.
|
|
4
|
-
* @param value - Numeric value to encode.
|
|
5
|
-
* @returns 32-byte hex string representation of the value.
|
|
6
|
-
*/
|
|
7
|
-
export declare const encodeNumber: (value: BigNumberish) => string;
|
|
8
|
-
/**
|
|
9
|
-
* Encodes dynamic bytes without the struct offset prefix.
|
|
10
|
-
*/
|
|
11
|
-
export declare const encodeRawBytes: (value: BytesLike) => string;
|
|
12
|
-
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/aptos/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,SAAS,EAKf,MAAM,QAAQ,CAAA;AAEf;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,YAAY,KAAG,MAA4B,CAAA;AAE/E;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,SAAS,KAAG,MAI9C,CAAA"}
|
package/dist/aptos/utils.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { concat, dataLength, toBeHex, zeroPadBytes, } from 'ethers';
|
|
2
|
-
/**
|
|
3
|
-
* Encodes a numeric value as a 32-byte hex string.
|
|
4
|
-
* @param value - Numeric value to encode.
|
|
5
|
-
* @returns 32-byte hex string representation of the value.
|
|
6
|
-
*/
|
|
7
|
-
export const encodeNumber = (value) => toBeHex(value, 32);
|
|
8
|
-
/**
|
|
9
|
-
* Encodes dynamic bytes without the struct offset prefix.
|
|
10
|
-
*/
|
|
11
|
-
export const encodeRawBytes = (value) => concat([
|
|
12
|
-
encodeNumber(dataLength(value)),
|
|
13
|
-
zeroPadBytes(value, Math.ceil(dataLength(value) / 32) * 32),
|
|
14
|
-
]);
|
|
15
|
-
//# sourceMappingURL=utils.js.map
|
package/dist/aptos/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/aptos/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,MAAM,EACN,UAAU,EACV,OAAO,EACP,YAAY,GACb,MAAM,QAAQ,CAAA;AAEf;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAmB,EAAU,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAgB,EAAU,EAAE,CACzD,MAAM,CAAC;IACL,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/B,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;CAC5D,CAAC,CAAA"}
|
package/src/aptos/utils.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
type BigNumberish,
|
|
3
|
-
type BytesLike,
|
|
4
|
-
concat,
|
|
5
|
-
dataLength,
|
|
6
|
-
toBeHex,
|
|
7
|
-
zeroPadBytes,
|
|
8
|
-
} from 'ethers'
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Encodes a numeric value as a 32-byte hex string.
|
|
12
|
-
* @param value - Numeric value to encode.
|
|
13
|
-
* @returns 32-byte hex string representation of the value.
|
|
14
|
-
*/
|
|
15
|
-
export const encodeNumber = (value: BigNumberish): string => toBeHex(value, 32)
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Encodes dynamic bytes without the struct offset prefix.
|
|
19
|
-
*/
|
|
20
|
-
export const encodeRawBytes = (value: BytesLike): string =>
|
|
21
|
-
concat([
|
|
22
|
-
encodeNumber(dataLength(value)),
|
|
23
|
-
zeroPadBytes(value, Math.ceil(dataLength(value) / 32) * 32),
|
|
24
|
-
])
|