@coinbase/cdp-hooks 0.0.44 → 0.0.45

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 (274) hide show
  1. package/README.md +92 -0
  2. package/dist/esm/index.js +26 -22
  3. package/dist/esm/index10.js +12 -56
  4. package/dist/esm/index100.js +439 -21
  5. package/dist/esm/index101.js +28 -32
  6. package/dist/esm/index102.js +18 -185
  7. package/dist/esm/index103.js +31 -6
  8. package/dist/esm/index104.js +35 -2
  9. package/dist/esm/index105.js +189 -8
  10. package/dist/esm/index106.js +7 -17
  11. package/dist/esm/index107.js +2 -28
  12. package/dist/esm/index108.js +12 -8
  13. package/dist/esm/index109.js +15 -52
  14. package/dist/esm/index11.js +54 -33
  15. package/dist/esm/index110.js +23 -41
  16. package/dist/esm/index111.js +8 -8
  17. package/dist/esm/index112.js +55 -7
  18. package/dist/esm/index113.js +44 -15
  19. package/dist/esm/index114.js +8 -18
  20. package/dist/esm/index115.js +7 -24
  21. package/dist/esm/index116.js +16 -16
  22. package/dist/esm/index117.js +17 -53
  23. package/dist/esm/index118.js +22 -9
  24. package/dist/esm/index119.js +15 -159
  25. package/dist/esm/index12.js +57 -3
  26. package/dist/esm/index120.js +53 -20
  27. package/dist/esm/index121.js +11 -127
  28. package/dist/esm/index122.js +153 -31
  29. package/dist/esm/index123.js +21 -6
  30. package/dist/esm/index124.js +127 -27
  31. package/dist/esm/index125.js +31 -184
  32. package/dist/esm/index126.js +7 -4
  33. package/dist/esm/index127.js +26 -63
  34. package/dist/esm/index128.js +192 -3
  35. package/dist/esm/index129.js +4 -21
  36. package/dist/esm/index13.js +56 -10
  37. package/dist/esm/index130.js +61 -13
  38. package/dist/esm/index131.js +3 -24
  39. package/dist/esm/index132.js +20 -11
  40. package/dist/esm/index133.js +15 -33
  41. package/dist/esm/index134.js +24 -3
  42. package/dist/esm/index135.js +11 -18
  43. package/dist/esm/index136.js +33 -26
  44. package/dist/esm/index137.js +3 -36
  45. package/dist/esm/index138.js +18 -7
  46. package/dist/esm/index139.js +26 -24
  47. package/dist/esm/index14.js +31 -67
  48. package/dist/esm/index140.js +34 -27
  49. package/dist/esm/index141.js +7 -64
  50. package/dist/esm/index142.js +25 -9
  51. package/dist/esm/index143.js +28 -33
  52. package/dist/esm/index144.js +64 -27
  53. package/dist/esm/index145.js +9 -24
  54. package/dist/esm/index146.js +33 -3
  55. package/dist/esm/index147.js +27 -14
  56. package/dist/esm/index148.js +24 -103
  57. package/dist/esm/index149.js +3 -64
  58. package/dist/esm/index15.js +3 -9
  59. package/dist/esm/index150.js +14 -5
  60. package/dist/esm/index151.js +103 -6
  61. package/dist/esm/index152.js +62 -25
  62. package/dist/esm/index153.js +5 -39
  63. package/dist/esm/index154.js +6 -13
  64. package/dist/esm/index155.js +24 -39
  65. package/dist/esm/index156.js +39 -5
  66. package/dist/esm/index157.js +13 -11
  67. package/dist/esm/index158.js +42 -19
  68. package/dist/esm/index159.js +5 -78
  69. package/dist/esm/index16.js +9 -28
  70. package/dist/esm/index160.js +12 -2
  71. package/dist/esm/index161.js +19 -37
  72. package/dist/esm/index162.js +73 -105
  73. package/dist/esm/index163.js +2 -49
  74. package/dist/esm/index164.js +36 -31
  75. package/dist/esm/index165.js +110 -8
  76. package/dist/esm/index166.js +48 -6
  77. package/dist/esm/index167.js +32 -6
  78. package/dist/esm/index168.js +8 -11
  79. package/dist/esm/index169.js +6 -10
  80. package/dist/esm/index17.js +68 -70
  81. package/dist/esm/index170.js +6 -13
  82. package/dist/esm/index171.js +11 -32
  83. package/dist/esm/index172.js +11 -5
  84. package/dist/esm/index173.js +13 -8
  85. package/dist/esm/index174.js +30 -17
  86. package/dist/esm/index175.js +5 -32
  87. package/dist/esm/index176.js +8 -20
  88. package/dist/esm/index177.js +19 -3
  89. package/dist/esm/index178.js +31 -17
  90. package/dist/esm/index179.js +20 -10
  91. package/dist/esm/index18.js +9 -19
  92. package/dist/esm/index180.js +3 -21
  93. package/dist/esm/index181.js +16 -21
  94. package/dist/esm/index182.js +10 -5
  95. package/dist/esm/index183.js +21 -5
  96. package/dist/esm/index184.js +22 -8
  97. package/dist/esm/index185.js +5 -104
  98. package/dist/esm/index186.js +6 -3
  99. package/dist/esm/index187.js +8 -18
  100. package/dist/esm/index188.js +99 -166
  101. package/dist/esm/index189.js +3 -18
  102. package/dist/esm/index19.js +26 -108
  103. package/dist/esm/index190.js +19 -10
  104. package/dist/esm/index191.js +170 -39
  105. package/dist/esm/index192.js +18 -2
  106. package/dist/esm/index193.js +10 -5
  107. package/dist/esm/index194.js +39 -9
  108. package/dist/esm/index195.js +2 -20
  109. package/dist/esm/index196.js +4 -7
  110. package/dist/esm/index197.js +9 -10
  111. package/dist/esm/index198.js +19 -66
  112. package/dist/esm/index199.js +7 -65
  113. package/dist/esm/index20.js +70 -60
  114. package/dist/esm/index200.js +10 -184
  115. package/dist/esm/index201.js +66 -22
  116. package/dist/esm/index202.js +61 -38
  117. package/dist/esm/index203.js +178 -69
  118. package/dist/esm/index204.js +21 -39
  119. package/dist/esm/index205.js +35 -9
  120. package/dist/esm/index206.js +70 -7
  121. package/dist/esm/index207.js +40 -36
  122. package/dist/esm/index208.js +16 -15
  123. package/dist/esm/index209.js +13 -8
  124. package/dist/esm/index21.js +19 -24
  125. package/dist/esm/index212.js +35 -11
  126. package/dist/esm/index213.js +15 -9
  127. package/dist/esm/index214.js +8 -16
  128. package/dist/esm/index215.js +12 -22
  129. package/dist/esm/index216.js +9 -30
  130. package/dist/esm/index217.js +17 -2
  131. package/dist/esm/index218.js +21 -12
  132. package/dist/esm/index219.js +30 -12
  133. package/dist/esm/index22.js +110 -40
  134. package/dist/esm/index220.js +2 -48
  135. package/dist/esm/index221.js +12 -8
  136. package/dist/esm/index222.js +12 -13
  137. package/dist/esm/index223.js +46 -13
  138. package/dist/esm/index224.js +9 -8
  139. package/dist/esm/index225.js +13 -15
  140. package/dist/esm/index226.js +14 -24
  141. package/dist/esm/index227.js +8 -11
  142. package/dist/esm/index228.js +14 -23
  143. package/dist/esm/index229.js +24 -51
  144. package/dist/esm/index23.js +57 -34
  145. package/dist/esm/index230.js +11 -17
  146. package/dist/esm/index231.js +24 -14
  147. package/dist/esm/index232.js +51 -11
  148. package/dist/esm/index233.js +17 -103
  149. package/dist/esm/index234.js +14 -6
  150. package/dist/esm/index235.js +11 -224
  151. package/dist/esm/index236.js +103 -6
  152. package/dist/esm/index237.js +7 -7
  153. package/dist/esm/index238.js +223 -25
  154. package/dist/esm/index239.js +6 -19
  155. package/dist/esm/index24.js +20 -54
  156. package/dist/esm/index240.js +7 -147
  157. package/dist/esm/index241.js +26 -12
  158. package/dist/esm/index242.js +20 -36
  159. package/dist/esm/index243.js +146 -41
  160. package/dist/esm/index244.js +13 -69
  161. package/dist/esm/index245.js +36 -4
  162. package/dist/esm/index246.js +41 -136
  163. package/dist/esm/index247.js +69 -156
  164. package/dist/esm/index248.js +3 -9
  165. package/dist/esm/index249.js +136 -16
  166. package/dist/esm/index25.js +37 -160
  167. package/dist/esm/index250.js +140 -98
  168. package/dist/esm/index251.js +9 -134
  169. package/dist/esm/index252.js +16 -78
  170. package/dist/esm/index253.js +114 -2
  171. package/dist/esm/index254.js +124 -688
  172. package/dist/esm/index255.js +73 -134
  173. package/dist/esm/index256.js +2 -43
  174. package/dist/esm/index257.js +675 -178
  175. package/dist/esm/index258.js +137 -63
  176. package/dist/esm/index259.js +42 -4
  177. package/dist/esm/index26.js +36 -38
  178. package/dist/esm/index260.js +201 -40
  179. package/dist/esm/index261.js +65 -7
  180. package/dist/esm/index262.js +4 -62
  181. package/dist/esm/index263.js +33 -70
  182. package/dist/esm/index264.js +8 -4
  183. package/dist/esm/index265.js +55 -187
  184. package/dist/esm/index266.js +61 -47
  185. package/dist/esm/index267.js +4 -45
  186. package/dist/esm/index268.js +194 -4
  187. package/dist/esm/index269.js +64 -5
  188. package/dist/esm/index27.js +58 -9
  189. package/dist/esm/index270.js +45 -2
  190. package/dist/esm/index271.js +4 -21
  191. package/dist/esm/index272.js +7 -0
  192. package/dist/esm/index273.js +4 -0
  193. package/dist/esm/index274.js +24 -0
  194. package/dist/esm/index28.js +161 -29
  195. package/dist/esm/index29.js +39 -36
  196. package/dist/esm/index3.js +2 -2
  197. package/dist/esm/index30.js +6 -6
  198. package/dist/esm/index31.js +30 -28
  199. package/dist/esm/index32.js +34 -44
  200. package/dist/esm/index33.js +9 -88
  201. package/dist/esm/index34.js +26 -37
  202. package/dist/esm/index35.js +46 -8
  203. package/dist/esm/index36.js +88 -6
  204. package/dist/esm/index37.js +40 -16
  205. package/dist/esm/index38.js +8 -8
  206. package/dist/esm/index39.js +6 -13
  207. package/dist/esm/index4.js +14 -16
  208. package/dist/esm/index40.js +16 -7
  209. package/dist/esm/index41.js +8 -9
  210. package/dist/esm/index42.js +13 -16
  211. package/dist/esm/index43.js +7 -46
  212. package/dist/esm/index44.js +9 -13
  213. package/dist/esm/index45.js +15 -15
  214. package/dist/esm/index46.js +46 -13
  215. package/dist/esm/index47.js +13 -6
  216. package/dist/esm/index48.js +15 -34
  217. package/dist/esm/index49.js +13 -9
  218. package/dist/esm/index5.js +46 -29
  219. package/dist/esm/index50.js +5 -7
  220. package/dist/esm/index51.js +35 -25
  221. package/dist/esm/index52.js +9 -10
  222. package/dist/esm/index53.js +7 -13
  223. package/dist/esm/index54.js +25 -11
  224. package/dist/esm/index55.js +10 -116
  225. package/dist/esm/index56.js +13 -32
  226. package/dist/esm/index57.js +11 -79
  227. package/dist/esm/index58.js +108 -169
  228. package/dist/esm/index59.js +26 -37
  229. package/dist/esm/index6.js +20 -17
  230. package/dist/esm/index60.js +79 -6
  231. package/dist/esm/index61.js +177 -13
  232. package/dist/esm/index62.js +44 -13
  233. package/dist/esm/index63.js +6 -99
  234. package/dist/esm/index64.js +13 -72
  235. package/dist/esm/index65.js +13 -87
  236. package/dist/esm/index66.js +93 -142
  237. package/dist/esm/index67.js +65 -129
  238. package/dist/esm/index68.js +73 -54
  239. package/dist/esm/index69.js +148 -23
  240. package/dist/esm/index7.js +34 -12
  241. package/dist/esm/index70.js +133 -102
  242. package/dist/esm/index71.js +68 -6
  243. package/dist/esm/index72.js +23 -131
  244. package/dist/esm/index73.js +101 -271
  245. package/dist/esm/index74.js +7 -3
  246. package/dist/esm/index75.js +132 -4
  247. package/dist/esm/index76.js +276 -9
  248. package/dist/esm/index77.js +3 -2
  249. package/dist/esm/index78.js +4 -2
  250. package/dist/esm/index79.js +9 -3
  251. package/dist/esm/index8.js +18 -54
  252. package/dist/esm/index80.js +2 -327
  253. package/dist/esm/index81.js +2 -14
  254. package/dist/esm/index82.js +3 -5
  255. package/dist/esm/index83.js +299 -28
  256. package/dist/esm/index84.js +14 -2
  257. package/dist/esm/index85.js +4 -7
  258. package/dist/esm/index86.js +29 -188
  259. package/dist/esm/index87.js +2 -32
  260. package/dist/esm/index88.js +7 -21
  261. package/dist/esm/index89.js +214 -5
  262. package/dist/esm/index9.js +11 -57
  263. package/dist/esm/index90.js +30 -72
  264. package/dist/esm/index91.js +21 -5
  265. package/dist/esm/index92.js +5 -5
  266. package/dist/esm/index93.js +69 -31
  267. package/dist/esm/index94.js +5 -75
  268. package/dist/esm/index95.js +6 -3
  269. package/dist/esm/index96.js +28 -16
  270. package/dist/esm/index97.js +57 -433
  271. package/dist/esm/index98.js +3 -31
  272. package/dist/esm/index99.js +17 -20
  273. package/dist/types/index.d.ts +36 -0
  274. package/package.json +3 -3
@@ -1,63 +1,73 @@
1
- import { addressResolverAbi as u, universalResolverResolveAbi as h } from "./index73.js";
2
- import { decodeFunctionResult as A } from "./index131.js";
3
- import { encodeFunctionData as R } from "./index138.js";
4
- import { getChainContractAddress as b } from "./index174.js";
5
- import { trim as w } from "./index123.js";
6
- import { toHex as C } from "./index110.js";
7
- import { isNullUniversalResolverError as y } from "./index213.js";
8
- import { localBatchGatewayUrl as x } from "./index164.js";
9
- import { namehash as i } from "./index113.js";
10
- import { packetToBytes as N } from "./index214.js";
11
- import { getAction as B } from "./index210.js";
12
- import { readContract as T } from "./index56.js";
13
- async function J(a, o) {
14
- const { blockNumber: l, blockTag: m, coinType: t, name: e, gatewayUrls: f, strict: v } = o, { chain: n } = a, p = (() => {
15
- if (o.universalResolverAddress)
16
- return o.universalResolverAddress;
17
- if (!n)
18
- throw new Error("client chain not configured. universalResolverAddress is required.");
19
- return b({
20
- blockNumber: l,
21
- chain: n,
22
- contract: "ensUniversalResolver"
23
- });
24
- })(), c = n?.ensTlds;
25
- if (c && !c.some((r) => e.endsWith(r)))
26
- return null;
27
- try {
28
- const r = R({
29
- abi: u,
30
- functionName: "addr",
31
- ...t != null ? { args: [i(e), BigInt(t)] } : { args: [i(e)] }
32
- }), g = {
33
- address: p,
34
- abi: h,
35
- functionName: "resolve",
36
- args: [
37
- C(N(e)),
38
- r,
39
- f ?? [x]
40
- ],
41
- blockNumber: l,
42
- blockTag: m
43
- }, d = await B(a, T, "readContract")(g);
44
- if (d[0] === "0x")
45
- return null;
46
- const s = A({
47
- abi: u,
48
- args: t != null ? [i(e), BigInt(t)] : void 0,
49
- functionName: "addr",
50
- data: d[0]
51
- });
52
- return s === "0x" || w(s) === "0x00" ? null : s;
53
- } catch (r) {
54
- if (v)
55
- throw r;
56
- if (y(r, "resolve"))
57
- return null;
58
- throw r;
59
- }
1
+ import { TimeoutError as m, HttpRequestError as i } from "./index17.js";
2
+ import { withTimeout as j } from "./index181.js";
3
+ import { stringify as c } from "./index107.js";
4
+ import { idCache as y } from "./index215.js";
5
+ function E(s, o = {}) {
6
+ return {
7
+ async request(p) {
8
+ const { body: r, onRequest: g = o.onRequest, onResponse: h = o.onResponse, timeout: f = o.timeout ?? 1e4 } = p, u = {
9
+ ...o.fetchOptions ?? {},
10
+ ...p.fetchOptions ?? {}
11
+ }, { headers: l, method: R, signal: q } = u;
12
+ try {
13
+ const t = await j(async ({ signal: n }) => {
14
+ const a = {
15
+ ...u,
16
+ body: Array.isArray(r) ? c(r.map((d) => ({
17
+ jsonrpc: "2.0",
18
+ id: d.id ?? y.take(),
19
+ ...d
20
+ }))) : c({
21
+ jsonrpc: "2.0",
22
+ id: r.id ?? y.take(),
23
+ ...r
24
+ }),
25
+ headers: {
26
+ "Content-Type": "application/json",
27
+ ...l
28
+ },
29
+ method: R || "POST",
30
+ signal: q || (f > 0 ? n : null)
31
+ }, T = new Request(s, a), w = await g?.(T, a) ?? { ...a, url: s };
32
+ return await fetch(w.url ?? s, w);
33
+ }, {
34
+ errorInstance: new m({ body: r, url: s }),
35
+ timeout: f,
36
+ signal: !0
37
+ });
38
+ h && await h(t);
39
+ let e;
40
+ if (t.headers.get("Content-Type")?.startsWith("application/json"))
41
+ e = await t.json();
42
+ else {
43
+ e = await t.text();
44
+ try {
45
+ e = JSON.parse(e || "{}");
46
+ } catch (n) {
47
+ if (t.ok)
48
+ throw n;
49
+ e = { error: e };
50
+ }
51
+ }
52
+ if (!t.ok)
53
+ throw new i({
54
+ body: r,
55
+ details: c(e.error) || t.statusText,
56
+ headers: t.headers,
57
+ status: t.status,
58
+ url: s
59
+ });
60
+ return e;
61
+ } catch (t) {
62
+ throw t instanceof i || t instanceof m ? t : new i({
63
+ body: r,
64
+ cause: t,
65
+ url: s
66
+ });
67
+ }
68
+ }
69
+ };
60
70
  }
61
71
  export {
62
- J as getEnsAddress
72
+ E as getHttpRpcClient
63
73
  };
@@ -1,188 +1,14 @@
1
- import { execTyped as $, bytesRegex as w, integerRegex as S, isTupleRegex as v } from "./index196.js";
2
- import { UnknownSolidityTypeError as E } from "./index202.js";
3
- import { InvalidParameterError as P, SolidityProtectedKeywordError as M, InvalidModifierError as R, InvalidFunctionModifierError as k } from "./index203.js";
4
- import { UnknownSignatureError as z, InvalidSignatureError as p } from "./index204.js";
5
- import { InvalidParenthesisError as A } from "./index205.js";
6
- import { getParameterCacheKey as F, parameterCache as y } from "./index244.js";
7
- import { isFunctionSignature as T, isEventSignature as _, isErrorSignature as C, isConstructorSignature as I, isFallbackSignature as Z, isReceiveSignature as K, functionModifiers as d, execFunctionSignature as L, execEventSignature as U, eventModifiers as W, execErrorSignature as D, execConstructorSignature as V, execFallbackSignature as j } from "./index198.js";
8
- function ue(e, t = {}) {
9
- if (T(e))
10
- return q(e, t);
11
- if (_(e))
12
- return B(e, t);
13
- if (C(e))
14
- return G(e, t);
15
- if (I(e))
16
- return H(e, t);
17
- if (Z(e))
18
- return J(e);
19
- if (K(e))
20
- return {
21
- type: "receive",
22
- stateMutability: "payable"
23
- };
24
- throw new z({ signature: e });
25
- }
26
- function q(e, t = {}) {
27
- const n = L(e);
28
- if (!n)
29
- throw new p({ signature: e, type: "function" });
30
- const i = c(n.parameters), r = [], s = i.length;
31
- for (let a = 0; a < s; a++)
32
- r.push(l(i[a], {
33
- modifiers: d,
34
- structs: t,
35
- type: "function"
36
- }));
37
- const o = [];
38
- if (n.returns) {
39
- const a = c(n.returns), u = a.length;
40
- for (let f = 0; f < u; f++)
41
- o.push(l(a[f], {
42
- modifiers: d,
43
- structs: t,
44
- type: "function"
45
- }));
46
- }
47
- return {
48
- name: n.name,
49
- type: "function",
50
- stateMutability: n.stateMutability ?? "nonpayable",
51
- inputs: r,
52
- outputs: o
53
- };
54
- }
55
- function B(e, t = {}) {
56
- const n = U(e);
57
- if (!n)
58
- throw new p({ signature: e, type: "event" });
59
- const i = c(n.parameters), r = [], s = i.length;
60
- for (let o = 0; o < s; o++)
61
- r.push(l(i[o], {
62
- modifiers: W,
63
- structs: t,
64
- type: "event"
65
- }));
66
- return { name: n.name, type: "event", inputs: r };
67
- }
68
- function G(e, t = {}) {
69
- const n = D(e);
70
- if (!n)
71
- throw new p({ signature: e, type: "error" });
72
- const i = c(n.parameters), r = [], s = i.length;
73
- for (let o = 0; o < s; o++)
74
- r.push(l(i[o], { structs: t, type: "error" }));
75
- return { name: n.name, type: "error", inputs: r };
76
- }
77
- function H(e, t = {}) {
78
- const n = V(e);
79
- if (!n)
80
- throw new p({ signature: e, type: "constructor" });
81
- const i = c(n.parameters), r = [], s = i.length;
82
- for (let o = 0; o < s; o++)
83
- r.push(l(i[o], { structs: t, type: "constructor" }));
84
- return {
85
- type: "constructor",
86
- stateMutability: n.stateMutability ?? "nonpayable",
87
- inputs: r
88
- };
89
- }
90
- function J(e) {
91
- const t = j(e);
92
- if (!t)
93
- throw new p({ signature: e, type: "fallback" });
94
- return {
95
- type: "fallback",
96
- stateMutability: t.stateMutability ?? "nonpayable"
97
- };
98
- }
99
- const N = /^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/, O = /^\((?<type>.+?)\)(?<array>(?:\[\d*?\])+?)?(?:\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/, Q = /^u?int$/;
100
- function l(e, t) {
101
- const n = F(e, t?.type, t?.structs);
102
- if (y.has(n))
103
- return y.get(n);
104
- const i = v.test(e), r = $(i ? O : N, e);
105
- if (!r)
106
- throw new P({ param: e });
107
- if (r.name && ee(r.name))
108
- throw new M({ param: e, name: r.name });
109
- const s = r.name ? { name: r.name } : {}, o = r.modifier === "indexed" ? { indexed: !0 } : {}, a = t?.structs ?? {};
110
- let u, f = {};
111
- if (i) {
112
- u = "tuple";
113
- const g = c(r.type), b = [], x = g.length;
114
- for (let m = 0; m < x; m++)
115
- b.push(l(g[m], { structs: a }));
116
- f = { components: b };
117
- } else if (r.type in a)
118
- u = "tuple", f = { components: a[r.type] };
119
- else if (Q.test(r.type))
120
- u = `${r.type}256`;
121
- else if (u = r.type, t?.type !== "struct" && !X(u))
122
- throw new E({ type: u });
123
- if (r.modifier) {
124
- if (!t?.modifiers?.has?.(r.modifier))
125
- throw new R({
126
- param: e,
127
- type: t?.type,
128
- modifier: r.modifier
129
- });
130
- if (d.has(r.modifier) && !te(u, !!r.array))
131
- throw new k({
132
- param: e,
133
- type: t?.type,
134
- modifier: r.modifier
135
- });
136
- }
137
- const h = {
138
- type: `${u}${r.array ?? ""}`,
139
- ...s,
140
- ...o,
141
- ...f
142
- };
143
- return y.set(n, h), h;
144
- }
145
- function c(e, t = [], n = "", i = 0) {
146
- const r = e.trim().length;
147
- for (let s = 0; s < r; s++) {
148
- const o = e[s], a = e.slice(s + 1);
149
- switch (o) {
150
- case ",":
151
- return i === 0 ? c(a, [...t, n.trim()]) : c(a, t, `${n}${o}`, i);
152
- case "(":
153
- return c(a, t, `${n}${o}`, i + 1);
154
- case ")":
155
- return c(a, t, `${n}${o}`, i - 1);
156
- default:
157
- return c(a, t, `${n}${o}`, i);
158
- }
1
+ import { isStructSignature as c } from "./index201.js";
2
+ import { parseStructs as s } from "./index202.js";
3
+ import { parseSignature as p } from "./index203.js";
4
+ function a(t) {
5
+ const i = s(t), o = [], e = t.length;
6
+ for (let r = 0; r < e; r++) {
7
+ const n = t[r];
8
+ c(n) || o.push(p(n, i));
159
9
  }
160
- if (n === "")
161
- return t;
162
- if (i !== 0)
163
- throw new A({ current: n, depth: i });
164
- return t.push(n.trim()), t;
165
- }
166
- function X(e) {
167
- return e === "address" || e === "bool" || e === "function" || e === "string" || w.test(e) || S.test(e);
168
- }
169
- const Y = /^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;
170
- function ee(e) {
171
- return e === "address" || e === "bool" || e === "function" || e === "string" || e === "tuple" || w.test(e) || S.test(e) || Y.test(e);
172
- }
173
- function te(e, t) {
174
- return t || e === "bytes" || e === "string" || e === "tuple";
10
+ return o;
175
11
  }
176
12
  export {
177
- ee as isSolidityKeyword,
178
- X as isSolidityType,
179
- te as isValidDataLocation,
180
- l as parseAbiParameter,
181
- H as parseConstructorSignature,
182
- G as parseErrorSignature,
183
- B as parseEventSignature,
184
- J as parseFallbackSignature,
185
- q as parseFunctionSignature,
186
- ue as parseSignature,
187
- c as splitParameters
13
+ a as parseAbi
188
14
  };
@@ -1,25 +1,69 @@
1
- import { InvalidAbiItemError as f } from "./index202.js";
2
- import { isStructSignature as p } from "./index198.js";
3
- import { parseStructs as c } from "./index199.js";
4
- import { parseSignature as i } from "./index200.js";
5
- function u(t) {
6
- let r;
7
- if (typeof t == "string")
8
- r = i(t);
9
- else {
10
- const m = c(t), n = t.length;
11
- for (let o = 0; o < n; o++) {
12
- const e = t[o];
13
- if (!p(e)) {
14
- r = i(e, m);
15
- break;
16
- }
17
- }
18
- }
19
- if (!r)
20
- throw new f({ signature: t });
21
- return r;
1
+ import { execTyped as t } from "./index199.js";
2
+ const n = /^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;
3
+ function g(e) {
4
+ return n.test(e);
22
5
  }
6
+ function S(e) {
7
+ return t(n, e);
8
+ }
9
+ const r = /^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)$/;
10
+ function l(e) {
11
+ return r.test(e);
12
+ }
13
+ function f(e) {
14
+ return t(r, e);
15
+ }
16
+ const a = /^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\((?<parameters>.*?)\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\s?\((?<returns>.*?)\))?$/;
17
+ function x(e) {
18
+ return a.test(e);
19
+ }
20
+ function p(e) {
21
+ return t(a, e);
22
+ }
23
+ const u = /^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?<properties>.*?)\}$/;
24
+ function $(e) {
25
+ return u.test(e);
26
+ }
27
+ function b(e) {
28
+ return t(u, e);
29
+ }
30
+ const i = /^constructor\((?<parameters>.*?)\)(?:\s(?<stateMutability>payable{1}))?$/;
31
+ function m(e) {
32
+ return i.test(e);
33
+ }
34
+ function y(e) {
35
+ return t(i, e);
36
+ }
37
+ const c = /^fallback\(\) external(?:\s(?<stateMutability>payable{1}))?$/;
38
+ function v(e) {
39
+ return c.test(e);
40
+ }
41
+ function z(e) {
42
+ return t(c, e);
43
+ }
44
+ const o = /^receive\(\) external payable$/;
45
+ function A(e) {
46
+ return o.test(e);
47
+ }
48
+ const R = /* @__PURE__ */ new Set(["indexed"]), Z = /* @__PURE__ */ new Set([
49
+ "calldata",
50
+ "memory",
51
+ "storage"
52
+ ]);
23
53
  export {
24
- u as parseAbiItem
54
+ R as eventModifiers,
55
+ y as execConstructorSignature,
56
+ S as execErrorSignature,
57
+ f as execEventSignature,
58
+ z as execFallbackSignature,
59
+ p as execFunctionSignature,
60
+ b as execStructSignature,
61
+ Z as functionModifiers,
62
+ m as isConstructorSignature,
63
+ g as isErrorSignature,
64
+ l as isEventSignature,
65
+ v as isFallbackSignature,
66
+ x as isFunctionSignature,
67
+ A as isReceiveSignature,
68
+ $ as isStructSignature
25
69
  };
@@ -1,45 +1,68 @@
1
- import { BaseError as r } from "./index191.js";
2
- class a extends r {
3
- constructor({ signature: e }) {
4
- super("Failed to parse ABI item.", {
5
- details: `parseAbiItem(${JSON.stringify(e, null, 2)})`,
6
- docsPath: "/api/human#parseabiitem-1"
7
- }), Object.defineProperty(this, "name", {
8
- enumerable: !0,
9
- configurable: !0,
10
- writable: !0,
11
- value: "InvalidAbiItemError"
12
- });
1
+ import { isTupleRegex as g, execTyped as w } from "./index199.js";
2
+ import { UnknownTypeError as S } from "./index205.js";
3
+ import { InvalidAbiTypeParameterError as d } from "./index206.js";
4
+ import { InvalidSignatureError as T, InvalidStructSignatureError as v } from "./index207.js";
5
+ import { CircularReferenceError as x } from "./index209.js";
6
+ import { isStructSignature as E, execStructSignature as b } from "./index201.js";
7
+ import { parseAbiParameter as A, isSolidityType as $ } from "./index203.js";
8
+ function C(s) {
9
+ const n = {}, c = s.length;
10
+ for (let t = 0; t < c; t++) {
11
+ const i = s[t];
12
+ if (!E(i))
13
+ continue;
14
+ const r = b(i);
15
+ if (!r)
16
+ throw new T({ signature: i, type: "struct" });
17
+ const u = r.properties.split(";"), e = [], h = u.length;
18
+ for (let l = 0; l < h; l++) {
19
+ const m = u[l].trim();
20
+ if (!m)
21
+ continue;
22
+ const y = A(m, {
23
+ type: "struct"
24
+ });
25
+ e.push(y);
26
+ }
27
+ if (!e.length)
28
+ throw new v({ signature: i });
29
+ n[r.name] = e;
13
30
  }
14
- }
15
- class o extends r {
16
- constructor({ type: e }) {
17
- super("Unknown type.", {
18
- metaMessages: [
19
- `Type "${e}" is not a valid ABI type. Perhaps you forgot to include a struct signature?`
20
- ]
21
- }), Object.defineProperty(this, "name", {
22
- enumerable: !0,
23
- configurable: !0,
24
- writable: !0,
25
- value: "UnknownTypeError"
26
- });
31
+ const o = {}, a = Object.entries(n), p = a.length;
32
+ for (let t = 0; t < p; t++) {
33
+ const [i, r] = a[t];
34
+ o[i] = f(r, n);
27
35
  }
36
+ return o;
28
37
  }
29
- class i extends r {
30
- constructor({ type: e }) {
31
- super("Unknown type.", {
32
- metaMessages: [`Type "${e}" is not a valid ABI type.`]
33
- }), Object.defineProperty(this, "name", {
34
- enumerable: !0,
35
- configurable: !0,
36
- writable: !0,
37
- value: "UnknownSolidityTypeError"
38
- });
38
+ const I = /^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\[\d*?\])+?)?$/;
39
+ function f(s, n, c = /* @__PURE__ */ new Set()) {
40
+ const o = [], a = s.length;
41
+ for (let p = 0; p < a; p++) {
42
+ const t = s[p];
43
+ if (g.test(t.type))
44
+ o.push(t);
45
+ else {
46
+ const r = w(I, t.type);
47
+ if (!r?.type)
48
+ throw new d({ abiParameter: t });
49
+ const { array: u, type: e } = r;
50
+ if (e in n) {
51
+ if (c.has(e))
52
+ throw new x({ type: e });
53
+ o.push({
54
+ ...t,
55
+ type: `tuple${u ?? ""}`,
56
+ components: f(n[e] ?? [], n, /* @__PURE__ */ new Set([...c, e]))
57
+ });
58
+ } else if ($(e))
59
+ o.push(t);
60
+ else
61
+ throw new S({ type: e });
62
+ }
39
63
  }
64
+ return o;
40
65
  }
41
66
  export {
42
- a as InvalidAbiItemError,
43
- i as UnknownSolidityTypeError,
44
- o as UnknownTypeError
67
+ C as parseStructs
45
68
  };