@coinbase/cdp-hooks 0.0.41 → 0.0.43

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 (273) hide show
  1. package/README.md +71 -0
  2. package/dist/esm/index.js +18 -16
  3. package/dist/esm/index10.js +56 -33
  4. package/dist/esm/index100.js +31 -32
  5. package/dist/esm/index101.js +32 -191
  6. package/dist/esm/index102.js +191 -6
  7. package/dist/esm/index103.js +9 -2
  8. package/dist/esm/index104.js +2 -13
  9. package/dist/esm/index105.js +11 -17
  10. package/dist/esm/index106.js +13 -22
  11. package/dist/esm/index107.js +27 -8
  12. package/dist/esm/index108.js +8 -55
  13. package/dist/esm/index109.js +50 -40
  14. package/dist/esm/index11.js +32 -3
  15. package/dist/esm/index110.js +45 -8
  16. package/dist/esm/index111.js +8 -7
  17. package/dist/esm/index112.js +7 -16
  18. package/dist/esm/index113.js +16 -18
  19. package/dist/esm/index114.js +18 -24
  20. package/dist/esm/index115.js +24 -16
  21. package/dist/esm/index116.js +16 -54
  22. package/dist/esm/index117.js +53 -10
  23. package/dist/esm/index118.js +11 -160
  24. package/dist/esm/index119.js +160 -21
  25. package/dist/esm/index12.js +3 -9
  26. package/dist/esm/index120.js +21 -127
  27. package/dist/esm/index121.js +127 -38
  28. package/dist/esm/index122.js +38 -6
  29. package/dist/esm/index123.js +6 -27
  30. package/dist/esm/index124.js +27 -191
  31. package/dist/esm/index125.js +192 -4
  32. package/dist/esm/index126.js +4 -65
  33. package/dist/esm/index127.js +65 -3
  34. package/dist/esm/index128.js +3 -21
  35. package/dist/esm/index129.js +19 -15
  36. package/dist/esm/index13.js +8 -67
  37. package/dist/esm/index130.js +16 -23
  38. package/dist/esm/index131.js +23 -11
  39. package/dist/esm/index132.js +11 -34
  40. package/dist/esm/index133.js +35 -3
  41. package/dist/esm/index134.js +3 -19
  42. package/dist/esm/index135.js +18 -27
  43. package/dist/esm/index136.js +25 -33
  44. package/dist/esm/index137.js +35 -7
  45. package/dist/esm/index138.js +7 -25
  46. package/dist/esm/index139.js +20 -23
  47. package/dist/esm/index14.js +66 -7
  48. package/dist/esm/index140.js +27 -63
  49. package/dist/esm/index141.js +64 -9
  50. package/dist/esm/index142.js +9 -33
  51. package/dist/esm/index143.js +33 -27
  52. package/dist/esm/index144.js +26 -23
  53. package/dist/esm/index145.js +24 -3
  54. package/dist/esm/index146.js +3 -14
  55. package/dist/esm/index147.js +14 -103
  56. package/dist/esm/index148.js +99 -60
  57. package/dist/esm/index149.js +64 -5
  58. package/dist/esm/index15.js +8 -27
  59. package/dist/esm/index150.js +5 -6
  60. package/dist/esm/index151.js +6 -27
  61. package/dist/esm/index152.js +27 -39
  62. package/dist/esm/index153.js +39 -13
  63. package/dist/esm/index154.js +13 -42
  64. package/dist/esm/index155.js +42 -5
  65. package/dist/esm/index156.js +5 -11
  66. package/dist/esm/index157.js +11 -19
  67. package/dist/esm/index158.js +18 -77
  68. package/dist/esm/index159.js +79 -2
  69. package/dist/esm/index16.js +25 -67
  70. package/dist/esm/index160.js +2 -38
  71. package/dist/esm/index161.js +32 -105
  72. package/dist/esm/index162.js +105 -43
  73. package/dist/esm/index163.js +47 -31
  74. package/dist/esm/index164.js +32 -8
  75. package/dist/esm/index165.js +8 -6
  76. package/dist/esm/index166.js +6 -6
  77. package/dist/esm/index167.js +6 -11
  78. package/dist/esm/index168.js +11 -10
  79. package/dist/esm/index169.js +10 -13
  80. package/dist/esm/index17.js +68 -17
  81. package/dist/esm/index170.js +12 -31
  82. package/dist/esm/index171.js +33 -5
  83. package/dist/esm/index172.js +5 -9
  84. package/dist/esm/index173.js +8 -19
  85. package/dist/esm/index174.js +19 -31
  86. package/dist/esm/index175.js +31 -20
  87. package/dist/esm/index176.js +20 -3
  88. package/dist/esm/index177.js +3 -17
  89. package/dist/esm/index178.js +17 -10
  90. package/dist/esm/index179.js +10 -21
  91. package/dist/esm/index18.js +17 -108
  92. package/dist/esm/index180.js +21 -22
  93. package/dist/esm/index181.js +22 -5
  94. package/dist/esm/index182.js +5 -5
  95. package/dist/esm/index183.js +5 -8
  96. package/dist/esm/index184.js +8 -104
  97. package/dist/esm/index185.js +105 -3
  98. package/dist/esm/index186.js +3 -19
  99. package/dist/esm/index187.js +17 -170
  100. package/dist/esm/index188.js +170 -16
  101. package/dist/esm/index189.js +18 -10
  102. package/dist/esm/index19.js +110 -60
  103. package/dist/esm/index190.js +10 -41
  104. package/dist/esm/index191.js +41 -2
  105. package/dist/esm/index192.js +2 -5
  106. package/dist/esm/index193.js +4 -10
  107. package/dist/esm/index194.js +9 -18
  108. package/dist/esm/index195.js +19 -7
  109. package/dist/esm/index196.js +7 -11
  110. package/dist/esm/index197.js +11 -66
  111. package/dist/esm/index198.js +65 -64
  112. package/dist/esm/index199.js +60 -180
  113. package/dist/esm/index20.js +56 -20
  114. package/dist/esm/index200.js +183 -20
  115. package/dist/esm/index201.js +21 -41
  116. package/dist/esm/index202.js +20 -54
  117. package/dist/esm/index203.js +54 -18
  118. package/dist/esm/index204.js +34 -10
  119. package/dist/esm/index205.js +10 -7
  120. package/dist/esm/index206.js +13 -7
  121. package/dist/esm/index207.js +7 -6
  122. package/dist/esm/index208.js +6 -36
  123. package/dist/esm/index209.js +35 -14
  124. package/dist/esm/index21.js +22 -38
  125. package/dist/esm/index210.js +15 -8
  126. package/dist/esm/index211.js +7 -11
  127. package/dist/esm/index212.js +12 -9
  128. package/dist/esm/index213.js +9 -16
  129. package/dist/esm/index214.js +15 -21
  130. package/dist/esm/index215.js +22 -30
  131. package/dist/esm/index216.js +31 -2
  132. package/dist/esm/index217.js +2 -14
  133. package/dist/esm/index218.js +13 -12
  134. package/dist/esm/index219.js +10 -45
  135. package/dist/esm/index22.js +37 -34
  136. package/dist/esm/index220.js +47 -9
  137. package/dist/esm/index221.js +8 -12
  138. package/dist/esm/index222.js +13 -14
  139. package/dist/esm/index223.js +14 -8
  140. package/dist/esm/index224.js +6 -13
  141. package/dist/esm/index225.js +15 -24
  142. package/dist/esm/index226.js +24 -11
  143. package/dist/esm/index227.js +10 -23
  144. package/dist/esm/index228.js +24 -51
  145. package/dist/esm/index229.js +51 -17
  146. package/dist/esm/index23.js +34 -55
  147. package/dist/esm/index230.js +17 -14
  148. package/dist/esm/index231.js +14 -11
  149. package/dist/esm/index232.js +11 -103
  150. package/dist/esm/index233.js +103 -6
  151. package/dist/esm/index234.js +5 -223
  152. package/dist/esm/index235.js +224 -6
  153. package/dist/esm/index236.js +7 -7
  154. package/dist/esm/index237.js +7 -27
  155. package/dist/esm/index238.js +25 -18
  156. package/dist/esm/index239.js +18 -145
  157. package/dist/esm/index24.js +55 -160
  158. package/dist/esm/index240.js +146 -12
  159. package/dist/esm/index241.js +12 -35
  160. package/dist/esm/index242.js +35 -41
  161. package/dist/esm/index243.js +41 -68
  162. package/dist/esm/index244.js +68 -3
  163. package/dist/esm/index245.js +3 -136
  164. package/dist/esm/index246.js +125 -144
  165. package/dist/esm/index247.js +155 -9
  166. package/dist/esm/index248.js +9 -16
  167. package/dist/esm/index249.js +16 -113
  168. package/dist/esm/index25.js +156 -32
  169. package/dist/esm/index250.js +95 -116
  170. package/dist/esm/index251.js +126 -70
  171. package/dist/esm/index252.js +79 -2
  172. package/dist/esm/index253.js +2 -699
  173. package/dist/esm/index254.js +685 -126
  174. package/dist/esm/index255.js +138 -41
  175. package/dist/esm/index256.js +40 -199
  176. package/dist/esm/index257.js +198 -62
  177. package/dist/esm/index258.js +65 -4
  178. package/dist/esm/index259.js +4 -40
  179. package/dist/esm/index26.js +39 -9
  180. package/dist/esm/index260.js +40 -7
  181. package/dist/esm/index261.js +7 -62
  182. package/dist/esm/index262.js +57 -72
  183. package/dist/esm/index263.js +78 -4
  184. package/dist/esm/index264.js +4 -195
  185. package/dist/esm/index265.js +183 -52
  186. package/dist/esm/index266.js +59 -40
  187. package/dist/esm/index267.js +44 -4
  188. package/dist/esm/index268.js +5 -5
  189. package/dist/esm/index269.js +5 -2
  190. package/dist/esm/index27.js +8 -30
  191. package/dist/esm/index270.js +2 -22
  192. package/dist/esm/index271.js +24 -0
  193. package/dist/esm/index28.js +21 -26
  194. package/dist/esm/index29.js +35 -8
  195. package/dist/esm/index3.js +2 -2
  196. package/dist/esm/index30.js +8 -28
  197. package/dist/esm/index31.js +27 -44
  198. package/dist/esm/index32.js +44 -86
  199. package/dist/esm/index33.js +83 -35
  200. package/dist/esm/index34.js +40 -8
  201. package/dist/esm/index35.js +7 -5
  202. package/dist/esm/index36.js +6 -16
  203. package/dist/esm/index37.js +16 -8
  204. package/dist/esm/index38.js +8 -13
  205. package/dist/esm/index39.js +13 -7
  206. package/dist/esm/index4.js +22 -33
  207. package/dist/esm/index40.js +7 -9
  208. package/dist/esm/index41.js +9 -16
  209. package/dist/esm/index42.js +16 -46
  210. package/dist/esm/index43.js +46 -13
  211. package/dist/esm/index44.js +13 -16
  212. package/dist/esm/index45.js +14 -11
  213. package/dist/esm/index46.js +13 -6
  214. package/dist/esm/index47.js +5 -34
  215. package/dist/esm/index48.js +34 -8
  216. package/dist/esm/index49.js +8 -7
  217. package/dist/esm/index5.js +33 -17
  218. package/dist/esm/index50.js +8 -25
  219. package/dist/esm/index51.js +25 -10
  220. package/dist/esm/index52.js +10 -14
  221. package/dist/esm/index53.js +14 -11
  222. package/dist/esm/index54.js +11 -116
  223. package/dist/esm/index55.js +114 -31
  224. package/dist/esm/index56.js +30 -76
  225. package/dist/esm/index57.js +78 -176
  226. package/dist/esm/index58.js +174 -41
  227. package/dist/esm/index59.js +44 -6
  228. package/dist/esm/index6.js +18 -12
  229. package/dist/esm/index60.js +5 -12
  230. package/dist/esm/index61.js +12 -12
  231. package/dist/esm/index62.js +13 -99
  232. package/dist/esm/index63.js +96 -69
  233. package/dist/esm/index64.js +61 -76
  234. package/dist/esm/index65.js +74 -135
  235. package/dist/esm/index66.js +108 -96
  236. package/dist/esm/index67.js +113 -45
  237. package/dist/esm/index68.js +68 -23
  238. package/dist/esm/index69.js +23 -105
  239. package/dist/esm/index7.js +12 -54
  240. package/dist/esm/index70.js +105 -6
  241. package/dist/esm/index71.js +6 -131
  242. package/dist/esm/index72.js +130 -274
  243. package/dist/esm/index73.js +276 -3
  244. package/dist/esm/index74.js +3 -4
  245. package/dist/esm/index75.js +4 -9
  246. package/dist/esm/index76.js +9 -2
  247. package/dist/esm/index77.js +2 -2
  248. package/dist/esm/index78.js +2 -3
  249. package/dist/esm/index79.js +3 -327
  250. package/dist/esm/index8.js +54 -58
  251. package/dist/esm/index80.js +324 -11
  252. package/dist/esm/index81.js +13 -4
  253. package/dist/esm/index82.js +4 -55
  254. package/dist/esm/index83.js +56 -2
  255. package/dist/esm/index84.js +2 -8
  256. package/dist/esm/index85.js +6 -213
  257. package/dist/esm/index86.js +215 -32
  258. package/dist/esm/index87.js +32 -22
  259. package/dist/esm/index88.js +21 -5
  260. package/dist/esm/index89.js +5 -73
  261. package/dist/esm/index9.js +58 -56
  262. package/dist/esm/index90.js +73 -5
  263. package/dist/esm/index91.js +4 -4
  264. package/dist/esm/index92.js +5 -35
  265. package/dist/esm/index93.js +29 -69
  266. package/dist/esm/index94.js +76 -3
  267. package/dist/esm/index95.js +3 -24
  268. package/dist/esm/index96.js +16 -444
  269. package/dist/esm/index97.js +444 -23
  270. package/dist/esm/index98.js +24 -20
  271. package/dist/esm/index99.js +18 -25
  272. package/dist/types/index.d.ts +18 -0
  273. package/package.json +5 -4
@@ -1,43 +1,91 @@
1
- import { Eip1559FeesNotSupportedError as f } from "./index95.js";
2
- import { hexToBigInt as u } from "./index142.js";
3
- import { getAction as s } from "./index206.js";
4
- import { getBlock as c } from "./index36.js";
5
- import { getGasPrice as y } from "./index46.js";
6
- async function h(e, o) {
7
- return p(e, o);
8
- }
9
- async function p(e, o) {
10
- const { block: i, chain: n = e.chain, request: m } = o || {};
1
+ import { parseAccount as R } from "./index12.js";
2
+ import { BaseError as _ } from "./index83.js";
3
+ import { recoverAuthorizationAddress as A } from "./index221.js";
4
+ import { numberToHex as x } from "./index110.js";
5
+ import { getEstimateGasError as E } from "./index222.js";
6
+ import { extract as N } from "./index219.js";
7
+ import { formatTransactionRequest as S } from "./index145.js";
8
+ import { serializeStateOverride as I } from "./index220.js";
9
+ import { assertRequest as V } from "./index158.js";
10
+ import { prepareTransactionRequest as C } from "./index70.js";
11
+ import { getBalance as j } from "./index35.js";
12
+ async function rt(t, s) {
13
+ const { account: u = t.account } = s, i = u ? R(u) : void 0;
11
14
  try {
12
- const r = n?.fees?.maxPriorityFeePerGas ?? n?.fees?.defaultPriorityFee;
13
- if (typeof r == "function") {
14
- const t = i || await s(e, c, "getBlock")({}), P = await r({
15
- block: t,
16
- client: e,
17
- request: m
15
+ let w = function(m) {
16
+ const { block: o, request: e, rpcStateOverride: a } = m;
17
+ return t.request({
18
+ method: "eth_estimateGas",
19
+ params: a ? [
20
+ e,
21
+ o ?? t.experimental_blockTag ?? "latest",
22
+ a
23
+ ] : o ? [e, o] : [e]
18
24
  });
19
- if (P === null)
20
- throw new Error();
21
- return P;
25
+ };
26
+ const { accessList: n, authorizationList: r, blobs: v, blobVersionedHashes: g, blockNumber: f, blockTag: k, data: d, gas: y, gasPrice: G, maxFeePerBlobGas: z, maxFeePerGas: P, maxPriorityFeePerGas: B, nonce: H, value: T, stateOverride: F, ...c } = await C(t, {
27
+ ...s,
28
+ parameters: (
29
+ // Some RPC Providers do not compute versioned hashes from blobs. We will need
30
+ // to compute them.
31
+ i?.type === "local" ? void 0 : ["blobVersionedHashes"]
32
+ )
33
+ }), p = (typeof f == "bigint" ? x(f) : void 0) || k, b = I(F), L = await (async () => {
34
+ if (c.to)
35
+ return c.to;
36
+ if (r && r.length > 0)
37
+ return await A({
38
+ authorization: r[0]
39
+ }).catch(() => {
40
+ throw new _("`to` is required. Could not infer from `authorizationList`");
41
+ });
42
+ })();
43
+ V(s);
44
+ const h = t.chain?.formatters?.transactionRequest?.format, l = (h || S)({
45
+ // Pick out extra data that might exist on the chain's transaction request type.
46
+ ...N(c, { format: h }),
47
+ from: i?.address,
48
+ accessList: n,
49
+ authorizationList: r,
50
+ blobs: v,
51
+ blobVersionedHashes: g,
52
+ data: d,
53
+ gas: y,
54
+ gasPrice: G,
55
+ maxFeePerBlobGas: z,
56
+ maxFeePerGas: P,
57
+ maxPriorityFeePerGas: B,
58
+ nonce: H,
59
+ to: L,
60
+ value: T
61
+ });
62
+ let q = BigInt(await w({ block: p, request: l, rpcStateOverride: b }));
63
+ if (r) {
64
+ const m = await j(t, { address: l.from }), o = await Promise.all(r.map(async (e) => {
65
+ const { address: a } = e, O = await w({
66
+ block: p,
67
+ request: {
68
+ authorizationList: void 0,
69
+ data: d,
70
+ from: i?.address,
71
+ to: a,
72
+ value: x(m)
73
+ },
74
+ rpcStateOverride: b
75
+ }).catch(() => 100000n);
76
+ return 2n * BigInt(O);
77
+ }));
78
+ q += o.reduce((e, a) => e + a, 0n);
22
79
  }
23
- if (typeof r < "u")
24
- return r;
25
- const a = await e.request({
26
- method: "eth_maxPriorityFeePerGas"
80
+ return q;
81
+ } catch (n) {
82
+ throw E(n, {
83
+ ...s,
84
+ account: i,
85
+ chain: t.chain
27
86
  });
28
- return u(a);
29
- } catch {
30
- const [r, a] = await Promise.all([
31
- i ? Promise.resolve(i) : s(e, c, "getBlock")({}),
32
- s(e, y, "getGasPrice")({})
33
- ]);
34
- if (typeof r.baseFeePerGas != "bigint")
35
- throw new f();
36
- const t = a - r.baseFeePerGas;
37
- return t < 0n ? 0n : t;
38
87
  }
39
88
  }
40
89
  export {
41
- h as estimateMaxPriorityFeePerGas,
42
- p as internal_estimateMaxPriorityFeePerGas
90
+ rt as estimateGas
43
91
  };
@@ -1,11 +1,43 @@
1
- import { numberToHex as c } from "./index109.js";
2
- async function m(e, { address: a, blockNumber: t, blockTag: n = e.experimental_blockTag ?? "latest" }) {
3
- const o = typeof t == "bigint" ? c(t) : void 0, r = await e.request({
4
- method: "eth_getBalance",
5
- params: [a, o || n]
6
- });
7
- return BigInt(r);
1
+ import { Eip1559FeesNotSupportedError as f } from "./index96.js";
2
+ import { hexToBigInt as u } from "./index143.js";
3
+ import { getAction as s } from "./index207.js";
4
+ import { getBlock as c } from "./index37.js";
5
+ import { getGasPrice as y } from "./index47.js";
6
+ async function h(e, o) {
7
+ return p(e, o);
8
+ }
9
+ async function p(e, o) {
10
+ const { block: i, chain: n = e.chain, request: m } = o || {};
11
+ try {
12
+ const r = n?.fees?.maxPriorityFeePerGas ?? n?.fees?.defaultPriorityFee;
13
+ if (typeof r == "function") {
14
+ const t = i || await s(e, c, "getBlock")({}), P = await r({
15
+ block: t,
16
+ client: e,
17
+ request: m
18
+ });
19
+ if (P === null)
20
+ throw new Error();
21
+ return P;
22
+ }
23
+ if (typeof r < "u")
24
+ return r;
25
+ const a = await e.request({
26
+ method: "eth_maxPriorityFeePerGas"
27
+ });
28
+ return u(a);
29
+ } catch {
30
+ const [r, a] = await Promise.all([
31
+ i ? Promise.resolve(i) : s(e, c, "getBlock")({}),
32
+ s(e, y, "getGasPrice")({})
33
+ ]);
34
+ if (typeof r.baseFeePerGas != "bigint")
35
+ throw new f();
36
+ const t = a - r.baseFeePerGas;
37
+ return t < 0n ? 0n : t;
38
+ }
8
39
  }
9
40
  export {
10
- m as getBalance
41
+ h as estimateMaxPriorityFeePerGas,
42
+ p as internal_estimateMaxPriorityFeePerGas
11
43
  };
@@ -1,9 +1,11 @@
1
- async function a(e) {
2
- const t = await e.request({
3
- method: "eth_blobBaseFee"
1
+ import { numberToHex as c } from "./index110.js";
2
+ async function m(e, { address: a, blockNumber: t, blockTag: n = e.experimental_blockTag ?? "latest" }) {
3
+ const o = typeof t == "bigint" ? c(t) : void 0, r = await e.request({
4
+ method: "eth_getBalance",
5
+ params: [a, o || n]
4
6
  });
5
- return BigInt(t);
7
+ return BigInt(r);
6
8
  }
7
9
  export {
8
- a as getBlobBaseFee
10
+ m as getBalance
9
11
  };
@@ -1,19 +1,9 @@
1
- import { BlockNotFoundError as f } from "./index84.js";
2
- import { numberToHex as u } from "./index109.js";
3
- import { formatBlock as d } from "./index114.js";
4
- async function B(e, { blockHash: t, blockNumber: r, blockTag: m = e.experimental_blockTag ?? "latest", includeTransactions: s } = {}) {
5
- const a = s ?? !1, n = r !== void 0 ? u(r) : void 0;
6
- let o = null;
7
- if (t ? o = await e.request({
8
- method: "eth_getBlockByHash",
9
- params: [t, a]
10
- }, { dedupe: !0 }) : o = await e.request({
11
- method: "eth_getBlockByNumber",
12
- params: [n || m, a]
13
- }, { dedupe: !!n }), !o)
14
- throw new f({ blockHash: t, blockNumber: r });
15
- return (e.chain?.formatters?.block?.format || d)(o);
1
+ async function a(e) {
2
+ const t = await e.request({
3
+ method: "eth_blobBaseFee"
4
+ });
5
+ return BigInt(t);
16
6
  }
17
7
  export {
18
- B as getBlock
8
+ a as getBlobBaseFee
19
9
  };
@@ -1,11 +1,19 @@
1
- import { withCache as t } from "./index174.js";
2
- const r = (e) => `blockNumber.${e}`;
3
- async function u(e, { cacheTime: c = e.cacheTime } = {}) {
4
- const o = await t(() => e.request({
5
- method: "eth_blockNumber"
6
- }), { cacheKey: r(e.uid), cacheTime: c });
7
- return BigInt(o);
1
+ import { BlockNotFoundError as f } from "./index85.js";
2
+ import { numberToHex as u } from "./index110.js";
3
+ import { formatBlock as d } from "./index115.js";
4
+ async function B(e, { blockHash: t, blockNumber: r, blockTag: m = e.experimental_blockTag ?? "latest", includeTransactions: s } = {}) {
5
+ const a = s ?? !1, n = r !== void 0 ? u(r) : void 0;
6
+ let o = null;
7
+ if (t ? o = await e.request({
8
+ method: "eth_getBlockByHash",
9
+ params: [t, a]
10
+ }, { dedupe: !0 }) : o = await e.request({
11
+ method: "eth_getBlockByNumber",
12
+ params: [n || m, a]
13
+ }, { dedupe: !!n }), !o)
14
+ throw new f({ blockHash: t, blockNumber: r });
15
+ return (e.chain?.formatters?.block?.format || d)(o);
8
16
  }
9
17
  export {
10
- u as getBlockNumber
18
+ B as getBlock
11
19
  };
@@ -1,16 +1,11 @@
1
- import { hexToNumber as u } from "./index142.js";
2
- import { numberToHex as m } from "./index109.js";
3
- async function i(t, { blockHash: o, blockNumber: n, blockTag: a = "latest" } = {}) {
4
- const r = n !== void 0 ? m(n) : void 0;
5
- let e;
6
- return o ? e = await t.request({
7
- method: "eth_getBlockTransactionCountByHash",
8
- params: [o]
9
- }, { dedupe: !0 }) : e = await t.request({
10
- method: "eth_getBlockTransactionCountByNumber",
11
- params: [r || a]
12
- }, { dedupe: !!r }), u(e);
1
+ import { withCache as t } from "./index175.js";
2
+ const r = (e) => `blockNumber.${e}`;
3
+ async function u(e, { cacheTime: c = e.cacheTime } = {}) {
4
+ const o = await t(() => e.request({
5
+ method: "eth_blockNumber"
6
+ }), { cacheKey: r(e.uid), cacheTime: c });
7
+ return BigInt(o);
13
8
  }
14
9
  export {
15
- i as getBlockTransactionCount
10
+ u as getBlockNumber
16
11
  };
@@ -1,10 +1,16 @@
1
- import { hexToNumber as n } from "./index142.js";
2
- async function o(e) {
3
- const t = await e.request({
4
- method: "eth_chainId"
5
- }, { dedupe: !0 });
6
- return n(t);
1
+ import { hexToNumber as u } from "./index143.js";
2
+ import { numberToHex as m } from "./index110.js";
3
+ async function i(t, { blockHash: o, blockNumber: n, blockTag: a = "latest" } = {}) {
4
+ const r = n !== void 0 ? m(n) : void 0;
5
+ let e;
6
+ return o ? e = await t.request({
7
+ method: "eth_getBlockTransactionCountByHash",
8
+ params: [o]
9
+ }, { dedupe: !0 }) : e = await t.request({
10
+ method: "eth_getBlockTransactionCountByNumber",
11
+ params: [r || a]
12
+ }, { dedupe: !!r }), u(e);
7
13
  }
8
14
  export {
9
- o as getChainId
15
+ i as getBlockTransactionCount
10
16
  };
@@ -1,36 +1,25 @@
1
- import { useEffect as f, useCallback as v } from "react";
2
- const d = (n) => {
3
- const { pollFn: l, shouldStop: a, interval: r = 2e3, enabled: o, onSuccess: c, onError: i } = n;
4
- return { startPolling: v(async () => {
5
- if (!o) return;
6
- let t, s = !1;
7
- const u = async () => {
8
- try {
9
- const e = await l();
10
- if (s) return;
11
- a(e) && (c(e), t && clearInterval(t));
12
- } catch (e) {
13
- if (s) return;
14
- i(e instanceof Error ? e : new Error(String(e))), t && clearInterval(t);
15
- }
16
- };
17
- return await u(), t = setInterval(u, r), () => {
18
- s = !0, t && clearInterval(t);
19
- };
20
- }, [l, a, r, o, c, i]) };
21
- }, I = (n, l) => {
22
- const { startPolling: a } = d(n);
23
- f(() => {
24
- if (!n.enabled) return;
25
- let r;
26
- return (async () => {
27
- r = await a();
28
- })(), () => {
29
- r && r();
30
- };
31
- }, l);
1
+ import { createSpendPermission as m } from "@coinbase/cdp-core";
2
+ import { useState as i } from "react";
3
+ import { useCurrentUser as p, useWaitForUserOperation as S, useEnforceAuthenticated as d } from "./index3.js";
4
+ const h = () => {
5
+ const { currentUser: r } = p(), [s, o] = i(
6
+ void 0
7
+ ), { data: c, error: a, status: u } = S(s);
8
+ return { createSpendPermission: d(
9
+ async (e) => {
10
+ if (e.evmSmartAccount && !r?.evmSmartAccounts?.includes(e.evmSmartAccount))
11
+ throw new Error("Current user does not have the specified EVM Smart Account");
12
+ if (!r?.evmSmartAccounts?.[0])
13
+ throw new Error("No EVM Smart Account found for the current user");
14
+ const t = e.evmSmartAccount ?? r.evmSmartAccounts[0], n = await m({ ...e, evmSmartAccount: t });
15
+ return o({
16
+ userOperationHash: n.userOperationHash,
17
+ evmSmartAccount: t,
18
+ network: e.network
19
+ }), n;
20
+ }
21
+ ), data: c, error: a, status: u };
32
22
  };
33
23
  export {
34
- I as useAutoPolling,
35
- d as usePolling
24
+ h as useCreateSpendPermission
36
25
  };
@@ -1,12 +1,10 @@
1
- import { numberToHex as u } from "./index109.js";
2
- async function i(o, { address: d, blockNumber: e, blockTag: r = "latest" }) {
3
- const n = e !== void 0 ? u(e) : void 0, t = await o.request({
4
- method: "eth_getCode",
5
- params: [d, n || r]
6
- }, { dedupe: !!n });
7
- if (t !== "0x")
8
- return t;
1
+ import { hexToNumber as n } from "./index143.js";
2
+ async function o(e) {
3
+ const t = await e.request({
4
+ method: "eth_chainId"
5
+ }, { dedupe: !0 });
6
+ return n(t);
9
7
  }
10
8
  export {
11
- i as getCode
9
+ o as getChainId
12
10
  };
@@ -1,19 +1,12 @@
1
- import { getAbiItem as p } from "./index89.js";
2
- import { getAction as v } from "./index206.js";
3
- import { getLogs as l } from "./index47.js";
4
- async function y(n, r) {
5
- const { abi: t, address: s, args: c, blockHash: i, eventName: e, fromBlock: m, toBlock: a, strict: f } = r, o = e ? p({ abi: t, name: e }) : void 0, g = o ? void 0 : t.filter((d) => d.type === "event");
6
- return v(n, l, "getLogs")({
7
- address: s,
8
- args: c,
9
- blockHash: i,
10
- event: o,
11
- events: g,
12
- fromBlock: m,
13
- toBlock: a,
14
- strict: f
15
- });
1
+ import { numberToHex as u } from "./index110.js";
2
+ async function i(o, { address: d, blockNumber: e, blockTag: r = "latest" }) {
3
+ const n = e !== void 0 ? u(e) : void 0, t = await o.request({
4
+ method: "eth_getCode",
5
+ params: [d, n || r]
6
+ }, { dedupe: !!n });
7
+ if (t !== "0x")
8
+ return t;
16
9
  }
17
10
  export {
18
- y as getContractEvents
11
+ i as getCode
19
12
  };
@@ -1,49 +1,19 @@
1
- import { Eip712DomainNotFoundError as u } from "./index222.js";
2
- import { getAction as d } from "./index206.js";
3
- import { readContract as f } from "./index55.js";
4
- async function E(a, o) {
5
- const { address: e, factory: r, factoryData: i } = o;
6
- try {
7
- const [n, t, s, c, m, p, y] = await d(a, f, "readContract")({
8
- abi: g,
9
- address: e,
10
- functionName: "eip712Domain",
11
- factory: r,
12
- factoryData: i
13
- });
14
- return {
15
- domain: {
16
- name: t,
17
- version: s,
18
- chainId: Number(c),
19
- verifyingContract: m,
20
- salt: p
21
- },
22
- extensions: y,
23
- fields: n
24
- };
25
- } catch (n) {
26
- const t = n;
27
- throw t.name === "ContractFunctionExecutionError" && t.cause.name === "ContractFunctionZeroDataError" ? new u({ address: e }) : t;
28
- }
1
+ import { getAbiItem as p } from "./index90.js";
2
+ import { getAction as v } from "./index207.js";
3
+ import { getLogs as l } from "./index48.js";
4
+ async function y(n, r) {
5
+ const { abi: t, address: s, args: c, blockHash: i, eventName: e, fromBlock: m, toBlock: a, strict: f } = r, o = e ? p({ abi: t, name: e }) : void 0, g = o ? void 0 : t.filter((d) => d.type === "event");
6
+ return v(n, l, "getLogs")({
7
+ address: s,
8
+ args: c,
9
+ blockHash: i,
10
+ event: o,
11
+ events: g,
12
+ fromBlock: m,
13
+ toBlock: a,
14
+ strict: f
15
+ });
29
16
  }
30
- const g = [
31
- {
32
- inputs: [],
33
- name: "eip712Domain",
34
- outputs: [
35
- { name: "fields", type: "bytes1" },
36
- { name: "name", type: "string" },
37
- { name: "version", type: "string" },
38
- { name: "chainId", type: "uint256" },
39
- { name: "verifyingContract", type: "address" },
40
- { name: "salt", type: "bytes32" },
41
- { name: "extensions", type: "uint256[]" }
42
- ],
43
- stateMutability: "view",
44
- type: "function"
45
- }
46
- ];
47
17
  export {
48
- E as getEip712Domain
18
+ y as getContractEvents
49
19
  };
@@ -1,16 +1,49 @@
1
- import { numberToHex as o } from "./index109.js";
2
- import { formatFeeHistory as f } from "./index223.js";
3
- async function u(r, { blockCount: i, blockNumber: e, blockTag: n = "latest", rewardPercentiles: s }) {
4
- const t = typeof e == "bigint" ? o(e) : void 0, a = await r.request({
5
- method: "eth_feeHistory",
6
- params: [
7
- o(i),
8
- t || n,
9
- s
10
- ]
11
- }, { dedupe: !!t });
12
- return f(a);
1
+ import { Eip712DomainNotFoundError as u } from "./index223.js";
2
+ import { getAction as d } from "./index207.js";
3
+ import { readContract as f } from "./index56.js";
4
+ async function E(a, o) {
5
+ const { address: e, factory: r, factoryData: i } = o;
6
+ try {
7
+ const [n, t, s, c, m, p, y] = await d(a, f, "readContract")({
8
+ abi: g,
9
+ address: e,
10
+ functionName: "eip712Domain",
11
+ factory: r,
12
+ factoryData: i
13
+ });
14
+ return {
15
+ domain: {
16
+ name: t,
17
+ version: s,
18
+ chainId: Number(c),
19
+ verifyingContract: m,
20
+ salt: p
21
+ },
22
+ extensions: y,
23
+ fields: n
24
+ };
25
+ } catch (n) {
26
+ const t = n;
27
+ throw t.name === "ContractFunctionExecutionError" && t.cause.name === "ContractFunctionZeroDataError" ? new u({ address: e }) : t;
28
+ }
13
29
  }
30
+ const g = [
31
+ {
32
+ inputs: [],
33
+ name: "eip712Domain",
34
+ outputs: [
35
+ { name: "fields", type: "bytes1" },
36
+ { name: "name", type: "string" },
37
+ { name: "version", type: "string" },
38
+ { name: "chainId", type: "uint256" },
39
+ { name: "verifyingContract", type: "address" },
40
+ { name: "salt", type: "bytes32" },
41
+ { name: "extensions", type: "uint256[]" }
42
+ ],
43
+ stateMutability: "view",
44
+ type: "function"
45
+ }
46
+ ];
14
47
  export {
15
- u as getFeeHistory
48
+ E as getEip712Domain
16
49
  };
@@ -1,19 +1,16 @@
1
- import { parseEventLogs as a } from "./index140.js";
2
- import { formatLog as i } from "./index117.js";
3
- async function m(e, { filter: t }) {
4
- const n = "strict" in t && t.strict, o = await t.request({
5
- method: "eth_getFilterChanges",
6
- params: [t.id]
7
- });
8
- if (typeof o[0] == "string")
9
- return o;
10
- const s = o.map((r) => i(r));
11
- return !("abi" in t) || !t.abi ? s : a({
12
- abi: t.abi,
13
- logs: s,
14
- strict: n
15
- });
1
+ import { numberToHex as o } from "./index110.js";
2
+ import { formatFeeHistory as f } from "./index224.js";
3
+ async function u(r, { blockCount: i, blockNumber: e, blockTag: n = "latest", rewardPercentiles: s }) {
4
+ const t = typeof e == "bigint" ? o(e) : void 0, a = await r.request({
5
+ method: "eth_feeHistory",
6
+ params: [
7
+ o(i),
8
+ t || n,
9
+ s
10
+ ]
11
+ }, { dedupe: !!t });
12
+ return f(a);
16
13
  }
17
14
  export {
18
- m as getFilterChanges
15
+ u as getFeeHistory
19
16
  };
@@ -1,16 +1,19 @@
1
- import { parseEventLogs as a } from "./index140.js";
2
- import { formatLog as e } from "./index117.js";
3
- async function c(g, { filter: t }) {
4
- const s = t.strict ?? !1, o = (await t.request({
5
- method: "eth_getFilterLogs",
1
+ import { parseEventLogs as a } from "./index141.js";
2
+ import { formatLog as i } from "./index118.js";
3
+ async function m(e, { filter: t }) {
4
+ const n = "strict" in t && t.strict, o = await t.request({
5
+ method: "eth_getFilterChanges",
6
6
  params: [t.id]
7
- })).map((r) => e(r));
8
- return t.abi ? a({
7
+ });
8
+ if (typeof o[0] == "string")
9
+ return o;
10
+ const s = o.map((r) => i(r));
11
+ return !("abi" in t) || !t.abi ? s : a({
9
12
  abi: t.abi,
10
- logs: o,
11
- strict: s
12
- }) : o;
13
+ logs: s,
14
+ strict: n
15
+ });
13
16
  }
14
17
  export {
15
- c as getFilterLogs
18
+ m as getFilterChanges
16
19
  };
@@ -1,9 +1,16 @@
1
- async function r(e) {
2
- const t = await e.request({
3
- method: "eth_gasPrice"
4
- });
5
- return BigInt(t);
1
+ import { parseEventLogs as a } from "./index141.js";
2
+ import { formatLog as e } from "./index118.js";
3
+ async function c(g, { filter: t }) {
4
+ const s = t.strict ?? !1, o = (await t.request({
5
+ method: "eth_getFilterLogs",
6
+ params: [t.id]
7
+ })).map((r) => e(r));
8
+ return t.abi ? a({
9
+ abi: t.abi,
10
+ logs: o,
11
+ strict: s
12
+ }) : o;
6
13
  }
7
14
  export {
8
- r as getGasPrice
15
+ c as getFilterLogs
9
16
  };