@coinbase/cdp-hooks 0.0.91 → 0.0.93

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 (345) hide show
  1. package/dist/esm/index.js +69 -65
  2. package/dist/esm/index10.js +1 -1
  3. package/dist/esm/index100.js +36 -37
  4. package/dist/esm/index101.js +8 -7
  5. package/dist/esm/index102.js +30 -5
  6. package/dist/esm/index103.js +36 -16
  7. package/dist/esm/index104.js +9 -8
  8. package/dist/esm/index105.js +29 -13
  9. package/dist/esm/index106.js +46 -7
  10. package/dist/esm/index107.js +88 -9
  11. package/dist/esm/index108.js +40 -16
  12. package/dist/esm/index109.js +8 -46
  13. package/dist/esm/index11.js +1 -1
  14. package/dist/esm/index110.js +6 -13
  15. package/dist/esm/index111.js +16 -16
  16. package/dist/esm/index112.js +8 -13
  17. package/dist/esm/index113.js +13 -6
  18. package/dist/esm/index114.js +7 -35
  19. package/dist/esm/index115.js +9 -9
  20. package/dist/esm/index116.js +15 -7
  21. package/dist/esm/index117.js +45 -24
  22. package/dist/esm/index118.js +13 -10
  23. package/dist/esm/index119.js +15 -13
  24. package/dist/esm/index12.js +1 -1
  25. package/dist/esm/index120.js +13 -11
  26. package/dist/esm/index121.js +6 -116
  27. package/dist/esm/index122.js +34 -32
  28. package/dist/esm/index123.js +9 -79
  29. package/dist/esm/index124.js +8 -177
  30. package/dist/esm/index125.js +24 -43
  31. package/dist/esm/index126.js +10 -6
  32. package/dist/esm/index127.js +13 -12
  33. package/dist/esm/index128.js +11 -13
  34. package/dist/esm/index129.js +113 -96
  35. package/dist/esm/index13.js +1 -1
  36. package/dist/esm/index130.js +32 -71
  37. package/dist/esm/index131.js +76 -84
  38. package/dist/esm/index132.js +174 -145
  39. package/dist/esm/index133.js +43 -135
  40. package/dist/esm/index134.js +6 -68
  41. package/dist/esm/index135.js +10 -20
  42. package/dist/esm/index136.js +13 -105
  43. package/dist/esm/index137.js +99 -6
  44. package/dist/esm/index138.js +67 -126
  45. package/dist/esm/index139.js +83 -271
  46. package/dist/esm/index14.js +1 -1
  47. package/dist/esm/index140.js +149 -3
  48. package/dist/esm/index141.js +137 -4
  49. package/dist/esm/index142.js +69 -9
  50. package/dist/esm/index143.js +24 -2
  51. package/dist/esm/index144.js +106 -2
  52. package/dist/esm/index145.js +7 -3
  53. package/dist/esm/index146.js +131 -326
  54. package/dist/esm/index147.js +276 -14
  55. package/dist/esm/index148.js +3 -5
  56. package/dist/esm/index149.js +4 -56
  57. package/dist/esm/index15.js +1 -1
  58. package/dist/esm/index150.js +9 -2
  59. package/dist/esm/index151.js +2 -8
  60. package/dist/esm/index152.js +2 -215
  61. package/dist/esm/index153.js +3 -32
  62. package/dist/esm/index154.js +326 -21
  63. package/dist/esm/index155.js +13 -5
  64. package/dist/esm/index156.js +4 -73
  65. package/dist/esm/index157.js +55 -5
  66. package/dist/esm/index158.js +2 -6
  67. package/dist/esm/index159.js +6 -34
  68. package/dist/esm/index16.js +1 -1
  69. package/dist/esm/index160.js +199 -60
  70. package/dist/esm/index161.js +32 -3
  71. package/dist/esm/index162.js +20 -22
  72. package/dist/esm/index163.js +5 -451
  73. package/dist/esm/index164.js +68 -25
  74. package/dist/esm/index165.js +5 -26
  75. package/dist/esm/index166.js +5 -33
  76. package/dist/esm/index167.js +33 -32
  77. package/dist/esm/index168.js +52 -170
  78. package/dist/esm/index169.js +3 -9
  79. package/dist/esm/index17.js +1 -1
  80. package/dist/esm/index170.js +24 -2
  81. package/dist/esm/index171.js +448 -9
  82. package/dist/esm/index172.js +25 -13
  83. package/dist/esm/index173.js +20 -21
  84. package/dist/esm/index174.js +33 -8
  85. package/dist/esm/index175.js +33 -54
  86. package/dist/esm/index176.js +193 -45
  87. package/dist/esm/index177.js +8 -8
  88. package/dist/esm/index178.js +2 -8
  89. package/dist/esm/index179.js +11 -15
  90. package/dist/esm/index18.js +1 -1
  91. package/dist/esm/index180.js +16 -16
  92. package/dist/esm/index181.js +27 -24
  93. package/dist/esm/index182.js +8 -16
  94. package/dist/esm/index183.js +53 -52
  95. package/dist/esm/index184.js +45 -11
  96. package/dist/esm/index185.js +8 -160
  97. package/dist/esm/index186.js +7 -21
  98. package/dist/esm/index187.js +15 -126
  99. package/dist/esm/index188.js +16 -36
  100. package/dist/esm/index189.js +24 -6
  101. package/dist/esm/index19.js +1 -1
  102. package/dist/esm/index190.js +16 -27
  103. package/dist/esm/index191.js +53 -190
  104. package/dist/esm/index192.js +12 -4
  105. package/dist/esm/index193.js +154 -58
  106. package/dist/esm/index194.js +22 -3
  107. package/dist/esm/index195.js +126 -19
  108. package/dist/esm/index196.js +37 -15
  109. package/dist/esm/index197.js +6 -23
  110. package/dist/esm/index198.js +27 -11
  111. package/dist/esm/index199.js +188 -31
  112. package/dist/esm/index2.js +2 -2
  113. package/dist/esm/index20.js +1 -1
  114. package/dist/esm/index200.js +4 -3
  115. package/dist/esm/index201.js +64 -18
  116. package/dist/esm/index202.js +3 -28
  117. package/dist/esm/index203.js +17 -32
  118. package/dist/esm/index204.js +16 -7
  119. package/dist/esm/index205.js +21 -23
  120. package/dist/esm/index206.js +11 -28
  121. package/dist/esm/index207.js +32 -62
  122. package/dist/esm/index208.js +3 -10
  123. package/dist/esm/index209.js +18 -33
  124. package/dist/esm/index21.js +1 -1
  125. package/dist/esm/index210.js +27 -27
  126. package/dist/esm/index211.js +34 -23
  127. package/dist/esm/index212.js +7 -3
  128. package/dist/esm/index213.js +25 -14
  129. package/dist/esm/index214.js +27 -102
  130. package/dist/esm/index215.js +61 -61
  131. package/dist/esm/index216.js +9 -5
  132. package/dist/esm/index217.js +33 -6
  133. package/dist/esm/index218.js +27 -27
  134. package/dist/esm/index219.js +23 -37
  135. package/dist/esm/index22.js +1 -1
  136. package/dist/esm/index220.js +3 -13
  137. package/dist/esm/index221.js +14 -42
  138. package/dist/esm/index222.js +103 -5
  139. package/dist/esm/index223.js +64 -11
  140. package/dist/esm/index224.js +5 -19
  141. package/dist/esm/index225.js +6 -78
  142. package/dist/esm/index226.js +28 -2
  143. package/dist/esm/index227.js +37 -36
  144. package/dist/esm/index228.js +13 -110
  145. package/dist/esm/index229.js +40 -46
  146. package/dist/esm/index23.js +1 -1
  147. package/dist/esm/index230.js +5 -32
  148. package/dist/esm/index231.js +11 -8
  149. package/dist/esm/index232.js +19 -6
  150. package/dist/esm/index233.js +78 -6
  151. package/dist/esm/index234.js +2 -12
  152. package/dist/esm/index235.js +36 -9
  153. package/dist/esm/index236.js +109 -12
  154. package/dist/esm/index237.js +46 -30
  155. package/dist/esm/index238.js +33 -5
  156. package/dist/esm/index239.js +8 -8
  157. package/dist/esm/index24.js +1 -1
  158. package/dist/esm/index240.js +6 -19
  159. package/dist/esm/index241.js +6 -31
  160. package/dist/esm/index242.js +11 -20
  161. package/dist/esm/index243.js +10 -3
  162. package/dist/esm/index244.js +13 -17
  163. package/dist/esm/index245.js +32 -10
  164. package/dist/esm/index246.js +5 -22
  165. package/dist/esm/index247.js +8 -22
  166. package/dist/esm/index248.js +19 -5
  167. package/dist/esm/index249.js +31 -5
  168. package/dist/esm/index25.js +2 -2
  169. package/dist/esm/index250.js +20 -8
  170. package/dist/esm/index251.js +3 -104
  171. package/dist/esm/index252.js +18 -3
  172. package/dist/esm/index253.js +10 -18
  173. package/dist/esm/index254.js +19 -169
  174. package/dist/esm/index255.js +22 -17
  175. package/dist/esm/index256.js +6 -10
  176. package/dist/esm/index257.js +5 -40
  177. package/dist/esm/index258.js +9 -2
  178. package/dist/esm/index259.js +104 -4
  179. package/dist/esm/index26.js +1 -1
  180. package/dist/esm/index260.js +3 -11
  181. package/dist/esm/index261.js +17 -18
  182. package/dist/esm/index262.js +171 -7
  183. package/dist/esm/index263.js +16 -10
  184. package/dist/esm/index264.js +10 -67
  185. package/dist/esm/index265.js +39 -64
  186. package/dist/esm/index266.js +2 -186
  187. package/dist/esm/index267.js +4 -22
  188. package/dist/esm/index268.js +9 -41
  189. package/dist/esm/index269.js +17 -74
  190. package/dist/esm/index27.js +1 -1
  191. package/dist/esm/index270.js +7 -40
  192. package/dist/esm/index271.js +10 -15
  193. package/dist/esm/index272.js +66 -13
  194. package/dist/esm/index273.js +65 -7
  195. package/dist/esm/index274.js +185 -6
  196. package/dist/esm/index275.js +21 -35
  197. package/dist/esm/index276.js +42 -15
  198. package/dist/esm/index277.js +76 -8
  199. package/dist/esm/index278.js +40 -12
  200. package/dist/esm/index279.js +16 -9
  201. package/dist/esm/index28.js +1 -1
  202. package/dist/esm/index280.js +12 -15
  203. package/dist/esm/index281.js +7 -22
  204. package/dist/esm/index282.js +6 -30
  205. package/dist/esm/index283.js +37 -2
  206. package/dist/esm/index284.js +15 -13
  207. package/dist/esm/index285.js +8 -12
  208. package/dist/esm/index286.js +12 -47
  209. package/dist/esm/index287.js +9 -9
  210. package/dist/esm/index288.js +16 -13
  211. package/dist/esm/index289.js +21 -13
  212. package/dist/esm/index29.js +1 -1
  213. package/dist/esm/index290.js +28 -6
  214. package/dist/esm/index291.js +2 -16
  215. package/dist/esm/index292.js +12 -23
  216. package/dist/esm/index293.js +12 -11
  217. package/dist/esm/index294.js +45 -22
  218. package/dist/esm/index295.js +9 -51
  219. package/dist/esm/index296.js +13 -17
  220. package/dist/esm/index297.js +13 -13
  221. package/dist/esm/index298.js +8 -11
  222. package/dist/esm/index299.js +15 -103
  223. package/dist/esm/index3.js +1 -1
  224. package/dist/esm/index30.js +1 -1
  225. package/dist/esm/index300.js +24 -5
  226. package/dist/esm/index301.js +10 -222
  227. package/dist/esm/index302.js +24 -6
  228. package/dist/esm/index303.js +52 -7
  229. package/dist/esm/index304.js +17 -26
  230. package/dist/esm/index305.js +13 -18
  231. package/dist/esm/index306.js +11 -145
  232. package/dist/esm/index307.js +103 -12
  233. package/dist/esm/index308.js +6 -36
  234. package/dist/esm/index309.js +223 -41
  235. package/dist/esm/index31.js +1 -1
  236. package/dist/esm/index310.js +6 -38
  237. package/dist/esm/index311.js +7 -2
  238. package/dist/esm/index312.js +25 -68
  239. package/dist/esm/index313.js +19 -34
  240. package/dist/esm/index314.js +143 -12
  241. package/dist/esm/index315.js +13 -69
  242. package/dist/esm/index316.js +36 -4
  243. package/dist/esm/index317.js +41 -136
  244. package/dist/esm/index318.js +3 -155
  245. package/dist/esm/index319.js +68 -9
  246. package/dist/esm/index32.js +1 -1
  247. package/dist/esm/index320.js +136 -16
  248. package/dist/esm/index321.js +3 -113
  249. package/dist/esm/index322.js +123 -102
  250. package/dist/esm/index323.js +9 -78
  251. package/dist/esm/index324.js +17 -2
  252. package/dist/esm/index325.js +105 -689
  253. package/dist/esm/index326.js +126 -130
  254. package/dist/esm/index327.js +66 -30
  255. package/dist/esm/index328.js +2 -201
  256. package/dist/esm/index329.js +698 -2
  257. package/dist/esm/index330.js +136 -63
  258. package/dist/esm/index331.js +42 -4
  259. package/dist/esm/index332.js +200 -40
  260. package/dist/esm/index333.js +65 -7
  261. package/dist/esm/index334.js +4 -62
  262. package/dist/esm/index335.js +33 -70
  263. package/dist/esm/index336.js +8 -4
  264. package/dist/esm/index337.js +55 -187
  265. package/dist/esm/index338.js +77 -3
  266. package/dist/esm/index339.js +4 -64
  267. package/dist/esm/index340.js +194 -44
  268. package/dist/esm/index341.js +63 -4
  269. package/dist/esm/index342.js +45 -5
  270. package/dist/esm/index343.js +5 -2
  271. package/dist/esm/index344.js +5 -22
  272. package/dist/esm/index345.js +4 -0
  273. package/dist/esm/index346.js +24 -0
  274. package/dist/esm/index35.js +1 -1
  275. package/dist/esm/index36.js +2 -2
  276. package/dist/esm/index37.js +36 -26
  277. package/dist/esm/index38.js +23 -52
  278. package/dist/esm/index39.js +52 -23
  279. package/dist/esm/index40.js +26 -12
  280. package/dist/esm/index41.js +8 -8
  281. package/dist/esm/index42.js +8 -8
  282. package/dist/esm/index43.js +10 -5
  283. package/dist/esm/index44.js +5 -5
  284. package/dist/esm/index45.js +4 -11
  285. package/dist/esm/index46.js +12 -5
  286. package/dist/esm/index47.js +4 -4
  287. package/dist/esm/index48.js +5 -5
  288. package/dist/esm/index49.js +24 -6
  289. package/dist/esm/index5.js +1 -1
  290. package/dist/esm/index50.js +7 -35
  291. package/dist/esm/index51.js +7 -30
  292. package/dist/esm/index52.js +35 -9
  293. package/dist/esm/index53.js +27 -93
  294. package/dist/esm/index54.js +10 -5
  295. package/dist/esm/index55.js +95 -6
  296. package/dist/esm/index56.js +4 -7
  297. package/dist/esm/index57.js +5 -8
  298. package/dist/esm/index58.js +5 -8
  299. package/dist/esm/index59.js +8 -5
  300. package/dist/esm/index6.js +1 -1
  301. package/dist/esm/index60.js +7 -4
  302. package/dist/esm/index61.js +5 -5
  303. package/dist/esm/index62.js +5 -5
  304. package/dist/esm/index63.js +5 -5
  305. package/dist/esm/index64.js +5 -5
  306. package/dist/esm/index65.js +6 -20
  307. package/dist/esm/index66.js +6 -59
  308. package/dist/esm/index67.js +21 -8
  309. package/dist/esm/index68.js +60 -11
  310. package/dist/esm/index69.js +9 -18
  311. package/dist/esm/index7.js +1 -1
  312. package/dist/esm/index70.js +12 -34
  313. package/dist/esm/index71.js +18 -12
  314. package/dist/esm/index72.js +33 -53
  315. package/dist/esm/index73.js +11 -57
  316. package/dist/esm/index74.js +21 -23
  317. package/dist/esm/index75.js +58 -5
  318. package/dist/esm/index76.js +56 -48
  319. package/dist/esm/index77.js +5 -33
  320. package/dist/esm/index78.js +47 -3
  321. package/dist/esm/index79.js +38 -9
  322. package/dist/esm/index8.js +1 -1
  323. package/dist/esm/index80.js +2 -69
  324. package/dist/esm/index81.js +69 -9
  325. package/dist/esm/index82.js +30 -24
  326. package/dist/esm/index83.js +13 -69
  327. package/dist/esm/index84.js +2 -20
  328. package/dist/esm/index85.js +31 -109
  329. package/dist/esm/index86.js +3 -60
  330. package/dist/esm/index87.js +8 -23
  331. package/dist/esm/index88.js +66 -38
  332. package/dist/esm/index89.js +8 -36
  333. package/dist/esm/index9.js +1 -1
  334. package/dist/esm/index90.js +27 -57
  335. package/dist/esm/index91.js +66 -159
  336. package/dist/esm/index92.js +19 -39
  337. package/dist/esm/index93.js +110 -9
  338. package/dist/esm/index94.js +60 -31
  339. package/dist/esm/index95.js +23 -35
  340. package/dist/esm/index96.js +40 -9
  341. package/dist/esm/index97.js +36 -28
  342. package/dist/esm/index98.js +56 -44
  343. package/dist/esm/index99.js +157 -82
  344. package/dist/types/index.d.ts +29 -3
  345. package/package.json +3 -3
@@ -1,39 +1,27 @@
1
- import { encodeEventTopics as b } from "./index203.js";
2
- import { numberToHex as m } from "./index176.js";
3
- import { createFilterRequestScope as h } from "./index274.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 { parseAvatarRecord as m } from "./index289.js";
2
+ import { getAction as u } from "./index281.js";
3
+ import { getEnsText as f } from "./index98.js";
4
+ async function y(t, { blockNumber: a, blockTag: e, assetGatewayUrls: n, name: o, gatewayUrls: c, strict: i, universalResolverAddress: s }) {
5
+ const r = await u(t, f, "getEnsText")({
6
+ blockNumber: a,
7
+ blockTag: e,
8
+ key: "avatar",
9
+ name: o,
10
+ universalResolverAddress: s,
11
+ gatewayUrls: c,
12
+ strict: i
7
13
  });
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
- };
14
+ if (!r)
15
+ return null;
16
+ try {
17
+ return await m(t, {
18
+ record: r,
19
+ gatewayUrls: n
20
+ });
21
+ } catch {
22
+ return null;
23
+ }
36
24
  }
37
25
  export {
38
- l as createEventFilter
26
+ y as getEnsAvatar
39
27
  };
@@ -1,12 +1,43 @@
1
- import { createFilterRequestScope as r } from "./index274.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 "./index147.js";
2
+ import { getChainContractAddress as u } from "./index248.js";
3
+ import { toHex as h } from "./index184.js";
4
+ import { isNullUniversalResolverError as p } from "./index287.js";
5
+ import { packetToBytes as C } from "./index288.js";
6
+ import { getAction as w } from "./index281.js";
7
+ import { readContract as A } from "./index130.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 "./index78.js";
2
- import { encodeFunctionData as f } from "./index204.js";
3
- import { getContractError as p } from "./index247.js";
4
- import { getAction as g } from "./index273.js";
5
- import { estimateGas as G } from "./index99.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 "./index248.js";
2
+ import { toHex as u } from "./index184.js";
3
+ import { packetToBytes as v } from "./index288.js";
4
+ import { getAction as f } from "./index281.js";
5
+ import { readContract as m } from "./index130.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 "./index162.js";
2
- import { getAction as l } from "./index273.js";
3
- import { internal_estimateMaxPriorityFeePerGas as u } from "./index100.js";
4
- import { getBlock as G } from "./index103.js";
5
- import { getGasPrice as b } from "./index113.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 "./index147.js";
2
+ import { decodeFunctionResult as p } from "./index205.js";
3
+ import { encodeFunctionData as A } from "./index212.js";
4
+ import { getChainContractAddress as R } from "./index248.js";
5
+ import { toHex as b } from "./index184.js";
6
+ import { isNullUniversalResolverError as g } from "./index287.js";
7
+ import { localBatchGatewayUrl as w } from "./index238.js";
8
+ import { namehash as x } from "./index187.js";
9
+ import { packetToBytes as C } from "./index288.js";
10
+ import { getAction as y } from "./index281.js";
11
+ import { readContract as N } from "./index130.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 "./index78.js";
2
- import { BaseError as _ } from "./index149.js";
3
- import { recoverAuthorizationAddress as A } from "./index287.js";
4
- import { numberToHex as x } from "./index176.js";
5
- import { getEstimateGasError as E } from "./index288.js";
6
- import { extract as N } from "./index285.js";
7
- import { formatTransactionRequest as S } from "./index211.js";
8
- import { serializeStateOverride as I } from "./index286.js";
9
- import { assertRequest as V } from "./index224.js";
10
- import { prepareTransactionRequest as C } from "./index136.js";
11
- import { getBalance as j } from "./index101.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 "./index290.js";
2
+ import { parseAccount as W } from "./index86.js";
3
+ import { multicall3Abi as O } from "./index147.js";
4
+ import { aggregate3Signature as I } from "./index291.js";
5
+ import { deploylessCallViaBytecodeBytecode as J, deploylessCallViaFactoryBytecode as K } from "./index149.js";
6
+ import { BaseError as N } from "./index157.js";
7
+ import { ClientChainNotConfiguredError as P, ChainDoesNotSupportContract as Q } from "./index172.js";
8
+ import { CounterfactualDeploymentFailedError as U, RawContractError as X } from "./index160.js";
9
+ import { decodeFunctionResult as Y } from "./index205.js";
10
+ import { encodeDeployData as T } from "./index209.js";
11
+ import { encodeFunctionData as Z } from "./index212.js";
12
+ import { getChainContractAddress as tt } from "./index248.js";
13
+ import { numberToHex as V } from "./index184.js";
14
+ import { getCallError as at } from "./index292.js";
15
+ import { extract as et } from "./index293.js";
16
+ import { formatTransactionRequest as rt } from "./index219.js";
17
+ import { createBatchScheduler as ot } from "./index90.js";
18
+ import { serializeStateOverride as ct } from "./index294.js";
19
+ import { assertRequest as nt } from "./index232.js";
20
+ import { parseAbi as z } from "./index271.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("./index236.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
  };
@@ -6,8 +6,8 @@ import { base } from 'viem/chains';
6
6
  import { baseSepolia } from 'viem/chains';
7
7
  import { Config as Config_2 } from '@coinbase/cdp-core';
8
8
  import { Context } from 'react';
9
- import { createEvmEip7702Delegation } from '@coinbase/cdp-core';
10
9
  import { CreateEvmEip7702DelegationOptions } from '@coinbase/cdp-core';
10
+ import { CreateEvmEip7702DelegationResult } from '@coinbase/cdp-core';
11
11
  import { createEvmEoaAccount } from '@coinbase/cdp-core';
12
12
  import { createEvmSmartAccount } from '@coinbase/cdp-core';
13
13
  import { CreateEvmSmartAccountOptions } from '@coinbase/cdp-core';
@@ -25,6 +25,8 @@ import { ExportSolanaAccountOptions } from '@coinbase/cdp-core';
25
25
  import { ExportSolanaAccountResult } from '@coinbase/cdp-core';
26
26
  import { FetchWithX402Options } from '@coinbase/cdp-core';
27
27
  import { FetchWithX402ReturnType } from '@coinbase/cdp-core';
28
+ import { getEvmEip7702DelegationStatus } from '@coinbase/cdp-core';
29
+ import { GetEvmEip7702DelegationStatusOptions } from '@coinbase/cdp-core';
28
30
  import { GetMfaConfigResult } from '@coinbase/cdp-core';
29
31
  import { GetProjectConfigResult } from '@coinbase/cdp-core';
30
32
  import { GetUserOperationResult } from '@coinbase/cdp-core';
@@ -133,6 +135,8 @@ export { EIP712TypedData }
133
135
 
134
136
  export { EvmAddress }
135
137
 
138
+ export declare type EvmEip7702DelegationStatusResult = Awaited<ReturnType<typeof getEvmEip7702DelegationStatus>>;
139
+
136
140
  export { ExportEvmAccountOptions }
137
141
 
138
142
  export { ExportEvmAccountResult }
@@ -141,6 +145,8 @@ export { ExportSolanaAccountOptions }
141
145
 
142
146
  export { ExportSolanaAccountResult }
143
147
 
148
+ export { GetEvmEip7702DelegationStatusOptions }
149
+
144
150
  export { GetUserOperationResult }
145
151
 
146
152
  export { Hex }
@@ -235,8 +241,13 @@ export declare const useConfig: () => {
235
241
  config: Config_2;
236
242
  };
237
243
 
238
- export declare function useCreateEvmEip7702Delegation(): {
239
- createEvmEip7702Delegation: typeof createEvmEip7702Delegation;
244
+ export declare function useCreateEvmEip7702Delegation(): UseCreateEvmEip7702DelegationReturnType;
245
+
246
+ export declare type UseCreateEvmEip7702DelegationReturnType = {
247
+ createEvmEip7702Delegation: (options: CreateEvmEip7702DelegationOptions) => Promise<CreateEvmEip7702DelegationResult>;
248
+ data: CreateEvmEip7702DelegationResult | undefined;
249
+ status: EvmEip7702DelegationStatusResult | undefined;
250
+ error: Error | undefined;
240
251
  };
241
252
 
242
253
  export declare function useCreateEvmEoaAccount(): {
@@ -294,6 +305,10 @@ export declare const useGetAccessToken: () => {
294
305
  getAccessToken: () => Promise<string | null>;
295
306
  };
296
307
 
308
+ export declare function useGetEvmEip7702DelegationStatus(): {
309
+ getEvmEip7702DelegationStatus: typeof getEvmEip7702DelegationStatus;
310
+ };
311
+
297
312
  export declare function useGetMfaConfig(): {
298
313
  getMfaConfig: () => Promise< GetMfaConfigResult>;
299
314
  };
@@ -532,6 +547,17 @@ export declare const useVerifySmsOTP: () => {
532
547
  verifySmsOTP: (options: VerifySmsOTPOptions) => Promise<VerifySmsOTPResult>;
533
548
  };
534
549
 
550
+ export declare function useWaitForEvmEip7702DelegationStatus(parameters?: UseWaitForEvmEip7702DelegationStatusParameters): UseWaitForEvmEip7702DelegationStatusReturnType;
551
+
552
+ export declare type UseWaitForEvmEip7702DelegationStatusParameters = Partial<GetEvmEip7702DelegationStatusOptions> & {
553
+ enabled?: boolean;
554
+ };
555
+
556
+ export declare type UseWaitForEvmEip7702DelegationStatusReturnType = {
557
+ data: EvmEip7702DelegationStatusResult | undefined;
558
+ error: Error | undefined;
559
+ };
560
+
535
561
  export declare const useWaitForUserOperation: (parameters?: UseWaitForUserOperationParameters) => UseWaitForUserOperationReturnType;
536
562
 
537
563
  export declare type UseWaitForUserOperationParameters = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coinbase/cdp-hooks",
3
- "version": "0.0.91",
3
+ "version": "0.0.93",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist/**",
@@ -15,7 +15,7 @@
15
15
  },
16
16
  "peerDependencies": {
17
17
  "react": ">=18.2.0",
18
- "@coinbase/cdp-core": "^0.0.91"
18
+ "@coinbase/cdp-core": "^0.0.93"
19
19
  },
20
20
  "devDependencies": {
21
21
  "@testing-library/jest-dom": "^6.6.3",
@@ -30,7 +30,7 @@
30
30
  "@size-limit/webpack": "^11.2.0",
31
31
  "@size-limit/webpack-why": "^11.2.0",
32
32
  "size-limit": "^11.2.0",
33
- "@coinbase/cdp-core": "^0.0.91"
33
+ "@coinbase/cdp-core": "^0.0.93"
34
34
  },
35
35
  "size-limit": [
36
36
  {