ox 0.0.1 → 0.1.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 (756) hide show
  1. package/Abi/package.json +6 -0
  2. package/Abi.ts +163 -0
  3. package/AbiConstructor/package.json +6 -0
  4. package/AbiConstructor.ts +413 -0
  5. package/AbiError/package.json +6 -0
  6. package/AbiError.ts +719 -0
  7. package/AbiEvent/package.json +6 -0
  8. package/AbiEvent.ts +1284 -0
  9. package/AbiFunction/package.json +6 -0
  10. package/AbiFunction.ts +813 -0
  11. package/AbiItem/package.json +6 -0
  12. package/AbiItem.ts +779 -0
  13. package/AbiParameters/package.json +6 -0
  14. package/AbiParameters.ts +712 -0
  15. package/AccessList/package.json +6 -0
  16. package/AccessList.ts +124 -0
  17. package/AccountProof/package.json +6 -0
  18. package/AccountProof.ts +35 -0
  19. package/Address/package.json +6 -0
  20. package/Address.ts +359 -0
  21. package/AesGcm/package.json +6 -0
  22. package/AesGcm.ts +220 -0
  23. package/Authorization/package.json +6 -0
  24. package/Authorization.ts +639 -0
  25. package/Base58/package.json +6 -0
  26. package/Base58.ts +180 -0
  27. package/Base64/package.json +6 -0
  28. package/Base64.ts +333 -0
  29. package/Blobs/package.json +6 -0
  30. package/Blobs.ts +982 -0
  31. package/Block/package.json +6 -0
  32. package/Block.ts +317 -0
  33. package/Bloom/package.json +6 -0
  34. package/Bloom.ts +80 -0
  35. package/Bls/package.json +6 -0
  36. package/Bls.ts +496 -0
  37. package/BlsPoint/package.json +6 -0
  38. package/BlsPoint.ts +232 -0
  39. package/Bytes/package.json +6 -0
  40. package/Bytes.ts +963 -0
  41. package/CHANGELOG.md +7 -0
  42. package/Caches/package.json +6 -0
  43. package/Caches.ts +21 -0
  44. package/ContractAddress/package.json +6 -0
  45. package/ContractAddress.ts +181 -0
  46. package/Ens/package.json +6 -0
  47. package/Ens.ts +116 -0
  48. package/Errors/package.json +6 -0
  49. package/Errors.ts +95 -0
  50. package/Fee/package.json +6 -0
  51. package/Fee.ts +57 -0
  52. package/Filter/package.json +6 -0
  53. package/Filter.ts +144 -0
  54. package/Hash/package.json +6 -0
  55. package/Hash.ts +210 -0
  56. package/HdKey/package.json +6 -0
  57. package/HdKey.ts +175 -0
  58. package/Hex/package.json +6 -0
  59. package/Hex.ts +1040 -0
  60. package/Json/package.json +6 -0
  61. package/Json.ts +84 -0
  62. package/Kzg/package.json +6 -0
  63. package/Kzg.ts +51 -0
  64. package/LICENSE +21 -0
  65. package/Log/package.json +6 -0
  66. package/Log.ts +248 -0
  67. package/Mnemonic/package.json +6 -0
  68. package/Mnemonic.ts +249 -0
  69. package/P256/package.json +6 -0
  70. package/P256.ts +230 -0
  71. package/PersonalMessage/package.json +6 -0
  72. package/PersonalMessage.ts +70 -0
  73. package/Provider/package.json +6 -0
  74. package/Provider.ts +354 -0
  75. package/PublicKey/package.json +6 -0
  76. package/PublicKey.ts +545 -0
  77. package/README.md +75 -26
  78. package/Rlp/package.json +6 -0
  79. package/Rlp.ts +390 -0
  80. package/RpcRequest/package.json +6 -0
  81. package/RpcRequest.ts +192 -0
  82. package/RpcResponse/package.json +6 -0
  83. package/RpcResponse.ts +389 -0
  84. package/RpcSchema/package.json +6 -0
  85. package/RpcSchema.ts +273 -0
  86. package/RpcTransport/package.json +6 -0
  87. package/RpcTransport.ts +198 -0
  88. package/Secp256k1/package.json +6 -0
  89. package/Secp256k1.ts +304 -0
  90. package/Signature/package.json +6 -0
  91. package/Signature.ts +909 -0
  92. package/Siwe/package.json +6 -0
  93. package/Siwe.ts +516 -0
  94. package/Solidity/package.json +6 -0
  95. package/Solidity.ts +109 -0
  96. package/Transaction/package.json +6 -0
  97. package/Transaction.ts +429 -0
  98. package/TransactionEnvelope/package.json +6 -0
  99. package/TransactionEnvelope.ts +205 -0
  100. package/TransactionEnvelopeEip1559/package.json +6 -0
  101. package/TransactionEnvelopeEip1559.ts +656 -0
  102. package/TransactionEnvelopeEip2930/package.json +6 -0
  103. package/TransactionEnvelopeEip2930.ts +624 -0
  104. package/TransactionEnvelopeEip4844/package.json +6 -0
  105. package/TransactionEnvelopeEip4844.ts +764 -0
  106. package/TransactionEnvelopeEip7702/package.json +6 -0
  107. package/TransactionEnvelopeEip7702.ts +639 -0
  108. package/TransactionEnvelopeLegacy/package.json +6 -0
  109. package/TransactionEnvelopeLegacy.ts +674 -0
  110. package/TransactionReceipt/package.json +6 -0
  111. package/TransactionReceipt.ts +341 -0
  112. package/TransactionRequest/package.json +6 -0
  113. package/TransactionRequest.ts +151 -0
  114. package/TypedData/package.json +6 -0
  115. package/TypedData.ts +931 -0
  116. package/ValidatorData/package.json +6 -0
  117. package/ValidatorData.ts +87 -0
  118. package/Value/package.json +6 -0
  119. package/Value.ts +242 -0
  120. package/WebAuthnP256/package.json +6 -0
  121. package/WebAuthnP256.ts +803 -0
  122. package/WebCryptoP256/package.json +6 -0
  123. package/WebCryptoP256.ts +190 -0
  124. package/Withdrawal/package.json +6 -0
  125. package/Withdrawal.ts +95 -0
  126. package/_cjs/Abi.js +17 -0
  127. package/_cjs/Abi.js.map +1 -0
  128. package/_cjs/AbiConstructor.js +42 -0
  129. package/_cjs/AbiConstructor.js.map +1 -0
  130. package/_cjs/AbiError.js +98 -0
  131. package/_cjs/AbiError.js.map +1 -0
  132. package/_cjs/AbiEvent.js +338 -0
  133. package/_cjs/AbiEvent.js.map +1 -0
  134. package/_cjs/AbiFunction.js +85 -0
  135. package/_cjs/AbiFunction.js.map +1 -0
  136. package/_cjs/AbiItem.js +180 -0
  137. package/_cjs/AbiItem.js.map +1 -0
  138. package/_cjs/AbiParameters.js +229 -0
  139. package/_cjs/AbiParameters.js.map +1 -0
  140. package/_cjs/AccessList.js +51 -0
  141. package/_cjs/AccessList.js.map +1 -0
  142. package/_cjs/AccountProof.js +3 -0
  143. package/_cjs/AccountProof.js.map +1 -0
  144. package/_cjs/Address.js +121 -0
  145. package/_cjs/Address.js.map +1 -0
  146. package/_cjs/AesGcm.js +55 -0
  147. package/_cjs/AesGcm.js.map +1 -0
  148. package/_cjs/Authorization.js +99 -0
  149. package/_cjs/Authorization.js.map +1 -0
  150. package/_cjs/Base58.js +52 -0
  151. package/_cjs/Base58.js.map +1 -0
  152. package/_cjs/Base64.js +76 -0
  153. package/_cjs/Base64.js.map +1 -0
  154. package/_cjs/Blobs.js +255 -0
  155. package/_cjs/Blobs.js.map +1 -0
  156. package/_cjs/Block.js +87 -0
  157. package/_cjs/Block.js.map +1 -0
  158. package/_cjs/Bloom.js +23 -0
  159. package/_cjs/Bloom.js.map +1 -0
  160. package/_cjs/Bls.js +79 -0
  161. package/_cjs/Bls.js.map +1 -0
  162. package/_cjs/BlsPoint.js +32 -0
  163. package/_cjs/BlsPoint.js.map +1 -0
  164. package/_cjs/Bytes.js +279 -0
  165. package/_cjs/Bytes.js.map +1 -0
  166. package/_cjs/Caches.js +14 -0
  167. package/_cjs/Caches.js.map +1 -0
  168. package/_cjs/ContractAddress.js +39 -0
  169. package/_cjs/ContractAddress.js.map +1 -0
  170. package/_cjs/Ens.js +37 -0
  171. package/_cjs/Ens.js.map +1 -0
  172. package/_cjs/Errors.js +99 -0
  173. package/_cjs/Errors.js.map +1 -0
  174. package/_cjs/Fee.js +3 -0
  175. package/_cjs/Fee.js.map +1 -0
  176. package/_cjs/Filter.js +43 -0
  177. package/_cjs/Filter.js.map +1 -0
  178. package/_cjs/Hash.js +40 -0
  179. package/_cjs/Hash.js.map +1 -0
  180. package/_cjs/HdKey.js +30 -0
  181. package/_cjs/HdKey.js.map +1 -0
  182. package/_cjs/Hex.js +324 -0
  183. package/_cjs/Hex.js.map +1 -0
  184. package/_cjs/Json.js +25 -0
  185. package/_cjs/Json.js.map +1 -0
  186. package/_cjs/Kzg.js +14 -0
  187. package/_cjs/Kzg.js.map +1 -0
  188. package/_cjs/Log.js +35 -0
  189. package/_cjs/Log.js.map +1 -0
  190. package/_cjs/Mnemonic.js +56 -0
  191. package/_cjs/Mnemonic.js.map +1 -0
  192. package/_cjs/P256.js +52 -0
  193. package/_cjs/P256.js.map +1 -0
  194. package/_cjs/PersonalMessage.js +16 -0
  195. package/_cjs/PersonalMessage.js.map +1 -0
  196. package/_cjs/Provider.js +90 -0
  197. package/_cjs/Provider.js.map +1 -0
  198. package/_cjs/PublicKey.js +192 -0
  199. package/_cjs/PublicKey.js.map +1 -0
  200. package/_cjs/Rlp.js +179 -0
  201. package/_cjs/Rlp.js.map +1 -0
  202. package/_cjs/RpcRequest.js +27 -0
  203. package/_cjs/RpcRequest.js.map +1 -0
  204. package/_cjs/RpcResponse.js +368 -0
  205. package/_cjs/RpcResponse.js.map +1 -0
  206. package/_cjs/RpcSchema.js +7 -0
  207. package/_cjs/RpcSchema.js.map +1 -0
  208. package/_cjs/RpcTransport.js +95 -0
  209. package/_cjs/RpcTransport.js.map +1 -0
  210. package/_cjs/Secp256k1.js +57 -0
  211. package/_cjs/Secp256k1.js.map +1 -0
  212. package/_cjs/Signature.js +305 -0
  213. package/_cjs/Signature.js.map +1 -0
  214. package/_cjs/Siwe.js +231 -0
  215. package/_cjs/Siwe.js.map +1 -0
  216. package/_cjs/Solidity.js +104 -0
  217. package/_cjs/Solidity.js.map +1 -0
  218. package/_cjs/Transaction.js +106 -0
  219. package/_cjs/Transaction.js.map +1 -0
  220. package/_cjs/TransactionEnvelope.js +80 -0
  221. package/_cjs/TransactionEnvelope.js.map +1 -0
  222. package/_cjs/TransactionEnvelopeEip1559.js +182 -0
  223. package/_cjs/TransactionEnvelopeEip1559.js.map +1 -0
  224. package/_cjs/TransactionEnvelopeEip2930.js +166 -0
  225. package/_cjs/TransactionEnvelopeEip2930.js.map +1 -0
  226. package/_cjs/TransactionEnvelopeEip4844.js +224 -0
  227. package/_cjs/TransactionEnvelopeEip4844.js.map +1 -0
  228. package/_cjs/TransactionEnvelopeEip7702.js +156 -0
  229. package/_cjs/TransactionEnvelopeEip7702.js.map +1 -0
  230. package/_cjs/TransactionEnvelopeLegacy.js +221 -0
  231. package/_cjs/TransactionEnvelopeLegacy.js.map +1 -0
  232. package/_cjs/TransactionReceipt.js +76 -0
  233. package/_cjs/TransactionReceipt.js.map +1 -0
  234. package/_cjs/TransactionRequest.js +51 -0
  235. package/_cjs/TransactionRequest.js.map +1 -0
  236. package/_cjs/TypedData.js +318 -0
  237. package/_cjs/TypedData.js.map +1 -0
  238. package/_cjs/ValidatorData.js +16 -0
  239. package/_cjs/ValidatorData.js.map +1 -0
  240. package/_cjs/Value.js +96 -0
  241. package/_cjs/Value.js.map +1 -0
  242. package/_cjs/WebAuthnP256.js +245 -0
  243. package/_cjs/WebAuthnP256.js.map +1 -0
  244. package/_cjs/WebCryptoP256.js +46 -0
  245. package/_cjs/WebCryptoP256.js.map +1 -0
  246. package/_cjs/Withdrawal.js +24 -0
  247. package/_cjs/Withdrawal.js.map +1 -0
  248. package/_cjs/index.js +66 -0
  249. package/_cjs/index.js.map +1 -0
  250. package/_cjs/internal/abi.js +11 -0
  251. package/_cjs/internal/abi.js.map +1 -0
  252. package/_cjs/internal/abiConstructor.js +3 -0
  253. package/_cjs/internal/abiConstructor.js.map +1 -0
  254. package/_cjs/internal/abiError.js +3 -0
  255. package/_cjs/internal/abiError.js.map +1 -0
  256. package/_cjs/internal/abiEvent.js +3 -0
  257. package/_cjs/internal/abiEvent.js.map +1 -0
  258. package/_cjs/internal/abiFunction.js +3 -0
  259. package/_cjs/internal/abiFunction.js.map +1 -0
  260. package/_cjs/internal/abiItem.js +110 -0
  261. package/_cjs/internal/abiItem.js.map +1 -0
  262. package/_cjs/internal/abiParameters.js +376 -0
  263. package/_cjs/internal/abiParameters.js.map +1 -0
  264. package/_cjs/internal/base58.js +89 -0
  265. package/_cjs/internal/base58.js.map +1 -0
  266. package/_cjs/internal/bytes.js +88 -0
  267. package/_cjs/internal/bytes.js.map +1 -0
  268. package/_cjs/internal/cursor.js +210 -0
  269. package/_cjs/internal/cursor.js.map +1 -0
  270. package/_cjs/internal/ens.js +43 -0
  271. package/_cjs/internal/ens.js.map +1 -0
  272. package/_cjs/internal/errors.js +28 -0
  273. package/_cjs/internal/errors.js.map +1 -0
  274. package/_cjs/internal/hdKey.js +19 -0
  275. package/_cjs/internal/hdKey.js.map +1 -0
  276. package/_cjs/internal/hex.js +66 -0
  277. package/_cjs/internal/hex.js.map +1 -0
  278. package/_cjs/internal/lru.js +34 -0
  279. package/_cjs/internal/lru.js.map +1 -0
  280. package/_cjs/internal/mnemonic/wordlists.js +24 -0
  281. package/_cjs/internal/mnemonic/wordlists.js.map +1 -0
  282. package/_cjs/internal/promise.js +49 -0
  283. package/_cjs/internal/promise.js.map +1 -0
  284. package/_cjs/internal/register.js +3 -0
  285. package/_cjs/internal/register.js.map +1 -0
  286. package/_cjs/internal/rpcSchema.js +3 -0
  287. package/_cjs/internal/rpcSchema.js.map +1 -0
  288. package/_cjs/internal/rpcSchemas/eth.js +3 -0
  289. package/_cjs/internal/rpcSchemas/eth.js.map +1 -0
  290. package/_cjs/internal/rpcSchemas/wallet.js +3 -0
  291. package/_cjs/internal/rpcSchemas/wallet.js.map +1 -0
  292. package/_cjs/internal/rpcTransport.js +19 -0
  293. package/_cjs/internal/rpcTransport.js.map +1 -0
  294. package/_cjs/internal/types.js +3 -0
  295. package/_cjs/internal/types.js.map +1 -0
  296. package/_cjs/internal/uid.js +17 -0
  297. package/_cjs/internal/uid.js.map +1 -0
  298. package/_cjs/internal/webauthn.js +28 -0
  299. package/_cjs/internal/webauthn.js.map +1 -0
  300. package/_cjs/package.json +1 -0
  301. package/_cjs/trusted-setups/Paths.js +6 -0
  302. package/_cjs/trusted-setups/Paths.js.map +1 -0
  303. package/_cjs/trusted-setups/index.js +5 -0
  304. package/_cjs/trusted-setups/index.js.map +1 -0
  305. package/_cjs/trusted-setups/internal/paths.js +11 -0
  306. package/_cjs/trusted-setups/internal/paths.js.map +1 -0
  307. package/_cjs/version.js +5 -0
  308. package/_cjs/version.js.map +1 -0
  309. package/_cjs/window/index.js +3 -0
  310. package/_cjs/window/index.js.map +1 -0
  311. package/_esm/Abi.js +19 -0
  312. package/_esm/Abi.js.map +1 -0
  313. package/_esm/AbiConstructor.js +102 -0
  314. package/_esm/AbiConstructor.js.map +1 -0
  315. package/_esm/AbiError.js +364 -0
  316. package/_esm/AbiError.js.map +1 -0
  317. package/_esm/AbiEvent.js +1038 -0
  318. package/_esm/AbiEvent.js.map +1 -0
  319. package/_esm/AbiFunction.js +549 -0
  320. package/_esm/AbiFunction.js.map +1 -0
  321. package/_esm/AbiItem.js +574 -0
  322. package/_esm/AbiItem.js.map +1 -0
  323. package/_esm/AbiParameters.js +543 -0
  324. package/_esm/AbiParameters.js.map +1 -0
  325. package/_esm/AccessList.js +105 -0
  326. package/_esm/AccessList.js.map +1 -0
  327. package/_esm/AccountProof.js +2 -0
  328. package/_esm/AccountProof.js.map +1 -0
  329. package/_esm/Address.js +268 -0
  330. package/_esm/Address.js.map +1 -0
  331. package/_esm/AesGcm.js +124 -0
  332. package/_esm/AesGcm.js.map +1 -0
  333. package/_esm/Authorization.js +441 -0
  334. package/_esm/Authorization.js.map +1 -0
  335. package/_esm/Base58.js +142 -0
  336. package/_esm/Base58.js.map +1 -0
  337. package/_esm/Base64.js +236 -0
  338. package/_esm/Base64.js.map +1 -0
  339. package/_esm/Blobs.js +624 -0
  340. package/_esm/Blobs.js.map +1 -0
  341. package/_esm/Block.js +177 -0
  342. package/_esm/Block.js.map +1 -0
  343. package/_esm/Bloom.js +57 -0
  344. package/_esm/Bloom.js.map +1 -0
  345. package/_esm/Bls.js +141 -0
  346. package/_esm/Bls.js.map +1 -0
  347. package/_esm/BlsPoint.js +59 -0
  348. package/_esm/BlsPoint.js.map +1 -0
  349. package/_esm/Bytes.js +719 -0
  350. package/_esm/Bytes.js.map +1 -0
  351. package/_esm/Caches.js +19 -0
  352. package/_esm/Caches.js.map +1 -0
  353. package/_esm/ContractAddress.js +110 -0
  354. package/_esm/ContractAddress.js.map +1 -0
  355. package/_esm/Ens.js +84 -0
  356. package/_esm/Ens.js.map +1 -0
  357. package/_esm/Errors.js +105 -0
  358. package/_esm/Errors.js.map +1 -0
  359. package/_esm/Fee.js +2 -0
  360. package/_esm/Fee.js.map +1 -0
  361. package/_esm/Filter.js +100 -0
  362. package/_esm/Filter.js.map +1 -0
  363. package/_esm/Hash.js +126 -0
  364. package/_esm/Hash.js.map +1 -0
  365. package/_esm/HdKey.js +107 -0
  366. package/_esm/HdKey.js.map +1 -0
  367. package/_esm/Hex.js +763 -0
  368. package/_esm/Hex.js.map +1 -0
  369. package/_esm/Json.js +62 -0
  370. package/_esm/Json.js.map +1 -0
  371. package/_esm/Kzg.js +30 -0
  372. package/_esm/Kzg.js.map +1 -0
  373. package/_esm/Log.js +181 -0
  374. package/_esm/Log.js.map +1 -0
  375. package/_esm/Mnemonic.js +154 -0
  376. package/_esm/Mnemonic.js.map +1 -0
  377. package/_esm/P256.js +131 -0
  378. package/_esm/P256.js.map +1 -0
  379. package/_esm/PersonalMessage.js +46 -0
  380. package/_esm/PersonalMessage.js.map +1 -0
  381. package/_esm/Provider.js +122 -0
  382. package/_esm/Provider.js.map +1 -0
  383. package/_esm/PublicKey.js +395 -0
  384. package/_esm/PublicKey.js.map +1 -0
  385. package/_esm/Rlp.js +267 -0
  386. package/_esm/Rlp.js.map +1 -0
  387. package/_esm/RpcRequest.js +131 -0
  388. package/_esm/RpcRequest.js.map +1 -0
  389. package/_esm/RpcResponse.js +457 -0
  390. package/_esm/RpcResponse.js.map +1 -0
  391. package/_esm/RpcSchema.js +46 -0
  392. package/_esm/RpcSchema.js.map +1 -0
  393. package/_esm/RpcTransport.js +110 -0
  394. package/_esm/RpcTransport.js.map +1 -0
  395. package/_esm/Secp256k1.js +173 -0
  396. package/_esm/Secp256k1.js.map +1 -0
  397. package/_esm/Signature.js +696 -0
  398. package/_esm/Signature.js.map +1 -0
  399. package/_esm/Siwe.js +374 -0
  400. package/_esm/Siwe.js.map +1 -0
  401. package/_esm/Solidity.js +104 -0
  402. package/_esm/Solidity.js.map +1 -0
  403. package/_esm/Transaction.js +176 -0
  404. package/_esm/Transaction.js.map +1 -0
  405. package/_esm/TransactionEnvelope.js +139 -0
  406. package/_esm/TransactionEnvelope.js.map +1 -0
  407. package/_esm/TransactionEnvelopeEip1559.js +455 -0
  408. package/_esm/TransactionEnvelopeEip1559.js.map +1 -0
  409. package/_esm/TransactionEnvelopeEip2930.js +439 -0
  410. package/_esm/TransactionEnvelopeEip2930.js.map +1 -0
  411. package/_esm/TransactionEnvelopeEip4844.js +542 -0
  412. package/_esm/TransactionEnvelopeEip4844.js.map +1 -0
  413. package/_esm/TransactionEnvelopeEip7702.js +442 -0
  414. package/_esm/TransactionEnvelopeEip7702.js.map +1 -0
  415. package/_esm/TransactionEnvelopeLegacy.js +495 -0
  416. package/_esm/TransactionEnvelopeLegacy.js.map +1 -0
  417. package/_esm/TransactionReceipt.js +229 -0
  418. package/_esm/TransactionReceipt.js.map +1 -0
  419. package/_esm/TransactionRequest.js +89 -0
  420. package/_esm/TransactionRequest.js.map +1 -0
  421. package/_esm/TypedData.js +635 -0
  422. package/_esm/TypedData.js.map +1 -0
  423. package/_esm/ValidatorData.js +52 -0
  424. package/_esm/ValidatorData.js.map +1 -0
  425. package/_esm/Value.js +196 -0
  426. package/_esm/Value.js.map +1 -0
  427. package/_esm/WebAuthnP256.js +471 -0
  428. package/_esm/WebAuthnP256.js.map +1 -0
  429. package/_esm/WebCryptoP256.js +116 -0
  430. package/_esm/WebCryptoP256.js.map +1 -0
  431. package/_esm/Withdrawal.js +72 -0
  432. package/_esm/Withdrawal.js.map +1 -0
  433. package/_esm/index.js +3366 -0
  434. package/_esm/index.js.map +1 -0
  435. package/_esm/internal/abi.js +9 -0
  436. package/_esm/internal/abi.js.map +1 -0
  437. package/_esm/internal/abiConstructor.js +2 -0
  438. package/_esm/internal/abiConstructor.js.map +1 -0
  439. package/_esm/internal/abiError.js +2 -0
  440. package/_esm/internal/abiError.js.map +1 -0
  441. package/_esm/internal/abiEvent.js +2 -0
  442. package/_esm/internal/abiEvent.js.map +1 -0
  443. package/_esm/internal/abiFunction.js +2 -0
  444. package/_esm/internal/abiFunction.js.map +1 -0
  445. package/_esm/internal/abiItem.js +122 -0
  446. package/_esm/internal/abiItem.js.map +1 -0
  447. package/_esm/internal/abiParameters.js +419 -0
  448. package/_esm/internal/abiParameters.js.map +1 -0
  449. package/_esm/internal/base58.js +91 -0
  450. package/_esm/internal/base58.js.map +1 -0
  451. package/_esm/internal/bytes.js +86 -0
  452. package/_esm/internal/bytes.js.map +1 -0
  453. package/_esm/internal/cursor.js +207 -0
  454. package/_esm/internal/cursor.js.map +1 -0
  455. package/_esm/internal/ens.js +47 -0
  456. package/_esm/internal/ens.js.map +1 -0
  457. package/_esm/internal/errors.js +26 -0
  458. package/_esm/internal/errors.js.map +1 -0
  459. package/_esm/internal/hdKey.js +17 -0
  460. package/_esm/internal/hdKey.js.map +1 -0
  461. package/_esm/internal/hex.js +64 -0
  462. package/_esm/internal/hex.js.map +1 -0
  463. package/_esm/internal/lru.js +36 -0
  464. package/_esm/internal/lru.js.map +1 -0
  465. package/_esm/internal/mnemonic/wordlists.js +11 -0
  466. package/_esm/internal/mnemonic/wordlists.js.map +1 -0
  467. package/_esm/internal/promise.js +52 -0
  468. package/_esm/internal/promise.js.map +1 -0
  469. package/_esm/internal/register.js +2 -0
  470. package/_esm/internal/register.js.map +1 -0
  471. package/_esm/internal/rpcSchema.js +2 -0
  472. package/_esm/internal/rpcSchema.js.map +1 -0
  473. package/_esm/internal/rpcSchemas/eth.js +2 -0
  474. package/_esm/internal/rpcSchemas/eth.js.map +1 -0
  475. package/_esm/internal/rpcSchemas/wallet.js +2 -0
  476. package/_esm/internal/rpcSchemas/wallet.js.map +1 -0
  477. package/_esm/internal/rpcTransport.js +20 -0
  478. package/_esm/internal/rpcTransport.js.map +1 -0
  479. package/_esm/internal/types.js +2 -0
  480. package/_esm/internal/types.js.map +1 -0
  481. package/_esm/internal/uid.js +15 -0
  482. package/_esm/internal/uid.js.map +1 -0
  483. package/_esm/internal/webauthn.js +35 -0
  484. package/_esm/internal/webauthn.js.map +1 -0
  485. package/_esm/package.json +1 -0
  486. package/_esm/trusted-setups/Paths.js +3 -0
  487. package/_esm/trusted-setups/Paths.js.map +1 -0
  488. package/_esm/trusted-setups/index.js +2 -0
  489. package/_esm/trusted-setups/index.js.map +1 -0
  490. package/_esm/trusted-setups/internal/paths.js +12 -0
  491. package/_esm/trusted-setups/internal/paths.js.map +1 -0
  492. package/_esm/version.js +3 -0
  493. package/_esm/version.js.map +1 -0
  494. package/_esm/window/index.js +2 -0
  495. package/_esm/window/index.js.map +1 -0
  496. package/_test/Abi.test-d/package.json +6 -0
  497. package/_test/AbiConstructor.test-d/package.json +6 -0
  498. package/_test/AbiError.test-d/package.json +6 -0
  499. package/_test/AbiEvent.snap-d/package.json +6 -0
  500. package/_test/AbiEvent.snap-d.ts +329 -0
  501. package/_test/AbiFunction.snap-d/package.json +6 -0
  502. package/_test/AbiFunction.snap-d.ts +262 -0
  503. package/_test/AbiItem.snap-d/package.json +6 -0
  504. package/_test/AbiItem.snap-d.ts +131 -0
  505. package/_test/AbiParameters.bench/package.json +6 -0
  506. package/_test/AbiParameters.snap-d/package.json +6 -0
  507. package/_test/AbiParameters.snap-d.ts +66 -0
  508. package/_test/Address.bench/package.json +6 -0
  509. package/_test/Base58.bench/package.json +6 -0
  510. package/_test/Hex.bench/package.json +6 -0
  511. package/_test/Hex.test-d/package.json +6 -0
  512. package/_test/PublicKey.test-d/package.json +6 -0
  513. package/_test/Rlp.bench/package.json +6 -0
  514. package/_test/Rlp.test-d/package.json +6 -0
  515. package/_test/Signature.snap-d/package.json +6 -0
  516. package/_test/Signature.snap-d.ts +96 -0
  517. package/_test/TransactionEnvelopeEip1559.test-d/package.json +6 -0
  518. package/_test/TransactionEnvelopeEip2930.test-d/package.json +6 -0
  519. package/_test/TransactionEnvelopeEip4844.test-d/package.json +6 -0
  520. package/_test/TransactionEnvelopeEip7702.test-d/package.json +6 -0
  521. package/_test/TransactionEnvelopeLegacy.test-d/package.json +6 -0
  522. package/_test/TypedData.test-d/package.json +6 -0
  523. package/_types/Abi.d.ts +137 -0
  524. package/_types/Abi.d.ts.map +1 -0
  525. package/_types/AbiConstructor.d.ts +305 -0
  526. package/_types/AbiConstructor.d.ts.map +1 -0
  527. package/_types/AbiError.d.ts +522 -0
  528. package/_types/AbiError.d.ts.map +1 -0
  529. package/_types/AbiEvent.d.ts +892 -0
  530. package/_types/AbiEvent.d.ts.map +1 -0
  531. package/_types/AbiFunction.d.ts +602 -0
  532. package/_types/AbiFunction.d.ts.map +1 -0
  533. package/_types/AbiItem.d.ts +544 -0
  534. package/_types/AbiItem.d.ts.map +1 -0
  535. package/_types/AbiParameters.d.ts +466 -0
  536. package/_types/AbiParameters.d.ts.map +1 -0
  537. package/_types/AccessList.d.ts +83 -0
  538. package/_types/AccessList.d.ts.map +1 -0
  539. package/_types/AccountProof.d.ts +32 -0
  540. package/_types/AccountProof.d.ts.map +1 -0
  541. package/_types/Address.d.ts +244 -0
  542. package/_types/Address.d.ts.map +1 -0
  543. package/_types/AesGcm.d.ts +116 -0
  544. package/_types/AesGcm.d.ts.map +1 -0
  545. package/_types/Authorization.d.ts +461 -0
  546. package/_types/Authorization.d.ts.map +1 -0
  547. package/_types/Base58.d.ts +131 -0
  548. package/_types/Base58.d.ts.map +1 -0
  549. package/_types/Base64.d.ts +244 -0
  550. package/_types/Base64.d.ts.map +1 -0
  551. package/_types/Blobs.d.ts +556 -0
  552. package/_types/Blobs.d.ts.map +1 -0
  553. package/_types/Block.d.ts +190 -0
  554. package/_types/Block.d.ts.map +1 -0
  555. package/_types/Bloom.d.ts +54 -0
  556. package/_types/Bloom.d.ts.map +1 -0
  557. package/_types/Bls.d.ts +365 -0
  558. package/_types/Bls.d.ts.map +1 -0
  559. package/_types/BlsPoint.d.ts +187 -0
  560. package/_types/BlsPoint.d.ts.map +1 -0
  561. package/_types/Bytes.d.ts +674 -0
  562. package/_types/Bytes.d.ts.map +1 -0
  563. package/_types/Caches.d.ts +13 -0
  564. package/_types/Caches.d.ts.map +1 -0
  565. package/_types/ContractAddress.d.ts +115 -0
  566. package/_types/ContractAddress.d.ts.map +1 -0
  567. package/_types/Ens.d.ts +72 -0
  568. package/_types/Ens.d.ts.map +1 -0
  569. package/_types/Errors.d.ts +33 -0
  570. package/_types/Errors.d.ts.map +1 -0
  571. package/_types/Fee.d.ts +41 -0
  572. package/_types/Fee.d.ts.map +1 -0
  573. package/_types/Filter.d.ts +100 -0
  574. package/_types/Filter.d.ts.map +1 -0
  575. package/_types/Hash.d.ts +135 -0
  576. package/_types/Hash.d.ts.map +1 -0
  577. package/_types/HdKey.d.ts +146 -0
  578. package/_types/HdKey.d.ts.map +1 -0
  579. package/_types/Hex.d.ts +711 -0
  580. package/_types/Hex.d.ts.map +1 -0
  581. package/_types/Json.d.ts +53 -0
  582. package/_types/Json.d.ts.map +1 -0
  583. package/_types/Kzg.d.ts +42 -0
  584. package/_types/Kzg.d.ts.map +1 -0
  585. package/_types/Log.d.ts +194 -0
  586. package/_types/Log.d.ts.map +1 -0
  587. package/_types/Mnemonic.d.ts +176 -0
  588. package/_types/Mnemonic.d.ts.map +1 -0
  589. package/_types/P256.d.ts +207 -0
  590. package/_types/P256.d.ts.map +1 -0
  591. package/_types/PersonalMessage.d.ts +49 -0
  592. package/_types/PersonalMessage.d.ts.map +1 -0
  593. package/_types/Provider.d.ts +268 -0
  594. package/_types/Provider.d.ts.map +1 -0
  595. package/_types/PublicKey.d.ts +327 -0
  596. package/_types/PublicKey.d.ts.map +1 -0
  597. package/_types/Rlp.d.ts +153 -0
  598. package/_types/Rlp.d.ts.map +1 -0
  599. package/_types/RpcRequest.d.ts +144 -0
  600. package/_types/RpcRequest.d.ts.map +1 -0
  601. package/_types/RpcResponse.d.ts +266 -0
  602. package/_types/RpcResponse.d.ts.map +1 -0
  603. package/_types/RpcSchema.d.ts +248 -0
  604. package/_types/RpcSchema.d.ts.map +1 -0
  605. package/_types/RpcTransport.d.ts +65 -0
  606. package/_types/RpcTransport.d.ts.map +1 -0
  607. package/_types/Secp256k1.d.ts +277 -0
  608. package/_types/Secp256k1.d.ts.map +1 -0
  609. package/_types/Signature.d.ts +601 -0
  610. package/_types/Signature.d.ts.map +1 -0
  611. package/_types/Siwe.d.ts +249 -0
  612. package/_types/Siwe.d.ts.map +1 -0
  613. package/_types/Solidity.d.ts +100 -0
  614. package/_types/Solidity.d.ts.map +1 -0
  615. package/_types/Transaction.d.ts +235 -0
  616. package/_types/Transaction.d.ts.map +1 -0
  617. package/_types/TransactionEnvelope.d.ts +141 -0
  618. package/_types/TransactionEnvelope.d.ts.map +1 -0
  619. package/_types/TransactionEnvelopeEip1559.d.ts +367 -0
  620. package/_types/TransactionEnvelopeEip1559.d.ts.map +1 -0
  621. package/_types/TransactionEnvelopeEip2930.d.ts +364 -0
  622. package/_types/TransactionEnvelopeEip2930.d.ts.map +1 -0
  623. package/_types/TransactionEnvelopeEip4844.d.ts +419 -0
  624. package/_types/TransactionEnvelopeEip4844.d.ts.map +1 -0
  625. package/_types/TransactionEnvelopeEip7702.d.ts +377 -0
  626. package/_types/TransactionEnvelopeEip7702.d.ts.map +1 -0
  627. package/_types/TransactionEnvelopeLegacy.d.ts +358 -0
  628. package/_types/TransactionEnvelopeLegacy.d.ts.map +1 -0
  629. package/_types/TransactionReceipt.d.ts +271 -0
  630. package/_types/TransactionReceipt.d.ts.map +1 -0
  631. package/_types/TransactionRequest.d.ts +92 -0
  632. package/_types/TransactionRequest.d.ts.map +1 -0
  633. package/_types/TypedData.d.ts +496 -0
  634. package/_types/TypedData.d.ts.map +1 -0
  635. package/_types/ValidatorData.d.ts +64 -0
  636. package/_types/ValidatorData.d.ts.map +1 -0
  637. package/_types/Value.d.ts +159 -0
  638. package/_types/Value.d.ts.map +1 -0
  639. package/_types/WebAuthnP256.d.ts +445 -0
  640. package/_types/WebAuthnP256.d.ts.map +1 -0
  641. package/_types/WebCryptoP256.d.ts +119 -0
  642. package/_types/WebCryptoP256.d.ts.map +1 -0
  643. package/_types/Withdrawal.d.ts +74 -0
  644. package/_types/Withdrawal.d.ts.map +1 -0
  645. package/_types/index.d.ts +3367 -0
  646. package/_types/index.d.ts.map +1 -0
  647. package/_types/internal/abi.d.ts +4 -0
  648. package/_types/internal/abi.d.ts.map +1 -0
  649. package/_types/internal/abiConstructor.d.ts +11 -0
  650. package/_types/internal/abiConstructor.d.ts.map +1 -0
  651. package/_types/internal/abiError.d.ts +11 -0
  652. package/_types/internal/abiError.d.ts.map +1 -0
  653. package/_types/internal/abiEvent.d.ts +60 -0
  654. package/_types/internal/abiEvent.d.ts.map +1 -0
  655. package/_types/internal/abiFunction.d.ts +11 -0
  656. package/_types/internal/abiFunction.d.ts.map +1 -0
  657. package/_types/internal/abiItem.d.ts +100 -0
  658. package/_types/internal/abiItem.d.ts.map +1 -0
  659. package/_types/internal/abiParameters.d.ts +169 -0
  660. package/_types/internal/abiParameters.d.ts.map +1 -0
  661. package/_types/internal/base58.d.ts +17 -0
  662. package/_types/internal/base58.d.ts.map +1 -0
  663. package/_types/internal/bytes.d.ts +52 -0
  664. package/_types/internal/bytes.d.ts.map +1 -0
  665. package/_types/internal/cursor.d.ts +70 -0
  666. package/_types/internal/cursor.d.ts.map +1 -0
  667. package/_types/internal/ens.d.ts +23 -0
  668. package/_types/internal/ens.d.ts.map +1 -0
  669. package/_types/internal/errors.d.ts +7 -0
  670. package/_types/internal/errors.d.ts.map +1 -0
  671. package/_types/internal/hdKey.d.ts +10 -0
  672. package/_types/internal/hdKey.d.ts.map +1 -0
  673. package/_types/internal/hex.d.ts +39 -0
  674. package/_types/internal/hex.d.ts.map +1 -0
  675. package/_types/internal/lru.d.ts +13 -0
  676. package/_types/internal/lru.d.ts.map +1 -0
  677. package/_types/internal/mnemonic/wordlists.d.ts +11 -0
  678. package/_types/internal/mnemonic/wordlists.d.ts.map +1 -0
  679. package/_types/internal/promise.d.ts +27 -0
  680. package/_types/internal/promise.d.ts.map +1 -0
  681. package/_types/internal/register.d.ts +13 -0
  682. package/_types/internal/register.d.ts.map +1 -0
  683. package/_types/internal/rpcSchema.d.ts +12 -0
  684. package/_types/internal/rpcSchema.d.ts.map +1 -0
  685. package/_types/internal/rpcSchemas/eth.d.ts +718 -0
  686. package/_types/internal/rpcSchemas/eth.d.ts.map +1 -0
  687. package/_types/internal/rpcSchemas/wallet.d.ts +416 -0
  688. package/_types/internal/rpcSchemas/wallet.d.ts.map +1 -0
  689. package/_types/internal/rpcTransport.d.ts +38 -0
  690. package/_types/internal/rpcTransport.d.ts.map +1 -0
  691. package/_types/internal/types.d.ts +284 -0
  692. package/_types/internal/types.d.ts.map +1 -0
  693. package/_types/internal/uid.d.ts +3 -0
  694. package/_types/internal/uid.d.ts.map +1 -0
  695. package/_types/internal/webauthn.d.ts +127 -0
  696. package/_types/internal/webauthn.d.ts.map +1 -0
  697. package/_types/trusted-setups/Paths.d.ts +2 -0
  698. package/_types/trusted-setups/Paths.d.ts.map +1 -0
  699. package/_types/trusted-setups/index.d.ts +2 -0
  700. package/_types/trusted-setups/index.d.ts.map +1 -0
  701. package/_types/trusted-setups/internal/paths.d.ts +3 -0
  702. package/_types/trusted-setups/internal/paths.d.ts.map +1 -0
  703. package/_types/version.d.ts +3 -0
  704. package/_types/version.d.ts.map +1 -0
  705. package/_types/window/index.d.ts +7 -0
  706. package/_types/window/index.d.ts.map +1 -0
  707. package/index.ts +3427 -0
  708. package/internal/abi.ts +11 -0
  709. package/internal/abiConstructor.ts +32 -0
  710. package/internal/abiError.ts +30 -0
  711. package/internal/abiEvent.ts +154 -0
  712. package/internal/abiFunction.ts +32 -0
  713. package/internal/abiItem.ts +593 -0
  714. package/internal/abiParameters.ts +741 -0
  715. package/internal/base58.ts +106 -0
  716. package/internal/bytes.ts +152 -0
  717. package/internal/cursor.ts +252 -0
  718. package/internal/ens.ts +64 -0
  719. package/internal/errors.ts +26 -0
  720. package/internal/hdKey.ts +25 -0
  721. package/internal/hex.ts +123 -0
  722. package/internal/lru.ts +34 -0
  723. package/internal/mnemonic/wordlists.ts +10 -0
  724. package/internal/promise.ts +66 -0
  725. package/internal/register.ts +15 -0
  726. package/internal/rpcSchema.ts +20 -0
  727. package/internal/rpcSchemas/eth.ts +727 -0
  728. package/internal/rpcSchemas/wallet.ts +428 -0
  729. package/internal/rpcTransport.ts +74 -0
  730. package/internal/types.ts +414 -0
  731. package/internal/uid.ts +15 -0
  732. package/internal/webauthn.ts +198 -0
  733. package/package.json +500 -20
  734. package/trusted-setups/Paths/package.json +6 -0
  735. package/trusted-setups/Paths.ts +3 -0
  736. package/trusted-setups/index.ts +1 -0
  737. package/trusted-setups/internal/paths.ts +13 -0
  738. package/trusted-setups/internal/setups/mainnet.json +8265 -0
  739. package/trusted-setups/internal/setups/mainnet.txt +4163 -0
  740. package/trusted-setups/package.json +6 -0
  741. package/tsdoc.json +4 -0
  742. package/version/package.json +6 -0
  743. package/version.ts +2 -0
  744. package/window/index.ts +7 -0
  745. package/window/package.json +6 -0
  746. package/cl/ansiesc.js +0 -25
  747. package/cl/deps.js +0 -7
  748. package/cl/editor.js +0 -141
  749. package/cl/index.html +0 -19
  750. package/cl/ox.js +0 -44
  751. package/cl/socket.io.js +0 -1922
  752. package/cl/style.css +0 -37
  753. package/srv/deps.js +0 -88
  754. package/srv/httpSrv.js +0 -82
  755. package/srv/ox.js +0 -44
  756. package/srv/remoteXtermReq.js +0 -70
package/_esm/Bytes.js ADDED
@@ -0,0 +1,719 @@
1
+ import { equalBytes } from '@noble/curves/abstract/utils';
2
+ import * as Errors from './Errors.js';
3
+ import * as Hex from './Hex.js';
4
+ import * as Json from './Json.js';
5
+ import * as internal from './internal/bytes.js';
6
+ import * as internal_hex from './internal/hex.js';
7
+ const decoder = /*#__PURE__*/ new TextDecoder();
8
+ const encoder = /*#__PURE__*/ new TextEncoder();
9
+ /**
10
+ * Asserts if the given value is {@link ox#Bytes.Bytes}.
11
+ *
12
+ * @example
13
+ * ```ts twoslash
14
+ * import { Bytes } from 'ox'
15
+ *
16
+ * Bytes.assert('abc')
17
+ * // @error: Bytes.InvalidBytesTypeError:
18
+ * // @error: Value `"abc"` of type `string` is an invalid Bytes value.
19
+ * // @error: Bytes values must be of type `Uint8Array`.
20
+ * ```
21
+ *
22
+ * @param value - Value to assert.
23
+ */
24
+ export function assert(value) {
25
+ if (value instanceof Uint8Array)
26
+ return;
27
+ if (!value)
28
+ throw new InvalidBytesTypeError(value);
29
+ if (typeof value !== 'object')
30
+ throw new InvalidBytesTypeError(value);
31
+ if (!('BYTES_PER_ELEMENT' in value))
32
+ throw new InvalidBytesTypeError(value);
33
+ if (value.BYTES_PER_ELEMENT !== 1 || value.constructor.name !== 'Uint8Array')
34
+ throw new InvalidBytesTypeError(value);
35
+ }
36
+ /* v8 ignore next */
37
+ assert.parseError = (error) => error;
38
+ /**
39
+ * Concatenates two or more {@link ox#Bytes.Bytes}.
40
+ *
41
+ * @example
42
+ * ```ts twoslash
43
+ * import { Bytes } from 'ox'
44
+ *
45
+ * const bytes = Bytes.concat(
46
+ * Bytes.from([1]),
47
+ * Bytes.from([69]),
48
+ * Bytes.from([420, 69]),
49
+ * )
50
+ * // @log: Uint8Array [ 1, 69, 420, 69 ]
51
+ * ```
52
+ *
53
+ * @param values - Values to concatenate.
54
+ * @returns Concatenated {@link ox#Bytes.Bytes}.
55
+ */
56
+ export function concat(...values) {
57
+ let length = 0;
58
+ for (const arr of values) {
59
+ length += arr.length;
60
+ }
61
+ const result = new Uint8Array(length);
62
+ for (let i = 0, index = 0; i < values.length; i++) {
63
+ const arr = values[i];
64
+ result.set(arr, index);
65
+ index += arr.length;
66
+ }
67
+ return result;
68
+ }
69
+ /* v8 ignore next */
70
+ concat.parseError = (error) => error;
71
+ /**
72
+ * Instantiates a {@link ox#Bytes.Bytes} value from a `Uint8Array`, a hex string, or an array of unsigned 8-bit integers.
73
+ *
74
+ * :::tip
75
+ *
76
+ * To instantiate from a **Boolean**, **String**, or **Number**, use one of the following:
77
+ *
78
+ * - `Bytes.fromBoolean`
79
+ *
80
+ * - `Bytes.fromString`
81
+ *
82
+ * - `Bytes.fromNumber`
83
+ *
84
+ * :::
85
+ *
86
+ * @example
87
+ * ```ts twoslash
88
+ * // @noErrors
89
+ * import { Bytes } from 'ox'
90
+ *
91
+ * const data = Bytes.from([255, 124, 5, 4])
92
+ * // @log: Uint8Array([255, 124, 5, 4])
93
+ *
94
+ * const data = Bytes.from('0xdeadbeef')
95
+ * // @log: Uint8Array([222, 173, 190, 239])
96
+ * ```
97
+ *
98
+ * @param value - Value to convert.
99
+ * @returns A {@link ox#Bytes.Bytes} instance.
100
+ */
101
+ export function from(value) {
102
+ if (value instanceof Uint8Array)
103
+ return value;
104
+ if (typeof value === 'string')
105
+ return fromHex(value);
106
+ return fromArray(value);
107
+ }
108
+ from.parseError = (error) =>
109
+ /* v8 ignore next */
110
+ error;
111
+ /**
112
+ * Converts an array of unsigned 8-bit integers into {@link ox#Bytes.Bytes}.
113
+ *
114
+ * @example
115
+ * ```ts twoslash
116
+ * import { Bytes } from 'ox'
117
+ *
118
+ * const data = Bytes.fromArray([255, 124, 5, 4])
119
+ * // @log: Uint8Array([255, 124, 5, 4])
120
+ * ```
121
+ *
122
+ * @param value - Value to convert.
123
+ * @returns A {@link ox#Bytes.Bytes} instance.
124
+ */
125
+ export function fromArray(value) {
126
+ return value instanceof Uint8Array ? value : new Uint8Array(value);
127
+ }
128
+ fromArray.parseError = (error) =>
129
+ /* v8 ignore next */
130
+ error;
131
+ /**
132
+ * Encodes a boolean value into {@link ox#Bytes.Bytes}.
133
+ *
134
+ * @example
135
+ * ```ts twoslash
136
+ * import { Bytes } from 'ox'
137
+ *
138
+ * const data = Bytes.fromBoolean(true)
139
+ * // @log: Uint8Array([1])
140
+ * ```
141
+ *
142
+ * @example
143
+ * ```ts twoslash
144
+ * import { Bytes } from 'ox'
145
+ *
146
+ * const data = Bytes.fromBoolean(true, { size: 32 })
147
+ * // @log: Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1])
148
+ * ```
149
+ *
150
+ * @param value - Boolean value to encode.
151
+ * @param options - Encoding options.
152
+ * @returns Encoded {@link ox#Bytes.Bytes}.
153
+ */
154
+ export function fromBoolean(value, options = {}) {
155
+ const { size } = options;
156
+ const bytes = new Uint8Array(1);
157
+ bytes[0] = Number(value);
158
+ if (typeof size === 'number') {
159
+ internal.assertSize(bytes, size);
160
+ return padLeft(bytes, size);
161
+ }
162
+ return bytes;
163
+ }
164
+ fromBoolean.parseError = (error) =>
165
+ /* v8 ignore next */
166
+ error;
167
+ /**
168
+ * Encodes a {@link ox#Hex.Hex} value into {@link ox#Bytes.Bytes}.
169
+ *
170
+ * @example
171
+ * ```ts twoslash
172
+ * import { Bytes } from 'ox'
173
+ *
174
+ * const data = Bytes.fromHex('0x48656c6c6f20776f726c6421')
175
+ * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33])
176
+ * ```
177
+ *
178
+ * @example
179
+ * ```ts twoslash
180
+ * import { Bytes } from 'ox'
181
+ *
182
+ * const data = Bytes.fromHex('0x48656c6c6f20776f726c6421', { size: 32 })
183
+ * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
184
+ * ```
185
+ *
186
+ * @param value - {@link ox#Hex.Hex} value to encode.
187
+ * @param options - Encoding options.
188
+ * @returns Encoded {@link ox#Bytes.Bytes}.
189
+ */
190
+ export function fromHex(value, options = {}) {
191
+ const { size } = options;
192
+ if (value.length % 2)
193
+ throw new Hex.InvalidLengthError(value);
194
+ let hex = value;
195
+ if (size) {
196
+ internal_hex.assertSize(value, size);
197
+ hex = Hex.padRight(value, size);
198
+ }
199
+ const hexString = hex.slice(2);
200
+ const length = hexString.length / 2;
201
+ const bytes = new Uint8Array(length);
202
+ for (let index = 0, j = 0; index < length; index++) {
203
+ const nibbleLeft = internal.charCodeToBase16(hexString.charCodeAt(j++));
204
+ const nibbleRight = internal.charCodeToBase16(hexString.charCodeAt(j++));
205
+ if (nibbleLeft === undefined || nibbleRight === undefined) {
206
+ throw new Errors.BaseError(`Invalid byte sequence ("${hexString[j - 2]}${hexString[j - 1]}" in "${hexString}").`);
207
+ }
208
+ bytes[index] = nibbleLeft * 16 + nibbleRight;
209
+ }
210
+ return bytes;
211
+ }
212
+ /* v8 ignore next */
213
+ fromHex.parseError = (error) => error;
214
+ /**
215
+ * Encodes a number value into {@link ox#Bytes.Bytes}.
216
+ *
217
+ * @example
218
+ * ```ts twoslash
219
+ * import { Bytes } from 'ox'
220
+ *
221
+ * const data = Bytes.fromNumber(420)
222
+ * // @log: Uint8Array([1, 164])
223
+ * ```
224
+ *
225
+ * @example
226
+ * ```ts twoslash
227
+ * import { Bytes } from 'ox'
228
+ *
229
+ * const data = Bytes.fromNumber(420, { size: 4 })
230
+ * // @log: Uint8Array([0, 0, 1, 164])
231
+ * ```
232
+ *
233
+ * @param value - Number value to encode.
234
+ * @param options - Encoding options.
235
+ * @returns Encoded {@link ox#Bytes.Bytes}.
236
+ */
237
+ export function fromNumber(value, options) {
238
+ const hex = Hex.fromNumber(value, options);
239
+ return fromHex(hex);
240
+ }
241
+ fromNumber.parseError = (error) =>
242
+ /* v8 ignore next */
243
+ error;
244
+ /**
245
+ * Encodes a string into {@link ox#Bytes.Bytes}.
246
+ *
247
+ * @example
248
+ * ```ts twoslash
249
+ * import { Bytes } from 'ox'
250
+ *
251
+ * const data = Bytes.fromString('Hello world!')
252
+ * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100, 33])
253
+ * ```
254
+ *
255
+ * @example
256
+ * ```ts twoslash
257
+ * import { Bytes } from 'ox'
258
+ *
259
+ * const data = Bytes.fromString('Hello world!', { size: 32 })
260
+ * // @log: Uint8Array([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
261
+ * ```
262
+ *
263
+ * @param value - String to encode.
264
+ * @param options - Encoding options.
265
+ * @returns Encoded {@link ox#Bytes.Bytes}.
266
+ */
267
+ export function fromString(value, options = {}) {
268
+ const { size } = options;
269
+ const bytes = encoder.encode(value);
270
+ if (typeof size === 'number') {
271
+ internal.assertSize(bytes, size);
272
+ return padRight(bytes, size);
273
+ }
274
+ return bytes;
275
+ }
276
+ fromString.parseError = (error) =>
277
+ /* v8 ignore next */
278
+ error;
279
+ /**
280
+ * Checks if two {@link ox#Bytes.Bytes} values are equal.
281
+ *
282
+ * @example
283
+ * ```ts twoslash
284
+ * import { Bytes } from 'ox'
285
+ *
286
+ * Bytes.isEqual(Bytes.from([1]), Bytes.from([1]))
287
+ * // @log: true
288
+ *
289
+ * Bytes.isEqual(Bytes.from([1]), Bytes.from([2]))
290
+ * // @log: false
291
+ * ```
292
+ *
293
+ * @param bytesA - First {@link ox#Bytes.Bytes} value.
294
+ * @param bytesB - Second {@link ox#Bytes.Bytes} value.
295
+ * @returns `true` if the two values are equal, otherwise `false`.
296
+ */
297
+ export function isEqual(bytesA, bytesB) {
298
+ return equalBytes(bytesA, bytesB);
299
+ }
300
+ /* v8 ignore next */
301
+ isEqual.parseError = (error) => error;
302
+ /**
303
+ * Pads a {@link ox#Bytes.Bytes} value to the left with zero bytes until it reaches the given `size` (default: 32 bytes).
304
+ *
305
+ * @example
306
+ * ```ts twoslash
307
+ * import { Bytes } from 'ox'
308
+ *
309
+ * Bytes.padLeft(Bytes.from([1]), 4)
310
+ * // @log: Uint8Array([0, 0, 0, 1])
311
+ * ```
312
+ *
313
+ * @param value - {@link ox#Bytes.Bytes} value to pad.
314
+ * @param size - Size to pad the {@link ox#Bytes.Bytes} value to.
315
+ * @returns Padded {@link ox#Bytes.Bytes} value.
316
+ */
317
+ export function padLeft(value, size) {
318
+ return internal.pad(value, { dir: 'left', size });
319
+ }
320
+ /* v8 ignore next */
321
+ padLeft.parseError = (error) => error;
322
+ /**
323
+ * Pads a {@link ox#Bytes.Bytes} value to the right with zero bytes until it reaches the given `size` (default: 32 bytes).
324
+ *
325
+ * @example
326
+ * ```ts twoslash
327
+ * import { Bytes } from 'ox'
328
+ *
329
+ * Bytes.padRight(Bytes.from([1]), 4)
330
+ * // @log: Uint8Array([1, 0, 0, 0])
331
+ * ```
332
+ *
333
+ * @param value - {@link ox#Bytes.Bytes} value to pad.
334
+ * @param size - Size to pad the {@link ox#Bytes.Bytes} value to.
335
+ * @returns Padded {@link ox#Bytes.Bytes} value.
336
+ */
337
+ export function padRight(value, size) {
338
+ return internal.pad(value, { dir: 'right', size });
339
+ }
340
+ /* v8 ignore next */
341
+ padRight.parseError = (error) => error;
342
+ /**
343
+ * Generates random {@link ox#Bytes.Bytes} of the specified length.
344
+ *
345
+ * @example
346
+ * ```ts twoslash
347
+ * import { Bytes } from 'ox'
348
+ *
349
+ * const bytes = Bytes.random(32)
350
+ * // @log: Uint8Array([... x32])
351
+ * ```
352
+ *
353
+ * @param length - Length of the random {@link ox#Bytes.Bytes} to generate.
354
+ * @returns Random {@link ox#Bytes.Bytes} of the specified length.
355
+ */
356
+ export function random(length) {
357
+ return crypto.getRandomValues(new Uint8Array(length));
358
+ }
359
+ /* v8 ignore next */
360
+ random.parseError = (error) => error;
361
+ /**
362
+ * Retrieves the size of a {@link ox#Bytes.Bytes} value.
363
+ *
364
+ * @example
365
+ * ```ts twoslash
366
+ * import { Bytes } from 'ox'
367
+ *
368
+ * Bytes.size(Bytes.from([1, 2, 3, 4]))
369
+ * // @log: 4
370
+ * ```
371
+ *
372
+ * @param value - {@link ox#Bytes.Bytes} value.
373
+ * @returns Size of the {@link ox#Bytes.Bytes} value.
374
+ */
375
+ export function size(value) {
376
+ return value.length;
377
+ }
378
+ /* v8 ignore next */
379
+ size.parseError = (error) => error;
380
+ /**
381
+ * Returns a section of a {@link ox#Bytes.Bytes} value given a start/end bytes offset.
382
+ *
383
+ * @example
384
+ * ```ts twoslash
385
+ * import { Bytes } from 'ox'
386
+ *
387
+ * Bytes.slice(
388
+ * Bytes.from([1, 2, 3, 4, 5, 6, 7, 8, 9]),
389
+ * 1,
390
+ * 4,
391
+ * )
392
+ * // @log: Uint8Array([2, 3, 4])
393
+ * ```
394
+ *
395
+ * @param value - The {@link ox#Bytes.Bytes} value.
396
+ * @param start - Start offset.
397
+ * @param end - End offset.
398
+ * @param options - Slice options.
399
+ * @returns Sliced {@link ox#Bytes.Bytes} value.
400
+ */
401
+ export function slice(value, start, end, options = {}) {
402
+ const { strict } = options;
403
+ internal.assertStartOffset(value, start);
404
+ const value_ = value.slice(start, end);
405
+ if (strict)
406
+ internal.assertEndOffset(value_, start, end);
407
+ return value_;
408
+ }
409
+ /* v8 ignore next */
410
+ slice.parseError = (error) => error;
411
+ /**
412
+ * Decodes a {@link ox#Bytes.Bytes} into a bigint.
413
+ *
414
+ * @example
415
+ * ```ts
416
+ * import { Bytes } from 'ox'
417
+ *
418
+ * Bytes.toBigInt(Bytes.from([1, 164]))
419
+ * // @log: 420n
420
+ * ```
421
+ *
422
+ * @param bytes - The {@link ox#Bytes.Bytes} to decode.
423
+ * @param options - Decoding options.
424
+ * @returns Decoded bigint.
425
+ */
426
+ export function toBigInt(bytes, options = {}) {
427
+ const { size } = options;
428
+ if (typeof size !== 'undefined')
429
+ internal.assertSize(bytes, size);
430
+ const hex = Hex.fromBytes(bytes, options);
431
+ return Hex.toBigInt(hex, options);
432
+ }
433
+ toBigInt.parseError = (error) =>
434
+ /* v8 ignore next */
435
+ error;
436
+ /**
437
+ * Decodes a {@link ox#Bytes.Bytes} into a boolean.
438
+ *
439
+ * @example
440
+ * ```ts
441
+ * import { Bytes } from 'ox'
442
+ *
443
+ * Bytes.toBoolean(Bytes.from([1]))
444
+ * // @log: true
445
+ * ```
446
+ *
447
+ * @param bytes - The {@link ox#Bytes.Bytes} to decode.
448
+ * @param options - Decoding options.
449
+ * @returns Decoded boolean.
450
+ */
451
+ export function toBoolean(bytes, options = {}) {
452
+ const { size } = options;
453
+ let bytes_ = bytes;
454
+ if (typeof size !== 'undefined') {
455
+ internal.assertSize(bytes_, size);
456
+ bytes_ = trimLeft(bytes_);
457
+ }
458
+ if (bytes_.length > 1 || bytes_[0] > 1)
459
+ throw new InvalidBytesBooleanError(bytes_);
460
+ return Boolean(bytes_[0]);
461
+ }
462
+ toBoolean.parseError = (error) =>
463
+ /* v8 ignore next */
464
+ error;
465
+ /**
466
+ * Encodes a {@link ox#Bytes.Bytes} value into a {@link ox#Hex.Hex} value.
467
+ *
468
+ * @example
469
+ * ```ts twoslash
470
+ * import { Bytes } from 'ox'
471
+ *
472
+ * Bytes.toHex(Bytes.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))
473
+ * // '0x48656c6c6f20576f726c6421'
474
+ * ```
475
+ *
476
+ * @param value - The {@link ox#Bytes.Bytes} to decode.
477
+ * @param options - Options.
478
+ * @returns Decoded {@link ox#Hex.Hex} value.
479
+ */
480
+ export function toHex(value, options = {}) {
481
+ return Hex.fromBytes(value, options);
482
+ }
483
+ /* v8 ignore next */
484
+ toHex.parseError = (error) => error;
485
+ /**
486
+ * Decodes a {@link ox#Bytes.Bytes} into a number.
487
+ *
488
+ * @example
489
+ * ```ts twoslash
490
+ * import { Bytes } from 'ox'
491
+ *
492
+ * Bytes.toNumber(Bytes.from([1, 164]))
493
+ * // @log: 420
494
+ * ```
495
+ */
496
+ export function toNumber(bytes, options = {}) {
497
+ const { size } = options;
498
+ if (typeof size !== 'undefined')
499
+ internal.assertSize(bytes, size);
500
+ const hex = Hex.fromBytes(bytes, options);
501
+ return Hex.toNumber(hex, options);
502
+ }
503
+ toNumber.parseError = (error) =>
504
+ /* v8 ignore next */
505
+ error;
506
+ /**
507
+ * Decodes a {@link ox#Bytes.Bytes} into a string.
508
+ *
509
+ * @example
510
+ * ```ts twoslash
511
+ * import { Bytes } from 'ox'
512
+ *
513
+ * const data = Bytes.toString(Bytes.from([72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100, 33]))
514
+ * // @log: 'Hello world'
515
+ * ```
516
+ *
517
+ * @param bytes - The {@link ox#Bytes.Bytes} to decode.
518
+ * @param options - Options.
519
+ * @returns Decoded string.
520
+ */
521
+ export function toString(bytes, options = {}) {
522
+ const { size } = options;
523
+ let bytes_ = bytes;
524
+ if (typeof size !== 'undefined') {
525
+ internal.assertSize(bytes_, size);
526
+ bytes_ = trimRight(bytes_);
527
+ }
528
+ return decoder.decode(bytes_);
529
+ }
530
+ toString.parseError = (error) =>
531
+ /* v8 ignore next */
532
+ error;
533
+ /**
534
+ * Trims leading zeros from a {@link ox#Bytes.Bytes} value.
535
+ *
536
+ * @example
537
+ * ```ts twoslash
538
+ * import { Bytes } from 'ox'
539
+ *
540
+ * Bytes.trimLeft(Bytes.from([0, 0, 0, 0, 1, 2, 3]))
541
+ * // @log: Uint8Array([1, 2, 3])
542
+ * ```
543
+ *
544
+ * @param value - {@link ox#Bytes.Bytes} value.
545
+ * @returns Trimmed {@link ox#Bytes.Bytes} value.
546
+ */
547
+ export function trimLeft(value) {
548
+ return internal.trim(value, { dir: 'left' });
549
+ }
550
+ /* v8 ignore next */
551
+ trimLeft.parseError = (error) => error;
552
+ /**
553
+ * Trims trailing zeros from a {@link ox#Bytes.Bytes} value.
554
+ *
555
+ * @example
556
+ * ```ts twoslash
557
+ * import { Bytes } from 'ox'
558
+ *
559
+ * Bytes.trimRight(Bytes.from([1, 2, 3, 0, 0, 0, 0]))
560
+ * // @log: Uint8Array([1, 2, 3])
561
+ * ```
562
+ *
563
+ * @param value - {@link ox#Bytes.Bytes} value.
564
+ * @returns Trimmed {@link ox#Bytes.Bytes} value.
565
+ */
566
+ export function trimRight(value) {
567
+ return internal.trim(value, { dir: 'right' });
568
+ }
569
+ /* v8 ignore next */
570
+ trimRight.parseError = (error) => error;
571
+ /**
572
+ * Checks if the given value is {@link ox#Bytes.Bytes}.
573
+ *
574
+ * @example
575
+ * ```ts twoslash
576
+ * import { Bytes } from 'ox'
577
+ *
578
+ * Bytes.validate('0x')
579
+ * // @log: false
580
+ *
581
+ * Bytes.validate(Bytes.from([1, 2, 3]))
582
+ * // @log: true
583
+ * ```
584
+ *
585
+ * @param value - Value to check.
586
+ * @returns `true` if the value is {@link ox#Bytes.Bytes}, otherwise `false`.
587
+ */
588
+ export function validate(value) {
589
+ try {
590
+ assert(value);
591
+ return true;
592
+ }
593
+ catch {
594
+ return false;
595
+ }
596
+ }
597
+ /* v8 ignore next */
598
+ validate.parseError = (error) => error;
599
+ /**
600
+ * Thrown when the bytes value cannot be represented as a boolean.
601
+ *
602
+ * @example
603
+ * ```ts twoslash
604
+ * import { Bytes } from 'ox'
605
+ *
606
+ * Bytes.toBoolean(Bytes.from([5]))
607
+ * // @error: Bytes.InvalidBytesBooleanError: Bytes value `[5]` is not a valid boolean.
608
+ * // @error: The bytes array must contain a single byte of either a `0` or `1` value.
609
+ * ```
610
+ */
611
+ export class InvalidBytesBooleanError extends Errors.BaseError {
612
+ constructor(bytes) {
613
+ super(`Bytes value \`${bytes}\` is not a valid boolean.`, {
614
+ metaMessages: [
615
+ 'The bytes array must contain a single byte of either a `0` or `1` value.',
616
+ ],
617
+ });
618
+ Object.defineProperty(this, "name", {
619
+ enumerable: true,
620
+ configurable: true,
621
+ writable: true,
622
+ value: 'Bytes.InvalidBytesBooleanError'
623
+ });
624
+ }
625
+ }
626
+ /**
627
+ * Thrown when a value cannot be converted to bytes.
628
+ *
629
+ * @example
630
+ * ```ts twoslash
631
+ * // @noErrors
632
+ * import { Bytes } from 'ox'
633
+ *
634
+ * Bytes.from('foo')
635
+ * // @error: Bytes.InvalidBytesTypeError: Value `foo` of type `string` is an invalid Bytes value.
636
+ * ```
637
+ */
638
+ export class InvalidBytesTypeError extends Errors.BaseError {
639
+ constructor(value) {
640
+ super(`Value \`${typeof value === 'object' ? Json.stringify(value) : value}\` of type \`${typeof value}\` is an invalid Bytes value.`, {
641
+ metaMessages: ['Bytes values must be of type `Bytes`.'],
642
+ });
643
+ Object.defineProperty(this, "name", {
644
+ enumerable: true,
645
+ configurable: true,
646
+ writable: true,
647
+ value: 'Bytes.InvalidBytesTypeError'
648
+ });
649
+ }
650
+ }
651
+ /**
652
+ * Thrown when a size exceeds the maximum allowed size.
653
+ *
654
+ * @example
655
+ * ```ts twoslash
656
+ * import { Bytes } from 'ox'
657
+ *
658
+ * Bytes.fromString('Hello World!', { size: 8 })
659
+ * // @error: Bytes.SizeOverflowError: Size cannot exceed `8` bytes. Given size: `12` bytes.
660
+ * ```
661
+ */
662
+ export class SizeOverflowError extends Errors.BaseError {
663
+ constructor({ givenSize, maxSize }) {
664
+ super(`Size cannot exceed \`${maxSize}\` bytes. Given size: \`${givenSize}\` bytes.`);
665
+ Object.defineProperty(this, "name", {
666
+ enumerable: true,
667
+ configurable: true,
668
+ writable: true,
669
+ value: 'Bytes.SizeOverflowError'
670
+ });
671
+ }
672
+ }
673
+ /**
674
+ * Thrown when a slice offset is out-of-bounds.
675
+ *
676
+ * @example
677
+ * ```ts twoslash
678
+ * import { Bytes } from 'ox'
679
+ *
680
+ * Bytes.slice(Bytes.from([1, 2, 3]), 4)
681
+ * // @error: Bytes.SliceOffsetOutOfBoundsError: Slice starting at offset `4` is out-of-bounds (size: `3`).
682
+ * ```
683
+ */
684
+ export class SliceOffsetOutOfBoundsError extends Errors.BaseError {
685
+ constructor({ offset, position, size, }) {
686
+ super(`Slice ${position === 'start' ? 'starting' : 'ending'} at offset \`${offset}\` is out-of-bounds (size: \`${size}\`).`);
687
+ Object.defineProperty(this, "name", {
688
+ enumerable: true,
689
+ configurable: true,
690
+ writable: true,
691
+ value: 'Bytes.SliceOffsetOutOfBoundsError'
692
+ });
693
+ }
694
+ }
695
+ /**
696
+ * Thrown when a the padding size exceeds the maximum allowed size.
697
+ *
698
+ * @example
699
+ * ```ts twoslash
700
+ * import { Bytes } from 'ox'
701
+ *
702
+ * Bytes.padLeft(Bytes.fromString('Hello World!'), 8)
703
+ * // @error: [Bytes.SizeExceedsPaddingSizeError: Bytes size (`12`) exceeds padding size (`8`).
704
+ * ```
705
+ */
706
+ export class SizeExceedsPaddingSizeError extends Errors.BaseError {
707
+ constructor({ size, targetSize, type, }) {
708
+ super(`${type.charAt(0).toUpperCase()}${type
709
+ .slice(1)
710
+ .toLowerCase()} size (\`${size}\`) exceeds padding size (\`${targetSize}\`).`);
711
+ Object.defineProperty(this, "name", {
712
+ enumerable: true,
713
+ configurable: true,
714
+ writable: true,
715
+ value: 'Bytes.SizeExceedsPaddingSizeError'
716
+ });
717
+ }
718
+ }
719
+ //# sourceMappingURL=Bytes.js.map