ox 0.14.44 → 0.14.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/Frame/package.json +6 -0
  3. package/FrameReceipt/package.json +6 -0
  4. package/FrameSignature/package.json +6 -0
  5. package/TxEnvelopeEip8141/package.json +6 -0
  6. package/_cjs/core/Frame.js +147 -0
  7. package/_cjs/core/Frame.js.map +1 -0
  8. package/_cjs/core/FrameReceipt.js +34 -0
  9. package/_cjs/core/FrameReceipt.js.map +1 -0
  10. package/_cjs/core/FrameSignature.js +203 -0
  11. package/_cjs/core/FrameSignature.js.map +1 -0
  12. package/_cjs/core/Transaction.js +18 -2
  13. package/_cjs/core/Transaction.js.map +1 -1
  14. package/_cjs/core/TransactionReceipt.js +10 -0
  15. package/_cjs/core/TransactionReceipt.js.map +1 -1
  16. package/_cjs/core/TransactionRequest.js +11 -1
  17. package/_cjs/core/TransactionRequest.js.map +1 -1
  18. package/_cjs/core/TxEnvelopeEip8141.js +283 -0
  19. package/_cjs/core/TxEnvelopeEip8141.js.map +1 -0
  20. package/_cjs/core/internal/curves.js +6 -0
  21. package/_cjs/core/internal/curves.js.map +1 -0
  22. package/_cjs/core/internal/quantity.js +10 -0
  23. package/_cjs/core/internal/quantity.js.map +1 -0
  24. package/_cjs/erc4337/UserOperationReceipt.js.map +1 -1
  25. package/_cjs/index.js +6 -2
  26. package/_cjs/index.js.map +1 -1
  27. package/_cjs/tempo/KeyAuthorization.js +43 -10
  28. package/_cjs/tempo/KeyAuthorization.js.map +1 -1
  29. package/_cjs/tempo/MultisigConfig.js +33 -11
  30. package/_cjs/tempo/MultisigConfig.js.map +1 -1
  31. package/_cjs/tempo/MultisigOperation.js +18 -94
  32. package/_cjs/tempo/MultisigOperation.js.map +1 -1
  33. package/_cjs/tempo/MultisigSimulation.js +18 -46
  34. package/_cjs/tempo/MultisigSimulation.js.map +1 -1
  35. package/_cjs/tempo/SignatureEnvelope.js +72 -109
  36. package/_cjs/tempo/SignatureEnvelope.js.map +1 -1
  37. package/_cjs/tempo/TransactionRequest.js +5 -1
  38. package/_cjs/tempo/TransactionRequest.js.map +1 -1
  39. package/_cjs/tempo/index.js.map +1 -1
  40. package/_cjs/version.js +1 -1
  41. package/_esm/core/Frame.js +311 -0
  42. package/_esm/core/Frame.js.map +1 -0
  43. package/_esm/core/FrameReceipt.js +72 -0
  44. package/_esm/core/FrameReceipt.js.map +1 -0
  45. package/_esm/core/FrameSignature.js +422 -0
  46. package/_esm/core/FrameSignature.js.map +1 -0
  47. package/_esm/core/Transaction.js +18 -2
  48. package/_esm/core/Transaction.js.map +1 -1
  49. package/_esm/core/TransactionReceipt.js +10 -0
  50. package/_esm/core/TransactionReceipt.js.map +1 -1
  51. package/_esm/core/TransactionRequest.js +11 -1
  52. package/_esm/core/TransactionRequest.js.map +1 -1
  53. package/_esm/core/TxEnvelopeEip8141.js +490 -0
  54. package/_esm/core/TxEnvelopeEip8141.js.map +1 -0
  55. package/_esm/core/internal/curves.js +19 -0
  56. package/_esm/core/internal/curves.js.map +1 -0
  57. package/_esm/core/internal/quantity.js +14 -0
  58. package/_esm/core/internal/quantity.js.map +1 -0
  59. package/_esm/erc4337/UserOperationReceipt.js.map +1 -1
  60. package/_esm/index.js +73 -0
  61. package/_esm/index.js.map +1 -1
  62. package/_esm/tempo/KeyAuthorization.js +42 -9
  63. package/_esm/tempo/KeyAuthorization.js.map +1 -1
  64. package/_esm/tempo/MultisigConfig.js +41 -22
  65. package/_esm/tempo/MultisigConfig.js.map +1 -1
  66. package/_esm/tempo/MultisigOperation.js +20 -100
  67. package/_esm/tempo/MultisigOperation.js.map +1 -1
  68. package/_esm/tempo/MultisigSimulation.js +18 -46
  69. package/_esm/tempo/MultisigSimulation.js.map +1 -1
  70. package/_esm/tempo/SignatureEnvelope.js +107 -169
  71. package/_esm/tempo/SignatureEnvelope.js.map +1 -1
  72. package/_esm/tempo/TransactionRequest.js +5 -1
  73. package/_esm/tempo/TransactionRequest.js.map +1 -1
  74. package/_esm/tempo/index.js +3 -1
  75. package/_esm/tempo/index.js.map +1 -1
  76. package/_esm/version.js +1 -1
  77. package/_types/core/Frame.d.ts +290 -0
  78. package/_types/core/Frame.d.ts.map +1 -0
  79. package/_types/core/FrameReceipt.d.ts +92 -0
  80. package/_types/core/FrameReceipt.d.ts.map +1 -0
  81. package/_types/core/FrameSignature.d.ts +357 -0
  82. package/_types/core/FrameSignature.d.ts.map +1 -0
  83. package/_types/core/Transaction.d.ts +29 -4
  84. package/_types/core/Transaction.d.ts.map +1 -1
  85. package/_types/core/TransactionReceipt.d.ts +15 -6
  86. package/_types/core/TransactionReceipt.d.ts.map +1 -1
  87. package/_types/core/TransactionRequest.d.ts +10 -4
  88. package/_types/core/TransactionRequest.d.ts.map +1 -1
  89. package/_types/core/TxEnvelopeEip8141.d.ts +343 -0
  90. package/_types/core/TxEnvelopeEip8141.d.ts.map +1 -0
  91. package/_types/core/internal/curves.d.ts +19 -0
  92. package/_types/core/internal/curves.d.ts.map +1 -0
  93. package/_types/core/internal/quantity.d.ts +10 -0
  94. package/_types/core/internal/quantity.d.ts.map +1 -0
  95. package/_types/erc4337/UserOperationReceipt.d.ts +1 -1
  96. package/_types/erc4337/UserOperationReceipt.d.ts.map +1 -1
  97. package/_types/index.d.ts +73 -0
  98. package/_types/index.d.ts.map +1 -1
  99. package/_types/tempo/KeyAuthorization.d.ts +48 -38
  100. package/_types/tempo/KeyAuthorization.d.ts.map +1 -1
  101. package/_types/tempo/MultisigConfig.d.ts +15 -14
  102. package/_types/tempo/MultisigConfig.d.ts.map +1 -1
  103. package/_types/tempo/MultisigOperation.d.ts +3 -2
  104. package/_types/tempo/MultisigOperation.d.ts.map +1 -1
  105. package/_types/tempo/MultisigSimulation.d.ts +2 -49
  106. package/_types/tempo/MultisigSimulation.d.ts.map +1 -1
  107. package/_types/tempo/SignatureEnvelope.d.ts +69 -128
  108. package/_types/tempo/SignatureEnvelope.d.ts.map +1 -1
  109. package/_types/tempo/Transaction.d.ts +2 -0
  110. package/_types/tempo/Transaction.d.ts.map +1 -1
  111. package/_types/tempo/TransactionReceipt.d.ts +2 -0
  112. package/_types/tempo/TransactionReceipt.d.ts.map +1 -1
  113. package/_types/tempo/TransactionRequest.d.ts +5 -2
  114. package/_types/tempo/TransactionRequest.d.ts.map +1 -1
  115. package/_types/tempo/index.d.ts +3 -1
  116. package/_types/tempo/index.d.ts.map +1 -1
  117. package/_types/version.d.ts +1 -1
  118. package/core/Frame.ts +443 -0
  119. package/core/FrameReceipt.ts +117 -0
  120. package/core/FrameSignature.ts +606 -0
  121. package/core/Transaction.ts +73 -4
  122. package/core/TransactionReceipt.ts +41 -4
  123. package/core/TransactionRequest.ts +26 -2
  124. package/core/TxEnvelopeEip8141.ts +717 -0
  125. package/core/internal/curves.ts +22 -0
  126. package/core/internal/quantity.ts +16 -0
  127. package/erc4337/UserOperationReceipt.ts +1 -6
  128. package/index.ts +73 -0
  129. package/package.json +21 -1
  130. package/tempo/AuthorizationTempo.test.ts +8 -4
  131. package/tempo/KeyAuthorization.test-d.ts +68 -33
  132. package/tempo/KeyAuthorization.test.ts +89 -8
  133. package/tempo/KeyAuthorization.ts +124 -61
  134. package/tempo/MultisigConfig.test.ts +34 -26
  135. package/tempo/MultisigConfig.ts +54 -24
  136. package/tempo/MultisigOperation.test.ts +79 -550
  137. package/tempo/MultisigOperation.ts +31 -146
  138. package/tempo/MultisigSimulation.test-d.ts +2 -2
  139. package/tempo/MultisigSimulation.test.ts +21 -110
  140. package/tempo/MultisigSimulation.ts +25 -99
  141. package/tempo/SignatureEnvelope.test-d.ts +29 -67
  142. package/tempo/SignatureEnvelope.test.ts +301 -568
  143. package/tempo/SignatureEnvelope.ts +156 -274
  144. package/tempo/TransactionRequest.test-d.ts +6 -5
  145. package/tempo/TransactionRequest.test.ts +17 -80
  146. package/tempo/TransactionRequest.ts +23 -3
  147. package/tempo/index.ts +3 -1
  148. package/tempo/multisig.e2e.test.ts +322 -861
  149. package/version.ts +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # ox
2
2
 
3
+ ## 0.14.46
4
+
5
+ ### Patch Changes
6
+
7
+ - [#460](https://github.com/wevm/ox/pull/460) [`4c9ef11`](https://github.com/wevm/ox/commit/4c9ef11a69e5b5780dee963ea2005e2bb17c44d2) Thanks [@jxom](https://github.com/jxom)! - Added Frame Transactions
8
+
9
+ ## 0.14.45
10
+
11
+ ### Patch Changes
12
+
13
+ - [#450](https://github.com/wevm/ox/pull/450) [`a1b636c`](https://github.com/wevm/ox/commit/a1b636c629b9503cfc3e2f3d602e5593868f0e58) Thanks [@jxom](https://github.com/jxom)! - Updated Tempo multisig accounts to versioned configurations, factory-derived addresses, primitive approvals, and configurable-account delegation.
14
+
3
15
  ## 0.14.44
4
16
 
5
17
  ### Patch Changes
@@ -0,0 +1,6 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../_types/core/Frame.d.ts",
4
+ "main": "../_cjs/core/Frame.js",
5
+ "module": "../_esm/core/Frame.js"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../_types/core/FrameReceipt.d.ts",
4
+ "main": "../_cjs/core/FrameReceipt.js",
5
+ "module": "../_esm/core/FrameReceipt.js"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../_types/core/FrameSignature.d.ts",
4
+ "main": "../_cjs/core/FrameSignature.js",
5
+ "module": "../_esm/core/FrameSignature.js"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "type": "module",
3
+ "types": "../_types/core/TxEnvelopeEip8141.d.ts",
4
+ "main": "../_cjs/core/TxEnvelopeEip8141.js",
5
+ "module": "../_esm/core/TxEnvelopeEip8141.js"
6
+ }
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InvalidError = exports.flags = exports.modes = void 0;
4
+ exports.assert = assert;
5
+ exports.from = from;
6
+ exports.fromRpc = fromRpc;
7
+ exports.toRpc = toRpc;
8
+ exports.fromTuple = fromTuple;
9
+ exports.toTuple = toTuple;
10
+ exports.validate = validate;
11
+ const Address = require("./Address.js");
12
+ const Bytes = require("./Bytes.js");
13
+ const Errors = require("./Errors.js");
14
+ const Hex = require("./Hex.js");
15
+ const Quantity = require("./internal/quantity.js");
16
+ exports.modes = { default: 0, sender: 2, verify: 1 };
17
+ exports.flags = {
18
+ approveExecution: 2,
19
+ approveExecutionAndPayment: 3,
20
+ approvePayment: 1,
21
+ atomicBatch: 4,
22
+ none: 0,
23
+ };
24
+ function assert(frame) {
25
+ const { data = '0x', flags: flagsValue = 0, gas = 0n, mode: modeValue = 0, stateGas = 0n, value = 0n, } = frame;
26
+ const mode = typeof modeValue === 'string' ? exports.modes[modeValue] : modeValue;
27
+ if (!Number.isInteger(mode) || mode < 0 || mode > 2)
28
+ throw new InvalidError('mode must be a supported name or 0, 1, or 2.');
29
+ const flags_ = typeof flagsValue === 'string' ? exports.flags[flagsValue] : flagsValue;
30
+ if (!Number.isInteger(flags_) || flags_ < 0 || flags_ > 7)
31
+ throw new InvalidError('flags must be a supported name or an integer from 0 to 7.');
32
+ if (flags_ & exports.flags.atomicBatch) {
33
+ if (mode === exports.modes.verify)
34
+ throw new InvalidError('VERIFY frames cannot belong to an atomic batch.');
35
+ if (flags_ & exports.flags.approveExecutionAndPayment)
36
+ throw new InvalidError('Atomic batch frames cannot approve execution or payment.');
37
+ }
38
+ if (frame.target !== undefined)
39
+ Address.assert(frame.target, { strict: false });
40
+ for (const [field, limit] of [
41
+ ['gas', gas],
42
+ ['stateGas', stateGas],
43
+ ])
44
+ if (typeof limit !== 'bigint' || limit < 0n || limit >= 2n ** 64n)
45
+ throw new InvalidError(`${field} must be an unsigned 64-bit integer.`);
46
+ if (gas + stateGas >= 2n ** 64n)
47
+ throw new InvalidError('Combined frame gas must be less than 2^64.');
48
+ if (typeof value !== 'bigint' || value < 0n || value >= 2n ** 256n)
49
+ throw new InvalidError('value must be an unsigned 256-bit integer.');
50
+ if (mode !== exports.modes.sender && value !== 0n)
51
+ throw new InvalidError('Only SENDER frames can transfer value.');
52
+ Hex.assert(data, { strict: true });
53
+ if (data.length % 2 !== 0)
54
+ throw new InvalidError('data must contain whole bytes.');
55
+ }
56
+ function from(frame) {
57
+ assert(frame);
58
+ return { ...frame };
59
+ }
60
+ function fromRpc(frame) {
61
+ return from({
62
+ data: frame.data,
63
+ flags: frame.flags,
64
+ gas: Hex.toBigInt(frame.executionGasLimit),
65
+ mode: frame.mode,
66
+ stateGas: Hex.toBigInt(frame.stateGasLimit),
67
+ ...(frame.target == null ? {} : { target: frame.target }),
68
+ value: Hex.toBigInt(frame.value),
69
+ });
70
+ }
71
+ function toRpc(frame) {
72
+ const { flags: flags_ = 0, mode = 0 } = frame;
73
+ return {
74
+ data: frame.data ?? '0x',
75
+ executionGasLimit: Quantity.fromNumberish(frame.gas ?? 0n),
76
+ flags: typeof flags_ === 'string' ? exports.flags[flags_] : flags_,
77
+ mode: typeof mode === 'string' ? exports.modes[mode] : mode,
78
+ stateGasLimit: Quantity.fromNumberish(frame.stateGas ?? 0n),
79
+ ...(frame.target === undefined ? {} : { target: frame.target }),
80
+ value: Quantity.fromNumberish(frame.value ?? 0n),
81
+ };
82
+ }
83
+ function fromTuple(tuple) {
84
+ if (!Array.isArray(tuple) ||
85
+ tuple.length !== 6 ||
86
+ !Array.isArray(tuple[3]) ||
87
+ tuple[3].length !== 2)
88
+ throw new InvalidError('Expected [mode, flags, target, [execution, state], value, data].');
89
+ const [mode, flags, target, [execution, state], value, data] = tuple;
90
+ Hex.assert(target, { strict: true });
91
+ Hex.assert(data, { strict: true });
92
+ const quantities = [mode, flags, execution, state, value];
93
+ for (const quantity of quantities) {
94
+ Hex.assert(quantity, { strict: true });
95
+ if (quantity.length % 2 !== 0 || quantity.startsWith('0x00'))
96
+ throw new InvalidError('Integers must use minimal whole-byte encodings, with empty bytes for zero.');
97
+ }
98
+ const frame = {
99
+ ...(target === '0x' ? {} : { target }),
100
+ data,
101
+ flags: flags === '0x' ? 0 : Hex.toNumber(flags),
102
+ gas: execution === '0x' ? 0n : Hex.toBigInt(execution),
103
+ mode: mode === '0x' ? 0 : Hex.toNumber(mode),
104
+ stateGas: state === '0x' ? 0n : Hex.toBigInt(state),
105
+ value: value === '0x' ? 0n : Hex.toBigInt(value),
106
+ };
107
+ assert(frame);
108
+ return frame;
109
+ }
110
+ function toTuple(frame) {
111
+ assert(frame);
112
+ const mode = typeof frame.mode === 'string' ? exports.modes[frame.mode] : (frame.mode ?? 0);
113
+ const flags_ = typeof frame.flags === 'string' ? exports.flags[frame.flags] : (frame.flags ?? 0);
114
+ return [
115
+ mode ? Hex.fromBytes(Bytes.fromNumber(mode)) : '0x',
116
+ flags_ ? Hex.fromBytes(Bytes.fromNumber(flags_)) : '0x',
117
+ frame.target ?? '0x',
118
+ [
119
+ frame.gas ? Hex.fromBytes(Bytes.fromNumber(frame.gas)) : '0x',
120
+ frame.stateGas ? Hex.fromBytes(Bytes.fromNumber(frame.stateGas)) : '0x',
121
+ ],
122
+ frame.value ? Hex.fromBytes(Bytes.fromNumber(frame.value)) : '0x',
123
+ frame.data ?? '0x',
124
+ ];
125
+ }
126
+ function validate(frame) {
127
+ try {
128
+ assert(frame);
129
+ return true;
130
+ }
131
+ catch {
132
+ return false;
133
+ }
134
+ }
135
+ class InvalidError extends Errors.BaseError {
136
+ constructor(details) {
137
+ super('Invalid frame.', { details });
138
+ Object.defineProperty(this, "name", {
139
+ enumerable: true,
140
+ configurable: true,
141
+ writable: true,
142
+ value: 'Frame.InvalidError'
143
+ });
144
+ }
145
+ }
146
+ exports.InvalidError = InvalidError;
147
+ //# sourceMappingURL=Frame.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Frame.js","sourceRoot":"","sources":["../../core/Frame.ts"],"names":[],"mappings":";;;AA+GA,wBA0CC;AAmCD,oBAGC;AA4BD,0BAUC;AAsBD,sBAWC;AA0CD,8BAgCC;AAmCD,0BAiBC;AAkCD,4BAOC;AA7aD,wCAAuC;AACvC,oCAAmC;AACnC,sCAAqC;AACrC,gCAA+B;AAC/B,mDAAkD;AAyDrC,QAAA,KAAK,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAW,CAAA;AAMrD,QAAA,KAAK,GAAG;IACnB,gBAAgB,EAAE,CAAC;IACnB,0BAA0B,EAAE,CAAC;IAC7B,cAAc,EAAE,CAAC;IACjB,WAAW,EAAE,CAAC;IACd,IAAI,EAAE,CAAC;CACC,CAAA;AAsCV,SAAgB,MAAM,CAAC,KAAY;IACjC,MAAM,EACJ,IAAI,GAAG,IAAI,EACX,KAAK,EAAE,UAAU,GAAG,CAAC,EACrB,GAAG,GAAG,EAAE,EACR,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,aAAK,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,aAAK,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,aAAK,CAAC,WAAW,EAAE,CAAC;QAC/B,IAAI,IAAI,KAAK,aAAK,CAAC,MAAM;YACvB,MAAM,IAAI,YAAY,CAAC,iDAAiD,CAAC,CAAA;QAC3E,IAAI,MAAM,GAAG,aAAK,CAAC,0BAA0B;YAC3C,MAAM,IAAI,YAAY,CACpB,0DAA0D,CAC3D,CAAA;IACL,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;QAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAA;IACjD,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI;QAC3B,CAAC,KAAK,EAAE,GAAG,CAAC;QACZ,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,GAAG,GAAG,QAAQ,IAAI,EAAE,IAAI,GAAG;QAC7B,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,aAAK,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;AAmCD,SAAgB,IAAI,CAA4B,KAAoB;IAClE,MAAM,CAAC,KAAK,CAAC,CAAA;IACb,OAAO,EAAE,GAAG,KAAK,EAAW,CAAA;AAC9B,CAAC;AA4BD,SAAgB,OAAO,CAAC,KAAU;IAChC,OAAO,IAAI,CAAC;QACV,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC;QAC1C,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC;QAC3C,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;QACzD,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;KACjC,CAAC,CAAA;AACJ,CAAC;AAsBD,SAAgB,KAAK,CAAC,KAAkB;IACtC,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,KAAK,CAAA;IAC7C,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;QACxB,iBAAiB,EAAE,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC;QAC1D,KAAK,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM;QAC1D,IAAI,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QACnD,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;QAC3D,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;QAC/D,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;KACjD,CAAA;AACH,CAAC;AA0CD,SAAgB,SAAS,CAAC,KAAY;IACpC,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACrB,KAAK,CAAC,MAAM,KAAK,CAAC;QAClB,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxB,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC;QAErB,MAAM,IAAI,YAAY,CACpB,kEAAkE,CACnE,CAAA;IACH,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,KAAK,CAAA;IACpE,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IACpC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;IAClC,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IACzD,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAClC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;QACtC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;YAC1D,MAAM,IAAI,YAAY,CACpB,4EAA4E,CAC7E,CAAA;IACL,CAAC;IACD,MAAM,KAAK,GAAG;QACZ,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;QACtC,IAAI;QACJ,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC/C,GAAG,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC;QACtD,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC5C,QAAQ,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;QACnD,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;KACjD,CAAA;IACD,MAAM,CAAC,KAAK,CAAC,CAAA;IACb,OAAO,KAAK,CAAA;AACd,CAAC;AAmCD,SAAgB,OAAO,CAAC,KAAY;IAClC,MAAM,CAAC,KAAK,CAAC,CAAA;IACb,MAAM,IAAI,GACR,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAA;IACxE,MAAM,MAAM,GACV,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;IAC3E,OAAO;QACL,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QACnD,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QACvD,KAAK,CAAC,MAAM,IAAI,IAAI;QACpB;YACE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YAC7D,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACxE;QACD,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QACjE,KAAK,CAAC,IAAI,IAAI,IAAI;KACnB,CAAA;AACH,CAAC;AAkCD,SAAgB,QAAQ,CAAC,KAAY;IACnC,IAAI,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,CAAA;QACb,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAOD,MAAa,YAAa,SAAQ,MAAM,CAAC,SAAS;IAGhD,YAAY,OAAe;QACzB,KAAK,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;QAHpB;;;;mBAAO,oBAAoB;WAAA;IAI7C,CAAC;CACF;AAND,oCAMC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toRpcStatus = exports.fromRpcStatus = void 0;
4
+ exports.fromRpc = fromRpc;
5
+ exports.toRpc = toRpc;
6
+ const Hex = require("./Hex.js");
7
+ const Quantity = require("./internal/quantity.js");
8
+ exports.fromRpcStatus = {
9
+ 0: 'reverted',
10
+ 1: 'success',
11
+ 2: 'skipped',
12
+ };
13
+ exports.toRpcStatus = {
14
+ reverted: 0,
15
+ skipped: 2,
16
+ success: 1,
17
+ };
18
+ function fromRpc(receipt) {
19
+ return {
20
+ gasUsed: Hex.toBigInt(receipt.executionGasUsed),
21
+ logs: receipt.logs,
22
+ stateGasUsed: Hex.toBigInt(receipt.stateGasUsed),
23
+ status: exports.fromRpcStatus[receipt.status],
24
+ };
25
+ }
26
+ function toRpc(receipt) {
27
+ return {
28
+ executionGasUsed: Quantity.fromNumberish(receipt.gasUsed),
29
+ logs: receipt.logs,
30
+ stateGasUsed: Quantity.fromNumberish(receipt.stateGasUsed),
31
+ status: exports.toRpcStatus[receipt.status],
32
+ };
33
+ }
34
+ //# sourceMappingURL=FrameReceipt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrameReceipt.js","sourceRoot":"","sources":["../../core/FrameReceipt.ts"],"names":[],"mappings":";;;AAqEA,0BAOC;AA2BD,sBAOC;AA7GD,gCAA+B;AAC/B,mDAAkD;AAkCrC,QAAA,aAAa,GAAG;IAC3B,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,SAAS;CACJ,CAAA;AAGG,QAAA,WAAW,GAAG;IACzB,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;CACF,CAAA;AAsBV,SAAgB,OAAO,CAAC,OAAY;IAClC,OAAO;QACL,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC/C,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;AA2BD,SAAgB,KAAK,CAAC,OAAoB;IACxC,OAAO;QACL,gBAAgB,EAAE,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;QACzD,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"}
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InvalidError = exports.schemes = void 0;
4
+ exports.assert = assert;
5
+ exports.from = from;
6
+ exports.fromRpc = fromRpc;
7
+ exports.toRpc = toRpc;
8
+ exports.fromTuple = fromTuple;
9
+ exports.toTuple = toTuple;
10
+ exports.validate = validate;
11
+ const Address = require("./Address.js");
12
+ const Errors = require("./Errors.js");
13
+ const Hex = require("./Hex.js");
14
+ const curves_js_1 = require("./internal/curves.js");
15
+ const PublicKey = require("./PublicKey.js");
16
+ const Signature = require("./Signature.js");
17
+ exports.schemes = { arbitrary: 0, p256: 2, secp256k1: 1 };
18
+ function assert(entry, options = {}) {
19
+ const scheme = typeof entry.scheme === 'string' ? exports.schemes[entry.scheme] : entry.scheme;
20
+ if (!Number.isInteger(scheme) || scheme < 0 || scheme > 2)
21
+ throw new InvalidError('Unsupported signature scheme.');
22
+ if (scheme === 0 && entry.signer !== undefined)
23
+ throw new InvalidError('Arbitrary signatures cannot specify a signer.');
24
+ if (entry.signer !== undefined)
25
+ Address.assert(entry.signer, { strict: false });
26
+ const payload = entry.payload ?? '0x';
27
+ Hex.assert(payload, { strict: true });
28
+ if (payload !== '0x' &&
29
+ (payload.length !== 66 || Hex.toBigInt(payload) === 0n))
30
+ throw new InvalidError('payload must be empty or a nonzero 32-byte digest.');
31
+ switch (entry.scheme) {
32
+ case 0:
33
+ case 'arbitrary':
34
+ Hex.assert(entry.signature, { strict: true });
35
+ if (entry.signature.length % 2 !== 0)
36
+ throw new InvalidError('signature must contain whole bytes.');
37
+ return;
38
+ }
39
+ if (entry.scheme === 2 || entry.scheme === 'p256') {
40
+ if (entry.publicKey !== undefined) {
41
+ PublicKey.assert(entry.publicKey, { compressed: false });
42
+ for (const coordinate of [entry.publicKey.x, entry.publicKey.y]) {
43
+ if (typeof coordinate !== 'bigint' ||
44
+ coordinate < 0n ||
45
+ coordinate >= 2n ** 256n)
46
+ throw new InvalidError('Public key coordinates must fit in 32 bytes.');
47
+ }
48
+ }
49
+ if (entry.signature !== undefined && entry.publicKey === undefined)
50
+ throw new InvalidError('P-256 signatures require a public key.');
51
+ }
52
+ if (entry.signature === undefined) {
53
+ if (options.signed)
54
+ throw new InvalidError('Signature is required.');
55
+ return;
56
+ }
57
+ if (typeof entry.signature.r !== 'bigint' ||
58
+ typeof entry.signature.s !== 'bigint')
59
+ throw new InvalidError('Signature scalars must be bigint.');
60
+ if ((scheme === 1 || entry.signature.yParity !== undefined) &&
61
+ entry.signature.yParity !== 0 &&
62
+ entry.signature.yParity !== 1)
63
+ throw new InvalidError('Signature parity must be 0 or 1.');
64
+ Signature.assert(entry.signature, { recovered: scheme === 1 });
65
+ const r = entry.signature.r;
66
+ const s = entry.signature.s;
67
+ const order = scheme === 1 ? curves_js_1.secp256k1N : curves_js_1.p256N;
68
+ if (r === 0n ||
69
+ r >= order ||
70
+ s === 0n ||
71
+ s >= order ||
72
+ (scheme === 1 && s > order / 2n))
73
+ throw new InvalidError('Signature scalars must be in range; secp256k1 requires low-s.');
74
+ }
75
+ function from(entry) {
76
+ const result = (typeof entry === 'string'
77
+ ? { payload: '0x', scheme: 'arbitrary', signature: entry }
78
+ : {
79
+ ...entry,
80
+ payload: entry.payload ?? '0x',
81
+ scheme: entry.scheme ?? 'arbitrary',
82
+ });
83
+ assert(result);
84
+ return result;
85
+ }
86
+ function fromRpc(entry) {
87
+ return fromTuple([
88
+ entry.scheme === 0 ? '0x' : Hex.fromNumber(entry.scheme, { size: 1 }),
89
+ entry.signer ?? '0x',
90
+ entry.msg,
91
+ entry.signature,
92
+ ]);
93
+ }
94
+ function toRpc(entry) {
95
+ const [scheme, signer, msg, signature] = toTuple(entry);
96
+ return {
97
+ msg,
98
+ scheme: (scheme === '0x' ? 0 : Hex.toNumber(scheme)),
99
+ signature,
100
+ ...(signer === '0x' ? {} : { signer }),
101
+ };
102
+ }
103
+ function fromTuple(tuple) {
104
+ if (!Array.isArray(tuple) || tuple.length !== 4)
105
+ throw new InvalidError('Expected [scheme, signer, payload, signature].');
106
+ const [scheme, signer, payload, signature] = tuple;
107
+ Hex.assert(signer, { strict: true });
108
+ Hex.assert(signature, { strict: true });
109
+ if (signature.length % 2 !== 0)
110
+ throw new InvalidError('signature must contain whole bytes.');
111
+ if (scheme !== '0x' && scheme !== '0x01' && scheme !== '0x02')
112
+ throw new InvalidError('Expected a canonical scheme encoding: empty bytes, 0x01, or 0x02.');
113
+ const metadata = { ...(signer === '0x' ? {} : { signer }), payload };
114
+ if (scheme === '0x') {
115
+ if (signer !== '0x')
116
+ throw new InvalidError('Arbitrary signatures cannot specify a signer.');
117
+ return from({ payload, scheme: 'arbitrary', signature });
118
+ }
119
+ if (signature === '0x')
120
+ return scheme === '0x01'
121
+ ? from({ ...metadata, scheme: 'secp256k1' })
122
+ : from({ ...metadata, scheme: 'p256' });
123
+ if (Hex.size(signature) !== (scheme === '0x01' ? 65 : 128))
124
+ throw new InvalidError('Invalid protocol signature length.');
125
+ if (scheme === '0x01') {
126
+ if (Hex.toNumber(Hex.slice(signature, 0, 1)) > 1)
127
+ throw new InvalidError('Recovery parity must be 0 or 1.');
128
+ return from({
129
+ ...metadata,
130
+ scheme: 'secp256k1',
131
+ signature: {
132
+ r: Hex.toBigInt(Hex.slice(signature, 1, 33)),
133
+ s: Hex.toBigInt(Hex.slice(signature, 33, 65)),
134
+ yParity: Hex.toNumber(Hex.slice(signature, 0, 1)),
135
+ },
136
+ });
137
+ }
138
+ const s = Hex.toBigInt(Hex.slice(signature, 32, 64));
139
+ if (s > curves_js_1.p256N / 2n)
140
+ throw new InvalidError('P-256 wire signatures require low-s.');
141
+ return from({
142
+ ...metadata,
143
+ publicKey: {
144
+ prefix: 4,
145
+ x: Hex.toBigInt(Hex.slice(signature, 64, 96)),
146
+ y: Hex.toBigInt(Hex.slice(signature, 96, 128)),
147
+ },
148
+ scheme: 'p256',
149
+ signature: { r: Hex.toBigInt(Hex.slice(signature, 0, 32)), s },
150
+ });
151
+ }
152
+ function toTuple(entry) {
153
+ assert(entry);
154
+ const scheme = typeof entry.scheme === 'string' ? exports.schemes[entry.scheme] : entry.scheme;
155
+ const signature = (() => {
156
+ switch (entry.scheme) {
157
+ case 0:
158
+ case 'arbitrary':
159
+ return entry.signature;
160
+ case 1:
161
+ case 'secp256k1':
162
+ return entry.signature === undefined
163
+ ? '0x'
164
+ : Hex.concat(Hex.fromNumber(entry.signature.yParity, { size: 1 }), Hex.fromNumber(entry.signature.r, { size: 32 }), Hex.fromNumber(entry.signature.s, { size: 32 }));
165
+ case 2:
166
+ case 'p256': {
167
+ if (entry.signature === undefined)
168
+ return '0x';
169
+ const { publicKey, signature } = entry;
170
+ const s = signature.s;
171
+ 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
+ }
173
+ }
174
+ })();
175
+ return [
176
+ scheme ? Hex.fromNumber(scheme, { size: 1 }) : '0x',
177
+ entry.signer ?? '0x',
178
+ entry.payload ?? '0x',
179
+ signature,
180
+ ];
181
+ }
182
+ function validate(entry, options = {}) {
183
+ try {
184
+ assert(entry, options);
185
+ return true;
186
+ }
187
+ catch {
188
+ return false;
189
+ }
190
+ }
191
+ class InvalidError extends Errors.BaseError {
192
+ constructor(details) {
193
+ super('Invalid frame signature.', { details });
194
+ Object.defineProperty(this, "name", {
195
+ enumerable: true,
196
+ configurable: true,
197
+ writable: true,
198
+ value: 'FrameSignature.InvalidError'
199
+ });
200
+ }
201
+ }
202
+ exports.InvalidError = InvalidError;
203
+ //# sourceMappingURL=FrameSignature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FrameSignature.js","sourceRoot":"","sources":["../../core/FrameSignature.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@ exports.fromRpcType = exports.toRpcType = void 0;
4
4
  exports.fromRpc = fromRpc;
5
5
  exports.toRpc = toRpc;
6
6
  const Authorization = require("./Authorization.js");
7
+ const Frame = require("./Frame.js");
8
+ const FrameSignature = require("./FrameSignature.js");
7
9
  const Hex = require("./Hex.js");
8
10
  const Signature = require("./Signature.js");
9
11
  exports.toRpcType = {
@@ -12,6 +14,7 @@ exports.toRpcType = {
12
14
  eip1559: '0x2',
13
15
  eip4844: '0x3',
14
16
  eip7702: '0x4',
17
+ eip8141: '0x6',
15
18
  };
16
19
  exports.fromRpcType = {
17
20
  '0x0': 'legacy',
@@ -19,11 +22,12 @@ exports.fromRpcType = {
19
22
  '0x2': 'eip1559',
20
23
  '0x3': 'eip4844',
21
24
  '0x4': 'eip7702',
25
+ '0x6': 'eip8141',
22
26
  };
23
27
  function fromRpc(transaction, _options = {}) {
24
28
  if (!transaction)
25
29
  return null;
26
- const signature = Signature.extract(transaction);
30
+ const signature = transaction.type === '0x6' ? undefined : Signature.extract(transaction);
27
31
  const transaction_ = {
28
32
  ...transaction,
29
33
  ...signature,
@@ -44,10 +48,18 @@ function fromRpc(transaction, _options = {}) {
44
48
  ? Number(transaction.transactionIndex)
45
49
  : null;
46
50
  transaction_.value = BigInt(transaction.value ?? 0n);
51
+ if (transaction.frames)
52
+ transaction_.frames = transaction.frames.map(Frame.fromRpc);
53
+ if (transaction.signatures)
54
+ transaction_.signatures = transaction.signatures.map(FrameSignature.fromRpc);
47
55
  if (transaction.authorizationList)
48
56
  transaction_.authorizationList = Authorization.fromRpcList(transaction.authorizationList);
49
57
  if (transaction.chainId)
50
- transaction_.chainId = Number(transaction.chainId);
58
+ transaction_.chainId =
59
+ transaction.type === '0x6' &&
60
+ BigInt(transaction.chainId) > BigInt(Number.MAX_SAFE_INTEGER)
61
+ ? BigInt(transaction.chainId)
62
+ : Number(transaction.chainId);
51
63
  if (transaction.gasPrice)
52
64
  transaction_.gasPrice = BigInt(transaction.gasPrice);
53
65
  if (transaction.maxFeePerBlobGas)
@@ -85,6 +97,10 @@ function toRpc(transaction, _options) {
85
97
  : null;
86
98
  rpc.type = exports.toRpcType[transaction.type] ?? transaction.type;
87
99
  rpc.value = Hex.fromNumber(transaction.value ?? 0n);
100
+ if (transaction.frames)
101
+ rpc.frames = transaction.frames.map(Frame.toRpc);
102
+ if (transaction.signatures)
103
+ rpc.signatures = transaction.signatures.map(FrameSignature.toRpc);
88
104
  if (transaction.accessList)
89
105
  rpc.accessList = transaction.accessList;
90
106
  if (transaction.authorizationList)
@@ -1 +1 @@
1
- {"version":3,"file":"Transaction.js","sourceRoot":"","sources":["../../core/Transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Transaction.js","sourceRoot":"","sources":["../../core/Transaction.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.toRpcType = exports.fromRpcType = exports.toRpcStatus = exports.fromRpcStatus = void 0;
4
4
  exports.fromRpc = fromRpc;
5
5
  exports.toRpc = toRpc;
6
+ const FrameReceipt = require("./FrameReceipt.js");
6
7
  const Hex = require("./Hex.js");
7
8
  const Log = require("./Log.js");
8
9
  exports.fromRpcStatus = {
@@ -19,6 +20,7 @@ exports.fromRpcType = {
19
20
  '0x2': 'eip1559',
20
21
  '0x3': 'eip4844',
21
22
  '0x4': 'eip7702',
23
+ '0x6': 'eip8141',
22
24
  };
23
25
  exports.toRpcType = {
24
26
  legacy: '0x0',
@@ -26,12 +28,16 @@ exports.toRpcType = {
26
28
  eip1559: '0x2',
27
29
  eip4844: '0x3',
28
30
  eip7702: '0x4',
31
+ eip8141: '0x6',
29
32
  };
30
33
  function fromRpc(receipt) {
31
34
  if (!receipt)
32
35
  return null;
33
36
  return {
34
37
  ...receipt,
38
+ ...(receipt.frameReceipts
39
+ ? { frameReceipts: receipt.frameReceipts.map(FrameReceipt.fromRpc) }
40
+ : {}),
35
41
  blobGasPrice: receipt.blobGasPrice
36
42
  ? BigInt(receipt.blobGasPrice)
37
43
  : undefined,
@@ -48,6 +54,10 @@ function fromRpc(receipt) {
48
54
  }
49
55
  function toRpc(receipt) {
50
56
  return {
57
+ ...(receipt.frameReceipts
58
+ ? { frameReceipts: receipt.frameReceipts.map(FrameReceipt.toRpc) }
59
+ : {}),
60
+ ...(receipt.payer ? { payer: receipt.payer } : {}),
51
61
  blobGasPrice: receipt.blobGasPrice
52
62
  ? Hex.fromNumber(receipt.blobGasPrice)
53
63
  : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionReceipt.js","sourceRoot":"","sources":["../../core/TransactionReceipt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransactionReceipt.js","sourceRoot":"","sources":["../../core/TransactionReceipt.ts"],"names":[],"mappings":"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"}
@@ -3,14 +3,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.fromRpc = fromRpc;
4
4
  exports.toRpc = toRpc;
5
5
  const Authorization = require("./Authorization.js");
6
+ const Frame = require("./Frame.js");
7
+ const FrameSignature = require("./FrameSignature.js");
6
8
  const Hex = require("./Hex.js");
7
9
  const Transaction = require("./Transaction.js");
8
10
  function fromRpc(request) {
9
- const request_ = request;
11
+ const request_ = { ...request };
10
12
  if (typeof request.authorizationList !== 'undefined')
11
13
  request_.authorizationList = Authorization.fromRpcList(request.authorizationList);
12
14
  if (typeof request.chainId !== 'undefined')
13
15
  request_.chainId = Hex.toNumber(request.chainId);
16
+ if (request.frames)
17
+ request_.frames = request.frames.map(Frame.fromRpc);
18
+ if (request.signatures)
19
+ request_.signatures = request.signatures.map(FrameSignature.fromRpc);
14
20
  if (typeof request.gas !== 'undefined')
15
21
  request_.gas = Hex.toBigInt(request.gas);
16
22
  if (typeof request.gasPrice !== 'undefined')
@@ -52,6 +58,10 @@ function toRpc(request) {
52
58
  }
53
59
  if (typeof request.from !== 'undefined')
54
60
  request_rpc.from = request.from;
61
+ if (request.frames)
62
+ request_rpc.frames = request.frames.map(Frame.toRpc);
63
+ if (request.signatures)
64
+ request_rpc.signatures = request.signatures.map(FrameSignature.toRpc);
55
65
  if (typeof request.gas !== 'undefined')
56
66
  request_rpc.gas = Hex.fromNumber(request.gas);
57
67
  if (typeof request.gasPrice !== 'undefined')