@coinbase/cdp-hooks 0.0.87 → 0.0.89
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.
- package/dist/esm/index.js +65 -63
- package/dist/esm/index10.js +1 -1
- package/dist/esm/index100.js +7 -5
- package/dist/esm/index101.js +6 -16
- package/dist/esm/index102.js +16 -8
- package/dist/esm/index103.js +8 -13
- package/dist/esm/index104.js +13 -7
- package/dist/esm/index105.js +7 -9
- package/dist/esm/index106.js +9 -16
- package/dist/esm/index107.js +16 -46
- package/dist/esm/index108.js +46 -13
- package/dist/esm/index109.js +13 -16
- package/dist/esm/index11.js +1 -1
- package/dist/esm/index110.js +14 -11
- package/dist/esm/index111.js +13 -6
- package/dist/esm/index112.js +5 -34
- package/dist/esm/index113.js +34 -8
- package/dist/esm/index114.js +8 -7
- package/dist/esm/index115.js +8 -25
- package/dist/esm/index116.js +25 -10
- package/dist/esm/index117.js +10 -14
- package/dist/esm/index118.js +14 -11
- package/dist/esm/index119.js +11 -116
- package/dist/esm/index12.js +1 -1
- package/dist/esm/index120.js +114 -31
- package/dist/esm/index121.js +30 -76
- package/dist/esm/index122.js +78 -176
- package/dist/esm/index123.js +174 -41
- package/dist/esm/index124.js +44 -6
- package/dist/esm/index125.js +5 -12
- package/dist/esm/index126.js +12 -12
- package/dist/esm/index127.js +13 -99
- package/dist/esm/index128.js +96 -69
- package/dist/esm/index129.js +61 -76
- package/dist/esm/index13.js +1 -1
- package/dist/esm/index130.js +74 -135
- package/dist/esm/index131.js +108 -96
- package/dist/esm/index132.js +113 -45
- package/dist/esm/index133.js +68 -23
- package/dist/esm/index134.js +23 -105
- package/dist/esm/index135.js +105 -6
- package/dist/esm/index136.js +6 -131
- package/dist/esm/index137.js +130 -274
- package/dist/esm/index138.js +276 -3
- package/dist/esm/index139.js +3 -4
- package/dist/esm/index14.js +1 -1
- package/dist/esm/index140.js +4 -9
- package/dist/esm/index141.js +9 -2
- package/dist/esm/index142.js +2 -2
- package/dist/esm/index143.js +2 -3
- package/dist/esm/index144.js +3 -327
- package/dist/esm/index145.js +324 -11
- package/dist/esm/index146.js +13 -4
- package/dist/esm/index147.js +4 -55
- package/dist/esm/index148.js +56 -2
- package/dist/esm/index149.js +2 -8
- package/dist/esm/index15.js +1 -1
- package/dist/esm/index150.js +6 -213
- package/dist/esm/index151.js +215 -32
- package/dist/esm/index152.js +32 -22
- package/dist/esm/index153.js +21 -5
- package/dist/esm/index154.js +5 -73
- package/dist/esm/index155.js +73 -5
- package/dist/esm/index156.js +4 -4
- package/dist/esm/index157.js +5 -35
- package/dist/esm/index158.js +29 -69
- package/dist/esm/index159.js +76 -3
- package/dist/esm/index16.js +1 -1
- package/dist/esm/index160.js +3 -24
- package/dist/esm/index161.js +16 -444
- package/dist/esm/index162.js +444 -23
- package/dist/esm/index163.js +24 -20
- package/dist/esm/index164.js +18 -25
- package/dist/esm/index165.js +31 -32
- package/dist/esm/index166.js +32 -191
- package/dist/esm/index167.js +191 -6
- package/dist/esm/index168.js +9 -2
- package/dist/esm/index169.js +2 -13
- package/dist/esm/index17.js +1 -1
- package/dist/esm/index170.js +11 -17
- package/dist/esm/index171.js +13 -22
- package/dist/esm/index172.js +27 -8
- package/dist/esm/index173.js +8 -55
- package/dist/esm/index174.js +50 -40
- package/dist/esm/index175.js +45 -8
- package/dist/esm/index176.js +8 -7
- package/dist/esm/index177.js +7 -16
- package/dist/esm/index178.js +16 -18
- package/dist/esm/index179.js +18 -24
- package/dist/esm/index18.js +1 -1
- package/dist/esm/index180.js +24 -16
- package/dist/esm/index181.js +16 -54
- package/dist/esm/index182.js +53 -10
- package/dist/esm/index183.js +11 -160
- package/dist/esm/index184.js +160 -21
- package/dist/esm/index185.js +21 -127
- package/dist/esm/index186.js +127 -38
- package/dist/esm/index187.js +38 -6
- package/dist/esm/index188.js +6 -27
- package/dist/esm/index189.js +27 -191
- package/dist/esm/index19.js +1 -1
- package/dist/esm/index190.js +192 -4
- package/dist/esm/index191.js +4 -65
- package/dist/esm/index192.js +65 -3
- package/dist/esm/index193.js +3 -21
- package/dist/esm/index194.js +19 -15
- package/dist/esm/index195.js +16 -23
- package/dist/esm/index196.js +23 -11
- package/dist/esm/index197.js +11 -34
- package/dist/esm/index198.js +35 -3
- package/dist/esm/index199.js +3 -19
- package/dist/esm/index2.js +35 -30
- package/dist/esm/index20.js +1 -1
- package/dist/esm/index200.js +18 -27
- package/dist/esm/index201.js +25 -33
- package/dist/esm/index202.js +35 -7
- package/dist/esm/index203.js +7 -25
- package/dist/esm/index204.js +20 -23
- package/dist/esm/index205.js +27 -63
- package/dist/esm/index206.js +64 -9
- package/dist/esm/index207.js +9 -33
- package/dist/esm/index208.js +33 -27
- package/dist/esm/index209.js +26 -23
- package/dist/esm/index21.js +1 -1
- package/dist/esm/index210.js +24 -3
- package/dist/esm/index211.js +3 -14
- package/dist/esm/index212.js +14 -103
- package/dist/esm/index213.js +99 -60
- package/dist/esm/index214.js +64 -5
- package/dist/esm/index215.js +5 -6
- package/dist/esm/index216.js +6 -27
- package/dist/esm/index217.js +27 -38
- package/dist/esm/index218.js +38 -13
- package/dist/esm/index219.js +13 -42
- package/dist/esm/index22.js +1 -1
- package/dist/esm/index220.js +42 -5
- package/dist/esm/index221.js +5 -11
- package/dist/esm/index222.js +11 -19
- package/dist/esm/index223.js +18 -77
- package/dist/esm/index224.js +79 -2
- package/dist/esm/index225.js +2 -38
- package/dist/esm/index226.js +32 -105
- package/dist/esm/index227.js +105 -43
- package/dist/esm/index228.js +47 -31
- package/dist/esm/index229.js +32 -8
- package/dist/esm/index23.js +1 -1
- package/dist/esm/index230.js +8 -6
- package/dist/esm/index231.js +6 -6
- package/dist/esm/index232.js +6 -11
- package/dist/esm/index233.js +11 -10
- package/dist/esm/index234.js +10 -13
- package/dist/esm/index235.js +12 -31
- package/dist/esm/index236.js +33 -5
- package/dist/esm/index237.js +5 -9
- package/dist/esm/index238.js +8 -19
- package/dist/esm/index239.js +19 -31
- package/dist/esm/index24.js +1 -1
- package/dist/esm/index240.js +31 -20
- package/dist/esm/index241.js +20 -3
- package/dist/esm/index242.js +3 -17
- package/dist/esm/index243.js +17 -10
- package/dist/esm/index244.js +10 -21
- package/dist/esm/index245.js +21 -22
- package/dist/esm/index246.js +22 -5
- package/dist/esm/index247.js +5 -5
- package/dist/esm/index248.js +5 -8
- package/dist/esm/index249.js +8 -104
- package/dist/esm/index25.js +2 -2
- package/dist/esm/index250.js +105 -3
- package/dist/esm/index251.js +3 -19
- package/dist/esm/index252.js +17 -170
- package/dist/esm/index253.js +170 -16
- package/dist/esm/index254.js +18 -10
- package/dist/esm/index255.js +10 -41
- package/dist/esm/index256.js +41 -2
- package/dist/esm/index257.js +2 -5
- package/dist/esm/index258.js +4 -10
- package/dist/esm/index259.js +9 -18
- package/dist/esm/index26.js +1 -1
- package/dist/esm/index260.js +19 -7
- package/dist/esm/index261.js +7 -11
- package/dist/esm/index262.js +11 -66
- package/dist/esm/index263.js +65 -64
- package/dist/esm/index264.js +60 -180
- package/dist/esm/index265.js +183 -20
- package/dist/esm/index266.js +21 -41
- package/dist/esm/index267.js +20 -54
- package/dist/esm/index268.js +54 -18
- package/dist/esm/index269.js +34 -10
- package/dist/esm/index27.js +1 -1
- package/dist/esm/index270.js +10 -7
- package/dist/esm/index271.js +13 -7
- package/dist/esm/index272.js +7 -6
- package/dist/esm/index273.js +6 -36
- package/dist/esm/index274.js +35 -14
- package/dist/esm/index275.js +15 -8
- package/dist/esm/index276.js +7 -11
- package/dist/esm/index277.js +12 -9
- package/dist/esm/index278.js +9 -16
- package/dist/esm/index279.js +15 -21
- package/dist/esm/index28.js +1 -1
- package/dist/esm/index280.js +22 -30
- package/dist/esm/index281.js +31 -2
- package/dist/esm/index282.js +2 -14
- package/dist/esm/index283.js +13 -12
- package/dist/esm/index284.js +10 -45
- package/dist/esm/index285.js +47 -9
- package/dist/esm/index286.js +8 -12
- package/dist/esm/index287.js +13 -14
- package/dist/esm/index288.js +14 -8
- package/dist/esm/index289.js +6 -13
- package/dist/esm/index29.js +1 -1
- package/dist/esm/index290.js +15 -24
- package/dist/esm/index291.js +24 -11
- package/dist/esm/index292.js +10 -23
- package/dist/esm/index293.js +24 -51
- package/dist/esm/index294.js +51 -17
- package/dist/esm/index295.js +17 -14
- package/dist/esm/index296.js +14 -11
- package/dist/esm/index297.js +11 -103
- package/dist/esm/index298.js +103 -5
- package/dist/esm/index299.js +5 -223
- package/dist/esm/index3.js +1 -1
- package/dist/esm/index30.js +1 -1
- package/dist/esm/index300.js +223 -6
- package/dist/esm/index301.js +7 -7
- package/dist/esm/index302.js +7 -27
- package/dist/esm/index303.js +25 -18
- package/dist/esm/index304.js +18 -144
- package/dist/esm/index305.js +145 -12
- package/dist/esm/index306.js +12 -35
- package/dist/esm/index307.js +35 -41
- package/dist/esm/index308.js +41 -38
- package/dist/esm/index309.js +39 -2
- package/dist/esm/index31.js +1 -1
- package/dist/esm/index310.js +2 -70
- package/dist/esm/index311.js +66 -31
- package/dist/esm/index312.js +33 -13
- package/dist/esm/index313.js +14 -68
- package/dist/esm/index314.js +2 -4
- package/dist/esm/index315.js +68 -136
- package/dist/esm/index316.js +3 -155
- package/dist/esm/index317.js +134 -7
- package/dist/esm/index318.js +155 -16
- package/dist/esm/index319.js +7 -111
- package/dist/esm/index32.js +1 -1
- package/dist/esm/index320.js +16 -134
- package/dist/esm/index321.js +114 -2
- package/dist/esm/index322.js +126 -70
- package/dist/esm/index323.js +79 -2
- package/dist/esm/index324.js +2 -698
- package/dist/esm/index325.js +685 -126
- package/dist/esm/index326.js +137 -41
- package/dist/esm/index327.js +40 -198
- package/dist/esm/index328.js +197 -62
- package/dist/esm/index329.js +65 -4
- package/dist/esm/index330.js +4 -40
- package/dist/esm/index331.js +40 -7
- package/dist/esm/index332.js +7 -62
- package/dist/esm/index333.js +57 -72
- package/dist/esm/index334.js +78 -4
- package/dist/esm/index335.js +4 -195
- package/dist/esm/index336.js +194 -3
- package/dist/esm/index337.js +3 -63
- package/dist/esm/index338.js +59 -40
- package/dist/esm/index339.js +44 -4
- package/dist/esm/index340.js +5 -5
- package/dist/esm/index341.js +5 -2
- package/dist/esm/index342.js +2 -22
- package/dist/esm/index343.js +24 -0
- package/dist/esm/index35.js +1 -1
- package/dist/esm/index36.js +2 -2
- package/dist/esm/index37.js +2 -2
- package/dist/esm/index38.js +1 -1
- package/dist/esm/index39.js +2 -2
- package/dist/esm/index40.js +2 -2
- package/dist/esm/index41.js +2 -2
- package/dist/esm/index42.js +10 -5
- package/dist/esm/index43.js +5 -5
- package/dist/esm/index44.js +4 -11
- package/dist/esm/index45.js +12 -5
- package/dist/esm/index46.js +4 -4
- package/dist/esm/index47.js +5 -5
- package/dist/esm/index48.js +7 -35
- package/dist/esm/index49.js +32 -27
- package/dist/esm/index5.js +1 -1
- package/dist/esm/index50.js +29 -8
- package/dist/esm/index51.js +9 -96
- package/dist/esm/index52.js +96 -4
- package/dist/esm/index53.js +4 -7
- package/dist/esm/index54.js +5 -5
- package/dist/esm/index55.js +5 -8
- package/dist/esm/index56.js +8 -8
- package/dist/esm/index57.js +8 -5
- package/dist/esm/index58.js +5 -5
- package/dist/esm/index59.js +5 -5
- package/dist/esm/index6.js +1 -1
- package/dist/esm/index60.js +5 -5
- package/dist/esm/index61.js +5 -5
- package/dist/esm/index62.js +5 -5
- package/dist/esm/index63.js +6 -20
- package/dist/esm/index64.js +20 -59
- package/dist/esm/index65.js +60 -8
- package/dist/esm/index66.js +8 -11
- package/dist/esm/index67.js +12 -18
- package/dist/esm/index68.js +17 -33
- package/dist/esm/index69.js +34 -12
- package/dist/esm/index7.js +1 -1
- package/dist/esm/index70.js +12 -54
- package/dist/esm/index71.js +54 -58
- package/dist/esm/index72.js +58 -56
- package/dist/esm/index73.js +56 -5
- package/dist/esm/index74.js +5 -48
- package/dist/esm/index75.js +46 -31
- package/dist/esm/index76.js +32 -3
- package/dist/esm/index77.js +3 -9
- package/dist/esm/index78.js +8 -67
- package/dist/esm/index79.js +66 -7
- package/dist/esm/index8.js +1 -1
- package/dist/esm/index80.js +8 -27
- package/dist/esm/index81.js +25 -67
- package/dist/esm/index82.js +68 -17
- package/dist/esm/index83.js +17 -108
- package/dist/esm/index84.js +110 -60
- package/dist/esm/index85.js +56 -20
- package/dist/esm/index86.js +22 -38
- package/dist/esm/index87.js +37 -34
- package/dist/esm/index88.js +34 -55
- package/dist/esm/index89.js +55 -160
- package/dist/esm/index9.js +1 -1
- package/dist/esm/index90.js +156 -32
- package/dist/esm/index91.js +39 -9
- package/dist/esm/index92.js +8 -30
- package/dist/esm/index93.js +21 -26
- package/dist/esm/index94.js +35 -8
- package/dist/esm/index95.js +8 -28
- package/dist/esm/index96.js +27 -44
- package/dist/esm/index97.js +44 -86
- package/dist/esm/index98.js +83 -35
- package/dist/esm/index99.js +40 -8
- package/dist/types/index.d.ts +5 -0
- package/package.json +3 -3
package/dist/esm/index328.js
CHANGED
|
@@ -1,68 +1,203 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { bitLen as B, bitMask as z } from "./index326.js";
|
|
2
|
+
import { validateField as Z, Field as O, FpInvertBatch as R } from "./index300.js";
|
|
3
|
+
const g = BigInt(0), h = BigInt(1);
|
|
4
|
+
function b(t, r) {
|
|
5
|
+
const e = r.negate();
|
|
6
|
+
return t ? e : r;
|
|
7
|
+
}
|
|
8
|
+
function L(t, r, e) {
|
|
9
|
+
const n = (s) => s.pz, i = R(t.Fp, e.map(n));
|
|
10
|
+
return e.map((s, f) => s.toAffine(i[f])).map(t.fromAffine);
|
|
11
|
+
}
|
|
12
|
+
function I(t, r) {
|
|
13
|
+
if (!Number.isSafeInteger(t) || t <= 0 || t > r)
|
|
14
|
+
throw new Error("invalid window size, expected [1.." + r + "], got W=" + t);
|
|
15
|
+
}
|
|
16
|
+
function E(t, r) {
|
|
17
|
+
I(t, r);
|
|
18
|
+
const e = Math.ceil(r / t) + 1, n = 2 ** (t - 1), i = 2 ** t, o = z(t), s = BigInt(t);
|
|
19
|
+
return { windows: e, windowSize: n, mask: o, maxNumber: i, shiftBy: s };
|
|
20
|
+
}
|
|
21
|
+
function v(t, r, e) {
|
|
22
|
+
const { windowSize: n, mask: i, maxNumber: o, shiftBy: s } = e;
|
|
23
|
+
let f = Number(t & i), a = t >> s;
|
|
24
|
+
f > n && (f -= o, a += h);
|
|
25
|
+
const d = r * n, c = d + Math.abs(f) - 1, p = f === 0, l = f < 0, u = r % 2 !== 0;
|
|
26
|
+
return { nextN: a, offset: c, isZero: p, isNeg: l, isNegF: u, offsetF: d };
|
|
27
|
+
}
|
|
28
|
+
function j(t, r) {
|
|
29
|
+
if (!Array.isArray(t))
|
|
30
|
+
throw new Error("array expected");
|
|
31
|
+
t.forEach((e, n) => {
|
|
32
|
+
if (!(e instanceof r))
|
|
33
|
+
throw new Error("invalid point at index " + n);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
function _(t, r) {
|
|
37
|
+
if (!Array.isArray(t))
|
|
38
|
+
throw new Error("array of scalars expected");
|
|
39
|
+
t.forEach((e, n) => {
|
|
40
|
+
if (!r.isValid(e))
|
|
41
|
+
throw new Error("invalid scalar at index " + n);
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
const N = /* @__PURE__ */ new WeakMap(), M = /* @__PURE__ */ new WeakMap();
|
|
45
|
+
function A(t) {
|
|
46
|
+
return M.get(t) || 1;
|
|
47
|
+
}
|
|
48
|
+
function S(t) {
|
|
49
|
+
if (t !== g)
|
|
50
|
+
throw new Error("invalid wNAF");
|
|
51
|
+
}
|
|
52
|
+
function U(t, r) {
|
|
53
|
+
return {
|
|
54
|
+
constTimeNegate: b,
|
|
55
|
+
hasPrecomputes(e) {
|
|
56
|
+
return A(e) !== 1;
|
|
57
|
+
},
|
|
58
|
+
// non-const time multiplication ladder
|
|
59
|
+
unsafeLadder(e, n, i = t.ZERO) {
|
|
60
|
+
let o = e;
|
|
61
|
+
for (; n > g; )
|
|
62
|
+
n & h && (i = i.add(o)), o = o.double(), n >>= h;
|
|
63
|
+
return i;
|
|
64
|
+
},
|
|
65
|
+
/**
|
|
66
|
+
* Creates a wNAF precomputation window. Used for caching.
|
|
67
|
+
* Default window size is set by `utils.precompute()` and is equal to 8.
|
|
68
|
+
* Number of precomputed points depends on the curve size:
|
|
69
|
+
* 2^(𝑊−1) * (Math.ceil(𝑛 / 𝑊) + 1), where:
|
|
70
|
+
* - 𝑊 is the window size
|
|
71
|
+
* - 𝑛 is the bitlength of the curve order.
|
|
72
|
+
* For a 256-bit curve and window size 8, the number of precomputed points is 128 * 33 = 4224.
|
|
73
|
+
* @param elm Point instance
|
|
74
|
+
* @param W window size
|
|
75
|
+
* @returns precomputed point tables flattened to a single array
|
|
76
|
+
*/
|
|
77
|
+
precomputeWindow(e, n) {
|
|
78
|
+
const { windows: i, windowSize: o } = E(n, r), s = [];
|
|
79
|
+
let f = e, a = f;
|
|
80
|
+
for (let d = 0; d < i; d++) {
|
|
81
|
+
a = f, s.push(a);
|
|
82
|
+
for (let c = 1; c < o; c++)
|
|
83
|
+
a = a.add(f), s.push(a);
|
|
84
|
+
f = a.double();
|
|
10
85
|
}
|
|
11
|
-
return
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
86
|
+
return s;
|
|
87
|
+
},
|
|
88
|
+
/**
|
|
89
|
+
* Implements ec multiplication using precomputed tables and w-ary non-adjacent form.
|
|
90
|
+
* @param W window size
|
|
91
|
+
* @param precomputes precomputed tables
|
|
92
|
+
* @param n scalar (we don't check here, but should be less than curve order)
|
|
93
|
+
* @returns real and fake (for const-time) points
|
|
94
|
+
*/
|
|
95
|
+
wNAF(e, n, i) {
|
|
96
|
+
let o = t.ZERO, s = t.BASE;
|
|
97
|
+
const f = E(e, r);
|
|
98
|
+
for (let a = 0; a < f.windows; a++) {
|
|
99
|
+
const { nextN: d, offset: c, isZero: p, isNeg: l, isNegF: u, offsetF: m } = v(i, a, f);
|
|
100
|
+
i = d, p ? s = s.add(b(u, n[m])) : o = o.add(b(l, n[c]));
|
|
101
|
+
}
|
|
102
|
+
return S(i), { p: o, f: s };
|
|
103
|
+
},
|
|
104
|
+
/**
|
|
105
|
+
* Implements ec unsafe (non const-time) multiplication using precomputed tables and w-ary non-adjacent form.
|
|
106
|
+
* @param W window size
|
|
107
|
+
* @param precomputes precomputed tables
|
|
108
|
+
* @param n scalar (we don't check here, but should be less than curve order)
|
|
109
|
+
* @param acc accumulator point to add result of multiplication
|
|
110
|
+
* @returns point
|
|
111
|
+
*/
|
|
112
|
+
wNAFUnsafe(e, n, i, o = t.ZERO) {
|
|
113
|
+
const s = E(e, r);
|
|
114
|
+
for (let f = 0; f < s.windows && i !== g; f++) {
|
|
115
|
+
const { nextN: a, offset: d, isZero: c, isNeg: p } = v(i, f, s);
|
|
116
|
+
if (i = a, !c) {
|
|
117
|
+
const l = n[d];
|
|
118
|
+
o = o.add(p ? l.negate() : l);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return S(i), o;
|
|
122
|
+
},
|
|
123
|
+
getPrecomputes(e, n, i) {
|
|
124
|
+
let o = N.get(n);
|
|
125
|
+
return o || (o = this.precomputeWindow(n, e), e !== 1 && (typeof i == "function" && (o = i(o)), N.set(n, o))), o;
|
|
126
|
+
},
|
|
127
|
+
wNAFCached(e, n, i) {
|
|
128
|
+
const o = A(e);
|
|
129
|
+
return this.wNAF(o, this.getPrecomputes(o, e, i), n);
|
|
130
|
+
},
|
|
131
|
+
wNAFCachedUnsafe(e, n, i, o) {
|
|
132
|
+
const s = A(e);
|
|
133
|
+
return s === 1 ? this.unsafeLadder(e, n, o) : this.wNAFUnsafe(s, this.getPrecomputes(s, e, i), n, o);
|
|
134
|
+
},
|
|
135
|
+
// We calculate precomputes for elliptic curve point multiplication
|
|
136
|
+
// using windowed method. This specifies window size and
|
|
137
|
+
// stores precomputed values. Usually only base point would be precomputed.
|
|
138
|
+
setWindowSize(e, n) {
|
|
139
|
+
I(n, r), M.set(e, n), N.delete(e);
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
function $(t, r, e, n) {
|
|
144
|
+
let i = r, o = t.ZERO, s = t.ZERO;
|
|
145
|
+
for (; e > g || n > g; )
|
|
146
|
+
e & h && (o = o.add(i)), n & h && (s = s.add(i)), i = i.double(), e >>= h, n >>= h;
|
|
147
|
+
return { p1: o, p2: s };
|
|
148
|
+
}
|
|
149
|
+
function D(t, r, e, n) {
|
|
150
|
+
j(e, t), _(n, r);
|
|
151
|
+
const i = e.length, o = n.length;
|
|
152
|
+
if (i !== o)
|
|
153
|
+
throw new Error("arrays of points and scalars must have equal length");
|
|
154
|
+
const s = t.ZERO, f = B(BigInt(i));
|
|
155
|
+
let a = 1;
|
|
156
|
+
f > 12 ? a = f - 3 : f > 4 ? a = f - 2 : f > 0 && (a = 2);
|
|
157
|
+
const d = z(a), c = new Array(Number(d) + 1).fill(s), p = Math.floor((r.BITS - 1) / a) * a;
|
|
158
|
+
let l = s;
|
|
159
|
+
for (let u = p; u >= 0; u -= a) {
|
|
160
|
+
c.fill(s);
|
|
161
|
+
for (let w = 0; w < o; w++) {
|
|
162
|
+
const F = n[w], y = Number(F >> BigInt(u) & d);
|
|
163
|
+
c[y] = c[y].add(e[w]);
|
|
164
|
+
}
|
|
165
|
+
let m = s;
|
|
166
|
+
for (let w = c.length - 1, F = s; w > 0; w--)
|
|
167
|
+
F = F.add(c[w]), m = m.add(F);
|
|
168
|
+
if (l = l.add(m), u !== 0)
|
|
169
|
+
for (let w = 0; w < a; w++)
|
|
170
|
+
l = l.double();
|
|
61
171
|
}
|
|
172
|
+
return l;
|
|
62
173
|
}
|
|
63
|
-
function
|
|
64
|
-
|
|
174
|
+
function x(t, r) {
|
|
175
|
+
if (r) {
|
|
176
|
+
if (r.ORDER !== t)
|
|
177
|
+
throw new Error("Field.ORDER must match order: Fp == p, Fn == n");
|
|
178
|
+
return Z(r), r;
|
|
179
|
+
} else
|
|
180
|
+
return O(t);
|
|
181
|
+
}
|
|
182
|
+
function G(t, r, e = {}) {
|
|
183
|
+
if (!r || typeof r != "object")
|
|
184
|
+
throw new Error(`expected valid ${t} CURVE object`);
|
|
185
|
+
for (const f of ["p", "n", "h"]) {
|
|
186
|
+
const a = r[f];
|
|
187
|
+
if (!(typeof a == "bigint" && a > g))
|
|
188
|
+
throw new Error(`CURVE.${f} must be positive bigint`);
|
|
189
|
+
}
|
|
190
|
+
const n = x(r.p, e.Fp), i = x(r.n, e.Fn), s = ["Gx", "Gy", "a", "b"];
|
|
191
|
+
for (const f of s)
|
|
192
|
+
if (!n.isValid(r[f]))
|
|
193
|
+
throw new Error(`CURVE.${f} must be valid field element of CURVE.Fp`);
|
|
194
|
+
return { Fp: n, Fn: i };
|
|
65
195
|
}
|
|
66
196
|
export {
|
|
67
|
-
|
|
197
|
+
G as _createCurveFields,
|
|
198
|
+
$ as mulEndoUnsafe,
|
|
199
|
+
b as negateCt,
|
|
200
|
+
L as normalizeZ,
|
|
201
|
+
D as pippenger,
|
|
202
|
+
U as wNAF
|
|
68
203
|
};
|
package/dist/esm/index329.js
CHANGED
|
@@ -1,7 +1,68 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { getVersion as n } from "./index340.js";
|
|
2
|
+
class s extends Error {
|
|
3
|
+
constructor(r, e = {}) {
|
|
4
|
+
const a = (() => {
|
|
5
|
+
if (e.cause instanceof s) {
|
|
6
|
+
if (e.cause.details)
|
|
7
|
+
return e.cause.details;
|
|
8
|
+
if (e.cause.shortMessage)
|
|
9
|
+
return e.cause.shortMessage;
|
|
10
|
+
}
|
|
11
|
+
return e.cause && "details" in e.cause && typeof e.cause.details == "string" ? e.cause.details : e.cause?.message ? e.cause.message : e.details;
|
|
12
|
+
})(), u = e.cause instanceof s && e.cause.docsPath || e.docsPath, c = `https://oxlib.sh${u ?? ""}`, l = [
|
|
13
|
+
r || "An error occurred.",
|
|
14
|
+
...e.metaMessages ? ["", ...e.metaMessages] : [],
|
|
15
|
+
...a || u ? [
|
|
16
|
+
"",
|
|
17
|
+
a ? `Details: ${a}` : void 0,
|
|
18
|
+
u ? `See: ${c}` : void 0
|
|
19
|
+
] : []
|
|
20
|
+
].filter((d) => typeof d == "string").join(`
|
|
21
|
+
`);
|
|
22
|
+
super(l, e.cause ? { cause: e.cause } : void 0), Object.defineProperty(this, "details", {
|
|
23
|
+
enumerable: !0,
|
|
24
|
+
configurable: !0,
|
|
25
|
+
writable: !0,
|
|
26
|
+
value: void 0
|
|
27
|
+
}), Object.defineProperty(this, "docs", {
|
|
28
|
+
enumerable: !0,
|
|
29
|
+
configurable: !0,
|
|
30
|
+
writable: !0,
|
|
31
|
+
value: void 0
|
|
32
|
+
}), Object.defineProperty(this, "docsPath", {
|
|
33
|
+
enumerable: !0,
|
|
34
|
+
configurable: !0,
|
|
35
|
+
writable: !0,
|
|
36
|
+
value: void 0
|
|
37
|
+
}), Object.defineProperty(this, "shortMessage", {
|
|
38
|
+
enumerable: !0,
|
|
39
|
+
configurable: !0,
|
|
40
|
+
writable: !0,
|
|
41
|
+
value: void 0
|
|
42
|
+
}), Object.defineProperty(this, "cause", {
|
|
43
|
+
enumerable: !0,
|
|
44
|
+
configurable: !0,
|
|
45
|
+
writable: !0,
|
|
46
|
+
value: void 0
|
|
47
|
+
}), Object.defineProperty(this, "name", {
|
|
48
|
+
enumerable: !0,
|
|
49
|
+
configurable: !0,
|
|
50
|
+
writable: !0,
|
|
51
|
+
value: "BaseError"
|
|
52
|
+
}), Object.defineProperty(this, "version", {
|
|
53
|
+
enumerable: !0,
|
|
54
|
+
configurable: !0,
|
|
55
|
+
writable: !0,
|
|
56
|
+
value: `ox@${n()}`
|
|
57
|
+
}), this.cause = e.cause, this.details = a, this.docs = c, this.docsPath = u, this.shortMessage = r;
|
|
58
|
+
}
|
|
59
|
+
walk(r) {
|
|
60
|
+
return i(this, r);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
function i(t, r) {
|
|
64
|
+
return r?.(t) ? t : t && typeof t == "object" && "cause" in t && t.cause ? i(t.cause, r) : r ? null : t;
|
|
4
65
|
}
|
|
5
66
|
export {
|
|
6
|
-
|
|
67
|
+
s as BaseError
|
|
7
68
|
};
|
package/dist/esm/index330.js
CHANGED
|
@@ -1,43 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
function
|
|
3
|
-
|
|
4
|
-
throw new p({
|
|
5
|
-
givenSize: i(t),
|
|
6
|
-
maxSize: e
|
|
7
|
-
});
|
|
8
|
-
}
|
|
9
|
-
function S(t, e) {
|
|
10
|
-
if (typeof e == "number" && e > 0 && e > i(t) - 1)
|
|
11
|
-
throw new f({
|
|
12
|
-
offset: e,
|
|
13
|
-
position: "start",
|
|
14
|
-
size: i(t)
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
function d(t, e, r) {
|
|
18
|
-
if (typeof e == "number" && typeof r == "number" && i(t) !== r - e)
|
|
19
|
-
throw new f({
|
|
20
|
-
offset: r,
|
|
21
|
-
position: "end",
|
|
22
|
-
size: i(t)
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
function u(t, e = {}) {
|
|
26
|
-
const { dir: r, size: n = 32 } = e;
|
|
27
|
-
if (n === 0)
|
|
28
|
-
return t;
|
|
29
|
-
const o = t.replace("0x", "");
|
|
30
|
-
if (o.length > n * 2)
|
|
31
|
-
throw new s({
|
|
32
|
-
size: Math.ceil(o.length / 2),
|
|
33
|
-
targetSize: n,
|
|
34
|
-
type: "Hex"
|
|
35
|
-
});
|
|
36
|
-
return `0x${o[r === "right" ? "padEnd" : "padStart"](n * 2, "0")}`;
|
|
1
|
+
const r = "#__bigint";
|
|
2
|
+
function g(i, f, n) {
|
|
3
|
+
return JSON.stringify(i, (e, t) => typeof t == "bigint" ? t.toString() + r : t, n);
|
|
37
4
|
}
|
|
38
5
|
export {
|
|
39
|
-
|
|
40
|
-
c as assertSize,
|
|
41
|
-
S as assertStartOffset,
|
|
42
|
-
u as pad
|
|
6
|
+
g as stringify
|
|
43
7
|
};
|
package/dist/esm/index331.js
CHANGED
|
@@ -1,10 +1,43 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { SizeExceedsPaddingSizeError as s, size as i, SliceOffsetOutOfBoundsError as f, SizeOverflowError as p } from "./index318.js";
|
|
2
|
+
function c(t, e) {
|
|
3
|
+
if (i(t) > e)
|
|
4
|
+
throw new p({
|
|
5
|
+
givenSize: i(t),
|
|
6
|
+
maxSize: e
|
|
7
|
+
});
|
|
8
|
+
}
|
|
9
|
+
function S(t, e) {
|
|
10
|
+
if (typeof e == "number" && e > 0 && e > i(t) - 1)
|
|
11
|
+
throw new f({
|
|
12
|
+
offset: e,
|
|
13
|
+
position: "start",
|
|
14
|
+
size: i(t)
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
function d(t, e, r) {
|
|
18
|
+
if (typeof e == "number" && typeof r == "number" && i(t) !== r - e)
|
|
19
|
+
throw new f({
|
|
20
|
+
offset: r,
|
|
21
|
+
position: "end",
|
|
22
|
+
size: i(t)
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
function u(t, e = {}) {
|
|
26
|
+
const { dir: r, size: n = 32 } = e;
|
|
27
|
+
if (n === 0)
|
|
28
|
+
return t;
|
|
29
|
+
const o = t.replace("0x", "");
|
|
30
|
+
if (o.length > n * 2)
|
|
31
|
+
throw new s({
|
|
32
|
+
size: Math.ceil(o.length / 2),
|
|
33
|
+
targetSize: n,
|
|
34
|
+
type: "Hex"
|
|
35
|
+
});
|
|
36
|
+
return `0x${o[r === "right" ? "padEnd" : "padStart"](n * 2, "0")}`;
|
|
7
37
|
}
|
|
8
38
|
export {
|
|
9
|
-
|
|
39
|
+
d as assertEndOffset,
|
|
40
|
+
c as assertSize,
|
|
41
|
+
S as assertStartOffset,
|
|
42
|
+
u as pad
|
|
10
43
|
};
|
package/dist/esm/index332.js
CHANGED
|
@@ -1,65 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
if (["(", ")", ","].includes(u) && (i = !0), u === "(" && e++, u === ")" && e--, !!i) {
|
|
8
|
-
if (e === 0) {
|
|
9
|
-
if (u === " " && ["event", "function", "error", ""].includes(n))
|
|
10
|
-
n = "";
|
|
11
|
-
else if (n += u, u === ")") {
|
|
12
|
-
o = !0;
|
|
13
|
-
break;
|
|
14
|
-
}
|
|
15
|
-
continue;
|
|
16
|
-
}
|
|
17
|
-
if (u === " ") {
|
|
18
|
-
r[s - 1] !== "," && t !== "," && t !== ",(" && (t = "", i = !1);
|
|
19
|
-
continue;
|
|
20
|
-
}
|
|
21
|
-
n += u, t += u;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
if (!o)
|
|
25
|
-
throw new f("Unable to normalize signature.");
|
|
26
|
-
return n;
|
|
27
|
-
}
|
|
28
|
-
function l(r, i) {
|
|
29
|
-
const t = typeof r, e = i.type;
|
|
30
|
-
switch (e) {
|
|
31
|
-
case "address":
|
|
32
|
-
return c(r, { strict: !1 });
|
|
33
|
-
case "bool":
|
|
34
|
-
return t === "boolean";
|
|
35
|
-
case "function":
|
|
36
|
-
return t === "string";
|
|
37
|
-
case "string":
|
|
38
|
-
return t === "string";
|
|
39
|
-
default:
|
|
40
|
-
return e === "tuple" && "components" in i ? Object.values(i.components).every((n, o) => l(Object.values(r)[o], n)) : /^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(e) ? t === "number" || t === "bigint" : /^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(e) ? t === "string" || r instanceof Uint8Array : /[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(e) ? Array.isArray(r) && r.every((n) => l(n, {
|
|
41
|
-
...i,
|
|
42
|
-
// Pop off `[]` or `[M]` from end of type
|
|
43
|
-
type: e.replace(/(\[[0-9]{0,}\])$/, "")
|
|
44
|
-
})) : !1;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
function a(r, i, t) {
|
|
48
|
-
for (const e in r) {
|
|
49
|
-
const n = r[e], o = i[e];
|
|
50
|
-
if (n.type === "tuple" && o.type === "tuple" && "components" in n && "components" in o)
|
|
51
|
-
return a(n.components, o.components, t[e]);
|
|
52
|
-
const s = [n.type, o.type];
|
|
53
|
-
if (s.includes("address") && s.includes("bytes20") ? !0 : s.includes("address") && s.includes("string") ? c(t[e], {
|
|
54
|
-
strict: !1
|
|
55
|
-
}) : s.includes("address") && s.includes("bytes") ? c(t[e], {
|
|
56
|
-
strict: !1
|
|
57
|
-
}) : !1)
|
|
58
|
-
return s;
|
|
59
|
-
}
|
|
1
|
+
import { keccak_256 as f } from "./index250.js";
|
|
2
|
+
import { from as m } from "./index338.js";
|
|
3
|
+
import { fromBytes as s } from "./index318.js";
|
|
4
|
+
function p(t, o = {}) {
|
|
5
|
+
const { as: e = typeof t == "string" ? "Hex" : "Bytes" } = o, r = f(m(t));
|
|
6
|
+
return e === "Bytes" ? r : s(r);
|
|
60
7
|
}
|
|
61
8
|
export {
|
|
62
|
-
|
|
63
|
-
l as isArgOfType,
|
|
64
|
-
y as normalizeSignature
|
|
9
|
+
p as keccak256
|
|
65
10
|
};
|
package/dist/esm/index333.js
CHANGED
|
@@ -1,80 +1,65 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}
|
|
1
|
+
import { validate as c } from "./index334.js";
|
|
2
|
+
import { BaseError as f } from "./index329.js";
|
|
3
|
+
function y(r) {
|
|
4
|
+
let i = !0, t = "", e = 0, n = "", o = !1;
|
|
5
|
+
for (let s = 0; s < r.length; s++) {
|
|
6
|
+
const u = r[s];
|
|
7
|
+
if (["(", ")", ","].includes(u) && (i = !0), u === "(" && e++, u === ")" && e--, !!i) {
|
|
8
|
+
if (e === 0) {
|
|
9
|
+
if (u === " " && ["event", "function", "error", ""].includes(n))
|
|
10
|
+
n = "";
|
|
11
|
+
else if (n += u, u === ")") {
|
|
12
|
+
o = !0;
|
|
13
|
+
break;
|
|
14
|
+
}
|
|
15
|
+
continue;
|
|
16
|
+
}
|
|
17
|
+
if (u === " ") {
|
|
18
|
+
r[s - 1] !== "," && t !== "," && t !== ",(" && (t = "", i = !1);
|
|
19
|
+
continue;
|
|
20
|
+
}
|
|
21
|
+
n += u, t += u;
|
|
22
|
+
}
|
|
21
23
|
}
|
|
24
|
+
if (!o)
|
|
25
|
+
throw new f("Unable to normalize signature.");
|
|
26
|
+
return n;
|
|
22
27
|
}
|
|
23
|
-
function
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
class i extends c {
|
|
42
|
-
constructor({ address: t, cause: s }) {
|
|
43
|
-
super(`Address "${t}" is invalid.`, {
|
|
44
|
-
cause: s
|
|
45
|
-
}), Object.defineProperty(this, "name", {
|
|
46
|
-
enumerable: !0,
|
|
47
|
-
configurable: !0,
|
|
48
|
-
writable: !0,
|
|
49
|
-
value: "Address.InvalidAddressError"
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
class h extends c {
|
|
54
|
-
constructor() {
|
|
55
|
-
super("Address is not a 20 byte (40 hexadecimal character) value."), Object.defineProperty(this, "name", {
|
|
56
|
-
enumerable: !0,
|
|
57
|
-
configurable: !0,
|
|
58
|
-
writable: !0,
|
|
59
|
-
value: "Address.InvalidInputError"
|
|
60
|
-
});
|
|
28
|
+
function l(r, i) {
|
|
29
|
+
const t = typeof r, e = i.type;
|
|
30
|
+
switch (e) {
|
|
31
|
+
case "address":
|
|
32
|
+
return c(r, { strict: !1 });
|
|
33
|
+
case "bool":
|
|
34
|
+
return t === "boolean";
|
|
35
|
+
case "function":
|
|
36
|
+
return t === "string";
|
|
37
|
+
case "string":
|
|
38
|
+
return t === "string";
|
|
39
|
+
default:
|
|
40
|
+
return e === "tuple" && "components" in i ? Object.values(i.components).every((n, o) => l(Object.values(r)[o], n)) : /^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(e) ? t === "number" || t === "bigint" : /^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(e) ? t === "string" || r instanceof Uint8Array : /[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(e) ? Array.isArray(r) && r.every((n) => l(n, {
|
|
41
|
+
...i,
|
|
42
|
+
// Pop off `[]` or `[M]` from end of type
|
|
43
|
+
type: e.replace(/(\[[0-9]{0,}\])$/, "")
|
|
44
|
+
})) : !1;
|
|
61
45
|
}
|
|
62
46
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
47
|
+
function a(r, i, t) {
|
|
48
|
+
for (const e in r) {
|
|
49
|
+
const n = r[e], o = i[e];
|
|
50
|
+
if (n.type === "tuple" && o.type === "tuple" && "components" in n && "components" in o)
|
|
51
|
+
return a(n.components, o.components, t[e]);
|
|
52
|
+
const s = [n.type, o.type];
|
|
53
|
+
if (s.includes("address") && s.includes("bytes20") ? !0 : s.includes("address") && s.includes("string") ? c(t[e], {
|
|
54
|
+
strict: !1
|
|
55
|
+
}) : s.includes("address") && s.includes("bytes") ? c(t[e], {
|
|
56
|
+
strict: !1
|
|
57
|
+
}) : !1)
|
|
58
|
+
return s;
|
|
71
59
|
}
|
|
72
60
|
}
|
|
73
61
|
export {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
u as assert,
|
|
78
|
-
m as checksum,
|
|
79
|
-
k as validate
|
|
62
|
+
a as getAmbiguousTypes,
|
|
63
|
+
l as isArgOfType,
|
|
64
|
+
y as normalizeSignature
|
|
80
65
|
};
|