ox 0.9.7 → 0.9.9
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/CHANGELOG.md +12 -0
- package/_cjs/erc7821/Calls.js +39 -0
- package/_cjs/erc7821/Calls.js.map +1 -0
- package/_cjs/erc7821/Execute.js +75 -0
- package/_cjs/erc7821/Execute.js.map +1 -0
- package/_cjs/erc7821/index.js +6 -0
- package/_cjs/erc7821/index.js.map +1 -0
- package/_cjs/index.docs.js +1 -0
- package/_cjs/index.docs.js.map +1 -1
- package/_cjs/version.js +1 -1
- package/_esm/erc7821/Calls.js +101 -0
- package/_esm/erc7821/Calls.js.map +1 -0
- package/_esm/erc7821/Execute.js +151 -0
- package/_esm/erc7821/Execute.js.map +1 -0
- package/_esm/erc7821/index.js +69 -0
- package/_esm/erc7821/index.js.map +1 -0
- package/_esm/index.docs.js +1 -0
- package/_esm/index.docs.js.map +1 -1
- package/_esm/version.js +1 -1
- package/_types/core/internal/rpcSchemas/eth.d.ts +16 -0
- package/_types/core/internal/rpcSchemas/eth.d.ts.map +1 -1
- package/_types/core/internal/rpcSchemas/wallet.d.ts +17 -0
- package/_types/core/internal/rpcSchemas/wallet.d.ts.map +1 -1
- package/_types/erc7821/Calls.d.ts +102 -0
- package/_types/erc7821/Calls.d.ts.map +1 -0
- package/_types/erc7821/Execute.d.ts +126 -0
- package/_types/erc7821/Execute.d.ts.map +1 -0
- package/_types/erc7821/index.d.ts +71 -0
- package/_types/erc7821/index.d.ts.map +1 -0
- package/_types/index.docs.d.ts +1 -0
- package/_types/index.docs.d.ts.map +1 -1
- package/_types/version.d.ts +1 -1
- package/core/internal/rpcSchemas/eth.ts +18 -0
- package/core/internal/rpcSchemas/wallet.ts +19 -0
- package/erc7821/Calls/package.json +6 -0
- package/erc7821/Calls.ts +148 -0
- package/erc7821/Execute/package.json +6 -0
- package/erc7821/Execute.ts +197 -0
- package/erc7821/index.ts +73 -0
- package/erc7821/package.json +6 -0
- package/index.docs.ts +1 -0
- package/package.json +16 -1
- package/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../core/internal/rpcSchemas/wallet.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../core/internal/rpcSchemas/wallet.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import type * as Address from '../core/Address.js';
|
|
2
|
+
import type * as Hex from '../core/Hex.js';
|
|
3
|
+
export type Call<bigintType = bigint> = {
|
|
4
|
+
data?: Hex.Hex | undefined;
|
|
5
|
+
to: Address.Address;
|
|
6
|
+
value?: bigintType | undefined;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Encodes a set of ERC-7821 calls.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts twoslash
|
|
13
|
+
* import { Calls } from 'ox/erc7821'
|
|
14
|
+
*
|
|
15
|
+
* const calls = Calls.encode([
|
|
16
|
+
* {
|
|
17
|
+
* data: '0xdeadbeef',
|
|
18
|
+
* to: '0xcafebabecafebabecafebabecafebabecafebabe',
|
|
19
|
+
* value: 1n,
|
|
20
|
+
* },
|
|
21
|
+
* {
|
|
22
|
+
* data: '0xcafebabe',
|
|
23
|
+
* to: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef',
|
|
24
|
+
* value: 2n,
|
|
25
|
+
* },
|
|
26
|
+
* ])
|
|
27
|
+
* // @log: '0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000120000000000000000000000000cafebabecafebabecafebabecafebabecafebabe0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000deadbeef000000000000000000000000deadbeefdeadbeefdeadbeefdeadbeefdeadbeef0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000cafebabe'
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @param calls - Calls to encode.
|
|
31
|
+
* @param options - Options for the encoding.
|
|
32
|
+
* @returns The encoded calls.
|
|
33
|
+
*/
|
|
34
|
+
export declare function encode(calls: readonly Call[], options?: encode.Options): `0x${string}`;
|
|
35
|
+
export declare namespace encode {
|
|
36
|
+
type Options = {
|
|
37
|
+
/** Additional data to include for execution. */
|
|
38
|
+
opData?: Hex.Hex | undefined;
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Gets the ABI parameters for the ERC-7821 calls.
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```ts twoslash
|
|
46
|
+
* import { Calls } from 'ox/erc7821'
|
|
47
|
+
*
|
|
48
|
+
* const abiParameters = Calls.getAbiParameters({ opData: true })
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* @param options - Options.
|
|
52
|
+
* @returns The ABI parameters.
|
|
53
|
+
*/
|
|
54
|
+
export declare function getAbiParameters(options?: getAbiParameters.Options): readonly [{
|
|
55
|
+
readonly type: "Call[]";
|
|
56
|
+
readonly name: "calls";
|
|
57
|
+
}];
|
|
58
|
+
export declare namespace getAbiParameters {
|
|
59
|
+
type Options = {
|
|
60
|
+
opData?: boolean | undefined;
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Decodes a set of ERC-7821 calls from encoded data.
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```ts twoslash
|
|
68
|
+
* import { Calls } from 'ox/erc7821'
|
|
69
|
+
*
|
|
70
|
+
* const data = Calls.decode('0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000cafebabecafebabecafebabecafebabecafebabe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000004deadbeef00000000000000000000000000000000000000000000000000000000000000000000000000000000deadbeefdeadbeefdeadbeefdeadbeefdeadbeef000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000004cafebabe00000000000000000000000000000000000000000000000000000000')
|
|
71
|
+
* // @log: {
|
|
72
|
+
* // @log: calls: [
|
|
73
|
+
* // @log: {
|
|
74
|
+
* // @log: data: '0xdeadbeef',
|
|
75
|
+
* // @log: to: '0xcafebabecafebabecafebabecafebabecafebabe',
|
|
76
|
+
* // @log: value: 1n,
|
|
77
|
+
* // @log: },
|
|
78
|
+
* // @log: {
|
|
79
|
+
* // @log: data: '0xcafebabe',
|
|
80
|
+
* // @log: to: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef',
|
|
81
|
+
* // @log: value: 2n,
|
|
82
|
+
* // @log: },
|
|
83
|
+
* // @log: ]
|
|
84
|
+
* // @log: }
|
|
85
|
+
* ```
|
|
86
|
+
*
|
|
87
|
+
* @param data - The encoded calls data.
|
|
88
|
+
* @param options - Options for decoding.
|
|
89
|
+
* @returns The decoded calls and optional opData.
|
|
90
|
+
*/
|
|
91
|
+
export declare function decode(data: Hex.Hex, options?: decode.Options): decode.ReturnType;
|
|
92
|
+
export declare namespace decode {
|
|
93
|
+
type Options = {
|
|
94
|
+
/** Whether to decode opData if present. */
|
|
95
|
+
opData?: boolean | undefined;
|
|
96
|
+
};
|
|
97
|
+
type ReturnType = {
|
|
98
|
+
calls: Call[];
|
|
99
|
+
opData?: Hex.Hex | undefined;
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=Calls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Calls.d.ts","sourceRoot":"","sources":["../../erc7821/Calls.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,KAAK,GAAG,MAAM,gBAAgB,CAAA;AAE1C,MAAM,MAAM,IAAI,CAAC,UAAU,GAAG,MAAM,IAAI;IACtC,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;IAC1B,EAAE,EAAE,OAAO,CAAC,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;CAC/B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,EAAE,OAAO,GAAE,MAAM,CAAC,OAAY,iBAU1E;AAED,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,KAAK,OAAO,GAAG;QACb,gDAAgD;QAChD,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;KAC7B,CAAA;CACF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,gBAAgB,CAAC,OAAY;;;GAOtE;AAED,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IACxC,KAAK,OAAO,GAAG;QACb,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC7B,CAAA;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,MAAM,CACpB,IAAI,EAAE,GAAG,CAAC,GAAG,EACb,OAAO,GAAE,MAAM,CAAC,OAAY,GAC3B,MAAM,CAAC,UAAU,CAqBnB;AAED,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,KAAK,OAAO,GAAG;QACb,2CAA2C;QAC3C,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC7B,CAAA;IAED,KAAK,UAAU,GAAG;QAChB,KAAK,EAAE,IAAI,EAAE,CAAA;QACb,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;KAC7B,CAAA;CACF"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import type * as Hex from '../core/Hex.js';
|
|
2
|
+
import * as Calls from './Calls.js';
|
|
3
|
+
export type Batch = {
|
|
4
|
+
calls: readonly Call[];
|
|
5
|
+
opData?: Hex.Hex | undefined;
|
|
6
|
+
};
|
|
7
|
+
export type Call = Calls.Call;
|
|
8
|
+
export declare const abiFunction: {
|
|
9
|
+
type: "function";
|
|
10
|
+
name: string;
|
|
11
|
+
inputs: ({
|
|
12
|
+
name: string;
|
|
13
|
+
type: "bytes32";
|
|
14
|
+
internalType: string;
|
|
15
|
+
} | {
|
|
16
|
+
name: string;
|
|
17
|
+
type: "bytes";
|
|
18
|
+
internalType: string;
|
|
19
|
+
})[];
|
|
20
|
+
outputs: never[];
|
|
21
|
+
stateMutability: "payable";
|
|
22
|
+
};
|
|
23
|
+
export declare const mode: {
|
|
24
|
+
readonly default: "0x0100000000000000000000000000000000000000000000000000000000000000";
|
|
25
|
+
readonly opData: "0x0100000000007821000100000000000000000000000000000000000000000000";
|
|
26
|
+
readonly batchOfBatches: "0x0100000000007821000200000000000000000000000000000000000000000000";
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Decodes calls from ERC-7821 `execute` function data.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```ts twoslash
|
|
33
|
+
* import { Execute } from 'ox/erc7821'
|
|
34
|
+
*
|
|
35
|
+
* const { calls } = Execute.decodeData('0x...')
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* @param data - The encoded data.
|
|
39
|
+
* @returns The decoded calls and optional opData.
|
|
40
|
+
*/
|
|
41
|
+
export declare function decodeData(data: Hex.Hex): decodeData.ReturnType;
|
|
42
|
+
export declare namespace decodeData {
|
|
43
|
+
type ReturnType = {
|
|
44
|
+
calls: Call[];
|
|
45
|
+
opData?: Hex.Hex | undefined;
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Decodes batches from ERC-7821 `execute` function data in "batch of batches" mode.
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```ts twoslash
|
|
53
|
+
* import { Execute } from 'ox/erc7821'
|
|
54
|
+
*
|
|
55
|
+
* const batches = Execute.decodeBatchOfBatchesData('0x...')
|
|
56
|
+
* ```
|
|
57
|
+
*
|
|
58
|
+
* @param data - The encoded data.
|
|
59
|
+
* @returns The decoded batches.
|
|
60
|
+
*/
|
|
61
|
+
export declare function decodeBatchOfBatchesData(data: Hex.Hex): decodeBatchOfBatchesData.ReturnType;
|
|
62
|
+
export declare namespace decodeBatchOfBatchesData {
|
|
63
|
+
type ReturnType = Batch[];
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Encodes calls for the ERC-7821 `execute` function with "batch of batches" mode.
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```ts twoslash
|
|
70
|
+
* import { Execute } from 'ox/erc7821'
|
|
71
|
+
*
|
|
72
|
+
* const data = Execute.encodeBatchOfBatchesData([
|
|
73
|
+
* {
|
|
74
|
+
* calls: [
|
|
75
|
+
* {
|
|
76
|
+
* data: '0xcafebabe',
|
|
77
|
+
* to: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef',
|
|
78
|
+
* value: 1n,
|
|
79
|
+
* }
|
|
80
|
+
* ]
|
|
81
|
+
* },
|
|
82
|
+
* {
|
|
83
|
+
* calls: [
|
|
84
|
+
* {
|
|
85
|
+
* data: '0xdeadbeef',
|
|
86
|
+
* to: '0xcafebabecafebabecafebabecafebabecafebabe',
|
|
87
|
+
* value: 2n,
|
|
88
|
+
* }
|
|
89
|
+
* ],
|
|
90
|
+
* opData: '0xcafebabe',
|
|
91
|
+
* }
|
|
92
|
+
* ])
|
|
93
|
+
* ```
|
|
94
|
+
*
|
|
95
|
+
* @param calls - The calls to encode.
|
|
96
|
+
* @param options - The options.
|
|
97
|
+
* @returns The encoded data.
|
|
98
|
+
*/
|
|
99
|
+
export declare function encodeBatchOfBatchesData(batches: readonly Batch[]): `0x${string}`;
|
|
100
|
+
/**
|
|
101
|
+
* Encodes calls for the ERC-7821 `execute` function.
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```ts twoslash
|
|
105
|
+
* import { Execute } from 'ox/erc7821'
|
|
106
|
+
*
|
|
107
|
+
* const data = Execute.encodeData([
|
|
108
|
+
* {
|
|
109
|
+
* data: '0xcafebabe',
|
|
110
|
+
* to: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef',
|
|
111
|
+
* value: 1n,
|
|
112
|
+
* }
|
|
113
|
+
* ])
|
|
114
|
+
* ```
|
|
115
|
+
*
|
|
116
|
+
* @param calls - The calls to encode.
|
|
117
|
+
* @param options - The options.
|
|
118
|
+
* @returns The encoded data.
|
|
119
|
+
*/
|
|
120
|
+
export declare function encodeData(calls: readonly Call[], options?: encodeData.Options): `0x${string}`;
|
|
121
|
+
export declare namespace encodeData {
|
|
122
|
+
type Options = {
|
|
123
|
+
opData?: Hex.Hex | undefined;
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=Execute.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Execute.d.ts","sourceRoot":"","sources":["../../erc7821/Execute.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,GAAG,MAAM,gBAAgB,CAAA;AAE1C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,SAAS,IAAI,EAAE,CAAA;IACtB,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;AAE7B,eAAO,MAAM,WAAW;;;;;;;;;;;;;;CAiBW,CAAA;AAEnC,eAAO,MAAM,IAAI;;;;CAKP,CAAA;AAEV;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,GAAG,UAAU,CAAC,UAAU,CAM/D;AAED,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAK,UAAU,GAAG;QAChB,KAAK,EAAE,IAAI,EAAE,CAAA;QACb,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;KAC7B,CAAA;CACF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,GAAG,CAAC,GAAG,GACZ,wBAAwB,CAAC,UAAU,CA6BrC;AAED,MAAM,CAAC,OAAO,WAAW,wBAAwB,CAAC;IAChD,KAAK,UAAU,GAAG,KAAK,EAAE,CAAA;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,SAAS,KAAK,EAAE,iBAUjE;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,SAAS,IAAI,EAAE,EACtB,OAAO,GAAE,UAAU,CAAC,OAAY,iBAMjC;AAED,MAAM,CAAC,OAAO,WAAW,UAAU,CAAC;IAClC,KAAK,OAAO,GAAG;QACb,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;KAC7B,CAAA;CACF"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/** @entrypointCategory ERCs */
|
|
2
|
+
export type {};
|
|
3
|
+
/**
|
|
4
|
+
* Utility functions for encoding and decoding [ERC-7821](https://eips.ethereum.org/EIPS/eip-7821) calls.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ### Encoding calls
|
|
8
|
+
*
|
|
9
|
+
* Calls can be encoded using `Calls.encode`.
|
|
10
|
+
*
|
|
11
|
+
* ```ts twoslash
|
|
12
|
+
* import { Calls } from 'ox/erc7821'
|
|
13
|
+
*
|
|
14
|
+
* const calls = Calls.encode([
|
|
15
|
+
* {
|
|
16
|
+
* data: '0xcafebabe',
|
|
17
|
+
* to: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef',
|
|
18
|
+
* value: 1n,
|
|
19
|
+
* }
|
|
20
|
+
* ])
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ### Decoding calls
|
|
25
|
+
*
|
|
26
|
+
* Calls can be decoded using `Calls.decode`.
|
|
27
|
+
*
|
|
28
|
+
* ```ts twoslash
|
|
29
|
+
* import { Calls } from 'ox/erc7821'
|
|
30
|
+
*
|
|
31
|
+
* const { calls } = Calls.decode('0x...')
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @category ERC-7821
|
|
35
|
+
*/
|
|
36
|
+
export * as Calls from './Calls.js';
|
|
37
|
+
/**
|
|
38
|
+
* Utility functions for encoding and decoding [ERC-7821](https://eips.ethereum.org/EIPS/eip-7821) `execute` function data.
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ### Encoding `execute` Function Data
|
|
42
|
+
*
|
|
43
|
+
* The `execute` function data can be encoded using `Execute.encodeData`.
|
|
44
|
+
*
|
|
45
|
+
* ```ts twoslash
|
|
46
|
+
* import { Execute } from 'ox/erc7821'
|
|
47
|
+
*
|
|
48
|
+
* const data = Execute.encodeData([
|
|
49
|
+
* {
|
|
50
|
+
* data: '0xcafebabe',
|
|
51
|
+
* to: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef',
|
|
52
|
+
* value: 1n,
|
|
53
|
+
* }
|
|
54
|
+
* ])
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ### Decoding `execute` Function Data
|
|
59
|
+
*
|
|
60
|
+
* The `execute` function data can be decoded using `Execute.decodeData`.
|
|
61
|
+
*
|
|
62
|
+
* ```ts twoslash
|
|
63
|
+
* import { Execute } from 'ox/erc7821'
|
|
64
|
+
*
|
|
65
|
+
* const { calls } = Execute.decodeData('0xe9ae5c53...')
|
|
66
|
+
* ```
|
|
67
|
+
*
|
|
68
|
+
* @category ERC-7821
|
|
69
|
+
*/
|
|
70
|
+
export * as Execute from './Execute.js';
|
|
71
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../erc7821/index.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAE/B,YAAY,EAAE,CAAA;AAEd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
|
package/_types/index.docs.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.docs.d.ts","sourceRoot":"","sources":["../index.docs.ts"],"names":[],"mappings":"AACA,2FAA2F;AAE3F,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.docs.d.ts","sourceRoot":"","sources":["../index.docs.ts"],"names":[],"mappings":"AACA,2FAA2F;AAE3F,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA"}
|
package/_types/version.d.ts
CHANGED
|
@@ -691,6 +691,24 @@ export type Eth = RpcSchema.From<
|
|
|
691
691
|
}
|
|
692
692
|
ReturnType: Hex.Hex
|
|
693
693
|
}
|
|
694
|
+
/**
|
|
695
|
+
* Sends a **signed** transaction to the network, and waits for the transaction to be included.
|
|
696
|
+
*
|
|
697
|
+
* @example
|
|
698
|
+
* ```
|
|
699
|
+
* request({ method: 'eth_sendRawTransactionSync', params: ['0x...'] })
|
|
700
|
+
* // => '0x...'
|
|
701
|
+
* ```
|
|
702
|
+
*/
|
|
703
|
+
| {
|
|
704
|
+
Request: {
|
|
705
|
+
method: 'eth_sendRawTransactionSync'
|
|
706
|
+
params:
|
|
707
|
+
| [serializedTransaction: Hex.Hex]
|
|
708
|
+
| [serializedTransaction: Hex.Hex, timeout: number]
|
|
709
|
+
}
|
|
710
|
+
ReturnType: TransactionReceipt.Rpc
|
|
711
|
+
}
|
|
694
712
|
/**
|
|
695
713
|
* Creates, signs, and sends a new transaction to the network
|
|
696
714
|
*
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type * as Address from '../../Address.js'
|
|
2
2
|
import type * as Hex from '../../Hex.js'
|
|
3
3
|
import type * as RpcSchema from '../../RpcSchema.js'
|
|
4
|
+
import type * as TransactionReceipt from '../../TransactionReceipt.js'
|
|
4
5
|
import type * as TransactionRequest from '../../TransactionRequest.js'
|
|
5
6
|
import type { Compute } from '../types.js'
|
|
6
7
|
|
|
@@ -55,6 +56,24 @@ export type Wallet = RpcSchema.From<
|
|
|
55
56
|
}
|
|
56
57
|
ReturnType: Hex.Hex
|
|
57
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* Sends a **signed** transaction to the network, and waits for the transaction to be included.
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```
|
|
64
|
+
* request({ method: 'eth_sendRawTransactionSync', params: ['0x...'] })
|
|
65
|
+
* // => '0x...'
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
| {
|
|
69
|
+
Request: {
|
|
70
|
+
method: 'eth_sendRawTransactionSync'
|
|
71
|
+
params:
|
|
72
|
+
| [serializedTransaction: Hex.Hex]
|
|
73
|
+
| [serializedTransaction: Hex.Hex, timeout: number]
|
|
74
|
+
}
|
|
75
|
+
ReturnType: TransactionReceipt.Rpc
|
|
76
|
+
}
|
|
58
77
|
/**
|
|
59
78
|
* Creates, signs, and sends a new transaction to the network
|
|
60
79
|
*
|
package/erc7821/Calls.ts
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import * as AbiParameters from '../core/AbiParameters.js'
|
|
2
|
+
import type * as Address from '../core/Address.js'
|
|
3
|
+
import type * as Hex from '../core/Hex.js'
|
|
4
|
+
|
|
5
|
+
export type Call<bigintType = bigint> = {
|
|
6
|
+
data?: Hex.Hex | undefined
|
|
7
|
+
to: Address.Address
|
|
8
|
+
value?: bigintType | undefined
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Encodes a set of ERC-7821 calls.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts twoslash
|
|
16
|
+
* import { Calls } from 'ox/erc7821'
|
|
17
|
+
*
|
|
18
|
+
* const calls = Calls.encode([
|
|
19
|
+
* {
|
|
20
|
+
* data: '0xdeadbeef',
|
|
21
|
+
* to: '0xcafebabecafebabecafebabecafebabecafebabe',
|
|
22
|
+
* value: 1n,
|
|
23
|
+
* },
|
|
24
|
+
* {
|
|
25
|
+
* data: '0xcafebabe',
|
|
26
|
+
* to: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef',
|
|
27
|
+
* value: 2n,
|
|
28
|
+
* },
|
|
29
|
+
* ])
|
|
30
|
+
* // @log: '0x0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000120000000000000000000000000cafebabecafebabecafebabecafebabecafebabe0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000deadbeef000000000000000000000000deadbeefdeadbeefdeadbeefdeadbeefdeadbeef0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000cafebabe'
|
|
31
|
+
* ```
|
|
32
|
+
*
|
|
33
|
+
* @param calls - Calls to encode.
|
|
34
|
+
* @param options - Options for the encoding.
|
|
35
|
+
* @returns The encoded calls.
|
|
36
|
+
*/
|
|
37
|
+
export function encode(calls: readonly Call[], options: encode.Options = {}) {
|
|
38
|
+
const { opData } = options
|
|
39
|
+
return AbiParameters.encode(getAbiParameters({ opData: !!opData }), [
|
|
40
|
+
calls.map((call) => ({
|
|
41
|
+
target: call.to,
|
|
42
|
+
value: call.value ?? 0n,
|
|
43
|
+
data: call.data ?? '0x',
|
|
44
|
+
})),
|
|
45
|
+
...(opData ? [opData] : []),
|
|
46
|
+
] as any)
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export declare namespace encode {
|
|
50
|
+
type Options = {
|
|
51
|
+
/** Additional data to include for execution. */
|
|
52
|
+
opData?: Hex.Hex | undefined
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Gets the ABI parameters for the ERC-7821 calls.
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```ts twoslash
|
|
61
|
+
* import { Calls } from 'ox/erc7821'
|
|
62
|
+
*
|
|
63
|
+
* const abiParameters = Calls.getAbiParameters({ opData: true })
|
|
64
|
+
* ```
|
|
65
|
+
*
|
|
66
|
+
* @param options - Options.
|
|
67
|
+
* @returns The ABI parameters.
|
|
68
|
+
*/
|
|
69
|
+
export function getAbiParameters(options: getAbiParameters.Options = {}) {
|
|
70
|
+
const { opData } = options
|
|
71
|
+
return AbiParameters.from([
|
|
72
|
+
'struct Call { address target; uint256 value; bytes data; }',
|
|
73
|
+
'Call[] calls',
|
|
74
|
+
...(opData ? ['bytes opData'] : []),
|
|
75
|
+
])
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export declare namespace getAbiParameters {
|
|
79
|
+
type Options = {
|
|
80
|
+
opData?: boolean | undefined
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Decodes a set of ERC-7821 calls from encoded data.
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```ts twoslash
|
|
89
|
+
* import { Calls } from 'ox/erc7821'
|
|
90
|
+
*
|
|
91
|
+
* const data = Calls.decode('0x00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000cafebabecafebabecafebabecafebabecafebabe000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000004deadbeef00000000000000000000000000000000000000000000000000000000000000000000000000000000deadbeefdeadbeefdeadbeefdeadbeefdeadbeef000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000004cafebabe00000000000000000000000000000000000000000000000000000000')
|
|
92
|
+
* // @log: {
|
|
93
|
+
* // @log: calls: [
|
|
94
|
+
* // @log: {
|
|
95
|
+
* // @log: data: '0xdeadbeef',
|
|
96
|
+
* // @log: to: '0xcafebabecafebabecafebabecafebabecafebabe',
|
|
97
|
+
* // @log: value: 1n,
|
|
98
|
+
* // @log: },
|
|
99
|
+
* // @log: {
|
|
100
|
+
* // @log: data: '0xcafebabe',
|
|
101
|
+
* // @log: to: '0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef',
|
|
102
|
+
* // @log: value: 2n,
|
|
103
|
+
* // @log: },
|
|
104
|
+
* // @log: ]
|
|
105
|
+
* // @log: }
|
|
106
|
+
* ```
|
|
107
|
+
*
|
|
108
|
+
* @param data - The encoded calls data.
|
|
109
|
+
* @param options - Options for decoding.
|
|
110
|
+
* @returns The decoded calls and optional opData.
|
|
111
|
+
*/
|
|
112
|
+
export function decode(
|
|
113
|
+
data: Hex.Hex,
|
|
114
|
+
options: decode.Options = {},
|
|
115
|
+
): decode.ReturnType {
|
|
116
|
+
const { opData: withOpData = false } = options
|
|
117
|
+
|
|
118
|
+
const decoded = AbiParameters.decode(
|
|
119
|
+
getAbiParameters({ opData: withOpData }),
|
|
120
|
+
data,
|
|
121
|
+
) as readonly unknown[]
|
|
122
|
+
const [encodedCalls, opData] = decoded as readonly [
|
|
123
|
+
{ target: Address.Address; value: bigint; data: Hex.Hex }[],
|
|
124
|
+
Hex.Hex?,
|
|
125
|
+
]
|
|
126
|
+
|
|
127
|
+
const calls = encodedCalls.map((call) => ({
|
|
128
|
+
to: call.target,
|
|
129
|
+
value: call.value,
|
|
130
|
+
data: call.data,
|
|
131
|
+
}))
|
|
132
|
+
|
|
133
|
+
return withOpData
|
|
134
|
+
? { calls, opData: opData === '0x' ? undefined : opData }
|
|
135
|
+
: { calls }
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
export declare namespace decode {
|
|
139
|
+
type Options = {
|
|
140
|
+
/** Whether to decode opData if present. */
|
|
141
|
+
opData?: boolean | undefined
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
type ReturnType = {
|
|
145
|
+
calls: Call[]
|
|
146
|
+
opData?: Hex.Hex | undefined
|
|
147
|
+
}
|
|
148
|
+
}
|