@coinbase/cdp-hooks 0.0.62 → 0.0.64

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