@coinbase/cdp-hooks 0.0.73 → 0.0.74

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 (303) hide show
  1. package/README.md +231 -2
  2. package/dist/esm/index.js +55 -48
  3. package/dist/esm/index10.js +1 -1
  4. package/dist/esm/index100.js +9 -3
  5. package/dist/esm/index101.js +2 -327
  6. package/dist/esm/index102.js +2 -14
  7. package/dist/esm/index103.js +3 -5
  8. package/dist/esm/index104.js +299 -28
  9. package/dist/esm/index105.js +14 -2
  10. package/dist/esm/index106.js +4 -7
  11. package/dist/esm/index107.js +29 -188
  12. package/dist/esm/index108.js +2 -32
  13. package/dist/esm/index109.js +7 -21
  14. package/dist/esm/index11.js +1 -1
  15. package/dist/esm/index110.js +214 -5
  16. package/dist/esm/index111.js +30 -72
  17. package/dist/esm/index112.js +21 -5
  18. package/dist/esm/index113.js +5 -5
  19. package/dist/esm/index114.js +69 -31
  20. package/dist/esm/index115.js +5 -75
  21. package/dist/esm/index116.js +6 -3
  22. package/dist/esm/index117.js +28 -16
  23. package/dist/esm/index118.js +57 -433
  24. package/dist/esm/index119.js +3 -31
  25. package/dist/esm/index12.js +1 -1
  26. package/dist/esm/index120.js +17 -20
  27. package/dist/esm/index121.js +439 -21
  28. package/dist/esm/index122.js +28 -32
  29. package/dist/esm/index123.js +18 -185
  30. package/dist/esm/index124.js +31 -6
  31. package/dist/esm/index125.js +35 -2
  32. package/dist/esm/index126.js +189 -8
  33. package/dist/esm/index127.js +7 -17
  34. package/dist/esm/index128.js +2 -28
  35. package/dist/esm/index129.js +12 -8
  36. package/dist/esm/index13.js +1 -1
  37. package/dist/esm/index130.js +15 -52
  38. package/dist/esm/index131.js +23 -41
  39. package/dist/esm/index132.js +8 -8
  40. package/dist/esm/index133.js +55 -7
  41. package/dist/esm/index134.js +44 -15
  42. package/dist/esm/index135.js +8 -18
  43. package/dist/esm/index136.js +7 -24
  44. package/dist/esm/index137.js +16 -16
  45. package/dist/esm/index138.js +17 -53
  46. package/dist/esm/index139.js +22 -9
  47. package/dist/esm/index14.js +1 -1
  48. package/dist/esm/index140.js +15 -159
  49. package/dist/esm/index141.js +53 -20
  50. package/dist/esm/index142.js +11 -127
  51. package/dist/esm/index143.js +153 -31
  52. package/dist/esm/index144.js +21 -6
  53. package/dist/esm/index145.js +127 -27
  54. package/dist/esm/index146.js +31 -184
  55. package/dist/esm/index147.js +7 -4
  56. package/dist/esm/index148.js +26 -63
  57. package/dist/esm/index149.js +192 -3
  58. package/dist/esm/index15.js +1 -1
  59. package/dist/esm/index150.js +4 -21
  60. package/dist/esm/index151.js +61 -13
  61. package/dist/esm/index152.js +3 -24
  62. package/dist/esm/index153.js +20 -11
  63. package/dist/esm/index154.js +15 -33
  64. package/dist/esm/index155.js +24 -3
  65. package/dist/esm/index156.js +11 -18
  66. package/dist/esm/index157.js +33 -26
  67. package/dist/esm/index158.js +3 -36
  68. package/dist/esm/index159.js +18 -7
  69. package/dist/esm/index16.js +1 -1
  70. package/dist/esm/index160.js +26 -24
  71. package/dist/esm/index161.js +34 -27
  72. package/dist/esm/index162.js +7 -64
  73. package/dist/esm/index163.js +25 -9
  74. package/dist/esm/index164.js +28 -33
  75. package/dist/esm/index165.js +64 -27
  76. package/dist/esm/index166.js +9 -24
  77. package/dist/esm/index167.js +33 -3
  78. package/dist/esm/index168.js +27 -14
  79. package/dist/esm/index169.js +24 -103
  80. package/dist/esm/index170.js +3 -64
  81. package/dist/esm/index171.js +14 -5
  82. package/dist/esm/index172.js +103 -6
  83. package/dist/esm/index173.js +62 -25
  84. package/dist/esm/index174.js +5 -38
  85. package/dist/esm/index175.js +6 -13
  86. package/dist/esm/index176.js +24 -39
  87. package/dist/esm/index177.js +38 -5
  88. package/dist/esm/index178.js +13 -11
  89. package/dist/esm/index179.js +42 -19
  90. package/dist/esm/index18.js +5 -5
  91. package/dist/esm/index180.js +5 -78
  92. package/dist/esm/index181.js +12 -2
  93. package/dist/esm/index182.js +19 -37
  94. package/dist/esm/index183.js +73 -105
  95. package/dist/esm/index184.js +2 -49
  96. package/dist/esm/index185.js +36 -31
  97. package/dist/esm/index186.js +110 -8
  98. package/dist/esm/index187.js +48 -6
  99. package/dist/esm/index188.js +32 -6
  100. package/dist/esm/index189.js +8 -11
  101. package/dist/esm/index19.js +5 -5
  102. package/dist/esm/index190.js +6 -10
  103. package/dist/esm/index191.js +6 -13
  104. package/dist/esm/index192.js +11 -32
  105. package/dist/esm/index193.js +11 -5
  106. package/dist/esm/index194.js +13 -8
  107. package/dist/esm/index195.js +30 -17
  108. package/dist/esm/index196.js +5 -32
  109. package/dist/esm/index197.js +8 -20
  110. package/dist/esm/index198.js +19 -3
  111. package/dist/esm/index199.js +31 -17
  112. package/dist/esm/index2.js +2 -2
  113. package/dist/esm/index20.js +5 -5
  114. package/dist/esm/index200.js +20 -10
  115. package/dist/esm/index201.js +3 -21
  116. package/dist/esm/index202.js +16 -21
  117. package/dist/esm/index203.js +10 -5
  118. package/dist/esm/index204.js +21 -5
  119. package/dist/esm/index205.js +22 -8
  120. package/dist/esm/index206.js +5 -104
  121. package/dist/esm/index207.js +6 -3
  122. package/dist/esm/index208.js +8 -18
  123. package/dist/esm/index209.js +99 -166
  124. package/dist/esm/index21.js +5 -5
  125. package/dist/esm/index210.js +3 -18
  126. package/dist/esm/index211.js +19 -10
  127. package/dist/esm/index212.js +171 -38
  128. package/dist/esm/index213.js +18 -2
  129. package/dist/esm/index214.js +10 -70
  130. package/dist/esm/index215.js +37 -33
  131. package/dist/esm/index216.js +2 -15
  132. package/dist/esm/index217.js +69 -40
  133. package/dist/esm/index218.js +35 -2
  134. package/dist/esm/index219.js +14 -4
  135. package/dist/esm/index22.js +7 -8
  136. package/dist/esm/index220.js +39 -9
  137. package/dist/esm/index221.js +2 -20
  138. package/dist/esm/index222.js +4 -7
  139. package/dist/esm/index223.js +9 -10
  140. package/dist/esm/index224.js +19 -66
  141. package/dist/esm/index225.js +7 -65
  142. package/dist/esm/index226.js +10 -184
  143. package/dist/esm/index227.js +66 -22
  144. package/dist/esm/index228.js +61 -38
  145. package/dist/esm/index229.js +178 -69
  146. package/dist/esm/index23.js +8 -34
  147. package/dist/esm/index230.js +21 -39
  148. package/dist/esm/index231.js +35 -9
  149. package/dist/esm/index232.js +70 -7
  150. package/dist/esm/index233.js +40 -7
  151. package/dist/esm/index234.js +16 -6
  152. package/dist/esm/index235.js +13 -36
  153. package/dist/esm/index236.js +7 -15
  154. package/dist/esm/index237.js +6 -8
  155. package/dist/esm/index238.js +35 -11
  156. package/dist/esm/index239.js +15 -9
  157. package/dist/esm/index24.js +57 -18
  158. package/dist/esm/index240.js +8 -16
  159. package/dist/esm/index241.js +12 -22
  160. package/dist/esm/index242.js +9 -30
  161. package/dist/esm/index243.js +17 -2
  162. package/dist/esm/index244.js +21 -12
  163. package/dist/esm/index245.js +30 -12
  164. package/dist/esm/index246.js +2 -48
  165. package/dist/esm/index247.js +12 -8
  166. package/dist/esm/index248.js +12 -13
  167. package/dist/esm/index249.js +46 -13
  168. package/dist/esm/index25.js +8 -11
  169. package/dist/esm/index250.js +9 -8
  170. package/dist/esm/index251.js +13 -15
  171. package/dist/esm/index252.js +14 -24
  172. package/dist/esm/index253.js +8 -11
  173. package/dist/esm/index254.js +14 -23
  174. package/dist/esm/index255.js +24 -51
  175. package/dist/esm/index256.js +11 -17
  176. package/dist/esm/index257.js +24 -14
  177. package/dist/esm/index258.js +51 -11
  178. package/dist/esm/index259.js +17 -103
  179. package/dist/esm/index26.js +34 -12
  180. package/dist/esm/index260.js +14 -5
  181. package/dist/esm/index261.js +11 -223
  182. package/dist/esm/index262.js +103 -6
  183. package/dist/esm/index263.js +6 -7
  184. package/dist/esm/index264.js +222 -25
  185. package/dist/esm/index265.js +6 -19
  186. package/dist/esm/index266.js +7 -146
  187. package/dist/esm/index267.js +26 -12
  188. package/dist/esm/index268.js +20 -36
  189. package/dist/esm/index269.js +145 -41
  190. package/dist/esm/index27.js +18 -54
  191. package/dist/esm/index270.js +13 -2
  192. package/dist/esm/index271.js +35 -68
  193. package/dist/esm/index272.js +41 -3
  194. package/dist/esm/index273.js +2 -137
  195. package/dist/esm/index274.js +68 -16
  196. package/dist/esm/index275.js +125 -144
  197. package/dist/esm/index276.js +3 -9
  198. package/dist/esm/index277.js +140 -98
  199. package/dist/esm/index278.js +9 -134
  200. package/dist/esm/index279.js +16 -78
  201. package/dist/esm/index28.js +11 -57
  202. package/dist/esm/index280.js +114 -2
  203. package/dist/esm/index281.js +124 -687
  204. package/dist/esm/index282.js +73 -133
  205. package/dist/esm/index283.js +2 -43
  206. package/dist/esm/index284.js +675 -178
  207. package/dist/esm/index285.js +138 -3
  208. package/dist/esm/index286.js +40 -63
  209. package/dist/esm/index287.js +200 -4
  210. package/dist/esm/index288.js +3 -40
  211. package/dist/esm/index289.js +65 -7
  212. package/dist/esm/index29.js +12 -56
  213. package/dist/esm/index290.js +4 -62
  214. package/dist/esm/index291.js +33 -70
  215. package/dist/esm/index292.js +8 -4
  216. package/dist/esm/index293.js +55 -187
  217. package/dist/esm/index294.js +61 -47
  218. package/dist/esm/index295.js +4 -45
  219. package/dist/esm/index296.js +194 -4
  220. package/dist/esm/index297.js +64 -5
  221. package/dist/esm/index298.js +45 -2
  222. package/dist/esm/index299.js +4 -21
  223. package/dist/esm/index3.js +1 -1
  224. package/dist/esm/index30.js +54 -5
  225. package/dist/esm/index300.js +7 -0
  226. package/dist/esm/index301.js +4 -0
  227. package/dist/esm/index302.js +24 -0
  228. package/dist/esm/index31.js +57 -47
  229. package/dist/esm/index32.js +56 -33
  230. package/dist/esm/index33.js +5 -4
  231. package/dist/esm/index34.js +46 -8
  232. package/dist/esm/index35.js +31 -67
  233. package/dist/esm/index36.js +3 -9
  234. package/dist/esm/index37.js +9 -28
  235. package/dist/esm/index38.js +68 -70
  236. package/dist/esm/index39.js +9 -19
  237. package/dist/esm/index40.js +26 -108
  238. package/dist/esm/index41.js +70 -60
  239. package/dist/esm/index42.js +19 -24
  240. package/dist/esm/index43.js +110 -40
  241. package/dist/esm/index44.js +57 -34
  242. package/dist/esm/index45.js +20 -54
  243. package/dist/esm/index46.js +37 -160
  244. package/dist/esm/index47.js +36 -38
  245. package/dist/esm/index48.js +58 -9
  246. package/dist/esm/index49.js +161 -29
  247. package/dist/esm/index5.js +3 -3
  248. package/dist/esm/index50.js +39 -36
  249. package/dist/esm/index51.js +7 -7
  250. package/dist/esm/index52.js +30 -28
  251. package/dist/esm/index53.js +34 -44
  252. package/dist/esm/index54.js +9 -88
  253. package/dist/esm/index55.js +26 -37
  254. package/dist/esm/index56.js +46 -8
  255. package/dist/esm/index57.js +88 -6
  256. package/dist/esm/index58.js +40 -16
  257. package/dist/esm/index59.js +8 -8
  258. package/dist/esm/index6.js +2 -2
  259. package/dist/esm/index60.js +6 -13
  260. package/dist/esm/index61.js +16 -7
  261. package/dist/esm/index62.js +8 -9
  262. package/dist/esm/index63.js +13 -16
  263. package/dist/esm/index64.js +7 -46
  264. package/dist/esm/index65.js +9 -13
  265. package/dist/esm/index66.js +15 -15
  266. package/dist/esm/index67.js +46 -13
  267. package/dist/esm/index68.js +13 -6
  268. package/dist/esm/index69.js +15 -34
  269. package/dist/esm/index7.js +1 -1
  270. package/dist/esm/index70.js +13 -9
  271. package/dist/esm/index71.js +5 -7
  272. package/dist/esm/index72.js +35 -25
  273. package/dist/esm/index73.js +9 -10
  274. package/dist/esm/index74.js +7 -13
  275. package/dist/esm/index75.js +25 -11
  276. package/dist/esm/index76.js +10 -116
  277. package/dist/esm/index77.js +13 -32
  278. package/dist/esm/index78.js +11 -79
  279. package/dist/esm/index79.js +108 -169
  280. package/dist/esm/index8.js +2 -2
  281. package/dist/esm/index80.js +26 -37
  282. package/dist/esm/index81.js +79 -6
  283. package/dist/esm/index82.js +177 -13
  284. package/dist/esm/index83.js +44 -13
  285. package/dist/esm/index84.js +6 -99
  286. package/dist/esm/index85.js +13 -72
  287. package/dist/esm/index86.js +13 -87
  288. package/dist/esm/index87.js +93 -142
  289. package/dist/esm/index88.js +65 -129
  290. package/dist/esm/index89.js +73 -54
  291. package/dist/esm/index9.js +1 -1
  292. package/dist/esm/index90.js +148 -23
  293. package/dist/esm/index91.js +133 -102
  294. package/dist/esm/index92.js +68 -6
  295. package/dist/esm/index93.js +23 -131
  296. package/dist/esm/index94.js +101 -271
  297. package/dist/esm/index95.js +7 -3
  298. package/dist/esm/index96.js +132 -4
  299. package/dist/esm/index97.js +276 -9
  300. package/dist/esm/index98.js +3 -2
  301. package/dist/esm/index99.js +4 -2
  302. package/dist/types/index.d.ts +33 -0
  303. package/package.json +3 -3
@@ -1,226 +1,14 @@
1
- import { numberToBytesLE as y, numberToBytesBE as I, bitMask as Z, bytesToNumberLE as S, bytesToNumberBE as _, _validateObject as j } from "./index282.js";
2
- import { anumber as z } from "./index266.js";
3
- const g = BigInt(0), d = BigInt(1), q = /* @__PURE__ */ BigInt(2), V = /* @__PURE__ */ BigInt(3), x = /* @__PURE__ */ BigInt(4), T = /* @__PURE__ */ BigInt(5), L = /* @__PURE__ */ BigInt(8);
4
- function h(t, n) {
5
- const o = t % n;
6
- return o >= g ? o : n + o;
7
- }
8
- function O(t, n, o) {
9
- let r = t;
10
- for (; n-- > g; )
11
- r *= r, r %= o;
12
- return r;
13
- }
14
- function B(t, n) {
15
- if (t === g)
16
- throw new Error("invert: expected non-zero number");
17
- if (n <= g)
18
- throw new Error("invert: expected positive modulus, got " + n);
19
- let o = h(t, n), r = n, s = g, f = d;
20
- for (; o !== g; ) {
21
- const u = r / o, i = r % o, w = s - f * u;
22
- r = o, o = i, s = f, f = w;
23
- }
24
- if (r !== d)
25
- throw new Error("invert: does not exist");
26
- return h(s, n);
27
- }
28
- function M(t, n) {
29
- const o = (t.ORDER + d) / x, r = t.pow(n, o);
30
- if (!t.eql(t.sqr(r), n))
31
- throw new Error("Cannot find square root");
32
- return r;
33
- }
34
- function H(t, n) {
35
- const o = (t.ORDER - T) / L, r = t.mul(n, q), s = t.pow(r, o), f = t.mul(n, s), c = t.mul(t.mul(f, q), s), u = t.mul(f, t.sub(c, t.ONE));
36
- if (!t.eql(t.sqr(u), n))
37
- throw new Error("Cannot find square root");
38
- return u;
39
- }
40
- function K(t) {
41
- if (t < BigInt(3))
42
- throw new Error("sqrt is not defined for small field");
43
- let n = t - d, o = 0;
44
- for (; n % q === g; )
45
- n /= q, o++;
46
- let r = q;
47
- const s = U(t);
48
- for (; N(s, r) === 1; )
49
- if (r++ > 1e3)
50
- throw new Error("Cannot find square root: probably non-prime P");
51
- if (o === 1)
52
- return M;
53
- let f = s.pow(r, n);
54
- const c = (n + d) / q;
55
- return function(i, w) {
56
- if (i.is0(w))
57
- return w;
58
- if (N(i, w) !== 1)
59
- throw new Error("Cannot find square root");
60
- let e = o, l = i.mul(i.ONE, f), a = i.pow(w, n), b = i.pow(w, c);
61
- for (; !i.eql(a, i.ONE); ) {
62
- if (i.is0(a))
63
- return i.ZERO;
64
- let m = 1, E = i.sqr(a);
65
- for (; !i.eql(E, i.ONE); )
66
- if (m++, E = i.sqr(E), m === e)
67
- throw new Error("Cannot find square root");
68
- const C = d << BigInt(e - m - 1), v = i.pow(l, C);
69
- e = m, l = i.sqr(v), a = i.mul(a, l), b = i.mul(b, v);
70
- }
71
- return b;
72
- };
73
- }
74
- function Q(t) {
75
- return t % x === V ? M : t % L === T ? H : K(t);
76
- }
77
- const Y = [
78
- "create",
79
- "isValid",
80
- "is0",
81
- "neg",
82
- "inv",
83
- "sqrt",
84
- "sqr",
85
- "eql",
86
- "add",
87
- "sub",
88
- "mul",
89
- "pow",
90
- "div",
91
- "addN",
92
- "subN",
93
- "mulN",
94
- "sqrN"
95
- ];
96
- function P(t) {
97
- const n = {
98
- ORDER: "bigint",
99
- MASK: "bigint",
100
- BYTES: "number",
101
- BITS: "number"
102
- }, o = Y.reduce((r, s) => (r[s] = "function", r), n);
103
- return j(t, o), t;
104
- }
105
- function k(t, n, o) {
106
- if (o < g)
107
- throw new Error("invalid exponent, negatives unsupported");
108
- if (o === g)
109
- return t.ONE;
110
- if (o === d)
111
- return n;
112
- let r = t.ONE, s = n;
113
- for (; o > g; )
114
- o & d && (r = t.mul(r, s)), s = t.sqr(s), o >>= d;
115
- return r;
116
- }
117
- function G(t, n, o = !1) {
118
- const r = new Array(n.length).fill(o ? t.ZERO : void 0), s = n.reduce((c, u, i) => t.is0(u) ? c : (r[i] = c, t.mul(c, u)), t.ONE), f = t.inv(s);
119
- return n.reduceRight((c, u, i) => t.is0(u) ? c : (r[i] = t.mul(c, r[i]), t.mul(c, u)), f), r;
120
- }
121
- function N(t, n) {
122
- const o = (t.ORDER - d) / q, r = t.pow(n, o), s = t.eql(r, t.ONE), f = t.eql(r, t.ZERO), c = t.eql(r, t.neg(t.ONE));
123
- if (!s && !f && !c)
124
- throw new Error("invalid Legendre symbol result");
125
- return s ? 1 : f ? 0 : -1;
126
- }
127
- function J(t, n) {
128
- n !== void 0 && z(n);
129
- const o = n !== void 0 ? n : t.toString(2).length, r = Math.ceil(o / 8);
130
- return { nBitLength: o, nByteLength: r };
131
- }
132
- function U(t, n, o = !1, r = {}) {
133
- if (t <= g)
134
- throw new Error("invalid field: expected ORDER > 0, got " + t);
135
- let s, f;
136
- if (typeof n == "object" && n != null) {
137
- if (r.sqrt || o)
138
- throw new Error("cannot specify opts in two arguments");
139
- const e = n;
140
- e.BITS && (s = e.BITS), e.sqrt && (f = e.sqrt), typeof e.isLE == "boolean" && (o = e.isLE);
141
- } else
142
- typeof n == "number" && (s = n), r.sqrt && (f = r.sqrt);
143
- const { nBitLength: c, nByteLength: u } = J(t, s);
144
- if (u > 2048)
145
- throw new Error("invalid field: expected ORDER of <= 2048 bytes");
146
- let i;
147
- const w = Object.freeze({
148
- ORDER: t,
149
- isLE: o,
150
- BITS: c,
151
- BYTES: u,
152
- MASK: Z(c),
153
- ZERO: g,
154
- ONE: d,
155
- create: (e) => h(e, t),
156
- isValid: (e) => {
157
- if (typeof e != "bigint")
158
- throw new Error("invalid field element: expected bigint, got " + typeof e);
159
- return g <= e && e < t;
160
- },
161
- is0: (e) => e === g,
162
- // is valid and invertible
163
- isValidNot0: (e) => !w.is0(e) && w.isValid(e),
164
- isOdd: (e) => (e & d) === d,
165
- neg: (e) => h(-e, t),
166
- eql: (e, l) => e === l,
167
- sqr: (e) => h(e * e, t),
168
- add: (e, l) => h(e + l, t),
169
- sub: (e, l) => h(e - l, t),
170
- mul: (e, l) => h(e * l, t),
171
- pow: (e, l) => k(w, e, l),
172
- div: (e, l) => h(e * B(l, t), t),
173
- // Same as above, but doesn't normalize
174
- sqrN: (e) => e * e,
175
- addN: (e, l) => e + l,
176
- subN: (e, l) => e - l,
177
- mulN: (e, l) => e * l,
178
- inv: (e) => B(e, t),
179
- sqrt: f || ((e) => (i || (i = Q(t)), i(w, e))),
180
- toBytes: (e) => o ? y(e, u) : I(e, u),
181
- fromBytes: (e) => {
182
- if (e.length !== u)
183
- throw new Error("Field.fromBytes: expected " + u + " bytes, got " + e.length);
184
- return o ? S(e) : _(e);
185
- },
186
- // TODO: we don't need it here, move out to separate fn
187
- invertBatch: (e) => G(w, e),
188
- // We can't move this out because Fp6, Fp12 implement it
189
- // and it's unclear what to return in there.
190
- cmov: (e, l, a) => a ? l : e
191
- });
192
- return Object.freeze(w);
193
- }
194
- function A(t) {
195
- if (typeof t != "bigint")
196
- throw new Error("field order must be bigint");
197
- const n = t.toString(2).length;
198
- return Math.ceil(n / 8);
199
- }
200
- function W(t) {
201
- const n = A(t);
202
- return n + Math.ceil(n / 2);
203
- }
204
- function D(t, n, o = !1) {
205
- const r = t.length, s = A(n), f = W(n);
206
- if (r < 16 || r < f || r > 1024)
207
- throw new Error("expected " + f + "-1024 bytes of input, got " + r);
208
- const c = o ? S(t) : _(t), u = h(c, n - d) + d;
209
- return o ? y(u, s) : I(u, s);
1
+ import { LruMap as u } from "./index204.js";
2
+ const t = /* @__PURE__ */ new u(8192);
3
+ function s(r, { enabled: o = !0, id: e }) {
4
+ if (!o || !e)
5
+ return r();
6
+ if (t.get(e))
7
+ return t.get(e);
8
+ const n = r().finally(() => t.delete(e));
9
+ return t.set(e, n), n;
210
10
  }
211
11
  export {
212
- U as Field,
213
- G as FpInvertBatch,
214
- N as FpLegendre,
215
- k as FpPow,
216
- Q as FpSqrt,
217
- A as getFieldBytesLength,
218
- W as getMinHashLength,
219
- B as invert,
220
- D as mapHashToField,
221
- h as mod,
222
- J as nLength,
223
- O as pow2,
224
- K as tonelliShanks,
225
- P as validateField
12
+ t as promiseCache,
13
+ s as withDedupe
226
14
  };
@@ -1,9 +1,106 @@
1
- import { toBytes as o } from "./index130.js";
2
- import { keccak256 as r } from "./index132.js";
3
- const e = (t) => r(o(t));
4
- function c(t) {
5
- return e(t);
1
+ import { HashMD as D, SHA256_IV as b, Chi as g, Maj as p } from "./index282.js";
2
+ import { createHasher as u, clean as C, rotr as i } from "./index269.js";
3
+ const B = /* @__PURE__ */ Uint32Array.from([
4
+ 1116352408,
5
+ 1899447441,
6
+ 3049323471,
7
+ 3921009573,
8
+ 961987163,
9
+ 1508970993,
10
+ 2453635748,
11
+ 2870763221,
12
+ 3624381080,
13
+ 310598401,
14
+ 607225278,
15
+ 1426881987,
16
+ 1925078388,
17
+ 2162078206,
18
+ 2614888103,
19
+ 3248222580,
20
+ 3835390401,
21
+ 4022224774,
22
+ 264347078,
23
+ 604807628,
24
+ 770255983,
25
+ 1249150122,
26
+ 1555081692,
27
+ 1996064986,
28
+ 2554220882,
29
+ 2821834349,
30
+ 2952996808,
31
+ 3210313671,
32
+ 3336571891,
33
+ 3584528711,
34
+ 113926993,
35
+ 338241895,
36
+ 666307205,
37
+ 773529912,
38
+ 1294757372,
39
+ 1396182291,
40
+ 1695183700,
41
+ 1986661051,
42
+ 2177026350,
43
+ 2456956037,
44
+ 2730485921,
45
+ 2820302411,
46
+ 3259730800,
47
+ 3345764771,
48
+ 3516065817,
49
+ 3600352804,
50
+ 4094571909,
51
+ 275423344,
52
+ 430227734,
53
+ 506948616,
54
+ 659060556,
55
+ 883997877,
56
+ 958139571,
57
+ 1322822218,
58
+ 1537002063,
59
+ 1747873779,
60
+ 1955562222,
61
+ 2024104815,
62
+ 2227730452,
63
+ 2361852424,
64
+ 2428436474,
65
+ 2756734187,
66
+ 3204031479,
67
+ 3329325298
68
+ ]), h = /* @__PURE__ */ new Uint32Array(64);
69
+ class E extends D {
70
+ constructor(o = 32) {
71
+ super(64, o, 8, !1), this.A = b[0] | 0, this.B = b[1] | 0, this.C = b[2] | 0, this.D = b[3] | 0, this.E = b[4] | 0, this.F = b[5] | 0, this.G = b[6] | 0, this.H = b[7] | 0;
72
+ }
73
+ get() {
74
+ const { A: o, B: r, C: t, D: s, E: a, F: f, G: c, H: e } = this;
75
+ return [o, r, t, s, a, f, c, e];
76
+ }
77
+ // prettier-ignore
78
+ set(o, r, t, s, a, f, c, e) {
79
+ this.A = o | 0, this.B = r | 0, this.C = t | 0, this.D = s | 0, this.E = a | 0, this.F = f | 0, this.G = c | 0, this.H = e | 0;
80
+ }
81
+ process(o, r) {
82
+ for (let x = 0; x < 16; x++, r += 4)
83
+ h[x] = o.getUint32(r, !1);
84
+ for (let x = 16; x < 64; x++) {
85
+ const H = h[x - 15], d = h[x - 2], m = i(H, 7) ^ i(H, 18) ^ H >>> 3, l = i(d, 17) ^ i(d, 19) ^ d >>> 10;
86
+ h[x] = l + h[x - 7] + m + h[x - 16] | 0;
87
+ }
88
+ let { A: t, B: s, C: a, D: f, E: c, F: e, G: n, H: A } = this;
89
+ for (let x = 0; x < 64; x++) {
90
+ const H = i(c, 6) ^ i(c, 11) ^ i(c, 25), d = A + H + g(c, e, n) + B[x] + h[x] | 0, l = (i(t, 2) ^ i(t, 13) ^ i(t, 22)) + p(t, s, a) | 0;
91
+ A = n, n = e, e = c, c = f + d | 0, f = a, a = s, s = t, t = d + l | 0;
92
+ }
93
+ t = t + this.A | 0, s = s + this.B | 0, a = a + this.C | 0, f = f + this.D | 0, c = c + this.E | 0, e = e + this.F | 0, n = n + this.G | 0, A = A + this.H | 0, this.set(t, s, a, f, c, e, n, A);
94
+ }
95
+ roundClean() {
96
+ C(h);
97
+ }
98
+ destroy() {
99
+ this.set(0, 0, 0, 0, 0, 0, 0, 0), C(this.buffer);
100
+ }
6
101
  }
102
+ const y = /* @__PURE__ */ u(() => new E());
7
103
  export {
8
- c as hashSignature
104
+ E as SHA256,
105
+ y as sha256
9
106
  };
@@ -1,9 +1,8 @@
1
- import { normalizeSignature as o } from "./index264.js";
2
- import { formatAbiItem as n } from "./index219.js";
3
- const m = (r) => {
4
- const t = typeof r == "string" ? r : n(r);
5
- return o(t);
6
- };
1
+ import { weierstrass as s } from "./index284.js";
2
+ function c(e, t) {
3
+ const r = (o) => s({ ...e, hash: o });
4
+ return { ...r(t), create: r };
5
+ }
7
6
  export {
8
- m as toSignature
7
+ c as createCurve
9
8
  };
@@ -1,29 +1,226 @@
1
- import { BaseError as u } from "./index104.js";
2
- function a(r) {
3
- let l = !0, i = "", f = 0, t = "", o = !1;
4
- for (let n = 0; n < r.length; n++) {
5
- const e = r[n];
6
- if (["(", ")", ","].includes(e) && (l = !0), e === "(" && f++, e === ")" && f--, !!l) {
7
- if (f === 0) {
8
- if (e === " " && ["event", "function", ""].includes(t))
9
- t = "";
10
- else if (t += e, e === ")") {
11
- o = !0;
12
- break;
13
- }
14
- continue;
15
- }
16
- if (e === " ") {
17
- r[n - 1] !== "," && i !== "," && i !== ",(" && (i = "", l = !1);
18
- continue;
19
- }
20
- t += e, i += e;
21
- }
1
+ import { numberToBytesLE as y, numberToBytesBE as I, bitMask as Z, bytesToNumberLE as S, bytesToNumberBE as _, _validateObject as j } from "./index285.js";
2
+ import { anumber as z } from "./index269.js";
3
+ const g = BigInt(0), d = BigInt(1), q = /* @__PURE__ */ BigInt(2), V = /* @__PURE__ */ BigInt(3), x = /* @__PURE__ */ BigInt(4), T = /* @__PURE__ */ BigInt(5), L = /* @__PURE__ */ BigInt(8);
4
+ function h(t, n) {
5
+ const o = t % n;
6
+ return o >= g ? o : n + o;
7
+ }
8
+ function O(t, n, o) {
9
+ let r = t;
10
+ for (; n-- > g; )
11
+ r *= r, r %= o;
12
+ return r;
13
+ }
14
+ function B(t, n) {
15
+ if (t === g)
16
+ throw new Error("invert: expected non-zero number");
17
+ if (n <= g)
18
+ throw new Error("invert: expected positive modulus, got " + n);
19
+ let o = h(t, n), r = n, s = g, f = d;
20
+ for (; o !== g; ) {
21
+ const u = r / o, i = r % o, w = s - f * u;
22
+ r = o, o = i, s = f, f = w;
22
23
  }
23
- if (!o)
24
- throw new u("Unable to normalize signature.");
25
- return t;
24
+ if (r !== d)
25
+ throw new Error("invert: does not exist");
26
+ return h(s, n);
27
+ }
28
+ function M(t, n) {
29
+ const o = (t.ORDER + d) / x, r = t.pow(n, o);
30
+ if (!t.eql(t.sqr(r), n))
31
+ throw new Error("Cannot find square root");
32
+ return r;
33
+ }
34
+ function H(t, n) {
35
+ const o = (t.ORDER - T) / L, r = t.mul(n, q), s = t.pow(r, o), f = t.mul(n, s), c = t.mul(t.mul(f, q), s), u = t.mul(f, t.sub(c, t.ONE));
36
+ if (!t.eql(t.sqr(u), n))
37
+ throw new Error("Cannot find square root");
38
+ return u;
39
+ }
40
+ function K(t) {
41
+ if (t < BigInt(3))
42
+ throw new Error("sqrt is not defined for small field");
43
+ let n = t - d, o = 0;
44
+ for (; n % q === g; )
45
+ n /= q, o++;
46
+ let r = q;
47
+ const s = U(t);
48
+ for (; N(s, r) === 1; )
49
+ if (r++ > 1e3)
50
+ throw new Error("Cannot find square root: probably non-prime P");
51
+ if (o === 1)
52
+ return M;
53
+ let f = s.pow(r, n);
54
+ const c = (n + d) / q;
55
+ return function(i, w) {
56
+ if (i.is0(w))
57
+ return w;
58
+ if (N(i, w) !== 1)
59
+ throw new Error("Cannot find square root");
60
+ let e = o, l = i.mul(i.ONE, f), a = i.pow(w, n), b = i.pow(w, c);
61
+ for (; !i.eql(a, i.ONE); ) {
62
+ if (i.is0(a))
63
+ return i.ZERO;
64
+ let m = 1, E = i.sqr(a);
65
+ for (; !i.eql(E, i.ONE); )
66
+ if (m++, E = i.sqr(E), m === e)
67
+ throw new Error("Cannot find square root");
68
+ const C = d << BigInt(e - m - 1), v = i.pow(l, C);
69
+ e = m, l = i.sqr(v), a = i.mul(a, l), b = i.mul(b, v);
70
+ }
71
+ return b;
72
+ };
73
+ }
74
+ function Q(t) {
75
+ return t % x === V ? M : t % L === T ? H : K(t);
76
+ }
77
+ const Y = [
78
+ "create",
79
+ "isValid",
80
+ "is0",
81
+ "neg",
82
+ "inv",
83
+ "sqrt",
84
+ "sqr",
85
+ "eql",
86
+ "add",
87
+ "sub",
88
+ "mul",
89
+ "pow",
90
+ "div",
91
+ "addN",
92
+ "subN",
93
+ "mulN",
94
+ "sqrN"
95
+ ];
96
+ function P(t) {
97
+ const n = {
98
+ ORDER: "bigint",
99
+ MASK: "bigint",
100
+ BYTES: "number",
101
+ BITS: "number"
102
+ }, o = Y.reduce((r, s) => (r[s] = "function", r), n);
103
+ return j(t, o), t;
104
+ }
105
+ function k(t, n, o) {
106
+ if (o < g)
107
+ throw new Error("invalid exponent, negatives unsupported");
108
+ if (o === g)
109
+ return t.ONE;
110
+ if (o === d)
111
+ return n;
112
+ let r = t.ONE, s = n;
113
+ for (; o > g; )
114
+ o & d && (r = t.mul(r, s)), s = t.sqr(s), o >>= d;
115
+ return r;
116
+ }
117
+ function G(t, n, o = !1) {
118
+ const r = new Array(n.length).fill(o ? t.ZERO : void 0), s = n.reduce((c, u, i) => t.is0(u) ? c : (r[i] = c, t.mul(c, u)), t.ONE), f = t.inv(s);
119
+ return n.reduceRight((c, u, i) => t.is0(u) ? c : (r[i] = t.mul(c, r[i]), t.mul(c, u)), f), r;
120
+ }
121
+ function N(t, n) {
122
+ const o = (t.ORDER - d) / q, r = t.pow(n, o), s = t.eql(r, t.ONE), f = t.eql(r, t.ZERO), c = t.eql(r, t.neg(t.ONE));
123
+ if (!s && !f && !c)
124
+ throw new Error("invalid Legendre symbol result");
125
+ return s ? 1 : f ? 0 : -1;
126
+ }
127
+ function J(t, n) {
128
+ n !== void 0 && z(n);
129
+ const o = n !== void 0 ? n : t.toString(2).length, r = Math.ceil(o / 8);
130
+ return { nBitLength: o, nByteLength: r };
131
+ }
132
+ function U(t, n, o = !1, r = {}) {
133
+ if (t <= g)
134
+ throw new Error("invalid field: expected ORDER > 0, got " + t);
135
+ let s, f;
136
+ if (typeof n == "object" && n != null) {
137
+ if (r.sqrt || o)
138
+ throw new Error("cannot specify opts in two arguments");
139
+ const e = n;
140
+ e.BITS && (s = e.BITS), e.sqrt && (f = e.sqrt), typeof e.isLE == "boolean" && (o = e.isLE);
141
+ } else
142
+ typeof n == "number" && (s = n), r.sqrt && (f = r.sqrt);
143
+ const { nBitLength: c, nByteLength: u } = J(t, s);
144
+ if (u > 2048)
145
+ throw new Error("invalid field: expected ORDER of <= 2048 bytes");
146
+ let i;
147
+ const w = Object.freeze({
148
+ ORDER: t,
149
+ isLE: o,
150
+ BITS: c,
151
+ BYTES: u,
152
+ MASK: Z(c),
153
+ ZERO: g,
154
+ ONE: d,
155
+ create: (e) => h(e, t),
156
+ isValid: (e) => {
157
+ if (typeof e != "bigint")
158
+ throw new Error("invalid field element: expected bigint, got " + typeof e);
159
+ return g <= e && e < t;
160
+ },
161
+ is0: (e) => e === g,
162
+ // is valid and invertible
163
+ isValidNot0: (e) => !w.is0(e) && w.isValid(e),
164
+ isOdd: (e) => (e & d) === d,
165
+ neg: (e) => h(-e, t),
166
+ eql: (e, l) => e === l,
167
+ sqr: (e) => h(e * e, t),
168
+ add: (e, l) => h(e + l, t),
169
+ sub: (e, l) => h(e - l, t),
170
+ mul: (e, l) => h(e * l, t),
171
+ pow: (e, l) => k(w, e, l),
172
+ div: (e, l) => h(e * B(l, t), t),
173
+ // Same as above, but doesn't normalize
174
+ sqrN: (e) => e * e,
175
+ addN: (e, l) => e + l,
176
+ subN: (e, l) => e - l,
177
+ mulN: (e, l) => e * l,
178
+ inv: (e) => B(e, t),
179
+ sqrt: f || ((e) => (i || (i = Q(t)), i(w, e))),
180
+ toBytes: (e) => o ? y(e, u) : I(e, u),
181
+ fromBytes: (e) => {
182
+ if (e.length !== u)
183
+ throw new Error("Field.fromBytes: expected " + u + " bytes, got " + e.length);
184
+ return o ? S(e) : _(e);
185
+ },
186
+ // TODO: we don't need it here, move out to separate fn
187
+ invertBatch: (e) => G(w, e),
188
+ // We can't move this out because Fp6, Fp12 implement it
189
+ // and it's unclear what to return in there.
190
+ cmov: (e, l, a) => a ? l : e
191
+ });
192
+ return Object.freeze(w);
193
+ }
194
+ function A(t) {
195
+ if (typeof t != "bigint")
196
+ throw new Error("field order must be bigint");
197
+ const n = t.toString(2).length;
198
+ return Math.ceil(n / 8);
199
+ }
200
+ function W(t) {
201
+ const n = A(t);
202
+ return n + Math.ceil(n / 2);
203
+ }
204
+ function D(t, n, o = !1) {
205
+ const r = t.length, s = A(n), f = W(n);
206
+ if (r < 16 || r < f || r > 1024)
207
+ throw new Error("expected " + f + "-1024 bytes of input, got " + r);
208
+ const c = o ? S(t) : _(t), u = h(c, n - d) + d;
209
+ return o ? y(u, s) : I(u, s);
26
210
  }
27
211
  export {
28
- a as normalizeSignature
212
+ U as Field,
213
+ G as FpInvertBatch,
214
+ N as FpLegendre,
215
+ k as FpPow,
216
+ Q as FpSqrt,
217
+ A as getFieldBytesLength,
218
+ W as getMinHashLength,
219
+ B as invert,
220
+ D as mapHashToField,
221
+ h as mod,
222
+ J as nLength,
223
+ O as pow2,
224
+ K as tonelliShanks,
225
+ P as validateField
29
226
  };
@@ -1,22 +1,9 @@
1
- const o = /* @__PURE__ */ BigInt(4294967295), i = /* @__PURE__ */ BigInt(32);
2
- function s(t, r = !1) {
3
- return r ? { h: Number(t & o), l: Number(t >> i & o) } : { h: Number(t >> i & o) | 0, l: Number(t & o) | 0 };
1
+ import { toBytes as o } from "./index133.js";
2
+ import { keccak256 as r } from "./index135.js";
3
+ const e = (t) => r(o(t));
4
+ function c(t) {
5
+ return e(t);
4
6
  }
5
- function h(t, r = !1) {
6
- const n = t.length;
7
- let l = new Uint32Array(n), c = new Uint32Array(n);
8
- for (let e = 0; e < n; e++) {
9
- const { h: u, l: f } = s(t[e], r);
10
- [l[e], c[e]] = [u, f];
11
- }
12
- return [l, c];
13
- }
14
- const m = (t, r, n) => t << n | r >>> 32 - n, A = (t, r, n) => r << n | t >>> 32 - n, B = (t, r, n) => r << n - 32 | t >>> 64 - n, a = (t, r, n) => t << n - 32 | r >>> 64 - n;
15
7
  export {
16
- s as fromBig,
17
- B as rotlBH,
18
- a as rotlBL,
19
- m as rotlSH,
20
- A as rotlSL,
21
- h as split
8
+ c as hashSignature
22
9
  };