ox 0.14.48 → 0.14.49
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 +19 -0
- package/_cjs/core/Frame.js +8 -8
- package/_cjs/core/Frame.js.map +1 -1
- package/_cjs/core/FrameReceipt.js +10 -8
- package/_cjs/core/FrameReceipt.js.map +1 -1
- package/_cjs/core/FrameSignature.js +33 -18
- package/_cjs/core/FrameSignature.js.map +1 -1
- package/_cjs/version.js +1 -1
- package/_esm/core/Frame.js +12 -12
- package/_esm/core/Frame.js.map +1 -1
- package/_esm/core/FrameReceipt.js +15 -11
- package/_esm/core/FrameReceipt.js.map +1 -1
- package/_esm/core/FrameSignature.js +36 -20
- package/_esm/core/FrameSignature.js.map +1 -1
- package/_esm/version.js +1 -1
- package/_types/core/Frame.d.ts +9 -9
- package/_types/core/Frame.d.ts.map +1 -1
- package/_types/core/FrameReceipt.d.ts +17 -11
- package/_types/core/FrameReceipt.d.ts.map +1 -1
- package/_types/core/FrameSignature.d.ts +14 -13
- package/_types/core/FrameSignature.d.ts.map +1 -1
- package/_types/version.d.ts +1 -1
- package/core/Frame.ts +20 -17
- package/core/FrameReceipt.ts +21 -13
- package/core/FrameSignature.ts +56 -36
- package/package.json +1 -1
- package/version.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# ox
|
|
2
2
|
|
|
3
|
+
## 0.14.49
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#475](https://github.com/wevm/ox/pull/475) [`e0999aa`](https://github.com/wevm/ox/commit/e0999aae66462078429717db8aa54c7348bc489b) Thanks [@jxom](https://github.com/jxom)! - Aligned frame RPC quantities, signature placeholders, and receipt gas totals with the execution API definitions.
|
|
8
|
+
|
|
9
|
+
- [#472](https://github.com/wevm/ox/pull/472) [`1e2fb85`](https://github.com/wevm/ox/commit/1e2fb856dd61d9ff2f5953296296aef9578e6f2a) Thanks [@jxom](https://github.com/jxom)! - Added hex signature support for secp256k1 and P256 frame signature entries.
|
|
10
|
+
|
|
11
|
+
```ts
|
|
12
|
+
import { FrameSignature, Signature } from "ox";
|
|
13
|
+
|
|
14
|
+
declare const signature: Signature.Signature;
|
|
15
|
+
|
|
16
|
+
FrameSignature.from({
|
|
17
|
+
scheme: "secp256k1",
|
|
18
|
+
signature: Signature.toHex(signature),
|
|
19
|
+
});
|
|
20
|
+
```
|
|
21
|
+
|
|
3
22
|
## 0.14.48
|
|
4
23
|
|
|
5
24
|
### Patch Changes
|
package/_cjs/core/Frame.js
CHANGED
|
@@ -60,10 +60,10 @@ function from(frame) {
|
|
|
60
60
|
function fromRpc(frame) {
|
|
61
61
|
return from({
|
|
62
62
|
data: frame.data,
|
|
63
|
-
executionGas: Hex.toBigInt(frame.
|
|
64
|
-
flags: frame.flags,
|
|
65
|
-
mode: frame.mode,
|
|
66
|
-
stateGas: Hex.toBigInt(frame.
|
|
63
|
+
executionGas: Hex.toBigInt(frame.executionGas),
|
|
64
|
+
flags: Hex.toNumber(frame.flags),
|
|
65
|
+
mode: Hex.toNumber(frame.mode),
|
|
66
|
+
stateGas: Hex.toBigInt(frame.stateGas),
|
|
67
67
|
...(frame.target == null ? {} : { to: frame.target }),
|
|
68
68
|
value: Hex.toBigInt(frame.value),
|
|
69
69
|
});
|
|
@@ -72,10 +72,10 @@ function toRpc(frame) {
|
|
|
72
72
|
const { flags: flags_ = 0, mode = 0 } = frame;
|
|
73
73
|
return {
|
|
74
74
|
data: frame.data ?? '0x',
|
|
75
|
-
|
|
76
|
-
flags: typeof flags_ === 'string' ? exports.flags[flags_] : flags_,
|
|
77
|
-
mode: typeof mode === 'string' ? exports.modes[mode] : mode,
|
|
78
|
-
|
|
75
|
+
executionGas: Quantity.fromNumberish(frame.executionGas ?? 0n),
|
|
76
|
+
flags: Hex.fromNumber(typeof flags_ === 'string' ? exports.flags[flags_] : flags_),
|
|
77
|
+
mode: Hex.fromNumber(typeof mode === 'string' ? exports.modes[mode] : mode),
|
|
78
|
+
stateGas: Quantity.fromNumberish(frame.stateGas ?? 0n),
|
|
79
79
|
...(frame.to === undefined ? {} : { target: frame.to }),
|
|
80
80
|
value: Quantity.fromNumberish(frame.value ?? 0n),
|
|
81
81
|
};
|
package/_cjs/core/Frame.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Frame.js","sourceRoot":"","sources":["../../core/Frame.ts"],"names":[],"mappings":";;;AA+GA,wBAyCC;AAmCD,oBAGC;AA4BD,0BAUC;
|
|
1
|
+
{"version":3,"file":"Frame.js","sourceRoot":"","sources":["../../core/Frame.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,18 +6,19 @@ exports.toRpc = toRpc;
|
|
|
6
6
|
const Hex = require("./Hex.js");
|
|
7
7
|
const Quantity = require("./internal/quantity.js");
|
|
8
8
|
exports.fromRpcStatus = {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
'0x0': 'reverted',
|
|
10
|
+
'0x1': 'success',
|
|
11
|
+
'0x2': 'skipped',
|
|
12
12
|
};
|
|
13
13
|
exports.toRpcStatus = {
|
|
14
|
-
reverted:
|
|
15
|
-
skipped:
|
|
16
|
-
success:
|
|
14
|
+
reverted: '0x0',
|
|
15
|
+
skipped: '0x2',
|
|
16
|
+
success: '0x1',
|
|
17
17
|
};
|
|
18
18
|
function fromRpc(receipt) {
|
|
19
19
|
return {
|
|
20
|
-
|
|
20
|
+
executionGasUsed: Hex.toBigInt(receipt.executionGasUsed),
|
|
21
|
+
gasUsed: Hex.toBigInt(receipt.gasUsed),
|
|
21
22
|
logs: receipt.logs,
|
|
22
23
|
stateGasUsed: Hex.toBigInt(receipt.stateGasUsed),
|
|
23
24
|
status: exports.fromRpcStatus[receipt.status],
|
|
@@ -25,7 +26,8 @@ function fromRpc(receipt) {
|
|
|
25
26
|
}
|
|
26
27
|
function toRpc(receipt) {
|
|
27
28
|
return {
|
|
28
|
-
executionGasUsed: Quantity.fromNumberish(receipt.
|
|
29
|
+
executionGasUsed: Quantity.fromNumberish(receipt.executionGasUsed),
|
|
30
|
+
gasUsed: Quantity.fromNumberish(receipt.gasUsed),
|
|
29
31
|
logs: receipt.logs,
|
|
30
32
|
stateGasUsed: Quantity.fromNumberish(receipt.stateGasUsed),
|
|
31
33
|
status: exports.toRpcStatus[receipt.status],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameReceipt.js","sourceRoot":"","sources":["../../core/FrameReceipt.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"FrameReceipt.js","sourceRoot":"","sources":["../../core/FrameReceipt.ts"],"names":[],"mappings":";;;AA0EA,0BAQC;AA4BD,sBAQC;AArHD,gCAA+B;AAC/B,mDAAkD;AAsCrC,QAAA,aAAa,GAAG;IAC3B,KAAK,EAAE,UAAU;IACjB,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,SAAS;CACR,CAAA;AAGG,QAAA,WAAW,GAAG;IACzB,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,KAAK;CACN,CAAA;AAuBV,SAAgB,OAAO,CAAC,OAAY;IAClC,OAAO;QACL,gBAAgB,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACxD,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;QACtC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,YAAY,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC;QAChD,MAAM,EAAE,qBAAa,CAAC,OAAO,CAAC,MAAM,CAAC;KACtC,CAAA;AACH,CAAC;AA4BD,SAAgB,KAAK,CAAC,OAAoB;IACxC,OAAO;QACL,gBAAgB,EAAE,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAClE,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;QAChD,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,YAAY,EAAE,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;QAC1D,MAAM,EAAE,mBAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAA;AACH,CAAC"}
|
|
@@ -54,16 +54,20 @@ function assert(entry, options = {}) {
|
|
|
54
54
|
throw new InvalidError('Signature is required.');
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
57
|
-
if (typeof entry.signature
|
|
58
|
-
|
|
57
|
+
if (typeof entry.signature === 'string')
|
|
58
|
+
Hex.assert(entry.signature, { strict: true });
|
|
59
|
+
const signature = typeof entry.signature === 'string'
|
|
60
|
+
? Signature.fromHex(entry.signature)
|
|
61
|
+
: entry.signature;
|
|
62
|
+
if (typeof signature.r !== 'bigint' || typeof signature.s !== 'bigint')
|
|
59
63
|
throw new InvalidError('Signature scalars must be bigint.');
|
|
60
|
-
if ((scheme === 1 ||
|
|
61
|
-
|
|
62
|
-
|
|
64
|
+
if ((scheme === 1 || signature.yParity !== undefined) &&
|
|
65
|
+
signature.yParity !== 0 &&
|
|
66
|
+
signature.yParity !== 1)
|
|
63
67
|
throw new InvalidError('Signature parity must be 0 or 1.');
|
|
64
|
-
Signature.assert(
|
|
65
|
-
const r =
|
|
66
|
-
const s =
|
|
68
|
+
Signature.assert(signature, { recovered: scheme === 1 });
|
|
69
|
+
const r = signature.r;
|
|
70
|
+
const s = signature.s;
|
|
67
71
|
const order = scheme === 1 ? curves_js_1.secp256k1N : curves_js_1.p256N;
|
|
68
72
|
if (r === 0n ||
|
|
69
73
|
r >= order ||
|
|
@@ -85,18 +89,22 @@ function from(entry) {
|
|
|
85
89
|
}
|
|
86
90
|
function fromRpc(entry) {
|
|
87
91
|
return fromTuple([
|
|
88
|
-
entry.scheme ===
|
|
92
|
+
entry.scheme === '0x0'
|
|
93
|
+
? '0x'
|
|
94
|
+
: Hex.fromNumber(Hex.toNumber(entry.scheme), { size: 1 }),
|
|
89
95
|
entry.signer ?? '0x',
|
|
90
|
-
entry.msg,
|
|
91
|
-
entry.signature,
|
|
96
|
+
entry.msg ?? '0x',
|
|
97
|
+
entry.signature ?? '0x',
|
|
92
98
|
]);
|
|
93
99
|
}
|
|
94
100
|
function toRpc(entry) {
|
|
95
101
|
const [scheme, signer, msg, signature] = toTuple(entry);
|
|
96
102
|
return {
|
|
97
103
|
msg,
|
|
98
|
-
scheme: (scheme === '0x'
|
|
99
|
-
|
|
104
|
+
scheme: (scheme === '0x'
|
|
105
|
+
? '0x0'
|
|
106
|
+
: Hex.fromNumber(Hex.toNumber(scheme))),
|
|
107
|
+
...(signature === '0x' && scheme !== '0x' ? {} : { signature }),
|
|
100
108
|
...(signer === '0x' ? {} : { signer }),
|
|
101
109
|
};
|
|
102
110
|
}
|
|
@@ -158,15 +166,22 @@ function toTuple(entry) {
|
|
|
158
166
|
case 'arbitrary':
|
|
159
167
|
return entry.signature;
|
|
160
168
|
case 1:
|
|
161
|
-
case 'secp256k1':
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
169
|
+
case 'secp256k1': {
|
|
170
|
+
if (entry.signature === undefined)
|
|
171
|
+
return '0x';
|
|
172
|
+
const signature = typeof entry.signature === 'string'
|
|
173
|
+
? Signature.fromHex(entry.signature)
|
|
174
|
+
: entry.signature;
|
|
175
|
+
return Hex.concat(Hex.fromNumber(signature.yParity, { size: 1 }), Hex.fromNumber(signature.r, { size: 32 }), Hex.fromNumber(signature.s, { size: 32 }));
|
|
176
|
+
}
|
|
165
177
|
case 2:
|
|
166
178
|
case 'p256': {
|
|
167
179
|
if (entry.signature === undefined)
|
|
168
180
|
return '0x';
|
|
169
|
-
const { publicKey
|
|
181
|
+
const { publicKey } = entry;
|
|
182
|
+
const signature = typeof entry.signature === 'string'
|
|
183
|
+
? Signature.fromHex(entry.signature)
|
|
184
|
+
: entry.signature;
|
|
170
185
|
const s = signature.s;
|
|
171
186
|
return Hex.concat(Hex.fromNumber(signature.r, { size: 32 }), Hex.fromNumber(s > curves_js_1.p256N / 2n ? curves_js_1.p256N - s : s, { size: 32 }), Hex.fromNumber(publicKey.x, { size: 32 }), Hex.fromNumber(publicKey.y, { size: 32 }));
|
|
172
187
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameSignature.js","sourceRoot":"","sources":["../../core/FrameSignature.ts"],"names":[],"mappings":";;;AAkIA,
|
|
1
|
+
{"version":3,"file":"FrameSignature.js","sourceRoot":"","sources":["../../core/FrameSignature.ts"],"names":[],"mappings":"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"}
|
package/_cjs/version.js
CHANGED
package/_esm/core/Frame.js
CHANGED
|
@@ -108,10 +108,10 @@ export function from(frame) {
|
|
|
108
108
|
*
|
|
109
109
|
* const frame = Frame.fromRpc({
|
|
110
110
|
* data: '0x',
|
|
111
|
-
*
|
|
112
|
-
* flags:
|
|
113
|
-
* mode:
|
|
114
|
-
*
|
|
111
|
+
* executionGas: '0xc350',
|
|
112
|
+
* flags: '0x3',
|
|
113
|
+
* mode: '0x1',
|
|
114
|
+
* stateGas: '0x0',
|
|
115
115
|
* value: '0x0'
|
|
116
116
|
* })
|
|
117
117
|
* ```
|
|
@@ -122,10 +122,10 @@ export function from(frame) {
|
|
|
122
122
|
export function fromRpc(frame) {
|
|
123
123
|
return from({
|
|
124
124
|
data: frame.data,
|
|
125
|
-
executionGas: Hex.toBigInt(frame.
|
|
126
|
-
flags: frame.flags,
|
|
127
|
-
mode: frame.mode,
|
|
128
|
-
stateGas: Hex.toBigInt(frame.
|
|
125
|
+
executionGas: Hex.toBigInt(frame.executionGas),
|
|
126
|
+
flags: Hex.toNumber(frame.flags),
|
|
127
|
+
mode: Hex.toNumber(frame.mode),
|
|
128
|
+
stateGas: Hex.toBigInt(frame.stateGas),
|
|
129
129
|
...(frame.target == null ? {} : { to: frame.target }),
|
|
130
130
|
value: Hex.toBigInt(frame.value),
|
|
131
131
|
});
|
|
@@ -150,10 +150,10 @@ export function toRpc(frame) {
|
|
|
150
150
|
const { flags: flags_ = 0, mode = 0 } = frame;
|
|
151
151
|
return {
|
|
152
152
|
data: frame.data ?? '0x',
|
|
153
|
-
|
|
154
|
-
flags: typeof flags_ === 'string' ? flags[flags_] : flags_,
|
|
155
|
-
mode: typeof mode === 'string' ? modes[mode] : mode,
|
|
156
|
-
|
|
153
|
+
executionGas: Quantity.fromNumberish(frame.executionGas ?? 0n),
|
|
154
|
+
flags: Hex.fromNumber(typeof flags_ === 'string' ? flags[flags_] : flags_),
|
|
155
|
+
mode: Hex.fromNumber(typeof mode === 'string' ? modes[mode] : mode),
|
|
156
|
+
stateGas: Quantity.fromNumberish(frame.stateGas ?? 0n),
|
|
157
157
|
...(frame.to === undefined ? {} : { target: frame.to }),
|
|
158
158
|
value: Quantity.fromNumberish(frame.value ?? 0n),
|
|
159
159
|
};
|
package/_esm/core/Frame.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Frame.js","sourceRoot":"","sources":["../../core/Frame.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAA;AAwDlD,6BAA6B;AAC7B,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAW,CAAA;AAKlE,0CAA0C;AAC1C,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,gBAAgB,EAAE,CAAC;IACnB,0BAA0B,EAAE,CAAC;IAC7B,cAAc,EAAE,CAAC;IACjB,WAAW,EAAE,CAAC;IACd,IAAI,EAAE,CAAC;CACC,CAAA;AAeV;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,MAAM,CAAC,KAAY;IACjC,MAAM,EACJ,IAAI,GAAG,IAAI,EACX,YAAY,GAAG,EAAE,EACjB,KAAK,EAAE,UAAU,GAAG,CAAC,EACrB,IAAI,EAAE,SAAS,GAAG,CAAC,EACnB,QAAQ,GAAG,EAAE,EACb,KAAK,GAAG,EAAE,GACX,GAAG,KAAK,CAAA;IACT,MAAM,IAAI,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACzE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC;QACjD,MAAM,IAAI,YAAY,CAAC,8CAA8C,CAAC,CAAA;IACxE,MAAM,MAAM,GAAG,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAA;IAC9E,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC;QACvD,MAAM,IAAI,YAAY,CACpB,2DAA2D,CAC5D,CAAA;IACH,IAAI,MAAM,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAC/B,IAAI,IAAI,KAAK,KAAK,CAAC,MAAM;YACvB,MAAM,IAAI,YAAY,CAAC,iDAAiD,CAAC,CAAA;QAC3E,IAAI,MAAM,GAAG,KAAK,CAAC,0BAA0B;YAC3C,MAAM,IAAI,YAAY,CACpB,0DAA0D,CAC3D,CAAA;IACL,CAAC;IACD,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;IACvE,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI;QAC3B,CAAC,cAAc,EAAE,YAAY,CAAC;QAC9B,CAAC,UAAU,EAAE,QAAQ,CAAC;KACd;QACR,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,GAAG,EAAE,IAAI,KAAK,IAAI,EAAE,IAAI,GAAG;YAC/D,MAAM,IAAI,YAAY,CAAC,GAAG,KAAK,sCAAsC,CAAC,CAAA;IAC1E,IAAI,YAAY,GAAG,QAAQ,IAAI,EAAE,IAAI,GAAG;QACtC,MAAM,IAAI,YAAY,CAAC,4CAA4C,CAAC,CAAA;IACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,GAAG,EAAE,IAAI,KAAK,IAAI,EAAE,IAAI,IAAI;QAChE,MAAM,IAAI,YAAY,CAAC,4CAA4C,CAAC,CAAA;IACtE,IAAI,IAAI,KAAK,KAAK,CAAC,MAAM,IAAI,KAAK,KAAK,EAAE;QACvC,MAAM,IAAI,YAAY,CAAC,wCAAwC,CAAC,CAAA;IAClE,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IAClC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC;QACvB,MAAM,IAAI,YAAY,CAAC,gCAAgC,CAAC,CAAA;AAC5D,CAAC;AAUD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,IAAI,CAA4B,KAAoB;IAClE,MAAM,CAAC,KAAK,CAAC,CAAA;IACb,OAAO,EAAE,GAAG,KAAK,EAAW,CAAA;AAC9B,CAAC;AAMD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,OAAO,CAAC,KAAU;IAChC,OAAO,IAAI,CAAC;QACV,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,YAAY,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"Frame.js","sourceRoot":"","sources":["../../core/Frame.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,15 +2,15 @@ import * as Hex from './Hex.js';
|
|
|
2
2
|
import * as Quantity from './internal/quantity.js';
|
|
3
3
|
/** RPC status to status mapping. */
|
|
4
4
|
export const fromRpcStatus = {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
'0x0': 'reverted',
|
|
6
|
+
'0x1': 'success',
|
|
7
|
+
'0x2': 'skipped',
|
|
8
8
|
};
|
|
9
9
|
/** Status to RPC status mapping. */
|
|
10
10
|
export const toRpcStatus = {
|
|
11
|
-
reverted:
|
|
12
|
-
skipped:
|
|
13
|
-
success:
|
|
11
|
+
reverted: '0x0',
|
|
12
|
+
skipped: '0x2',
|
|
13
|
+
success: '0x1',
|
|
14
14
|
};
|
|
15
15
|
/**
|
|
16
16
|
* Converts an RPC frame receipt to a {@link ox#FrameReceipt.FrameReceipt}.
|
|
@@ -23,9 +23,10 @@ export const toRpcStatus = {
|
|
|
23
23
|
*
|
|
24
24
|
* const receipt = FrameReceipt.fromRpc({
|
|
25
25
|
* executionGasUsed: '0x5208',
|
|
26
|
+
* gasUsed: '0x5208',
|
|
26
27
|
* logs: [],
|
|
27
28
|
* stateGasUsed: '0x0',
|
|
28
|
-
* status:
|
|
29
|
+
* status: '0x1'
|
|
29
30
|
* })
|
|
30
31
|
* ```
|
|
31
32
|
*
|
|
@@ -34,7 +35,8 @@ export const toRpcStatus = {
|
|
|
34
35
|
*/
|
|
35
36
|
export function fromRpc(receipt) {
|
|
36
37
|
return {
|
|
37
|
-
|
|
38
|
+
executionGasUsed: Hex.toBigInt(receipt.executionGasUsed),
|
|
39
|
+
gasUsed: Hex.toBigInt(receipt.gasUsed),
|
|
38
40
|
logs: receipt.logs,
|
|
39
41
|
stateGasUsed: Hex.toBigInt(receipt.stateGasUsed),
|
|
40
42
|
status: fromRpcStatus[receipt.status],
|
|
@@ -51,19 +53,21 @@ export function fromRpc(receipt) {
|
|
|
51
53
|
*
|
|
52
54
|
* const receipt = FrameReceipt.fromRpc({
|
|
53
55
|
* executionGasUsed: '0x5208',
|
|
56
|
+
* gasUsed: '0x5208',
|
|
54
57
|
* logs: [],
|
|
55
58
|
* stateGasUsed: '0x0',
|
|
56
|
-
* status:
|
|
59
|
+
* status: '0x1'
|
|
57
60
|
* })
|
|
58
61
|
* const rpc = FrameReceipt.toRpc(receipt)
|
|
59
62
|
* ```
|
|
60
63
|
*
|
|
61
64
|
* @param receipt - The frame receipt. Gas accepts hex, bigint, or number values.
|
|
62
|
-
* @returns The RPC frame receipt with hex gas and a
|
|
65
|
+
* @returns The RPC frame receipt with hex gas and a hex status.
|
|
63
66
|
*/
|
|
64
67
|
export function toRpc(receipt) {
|
|
65
68
|
return {
|
|
66
|
-
executionGasUsed: Quantity.fromNumberish(receipt.
|
|
69
|
+
executionGasUsed: Quantity.fromNumberish(receipt.executionGasUsed),
|
|
70
|
+
gasUsed: Quantity.fromNumberish(receipt.gasUsed),
|
|
67
71
|
logs: receipt.logs,
|
|
68
72
|
stateGasUsed: Quantity.fromNumberish(receipt.stateGasUsed),
|
|
69
73
|
status: toRpcStatus[receipt.status],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameReceipt.js","sourceRoot":"","sources":["../../core/FrameReceipt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"FrameReceipt.js","sourceRoot":"","sources":["../../core/FrameReceipt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,QAAQ,MAAM,wBAAwB,CAAA;AAqClD,oCAAoC;AACpC,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,KAAK,EAAE,UAAU;IACjB,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,SAAS;CACR,CAAA;AAEV,oCAAoC;AACpC,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,KAAK;CACN,CAAA;AAEV;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,OAAO,CAAC,OAAY;IAClC,OAAO;QACL,gBAAgB,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACxD,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;QACtC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,YAAY,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC;QAChD,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;KACtC,CAAA;AACH,CAAC;AAMD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,KAAK,CAAC,OAAoB;IACxC,OAAO;QACL,gBAAgB,EAAE,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAClE,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;QAChD,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,YAAY,EAAE,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;QAC1D,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;KACpC,CAAA;AACH,CAAC"}
|
|
@@ -89,16 +89,20 @@ export function assert(entry, options = {}) {
|
|
|
89
89
|
throw new InvalidError('Signature is required.');
|
|
90
90
|
return;
|
|
91
91
|
}
|
|
92
|
-
if (typeof entry.signature
|
|
93
|
-
|
|
92
|
+
if (typeof entry.signature === 'string')
|
|
93
|
+
Hex.assert(entry.signature, { strict: true });
|
|
94
|
+
const signature = typeof entry.signature === 'string'
|
|
95
|
+
? Signature.fromHex(entry.signature)
|
|
96
|
+
: entry.signature;
|
|
97
|
+
if (typeof signature.r !== 'bigint' || typeof signature.s !== 'bigint')
|
|
94
98
|
throw new InvalidError('Signature scalars must be bigint.');
|
|
95
|
-
if ((scheme === 1 ||
|
|
96
|
-
|
|
97
|
-
|
|
99
|
+
if ((scheme === 1 || signature.yParity !== undefined) &&
|
|
100
|
+
signature.yParity !== 0 &&
|
|
101
|
+
signature.yParity !== 1)
|
|
98
102
|
throw new InvalidError('Signature parity must be 0 or 1.');
|
|
99
|
-
Signature.assert(
|
|
100
|
-
const r =
|
|
101
|
-
const s =
|
|
103
|
+
Signature.assert(signature, { recovered: scheme === 1 });
|
|
104
|
+
const r = signature.r;
|
|
105
|
+
const s = signature.s;
|
|
102
106
|
const order = scheme === 1 ? secp256k1N : p256N;
|
|
103
107
|
if (r === 0n ||
|
|
104
108
|
r >= order ||
|
|
@@ -110,7 +114,8 @@ export function assert(entry, options = {}) {
|
|
|
110
114
|
/**
|
|
111
115
|
* Coerces a value into a {@link ox#FrameSignature.FrameSignature}.
|
|
112
116
|
*
|
|
113
|
-
* Accepts arbitrary signature bytes or a
|
|
117
|
+
* Accepts arbitrary signature bytes or a signature entry. Protocol signatures accept
|
|
118
|
+
* structured objects or `Signature.toHex` bytes. P-256 entries still require a public key. Omitted
|
|
114
119
|
* `scheme` and `payload` default to `'arbitrary'` and `'0x'`, respectively.
|
|
115
120
|
* An empty payload selects the canonical transaction signing hash; an explicit
|
|
116
121
|
* payload must be a nonzero 32-byte digest.
|
|
@@ -203,7 +208,7 @@ export function from(entry) {
|
|
|
203
208
|
*
|
|
204
209
|
* const entry = FrameSignature.fromRpc({
|
|
205
210
|
* msg: '0x',
|
|
206
|
-
* scheme:
|
|
211
|
+
* scheme: '0x0',
|
|
207
212
|
* signature: '0xdeadbeef'
|
|
208
213
|
* })
|
|
209
214
|
* ```
|
|
@@ -213,10 +218,12 @@ export function from(entry) {
|
|
|
213
218
|
*/
|
|
214
219
|
export function fromRpc(entry) {
|
|
215
220
|
return fromTuple([
|
|
216
|
-
entry.scheme ===
|
|
221
|
+
entry.scheme === '0x0'
|
|
222
|
+
? '0x'
|
|
223
|
+
: Hex.fromNumber(Hex.toNumber(entry.scheme), { size: 1 }),
|
|
217
224
|
entry.signer ?? '0x',
|
|
218
|
-
entry.msg,
|
|
219
|
-
entry.signature,
|
|
225
|
+
entry.msg ?? '0x',
|
|
226
|
+
entry.signature ?? '0x',
|
|
220
227
|
]);
|
|
221
228
|
}
|
|
222
229
|
/**
|
|
@@ -239,8 +246,10 @@ export function toRpc(entry) {
|
|
|
239
246
|
const [scheme, signer, msg, signature] = toTuple(entry);
|
|
240
247
|
return {
|
|
241
248
|
msg,
|
|
242
|
-
scheme: (scheme === '0x'
|
|
243
|
-
|
|
249
|
+
scheme: (scheme === '0x'
|
|
250
|
+
? '0x0'
|
|
251
|
+
: Hex.fromNumber(Hex.toNumber(scheme))),
|
|
252
|
+
...(signature === '0x' && scheme !== '0x' ? {} : { signature }),
|
|
244
253
|
...(signer === '0x' ? {} : { signer }),
|
|
245
254
|
};
|
|
246
255
|
}
|
|
@@ -352,15 +361,22 @@ export function toTuple(entry) {
|
|
|
352
361
|
case 'arbitrary':
|
|
353
362
|
return entry.signature;
|
|
354
363
|
case 1:
|
|
355
|
-
case 'secp256k1':
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
364
|
+
case 'secp256k1': {
|
|
365
|
+
if (entry.signature === undefined)
|
|
366
|
+
return '0x';
|
|
367
|
+
const signature = typeof entry.signature === 'string'
|
|
368
|
+
? Signature.fromHex(entry.signature)
|
|
369
|
+
: entry.signature;
|
|
370
|
+
return Hex.concat(Hex.fromNumber(signature.yParity, { size: 1 }), Hex.fromNumber(signature.r, { size: 32 }), Hex.fromNumber(signature.s, { size: 32 }));
|
|
371
|
+
}
|
|
359
372
|
case 2:
|
|
360
373
|
case 'p256': {
|
|
361
374
|
if (entry.signature === undefined)
|
|
362
375
|
return '0x';
|
|
363
|
-
const { publicKey
|
|
376
|
+
const { publicKey } = entry;
|
|
377
|
+
const signature = typeof entry.signature === 'string'
|
|
378
|
+
? Signature.fromHex(entry.signature)
|
|
379
|
+
: entry.signature;
|
|
364
380
|
const s = signature.s;
|
|
365
381
|
return Hex.concat(Hex.fromNumber(signature.r, { size: 32 }), Hex.fromNumber(s > p256N / 2n ? p256N - s : s, { size: 32 }), Hex.fromNumber(publicKey.x, { size: 32 }), Hex.fromNumber(publicKey.y, { size: 32 }));
|
|
366
382
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameSignature.js","sourceRoot":"","sources":["../../core/FrameSignature.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"FrameSignature.js","sourceRoot":"","sources":["../../core/FrameSignature.ts"],"names":[],"mappings":"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"}
|
package/_esm/version.js
CHANGED
package/_types/core/Frame.d.ts
CHANGED
|
@@ -42,13 +42,13 @@ export type Rpc = {
|
|
|
42
42
|
/** Frame calldata. */
|
|
43
43
|
data: Hex.Hex;
|
|
44
44
|
/** Execution gas budget. */
|
|
45
|
-
|
|
45
|
+
executionGas: Hex.Hex;
|
|
46
46
|
/** Approval scope and batching bits. */
|
|
47
|
-
flags:
|
|
47
|
+
flags: Hex.Hex;
|
|
48
48
|
/** Execution mode. */
|
|
49
|
-
mode:
|
|
49
|
+
mode: Hex.Hex;
|
|
50
50
|
/** State gas budget. */
|
|
51
|
-
|
|
51
|
+
stateGas: Hex.Hex;
|
|
52
52
|
/** Target address; absent for the transaction sender. */
|
|
53
53
|
target?: Address.Address | null | undefined;
|
|
54
54
|
/** Value transferred in wei. */
|
|
@@ -148,10 +148,10 @@ export declare namespace from {
|
|
|
148
148
|
*
|
|
149
149
|
* const frame = Frame.fromRpc({
|
|
150
150
|
* data: '0x',
|
|
151
|
-
*
|
|
152
|
-
* flags:
|
|
153
|
-
* mode:
|
|
154
|
-
*
|
|
151
|
+
* executionGas: '0xc350',
|
|
152
|
+
* flags: '0x3',
|
|
153
|
+
* mode: '0x1',
|
|
154
|
+
* stateGas: '0x0',
|
|
155
155
|
* value: '0x0'
|
|
156
156
|
* })
|
|
157
157
|
* ```
|
|
@@ -161,7 +161,7 @@ export declare namespace from {
|
|
|
161
161
|
*/
|
|
162
162
|
export declare function fromRpc(frame: Rpc): Frame;
|
|
163
163
|
export declare namespace fromRpc {
|
|
164
|
-
type ErrorType = from.ErrorType | Hex.toBigInt.ErrorType;
|
|
164
|
+
type ErrorType = from.ErrorType | Hex.toBigInt.ErrorType | Hex.toNumber.ErrorType;
|
|
165
165
|
}
|
|
166
166
|
/**
|
|
167
167
|
* Converts a frame to its JSON-RPC representation.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Frame.d.ts","sourceRoot":"","sources":["../../core/Frame.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAG/B,8BAA8B;AAC9B,MAAM,MAAM,KAAK,CAAC,UAAU,GAAG,MAAM,IAAI;IACvC;;;OAGG;IACH,IAAI,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;IAC1B;;;OAGG;IACH,YAAY,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IACrC;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IACzB;;;OAGG;IACH,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;IACvB;;;OAGG;IACH,QAAQ,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IACjC,6DAA6D;IAC7D,EAAE,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;IAChC;;;OAGG;IACH,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;CAC/B,CAAA;AAED,0CAA0C;AAC1C,MAAM,MAAM,GAAG,GAAG;IAChB,sBAAsB;IACtB,IAAI,EAAE,GAAG,CAAC,GAAG,CAAA;IACb,4BAA4B;IAC5B,
|
|
1
|
+
{"version":3,"file":"Frame.d.ts","sourceRoot":"","sources":["../../core/Frame.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,8 @@ import type * as Log from './Log.js';
|
|
|
4
4
|
/** Receipt for one frame. Frame logs contain only address, data, and topics. */
|
|
5
5
|
export type FrameReceipt<bigintType = bigint> = {
|
|
6
6
|
/** Execution gas used before transaction-level refunds. */
|
|
7
|
+
executionGasUsed: bigintType;
|
|
8
|
+
/** Total execution and state gas used. */
|
|
7
9
|
gasUsed: bigintType;
|
|
8
10
|
/** Logs emitted by this frame. */
|
|
9
11
|
logs: readonly Pick<Log.Log, 'address' | 'data' | 'topics'>[];
|
|
@@ -14,6 +16,8 @@ export type FrameReceipt<bigintType = bigint> = {
|
|
|
14
16
|
};
|
|
15
17
|
/** JSON-RPC receipt for one frame. */
|
|
16
18
|
export type Rpc = {
|
|
19
|
+
/** Total execution and state gas used. */
|
|
20
|
+
gasUsed: Hex.Hex;
|
|
17
21
|
/** Execution gas used. */
|
|
18
22
|
executionGasUsed: Hex.Hex;
|
|
19
23
|
/** Logs emitted by this frame. */
|
|
@@ -25,19 +29,19 @@ export type Rpc = {
|
|
|
25
29
|
};
|
|
26
30
|
/** Frame execution status. */
|
|
27
31
|
export type Status = 'reverted' | 'skipped' | 'success';
|
|
28
|
-
/**
|
|
29
|
-
export type RpcStatus =
|
|
32
|
+
/** Hex JSON-RPC frame execution status. */
|
|
33
|
+
export type RpcStatus = '0x0' | '0x1' | '0x2';
|
|
30
34
|
/** RPC status to status mapping. */
|
|
31
35
|
export declare const fromRpcStatus: {
|
|
32
|
-
readonly
|
|
33
|
-
readonly
|
|
34
|
-
readonly
|
|
36
|
+
readonly '0x0': "reverted";
|
|
37
|
+
readonly '0x1': "success";
|
|
38
|
+
readonly '0x2': "skipped";
|
|
35
39
|
};
|
|
36
40
|
/** Status to RPC status mapping. */
|
|
37
41
|
export declare const toRpcStatus: {
|
|
38
|
-
readonly reverted:
|
|
39
|
-
readonly skipped:
|
|
40
|
-
readonly success:
|
|
42
|
+
readonly reverted: "0x0";
|
|
43
|
+
readonly skipped: "0x2";
|
|
44
|
+
readonly success: "0x1";
|
|
41
45
|
};
|
|
42
46
|
/**
|
|
43
47
|
* Converts an RPC frame receipt to a {@link ox#FrameReceipt.FrameReceipt}.
|
|
@@ -50,9 +54,10 @@ export declare const toRpcStatus: {
|
|
|
50
54
|
*
|
|
51
55
|
* const receipt = FrameReceipt.fromRpc({
|
|
52
56
|
* executionGasUsed: '0x5208',
|
|
57
|
+
* gasUsed: '0x5208',
|
|
53
58
|
* logs: [],
|
|
54
59
|
* stateGasUsed: '0x0',
|
|
55
|
-
* status:
|
|
60
|
+
* status: '0x1'
|
|
56
61
|
* })
|
|
57
62
|
* ```
|
|
58
63
|
*
|
|
@@ -74,15 +79,16 @@ export declare namespace fromRpc {
|
|
|
74
79
|
*
|
|
75
80
|
* const receipt = FrameReceipt.fromRpc({
|
|
76
81
|
* executionGasUsed: '0x5208',
|
|
82
|
+
* gasUsed: '0x5208',
|
|
77
83
|
* logs: [],
|
|
78
84
|
* stateGasUsed: '0x0',
|
|
79
|
-
* status:
|
|
85
|
+
* status: '0x1'
|
|
80
86
|
* })
|
|
81
87
|
* const rpc = FrameReceipt.toRpc(receipt)
|
|
82
88
|
* ```
|
|
83
89
|
*
|
|
84
90
|
* @param receipt - The frame receipt. Gas accepts hex, bigint, or number values.
|
|
85
|
-
* @returns The RPC frame receipt with hex gas and a
|
|
91
|
+
* @returns The RPC frame receipt with hex gas and a hex status.
|
|
86
92
|
*/
|
|
87
93
|
export declare function toRpc(receipt: toRpc.Input): Rpc;
|
|
88
94
|
export declare namespace toRpc {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameReceipt.d.ts","sourceRoot":"","sources":["../../core/FrameReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B,OAAO,KAAK,KAAK,GAAG,MAAM,UAAU,CAAA;AAEpC,gFAAgF;AAChF,MAAM,MAAM,YAAY,CAAC,UAAU,GAAG,MAAM,IAAI;IAC9C,2DAA2D;IAC3D,OAAO,EAAE,UAAU,CAAA;IACnB,kCAAkC;IAClC,IAAI,EAAE,SAAS,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAA;IAC7D,mDAAmD;IACnD,YAAY,EAAE,UAAU,CAAA;IACxB,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,sCAAsC;AACtC,MAAM,MAAM,GAAG,GAAG;IAChB,0BAA0B;IAC1B,gBAAgB,EAAE,GAAG,CAAC,GAAG,CAAA;IACzB,kCAAkC;IAClC,IAAI,EAAE,SAAS,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAA;IAC7D,4BAA4B;IAC5B,YAAY,EAAE,GAAG,CAAC,GAAG,CAAA;IACrB,qEAAqE;IACrE,MAAM,EAAE,SAAS,CAAA;CAClB,CAAA;AAED,8BAA8B;AAC9B,MAAM,MAAM,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAA;AAEvD
|
|
1
|
+
{"version":3,"file":"FrameReceipt.d.ts","sourceRoot":"","sources":["../../core/FrameReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B,OAAO,KAAK,KAAK,GAAG,MAAM,UAAU,CAAA;AAEpC,gFAAgF;AAChF,MAAM,MAAM,YAAY,CAAC,UAAU,GAAG,MAAM,IAAI;IAC9C,2DAA2D;IAC3D,gBAAgB,EAAE,UAAU,CAAA;IAC5B,0CAA0C;IAC1C,OAAO,EAAE,UAAU,CAAA;IACnB,kCAAkC;IAClC,IAAI,EAAE,SAAS,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAA;IAC7D,mDAAmD;IACnD,YAAY,EAAE,UAAU,CAAA;IACxB,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,sCAAsC;AACtC,MAAM,MAAM,GAAG,GAAG;IAChB,0CAA0C;IAC1C,OAAO,EAAE,GAAG,CAAC,GAAG,CAAA;IAChB,0BAA0B;IAC1B,gBAAgB,EAAE,GAAG,CAAC,GAAG,CAAA;IACzB,kCAAkC;IAClC,IAAI,EAAE,SAAS,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAA;IAC7D,4BAA4B;IAC5B,YAAY,EAAE,GAAG,CAAC,GAAG,CAAA;IACrB,qEAAqE;IACrE,MAAM,EAAE,SAAS,CAAA;CAClB,CAAA;AAED,8BAA8B;AAC9B,MAAM,MAAM,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAA;AAEvD,2CAA2C;AAC3C,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAA;AAE7C,oCAAoC;AACpC,eAAO,MAAM,aAAa;;;;CAIhB,CAAA;AAEV,oCAAoC;AACpC,eAAO,MAAM,WAAW;;;;CAId,CAAA;AAEV;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,GAAG,GAAG,YAAY,CAQlD;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,KAAK,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,eAAe,CAAA;CACjE;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,GAAG,GAAG,CAQ/C;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,KAAK,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,GAAG,MAAM,GAAG,MAAM,CAAC,CAAA;IAEpD,KAAK,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,SAAS,GAAG,MAAM,CAAC,eAAe,CAAA;CACnE"}
|
|
@@ -23,18 +23,18 @@ export type Arbitrary = {
|
|
|
23
23
|
/** Arbitrary signatures have no signer metadata. */
|
|
24
24
|
signer?: undefined;
|
|
25
25
|
};
|
|
26
|
-
/** A
|
|
26
|
+
/** A secp256k1 signature entry. */
|
|
27
27
|
export type Secp256k1 = {
|
|
28
28
|
/** Explicit nonzero digest. Omit or use empty bytes for the transaction signing hash. */
|
|
29
29
|
payload?: Hex.Hex | undefined;
|
|
30
30
|
/** secp256k1 verification scheme. */
|
|
31
31
|
scheme: 1 | 'secp256k1';
|
|
32
|
-
/** Recovered signature. Omit for an unsigned entry. */
|
|
33
|
-
signature?: Signature.Signature | undefined;
|
|
32
|
+
/** Recovered signature or `Signature.toHex` bytes. Omit for an unsigned entry. */
|
|
33
|
+
signature?: Hex.Hex | Signature.Signature | undefined;
|
|
34
34
|
/** Signer address. Omit to use the transaction sender. */
|
|
35
35
|
signer?: Address.Address | undefined;
|
|
36
36
|
};
|
|
37
|
-
/** A
|
|
37
|
+
/** A P-256 signature entry. */
|
|
38
38
|
export type P256 = {
|
|
39
39
|
/** Explicit nonzero digest. Omit or use empty bytes for the transaction signing hash. */
|
|
40
40
|
payload?: Hex.Hex | undefined;
|
|
@@ -45,8 +45,8 @@ export type P256 = {
|
|
|
45
45
|
} & ({
|
|
46
46
|
/** Uncompressed P-256 public key. */
|
|
47
47
|
publicKey: PublicKey.PublicKey;
|
|
48
|
-
/** P-256 signature. */
|
|
49
|
-
signature: Signature.Signature<false>;
|
|
48
|
+
/** P-256 signature or `Signature.toHex` bytes. */
|
|
49
|
+
signature: Hex.Hex | Signature.Signature<false>;
|
|
50
50
|
} | {
|
|
51
51
|
/** Public key, if already known. Empty wire signatures do not retain it. */
|
|
52
52
|
publicKey?: PublicKey.PublicKey | undefined;
|
|
@@ -58,11 +58,11 @@ export type FrameSignature = Arbitrary | Secp256k1 | P256;
|
|
|
58
58
|
/** JSON-RPC representation of a frame signature. */
|
|
59
59
|
export type Rpc = {
|
|
60
60
|
/** Explicit digest, or empty bytes for the transaction signing hash. */
|
|
61
|
-
msg
|
|
61
|
+
msg?: Hex.Hex | undefined;
|
|
62
62
|
/** Signature verification scheme. */
|
|
63
|
-
scheme:
|
|
63
|
+
scheme: '0x0' | '0x1' | '0x2';
|
|
64
64
|
/** Encoded signature bytes. */
|
|
65
|
-
signature
|
|
65
|
+
signature?: Hex.Hex | undefined;
|
|
66
66
|
/** Signer address; absent for the transaction sender. */
|
|
67
67
|
signer?: Address.Address | null | undefined;
|
|
68
68
|
};
|
|
@@ -126,12 +126,13 @@ export declare namespace assert {
|
|
|
126
126
|
*/
|
|
127
127
|
signed?: boolean | undefined;
|
|
128
128
|
};
|
|
129
|
-
type ErrorType = InvalidError | Address.assert.ErrorType | Hex.assert.ErrorType | Hex.toBigInt.ErrorType | PublicKey.assert.ErrorType | Signature.assert.ErrorType | Errors.GlobalErrorType;
|
|
129
|
+
type ErrorType = InvalidError | Address.assert.ErrorType | Hex.assert.ErrorType | Hex.toBigInt.ErrorType | PublicKey.assert.ErrorType | Signature.assert.ErrorType | Signature.fromHex.ErrorType | Errors.GlobalErrorType;
|
|
130
130
|
}
|
|
131
131
|
/**
|
|
132
132
|
* Coerces a value into a {@link ox#FrameSignature.FrameSignature}.
|
|
133
133
|
*
|
|
134
|
-
* Accepts arbitrary signature bytes or a
|
|
134
|
+
* Accepts arbitrary signature bytes or a signature entry. Protocol signatures accept
|
|
135
|
+
* structured objects or `Signature.toHex` bytes. P-256 entries still require a public key. Omitted
|
|
135
136
|
* `scheme` and `payload` default to `'arbitrary'` and `'0x'`, respectively.
|
|
136
137
|
* An empty payload selects the canonical transaction signing hash; an explicit
|
|
137
138
|
* payload must be a nonzero 32-byte digest.
|
|
@@ -230,7 +231,7 @@ export declare namespace from {
|
|
|
230
231
|
*
|
|
231
232
|
* const entry = FrameSignature.fromRpc({
|
|
232
233
|
* msg: '0x',
|
|
233
|
-
* scheme:
|
|
234
|
+
* scheme: '0x0',
|
|
234
235
|
* signature: '0xdeadbeef'
|
|
235
236
|
* })
|
|
236
237
|
* ```
|
|
@@ -240,7 +241,7 @@ export declare namespace from {
|
|
|
240
241
|
*/
|
|
241
242
|
export declare function fromRpc(entry: Rpc): FrameSignature;
|
|
242
243
|
export declare namespace fromRpc {
|
|
243
|
-
type ErrorType = fromTuple.ErrorType | Hex.fromNumber.ErrorType;
|
|
244
|
+
type ErrorType = fromTuple.ErrorType | Hex.fromNumber.ErrorType | Hex.toNumber.ErrorType;
|
|
244
245
|
}
|
|
245
246
|
/**
|
|
246
247
|
* Converts a structured frame signature to its RPC representation.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrameSignature.d.ts","sourceRoot":"","sources":["../../core/FrameSignature.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAC3C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C,+CAA+C;AAC/C,eAAO,MAAM,OAAO;;;;CAAmD,CAAA;AAEvE,2DAA2D;AAC3D,MAAM,MAAM,MAAM,GACd,MAAM,OAAO,OAAO,GACpB,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,OAAO,OAAO,CAAC,CAAA;AAE1C,wCAAwC;AACxC,MAAM,MAAM,SAAS,GAAG;IACtB,yFAAyF;IACzF,OAAO,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;IAC7B,4CAA4C;IAC5C,MAAM,EAAE,CAAC,GAAG,WAAW,CAAA;IACvB,4BAA4B;IAC5B,SAAS,EAAE,GAAG,CAAC,GAAG,CAAA;IAClB,oDAAoD;IACpD,MAAM,CAAC,EAAE,SAAS,CAAA;CACnB,CAAA;AAED,
|
|
1
|
+
{"version":3,"file":"FrameSignature.d.ts","sourceRoot":"","sources":["../../core/FrameSignature.ts"],"names":[],"mappings":"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"}
|
package/_types/version.d.ts
CHANGED
package/core/Frame.ts
CHANGED
|
@@ -45,13 +45,13 @@ export type Rpc = {
|
|
|
45
45
|
/** Frame calldata. */
|
|
46
46
|
data: Hex.Hex
|
|
47
47
|
/** Execution gas budget. */
|
|
48
|
-
|
|
48
|
+
executionGas: Hex.Hex
|
|
49
49
|
/** Approval scope and batching bits. */
|
|
50
|
-
flags:
|
|
50
|
+
flags: Hex.Hex
|
|
51
51
|
/** Execution mode. */
|
|
52
|
-
mode:
|
|
52
|
+
mode: Hex.Hex
|
|
53
53
|
/** State gas budget. */
|
|
54
|
-
|
|
54
|
+
stateGas: Hex.Hex
|
|
55
55
|
/** Target address; absent for the transaction sender. */
|
|
56
56
|
target?: Address.Address | null | undefined
|
|
57
57
|
/** Value transferred in wei. */
|
|
@@ -205,10 +205,10 @@ export declare namespace from {
|
|
|
205
205
|
*
|
|
206
206
|
* const frame = Frame.fromRpc({
|
|
207
207
|
* data: '0x',
|
|
208
|
-
*
|
|
209
|
-
* flags:
|
|
210
|
-
* mode:
|
|
211
|
-
*
|
|
208
|
+
* executionGas: '0xc350',
|
|
209
|
+
* flags: '0x3',
|
|
210
|
+
* mode: '0x1',
|
|
211
|
+
* stateGas: '0x0',
|
|
212
212
|
* value: '0x0'
|
|
213
213
|
* })
|
|
214
214
|
* ```
|
|
@@ -219,17 +219,20 @@ export declare namespace from {
|
|
|
219
219
|
export function fromRpc(frame: Rpc): Frame {
|
|
220
220
|
return from({
|
|
221
221
|
data: frame.data,
|
|
222
|
-
executionGas: Hex.toBigInt(frame.
|
|
223
|
-
flags: frame.flags,
|
|
224
|
-
mode: frame.mode,
|
|
225
|
-
stateGas: Hex.toBigInt(frame.
|
|
222
|
+
executionGas: Hex.toBigInt(frame.executionGas),
|
|
223
|
+
flags: Hex.toNumber(frame.flags),
|
|
224
|
+
mode: Hex.toNumber(frame.mode),
|
|
225
|
+
stateGas: Hex.toBigInt(frame.stateGas),
|
|
226
226
|
...(frame.target == null ? {} : { to: frame.target }),
|
|
227
227
|
value: Hex.toBigInt(frame.value),
|
|
228
228
|
})
|
|
229
229
|
}
|
|
230
230
|
|
|
231
231
|
export declare namespace fromRpc {
|
|
232
|
-
type ErrorType =
|
|
232
|
+
type ErrorType =
|
|
233
|
+
| from.ErrorType
|
|
234
|
+
| Hex.toBigInt.ErrorType
|
|
235
|
+
| Hex.toNumber.ErrorType
|
|
233
236
|
}
|
|
234
237
|
|
|
235
238
|
/**
|
|
@@ -252,10 +255,10 @@ export function toRpc(frame: toRpc.Input): Rpc {
|
|
|
252
255
|
const { flags: flags_ = 0, mode = 0 } = frame
|
|
253
256
|
return {
|
|
254
257
|
data: frame.data ?? '0x',
|
|
255
|
-
|
|
256
|
-
flags: typeof flags_ === 'string' ? flags[flags_] : flags_,
|
|
257
|
-
mode: typeof mode === 'string' ? modes[mode] : mode,
|
|
258
|
-
|
|
258
|
+
executionGas: Quantity.fromNumberish(frame.executionGas ?? 0n),
|
|
259
|
+
flags: Hex.fromNumber(typeof flags_ === 'string' ? flags[flags_] : flags_),
|
|
260
|
+
mode: Hex.fromNumber(typeof mode === 'string' ? modes[mode] : mode),
|
|
261
|
+
stateGas: Quantity.fromNumberish(frame.stateGas ?? 0n),
|
|
259
262
|
...(frame.to === undefined ? {} : { target: frame.to }),
|
|
260
263
|
value: Quantity.fromNumberish(frame.value ?? 0n),
|
|
261
264
|
}
|
package/core/FrameReceipt.ts
CHANGED
|
@@ -6,6 +6,8 @@ import type * as Log from './Log.js'
|
|
|
6
6
|
/** Receipt for one frame. Frame logs contain only address, data, and topics. */
|
|
7
7
|
export type FrameReceipt<bigintType = bigint> = {
|
|
8
8
|
/** Execution gas used before transaction-level refunds. */
|
|
9
|
+
executionGasUsed: bigintType
|
|
10
|
+
/** Total execution and state gas used. */
|
|
9
11
|
gasUsed: bigintType
|
|
10
12
|
/** Logs emitted by this frame. */
|
|
11
13
|
logs: readonly Pick<Log.Log, 'address' | 'data' | 'topics'>[]
|
|
@@ -17,6 +19,8 @@ export type FrameReceipt<bigintType = bigint> = {
|
|
|
17
19
|
|
|
18
20
|
/** JSON-RPC receipt for one frame. */
|
|
19
21
|
export type Rpc = {
|
|
22
|
+
/** Total execution and state gas used. */
|
|
23
|
+
gasUsed: Hex.Hex
|
|
20
24
|
/** Execution gas used. */
|
|
21
25
|
executionGasUsed: Hex.Hex
|
|
22
26
|
/** Logs emitted by this frame. */
|
|
@@ -30,21 +34,21 @@ export type Rpc = {
|
|
|
30
34
|
/** Frame execution status. */
|
|
31
35
|
export type Status = 'reverted' | 'skipped' | 'success'
|
|
32
36
|
|
|
33
|
-
/**
|
|
34
|
-
export type RpcStatus =
|
|
37
|
+
/** Hex JSON-RPC frame execution status. */
|
|
38
|
+
export type RpcStatus = '0x0' | '0x1' | '0x2'
|
|
35
39
|
|
|
36
40
|
/** RPC status to status mapping. */
|
|
37
41
|
export const fromRpcStatus = {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
'0x0': 'reverted',
|
|
43
|
+
'0x1': 'success',
|
|
44
|
+
'0x2': 'skipped',
|
|
41
45
|
} as const
|
|
42
46
|
|
|
43
47
|
/** Status to RPC status mapping. */
|
|
44
48
|
export const toRpcStatus = {
|
|
45
|
-
reverted:
|
|
46
|
-
skipped:
|
|
47
|
-
success:
|
|
49
|
+
reverted: '0x0',
|
|
50
|
+
skipped: '0x2',
|
|
51
|
+
success: '0x1',
|
|
48
52
|
} as const
|
|
49
53
|
|
|
50
54
|
/**
|
|
@@ -58,9 +62,10 @@ export const toRpcStatus = {
|
|
|
58
62
|
*
|
|
59
63
|
* const receipt = FrameReceipt.fromRpc({
|
|
60
64
|
* executionGasUsed: '0x5208',
|
|
65
|
+
* gasUsed: '0x5208',
|
|
61
66
|
* logs: [],
|
|
62
67
|
* stateGasUsed: '0x0',
|
|
63
|
-
* status:
|
|
68
|
+
* status: '0x1'
|
|
64
69
|
* })
|
|
65
70
|
* ```
|
|
66
71
|
*
|
|
@@ -69,7 +74,8 @@ export const toRpcStatus = {
|
|
|
69
74
|
*/
|
|
70
75
|
export function fromRpc(receipt: Rpc): FrameReceipt {
|
|
71
76
|
return {
|
|
72
|
-
|
|
77
|
+
executionGasUsed: Hex.toBigInt(receipt.executionGasUsed),
|
|
78
|
+
gasUsed: Hex.toBigInt(receipt.gasUsed),
|
|
73
79
|
logs: receipt.logs,
|
|
74
80
|
stateGasUsed: Hex.toBigInt(receipt.stateGasUsed),
|
|
75
81
|
status: fromRpcStatus[receipt.status],
|
|
@@ -91,19 +97,21 @@ export declare namespace fromRpc {
|
|
|
91
97
|
*
|
|
92
98
|
* const receipt = FrameReceipt.fromRpc({
|
|
93
99
|
* executionGasUsed: '0x5208',
|
|
100
|
+
* gasUsed: '0x5208',
|
|
94
101
|
* logs: [],
|
|
95
102
|
* stateGasUsed: '0x0',
|
|
96
|
-
* status:
|
|
103
|
+
* status: '0x1'
|
|
97
104
|
* })
|
|
98
105
|
* const rpc = FrameReceipt.toRpc(receipt)
|
|
99
106
|
* ```
|
|
100
107
|
*
|
|
101
108
|
* @param receipt - The frame receipt. Gas accepts hex, bigint, or number values.
|
|
102
|
-
* @returns The RPC frame receipt with hex gas and a
|
|
109
|
+
* @returns The RPC frame receipt with hex gas and a hex status.
|
|
103
110
|
*/
|
|
104
111
|
export function toRpc(receipt: toRpc.Input): Rpc {
|
|
105
112
|
return {
|
|
106
|
-
executionGasUsed: Quantity.fromNumberish(receipt.
|
|
113
|
+
executionGasUsed: Quantity.fromNumberish(receipt.executionGasUsed),
|
|
114
|
+
gasUsed: Quantity.fromNumberish(receipt.gasUsed),
|
|
107
115
|
logs: receipt.logs,
|
|
108
116
|
stateGasUsed: Quantity.fromNumberish(receipt.stateGasUsed),
|
|
109
117
|
status: toRpcStatus[receipt.status],
|
package/core/FrameSignature.ts
CHANGED
|
@@ -26,19 +26,19 @@ export type Arbitrary = {
|
|
|
26
26
|
signer?: undefined
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
/** A
|
|
29
|
+
/** A secp256k1 signature entry. */
|
|
30
30
|
export type Secp256k1 = {
|
|
31
31
|
/** Explicit nonzero digest. Omit or use empty bytes for the transaction signing hash. */
|
|
32
32
|
payload?: Hex.Hex | undefined
|
|
33
33
|
/** secp256k1 verification scheme. */
|
|
34
34
|
scheme: 1 | 'secp256k1'
|
|
35
|
-
/** Recovered signature. Omit for an unsigned entry. */
|
|
36
|
-
signature?: Signature.Signature | undefined
|
|
35
|
+
/** Recovered signature or `Signature.toHex` bytes. Omit for an unsigned entry. */
|
|
36
|
+
signature?: Hex.Hex | Signature.Signature | undefined
|
|
37
37
|
/** Signer address. Omit to use the transaction sender. */
|
|
38
38
|
signer?: Address.Address | undefined
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
/** A
|
|
41
|
+
/** A P-256 signature entry. */
|
|
42
42
|
export type P256 = {
|
|
43
43
|
/** Explicit nonzero digest. Omit or use empty bytes for the transaction signing hash. */
|
|
44
44
|
payload?: Hex.Hex | undefined
|
|
@@ -50,8 +50,8 @@ export type P256 = {
|
|
|
50
50
|
| {
|
|
51
51
|
/** Uncompressed P-256 public key. */
|
|
52
52
|
publicKey: PublicKey.PublicKey
|
|
53
|
-
/** P-256 signature. */
|
|
54
|
-
signature: Signature.Signature<false>
|
|
53
|
+
/** P-256 signature or `Signature.toHex` bytes. */
|
|
54
|
+
signature: Hex.Hex | Signature.Signature<false>
|
|
55
55
|
}
|
|
56
56
|
| {
|
|
57
57
|
/** Public key, if already known. Empty wire signatures do not retain it. */
|
|
@@ -67,11 +67,11 @@ export type FrameSignature = Arbitrary | Secp256k1 | P256
|
|
|
67
67
|
/** JSON-RPC representation of a frame signature. */
|
|
68
68
|
export type Rpc = {
|
|
69
69
|
/** Explicit digest, or empty bytes for the transaction signing hash. */
|
|
70
|
-
msg
|
|
70
|
+
msg?: Hex.Hex | undefined
|
|
71
71
|
/** Signature verification scheme. */
|
|
72
|
-
scheme:
|
|
72
|
+
scheme: '0x0' | '0x1' | '0x2'
|
|
73
73
|
/** Encoded signature bytes. */
|
|
74
|
-
signature
|
|
74
|
+
signature?: Hex.Hex | undefined
|
|
75
75
|
/** Signer address; absent for the transaction sender. */
|
|
76
76
|
signer?: Address.Address | null | undefined
|
|
77
77
|
}
|
|
@@ -174,20 +174,23 @@ export function assert(
|
|
|
174
174
|
if (options.signed) throw new InvalidError('Signature is required.')
|
|
175
175
|
return
|
|
176
176
|
}
|
|
177
|
-
if (
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
177
|
+
if (typeof entry.signature === 'string')
|
|
178
|
+
Hex.assert(entry.signature, { strict: true })
|
|
179
|
+
const signature =
|
|
180
|
+
typeof entry.signature === 'string'
|
|
181
|
+
? Signature.fromHex(entry.signature)
|
|
182
|
+
: entry.signature
|
|
183
|
+
if (typeof signature.r !== 'bigint' || typeof signature.s !== 'bigint')
|
|
181
184
|
throw new InvalidError('Signature scalars must be bigint.')
|
|
182
185
|
if (
|
|
183
|
-
(scheme === 1 ||
|
|
184
|
-
|
|
185
|
-
|
|
186
|
+
(scheme === 1 || signature.yParity !== undefined) &&
|
|
187
|
+
signature.yParity !== 0 &&
|
|
188
|
+
signature.yParity !== 1
|
|
186
189
|
)
|
|
187
190
|
throw new InvalidError('Signature parity must be 0 or 1.')
|
|
188
|
-
Signature.assert(
|
|
189
|
-
const r =
|
|
190
|
-
const s =
|
|
191
|
+
Signature.assert(signature, { recovered: scheme === 1 })
|
|
192
|
+
const r = signature.r
|
|
193
|
+
const s = signature.s
|
|
191
194
|
const order = scheme === 1 ? secp256k1N : p256N
|
|
192
195
|
if (
|
|
193
196
|
r === 0n ||
|
|
@@ -216,13 +219,15 @@ export declare namespace assert {
|
|
|
216
219
|
| Hex.toBigInt.ErrorType
|
|
217
220
|
| PublicKey.assert.ErrorType
|
|
218
221
|
| Signature.assert.ErrorType
|
|
222
|
+
| Signature.fromHex.ErrorType
|
|
219
223
|
| Errors.GlobalErrorType
|
|
220
224
|
}
|
|
221
225
|
|
|
222
226
|
/**
|
|
223
227
|
* Coerces a value into a {@link ox#FrameSignature.FrameSignature}.
|
|
224
228
|
*
|
|
225
|
-
* Accepts arbitrary signature bytes or a
|
|
229
|
+
* Accepts arbitrary signature bytes or a signature entry. Protocol signatures accept
|
|
230
|
+
* structured objects or `Signature.toHex` bytes. P-256 entries still require a public key. Omitted
|
|
226
231
|
* `scheme` and `payload` default to `'arbitrary'` and `'0x'`, respectively.
|
|
227
232
|
* An empty payload selects the canonical transaction signing hash; an explicit
|
|
228
233
|
* payload must be a nonzero 32-byte digest.
|
|
@@ -346,7 +351,7 @@ export declare namespace from {
|
|
|
346
351
|
*
|
|
347
352
|
* const entry = FrameSignature.fromRpc({
|
|
348
353
|
* msg: '0x',
|
|
349
|
-
* scheme:
|
|
354
|
+
* scheme: '0x0',
|
|
350
355
|
* signature: '0xdeadbeef'
|
|
351
356
|
* })
|
|
352
357
|
* ```
|
|
@@ -356,15 +361,20 @@ export declare namespace from {
|
|
|
356
361
|
*/
|
|
357
362
|
export function fromRpc(entry: Rpc): FrameSignature {
|
|
358
363
|
return fromTuple([
|
|
359
|
-
entry.scheme ===
|
|
364
|
+
entry.scheme === '0x0'
|
|
365
|
+
? '0x'
|
|
366
|
+
: Hex.fromNumber(Hex.toNumber(entry.scheme), { size: 1 }),
|
|
360
367
|
entry.signer ?? '0x',
|
|
361
|
-
entry.msg,
|
|
362
|
-
entry.signature,
|
|
368
|
+
entry.msg ?? '0x',
|
|
369
|
+
entry.signature ?? '0x',
|
|
363
370
|
])
|
|
364
371
|
}
|
|
365
372
|
|
|
366
373
|
export declare namespace fromRpc {
|
|
367
|
-
type ErrorType =
|
|
374
|
+
type ErrorType =
|
|
375
|
+
| fromTuple.ErrorType
|
|
376
|
+
| Hex.fromNumber.ErrorType
|
|
377
|
+
| Hex.toNumber.ErrorType
|
|
368
378
|
}
|
|
369
379
|
|
|
370
380
|
/**
|
|
@@ -387,8 +397,10 @@ export function toRpc(entry: FrameSignature): Rpc {
|
|
|
387
397
|
const [scheme, signer, msg, signature] = toTuple(entry)
|
|
388
398
|
return {
|
|
389
399
|
msg,
|
|
390
|
-
scheme: (scheme === '0x'
|
|
391
|
-
|
|
400
|
+
scheme: (scheme === '0x'
|
|
401
|
+
? '0x0'
|
|
402
|
+
: Hex.fromNumber(Hex.toNumber(scheme))) as Rpc['scheme'],
|
|
403
|
+
...(signature === '0x' && scheme !== '0x' ? {} : { signature }),
|
|
392
404
|
...(signer === '0x' ? {} : { signer }),
|
|
393
405
|
}
|
|
394
406
|
}
|
|
@@ -518,18 +530,26 @@ export function toTuple(entry: FrameSignature): Tuple {
|
|
|
518
530
|
case 'arbitrary':
|
|
519
531
|
return entry.signature
|
|
520
532
|
case 1:
|
|
521
|
-
case 'secp256k1':
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
533
|
+
case 'secp256k1': {
|
|
534
|
+
if (entry.signature === undefined) return '0x'
|
|
535
|
+
const signature =
|
|
536
|
+
typeof entry.signature === 'string'
|
|
537
|
+
? Signature.fromHex(entry.signature)
|
|
538
|
+
: entry.signature
|
|
539
|
+
return Hex.concat(
|
|
540
|
+
Hex.fromNumber(signature.yParity, { size: 1 }),
|
|
541
|
+
Hex.fromNumber(signature.r, { size: 32 }),
|
|
542
|
+
Hex.fromNumber(signature.s, { size: 32 }),
|
|
543
|
+
)
|
|
544
|
+
}
|
|
529
545
|
case 2:
|
|
530
546
|
case 'p256': {
|
|
531
547
|
if (entry.signature === undefined) return '0x'
|
|
532
|
-
const { publicKey
|
|
548
|
+
const { publicKey } = entry
|
|
549
|
+
const signature =
|
|
550
|
+
typeof entry.signature === 'string'
|
|
551
|
+
? Signature.fromHex(entry.signature)
|
|
552
|
+
: entry.signature
|
|
533
553
|
const s = signature.s
|
|
534
554
|
return Hex.concat(
|
|
535
555
|
Hex.fromNumber(signature.r, { size: 32 }),
|
package/package.json
CHANGED
package/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/** @internal */
|
|
2
|
-
export const version = '0.14.
|
|
2
|
+
export const version = '0.14.49'
|