@coinbase/cdp-hooks 0.0.65 → 0.0.67

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 (297) hide show
  1. package/README.md +152 -1
  2. package/dist/esm/index.js +24 -18
  3. package/dist/esm/index10.js +1 -1
  4. package/dist/esm/index100.js +29 -188
  5. package/dist/esm/index101.js +2 -32
  6. package/dist/esm/index102.js +7 -21
  7. package/dist/esm/index103.js +214 -5
  8. package/dist/esm/index104.js +30 -72
  9. package/dist/esm/index105.js +21 -5
  10. package/dist/esm/index106.js +5 -5
  11. package/dist/esm/index107.js +69 -31
  12. package/dist/esm/index108.js +5 -75
  13. package/dist/esm/index109.js +6 -3
  14. package/dist/esm/index11.js +1 -1
  15. package/dist/esm/index110.js +28 -16
  16. package/dist/esm/index111.js +57 -433
  17. package/dist/esm/index112.js +3 -31
  18. package/dist/esm/index113.js +17 -20
  19. package/dist/esm/index114.js +439 -21
  20. package/dist/esm/index115.js +28 -32
  21. package/dist/esm/index116.js +18 -185
  22. package/dist/esm/index117.js +31 -6
  23. package/dist/esm/index118.js +35 -2
  24. package/dist/esm/index119.js +189 -8
  25. package/dist/esm/index12.js +1 -1
  26. package/dist/esm/index120.js +7 -17
  27. package/dist/esm/index121.js +2 -28
  28. package/dist/esm/index122.js +12 -8
  29. package/dist/esm/index123.js +15 -52
  30. package/dist/esm/index124.js +23 -41
  31. package/dist/esm/index125.js +8 -8
  32. package/dist/esm/index126.js +55 -7
  33. package/dist/esm/index127.js +44 -15
  34. package/dist/esm/index128.js +8 -18
  35. package/dist/esm/index129.js +7 -24
  36. package/dist/esm/index13.js +1 -1
  37. package/dist/esm/index130.js +16 -16
  38. package/dist/esm/index131.js +17 -53
  39. package/dist/esm/index132.js +22 -9
  40. package/dist/esm/index133.js +15 -159
  41. package/dist/esm/index134.js +53 -20
  42. package/dist/esm/index135.js +11 -127
  43. package/dist/esm/index136.js +153 -31
  44. package/dist/esm/index137.js +21 -6
  45. package/dist/esm/index138.js +127 -27
  46. package/dist/esm/index139.js +31 -184
  47. package/dist/esm/index14.js +7 -4
  48. package/dist/esm/index140.js +7 -4
  49. package/dist/esm/index141.js +26 -63
  50. package/dist/esm/index142.js +192 -3
  51. package/dist/esm/index143.js +4 -21
  52. package/dist/esm/index144.js +61 -13
  53. package/dist/esm/index145.js +3 -24
  54. package/dist/esm/index146.js +20 -11
  55. package/dist/esm/index147.js +15 -33
  56. package/dist/esm/index148.js +24 -3
  57. package/dist/esm/index149.js +11 -18
  58. package/dist/esm/index15.js +7 -8
  59. package/dist/esm/index150.js +33 -26
  60. package/dist/esm/index151.js +3 -36
  61. package/dist/esm/index152.js +18 -7
  62. package/dist/esm/index153.js +26 -24
  63. package/dist/esm/index154.js +34 -27
  64. package/dist/esm/index155.js +7 -64
  65. package/dist/esm/index156.js +25 -9
  66. package/dist/esm/index157.js +28 -33
  67. package/dist/esm/index158.js +64 -27
  68. package/dist/esm/index159.js +9 -24
  69. package/dist/esm/index16.js +8 -34
  70. package/dist/esm/index160.js +33 -3
  71. package/dist/esm/index161.js +27 -14
  72. package/dist/esm/index162.js +24 -103
  73. package/dist/esm/index163.js +3 -64
  74. package/dist/esm/index164.js +14 -5
  75. package/dist/esm/index165.js +103 -6
  76. package/dist/esm/index166.js +62 -25
  77. package/dist/esm/index167.js +5 -38
  78. package/dist/esm/index168.js +6 -13
  79. package/dist/esm/index169.js +24 -39
  80. package/dist/esm/index17.js +5 -18
  81. package/dist/esm/index170.js +38 -5
  82. package/dist/esm/index171.js +13 -11
  83. package/dist/esm/index172.js +42 -19
  84. package/dist/esm/index173.js +5 -78
  85. package/dist/esm/index174.js +12 -2
  86. package/dist/esm/index175.js +19 -37
  87. package/dist/esm/index176.js +73 -105
  88. package/dist/esm/index177.js +2 -49
  89. package/dist/esm/index178.js +36 -31
  90. package/dist/esm/index179.js +110 -8
  91. package/dist/esm/index18.js +8 -11
  92. package/dist/esm/index180.js +48 -6
  93. package/dist/esm/index181.js +32 -6
  94. package/dist/esm/index182.js +8 -11
  95. package/dist/esm/index183.js +6 -10
  96. package/dist/esm/index184.js +6 -13
  97. package/dist/esm/index185.js +11 -32
  98. package/dist/esm/index186.js +11 -5
  99. package/dist/esm/index187.js +13 -8
  100. package/dist/esm/index188.js +30 -17
  101. package/dist/esm/index189.js +5 -32
  102. package/dist/esm/index19.js +34 -12
  103. package/dist/esm/index190.js +8 -20
  104. package/dist/esm/index191.js +19 -3
  105. package/dist/esm/index192.js +31 -17
  106. package/dist/esm/index193.js +20 -10
  107. package/dist/esm/index194.js +3 -21
  108. package/dist/esm/index195.js +16 -21
  109. package/dist/esm/index196.js +10 -5
  110. package/dist/esm/index197.js +21 -5
  111. package/dist/esm/index198.js +22 -8
  112. package/dist/esm/index199.js +5 -104
  113. package/dist/esm/index2.js +2 -2
  114. package/dist/esm/index20.js +18 -54
  115. package/dist/esm/index200.js +6 -3
  116. package/dist/esm/index201.js +8 -18
  117. package/dist/esm/index202.js +99 -166
  118. package/dist/esm/index203.js +3 -18
  119. package/dist/esm/index204.js +19 -10
  120. package/dist/esm/index205.js +171 -38
  121. package/dist/esm/index206.js +18 -2
  122. package/dist/esm/index207.js +10 -70
  123. package/dist/esm/index208.js +37 -33
  124. package/dist/esm/index209.js +2 -15
  125. package/dist/esm/index21.js +11 -57
  126. package/dist/esm/index210.js +69 -40
  127. package/dist/esm/index211.js +35 -2
  128. package/dist/esm/index212.js +14 -4
  129. package/dist/esm/index213.js +39 -9
  130. package/dist/esm/index214.js +2 -20
  131. package/dist/esm/index215.js +4 -7
  132. package/dist/esm/index216.js +9 -10
  133. package/dist/esm/index217.js +19 -66
  134. package/dist/esm/index218.js +7 -65
  135. package/dist/esm/index219.js +10 -184
  136. package/dist/esm/index22.js +12 -56
  137. package/dist/esm/index220.js +66 -22
  138. package/dist/esm/index221.js +61 -38
  139. package/dist/esm/index222.js +178 -69
  140. package/dist/esm/index223.js +21 -39
  141. package/dist/esm/index224.js +35 -9
  142. package/dist/esm/index225.js +70 -7
  143. package/dist/esm/index226.js +40 -7
  144. package/dist/esm/index227.js +16 -6
  145. package/dist/esm/index228.js +13 -36
  146. package/dist/esm/index229.js +7 -15
  147. package/dist/esm/index23.js +54 -5
  148. package/dist/esm/index230.js +6 -8
  149. package/dist/esm/index231.js +35 -11
  150. package/dist/esm/index232.js +15 -9
  151. package/dist/esm/index233.js +8 -16
  152. package/dist/esm/index234.js +12 -22
  153. package/dist/esm/index235.js +9 -30
  154. package/dist/esm/index236.js +17 -2
  155. package/dist/esm/index237.js +21 -12
  156. package/dist/esm/index238.js +30 -12
  157. package/dist/esm/index239.js +2 -48
  158. package/dist/esm/index24.js +57 -47
  159. package/dist/esm/index240.js +12 -8
  160. package/dist/esm/index241.js +12 -13
  161. package/dist/esm/index242.js +46 -13
  162. package/dist/esm/index243.js +9 -8
  163. package/dist/esm/index244.js +13 -15
  164. package/dist/esm/index245.js +14 -24
  165. package/dist/esm/index246.js +8 -11
  166. package/dist/esm/index247.js +14 -23
  167. package/dist/esm/index248.js +24 -51
  168. package/dist/esm/index249.js +11 -17
  169. package/dist/esm/index25.js +56 -33
  170. package/dist/esm/index250.js +24 -14
  171. package/dist/esm/index251.js +51 -11
  172. package/dist/esm/index252.js +17 -103
  173. package/dist/esm/index253.js +14 -5
  174. package/dist/esm/index254.js +11 -223
  175. package/dist/esm/index255.js +103 -6
  176. package/dist/esm/index256.js +6 -7
  177. package/dist/esm/index257.js +222 -25
  178. package/dist/esm/index258.js +6 -19
  179. package/dist/esm/index259.js +7 -146
  180. package/dist/esm/index26.js +5 -4
  181. package/dist/esm/index260.js +27 -2
  182. package/dist/esm/index261.js +19 -12
  183. package/dist/esm/index262.js +145 -35
  184. package/dist/esm/index263.js +12 -41
  185. package/dist/esm/index264.js +35 -68
  186. package/dist/esm/index265.js +41 -3
  187. package/dist/esm/index266.js +2 -137
  188. package/dist/esm/index267.js +69 -156
  189. package/dist/esm/index268.js +3 -9
  190. package/dist/esm/index269.js +136 -16
  191. package/dist/esm/index27.js +46 -8
  192. package/dist/esm/index270.js +140 -98
  193. package/dist/esm/index271.js +9 -134
  194. package/dist/esm/index272.js +16 -78
  195. package/dist/esm/index273.js +114 -2
  196. package/dist/esm/index274.js +124 -687
  197. package/dist/esm/index275.js +73 -133
  198. package/dist/esm/index276.js +2 -43
  199. package/dist/esm/index277.js +675 -178
  200. package/dist/esm/index278.js +138 -3
  201. package/dist/esm/index279.js +40 -63
  202. package/dist/esm/index28.js +31 -67
  203. package/dist/esm/index280.js +200 -4
  204. package/dist/esm/index281.js +3 -40
  205. package/dist/esm/index282.js +65 -7
  206. package/dist/esm/index283.js +4 -62
  207. package/dist/esm/index284.js +33 -70
  208. package/dist/esm/index285.js +8 -4
  209. package/dist/esm/index286.js +55 -187
  210. package/dist/esm/index287.js +61 -47
  211. package/dist/esm/index288.js +4 -45
  212. package/dist/esm/index289.js +194 -4
  213. package/dist/esm/index29.js +3 -9
  214. package/dist/esm/index290.js +64 -5
  215. package/dist/esm/index291.js +45 -2
  216. package/dist/esm/index292.js +4 -21
  217. package/dist/esm/index293.js +7 -0
  218. package/dist/esm/index294.js +4 -0
  219. package/dist/esm/index295.js +24 -0
  220. package/dist/esm/index3.js +1 -1
  221. package/dist/esm/index30.js +9 -28
  222. package/dist/esm/index31.js +68 -70
  223. package/dist/esm/index32.js +9 -19
  224. package/dist/esm/index33.js +26 -108
  225. package/dist/esm/index34.js +70 -60
  226. package/dist/esm/index35.js +19 -24
  227. package/dist/esm/index36.js +110 -40
  228. package/dist/esm/index37.js +57 -34
  229. package/dist/esm/index38.js +20 -54
  230. package/dist/esm/index39.js +37 -160
  231. package/dist/esm/index40.js +36 -38
  232. package/dist/esm/index41.js +58 -9
  233. package/dist/esm/index42.js +161 -29
  234. package/dist/esm/index43.js +39 -36
  235. package/dist/esm/index44.js +7 -7
  236. package/dist/esm/index45.js +30 -28
  237. package/dist/esm/index46.js +34 -44
  238. package/dist/esm/index47.js +9 -88
  239. package/dist/esm/index48.js +26 -37
  240. package/dist/esm/index49.js +46 -8
  241. package/dist/esm/index5.js +3 -3
  242. package/dist/esm/index50.js +88 -6
  243. package/dist/esm/index51.js +40 -16
  244. package/dist/esm/index52.js +8 -8
  245. package/dist/esm/index53.js +6 -13
  246. package/dist/esm/index54.js +16 -7
  247. package/dist/esm/index55.js +8 -9
  248. package/dist/esm/index56.js +13 -16
  249. package/dist/esm/index57.js +7 -46
  250. package/dist/esm/index58.js +9 -13
  251. package/dist/esm/index59.js +15 -15
  252. package/dist/esm/index6.js +2 -2
  253. package/dist/esm/index60.js +46 -13
  254. package/dist/esm/index61.js +13 -6
  255. package/dist/esm/index62.js +15 -34
  256. package/dist/esm/index63.js +13 -9
  257. package/dist/esm/index64.js +5 -7
  258. package/dist/esm/index65.js +35 -25
  259. package/dist/esm/index66.js +9 -10
  260. package/dist/esm/index67.js +7 -13
  261. package/dist/esm/index68.js +25 -11
  262. package/dist/esm/index69.js +10 -116
  263. package/dist/esm/index7.js +1 -1
  264. package/dist/esm/index70.js +13 -32
  265. package/dist/esm/index71.js +11 -79
  266. package/dist/esm/index72.js +108 -169
  267. package/dist/esm/index73.js +26 -37
  268. package/dist/esm/index74.js +79 -6
  269. package/dist/esm/index75.js +177 -13
  270. package/dist/esm/index76.js +44 -13
  271. package/dist/esm/index77.js +6 -99
  272. package/dist/esm/index78.js +13 -72
  273. package/dist/esm/index79.js +13 -87
  274. package/dist/esm/index8.js +2 -2
  275. package/dist/esm/index80.js +93 -142
  276. package/dist/esm/index81.js +65 -129
  277. package/dist/esm/index82.js +73 -54
  278. package/dist/esm/index83.js +148 -23
  279. package/dist/esm/index84.js +133 -102
  280. package/dist/esm/index85.js +68 -6
  281. package/dist/esm/index86.js +23 -131
  282. package/dist/esm/index87.js +101 -271
  283. package/dist/esm/index88.js +7 -3
  284. package/dist/esm/index89.js +132 -4
  285. package/dist/esm/index9.js +1 -1
  286. package/dist/esm/index90.js +276 -9
  287. package/dist/esm/index91.js +3 -2
  288. package/dist/esm/index92.js +4 -2
  289. package/dist/esm/index93.js +9 -3
  290. package/dist/esm/index94.js +2 -327
  291. package/dist/esm/index95.js +2 -14
  292. package/dist/esm/index96.js +3 -5
  293. package/dist/esm/index97.js +299 -28
  294. package/dist/esm/index98.js +14 -2
  295. package/dist/esm/index99.js +4 -7
  296. package/dist/types/index.d.ts +18 -0
  297. package/package.json +3 -3
@@ -1,30 +1,67 @@
1
- import { isHex as i } from "./index160.js";
2
- import { size as b } from "./index96.js";
3
- import { hexToBigInt as n, hexToNumber as d } from "./index157.js";
4
- import { toHex as c } from "./index124.js";
5
- async function R({ hash: r, signature: e }) {
6
- const u = i(r) ? r : c(r), { secp256k1: t } = await import("./index167.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);
1
+ import { BytesSizeMismatchError as I } from "./index97.js";
2
+ import { InvalidAddressError as v } from "./index122.js";
3
+ import { InvalidDomainError as w, InvalidPrimaryTypeError as E, InvalidStructTypeError as z } from "./index124.js";
4
+ import { isAddress as D } from "./index149.js";
5
+ import { size as c } from "./index99.js";
6
+ import { numberToHex as T } from "./index127.js";
7
+ import { integerRegex as x, bytesRegex as P } from "./index151.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));
11
32
  }
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)}`;
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 });
18
44
  }
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");
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 });
27
63
  }
28
64
  export {
29
- R as recoverPublicKey
65
+ j as getTypesForEIP712Domain,
66
+ C as validateTypedData
30
67
  };
@@ -1,41 +1,8 @@
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
- const B = {
5
- p: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),
6
- n: BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),
7
- h: BigInt(1),
8
- a: BigInt(0),
9
- b: BigInt(7),
10
- Gx: BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),
11
- Gy: BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")
12
- };
13
- BigInt(0);
14
- const M = BigInt(1), x = BigInt(2), k = (n, f) => (n + f / x) / f;
15
- function N(n) {
16
- 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);
17
- if (!l.eql(l.sqr(w), n))
18
- throw new Error("Cannot find square root");
19
- return w;
1
+ import { publicKeyToAddress as o } from "./index168.js";
2
+ import { recoverPublicKey as c } from "./index169.js";
3
+ async function s({ hash: r, signature: e }) {
4
+ return o(await c({ hash: r, signature: e }));
20
5
  }
21
- const l = P(B.p, void 0, void 0, { sqrt: N }), V = G({
22
- ...B,
23
- Fp: l,
24
- lowS: !0,
25
- // Allow only low-S signatures by default in sign() and verify()
26
- endo: {
27
- // Endomorphism, see above
28
- beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),
29
- splitScalar: (n) => {
30
- 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);
31
- let c = h(n - i * e - r * I, f), o = h(-i * a - r * b, f);
32
- const d = c > s, g = o > s;
33
- if (d && (c = f - c), g && (o = f - o), c > s || o > s)
34
- throw new Error("splitScalar: Endomorphism failed, k=" + n);
35
- return { k1neg: d, k1: c, k2neg: g, k2: o };
36
- }
37
- }
38
- }, v);
39
6
  export {
40
- V as secp256k1
7
+ s as recoverAddress
41
8
  };
@@ -1,16 +1,9 @@
1
- import { secp256k1 as f } from "./index167.js";
2
- import { hexToBigInt as t } from "./index157.js";
3
- import { hexToBytes as m } from "./index123.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);
1
+ import { checksumAddress as e } from "./index137.js";
2
+ import { keccak256 as o } from "./index128.js";
3
+ function d(r) {
4
+ const s = o(`0x${r.substring(4)}`).substring(26);
5
+ return e(`0x${s}`);
13
6
  }
14
7
  export {
15
- s as serializeSignature
8
+ d as publicKeyToAddress
16
9
  };
@@ -1,45 +1,30 @@
1
- import { BaseError as l } from "./index97.js";
2
- import { createCursor as r } from "./index135.js";
3
- import { hexToBytes as g } from "./index123.js";
4
- import { bytesToHex as u } from "./index124.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));
1
+ import { isHex as i } from "./index163.js";
2
+ import { size as b } from "./index99.js";
3
+ import { hexToBigInt as n, hexToNumber as d } from "./index160.js";
4
+ import { toHex as c } from "./index127.js";
5
+ async function R({ hash: r, signature: e }) {
6
+ const u = i(r) ? r : c(r), { secp256k1: t } = await import("./index170.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);
29
11
  }
30
- };
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)}`;
31
18
  }
32
- function o(n) {
33
- if (n < 2 ** 8)
19
+ function s(r) {
20
+ if (r === 0 || r === 1)
21
+ return r;
22
+ if (r === 27)
23
+ return 0;
24
+ if (r === 28)
34
25
  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.");
26
+ throw new Error("Invalid yParityOrV value");
42
27
  }
43
28
  export {
44
- m as toRlp
29
+ R as recoverPublicKey
45
30
  };
@@ -1,20 +1,7 @@
1
- import { createPublicClient as o } from "./index19.js";
2
- import { base as e } from "./index20.js";
3
- import { http as i } from "./index21.js";
4
- import { baseSepolia as p } from "./index22.js";
5
- const b = (r, t) => {
6
- if (r === "base")
7
- return o({
8
- chain: e,
9
- transport: t.transports?.[e.id] ?? i()
10
- });
11
- if (r === "base-sepolia")
12
- return o({
13
- chain: p,
14
- transport: t.transports?.[p.id] ?? i()
15
- });
16
- throw new Error(`Unsupported network: ${r}`);
17
- };
1
+ import { fetchWithX402 as r } from "@coinbase/cdp-core";
2
+ function o(t = {}) {
3
+ return r(t);
4
+ }
18
5
  export {
19
- b as getPublicClient
6
+ o as useX402
20
7
  };
@@ -1,8 +1,41 @@
1
- import { erc6492MagicBytes as e } from "./index92.js";
2
- import { sliceHex as i } from "./index136.js";
3
- function c(r) {
4
- return i(r, -32) === e;
1
+ import { sha256 as v } from "./index255.js";
2
+ import { createCurve as G } from "./index256.js";
3
+ import { Field as P, mod as h, pow2 as t } from "./index257.js";
4
+ const B = {
5
+ p: BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),
6
+ n: BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),
7
+ h: BigInt(1),
8
+ a: BigInt(0),
9
+ b: BigInt(7),
10
+ Gx: BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),
11
+ Gy: BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")
12
+ };
13
+ BigInt(0);
14
+ const M = BigInt(1), x = BigInt(2), k = (n, f) => (n + f / x) / f;
15
+ function N(n) {
16
+ 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);
17
+ if (!l.eql(l.sqr(w), n))
18
+ throw new Error("Cannot find square root");
19
+ return w;
5
20
  }
21
+ const l = P(B.p, void 0, void 0, { sqrt: N }), V = G({
22
+ ...B,
23
+ Fp: l,
24
+ lowS: !0,
25
+ // Allow only low-S signatures by default in sign() and verify()
26
+ endo: {
27
+ // Endomorphism, see above
28
+ beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),
29
+ splitScalar: (n) => {
30
+ 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);
31
+ let c = h(n - i * e - r * I, f), o = h(-i * a - r * b, f);
32
+ const d = c > s, g = o > s;
33
+ if (d && (c = f - c), g && (o = f - o), c > s || o > s)
34
+ throw new Error("splitScalar: Endomorphism failed, k=" + n);
35
+ return { k1neg: d, k1: c, k2neg: g, k2: o };
36
+ }
37
+ }
38
+ }, v);
6
39
  export {
7
- c as isErc6492Signature
40
+ V as secp256k1
8
41
  };
@@ -1,14 +1,16 @@
1
- import { erc6492MagicBytes as a } from "./index92.js";
2
- import { encodeAbiParameters as n } from "./index139.js";
3
- import { concatHex as c } from "./index128.js";
4
- import { hexToBytes as m } from "./index123.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);
1
+ import { secp256k1 as f } from "./index170.js";
2
+ import { hexToBigInt as t } from "./index160.js";
3
+ import { hexToBytes as m } from "./index126.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);
11
13
  }
12
14
  export {
13
- u as serializeErc6492Signature
15
+ s as serializeSignature
14
16
  };
@@ -1,22 +1,45 @@
1
- import { parseAccount as a } from "./index26.js";
2
- import { maxUint256 as m } from "./index91.js";
3
- import { InvalidAddressError as n } from "./index119.js";
4
- import { FeeCapTooHighError as p, TipAboveFeeCapError as c } from "./index116.js";
5
- import { FeeConflictError as u } from "./index108.js";
6
- import { isAddress as s } from "./index146.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 });
1
+ import { BaseError as l } from "./index100.js";
2
+ import { createCursor as r } from "./index138.js";
3
+ import { hexToBytes as g } from "./index126.js";
4
+ import { bytesToHex as u } from "./index127.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.");
19
42
  }
20
43
  export {
21
- E as assertRequest
44
+ m as toRlp
22
45
  };
@@ -1,81 +1,8 @@
1
- import { versionedHashVersionKzg as c } from "./index174.js";
2
- import { maxUint256 as m } from "./index91.js";
3
- import { InvalidAddressError as s } from "./index119.js";
4
- import { BaseError as h } from "./index97.js";
5
- import { EmptyBlobError as P, InvalidVersionedHashSizeError as p, InvalidVersionedHashVersionError as x } from "./index175.js";
6
- import { InvalidChainIdError as n } from "./index112.js";
7
- import { FeeCapTooHighError as w, TipAboveFeeCapError as E } from "./index116.js";
8
- import { isAddress as f } from "./index146.js";
9
- import { size as F } from "./index96.js";
10
- import { slice as I } from "./index136.js";
11
- import { hexToNumber as G } from "./index157.js";
12
- function C(t) {
13
- const { authorizationList: e } = t;
14
- if (e)
15
- for (const o of e) {
16
- const { chainId: r } = o, i = o.address;
17
- if (!f(i))
18
- throw new s({ address: i });
19
- if (r < 0)
20
- throw new n({ chainId: r });
21
- }
22
- d(t);
23
- }
24
- function L(t) {
25
- const { blobVersionedHashes: e } = t;
26
- if (e) {
27
- if (e.length === 0)
28
- throw new P();
29
- for (const o of e) {
30
- const r = F(o), i = G(I(o, 0, 1));
31
- if (r !== 32)
32
- throw new p({ hash: o, size: r });
33
- if (i !== c)
34
- throw new x({
35
- hash: o,
36
- version: i
37
- });
38
- }
39
- }
40
- d(t);
41
- }
42
- function d(t) {
43
- const { chainId: e, maxPriorityFeePerGas: o, maxFeePerGas: r, to: i } = t;
44
- if (e <= 0)
45
- throw new n({ chainId: e });
46
- if (i && !f(i))
47
- throw new s({ address: i });
48
- if (r && r > m)
49
- throw new w({ maxFeePerGas: r });
50
- if (o && r && o > r)
51
- throw new E({ maxFeePerGas: r, maxPriorityFeePerGas: o });
52
- }
53
- function B(t) {
54
- const { chainId: e, maxPriorityFeePerGas: o, gasPrice: r, maxFeePerGas: i, to: a } = t;
55
- if (e <= 0)
56
- throw new n({ chainId: e });
57
- if (a && !f(a))
58
- throw new s({ address: a });
59
- if (o || i)
60
- throw new h("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");
61
- if (r && r > m)
62
- throw new w({ maxFeePerGas: r });
63
- }
64
- function K(t) {
65
- const { chainId: e, maxPriorityFeePerGas: o, gasPrice: r, maxFeePerGas: i, to: a } = t;
66
- if (a && !f(a))
67
- throw new s({ address: a });
68
- if (typeof e < "u" && e <= 0)
69
- throw new n({ chainId: e });
70
- if (o || i)
71
- throw new h("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");
72
- if (r && r > m)
73
- throw new w({ maxFeePerGas: r });
1
+ import { erc6492MagicBytes as e } from "./index95.js";
2
+ import { sliceHex as i } from "./index139.js";
3
+ function c(r) {
4
+ return i(r, -32) === e;
74
5
  }
75
6
  export {
76
- d as assertTransactionEIP1559,
77
- B as assertTransactionEIP2930,
78
- L as assertTransactionEIP4844,
79
- C as assertTransactionEIP7702,
80
- K as assertTransactionLegacy
7
+ c as isErc6492Signature
81
8
  };
@@ -1,4 +1,14 @@
1
- const e = 1;
1
+ import { erc6492MagicBytes as a } from "./index95.js";
2
+ import { encodeAbiParameters as n } from "./index142.js";
3
+ import { concatHex as c } from "./index131.js";
4
+ import { hexToBytes as m } from "./index126.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);
11
+ }
2
12
  export {
3
- e as versionedHashVersionKzg
13
+ u as serializeErc6492Signature
4
14
  };
@@ -1,40 +1,22 @@
1
- import { versionedHashVersionKzg as a } from "./index174.js";
2
- import { BaseError as s } from "./index97.js";
3
- class t extends s {
4
- constructor({ maxSize: e, size: r }) {
5
- super("Blob size is too large.", {
6
- metaMessages: [`Max: ${e} bytes`, `Given: ${r} bytes`],
7
- name: "BlobSizeTooLargeError"
8
- });
9
- }
10
- }
11
- class d extends s {
12
- constructor() {
13
- super("Blob data must not be empty.", { name: "EmptyBlobError" });
14
- }
15
- }
16
- class l extends s {
17
- constructor({ hash: e, size: r }) {
18
- super(`Versioned hash "${e}" size is invalid.`, {
19
- metaMessages: ["Expected: 32", `Received: ${r}`],
20
- name: "InvalidVersionedHashSizeError"
21
- });
22
- }
23
- }
24
- class c extends s {
25
- constructor({ hash: e, version: r }) {
26
- super(`Versioned hash "${e}" version is invalid.`, {
27
- metaMessages: [
28
- `Expected: ${a}`,
29
- `Received: ${r}`
30
- ],
31
- name: "InvalidVersionedHashVersionError"
32
- });
33
- }
1
+ import { parseAccount as a } from "./index29.js";
2
+ import { maxUint256 as m } from "./index94.js";
3
+ import { InvalidAddressError as n } from "./index122.js";
4
+ import { FeeCapTooHighError as p, TipAboveFeeCapError as c } from "./index119.js";
5
+ import { FeeConflictError as u } from "./index111.js";
6
+ import { isAddress as s } from "./index149.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 });
34
19
  }
35
20
  export {
36
- t as BlobSizeTooLargeError,
37
- d as EmptyBlobError,
38
- l as InvalidVersionedHashSizeError,
39
- c as InvalidVersionedHashVersionError
21
+ E as assertRequest
40
22
  };