@coinbase/cdp-hooks 0.0.37 → 0.0.39

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 (248) hide show
  1. package/dist/esm/index10.js +33 -10
  2. package/dist/esm/index100.js +32 -24
  3. package/dist/esm/index101.js +182 -22
  4. package/dist/esm/index102.js +6 -32
  5. package/dist/esm/index103.js +2 -194
  6. package/dist/esm/index104.js +10 -6
  7. package/dist/esm/index105.js +19 -2
  8. package/dist/esm/index106.js +25 -10
  9. package/dist/esm/index107.js +8 -18
  10. package/dist/esm/index108.js +52 -24
  11. package/dist/esm/index109.js +45 -8
  12. package/dist/esm/index11.js +3 -8
  13. package/dist/esm/index110.js +8 -55
  14. package/dist/esm/index111.js +7 -45
  15. package/dist/esm/index112.js +16 -8
  16. package/dist/esm/index113.js +18 -7
  17. package/dist/esm/index114.js +24 -16
  18. package/dist/esm/index115.js +16 -18
  19. package/dist/esm/index116.js +52 -22
  20. package/dist/esm/index117.js +11 -16
  21. package/dist/esm/index118.js +159 -53
  22. package/dist/esm/index119.js +21 -11
  23. package/dist/esm/index12.js +8 -31
  24. package/dist/esm/index120.js +124 -157
  25. package/dist/esm/index121.js +37 -20
  26. package/dist/esm/index122.js +6 -127
  27. package/dist/esm/index123.js +24 -35
  28. package/dist/esm/index124.js +191 -6
  29. package/dist/esm/index125.js +4 -28
  30. package/dist/esm/index126.js +57 -184
  31. package/dist/esm/index127.js +3 -4
  32. package/dist/esm/index128.js +16 -60
  33. package/dist/esm/index129.js +17 -3
  34. package/dist/esm/index13.js +68 -3
  35. package/dist/esm/index130.js +22 -19
  36. package/dist/esm/index131.js +11 -16
  37. package/dist/esm/index132.js +33 -22
  38. package/dist/esm/index133.js +3 -12
  39. package/dist/esm/index134.js +17 -33
  40. package/dist/esm/index135.js +28 -3
  41. package/dist/esm/index136.js +35 -18
  42. package/dist/esm/index137.js +7 -27
  43. package/dist/esm/index138.js +24 -34
  44. package/dist/esm/index139.js +28 -7
  45. package/dist/esm/index14.js +8 -8
  46. package/dist/esm/index140.js +63 -24
  47. package/dist/esm/index141.js +9 -28
  48. package/dist/esm/index142.js +31 -62
  49. package/dist/esm/index143.js +27 -9
  50. package/dist/esm/index144.js +23 -32
  51. package/dist/esm/index145.js +3 -27
  52. package/dist/esm/index146.js +14 -24
  53. package/dist/esm/index147.js +103 -3
  54. package/dist/esm/index148.js +64 -14
  55. package/dist/esm/index149.js +5 -103
  56. package/dist/esm/index15.js +27 -67
  57. package/dist/esm/index150.js +6 -64
  58. package/dist/esm/index151.js +27 -5
  59. package/dist/esm/index152.js +39 -6
  60. package/dist/esm/index153.js +13 -27
  61. package/dist/esm/index154.js +41 -38
  62. package/dist/esm/index155.js +5 -13
  63. package/dist/esm/index156.js +11 -42
  64. package/dist/esm/index157.js +19 -5
  65. package/dist/esm/index158.js +78 -11
  66. package/dist/esm/index159.js +2 -20
  67. package/dist/esm/index16.js +70 -9
  68. package/dist/esm/index160.js +33 -74
  69. package/dist/esm/index161.js +111 -2
  70. package/dist/esm/index162.js +38 -27
  71. package/dist/esm/index163.js +30 -108
  72. package/dist/esm/index164.js +8 -48
  73. package/dist/esm/index165.js +6 -32
  74. package/dist/esm/index166.js +6 -8
  75. package/dist/esm/index167.js +11 -6
  76. package/dist/esm/index168.js +10 -6
  77. package/dist/esm/index169.js +13 -11
  78. package/dist/esm/index17.js +17 -26
  79. package/dist/esm/index170.js +31 -9
  80. package/dist/esm/index171.js +5 -14
  81. package/dist/esm/index172.js +8 -32
  82. package/dist/esm/index173.js +20 -5
  83. package/dist/esm/index174.js +31 -19
  84. package/dist/esm/index175.js +20 -31
  85. package/dist/esm/index176.js +3 -20
  86. package/dist/esm/index177.js +17 -3
  87. package/dist/esm/index178.js +10 -17
  88. package/dist/esm/index179.js +21 -10
  89. package/dist/esm/index18.js +108 -68
  90. package/dist/esm/index180.js +22 -21
  91. package/dist/esm/index181.js +5 -22
  92. package/dist/esm/index182.js +5 -5
  93. package/dist/esm/index183.js +8 -5
  94. package/dist/esm/index184.js +104 -8
  95. package/dist/esm/index185.js +3 -105
  96. package/dist/esm/index186.js +19 -3
  97. package/dist/esm/index187.js +170 -17
  98. package/dist/esm/index188.js +16 -170
  99. package/dist/esm/index189.js +10 -18
  100. package/dist/esm/index19.js +60 -19
  101. package/dist/esm/index190.js +40 -12
  102. package/dist/esm/index191.js +2 -36
  103. package/dist/esm/index192.js +4 -41
  104. package/dist/esm/index193.js +9 -39
  105. package/dist/esm/index194.js +20 -2
  106. package/dist/esm/index195.js +7 -4
  107. package/dist/esm/index196.js +10 -9
  108. package/dist/esm/index197.js +66 -19
  109. package/dist/esm/index198.js +65 -7
  110. package/dist/esm/index199.js +184 -10
  111. package/dist/esm/index20.js +24 -110
  112. package/dist/esm/index200.js +22 -66
  113. package/dist/esm/index201.js +38 -61
  114. package/dist/esm/index202.js +69 -178
  115. package/dist/esm/index203.js +39 -21
  116. package/dist/esm/index204.js +9 -35
  117. package/dist/esm/index205.js +7 -70
  118. package/dist/esm/index206.js +7 -40
  119. package/dist/esm/index207.js +6 -16
  120. package/dist/esm/index208.js +36 -13
  121. package/dist/esm/index209.js +15 -7
  122. package/dist/esm/index21.js +31 -51
  123. package/dist/esm/index210.js +8 -6
  124. package/dist/esm/index211.js +11 -35
  125. package/dist/esm/index212.js +9 -15
  126. package/dist/esm/index213.js +16 -8
  127. package/dist/esm/index214.js +22 -12
  128. package/dist/esm/index215.js +30 -9
  129. package/dist/esm/index216.js +2 -17
  130. package/dist/esm/index217.js +12 -21
  131. package/dist/esm/index218.js +12 -30
  132. package/dist/esm/index219.js +48 -2
  133. package/dist/esm/index22.js +36 -23
  134. package/dist/esm/index220.js +8 -12
  135. package/dist/esm/index221.js +13 -12
  136. package/dist/esm/index222.js +13 -46
  137. package/dist/esm/index223.js +8 -9
  138. package/dist/esm/index224.js +15 -13
  139. package/dist/esm/index225.js +24 -14
  140. package/dist/esm/index226.js +11 -8
  141. package/dist/esm/index227.js +23 -14
  142. package/dist/esm/index228.js +51 -24
  143. package/dist/esm/index229.js +17 -11
  144. package/dist/esm/index23.js +46 -28
  145. package/dist/esm/index230.js +14 -24
  146. package/dist/esm/index231.js +11 -51
  147. package/dist/esm/index232.js +103 -17
  148. package/dist/esm/index233.js +6 -14
  149. package/dist/esm/index234.js +224 -11
  150. package/dist/esm/index235.js +6 -103
  151. package/dist/esm/index236.js +7 -7
  152. package/dist/esm/index237.js +25 -223
  153. package/dist/esm/index238.js +19 -6
  154. package/dist/esm/index239.js +147 -7
  155. package/dist/esm/index24.js +160 -34
  156. package/dist/esm/index240.js +12 -26
  157. package/dist/esm/index241.js +36 -20
  158. package/dist/esm/index242.js +41 -146
  159. package/dist/esm/index245.js +2 -2
  160. package/dist/esm/index248.js +5 -5
  161. package/dist/esm/index249.js +2 -2
  162. package/dist/esm/index25.js +36 -55
  163. package/dist/esm/index251.js +1 -1
  164. package/dist/esm/index253.js +2 -2
  165. package/dist/esm/index254.js +2 -2
  166. package/dist/esm/index255.js +1 -1
  167. package/dist/esm/index256.js +1 -1
  168. package/dist/esm/index26.js +8 -162
  169. package/dist/esm/index260.js +1 -1
  170. package/dist/esm/index27.js +31 -39
  171. package/dist/esm/index28.js +35 -8
  172. package/dist/esm/index29.js +8 -30
  173. package/dist/esm/index30.js +28 -35
  174. package/dist/esm/index31.js +46 -9
  175. package/dist/esm/index32.js +83 -24
  176. package/dist/esm/index33.js +37 -43
  177. package/dist/esm/index34.js +8 -88
  178. package/dist/esm/index35.js +6 -40
  179. package/dist/esm/index36.js +16 -8
  180. package/dist/esm/index37.js +8 -6
  181. package/dist/esm/index38.js +13 -16
  182. package/dist/esm/index39.js +7 -8
  183. package/dist/esm/index40.js +9 -13
  184. package/dist/esm/index41.js +16 -7
  185. package/dist/esm/index42.js +46 -9
  186. package/dist/esm/index43.js +13 -16
  187. package/dist/esm/index44.js +16 -46
  188. package/dist/esm/index45.js +13 -13
  189. package/dist/esm/index46.js +5 -15
  190. package/dist/esm/index47.js +35 -13
  191. package/dist/esm/index48.js +8 -5
  192. package/dist/esm/index49.js +7 -34
  193. package/dist/esm/index50.js +25 -9
  194. package/dist/esm/index51.js +10 -8
  195. package/dist/esm/index52.js +14 -25
  196. package/dist/esm/index53.js +11 -10
  197. package/dist/esm/index54.js +116 -14
  198. package/dist/esm/index55.js +33 -11
  199. package/dist/esm/index56.js +76 -113
  200. package/dist/esm/index57.js +174 -30
  201. package/dist/esm/index58.js +42 -77
  202. package/dist/esm/index59.js +6 -177
  203. package/dist/esm/index6.js +2 -2
  204. package/dist/esm/index60.js +13 -44
  205. package/dist/esm/index61.js +12 -5
  206. package/dist/esm/index62.js +99 -13
  207. package/dist/esm/index63.js +72 -13
  208. package/dist/esm/index64.js +83 -95
  209. package/dist/esm/index65.js +138 -62
  210. package/dist/esm/index66.js +120 -71
  211. package/dist/esm/index67.js +46 -126
  212. package/dist/esm/index68.js +23 -136
  213. package/dist/esm/index69.js +102 -65
  214. package/dist/esm/index7.js +2 -2
  215. package/dist/esm/index70.js +6 -23
  216. package/dist/esm/index71.js +128 -102
  217. package/dist/esm/index72.js +276 -7
  218. package/dist/esm/index73.js +3 -132
  219. package/dist/esm/index74.js +4 -276
  220. package/dist/esm/index75.js +9 -3
  221. package/dist/esm/index76.js +2 -4
  222. package/dist/esm/index77.js +2 -9
  223. package/dist/esm/index78.js +3 -2
  224. package/dist/esm/index79.js +327 -2
  225. package/dist/esm/index8.js +5 -5
  226. package/dist/esm/index80.js +14 -3
  227. package/dist/esm/index81.js +4 -326
  228. package/dist/esm/index82.js +54 -12
  229. package/dist/esm/index83.js +2 -5
  230. package/dist/esm/index84.js +6 -54
  231. package/dist/esm/index85.js +215 -2
  232. package/dist/esm/index86.js +32 -8
  233. package/dist/esm/index87.js +20 -213
  234. package/dist/esm/index88.js +6 -32
  235. package/dist/esm/index89.js +73 -21
  236. package/dist/esm/index9.js +2 -2
  237. package/dist/esm/index90.js +5 -5
  238. package/dist/esm/index91.js +5 -73
  239. package/dist/esm/index92.js +35 -5
  240. package/dist/esm/index93.js +75 -5
  241. package/dist/esm/index94.js +3 -36
  242. package/dist/esm/index95.js +15 -67
  243. package/dist/esm/index96.js +452 -3
  244. package/dist/esm/index97.js +22 -15
  245. package/dist/esm/index98.js +15 -440
  246. package/dist/esm/index99.js +24 -21
  247. package/dist/types/index.d.ts +4 -0
  248. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
- import { Hash as d, ahash as u, toBytes as H, clean as l, aexists as a, abytes as p } from "./index242.js";
1
+ import { Hash as d, ahash as u, toBytes as H, clean as l, aexists as a, abytes as p } from "./index239.js";
2
2
  class r extends d {
3
3
  constructor(t, i) {
4
4
  super(), this.finished = !1, this.destroyed = !1, u(t);
@@ -1,5 +1,5 @@
1
1
  import { bitLen as B, bitMask as z } from "./index254.js";
2
- import { validateField as Z, Field as O, FpInvertBatch as R } from "./index237.js";
2
+ import { validateField as Z, Field as O, FpInvertBatch as R } from "./index234.js";
3
3
  /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
4
4
  const g = BigInt(0), h = BigInt(1);
5
5
  function b(t, r) {
@@ -1,166 +1,12 @@
1
- import { toRpc as $ } from "./index218.js";
2
- import { parseAccount as W } from "./index13.js";
3
- import { multicall3Abi as O } from "./index74.js";
4
- import { aggregate3Signature as I } from "./index219.js";
5
- import { deploylessCallViaBytecodeBytecode as J, deploylessCallViaFactoryBytecode as K } from "./index76.js";
6
- import { BaseError as N } from "./index84.js";
7
- import { ClientChainNotConfiguredError as P, ChainDoesNotSupportContract as Q } from "./index99.js";
8
- import { CounterfactualDeploymentFailedError as U, RawContractError as X } from "./index87.js";
9
- import { decodeFunctionResult as Y } from "./index132.js";
10
- import { encodeDeployData as T } from "./index136.js";
11
- import { encodeFunctionData as Z } from "./index139.js";
12
- import { getChainContractAddress as tt } from "./index174.js";
13
- import { numberToHex as V } from "./index111.js";
14
- import { getCallError as at } from "./index220.js";
15
- import { extract as et } from "./index221.js";
16
- import { formatTransactionRequest as rt } from "./index146.js";
17
- import { createBatchScheduler as ot } from "./index17.js";
18
- import { serializeStateOverride as ct } from "./index222.js";
19
- import { assertRequest as nt } from "./index159.js";
20
- import { parseAbi as z } from "./index199.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("./index163.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
85
- });
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"
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]
1
+ import { createFilterRequestScope as r } from "./index207.js";
2
+ async function i(e) {
3
+ const o = r(e, {
4
+ method: "eth_newBlockFilter"
5
+ }), t = await e.request({
6
+ method: "eth_newBlockFilter"
147
7
  });
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;
8
+ return { id: t, request: o(t), type: "block" };
162
9
  }
163
10
  export {
164
- Et as call,
165
- ut as getRevertErrorData
11
+ i as createBlockFilter
166
12
  };
@@ -1,4 +1,4 @@
1
- import { keccak_256 as f } from "./index185.js";
1
+ import { keccak_256 as f } from "./index184.js";
2
2
  import { from as m } from "./index265.js";
3
3
  import { fromBytes as s } from "./index246.js";
4
4
  function p(t, o = {}) {
@@ -1,42 +1,34 @@
1
- import { parseAccount as P } from "./index13.js";
2
- import { numberToHex as y } from "./index111.js";
3
- import { getCallError as F } from "./index220.js";
4
- import { extract as L } from "./index221.js";
5
- import { formatTransactionRequest as A } from "./index146.js";
6
- import { assertRequest as G } from "./index159.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
- }
1
+ import { encodeEventTopics as l } from "./index136.js";
2
+ import { numberToHex as s } from "./index109.js";
3
+ import { createFilterRequestScope as u } from "./index207.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
+ ]
21
+ });
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
+ };
39
31
  }
40
32
  export {
41
- _ as createAccessList
33
+ h as createContractEventFilter
42
34
  };
@@ -1,12 +1,39 @@
1
- import { createFilterRequestScope as r } from "./index210.js";
2
- async function i(e) {
3
- const o = r(e, {
4
- method: "eth_newBlockFilter"
5
- }), t = await e.request({
6
- method: "eth_newBlockFilter"
1
+ import { encodeEventTopics as b } from "./index136.js";
2
+ import { numberToHex as m } from "./index109.js";
3
+ import { createFilterRequestScope as h } from "./index207.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: o(t), type: "block" };
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
- i as createBlockFilter
38
+ l as createEventFilter
12
39
  };
@@ -1,34 +1,12 @@
1
- import { encodeEventTopics as l } from "./index138.js";
2
- import { numberToHex as s } from "./index111.js";
3
- import { createFilterRequestScope as u } from "./index210.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 "./index207.js";
2
+ async function a(e) {
3
+ const n = r(e, {
4
+ method: "eth_newPendingTransactionFilter"
5
+ }), t = await e.request({
6
+ method: "eth_newPendingTransactionFilter"
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: n(t), type: "transaction" };
31
9
  }
32
10
  export {
33
- h as createContractEventFilter
11
+ a as createPendingTransactionFilter
34
12
  };
@@ -1,39 +1,32 @@
1
- import { encodeEventTopics as b } from "./index138.js";
2
- import { numberToHex as m } from "./index111.js";
3
- import { createFilterRequestScope as h } from "./index210.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"
1
+ import { parseAccount as u } from "./index11.js";
2
+ import { encodeFunctionData as f } from "./index137.js";
3
+ import { getContractError as p } from "./index180.js";
4
+ import { getAction as g } from "./index206.js";
5
+ import { estimateGas as G } from "./index32.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
7
11
  });
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
- };
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
+ }
36
29
  }
37
30
  export {
38
- l as createEventFilter
31
+ A as estimateContractGas
39
32
  };
@@ -1,12 +1,49 @@
1
- import { createFilterRequestScope as r } from "./index210.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 { BaseFeeScalarError as p, Eip1559FeesNotSupportedError as F } from "./index95.js";
2
+ import { getAction as l } from "./index206.js";
3
+ import { internal_estimateMaxPriorityFeePerGas as u } from "./index33.js";
4
+ import { getBlock as G } from "./index36.js";
5
+ import { getGasPrice as b } from "./index46.js";
6
+ async function E(e, s) {
7
+ return g(e, s);
8
+ }
9
+ async function g(e, s) {
10
+ const { block: i, chain: a = e.chain, request: t, type: f = "eip1559" } = s || {}, o = await (async () => typeof a?.fees?.baseFeeMultiplier == "function" ? a.fees.baseFeeMultiplier({
11
+ block: i,
12
+ client: e,
13
+ request: t
14
+ }) : a?.fees?.baseFeeMultiplier ?? 1.2)();
15
+ if (o < 1)
16
+ throw new p();
17
+ const m = 10 ** (o.toString().split(".")[1]?.length ?? 0), n = (r) => r * BigInt(Math.ceil(o * m)) / BigInt(m), c = i || await l(e, G, "getBlock")({});
18
+ if (typeof a?.fees?.estimateFeesPerGas == "function") {
19
+ const r = await a.fees.estimateFeesPerGas({
20
+ block: i,
21
+ client: e,
22
+ multiply: n,
23
+ request: t,
24
+ type: f
25
+ });
26
+ if (r !== null)
27
+ return r;
28
+ }
29
+ if (f === "eip1559") {
30
+ if (typeof c.baseFeePerGas != "bigint")
31
+ throw new F();
32
+ const r = typeof t?.maxPriorityFeePerGas == "bigint" ? t.maxPriorityFeePerGas : await u(e, {
33
+ block: c,
34
+ chain: a,
35
+ request: t
36
+ }), P = n(c.baseFeePerGas);
37
+ return {
38
+ maxFeePerGas: t?.maxFeePerGas ?? P + r,
39
+ maxPriorityFeePerGas: r
40
+ };
41
+ }
42
+ return {
43
+ gasPrice: t?.gasPrice ?? n(await l(e, b, "getGasPrice")({}))
44
+ };
9
45
  }
10
46
  export {
11
- a as createPendingTransactionFilter
47
+ E as estimateFeesPerGas,
48
+ g as internal_estimateFeesPerGas
12
49
  };
@@ -1,32 +1,91 @@
1
- import { parseAccount as u } from "./index13.js";
2
- import { encodeFunctionData as f } from "./index139.js";
3
- import { getContractError as p } from "./index181.js";
4
- import { getAction as g } from "./index209.js";
5
- import { estimateGas as G } from "./index34.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
- });
1
+ import { parseAccount as R } from "./index11.js";
2
+ import { BaseError as _ } from "./index82.js";
3
+ import { recoverAuthorizationAddress as A } from "./index220.js";
4
+ import { numberToHex as x } from "./index109.js";
5
+ import { getEstimateGasError as E } from "./index221.js";
6
+ import { extract as N } from "./index218.js";
7
+ import { formatTransactionRequest as S } from "./index144.js";
8
+ import { serializeStateOverride as I } from "./index219.js";
9
+ import { assertRequest as V } from "./index157.js";
10
+ import { prepareTransactionRequest as C } from "./index69.js";
11
+ import { getBalance as j } from "./index34.js";
12
+ async function rt(t, s) {
13
+ const { account: u = t.account } = s, i = u ? R(u) : void 0;
12
14
  try {
13
- return await g(s, G, "estimateGas")({
14
- data: `${m}${e ? e.replace("0x", "") : ""}`,
15
- to: o,
16
- ...t
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
17
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;
18
81
  } 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
82
+ throw E(n, {
83
+ ...s,
84
+ account: i,
85
+ chain: t.chain
27
86
  });
28
87
  }
29
88
  }
30
89
  export {
31
- A as estimateContractGas
90
+ rt as estimateGas
32
91
  };