@coinbase/cdp-hooks 0.0.73 → 0.0.74

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 (303) hide show
  1. package/README.md +231 -2
  2. package/dist/esm/index.js +55 -48
  3. package/dist/esm/index10.js +1 -1
  4. package/dist/esm/index100.js +9 -3
  5. package/dist/esm/index101.js +2 -327
  6. package/dist/esm/index102.js +2 -14
  7. package/dist/esm/index103.js +3 -5
  8. package/dist/esm/index104.js +299 -28
  9. package/dist/esm/index105.js +14 -2
  10. package/dist/esm/index106.js +4 -7
  11. package/dist/esm/index107.js +29 -188
  12. package/dist/esm/index108.js +2 -32
  13. package/dist/esm/index109.js +7 -21
  14. package/dist/esm/index11.js +1 -1
  15. package/dist/esm/index110.js +214 -5
  16. package/dist/esm/index111.js +30 -72
  17. package/dist/esm/index112.js +21 -5
  18. package/dist/esm/index113.js +5 -5
  19. package/dist/esm/index114.js +69 -31
  20. package/dist/esm/index115.js +5 -75
  21. package/dist/esm/index116.js +6 -3
  22. package/dist/esm/index117.js +28 -16
  23. package/dist/esm/index118.js +57 -433
  24. package/dist/esm/index119.js +3 -31
  25. package/dist/esm/index12.js +1 -1
  26. package/dist/esm/index120.js +17 -20
  27. package/dist/esm/index121.js +439 -21
  28. package/dist/esm/index122.js +28 -32
  29. package/dist/esm/index123.js +18 -185
  30. package/dist/esm/index124.js +31 -6
  31. package/dist/esm/index125.js +35 -2
  32. package/dist/esm/index126.js +189 -8
  33. package/dist/esm/index127.js +7 -17
  34. package/dist/esm/index128.js +2 -28
  35. package/dist/esm/index129.js +12 -8
  36. package/dist/esm/index13.js +1 -1
  37. package/dist/esm/index130.js +15 -52
  38. package/dist/esm/index131.js +23 -41
  39. package/dist/esm/index132.js +8 -8
  40. package/dist/esm/index133.js +55 -7
  41. package/dist/esm/index134.js +44 -15
  42. package/dist/esm/index135.js +8 -18
  43. package/dist/esm/index136.js +7 -24
  44. package/dist/esm/index137.js +16 -16
  45. package/dist/esm/index138.js +17 -53
  46. package/dist/esm/index139.js +22 -9
  47. package/dist/esm/index14.js +1 -1
  48. package/dist/esm/index140.js +15 -159
  49. package/dist/esm/index141.js +53 -20
  50. package/dist/esm/index142.js +11 -127
  51. package/dist/esm/index143.js +153 -31
  52. package/dist/esm/index144.js +21 -6
  53. package/dist/esm/index145.js +127 -27
  54. package/dist/esm/index146.js +31 -184
  55. package/dist/esm/index147.js +7 -4
  56. package/dist/esm/index148.js +26 -63
  57. package/dist/esm/index149.js +192 -3
  58. package/dist/esm/index15.js +1 -1
  59. package/dist/esm/index150.js +4 -21
  60. package/dist/esm/index151.js +61 -13
  61. package/dist/esm/index152.js +3 -24
  62. package/dist/esm/index153.js +20 -11
  63. package/dist/esm/index154.js +15 -33
  64. package/dist/esm/index155.js +24 -3
  65. package/dist/esm/index156.js +11 -18
  66. package/dist/esm/index157.js +33 -26
  67. package/dist/esm/index158.js +3 -36
  68. package/dist/esm/index159.js +18 -7
  69. package/dist/esm/index16.js +1 -1
  70. package/dist/esm/index160.js +26 -24
  71. package/dist/esm/index161.js +34 -27
  72. package/dist/esm/index162.js +7 -64
  73. package/dist/esm/index163.js +25 -9
  74. package/dist/esm/index164.js +28 -33
  75. package/dist/esm/index165.js +64 -27
  76. package/dist/esm/index166.js +9 -24
  77. package/dist/esm/index167.js +33 -3
  78. package/dist/esm/index168.js +27 -14
  79. package/dist/esm/index169.js +24 -103
  80. package/dist/esm/index170.js +3 -64
  81. package/dist/esm/index171.js +14 -5
  82. package/dist/esm/index172.js +103 -6
  83. package/dist/esm/index173.js +62 -25
  84. package/dist/esm/index174.js +5 -38
  85. package/dist/esm/index175.js +6 -13
  86. package/dist/esm/index176.js +24 -39
  87. package/dist/esm/index177.js +38 -5
  88. package/dist/esm/index178.js +13 -11
  89. package/dist/esm/index179.js +42 -19
  90. package/dist/esm/index18.js +5 -5
  91. package/dist/esm/index180.js +5 -78
  92. package/dist/esm/index181.js +12 -2
  93. package/dist/esm/index182.js +19 -37
  94. package/dist/esm/index183.js +73 -105
  95. package/dist/esm/index184.js +2 -49
  96. package/dist/esm/index185.js +36 -31
  97. package/dist/esm/index186.js +110 -8
  98. package/dist/esm/index187.js +48 -6
  99. package/dist/esm/index188.js +32 -6
  100. package/dist/esm/index189.js +8 -11
  101. package/dist/esm/index19.js +5 -5
  102. package/dist/esm/index190.js +6 -10
  103. package/dist/esm/index191.js +6 -13
  104. package/dist/esm/index192.js +11 -32
  105. package/dist/esm/index193.js +11 -5
  106. package/dist/esm/index194.js +13 -8
  107. package/dist/esm/index195.js +30 -17
  108. package/dist/esm/index196.js +5 -32
  109. package/dist/esm/index197.js +8 -20
  110. package/dist/esm/index198.js +19 -3
  111. package/dist/esm/index199.js +31 -17
  112. package/dist/esm/index2.js +2 -2
  113. package/dist/esm/index20.js +5 -5
  114. package/dist/esm/index200.js +20 -10
  115. package/dist/esm/index201.js +3 -21
  116. package/dist/esm/index202.js +16 -21
  117. package/dist/esm/index203.js +10 -5
  118. package/dist/esm/index204.js +21 -5
  119. package/dist/esm/index205.js +22 -8
  120. package/dist/esm/index206.js +5 -104
  121. package/dist/esm/index207.js +6 -3
  122. package/dist/esm/index208.js +8 -18
  123. package/dist/esm/index209.js +99 -166
  124. package/dist/esm/index21.js +5 -5
  125. package/dist/esm/index210.js +3 -18
  126. package/dist/esm/index211.js +19 -10
  127. package/dist/esm/index212.js +171 -38
  128. package/dist/esm/index213.js +18 -2
  129. package/dist/esm/index214.js +10 -70
  130. package/dist/esm/index215.js +37 -33
  131. package/dist/esm/index216.js +2 -15
  132. package/dist/esm/index217.js +69 -40
  133. package/dist/esm/index218.js +35 -2
  134. package/dist/esm/index219.js +14 -4
  135. package/dist/esm/index22.js +7 -8
  136. package/dist/esm/index220.js +39 -9
  137. package/dist/esm/index221.js +2 -20
  138. package/dist/esm/index222.js +4 -7
  139. package/dist/esm/index223.js +9 -10
  140. package/dist/esm/index224.js +19 -66
  141. package/dist/esm/index225.js +7 -65
  142. package/dist/esm/index226.js +10 -184
  143. package/dist/esm/index227.js +66 -22
  144. package/dist/esm/index228.js +61 -38
  145. package/dist/esm/index229.js +178 -69
  146. package/dist/esm/index23.js +8 -34
  147. package/dist/esm/index230.js +21 -39
  148. package/dist/esm/index231.js +35 -9
  149. package/dist/esm/index232.js +70 -7
  150. package/dist/esm/index233.js +40 -7
  151. package/dist/esm/index234.js +16 -6
  152. package/dist/esm/index235.js +13 -36
  153. package/dist/esm/index236.js +7 -15
  154. package/dist/esm/index237.js +6 -8
  155. package/dist/esm/index238.js +35 -11
  156. package/dist/esm/index239.js +15 -9
  157. package/dist/esm/index24.js +57 -18
  158. package/dist/esm/index240.js +8 -16
  159. package/dist/esm/index241.js +12 -22
  160. package/dist/esm/index242.js +9 -30
  161. package/dist/esm/index243.js +17 -2
  162. package/dist/esm/index244.js +21 -12
  163. package/dist/esm/index245.js +30 -12
  164. package/dist/esm/index246.js +2 -48
  165. package/dist/esm/index247.js +12 -8
  166. package/dist/esm/index248.js +12 -13
  167. package/dist/esm/index249.js +46 -13
  168. package/dist/esm/index25.js +8 -11
  169. package/dist/esm/index250.js +9 -8
  170. package/dist/esm/index251.js +13 -15
  171. package/dist/esm/index252.js +14 -24
  172. package/dist/esm/index253.js +8 -11
  173. package/dist/esm/index254.js +14 -23
  174. package/dist/esm/index255.js +24 -51
  175. package/dist/esm/index256.js +11 -17
  176. package/dist/esm/index257.js +24 -14
  177. package/dist/esm/index258.js +51 -11
  178. package/dist/esm/index259.js +17 -103
  179. package/dist/esm/index26.js +34 -12
  180. package/dist/esm/index260.js +14 -5
  181. package/dist/esm/index261.js +11 -223
  182. package/dist/esm/index262.js +103 -6
  183. package/dist/esm/index263.js +6 -7
  184. package/dist/esm/index264.js +222 -25
  185. package/dist/esm/index265.js +6 -19
  186. package/dist/esm/index266.js +7 -146
  187. package/dist/esm/index267.js +26 -12
  188. package/dist/esm/index268.js +20 -36
  189. package/dist/esm/index269.js +145 -41
  190. package/dist/esm/index27.js +18 -54
  191. package/dist/esm/index270.js +13 -2
  192. package/dist/esm/index271.js +35 -68
  193. package/dist/esm/index272.js +41 -3
  194. package/dist/esm/index273.js +2 -137
  195. package/dist/esm/index274.js +68 -16
  196. package/dist/esm/index275.js +125 -144
  197. package/dist/esm/index276.js +3 -9
  198. package/dist/esm/index277.js +140 -98
  199. package/dist/esm/index278.js +9 -134
  200. package/dist/esm/index279.js +16 -78
  201. package/dist/esm/index28.js +11 -57
  202. package/dist/esm/index280.js +114 -2
  203. package/dist/esm/index281.js +124 -687
  204. package/dist/esm/index282.js +73 -133
  205. package/dist/esm/index283.js +2 -43
  206. package/dist/esm/index284.js +675 -178
  207. package/dist/esm/index285.js +138 -3
  208. package/dist/esm/index286.js +40 -63
  209. package/dist/esm/index287.js +200 -4
  210. package/dist/esm/index288.js +3 -40
  211. package/dist/esm/index289.js +65 -7
  212. package/dist/esm/index29.js +12 -56
  213. package/dist/esm/index290.js +4 -62
  214. package/dist/esm/index291.js +33 -70
  215. package/dist/esm/index292.js +8 -4
  216. package/dist/esm/index293.js +55 -187
  217. package/dist/esm/index294.js +61 -47
  218. package/dist/esm/index295.js +4 -45
  219. package/dist/esm/index296.js +194 -4
  220. package/dist/esm/index297.js +64 -5
  221. package/dist/esm/index298.js +45 -2
  222. package/dist/esm/index299.js +4 -21
  223. package/dist/esm/index3.js +1 -1
  224. package/dist/esm/index30.js +54 -5
  225. package/dist/esm/index300.js +7 -0
  226. package/dist/esm/index301.js +4 -0
  227. package/dist/esm/index302.js +24 -0
  228. package/dist/esm/index31.js +57 -47
  229. package/dist/esm/index32.js +56 -33
  230. package/dist/esm/index33.js +5 -4
  231. package/dist/esm/index34.js +46 -8
  232. package/dist/esm/index35.js +31 -67
  233. package/dist/esm/index36.js +3 -9
  234. package/dist/esm/index37.js +9 -28
  235. package/dist/esm/index38.js +68 -70
  236. package/dist/esm/index39.js +9 -19
  237. package/dist/esm/index40.js +26 -108
  238. package/dist/esm/index41.js +70 -60
  239. package/dist/esm/index42.js +19 -24
  240. package/dist/esm/index43.js +110 -40
  241. package/dist/esm/index44.js +57 -34
  242. package/dist/esm/index45.js +20 -54
  243. package/dist/esm/index46.js +37 -160
  244. package/dist/esm/index47.js +36 -38
  245. package/dist/esm/index48.js +58 -9
  246. package/dist/esm/index49.js +161 -29
  247. package/dist/esm/index5.js +3 -3
  248. package/dist/esm/index50.js +39 -36
  249. package/dist/esm/index51.js +7 -7
  250. package/dist/esm/index52.js +30 -28
  251. package/dist/esm/index53.js +34 -44
  252. package/dist/esm/index54.js +9 -88
  253. package/dist/esm/index55.js +26 -37
  254. package/dist/esm/index56.js +46 -8
  255. package/dist/esm/index57.js +88 -6
  256. package/dist/esm/index58.js +40 -16
  257. package/dist/esm/index59.js +8 -8
  258. package/dist/esm/index6.js +2 -2
  259. package/dist/esm/index60.js +6 -13
  260. package/dist/esm/index61.js +16 -7
  261. package/dist/esm/index62.js +8 -9
  262. package/dist/esm/index63.js +13 -16
  263. package/dist/esm/index64.js +7 -46
  264. package/dist/esm/index65.js +9 -13
  265. package/dist/esm/index66.js +15 -15
  266. package/dist/esm/index67.js +46 -13
  267. package/dist/esm/index68.js +13 -6
  268. package/dist/esm/index69.js +15 -34
  269. package/dist/esm/index7.js +1 -1
  270. package/dist/esm/index70.js +13 -9
  271. package/dist/esm/index71.js +5 -7
  272. package/dist/esm/index72.js +35 -25
  273. package/dist/esm/index73.js +9 -10
  274. package/dist/esm/index74.js +7 -13
  275. package/dist/esm/index75.js +25 -11
  276. package/dist/esm/index76.js +10 -116
  277. package/dist/esm/index77.js +13 -32
  278. package/dist/esm/index78.js +11 -79
  279. package/dist/esm/index79.js +108 -169
  280. package/dist/esm/index8.js +2 -2
  281. package/dist/esm/index80.js +26 -37
  282. package/dist/esm/index81.js +79 -6
  283. package/dist/esm/index82.js +177 -13
  284. package/dist/esm/index83.js +44 -13
  285. package/dist/esm/index84.js +6 -99
  286. package/dist/esm/index85.js +13 -72
  287. package/dist/esm/index86.js +13 -87
  288. package/dist/esm/index87.js +93 -142
  289. package/dist/esm/index88.js +65 -129
  290. package/dist/esm/index89.js +73 -54
  291. package/dist/esm/index9.js +1 -1
  292. package/dist/esm/index90.js +148 -23
  293. package/dist/esm/index91.js +133 -102
  294. package/dist/esm/index92.js +68 -6
  295. package/dist/esm/index93.js +23 -131
  296. package/dist/esm/index94.js +101 -271
  297. package/dist/esm/index95.js +7 -3
  298. package/dist/esm/index96.js +132 -4
  299. package/dist/esm/index97.js +276 -9
  300. package/dist/esm/index98.js +3 -2
  301. package/dist/esm/index99.js +4 -2
  302. package/dist/types/index.d.ts +33 -0
  303. package/package.json +3 -3
@@ -1,32 +1,34 @@
1
- import { parseAccount as u } from "./index33.js";
2
- import { encodeFunctionData as f } from "./index159.js";
3
- import { getContractError as p } from "./index202.js";
4
- import { getAction as g } from "./index233.js";
5
- import { estimateGas as G } from "./index54.js";
6
- async function A(s, i) {
7
- const { abi: a, address: o, args: r, functionName: c, dataSuffix: e, ...t } = i, m = f({
8
- abi: a,
9
- args: r,
10
- functionName: c
1
+ import { encodeEventTopics as l } from "./index161.js";
2
+ import { numberToHex as s } from "./index134.js";
3
+ import { createFilterRequestScope as u } from "./index237.js";
4
+ async function h(r, a) {
5
+ const { address: m, abi: n, args: i, eventName: e, fromBlock: t, strict: p, toBlock: o } = a, f = u(r, {
6
+ method: "eth_newFilter"
7
+ }), d = e ? l({
8
+ abi: n,
9
+ args: i,
10
+ eventName: e
11
+ }) : void 0, c = await r.request({
12
+ method: "eth_newFilter",
13
+ params: [
14
+ {
15
+ address: m,
16
+ fromBlock: typeof t == "bigint" ? s(t) : t,
17
+ toBlock: typeof o == "bigint" ? s(o) : o,
18
+ topics: d
19
+ }
20
+ ]
11
21
  });
12
- try {
13
- return await g(s, G, "estimateGas")({
14
- data: `${m}${e ? e.replace("0x", "") : ""}`,
15
- to: o,
16
- ...t
17
- });
18
- } catch (n) {
19
- const d = t.account ? u(t.account) : void 0;
20
- throw p(n, {
21
- abi: a,
22
- address: o,
23
- args: r,
24
- docsPath: "/docs/contract/estimateContractGas",
25
- functionName: c,
26
- sender: d?.address
27
- });
28
- }
22
+ return {
23
+ abi: n,
24
+ args: i,
25
+ eventName: e,
26
+ id: c,
27
+ request: f(c),
28
+ strict: !!p,
29
+ type: "event"
30
+ };
29
31
  }
30
32
  export {
31
- A as estimateContractGas
33
+ h as createContractEventFilter
32
34
  };
@@ -1,49 +1,39 @@
1
- import { BaseFeeScalarError as p, Eip1559FeesNotSupportedError as F } from "./index117.js";
2
- import { getAction as l } from "./index233.js";
3
- import { internal_estimateMaxPriorityFeePerGas as u } from "./index55.js";
4
- import { getBlock as G } from "./index58.js";
5
- import { getGasPrice as b } from "./index68.js";
6
- async function E(e, s) {
7
- return g(e, s);
8
- }
9
- async function g(e, s) {
10
- const { block: i, chain: a = e.chain, request: t, type: f = "eip1559" } = s || {}, o = await (async () => typeof a?.fees?.baseFeeMultiplier == "function" ? a.fees.baseFeeMultiplier({
11
- block: i,
12
- client: e,
13
- request: t
14
- }) : a?.fees?.baseFeeMultiplier ?? 1.2)();
15
- if (o < 1)
16
- throw new p();
17
- const m = 10 ** (o.toString().split(".")[1]?.length ?? 0), n = (r) => r * BigInt(Math.ceil(o * m)) / BigInt(m), c = i || await l(e, G, "getBlock")({});
18
- if (typeof a?.fees?.estimateFeesPerGas == "function") {
19
- const r = await a.fees.estimateFeesPerGas({
20
- block: i,
21
- client: e,
22
- multiply: n,
23
- request: t,
24
- type: f
25
- });
26
- if (r !== null)
27
- return r;
28
- }
29
- if (f === "eip1559") {
30
- if (typeof c.baseFeePerGas != "bigint")
31
- throw new F();
32
- const r = typeof t?.maxPriorityFeePerGas == "bigint" ? t.maxPriorityFeePerGas : await u(e, {
33
- block: c,
34
- chain: a,
35
- request: t
36
- }), P = n(c.baseFeePerGas);
37
- return {
38
- maxFeePerGas: t?.maxFeePerGas ?? P + r,
39
- maxPriorityFeePerGas: r
40
- };
41
- }
1
+ import { encodeEventTopics as b } from "./index161.js";
2
+ import { numberToHex as m } from "./index134.js";
3
+ import { createFilterRequestScope as h } from "./index237.js";
4
+ async function l(r, { address: p, args: a, event: e, events: c, fromBlock: n, strict: f, toBlock: i } = {}) {
5
+ const o = c ?? (e ? [e] : void 0), u = h(r, {
6
+ method: "eth_newFilter"
7
+ });
8
+ let t = [];
9
+ o && (t = [o.flatMap((d) => b({
10
+ abi: [d],
11
+ eventName: d.name,
12
+ args: a
13
+ }))], e && (t = t[0]));
14
+ const s = await r.request({
15
+ method: "eth_newFilter",
16
+ params: [
17
+ {
18
+ address: p,
19
+ fromBlock: typeof n == "bigint" ? m(n) : n,
20
+ toBlock: typeof i == "bigint" ? m(i) : i,
21
+ ...t.length ? { topics: t } : {}
22
+ }
23
+ ]
24
+ });
42
25
  return {
43
- gasPrice: t?.gasPrice ?? n(await l(e, b, "getGasPrice")({}))
26
+ abi: o,
27
+ args: a,
28
+ eventName: e ? e.name : void 0,
29
+ fromBlock: n,
30
+ id: s,
31
+ request: u(s),
32
+ strict: !!f,
33
+ toBlock: i,
34
+ type: "event"
44
35
  };
45
36
  }
46
37
  export {
47
- E as estimateFeesPerGas,
48
- g as internal_estimateFeesPerGas
38
+ l as createEventFilter
49
39
  };
@@ -1,91 +1,12 @@
1
- import { parseAccount as R } from "./index33.js";
2
- import { BaseError as _ } from "./index104.js";
3
- import { recoverAuthorizationAddress as A } from "./index247.js";
4
- import { numberToHex as x } from "./index131.js";
5
- import { getEstimateGasError as E } from "./index248.js";
6
- import { extract as N } from "./index245.js";
7
- import { formatTransactionRequest as S } from "./index166.js";
8
- import { serializeStateOverride as I } from "./index246.js";
9
- import { assertRequest as V } from "./index179.js";
10
- import { prepareTransactionRequest as C } from "./index91.js";
11
- import { getBalance as j } from "./index56.js";
12
- async function rt(t, s) {
13
- const { account: u = t.account } = s, i = u ? R(u) : void 0;
14
- try {
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]
24
- });
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);
79
- }
80
- return q;
81
- } catch (n) {
82
- throw E(n, {
83
- ...s,
84
- account: i,
85
- chain: t.chain
86
- });
87
- }
1
+ import { createFilterRequestScope as r } from "./index237.js";
2
+ async function a(e) {
3
+ const n = r(e, {
4
+ method: "eth_newPendingTransactionFilter"
5
+ }), t = await e.request({
6
+ method: "eth_newPendingTransactionFilter"
7
+ });
8
+ return { id: t, request: n(t), type: "transaction" };
88
9
  }
89
10
  export {
90
- rt as estimateGas
11
+ a as createPendingTransactionFilter
91
12
  };
@@ -1,43 +1,32 @@
1
- import { Eip1559FeesNotSupportedError as f } from "./index117.js";
2
- import { hexToBigInt as u } from "./index164.js";
3
- import { getAction as s } from "./index233.js";
4
- import { getBlock as c } from "./index58.js";
5
- import { getGasPrice as y } from "./index68.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 u } from "./index36.js";
2
+ import { encodeFunctionData as f } from "./index162.js";
3
+ import { getContractError as p } from "./index205.js";
4
+ import { getAction as g } from "./index236.js";
5
+ import { estimateGas as G } from "./index57.js";
6
+ async function A(s, i) {
7
+ const { abi: a, address: o, args: r, functionName: c, dataSuffix: e, ...t } = i, m = f({
8
+ abi: a,
9
+ args: r,
10
+ functionName: c
11
+ });
11
12
  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"
13
+ return await g(s, G, "estimateGas")({
14
+ data: `${m}${e ? e.replace("0x", "") : ""}`,
15
+ to: o,
16
+ ...t
17
+ });
18
+ } catch (n) {
19
+ const d = t.account ? u(t.account) : void 0;
20
+ throw p(n, {
21
+ abi: a,
22
+ address: o,
23
+ args: r,
24
+ docsPath: "/docs/contract/estimateContractGas",
25
+ functionName: c,
26
+ sender: d?.address
27
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
28
  }
39
29
  }
40
30
  export {
41
- h as estimateMaxPriorityFeePerGas,
42
- p as internal_estimateMaxPriorityFeePerGas
31
+ A as estimateContractGas
43
32
  };
@@ -1,11 +1,49 @@
1
- import { numberToHex as c } from "./index131.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 { BaseFeeScalarError as p, Eip1559FeesNotSupportedError as F } from "./index120.js";
2
+ import { getAction as l } from "./index236.js";
3
+ import { internal_estimateMaxPriorityFeePerGas as u } from "./index58.js";
4
+ import { getBlock as G } from "./index61.js";
5
+ import { getGasPrice as b } from "./index71.js";
6
+ async function E(e, s) {
7
+ return g(e, s);
8
+ }
9
+ async function g(e, s) {
10
+ const { block: i, chain: a = e.chain, request: t, type: f = "eip1559" } = s || {}, o = await (async () => typeof a?.fees?.baseFeeMultiplier == "function" ? a.fees.baseFeeMultiplier({
11
+ block: i,
12
+ client: e,
13
+ request: t
14
+ }) : a?.fees?.baseFeeMultiplier ?? 1.2)();
15
+ if (o < 1)
16
+ throw new p();
17
+ const m = 10 ** (o.toString().split(".")[1]?.length ?? 0), n = (r) => r * BigInt(Math.ceil(o * m)) / BigInt(m), c = i || await l(e, G, "getBlock")({});
18
+ if (typeof a?.fees?.estimateFeesPerGas == "function") {
19
+ const r = await a.fees.estimateFeesPerGas({
20
+ block: i,
21
+ client: e,
22
+ multiply: n,
23
+ request: t,
24
+ type: f
25
+ });
26
+ if (r !== null)
27
+ return r;
28
+ }
29
+ if (f === "eip1559") {
30
+ if (typeof c.baseFeePerGas != "bigint")
31
+ throw new F();
32
+ const r = typeof t?.maxPriorityFeePerGas == "bigint" ? t.maxPriorityFeePerGas : await u(e, {
33
+ block: c,
34
+ chain: a,
35
+ request: t
36
+ }), P = n(c.baseFeePerGas);
37
+ return {
38
+ maxFeePerGas: t?.maxFeePerGas ?? P + r,
39
+ maxPriorityFeePerGas: r
40
+ };
41
+ }
42
+ return {
43
+ gasPrice: t?.gasPrice ?? n(await l(e, b, "getGasPrice")({}))
44
+ };
8
45
  }
9
46
  export {
10
- m as getBalance
47
+ E as estimateFeesPerGas,
48
+ g as internal_estimateFeesPerGas
11
49
  };
@@ -1,9 +1,91 @@
1
- async function a(e) {
2
- const t = await e.request({
3
- method: "eth_blobBaseFee"
4
- });
5
- return BigInt(t);
1
+ import { parseAccount as R } from "./index36.js";
2
+ import { BaseError as _ } from "./index107.js";
3
+ import { recoverAuthorizationAddress as A } from "./index250.js";
4
+ import { numberToHex as x } from "./index134.js";
5
+ import { getEstimateGasError as E } from "./index251.js";
6
+ import { extract as N } from "./index248.js";
7
+ import { formatTransactionRequest as S } from "./index169.js";
8
+ import { serializeStateOverride as I } from "./index249.js";
9
+ import { assertRequest as V } from "./index182.js";
10
+ import { prepareTransactionRequest as C } from "./index94.js";
11
+ import { getBalance as j } from "./index59.js";
12
+ async function rt(t, s) {
13
+ const { account: u = t.account } = s, i = u ? R(u) : void 0;
14
+ try {
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]
24
+ });
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);
79
+ }
80
+ return q;
81
+ } catch (n) {
82
+ throw E(n, {
83
+ ...s,
84
+ account: i,
85
+ chain: t.chain
86
+ });
87
+ }
6
88
  }
7
89
  export {
8
- a as getBlobBaseFee
90
+ rt as estimateGas
9
91
  };
@@ -1,19 +1,43 @@
1
- import { BlockNotFoundError as f } from "./index106.js";
2
- import { numberToHex as u } from "./index131.js";
3
- import { formatBlock as d } from "./index136.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
+ import { Eip1559FeesNotSupportedError as f } from "./index120.js";
2
+ import { hexToBigInt as u } from "./index167.js";
3
+ import { getAction as s } from "./index236.js";
4
+ import { getBlock as c } from "./index61.js";
5
+ import { getGasPrice as y } from "./index71.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
+ }
16
39
  }
17
40
  export {
18
- B as getBlock
41
+ h as estimateMaxPriorityFeePerGas,
42
+ p as internal_estimateMaxPriorityFeePerGas
19
43
  };
@@ -1,11 +1,11 @@
1
- import { withCache as t } from "./index196.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 { numberToHex as c } from "./index134.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);
8
8
  }
9
9
  export {
10
- u as getBlockNumber
10
+ m as getBalance
11
11
  };
@@ -1,9 +1,9 @@
1
1
  import { createSpendPermission as i } from "@coinbase/cdp-core";
2
2
  import "./index2.js";
3
- import { useSendHookCallOnce as p } from "./index22.js";
3
+ import { useSendHookCallOnce as p } from "./index25.js";
4
4
  import { useState as d } from "react";
5
5
  import { useCurrentUser as S, useWaitForUserOperation as O, useEnforceAuthenticated as f } from "./index5.js";
6
- import { validateUserOwnsSmartAccount as v } from "./index25.js";
6
+ import { validateUserOwnsSmartAccount as v } from "./index28.js";
7
7
  const k = () => {
8
8
  p("use_create_spend_permission");
9
9
  const { currentUser: r } = S(), [n, o] = d(
@@ -1,16 +1,9 @@
1
- import { hexToNumber as u } from "./index164.js";
2
- import { numberToHex as m } from "./index131.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
+ async function a(e) {
2
+ const t = await e.request({
3
+ method: "eth_blobBaseFee"
4
+ });
5
+ return BigInt(t);
13
6
  }
14
7
  export {
15
- i as getBlockTransactionCount
8
+ a as getBlobBaseFee
16
9
  };
@@ -1,10 +1,19 @@
1
- import { hexToNumber as n } from "./index164.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 { BlockNotFoundError as f } from "./index109.js";
2
+ import { numberToHex as u } from "./index134.js";
3
+ import { formatBlock as d } from "./index139.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);
7
16
  }
8
17
  export {
9
- o as getChainId
18
+ B as getBlock
10
19
  };
@@ -1,12 +1,11 @@
1
- import { numberToHex as u } from "./index131.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 { withCache as t } from "./index199.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);
9
8
  }
10
9
  export {
11
- i as getCode
10
+ u as getBlockNumber
12
11
  };