@aztec/foundation 0.0.1-commit.fce3e4f → 0.0.1-commit.fffb133c
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/dest/array/index.d.ts +2 -1
- package/dest/array/index.d.ts.map +1 -1
- package/dest/array/index.js +1 -0
- package/dest/array/sorted_array.d.ts +10 -0
- package/dest/array/sorted_array.d.ts.map +1 -0
- package/dest/array/sorted_array.js +106 -0
- package/dest/branded-types/block_number.d.ts +56 -0
- package/dest/branded-types/block_number.d.ts.map +1 -0
- package/dest/branded-types/block_number.js +78 -0
- package/dest/branded-types/checkpoint_number.d.ts +54 -0
- package/dest/branded-types/checkpoint_number.d.ts.map +1 -0
- package/dest/branded-types/checkpoint_number.js +77 -0
- package/dest/branded-types/index.d.ts +4 -1
- package/dest/branded-types/index.d.ts.map +1 -1
- package/dest/branded-types/index.js +3 -0
- package/dest/branded-types/index_within_checkpoint.d.ts +42 -0
- package/dest/branded-types/index_within_checkpoint.d.ts.map +1 -0
- package/dest/branded-types/index_within_checkpoint.js +59 -0
- package/dest/buffer/buffer16.d.ts +5 -2
- package/dest/buffer/buffer16.d.ts.map +1 -1
- package/dest/buffer/buffer16.js +4 -2
- package/dest/buffer/buffer32.d.ts +5 -2
- package/dest/buffer/buffer32.d.ts.map +1 -1
- package/dest/buffer/buffer32.js +4 -2
- package/dest/collection/array.d.ts +6 -1
- package/dest/collection/array.d.ts.map +1 -1
- package/dest/collection/array.js +27 -0
- package/dest/config/env_var.d.ts +2 -2
- package/dest/config/env_var.d.ts.map +1 -1
- package/dest/config/index.d.ts +15 -4
- package/dest/config/index.d.ts.map +1 -1
- package/dest/config/index.js +32 -9
- package/dest/config/network_config.d.ts +13 -1
- package/dest/config/network_config.d.ts.map +1 -1
- package/dest/config/network_config.js +3 -1
- package/dest/config/parse-env.d.ts +3 -0
- package/dest/config/parse-env.d.ts.map +1 -0
- package/dest/config/parse-env.js +7 -0
- package/dest/config/secret_value.js +3 -1
- package/dest/crypto/bls/bn254_keystore.js +1 -1
- package/dest/crypto/bls/index.js +1 -1
- package/dest/crypto/bn254/index.d.ts +35 -51
- package/dest/crypto/bn254/index.d.ts.map +1 -1
- package/dest/crypto/bn254/index.js +51 -140
- package/dest/crypto/ecdsa/signature.d.ts +11 -2
- package/dest/crypto/ecdsa/signature.d.ts.map +1 -1
- package/dest/crypto/ecdsa/signature.js +2 -2
- package/dest/crypto/grumpkin/index.d.ts +4 -2
- package/dest/crypto/grumpkin/index.d.ts.map +1 -1
- package/dest/crypto/grumpkin/index.js +2 -1
- package/dest/crypto/keys/index.d.ts +2 -2
- package/dest/crypto/keys/index.d.ts.map +1 -1
- package/dest/crypto/keys/index.js +1 -1
- package/dest/crypto/pedersen/pedersen.wasm.d.ts +2 -2
- package/dest/crypto/pedersen/pedersen.wasm.d.ts.map +1 -1
- package/dest/crypto/pedersen/pedersen.wasm.js +1 -1
- package/dest/crypto/poseidon/index.d.ts +2 -3
- package/dest/crypto/poseidon/index.d.ts.map +1 -1
- package/dest/crypto/poseidon/index.js +1 -10
- package/dest/crypto/random/randomness_singleton.d.ts +2 -2
- package/dest/crypto/random/randomness_singleton.d.ts.map +1 -1
- package/dest/crypto/random/randomness_singleton.js +3 -3
- package/dest/crypto/schnorr/index.d.ts +3 -2
- package/dest/crypto/schnorr/index.d.ts.map +1 -1
- package/dest/crypto/schnorr/index.js +1 -1
- package/dest/crypto/schnorr/signature.d.ts +2 -2
- package/dest/crypto/schnorr/signature.d.ts.map +1 -1
- package/dest/crypto/schnorr/signature.js +2 -2
- package/dest/crypto/sha256/index.d.ts +2 -2
- package/dest/crypto/sha256/index.d.ts.map +1 -1
- package/dest/crypto/sha256/index.js +1 -1
- package/dest/crypto/sha512/index.d.ts +2 -2
- package/dest/crypto/sha512/index.d.ts.map +1 -1
- package/dest/crypto/sha512/index.js +1 -1
- package/dest/crypto/signature/index.d.ts +2 -2
- package/dest/crypto/signature/index.d.ts.map +1 -1
- package/dest/crypto/sync/pedersen/index.d.ts +2 -2
- package/dest/crypto/sync/pedersen/index.d.ts.map +1 -1
- package/dest/crypto/sync/pedersen/index.js +1 -1
- package/dest/crypto/sync/poseidon/index.d.ts +2 -3
- package/dest/crypto/sync/poseidon/index.d.ts.map +1 -1
- package/dest/crypto/sync/poseidon/index.js +1 -9
- package/dest/{fields/bls12_fields.d.ts → curves/bls12/field.d.ts} +3 -3
- package/dest/curves/bls12/field.d.ts.map +1 -0
- package/dest/{fields/bls12_fields.js → curves/bls12/field.js} +12 -9
- package/dest/curves/bls12/index.d.ts +3 -0
- package/dest/curves/bls12/index.d.ts.map +1 -0
- package/dest/curves/bls12/index.js +2 -0
- package/dest/{fields/bls12_point.d.ts → curves/bls12/point.d.ts} +13 -4
- package/dest/curves/bls12/point.d.ts.map +1 -0
- package/dest/{fields/bls12_point.js → curves/bls12/point.js} +10 -8
- package/dest/{fields/fields.d.ts → curves/bn254/field.d.ts} +7 -15
- package/dest/curves/bn254/field.d.ts.map +1 -0
- package/dest/{fields/fields.js → curves/bn254/field.js} +35 -49
- package/dest/curves/bn254/index.d.ts +3 -0
- package/dest/curves/bn254/index.d.ts.map +1 -0
- package/dest/curves/bn254/index.js +2 -0
- package/dest/curves/bn254/point.d.ts +54 -0
- package/dest/curves/bn254/point.d.ts.map +1 -0
- package/dest/curves/bn254/point.js +143 -0
- package/dest/curves/grumpkin/index.d.ts +10 -0
- package/dest/curves/grumpkin/index.d.ts.map +1 -0
- package/dest/curves/grumpkin/index.js +3 -0
- package/dest/{fields → curves/grumpkin}/point.d.ts +13 -4
- package/dest/curves/grumpkin/point.d.ts.map +1 -0
- package/dest/{fields → curves/grumpkin}/point.js +7 -7
- package/dest/error/index.d.ts +4 -4
- package/dest/error/index.d.ts.map +1 -1
- package/dest/eth-address/index.d.ts +3 -2
- package/dest/eth-address/index.d.ts.map +1 -1
- package/dest/eth-address/index.js +10 -3
- package/dest/eth-signature/eth_signature.d.ts +4 -1
- package/dest/eth-signature/eth_signature.d.ts.map +1 -1
- package/dest/iterator/filter.d.ts +3 -0
- package/dest/iterator/filter.d.ts.map +1 -0
- package/dest/iterator/filter.js +7 -0
- package/dest/iterator/index.d.ts +2 -0
- package/dest/iterator/index.d.ts.map +1 -0
- package/dest/iterator/index.js +1 -0
- package/dest/json-rpc/client/undici.d.ts +1 -1
- package/dest/json-rpc/client/undici.d.ts.map +1 -1
- package/dest/json-rpc/client/undici.js +21 -4
- package/dest/json-rpc/fixtures/class_a.d.ts +3 -3
- package/dest/json-rpc/fixtures/class_a.d.ts.map +1 -1
- package/dest/json-rpc/fixtures/class_b.d.ts +3 -3
- package/dest/json-rpc/fixtures/class_b.d.ts.map +1 -1
- package/dest/json-rpc/server/safe_json_rpc_server.js +1 -1
- package/dest/log/pino-logger.d.ts +1 -1
- package/dest/log/pino-logger.d.ts.map +1 -1
- package/dest/log/pino-logger.js +1 -1
- package/dest/retry/index.d.ts +11 -1
- package/dest/retry/index.d.ts.map +1 -1
- package/dest/retry/index.js +11 -0
- package/dest/schemas/schemas.d.ts +7 -3
- package/dest/schemas/schemas.d.ts.map +1 -1
- package/dest/schemas/schemas.js +9 -3
- package/dest/schemas/types.d.ts +31 -1
- package/dest/schemas/types.d.ts.map +1 -1
- package/dest/schemas/types.js +25 -1
- package/dest/serialize/buffer_reader.d.ts +7 -4
- package/dest/serialize/buffer_reader.d.ts.map +1 -1
- package/dest/serialize/buffer_reader.js +13 -4
- package/dest/serialize/field_reader.d.ts +2 -2
- package/dest/serialize/field_reader.d.ts.map +1 -1
- package/dest/serialize/field_reader.js +1 -1
- package/dest/serialize/free_funcs.d.ts +2 -2
- package/dest/serialize/free_funcs.d.ts.map +1 -1
- package/dest/serialize/free_funcs.js +1 -1
- package/dest/serialize/serialize.d.ts +2 -2
- package/dest/serialize/serialize.d.ts.map +1 -1
- package/dest/serialize/serialize.js +1 -1
- package/dest/sleep/index.d.ts +3 -1
- package/dest/sleep/index.d.ts.map +1 -1
- package/dest/sleep/index.js +4 -0
- package/dest/timer/date.d.ts +2 -1
- package/dest/timer/date.d.ts.map +1 -1
- package/dest/timer/date.js +3 -0
- package/dest/trees/balanced_merkle_tree_root.d.ts +17 -0
- package/dest/trees/balanced_merkle_tree_root.d.ts.map +1 -0
- package/dest/trees/{balanced_merkle_tree.js → balanced_merkle_tree_root.js} +2 -15
- package/dest/trees/hasher.d.ts +3 -1
- package/dest/trees/hasher.d.ts.map +1 -1
- package/dest/trees/hasher.js +10 -5
- package/dest/trees/index.d.ts +4 -4
- package/dest/trees/index.d.ts.map +1 -1
- package/dest/trees/index.js +3 -3
- package/dest/trees/indexed_merkle_tree.js +1 -1
- package/dest/trees/membership_witness.d.ts +12 -2
- package/dest/trees/membership_witness.d.ts.map +1 -1
- package/dest/trees/membership_witness.js +10 -1
- package/dest/trees/merkle_tree_calculator.d.ts +1 -1
- package/dest/trees/merkle_tree_calculator.d.ts.map +1 -1
- package/dest/trees/merkle_tree_calculator.js +2 -2
- package/dest/trees/sibling_path.d.ts +3 -2
- package/dest/trees/sibling_path.d.ts.map +1 -1
- package/dest/trees/sibling_path.js +3 -3
- package/dest/trees/unbalanced_merkle_tree_calculator.d.ts +2 -3
- package/dest/trees/unbalanced_merkle_tree_calculator.d.ts.map +1 -1
- package/dest/trees/unbalanced_merkle_tree_calculator.js +1 -5
- package/dest/trees/{unbalanced_merkle_tree.d.ts → unbalanced_merkle_tree_root.d.ts} +3 -5
- package/dest/trees/unbalanced_merkle_tree_root.d.ts.map +1 -0
- package/dest/trees/{unbalanced_merkle_tree.js → unbalanced_merkle_tree_root.js} +11 -49
- package/dest/trees/unbalanced_tree_store.d.ts +5 -1
- package/dest/trees/unbalanced_tree_store.d.ts.map +1 -1
- package/dest/trees/unbalanced_tree_store.js +49 -1
- package/dest/types/index.d.ts +4 -2
- package/dest/types/index.d.ts.map +1 -1
- package/dest/types/index.js +3 -0
- package/package.json +27 -9
- package/src/array/index.ts +1 -0
- package/src/array/sorted_array.ts +133 -0
- package/src/branded-types/block_number.ts +117 -0
- package/src/branded-types/checkpoint_number.ts +115 -0
- package/src/branded-types/index.ts +3 -0
- package/src/branded-types/index_within_checkpoint.ts +88 -0
- package/src/buffer/buffer16.ts +2 -2
- package/src/buffer/buffer32.ts +2 -2
- package/src/collection/array.ts +31 -0
- package/src/config/env_var.ts +33 -12
- package/src/config/index.ts +39 -6
- package/src/config/network_config.ts +2 -0
- package/src/config/parse-env.ts +4 -0
- package/src/crypto/bls/bn254_keystore.ts +1 -1
- package/src/crypto/bls/index.ts +1 -1
- package/src/crypto/bn254/index.ts +50 -159
- package/src/crypto/ecdsa/signature.ts +2 -2
- package/src/crypto/grumpkin/index.ts +3 -1
- package/src/crypto/keys/index.ts +1 -1
- package/src/crypto/pedersen/pedersen.wasm.ts +1 -1
- package/src/crypto/poseidon/index.ts +1 -11
- package/src/crypto/random/randomness_singleton.ts +2 -4
- package/src/crypto/schnorr/index.ts +2 -1
- package/src/crypto/schnorr/signature.ts +2 -2
- package/src/crypto/sha256/index.ts +1 -1
- package/src/crypto/sha512/index.ts +1 -1
- package/src/crypto/signature/index.ts +1 -1
- package/src/crypto/sync/pedersen/index.ts +1 -1
- package/src/crypto/sync/poseidon/index.ts +1 -10
- package/src/{fields/bls12_fields.ts → curves/bls12/field.ts} +6 -6
- package/src/curves/bls12/index.ts +2 -0
- package/src/{fields/bls12_point.ts → curves/bls12/point.ts} +7 -7
- package/src/{fields/fields.ts → curves/bn254/field.ts} +33 -56
- package/src/curves/bn254/index.ts +2 -0
- package/src/curves/bn254/point.ts +170 -0
- package/src/curves/grumpkin/index.ts +11 -0
- package/src/{fields → curves/grumpkin}/point.ts +7 -7
- package/src/eth-address/index.ts +8 -2
- package/src/iterator/filter.ts +11 -0
- package/src/iterator/index.ts +1 -0
- package/src/json-rpc/client/undici.ts +21 -3
- package/src/json-rpc/server/safe_json_rpc_server.ts +1 -1
- package/src/log/pino-logger.ts +2 -1
- package/src/retry/index.ts +18 -0
- package/src/schemas/schemas.ts +14 -3
- package/src/schemas/types.ts +33 -0
- package/src/serialize/buffer_reader.ts +21 -9
- package/src/serialize/field_reader.ts +1 -1
- package/src/serialize/free_funcs.ts +1 -1
- package/src/serialize/serialize.ts +1 -1
- package/src/sleep/index.ts +6 -0
- package/src/timer/date.ts +4 -0
- package/src/trees/{balanced_merkle_tree.ts → balanced_merkle_tree_root.ts} +2 -16
- package/src/trees/hasher.ts +9 -0
- package/src/trees/index.ts +3 -3
- package/src/trees/indexed_merkle_tree.ts +1 -1
- package/src/trees/membership_witness.ts +9 -1
- package/src/trees/merkle_tree_calculator.ts +2 -2
- package/src/trees/sibling_path.ts +3 -3
- package/src/trees/unbalanced_merkle_tree_calculator.ts +1 -12
- package/src/trees/{unbalanced_merkle_tree.ts → unbalanced_merkle_tree_root.ts} +17 -61
- package/src/trees/unbalanced_tree_store.ts +57 -2
- package/src/types/index.ts +6 -1
- package/dest/crypto/bn254/bn254_utils.d.ts +0 -39
- package/dest/crypto/bn254/bn254_utils.d.ts.map +0 -1
- package/dest/crypto/bn254/bn254_utils.js +0 -56
- package/dest/crypto/index.d.ts +0 -17
- package/dest/crypto/index.d.ts.map +0 -1
- package/dest/crypto/index.js +0 -16
- package/dest/fields/bls12_fields.d.ts.map +0 -1
- package/dest/fields/bls12_point.d.ts.map +0 -1
- package/dest/fields/coordinate.d.ts +0 -63
- package/dest/fields/coordinate.d.ts.map +0 -1
- package/dest/fields/coordinate.js +0 -96
- package/dest/fields/fields.d.ts.map +0 -1
- package/dest/fields/index.d.ts +0 -6
- package/dest/fields/index.d.ts.map +0 -1
- package/dest/fields/index.js +0 -5
- package/dest/fields/point.d.ts.map +0 -1
- package/dest/index.d.ts +0 -31
- package/dest/index.d.ts.map +0 -1
- package/dest/index.js +0 -31
- package/dest/json-rpc/server/telemetry.d.ts +0 -2
- package/dest/json-rpc/server/telemetry.d.ts.map +0 -1
- package/dest/json-rpc/server/telemetry.js +0 -0
- package/dest/trees/balanced_merkle_tree.d.ts +0 -22
- package/dest/trees/balanced_merkle_tree.d.ts.map +0 -1
- package/dest/trees/unbalanced_merkle_tree.d.ts.map +0 -1
- package/src/crypto/bn254/bn254_utils.ts +0 -64
- package/src/crypto/index.ts +0 -16
- package/src/fields/coordinate.ts +0 -104
- package/src/fields/index.ts +0 -5
- package/src/index.ts +0 -31
- package/src/json-rpc/server/telemetry.ts +0 -0
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { BN254_G1_GENERATOR, BN254_G2_GENERATOR, BarretenbergSync } from '@aztec/bb.js';
|
|
2
|
+
import { Fq } from './field.js';
|
|
3
|
+
/**
|
|
4
|
+
* BN254 G1 point using foundation field classes.
|
|
5
|
+
* Represents a point on the BN254 elliptic curve in affine coordinates.
|
|
6
|
+
*/ export class Bn254G1Point {
|
|
7
|
+
x;
|
|
8
|
+
y;
|
|
9
|
+
constructor(x, y){
|
|
10
|
+
this.x = x;
|
|
11
|
+
this.y = y;
|
|
12
|
+
}
|
|
13
|
+
toBbApiPoint() {
|
|
14
|
+
return {
|
|
15
|
+
x: this.x.toBuffer(),
|
|
16
|
+
y: this.y.toBuffer()
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
static fromBbApiPoint(point) {
|
|
20
|
+
return new Bn254G1Point(Fq.fromBuffer(Buffer.from(point.x)), Fq.fromBuffer(Buffer.from(point.y)));
|
|
21
|
+
}
|
|
22
|
+
async isOnCurve() {
|
|
23
|
+
await BarretenbergSync.initSingleton();
|
|
24
|
+
const api = BarretenbergSync.getSingleton();
|
|
25
|
+
const apiPoint = this.toBbApiPoint();
|
|
26
|
+
const response = api.bn254G1IsOnCurve({
|
|
27
|
+
point: apiPoint
|
|
28
|
+
});
|
|
29
|
+
return response.isOnCurve;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Get the generator point for BN254 G1, or perform scalar multiplication.
|
|
33
|
+
* When called without arguments, returns the base generator point.
|
|
34
|
+
* When called with a scalar, returns scalar * generator (useful for public key derivation).
|
|
35
|
+
*/ static async generator(scalar) {
|
|
36
|
+
if (!scalar) {
|
|
37
|
+
return new Bn254G1Point(Fq.fromBuffer(Buffer.from(BN254_G1_GENERATOR.x)), Fq.fromBuffer(Buffer.from(BN254_G1_GENERATOR.y)));
|
|
38
|
+
}
|
|
39
|
+
await BarretenbergSync.initSingleton();
|
|
40
|
+
const api = BarretenbergSync.getSingleton();
|
|
41
|
+
const response = api.bn254G1Mul({
|
|
42
|
+
point: BN254_G1_GENERATOR,
|
|
43
|
+
scalar: scalar.toBuffer()
|
|
44
|
+
});
|
|
45
|
+
return Bn254G1Point.fromBbApiPoint(response.point);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Decompress a BN254 G1 point from compressed form (32 bytes).
|
|
49
|
+
* The compressed format encodes the x-coordinate and the sign bit of the y-coordinate
|
|
50
|
+
* in the most significant bit.
|
|
51
|
+
*/ static async fromCompressed(compressed) {
|
|
52
|
+
if (compressed.length !== 32) {
|
|
53
|
+
throw new Error('Invalid compressed point length');
|
|
54
|
+
}
|
|
55
|
+
await BarretenbergSync.initSingleton();
|
|
56
|
+
const api = BarretenbergSync.getSingleton();
|
|
57
|
+
const response = api.bn254G1FromCompressed({
|
|
58
|
+
compressed: new Uint8Array(compressed)
|
|
59
|
+
});
|
|
60
|
+
return Bn254G1Point.fromBbApiPoint(response.point);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Compress this BN254 G1 point to 32 bytes.
|
|
64
|
+
* The compressed format encodes the x-coordinate and the sign bit of the y-coordinate
|
|
65
|
+
* in the most significant bit (bit 255).
|
|
66
|
+
*/ compress() {
|
|
67
|
+
const xBytes = this.x.toBuffer();
|
|
68
|
+
// Get the least significant bit of y to determine the sign
|
|
69
|
+
const yLsb = this.y.toBigInt() & 1n;
|
|
70
|
+
// If y is odd, set the most significant bit (bit 255) of the output
|
|
71
|
+
if (yLsb === 1n) {
|
|
72
|
+
xBytes[0] |= 0x80;
|
|
73
|
+
}
|
|
74
|
+
return xBytes;
|
|
75
|
+
}
|
|
76
|
+
equals(other) {
|
|
77
|
+
return this.x.equals(other.x) && this.y.equals(other.y);
|
|
78
|
+
}
|
|
79
|
+
toString() {
|
|
80
|
+
return `Bn254G1Point(x: ${this.x.toString()}, y: ${this.y.toString()})`;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* BN254 G2 point using foundation field classes.
|
|
85
|
+
* Represents a point on the BN254 G2 curve (twist curve) in affine coordinates.
|
|
86
|
+
* G2 points use extension field coordinates (Fq2).
|
|
87
|
+
*/ export class Bn254G2Point {
|
|
88
|
+
x;
|
|
89
|
+
y;
|
|
90
|
+
constructor(x, y){
|
|
91
|
+
this.x = x;
|
|
92
|
+
this.y = y;
|
|
93
|
+
}
|
|
94
|
+
toBbApiPoint() {
|
|
95
|
+
return {
|
|
96
|
+
x: [
|
|
97
|
+
this.x[0].toBuffer(),
|
|
98
|
+
this.x[1].toBuffer()
|
|
99
|
+
],
|
|
100
|
+
y: [
|
|
101
|
+
this.y[0].toBuffer(),
|
|
102
|
+
this.y[1].toBuffer()
|
|
103
|
+
]
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
static fromBbApiPoint(point) {
|
|
107
|
+
return new Bn254G2Point([
|
|
108
|
+
Fq.fromBuffer(Buffer.from(point.x[0])),
|
|
109
|
+
Fq.fromBuffer(Buffer.from(point.x[1]))
|
|
110
|
+
], [
|
|
111
|
+
Fq.fromBuffer(Buffer.from(point.y[0])),
|
|
112
|
+
Fq.fromBuffer(Buffer.from(point.y[1]))
|
|
113
|
+
]);
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Get the generator point for BN254 G2, or perform scalar multiplication.
|
|
117
|
+
* When called without arguments, returns the base generator point.
|
|
118
|
+
* When called with a scalar, returns scalar * generator.
|
|
119
|
+
*/ static async generator(scalar) {
|
|
120
|
+
if (!scalar) {
|
|
121
|
+
return new Bn254G2Point([
|
|
122
|
+
Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.x[0])),
|
|
123
|
+
Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.x[1]))
|
|
124
|
+
], [
|
|
125
|
+
Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.y[0])),
|
|
126
|
+
Fq.fromBuffer(Buffer.from(BN254_G2_GENERATOR.y[1]))
|
|
127
|
+
]);
|
|
128
|
+
}
|
|
129
|
+
await BarretenbergSync.initSingleton();
|
|
130
|
+
const api = BarretenbergSync.getSingleton();
|
|
131
|
+
const response = api.bn254G2Mul({
|
|
132
|
+
point: BN254_G2_GENERATOR,
|
|
133
|
+
scalar: scalar.toBuffer()
|
|
134
|
+
});
|
|
135
|
+
return Bn254G2Point.fromBbApiPoint(response.point);
|
|
136
|
+
}
|
|
137
|
+
equals(other) {
|
|
138
|
+
return this.x[0].equals(other.x[0]) && this.x[1].equals(other.x[1]) && this.y[0].equals(other.y[0]) && this.y[1].equals(other.y[1]);
|
|
139
|
+
}
|
|
140
|
+
toString() {
|
|
141
|
+
return `Bn254G2Point(x: (${this.x[0].toString()}, ${this.x[1].toString()}), y: (${this.y[0].toString()}, ${this.y[1].toString()}))`;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Fq } from '../bn254/field.js';
|
|
2
|
+
export * from './point.js';
|
|
3
|
+
/**
|
|
4
|
+
* GrumpkinScalar is an Fq.
|
|
5
|
+
* @remarks Called GrumpkinScalar because it is used to represent elements in Grumpkin's scalar field as defined in
|
|
6
|
+
* the Aztec Protocol Specs.
|
|
7
|
+
*/
|
|
8
|
+
export type GrumpkinScalar = Fq;
|
|
9
|
+
export declare const GrumpkinScalar: typeof Fq;
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jdXJ2ZXMvZ3J1bXBraW4vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXZDLGNBQWMsWUFBWSxDQUFDO0FBRTNCOzs7O0dBSUc7QUFDSCxNQUFNLE1BQU0sY0FBYyxHQUFHLEVBQUUsQ0FBQztBQUNoQyxlQUFPLE1BQU0sY0FBYyxXQUFLLENBQUMifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/curves/grumpkin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAEvC,cAAc,YAAY,CAAC;AAE3B;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,EAAE,CAAC;AAChC,eAAO,MAAM,cAAc,WAAK,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BufferReader, FieldReader } from '
|
|
2
|
-
import { Fr } from '
|
|
1
|
+
import { BufferReader, FieldReader } from '../../serialize/index.js';
|
|
2
|
+
import { Fr } from '../bn254/field.js';
|
|
3
3
|
/**
|
|
4
4
|
* Represents a Point on an elliptic curve with x and y coordinates.
|
|
5
5
|
* The Point class provides methods for creating instances from different input types,
|
|
@@ -7,14 +7,23 @@ import { Fr } from './fields.js';
|
|
|
7
7
|
* TODO(#7386): Clean up this class.
|
|
8
8
|
*/
|
|
9
9
|
export declare class Point {
|
|
10
|
+
/**
|
|
11
|
+
* The point's x coordinate
|
|
12
|
+
*/
|
|
10
13
|
readonly x: Fr;
|
|
14
|
+
/**
|
|
15
|
+
* The point's y coordinate
|
|
16
|
+
*/
|
|
11
17
|
readonly y: Fr;
|
|
18
|
+
/**
|
|
19
|
+
* Whether the point is at infinity
|
|
20
|
+
*/
|
|
12
21
|
readonly isInfinite: boolean;
|
|
13
22
|
static ZERO: Point;
|
|
14
23
|
static SIZE_IN_BYTES: number;
|
|
15
24
|
static COMPRESSED_SIZE_IN_BYTES: number;
|
|
16
25
|
/** Used to differentiate this class from AztecAddress */
|
|
17
|
-
readonly kind
|
|
26
|
+
readonly kind = "point";
|
|
18
27
|
constructor(
|
|
19
28
|
/**
|
|
20
29
|
* The point's x coordinate
|
|
@@ -170,4 +179,4 @@ export declare class Point {
|
|
|
170
179
|
export declare class NotOnCurveError extends Error {
|
|
171
180
|
constructor(x: Fr);
|
|
172
181
|
}
|
|
173
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jdXJ2ZXMvZ3J1bXBraW4vcG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXFCLE1BQU0sMEJBQTBCLENBQUM7QUFFeEYsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXZDOzs7OztHQUtHO0FBQ0gscUJBQWEsS0FBSztJQVNkOztPQUVHO2FBQ2EsQ0FBQyxFQUFFLEVBQUU7SUFDckI7O09BRUc7YUFDYSxDQUFDLEVBQUUsRUFBRTtJQUNyQjs7T0FFRzthQUNhLFVBQVUsRUFBRSxPQUFPO0lBbkJyQyxNQUFNLENBQUMsSUFBSSxRQUFzQztJQUNqRCxNQUFNLENBQUMsYUFBYSxTQUF3QjtJQUM1QyxNQUFNLENBQUMsd0JBQXdCLFNBQW9CO0lBRW5ELHlEQUF5RDtJQUN6RCxTQUFnQixJQUFJLFdBQVc7SUFFL0I7SUFDRTs7T0FFRztJQUNhLENBQUMsRUFBRSxFQUFFO0lBQ3JCOztPQUVHO0lBQ2EsQ0FBQyxFQUFFLEVBQUU7SUFDckI7O09BRUc7SUFDYSxVQUFVLEVBQUUsT0FBTyxFQUdwQztJQUVELE1BQU0sa0JBRUw7SUFFRCxNQUFNLEtBQUssTUFBTSw4Q0FHaEI7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLEtBQUssQ0FRdEM7SUFFRDs7OztPQUlHO0lBQ0gsT0FBYSxNQUFNLG1CQVlsQjtJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLFNBRzlDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FRekU7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxTQUU1QjtJQUVEOzs7T0FHRztJQUNILFFBQVEsU0FFUDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsU0FHM0M7SUFFRDs7Ozs7Ozs7T0FRRztJQUNILE9BQWEsWUFBWSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sa0JBYzdDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FPdkM7SUFFRDs7OztPQUlHO0lBQ0gsVUFBVSxJQUFJLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUUxQjtJQUVEOzs7T0FHRztJQUNILFNBQVM7Ozs7TUFNUjtJQUVEOzs7Ozs7Ozs7T0FTRztJQUNILFFBQVEsNEJBU1A7SUFFRDs7O09BR0c7SUFDSCxrQkFBa0IsNEJBV2pCO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsUUFBUSxrQkFFUDtJQUVEOzs7Ozs7O09BT0c7SUFDSCxhQUFhLFdBR1o7SUFFRCxZQUFZOzs7O01BSVg7SUFHRCxtQkFBbUI7Ozs7OztNQUVsQjtJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxXQUVoQjtJQUVELE1BQU0sWUFFTDtJQUVELElBQUksZ0JBRUg7SUFFRDs7O09BR0c7SUFDSCxJQUFXLEdBQUcsWUFFYjtJQUVELFlBQVksWUFXWDtDQUNGO0FBRUQscUJBQWEsZUFBZ0IsU0FBUSxLQUFLO0lBQ3hDLFlBQVksQ0FBQyxFQUFFLEVBQUUsRUFHaEI7Q0FDRiJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"point.d.ts","sourceRoot":"","sources":["../../../src/curves/grumpkin/point.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,0BAA0B,CAAC;AAExF,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAEvC;;;;;GAKG;AACH,qBAAa,KAAK;IASd;;OAEG;aACa,CAAC,EAAE,EAAE;IACrB;;OAEG;aACa,CAAC,EAAE,EAAE;IACrB;;OAEG;aACa,UAAU,EAAE,OAAO;IAnBrC,MAAM,CAAC,IAAI,QAAsC;IACjD,MAAM,CAAC,aAAa,SAAwB;IAC5C,MAAM,CAAC,wBAAwB,SAAoB;IAEnD,yDAAyD;IACzD,SAAgB,IAAI,WAAW;IAE/B;IACE;;OAEG;IACa,CAAC,EAAE,EAAE;IACrB;;OAEG;IACa,CAAC,EAAE,EAAE;IACrB;;OAEG;IACa,UAAU,EAAE,OAAO,EAGpC;IAED,MAAM,kBAEL;IAED,MAAM,KAAK,MAAM,8CAGhB;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,KAAK,CAQtC;IAED;;;;OAIG;IACH,OAAa,MAAM,mBAYlB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,SAG9C;IAED;;;;;;OAMG;IACH,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,CAQzE;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,SAE5B;IAED;;;OAGG;IACH,QAAQ,SAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,SAG3C;IAED;;;;;;;;OAQG;IACH,OAAa,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,kBAc7C;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,CAOvC;IAED;;;;OAIG;IACH,UAAU,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAE1B;IAED;;;OAGG;IACH,SAAS;;;;MAMR;IAED;;;;;;;;;OASG;IACH,QAAQ,4BASP;IAED;;;OAGG;IACH,kBAAkB,4BAWjB;IAED;;;;;;OAMG;IACH,QAAQ,kBAEP;IAED;;;;;;;OAOG;IACH,aAAa,WAGZ;IAED,YAAY;;;;MAIX;IAGD,mBAAmB;;;;;;MAElB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,GAAG,EAAE,KAAK,WAEhB;IAED,MAAM,YAEL;IAED,IAAI,gBAEH;IAED;;;OAGG;IACH,IAAW,GAAG,YAEb;IAED,YAAY,YAWX;CACF;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACxC,YAAY,CAAC,EAAE,EAAE,EAGhB;CACF"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { toBigIntBE } from '
|
|
2
|
-
import { poseidon2Hash } from '
|
|
3
|
-
import { randomBoolean } from '
|
|
4
|
-
import { hexSchemaFor } from '
|
|
5
|
-
import { BufferReader, FieldReader, serializeToBuffer } from '
|
|
6
|
-
import { bufferToHex, hexToBuffer } from '
|
|
7
|
-
import { Fr } from '
|
|
1
|
+
import { toBigIntBE } from '../../bigint-buffer/index.js';
|
|
2
|
+
import { poseidon2Hash } from '../../crypto/poseidon/index.js';
|
|
3
|
+
import { randomBoolean } from '../../crypto/random/index.js';
|
|
4
|
+
import { hexSchemaFor } from '../../schemas/utils.js';
|
|
5
|
+
import { BufferReader, FieldReader, serializeToBuffer } from '../../serialize/index.js';
|
|
6
|
+
import { bufferToHex, hexToBuffer } from '../../string/index.js';
|
|
7
|
+
import { Fr } from '../bn254/field.js';
|
|
8
8
|
/**
|
|
9
9
|
* Represents a Point on an elliptic curve with x and y coordinates.
|
|
10
10
|
* The Point class provides methods for creating instances from different input types,
|
package/dest/error/index.d.ts
CHANGED
|
@@ -4,18 +4,18 @@
|
|
|
4
4
|
* can be used to handle cases where a process or task is terminated before completion.
|
|
5
5
|
*/
|
|
6
6
|
export declare class InterruptError extends Error {
|
|
7
|
-
readonly name
|
|
7
|
+
readonly name = "InterruptError";
|
|
8
8
|
}
|
|
9
9
|
/**
|
|
10
10
|
* An error thrown when an action times out.
|
|
11
11
|
*/
|
|
12
12
|
export declare class TimeoutError extends Error {
|
|
13
|
-
readonly name
|
|
13
|
+
readonly name = "TimeoutError";
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
16
16
|
* Represents an error thrown when an operation is aborted.
|
|
17
17
|
*/
|
|
18
18
|
export declare class AbortError extends Error {
|
|
19
|
-
readonly name
|
|
19
|
+
readonly name = "AbortError";
|
|
20
20
|
}
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lcnJvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gscUJBQWEsY0FBZSxTQUFRLEtBQUs7SUFDdkMsU0FBeUIsSUFBSSxvQkFBb0I7Q0FDbEQ7QUFFRDs7R0FFRztBQUNILHFCQUFhLFlBQWEsU0FBUSxLQUFLO0lBQ3JDLFNBQXlCLElBQUksa0JBQWtCO0NBQ2hEO0FBRUQ7O0dBRUc7QUFDSCxxQkFBYSxVQUFXLFNBQVEsS0FBSztJQUNuQyxTQUF5QixJQUFJLGdCQUFnQjtDQUM5QyJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/error/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAyB,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/error/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAyB,IAAI,oBAAoB;CAClD;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,SAAyB,IAAI,kBAAkB;CAChD;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACnC,SAAyB,IAAI,gBAAgB;CAC9C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { inspect } from 'util';
|
|
2
|
-
import { Fr } from '../
|
|
2
|
+
import { Fr } from '../curves/bn254/index.js';
|
|
3
3
|
import { BufferReader, FieldReader } from '../serialize/index.js';
|
|
4
4
|
/**
|
|
5
5
|
* Represents an Ethereum address as a 20-byte buffer and provides various utility methods
|
|
@@ -138,5 +138,6 @@ export declare class EthAddress {
|
|
|
138
138
|
static fromNumber(num: bigint | number): EthAddress;
|
|
139
139
|
toJSON(): `0x${string}`;
|
|
140
140
|
static get schema(): import("zod").ZodType<EthAddress, any, string>;
|
|
141
|
+
static areEqual(a: EthAddress | string, b: EthAddress | string): boolean;
|
|
141
142
|
}
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ldGgtYWRkcmVzcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSS9CLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSWxFOzs7OztHQUtHO0FBQ0gscUJBQWEsVUFBVTtJQU1ULE9BQU8sQ0FBQyxNQUFNO0lBTDFCLGdEQUFnRDtJQUNoRCxPQUFjLGFBQWEsU0FBTTtJQUNqQywwRUFBMEU7SUFDMUUsT0FBYyxJQUFJLGFBQTBEO0lBRTVFLFlBQW9CLE1BQU0sRUFBRSxNQUFNLEVBSWpDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILE9BQWMsVUFBVSxDQUFDLE9BQU8sRUFBRSxNQUFNLGNBS3ZDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILE9BQWMsZUFBZSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsVUFBVSxDQVFsRDtJQUVEOzs7Ozs7T0FNRztJQUNILE9BQWMsTUFBTSxlQUVuQjtJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsT0FBYyxTQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0sV0FVdEM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU0sWUFFWjtJQUVEOzs7Ozs7O09BT0c7SUFDSCxPQUFjLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxNQUFNLFdBY2pEO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0gsT0FBYyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxHQUFHLEtBQUssTUFBTSxFQUFFLENBa0I5RDtJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxHQUFHLEVBQUUsVUFBVSxXQUU1QjtJQUVEOzs7Ozs7T0FNRztJQUNJLFFBQVEsa0JBRWQ7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FFZjtJQUVEOzs7Ozs7T0FNRztJQUNJLGdCQUFnQixrQkFFdEI7SUFFRDs7O09BR0c7SUFDSSxRQUFRLDRCQUVkO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksVUFBVSx3QkFJaEI7SUFFRDs7OztPQUlHO0lBQ0ksT0FBTyxPQUViO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLEVBQUUsR0FBRyxVQUFVLENBRW5DO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxjQUczQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFVBQVUsQ0FHM0Q7SUFFRCw2REFBNkQ7SUFDN0QsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsTUFBTSxHQUFHLE1BQU0sR0FBRyxVQUFVLENBSWxEO0lBRUQsTUFBTSxrQkFFTDtJQUVELE1BQU0sS0FBSyxNQUFNLG1EQUdoQjtJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLFVBQVUsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLFVBQVUsR0FBRyxNQUFNLFdBSTdEO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/eth-address/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAI/B,OAAO,EAAE,EAAE,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/eth-address/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAI/B,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIlE;;;;;GAKG;AACH,qBAAa,UAAU;IAMT,OAAO,CAAC,MAAM;IAL1B,gDAAgD;IAChD,OAAc,aAAa,SAAM;IACjC,0EAA0E;IAC1E,OAAc,IAAI,aAA0D;IAE5E,YAAoB,MAAM,EAAE,MAAM,EAIjC;IAED;;;;;;;OAOG;IACH,OAAc,UAAU,CAAC,OAAO,EAAE,MAAM,cAKvC;IAED;;;;;;;OAOG;IACH,OAAc,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,UAAU,CAQlD;IAED;;;;;;OAMG;IACH,OAAc,MAAM,eAEnB;IAED;;;;;;;;OAQG;IACH,OAAc,SAAS,CAAC,OAAO,EAAE,MAAM,WAUtC;IAED;;;;;OAKG;IACI,MAAM,YAEZ;IAED;;;;;;;OAOG;IACH,OAAc,oBAAoB,CAAC,OAAO,EAAE,MAAM,WAcjD;IAED;;;;;;;;;OASG;IACH,OAAc,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAkB9D;IAED;;;;;;OAMG;IACI,MAAM,CAAC,GAAG,EAAE,UAAU,WAE5B;IAED;;;;;;OAMG;IACI,QAAQ,kBAEd;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,WAEf;IAED;;;;;;OAMG;IACI,gBAAgB,kBAEtB;IAED;;;OAGG;IACI,QAAQ,4BAEd;IAED;;;;;;OAMG;IACI,UAAU,wBAIhB;IAED;;;;OAIG;IACI,OAAO,OAEb;IAED;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,UAAU,CAEnC;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,cAG3C;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,CAG3D;IAED,6DAA6D;IAC7D,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAIlD;IAED,MAAM,kBAEL;IAED,MAAM,KAAK,MAAM,mDAGhB;IAED,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,UAAU,GAAG,MAAM,EAAE,CAAC,EAAE,UAAU,GAAG,MAAM,WAI7D;CACF"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
+
var _computedKey;
|
|
1
2
|
import { inspect } from 'util';
|
|
2
3
|
import { keccak256String } from '../crypto/keccak/index.js';
|
|
3
4
|
import { randomBytes } from '../crypto/random/index.js';
|
|
4
|
-
import { Fr } from '../
|
|
5
|
+
import { Fr } from '../curves/bn254/index.js';
|
|
5
6
|
import { hexSchemaFor } from '../schemas/utils.js';
|
|
6
7
|
import { BufferReader, FieldReader } from '../serialize/index.js';
|
|
7
8
|
import { TypeRegistry } from '../serialize/type_registry.js';
|
|
8
9
|
import { bufferToHex } from '../string/index.js';
|
|
10
|
+
_computedKey = inspect.custom;
|
|
9
11
|
/**
|
|
10
12
|
* Represents an Ethereum address as a 20-byte buffer and provides various utility methods
|
|
11
13
|
* for converting between different representations, generating random addresses, validating
|
|
@@ -148,7 +150,7 @@ import { bufferToHex } from '../string/index.js';
|
|
|
148
150
|
*/ toString() {
|
|
149
151
|
return bufferToHex(this.buffer);
|
|
150
152
|
}
|
|
151
|
-
[
|
|
153
|
+
[_computedKey]() {
|
|
152
154
|
return `EthAddress<${this.toString()}>`;
|
|
153
155
|
}
|
|
154
156
|
/**
|
|
@@ -205,7 +207,7 @@ import { bufferToHex } from '../string/index.js';
|
|
|
205
207
|
}
|
|
206
208
|
/** Converts a number into an address. Useful for testing. */ static fromNumber(num) {
|
|
207
209
|
const buffer = Buffer.alloc(EthAddress.SIZE_IN_BYTES);
|
|
208
|
-
buffer.writeBigUInt64BE(BigInt(num),
|
|
210
|
+
buffer.writeBigUInt64BE(BigInt(num), EthAddress.SIZE_IN_BYTES - 8);
|
|
209
211
|
return new EthAddress(buffer);
|
|
210
212
|
}
|
|
211
213
|
toJSON() {
|
|
@@ -215,6 +217,11 @@ import { bufferToHex } from '../string/index.js';
|
|
|
215
217
|
// Serialization from hex string.
|
|
216
218
|
return hexSchemaFor(EthAddress, EthAddress.isAddress);
|
|
217
219
|
}
|
|
220
|
+
static areEqual(a, b) {
|
|
221
|
+
const addrA = typeof a === 'string' ? EthAddress.fromString(a) : a;
|
|
222
|
+
const addrB = typeof b === 'string' ? EthAddress.fromString(b) : b;
|
|
223
|
+
return addrA.equals(addrB);
|
|
224
|
+
}
|
|
218
225
|
}
|
|
219
226
|
// For deserializing JSON.
|
|
220
227
|
TypeRegistry.register('EthAddress', EthAddress);
|
|
@@ -18,8 +18,11 @@ export type ViemTransactionSignature = {
|
|
|
18
18
|
* Contains a signature split into it's primary components (r,s,v)
|
|
19
19
|
*/
|
|
20
20
|
export declare class Signature {
|
|
21
|
+
/** The r value of the signature */
|
|
21
22
|
readonly r: Buffer32;
|
|
23
|
+
/** The s value of the signature */
|
|
22
24
|
readonly s: Buffer32;
|
|
25
|
+
/** The v value of the signature */
|
|
23
26
|
readonly v: number;
|
|
24
27
|
private size;
|
|
25
28
|
readonly empty: boolean;
|
|
@@ -58,4 +61,4 @@ export declare class Signature {
|
|
|
58
61
|
toJSON(): `0x${string}`;
|
|
59
62
|
static get schema(): z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, `0x${string}`, string>, `0x${string}`, string>, Signature, string>;
|
|
60
63
|
}
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXRoX3NpZ25hdHVyZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2V0aC1zaWduYXR1cmUvZXRoX3NpZ25hdHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSw2QkFBNkIsQ0FBQztBQUU5RSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBSXhCOztHQUVHO0FBQ0gsTUFBTSxNQUFNLGFBQWEsR0FBRztJQUMxQixDQUFDLEVBQUUsS0FBSyxNQUFNLEVBQUUsQ0FBQztJQUNqQixDQUFDLEVBQUUsS0FBSyxNQUFNLEVBQUUsQ0FBQztJQUNqQixDQUFDLEVBQUUsTUFBTSxDQUFDO0NBQ1gsQ0FBQztBQUVGLE1BQU0sTUFBTSx3QkFBd0IsR0FBRztJQUNyQyxDQUFDLEVBQUUsS0FBSyxNQUFNLEVBQUUsQ0FBQztJQUNqQixDQUFDLEVBQUUsS0FBSyxNQUFNLEVBQUUsQ0FBQztJQUNqQixPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztDQUNoQixDQUFDO0FBRUY7O0dBRUc7QUFDSCxxQkFBYSxTQUFTO0lBT2xCLG1DQUFtQzthQUNuQixDQUFDLEVBQUUsUUFBUTtJQUMzQixtQ0FBbUM7YUFDbkIsQ0FBQyxFQUFFLFFBQVE7SUFDM0IsbUNBQW1DO2FBQ25CLENBQUMsRUFBRSxNQUFNO0lBVjNCLE9BQU8sQ0FBQyxJQUFJLENBQXFCO0lBRWpDLFNBQWdCLEtBQUssRUFBRSxPQUFPLENBQUM7SUFFL0I7SUFDRSxtQ0FBbUM7SUFDbkIsQ0FBQyxFQUFFLFFBQVE7SUFDM0IsbUNBQW1DO0lBQ25CLENBQUMsRUFBRSxRQUFRO0lBQzNCLG1DQUFtQztJQUNuQixDQUFDLEVBQUUsTUFBTSxFQUcxQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsU0FBUyxDQVF2RDtJQUVELE1BQU0sQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUFFLEtBQUssTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUVoRDtJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxLQUFLLE1BQU0sRUFBRSxHQUFHLFNBQVMsQ0FRL0M7SUFFRCxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFLGFBQWEsR0FBRyxTQUFTLENBRXREO0lBRUQsTUFBTSxDQUFDLDRCQUE0QixDQUFDLEdBQUcsRUFBRSx3QkFBd0IsR0FBRyxTQUFTLENBRTVFO0lBRUQsTUFBTSxDQUFDLE1BQU0sSUFBSSxTQUFTLENBRXpCO0lBRUQsTUFBTSxDQUFDLEtBQUssSUFBSSxTQUFTLENBRXhCO0lBRUQsT0FBTyxJQUFJLE9BQU8sQ0FFakI7SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsR0FBRyxPQUFPLENBRWhDO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxPQUFPLElBQUksTUFBTSxDQVFoQjtJQUVELFFBQVEsSUFBSSxLQUFLLE1BQU0sRUFBRSxDQUV4QjtJQUVEOztPQUVHO0lBQ0gsZUFBZSxJQUFJLGFBQWEsQ0FNL0I7SUFFRDs7T0FFRztJQUNILDBCQUEwQixJQUFJLHdCQUF3QixDQVNyRDtJQUVELE1BQU0sa0JBRUw7SUFFRCxNQUFNLEtBQUssTUFBTSwySEFNaEI7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eth_signature.d.ts","sourceRoot":"","sources":["../../src/eth-signature/eth_signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IACjB,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IACjB,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IACjB,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,qBAAa,SAAS;
|
|
1
|
+
{"version":3,"file":"eth_signature.d.ts","sourceRoot":"","sources":["../../src/eth-signature/eth_signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IACjB,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IACjB,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IACjB,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,qBAAa,SAAS;IAOlB,mCAAmC;aACnB,CAAC,EAAE,QAAQ;IAC3B,mCAAmC;aACnB,CAAC,EAAE,QAAQ;IAC3B,mCAAmC;aACnB,CAAC,EAAE,MAAM;IAV3B,OAAO,CAAC,IAAI,CAAqB;IAEjC,SAAgB,KAAK,EAAE,OAAO,CAAC;IAE/B;IACE,mCAAmC;IACnB,CAAC,EAAE,QAAQ;IAC3B,mCAAmC;IACnB,CAAC,EAAE,QAAQ;IAC3B,mCAAmC;IACnB,CAAC,EAAE,MAAM,EAG1B;IAED,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAQvD;IAED,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,MAAM,EAAE,GAAG,OAAO,CAEhD;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,MAAM,EAAE,GAAG,SAAS,CAQ/C;IAED,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,CAEtD;IAED,MAAM,CAAC,4BAA4B,CAAC,GAAG,EAAE,wBAAwB,GAAG,SAAS,CAE5E;IAED,MAAM,CAAC,MAAM,IAAI,SAAS,CAEzB;IAED,MAAM,CAAC,KAAK,IAAI,SAAS,CAExB;IAED,OAAO,IAAI,OAAO,CAEjB;IAED,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAEhC;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,OAAO,IAAI,MAAM,CAQhB;IAED,QAAQ,IAAI,KAAK,MAAM,EAAE,CAExB;IAED;;OAEG;IACH,eAAe,IAAI,aAAa,CAM/B;IAED;;OAEG;IACH,0BAA0B,IAAI,wBAAwB,CASrD;IAED,MAAM,kBAEL;IAED,MAAM,KAAK,MAAM,2HAMhB;CACF"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/** Wraps an async iterable iterator such that it filters values based on a predicate. */
|
|
2
|
+
export declare function filter<T>(iterator: AsyncIterableIterator<T>, predicate: (item: T) => boolean | Promise<boolean>): AsyncIterableIterator<T>;
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaXRlcmF0b3IvZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHlGQUF5RjtBQUN6Rix3QkFBdUIsTUFBTSxDQUFDLENBQUMsRUFDN0IsUUFBUSxFQUFFLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxFQUNsQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQ2pELHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQU0xQiJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/iterator/filter.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,wBAAuB,MAAM,CAAC,CAAC,EAC7B,QAAQ,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAClC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GACjD,qBAAqB,CAAC,CAAC,CAAC,CAM1B"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { filter } from './filter.js';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pdGVyYXRvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sYUFBYSxDQUFDIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/iterator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { filter } from './filter.js';
|
|
@@ -2,4 +2,4 @@ import { Agent } from 'undici';
|
|
|
2
2
|
import type { JsonRpcFetch } from './fetch.js';
|
|
3
3
|
export { Agent };
|
|
4
4
|
export declare function makeUndiciFetch(client?: Agent): JsonRpcFetch;
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5kaWNpLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvanNvbi1ycGMvY2xpZW50L3VuZGljaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsS0FBSyxFQUFtQixNQUFNLFFBQVEsQ0FBQztBQUtoRCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFVL0MsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO0FBRWpCLHdCQUFnQixlQUFlLENBQUMsTUFBTSxRQUFjLEdBQUcsWUFBWSxDQWtFbEUifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"undici.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/client/undici.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"undici.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/client/undici.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAmB,MAAM,QAAQ,CAAC;AAKhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAU/C,OAAO,EAAE,KAAK,EAAE,CAAC;AAEjB,wBAAgB,eAAe,CAAC,MAAM,QAAc,GAAG,YAAY,CAkElE"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
+
import { promisify } from 'node:util';
|
|
2
|
+
import { gunzip as gunzipCb, gzip as gzipCb } from 'node:zlib';
|
|
1
3
|
import { Agent } from 'undici';
|
|
2
4
|
import { createLogger } from '../../log/pino-logger.js';
|
|
3
5
|
import { NoRetryError } from '../../retry/index.js';
|
|
4
6
|
import { jsonStringify } from '../convert.js';
|
|
7
|
+
const gzip = promisify(gzipCb);
|
|
8
|
+
const gunzip = promisify(gunzipCb);
|
|
5
9
|
const log = createLogger('json-rpc:json_rpc_client:undici');
|
|
10
|
+
/** Minimum request size in bytes to trigger compression. */ const COMPRESSION_THRESHOLD = 1024;
|
|
6
11
|
export { Agent };
|
|
7
12
|
export function makeUndiciFetch(client = new Agent()) {
|
|
8
13
|
return async (host, body, extraHeaders = {}, noRetry = false)=>{
|
|
@@ -12,14 +17,20 @@ export function makeUndiciFetch(client = new Agent()) {
|
|
|
12
17
|
});
|
|
13
18
|
let resp;
|
|
14
19
|
try {
|
|
20
|
+
const jsonBody = Buffer.from(jsonStringify(body));
|
|
21
|
+
const shouldCompress = jsonBody.length >= COMPRESSION_THRESHOLD;
|
|
15
22
|
resp = await client.request({
|
|
16
23
|
method: 'POST',
|
|
17
24
|
origin: new URL(host),
|
|
18
25
|
path: '/',
|
|
19
|
-
body:
|
|
26
|
+
body: shouldCompress ? await gzip(jsonBody) : jsonBody,
|
|
20
27
|
headers: {
|
|
21
28
|
...extraHeaders,
|
|
22
|
-
'content-type': 'application/json'
|
|
29
|
+
'content-type': 'application/json',
|
|
30
|
+
...shouldCompress && {
|
|
31
|
+
'content-encoding': 'gzip'
|
|
32
|
+
},
|
|
33
|
+
'accept-encoding': 'gzip'
|
|
23
34
|
}
|
|
24
35
|
});
|
|
25
36
|
} catch (err) {
|
|
@@ -28,13 +39,19 @@ export function makeUndiciFetch(client = new Agent()) {
|
|
|
28
39
|
}
|
|
29
40
|
let responseJson;
|
|
30
41
|
const responseOk = resp.statusCode >= 200 && resp.statusCode <= 299;
|
|
42
|
+
const contentEncoding = resp.headers['content-encoding'];
|
|
31
43
|
try {
|
|
32
|
-
|
|
44
|
+
if (contentEncoding === 'gzip') {
|
|
45
|
+
const jsonBuffer = await gunzip(await resp.body.arrayBuffer());
|
|
46
|
+
responseJson = JSON.parse(jsonBuffer.toString('utf-8'));
|
|
47
|
+
} else {
|
|
48
|
+
responseJson = await resp.body.json();
|
|
49
|
+
}
|
|
33
50
|
} catch {
|
|
34
51
|
if (!responseOk) {
|
|
35
52
|
throw new Error('HTTP ' + resp.statusCode);
|
|
36
53
|
}
|
|
37
|
-
throw new Error(`Failed to parse body as JSON: ${await resp.body.text()}`);
|
|
54
|
+
throw new Error(`Failed to parse body as JSON. encoding: ${contentEncoding}, body: ${await resp.body.text()}`);
|
|
38
55
|
}
|
|
39
56
|
if (!responseOk) {
|
|
40
57
|
const errorMessage = `Error ${resp.statusCode} response from server ${host}: ${responseJson}`;
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
* Test class for testing string converter.
|
|
3
3
|
*/
|
|
4
4
|
export declare class ToStringClass {
|
|
5
|
-
readonly x: string;
|
|
6
|
-
readonly y: string;
|
|
5
|
+
/** A value */ readonly x: string;
|
|
6
|
+
/** Another value */ readonly y: string;
|
|
7
7
|
constructor(
|
|
8
8
|
/** A value */ x: string,
|
|
9
9
|
/** Another value */ y: string);
|
|
10
10
|
toString(): string;
|
|
11
11
|
static fromString(value: string): ToStringClass;
|
|
12
12
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3NfYS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2pzb24tcnBjL2ZpeHR1cmVzL2NsYXNzX2EudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxxQkFBYSxhQUFhO0lBRXRCLGNBQWMsVUFBaUIsQ0FBQyxFQUFFLE1BQU07SUFDeEMsb0JBQW9CLFVBQWlCLENBQUMsRUFBRSxNQUFNO0lBRmhEO0lBQ0UsY0FBYyxDQUFpQixDQUFDLEVBQUUsTUFBTTtJQUN4QyxvQkFBb0IsQ0FBaUIsQ0FBQyxFQUFFLE1BQU0sRUFDNUM7SUFFSixRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLE1BQU0saUJBRzlCO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class_a.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/fixtures/class_a.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"class_a.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/fixtures/class_a.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,aAAa;IAEtB,cAAc,UAAiB,CAAC,EAAE,MAAM;IACxC,oBAAoB,UAAiB,CAAC,EAAE,MAAM;IAFhD;IACE,cAAc,CAAiB,CAAC,EAAE,MAAM;IACxC,oBAAoB,CAAiB,CAAC,EAAE,MAAM,EAC5C;IAEJ,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,iBAG9B;CACF"}
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
* Test class for testing string converter.
|
|
3
3
|
*/
|
|
4
4
|
export declare class ToStringClass {
|
|
5
|
-
readonly x: string;
|
|
6
|
-
readonly y: string;
|
|
5
|
+
/** A value */ readonly x: string;
|
|
6
|
+
/** Another value */ readonly y: string;
|
|
7
7
|
constructor(
|
|
8
8
|
/** A value */ x: string,
|
|
9
9
|
/** Another value */ y: string);
|
|
10
10
|
toString(): string;
|
|
11
11
|
static fromString(value: string): ToStringClass;
|
|
12
12
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3NfYi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2pzb24tcnBjL2ZpeHR1cmVzL2NsYXNzX2IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxxQkFBYSxhQUFhO0lBRXRCLGNBQWMsVUFBaUIsQ0FBQyxFQUFFLE1BQU07SUFDeEMsb0JBQW9CLFVBQWlCLENBQUMsRUFBRSxNQUFNO0lBRmhEO0lBQ0UsY0FBYyxDQUFpQixDQUFDLEVBQUUsTUFBTTtJQUN4QyxvQkFBb0IsQ0FBaUIsQ0FBQyxFQUFFLE1BQU0sRUFDNUM7SUFFSixRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLE1BQU0saUJBRzlCO0NBQ0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class_b.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/fixtures/class_b.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"class_b.d.ts","sourceRoot":"","sources":["../../../src/json-rpc/fixtures/class_b.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,aAAa;IAEtB,cAAc,UAAiB,CAAC,EAAE,MAAM;IACxC,oBAAoB,UAAiB,CAAC,EAAE,MAAM;IAFhD;IACE,cAAc,CAAiB,CAAC,EAAE,MAAM;IACxC,oBAAoB,CAAiB,CAAC,EAAE,MAAM,EAC5C;IAEJ,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,iBAG9B;CACF"}
|
|
@@ -54,4 +54,4 @@ export type Logger = {
|
|
|
54
54
|
createChild: (childModule: string) => Logger;
|
|
55
55
|
};
|
|
56
56
|
export {};
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluby1sb2dnZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2cvcGluby1sb2dnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBUXZDLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbEQsd0JBQWdCLFlBQVksQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FtQ25EO0FBSUQsS0FBSyxjQUFjLEdBQUcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxLQUFLLE9BQU8sQ0FBQztBQUdqRCx3QkFBZ0IsaUJBQWlCLENBQUMsT0FBTyxFQUFFLGNBQWMsR0FBRyxJQUFJLENBRS9EO0FBUUQsS0FBSyxjQUFjLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxLQUFLLE1BQU0sQ0FBQztBQUdqRCx3QkFBZ0IsaUJBQWlCLENBQUMsT0FBTyxFQUFFLGNBQWMsR0FBRyxJQUFJLENBRS9EO0FBRUQsd0JBQWdCLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxjQUFjLFFBSzNEO0FBRUQsaUdBQWlHO0FBQ2pHLHdCQUFzQixpQkFBaUIsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQU1qRztBQVdELGVBQU8sTUFBTyxRQUFRLGtGQUFFLFVBQVUsdUNBQW9ELENBQUM7QUEwQ3ZGLGVBQU8sTUFBTSxNQUFNOzs7OztDQUdsQixDQUFDO0FBTUYsZUFBTyxNQUFNLGNBQWM7Ozs7Ozs7Ozs7Q0FVMUIsQ0FBQztBQW9ERixlQUFPLE1BQU0sTUFBTSwyQ0FBZSxDQUFDO0FBYW5DOzs7R0FHRztBQUNILHdCQUFnQixzQkFBc0IsQ0FBQyxNQUFNLEVBQUUsUUFBUSxHQUFHLElBQUksQ0FFN0Q7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0IscUJBQXFCLENBQUMsTUFBTSxFQUFFLFFBQVEsR0FBRyxJQUFJLENBZTVEO0FBRUQsb0RBQW9EO0FBQ3BELEtBQUssVUFBVSxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsT0FBTyxLQUFLLElBQUksQ0FBQztBQUV2RTs7R0FFRztBQUNILE1BQU0sTUFBTSxNQUFNLEdBQUc7S0FBRyxDQUFDLElBQUksUUFBUSxHQUFHLEtBQUs7Q0FBRSxHQUFHO0lBQTRCLEtBQUssRUFBRSxVQUFVLENBQUE7Q0FBRSxHQUFHO0lBQ2xHLEtBQUssRUFBRSxRQUFRLENBQUM7SUFDaEIsY0FBYyxFQUFFLENBQUMsS0FBSyxFQUFFLFFBQVEsS0FBSyxPQUFPLENBQUM7SUFDN0MsTUFBTSxFQUFFLE1BQU0sQ0FBQztJQUNmLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRSxNQUFNLEtBQUssTUFBTSxDQUFDO0NBQzlDLENBQUMifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pino-logger.d.ts","sourceRoot":"","sources":["../../src/log/pino-logger.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"pino-logger.d.ts","sourceRoot":"","sources":["../../src/log/pino-logger.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAQvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAElD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAmCnD;AAID,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC;AAGjD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAE/D;AAQD,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;AAGjD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAE/D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,QAK3D;AAED,iGAAiG;AACjG,wBAAsB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAMjG;AAWD,eAAO,MAAO,QAAQ,kFAAE,UAAU,uCAAoD,CAAC;AA0CvF,eAAO,MAAM,MAAM;;;;;CAGlB,CAAC;AAMF,eAAO,MAAM,cAAc;;;;;;;;;;CAU1B,CAAC;AAoDF,eAAO,MAAM,MAAM,2CAAe,CAAC;AAanC;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAE7D;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAe5D;AAED,oDAAoD;AACpD,KAAK,UAAU,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG;KAAG,CAAC,IAAI,QAAQ,GAAG,KAAK;CAAE,GAAG;IAA4B,KAAK,EAAE,UAAU,CAAA;CAAE,GAAG;IAClG,KAAK,EAAE,QAAQ,CAAC;IAChB,cAAc,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;CAC9C,CAAC"}
|
package/dest/log/pino-logger.js
CHANGED
|
@@ -3,7 +3,7 @@ import isNode from 'detect-node';
|
|
|
3
3
|
import { pino, symbols } from 'pino';
|
|
4
4
|
import { inspect } from 'util';
|
|
5
5
|
import { compactArray } from '../collection/array.js';
|
|
6
|
-
import { parseBooleanEnv } from '../config/
|
|
6
|
+
import { parseBooleanEnv } from '../config/parse-env.js';
|
|
7
7
|
import { GoogleCloudLoggerConfig } from './gcloud-logger-config.js';
|
|
8
8
|
import { getLogLevelFromFilters, parseEnv } from './log-filters.js';
|
|
9
9
|
export function createLogger(module) {
|
package/dest/retry/index.d.ts
CHANGED
|
@@ -42,4 +42,14 @@ export declare function retry<Result>(fn: () => Promise<Result>, name?: string,
|
|
|
42
42
|
* @returns A Promise that resolves with the successful (truthy) result of the provided function, or rejects if timeout is exceeded.
|
|
43
43
|
*/
|
|
44
44
|
export declare function retryUntil<T>(fn: () => (T | undefined) | Promise<T | undefined>, name?: string, timeout?: number, interval?: number): Promise<NonNullable<Awaited<T>>>;
|
|
45
|
-
|
|
45
|
+
/**
|
|
46
|
+
* Convenience wrapper around retryUntil with fast polling for tests.
|
|
47
|
+
* Uses 10s timeout and 100ms polling interval by default.
|
|
48
|
+
*
|
|
49
|
+
* @param fn - The function to retry until it returns a truthy value.
|
|
50
|
+
* @param name - Description of what we're waiting for (for error messages).
|
|
51
|
+
* @param timeout - Optional timeout in seconds. Defaults to 10s.
|
|
52
|
+
* @param interval - Optional interval in seconds. Defaults to 0.1s (100ms).
|
|
53
|
+
*/
|
|
54
|
+
export declare function retryFastUntil<T>(fn: () => (T | undefined) | Promise<T | undefined>, name?: string, timeout?: number, interval?: number): Promise<NonNullable<Awaited<T>>>;
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZXRyeS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQWdCLE1BQU0saUJBQWlCLENBQUM7QUFJNUQsd0VBQXdFO0FBQ3hFLHFCQUFhLFlBQWEsU0FBUSxLQUFLO0NBQUc7QUFFMUM7Ozs7Ozs7R0FPRztBQUNILHdCQUFpQixnQkFBZ0IscUNBTWhDO0FBRUQ7Ozs7R0FJRztBQUNILHdCQUFpQixXQUFXLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxvQ0FJN0M7QUFFRDs7Ozs7Ozs7Ozs7R0FXRztBQUNILHdCQUFzQixLQUFLLENBQUMsTUFBTSxFQUNoQyxFQUFFLEVBQUUsTUFBTSxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQ3pCLElBQUksU0FBYyxFQUNsQixPQUFPLG1DQUFxQixFQUM1QixHQUFHLEdBQUUsTUFBeUMsRUFDOUMsWUFBWSxVQUFRLG1CQW9CckI7QUFFRDs7Ozs7Ozs7OztHQVVHO0FBQ0gsd0JBQXNCLFVBQVUsQ0FBQyxDQUFDLEVBQ2hDLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLEVBQ2xELElBQUksU0FBSyxFQUNULE9BQU8sU0FBSSxFQUNYLFFBQVEsU0FBSSxvQ0FlYjtBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsd0JBQWdCLGNBQWMsQ0FBQyxDQUFDLEVBQzlCLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLEVBQ2xELElBQUksU0FBSyxFQUNULE9BQU8sU0FBSyxFQUNaLFFBQVEsU0FBTSxvQ0FHZiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/retry/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,iBAAiB,CAAC;AAI5D,wEAAwE;AACxE,qBAAa,YAAa,SAAQ,KAAK;CAAG;AAE1C;;;;;;;GAOG;AACH,wBAAiB,gBAAgB,qCAMhC;AAED;;;;GAIG;AACH,wBAAiB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,oCAI7C;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,KAAK,CAAC,MAAM,EAChC,EAAE,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EACzB,IAAI,SAAc,EAClB,OAAO,mCAAqB,EAC5B,GAAG,GAAE,MAAyC,EAC9C,YAAY,UAAQ,mBAoBrB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAChC,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,EAClD,IAAI,SAAK,EACT,OAAO,SAAI,EACX,QAAQ,SAAI,oCAeb"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/retry/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,iBAAiB,CAAC;AAI5D,wEAAwE;AACxE,qBAAa,YAAa,SAAQ,KAAK;CAAG;AAE1C;;;;;;;GAOG;AACH,wBAAiB,gBAAgB,qCAMhC;AAED;;;;GAIG;AACH,wBAAiB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,oCAI7C;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,KAAK,CAAC,MAAM,EAChC,EAAE,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EACzB,IAAI,SAAc,EAClB,OAAO,mCAAqB,EAC5B,GAAG,GAAE,MAAyC,EAC9C,YAAY,UAAQ,mBAoBrB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAChC,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,EAClD,IAAI,SAAK,EACT,OAAO,SAAI,EACX,QAAQ,SAAI,oCAeb;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAC9B,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,EAClD,IAAI,SAAK,EACT,OAAO,SAAK,EACZ,QAAQ,SAAM,oCAGf"}
|
package/dest/retry/index.js
CHANGED
|
@@ -91,3 +91,14 @@ import { Timer } from '../timer/index.js';
|
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
+
/**
|
|
95
|
+
* Convenience wrapper around retryUntil with fast polling for tests.
|
|
96
|
+
* Uses 10s timeout and 100ms polling interval by default.
|
|
97
|
+
*
|
|
98
|
+
* @param fn - The function to retry until it returns a truthy value.
|
|
99
|
+
* @param name - Description of what we're waiting for (for error messages).
|
|
100
|
+
* @param timeout - Optional timeout in seconds. Defaults to 10s.
|
|
101
|
+
* @param interval - Optional interval in seconds. Defaults to 0.1s (100ms).
|
|
102
|
+
*/ export function retryFastUntil(fn, name = '', timeout = 10, interval = 0.1) {
|
|
103
|
+
return retryUntil(fn, name, timeout, interval);
|
|
104
|
+
}
|