@coinbase/cdp-hooks 0.0.77 → 0.0.79

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