@coinbase/cdp-hooks 0.0.93 → 0.0.95

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 (270) hide show
  1. package/dist/esm/index.js +16 -16
  2. package/dist/esm/index100.js +42 -35
  3. package/dist/esm/index101.js +88 -9
  4. package/dist/esm/index102.js +40 -31
  5. package/dist/esm/index103.js +7 -35
  6. package/dist/esm/index104.js +4 -7
  7. package/dist/esm/index105.js +16 -29
  8. package/dist/esm/index106.js +8 -46
  9. package/dist/esm/index107.js +13 -88
  10. package/dist/esm/index108.js +7 -40
  11. package/dist/esm/index109.js +9 -8
  12. package/dist/esm/index110.js +15 -5
  13. package/dist/esm/index111.js +46 -16
  14. package/dist/esm/index112.js +13 -8
  15. package/dist/esm/index113.js +16 -13
  16. package/dist/esm/index114.js +13 -7
  17. package/dist/esm/index115.js +6 -9
  18. package/dist/esm/index116.js +34 -15
  19. package/dist/esm/index117.js +9 -46
  20. package/dist/esm/index118.js +8 -13
  21. package/dist/esm/index119.js +25 -16
  22. package/dist/esm/index120.js +10 -13
  23. package/dist/esm/index121.js +13 -5
  24. package/dist/esm/index122.js +11 -35
  25. package/dist/esm/index123.js +116 -9
  26. package/dist/esm/index124.js +32 -7
  27. package/dist/esm/index125.js +79 -25
  28. package/dist/esm/index126.js +177 -10
  29. package/dist/esm/index127.js +44 -14
  30. package/dist/esm/index128.js +6 -11
  31. package/dist/esm/index129.js +13 -116
  32. package/dist/esm/index130.js +12 -32
  33. package/dist/esm/index131.js +97 -77
  34. package/dist/esm/index132.js +67 -172
  35. package/dist/esm/index133.js +86 -43
  36. package/dist/esm/index134.js +148 -6
  37. package/dist/esm/index135.js +136 -13
  38. package/dist/esm/index136.js +68 -13
  39. package/dist/esm/index137.js +23 -99
  40. package/dist/esm/index138.js +104 -71
  41. package/dist/esm/index139.js +6 -87
  42. package/dist/esm/index140.js +128 -145
  43. package/dist/esm/index141.js +270 -131
  44. package/dist/esm/index142.js +3 -69
  45. package/dist/esm/index143.js +4 -24
  46. package/dist/esm/index144.js +9 -106
  47. package/dist/esm/index145.js +2 -7
  48. package/dist/esm/index146.js +2 -132
  49. package/dist/esm/index147.js +3 -276
  50. package/dist/esm/index148.js +327 -3
  51. package/dist/esm/index149.js +14 -4
  52. package/dist/esm/index150.js +5 -9
  53. package/dist/esm/index151.js +56 -2
  54. package/dist/esm/index152.js +2 -2
  55. package/dist/esm/index153.js +8 -3
  56. package/dist/esm/index154.js +166 -278
  57. package/dist/esm/index155.js +32 -14
  58. package/dist/esm/index156.js +21 -4
  59. package/dist/esm/index157.js +5 -55
  60. package/dist/esm/index158.js +74 -2
  61. package/dist/esm/index159.js +5 -7
  62. package/dist/esm/index160.js +5 -214
  63. package/dist/esm/index161.js +36 -32
  64. package/dist/esm/index162.js +74 -20
  65. package/dist/esm/index163.js +3 -6
  66. package/dist/esm/index164.js +18 -68
  67. package/dist/esm/index165.js +451 -5
  68. package/dist/esm/index166.js +30 -5
  69. package/dist/esm/index167.js +20 -29
  70. package/dist/esm/index168.js +21 -63
  71. package/dist/esm/index169.js +35 -3
  72. package/dist/esm/index170.js +186 -16
  73. package/dist/esm/index171.js +6 -449
  74. package/dist/esm/index172.js +2 -31
  75. package/dist/esm/index173.js +10 -24
  76. package/dist/esm/index174.js +13 -28
  77. package/dist/esm/index175.js +25 -32
  78. package/dist/esm/index176.js +8 -193
  79. package/dist/esm/index177.js +54 -7
  80. package/dist/esm/index178.js +46 -2
  81. package/dist/esm/index179.js +8 -12
  82. package/dist/esm/index180.js +7 -18
  83. package/dist/esm/index181.js +15 -26
  84. package/dist/esm/index182.js +18 -8
  85. package/dist/esm/index183.js +24 -55
  86. package/dist/esm/index184.js +16 -45
  87. package/dist/esm/index185.js +54 -8
  88. package/dist/esm/index186.js +11 -7
  89. package/dist/esm/index187.js +160 -16
  90. package/dist/esm/index188.js +20 -17
  91. package/dist/esm/index189.js +127 -24
  92. package/dist/esm/index190.js +37 -15
  93. package/dist/esm/index191.js +6 -54
  94. package/dist/esm/index192.js +27 -11
  95. package/dist/esm/index193.js +168 -137
  96. package/dist/esm/index194.js +4 -22
  97. package/dist/esm/index195.js +61 -124
  98. package/dist/esm/index196.js +3 -39
  99. package/dist/esm/index197.js +20 -6
  100. package/dist/esm/index198.js +16 -27
  101. package/dist/esm/index199.js +22 -190
  102. package/dist/esm/index200.js +12 -4
  103. package/dist/esm/index201.js +32 -62
  104. package/dist/esm/index202.js +3 -3
  105. package/dist/esm/index203.js +18 -20
  106. package/dist/esm/index204.js +27 -16
  107. package/dist/esm/index205.js +34 -22
  108. package/dist/esm/index206.js +7 -11
  109. package/dist/esm/index207.js +23 -32
  110. package/dist/esm/index208.js +29 -3
  111. package/dist/esm/index209.js +64 -18
  112. package/dist/esm/index210.js +9 -27
  113. package/dist/esm/index211.js +32 -34
  114. package/dist/esm/index212.js +27 -7
  115. package/dist/esm/index213.js +24 -25
  116. package/dist/esm/index214.js +3 -28
  117. package/dist/esm/index215.js +14 -64
  118. package/dist/esm/index216.js +103 -9
  119. package/dist/esm/index217.js +62 -31
  120. package/dist/esm/index218.js +5 -27
  121. package/dist/esm/index219.js +6 -24
  122. package/dist/esm/index220.js +27 -3
  123. package/dist/esm/index221.js +38 -14
  124. package/dist/esm/index222.js +13 -103
  125. package/dist/esm/index223.js +38 -60
  126. package/dist/esm/index224.js +5 -5
  127. package/dist/esm/index225.js +11 -6
  128. package/dist/esm/index226.js +19 -27
  129. package/dist/esm/index227.js +76 -36
  130. package/dist/esm/index228.js +2 -14
  131. package/dist/esm/index229.js +34 -39
  132. package/dist/esm/index230.js +110 -5
  133. package/dist/esm/index231.js +48 -11
  134. package/dist/esm/index232.js +32 -19
  135. package/dist/esm/index233.js +8 -78
  136. package/dist/esm/index234.js +7 -2
  137. package/dist/esm/index235.js +6 -37
  138. package/dist/esm/index236.js +11 -110
  139. package/dist/esm/index237.js +9 -47
  140. package/dist/esm/index238.js +13 -32
  141. package/dist/esm/index239.js +32 -8
  142. package/dist/esm/index240.js +5 -7
  143. package/dist/esm/index241.js +8 -6
  144. package/dist/esm/index242.js +19 -11
  145. package/dist/esm/index243.js +30 -9
  146. package/dist/esm/index244.js +20 -13
  147. package/dist/esm/index245.js +3 -32
  148. package/dist/esm/index246.js +18 -5
  149. package/dist/esm/index247.js +10 -8
  150. package/dist/esm/index248.js +21 -19
  151. package/dist/esm/index249.js +22 -31
  152. package/dist/esm/index250.js +5 -20
  153. package/dist/esm/index251.js +5 -3
  154. package/dist/esm/index252.js +8 -17
  155. package/dist/esm/index253.js +104 -10
  156. package/dist/esm/index254.js +3 -22
  157. package/dist/esm/index255.js +18 -22
  158. package/dist/esm/index256.js +171 -5
  159. package/dist/esm/index257.js +17 -5
  160. package/dist/esm/index258.js +10 -9
  161. package/dist/esm/index259.js +38 -104
  162. package/dist/esm/index260.js +2 -3
  163. package/dist/esm/index261.js +69 -18
  164. package/dist/esm/index262.js +33 -170
  165. package/dist/esm/index263.js +13 -16
  166. package/dist/esm/index264.js +41 -10
  167. package/dist/esm/index265.js +2 -41
  168. package/dist/esm/index266.js +5 -2
  169. package/dist/esm/index267.js +10 -4
  170. package/dist/esm/index268.js +18 -9
  171. package/dist/esm/index269.js +7 -19
  172. package/dist/esm/index270.js +11 -7
  173. package/dist/esm/index271.js +66 -11
  174. package/dist/esm/index272.js +64 -65
  175. package/dist/esm/index273.js +180 -60
  176. package/dist/esm/index274.js +20 -183
  177. package/dist/esm/index275.js +41 -21
  178. package/dist/esm/index276.js +54 -20
  179. package/dist/esm/index277.js +18 -54
  180. package/dist/esm/index278.js +10 -34
  181. package/dist/esm/index279.js +7 -10
  182. package/dist/esm/index280.js +7 -13
  183. package/dist/esm/index281.js +6 -7
  184. package/dist/esm/index282.js +36 -6
  185. package/dist/esm/index283.js +14 -35
  186. package/dist/esm/index284.js +8 -15
  187. package/dist/esm/index285.js +11 -7
  188. package/dist/esm/index286.js +9 -12
  189. package/dist/esm/index287.js +16 -9
  190. package/dist/esm/index288.js +21 -15
  191. package/dist/esm/index289.js +30 -22
  192. package/dist/esm/index290.js +2 -31
  193. package/dist/esm/index291.js +14 -2
  194. package/dist/esm/index292.js +12 -13
  195. package/dist/esm/index293.js +45 -10
  196. package/dist/esm/index294.js +9 -47
  197. package/dist/esm/index295.js +12 -8
  198. package/dist/esm/index296.js +14 -13
  199. package/dist/esm/index297.js +8 -14
  200. package/dist/esm/index298.js +13 -6
  201. package/dist/esm/index299.js +24 -15
  202. package/dist/esm/index3.js +1 -1
  203. package/dist/esm/index300.js +11 -24
  204. package/dist/esm/index301.js +23 -10
  205. package/dist/esm/index302.js +51 -24
  206. package/dist/esm/index303.js +17 -51
  207. package/dist/esm/index304.js +14 -17
  208. package/dist/esm/index305.js +11 -14
  209. package/dist/esm/index306.js +103 -11
  210. package/dist/esm/index307.js +5 -103
  211. package/dist/esm/index308.js +223 -5
  212. package/dist/esm/index309.js +6 -223
  213. package/dist/esm/index310.js +7 -7
  214. package/dist/esm/index311.js +27 -7
  215. package/dist/esm/index312.js +18 -25
  216. package/dist/esm/index313.js +144 -18
  217. package/dist/esm/index314.js +12 -145
  218. package/dist/esm/index315.js +35 -12
  219. package/dist/esm/index316.js +41 -35
  220. package/dist/esm/index317.js +2 -42
  221. package/dist/esm/index318.js +68 -3
  222. package/dist/esm/index319.js +3 -68
  223. package/dist/esm/index320.js +2 -2
  224. package/dist/esm/index321.js +155 -3
  225. package/dist/esm/index322.js +9 -155
  226. package/dist/esm/index323.js +16 -9
  227. package/dist/esm/index324.js +113 -16
  228. package/dist/esm/index325.js +116 -95
  229. package/dist/esm/index326.js +70 -126
  230. package/dist/esm/index327.js +2 -79
  231. package/dist/esm/index328.js +698 -2
  232. package/dist/esm/index329.js +126 -685
  233. package/dist/esm/index330.js +41 -137
  234. package/dist/esm/index331.js +198 -40
  235. package/dist/esm/index332.js +3 -200
  236. package/dist/esm/index335.js +1 -1
  237. package/dist/esm/index336.js +2 -2
  238. package/dist/esm/index340.js +2 -2
  239. package/dist/esm/index341.js +1 -1
  240. package/dist/esm/index37.js +24 -25
  241. package/dist/esm/index49.js +17 -18
  242. package/dist/esm/index50.js +5 -5
  243. package/dist/esm/index73.js +2 -2
  244. package/dist/esm/index74.js +2 -2
  245. package/dist/esm/index75.js +5 -5
  246. package/dist/esm/index76.js +2 -2
  247. package/dist/esm/index77.js +2 -2
  248. package/dist/esm/index79.js +31 -37
  249. package/dist/esm/index80.js +4 -2
  250. package/dist/esm/index81.js +9 -69
  251. package/dist/esm/index82.js +68 -34
  252. package/dist/esm/index83.js +8 -13
  253. package/dist/esm/index84.js +29 -2
  254. package/dist/esm/index85.js +69 -31
  255. package/dist/esm/index86.js +19 -3
  256. package/dist/esm/index87.js +110 -9
  257. package/dist/esm/index88.js +58 -66
  258. package/dist/esm/index89.js +22 -7
  259. package/dist/esm/index90.js +39 -27
  260. package/dist/esm/index91.js +36 -69
  261. package/dist/esm/index92.js +58 -19
  262. package/dist/esm/index93.js +163 -110
  263. package/dist/esm/index94.js +36 -57
  264. package/dist/esm/index95.js +8 -23
  265. package/dist/esm/index96.js +31 -40
  266. package/dist/esm/index97.js +33 -34
  267. package/dist/esm/index98.js +9 -58
  268. package/dist/esm/index99.js +25 -159
  269. package/dist/types/index.d.ts +12 -11
  270. package/package.json +3 -3
@@ -1,41 +1,5 @@
1
- import { SliceOffsetOutOfBoundsError as t } from "./index180.js";
2
- import { isHex as p } from "./index220.js";
3
- import { size as r } from "./index156.js";
4
- function w(e, f, i, { strict: o } = {}) {
5
- return p(e, { strict: !1 }) ? u(e, f, i, {
6
- strict: o
7
- }) : m(e, f, i, {
8
- strict: o
9
- });
10
- }
11
- function s(e, f) {
12
- if (typeof f == "number" && f > 0 && f > r(e) - 1)
13
- throw new t({
14
- offset: f,
15
- position: "start",
16
- size: r(e)
17
- });
18
- }
19
- function c(e, f, i) {
20
- if (typeof f == "number" && typeof i == "number" && r(e) !== i - f)
21
- throw new t({
22
- offset: i,
23
- position: "end",
24
- size: r(e)
25
- });
26
- }
27
- function m(e, f, i, { strict: o } = {}) {
28
- s(e, f);
29
- const n = e.slice(f, i);
30
- return o && c(n, f, i), n;
31
- }
32
- function u(e, f, i, { strict: o } = {}) {
33
- s(e, f);
34
- const n = `0x${e.replace("0x", "").slice((f ?? 0) * 2, (i ?? e.length) * 2)}`;
35
- return o && c(n, f, i), n;
36
- }
1
+ import { toSignatureHash as t } from "./index250.js";
2
+ const e = t;
37
3
  export {
38
- w as slice,
39
- m as sliceBytes,
40
- u as sliceHex
4
+ e as toEventSelector
41
5
  };
@@ -1,9 +1,23 @@
1
- function f(e, { dir: n = "left" } = {}) {
2
- let t = typeof e == "string" ? e.replace("0x", "") : e, i = 0;
3
- for (let l = 0; l < t.length - 1 && t[n === "left" ? l : t.length - l - 1].toString() === "0"; l++)
4
- i++;
5
- return t = n === "left" ? t.slice(i) : t.slice(0, t.length - i), typeof e == "string" ? (t.length === 1 && n === "right" && (t = `${t}0`), `0x${t.length % 2 === 1 ? `0${t}` : t}`) : t;
1
+ import { BaseError as o } from "./index151.js";
2
+ class i extends o {
3
+ constructor({ offset: e }) {
4
+ super(`Offset \`${e}\` cannot be negative.`, {
5
+ name: "NegativeOffsetError"
6
+ });
7
+ }
8
+ }
9
+ class n extends o {
10
+ constructor({ length: e, position: r }) {
11
+ super(`Position \`${r}\` is out of bounds (\`0 < position < ${e}\`).`, { name: "PositionOutOfBoundsError" });
12
+ }
13
+ }
14
+ class c extends o {
15
+ constructor({ count: e, limit: r }) {
16
+ super(`Recursive read limit of \`${r}\` exceeded (recursive read count: \`${e}\`).`, { name: "RecursiveReadLimitExceededError" });
17
+ }
6
18
  }
7
19
  export {
8
- f as trim
20
+ i as NegativeOffsetError,
21
+ n as PositionOutOfBoundsError,
22
+ c as RecursiveReadLimitExceededError
9
23
  };
@@ -1,30 +1,19 @@
1
- import { InvalidBytesBooleanError as f } from "./index173.js";
2
- import { trim as o } from "./index197.js";
3
- import { assertSize as r, hexToNumber as s, hexToBigInt as u } from "./index217.js";
4
- import { bytesToHex as t } from "./index184.js";
5
- function c(n, i = {}) {
6
- typeof i.size < "u" && r(n, { size: i.size });
7
- const e = t(n, i);
8
- return u(e, i);
9
- }
10
- function T(n, i = {}) {
11
- let e = n;
12
- if (typeof i.size < "u" && (r(e, { size: i.size }), e = o(e)), e.length > 1 || e[0] > 1)
13
- throw new f(e);
14
- return !!e[0];
15
- }
16
- function b(n, i = {}) {
17
- typeof i.size < "u" && r(n, { size: i.size });
18
- const e = t(n, i);
19
- return s(e, i);
20
- }
21
- function h(n, i = {}) {
22
- let e = n;
23
- return typeof i.size < "u" && (r(e, { size: i.size }), e = o(e, { dir: "right" })), new TextDecoder().decode(e);
1
+ import { AbiFunctionSignatureNotFoundError as a } from "./index148.js";
2
+ import { slice as r } from "./index190.js";
3
+ import { toFunctionSelector as u } from "./index194.js";
4
+ import { decodeAbiParameters as m } from "./index187.js";
5
+ import { formatAbiItem as d } from "./index149.js";
6
+ function g(e) {
7
+ const { abi: c, data: o } = e, n = r(o, 0, 4), t = c.find((i) => i.type === "function" && n === u(d(i)));
8
+ if (!t)
9
+ throw new a(n, {
10
+ docsPath: "/docs/contract/decodeFunctionData"
11
+ });
12
+ return {
13
+ functionName: t.name,
14
+ args: "inputs" in t && t.inputs && t.inputs.length > 0 ? m(t.inputs, r(o, 4)) : void 0
15
+ };
24
16
  }
25
17
  export {
26
- c as bytesToBigInt,
27
- T as bytesToBool,
28
- b as bytesToNumber,
29
- h as bytesToString
18
+ g as decodeFunctionData
30
19
  };
@@ -1,194 +1,26 @@
1
- import { AbiEncodingLengthMismatchError as y, InvalidAbiEncodingTypeError as u, InvalidArrayError as g, AbiEncodingArrayLengthMismatchError as l, AbiEncodingBytesSizeMismatchError as b } from "./index154.js";
2
- import { InvalidAddressError as w } from "./index179.js";
3
- import { BaseError as A } from "./index157.js";
4
- import { IntegerOutOfRangeError as x } from "./index173.js";
5
- import { isAddress as z } from "./index206.js";
6
- import { concat as f } from "./index188.js";
7
- import { padHex as d } from "./index207.js";
8
- import { size as a } from "./index156.js";
9
- import { slice as E } from "./index196.js";
10
- import { numberToHex as m, boolToHex as P, stringToHex as S } from "./index184.js";
11
- import { integerRegex as I } from "./index208.js";
12
- function K(e, t) {
13
- if (e.length !== t.length)
14
- throw new y({
15
- expectedLength: e.length,
16
- givenLength: t.length
17
- });
18
- const o = L({
19
- params: e,
20
- values: t
21
- }), n = h(o);
22
- return n.length === 0 ? "0x" : n;
23
- }
24
- function L({ params: e, values: t }) {
25
- const o = [];
26
- for (let n = 0; n < e.length; n++)
27
- o.push(p({ param: e[n], value: t[n] }));
28
- return o;
29
- }
30
- function p({ param: e, value: t }) {
31
- const o = W(e.type);
1
+ import { AbiFunctionNotFoundError as u, AbiFunctionOutputsNotFoundError as s } from "./index148.js";
2
+ import { decodeAbiParameters as a } from "./index187.js";
3
+ import { getAbiItem as m } from "./index158.js";
4
+ const e = "/docs/contract/decodeFunctionResult";
5
+ function l(c) {
6
+ const { abi: r, args: d, functionName: o, data: f } = c;
7
+ let n = r[0];
32
8
  if (o) {
33
- const [n, r] = o;
34
- return M(t, { length: n, param: { ...e, type: r } });
35
- }
36
- if (e.type === "tuple")
37
- return H(t, {
38
- param: e
39
- });
40
- if (e.type === "address")
41
- return B(t);
42
- if (e.type === "bool")
43
- return T(t);
44
- if (e.type.startsWith("uint") || e.type.startsWith("int")) {
45
- const n = e.type.startsWith("int"), [, , r = "256"] = I.exec(e.type) ?? [];
46
- return $(t, {
47
- signed: n,
48
- size: Number(r)
49
- });
50
- }
51
- if (e.type.startsWith("bytes"))
52
- return N(t, { param: e });
53
- if (e.type === "string")
54
- return C(t);
55
- throw new u(e.type, {
56
- docsPath: "/docs/contract/encodeAbiParameters"
57
- });
58
- }
59
- function h(e) {
60
- let t = 0;
61
- for (let i = 0; i < e.length; i++) {
62
- const { dynamic: c, encoded: s } = e[i];
63
- c ? t += 32 : t += a(s);
64
- }
65
- const o = [], n = [];
66
- let r = 0;
67
- for (let i = 0; i < e.length; i++) {
68
- const { dynamic: c, encoded: s } = e[i];
69
- c ? (o.push(m(t + r, { size: 32 })), n.push(s), r += a(s)) : o.push(s);
70
- }
71
- return f([...o, ...n]);
72
- }
73
- function B(e) {
74
- if (!z(e))
75
- throw new w({ address: e });
76
- return { dynamic: !1, encoded: d(e.toLowerCase()) };
77
- }
78
- function M(e, { length: t, param: o }) {
79
- const n = t === null;
80
- if (!Array.isArray(e))
81
- throw new g(e);
82
- if (!n && e.length !== t)
83
- throw new l({
84
- expectedLength: t,
85
- givenLength: e.length,
86
- type: `${o.type}[${t}]`
87
- });
88
- let r = !1;
89
- const i = [];
90
- for (let c = 0; c < e.length; c++) {
91
- const s = p({ param: o, value: e[c] });
92
- s.dynamic && (r = !0), i.push(s);
93
- }
94
- if (n || r) {
95
- const c = h(i);
96
- if (n) {
97
- const s = m(i.length, { size: 32 });
98
- return {
99
- dynamic: !0,
100
- encoded: i.length > 0 ? f([s, c]) : s
101
- };
102
- }
103
- if (r)
104
- return { dynamic: !0, encoded: c };
105
- }
106
- return {
107
- dynamic: !1,
108
- encoded: f(i.map(({ encoded: c }) => c))
109
- };
110
- }
111
- function N(e, { param: t }) {
112
- const [, o] = t.type.split("bytes"), n = a(e);
113
- if (!o) {
114
- let r = e;
115
- return n % 32 !== 0 && (r = d(r, {
116
- dir: "right",
117
- size: Math.ceil((e.length - 2) / 2 / 32) * 32
118
- })), {
119
- dynamic: !0,
120
- encoded: f([d(m(n, { size: 32 })), r])
121
- };
122
- }
123
- if (n !== Number.parseInt(o))
124
- throw new b({
125
- expectedSize: Number.parseInt(o),
126
- value: e
127
- });
128
- return { dynamic: !1, encoded: d(e, { dir: "right" }) };
129
- }
130
- function T(e) {
131
- if (typeof e != "boolean")
132
- throw new A(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);
133
- return { dynamic: !1, encoded: d(P(e)) };
134
- }
135
- function $(e, { signed: t, size: o = 256 }) {
136
- if (typeof o == "number") {
137
- const n = 2n ** (BigInt(o) - (t ? 1n : 0n)) - 1n, r = t ? -n - 1n : 0n;
138
- if (e > n || e < r)
139
- throw new x({
140
- max: n.toString(),
141
- min: r.toString(),
142
- signed: t,
143
- size: o / 8,
144
- value: e.toString()
145
- });
146
- }
147
- return {
148
- dynamic: !1,
149
- encoded: m(e, {
150
- size: 32,
151
- signed: t
152
- })
153
- };
154
- }
155
- function C(e) {
156
- const t = S(e), o = Math.ceil(a(t) / 32), n = [];
157
- for (let r = 0; r < o; r++)
158
- n.push(d(E(t, r * 32, (r + 1) * 32), {
159
- dir: "right"
160
- }));
161
- return {
162
- dynamic: !0,
163
- encoded: f([
164
- d(m(a(t), { size: 32 })),
165
- ...n
166
- ])
167
- };
168
- }
169
- function H(e, { param: t }) {
170
- let o = !1;
171
- const n = [];
172
- for (let r = 0; r < t.components.length; r++) {
173
- const i = t.components[r], c = Array.isArray(e) ? r : i.name, s = p({
174
- param: i,
175
- value: e[c]
176
- });
177
- n.push(s), s.dynamic && (o = !0);
178
- }
179
- return {
180
- dynamic: o,
181
- encoded: o ? h(n) : f(n.map(({ encoded: r }) => r))
182
- };
183
- }
184
- function W(e) {
185
- const t = e.match(/^(.*)\[(\d+)?\]$/);
186
- return t ? (
187
- // Return `null` if the array is dynamic.
188
- [t[2] ? Number(t[2]) : null, t[1]]
189
- ) : void 0;
9
+ const i = m({ abi: r, args: d, name: o });
10
+ if (!i)
11
+ throw new u(o, { docsPath: e });
12
+ n = i;
13
+ }
14
+ if (n.type !== "function")
15
+ throw new u(void 0, { docsPath: e });
16
+ if (!n.outputs)
17
+ throw new s(n.name, { docsPath: e });
18
+ const t = a(n.outputs, f);
19
+ if (t && t.length > 1)
20
+ return t;
21
+ if (t && t.length === 1)
22
+ return t[0];
190
23
  }
191
24
  export {
192
- K as encodeAbiParameters,
193
- W as getArrayComponents
25
+ l as decodeFunctionResult
194
26
  };
@@ -1,6 +1,14 @@
1
- import { slice as t } from "./index196.js";
2
- import { toSignatureHash as r } from "./index256.js";
3
- const c = (o) => t(r(o), 0, 4);
1
+ import { LruMap as u } from "./index248.js";
2
+ import { checksumAddress as c } from "./index188.js";
3
+ const i = /^0x[a-fA-F0-9]{40}$/, r = /* @__PURE__ */ new u(8192);
4
+ function h(t, s) {
5
+ const { strict: n = !0 } = s ?? {}, e = `${t}.${n}`;
6
+ if (r.has(e))
7
+ return r.get(e);
8
+ const o = i.test(t) ? t.toLowerCase() === t ? !0 : n ? c(t) === t : !0 : !1;
9
+ return r.set(e, o), o;
10
+ }
4
11
  export {
5
- c as toFunctionSelector
12
+ h as isAddress,
13
+ r as isAddressCache
6
14
  };
@@ -1,67 +1,37 @@
1
- import { AbiEventSignatureEmptyTopicsError as A, AbiEventSignatureNotFoundError as x, DecodeLogTopicsMismatch as D, AbiDecodingDataSizeTooSmallError as I, DecodeLogDataMismatch as h } from "./index154.js";
2
- import { size as S } from "./index156.js";
3
- import { toEventSelector as T } from "./index202.js";
4
- import { PositionOutOfBoundsError as z } from "./index203.js";
5
- import { decodeAbiParameters as w } from "./index193.js";
6
- import { formatAbiItem as L } from "./index155.js";
7
- const l = "/docs/contract/decodeEventLog";
8
- function U(n) {
9
- const { abi: c, data: i, strict: E, topics: b } = n, m = E ?? !0, [a, ...v] = b;
10
- if (!a)
11
- throw new A({ docsPath: l });
12
- const o = c.find((e) => e.type === "event" && a === T(L(e)));
13
- if (!(o && "name" in o) || o.type !== "event")
14
- throw new x(a, { docsPath: l });
15
- const { name: y, inputs: d } = o, f = d?.some((e) => !("name" in e && e.name)), r = f ? [] : {}, p = d.map((e, t) => [e, t]).filter(([e]) => "indexed" in e && e.indexed);
16
- for (let e = 0; e < p.length; e++) {
17
- const [t, g] = p[e], u = v[e];
18
- if (!u)
19
- throw new D({
20
- abiItem: o,
21
- param: t
22
- });
23
- r[f ? g : t.name || g] = O({
24
- param: t,
25
- value: u
1
+ import { SizeExceedsPaddingSizeError as d } from "./index174.js";
2
+ function f(n, { dir: r, size: t = 32 } = {}) {
3
+ return typeof n == "string" ? p(n, { dir: r, size: t }) : i(n, { dir: r, size: t });
4
+ }
5
+ function p(n, { dir: r, size: t = 32 } = {}) {
6
+ if (t === null)
7
+ return n;
8
+ const e = n.replace("0x", "");
9
+ if (e.length > t * 2)
10
+ throw new d({
11
+ size: Math.ceil(e.length / 2),
12
+ targetSize: t,
13
+ type: "hex"
26
14
  });
27
- }
28
- const s = d.filter((e) => !("indexed" in e && e.indexed));
29
- if (s.length > 0) {
30
- if (i && i !== "0x")
31
- try {
32
- const e = w(s, i);
33
- if (e)
34
- if (f)
35
- for (let t = 0; t < d.length; t++)
36
- r[t] = r[t] ?? e.shift();
37
- else
38
- for (let t = 0; t < s.length; t++)
39
- r[s[t].name] = e[t];
40
- } catch (e) {
41
- if (m)
42
- throw e instanceof I || e instanceof z ? new h({
43
- abiItem: o,
44
- data: i,
45
- params: s,
46
- size: S(i)
47
- }) : e;
48
- }
49
- else if (m)
50
- throw new h({
51
- abiItem: o,
52
- data: "0x",
53
- params: s,
54
- size: 0
55
- });
56
- }
57
- return {
58
- eventName: y,
59
- args: Object.values(r).length > 0 ? r : void 0
60
- };
15
+ return `0x${e[r === "right" ? "padEnd" : "padStart"](t * 2, "0")}`;
61
16
  }
62
- function O({ param: n, value: c }) {
63
- return n.type === "string" || n.type === "bytes" || n.type === "tuple" || n.type.match(/^(.*)\[(\d+)?\]$/) ? c : (w([n], c) || [])[0];
17
+ function i(n, { dir: r, size: t = 32 } = {}) {
18
+ if (t === null)
19
+ return n;
20
+ if (n.length > t)
21
+ throw new d({
22
+ size: n.length,
23
+ targetSize: t,
24
+ type: "bytes"
25
+ });
26
+ const e = new Uint8Array(t);
27
+ for (let a = 0; a < t; a++) {
28
+ const o = r === "right";
29
+ e[o ? a : t - a - 1] = n[o ? a : n.length - a - 1];
30
+ }
31
+ return e;
64
32
  }
65
33
  export {
66
- U as decodeEventLog
34
+ f as pad,
35
+ i as padBytes,
36
+ p as padHex
67
37
  };
@@ -1,5 +1,5 @@
1
- import { toSignatureHash as t } from "./index256.js";
2
- const e = t;
1
+ const e = /^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/, t = /^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;
3
2
  export {
4
- e as toEventSelector
3
+ e as bytesRegex,
4
+ t as integerRegex
5
5
  };
@@ -1,23 +1,21 @@
1
- import { BaseError as o } from "./index157.js";
2
- class i extends o {
3
- constructor({ offset: e }) {
4
- super(`Offset \`${e}\` cannot be negative.`, {
5
- name: "NegativeOffsetError"
6
- });
7
- }
8
- }
9
- class n extends o {
10
- constructor({ length: e, position: r }) {
11
- super(`Position \`${r}\` is out of bounds (\`0 < position < ${e}\`).`, { name: "PositionOutOfBoundsError" });
12
- }
13
- }
14
- class c extends o {
15
- constructor({ count: e, limit: r }) {
16
- super(`Recursive read limit of \`${r}\` exceeded (recursive read count: \`${e}\`).`, { name: "RecursiveReadLimitExceededError" });
17
- }
1
+ import { AbiConstructorNotFoundError as p, AbiConstructorParamsNotFoundError as i } from "./index148.js";
2
+ import { concatHex as u } from "./index182.js";
3
+ import { encodeAbiParameters as d } from "./index193.js";
4
+ const r = "/docs/contract/encodeDeployData";
5
+ function w(c) {
6
+ const { abi: s, args: o, bytecode: n } = c;
7
+ if (!o || o.length === 0)
8
+ return n;
9
+ const t = s.find((e) => "type" in e && e.type === "constructor");
10
+ if (!t)
11
+ throw new p({ docsPath: r });
12
+ if (!("inputs" in t))
13
+ throw new i({ docsPath: r });
14
+ if (!t.inputs || t.inputs.length === 0)
15
+ throw new i({ docsPath: r });
16
+ const a = d(t.inputs, o);
17
+ return u([n, a]);
18
18
  }
19
19
  export {
20
- i as NegativeOffsetError,
21
- n as PositionOutOfBoundsError,
22
- c as RecursiveReadLimitExceededError
20
+ w as encodeDeployData
23
21
  };
@@ -1,19 +1,30 @@
1
- import { AbiFunctionSignatureNotFoundError as a } from "./index154.js";
2
- import { slice as r } from "./index196.js";
3
- import { toFunctionSelector as u } from "./index200.js";
4
- import { decodeAbiParameters as m } from "./index193.js";
5
- import { formatAbiItem as d } from "./index155.js";
6
- function g(e) {
7
- const { abi: c, data: o } = e, n = r(o, 0, 4), t = c.find((i) => i.type === "function" && n === u(d(i)));
8
- if (!t)
9
- throw new a(n, {
10
- docsPath: "/docs/contract/decodeFunctionData"
11
- });
12
- return {
13
- functionName: t.name,
14
- args: "inputs" in t && t.inputs && t.inputs.length > 0 ? m(t.inputs, r(o, 4)) : void 0
15
- };
1
+ import { AbiErrorNotFoundError as c, AbiErrorInputsNotFoundError as u } from "./index148.js";
2
+ import { concatHex as d } from "./index182.js";
3
+ import { toFunctionSelector as p } from "./index194.js";
4
+ import { encodeAbiParameters as b } from "./index193.js";
5
+ import { formatAbiItem as l } from "./index149.js";
6
+ import { getAbiItem as w } from "./index158.js";
7
+ const e = "/docs/contract/encodeErrorResult";
8
+ function F(a) {
9
+ const { abi: n, errorName: t, args: o } = a;
10
+ let r = n[0];
11
+ if (t) {
12
+ const m = w({ abi: n, args: o, name: t });
13
+ if (!m)
14
+ throw new c(t, { docsPath: e });
15
+ r = m;
16
+ }
17
+ if (r.type !== "error")
18
+ throw new c(void 0, { docsPath: e });
19
+ const f = l(r), s = p(f);
20
+ let i = "0x";
21
+ if (o && o.length > 0) {
22
+ if (!r.inputs)
23
+ throw new u(r.name, { docsPath: e });
24
+ i = b(r.inputs, o);
25
+ }
26
+ return d([s, i]);
16
27
  }
17
28
  export {
18
- g as decodeFunctionData
29
+ F as encodeErrorResult
19
30
  };
@@ -1,26 +1,38 @@
1
- import { AbiFunctionNotFoundError as u, AbiFunctionOutputsNotFoundError as s } from "./index154.js";
2
- import { decodeAbiParameters as a } from "./index193.js";
3
- import { getAbiItem as m } from "./index164.js";
4
- const e = "/docs/contract/decodeFunctionResult";
5
- function l(c) {
6
- const { abi: r, args: d, functionName: o, data: f } = c;
7
- let n = r[0];
8
- if (o) {
9
- const i = m({ abi: r, args: d, name: o });
10
- if (!i)
11
- throw new u(o, { docsPath: e });
12
- n = i;
1
+ import { AbiEventNotFoundError as p } from "./index148.js";
2
+ import { FilterTypeNotSupportedError as A } from "./index171.js";
3
+ import { toBytes as b } from "./index177.js";
4
+ import { keccak256 as g } from "./index179.js";
5
+ import { toEventSelector as v } from "./index196.js";
6
+ import { encodeAbiParameters as h } from "./index193.js";
7
+ import { formatAbiItem as w } from "./index149.js";
8
+ import { getAbiItem as E } from "./index158.js";
9
+ const d = "/docs/contract/encodeEventTopics";
10
+ function j(t) {
11
+ const { abi: r, eventName: f, args: i } = t;
12
+ let c = r[0];
13
+ if (f) {
14
+ const s = E({ abi: r, name: f });
15
+ if (!s)
16
+ throw new p(f, { docsPath: d });
17
+ c = s;
13
18
  }
14
- if (n.type !== "function")
15
- throw new u(void 0, { docsPath: e });
16
- if (!n.outputs)
17
- throw new s(n.name, { docsPath: e });
18
- const t = a(n.outputs, f);
19
- if (t && t.length > 1)
20
- return t;
21
- if (t && t.length === 1)
22
- return t[0];
19
+ if (c.type !== "event")
20
+ throw new p(void 0, { docsPath: d });
21
+ const l = w(c), y = v(l);
22
+ let m = [];
23
+ if (i && "inputs" in c) {
24
+ const s = c.inputs?.filter((n) => "indexed" in n && n.indexed), e = Array.isArray(i) ? i : Object.values(i).length > 0 ? s?.map((n) => i[n.name]) ?? [] : [];
25
+ e.length > 0 && (m = s?.map((n, o) => Array.isArray(e[o]) ? e[o].map((x, a) => u({ param: n, value: e[o][a] })) : typeof e[o] < "u" && e[o] !== null ? u({ param: n, value: e[o] }) : null) ?? []);
26
+ }
27
+ return [y, ...m];
28
+ }
29
+ function u({ param: t, value: r }) {
30
+ if (t.type === "string" || t.type === "bytes")
31
+ return g(b(r));
32
+ if (t.type === "tuple" || t.type.match(/^(.*)\[(\d+)?\]$/))
33
+ throw new A(t.type);
34
+ return h([t], [r]);
23
35
  }
24
36
  export {
25
- l as decodeFunctionResult
37
+ j as encodeEventTopics
26
38
  };
@@ -1,14 +1,10 @@
1
- import { LruMap as u } from "./index254.js";
2
- import { checksumAddress as c } from "./index194.js";
3
- const i = /^0x[a-fA-F0-9]{40}$/, r = /* @__PURE__ */ new u(8192);
4
- function h(t, s) {
5
- const { strict: n = !0 } = s ?? {}, e = `${t}.${n}`;
6
- if (r.has(e))
7
- return r.get(e);
8
- const o = i.test(t) ? t.toLowerCase() === t ? !0 : n ? c(t) === t : !0 : !1;
9
- return r.set(e, o), o;
1
+ import { concatHex as r } from "./index182.js";
2
+ import { encodeAbiParameters as a } from "./index193.js";
3
+ import { prepareEncodeFunctionData as s } from "./index207.js";
4
+ function p(n) {
5
+ const { args: o } = n, { abi: i, functionName: c } = n.abi.length === 1 && n.functionName?.startsWith("0x") ? n : s(n), t = i[0], e = c, u = "inputs" in t && t.inputs ? a(t.inputs, o ?? []) : void 0;
6
+ return r([e, u ?? "0x"]);
10
7
  }
11
8
  export {
12
- h as isAddress,
13
- r as isAddressCache
9
+ p as encodeFunctionData
14
10
  };