ox 0.9.4 → 0.9.6
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/Abi/package.json +6 -0
- package/AbiConstructor/package.json +6 -0
- package/AbiError/package.json +6 -0
- package/AbiEvent/package.json +6 -0
- package/AbiFunction/package.json +6 -0
- package/AbiItem/package.json +6 -0
- package/AbiParameters/package.json +6 -0
- package/AccessList/package.json +6 -0
- package/AccountProof/package.json +6 -0
- package/Address/package.json +6 -0
- package/AesGcm/package.json +6 -0
- package/Authorization/package.json +6 -0
- package/Base58/package.json +6 -0
- package/Base64/package.json +6 -0
- package/BinaryStateTree/package.json +6 -0
- package/Blobs/package.json +6 -0
- package/Block/package.json +6 -0
- package/BlockOverrides/package.json +6 -0
- package/Bloom/package.json +6 -0
- package/Bls/package.json +6 -0
- package/BlsPoint/package.json +6 -0
- package/Bytes/package.json +6 -0
- package/CHANGELOG.md +28 -0
- package/Caches/package.json +6 -0
- package/ContractAddress/package.json +6 -0
- package/Ed25519/package.json +6 -0
- package/Ens/package.json +6 -0
- package/Errors/package.json +6 -0
- package/Fee/package.json +6 -0
- package/Filter/package.json +6 -0
- package/Hash/package.json +6 -0
- package/HdKey/package.json +6 -0
- package/Hex/package.json +6 -0
- package/Json/package.json +6 -0
- package/Keystore/package.json +6 -0
- package/Kzg/package.json +6 -0
- package/Log/package.json +6 -0
- package/Mnemonic/package.json +6 -0
- package/P256/package.json +6 -0
- package/PersonalMessage/package.json +6 -0
- package/Provider/package.json +6 -0
- package/PublicKey/package.json +6 -0
- package/Rlp/package.json +6 -0
- package/RpcRequest/package.json +6 -0
- package/RpcResponse/package.json +6 -0
- package/RpcSchema/package.json +6 -0
- package/RpcTransport/package.json +6 -0
- package/Secp256k1/package.json +6 -0
- package/Signature/package.json +6 -0
- package/Siwe/package.json +6 -0
- package/Solidity/package.json +6 -0
- package/StateOverrides/package.json +6 -0
- package/Transaction/package.json +6 -0
- package/TransactionEnvelope/package.json +6 -0
- package/TransactionEnvelopeEip1559/package.json +6 -0
- package/TransactionEnvelopeEip2930/package.json +6 -0
- package/TransactionEnvelopeEip4844/package.json +6 -0
- package/TransactionEnvelopeEip7702/package.json +6 -0
- package/TransactionEnvelopeLegacy/package.json +6 -0
- package/TransactionReceipt/package.json +6 -0
- package/TransactionRequest/package.json +6 -0
- package/TypedData/package.json +6 -0
- package/ValidatorData/package.json +6 -0
- package/Value/package.json +6 -0
- package/WebAuthnP256/package.json +6 -0
- package/WebCryptoP256/package.json +6 -0
- package/Withdrawal/package.json +6 -0
- package/X25519/package.json +6 -0
- package/_cjs/core/AbiConstructor.js +16 -2
- package/_cjs/core/AbiConstructor.js.map +1 -1
- package/_cjs/core/AbiError.js +17 -2
- package/_cjs/core/AbiError.js.map +1 -1
- package/_cjs/core/AbiEvent.js +17 -2
- package/_cjs/core/AbiEvent.js.map +1 -1
- package/_cjs/core/AbiFunction.js +35 -8
- package/_cjs/core/AbiFunction.js.map +1 -1
- package/_cjs/core/AbiItem.js +24 -3
- package/_cjs/core/AbiItem.js.map +1 -1
- package/_cjs/version.js +1 -1
- package/_esm/core/Abi.js +2 -2
- package/_esm/core/Abi.js.map +1 -1
- package/_esm/core/AbiConstructor.js +18 -56
- package/_esm/core/AbiConstructor.js.map +1 -1
- package/_esm/core/AbiError.js +19 -54
- package/_esm/core/AbiError.js.map +1 -1
- package/_esm/core/AbiEvent.js +19 -187
- package/_esm/core/AbiEvent.js.map +1 -1
- package/_esm/core/AbiFunction.js +39 -242
- package/_esm/core/AbiFunction.js.map +1 -1
- package/_esm/core/AbiItem.js +27 -93
- package/_esm/core/AbiItem.js.map +1 -1
- package/_esm/erc6492/SignatureErc6492.js +2 -2
- package/_esm/erc6492/index.js +2 -2
- package/_esm/erc8010/SignatureErc8010.js +2 -2
- package/_esm/erc8010/index.js +2 -2
- package/_esm/version.js +1 -1
- package/_types/core/AbiConstructor.d.ts +43 -4
- package/_types/core/AbiConstructor.d.ts.map +1 -1
- package/_types/core/AbiError.d.ts +29 -19
- package/_types/core/AbiError.d.ts.map +1 -1
- package/_types/core/AbiEvent.d.ts +60 -0
- package/_types/core/AbiEvent.d.ts.map +1 -1
- package/_types/core/AbiFunction.d.ts +84 -2
- package/_types/core/AbiFunction.d.ts.map +1 -1
- package/_types/core/AbiItem.d.ts +36 -0
- package/_types/core/AbiItem.d.ts.map +1 -1
- package/_types/erc6492/SignatureErc6492.d.ts +2 -2
- package/_types/erc6492/index.d.ts +2 -2
- package/_types/erc8010/SignatureErc8010.d.ts +2 -2
- package/_types/erc8010/index.d.ts +2 -2
- package/_types/version.d.ts +1 -1
- package/core/Abi.ts +2 -2
- package/core/AbiConstructor.ts +96 -12
- package/core/AbiError.ts +121 -27
- package/core/AbiEvent.ts +145 -1
- package/core/AbiFunction.ts +272 -11
- package/core/AbiItem.ts +87 -3
- package/erc4337/EntryPoint/package.json +6 -0
- package/erc4337/RpcSchema/package.json +6 -0
- package/erc4337/UserOperation/package.json +6 -0
- package/erc4337/UserOperationGas/package.json +6 -0
- package/erc4337/UserOperationReceipt/package.json +6 -0
- package/erc4337/package.json +6 -0
- package/erc6492/SignatureErc6492/package.json +6 -0
- package/erc6492/SignatureErc6492.ts +2 -2
- package/erc6492/index.ts +2 -2
- package/erc6492/package.json +6 -0
- package/erc8010/SignatureErc8010/package.json +6 -0
- package/erc8010/SignatureErc8010.ts +2 -2
- package/erc8010/index.ts +2 -2
- package/erc8010/package.json +6 -0
- package/index.docs/package.json +6 -0
- package/package.json +1 -1
- package/trusted-setups/Paths/package.json +6 -0
- package/trusted-setups/package.json +6 -0
- package/version.ts +1 -1
- package/window/package.json +6 -0
|
@@ -77,9 +77,30 @@ export type ExtractNames<abi extends Abi.Abi, abiStateMutability extends abitype
|
|
|
77
77
|
* // @log: ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 69420n]
|
|
78
78
|
* ```
|
|
79
79
|
*
|
|
80
|
+
* @example
|
|
81
|
+
* ### ABI-shorthand
|
|
82
|
+
*
|
|
83
|
+
* You can also specify an entire ABI object and a function name as parameters to {@link ox#AbiFunction.(decodeData:function)}:
|
|
84
|
+
*
|
|
85
|
+
* ```ts twoslash
|
|
86
|
+
* // @noErrors
|
|
87
|
+
* import { Abi, AbiFunction } from 'ox'
|
|
88
|
+
*
|
|
89
|
+
* const abi = Abi.from([...])
|
|
90
|
+
* const data = '0x...
|
|
91
|
+
*
|
|
92
|
+
* const input = AbiFunction.decodeData(
|
|
93
|
+
* abi, // [!code focus]
|
|
94
|
+
* 'approve', // [!code focus]
|
|
95
|
+
* data
|
|
96
|
+
* )
|
|
97
|
+
* // @log: ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 69420n]
|
|
98
|
+
* ```
|
|
99
|
+
*
|
|
80
100
|
* @param abiFunction - The ABI Item to decode.
|
|
81
101
|
* @param data - The data to decode.
|
|
82
102
|
*/
|
|
103
|
+
export declare function decodeData<const abi extends Abi.Abi | readonly unknown[], name extends Name<abi>, const args extends AbiItem_internal.ExtractArgs<abi, name> | undefined = undefined, abiFunction extends AbiFunction = AbiItem.fromAbi.ReturnType<abi, name, args, AbiFunction>, allNames = Name<abi>>(abi: abi | Abi.Abi | readonly unknown[], name: Hex.Hex | (name extends allNames ? name : never), data: Hex.Hex): decodeData.ReturnType<abiFunction>;
|
|
83
104
|
export declare function decodeData<const abiItem extends AbiFunction>(abiFunction: abiItem | AbiFunction, data: Hex.Hex): decodeData.ReturnType<abiItem>;
|
|
84
105
|
export declare namespace decodeData {
|
|
85
106
|
type ReturnType<abiFunction extends AbiFunction = AbiFunction> = IsNarrowable<abiFunction, AbiFunction> extends true ? abiFunction['inputs'] extends readonly [] ? undefined : AbiParameters_internal.ToPrimitiveTypes<abiFunction['inputs']> | (abiFunction['overloads'] extends readonly AbiFunction[] ? AbiParameters_internal.ToPrimitiveTypes<abiFunction['overloads'][number]['inputs']> : never) : unknown;
|
|
@@ -125,6 +146,27 @@ export declare namespace decodeData {
|
|
|
125
146
|
* ```
|
|
126
147
|
*
|
|
127
148
|
* @example
|
|
149
|
+
* ### ABI-shorthand
|
|
150
|
+
*
|
|
151
|
+
* You can also specify an entire ABI object and a function name as parameters to {@link ox#AbiFunction.(decodeResult:function)}:
|
|
152
|
+
*
|
|
153
|
+
* ```ts twoslash
|
|
154
|
+
* // @noErrors
|
|
155
|
+
* import { Abi, AbiFunction } from 'ox'
|
|
156
|
+
*
|
|
157
|
+
* const data = '0x000000000000000000000000000000000000000000000000000000000000002a'
|
|
158
|
+
*
|
|
159
|
+
* const erc20Abi = Abi.from([...])
|
|
160
|
+
*
|
|
161
|
+
* const output = AbiFunction.decodeResult(
|
|
162
|
+
* erc20Abi, // [!code focus]
|
|
163
|
+
* 'totalSupply', // [!code focus]
|
|
164
|
+
* data
|
|
165
|
+
* )
|
|
166
|
+
* // @log: 42n
|
|
167
|
+
* ```
|
|
168
|
+
*
|
|
169
|
+
* @example
|
|
128
170
|
* ### End-to-end
|
|
129
171
|
*
|
|
130
172
|
* Below is an end-to-end example of using `AbiFunction.decodeResult` to decode the result of a `balanceOf` contract call on the [Wagmi Mint Example contract](https://etherscan.io/address/0xfba3912ca04dd458c843e2ee08967fc04f3579c2).
|
|
@@ -181,9 +223,10 @@ export declare namespace decodeData {
|
|
|
181
223
|
* @param options - Decoding options
|
|
182
224
|
* @returns Decoded function output
|
|
183
225
|
*/
|
|
184
|
-
export declare function decodeResult<const abiFunction extends AbiFunction, as extends 'Object' | 'Array' = 'Array'>(
|
|
226
|
+
export declare function decodeResult<const abi extends Abi.Abi | readonly unknown[], name extends Name<abi>, const args extends AbiItem_internal.ExtractArgs<abi, name> | undefined = undefined, abiFunction extends AbiFunction = AbiItem.fromAbi.ReturnType<abi, name, args, AbiFunction>, allNames = Name<abi>, as extends 'Object' | 'Array' = 'Array'>(abi: abi | Abi.Abi | readonly unknown[], name: Hex.Hex | (name extends allNames ? name : never), data: Hex.Hex, options?: decodeResult.Options<as> | undefined): decodeResult.ReturnType<abiFunction, as>;
|
|
227
|
+
export declare function decodeResult<const abiFunction extends AbiFunction, as extends 'Object' | 'Array' = 'Array'>(abiFunction: abiFunction | AbiFunction, data: Hex.Hex, options?: decodeResult.Options<as> | undefined): decodeResult.ReturnType<abiFunction, as>;
|
|
185
228
|
export declare namespace decodeResult {
|
|
186
|
-
type Options<as extends 'Object' | 'Array'> = {
|
|
229
|
+
type Options<as extends 'Object' | 'Array' = 'Array'> = {
|
|
187
230
|
/**
|
|
188
231
|
* Whether the decoded values should be returned as an `Object` or `Array`.
|
|
189
232
|
*
|
|
@@ -238,6 +281,24 @@ export declare namespace decodeResult {
|
|
|
238
281
|
* ```
|
|
239
282
|
*
|
|
240
283
|
* @example
|
|
284
|
+
* ### ABI-shorthand
|
|
285
|
+
*
|
|
286
|
+
* You can specify an entire ABI object and a function name as parameters to {@link ox#AbiFunction.(encodeData:function)}:
|
|
287
|
+
*
|
|
288
|
+
* ```ts twoslash
|
|
289
|
+
* // @noErrors
|
|
290
|
+
* import { Abi, AbiFunction } from 'ox'
|
|
291
|
+
*
|
|
292
|
+
* const erc20Abi = Abi.from([...])
|
|
293
|
+
*
|
|
294
|
+
* const data = AbiFunction.encodeData(
|
|
295
|
+
* erc20Abi, // [!code focus]
|
|
296
|
+
* 'approve', // [!code focus]
|
|
297
|
+
* ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 69420n]
|
|
298
|
+
* )
|
|
299
|
+
* ```
|
|
300
|
+
*
|
|
301
|
+
* @example
|
|
241
302
|
* ### End-to-end
|
|
242
303
|
*
|
|
243
304
|
* Below is an end-to-end example of using `AbiFunction.encodeData` to encode the input of a `balanceOf` contract call on the [Wagmi Mint Example contract](https://etherscan.io/address/0xfba3912ca04dd458c843e2ee08967fc04f3579c2).
|
|
@@ -292,6 +353,7 @@ export declare namespace decodeResult {
|
|
|
292
353
|
* @param args - Function arguments
|
|
293
354
|
* @returns ABI-encoded function name and arguments
|
|
294
355
|
*/
|
|
356
|
+
export declare function encodeData<const abi extends Abi.Abi | readonly unknown[], name extends Name<abi>, const args extends AbiItem_internal.ExtractArgs<abi, name> | undefined = undefined, abiFunction extends AbiFunction = AbiItem.fromAbi.ReturnType<abi, name, args, AbiFunction>, allNames = Name<abi>>(abi: abi | Abi.Abi | readonly unknown[], name: Hex.Hex | (name extends allNames ? name : never), ...args: encodeData.Args<abiFunction>): Hex.Hex;
|
|
295
357
|
export declare function encodeData<const abiFunction extends AbiFunction>(abiFunction: abiFunction | AbiFunction, ...args: encodeData.Args<abiFunction>): Hex.Hex;
|
|
296
358
|
export declare namespace encodeData {
|
|
297
359
|
type Args<abiFunction extends AbiFunction = AbiFunction> = IsNarrowable<abiFunction, AbiFunction> extends true ? (abitype.AbiParametersToPrimitiveTypes<abiFunction['inputs']> extends readonly [] ? [] : [abitype.AbiParametersToPrimitiveTypes<abiFunction['inputs']>]) | (abiFunction['overloads'] extends readonly AbiFunction[] ? [
|
|
@@ -314,11 +376,31 @@ export declare namespace encodeData {
|
|
|
314
376
|
* // @log: '0x000000000000000000000000000000000000000000000000000000000000002a'
|
|
315
377
|
* ```
|
|
316
378
|
*
|
|
379
|
+
* @example
|
|
380
|
+
* ### ABI-shorthand
|
|
381
|
+
*
|
|
382
|
+
* You can also specify an entire ABI object and a function name as parameters to {@link ox#AbiFunction.(encodeResult:function)}:
|
|
383
|
+
*
|
|
384
|
+
* ```ts twoslash
|
|
385
|
+
* // @noErrors
|
|
386
|
+
* import { Abi, AbiFunction } from 'ox'
|
|
387
|
+
*
|
|
388
|
+
* const abi = Abi.from([...])
|
|
389
|
+
*
|
|
390
|
+
* const data = AbiFunction.encodeResult(
|
|
391
|
+
* abi, // [!code focus]
|
|
392
|
+
* 'totalSupply', // [!code focus]
|
|
393
|
+
* 42n
|
|
394
|
+
* )
|
|
395
|
+
* // @log: '0x000000000000000000000000000000000000000000000000000000000000002a'
|
|
396
|
+
* ```
|
|
397
|
+
*
|
|
317
398
|
* @param abiFunction - The ABI item to encode the function output for.
|
|
318
399
|
* @param output - The function output to encode.
|
|
319
400
|
* @param options - Encoding options.
|
|
320
401
|
* @returns The encoded function output.
|
|
321
402
|
*/
|
|
403
|
+
export declare function encodeResult<const abi extends Abi.Abi | readonly unknown[], name extends Name<abi>, const args extends AbiItem_internal.ExtractArgs<abi, name> | undefined = undefined, as extends 'Object' | 'Array' = 'Array', abiFunction extends AbiFunction = AbiItem.fromAbi.ReturnType<abi, name, args, AbiFunction>, allNames = Name<abi>>(abi: abi | Abi.Abi | readonly unknown[], name: Hex.Hex | (name extends allNames ? name : never), output: encodeResult.Output<abiFunction, as>, options?: encodeResult.Options<as>): Hex.Hex;
|
|
322
404
|
export declare function encodeResult<const abiFunction extends AbiFunction, as extends 'Object' | 'Array' = 'Array'>(abiFunction: abiFunction | AbiFunction, output: encodeResult.Output<abiFunction, as>, options?: encodeResult.Options<as>): Hex.Hex;
|
|
323
405
|
export declare namespace encodeResult {
|
|
324
406
|
type Output<abiFunction extends AbiFunction = AbiFunction, as extends 'Object' | 'Array' = 'Array'> = abiFunction['outputs'] extends readonly [] ? never : abiFunction['outputs']['length'] extends 1 ? AbiParameters_internal.ToPrimitiveTypes<abiFunction['outputs']>[0] : as extends 'Object' ? AbiParameters_internal.ToObject<abiFunction['outputs']> : AbiParameters_internal.ToPrimitiveTypes<abiFunction['outputs']>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbiFunction.d.ts","sourceRoot":"","sources":["../../core/AbiFunction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAA;AAClC,OAAO,KAAK,KAAK,GAAG,MAAM,UAAU,CAAA;AACpC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,KAAK,QAAQ,MAAM,2BAA2B,CAAA;AAC1D,OAAO,KAAK,KAAK,gBAAgB,MAAM,uBAAuB,CAAA;AAC9D,OAAO,KAAK,KAAK,sBAAsB,MAAM,6BAA6B,CAAA;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAEvD,0EAA0E;AAC1E,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,GAAG;IAC9C,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,SAAS,WAAW,EAAE,GAAG,SAAS,CAAA;CAC/C,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,MAAM,OAAO,CACjB,GAAG,SAAS,GAAG,CAAC,GAAG,EACnB,IAAI,SAAS,YAAY,CAAC,GAAG,CAAC,IAC5B,OAAO,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;AAEzC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,GAAG,GAAG,SAAS,OAAO,EAAE,GAAG,GAAG,CAAC,GAAG,IACjE,GAAG,SAAS,GAAG,CAAC,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,MAAM,CAAA;AAElD,MAAM,MAAM,YAAY,CACtB,GAAG,SAAS,GAAG,CAAC,GAAG,EACnB,kBAAkB,SAChB,OAAO,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,IACvD,OAAO,CAAC,uBAAuB,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAA;AAE5D
|
|
1
|
+
{"version":3,"file":"AbiFunction.d.ts","sourceRoot":"","sources":["../../core/AbiFunction.ts"],"names":[],"mappings":"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"}
|
package/_types/core/AbiItem.d.ts
CHANGED
|
@@ -311,6 +311,17 @@ export declare namespace fromAbi {
|
|
|
311
311
|
*
|
|
312
312
|
* @example
|
|
313
313
|
* ```ts twoslash
|
|
314
|
+
* // @noErrors
|
|
315
|
+
* import { Abi, AbiItem } from 'ox'
|
|
316
|
+
*
|
|
317
|
+
* const erc20Abi = Abi.from([...])
|
|
318
|
+
*
|
|
319
|
+
* const selector = AbiItem.getSelector(erc20Abi, 'ownerOf')
|
|
320
|
+
* // @log: '0x6352211e'
|
|
321
|
+
* ```
|
|
322
|
+
*
|
|
323
|
+
* @example
|
|
324
|
+
* ```ts twoslash
|
|
314
325
|
* import { AbiItem } from 'ox'
|
|
315
326
|
*
|
|
316
327
|
* const selector = AbiItem.getSelector({
|
|
@@ -326,6 +337,7 @@ export declare namespace fromAbi {
|
|
|
326
337
|
* @param abiItem - The ABI item to compute the selector for. Can be a signature or an ABI item for an error, event, function, etc.
|
|
327
338
|
* @returns The first 4 bytes of the {@link ox#Hash.(keccak256:function)} hash of the function signature.
|
|
328
339
|
*/
|
|
340
|
+
export declare function getSelector<abi extends Abi.Abi | readonly unknown[], name extends Name<abi>>(abi: abi | Abi.Abi | readonly unknown[], name: name): Hex.Hex;
|
|
329
341
|
export declare function getSelector(abiItem: string | AbiItem): Hex.Hex;
|
|
330
342
|
export declare namespace getSelector {
|
|
331
343
|
type ErrorType = getSignatureHash.ErrorType | Hex.slice.ErrorType | Errors.GlobalErrorType;
|
|
@@ -343,6 +355,17 @@ export declare namespace getSelector {
|
|
|
343
355
|
*
|
|
344
356
|
* @example
|
|
345
357
|
* ```ts twoslash
|
|
358
|
+
* // @noErrors
|
|
359
|
+
* import { Abi, AbiItem } from 'ox'
|
|
360
|
+
*
|
|
361
|
+
* const erc20Abi = Abi.from([...])
|
|
362
|
+
*
|
|
363
|
+
* const signature = AbiItem.getSignature(erc20Abi, 'ownerOf')
|
|
364
|
+
* // @log: 'ownerOf(uint256)'
|
|
365
|
+
* ```
|
|
366
|
+
*
|
|
367
|
+
* @example
|
|
368
|
+
* ```ts twoslash
|
|
346
369
|
* import { AbiItem } from 'ox'
|
|
347
370
|
*
|
|
348
371
|
* const signature = AbiItem.getSignature({
|
|
@@ -358,6 +381,7 @@ export declare namespace getSelector {
|
|
|
358
381
|
* @param abiItem - The ABI Item to compute the signature for.
|
|
359
382
|
* @returns The stringified signature of the ABI Item.
|
|
360
383
|
*/
|
|
384
|
+
export declare function getSignature<abi extends Abi.Abi | readonly unknown[], name extends Name<abi>>(abi: abi | Abi.Abi | readonly unknown[], name: name): string;
|
|
361
385
|
export declare function getSignature(abiItem: string | AbiItem): string;
|
|
362
386
|
export declare namespace getSignature {
|
|
363
387
|
type ErrorType = internal.normalizeSignature.ErrorType | Errors.GlobalErrorType;
|
|
@@ -377,6 +401,17 @@ export declare namespace getSignature {
|
|
|
377
401
|
*
|
|
378
402
|
* @example
|
|
379
403
|
* ```ts twoslash
|
|
404
|
+
* // @noErrors
|
|
405
|
+
* import { Abi, AbiItem } from 'ox'
|
|
406
|
+
*
|
|
407
|
+
* const erc20Abi = Abi.from([...])
|
|
408
|
+
*
|
|
409
|
+
* const hash = AbiItem.getSignatureHash(erc20Abi, 'Transfer')
|
|
410
|
+
* // @log: '0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef'
|
|
411
|
+
* ```
|
|
412
|
+
*
|
|
413
|
+
* @example
|
|
414
|
+
* ```ts twoslash
|
|
380
415
|
* import { AbiItem } from 'ox'
|
|
381
416
|
*
|
|
382
417
|
* const hash = AbiItem.getSignatureHash({
|
|
@@ -394,6 +429,7 @@ export declare namespace getSignature {
|
|
|
394
429
|
* @param abiItem - The ABI Item to compute the signature hash for.
|
|
395
430
|
* @returns The {@link ox#Hash.(keccak256:function)} hash of the ABI item's signature.
|
|
396
431
|
*/
|
|
432
|
+
export declare function getSignatureHash<abi extends Abi.Abi | readonly unknown[], name extends Name<abi>>(abi: abi | Abi.Abi | readonly unknown[], name: name): Hex.Hex;
|
|
397
433
|
export declare function getSignatureHash(abiItem: string | AbiItem): Hex.Hex;
|
|
398
434
|
export declare namespace getSignatureHash {
|
|
399
435
|
type ErrorType = getSignature.ErrorType | Hash.keccak256.ErrorType | Hex.fromString.ErrorType | Errors.GlobalErrorType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbiItem.d.ts","sourceRoot":"","sources":["../../core/AbiItem.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AbiItem.d.ts","sourceRoot":"","sources":["../../core/AbiItem.ts"],"names":[],"mappings":"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"}
|
|
@@ -132,7 +132,7 @@ export declare namespace unwrap {
|
|
|
132
132
|
*
|
|
133
133
|
* @example
|
|
134
134
|
* ```ts twoslash
|
|
135
|
-
* import { Secp256k1 } from 'ox'
|
|
135
|
+
* import { Secp256k1, Signature } from 'ox'
|
|
136
136
|
* import { SignatureErc6492 } from 'ox/erc6492' // [!code focus]
|
|
137
137
|
*
|
|
138
138
|
* const signature = Secp256k1.sign({
|
|
@@ -142,7 +142,7 @@ export declare namespace unwrap {
|
|
|
142
142
|
*
|
|
143
143
|
* const wrapped = SignatureErc6492.wrap({ // [!code focus]
|
|
144
144
|
* data: '0xdeadbeef', // [!code focus]
|
|
145
|
-
* signature, // [!code focus]
|
|
145
|
+
* signature: Signature.toHex(signature), // [!code focus]
|
|
146
146
|
* to: '0x00000000219ab540356cBB839Cbe05303d7705Fa', // [!code focus]
|
|
147
147
|
* }) // [!code focus]
|
|
148
148
|
* ```
|
|
@@ -5,7 +5,7 @@ export type {};
|
|
|
5
5
|
*
|
|
6
6
|
* @example
|
|
7
7
|
* ```ts twoslash
|
|
8
|
-
* import { Secp256k1,
|
|
8
|
+
* import { PersonalMessage, Secp256k1, Signature } from 'ox'
|
|
9
9
|
* import { SignatureErc6492 } from 'ox/erc6492' // [!code focus]
|
|
10
10
|
*
|
|
11
11
|
* const signature = Secp256k1.sign({
|
|
@@ -15,7 +15,7 @@ export type {};
|
|
|
15
15
|
*
|
|
16
16
|
* const wrapped = SignatureErc6492.wrap({ // [!code focus]
|
|
17
17
|
* data: '0xcafebabe', // [!code focus]
|
|
18
|
-
* signature, // [!code focus]
|
|
18
|
+
* signature: Signature.toHex(signature), // [!code focus]
|
|
19
19
|
* to: '0xcafebabecafebabecafebabecafebabecafebabe', // [!code focus]
|
|
20
20
|
* }) // [!code focus]
|
|
21
21
|
* // @log: '0x000000000000000000000000cafebabecafebabecafebabecafebabecafebabe000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000004deadbeef000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041fa78c5905fb0b9d6066ef531f962a62bc6ef0d5eb59ecb134056d206f75aaed7780926ff2601a935c2c79707d9e1799948c9f19dcdde1e090e903b19a07923d01c000000000000000000000000000000000000000000000000000000000000006492649264926492649264926492649264926492649264926492649264926492'
|
|
@@ -122,7 +122,7 @@ export declare namespace unwrap {
|
|
|
122
122
|
* @example
|
|
123
123
|
* ```ts twoslash
|
|
124
124
|
* // @noErrors
|
|
125
|
-
* import { Secp256k1 } from 'ox'
|
|
125
|
+
* import { Secp256k1, Signature } from 'ox'
|
|
126
126
|
* import { SignatureErc8010 } from 'ox/erc8010' // [!code focus]
|
|
127
127
|
*
|
|
128
128
|
* const signature = Secp256k1.sign({
|
|
@@ -133,7 +133,7 @@ export declare namespace unwrap {
|
|
|
133
133
|
* const wrapped = SignatureErc8010.wrap({ // [!code focus]
|
|
134
134
|
* authorization: { ... }, // [!code focus]
|
|
135
135
|
* data: '0xdeadbeef', // [!code focus]
|
|
136
|
-
* signature, // [!code focus]
|
|
136
|
+
* signature: Signature.toHex(signature), // [!code focus]
|
|
137
137
|
* }) // [!code focus]
|
|
138
138
|
* ```
|
|
139
139
|
*
|
|
@@ -5,7 +5,7 @@ export type {};
|
|
|
5
5
|
*
|
|
6
6
|
* @example
|
|
7
7
|
* ```ts twoslash
|
|
8
|
-
* import { Authorization, Secp256k1,
|
|
8
|
+
* import { Authorization, PersonalMessage, Secp256k1, Signature } from 'ox'
|
|
9
9
|
* import { SignatureErc8010 } from 'ox/erc8010' // [!code focus]
|
|
10
10
|
*
|
|
11
11
|
* const authorization = Authorization.from({
|
|
@@ -31,7 +31,7 @@ export type {};
|
|
|
31
31
|
* const wrapped = SignatureErc8010.wrap({ // [!code focus]
|
|
32
32
|
* authorization: authorizationSigned, // [!code focus]
|
|
33
33
|
* data: '0xcafebabe', // [!code focus]
|
|
34
|
-
* signature, // [!code focus]
|
|
34
|
+
* signature: Signature.toHex(signature), // [!code focus]
|
|
35
35
|
* }) // [!code focus]
|
|
36
36
|
* // @log: '0x000000000000000000000000cafebabecafebabecafebabecafebabecafebabe000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000004deadbeef000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041fa78c5905fb0b9d6066ef531f962a62bc6ef0d5eb59ecb134056d206f75aaed7780926ff2601a935c2c79707d9e1799948c9f19dcdde1e090e903b19a07923d01c000000000000000000000000000000000000000000000000000000000000008010801080108010801080108010801080108010801080108010801080108010'
|
|
37
37
|
* ```
|
package/_types/version.d.ts
CHANGED
package/core/Abi.ts
CHANGED
|
@@ -43,7 +43,7 @@ export function format<const abi extends Abi>(abi: abi): format.ReturnType<abi>
|
|
|
43
43
|
* @returns The formatted ABI.
|
|
44
44
|
*/
|
|
45
45
|
export function format(abi: Abi | readonly unknown[]): readonly string[]
|
|
46
|
-
|
|
46
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
47
47
|
export function format(abi: Abi | readonly unknown[]): format.ReturnType {
|
|
48
48
|
return abitype.formatAbi(abi) as never
|
|
49
49
|
}
|
|
@@ -140,7 +140,7 @@ export function from<const abi extends Abi | readonly string[]>(
|
|
|
140
140
|
* @returns The typed ABI.
|
|
141
141
|
*/
|
|
142
142
|
export function from(abi: Abi | readonly string[]): Abi
|
|
143
|
-
|
|
143
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
144
144
|
export function from(abi: Abi | readonly string[]): from.ReturnType {
|
|
145
145
|
if (internal.isSignatures(abi)) return abitype.parseAbi(abi)
|
|
146
146
|
return abi
|
package/core/AbiConstructor.ts
CHANGED
|
@@ -10,11 +10,6 @@ import type { IsNarrowable } from './internal/types.js'
|
|
|
10
10
|
/** Root type for an {@link ox#AbiItem.AbiItem} with a `constructor` type. */
|
|
11
11
|
export type AbiConstructor = abitype.AbiConstructor
|
|
12
12
|
|
|
13
|
-
/** @internal */
|
|
14
|
-
export function decode<const abiConstructor extends AbiConstructor>(
|
|
15
|
-
abiConstructor: abiConstructor,
|
|
16
|
-
options: decode.Options,
|
|
17
|
-
): decode.ReturnType<abiConstructor>
|
|
18
13
|
/**
|
|
19
14
|
* ABI-decodes the provided constructor input (`inputs`).
|
|
20
15
|
*
|
|
@@ -37,19 +32,63 @@ export function decode<const abiConstructor extends AbiConstructor>(
|
|
|
37
32
|
* }) // [!code focus]
|
|
38
33
|
* ```
|
|
39
34
|
*
|
|
35
|
+
* @example
|
|
36
|
+
* ### ABI-shorthand
|
|
37
|
+
*
|
|
38
|
+
* You can also specify an entire ABI object as a parameter to `AbiConstructor.decode`.
|
|
39
|
+
*
|
|
40
|
+
* ```ts twoslash
|
|
41
|
+
* // @noErrors
|
|
42
|
+
* import { Abi, AbiConstructor } from 'ox'
|
|
43
|
+
*
|
|
44
|
+
* const abi = Abi.from([...])
|
|
45
|
+
*
|
|
46
|
+
* const data = AbiConstructor.encode(abi, {
|
|
47
|
+
* bytecode: '0x...',
|
|
48
|
+
* args: ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 123n],
|
|
49
|
+
* })
|
|
50
|
+
*
|
|
51
|
+
* const decoded = AbiConstructor.decode(abi, { // [!code focus]
|
|
52
|
+
* bytecode: '0x...', // [!code focus]
|
|
53
|
+
* data, // [!code focus]
|
|
54
|
+
* }) // [!code focus]
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
40
57
|
* @param abiConstructor - The ABI Constructor to decode.
|
|
41
58
|
* @param options - Decoding options.
|
|
42
59
|
* @returns The decoded constructor inputs.
|
|
43
60
|
*/
|
|
44
|
-
export function decode
|
|
45
|
-
|
|
61
|
+
export function decode<
|
|
62
|
+
const abi extends Abi.Abi | readonly unknown[],
|
|
63
|
+
abiConstructor extends
|
|
64
|
+
AbiConstructor = fromAbi.ReturnType<abi> extends AbiConstructor
|
|
65
|
+
? fromAbi.ReturnType<abi>
|
|
66
|
+
: never,
|
|
67
|
+
>(
|
|
68
|
+
abi: abi | Abi.Abi | readonly unknown[],
|
|
46
69
|
options: decode.Options,
|
|
47
|
-
):
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
abiConstructor: AbiConstructor,
|
|
70
|
+
): decode.ReturnType<abiConstructor>
|
|
71
|
+
export function decode<const abiConstructor extends AbiConstructor>(
|
|
72
|
+
abiConstructor: abiConstructor | AbiConstructor,
|
|
51
73
|
options: decode.Options,
|
|
74
|
+
): decode.ReturnType<abiConstructor>
|
|
75
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
76
|
+
export function decode(
|
|
77
|
+
...parameters:
|
|
78
|
+
| [abi: Abi.Abi | readonly unknown[], options: decode.Options]
|
|
79
|
+
| [abiConstructor: AbiConstructor, options: decode.Options]
|
|
52
80
|
): decode.ReturnType {
|
|
81
|
+
const [abiConstructor, options] = (() => {
|
|
82
|
+
if (Array.isArray(parameters[0])) {
|
|
83
|
+
const [abi, options] = parameters as [
|
|
84
|
+
Abi.Abi | readonly unknown[],
|
|
85
|
+
decode.Options,
|
|
86
|
+
]
|
|
87
|
+
return [fromAbi(abi), options] as [AbiConstructor, decode.Options]
|
|
88
|
+
}
|
|
89
|
+
return parameters as [AbiConstructor, decode.Options]
|
|
90
|
+
})()
|
|
91
|
+
|
|
53
92
|
const { bytecode } = options
|
|
54
93
|
if (abiConstructor.inputs.length === 0) return undefined
|
|
55
94
|
const data = options.data.replace(bytecode, '0x') as Hex.Hex
|
|
@@ -91,6 +130,23 @@ export declare namespace decode {
|
|
|
91
130
|
* ```
|
|
92
131
|
*
|
|
93
132
|
* @example
|
|
133
|
+
* ### ABI-shorthand
|
|
134
|
+
*
|
|
135
|
+
* You can also specify an entire ABI object as a parameter to `AbiConstructor.encode`.
|
|
136
|
+
*
|
|
137
|
+
* ```ts twoslash
|
|
138
|
+
* // @noErrors
|
|
139
|
+
* import { Abi, AbiConstructor } from 'ox'
|
|
140
|
+
*
|
|
141
|
+
* const abi = Abi.from([...])
|
|
142
|
+
*
|
|
143
|
+
* const data = AbiConstructor.encode(abi, { // [!code focus]
|
|
144
|
+
* bytecode: '0x...', // [!code focus]
|
|
145
|
+
* args: ['0xd8da6bf26964af9d7eed9e03e53415d37aa96045', 123n], // [!code focus]
|
|
146
|
+
* }) // [!code focus]
|
|
147
|
+
* ```
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
94
150
|
* ### End-to-end
|
|
95
151
|
*
|
|
96
152
|
* Below is an end-to-end example of using `AbiConstructor.encode` to encode the constructor of a contract and deploy it.
|
|
@@ -128,10 +184,38 @@ export declare namespace decode {
|
|
|
128
184
|
* @param options - Encoding options.
|
|
129
185
|
* @returns The encoded constructor.
|
|
130
186
|
*/
|
|
187
|
+
export function encode<
|
|
188
|
+
const abi extends Abi.Abi | readonly unknown[],
|
|
189
|
+
abiConstructor extends
|
|
190
|
+
AbiConstructor = fromAbi.ReturnType<abi> extends AbiConstructor
|
|
191
|
+
? fromAbi.ReturnType<abi>
|
|
192
|
+
: never,
|
|
193
|
+
>(
|
|
194
|
+
abi: abi | Abi.Abi | readonly unknown[],
|
|
195
|
+
options: encode.Options<abiConstructor>,
|
|
196
|
+
): encode.ReturnType
|
|
131
197
|
export function encode<const abiConstructor extends AbiConstructor>(
|
|
132
|
-
abiConstructor: abiConstructor,
|
|
198
|
+
abiConstructor: abiConstructor | AbiConstructor,
|
|
133
199
|
options: encode.Options<abiConstructor>,
|
|
200
|
+
): encode.ReturnType
|
|
201
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
202
|
+
export function encode(
|
|
203
|
+
...parameters:
|
|
204
|
+
| [abi: Abi.Abi | readonly unknown[], options: encode.Options]
|
|
205
|
+
| [abiConstructor: AbiConstructor, options: encode.Options]
|
|
134
206
|
): encode.ReturnType {
|
|
207
|
+
const [abiConstructor, options] = (() => {
|
|
208
|
+
if (Array.isArray(parameters[0])) {
|
|
209
|
+
const [abi, options] = parameters as [
|
|
210
|
+
Abi.Abi | readonly unknown[],
|
|
211
|
+
encode.Options,
|
|
212
|
+
]
|
|
213
|
+
return [fromAbi(abi), options] as [AbiConstructor, encode.Options]
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
return parameters as [AbiConstructor, encode.Options]
|
|
217
|
+
})()
|
|
218
|
+
|
|
135
219
|
const { bytecode, args } = options
|
|
136
220
|
return Hex.concat(
|
|
137
221
|
bytecode,
|