ox 1.0.0-beta.9 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (244) hide show
  1. package/CHANGELOG.md +1143 -0
  2. package/dist/core/AbiParameters.d.ts.map +1 -1
  3. package/dist/core/AbiParameters.js +4 -1
  4. package/dist/core/AbiParameters.js.map +1 -1
  5. package/dist/core/Rlp.d.ts +27 -5
  6. package/dist/core/Rlp.d.ts.map +1 -1
  7. package/dist/core/Rlp.js +40 -4
  8. package/dist/core/Rlp.js.map +1 -1
  9. package/dist/core/RpcSchema.d.ts +1 -1
  10. package/dist/core/internal/abiParameters.d.ts.map +1 -1
  11. package/dist/core/internal/abiParameters.js +21 -3
  12. package/dist/core/internal/abiParameters.js.map +1 -1
  13. package/dist/core/internal/rpcSchemas/eth.d.ts +36 -0
  14. package/dist/core/internal/rpcSchemas/eth.d.ts.map +1 -1
  15. package/dist/erc4337/EntryPoint.d.ts +1072 -1
  16. package/dist/erc4337/EntryPoint.d.ts.map +1 -1
  17. package/dist/erc4337/EntryPoint.js +872 -0
  18. package/dist/erc4337/EntryPoint.js.map +1 -1
  19. package/dist/erc4337/RpcSchema.d.ts +2 -2
  20. package/dist/erc4337/RpcSchema.d.ts.map +1 -1
  21. package/dist/erc4337/UserOperation.d.ts +39 -10
  22. package/dist/erc4337/UserOperation.d.ts.map +1 -1
  23. package/dist/erc4337/UserOperation.js +62 -48
  24. package/dist/erc4337/UserOperation.js.map +1 -1
  25. package/dist/erc4337/UserOperationGas.d.ts +9 -5
  26. package/dist/erc4337/UserOperationGas.d.ts.map +1 -1
  27. package/dist/erc4337/UserOperationGas.js +17 -15
  28. package/dist/erc4337/UserOperationGas.js.map +1 -1
  29. package/dist/erc4337/UserOperationReceipt.d.ts +4 -4
  30. package/dist/erc4337/UserOperationReceipt.d.ts.map +1 -1
  31. package/dist/erc4337/UserOperationReceipt.js.map +1 -1
  32. package/dist/tempo/Channel.d.ts +8 -14
  33. package/dist/tempo/Channel.d.ts.map +1 -1
  34. package/dist/tempo/Channel.js +4 -8
  35. package/dist/tempo/Channel.js.map +1 -1
  36. package/dist/tempo/KeyAuthorization.d.ts +5 -5
  37. package/dist/tempo/KeyAuthorization.d.ts.map +1 -1
  38. package/dist/tempo/KeyAuthorization.js +4 -4
  39. package/dist/tempo/KeyAuthorization.js.map +1 -1
  40. package/dist/tempo/MultisigConfig.d.ts +37 -85
  41. package/dist/tempo/MultisigConfig.d.ts.map +1 -1
  42. package/dist/tempo/MultisigConfig.js +39 -83
  43. package/dist/tempo/MultisigConfig.js.map +1 -1
  44. package/dist/tempo/PoolId.d.ts +8 -7
  45. package/dist/tempo/PoolId.d.ts.map +1 -1
  46. package/dist/tempo/PoolId.js +10 -6
  47. package/dist/tempo/PoolId.js.map +1 -1
  48. package/dist/tempo/SignatureEnvelope.d.ts +32 -30
  49. package/dist/tempo/SignatureEnvelope.d.ts.map +1 -1
  50. package/dist/tempo/SignatureEnvelope.js +56 -51
  51. package/dist/tempo/SignatureEnvelope.js.map +1 -1
  52. package/dist/tempo/Transaction.d.ts +16 -5
  53. package/dist/tempo/Transaction.d.ts.map +1 -1
  54. package/dist/tempo/Transaction.js +34 -7
  55. package/dist/tempo/Transaction.js.map +1 -1
  56. package/dist/tempo/TransactionReceipt.d.ts +3 -3
  57. package/dist/tempo/TransactionReceipt.d.ts.map +1 -1
  58. package/dist/tempo/TransactionReceipt.js +8 -1
  59. package/dist/tempo/TransactionReceipt.js.map +1 -1
  60. package/dist/tempo/TransactionRequest.d.ts +15 -2
  61. package/dist/tempo/TransactionRequest.d.ts.map +1 -1
  62. package/dist/tempo/TransactionRequest.js +65 -29
  63. package/dist/tempo/TransactionRequest.js.map +1 -1
  64. package/dist/tempo/TxEnvelopeTempo.d.ts +2 -3
  65. package/dist/tempo/TxEnvelopeTempo.d.ts.map +1 -1
  66. package/dist/tempo/TxEnvelopeTempo.js +5 -6
  67. package/dist/tempo/TxEnvelopeTempo.js.map +1 -1
  68. package/dist/tempo/index.d.ts +6 -26
  69. package/dist/tempo/index.d.ts.map +1 -1
  70. package/dist/tempo/index.js +6 -26
  71. package/dist/tempo/index.js.map +1 -1
  72. package/dist/zod/Abi.d.ts +214 -0
  73. package/dist/zod/Abi.d.ts.map +1 -0
  74. package/dist/zod/Abi.js +5 -0
  75. package/dist/zod/Abi.js.map +1 -0
  76. package/dist/zod/AbiConstructor.d.ts +58 -0
  77. package/dist/zod/AbiConstructor.d.ts.map +1 -0
  78. package/dist/zod/AbiConstructor.js +18 -0
  79. package/dist/zod/AbiConstructor.js.map +1 -0
  80. package/dist/zod/AbiError.d.ts +20 -0
  81. package/dist/zod/AbiError.d.ts.map +1 -0
  82. package/dist/zod/AbiError.js +9 -0
  83. package/dist/zod/AbiError.js.map +1 -0
  84. package/dist/zod/AbiEvent.d.ts +23 -0
  85. package/dist/zod/AbiEvent.d.ts.map +1 -0
  86. package/dist/zod/AbiEvent.js +11 -0
  87. package/dist/zod/AbiEvent.js.map +1 -0
  88. package/dist/zod/AbiFallback.d.ts +16 -0
  89. package/dist/zod/AbiFallback.d.ts.map +1 -0
  90. package/dist/zod/AbiFallback.js +16 -0
  91. package/dist/zod/AbiFallback.js.map +1 -0
  92. package/dist/zod/AbiFunction.d.ts +109 -0
  93. package/dist/zod/AbiFunction.d.ts.map +1 -0
  94. package/dist/zod/AbiFunction.js +26 -0
  95. package/dist/zod/AbiFunction.js.map +1 -0
  96. package/dist/zod/AbiItem.d.ts +216 -0
  97. package/dist/zod/AbiItem.d.ts.map +1 -0
  98. package/dist/zod/AbiItem.js +26 -0
  99. package/dist/zod/AbiItem.js.map +1 -0
  100. package/dist/zod/AbiParameter.d.ts +32 -0
  101. package/dist/zod/AbiParameter.d.ts.map +1 -0
  102. package/dist/zod/AbiParameter.js +28 -0
  103. package/dist/zod/AbiParameter.js.map +1 -0
  104. package/dist/zod/AbiParameters.d.ts +30 -0
  105. package/dist/zod/AbiParameters.d.ts.map +1 -0
  106. package/dist/zod/AbiParameters.js +6 -0
  107. package/dist/zod/AbiParameters.js.map +1 -0
  108. package/dist/zod/AbiReceive.d.ts +6 -0
  109. package/dist/zod/AbiReceive.d.ts.map +1 -0
  110. package/dist/zod/AbiReceive.js +7 -0
  111. package/dist/zod/AbiReceive.js.map +1 -0
  112. package/dist/zod/RpcSchema.d.ts +1 -0
  113. package/dist/zod/RpcSchema.d.ts.map +1 -1
  114. package/dist/zod/Solidity.d.ts +15 -0
  115. package/dist/zod/Solidity.d.ts.map +1 -0
  116. package/dist/zod/Solidity.js +41 -0
  117. package/dist/zod/Solidity.js.map +1 -0
  118. package/dist/zod/TypedData.d.ts +226 -0
  119. package/dist/zod/TypedData.d.ts.map +1 -0
  120. package/dist/zod/TypedData.js +84 -0
  121. package/dist/zod/TypedData.js.map +1 -0
  122. package/dist/zod/internal/rpcSchemas/Eth.d.ts +1 -0
  123. package/dist/zod/internal/rpcSchemas/Eth.d.ts.map +1 -1
  124. package/dist/zod/internal/rpcSchemas/Eth.js +5 -0
  125. package/dist/zod/internal/rpcSchemas/Eth.js.map +1 -1
  126. package/dist/zod/tempo/AuthorizationTempo.d.ts +0 -20
  127. package/dist/zod/tempo/AuthorizationTempo.d.ts.map +1 -1
  128. package/dist/zod/tempo/KeyAuthorization.d.ts +503 -67
  129. package/dist/zod/tempo/KeyAuthorization.d.ts.map +1 -1
  130. package/dist/zod/tempo/KeyAuthorization.js +32 -15
  131. package/dist/zod/tempo/KeyAuthorization.js.map +1 -1
  132. package/dist/zod/tempo/RpcSchemaTempo.d.ts +216 -34
  133. package/dist/zod/tempo/RpcSchemaTempo.d.ts.map +1 -1
  134. package/dist/zod/tempo/SignatureEnvelope.d.ts +0 -6
  135. package/dist/zod/tempo/SignatureEnvelope.d.ts.map +1 -1
  136. package/dist/zod/tempo/SignatureEnvelope.js +0 -2
  137. package/dist/zod/tempo/SignatureEnvelope.js.map +1 -1
  138. package/dist/zod/tempo/Transaction.d.ts +1479 -333
  139. package/dist/zod/tempo/Transaction.d.ts.map +1 -1
  140. package/dist/zod/tempo/Transaction.js +65 -16
  141. package/dist/zod/tempo/Transaction.js.map +1 -1
  142. package/dist/zod/tempo/TransactionRequest.d.ts +410 -57
  143. package/dist/zod/tempo/TransactionRequest.d.ts.map +1 -1
  144. package/dist/zod/tempo/TransactionRequest.js +81 -18
  145. package/dist/zod/tempo/TransactionRequest.js.map +1 -1
  146. package/dist/zod/tempo/TxEnvelopeTempo.d.ts +225 -18
  147. package/dist/zod/tempo/TxEnvelopeTempo.d.ts.map +1 -1
  148. package/dist/zod/tempo/TxEnvelopeTempo.js +1 -1
  149. package/dist/zod/tempo/TxEnvelopeTempo.js.map +1 -1
  150. package/dist/zod/tempo/ZoneRpcAuthentication.d.ts +0 -3
  151. package/dist/zod/tempo/ZoneRpcAuthentication.d.ts.map +1 -1
  152. package/dist/zod/tempo/z.d.ts +0 -1
  153. package/dist/zod/tempo/z.d.ts.map +1 -1
  154. package/dist/zod/tempo/z.js +0 -1
  155. package/dist/zod/tempo/z.js.map +1 -1
  156. package/dist/zod/z.d.ts +12 -0
  157. package/dist/zod/z.d.ts.map +1 -1
  158. package/dist/zod/z.js +12 -0
  159. package/dist/zod/z.js.map +1 -1
  160. package/package.json +62 -11
  161. package/src/core/AbiParameters.ts +3 -1
  162. package/src/core/Rlp.ts +66 -3
  163. package/src/core/RpcSchema.ts +1 -1
  164. package/src/core/_test/AbiParameters.decode.test.ts +88 -12
  165. package/src/core/_test/AbiParameters.encode.test.ts +68 -0
  166. package/src/core/_test/Rlp.test.ts +101 -0
  167. package/src/core/internal/abiParameters.ts +21 -3
  168. package/src/core/internal/rpcSchemas/eth.ts +36 -0
  169. package/src/erc4337/EntryPoint.ts +875 -1
  170. package/src/erc4337/RpcSchema.ts +4 -2
  171. package/src/erc4337/UserOperation.ts +130 -60
  172. package/src/erc4337/UserOperationGas.ts +36 -28
  173. package/src/erc4337/UserOperationReceipt.ts +15 -7
  174. package/src/erc4337/_test/EntryPoint.test.ts +48 -0
  175. package/src/erc4337/_test/RpcSchema.test-d.ts +56 -0
  176. package/src/erc4337/_test/UserOperation.snap-d.ts +31 -0
  177. package/src/erc4337/_test/UserOperation.test.ts +221 -5
  178. package/src/erc4337/_test/UserOperationGas.test.ts +30 -1
  179. package/src/tempo/Channel.test.ts +2 -23
  180. package/src/tempo/Channel.ts +10 -22
  181. package/src/tempo/KeyAuthorization.test.ts +22 -0
  182. package/src/tempo/KeyAuthorization.ts +9 -9
  183. package/src/tempo/MultisigConfig.test.ts +54 -37
  184. package/src/tempo/MultisigConfig.ts +59 -134
  185. package/src/tempo/PoolId.test.ts +7 -41
  186. package/src/tempo/PoolId.ts +15 -10
  187. package/src/tempo/SignatureEnvelope.test.ts +118 -17
  188. package/src/tempo/SignatureEnvelope.ts +77 -72
  189. package/src/tempo/Transaction.test.ts +0 -15
  190. package/src/tempo/Transaction.ts +63 -12
  191. package/src/tempo/TransactionReceipt.test.ts +76 -0
  192. package/src/tempo/TransactionReceipt.ts +11 -5
  193. package/src/tempo/TransactionRequest.test.ts +174 -1
  194. package/src/tempo/TransactionRequest.ts +84 -32
  195. package/src/tempo/TxEnvelopeTempo.test.ts +2 -2
  196. package/src/tempo/TxEnvelopeTempo.ts +7 -7
  197. package/src/tempo/e2e.test.ts +228 -50
  198. package/src/tempo/index.ts +6 -26
  199. package/src/version.ts +1 -1
  200. package/src/zod/Abi.ts +5 -0
  201. package/src/zod/AbiConstructor.ts +24 -0
  202. package/src/zod/AbiError.ts +9 -0
  203. package/src/zod/AbiEvent.ts +11 -0
  204. package/src/zod/AbiFallback.ts +22 -0
  205. package/src/zod/AbiFunction.ts +32 -0
  206. package/src/zod/AbiItem.ts +28 -0
  207. package/src/zod/AbiParameter.ts +36 -0
  208. package/src/zod/AbiParameters.ts +7 -0
  209. package/src/zod/AbiReceive.ts +7 -0
  210. package/src/zod/Solidity.ts +83 -0
  211. package/src/zod/TypedData.ts +111 -0
  212. package/src/zod/_test/Abi.test-d.ts +46 -0
  213. package/src/zod/_test/Abi.test.ts +163 -0
  214. package/src/zod/_test/TypedData.test-d.ts +20 -0
  215. package/src/zod/_test/TypedData.test.ts +87 -0
  216. package/src/zod/_test/z.test-d.ts +6 -0
  217. package/src/zod/_test/z.test.ts +17 -0
  218. package/src/zod/internal/rpcSchemas/Eth.ts +6 -0
  219. package/src/zod/tempo/KeyAuthorization.ts +34 -15
  220. package/src/zod/tempo/SignatureEnvelope.ts +0 -2
  221. package/src/zod/tempo/Transaction.ts +84 -22
  222. package/src/zod/tempo/TransactionRequest.ts +86 -20
  223. package/src/zod/tempo/TxEnvelopeTempo.ts +1 -1
  224. package/src/zod/tempo/_test/KeyAuthorization.test.ts +53 -0
  225. package/src/zod/tempo/_test/SignatureEnvelope.test.ts +0 -2
  226. package/src/zod/tempo/_test/Transaction.test.ts +155 -0
  227. package/src/zod/tempo/_test/TransactionRequest.test.ts +44 -0
  228. package/src/zod/tempo/z.ts +0 -1
  229. package/src/zod/z.ts +12 -0
  230. package/dist/tempo/TokenId.d.ts +0 -87
  231. package/dist/tempo/TokenId.d.ts.map +0 -1
  232. package/dist/tempo/TokenId.js +0 -123
  233. package/dist/tempo/TokenId.js.map +0 -1
  234. package/dist/zod/tempo/TokenId.d.ts +0 -6
  235. package/dist/zod/tempo/TokenId.d.ts.map +0 -1
  236. package/dist/zod/tempo/TokenId.js +0 -14
  237. package/dist/zod/tempo/TokenId.js.map +0 -1
  238. package/src/CHANGELOG.md +0 -820
  239. package/src/tempo/TokenId.bench.ts +0 -36
  240. package/src/tempo/TokenId.test.ts +0 -79
  241. package/src/tempo/TokenId.ts +0 -141
  242. package/src/zod/tempo/TokenId.ts +0 -15
  243. package/src/zod/tempo/_test/TokenId.test-d.ts +0 -17
  244. package/src/zod/tempo/_test/TokenId.test.ts +0 -21
package/src/CHANGELOG.md DELETED
@@ -1,820 +0,0 @@
1
- # ox
2
-
3
- ## 0.14.29
4
-
5
- ### Patch Changes
6
-
7
- - [#268](https://github.com/wevm/ox/pull/268) [`ed93945`](https://github.com/wevm/ox/commit/ed93945197dd505d4848535de72a93c225fa8466) Thanks [@jxom](https://github.com/jxom)! - `viem/tempo`: Added `genesisConfig` shorthand to TIP-1061 multisig helpers and renamed `configId` → `genesisConfigId` on the typed `SignatureEnvelope.Multisig`.
8
-
9
- ## 0.14.28
10
-
11
- ### Patch Changes
12
-
13
- - [#265](https://github.com/wevm/ox/pull/265) [`f5328d2`](https://github.com/wevm/ox/commit/f5328d2fb5f76f4d037ecb1ae5974a078e7b5034) Thanks [@jxom](https://github.com/jxom)! - `viem/tempo`: Added support for TIP-1061 native multisig accounts.
14
-
15
- ## 0.14.27
16
-
17
- ### Patch Changes
18
-
19
- - [#263](https://github.com/wevm/ox/pull/263) [`451a442`](https://github.com/wevm/ox/commit/451a442f7c3ba0d415ce4c212bc9b6bc7fd0034e) Thanks [@jxom](https://github.com/jxom)! - `ox/tempo`: Added the `ReceivePolicyReceipt` module for encoding/decoding TIP-1028 receive-policy claim receipts (`ClaimReceiptV1` witnesses) with `decode`, `encode`, `from`, `fromLog`, and `fromTransactionReceipt` (returns one receipt per `TransferBlocked` log).
20
-
21
- ## 0.14.26
22
-
23
- ### Patch Changes
24
-
25
- - [#262](https://github.com/wevm/ox/pull/262) [`b1ac8c8`](https://github.com/wevm/ox/commit/b1ac8c83f9f5f7a89e14f3486a1e32305e019292) Thanks [@jxom](https://github.com/jxom)! - `ox/tempo`: Added support for TIP-1049 (admin access keys) via optional `isAdmin` and `account` fields on `KeyAuthorization` that bind into the signing hash.
26
-
27
- - [#260](https://github.com/wevm/ox/pull/260) [`581ccee`](https://github.com/wevm/ox/commit/581ccee2d9dab4a2c2f12aad0b2a63b1d4d0d62d) Thanks [@jxom](https://github.com/jxom)! - `ox/tempo`: Added support for TIP-1053 (witnesses in key authorizations) via an optional 32-byte `witness` field on `KeyAuthorization` that is included in the signing hash.
28
-
29
- ## 0.14.25
30
-
31
- ### Patch Changes
32
-
33
- - [#256](https://github.com/wevm/ox/pull/256) [`ad7610b`](https://github.com/wevm/ox/commit/ad7610b115c1ebc20739289bfacead52652160be) Thanks [@jxom](https://github.com/jxom)! - Renamed `ChannelDescriptor.from` to `Channel.from`, made `Channel.Channel` the descriptor type, and changed `Channel.computeId` to receive channel and options separately.
34
-
35
- ## 0.14.24
36
-
37
- ### Patch Changes
38
-
39
- - [#254](https://github.com/wevm/ox/pull/254) [`d837628`](https://github.com/wevm/ox/commit/d8376284988f6c2b56d9cb18ac2b677465f3b835) Thanks [@jxom](https://github.com/jxom)! - Added `ChannelDescriptor.from` for normalizing TIP-20 channel reserve descriptors.
40
-
41
- ## 0.14.23
42
-
43
- ### Patch Changes
44
-
45
- - [#252](https://github.com/wevm/ox/pull/252) [`19cd833`](https://github.com/wevm/ox/commit/19cd83342bfddc682a8897f0cb5c383e8954586d) Thanks [@jxom](https://github.com/jxom)! - Added TIP-20 channel reserve constants, channel id computation, and voucher signing helpers.
46
-
47
- ## 0.14.22
48
-
49
- ### Patch Changes
50
-
51
- - [#227](https://github.com/wevm/ox/pull/227) [`ffa64c0`](https://github.com/wevm/ox/commit/ffa64c0d56c218a9cf3aaa93570c6fa6ef187864) Thanks [@Genmin](https://github.com/Genmin)! - Fixed `Secp256k1.verify` narrowing signature branches before address recovery.
52
-
53
- ## 0.14.21
54
-
55
- ### Patch Changes
56
-
57
- - [#246](https://github.com/wevm/ox/pull/246) [`32cf459`](https://github.com/wevm/ox/commit/32cf459b263edf8ffb937578e79b5792b0166294) Thanks [@0xrusowsky](https://github.com/0xrusowsky)! - Added `TxEnvelopeTempo.encodeForSigning` to expose the raw Tempo sender-signing preimage bytes.
58
-
59
- - [#248](https://github.com/wevm/ox/pull/248) [`e0474e9`](https://github.com/wevm/ox/commit/e0474e982e2d5f961ac1c0f966e542d201c3f1fa) Thanks [@jxom](https://github.com/jxom)! - Added `blockTimestamp` support to transaction RPC conversions.
60
-
61
- ## 0.14.20
62
-
63
- ### Patch Changes
64
-
65
- - [#225](https://github.com/wevm/ox/pull/225) [`7203ffc`](https://github.com/wevm/ox/commit/7203ffcc55cbcd1e31e7d89cd43bd86a948c135a) Thanks [@jxom](https://github.com/jxom)! - Fixed webpack compatibility for `VirtualMaster` by making the `node:worker_threads` import specifier non-literal, preventing bundlers from statically analyzing and failing on the `node:` scheme.
66
-
67
- ## 0.14.19
68
-
69
- ### Patch Changes
70
-
71
- - [`3f6682d`](https://github.com/wevm/ox/commit/3f6682d88ba3ac53f4f84764acf62111ac229c9c) Thanks [@jxom](https://github.com/jxom)! - Embedded WASM keccak256 salt miner for `VirtualMaster.mineSaltAsync`. Added platform-agnostic worker pool supporting Node.js, Bun, Deno (`worker_threads`), and browsers (Web Workers via Blob URLs).
72
-
73
- ## 0.14.18
74
-
75
- ### Patch Changes
76
-
77
- - [#221](https://github.com/wevm/ox/pull/221) [`3b84126`](https://github.com/wevm/ox/commit/3b841266704b2e2bc24359462bafd8acd7a16ec9) Thanks [@tmm](https://github.com/tmm)! - Added [TIP-1022](https://docs.tempo.xyz/protocol/tips/tip-1022) virtual address utilities to `ox/tempo`, including `VirtualAddress` helpers for formatting and parsing virtual addresses and `VirtualMaster` helpers for deriving registration hashes, validating salts, and mining bounded salt ranges.
78
-
79
- ## 0.14.17
80
-
81
- ### Patch Changes
82
-
83
- - [#220](https://github.com/wevm/ox/pull/220) [`da7a62c`](https://github.com/wevm/ox/commit/da7a62cfbecb99b3cc24f275703e33b1320abb1b) Thanks [@Zygimantass](https://github.com/Zygimantass)! - Added Tempo zones support
84
-
85
- - [#219](https://github.com/wevm/ox/pull/219) [`a934992`](https://github.com/wevm/ox/commit/a934992257add3724f16538c7a14d72e647a2b66) Thanks [@jxom](https://github.com/jxom)! - Added `feePayer` to `TransactionRequest` in `ox/tempo`.
86
-
87
- - [#217](https://github.com/wevm/ox/pull/217) [`5e2ae4d`](https://github.com/wevm/ox/commit/5e2ae4d9a007bb4071896c5e4c0f258e9a637a54) Thanks [@jxom](https://github.com/jxom)! - Fixed `TransactionRequest.fromRpc` in `ox/tempo`. `TransactionRequest.toRpc` now folds top-level `to`/`data`/`value` into `calls` when `calls` is not provided.
88
-
89
- ## 0.14.16
90
-
91
- ### Patch Changes
92
-
93
- - [`3ca1d56`](https://github.com/wevm/ox/commit/3ca1d56ac70a883fad5100e3d4da8208b84f5a20) Thanks [@jxom](https://github.com/jxom)! - Added `TransactionRequest.fromRpc` to `ox/tempo`.
94
-
95
- ## 0.14.15
96
-
97
- ### Patch Changes
98
-
99
- - [`d073091`](https://github.com/wevm/ox/commit/d0730912904d951d3609d7191c5d83fc2d00030d) Thanks [@jxom](https://github.com/jxom)! - Fixed `TransactionRequest.blobVersionedHashes` to include `| undefined` for `exactOptionalPropertyTypes` compatibility.
100
-
101
- ## 0.14.14
102
-
103
- ### Patch Changes
104
-
105
- - [`14137f7`](https://github.com/wevm/ox/commit/14137f77136a1184f5fecbb6083e7a93495ab7f8) Thanks [@jxom](https://github.com/jxom)! - Added `RpcSchema.ToViem` and `RpcSchema.FromViem` type utilities for converting between Ox and Viem RPC schema formats. Added `tempo_simulateV1` RPC schema to `ox/tempo`.
106
-
107
- ## 0.14.13
108
-
109
- ### Patch Changes
110
-
111
- - [`68f8fa0`](https://github.com/wevm/ox/commit/68f8fa0514032e5495b6c527c61c957e1545850d) Thanks [@jxom](https://github.com/jxom)! - viem/tempo: Renamed `contractAddress` to `address` on `KeyAuthorization.Scope`. Added support for human-readable ABI signatures in `selector` (e.g. `'transfer(address,uint256)'`), which are automatically encoded into 4-byte selectors.
112
-
113
- ## 0.14.12
114
-
115
- ### Patch Changes
116
-
117
- - [#208](https://github.com/wevm/ox/pull/208) [`30537f8`](https://github.com/wevm/ox/commit/30537f82b2721d5d8dbccdbc4fc422b4d41b0993) Thanks [@dgca](https://github.com/dgca)! - Added `serviceCodes` field to ERC-8021 `Attribution` schema.
118
-
119
- - [#211](https://github.com/wevm/ox/pull/211) [`9d0d676`](https://github.com/wevm/ox/commit/9d0d6766385686ee380f5793d0ccb54f5928c153) Thanks [@jxom](https://github.com/jxom)! - `viem/tempo`: Added support for period and call scopes on `KeyAuthorization`.
120
-
121
- ## 0.14.11
122
-
123
- ### Patch Changes
124
-
125
- - [#209](https://github.com/wevm/ox/pull/209) [`52d985e`](https://github.com/wevm/ox/commit/52d985e54ab063e4d835ad467da2bcf07fcbfb33) Thanks [@jxom](https://github.com/jxom)! - Fixed `Credential.serialize` to extract `authenticatorData` from the CBOR-encoded `attestationObject` when the browser/passkey provider doesn't expose it on the response object (e.g. Firefox + 1Password).
126
-
127
- ## 0.14.10
128
-
129
- ### Patch Changes
130
-
131
- - [#204](https://github.com/wevm/ox/pull/204) [`9aec6a9`](https://github.com/wevm/ox/commit/9aec6a94ba294c38ec937dc8522582e2f0a40ddc) Thanks [@jxom](https://github.com/jxom)! - Added `Ed25519.toX25519PublicKey` and `Ed25519.toX25519PrivateKey` for converting Ed25519 keys to X25519 keys. Useful for performing X25519 Diffie-Hellman key exchange using an Ed25519 signing key pair.
132
-
133
- ## 0.14.9
134
-
135
- ### Patch Changes
136
-
137
- - [#201](https://github.com/wevm/ox/pull/201) [`ea94ea6`](https://github.com/wevm/ox/commit/ea94ea627eec365de22ade3126dc39b824cc53f9) Thanks [@decofe](https://github.com/decofe)! - Fixed `KeyAuthorization.fromRpc` to preserve `undefined` expiry instead of defaulting to `0`.
138
-
139
- ## 0.14.8
140
-
141
- ### Patch Changes
142
-
143
- - [`0d0575e`](https://github.com/wevm/ox/commit/0d0575e36503403ce245eaaaf29aac106bad508a) Thanks [@jxom](https://github.com/jxom)! - Added ERC-8021 Schema 2 (CBOR-encoded) attribution support to the `Attribution` module.
144
-
145
- ## 0.14.7
146
-
147
- ### Patch Changes
148
-
149
- - [`8d51883`](https://github.com/wevm/ox/commit/8d5188398a2d63bbee566e1f59a00da345c3cc99) Thanks [@jxom](https://github.com/jxom)! - ox/tempo: Fixed output types.
150
-
151
- ## 0.14.6
152
-
153
- ### Patch Changes
154
-
155
- - [#197](https://github.com/wevm/ox/pull/197) [`28ac186`](https://github.com/wevm/ox/commit/28ac1866867eda53bb2e2114f043d674cfcb093a) Thanks [@jxom](https://github.com/jxom)! - Fixed WebAuthn response serialization to fall back to getter methods (e.g. `getAuthenticatorData()`) when properties are not directly accessible on the response object. Some browsers and passkey providers (e.g. 1Password, Firefox) proxy the credential object, making property access return `undefined` even though the data is available via getter methods.
156
-
157
- ## 0.14.5
158
-
159
- ### Patch Changes
160
-
161
- - [`6dcde2c`](https://github.com/wevm/ox/commit/6dcde2c34ae05928c9e7fd021af3731390b39619) Thanks [@jxom](https://github.com/jxom)! - Fixed type incompatibility between ox's `CredentialCreationOptions`/`CredentialRequestOptions` and the DOM's built-in types.
162
-
163
- ## 0.14.4
164
-
165
- ### Patch Changes
166
-
167
- - [`0189572`](https://github.com/wevm/ox/commit/0189572f95c96bb9fed70966f7e0fa0eb951dee2) Thanks [@jxom](https://github.com/jxom)! - `ox/tempo`: Fixed sender recovery for fee payer transactions.
168
-
169
- ## 0.14.3
170
-
171
- ### Patch Changes
172
-
173
- - [`3f7b80c`](https://github.com/wevm/ox/commit/3f7b80cb6537b407318abb6c6824b9daf91f02ef) Thanks [@jxom](https://github.com/jxom)! - Updated `TempoAddress` to new format.
174
-
175
- ## 0.14.2
176
-
177
- ### Patch Changes
178
-
179
- - [`3dbb585`](https://github.com/wevm/ox/commit/3dbb5851fb486bdb2af5083f989018e6b2489847) Thanks [@jxom](https://github.com/jxom)! - Fixed `Registration.create` and `Authentication.sign` throwing "Permission denied to access object" in Firefox with the 1Password extension. Replaced `.bind()` defaults on `navigator.credentials.create`/`.get` with arrow functions, eagerly read credential response properties (`attestationObject`, `clientDataJSON`, `authenticatorData`, `signature`, `id`) before subsequent access is blocked by the cross-compartment proxy, and passed the already-read `attestationObject` to `parseCredentialPublicKey` so the 1Password fallback path no longer re-accesses the proxy.
180
-
181
- ## 0.14.1
182
-
183
- ### Patch Changes
184
-
185
- - [`e0d36d4`](https://github.com/wevm/ox/commit/e0d36d4c82ee5234078df083fe5ebc845fe8676f) Thanks [@jxom](https://github.com/jxom)! - Added `keyId` to `SignatureEnvelope` and made keychain signatures default to v2.
186
-
187
- ## 0.14.0
188
-
189
- ### Minor Changes
190
-
191
- - [#178](https://github.com/wevm/ox/pull/178) [`4a79ac5`](https://github.com/wevm/ox/commit/4a79ac540c05796ebc92a0d54ce0049a6ff5e195) Thanks [@jxom](https://github.com/jxom)! - **Breaking (`ox/tempo`):** `KeyAuthorization.chainId` is now required.
192
-
193
- ```diff
194
- const authorization = KeyAuthorization.from({
195
- address,
196
- + chainId: 1n,
197
- expiry: 1234567890,
198
- type: 'secp256k1',
199
- })
200
- ```
201
-
202
- ### Patch Changes
203
-
204
- - [#178](https://github.com/wevm/ox/pull/178) [`4a79ac5`](https://github.com/wevm/ox/commit/4a79ac540c05796ebc92a0d54ce0049a6ff5e195) Thanks [@jxom](https://github.com/jxom)! - **`ox/tempo`:** Added support for V2 keychain signature type (`0x04`) which binds the inner signature to the user account via `keccak256(0x04 || sigHash || userAddress)`.
205
-
206
- ## 0.13.2
207
-
208
- ### Patch Changes
209
-
210
- - [#179](https://github.com/wevm/ox/pull/179) [`4b91335`](https://github.com/wevm/ox/commit/4b91335b5a68cfee39248ab91c78a0b98b1d1859) Thanks [@jxom](https://github.com/jxom)! - Added `Base32`, `CompactSize`, and `TempoAddress` modules. `Base32` implements BIP-173 bech32 base32 encoding/decoding. `CompactSize` implements Bitcoin's variable-length integer encoding. `TempoAddress` provides human-readable Tempo address formatting and parsing with `tempo1`/`tempoz1` prefixes, CompactSize zone ID encoding, and double-SHA256 checksumming.
211
-
212
- ## 0.13.1
213
-
214
- ### Patch Changes
215
-
216
- - [`50c4d08`](https://github.com/wevm/ox/commit/50c4d08556e3c049979b24200efcb5534c156411) Thanks [@jxom](https://github.com/jxom)! - `ox/tempo`: Added `KeyAuthorization.serialize` and `KeyAuthorization.deserialize` for RLP encoding/decoding key authorizations.
217
-
218
- `ox/tempo`: Fixed `KeyAuthorization.toTuple` to always include expiry in the tuple when limits are present, preventing malformed RLP encoding.
219
-
220
- - [`50c4d08`](https://github.com/wevm/ox/commit/50c4d08556e3c049979b24200efcb5534c156411) Thanks [@jxom](https://github.com/jxom)! - `ox/tempo`: Added `SignatureEnvelope.extractAddress` and `SignatureEnvelope.extractPublicKey` to extract signer address/public key from a signature envelope. Handles all signature types: secp256k1 (via ecrecover), p256/webAuthn (from embedded public key), and keychain (from inner signature or root `userAddress`).
221
-
222
- ## 0.13.0
223
-
224
- ### Minor Changes
225
-
226
- - [`c8c6229`](https://github.com/wevm/ox/commit/c8c62297ac43161095482176e1846ce61bb62eb5) Thanks [@jxom](https://github.com/jxom)! - Overhauled WebAuthn support with a dedicated `ox/webauthn` entrypoint for server-side registration & authentication ceremonies, credential management, and authenticator data parsing.
227
- - `Registration` – Full registration ceremony: `create`, `getOptions`, `verify`, with `serializeOptions`/`deserializeOptions` for server↔client transport
228
- - `Authentication` – Full authentication ceremony: `sign`, `getOptions`, `verify`, with `serializeOptions`/`deserializeOptions` for server↔client transport
229
- - `Credential` – `serialize`/`deserialize` for persisting and transporting WebAuthn credentials as JSON
230
- - `Authenticator` – Low-level utilities for constructing/parsing authenticator data, attestation objects, and client data JSON
231
-
232
- ## 0.12.4
233
-
234
- ### Patch Changes
235
-
236
- - [`772f3eb`](https://github.com/wevm/ox/commit/772f3eb7139d1ef1f8f7271d3d10729948195b42) Thanks [@jxom](https://github.com/jxom)! - Added support for recovering the sender address (`from`) from the transaction signature in `TxEnvelopeTempo.deserialize`.
237
-
238
- ## 0.12.3
239
-
240
- ### Patch Changes
241
-
242
- - [#171](https://github.com/wevm/ox/pull/171) [`d206a6e`](https://github.com/wevm/ox/commit/d206a6e3c371b9ed5d89ec89adcf86eba35bd6ed) Thanks [@jxom](https://github.com/jxom)! - Fixed COSE key encoding in `WebAuthnP256.getAuthenticatorData` to use CBOR integer keys.
243
-
244
- - [#171](https://github.com/wevm/ox/pull/171) [`d206a6e`](https://github.com/wevm/ox/commit/d206a6e3c371b9ed5d89ec89adcf86eba35bd6ed) Thanks [@jxom](https://github.com/jxom)! - Added `CoseKey` module with `fromPublicKey` and `toPublicKey` for converting between P256 public keys and CBOR-encoded COSE_Key format.
245
-
246
- - [#171](https://github.com/wevm/ox/pull/171) [`d206a6e`](https://github.com/wevm/ox/commit/d206a6e3c371b9ed5d89ec89adcf86eba35bd6ed) Thanks [@jxom](https://github.com/jxom)! - Added `Map` support to `Cbor.encode` for encoding maps with non-string keys (e.g. CBOR integer keys).
247
-
248
- - [#171](https://github.com/wevm/ox/pull/171) [`d206a6e`](https://github.com/wevm/ox/commit/d206a6e3c371b9ed5d89ec89adcf86eba35bd6ed) Thanks [@jxom](https://github.com/jxom)! - Fixed `WebAuthnP256.verify` type-check slice bug.
249
-
250
- ## 0.12.2
251
-
252
- ### Patch Changes
253
-
254
- - [`ddf03bc`](https://github.com/wevm/ox/commit/ddf03bcb9fef345e3ee45999855d15554b006ec1) Thanks [@jxom](https://github.com/jxom)! - Added `Json.canonicalize` (RFC 8785)
255
-
256
- ## 0.12.1
257
-
258
- ### Patch Changes
259
-
260
- - [#166](https://github.com/wevm/ox/pull/166) [`480d01a`](https://github.com/wevm/ox/commit/480d01ae5f165b2d06474df1a417abca814b57c2) Thanks [@jxom](https://github.com/jxom)! - Derived sender address from signature in `TxEnvelopeTempo.serialize` when using `format: 'feePayer'`.
261
-
262
- ## 0.12.0
263
-
264
- ### Minor Changes
265
-
266
- - [`f605321`](https://github.com/wevm/ox/commit/f60532162ff75c3dd19ebfa9ad1c56905fb35fb6) Thanks [@jxom](https://github.com/jxom)! - Added `Hash.hmac256` for computing HMAC-SHA256 hashes.
267
-
268
- ## 0.11.3
269
-
270
- ### Patch Changes
271
-
272
- - [`4a79129`](https://github.com/wevm/ox/commit/4a79129da654098ee28ac63b4771a47a4bb57179) Thanks [@jxom](https://github.com/jxom)! - Fixed `TokenId.compute` return value.
273
-
274
- ## 0.11.2
275
-
276
- ### Patch Changes
277
-
278
- - [#153](https://github.com/wevm/ox/pull/153) [`95ebfcf`](https://github.com/wevm/ox/commit/95ebfcf1caf857b3658c26c26bb2d6ebbd88b904) Thanks [@jxom](https://github.com/jxom)! - Added `TokenId.compute` to compute deterministic TIP-20 token addresses from sender and salt.
279
-
280
- ## 0.11.1
281
-
282
- ### Patch Changes
283
-
284
- - [`11cde15`](https://github.com/wevm/ox/commit/11cde150fa9ad07c4e2f398c20ab95278a8ab0d5) Thanks [@jxom](https://github.com/jxom)! - Fixed `KeyAuthorization.toRpc`
285
-
286
- ## 0.11.0
287
-
288
- ### Minor Changes
289
-
290
- - [`4c55afa`](https://github.com/wevm/ox/commit/4c55afa2c942eb86789b1315e5b4ccc4611aafca) Thanks [@jxom](https://github.com/jxom)! - **Breaking:** Renamed `prehash` to `preHash` on `KeyAuthorization#P256Rpc`
291
-
292
- ## 0.10.6
293
-
294
- ### Patch Changes
295
-
296
- - [`a24f08a`](https://github.com/wevm/ox/commit/a24f08a11b9d980709512fda6cbd350c44500b30) Thanks [@jxom](https://github.com/jxom)! - Updated `TransactionRequest.toRpc` for Tempo.
297
-
298
- ## 0.10.5
299
-
300
- ### Patch Changes
301
-
302
- - [`e750936`](https://github.com/wevm/ox/commit/e7509364b3e9c0db3ec34e82e4e3b5baf43164e9) Thanks [@jxom](https://github.com/jxom)! - Throw error if signature envelope type not supported.
303
-
304
- ## 0.10.4
305
-
306
- ### Patch Changes
307
-
308
- - [`a449324`](https://github.com/wevm/ox/commit/a44932462769ac9e9a42e342310eae3d821e130c) Thanks [@jxom](https://github.com/jxom)! - Added `SignatureEnvelope.verify`.
309
-
310
- - [`fa6cc3c`](https://github.com/wevm/ox/commit/fa6cc3c64bc358d3c31c6a4e0ac76960ec36b9c1) Thanks [@jxom](https://github.com/jxom)! - Added `magic` to `SignatureEnvelope.serialize`.
311
-
312
- ## 0.10.3
313
-
314
- ### Patch Changes
315
-
316
- - [#144](https://github.com/wevm/ox/pull/144) [`253b471`](https://github.com/wevm/ox/commit/253b47185cad37083fc9f50f150b831c23274bc5) Thanks [@tmm](https://github.com/tmm)! - Bumped ABIType
317
-
318
- ## 0.10.2
319
-
320
- ### Patch Changes
321
-
322
- - [`a98c346`](https://github.com/wevm/ox/commit/a98c346aead489f5c4697f5a2cbf6f5803921655) Thanks [@jxom](https://github.com/jxom)! - `ox/tempo`: Removed `0x` fallback on `to` for `TransactionRequest.toRpc`
323
-
324
- ## 0.10.1
325
-
326
- ### Patch Changes
327
-
328
- - [`a5a63d4`](https://github.com/wevm/ox/commit/a5a63d4940734fb8df042df1f67aa0c6c8d9b698) Thanks [@jxom](https://github.com/jxom)! - Explicitly widened `WebAuthn` `getFn`/`createFn` to avoid downstream type conflicts.
329
-
330
- ## 0.10.0
331
-
332
- ### Minor Changes
333
-
334
- - [#138](https://github.com/wevm/ox/pull/138) [`29a2f43`](https://github.com/wevm/ox/commit/29a2f4357c90fad0c4ba69e3ebf3665bdd5c30d1) Thanks [@wbj-cb](https://github.com/wbj-cb)! - **Breaking:** Aligned to latest ERC-8021 specification. Modified `Attribution.toDataSuffix` parameters to include `codeRegistry` instead of `registryAddress`.
335
-
336
- ```diff ts twoslash
337
- Attribution.toDataSuffix({
338
- codes: ['baseapp', 'morpho'],
339
- - registryAddress: '0xcccccccccccccccccccccccccccccccccccccccc',
340
- + codeRegistry: {
341
- + address: '0xcccccccccccccccccccccccccccccccccccccccc`
342
- + chainId: 8453,
343
- + }
344
- })
345
- ```
346
-
347
- - [`f8bf590`](https://github.com/wevm/ox/commit/f8bf5908bfaf3b1a5d39c38cea98ed58fc9f7935) Thanks [@jxom](https://github.com/jxom)! - **Breaking:** Renamed `TransactionEnvelope*` to `TxEnvelope*`.
348
-
349
- - [#140](https://github.com/wevm/ox/pull/140) [`7997629`](https://github.com/wevm/ox/commit/79976295604ef5281c33a89af9d59a6fafc9ddd0) Thanks [@jxom](https://github.com/jxom)! - Added `ox/tempo` entrypoint.
350
-
351
- ## 0.9.17
352
-
353
- ### Patch Changes
354
-
355
- - [`e63c3b2`](https://github.com/wevm/ox/commit/e63c3b254371473becc918b7efc8ce89d0eeb5bb) Thanks [@jxom](https://github.com/jxom)! - Tweaked `WebAuthnP256.createCredential` to accept `challenge` of type `Hex`.
356
-
357
- ## 0.9.16
358
-
359
- ### Patch Changes
360
-
361
- - [`d11e1fb`](https://github.com/wevm/ox/commit/d11e1fbd2554194a67d37c4da34dcf9f749e3698) Thanks [@jxom](https://github.com/jxom)! - Modified `WebAuthnP256.verify` to work with only `clientDataJSON` and `authenticatorData`
362
-
363
- ## 0.9.15
364
-
365
- ### Patch Changes
366
-
367
- - [#133](https://github.com/wevm/ox/pull/133) [`07a7bb0`](https://github.com/wevm/ox/commit/07a7bb0110e38062c000d9e403e61621547eda7f) Thanks [@jxom](https://github.com/jxom)! - Added `Cbor` module.
368
-
369
- ## 0.9.14
370
-
371
- ### Patch Changes
372
-
373
- - [`896096d`](https://github.com/wevm/ox/commit/896096d17516f686321b9353807bdaa63e7544cc) Thanks [@jxom](https://github.com/jxom)! - Exported types required for inference.
374
-
375
- ## 0.9.13
376
-
377
- ### Patch Changes
378
-
379
- - [`95458ee`](https://github.com/wevm/ox/commit/95458ee13dc1b9333deb948791225e3883fb8b82) Thanks [@jxom](https://github.com/jxom)! - Added `TransactionRequest.fromRpc`
380
-
381
- - [`c165694`](https://github.com/wevm/ox/commit/c1656940e959b9e904c3ec497b720e1315f390e2) Thanks [@jxom](https://github.com/jxom)! - Added ability to pass custom event map to `Provider.createEmitter`.
382
-
383
- - [`c165694`](https://github.com/wevm/ox/commit/c1656940e959b9e904c3ec497b720e1315f390e2) Thanks [@jxom](https://github.com/jxom)! - Added ability to pass `schema` to `RpcRequest.createStore`
384
-
385
- ## 0.9.12
386
-
387
- ### Patch Changes
388
-
389
- - [`242558a`](https://github.com/wevm/ox/commit/242558a745169931b08030f7e4b41f21b2d65e24) Thanks [@jxom](https://github.com/jxom)! - Fixed formatting between metadata and version on `BaseError`.
390
-
391
- ## 0.9.11
392
-
393
- ### Patch Changes
394
-
395
- - [#126](https://github.com/wevm/ox/pull/126) [`b4572ed`](https://github.com/wevm/ox/commit/b4572ed6feaed7ee1063f8b710d98e928d848016) Thanks [@jxom](https://github.com/jxom)! - Added `ox/erc8021` entrypoint.
396
-
397
- ## 0.9.10
398
-
399
- ### Patch Changes
400
-
401
- - [`f61d713`](https://github.com/wevm/ox/commit/f61d713d6dd5387b5f4d1c71643b28e77e1aaff8) Thanks [@jxom](https://github.com/jxom)! - Added `version` and `docsOrigin` to `Errors.BaseError`.
402
-
403
- ## 0.9.9
404
-
405
- ### Patch Changes
406
-
407
- - [`a1c8a43`](https://github.com/wevm/ox/commit/a1c8a43d0d6549c1be8aa86d32a10e8ee327ffcf) Thanks [@jxom](https://github.com/jxom)! - Added `eth_sendRawTransactionSync` to types.
408
-
409
- ## 0.9.8
410
-
411
- ### Patch Changes
412
-
413
- - [#119](https://github.com/wevm/ox/pull/119) [`447e386`](https://github.com/wevm/ox/commit/447e386a50fe514cf2abd472bace0a934d068358) Thanks [@jxom](https://github.com/jxom)! - Added [ERC-7821](https://eips.ethereum.org/EIPS/eip-7821) modules.
414
-
415
- ## 0.9.7
416
-
417
- ### Patch Changes
418
-
419
- - [`8a08b24`](https://github.com/wevm/ox/commit/8a08b243bd255a2e35cd24a3d5d1bb3342b1f672) Thanks [@jxom](https://github.com/jxom)! - Serialize `type` on `TransactionRequest.toRpc`.
420
-
421
- - [`5e1c0df`](https://github.com/wevm/ox/commit/5e1c0df66d429aa43a1e90b56a3daba788cedd6d) Thanks [@jxom](https://github.com/jxom)! - Added micro-optimizations.
422
-
423
- ## 0.9.6
424
-
425
- ### Patch Changes
426
-
427
- - [`c154290`](https://github.com/wevm/ox/commit/c154290c6958702f854bece58309a15694589f22) Thanks [@jxom](https://github.com/jxom)! - Added ABI-shorthand for `AbiItem.{getSelector,getSignature,getSignatureHash}`
428
-
429
- ## 0.9.5
430
-
431
- ### Patch Changes
432
-
433
- - [#113](https://github.com/wevm/ox/pull/113) [`e21cb3c`](https://github.com/wevm/ox/commit/e21cb3cf0b7412f9ca72824247d22ba25e8be4c9) Thanks [@jxom](https://github.com/jxom)! - Added support for specifying the ABI and signature name to:
434
- - `AbiFunction.{encodeData,encodeResult,decodeData,decodeResult}`
435
- - `AbiError.{encode,decode}`
436
- - `AbiEvent.{encode,decode}`
437
-
438
- Example:
439
-
440
- ```ts twoslash
441
- import { AbiFunction } from 'ox'
442
- import { abi } from './abi'
443
-
444
- const data = AbiFunction.encodeData(abi, 'approve', [
445
- '0x0000000000000000000000000000000000000000',
446
- 1n,
447
- ])
448
- ```
449
-
450
- ## 0.9.4
451
-
452
- ### Patch Changes
453
-
454
- - [`8aaf1a4`](https://github.com/wevm/ox/commit/8aaf1a4c4aedf654abf9319932eb57b560186d43) Thanks [@jxom](https://github.com/jxom)! - Removed proxy packages. Metro (the problematic bundler) now respects `package.json#exports`.
455
-
456
- ## 0.9.3
457
-
458
- ### Patch Changes
459
-
460
- - [`1cd8943`](https://github.com/wevm/ox/commit/1cd894336fb0a4cef8b0879cc214a7997fea1042) Thanks [@jxom](https://github.com/jxom)! - Updated dependencies.
461
-
462
- ## 0.9.2
463
-
464
- ### Patch Changes
465
-
466
- - [`9be7919`](https://github.com/wevm/ox/commit/9be791906d9496111a1607344ddb02077f02f6a6) Thanks [@jxom](https://github.com/jxom)! - Updated `ox/erc8010` to latest spec changes.
467
-
468
- ## 0.9.1
469
-
470
- ### Patch Changes
471
-
472
- - [`dec161a`](https://github.com/wevm/ox/commit/dec161ac7b3089bd6a0647d91e02f174ac421d65) Thanks [@jxom](https://github.com/jxom)! - Fixed `signature` type on ERC-6492 and ERC-8010.
473
-
474
- ## 0.9.0
475
-
476
- ### Minor Changes
477
-
478
- - [#104](https://github.com/wevm/ox/pull/104) [`4f4b635`](https://github.com/wevm/ox/commit/4f4b635dfb399ca9df07bab843857743f389639e) Thanks [@jxom](https://github.com/jxom)! - **Breaking(`ox/erc6492`:**
479
- - Renamed `WrappedSignature` to `SignatureErc6492`
480
- - Renamed `WrappedSignature.WrappedSignature` to `SignatureErc6492.Unwrapped`
481
- - Renamed `WrappedSignature.toHex` to `SignatureErc6492.wrap`
482
- - Renamed `WrappedSignature.fromHex` to `SignatureErc6492.unwrap`
483
-
484
- - [#104](https://github.com/wevm/ox/pull/104) [`4f4b635`](https://github.com/wevm/ox/commit/4f4b635dfb399ca9df07bab843857743f389639e) Thanks [@jxom](https://github.com/jxom)! - Added `ox/erc8010` entrypoint with `SignatureErc8010` module.
485
-
486
- ## 0.8.9
487
-
488
- ### Patch Changes
489
-
490
- - [#102](https://github.com/wevm/ox/pull/102) [`5796d6d`](https://github.com/wevm/ox/commit/5796d6dbebff719c84b4658de37e3240adbc87e1) Thanks [@dan1kov](https://github.com/dan1kov)! - Fixed signature destructuring on `Authorization.fromTuple`.
491
-
492
- ## 0.8.8
493
-
494
- ### Patch Changes
495
-
496
- - [#98](https://github.com/wevm/ox/pull/98) [`96c2046`](https://github.com/wevm/ox/commit/96c20462420a3e6be1301cccb4b66afe1bccc3f8) Thanks [@mmv08](https://github.com/mmv08)! - Added handling for `bigint` chain IDs in `TypedData.extractEip712DomainTypes`.
497
-
498
- ## 0.8.7
499
-
500
- ### Patch Changes
501
-
502
- - [`9a9ef21`](https://github.com/wevm/ox/commit/9a9ef21e17f982fa6f7b76d5ad615b68d200d9eb) Thanks [@jxom](https://github.com/jxom)! - Fixed zeroish conversion of `chainId` and `nonce` in `Authorization.fromTuple`.
503
-
504
- ## 0.8.6
505
-
506
- ### Patch Changes
507
-
508
- - [#94](https://github.com/wevm/ox/pull/94) [`301c319`](https://github.com/wevm/ox/commit/301c319fafab25b1a3a85bcf6bc81c3c9dee72d9) Thanks [@jxom](https://github.com/jxom)! - **ERC-4337**: Added `UserOperation.fromPacked`.
509
-
510
- ## 0.8.5
511
-
512
- ### Patch Changes
513
-
514
- - [#92](https://github.com/wevm/ox/pull/92) [`b6eaa05`](https://github.com/wevm/ox/commit/b6eaa055ce415cd24f802b8bfa5bdbbd53480ab8) Thanks [@jxom](https://github.com/jxom)! - Added support for EntryPoint 0.8.
515
-
516
- ## 0.8.4
517
-
518
- ### Patch Changes
519
-
520
- - [`ce19a08`](https://github.com/wevm/ox/commit/ce19a087bffaa205067fca530532fb05cc02c792) Thanks [@jxom](https://github.com/jxom)! - Added `stack` to `Provider.InternalError`.
521
-
522
- ## 0.8.3
523
-
524
- ### Patch Changes
525
-
526
- - [#74](https://github.com/wevm/ox/pull/74) [`72209ef`](https://github.com/wevm/ox/commit/72209efaf2bf6dd5d71274db8df7416532ebe9cb) Thanks [@danpopenko](https://github.com/danpopenko)! - Added extensions support for `WebAuthnP256.sign`.
527
-
528
- ## 0.8.2
529
-
530
- ### Patch Changes
531
-
532
- - [`9fd0bf0`](https://github.com/wevm/ox/commit/9fd0bf0460694709566805bc29f50cad25816620) Thanks [@jxom](https://github.com/jxom)! - Added [ECDH (Elliptic Curve Diffie-Hellman)](https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/deriveKey#ecdh) shared secrets to `P256`, `Secp256k1`, and `WebCryptoP256` modules. This enables secure key agreement between parties using elliptic curve cryptography for both secp256k1 and secp256r1 (P256) curves, with support for both `@noble/curves` (for `P256` and `Secp256k1`) implementation and Web Crypto APIs (`WebCryptoP256`).
533
- - `P256.getSharedSecret`
534
- - `Secp256k1.getSharedSecret`
535
- - `WebCryptoP256.getSharedSecret`
536
-
537
- - [`9fd0bf0`](https://github.com/wevm/ox/commit/9fd0bf0460694709566805bc29f50cad25816620) Thanks [@jxom](https://github.com/jxom)! - Added `createKeyPair` helper functions for `Bls`, `P256`, and `Secp256k1` modules. These functions provide a convenient way to generate complete key pairs (private key + public key) in a single operation, simplifying key generation workflows and reducing the need for separate `randomPrivateKey` and `getPublicKey` calls.
538
-
539
- - [`9fd0bf0`](https://github.com/wevm/ox/commit/9fd0bf0460694709566805bc29f50cad25816620) Thanks [@jxom](https://github.com/jxom)! - Added `Ed25519` and `X25519` modules. The `Ed25519` module provides functionality for creating key pairs, signing messages, and verifying signatures using the Ed25519 signature scheme. The `X25519` module enables Elliptic Curve Diffie-Hellman (ECDH) key agreement operations for secure shared secret derivation.
540
-
541
- ## 0.8.1
542
-
543
- ### Patch Changes
544
-
545
- - [`74e47c5`](https://github.com/wevm/ox/commit/74e47c5df471a48f4fb389f0684ca52f841fbc11) Thanks [@jxom](https://github.com/jxom)! - Added `Keystore.toKey` and `Keystore.toKeyAsync` to derive a key from a JSON Keystore using a password.
546
-
547
- ## 0.8.0
548
-
549
- ### Minor Changes
550
-
551
- - [`7fc1da0`](https://github.com/wevm/ox/commit/7fc1da0717a17dbac0e4effed2ea3911c7ca3236) Thanks [@jxom](https://github.com/jxom)! - **Breaking(`Keystore`):** Keystore derivation functions (e.g. `Keystore.pbkdf2`) now return a tuple of the key and derivation options,
552
- instead of an object with the key and options.
553
-
554
- ```diff
555
- import { Keystore } from 'ox'
556
-
557
- - const key = Keystore.pbkdf2({ password: 'testpassword' })
558
- + const [key, opts] = Keystore.pbkdf2({ password: 'testpassword' })
559
- ```
560
-
561
- - [`7fc1da0`](https://github.com/wevm/ox/commit/7fc1da0717a17dbac0e4effed2ea3911c7ca3236) Thanks [@jxom](https://github.com/jxom)! - **Breaking(`Keystore`):** `Keystore.decrypt` function interface no longer requires an object as the second parameter, now it only requires the key itself.
562
-
563
- ```diff
564
- import { Keystore } from 'ox'
565
-
566
- const [key, opts] = Keystore.pbkdf2({ password: 'testpassword' })
567
-
568
- const encrypted = await Keystore.encrypt(secret, key, opts)
569
-
570
- + const decrypted = await Keystore.decrypt(encrypted, key)
571
- ```
572
-
573
- - [`7fc1da0`](https://github.com/wevm/ox/commit/7fc1da0717a17dbac0e4effed2ea3911c7ca3236) Thanks [@jxom](https://github.com/jxom)! - **Breaking(`Keystore`):** `Keystore.encrypt` function interface has changed to require derivation options (`opts`).
574
-
575
- ```diff
576
- import { Keystore } from 'ox'
577
-
578
- const [key, opts] = Keystore.pbkdf2({ password: 'testpassword' })
579
-
580
- - const encrypted = await Keystore.encrypt(secret, key)
581
- + const encrypted = await Keystore.encrypt(secret, key, opts)
582
- ```
583
-
584
- ## 0.7.2
585
-
586
- ### Patch Changes
587
-
588
- - [`6090531`](https://github.com/wevm/ox/commit/6090531e29be96d2bd1eda1f85f3e7322b48ff18) Thanks [@jxom](https://github.com/jxom)! - Updated dependencies.
589
-
590
- - [`c4c7070`](https://github.com/wevm/ox/commit/c4c7070c7d50fd8d745e5f881305bdf4aa5362d0) Thanks [@jxom](https://github.com/jxom)! - Fixed parsing of zeroish nonces.
591
-
592
- ## 0.7.1
593
-
594
- ### Patch Changes
595
-
596
- - [#75](https://github.com/wevm/ox/pull/75) [`27a1e28`](https://github.com/wevm/ox/commit/27a1e28e1f403ca18d428611fc3b88dcb5a4503e) Thanks [@jxom](https://github.com/jxom)! - Added `Keystore` module.
597
-
598
- ## 0.7.0
599
-
600
- ### Minor Changes
601
-
602
- - [`09f72cb`](https://github.com/wevm/ox/commit/09f72cb33f076151e3437cf42b1cad775148a2bb) Thanks [@jxom](https://github.com/jxom)! - Updated EIP-5792 APIs to the latest spec on `RpcSchema`.
603
-
604
- ### Patch Changes
605
-
606
- - [`61a9c57`](https://github.com/wevm/ox/commit/61a9c5798b8072b9c16691463742835b15c17468) Thanks [@jxom](https://github.com/jxom)! - Added EIP-5792 provider errors.
607
-
608
- ## 0.6.12
609
-
610
- ### Patch Changes
611
-
612
- - [`5247546`](https://github.com/wevm/ox/commit/5247546f0400a3edb3c99f90be7696ab7d3fd7d9) Thanks [@jxom](https://github.com/jxom)! - Fixed `Provider.parseError` case.
613
-
614
- ## 0.6.11
615
-
616
- ### Patch Changes
617
-
618
- - [`ba67f11`](https://github.com/wevm/ox/commit/ba67f11bb377f132583a3eb04ae761bd36a08387) Thanks [@jxom](https://github.com/jxom)! - Enhanced handling of arbitrary Provider errors.
619
-
620
- ## 0.6.10
621
-
622
- ### Patch Changes
623
-
624
- - [#65](https://github.com/wevm/ox/pull/65) [`33712a5`](https://github.com/wevm/ox/commit/33712a5680e4b2ad6be0513e70049160628287a0) Thanks [@thomas779](https://github.com/thomas779)! - Added support for multiple `credentialId`s in `WebAuthnP256`.
625
-
626
- - [`10e6449`](https://github.com/wevm/ox/commit/10e6449e0e5f060c5ea3db026f4fb98978f78cca) Thanks [@jxom](https://github.com/jxom)! - Added case to fall back to `cause.details` for `BaseError` details.
627
-
628
- ## 0.6.9
629
-
630
- ### Patch Changes
631
-
632
- - [`6480607`](https://github.com/wevm/ox/commit/6480607767387a64f720e0fa3abbc26ea9409990) Thanks [@jxom](https://github.com/jxom)! - Fixed `AbiEvent.encode` for zeroish arguments.
633
-
634
- ## 0.6.8
635
-
636
- ### Patch Changes
637
-
638
- - [#60](https://github.com/wevm/ox/pull/60) [`7ff54a2`](https://github.com/wevm/ox/commit/7ff54a2d0a77e2af5a2cc0e1095f0f8d952510c8) Thanks [@jxom](https://github.com/jxom)! - Added `BinaryStateTree` (EIP-7864) module.
639
-
640
- ## 0.6.7
641
-
642
- ### Patch Changes
643
-
644
- - [`076c6a2`](https://github.com/wevm/ox/commit/076c6a260bfd42d6e66a7490bfb36425f91099d7) Thanks [@jxom](https://github.com/jxom)! - Removed redundant pure annotation.
645
-
646
- ## 0.6.6
647
-
648
- ### Patch Changes
649
-
650
- - [`980f0e2`](https://github.com/wevm/ox/commit/980f0e269cca1ef3c564aba75055fef867ca3e6f) Thanks [@jxom](https://github.com/jxom)! - Fixed TSDoc.
651
-
652
- ## 0.6.5
653
-
654
- ### Patch Changes
655
-
656
- - [`0b5182f`](https://github.com/wevm/ox/commit/0b5182f94821715c227dc8b0c891d4548b30fa0e) Thanks [@jxom](https://github.com/jxom)! - Fixed build process for typedef generation.
657
-
658
- ## 0.6.4
659
-
660
- ### Patch Changes
661
-
662
- - [`74ceae4`](https://github.com/wevm/ox/commit/74ceae4089663ebae18690a44fd98accc28b9b5c) Thanks [@jxom](https://github.com/jxom)! - Fixed `Provider.parseError` behavior.
663
-
664
- ## 0.6.3
665
-
666
- ### Patch Changes
667
-
668
- - [`ddaed51`](https://github.com/wevm/ox/commit/ddaed51550308eceda3c9a080503cf1fdfac6ac0) Thanks [@jxom](https://github.com/jxom)! - Fixed parsing of Provider RPC errors.
669
-
670
- ## 0.6.2
671
-
672
- ### Patch Changes
673
-
674
- - [`e541cec`](https://github.com/wevm/ox/commit/e541ceca3c00f0d0b2fbd239696476934dc13ea3) Thanks [@jxom](https://github.com/jxom)! - Modified fallback RPC Errors to `RpcResponse.InternalError`.
675
-
676
- ## 0.6.1
677
-
678
- ### Patch Changes
679
-
680
- - [`5d007ae`](https://github.com/wevm/ox/commit/5d007aebab4a7fe6acc8eb3cfecbce59fe79a00b) Thanks [@jxom](https://github.com/jxom)! - Added `RpcResponse.parseErrorObject` and `Provider.parseErrorObject`.
681
-
682
- ## 0.6.0
683
-
684
- ### Minor Changes
685
-
686
- - [`94ec558`](https://github.com/wevm/ox/commit/94ec558c3f56d3254080be520a0d257e8b5d42c2) Thanks [@jxom](https://github.com/jxom)! - Added `BlockOverrides` & `StateOverrides` modules.
687
-
688
- - [`94ec558`](https://github.com/wevm/ox/commit/94ec558c3f56d3254080be520a0d257e8b5d42c2) Thanks [@jxom](https://github.com/jxom)! - Added `eth_simulateV1` to `eth_` RPC schema.
689
-
690
- ## 0.5.0
691
-
692
- ### Minor Changes
693
-
694
- - [`1406e22`](https://github.com/wevm/ox/commit/1406e224d0527732885fdb7737ed2f0dc41929ef) Thanks [@jxom](https://github.com/jxom)! - Added ERC-4337 utilities.
695
-
696
- ## 0.4.4
697
-
698
- ### Patch Changes
699
-
700
- - [#45](https://github.com/wevm/ox/pull/45) [`48b896f`](https://github.com/wevm/ox/commit/48b896f3c491bcf9e0d8460857b278ede74eaf9e) Thanks [@deodad](https://github.com/deodad)! - Ensured addresses are checksummed when creating SIWE messages
701
-
702
- ## 0.4.3
703
-
704
- ### Patch Changes
705
-
706
- - [`c09d165`](https://github.com/wevm/ox/commit/c09d1655a1fa65be33d0dfb86d14cfe0dad7bdc3) Thanks [@jxom](https://github.com/jxom)! - Added `checksumAddress` as an option to `AbiParameters.{encode|decode}`.
707
-
708
- ## 0.4.2
709
-
710
- ### Patch Changes
711
-
712
- - [#40](https://github.com/wevm/ox/pull/40) [`47e306d`](https://github.com/wevm/ox/commit/47e306d8ab95140eb7e2589c05351d1663a507ae) Thanks [@jxom](https://github.com/jxom)! - **ox/erc6492:** Added universal signature verification exports.
713
-
714
- ## 0.4.1
715
-
716
- ### Patch Changes
717
-
718
- - [#37](https://github.com/wevm/ox/pull/37) [`39604df`](https://github.com/wevm/ox/commit/39604df9f84b810322e12f767ef450c0c2ced308) Thanks [@jxom](https://github.com/jxom)! - Added `ox/erc6492` entrypoint.
719
-
720
- ## 0.4.0
721
-
722
- ### Minor Changes
723
-
724
- - [#35](https://github.com/wevm/ox/pull/35) [`4680b06`](https://github.com/wevm/ox/commit/4680b06d4715b1b62d903f45490d325506a1e959) Thanks [@gregfromstl](https://github.com/gregfromstl)! - Updated `Signature.toHex` to serialize the last byte as `v` instead of `yParity` for widened compatibility.
725
-
726
- ### Patch Changes
727
-
728
- - [`15f9863`](https://github.com/wevm/ox/commit/15f98630c46ec0c09998162a92a5e8bac709e32d) Thanks [@jxom](https://github.com/jxom)! - Added assertion for ABI-encoding integer ranges.
729
-
730
- - [`2e0d4af`](https://github.com/wevm/ox/commit/2e0d4af5c6e26c09a9b83971be0fc06415ee4976) Thanks [@jxom](https://github.com/jxom)! - Added support for block identifiers.
731
-
732
- ## 0.3.1
733
-
734
- ### Patch Changes
735
-
736
- - [`e4104cd`](https://github.com/wevm/ox/commit/e4104cdb217de1fa30480b40060eb0fb0f7ad8d5) Thanks [@jxom](https://github.com/jxom)! - Added `extraEntropy` option to `Secp256k1.sign` & `P256.sign`.
737
-
738
- ## 0.3.0
739
-
740
- ### Minor Changes
741
-
742
- - [`9ad0d2c`](https://github.com/wevm/ox/commit/9ad0d2c9777b5c6a8c1cd64ad8742f9c05706606) Thanks [@jxom](https://github.com/jxom)! - Added extra entropy to signature generation.
743
-
744
- ## 0.2.2
745
-
746
- ### Patch Changes
747
-
748
- - [`4f40358`](https://github.com/wevm/ox/commit/4f4035826313dce974b7c7fa64ba4ea20d1f7f61) Thanks [@jxom](https://github.com/jxom)! - Tweaked `RpcResponse` and `Provider` errors to have optional parameters.
749
-
750
- ## 0.2.1
751
-
752
- ### Patch Changes
753
-
754
- - [`6e4b635`](https://github.com/wevm/ox/commit/6e4b635ee720312be6631dee4f24fdd3c066f2eb) Thanks [@jxom](https://github.com/jxom)! - Derive EIP-712 Domain type if not provided in `TypedData.serialize`.
755
-
756
- ## 0.2.0
757
-
758
- ### Minor Changes
759
-
760
- - [`2f0fc9b`](https://github.com/wevm/ox/commit/2f0fc9b66ff70bf03a3ecf146ed1a62433f53eb8) Thanks [@jxom](https://github.com/jxom)! - **Breaking:** Removed `.parseError` property on functions. Use the `.ErrorType` property instead. [Example](https://oxlib.sh/error-handling#usage-with-neverthrow)
761
-
762
- ### Patch Changes
763
-
764
- - [`af01579`](https://github.com/wevm/ox/commit/af01579951b898ebd659cd6b64aaa56f7733c191) Thanks [@jxom](https://github.com/jxom)! - Assert that EIP-712 domains are valid.
765
-
766
- ## 0.1.8
767
-
768
- ### Patch Changes
769
-
770
- - [#25](https://github.com/wevm/ox/pull/25) [`5da9efb`](https://github.com/wevm/ox/commit/5da9efbfebfa738ee0f78927e90b3fab61cbb2e8) Thanks [@tmm](https://github.com/tmm)! - Shimmed `WebAuthnP256.createCredential` for 1Password Firefox Add-on.
771
-
772
- ## 0.1.7
773
-
774
- ### Patch Changes
775
-
776
- - [`33b5123`](https://github.com/wevm/ox/commit/33b51236908f17cb8644a47e222995e1800853db) Thanks [@tmm](https://github.com/tmm)! - Updated Provider errors.
777
-
778
- ## 0.1.6
779
-
780
- ### Patch Changes
781
-
782
- - [`4405c4b`](https://github.com/wevm/ox/commit/4405c4bd2bff3f9f222a90de7323cce77c94b5f3) Thanks [@jxom](https://github.com/jxom)! - Amended `accountsChanged` parameter to be `readonly`.
783
-
784
- - [#22](https://github.com/wevm/ox/pull/22) [`23f2d61`](https://github.com/wevm/ox/commit/23f2d61f817c5d33f0053cb154447f0b26244cc1) Thanks [@tmm](https://github.com/tmm)! - Added EIP 1193 errors.
785
-
786
- ## 0.1.5
787
-
788
- ### Patch Changes
789
-
790
- - [`644b96a`](https://github.com/wevm/ox/commit/644b96a169a118c6f0606eda5354785523ed099b) Thanks [@jxom](https://github.com/jxom)! - Added additional guard for `result` in `Provider.from`.
791
-
792
- ## 0.1.4
793
-
794
- ### Patch Changes
795
-
796
- - [`777fe42`](https://github.com/wevm/ox/commit/777fe4249c5225c676ff690fda58c5fcfb35d1f0) Thanks [@jxom](https://github.com/jxom)! - Tweaked `trimLeft` to remove all leading zeros.
797
-
798
- ## 0.1.3
799
-
800
- ### Patch Changes
801
-
802
- - [`868d431`](https://github.com/wevm/ox/commit/868d4319a8cda77345f85f9f2e88ca786f0c8cfe) Thanks [@jxom](https://github.com/jxom)! - Added handling for odd-length hex values.
803
-
804
- ## 0.1.2
805
-
806
- ### Patch Changes
807
-
808
- - [#17](https://github.com/wevm/ox/pull/17) [`f438faf`](https://github.com/wevm/ox/commit/f438fafbd396248283876eba220f4c661c47bfd2) Thanks [@jxom](https://github.com/jxom)! - Moved modules to `core/`.
809
-
810
- ## 0.1.1
811
-
812
- ### Patch Changes
813
-
814
- - [`b7de4f2`](https://github.com/wevm/ox/commit/b7de4f2180520fd7f2bf08955df6e676d75db93e) Thanks [@jxom](https://github.com/jxom)! - Fixed `RpcSchema` inference on `params`.
815
-
816
- ## 0.1.0
817
-
818
- ### Minor Changes
819
-
820
- - [`4297bcf`](https://github.com/wevm/ox/commit/4297bcf0acef7f1f208ba3770d679fefa0c2cb8d) Thanks [@jxom](https://github.com/jxom)! - Initial release.