@coinbase/cdp-hooks 0.0.43 → 0.0.45

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 (276) hide show
  1. package/README.md +92 -0
  2. package/dist/esm/index.js +26 -22
  3. package/dist/esm/index10.js +12 -56
  4. package/dist/esm/index100.js +439 -21
  5. package/dist/esm/index101.js +28 -32
  6. package/dist/esm/index102.js +18 -185
  7. package/dist/esm/index103.js +31 -6
  8. package/dist/esm/index104.js +35 -2
  9. package/dist/esm/index105.js +189 -8
  10. package/dist/esm/index106.js +7 -17
  11. package/dist/esm/index107.js +2 -28
  12. package/dist/esm/index108.js +12 -8
  13. package/dist/esm/index109.js +15 -52
  14. package/dist/esm/index11.js +54 -33
  15. package/dist/esm/index110.js +23 -41
  16. package/dist/esm/index111.js +8 -8
  17. package/dist/esm/index112.js +55 -7
  18. package/dist/esm/index113.js +44 -15
  19. package/dist/esm/index114.js +8 -18
  20. package/dist/esm/index115.js +7 -24
  21. package/dist/esm/index116.js +16 -16
  22. package/dist/esm/index117.js +17 -53
  23. package/dist/esm/index118.js +22 -9
  24. package/dist/esm/index119.js +15 -159
  25. package/dist/esm/index12.js +57 -3
  26. package/dist/esm/index120.js +53 -20
  27. package/dist/esm/index121.js +11 -127
  28. package/dist/esm/index122.js +153 -31
  29. package/dist/esm/index123.js +21 -6
  30. package/dist/esm/index124.js +127 -27
  31. package/dist/esm/index125.js +31 -184
  32. package/dist/esm/index126.js +7 -4
  33. package/dist/esm/index127.js +26 -63
  34. package/dist/esm/index128.js +192 -3
  35. package/dist/esm/index129.js +4 -21
  36. package/dist/esm/index13.js +56 -10
  37. package/dist/esm/index130.js +61 -13
  38. package/dist/esm/index131.js +3 -24
  39. package/dist/esm/index132.js +20 -11
  40. package/dist/esm/index133.js +15 -33
  41. package/dist/esm/index134.js +24 -3
  42. package/dist/esm/index135.js +11 -18
  43. package/dist/esm/index136.js +33 -26
  44. package/dist/esm/index137.js +3 -36
  45. package/dist/esm/index138.js +18 -7
  46. package/dist/esm/index139.js +26 -24
  47. package/dist/esm/index14.js +31 -67
  48. package/dist/esm/index140.js +34 -27
  49. package/dist/esm/index141.js +7 -64
  50. package/dist/esm/index142.js +25 -9
  51. package/dist/esm/index143.js +28 -33
  52. package/dist/esm/index144.js +64 -27
  53. package/dist/esm/index145.js +9 -24
  54. package/dist/esm/index146.js +33 -3
  55. package/dist/esm/index147.js +27 -14
  56. package/dist/esm/index148.js +24 -103
  57. package/dist/esm/index149.js +3 -64
  58. package/dist/esm/index15.js +3 -9
  59. package/dist/esm/index150.js +14 -5
  60. package/dist/esm/index151.js +103 -6
  61. package/dist/esm/index152.js +62 -25
  62. package/dist/esm/index153.js +5 -39
  63. package/dist/esm/index154.js +6 -13
  64. package/dist/esm/index155.js +24 -39
  65. package/dist/esm/index156.js +39 -5
  66. package/dist/esm/index157.js +13 -11
  67. package/dist/esm/index158.js +42 -19
  68. package/dist/esm/index159.js +5 -78
  69. package/dist/esm/index16.js +9 -28
  70. package/dist/esm/index160.js +12 -2
  71. package/dist/esm/index161.js +19 -37
  72. package/dist/esm/index162.js +73 -105
  73. package/dist/esm/index163.js +2 -49
  74. package/dist/esm/index164.js +36 -31
  75. package/dist/esm/index165.js +110 -8
  76. package/dist/esm/index166.js +48 -6
  77. package/dist/esm/index167.js +32 -6
  78. package/dist/esm/index168.js +8 -11
  79. package/dist/esm/index169.js +6 -10
  80. package/dist/esm/index17.js +68 -70
  81. package/dist/esm/index170.js +6 -13
  82. package/dist/esm/index171.js +11 -32
  83. package/dist/esm/index172.js +11 -5
  84. package/dist/esm/index173.js +13 -8
  85. package/dist/esm/index174.js +30 -17
  86. package/dist/esm/index175.js +5 -32
  87. package/dist/esm/index176.js +8 -20
  88. package/dist/esm/index177.js +19 -3
  89. package/dist/esm/index178.js +31 -17
  90. package/dist/esm/index179.js +20 -10
  91. package/dist/esm/index18.js +9 -19
  92. package/dist/esm/index180.js +3 -21
  93. package/dist/esm/index181.js +16 -21
  94. package/dist/esm/index182.js +10 -5
  95. package/dist/esm/index183.js +21 -5
  96. package/dist/esm/index184.js +22 -8
  97. package/dist/esm/index185.js +5 -104
  98. package/dist/esm/index186.js +6 -3
  99. package/dist/esm/index187.js +8 -18
  100. package/dist/esm/index188.js +99 -166
  101. package/dist/esm/index189.js +3 -18
  102. package/dist/esm/index19.js +26 -108
  103. package/dist/esm/index190.js +19 -10
  104. package/dist/esm/index191.js +170 -39
  105. package/dist/esm/index192.js +18 -2
  106. package/dist/esm/index193.js +10 -5
  107. package/dist/esm/index194.js +39 -9
  108. package/dist/esm/index195.js +2 -20
  109. package/dist/esm/index196.js +4 -7
  110. package/dist/esm/index197.js +9 -10
  111. package/dist/esm/index198.js +19 -66
  112. package/dist/esm/index199.js +7 -65
  113. package/dist/esm/index20.js +70 -60
  114. package/dist/esm/index200.js +10 -184
  115. package/dist/esm/index201.js +66 -22
  116. package/dist/esm/index202.js +61 -38
  117. package/dist/esm/index203.js +178 -69
  118. package/dist/esm/index204.js +21 -39
  119. package/dist/esm/index205.js +35 -9
  120. package/dist/esm/index206.js +70 -7
  121. package/dist/esm/index207.js +40 -7
  122. package/dist/esm/index208.js +16 -6
  123. package/dist/esm/index209.js +13 -36
  124. package/dist/esm/index21.js +19 -24
  125. package/dist/esm/index210.js +7 -15
  126. package/dist/esm/index211.js +6 -8
  127. package/dist/esm/index212.js +35 -11
  128. package/dist/esm/index213.js +15 -9
  129. package/dist/esm/index214.js +8 -16
  130. package/dist/esm/index215.js +12 -22
  131. package/dist/esm/index216.js +9 -30
  132. package/dist/esm/index217.js +17 -2
  133. package/dist/esm/index218.js +21 -12
  134. package/dist/esm/index219.js +30 -12
  135. package/dist/esm/index22.js +110 -40
  136. package/dist/esm/index220.js +2 -48
  137. package/dist/esm/index221.js +12 -8
  138. package/dist/esm/index222.js +12 -13
  139. package/dist/esm/index223.js +46 -13
  140. package/dist/esm/index224.js +9 -8
  141. package/dist/esm/index225.js +13 -15
  142. package/dist/esm/index226.js +14 -24
  143. package/dist/esm/index227.js +8 -11
  144. package/dist/esm/index228.js +14 -23
  145. package/dist/esm/index229.js +24 -51
  146. package/dist/esm/index23.js +57 -34
  147. package/dist/esm/index230.js +11 -17
  148. package/dist/esm/index231.js +24 -14
  149. package/dist/esm/index232.js +51 -11
  150. package/dist/esm/index233.js +17 -103
  151. package/dist/esm/index234.js +14 -6
  152. package/dist/esm/index235.js +11 -224
  153. package/dist/esm/index236.js +103 -6
  154. package/dist/esm/index237.js +7 -7
  155. package/dist/esm/index238.js +223 -25
  156. package/dist/esm/index239.js +6 -19
  157. package/dist/esm/index24.js +20 -54
  158. package/dist/esm/index240.js +7 -147
  159. package/dist/esm/index241.js +26 -12
  160. package/dist/esm/index242.js +20 -36
  161. package/dist/esm/index243.js +146 -41
  162. package/dist/esm/index244.js +13 -69
  163. package/dist/esm/index245.js +36 -4
  164. package/dist/esm/index246.js +41 -136
  165. package/dist/esm/index247.js +69 -156
  166. package/dist/esm/index248.js +3 -9
  167. package/dist/esm/index249.js +136 -16
  168. package/dist/esm/index25.js +37 -160
  169. package/dist/esm/index250.js +140 -98
  170. package/dist/esm/index251.js +9 -134
  171. package/dist/esm/index252.js +16 -78
  172. package/dist/esm/index253.js +114 -2
  173. package/dist/esm/index254.js +124 -688
  174. package/dist/esm/index255.js +73 -134
  175. package/dist/esm/index256.js +2 -43
  176. package/dist/esm/index257.js +675 -178
  177. package/dist/esm/index258.js +137 -63
  178. package/dist/esm/index259.js +42 -4
  179. package/dist/esm/index26.js +36 -38
  180. package/dist/esm/index260.js +201 -40
  181. package/dist/esm/index261.js +65 -7
  182. package/dist/esm/index262.js +4 -62
  183. package/dist/esm/index263.js +33 -70
  184. package/dist/esm/index264.js +8 -4
  185. package/dist/esm/index265.js +55 -187
  186. package/dist/esm/index266.js +61 -47
  187. package/dist/esm/index267.js +4 -45
  188. package/dist/esm/index268.js +194 -4
  189. package/dist/esm/index269.js +64 -5
  190. package/dist/esm/index27.js +58 -9
  191. package/dist/esm/index270.js +45 -2
  192. package/dist/esm/index271.js +4 -21
  193. package/dist/esm/index272.js +7 -0
  194. package/dist/esm/index273.js +4 -0
  195. package/dist/esm/index274.js +24 -0
  196. package/dist/esm/index28.js +161 -29
  197. package/dist/esm/index29.js +39 -36
  198. package/dist/esm/index3.js +2 -2
  199. package/dist/esm/index30.js +7 -7
  200. package/dist/esm/index31.js +30 -28
  201. package/dist/esm/index32.js +34 -44
  202. package/dist/esm/index33.js +9 -88
  203. package/dist/esm/index34.js +26 -37
  204. package/dist/esm/index35.js +46 -8
  205. package/dist/esm/index36.js +88 -6
  206. package/dist/esm/index37.js +40 -16
  207. package/dist/esm/index38.js +8 -8
  208. package/dist/esm/index39.js +6 -13
  209. package/dist/esm/index4.js +14 -16
  210. package/dist/esm/index40.js +16 -7
  211. package/dist/esm/index41.js +8 -9
  212. package/dist/esm/index42.js +13 -16
  213. package/dist/esm/index43.js +7 -46
  214. package/dist/esm/index44.js +9 -13
  215. package/dist/esm/index45.js +15 -15
  216. package/dist/esm/index46.js +46 -13
  217. package/dist/esm/index47.js +13 -6
  218. package/dist/esm/index48.js +15 -34
  219. package/dist/esm/index49.js +13 -9
  220. package/dist/esm/index5.js +46 -29
  221. package/dist/esm/index50.js +5 -7
  222. package/dist/esm/index51.js +35 -25
  223. package/dist/esm/index52.js +9 -10
  224. package/dist/esm/index53.js +7 -13
  225. package/dist/esm/index54.js +25 -11
  226. package/dist/esm/index55.js +10 -116
  227. package/dist/esm/index56.js +13 -32
  228. package/dist/esm/index57.js +11 -79
  229. package/dist/esm/index58.js +108 -169
  230. package/dist/esm/index59.js +26 -37
  231. package/dist/esm/index6.js +20 -17
  232. package/dist/esm/index60.js +79 -6
  233. package/dist/esm/index61.js +177 -13
  234. package/dist/esm/index62.js +44 -13
  235. package/dist/esm/index63.js +6 -99
  236. package/dist/esm/index64.js +13 -72
  237. package/dist/esm/index65.js +13 -87
  238. package/dist/esm/index66.js +93 -142
  239. package/dist/esm/index67.js +65 -129
  240. package/dist/esm/index68.js +73 -54
  241. package/dist/esm/index69.js +148 -23
  242. package/dist/esm/index7.js +34 -12
  243. package/dist/esm/index70.js +133 -102
  244. package/dist/esm/index71.js +68 -6
  245. package/dist/esm/index72.js +23 -131
  246. package/dist/esm/index73.js +101 -271
  247. package/dist/esm/index74.js +7 -3
  248. package/dist/esm/index75.js +132 -4
  249. package/dist/esm/index76.js +276 -9
  250. package/dist/esm/index77.js +3 -2
  251. package/dist/esm/index78.js +4 -2
  252. package/dist/esm/index79.js +9 -3
  253. package/dist/esm/index8.js +18 -54
  254. package/dist/esm/index80.js +2 -327
  255. package/dist/esm/index81.js +2 -14
  256. package/dist/esm/index82.js +3 -5
  257. package/dist/esm/index83.js +299 -28
  258. package/dist/esm/index84.js +14 -2
  259. package/dist/esm/index85.js +4 -7
  260. package/dist/esm/index86.js +29 -188
  261. package/dist/esm/index87.js +2 -32
  262. package/dist/esm/index88.js +7 -21
  263. package/dist/esm/index89.js +214 -5
  264. package/dist/esm/index9.js +11 -57
  265. package/dist/esm/index90.js +30 -72
  266. package/dist/esm/index91.js +21 -5
  267. package/dist/esm/index92.js +5 -5
  268. package/dist/esm/index93.js +69 -31
  269. package/dist/esm/index94.js +5 -75
  270. package/dist/esm/index95.js +6 -3
  271. package/dist/esm/index96.js +28 -16
  272. package/dist/esm/index97.js +57 -433
  273. package/dist/esm/index98.js +3 -31
  274. package/dist/esm/index99.js +17 -20
  275. package/dist/types/index.d.ts +36 -0
  276. package/package.json +3 -3
@@ -1,39 +1,42 @@
1
- import { encodeEventTopics as b } from "./index137.js";
2
- import { numberToHex as m } from "./index110.js";
3
- import { createFilterRequestScope as h } from "./index208.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
- });
25
- return {
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"
35
- };
1
+ import { parseAccount as P } from "./index15.js";
2
+ import { numberToHex as y } from "./index113.js";
3
+ import { getCallError as F } from "./index221.js";
4
+ import { extract as L } from "./index222.js";
5
+ import { formatTransactionRequest as A } from "./index148.js";
6
+ import { assertRequest as G } from "./index161.js";
7
+ async function _(t, e) {
8
+ const { account: o = t.account, blockNumber: r, blockTag: m = "latest", blobs: i, data: u, gas: f, gasPrice: b, maxFeePerBlobGas: p, maxFeePerGas: d, maxPriorityFeePerGas: h, to: l, value: x, ...g } = e, a = o ? P(o) : void 0;
9
+ try {
10
+ G(e);
11
+ const k = (typeof r == "bigint" ? y(r) : void 0) || m, c = t.chain?.formatters?.transactionRequest?.format, q = (c || A)({
12
+ // Pick out extra data that might exist on the chain's transaction request type.
13
+ ...L(g, { format: c }),
14
+ from: a?.address,
15
+ blobs: i,
16
+ data: u,
17
+ gas: f,
18
+ gasPrice: b,
19
+ maxFeePerBlobGas: p,
20
+ maxFeePerGas: d,
21
+ maxPriorityFeePerGas: h,
22
+ to: l,
23
+ value: x
24
+ }), n = await t.request({
25
+ method: "eth_createAccessList",
26
+ params: [q, k]
27
+ });
28
+ return {
29
+ accessList: n.accessList,
30
+ gasUsed: BigInt(n.gasUsed)
31
+ };
32
+ } catch (s) {
33
+ throw F(s, {
34
+ ...e,
35
+ account: a,
36
+ chain: t.chain
37
+ });
38
+ }
36
39
  }
37
40
  export {
38
- l as createEventFilter
41
+ _ as createAccessList
39
42
  };
@@ -1,8 +1,8 @@
1
1
  import { getAccessToken as A, sendUserOperation as y, signInWithEmail as O, signInWithSms as U, verifyEmailOTP as I, verifySmsOTP as P, signOut as x, signEvmHash as M, signEvmTransaction as k, sendEvmTransaction as C, signEvmMessage as W, signSolanaMessage as H, signEvmTypedData as b, exportEvmAccount as D, exportSolanaAccount as V, signSolanaTransaction as F, sendSolanaTransaction as z, getUserOperation as G } from "@coinbase/cdp-core";
2
2
  import { useState as u, useEffect as f, useMemo as j, useCallback as h } from "react";
3
3
  import { useCDP as p } from "./index2.js";
4
- import { useAutoPolling as q } from "./index5.js";
5
- import { getPublicClient as B } from "./index6.js";
4
+ import { useAutoPolling as q } from "./index7.js";
5
+ import { getPublicClient as B } from "./index8.js";
6
6
  const Y = () => {
7
7
  const { config: n } = p();
8
8
  return { config: n };
@@ -1,12 +1,12 @@
1
- import { createFilterRequestScope as r } from "./index208.js";
2
- async function a(e) {
3
- const n = r(e, {
4
- method: "eth_newPendingTransactionFilter"
1
+ import { createFilterRequestScope as r } from "./index211.js";
2
+ async function i(e) {
3
+ const o = r(e, {
4
+ method: "eth_newBlockFilter"
5
5
  }), t = await e.request({
6
- method: "eth_newPendingTransactionFilter"
6
+ method: "eth_newBlockFilter"
7
7
  });
8
- return { id: t, request: n(t), type: "transaction" };
8
+ return { id: t, request: o(t), type: "block" };
9
9
  }
10
10
  export {
11
- a as createPendingTransactionFilter
11
+ i as createBlockFilter
12
12
  };
@@ -1,32 +1,34 @@
1
- import { parseAccount as u } from "./index12.js";
2
- import { encodeFunctionData as f } from "./index138.js";
3
- import { getContractError as p } from "./index181.js";
4
- import { getAction as g } from "./index207.js";
5
- import { estimateGas as G } from "./index33.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 "./index140.js";
2
+ import { numberToHex as s } from "./index113.js";
3
+ import { createFilterRequestScope as u } from "./index211.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 "./index96.js";
2
- import { getAction as l } from "./index207.js";
3
- import { internal_estimateMaxPriorityFeePerGas as u } from "./index34.js";
4
- import { getBlock as G } from "./index37.js";
5
- import { getGasPrice as b } from "./index47.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 "./index140.js";
2
+ import { numberToHex as m } from "./index113.js";
3
+ import { createFilterRequestScope as h } from "./index211.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 "./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;
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 "./index211.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 "./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 || {};
1
+ import { parseAccount as u } from "./index15.js";
2
+ import { encodeFunctionData as f } from "./index141.js";
3
+ import { getContractError as p } from "./index184.js";
4
+ import { getAction as g } from "./index210.js";
5
+ import { estimateGas as G } from "./index36.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 "./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]
6
- });
7
- return BigInt(r);
1
+ import { BaseFeeScalarError as p, Eip1559FeesNotSupportedError as F } from "./index99.js";
2
+ import { getAction as l } from "./index210.js";
3
+ import { internal_estimateMaxPriorityFeePerGas as u } from "./index37.js";
4
+ import { getBlock as G } from "./index40.js";
5
+ import { getGasPrice as b } from "./index50.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 "./index15.js";
2
+ import { BaseError as _ } from "./index86.js";
3
+ import { recoverAuthorizationAddress as A } from "./index224.js";
4
+ import { numberToHex as x } from "./index113.js";
5
+ import { getEstimateGasError as E } from "./index225.js";
6
+ import { extract as N } from "./index222.js";
7
+ import { formatTransactionRequest as S } from "./index148.js";
8
+ import { serializeStateOverride as I } from "./index223.js";
9
+ import { assertRequest as V } from "./index161.js";
10
+ import { prepareTransactionRequest as C } from "./index73.js";
11
+ import { getBalance as j } from "./index38.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 "./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);
1
+ import { Eip1559FeesNotSupportedError as f } from "./index99.js";
2
+ import { hexToBigInt as u } from "./index146.js";
3
+ import { getAction as s } from "./index210.js";
4
+ import { getBlock as c } from "./index40.js";
5
+ import { getGasPrice as y } from "./index50.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
  };