@coinbase/cdp-hooks 0.0.84 → 0.0.86

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 (340) hide show
  1. package/dist/esm/index.js +120 -89
  2. package/dist/esm/index10.js +4 -11
  3. package/dist/esm/index100.js +16 -105
  4. package/dist/esm/index101.js +8 -6
  5. package/dist/esm/index102.js +13 -131
  6. package/dist/esm/index103.js +8 -276
  7. package/dist/esm/index104.js +10 -3
  8. package/dist/esm/index105.js +17 -4
  9. package/dist/esm/index106.js +47 -9
  10. package/dist/esm/index107.js +14 -2
  11. package/dist/esm/index108.js +17 -2
  12. package/dist/esm/index109.js +14 -3
  13. package/dist/esm/index11.js +4 -6
  14. package/dist/esm/index110.js +6 -326
  15. package/dist/esm/index111.js +35 -13
  16. package/dist/esm/index112.js +9 -4
  17. package/dist/esm/index113.js +8 -55
  18. package/dist/esm/index114.js +26 -2
  19. package/dist/esm/index115.js +10 -7
  20. package/dist/esm/index116.js +14 -214
  21. package/dist/esm/index117.js +12 -32
  22. package/dist/esm/index118.js +115 -20
  23. package/dist/esm/index119.js +33 -5
  24. package/dist/esm/index12.js +9 -6
  25. package/dist/esm/index120.js +77 -71
  26. package/dist/esm/index121.js +177 -5
  27. package/dist/esm/index122.js +44 -5
  28. package/dist/esm/index123.js +6 -35
  29. package/dist/esm/index124.js +13 -75
  30. package/dist/esm/index125.js +14 -3
  31. package/dist/esm/index126.js +98 -22
  32. package/dist/esm/index127.js +72 -451
  33. package/dist/esm/index128.js +87 -30
  34. package/dist/esm/index129.js +147 -25
  35. package/dist/esm/index13.js +7 -11
  36. package/dist/esm/index130.js +135 -32
  37. package/dist/esm/index131.js +67 -33
  38. package/dist/esm/index132.js +23 -193
  39. package/dist/esm/index133.js +104 -7
  40. package/dist/esm/index134.js +7 -2
  41. package/dist/esm/index135.js +131 -12
  42. package/dist/esm/index136.js +276 -19
  43. package/dist/esm/index137.js +3 -28
  44. package/dist/esm/index138.js +4 -9
  45. package/dist/esm/index139.js +8 -55
  46. package/dist/esm/index14.js +8 -6
  47. package/dist/esm/index140.js +2 -46
  48. package/dist/esm/index141.js +2 -9
  49. package/dist/esm/index142.js +3 -8
  50. package/dist/esm/index143.js +326 -16
  51. package/dist/esm/index144.js +11 -16
  52. package/dist/esm/index145.js +4 -24
  53. package/dist/esm/index146.js +55 -16
  54. package/dist/esm/index147.js +2 -55
  55. package/dist/esm/index148.js +7 -11
  56. package/dist/esm/index149.js +202 -148
  57. package/dist/esm/index15.js +8 -6
  58. package/dist/esm/index150.js +32 -22
  59. package/dist/esm/index151.js +21 -127
  60. package/dist/esm/index152.js +5 -38
  61. package/dist/esm/index153.js +73 -6
  62. package/dist/esm/index154.js +5 -27
  63. package/dist/esm/index155.js +5 -191
  64. package/dist/esm/index156.js +36 -4
  65. package/dist/esm/index157.js +71 -60
  66. package/dist/esm/index158.js +3 -3
  67. package/dist/esm/index159.js +17 -14
  68. package/dist/esm/index16.js +5 -6
  69. package/dist/esm/index160.js +451 -16
  70. package/dist/esm/index161.js +29 -22
  71. package/dist/esm/index162.js +26 -11
  72. package/dist/esm/index163.js +29 -30
  73. package/dist/esm/index164.js +35 -3
  74. package/dist/esm/index165.js +193 -18
  75. package/dist/esm/index166.js +7 -26
  76. package/dist/esm/index167.js +2 -36
  77. package/dist/esm/index168.js +12 -7
  78. package/dist/esm/index169.js +17 -24
  79. package/dist/esm/index17.js +5 -35
  80. package/dist/esm/index170.js +26 -27
  81. package/dist/esm/index171.js +8 -64
  82. package/dist/esm/index172.js +55 -9
  83. package/dist/esm/index173.js +42 -30
  84. package/dist/esm/index174.js +8 -27
  85. package/dist/esm/index175.js +7 -24
  86. package/dist/esm/index176.js +16 -3
  87. package/dist/esm/index177.js +18 -14
  88. package/dist/esm/index178.js +23 -102
  89. package/dist/esm/index179.js +15 -63
  90. package/dist/esm/index18.js +8 -25
  91. package/dist/esm/index180.js +54 -5
  92. package/dist/esm/index181.js +11 -6
  93. package/dist/esm/index182.js +159 -26
  94. package/dist/esm/index183.js +21 -38
  95. package/dist/esm/index184.js +127 -13
  96. package/dist/esm/index185.js +34 -38
  97. package/dist/esm/index186.js +6 -5
  98. package/dist/esm/index187.js +27 -11
  99. package/dist/esm/index188.js +191 -19
  100. package/dist/esm/index189.js +4 -79
  101. package/dist/esm/index19.js +10 -7
  102. package/dist/esm/index190.js +65 -2
  103. package/dist/esm/index191.js +3 -38
  104. package/dist/esm/index192.js +16 -106
  105. package/dist/esm/index193.js +15 -47
  106. package/dist/esm/index194.js +23 -32
  107. package/dist/esm/index195.js +11 -8
  108. package/dist/esm/index196.js +34 -6
  109. package/dist/esm/index197.js +3 -7
  110. package/dist/esm/index198.js +18 -11
  111. package/dist/esm/index199.js +26 -9
  112. package/dist/esm/index2.js +2 -2
  113. package/dist/esm/index20.js +8 -92
  114. package/dist/esm/index200.js +35 -13
  115. package/dist/esm/index201.js +7 -32
  116. package/dist/esm/index202.js +26 -5
  117. package/dist/esm/index203.js +28 -8
  118. package/dist/esm/index204.js +63 -18
  119. package/dist/esm/index205.js +9 -31
  120. package/dist/esm/index206.js +33 -20
  121. package/dist/esm/index207.js +27 -3
  122. package/dist/esm/index208.js +24 -17
  123. package/dist/esm/index209.js +3 -10
  124. package/dist/esm/index21.js +12 -5
  125. package/dist/esm/index210.js +14 -21
  126. package/dist/esm/index211.js +102 -21
  127. package/dist/esm/index212.js +64 -5
  128. package/dist/esm/index213.js +5 -5
  129. package/dist/esm/index214.js +6 -8
  130. package/dist/esm/index215.js +25 -102
  131. package/dist/esm/index216.js +39 -3
  132. package/dist/esm/index217.js +13 -18
  133. package/dist/esm/index218.js +37 -166
  134. package/dist/esm/index219.js +5 -17
  135. package/dist/esm/index22.js +10 -6
  136. package/dist/esm/index220.js +12 -10
  137. package/dist/esm/index221.js +19 -38
  138. package/dist/esm/index222.js +79 -2
  139. package/dist/esm/index223.js +2 -70
  140. package/dist/esm/index224.js +37 -34
  141. package/dist/esm/index225.js +108 -12
  142. package/dist/esm/index226.js +47 -39
  143. package/dist/esm/index227.js +33 -2
  144. package/dist/esm/index228.js +8 -4
  145. package/dist/esm/index229.js +6 -10
  146. package/dist/esm/index23.js +5 -6
  147. package/dist/esm/index230.js +6 -19
  148. package/dist/esm/index231.js +11 -7
  149. package/dist/esm/index232.js +9 -10
  150. package/dist/esm/index233.js +13 -66
  151. package/dist/esm/index234.js +30 -63
  152. package/dist/esm/index235.js +5 -186
  153. package/dist/esm/index236.js +18 -21
  154. package/dist/esm/index237.js +29 -40
  155. package/dist/esm/index238.js +20 -76
  156. package/dist/esm/index239.js +3 -40
  157. package/dist/esm/index24.js +5 -6
  158. package/dist/esm/index240.js +17 -16
  159. package/dist/esm/index241.js +10 -13
  160. package/dist/esm/index242.js +21 -7
  161. package/dist/esm/index243.js +22 -6
  162. package/dist/esm/index244.js +5 -36
  163. package/dist/esm/index245.js +5 -15
  164. package/dist/esm/index246.js +8 -8
  165. package/dist/esm/index247.js +104 -12
  166. package/dist/esm/index248.js +3 -10
  167. package/dist/esm/index249.js +17 -15
  168. package/dist/esm/index25.js +34 -7
  169. package/dist/esm/index250.js +169 -20
  170. package/dist/esm/index251.js +17 -30
  171. package/dist/esm/index252.js +39 -2
  172. package/dist/esm/index253.js +2 -14
  173. package/dist/esm/index254.js +69 -12
  174. package/dist/esm/index255.js +34 -47
  175. package/dist/esm/index256.js +14 -9
  176. package/dist/esm/index257.js +13 -14
  177. package/dist/esm/index258.js +36 -15
  178. package/dist/esm/index259.js +41 -8
  179. package/dist/esm/index26.js +5 -6
  180. package/dist/esm/index260.js +40 -15
  181. package/dist/esm/index261.js +2 -25
  182. package/dist/esm/index262.js +4 -11
  183. package/dist/esm/index263.js +10 -24
  184. package/dist/esm/index264.js +17 -49
  185. package/dist/esm/index265.js +7 -17
  186. package/dist/esm/index266.js +10 -13
  187. package/dist/esm/index267.js +66 -11
  188. package/dist/esm/index268.js +61 -99
  189. package/dist/esm/index269.js +185 -5
  190. package/dist/esm/index27.js +5 -6
  191. package/dist/esm/index270.js +20 -221
  192. package/dist/esm/index271.js +42 -6
  193. package/dist/esm/index272.js +77 -7
  194. package/dist/esm/index273.js +39 -25
  195. package/dist/esm/index274.js +15 -18
  196. package/dist/esm/index275.js +12 -144
  197. package/dist/esm/index276.js +8 -13
  198. package/dist/esm/index277.js +7 -36
  199. package/dist/esm/index278.js +36 -41
  200. package/dist/esm/index279.js +16 -2
  201. package/dist/esm/index28.js +5 -6
  202. package/dist/esm/index280.js +8 -68
  203. package/dist/esm/index281.js +12 -3
  204. package/dist/esm/index282.js +9 -136
  205. package/dist/esm/index283.js +16 -155
  206. package/dist/esm/index284.js +22 -9
  207. package/dist/esm/index285.js +30 -16
  208. package/dist/esm/index286.js +2 -114
  209. package/dist/esm/index287.js +13 -134
  210. package/dist/esm/index288.js +12 -78
  211. package/dist/esm/index289.js +48 -2
  212. package/dist/esm/index29.js +6 -21
  213. package/dist/esm/index290.js +8 -696
  214. package/dist/esm/index291.js +13 -138
  215. package/dist/esm/index292.js +13 -41
  216. package/dist/esm/index293.js +6 -198
  217. package/dist/esm/index294.js +15 -3
  218. package/dist/esm/index295.js +24 -65
  219. package/dist/esm/index296.js +11 -4
  220. package/dist/esm/index297.js +21 -37
  221. package/dist/esm/index298.js +51 -7
  222. package/dist/esm/index299.js +17 -62
  223. package/dist/esm/index3.js +1 -1
  224. package/dist/esm/index30.js +6 -60
  225. package/dist/esm/index300.js +10 -73
  226. package/dist/esm/index301.js +12 -4
  227. package/dist/esm/index302.js +96 -187
  228. package/dist/esm/index303.js +5 -63
  229. package/dist/esm/index304.js +222 -43
  230. package/dist/esm/index305.js +6 -4
  231. package/dist/esm/index306.js +7 -5
  232. package/dist/esm/index307.js +27 -2
  233. package/dist/esm/index308.js +18 -20
  234. package/dist/esm/index309.js +148 -0
  235. package/dist/esm/index31.js +7 -9
  236. package/dist/esm/index310.js +4 -0
  237. package/dist/esm/index311.js +71 -0
  238. package/dist/esm/index312.js +6 -0
  239. package/dist/esm/index313.js +139 -0
  240. package/dist/esm/index314.js +158 -0
  241. package/dist/esm/index315.js +12 -0
  242. package/dist/esm/index316.js +19 -0
  243. package/dist/esm/index317.js +116 -0
  244. package/dist/esm/index318.js +137 -0
  245. package/dist/esm/index319.js +81 -0
  246. package/dist/esm/index32.js +9 -34
  247. package/dist/esm/index320.js +4 -0
  248. package/dist/esm/index321.js +700 -0
  249. package/dist/esm/index322.js +141 -0
  250. package/dist/esm/index323.js +45 -0
  251. package/dist/esm/index324.js +203 -0
  252. package/dist/esm/index325.js +6 -0
  253. package/dist/esm/index326.js +68 -0
  254. package/dist/esm/index327.js +7 -0
  255. package/dist/esm/index328.js +43 -0
  256. package/dist/esm/index329.js +10 -0
  257. package/dist/esm/index33.js +13 -17
  258. package/dist/esm/index330.js +65 -0
  259. package/dist/esm/index331.js +80 -0
  260. package/dist/esm/index332.js +6 -0
  261. package/dist/esm/index333.js +197 -0
  262. package/dist/esm/index334.js +66 -0
  263. package/dist/esm/index335.js +47 -0
  264. package/dist/esm/index336.js +7 -0
  265. package/dist/esm/index337.js +7 -0
  266. package/dist/esm/index338.js +4 -0
  267. package/dist/esm/index339.js +24 -0
  268. package/dist/esm/index34.js +14 -12
  269. package/dist/esm/index35.js +26 -12
  270. package/dist/esm/index36.js +43 -52
  271. package/dist/esm/index37.js +27 -58
  272. package/dist/esm/index38.js +54 -54
  273. package/dist/esm/index39.js +27 -5
  274. package/dist/esm/index40.js +12 -47
  275. package/dist/esm/index41.js +11 -31
  276. package/dist/esm/index42.js +7 -3
  277. package/dist/esm/index43.js +7 -9
  278. package/dist/esm/index44.js +14 -68
  279. package/dist/esm/index45.js +7 -9
  280. package/dist/esm/index46.js +7 -28
  281. package/dist/esm/index47.js +7 -70
  282. package/dist/esm/index48.js +34 -18
  283. package/dist/esm/index49.js +29 -109
  284. package/dist/esm/index5.js +8 -195
  285. package/dist/esm/index50.js +10 -61
  286. package/dist/esm/index51.js +95 -23
  287. package/dist/esm/index52.js +4 -40
  288. package/dist/esm/index53.js +7 -37
  289. package/dist/esm/index54.js +7 -58
  290. package/dist/esm/index55.js +7 -163
  291. package/dist/esm/index56.js +7 -39
  292. package/dist/esm/index57.js +7 -9
  293. package/dist/esm/index58.js +7 -31
  294. package/dist/esm/index59.js +7 -36
  295. package/dist/esm/index6.js +8 -23
  296. package/dist/esm/index60.js +21 -9
  297. package/dist/esm/index61.js +60 -29
  298. package/dist/esm/index62.js +8 -46
  299. package/dist/esm/index63.js +11 -88
  300. package/dist/esm/index64.js +17 -40
  301. package/dist/esm/index65.js +34 -9
  302. package/dist/esm/index66.js +11 -6
  303. package/dist/esm/index67.js +54 -17
  304. package/dist/esm/index68.js +57 -8
  305. package/dist/esm/index69.js +56 -14
  306. package/dist/esm/index7.js +6 -53
  307. package/dist/esm/index70.js +5 -8
  308. package/dist/esm/index71.js +47 -9
  309. package/dist/esm/index72.js +10 -17
  310. package/dist/esm/index73.js +8 -46
  311. package/dist/esm/index74.js +32 -13
  312. package/dist/esm/index75.js +3 -16
  313. package/dist/esm/index76.js +9 -13
  314. package/dist/esm/index77.js +68 -6
  315. package/dist/esm/index78.js +9 -35
  316. package/dist/esm/index79.js +28 -9
  317. package/dist/esm/index8.js +6 -24
  318. package/dist/esm/index80.js +70 -8
  319. package/dist/esm/index81.js +19 -25
  320. package/dist/esm/index82.js +110 -10
  321. package/dist/esm/index83.js +60 -14
  322. package/dist/esm/index84.js +24 -11
  323. package/dist/esm/index85.js +37 -113
  324. package/dist/esm/index86.js +36 -32
  325. package/dist/esm/index87.js +56 -77
  326. package/dist/esm/index88.js +159 -173
  327. package/dist/esm/index89.js +34 -39
  328. package/dist/esm/index9.js +4 -11
  329. package/dist/esm/index90.js +8 -5
  330. package/dist/esm/index91.js +30 -12
  331. package/dist/esm/index92.js +35 -12
  332. package/dist/esm/index93.js +9 -99
  333. package/dist/esm/index94.js +28 -71
  334. package/dist/esm/index95.js +46 -87
  335. package/dist/esm/index96.js +85 -145
  336. package/dist/esm/index97.js +38 -134
  337. package/dist/esm/index98.js +8 -68
  338. package/dist/esm/index99.js +5 -22
  339. package/dist/types/index.d.ts +15 -5
  340. package/package.json +3 -3
@@ -1,75 +1,32 @@
1
- import { hexToBigInt as w } from "./index173.js";
2
- import { getAction as g } from "./index242.js";
3
- import { observe as k } from "./index244.js";
4
- import { poll as h } from "./index245.js";
5
- import { stringify as y } from "./index134.js";
6
- import { getBlockNumber as v } from "./index68.js";
7
- function H(r, { emitOnBegin: c = !1, emitMissed: a = !1, onBlockNumber: l, onError: b, poll: i, pollingInterval: m = r.pollingInterval }) {
8
- const N = typeof i < "u" ? i : !(r.transport.type === "webSocket" || r.transport.type === "ipc" || r.transport.type === "fallback" && (r.transport.transports[0].config.type === "webSocket" || r.transport.transports[0].config.type === "ipc"));
9
- let t;
10
- return N ? (() => {
11
- const p = y([
12
- "watchBlockNumber",
13
- r.uid,
14
- c,
15
- a,
16
- m
17
- ]);
18
- return k(p, { onBlockNumber: l, onError: b }, (s) => h(async () => {
19
- try {
20
- const o = await g(r, v, "getBlockNumber")({ cacheTime: 0 });
21
- if (t) {
22
- if (o === t)
23
- return;
24
- if (o - t > 1 && a)
25
- for (let e = t + 1n; e < o; e++)
26
- s.onBlockNumber(e, t), t = e;
27
- }
28
- (!t || o > t) && (s.onBlockNumber(o, t), t = o);
29
- } catch (o) {
30
- s.onError?.(o);
31
- }
32
- }, {
33
- emitOnBegin: c,
34
- interval: m
35
- }));
36
- })() : (() => {
37
- const p = y([
38
- "watchBlockNumber",
39
- r.uid,
40
- c,
41
- a
42
- ]);
43
- return k(p, { onBlockNumber: l, onError: b }, (s) => {
44
- let o = !0, e = () => o = !1;
45
- return (async () => {
46
- try {
47
- const f = (() => {
48
- if (r.transport.type === "fallback") {
49
- const n = r.transport.transports.find((u) => u.config.type === "webSocket" || u.config.type === "ipc");
50
- return n ? n.value : r.transport;
51
- }
52
- return r.transport;
53
- })(), { unsubscribe: B } = await f.subscribe({
54
- params: ["newHeads"],
55
- onData(n) {
56
- if (!o)
57
- return;
58
- const u = w(n.result?.number);
59
- s.onBlockNumber(u, t), t = u;
60
- },
61
- onError(n) {
62
- s.onError?.(n);
63
- }
64
- });
65
- e = B, o || e();
66
- } catch (f) {
67
- b?.(f);
68
- }
69
- })(), () => e();
1
+ import { parseAccount as u } from "./index75.js";
2
+ import { encodeFunctionData as f } from "./index201.js";
3
+ import { getContractError as p } from "./index243.js";
4
+ import { getAction as g } from "./index276.js";
5
+ import { estimateGas as G } from "./index96.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
+ });
12
+ try {
13
+ return await g(s, G, "estimateGas")({
14
+ data: `${m}${e ? e.replace("0x", "") : ""}`,
15
+ to: o,
16
+ ...t
70
17
  });
71
- })();
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
+ }
72
29
  }
73
30
  export {
74
- H as watchBlockNumber
31
+ A as estimateContractGas
75
32
  };
@@ -1,90 +1,49 @@
1
- import { getAction as p } from "./index242.js";
2
- import { observe as h } from "./index244.js";
3
- import { poll as v } from "./index245.js";
4
- import { stringify as S } from "./index134.js";
5
- import { getBlock as i } from "./index67.js";
6
- function P(r, { blockTag: l = r.experimental_blockTag ?? "latest", emitMissed: y = !1, emitOnBegin: m = !1, onBlock: k, onError: f, includeTransactions: B, poll: d, pollingInterval: w = r.pollingInterval }) {
7
- const g = typeof d < "u" ? d : !(r.transport.type === "webSocket" || r.transport.type === "ipc" || r.transport.type === "fallback" && (r.transport.transports[0].config.type === "webSocket" || r.transport.transports[0].config.type === "ipc")), a = B ?? !1;
8
- let e;
9
- return g ? (() => {
10
- const o = S([
11
- "watchBlocks",
12
- r.uid,
13
- l,
14
- y,
15
- m,
16
- a,
17
- w
18
- ]);
19
- return h(o, { onBlock: k, onError: f }, (s) => v(async () => {
20
- try {
21
- const t = await p(r, i, "getBlock")({
22
- blockTag: l,
23
- includeTransactions: a
24
- });
25
- if (t.number !== null && e?.number != null) {
26
- if (t.number === e.number)
27
- return;
28
- if (t.number - e.number > 1 && y)
29
- for (let u = e?.number + 1n; u < t.number; u++) {
30
- const b = await p(r, i, "getBlock")({
31
- blockNumber: u,
32
- includeTransactions: a
33
- });
34
- s.onBlock(b, e), e = b;
35
- }
36
- }
37
- // If no previous block exists, emit.
38
- (e?.number == null || // If the block tag is "pending" with no block number, emit.
39
- l === "pending" && t?.number == null || // If the next block number is greater than the previous block number, emit.
40
- // We don't want to emit blocks in the past.
41
- t.number !== null && t.number > e.number) && (s.onBlock(t, e), e = t);
42
- } catch (t) {
43
- s.onError?.(t);
44
- }
45
- }, {
46
- emitOnBegin: m,
47
- interval: w
48
- }));
49
- })() : (() => {
50
- let o = !0, s = !0, t = () => o = !1;
51
- return (async () => {
52
- try {
53
- m && p(r, i, "getBlock")({
54
- blockTag: l,
55
- includeTransactions: a
56
- }).then((n) => {
57
- o && s && (k(n, void 0), s = !1);
58
- }).catch(f);
59
- const u = (() => {
60
- if (r.transport.type === "fallback") {
61
- const n = r.transport.transports.find((c) => c.config.type === "webSocket" || c.config.type === "ipc");
62
- return n ? n.value : r.transport;
63
- }
64
- return r.transport;
65
- })(), { unsubscribe: b } = await u.subscribe({
66
- params: ["newHeads"],
67
- async onData(n) {
68
- if (!o)
69
- return;
70
- const c = await p(r, i, "getBlock")({
71
- blockNumber: n.result?.number,
72
- includeTransactions: a
73
- }).catch(() => {
74
- });
75
- o && (k(c, e), s = !1, e = c);
76
- },
77
- onError(n) {
78
- f?.(n);
79
- }
80
- });
81
- t = b, o || t();
82
- } catch (u) {
83
- f?.(u);
84
- }
85
- })(), () => t();
86
- })();
1
+ import { BaseFeeScalarError as p, Eip1559FeesNotSupportedError as F } from "./index159.js";
2
+ import { getAction as l } from "./index276.js";
3
+ import { internal_estimateMaxPriorityFeePerGas as u } from "./index97.js";
4
+ import { getBlock as G } from "./index100.js";
5
+ import { getGasPrice as b } from "./index110.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
+ };
87
45
  }
88
46
  export {
89
- P as watchBlocks
47
+ E as estimateFeesPerGas,
48
+ g as internal_estimateFeesPerGas
90
49
  };
@@ -1,151 +1,91 @@
1
- import { DecodeLogDataMismatch as M, DecodeLogTopicsMismatch as P } from "./index110.js";
2
- import { InvalidInputRpcError as T } from "./index127.js";
3
- import { decodeEventLog as z } from "./index157.js";
4
- import { encodeEventTopics as A } from "./index167.js";
5
- import { formatLog as B } from "./index148.js";
6
- import { getAction as g } from "./index242.js";
7
- import { observe as F } from "./index244.js";
8
- import { poll as O } from "./index245.js";
9
- import { stringify as D } from "./index134.js";
10
- import { createContractEventFilter as R } from "./index58.js";
11
- import { getBlockNumber as U } from "./index68.js";
12
- import { getContractEvents as j } from "./index72.js";
13
- import { getFilterChanges as q } from "./index75.js";
14
- import { uninstallFilter as x } from "./index90.js";
15
- function st(t, S) {
16
- const { abi: b, address: p, args: l, batch: E = !0, eventName: c, fromBlock: m, onError: h, onLogs: N, poll: L, pollingInterval: w = t.pollingInterval, strict: v } = S;
17
- return (typeof L < "u" ? L : typeof m == "bigint" ? !0 : !(t.transport.type === "webSocket" || t.transport.type === "ipc" || t.transport.type === "fallback" && (t.transport.transports[0].config.type === "webSocket" || t.transport.transports[0].config.type === "ipc"))) ? (() => {
18
- const u = v ?? !1, C = D([
19
- "watchContractEvent",
20
- p,
21
- l,
22
- E,
23
- t.uid,
24
- c,
25
- w,
26
- u,
27
- m
28
- ]);
29
- return F(C, { onLogs: N, onError: h }, (a) => {
30
- let n;
31
- m !== void 0 && (n = m - 1n);
32
- let e, s = !1;
33
- const k = O(async () => {
34
- if (!s) {
35
- try {
36
- e = await g(t, R, "createContractEventFilter")({
37
- abi: b,
38
- address: p,
39
- args: l,
40
- eventName: c,
41
- strict: u,
42
- fromBlock: m
43
- });
44
- } catch {
45
- }
46
- s = !0;
47
- return;
48
- }
49
- try {
50
- let o;
51
- if (e)
52
- o = await g(t, q, "getFilterChanges")({ filter: e });
53
- else {
54
- const r = await g(t, U, "getBlockNumber")({});
55
- n && n < r ? o = await g(t, j, "getContractEvents")({
56
- abi: b,
57
- address: p,
58
- args: l,
59
- eventName: c,
60
- fromBlock: n + 1n,
61
- toBlock: r,
62
- strict: u
63
- }) : o = [], n = r;
64
- }
65
- if (o.length === 0)
66
- return;
67
- if (E)
68
- a.onLogs(o);
69
- else
70
- for (const r of o)
71
- a.onLogs([r]);
72
- } catch (o) {
73
- e && o instanceof T && (s = !1), a.onError?.(o);
74
- }
75
- }, {
76
- emitOnBegin: !0,
77
- interval: w
1
+ import { parseAccount as R } from "./index75.js";
2
+ import { BaseError as _ } from "./index146.js";
3
+ import { recoverAuthorizationAddress as A } from "./index290.js";
4
+ import { numberToHex as x } from "./index173.js";
5
+ import { getEstimateGasError as E } from "./index291.js";
6
+ import { extract as N } from "./index288.js";
7
+ import { formatTransactionRequest as S } from "./index208.js";
8
+ import { serializeStateOverride as I } from "./index289.js";
9
+ import { assertRequest as V } from "./index221.js";
10
+ import { prepareTransactionRequest as C } from "./index133.js";
11
+ import { getBalance as j } from "./index98.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]
78
24
  });
79
- return async () => {
80
- e && await g(t, x, "uninstallFilter")({ filter: e }), k();
81
- };
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
82
61
  });
83
- })() : (() => {
84
- const u = v ?? !1, C = D([
85
- "watchContractEvent",
86
- p,
87
- l,
88
- E,
89
- t.uid,
90
- c,
91
- w,
92
- u
93
- ]);
94
- let a = !0, n = () => a = !1;
95
- return F(C, { onLogs: N, onError: h }, (e) => ((async () => {
96
- try {
97
- const s = (() => {
98
- if (t.transport.type === "fallback") {
99
- const r = t.transport.transports.find((i) => i.config.type === "webSocket" || i.config.type === "ipc");
100
- return r ? r.value : t.transport;
101
- }
102
- return t.transport;
103
- })(), k = c ? A({
104
- abi: b,
105
- eventName: c,
106
- args: l
107
- }) : [], { unsubscribe: o } = await s.subscribe({
108
- params: ["logs", { address: p, topics: k }],
109
- onData(r) {
110
- if (!a)
111
- return;
112
- const i = r.result;
113
- try {
114
- const { eventName: f, args: d } = z({
115
- abi: b,
116
- data: i.data,
117
- topics: i.topics,
118
- strict: v
119
- }), y = B(i, {
120
- args: d,
121
- eventName: f
122
- });
123
- e.onLogs([y]);
124
- } catch (f) {
125
- let d, y;
126
- if (f instanceof M || f instanceof P) {
127
- if (v)
128
- return;
129
- d = f.abiItem.name, y = f.abiItem.inputs?.some((I) => !("name" in I && I.name));
130
- }
131
- const _ = B(i, {
132
- args: y ? [] : {},
133
- eventName: d
134
- });
135
- e.onLogs([_]);
136
- }
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)
137
73
  },
138
- onError(r) {
139
- e.onError?.(r);
140
- }
141
- });
142
- n = o, a || n();
143
- } catch (s) {
144
- h?.(s);
145
- }
146
- })(), () => n()));
147
- })();
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
+ }
148
88
  }
149
89
  export {
150
- st as watchContractEvent
90
+ rt as estimateGas
151
91
  };
@@ -1,139 +1,43 @@
1
- import { encodeEventTopics as S } from "./index167.js";
2
- import { observe as B } from "./index244.js";
3
- import { poll as C } from "./index245.js";
4
- import { stringify as T } from "./index134.js";
5
- import { DecodeLogDataMismatch as z, DecodeLogTopicsMismatch as A } from "./index110.js";
6
- import { InvalidInputRpcError as O } from "./index127.js";
7
- import { decodeEventLog as P } from "./index157.js";
8
- import { formatLog as I } from "./index148.js";
9
- import { getAction as u } from "./index242.js";
10
- import { createEventFilter as R } from "./index59.js";
11
- import { getBlockNumber as U } from "./index68.js";
12
- import { getFilterChanges as j } from "./index75.js";
13
- import { getLogs as q } from "./index78.js";
14
- import { uninstallFilter as x } from "./index90.js";
15
- function nt(r, { address: m, args: l, batch: h = !0, event: s, events: d, fromBlock: c, onError: y, onLogs: v, poll: E, pollingInterval: k = r.pollingInterval, strict: N }) {
16
- const D = typeof E < "u" ? E : typeof c == "bigint" ? !0 : !(r.transport.type === "webSocket" || r.transport.type === "ipc" || r.transport.type === "fallback" && (r.transport.transports[0].config.type === "webSocket" || r.transport.transports[0].config.type === "ipc")), F = N ?? !1;
17
- return D ? (() => {
18
- const p = T([
19
- "watchEvent",
20
- m,
21
- l,
22
- h,
23
- r.uid,
24
- s,
25
- k,
26
- c
27
- ]);
28
- return B(p, { onLogs: v, onError: y }, (a) => {
29
- let n;
30
- c !== void 0 && (n = c - 1n);
31
- let o, i = !1;
32
- const w = C(async () => {
33
- if (!i) {
34
- try {
35
- o = await u(r, R, "createEventFilter")({
36
- address: m,
37
- args: l,
38
- event: s,
39
- events: d,
40
- strict: F,
41
- fromBlock: c
42
- });
43
- } catch {
44
- }
45
- i = !0;
46
- return;
47
- }
48
- try {
49
- let t;
50
- if (o)
51
- t = await u(r, j, "getFilterChanges")({ filter: o });
52
- else {
53
- const e = await u(r, U, "getBlockNumber")({});
54
- n && n !== e ? t = await u(r, q, "getLogs")({
55
- address: m,
56
- args: l,
57
- event: s,
58
- events: d,
59
- fromBlock: n + 1n,
60
- toBlock: e
61
- }) : t = [], n = e;
62
- }
63
- if (t.length === 0)
64
- return;
65
- if (h)
66
- a.onLogs(t);
67
- else
68
- for (const e of t)
69
- a.onLogs([e]);
70
- } catch (t) {
71
- o && t instanceof O && (i = !1), a.onError?.(t);
72
- }
73
- }, {
74
- emitOnBegin: !0,
75
- interval: k
1
+ import { Eip1559FeesNotSupportedError as f } from "./index159.js";
2
+ import { hexToBigInt as u } from "./index206.js";
3
+ import { getAction as s } from "./index276.js";
4
+ import { getBlock as c } from "./index100.js";
5
+ import { getGasPrice as y } from "./index110.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
76
18
  });
77
- return async () => {
78
- o && await u(r, x, "uninstallFilter")({ filter: o }), w();
79
- };
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"
80
27
  });
81
- })() : (() => {
82
- let p = !0, a = () => p = !1;
83
- return (async () => {
84
- try {
85
- const n = (() => {
86
- if (r.transport.type === "fallback") {
87
- const t = r.transport.transports.find((e) => e.config.type === "webSocket" || e.config.type === "ipc");
88
- return t ? t.value : r.transport;
89
- }
90
- return r.transport;
91
- })(), o = d ?? (s ? [s] : void 0);
92
- let i = [];
93
- o && (i = [o.flatMap((e) => S({
94
- abi: [e],
95
- eventName: e.name,
96
- args: l
97
- }))], s && (i = i[0]));
98
- const { unsubscribe: w } = await n.subscribe({
99
- params: ["logs", { address: m, topics: i }],
100
- onData(t) {
101
- if (!p)
102
- return;
103
- const e = t.result;
104
- try {
105
- const { eventName: f, args: b } = P({
106
- abi: o ?? [],
107
- data: e.data,
108
- topics: e.topics,
109
- strict: F
110
- }), g = I(e, { args: b, eventName: f });
111
- v([g]);
112
- } catch (f) {
113
- let b, g;
114
- if (f instanceof z || f instanceof A) {
115
- if (N)
116
- return;
117
- b = f.abiItem.name, g = f.abiItem.inputs?.some((L) => !("name" in L && L.name));
118
- }
119
- const M = I(e, {
120
- args: g ? [] : {},
121
- eventName: b
122
- });
123
- v([M]);
124
- }
125
- },
126
- onError(t) {
127
- y?.(t);
128
- }
129
- });
130
- a = w, p || a();
131
- } catch (n) {
132
- y?.(n);
133
- }
134
- })(), () => a();
135
- })();
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
+ }
136
39
  }
137
40
  export {
138
- nt as watchEvent
41
+ h as estimateMaxPriorityFeePerGas,
42
+ p as internal_estimateMaxPriorityFeePerGas
139
43
  };