@coinbase/cdp-hooks 0.0.55 → 0.0.57

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 (292) hide show
  1. package/dist/esm/index.js +55 -51
  2. package/dist/esm/index10.js +11 -6
  3. package/dist/esm/index100.js +4 -73
  4. package/dist/esm/index101.js +55 -5
  5. package/dist/esm/index102.js +2 -6
  6. package/dist/esm/index103.js +6 -34
  7. package/dist/esm/index104.js +199 -60
  8. package/dist/esm/index105.js +32 -3
  9. package/dist/esm/index106.js +20 -22
  10. package/dist/esm/index107.js +5 -451
  11. package/dist/esm/index108.js +68 -25
  12. package/dist/esm/index109.js +5 -26
  13. package/dist/esm/index11.js +6 -12
  14. package/dist/esm/index110.js +5 -33
  15. package/dist/esm/index111.js +33 -32
  16. package/dist/esm/index112.js +52 -170
  17. package/dist/esm/index113.js +3 -9
  18. package/dist/esm/index114.js +24 -2
  19. package/dist/esm/index115.js +448 -9
  20. package/dist/esm/index116.js +25 -13
  21. package/dist/esm/index117.js +20 -21
  22. package/dist/esm/index118.js +33 -8
  23. package/dist/esm/index119.js +33 -54
  24. package/dist/esm/index12.js +7 -50
  25. package/dist/esm/index120.js +193 -45
  26. package/dist/esm/index121.js +8 -8
  27. package/dist/esm/index122.js +2 -8
  28. package/dist/esm/index123.js +11 -15
  29. package/dist/esm/index124.js +16 -16
  30. package/dist/esm/index125.js +27 -24
  31. package/dist/esm/index126.js +8 -16
  32. package/dist/esm/index127.js +53 -52
  33. package/dist/esm/index128.js +45 -11
  34. package/dist/esm/index129.js +8 -160
  35. package/dist/esm/index13.js +13 -8
  36. package/dist/esm/index130.js +7 -21
  37. package/dist/esm/index131.js +15 -126
  38. package/dist/esm/index132.js +16 -36
  39. package/dist/esm/index133.js +24 -6
  40. package/dist/esm/index134.js +16 -27
  41. package/dist/esm/index135.js +53 -190
  42. package/dist/esm/index136.js +12 -4
  43. package/dist/esm/index137.js +154 -58
  44. package/dist/esm/index138.js +22 -3
  45. package/dist/esm/index139.js +126 -19
  46. package/dist/esm/index14.js +9 -34
  47. package/dist/esm/index140.js +37 -15
  48. package/dist/esm/index141.js +6 -23
  49. package/dist/esm/index142.js +27 -11
  50. package/dist/esm/index143.js +188 -31
  51. package/dist/esm/index144.js +4 -3
  52. package/dist/esm/index145.js +64 -18
  53. package/dist/esm/index146.js +3 -28
  54. package/dist/esm/index147.js +17 -32
  55. package/dist/esm/index148.js +16 -7
  56. package/dist/esm/index149.js +21 -23
  57. package/dist/esm/index15.js +33 -17
  58. package/dist/esm/index150.js +11 -28
  59. package/dist/esm/index151.js +32 -62
  60. package/dist/esm/index152.js +3 -10
  61. package/dist/esm/index153.js +18 -33
  62. package/dist/esm/index154.js +27 -27
  63. package/dist/esm/index155.js +34 -23
  64. package/dist/esm/index156.js +7 -3
  65. package/dist/esm/index157.js +25 -14
  66. package/dist/esm/index158.js +27 -102
  67. package/dist/esm/index159.js +61 -61
  68. package/dist/esm/index16.js +18 -12
  69. package/dist/esm/index160.js +9 -5
  70. package/dist/esm/index161.js +33 -6
  71. package/dist/esm/index162.js +27 -27
  72. package/dist/esm/index163.js +23 -38
  73. package/dist/esm/index164.js +3 -13
  74. package/dist/esm/index165.js +14 -42
  75. package/dist/esm/index166.js +103 -5
  76. package/dist/esm/index167.js +64 -11
  77. package/dist/esm/index168.js +5 -19
  78. package/dist/esm/index169.js +6 -78
  79. package/dist/esm/index17.js +11 -11
  80. package/dist/esm/index170.js +28 -2
  81. package/dist/esm/index171.js +38 -36
  82. package/dist/esm/index172.js +13 -110
  83. package/dist/esm/index173.js +40 -46
  84. package/dist/esm/index174.js +5 -32
  85. package/dist/esm/index175.js +11 -8
  86. package/dist/esm/index176.js +19 -6
  87. package/dist/esm/index177.js +78 -6
  88. package/dist/esm/index178.js +2 -12
  89. package/dist/esm/index179.js +36 -9
  90. package/dist/esm/index18.js +12 -54
  91. package/dist/esm/index180.js +109 -12
  92. package/dist/esm/index181.js +46 -30
  93. package/dist/esm/index182.js +33 -5
  94. package/dist/esm/index183.js +8 -8
  95. package/dist/esm/index184.js +6 -19
  96. package/dist/esm/index185.js +6 -31
  97. package/dist/esm/index186.js +11 -20
  98. package/dist/esm/index187.js +10 -3
  99. package/dist/esm/index188.js +13 -17
  100. package/dist/esm/index189.js +32 -10
  101. package/dist/esm/index19.js +54 -58
  102. package/dist/esm/index190.js +5 -22
  103. package/dist/esm/index191.js +8 -22
  104. package/dist/esm/index192.js +19 -5
  105. package/dist/esm/index193.js +31 -5
  106. package/dist/esm/index194.js +20 -8
  107. package/dist/esm/index195.js +3 -104
  108. package/dist/esm/index196.js +18 -3
  109. package/dist/esm/index197.js +10 -18
  110. package/dist/esm/index198.js +19 -169
  111. package/dist/esm/index199.js +22 -17
  112. package/dist/esm/index2.js +56 -34
  113. package/dist/esm/index20.js +58 -56
  114. package/dist/esm/index200.js +6 -10
  115. package/dist/esm/index201.js +6 -5
  116. package/dist/esm/index202.js +8 -40
  117. package/dist/esm/index203.js +105 -2
  118. package/dist/esm/index204.js +3 -5
  119. package/dist/esm/index205.js +17 -9
  120. package/dist/esm/index206.js +169 -17
  121. package/dist/esm/index207.js +17 -7
  122. package/dist/esm/index208.js +10 -12
  123. package/dist/esm/index209.js +2 -67
  124. package/dist/esm/index21.js +56 -33
  125. package/dist/esm/index210.js +39 -64
  126. package/dist/esm/index211.js +2 -186
  127. package/dist/esm/index212.js +4 -22
  128. package/dist/esm/index213.js +9 -41
  129. package/dist/esm/index214.js +17 -74
  130. package/dist/esm/index215.js +7 -40
  131. package/dist/esm/index216.js +10 -15
  132. package/dist/esm/index217.js +66 -13
  133. package/dist/esm/index218.js +65 -7
  134. package/dist/esm/index219.js +185 -6
  135. package/dist/esm/index22.js +5 -4
  136. package/dist/esm/index220.js +21 -35
  137. package/dist/esm/index221.js +42 -15
  138. package/dist/esm/index222.js +76 -8
  139. package/dist/esm/index223.js +40 -12
  140. package/dist/esm/index224.js +16 -9
  141. package/dist/esm/index225.js +12 -15
  142. package/dist/esm/index226.js +7 -22
  143. package/dist/esm/index227.js +6 -30
  144. package/dist/esm/index228.js +37 -2
  145. package/dist/esm/index229.js +15 -13
  146. package/dist/esm/index23.js +46 -8
  147. package/dist/esm/index230.js +8 -12
  148. package/dist/esm/index231.js +12 -47
  149. package/dist/esm/index232.js +9 -9
  150. package/dist/esm/index233.js +16 -13
  151. package/dist/esm/index234.js +21 -13
  152. package/dist/esm/index235.js +28 -6
  153. package/dist/esm/index236.js +2 -16
  154. package/dist/esm/index237.js +12 -23
  155. package/dist/esm/index238.js +12 -11
  156. package/dist/esm/index239.js +45 -22
  157. package/dist/esm/index24.js +38 -68
  158. package/dist/esm/index240.js +9 -51
  159. package/dist/esm/index241.js +13 -17
  160. package/dist/esm/index242.js +13 -13
  161. package/dist/esm/index243.js +8 -11
  162. package/dist/esm/index244.js +15 -103
  163. package/dist/esm/index245.js +24 -6
  164. package/dist/esm/index246.js +10 -223
  165. package/dist/esm/index247.js +24 -6
  166. package/dist/esm/index248.js +52 -7
  167. package/dist/esm/index249.js +17 -26
  168. package/dist/esm/index25.js +2 -10
  169. package/dist/esm/index250.js +13 -18
  170. package/dist/esm/index251.js +11 -146
  171. package/dist/esm/index252.js +103 -12
  172. package/dist/esm/index253.js +7 -36
  173. package/dist/esm/index254.js +224 -41
  174. package/dist/esm/index255.js +6 -68
  175. package/dist/esm/index256.js +7 -39
  176. package/dist/esm/index257.js +27 -2
  177. package/dist/esm/index258.js +19 -69
  178. package/dist/esm/index259.js +145 -33
  179. package/dist/esm/index26.js +68 -27
  180. package/dist/esm/index260.js +12 -20
  181. package/dist/esm/index261.js +36 -4
  182. package/dist/esm/index262.js +41 -136
  183. package/dist/esm/index263.js +3 -155
  184. package/dist/esm/index264.js +68 -9
  185. package/dist/esm/index265.js +3 -16
  186. package/dist/esm/index266.js +126 -103
  187. package/dist/esm/index267.js +123 -102
  188. package/dist/esm/index268.js +9 -78
  189. package/dist/esm/index269.js +17 -2
  190. package/dist/esm/index27.js +30 -66
  191. package/dist/esm/index270.js +105 -690
  192. package/dist/esm/index271.js +126 -131
  193. package/dist/esm/index272.js +66 -30
  194. package/dist/esm/index273.js +2 -202
  195. package/dist/esm/index274.js +699 -2
  196. package/dist/esm/index275.js +137 -63
  197. package/dist/esm/index276.js +42 -4
  198. package/dist/esm/index277.js +201 -40
  199. package/dist/esm/index278.js +65 -7
  200. package/dist/esm/index279.js +4 -62
  201. package/dist/esm/index28.js +19 -18
  202. package/dist/esm/index280.js +33 -70
  203. package/dist/esm/index281.js +8 -4
  204. package/dist/esm/index282.js +55 -187
  205. package/dist/esm/index283.js +77 -3
  206. package/dist/esm/index284.js +4 -64
  207. package/dist/esm/index285.js +194 -44
  208. package/dist/esm/index286.js +63 -4
  209. package/dist/esm/index287.js +45 -5
  210. package/dist/esm/index288.js +5 -2
  211. package/dist/esm/index289.js +5 -22
  212. package/dist/esm/index29.js +31 -109
  213. package/dist/esm/index290.js +4 -0
  214. package/dist/esm/index291.js +24 -0
  215. package/dist/esm/index3.js +2 -175
  216. package/dist/esm/index30.js +3 -60
  217. package/dist/esm/index31.js +8 -23
  218. package/dist/esm/index32.js +66 -38
  219. package/dist/esm/index33.js +8 -36
  220. package/dist/esm/index34.js +27 -57
  221. package/dist/esm/index35.js +66 -159
  222. package/dist/esm/index36.js +19 -39
  223. package/dist/esm/index37.js +110 -9
  224. package/dist/esm/index38.js +60 -31
  225. package/dist/esm/index39.js +23 -35
  226. package/dist/esm/index4.js +36 -24
  227. package/dist/esm/index40.js +40 -9
  228. package/dist/esm/index41.js +36 -28
  229. package/dist/esm/index42.js +56 -44
  230. package/dist/esm/index43.js +157 -82
  231. package/dist/esm/index44.js +36 -37
  232. package/dist/esm/index45.js +8 -7
  233. package/dist/esm/index46.js +30 -5
  234. package/dist/esm/index47.js +36 -16
  235. package/dist/esm/index48.js +9 -8
  236. package/dist/esm/index49.js +29 -13
  237. package/dist/esm/index5.js +169 -48
  238. package/dist/esm/index50.js +46 -7
  239. package/dist/esm/index51.js +88 -9
  240. package/dist/esm/index52.js +40 -16
  241. package/dist/esm/index53.js +8 -46
  242. package/dist/esm/index54.js +6 -13
  243. package/dist/esm/index55.js +16 -16
  244. package/dist/esm/index56.js +8 -13
  245. package/dist/esm/index57.js +13 -6
  246. package/dist/esm/index58.js +7 -35
  247. package/dist/esm/index59.js +9 -9
  248. package/dist/esm/index6.js +15 -15
  249. package/dist/esm/index60.js +15 -7
  250. package/dist/esm/index61.js +45 -24
  251. package/dist/esm/index62.js +13 -10
  252. package/dist/esm/index63.js +15 -13
  253. package/dist/esm/index64.js +13 -11
  254. package/dist/esm/index65.js +6 -116
  255. package/dist/esm/index66.js +34 -32
  256. package/dist/esm/index67.js +9 -79
  257. package/dist/esm/index68.js +8 -177
  258. package/dist/esm/index69.js +24 -43
  259. package/dist/esm/index7.js +52 -11
  260. package/dist/esm/index70.js +10 -6
  261. package/dist/esm/index71.js +13 -12
  262. package/dist/esm/index72.js +11 -13
  263. package/dist/esm/index73.js +113 -96
  264. package/dist/esm/index74.js +32 -71
  265. package/dist/esm/index75.js +76 -84
  266. package/dist/esm/index76.js +174 -145
  267. package/dist/esm/index77.js +43 -135
  268. package/dist/esm/index78.js +6 -68
  269. package/dist/esm/index79.js +10 -20
  270. package/dist/esm/index8.js +24 -13
  271. package/dist/esm/index80.js +13 -105
  272. package/dist/esm/index81.js +99 -6
  273. package/dist/esm/index82.js +67 -126
  274. package/dist/esm/index83.js +83 -271
  275. package/dist/esm/index84.js +149 -3
  276. package/dist/esm/index85.js +137 -4
  277. package/dist/esm/index86.js +69 -9
  278. package/dist/esm/index87.js +24 -2
  279. package/dist/esm/index88.js +106 -2
  280. package/dist/esm/index89.js +7 -3
  281. package/dist/esm/index9.js +11 -6
  282. package/dist/esm/index90.js +131 -326
  283. package/dist/esm/index91.js +276 -14
  284. package/dist/esm/index92.js +3 -5
  285. package/dist/esm/index93.js +4 -56
  286. package/dist/esm/index94.js +9 -2
  287. package/dist/esm/index95.js +2 -8
  288. package/dist/esm/index96.js +2 -215
  289. package/dist/esm/index97.js +3 -32
  290. package/dist/esm/index98.js +326 -21
  291. package/dist/esm/index99.js +13 -5
  292. package/package.json +3 -3
@@ -1,12 +1,43 @@
1
- import { createFilterRequestScope as r } from "./index219.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" };
1
+ import { universalResolverReverseAbi as f } from "./index91.js";
2
+ import { getChainContractAddress as u } from "./index192.js";
3
+ import { toHex as h } from "./index128.js";
4
+ import { isNullUniversalResolverError as p } from "./index232.js";
5
+ import { packetToBytes as C } from "./index233.js";
6
+ import { getAction as w } from "./index226.js";
7
+ import { readContract as A } from "./index74.js";
8
+ async function b(e, { address: t, blockNumber: s, blockTag: i, gatewayUrls: a, strict: c, universalResolverAddress: d }) {
9
+ let o = d;
10
+ if (!o) {
11
+ if (!e.chain)
12
+ throw new Error("client chain not configured. universalResolverAddress is required.");
13
+ o = u({
14
+ blockNumber: s,
15
+ chain: e.chain,
16
+ contract: "ensUniversalResolver"
17
+ });
18
+ }
19
+ const v = `${t.toLowerCase().substring(2)}.addr.reverse`;
20
+ try {
21
+ const r = {
22
+ address: o,
23
+ abi: f,
24
+ functionName: "reverse",
25
+ args: [h(C(v))],
26
+ blockNumber: s,
27
+ blockTag: i
28
+ }, n = w(e, A, "readContract"), [l, m] = a ? await n({
29
+ ...r,
30
+ args: [...r.args, a]
31
+ }) : await n(r);
32
+ return t.toLowerCase() !== m.toLowerCase() ? null : l;
33
+ } catch (r) {
34
+ if (c)
35
+ throw r;
36
+ if (p(r, "reverse"))
37
+ return null;
38
+ throw r;
39
+ }
9
40
  }
10
41
  export {
11
- a as createPendingTransactionFilter
42
+ b as getEnsName
12
43
  };
@@ -1,32 +1,40 @@
1
- import { parseAccount as u } from "./index22.js";
2
- import { encodeFunctionData as f } from "./index148.js";
3
- import { getContractError as p } from "./index191.js";
4
- import { getAction as g } from "./index218.js";
5
- import { estimateGas as G } from "./index43.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
1
+ import { getChainContractAddress as l } from "./index192.js";
2
+ import { toHex as u } from "./index128.js";
3
+ import { packetToBytes as v } from "./index233.js";
4
+ import { getAction as f } from "./index226.js";
5
+ import { readContract as m } from "./index74.js";
6
+ async function A(o, r) {
7
+ const { blockNumber: n, blockTag: i, name: s } = r, { chain: e } = o, a = (() => {
8
+ if (r.universalResolverAddress)
9
+ return r.universalResolverAddress;
10
+ if (!e)
11
+ throw new Error("client chain not configured. universalResolverAddress is required.");
12
+ return l({
13
+ blockNumber: n,
14
+ chain: e,
15
+ contract: "ensUniversalResolver"
27
16
  });
28
- }
17
+ })(), t = e?.ensTlds;
18
+ if (t && !t.some((c) => s.endsWith(c)))
19
+ throw new Error(`${s} is not a valid ENS TLD (${t?.join(", ")}) for chain "${e.name}" (id: ${e.id}).`);
20
+ const [d] = await f(o, m, "readContract")({
21
+ address: a,
22
+ abi: [
23
+ {
24
+ inputs: [{ type: "bytes" }],
25
+ name: "findResolver",
26
+ outputs: [{ type: "address" }, { type: "bytes32" }],
27
+ stateMutability: "view",
28
+ type: "function"
29
+ }
30
+ ],
31
+ functionName: "findResolver",
32
+ args: [u(v(s))],
33
+ blockNumber: n,
34
+ blockTag: i
35
+ });
36
+ return d;
29
37
  }
30
38
  export {
31
- A as estimateContractGas
39
+ A as getEnsResolver
32
40
  };
@@ -1,49 +1,61 @@
1
- import { BaseFeeScalarError as p, Eip1559FeesNotSupportedError as F } from "./index106.js";
2
- import { getAction as l } from "./index218.js";
3
- import { internal_estimateMaxPriorityFeePerGas as u } from "./index44.js";
4
- import { getBlock as G } from "./index47.js";
5
- import { getGasPrice as b } from "./index57.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 { textResolverAbi as l, universalResolverResolveAbi as h } from "./index91.js";
2
+ import { decodeFunctionResult as p } from "./index149.js";
3
+ import { encodeFunctionData as A } from "./index156.js";
4
+ import { getChainContractAddress as R } from "./index192.js";
5
+ import { toHex as b } from "./index128.js";
6
+ import { isNullUniversalResolverError as g } from "./index232.js";
7
+ import { localBatchGatewayUrl as w } from "./index182.js";
8
+ import { namehash as x } from "./index131.js";
9
+ import { packetToBytes as C } from "./index233.js";
10
+ import { getAction as y } from "./index226.js";
11
+ import { readContract as N } from "./index74.js";
12
+ async function j(n, e) {
13
+ const { blockNumber: s, blockTag: m, key: d, name: t, gatewayUrls: u, strict: f } = e, { chain: o } = n, v = (() => {
14
+ if (e.universalResolverAddress)
15
+ return e.universalResolverAddress;
16
+ if (!o)
17
+ throw new Error("client chain not configured. universalResolverAddress is required.");
18
+ return R({
19
+ blockNumber: s,
20
+ chain: o,
21
+ contract: "ensUniversalResolver"
25
22
  });
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
- };
23
+ })(), a = o?.ensTlds;
24
+ if (a && !a.some((r) => t.endsWith(r)))
25
+ return null;
26
+ try {
27
+ const r = {
28
+ address: v,
29
+ abi: h,
30
+ functionName: "resolve",
31
+ args: [
32
+ b(C(t)),
33
+ A({
34
+ abi: l,
35
+ functionName: "text",
36
+ args: [x(t), d]
37
+ }),
38
+ u ?? [w]
39
+ ],
40
+ blockNumber: s,
41
+ blockTag: m
42
+ }, i = await y(n, N, "readContract")(r);
43
+ if (i[0] === "0x")
44
+ return null;
45
+ const c = p({
46
+ abi: l,
47
+ functionName: "text",
48
+ data: i[0]
49
+ });
50
+ return c === "" ? null : c;
51
+ } catch (r) {
52
+ if (f)
53
+ throw r;
54
+ if (g(r, "resolve"))
55
+ return null;
56
+ throw r;
41
57
  }
42
- return {
43
- gasPrice: t?.gasPrice ?? n(await l(e, b, "getGasPrice")({}))
44
- };
45
58
  }
46
59
  export {
47
- E as estimateFeesPerGas,
48
- g as internal_estimateFeesPerGas
60
+ j as getEnsText
49
61
  };
@@ -1,91 +1,166 @@
1
- import { parseAccount as R } from "./index22.js";
2
- import { BaseError as _ } from "./index93.js";
3
- import { recoverAuthorizationAddress as A } from "./index232.js";
4
- import { numberToHex as x } from "./index120.js";
5
- import { getEstimateGasError as E } from "./index233.js";
6
- import { extract as N } from "./index230.js";
7
- import { formatTransactionRequest as S } from "./index155.js";
8
- import { serializeStateOverride as I } from "./index231.js";
9
- import { assertRequest as V } from "./index168.js";
10
- import { prepareTransactionRequest as C } from "./index80.js";
11
- import { getBalance as j } from "./index45.js";
12
- async function rt(t, s) {
13
- const { account: u = t.account } = s, i = u ? R(u) : void 0;
1
+ import { toRpc as $ } from "./index235.js";
2
+ import { parseAccount as W } from "./index30.js";
3
+ import { multicall3Abi as O } from "./index91.js";
4
+ import { aggregate3Signature as I } from "./index236.js";
5
+ import { deploylessCallViaBytecodeBytecode as J, deploylessCallViaFactoryBytecode as K } from "./index93.js";
6
+ import { BaseError as N } from "./index101.js";
7
+ import { ClientChainNotConfiguredError as P, ChainDoesNotSupportContract as Q } from "./index116.js";
8
+ import { CounterfactualDeploymentFailedError as U, RawContractError as X } from "./index104.js";
9
+ import { decodeFunctionResult as Y } from "./index149.js";
10
+ import { encodeDeployData as T } from "./index153.js";
11
+ import { encodeFunctionData as Z } from "./index156.js";
12
+ import { getChainContractAddress as tt } from "./index192.js";
13
+ import { numberToHex as V } from "./index128.js";
14
+ import { getCallError as at } from "./index237.js";
15
+ import { extract as et } from "./index238.js";
16
+ import { formatTransactionRequest as rt } from "./index163.js";
17
+ import { createBatchScheduler as ot } from "./index34.js";
18
+ import { serializeStateOverride as ct } from "./index239.js";
19
+ import { assertRequest as nt } from "./index176.js";
20
+ import { parseAbi as z } from "./index216.js";
21
+ async function Et(t, a) {
22
+ const { account: e = t.account, authorizationList: n, batch: r = !!t.batch?.multicall, blockNumber: m, blockTag: C = t.experimental_blockTag ?? "latest", accessList: x, blobs: D, blockOverrides: d, code: p, data: o, factory: u, factoryData: s, gas: B, gasPrice: b, maxFeePerBlobGas: h, maxFeePerGas: y, maxPriorityFeePerGas: g, nonce: k, to: f, value: H, stateOverride: L, ...j } = a, R = e ? W(e) : void 0;
23
+ if (p && (u || s))
24
+ throw new N("Cannot provide both `code` & `factory`/`factoryData` as parameters.");
25
+ if (p && f)
26
+ throw new N("Cannot provide both `code` & `to` as parameters.");
27
+ const S = p && o, _ = u && s && f && o, A = S || _, G = S ? lt({
28
+ code: p,
29
+ data: o
30
+ }) : _ ? dt({
31
+ data: o,
32
+ factory: u,
33
+ factoryData: s,
34
+ to: f
35
+ }) : o;
14
36
  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)({
37
+ nt(a);
38
+ const w = (typeof m == "bigint" ? V(m) : void 0) || C, i = d ? $(d) : void 0, l = ct(L), q = t.chain?.formatters?.transactionRequest?.format, v = (q || rt)({
45
39
  // 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
40
+ ...et(j, { format: q }),
41
+ from: R?.address,
42
+ accessList: x,
43
+ authorizationList: n,
44
+ blobs: D,
45
+ data: G,
46
+ gas: B,
47
+ gasPrice: b,
48
+ maxFeePerBlobGas: h,
49
+ maxFeePerGas: y,
50
+ maxPriorityFeePerGas: g,
51
+ nonce: k,
52
+ to: A ? void 0 : f,
53
+ value: H
61
54
  });
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,
55
+ if (r && st({ request: v }) && !l && !i)
56
+ try {
57
+ return await it(t, {
58
+ ...v,
59
+ blockNumber: m,
60
+ blockTag: C
61
+ });
62
+ } catch (c) {
63
+ if (!(c instanceof P) && !(c instanceof Q))
64
+ throw c;
65
+ }
66
+ const M = (() => {
67
+ const c = [
68
+ v,
69
+ w
70
+ ];
71
+ return l && i ? [...c, l, i] : l ? [...c, l] : i ? [...c, {}, i] : c;
72
+ })(), E = await t.request({
73
+ method: "eth_call",
74
+ params: M
75
+ });
76
+ return E === "0x" ? { data: void 0 } : { data: E };
77
+ } catch (F) {
78
+ const w = ut(F), { offchainLookup: i, offchainLookupSignature: l } = await import("./index180.js");
79
+ if (t.ccipRead !== !1 && w?.slice(0, 10) === l && f)
80
+ return { data: await i(t, { data: w, to: f }) };
81
+ throw A && w?.slice(0, 10) === "0x101bb98d" ? new U({ factory: u }) : at(F, {
82
+ ...a,
83
+ account: R,
85
84
  chain: t.chain
86
85
  });
87
86
  }
88
87
  }
88
+ function st({ request: t }) {
89
+ const { data: a, to: e, ...n } = t;
90
+ return !(!a || a.startsWith(I) || !e || Object.values(n).filter((r) => typeof r < "u").length > 0);
91
+ }
92
+ async function it(t, a) {
93
+ const { batchSize: e = 1024, wait: n = 0 } = typeof t.batch?.multicall == "object" ? t.batch.multicall : {}, { blockNumber: r, blockTag: m = t.experimental_blockTag ?? "latest", data: C, multicallAddress: x, to: D } = a;
94
+ let d = x;
95
+ if (!d) {
96
+ if (!t.chain)
97
+ throw new P();
98
+ d = tt({
99
+ blockNumber: r,
100
+ chain: t.chain,
101
+ contract: "multicall3"
102
+ });
103
+ }
104
+ const o = (typeof r == "bigint" ? V(r) : void 0) || m, { schedule: u } = ot({
105
+ id: `${t.uid}.${o}`,
106
+ wait: n,
107
+ shouldSplitBatch(b) {
108
+ return b.reduce((y, { data: g }) => y + (g.length - 2), 0) > e * 2;
109
+ },
110
+ fn: async (b) => {
111
+ const h = b.map((k) => ({
112
+ allowFailure: !0,
113
+ callData: k.data,
114
+ target: k.to
115
+ })), y = Z({
116
+ abi: O,
117
+ args: [h],
118
+ functionName: "aggregate3"
119
+ }), g = await t.request({
120
+ method: "eth_call",
121
+ params: [
122
+ {
123
+ data: y,
124
+ to: d
125
+ },
126
+ o
127
+ ]
128
+ });
129
+ return Y({
130
+ abi: O,
131
+ args: [h],
132
+ functionName: "aggregate3",
133
+ data: g || "0x"
134
+ });
135
+ }
136
+ }), [{ returnData: s, success: B }] = await u({ data: C, to: D });
137
+ if (!B)
138
+ throw new X({ data: s });
139
+ return s === "0x" ? { data: void 0 } : { data: s };
140
+ }
141
+ function lt(t) {
142
+ const { code: a, data: e } = t;
143
+ return T({
144
+ abi: z(["constructor(bytes, bytes)"]),
145
+ bytecode: J,
146
+ args: [a, e]
147
+ });
148
+ }
149
+ function dt(t) {
150
+ const { data: a, factory: e, factoryData: n, to: r } = t;
151
+ return T({
152
+ abi: z(["constructor(address, bytes, address, bytes)"]),
153
+ bytecode: K,
154
+ args: [r, a, e, n]
155
+ });
156
+ }
157
+ function ut(t) {
158
+ if (!(t instanceof N))
159
+ return;
160
+ const a = t.walk();
161
+ return typeof a?.data == "object" ? a.data?.data : a.data;
162
+ }
89
163
  export {
90
- rt as estimateGas
164
+ Et as call,
165
+ ut as getRevertErrorData
91
166
  };
@@ -1,43 +1,42 @@
1
- import { Eip1559FeesNotSupportedError as f } from "./index106.js";
2
- import { hexToBigInt as u } from "./index153.js";
3
- import { getAction as s } from "./index218.js";
4
- import { getBlock as c } from "./index47.js";
5
- import { getGasPrice as y } from "./index57.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 P } from "./index30.js";
2
+ import { numberToHex as y } from "./index128.js";
3
+ import { getCallError as F } from "./index237.js";
4
+ import { extract as L } from "./index238.js";
5
+ import { formatTransactionRequest as A } from "./index163.js";
6
+ import { assertRequest as G } from "./index176.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;
11
9
  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"
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
27
37
  });
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
38
  }
39
39
  }
40
40
  export {
41
- h as estimateMaxPriorityFeePerGas,
42
- p as internal_estimateMaxPriorityFeePerGas
41
+ _ as createAccessList
43
42
  };
@@ -1,11 +1,12 @@
1
- import { numberToHex as c } from "./index120.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]
1
+ import { createFilterRequestScope as r } from "./index227.js";
2
+ async function i(e) {
3
+ const o = r(e, {
4
+ method: "eth_newBlockFilter"
5
+ }), t = await e.request({
6
+ method: "eth_newBlockFilter"
6
7
  });
7
- return BigInt(r);
8
+ return { id: t, request: o(t), type: "block" };
8
9
  }
9
10
  export {
10
- m as getBalance
11
+ i as createBlockFilter
11
12
  };
@@ -1,9 +1,34 @@
1
- async function a(e) {
2
- const t = await e.request({
3
- method: "eth_blobBaseFee"
1
+ import { encodeEventTopics as l } from "./index155.js";
2
+ import { numberToHex as s } from "./index128.js";
3
+ import { createFilterRequestScope as u } from "./index227.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
+ ]
4
21
  });
5
- return BigInt(t);
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
+ };
6
31
  }
7
32
  export {
8
- a as getBlobBaseFee
33
+ h as createContractEventFilter
9
34
  };