@coinbase/cdp-hooks 0.0.91 → 0.0.92

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 (131) hide show
  1. package/dist/esm/index100.js +1 -1
  2. package/dist/esm/index108.js +1 -1
  3. package/dist/esm/index109.js +2 -2
  4. package/dist/esm/index110.js +1 -1
  5. package/dist/esm/index115.js +1 -1
  6. package/dist/esm/index118.js +1 -1
  7. package/dist/esm/index121.js +1 -1
  8. package/dist/esm/index122.js +1 -1
  9. package/dist/esm/index123.js +3 -3
  10. package/dist/esm/index124.js +2 -2
  11. package/dist/esm/index125.js +1 -1
  12. package/dist/esm/index127.js +1 -1
  13. package/dist/esm/index128.js +1 -1
  14. package/dist/esm/index129.js +3 -3
  15. package/dist/esm/index130.js +3 -3
  16. package/dist/esm/index131.js +3 -3
  17. package/dist/esm/index132.js +3 -3
  18. package/dist/esm/index133.js +3 -3
  19. package/dist/esm/index134.js +3 -3
  20. package/dist/esm/index135.js +3 -3
  21. package/dist/esm/index136.js +1 -1
  22. package/dist/esm/index138.js +1 -1
  23. package/dist/esm/index219.js +3 -3
  24. package/dist/esm/index248.js +2 -2
  25. package/dist/esm/index251.js +2 -2
  26. package/dist/esm/index252.js +1 -1
  27. package/dist/esm/index256.js +39 -10
  28. package/dist/esm/index257.js +2 -41
  29. package/dist/esm/index258.js +70 -2
  30. package/dist/esm/index259.js +34 -4
  31. package/dist/esm/index260.js +13 -9
  32. package/dist/esm/index261.js +10 -20
  33. package/dist/esm/index262.js +2 -8
  34. package/dist/esm/index263.js +39 -10
  35. package/dist/esm/index264.js +2 -67
  36. package/dist/esm/index265.js +4 -65
  37. package/dist/esm/index266.js +9 -184
  38. package/dist/esm/index267.js +17 -20
  39. package/dist/esm/index268.js +7 -42
  40. package/dist/esm/index269.js +10 -75
  41. package/dist/esm/index270.js +66 -40
  42. package/dist/esm/index271.js +64 -15
  43. package/dist/esm/index272.js +184 -12
  44. package/dist/esm/index273.js +22 -7
  45. package/dist/esm/index274.js +42 -6
  46. package/dist/esm/index275.js +76 -36
  47. package/dist/esm/index276.js +40 -15
  48. package/dist/esm/index277.js +16 -8
  49. package/dist/esm/index278.js +13 -12
  50. package/dist/esm/index279.js +7 -9
  51. package/dist/esm/index280.js +6 -16
  52. package/dist/esm/index281.js +36 -22
  53. package/dist/esm/index282.js +15 -30
  54. package/dist/esm/index283.js +9 -2
  55. package/dist/esm/index284.js +12 -13
  56. package/dist/esm/index285.js +9 -12
  57. package/dist/esm/index286.js +15 -46
  58. package/dist/esm/index287.js +21 -8
  59. package/dist/esm/index288.js +30 -13
  60. package/dist/esm/index289.js +2 -15
  61. package/dist/esm/index290.js +13 -8
  62. package/dist/esm/index291.js +12 -15
  63. package/dist/esm/index292.js +47 -24
  64. package/dist/esm/index293.js +9 -11
  65. package/dist/esm/index294.js +13 -24
  66. package/dist/esm/index295.js +13 -50
  67. package/dist/esm/index296.js +6 -15
  68. package/dist/esm/index297.js +15 -14
  69. package/dist/esm/index298.js +24 -11
  70. package/dist/esm/index299.js +11 -103
  71. package/dist/esm/index3.js +1 -1
  72. package/dist/esm/index300.js +24 -5
  73. package/dist/esm/index301.js +50 -222
  74. package/dist/esm/index302.js +17 -6
  75. package/dist/esm/index303.js +15 -7
  76. package/dist/esm/index304.js +11 -26
  77. package/dist/esm/index305.js +102 -18
  78. package/dist/esm/index306.js +5 -145
  79. package/dist/esm/index307.js +223 -12
  80. package/dist/esm/index308.js +7 -36
  81. package/dist/esm/index309.js +6 -41
  82. package/dist/esm/index310.js +25 -37
  83. package/dist/esm/index311.js +20 -2
  84. package/dist/esm/index312.js +145 -69
  85. package/dist/esm/index313.js +13 -35
  86. package/dist/esm/index314.js +36 -15
  87. package/dist/esm/index315.js +41 -68
  88. package/dist/esm/index316.js +68 -3
  89. package/dist/esm/index317.js +3 -136
  90. package/dist/esm/index318.js +125 -144
  91. package/dist/esm/index319.js +155 -9
  92. package/dist/esm/index320.js +9 -16
  93. package/dist/esm/index321.js +16 -113
  94. package/dist/esm/index322.js +95 -116
  95. package/dist/esm/index323.js +126 -70
  96. package/dist/esm/index324.js +79 -2
  97. package/dist/esm/index325.js +2 -698
  98. package/dist/esm/index326.js +685 -126
  99. package/dist/esm/index327.js +137 -41
  100. package/dist/esm/index328.js +40 -198
  101. package/dist/esm/index329.js +201 -2
  102. package/dist/esm/index330.js +3 -65
  103. package/dist/esm/index331.js +65 -4
  104. package/dist/esm/index332.js +4 -40
  105. package/dist/esm/index333.js +40 -7
  106. package/dist/esm/index334.js +7 -62
  107. package/dist/esm/index335.js +57 -72
  108. package/dist/esm/index336.js +78 -4
  109. package/dist/esm/index337.js +4 -195
  110. package/dist/esm/index338.js +194 -3
  111. package/dist/esm/index339.js +3 -3
  112. package/dist/esm/index72.js +1 -1
  113. package/dist/esm/index74.js +1 -1
  114. package/dist/esm/index75.js +2 -2
  115. package/dist/esm/index82.js +1 -1
  116. package/dist/esm/index83.js +1 -1
  117. package/dist/esm/index86.js +3 -3
  118. package/dist/esm/index87.js +2 -2
  119. package/dist/esm/index88.js +3 -3
  120. package/dist/esm/index89.js +2 -2
  121. package/dist/esm/index90.js +3 -3
  122. package/dist/esm/index91.js +6 -6
  123. package/dist/esm/index92.js +2 -2
  124. package/dist/esm/index93.js +1 -1
  125. package/dist/esm/index94.js +1 -1
  126. package/dist/esm/index95.js +1 -1
  127. package/dist/esm/index96.js +1 -1
  128. package/dist/esm/index97.js +1 -1
  129. package/dist/esm/index98.js +1 -1
  130. package/dist/esm/index99.js +4 -4
  131. package/package.json +3 -3
@@ -1,20 +1,11 @@
1
- function x(e) {
2
- const { scheme: n, statement: t, ...c } = e.match(f)?.groups ?? {}, { chainId: s, expirationTime: i, issuedAt: o, notBefore: r, requestId: a, ...d } = e.match(p)?.groups ?? {}, u = e.split("Resources:")[1]?.split(`
3
- - `).slice(1);
1
+ function r(a) {
4
2
  return {
5
- ...c,
6
- ...d,
7
- ...s ? { chainId: Number(s) } : {},
8
- ...i ? { expirationTime: new Date(i) } : {},
9
- ...o ? { issuedAt: new Date(o) } : {},
10
- ...r ? { notBefore: new Date(r) } : {},
11
- ...a ? { requestId: a } : {},
12
- ...u ? { resources: u } : {},
13
- ...n ? { scheme: n } : {},
14
- ...t ? { statement: t } : {}
3
+ baseFeePerGas: a.baseFeePerGas.map((e) => BigInt(e)),
4
+ gasUsedRatio: a.gasUsedRatio,
5
+ oldestBlock: BigInt(a.oldestBlock),
6
+ reward: a.reward?.map((e) => e.map((t) => BigInt(t)))
15
7
  };
16
8
  }
17
- const f = /^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/, p = /(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;
18
9
  export {
19
- x as parseSiweMessage
10
+ r as formatFeeHistory
20
11
  };
@@ -1,17 +1,18 @@
1
- import { isAddress as f } from "./index198.js";
2
- import { isAddressEqual as o } from "./index208.js";
3
- function l(n) {
4
- const { address: r, domain: s, message: e, nonce: t, scheme: a, time: i = /* @__PURE__ */ new Date() } = n;
5
- if (s && e.domain !== s || t && e.nonce !== t || a && e.scheme !== a || e.expirationTime && i >= e.expirationTime || e.notBefore && i < e.notBefore)
6
- return !1;
7
- try {
8
- if (!e.address || !f(e.address, { strict: !1 }) || r && !o(e.address, r))
9
- return !1;
10
- } catch {
11
- return !1;
12
- }
13
- return !0;
1
+ import { hexToNumber as a } from "./index209.js";
2
+ function t(e) {
3
+ return e.map((n) => ({
4
+ ...n,
5
+ value: BigInt(n.value)
6
+ }));
7
+ }
8
+ function o(e) {
9
+ return {
10
+ ...e,
11
+ balance: e.balance ? BigInt(e.balance) : void 0,
12
+ nonce: e.nonce ? a(e.nonce) : void 0,
13
+ storageProof: e.storageProof ? t(e.storageProof) : void 0
14
+ };
14
15
  }
15
16
  export {
16
- l as validateSiweMessage
17
+ o as formatProof
17
18
  };
@@ -1,14 +1,27 @@
1
- import { LruMap as u } from "./index246.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;
1
+ import { BaseError as a } from "./index149.js";
2
+ import { ExecutionRevertedError as s, FeeCapTooHighError as r, FeeCapTooLowError as i, NonceTooHighError as c, NonceTooLowError as u, NonceMaxValueError as d, InsufficientFundsError as f, IntrinsicGasTooHighError as w, IntrinsicGasTooLowError as E, TransactionTypeNotSupportedError as m, TipAboveFeeCapError as g, UnknownNodeError as F } from "./index168.js";
3
+ function G(e, n) {
4
+ const o = (e.details || "").toLowerCase(), t = e instanceof a ? e.walk((x) => x?.code === s.code) : e;
5
+ return t instanceof a ? new s({
6
+ cause: e,
7
+ message: t.details
8
+ }) : s.nodeMessage.test(o) ? new s({
9
+ cause: e,
10
+ message: e.details
11
+ }) : r.nodeMessage.test(o) ? new r({
12
+ cause: e,
13
+ maxFeePerGas: n?.maxFeePerGas
14
+ }) : i.nodeMessage.test(o) ? new i({
15
+ cause: e,
16
+ maxFeePerGas: n?.maxFeePerGas
17
+ }) : c.nodeMessage.test(o) ? new c({ cause: e, nonce: n?.nonce }) : u.nodeMessage.test(o) ? new u({ cause: e, nonce: n?.nonce }) : d.nodeMessage.test(o) ? new d({ cause: e, nonce: n?.nonce }) : f.nodeMessage.test(o) ? new f({ cause: e }) : w.nodeMessage.test(o) ? new w({ cause: e, gas: n?.gas }) : E.nodeMessage.test(o) ? new E({ cause: e, gas: n?.gas }) : m.nodeMessage.test(o) ? new m({ cause: e }) : g.nodeMessage.test(o) ? new g({
18
+ cause: e,
19
+ maxFeePerGas: n?.maxFeePerGas,
20
+ maxPriorityFeePerGas: n?.maxPriorityFeePerGas
21
+ }) : new F({
22
+ cause: e
23
+ });
10
24
  }
11
25
  export {
12
- t as promiseCache,
13
- s as withDedupe
26
+ G as getNodeError
14
27
  };
@@ -1,106 +1,14 @@
1
- import { HashMD as D, SHA256_IV as b, Chi as g, Maj as p } from "./index323.js";
2
- import { createHasher as u, clean as C, rotr as i } from "./index306.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
- }
1
+ import { from as t } from "./index322.js";
2
+ import { encode as m } from "./index323.js";
3
+ import { concat as c } from "./index319.js";
4
+ function s(o, e) {
5
+ const { bytecode: r, args: n } = e;
6
+ return c(r, o.inputs?.length && n?.length ? m(o.inputs, n) : "0x");
7
+ }
8
+ function u(o) {
9
+ return t(o);
101
10
  }
102
- const y = /* @__PURE__ */ u(() => new E());
103
11
  export {
104
- E as SHA256,
105
- y as sha256
12
+ s as encode,
13
+ u as from
106
14
  };
@@ -1,4 +1,4 @@
1
- const o = "0.0.91";
1
+ const o = "0.0.92";
2
2
  export {
3
3
  o as VERSION
4
4
  };
@@ -1,8 +1,27 @@
1
- import { weierstrass as s } from "./index325.js";
2
- function c(e, t) {
3
- const r = (o) => s({ ...e, hash: o });
4
- return { ...r(t), create: r };
1
+ import { from as c, fromAbi as m, NotFoundError as i, getSelector as s } from "./index322.js";
2
+ import { encode as u } from "./index323.js";
3
+ import { concat as d } from "./index319.js";
4
+ function S(o, ...t) {
5
+ const { overloads: r } = o, e = r ? p([o, ...r], o.name, {
6
+ args: t[0]
7
+ }) : o, n = l(e), f = t.length > 0 ? u(e.inputs, t[0]) : void 0;
8
+ return f ? d(n, f) : n;
9
+ }
10
+ function $(o, t = {}) {
11
+ return c(o, t);
12
+ }
13
+ function p(o, t, r) {
14
+ const e = m(o, t, r);
15
+ if (e.type !== "function")
16
+ throw new i({ name: t, type: "function" });
17
+ return e;
18
+ }
19
+ function l(o) {
20
+ return s(o);
5
21
  }
6
22
  export {
7
- c as createCurve
23
+ S as encodeData,
24
+ $ as from,
25
+ p as fromAbi,
26
+ l as getSelector
8
27
  };
@@ -1,226 +1,54 @@
1
- import { numberToBytesLE as y, numberToBytesBE as I, bitMask as Z, bytesToNumberLE as S, bytesToNumberBE as _, _validateObject as j } from "./index326.js";
2
- import { anumber as z } from "./index306.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);
1
+ import { universalSignatureValidatorAbi as d } from "./index139.js";
2
+ import { universalSignatureValidatorByteCode as l } from "./index141.js";
3
+ import { CallExecutionError as g } from "./index152.js";
4
+ import { encodeDeployData as y } from "./index201.js";
5
+ import { getAddress as S } from "./index186.js";
6
+ import { isAddressEqual as h } from "./index208.js";
7
+ import { isHex as v } from "./index212.js";
8
+ import { bytesToHex as x } from "./index176.js";
9
+ import { getAction as b } from "./index279.js";
10
+ import { isErc6492Signature as A } from "./index222.js";
11
+ import { recoverAddress as w } from "./index216.js";
12
+ import { serializeErc6492Signature as E } from "./index223.js";
13
+ import { serializeSignature as V } from "./index220.js";
14
+ import { call as D } from "./index91.js";
15
+ import { encodeFunctionData as H } from "./index204.js";
16
+ import { hexToBool as z } from "./index209.js";
17
+ async function Q(o, p) {
18
+ const { address: i, factory: n, factoryData: s, hash: a, signature: r, universalSignatureVerifierAddress: f = o.chain?.contracts?.universalSignatureVerifier?.address, ...m } = p, t = v(r) ? r : typeof r == "object" && "r" in r && "s" in r ? V(r) : x(r), c = await (async () => !n && !s || A(t) ? t : E({
19
+ address: n,
20
+ data: s,
21
+ signature: t
22
+ }))();
23
+ try {
24
+ const e = f ? {
25
+ to: f,
26
+ data: H({
27
+ abi: d,
28
+ functionName: "isValidSig",
29
+ args: [i, a, c]
30
+ }),
31
+ ...m
32
+ } : {
33
+ data: y({
34
+ abi: d,
35
+ args: [i, a, c],
36
+ bytecode: l
37
+ }),
38
+ ...m
39
+ }, { data: u } = await b(o, D, "call")(e);
40
+ return z(u ?? "0x0");
41
+ } catch (e) {
42
+ try {
43
+ if (h(S(i), await w({ hash: a, signature: r })))
44
+ return !0;
45
+ } catch {
70
46
  }
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);
47
+ if (e instanceof g)
48
+ return !1;
49
+ throw e;
50
+ }
210
51
  }
211
52
  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
53
+ Q as verifyHash
226
54
  };
@@ -1,9 +1,20 @@
1
- import { toBytes as o } from "./index175.js";
2
- import { keccak256 as r } from "./index177.js";
3
- const e = (t) => r(o(t));
4
- function c(t) {
5
- return e(t);
1
+ function x(e) {
2
+ const { scheme: n, statement: t, ...c } = e.match(f)?.groups ?? {}, { chainId: s, expirationTime: i, issuedAt: o, notBefore: r, requestId: a, ...d } = e.match(p)?.groups ?? {}, u = e.split("Resources:")[1]?.split(`
3
+ - `).slice(1);
4
+ return {
5
+ ...c,
6
+ ...d,
7
+ ...s ? { chainId: Number(s) } : {},
8
+ ...i ? { expirationTime: new Date(i) } : {},
9
+ ...o ? { issuedAt: new Date(o) } : {},
10
+ ...r ? { notBefore: new Date(r) } : {},
11
+ ...a ? { requestId: a } : {},
12
+ ...u ? { resources: u } : {},
13
+ ...n ? { scheme: n } : {},
14
+ ...t ? { statement: t } : {}
15
+ };
6
16
  }
17
+ const f = /^(?:(?<scheme>[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?<domain>[a-zA-Z0-9+-.]*(?::[0-9]{1,5})?) (?:wants you to sign in with your Ethereum account:\n)(?<address>0x[a-fA-F0-9]{40})\n\n(?:(?<statement>.*)\n\n)?/, p = /(?:URI: (?<uri>.+))\n(?:Version: (?<version>.+))\n(?:Chain ID: (?<chainId>\d+))\n(?:Nonce: (?<nonce>[a-zA-Z0-9]+))\n(?:Issued At: (?<issuedAt>.+))(?:\nExpiration Time: (?<expirationTime>.+))?(?:\nNot Before: (?<notBefore>.+))?(?:\nRequest ID: (?<requestId>.+))?/;
7
18
  export {
8
- c as hashSignature
19
+ x as parseSiweMessage
9
20
  };
@@ -1,9 +1,17 @@
1
- import { normalizeSignature as o } from "./index304.js";
2
- import { formatAbiItem as n } from "./index259.js";
3
- const m = (r) => {
4
- const t = typeof r == "string" ? r : n(r);
5
- return o(t);
6
- };
1
+ import { isAddress as f } from "./index198.js";
2
+ import { isAddressEqual as o } from "./index208.js";
3
+ function l(n) {
4
+ const { address: r, domain: s, message: e, nonce: t, scheme: a, time: i = /* @__PURE__ */ new Date() } = n;
5
+ if (s && e.domain !== s || t && e.nonce !== t || a && e.scheme !== a || e.expirationTime && i >= e.expirationTime || e.notBefore && i < e.notBefore)
6
+ return !1;
7
+ try {
8
+ if (!e.address || !f(e.address, { strict: !1 }) || r && !o(e.address, r))
9
+ return !1;
10
+ } catch {
11
+ return !1;
12
+ }
13
+ return !0;
14
+ }
7
15
  export {
8
- m as toSignature
16
+ l as validateSiweMessage
9
17
  };
@@ -1,29 +1,14 @@
1
- import { BaseError as u } from "./index149.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
- }
22
- }
23
- if (!o)
24
- throw new u("Unable to normalize signature.");
25
- return t;
1
+ import { LruMap as u } from "./index246.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;
26
10
  }
27
11
  export {
28
- a as normalizeSignature
12
+ t as promiseCache,
13
+ s as withDedupe
29
14
  };