@gardenfi/utils 2.0.6 → 2.1.0-beta.1

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 (234) hide show
  1. package/dist/index.cjs +1 -1
  2. package/dist/index.js +22 -20
  3. package/dist/index10.cjs +1 -1
  4. package/dist/index10.js +37 -19
  5. package/dist/index100.cjs +1 -1
  6. package/dist/index100.js +26 -126
  7. package/dist/index101.cjs +1 -1
  8. package/dist/index101.js +3 -113
  9. package/dist/index102.cjs +1 -1
  10. package/dist/index102.js +10 -77
  11. package/dist/index103.cjs +1 -1
  12. package/dist/index103.js +20 -2
  13. package/dist/index104.cjs +1 -1
  14. package/dist/index104.js +17 -16
  15. package/dist/index105.cjs +1 -1
  16. package/dist/index105.js +643 -18
  17. package/dist/index106.cjs +1 -1
  18. package/dist/index106.js +168 -12
  19. package/dist/index107.cjs +1 -1
  20. package/dist/index107.js +9 -220
  21. package/dist/index108.cjs +1 -2
  22. package/dist/index108.js +128 -3
  23. package/dist/index109.cjs +1 -1
  24. package/dist/index109.js +2 -35
  25. package/dist/index11.cjs +1 -1
  26. package/dist/index11.js +19 -134
  27. package/dist/index110.cjs +1 -1
  28. package/dist/index110.js +2 -19
  29. package/dist/index111.cjs +1 -1
  30. package/dist/index111.js +32 -64
  31. package/dist/index112.cjs +1 -1
  32. package/dist/index112.js +35 -64
  33. package/dist/index113.cjs +2 -1
  34. package/dist/index113.js +3 -2
  35. package/dist/index114.cjs +1 -1
  36. package/dist/index114.js +5 -41
  37. package/dist/index115.cjs +1 -1
  38. package/dist/index115.js +10 -643
  39. package/dist/index116.cjs +1 -1
  40. package/dist/index116.js +16 -227
  41. package/dist/index117.cjs +1 -1
  42. package/dist/index117.js +6 -172
  43. package/dist/index118.cjs +1 -0
  44. package/dist/index118.js +7 -0
  45. package/dist/index12.cjs +1 -1
  46. package/dist/index12.js +136 -10
  47. package/dist/index13.cjs +1 -1
  48. package/dist/index13.js +15 -2
  49. package/dist/index14.cjs +1 -1
  50. package/dist/index14.js +2 -34
  51. package/dist/index15.cjs +1 -1
  52. package/dist/index15.js +32 -17
  53. package/dist/index16.cjs +1 -1
  54. package/dist/index16.js +14 -183
  55. package/dist/index17.cjs +1 -1
  56. package/dist/index17.js +187 -92
  57. package/dist/index18.cjs +1 -1
  58. package/dist/index18.js +92 -34
  59. package/dist/index19.cjs +1 -1
  60. package/dist/index19.js +36 -32
  61. package/dist/index20.cjs +1 -16
  62. package/dist/index20.js +30 -112
  63. package/dist/index21.cjs +16 -1
  64. package/dist/index21.js +113 -30
  65. package/dist/index22.cjs +1 -1
  66. package/dist/index22.js +31 -18
  67. package/dist/index23.cjs +1 -1
  68. package/dist/index23.js +41 -7
  69. package/dist/index24.cjs +1 -1
  70. package/dist/index24.js +3 -3
  71. package/dist/index25.cjs +1 -1
  72. package/dist/index25.js +23 -19
  73. package/dist/index26.cjs +1 -1
  74. package/dist/index26.js +6 -8
  75. package/dist/index27.cjs +1 -1
  76. package/dist/index27.js +12 -30
  77. package/dist/index28.cjs +1 -1
  78. package/dist/index28.js +15 -26
  79. package/dist/index29.cjs +1 -2
  80. package/dist/index29.js +5 -65
  81. package/dist/index30.cjs +1 -1
  82. package/dist/index30.js +13 -51
  83. package/dist/index31.cjs +1 -1
  84. package/dist/index31.js +10 -12
  85. package/dist/index32.cjs +1 -1
  86. package/dist/index32.js +12 -24
  87. package/dist/index33.cjs +1 -1
  88. package/dist/index33.js +11 -75
  89. package/dist/index34.cjs +1 -1
  90. package/dist/index34.js +13 -23
  91. package/dist/index35.cjs +1 -1
  92. package/dist/index35.js +23 -7
  93. package/dist/index36.cjs +1 -1
  94. package/dist/index36.js +55 -32
  95. package/dist/index37.cjs +1 -1
  96. package/dist/index37.js +16 -15
  97. package/dist/index38.cjs +1 -1
  98. package/dist/index38.js +6 -2
  99. package/dist/index39.cjs +1 -1
  100. package/dist/index39.js +8 -8
  101. package/dist/index4.cjs +1 -1
  102. package/dist/index4.js +2 -2
  103. package/dist/index40.cjs +1 -1
  104. package/dist/index40.js +171 -20
  105. package/dist/index41.cjs +1 -1
  106. package/dist/index41.js +100 -9
  107. package/dist/index42.cjs +1 -1
  108. package/dist/index42.js +20 -33
  109. package/dist/index43.cjs +1 -2
  110. package/dist/index43.js +17 -59
  111. package/dist/index44.cjs +1 -1
  112. package/dist/index44.js +8 -2
  113. package/dist/index45.cjs +1 -1
  114. package/dist/index45.js +21 -6
  115. package/dist/index46.cjs +1 -1
  116. package/dist/index46.js +8 -6
  117. package/dist/index47.cjs +1 -1
  118. package/dist/index47.js +31 -4
  119. package/dist/index48.cjs +1 -1
  120. package/dist/index48.js +26 -11
  121. package/dist/index49.cjs +2 -5
  122. package/dist/index49.js +53 -44
  123. package/dist/index50.cjs +1 -2
  124. package/dist/index50.js +50 -33
  125. package/dist/index51.cjs +1 -1
  126. package/dist/index51.js +12 -5
  127. package/dist/index52.cjs +1 -1
  128. package/dist/index52.js +24 -3
  129. package/dist/index53.cjs +1 -1
  130. package/dist/index53.js +75 -21
  131. package/dist/index54.cjs +1 -1
  132. package/dist/index54.js +7 -12
  133. package/dist/index55.cjs +1 -1
  134. package/dist/index55.js +32 -55
  135. package/dist/index56.cjs +1 -1
  136. package/dist/index56.js +15 -8
  137. package/dist/index57.cjs +1 -1
  138. package/dist/index57.js +2 -22
  139. package/dist/index58.cjs +1 -1
  140. package/dist/index58.js +8 -11
  141. package/dist/index59.cjs +1 -1
  142. package/dist/index59.js +20 -8
  143. package/dist/index6.cjs +1 -1
  144. package/dist/index6.js +40 -22
  145. package/dist/index60.cjs +1 -1
  146. package/dist/index60.js +40 -10
  147. package/dist/index61.cjs +1 -1
  148. package/dist/index61.js +34 -11
  149. package/dist/index62.cjs +1 -1
  150. package/dist/index62.js +69 -6
  151. package/dist/index63.cjs +1 -1
  152. package/dist/index63.js +112 -13
  153. package/dist/index64.cjs +1 -1
  154. package/dist/index64.js +64 -29
  155. package/dist/index65.cjs +1 -1
  156. package/dist/index65.js +2 -15
  157. package/dist/index66.cjs +1 -1
  158. package/dist/index66.js +14 -62
  159. package/dist/index67.cjs +1 -1
  160. package/dist/index67.js +218 -22
  161. package/dist/index68.cjs +1 -1
  162. package/dist/index68.js +232 -3
  163. package/dist/index69.cjs +1 -1
  164. package/dist/index69.js +12 -3
  165. package/dist/index7.cjs +1 -1
  166. package/dist/index7.js +24 -2
  167. package/dist/index70.cjs +1 -1
  168. package/dist/index70.js +34 -13
  169. package/dist/index71.cjs +2 -1
  170. package/dist/index71.js +59 -41
  171. package/dist/index72.cjs +1 -1
  172. package/dist/index72.js +21 -5
  173. package/dist/index73.cjs +1 -1
  174. package/dist/index73.js +8 -8
  175. package/dist/index74.cjs +1 -1
  176. package/dist/index74.js +18 -103
  177. package/dist/index75.cjs +1 -1
  178. package/dist/index75.js +36 -185
  179. package/dist/index76.cjs +1 -1
  180. package/dist/index76.js +8 -18
  181. package/dist/index77.cjs +1 -1
  182. package/dist/index77.js +103 -10
  183. package/dist/index78.cjs +1 -1
  184. package/dist/index78.js +3 -19
  185. package/dist/index79.cjs +1 -1
  186. package/dist/index79.js +16 -11
  187. package/dist/index8.cjs +1 -1
  188. package/dist/index8.js +2 -100
  189. package/dist/index80.cjs +1 -1
  190. package/dist/index80.js +8 -25
  191. package/dist/index81.cjs +1 -1
  192. package/dist/index81.js +10 -6
  193. package/dist/index82.cjs +1 -1
  194. package/dist/index82.js +11 -13
  195. package/dist/index83.cjs +1 -1
  196. package/dist/index83.js +13 -15
  197. package/dist/index84.cjs +1 -1
  198. package/dist/index84.js +6 -5
  199. package/dist/index85.cjs +1 -1
  200. package/dist/index85.js +78 -13
  201. package/dist/index86.cjs +1 -1
  202. package/dist/index86.js +14 -10
  203. package/dist/index87.cjs +1 -1
  204. package/dist/index87.js +18 -16
  205. package/dist/index88.cjs +1 -1
  206. package/dist/index88.js +182 -162
  207. package/dist/index89.cjs +1 -1
  208. package/dist/index89.js +62 -36
  209. package/dist/index9.cjs +1 -1
  210. package/dist/index9.js +105 -34
  211. package/dist/index90.cjs +1 -1
  212. package/dist/index90.js +4 -8
  213. package/dist/index91.cjs +1 -1
  214. package/dist/index91.js +2 -5
  215. package/dist/index92.cjs +1 -1
  216. package/dist/index92.js +6 -10
  217. package/dist/index93.cjs +1 -1
  218. package/dist/index93.js +12 -2
  219. package/dist/index94.cjs +5 -1
  220. package/dist/index94.js +49 -97
  221. package/dist/index95.cjs +2 -1
  222. package/dist/index95.js +33 -41
  223. package/dist/index96.cjs +1 -1
  224. package/dist/index96.js +5 -20
  225. package/dist/index97.cjs +1 -1
  226. package/dist/index97.js +3 -6
  227. package/dist/index98.cjs +1 -1
  228. package/dist/index98.js +7 -5
  229. package/dist/index99.cjs +1 -1
  230. package/dist/index99.js +30 -35
  231. package/dist/src/index.d.ts +1 -0
  232. package/dist/src/lib/auth/siwe/siwe.d.ts +3 -2
  233. package/dist/src/lib/digestKey/digestKey.d.ts +12 -0
  234. package/package.json +4 -1
package/dist/index71.js CHANGED
@@ -1,44 +1,62 @@
1
- import { sha256 as C } from "./index101.js";
2
- import { createCurve as G } from "./index106.js";
3
- import { Field as N, mod as k, pow2 as t } from "./index107.js";
4
- /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
5
- const q = BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"), w = BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"), j = BigInt(1), _ = BigInt(2), h = (n, f) => (n + f / _) / f;
6
- function M(n) {
7
- const f = q, e = BigInt(3), r = BigInt(6), I = BigInt(11), a = BigInt(22), s = BigInt(23), i = BigInt(44), g = BigInt(88), o = n * n * n % f, c = o * o * n % f, d = t(c, e, f) * c % f, B = t(d, e, f) * c % f, m = t(B, _, f) * o % f, b = t(m, I, f) * m % f, p = t(b, a, f) * b % f, x = t(p, i, f) * p % f, P = t(x, g, f) * x % f, v = t(P, i, f) * p % f, E = t(v, e, f) * c % f, F = t(E, s, f) * b % f, S = t(F, r, f) * o % f, u = t(S, _, f);
8
- if (!l.eql(l.sqr(u), n))
9
- throw new Error("Cannot find square root");
10
- return u;
11
- }
12
- const l = N(q, void 0, void 0, { sqrt: M }), O = G({
13
- a: BigInt(0),
14
- // equation params: a, b
15
- b: BigInt(7),
16
- Fp: l,
17
- // Field's prime: 2n**256n - 2n**32n - 2n**9n - 2n**8n - 2n**7n - 2n**6n - 2n**4n - 1n
18
- n: w,
19
- // Curve order, total count of valid points in the field
20
- // Base point (x, y) aka generator point
21
- Gx: BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),
22
- Gy: BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),
23
- h: BigInt(1),
24
- // Cofactor
25
- lowS: !0,
26
- // Allow only low-S signatures by default in sign() and verify()
27
- endo: {
28
- // Endomorphism, see above
29
- beta: BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),
30
- splitScalar: (n) => {
31
- const f = w, e = BigInt("0x3086d221a7d46bcde86c90e49284eb15"), r = -j * BigInt("0xe4437ed6010e88286f547fa90abfe4c3"), I = BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"), a = e, s = BigInt("0x100000000000000000000000000000000"), i = h(a * n, f), g = h(-r * n, f);
32
- let o = k(n - i * e - g * I, f), c = k(-i * r - g * a, f);
33
- const d = o > s, B = c > s;
34
- if (d && (o = f - o), B && (c = f - c), o > s || c > s)
35
- throw new Error("splitScalar: Endomorphism failed, k=" + n);
36
- return { k1neg: d, k1: o, k2neg: B, k2: c };
37
- }
1
+ import { version as l } from "./index91.js";
2
+ let i = {
3
+ getDocsUrl: ({ docsBaseUrl: s, docsPath: t = "", docsSlug: e }) => t ? `${s ?? "https://viem.sh"}${t}${e ? `#${e}` : ""}` : void 0,
4
+ version: `viem@${l}`
5
+ };
6
+ class r extends Error {
7
+ constructor(t, e = {}) {
8
+ var o;
9
+ const u = (() => {
10
+ var c;
11
+ return e.cause instanceof r ? e.cause.details : (c = e.cause) != null && c.message ? e.cause.message : e.details;
12
+ })(), a = e.cause instanceof r && e.cause.docsPath || e.docsPath, n = (o = i.getDocsUrl) == null ? void 0 : o.call(i, { ...e, docsPath: a }), b = [
13
+ t || "An error occurred.",
14
+ "",
15
+ ...e.metaMessages ? [...e.metaMessages, ""] : [],
16
+ ...n ? [`Docs: ${n}`] : [],
17
+ ...u ? [`Details: ${u}`] : [],
18
+ ...i.version ? [`Version: ${i.version}`] : []
19
+ ].join(`
20
+ `);
21
+ super(b, e.cause ? { cause: e.cause } : void 0), Object.defineProperty(this, "details", {
22
+ enumerable: !0,
23
+ configurable: !0,
24
+ writable: !0,
25
+ value: void 0
26
+ }), Object.defineProperty(this, "docsPath", {
27
+ enumerable: !0,
28
+ configurable: !0,
29
+ writable: !0,
30
+ value: void 0
31
+ }), Object.defineProperty(this, "metaMessages", {
32
+ enumerable: !0,
33
+ configurable: !0,
34
+ writable: !0,
35
+ value: void 0
36
+ }), Object.defineProperty(this, "shortMessage", {
37
+ enumerable: !0,
38
+ configurable: !0,
39
+ writable: !0,
40
+ value: void 0
41
+ }), Object.defineProperty(this, "version", {
42
+ enumerable: !0,
43
+ configurable: !0,
44
+ writable: !0,
45
+ value: void 0
46
+ }), Object.defineProperty(this, "name", {
47
+ enumerable: !0,
48
+ configurable: !0,
49
+ writable: !0,
50
+ value: "BaseError"
51
+ }), this.details = u, this.docsPath = a, this.metaMessages = e.metaMessages, this.name = e.name ?? this.name, this.shortMessage = t, this.version = l;
52
+ }
53
+ walk(t) {
54
+ return d(this, t);
38
55
  }
39
- }, C);
40
- BigInt(0);
41
- O.ProjectivePoint;
56
+ }
57
+ function d(s, t) {
58
+ return t != null && t(s) ? s : s && typeof s == "object" && "cause" in s && s.cause !== void 0 ? d(s.cause, t) : t ? null : s;
59
+ }
42
60
  export {
43
- O as secp256k1
61
+ r as BaseError
44
62
  };
package/dist/index72.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index56.cjs"),t=require("./index73.cjs");function a(e,s){return r.keccak256(t.toPrefixedMessage(e),s)}exports.hashMessage=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class i extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){const t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){const s=this.keys().next().value;s&&this.delete(s)}return this}}exports.LruMap=i;
package/dist/index72.js CHANGED
@@ -1,8 +1,24 @@
1
- import { keccak256 as o } from "./index56.js";
2
- import { toPrefixedMessage as t } from "./index73.js";
3
- function f(e, r) {
4
- return o(t(e), r);
1
+ class r extends Map {
2
+ constructor(e) {
3
+ super(), Object.defineProperty(this, "maxSize", {
4
+ enumerable: !0,
5
+ configurable: !0,
6
+ writable: !0,
7
+ value: void 0
8
+ }), this.maxSize = e;
9
+ }
10
+ get(e) {
11
+ const t = super.get(e);
12
+ return super.has(e) && t !== void 0 && (this.delete(e), super.set(e, t)), t;
13
+ }
14
+ set(e, t) {
15
+ if (super.set(e, t), this.maxSize && this.size > this.maxSize) {
16
+ const s = this.keys().next().value;
17
+ s && this.delete(s);
18
+ }
19
+ return this;
20
+ }
5
21
  }
6
22
  export {
7
- f as hashMessage
23
+ r as LruMap
8
24
  };
package/dist/index73.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./index108.cjs"),o=require("./index76.cjs"),s=require("./index47.cjs"),r=require("./index24.cjs");function c(e){const t=typeof e=="string"?r.stringToHex(e):typeof e.raw=="string"?e.raw:r.bytesToHex(e.raw),i=r.stringToHex(`${n.presignMessagePrefix}${s.size(t)}`);return o.concat([i,t])}exports.toPrefixedMessage=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function n(e){return{formatters:void 0,fees:void 0,serializers:void 0,...e}}exports.defineChain=n;
package/dist/index73.js CHANGED
@@ -1,11 +1,11 @@
1
- import { presignMessagePrefix as e } from "./index108.js";
2
- import { concat as n } from "./index76.js";
3
- import { size as f } from "./index47.js";
4
- import { stringToHex as o, bytesToHex as p } from "./index24.js";
5
- function u(r) {
6
- const t = typeof r == "string" ? o(r) : typeof r.raw == "string" ? r.raw : p(r.raw), i = o(`${e}${f(t)}`);
7
- return n([i, t]);
1
+ function n(e) {
2
+ return {
3
+ formatters: void 0,
4
+ fees: void 0,
5
+ serializers: void 0,
6
+ ...e
7
+ };
8
8
  }
9
9
  export {
10
- u as toPrefixedMessage
10
+ n as defineChain
11
11
  };
package/dist/index74.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./index75.cjs"),D=require("./index76.cjs"),f=require("./index24.cjs"),s=require("./index56.cjs"),p=require("./index66.cjs");function b(c){const{domain:t={},message:e,primaryType:n}=c,o={EIP712Domain:p.getTypesForEIP712Domain({domain:t}),...c.types};p.validateTypedData({domain:t,message:e,primaryType:n,types:o});const a=["0x1901"];return t&&a.push(y({domain:t,types:o})),n!=="EIP712Domain"&&a.push(d({data:e,primaryType:n,types:o})),s.keccak256(D.concat(a))}function y({domain:c,types:t}){return d({data:c,primaryType:"EIP712Domain",types:t})}function d({data:c,primaryType:t,types:e}){const n=h({data:c,primaryType:t,types:e});return s.keccak256(n)}function h({data:c,primaryType:t,types:e}){const n=[{type:"bytes32"}],o=[l({primaryType:t,types:e})];for(const a of e[t]){const[r,i]=T({types:e,name:a.name,type:a.type,value:c[a.name]});n.push(r),o.push(i)}return u.encodeAbiParameters(n,o)}function l({primaryType:c,types:t}){const e=f.toHex(m({primaryType:c,types:t}));return s.keccak256(e)}function m({primaryType:c,types:t}){let e="";const n=k({primaryType:c,types:t});n.delete(c);const o=[c,...Array.from(n).sort()];for(const a of o)e+=`${a}(${t[a].map(({name:r,type:i})=>`${i} ${r}`).join(",")})`;return e}function k({primaryType:c,types:t},e=new Set){const n=c.match(/^\w*/u),o=n==null?void 0:n[0];if(e.has(o)||t[o]===void 0)return e;e.add(o);for(const a of t[o])k({primaryType:a.type,types:t},e);return e}function T({types:c,name:t,type:e,value:n}){if(c[e]!==void 0)return[{type:"bytes32"},s.keccak256(h({data:n,primaryType:e,types:c}))];if(e==="bytes")return n=`0x${(n.length%2?"0":"")+n.slice(2)}`,[{type:"bytes32"},s.keccak256(n)];if(e==="string")return[{type:"bytes32"},s.keccak256(f.toHex(n))];if(e.lastIndexOf("]")===e.length-1){const o=e.slice(0,e.lastIndexOf("[")),a=n.map(r=>T({name:t,type:o,types:c,value:r}));return[{type:"bytes32"},s.keccak256(u.encodeAbiParameters(a.map(([r])=>r),a.map(([,r])=>r)))]}return[{type:e},n]}exports.encodeType=m;exports.hashDomain=y;exports.hashStruct=d;exports.hashTypedData=b;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function a(t){return typeof t[0]=="string"?f(t):o(t)}function o(t){let n=0;for(const r of t)n+=r.length;const e=new Uint8Array(n);let c=0;for(const r of t)e.set(r,c),c+=r.length;return e}function f(t){return`0x${t.reduce((n,e)=>n+e.replace("0x",""),"")}`}exports.concat=a;exports.concatBytes=o;exports.concatHex=f;
package/dist/index74.js CHANGED
@@ -1,106 +1,21 @@
1
- import { encodeAbiParameters as p } from "./index75.js";
2
- import { concat as h } from "./index76.js";
3
- import { toHex as d } from "./index24.js";
4
- import { keccak256 as c } from "./index56.js";
5
- import { getTypesForEIP712Domain as T, validateTypedData as D } from "./index66.js";
6
- function k(o) {
7
- const { domain: t = {}, message: e, primaryType: n } = o, r = {
8
- EIP712Domain: T({ domain: t }),
9
- ...o.types
10
- };
11
- D({
12
- domain: t,
13
- message: e,
14
- primaryType: n,
15
- types: r
16
- });
17
- const a = ["0x1901"];
18
- return t && a.push(b({
19
- domain: t,
20
- types: r
21
- })), n !== "EIP712Domain" && a.push(f({
22
- data: e,
23
- primaryType: n,
24
- types: r
25
- })), c(h(a));
26
- }
27
- function b({ domain: o, types: t }) {
28
- return f({
29
- data: o,
30
- primaryType: "EIP712Domain",
31
- types: t
32
- });
33
- }
34
- function f({ data: o, primaryType: t, types: e }) {
35
- const n = m({
36
- data: o,
37
- primaryType: t,
38
- types: e
39
- });
40
- return c(n);
41
- }
42
- function m({ data: o, primaryType: t, types: e }) {
43
- const n = [{ type: "bytes32" }], r = [l({ primaryType: t, types: e })];
44
- for (const a of e[t]) {
45
- const [i, s] = y({
46
- types: e,
47
- name: a.name,
48
- type: a.type,
49
- value: o[a.name]
50
- });
51
- n.push(i), r.push(s);
52
- }
53
- return p(n, r);
54
- }
55
- function l({ primaryType: o, types: t }) {
56
- const e = d(x({ primaryType: o, types: t }));
57
- return c(e);
58
- }
59
- function x({ primaryType: o, types: t }) {
60
- let e = "";
61
- const n = u({ primaryType: o, types: t });
62
- n.delete(o);
63
- const r = [o, ...Array.from(n).sort()];
64
- for (const a of r)
65
- e += `${a}(${t[a].map(({ name: i, type: s }) => `${s} ${i}`).join(",")})`;
66
- return e;
67
- }
68
- function u({ primaryType: o, types: t }, e = /* @__PURE__ */ new Set()) {
69
- const n = o.match(/^\w*/u), r = n == null ? void 0 : n[0];
70
- if (e.has(r) || t[r] === void 0)
71
- return e;
72
- e.add(r);
73
- for (const a of t[r])
74
- u({ primaryType: a.type, types: t }, e);
75
- return e;
76
- }
77
- function y({ types: o, name: t, type: e, value: n }) {
78
- if (o[e] !== void 0)
79
- return [
80
- { type: "bytes32" },
81
- c(m({ data: n, primaryType: e, types: o }))
82
- ];
83
- if (e === "bytes")
84
- return n = `0x${(n.length % 2 ? "0" : "") + n.slice(2)}`, [{ type: "bytes32" }, c(n)];
85
- if (e === "string")
86
- return [{ type: "bytes32" }, c(d(n))];
87
- if (e.lastIndexOf("]") === e.length - 1) {
88
- const r = e.slice(0, e.lastIndexOf("[")), a = n.map((i) => y({
89
- name: t,
90
- type: r,
91
- types: o,
92
- value: i
93
- }));
94
- return [
95
- { type: "bytes32" },
96
- c(p(a.map(([i]) => i), a.map(([, i]) => i)))
97
- ];
98
- }
99
- return [{ type: e }, n];
1
+ function i(t) {
2
+ return typeof t[0] == "string" ? f(t) : c(t);
3
+ }
4
+ function c(t) {
5
+ let n = 0;
6
+ for (const e of t)
7
+ n += e.length;
8
+ const r = new Uint8Array(n);
9
+ let o = 0;
10
+ for (const e of t)
11
+ r.set(e, o), o += e.length;
12
+ return r;
13
+ }
14
+ function f(t) {
15
+ return `0x${t.reduce((n, r) => n + r.replace("0x", ""), "")}`;
100
16
  }
101
17
  export {
102
- x as encodeType,
103
- b as hashDomain,
104
- f as hashStruct,
105
- k as hashTypedData
18
+ i as concat,
19
+ c as concatBytes,
20
+ f as concatHex
106
21
  };
package/dist/index75.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("./index49.cjs"),g=require("./index54.cjs"),l=require("./index43.cjs"),b=require("./index41.cjs"),x=require("./index58.cjs"),u=require("./index76.cjs"),d=require("./index42.cjs"),y=require("./index47.cjs"),A=require("./index89.cjs"),a=require("./index24.cjs"),z=require("./index68.cjs");function w(e,n){if(e.length!==n.length)throw new f.AbiEncodingLengthMismatchError({expectedLength:e.length,givenLength:n.length});const o=H({params:e,values:n}),t=p(o);return t.length===0?"0x":t}function H({params:e,values:n}){const o=[];for(let t=0;t<e.length;t++)o.push(h({param:e[t],value:n[t]}));return o}function h({param:e,value:n}){const o=m(e.type);if(o){const[t,r]=o;return P(n,{length:t,param:{...e,type:r}})}if(e.type==="tuple")return L(n,{param:e});if(e.type==="address")return E(n);if(e.type==="bool")return q(n);if(e.type.startsWith("uint")||e.type.startsWith("int")){const t=e.type.startsWith("int"),[,,r="256"]=z.integerRegex.exec(e.type)??[];return T(n,{signed:t,size:Number(r)})}if(e.type.startsWith("bytes"))return S(n,{param:e});if(e.type==="string")return I(n);throw new f.InvalidAbiEncodingTypeError(e.type,{docsPath:"/docs/contract/encodeAbiParameters"})}function p(e){let n=0;for(let i=0;i<e.length;i++){const{dynamic:c,encoded:s}=e[i];c?n+=32:n+=y.size(s)}const o=[],t=[];let r=0;for(let i=0;i<e.length;i++){const{dynamic:c,encoded:s}=e[i];c?(o.push(a.numberToHex(n+r,{size:32})),t.push(s),r+=y.size(s)):o.push(s)}return u.concat([...o,...t])}function E(e){if(!x.isAddress(e))throw new g.InvalidAddressError({address:e});return{dynamic:!1,encoded:d.padHex(e.toLowerCase())}}function P(e,{length:n,param:o}){const t=n===null;if(!Array.isArray(e))throw new f.InvalidArrayError(e);if(!t&&e.length!==n)throw new f.AbiEncodingArrayLengthMismatchError({expectedLength:n,givenLength:e.length,type:`${o.type}[${n}]`});let r=!1;const i=[];for(let c=0;c<e.length;c++){const s=h({param:o,value:e[c]});s.dynamic&&(r=!0),i.push(s)}if(t||r){const c=p(i);if(t){const s=a.numberToHex(i.length,{size:32});return{dynamic:!0,encoded:i.length>0?u.concat([s,c]):s}}if(r)return{dynamic:!0,encoded:c}}return{dynamic:!1,encoded:u.concat(i.map(({encoded:c})=>c))}}function S(e,{param:n}){const[,o]=n.type.split("bytes"),t=y.size(e);if(!o){let r=e;return t%32!==0&&(r=d.padHex(r,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:u.concat([d.padHex(a.numberToHex(t,{size:32})),r])}}if(t!==Number.parseInt(o))throw new f.AbiEncodingBytesSizeMismatchError({expectedSize:Number.parseInt(o),value:e});return{dynamic:!1,encoded:d.padHex(e,{dir:"right"})}}function q(e){if(typeof e!="boolean")throw new l.BaseError(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:d.padHex(a.boolToHex(e))}}function T(e,{signed:n,size:o=256}){if(typeof o=="number"){const t=2n**(BigInt(o)-(n?1n:0n))-1n,r=n?-t-1n:0n;if(e>t||e<r)throw new b.IntegerOutOfRangeError({max:t.toString(),min:r.toString(),signed:n,size:o/8,value:e.toString()})}return{dynamic:!1,encoded:a.numberToHex(e,{size:32,signed:n})}}function I(e){const n=a.stringToHex(e),o=Math.ceil(y.size(n)/32),t=[];for(let r=0;r<o;r++)t.push(d.padHex(A.slice(n,r*32,(r+1)*32),{dir:"right"}));return{dynamic:!0,encoded:u.concat([d.padHex(a.numberToHex(y.size(n),{size:32})),...t])}}function L(e,{param:n}){let o=!1;const t=[];for(let r=0;r<n.components.length;r++){const i=n.components[r],c=Array.isArray(e)?r:i.name,s=h({param:i,value:e[c]});t.push(s),s.dynamic&&(o=!0)}return{dynamic:o,encoded:o?p(t):u.concat(t.map(({encoded:r})=>r))}}function m(e){const n=e.match(/^(.*)\[(\d+)?\]$/);return n?[n[2]?Number(n[2]):null,n[1]]:void 0}exports.encodeAbiParameters=w;exports.getArrayComponents=m;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index71.cjs"),u=require("./index108.cjs"),f=require("./index36.cjs"),g=require("./index24.cjs");function c(n,e="hex"){const i=o(n),s=u.createCursor(new Uint8Array(i.length));return i.encode(s),e==="hex"?g.bytesToHex(s.bytes):s.bytes}function o(n){return Array.isArray(n)?p(n.map(e=>o(e))):y(n)}function p(n){const e=n.reduce((t,h)=>t+h.length,0),i=l(e);return{length:e<=55?1+e:1+i+e,encode(t){e<=55?t.pushByte(192+e):(t.pushByte(247+i),i===1?t.pushUint8(e):i===2?t.pushUint16(e):i===3?t.pushUint24(e):t.pushUint32(e));for(const{encode:h}of n)h(t)}}}function y(n){const e=typeof n=="string"?f.hexToBytes(n):n,i=l(e.length);return{length:e.length===1&&e[0]<128?1:e.length<=55?1+e.length:1+i+e.length,encode(t){e.length===1&&e[0]<128?t.pushBytes(e):e.length<=55?(t.pushByte(128+e.length),t.pushBytes(e)):(t.pushByte(183+i),i===1?t.pushUint8(e.length):i===2?t.pushUint16(e.length):i===3?t.pushUint24(e.length):t.pushUint32(e.length),t.pushBytes(e))}}}function l(n){if(n<2**8)return 1;if(n<2**16)return 2;if(n<2**24)return 3;if(n<2**32)return 4;throw new r.BaseError("Length is too large.")}exports.toRlp=c;
package/dist/index75.js CHANGED
@@ -1,194 +1,45 @@
1
- import { AbiEncodingLengthMismatchError as y, InvalidAbiEncodingTypeError as u, InvalidArrayError as g, AbiEncodingArrayLengthMismatchError as l, AbiEncodingBytesSizeMismatchError as b } from "./index49.js";
2
- import { InvalidAddressError as w } from "./index54.js";
3
- import { BaseError as A } from "./index43.js";
4
- import { IntegerOutOfRangeError as x } from "./index41.js";
5
- import { isAddress as z } from "./index58.js";
6
- import { concat as f } from "./index76.js";
7
- import { padHex as d } from "./index42.js";
8
- import { size as a } from "./index47.js";
9
- import { slice as E } from "./index89.js";
10
- import { numberToHex as m, boolToHex as P, stringToHex as S } from "./index24.js";
11
- import { integerRegex as I } from "./index68.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);
32
- 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
- }));
1
+ import { BaseError as l } from "./index71.js";
2
+ import { createCursor as r } from "./index108.js";
3
+ import { hexToBytes as g } from "./index36.js";
4
+ import { bytesToHex as u } from "./index24.js";
5
+ function m(n, e = "hex") {
6
+ const i = s(n), h = r(new Uint8Array(i.length));
7
+ return i.encode(h), e === "hex" ? u(h.bytes) : h.bytes;
8
+ }
9
+ function s(n) {
10
+ return Array.isArray(n) ? p(n.map((e) => s(e))) : y(n);
11
+ }
12
+ function p(n) {
13
+ const e = n.reduce((t, f) => t + f.length, 0), i = o(e);
161
14
  return {
162
- dynamic: !0,
163
- encoded: f([
164
- d(m(a(t), { size: 32 })),
165
- ...n
166
- ])
15
+ length: e <= 55 ? 1 + e : 1 + i + e,
16
+ encode(t) {
17
+ e <= 55 ? t.pushByte(192 + e) : (t.pushByte(247 + i), i === 1 ? t.pushUint8(e) : i === 2 ? t.pushUint16(e) : i === 3 ? t.pushUint24(e) : t.pushUint32(e));
18
+ for (const { encode: f } of n)
19
+ f(t);
20
+ }
167
21
  };
168
22
  }
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
- }
23
+ function y(n) {
24
+ const e = typeof n == "string" ? g(n) : n, i = o(e.length);
179
25
  return {
180
- dynamic: o,
181
- encoded: o ? h(n) : f(n.map(({ encoded: r }) => r))
26
+ length: e.length === 1 && e[0] < 128 ? 1 : e.length <= 55 ? 1 + e.length : 1 + i + e.length,
27
+ encode(t) {
28
+ e.length === 1 && e[0] < 128 ? t.pushBytes(e) : e.length <= 55 ? (t.pushByte(128 + e.length), t.pushBytes(e)) : (t.pushByte(183 + i), i === 1 ? t.pushUint8(e.length) : i === 2 ? t.pushUint16(e.length) : i === 3 ? t.pushUint24(e.length) : t.pushUint32(e.length), t.pushBytes(e));
29
+ }
182
30
  };
183
31
  }
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;
32
+ function o(n) {
33
+ if (n < 2 ** 8)
34
+ return 1;
35
+ if (n < 2 ** 16)
36
+ return 2;
37
+ if (n < 2 ** 24)
38
+ return 3;
39
+ if (n < 2 ** 32)
40
+ return 4;
41
+ throw new l("Length is too large.");
190
42
  }
191
43
  export {
192
- K as encodeAbiParameters,
193
- W as getArrayComponents
44
+ m as toRlp
194
45
  };
package/dist/index76.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function a(t){return typeof t[0]=="string"?f(t):o(t)}function o(t){let n=0;for(const r of t)n+=r.length;const e=new Uint8Array(n);let c=0;for(const r of t)e.set(r,c),c+=r.length;return e}function f(t){return`0x${t.reduce((n,e)=>n+e.replace("0x",""),"")}`}exports.concat=a;exports.concatBytes=o;exports.concatHex=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./index113.cjs"),o=require("./index74.cjs"),s=require("./index90.cjs"),r=require("./index24.cjs");function c(e){const t=typeof e=="string"?r.stringToHex(e):typeof e.raw=="string"?e.raw:r.bytesToHex(e.raw),i=r.stringToHex(`${n.presignMessagePrefix}${s.size(t)}`);return o.concat([i,t])}exports.toPrefixedMessage=c;
package/dist/index76.js CHANGED
@@ -1,21 +1,11 @@
1
- function i(t) {
2
- return typeof t[0] == "string" ? f(t) : c(t);
3
- }
4
- function c(t) {
5
- let n = 0;
6
- for (const e of t)
7
- n += e.length;
8
- const r = new Uint8Array(n);
9
- let o = 0;
10
- for (const e of t)
11
- r.set(e, o), o += e.length;
12
- return r;
13
- }
14
- function f(t) {
15
- return `0x${t.reduce((n, r) => n + r.replace("0x", ""), "")}`;
1
+ import { presignMessagePrefix as e } from "./index113.js";
2
+ import { concat as n } from "./index74.js";
3
+ import { size as f } from "./index90.js";
4
+ import { stringToHex as o, bytesToHex as p } from "./index24.js";
5
+ function u(r) {
6
+ const t = typeof r == "string" ? o(r) : typeof r.raw == "string" ? r.raw : p(r.raw), i = o(`${e}${f(t)}`);
7
+ return n([i, t]);
16
8
  }
17
9
  export {
18
- i as concat,
19
- c as concatBytes,
20
- f as concatHex
10
+ u as toPrefixedMessage
21
11
  };
package/dist/index77.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./index43.cjs");class t extends a.BaseError{constructor(e){const{docsPath:s,field:r,metaMessages:i}=e;super(`Invalid Sign-In with Ethereum message field "${r}".`,{docsPath:s,metaMessages:i,name:"SiweInvalidMessageFieldError"})}}exports.SiweInvalidMessageFieldError=t;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("./index61.cjs"),f=require("./index104.cjs"),c=require("./index62.cjs"),I=[],O=[],w=[],B=BigInt(0),a=BigInt(1),A=BigInt(2),S=BigInt(7),H=BigInt(256),T=BigInt(113);for(let i=0,t=a,s=1,n=0;i<24;i++){[s,n]=[n,(2*s+3*n)%5],I.push(2*(5*n+s)),O.push((i+1)*(i+2)/2%64);let o=B;for(let r=0;r<7;r++)t=(t<<a^(t>>S)*T)%H,t&A&&(o^=a<<(a<<BigInt(r))-a);w.push(o)}const[m,E]=f.split(w,!0),y=(i,t,s)=>s>32?f.rotlBH(i,t,s):f.rotlSH(i,t,s),b=(i,t,s)=>s>32?f.rotlBL(i,t,s):f.rotlSL(i,t,s);function L(i,t=24){const s=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let e=0;e<10;e++)s[e]=i[e]^i[e+10]^i[e+20]^i[e+30]^i[e+40];for(let e=0;e<10;e+=2){const h=(e+8)%10,p=(e+2)%10,d=s[p],u=s[p+1],_=y(d,u,1)^s[h],g=b(d,u,1)^s[h+1];for(let k=0;k<50;k+=10)i[e+k]^=_,i[e+k+1]^=g}let o=i[2],r=i[3];for(let e=0;e<24;e++){const h=O[e],p=y(o,r,h),d=b(o,r,h),u=I[e];o=i[u],r=i[u+1],i[u]=p,i[u+1]=d}for(let e=0;e<50;e+=10){for(let h=0;h<10;h++)s[h]=i[e+h];for(let h=0;h<10;h++)i[e+h]^=~s[(h+2)%10]&s[(h+4)%10]}i[0]^=m[n],i[1]^=E[n]}s.fill(0)}class x extends c.Hash{constructor(t,s,n,o=!1,r=24){if(super(),this.blockLen=t,this.suffix=s,this.outputLen=n,this.enableXOF=o,this.rounds=r,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,l.anumber(n),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=c.u32(this.state)}keccak(){c.isLE||c.byteSwap32(this.state32),L(this.state32,this.rounds),c.isLE||c.byteSwap32(this.state32),this.posOut=0,this.pos=0}update(t){l.aexists(this);const{blockLen:s,state:n}=this;t=c.toBytes(t);const o=t.length;for(let r=0;r<o;){const e=Math.min(s-this.pos,o-r);for(let h=0;h<e;h++)n[this.pos++]^=t[r++];this.pos===s&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;const{state:t,suffix:s,pos:n,blockLen:o}=this;t[n]^=s,s&128&&n===o-1&&this.keccak(),t[o-1]^=128,this.keccak()}writeInto(t){l.aexists(this,!1),l.abytes(t),this.finish();const s=this.state,{blockLen:n}=this;for(let o=0,r=t.length;o<r;){this.posOut>=n&&this.keccak();const e=Math.min(n-this.posOut,r-o);t.set(s.subarray(this.posOut,this.posOut+e),o),this.posOut+=e,o+=e}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return l.anumber(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(l.aoutput(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){const{blockLen:s,suffix:n,outputLen:o,rounds:r,enableXOF:e}=this;return t||(t=new x(s,n,o,e,r)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=r,t.suffix=n,t.outputLen=o,t.enableXOF=e,t.destroyed=this.destroyed,t}}const F=(i,t,s)=>c.wrapConstructor(()=>new x(t,i,s)),P=F(1,136,256/8);exports.Keccak=x;exports.keccakP=L;exports.keccak_256=P;