@coinbase/cdp-hooks 0.0.57 → 0.0.60

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 (265) hide show
  1. package/dist/esm/index100.js +32 -5
  2. package/dist/esm/index101.js +21 -55
  3. package/dist/esm/index102.js +6 -2
  4. package/dist/esm/index103.js +72 -6
  5. package/dist/esm/index104.js +5 -214
  6. package/dist/esm/index105.js +6 -32
  7. package/dist/esm/index106.js +34 -20
  8. package/dist/esm/index107.js +75 -5
  9. package/dist/esm/index108.js +3 -74
  10. package/dist/esm/index109.js +23 -5
  11. package/dist/esm/index110.js +451 -5
  12. package/dist/esm/index111.js +23 -28
  13. package/dist/esm/index112.js +18 -67
  14. package/dist/esm/index113.js +34 -3
  15. package/dist/esm/index114.js +32 -21
  16. package/dist/esm/index115.js +112 -370
  17. package/dist/esm/index116.js +6 -28
  18. package/dist/esm/index117.js +2 -27
  19. package/dist/esm/index118.js +8 -29
  20. package/dist/esm/index119.js +17 -33
  21. package/dist/esm/index120.js +18 -184
  22. package/dist/esm/index121.js +8 -8
  23. package/dist/esm/index122.js +56 -2
  24. package/dist/esm/index123.js +43 -10
  25. package/dist/esm/index124.js +8 -18
  26. package/dist/esm/index125.js +7 -27
  27. package/dist/esm/index126.js +16 -8
  28. package/dist/esm/index127.js +16 -53
  29. package/dist/esm/index128.js +24 -45
  30. package/dist/esm/index129.js +16 -8
  31. package/dist/esm/index130.js +54 -7
  32. package/dist/esm/index131.js +11 -16
  33. package/dist/esm/index132.js +160 -18
  34. package/dist/esm/index133.js +21 -24
  35. package/dist/esm/index134.js +127 -16
  36. package/dist/esm/index135.js +37 -53
  37. package/dist/esm/index136.js +6 -11
  38. package/dist/esm/index137.js +27 -160
  39. package/dist/esm/index138.js +191 -21
  40. package/dist/esm/index139.js +4 -128
  41. package/dist/esm/index140.js +62 -36
  42. package/dist/esm/index141.js +3 -7
  43. package/dist/esm/index142.js +18 -25
  44. package/dist/esm/index143.js +13 -188
  45. package/dist/esm/index144.js +24 -4
  46. package/dist/esm/index145.js +11 -64
  47. package/dist/esm/index146.js +35 -3
  48. package/dist/esm/index147.js +3 -21
  49. package/dist/esm/index148.js +17 -15
  50. package/dist/esm/index149.js +26 -22
  51. package/dist/esm/index150.js +35 -11
  52. package/dist/esm/index151.js +7 -34
  53. package/dist/esm/index152.js +26 -3
  54. package/dist/esm/index153.js +28 -18
  55. package/dist/esm/index154.js +63 -26
  56. package/dist/esm/index155.js +9 -35
  57. package/dist/esm/index156.js +33 -7
  58. package/dist/esm/index157.js +26 -24
  59. package/dist/esm/index158.js +24 -28
  60. package/dist/esm/index159.js +3 -64
  61. package/dist/esm/index160.js +14 -9
  62. package/dist/esm/index161.js +101 -31
  63. package/dist/esm/index162.js +63 -26
  64. package/dist/esm/index163.js +5 -24
  65. package/dist/esm/index164.js +6 -3
  66. package/dist/esm/index165.js +27 -14
  67. package/dist/esm/index166.js +39 -103
  68. package/dist/esm/index167.js +13 -64
  69. package/dist/esm/index168.js +42 -5
  70. package/dist/esm/index169.js +5 -6
  71. package/dist/esm/index170.js +11 -27
  72. package/dist/esm/index171.js +19 -39
  73. package/dist/esm/index172.js +78 -13
  74. package/dist/esm/index173.js +2 -43
  75. package/dist/esm/index174.js +37 -5
  76. package/dist/esm/index175.js +110 -11
  77. package/dist/esm/index176.js +48 -19
  78. package/dist/esm/index177.js +30 -76
  79. package/dist/esm/index178.js +9 -2
  80. package/dist/esm/index179.js +6 -37
  81. package/dist/esm/index18.js +2 -2
  82. package/dist/esm/index180.js +6 -110
  83. package/dist/esm/index181.js +11 -48
  84. package/dist/esm/index182.js +9 -31
  85. package/dist/esm/index183.js +13 -8
  86. package/dist/esm/index184.js +32 -6
  87. package/dist/esm/index185.js +5 -7
  88. package/dist/esm/index186.js +8 -11
  89. package/dist/esm/index187.js +19 -10
  90. package/dist/esm/index188.js +31 -13
  91. package/dist/esm/index189.js +19 -31
  92. package/dist/esm/index19.js +2 -2
  93. package/dist/esm/index190.js +4 -5
  94. package/dist/esm/index191.js +17 -8
  95. package/dist/esm/index192.js +10 -19
  96. package/dist/esm/index193.js +20 -30
  97. package/dist/esm/index194.js +21 -19
  98. package/dist/esm/index195.js +5 -3
  99. package/dist/esm/index196.js +5 -17
  100. package/dist/esm/index197.js +8 -10
  101. package/dist/esm/index198.js +101 -18
  102. package/dist/esm/index199.js +3 -23
  103. package/dist/esm/index20.js +5 -5
  104. package/dist/esm/index200.js +17 -4
  105. package/dist/esm/index201.js +171 -5
  106. package/dist/esm/index202.js +17 -8
  107. package/dist/esm/index203.js +10 -105
  108. package/dist/esm/index204.js +39 -3
  109. package/dist/esm/index205.js +2 -19
  110. package/dist/esm/index206.js +69 -171
  111. package/dist/esm/index207.js +34 -17
  112. package/dist/esm/index208.js +21 -10
  113. package/dist/esm/index209.js +41 -2
  114. package/dist/esm/index21.js +2 -2
  115. package/dist/esm/index210.js +2 -41
  116. package/dist/esm/index211.js +5 -2
  117. package/dist/esm/index212.js +10 -4
  118. package/dist/esm/index213.js +18 -9
  119. package/dist/esm/index214.js +7 -19
  120. package/dist/esm/index215.js +11 -7
  121. package/dist/esm/index216.js +66 -11
  122. package/dist/esm/index217.js +64 -65
  123. package/dist/esm/index218.js +180 -60
  124. package/dist/esm/index219.js +20 -183
  125. package/dist/esm/index22.js +2 -2
  126. package/dist/esm/index220.js +41 -21
  127. package/dist/esm/index221.js +54 -20
  128. package/dist/esm/index222.js +18 -54
  129. package/dist/esm/index223.js +10 -34
  130. package/dist/esm/index224.js +7 -10
  131. package/dist/esm/index225.js +7 -13
  132. package/dist/esm/index226.js +6 -7
  133. package/dist/esm/index227.js +36 -6
  134. package/dist/esm/index228.js +14 -35
  135. package/dist/esm/index229.js +8 -15
  136. package/dist/esm/index230.js +11 -7
  137. package/dist/esm/index231.js +9 -12
  138. package/dist/esm/index232.js +16 -9
  139. package/dist/esm/index233.js +21 -15
  140. package/dist/esm/index234.js +30 -22
  141. package/dist/esm/index235.js +2 -31
  142. package/dist/esm/index236.js +14 -2
  143. package/dist/esm/index237.js +12 -13
  144. package/dist/esm/index238.js +45 -10
  145. package/dist/esm/index239.js +9 -47
  146. package/dist/esm/index24.js +31 -37
  147. package/dist/esm/index240.js +12 -8
  148. package/dist/esm/index241.js +14 -13
  149. package/dist/esm/index242.js +8 -14
  150. package/dist/esm/index243.js +13 -6
  151. package/dist/esm/index244.js +24 -15
  152. package/dist/esm/index245.js +11 -24
  153. package/dist/esm/index246.js +23 -10
  154. package/dist/esm/index247.js +51 -24
  155. package/dist/esm/index248.js +17 -51
  156. package/dist/esm/index249.js +14 -17
  157. package/dist/esm/index25.js +4 -2
  158. package/dist/esm/index250.js +11 -14
  159. package/dist/esm/index251.js +103 -11
  160. package/dist/esm/index252.js +6 -103
  161. package/dist/esm/index253.js +223 -5
  162. package/dist/esm/index254.js +6 -224
  163. package/dist/esm/index255.js +7 -7
  164. package/dist/esm/index256.js +27 -7
  165. package/dist/esm/index257.js +18 -25
  166. package/dist/esm/index258.js +145 -18
  167. package/dist/esm/index259.js +12 -146
  168. package/dist/esm/index26.js +9 -69
  169. package/dist/esm/index260.js +35 -12
  170. package/dist/esm/index261.js +41 -35
  171. package/dist/esm/index262.js +2 -42
  172. package/dist/esm/index263.js +68 -3
  173. package/dist/esm/index264.js +3 -68
  174. package/dist/esm/index265.js +136 -3
  175. package/dist/esm/index266.js +144 -125
  176. package/dist/esm/index267.js +9 -155
  177. package/dist/esm/index268.js +16 -9
  178. package/dist/esm/index269.js +113 -16
  179. package/dist/esm/index27.js +68 -34
  180. package/dist/esm/index270.js +116 -95
  181. package/dist/esm/index271.js +70 -126
  182. package/dist/esm/index272.js +2 -79
  183. package/dist/esm/index273.js +699 -2
  184. package/dist/esm/index274.js +126 -685
  185. package/dist/esm/index275.js +41 -138
  186. package/dist/esm/index276.js +199 -40
  187. package/dist/esm/index277.js +3 -201
  188. package/dist/esm/index28.js +8 -19
  189. package/dist/esm/index280.js +1 -1
  190. package/dist/esm/index281.js +2 -2
  191. package/dist/esm/index285.js +2 -2
  192. package/dist/esm/index286.js +1 -1
  193. package/dist/esm/index29.js +27 -31
  194. package/dist/esm/index3.js +1 -1
  195. package/dist/esm/index30.js +70 -3
  196. package/dist/esm/index31.js +19 -9
  197. package/dist/esm/index32.js +110 -68
  198. package/dist/esm/index33.js +58 -7
  199. package/dist/esm/index34.js +23 -27
  200. package/dist/esm/index35.js +40 -70
  201. package/dist/esm/index36.js +37 -19
  202. package/dist/esm/index37.js +58 -110
  203. package/dist/esm/index38.js +160 -57
  204. package/dist/esm/index39.js +36 -21
  205. package/dist/esm/index40.js +9 -40
  206. package/dist/esm/index41.js +28 -34
  207. package/dist/esm/index42.js +36 -58
  208. package/dist/esm/index43.js +8 -162
  209. package/dist/esm/index44.js +25 -35
  210. package/dist/esm/index45.js +46 -9
  211. package/dist/esm/index46.js +88 -31
  212. package/dist/esm/index47.js +40 -36
  213. package/dist/esm/index48.js +7 -8
  214. package/dist/esm/index49.js +5 -28
  215. package/dist/esm/index50.js +16 -46
  216. package/dist/esm/index51.js +8 -88
  217. package/dist/esm/index52.js +13 -40
  218. package/dist/esm/index53.js +7 -8
  219. package/dist/esm/index54.js +9 -6
  220. package/dist/esm/index55.js +16 -16
  221. package/dist/esm/index56.js +46 -8
  222. package/dist/esm/index57.js +13 -13
  223. package/dist/esm/index58.js +16 -7
  224. package/dist/esm/index59.js +13 -9
  225. package/dist/esm/index60.js +5 -15
  226. package/dist/esm/index61.js +35 -46
  227. package/dist/esm/index62.js +9 -13
  228. package/dist/esm/index63.js +7 -15
  229. package/dist/esm/index64.js +25 -13
  230. package/dist/esm/index65.js +10 -6
  231. package/dist/esm/index66.js +11 -32
  232. package/dist/esm/index67.js +11 -9
  233. package/dist/esm/index68.js +116 -8
  234. package/dist/esm/index69.js +32 -24
  235. package/dist/esm/index70.js +79 -10
  236. package/dist/esm/index71.js +176 -13
  237. package/dist/esm/index72.js +44 -11
  238. package/dist/esm/index73.js +6 -116
  239. package/dist/esm/index74.js +12 -32
  240. package/dist/esm/index75.js +13 -79
  241. package/dist/esm/index76.js +95 -173
  242. package/dist/esm/index77.js +70 -42
  243. package/dist/esm/index78.js +87 -6
  244. package/dist/esm/index79.js +148 -13
  245. package/dist/esm/index80.js +136 -13
  246. package/dist/esm/index81.js +63 -94
  247. package/dist/esm/index82.js +23 -72
  248. package/dist/esm/index83.js +101 -83
  249. package/dist/esm/index84.js +6 -148
  250. package/dist/esm/index85.js +128 -133
  251. package/dist/esm/index86.js +273 -66
  252. package/dist/esm/index87.js +3 -24
  253. package/dist/esm/index88.js +4 -106
  254. package/dist/esm/index89.js +9 -7
  255. package/dist/esm/index90.js +2 -132
  256. package/dist/esm/index91.js +2 -276
  257. package/dist/esm/index92.js +3 -3
  258. package/dist/esm/index93.js +327 -4
  259. package/dist/esm/index94.js +14 -9
  260. package/dist/esm/index95.js +5 -2
  261. package/dist/esm/index96.js +56 -2
  262. package/dist/esm/index97.js +2 -3
  263. package/dist/esm/index98.js +6 -325
  264. package/dist/esm/index99.js +212 -11
  265. package/package.json +3 -3
@@ -1,30 +1,67 @@
1
- import { hexToNumber as d } from "./index161.js";
2
- import { defineFormatter as b } from "./index134.js";
3
- import { formatLog as m } from "./index136.js";
4
- import { transactionType as o } from "./index135.js";
5
- const f = {
6
- "0x0": "reverted",
7
- "0x1": "success"
8
- };
9
- function r(l) {
10
- const s = {
11
- ...l,
12
- blockNumber: l.blockNumber ? BigInt(l.blockNumber) : null,
13
- contractAddress: l.contractAddress ? l.contractAddress : null,
14
- cumulativeGasUsed: l.cumulativeGasUsed ? BigInt(l.cumulativeGasUsed) : null,
15
- effectiveGasPrice: l.effectiveGasPrice ? BigInt(l.effectiveGasPrice) : null,
16
- gasUsed: l.gasUsed ? BigInt(l.gasUsed) : null,
17
- logs: l.logs ? l.logs.map((u) => m(u)) : null,
18
- to: l.to ? l.to : null,
19
- transactionIndex: l.transactionIndex ? d(l.transactionIndex) : null,
20
- status: l.status ? f[l.status] : null,
21
- type: l.type ? o[l.type] || l.type : null
1
+ import { BytesSizeMismatchError as I } from "./index93.js";
2
+ import { InvalidAddressError as v } from "./index118.js";
3
+ import { InvalidDomainError as w, InvalidPrimaryTypeError as E, InvalidStructTypeError as z } from "./index120.js";
4
+ import { isAddress as D } from "./index145.js";
5
+ import { size as c } from "./index95.js";
6
+ import { numberToHex as T } from "./index123.js";
7
+ import { integerRegex as x, bytesRegex as P } from "./index147.js";
8
+ function C(e) {
9
+ const { domain: o, message: y, primaryType: s, types: r } = e, a = (d, g) => {
10
+ for (const h of d) {
11
+ const { name: b, type: i } = h, t = g[b], m = i.match(x);
12
+ if (m && (typeof t == "number" || typeof t == "bigint")) {
13
+ const [u, n, l] = m;
14
+ T(t, {
15
+ signed: n === "int",
16
+ size: Number.parseInt(l) / 8
17
+ });
18
+ }
19
+ if (i === "address" && typeof t == "string" && !D(t))
20
+ throw new v({ address: t });
21
+ const f = i.match(P);
22
+ if (f) {
23
+ const [u, n] = f;
24
+ if (n && c(t) !== Number.parseInt(n))
25
+ throw new I({
26
+ expectedSize: Number.parseInt(n),
27
+ givenSize: c(t)
28
+ });
29
+ }
30
+ const p = r[i];
31
+ p && (S(i), a(p, t));
32
+ }
22
33
  };
23
- return l.blobGasPrice && (s.blobGasPrice = BigInt(l.blobGasPrice)), l.blobGasUsed && (s.blobGasUsed = BigInt(l.blobGasUsed)), s;
34
+ if (r.EIP712Domain && o) {
35
+ if (typeof o != "object")
36
+ throw new w({ domain: o });
37
+ a(r.EIP712Domain, o);
38
+ }
39
+ if (s !== "EIP712Domain")
40
+ if (r[s])
41
+ a(r[s], y);
42
+ else
43
+ throw new E({ primaryType: s, types: r });
44
+ }
45
+ function j({ domain: e }) {
46
+ return [
47
+ typeof e?.name == "string" && { name: "name", type: "string" },
48
+ e?.version && { name: "version", type: "string" },
49
+ (typeof e?.chainId == "number" || typeof e?.chainId == "bigint") && {
50
+ name: "chainId",
51
+ type: "uint256"
52
+ },
53
+ e?.verifyingContract && {
54
+ name: "verifyingContract",
55
+ type: "address"
56
+ },
57
+ e?.salt && { name: "salt", type: "bytes32" }
58
+ ].filter(Boolean);
59
+ }
60
+ function S(e) {
61
+ if (e === "address" || e === "bool" || e === "string" || e.startsWith("bytes") || e.startsWith("uint") || e.startsWith("int"))
62
+ throw new z({ type: e });
24
63
  }
25
- const U = /* @__PURE__ */ b("transactionReceipt", r);
26
64
  export {
27
- U as defineTransactionReceipt,
28
- r as formatTransactionReceipt,
29
- f as receiptStatuses
65
+ j as getTypesForEIP712Domain,
66
+ C as validateTypedData
30
67
  };
@@ -1,27 +1,8 @@
1
- import { bytesToHex as d, numberToHex as n } from "./index128.js";
2
- const o = {
3
- legacy: "0x0",
4
- eip2930: "0x1",
5
- eip1559: "0x2",
6
- eip4844: "0x3",
7
- eip7702: "0x4"
8
- };
9
- function p(e) {
10
- const f = {};
11
- return typeof e.authorizationList < "u" && (f.authorizationList = a(e.authorizationList)), typeof e.accessList < "u" && (f.accessList = e.accessList), typeof e.blobVersionedHashes < "u" && (f.blobVersionedHashes = e.blobVersionedHashes), typeof e.blobs < "u" && (typeof e.blobs[0] != "string" ? f.blobs = e.blobs.map((i) => d(i)) : f.blobs = e.blobs), typeof e.data < "u" && (f.data = e.data), typeof e.from < "u" && (f.from = e.from), typeof e.gas < "u" && (f.gas = n(e.gas)), typeof e.gasPrice < "u" && (f.gasPrice = n(e.gasPrice)), typeof e.maxFeePerBlobGas < "u" && (f.maxFeePerBlobGas = n(e.maxFeePerBlobGas)), typeof e.maxFeePerGas < "u" && (f.maxFeePerGas = n(e.maxFeePerGas)), typeof e.maxPriorityFeePerGas < "u" && (f.maxPriorityFeePerGas = n(e.maxPriorityFeePerGas)), typeof e.nonce < "u" && (f.nonce = n(e.nonce)), typeof e.to < "u" && (f.to = e.to), typeof e.type < "u" && (f.type = o[e.type]), typeof e.value < "u" && (f.value = n(e.value)), f;
12
- }
13
- function a(e) {
14
- return e.map((f) => ({
15
- address: f.address,
16
- r: f.r ? n(BigInt(f.r)) : f.r,
17
- s: f.s ? n(BigInt(f.s)) : f.s,
18
- chainId: n(f.chainId),
19
- nonce: n(f.nonce),
20
- ...typeof f.yParity < "u" ? { yParity: n(f.yParity) } : {},
21
- ...typeof f.v < "u" && typeof f.yParity > "u" ? { v: n(f.v) } : {}
22
- }));
1
+ import { publicKeyToAddress as o } from "./index164.js";
2
+ import { recoverPublicKey as c } from "./index165.js";
3
+ async function s({ hash: r, signature: e }) {
4
+ return o(await c({ hash: r, signature: e }));
23
5
  }
24
6
  export {
25
- p as formatTransactionRequest,
26
- o as rpcTransactionType
7
+ s as recoverAddress
27
8
  };
@@ -1,6 +1,9 @@
1
- function e(t, { strict: r = !0 } = {}) {
2
- return !t || typeof t != "string" ? !1 : r ? /^0x[0-9a-fA-F]*$/.test(t) : t.startsWith("0x");
1
+ import { checksumAddress as e } from "./index133.js";
2
+ import { keccak256 as o } from "./index124.js";
3
+ function d(r) {
4
+ const s = o(`0x${r.substring(4)}`).substring(26);
5
+ return e(`0x${s}`);
3
6
  }
4
7
  export {
5
- e as isHex
8
+ d as publicKeyToAddress
6
9
  };
@@ -1,17 +1,30 @@
1
- import { InvalidSerializableTransactionError as f } from "./index112.js";
2
- function d(e) {
3
- if (e.type)
4
- return e.type;
5
- if (typeof e.authorizationList < "u")
6
- return "eip7702";
7
- if (typeof e.blobs < "u" || typeof e.blobVersionedHashes < "u" || typeof e.maxFeePerBlobGas < "u" || typeof e.sidecars < "u")
8
- return "eip4844";
9
- if (typeof e.maxFeePerGas < "u" || typeof e.maxPriorityFeePerGas < "u")
10
- return "eip1559";
11
- if (typeof e.gasPrice < "u")
12
- return typeof e.accessList < "u" ? "eip2930" : "legacy";
13
- throw new f({ transaction: e });
1
+ import { isHex as i } from "./index159.js";
2
+ import { size as b } from "./index95.js";
3
+ import { hexToBigInt as n, hexToNumber as d } from "./index156.js";
4
+ import { toHex as c } from "./index123.js";
5
+ async function R({ hash: r, signature: e }) {
6
+ const u = i(r) ? r : c(r), { secp256k1: t } = await import("./index166.js");
7
+ return `0x${(() => {
8
+ if (typeof e == "object" && "r" in e && "s" in e) {
9
+ const { r: p, s: v, v: y, yParity: l } = e, x = Number(l ?? y), a = s(x);
10
+ return new t.Signature(n(p), n(v)).addRecoveryBit(a);
11
+ }
12
+ const o = i(e) ? e : c(e);
13
+ if (b(o) !== 65)
14
+ throw new Error("invalid signature length");
15
+ const f = d(`0x${o.slice(130)}`), m = s(f);
16
+ return t.Signature.fromCompact(o.substring(2, 130)).addRecoveryBit(m);
17
+ })().recoverPublicKey(u.substring(2)).toHex(!1)}`;
18
+ }
19
+ function s(r) {
20
+ if (r === 0 || r === 1)
21
+ return r;
22
+ if (r === 27)
23
+ return 0;
24
+ if (r === 28)
25
+ return 1;
26
+ throw new Error("Invalid yParityOrV value");
14
27
  }
15
28
  export {
16
- d as getTransactionType
29
+ R as recoverPublicKey
17
30
  };
@@ -1,106 +1,42 @@
1
- import { encodeAbiParameters as p } from "./index143.js";
2
- import { concat as h } from "./index132.js";
3
- import { toHex as d } from "./index128.js";
4
- import { keccak256 as i } from "./index129.js";
5
- import { getTypesForEIP712Domain as T, validateTypedData as D } from "./index167.js";
6
- function k(o) {
7
- const { domain: n = {}, message: e, primaryType: t } = o, r = {
8
- EIP712Domain: T({ domain: n }),
9
- ...o.types
10
- };
11
- D({
12
- domain: n,
13
- message: e,
14
- primaryType: t,
15
- types: r
16
- });
17
- const a = ["0x1901"];
18
- return n && a.push(b({
19
- domain: n,
20
- types: r
21
- })), t !== "EIP712Domain" && a.push(f({
22
- data: e,
23
- primaryType: t,
24
- types: r
25
- })), i(h(a));
26
- }
27
- function b({ domain: o, types: n }) {
28
- return f({
29
- data: o,
30
- primaryType: "EIP712Domain",
31
- types: n
32
- });
33
- }
34
- function f({ data: o, primaryType: n, types: e }) {
35
- const t = m({
36
- data: o,
37
- primaryType: n,
38
- types: e
39
- });
40
- return i(t);
41
- }
42
- function m({ data: o, primaryType: n, types: e }) {
43
- const t = [{ type: "bytes32" }], r = [l({ primaryType: n, types: e })];
44
- for (const a of e[n]) {
45
- const [c, s] = y({
46
- types: e,
47
- name: a.name,
48
- type: a.type,
49
- value: o[a.name]
50
- });
51
- t.push(c), r.push(s);
52
- }
53
- return p(t, r);
54
- }
55
- function l({ primaryType: o, types: n }) {
56
- const e = d(x({ primaryType: o, types: n }));
57
- return i(e);
58
- }
59
- function x({ primaryType: o, types: n }) {
60
- let e = "";
61
- const t = u({ primaryType: o, types: n });
62
- t.delete(o);
63
- const r = [o, ...Array.from(t).sort()];
64
- for (const a of r)
65
- e += `${a}(${n[a].map(({ name: c, type: s }) => `${s} ${c}`).join(",")})`;
66
- return e;
67
- }
68
- function u({ primaryType: o, types: n }, e = /* @__PURE__ */ new Set()) {
69
- const r = o.match(/^\w*/u)?.[0];
70
- if (e.has(r) || n[r] === void 0)
71
- return e;
72
- e.add(r);
73
- for (const a of n[r])
74
- u({ primaryType: a.type, types: n }, e);
75
- return e;
76
- }
77
- function y({ types: o, name: n, type: e, value: t }) {
78
- if (o[e] !== void 0)
79
- return [
80
- { type: "bytes32" },
81
- i(m({ data: t, primaryType: e, types: o }))
82
- ];
83
- if (e === "bytes")
84
- return t = `0x${(t.length % 2 ? "0" : "") + t.slice(2)}`, [{ type: "bytes32" }, i(t)];
85
- if (e === "string")
86
- return [{ type: "bytes32" }, i(d(t))];
87
- if (e.lastIndexOf("]") === e.length - 1) {
88
- const r = e.slice(0, e.lastIndexOf("[")), a = t.map((c) => y({
89
- name: n,
90
- type: r,
91
- types: o,
92
- value: c
93
- }));
94
- return [
95
- { type: "bytes32" },
96
- i(p(a.map(([c]) => c), a.map(([, c]) => c)))
97
- ];
1
+ import { sha256 as v } from "./index251.js";
2
+ import { createCurve as G } from "./index252.js";
3
+ import { Field as P, mod as h, pow2 as t } from "./index253.js";
4
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
5
+ const B = {
6
+ p: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),
7
+ n: BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),
8
+ h: BigInt(1),
9
+ a: BigInt(0),
10
+ b: BigInt(7),
11
+ Gx: BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),
12
+ Gy: BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")
13
+ };
14
+ BigInt(0);
15
+ const M = BigInt(1), x = BigInt(2), k = (n, f) => (n + f / x) / f;
16
+ function N(n) {
17
+ const f = B.p, e = BigInt(3), a = BigInt(6), I = BigInt(11), b = BigInt(22), s = BigInt(23), i = BigInt(44), r = BigInt(88), c = n * n * n % f, o = c * c * n % f, d = t(o, e, f) * o % f, g = t(d, e, f) * o % f, m = t(g, x, f) * c % f, p = t(m, I, f) * m % f, _ = t(p, b, f) * p % f, u = t(_, i, f) * _ % f, q = t(u, r, f) * u % f, E = t(q, i, f) * _ % f, C = t(E, e, f) * o % f, F = t(C, s, f) * p % f, S = t(F, a, f) * c % f, w = t(S, x, f);
18
+ if (!l.eql(l.sqr(w), n))
19
+ throw new Error("Cannot find square root");
20
+ return w;
21
+ }
22
+ const l = P(B.p, void 0, void 0, { sqrt: N }), V = G({
23
+ ...B,
24
+ Fp: l,
25
+ lowS: !0,
26
+ // Allow only low-S signatures by default in sign() and verify()
27
+ endo: {
28
+ // Endomorphism, see above
29
+ beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),
30
+ splitScalar: (n) => {
31
+ const f = B.n, e = BigInt("0x3086d221a7d46bcde86c90e49284eb15"), a = -M * BigInt("0xe4437ed6010e88286f547fa90abfe4c3"), I = BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"), b = e, s = BigInt("0x100000000000000000000000000000000"), i = k(b * n, f), r = k(-a * n, f);
32
+ let c = h(n - i * e - r * I, f), o = h(-i * a - r * b, f);
33
+ const d = c > s, g = o > s;
34
+ if (d && (c = f - c), g && (o = f - o), c > s || o > s)
35
+ throw new Error("splitScalar: Endomorphism failed, k=" + n);
36
+ return { k1neg: d, k1: c, k2neg: g, k2: o };
37
+ }
98
38
  }
99
- return [{ type: e }, t];
100
- }
39
+ }, v);
101
40
  export {
102
- x as encodeType,
103
- b as hashDomain,
104
- f as hashStruct,
105
- k as hashTypedData
41
+ V as secp256k1
106
42
  };
@@ -1,67 +1,16 @@
1
- import { BytesSizeMismatchError as I } from "./index98.js";
2
- import { InvalidAddressError as v } from "./index123.js";
3
- import { InvalidDomainError as w, InvalidPrimaryTypeError as E, InvalidStructTypeError as z } from "./index125.js";
4
- import { isAddress as D } from "./index150.js";
5
- import { size as c } from "./index100.js";
6
- import { numberToHex as T } from "./index128.js";
7
- import { integerRegex as x, bytesRegex as P } from "./index152.js";
8
- function C(e) {
9
- const { domain: o, message: y, primaryType: s, types: r } = e, a = (d, g) => {
10
- for (const h of d) {
11
- const { name: b, type: i } = h, t = g[b], m = i.match(x);
12
- if (m && (typeof t == "number" || typeof t == "bigint")) {
13
- const [u, n, l] = m;
14
- T(t, {
15
- signed: n === "int",
16
- size: Number.parseInt(l) / 8
17
- });
18
- }
19
- if (i === "address" && typeof t == "string" && !D(t))
20
- throw new v({ address: t });
21
- const f = i.match(P);
22
- if (f) {
23
- const [u, n] = f;
24
- if (n && c(t) !== Number.parseInt(n))
25
- throw new I({
26
- expectedSize: Number.parseInt(n),
27
- givenSize: c(t)
28
- });
29
- }
30
- const p = r[i];
31
- p && (S(i), a(p, t));
32
- }
33
- };
34
- if (r.EIP712Domain && o) {
35
- if (typeof o != "object")
36
- throw new w({ domain: o });
37
- a(r.EIP712Domain, o);
38
- }
39
- if (s !== "EIP712Domain")
40
- if (r[s])
41
- a(r[s], y);
42
- else
43
- throw new E({ primaryType: s, types: r });
44
- }
45
- function j({ domain: e }) {
46
- return [
47
- typeof e?.name == "string" && { name: "name", type: "string" },
48
- e?.version && { name: "version", type: "string" },
49
- (typeof e?.chainId == "number" || typeof e?.chainId == "bigint") && {
50
- name: "chainId",
51
- type: "uint256"
52
- },
53
- e?.verifyingContract && {
54
- name: "verifyingContract",
55
- type: "address"
56
- },
57
- e?.salt && { name: "salt", type: "bytes32" }
58
- ].filter(Boolean);
59
- }
60
- function S(e) {
61
- if (e === "address" || e === "bool" || e === "string" || e.startsWith("bytes") || e.startsWith("uint") || e.startsWith("int"))
62
- throw new z({ type: e });
1
+ import { secp256k1 as f } from "./index166.js";
2
+ import { hexToBigInt as t } from "./index156.js";
3
+ import { hexToBytes as m } from "./index122.js";
4
+ function s({ r: o, s: i, to: u = "hex", v: r, yParity: e }) {
5
+ const a = (() => {
6
+ if (e === 0 || e === 1)
7
+ return e;
8
+ if (r && (r === 27n || r === 28n || r >= 35n))
9
+ return r % 2n === 0n ? 1 : 0;
10
+ throw new Error("Invalid `v` or `yParity` value");
11
+ })(), n = `0x${new f.Signature(t(o), t(i)).toCompactHex()}${a === 0 ? "1b" : "1c"}`;
12
+ return u === "hex" ? n : m(n);
63
13
  }
64
14
  export {
65
- j as getTypesForEIP712Domain,
66
- C as validateTypedData
15
+ s as serializeSignature
67
16
  };
@@ -1,8 +1,45 @@
1
- import { publicKeyToAddress as o } from "./index169.js";
2
- import { recoverPublicKey as c } from "./index170.js";
3
- async function s({ hash: r, signature: e }) {
4
- return o(await c({ hash: r, signature: e }));
1
+ import { BaseError as l } from "./index96.js";
2
+ import { createCursor as r } from "./index134.js";
3
+ import { hexToBytes as g } from "./index122.js";
4
+ import { bytesToHex as u } from "./index123.js";
5
+ function m(n, e = "hex") {
6
+ const i = s(n), h = r(new Uint8Array(i.length));
7
+ return i.encode(h), e === "hex" ? u(h.bytes) : h.bytes;
8
+ }
9
+ function s(n) {
10
+ return Array.isArray(n) ? p(n.map((e) => s(e))) : y(n);
11
+ }
12
+ function p(n) {
13
+ const e = n.reduce((t, f) => t + f.length, 0), i = o(e);
14
+ return {
15
+ length: e <= 55 ? 1 + e : 1 + i + e,
16
+ encode(t) {
17
+ e <= 55 ? t.pushByte(192 + e) : (t.pushByte(247 + i), i === 1 ? t.pushUint8(e) : i === 2 ? t.pushUint16(e) : i === 3 ? t.pushUint24(e) : t.pushUint32(e));
18
+ for (const { encode: f } of n)
19
+ f(t);
20
+ }
21
+ };
22
+ }
23
+ function y(n) {
24
+ const e = typeof n == "string" ? g(n) : n, i = o(e.length);
25
+ return {
26
+ length: e.length === 1 && e[0] < 128 ? 1 : e.length <= 55 ? 1 + e.length : 1 + i + e.length,
27
+ encode(t) {
28
+ e.length === 1 && e[0] < 128 ? t.pushBytes(e) : e.length <= 55 ? (t.pushByte(128 + e.length), t.pushBytes(e)) : (t.pushByte(183 + i), i === 1 ? t.pushUint8(e.length) : i === 2 ? t.pushUint16(e.length) : i === 3 ? t.pushUint24(e.length) : t.pushUint32(e.length), t.pushBytes(e));
29
+ }
30
+ };
31
+ }
32
+ function o(n) {
33
+ if (n < 2 ** 8)
34
+ return 1;
35
+ if (n < 2 ** 16)
36
+ return 2;
37
+ if (n < 2 ** 24)
38
+ return 3;
39
+ if (n < 2 ** 32)
40
+ return 4;
41
+ throw new l("Length is too large.");
5
42
  }
6
43
  export {
7
- s as recoverAddress
44
+ m as toRlp
8
45
  };
@@ -1,9 +1,8 @@
1
- import { checksumAddress as e } from "./index138.js";
2
- import { keccak256 as o } from "./index129.js";
3
- function d(r) {
4
- const s = o(`0x${r.substring(4)}`).substring(26);
5
- return e(`0x${s}`);
1
+ import { erc6492MagicBytes as e } from "./index91.js";
2
+ import { sliceHex as i } from "./index135.js";
3
+ function c(r) {
4
+ return i(r, -32) === e;
6
5
  }
7
6
  export {
8
- d as publicKeyToAddress
7
+ c as isErc6492Signature
9
8
  };
@@ -1,30 +1,14 @@
1
- import { isHex as i } from "./index164.js";
2
- import { size as b } from "./index100.js";
3
- import { hexToBigInt as n, hexToNumber as d } from "./index161.js";
4
- import { toHex as c } from "./index128.js";
5
- async function R({ hash: r, signature: e }) {
6
- const u = i(r) ? r : c(r), { secp256k1: t } = await import("./index171.js");
7
- return `0x${(() => {
8
- if (typeof e == "object" && "r" in e && "s" in e) {
9
- const { r: p, s: v, v: y, yParity: l } = e, x = Number(l ?? y), a = s(x);
10
- return new t.Signature(n(p), n(v)).addRecoveryBit(a);
11
- }
12
- const o = i(e) ? e : c(e);
13
- if (b(o) !== 65)
14
- throw new Error("invalid signature length");
15
- const f = d(`0x${o.slice(130)}`), m = s(f);
16
- return t.Signature.fromCompact(o.substring(2, 130)).addRecoveryBit(m);
17
- })().recoverPublicKey(u.substring(2)).toHex(!1)}`;
18
- }
19
- function s(r) {
20
- if (r === 0 || r === 1)
21
- return r;
22
- if (r === 27)
23
- return 0;
24
- if (r === 28)
25
- return 1;
26
- throw new Error("Invalid yParityOrV value");
1
+ import { erc6492MagicBytes as a } from "./index91.js";
2
+ import { encodeAbiParameters as n } from "./index138.js";
3
+ import { concatHex as c } from "./index127.js";
4
+ import { hexToBytes as m } from "./index122.js";
5
+ function u(t) {
6
+ const { address: r, data: o, signature: s, to: i = "hex" } = t, e = c([
7
+ n([{ type: "address" }, { type: "bytes" }, { type: "bytes" }], [r, o, s]),
8
+ a
9
+ ]);
10
+ return i === "hex" ? e : m(e);
27
11
  }
28
12
  export {
29
- R as recoverPublicKey
13
+ u as serializeErc6492Signature
30
14
  };
@@ -1,42 +1,22 @@
1
- import { sha256 as v } from "./index252.js";
2
- import { createCurve as G } from "./index253.js";
3
- import { Field as P, mod as h, pow2 as t } from "./index254.js";
4
- /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
5
- const B = {
6
- p: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),
7
- n: BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),
8
- h: BigInt(1),
9
- a: BigInt(0),
10
- b: BigInt(7),
11
- Gx: BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),
12
- Gy: BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")
13
- };
14
- BigInt(0);
15
- const M = BigInt(1), x = BigInt(2), k = (n, f) => (n + f / x) / f;
16
- function N(n) {
17
- const f = B.p, e = BigInt(3), a = BigInt(6), I = BigInt(11), b = BigInt(22), s = BigInt(23), i = BigInt(44), r = BigInt(88), c = n * n * n % f, o = c * c * n % f, d = t(o, e, f) * o % f, g = t(d, e, f) * o % f, m = t(g, x, f) * c % f, p = t(m, I, f) * m % f, _ = t(p, b, f) * p % f, u = t(_, i, f) * _ % f, q = t(u, r, f) * u % f, E = t(q, i, f) * _ % f, C = t(E, e, f) * o % f, F = t(C, s, f) * p % f, S = t(F, a, f) * c % f, w = t(S, x, f);
18
- if (!l.eql(l.sqr(w), n))
19
- throw new Error("Cannot find square root");
20
- return w;
1
+ import { parseAccount as a } from "./index25.js";
2
+ import { maxUint256 as m } from "./index90.js";
3
+ import { InvalidAddressError as n } from "./index118.js";
4
+ import { FeeCapTooHighError as p, TipAboveFeeCapError as c } from "./index115.js";
5
+ import { FeeConflictError as u } from "./index107.js";
6
+ import { isAddress as s } from "./index145.js";
7
+ function E(d) {
8
+ const { account: i, gasPrice: f, maxFeePerGas: r, maxPriorityFeePerGas: e, to: o } = d, t = i ? a(i) : void 0;
9
+ if (t && !s(t.address))
10
+ throw new n({ address: t.address });
11
+ if (o && !s(o))
12
+ throw new n({ address: o });
13
+ if (typeof f < "u" && (typeof r < "u" || typeof e < "u"))
14
+ throw new u();
15
+ if (r && r > m)
16
+ throw new p({ maxFeePerGas: r });
17
+ if (e && r && e > r)
18
+ throw new c({ maxFeePerGas: r, maxPriorityFeePerGas: e });
21
19
  }
22
- const l = P(B.p, void 0, void 0, { sqrt: N }), V = G({
23
- ...B,
24
- Fp: l,
25
- lowS: !0,
26
- // Allow only low-S signatures by default in sign() and verify()
27
- endo: {
28
- // Endomorphism, see above
29
- beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),
30
- splitScalar: (n) => {
31
- const f = B.n, e = BigInt("0x3086d221a7d46bcde86c90e49284eb15"), a = -M * BigInt("0xe4437ed6010e88286f547fa90abfe4c3"), I = BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"), b = e, s = BigInt("0x100000000000000000000000000000000"), i = k(b * n, f), r = k(-a * n, f);
32
- let c = h(n - i * e - r * I, f), o = h(-i * a - r * b, f);
33
- const d = c > s, g = o > s;
34
- if (d && (c = f - c), g && (o = f - o), c > s || o > s)
35
- throw new Error("splitScalar: Endomorphism failed, k=" + n);
36
- return { k1neg: d, k1: c, k2neg: g, k2: o };
37
- }
38
- }
39
- }, v);
40
20
  export {
41
- V as secp256k1
21
+ E as assertRequest
42
22
  };