@lodestar/utils 1.16.0-dev.6a479118cb → 1.16.0-dev.6a68b1e25a
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/lib/format.d.ts +2 -4
- package/lib/format.js +3 -8
- package/lib/format.js.map +1 -1
- package/lib/metrics.d.ts +2 -1
- package/lib/promise.d.ts +0 -5
- package/lib/promise.js +2 -0
- package/lib/promise.js.map +1 -1
- package/lib/types.d.ts +5 -0
- package/package.json +2 -2
package/lib/format.d.ts
CHANGED
|
@@ -19,11 +19,9 @@ export declare function truncBytes(root: Uint8Array | string): string;
|
|
|
19
19
|
*/
|
|
20
20
|
export declare function formatBigDecimal(numerator: bigint, denominator: bigint, maxDecimalFactor: bigint): string;
|
|
21
21
|
/**
|
|
22
|
-
* Format wei as ETH, with up to 5 decimals
|
|
23
|
-
*
|
|
24
|
-
* if suffix is true, append ' ETH'
|
|
22
|
+
* Format wei as ETH, with up to 5 decimals and append ' ETH'
|
|
25
23
|
*/
|
|
26
|
-
export declare function prettyWeiToEth(wei: bigint
|
|
24
|
+
export declare function prettyWeiToEth(wei: bigint): string;
|
|
27
25
|
/**
|
|
28
26
|
* Format milliseconds to time format HH:MM:SS.ms
|
|
29
27
|
*/
|
package/lib/format.js
CHANGED
|
@@ -38,15 +38,10 @@ export function formatBigDecimal(numerator, denominator, maxDecimalFactor) {
|
|
|
38
38
|
// display upto 5 decimal places
|
|
39
39
|
const MAX_DECIMAL_FACTOR = BigInt("100000");
|
|
40
40
|
/**
|
|
41
|
-
* Format wei as ETH, with up to 5 decimals
|
|
42
|
-
*
|
|
43
|
-
* if suffix is true, append ' ETH'
|
|
41
|
+
* Format wei as ETH, with up to 5 decimals and append ' ETH'
|
|
44
42
|
*/
|
|
45
|
-
export function prettyWeiToEth(wei
|
|
46
|
-
|
|
47
|
-
if (suffix)
|
|
48
|
-
eth += " ETH";
|
|
49
|
-
return eth;
|
|
43
|
+
export function prettyWeiToEth(wei) {
|
|
44
|
+
return `${formatBigDecimal(wei, ETH_TO_WEI, MAX_DECIMAL_FACTOR)} ETH`;
|
|
50
45
|
}
|
|
51
46
|
/**
|
|
52
47
|
* Format milliseconds to time format HH:MM:SS.ms
|
package/lib/format.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,YAAY,CAAC;AACvC,OAAO,EAAC,UAAU,EAAC,MAAM,oBAAoB,CAAC;AAE9C;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,IAAyB;IACnD,MAAM,GAAG,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChE,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAyB;IACxD,MAAM,GAAG,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChE,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,IAAyB;IAClD,MAAM,GAAG,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChE,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB,EAAE,WAAmB,EAAE,gBAAwB;IAC/F,MAAM,IAAI,GAAG,SAAS,GAAG,WAAW,CAAC;IACrC,MAAM,QAAQ,GAAG,CAAC,CAAC,SAAS,GAAG,IAAI,GAAG,WAAW,CAAC,GAAG,gBAAgB,CAAC,GAAG,WAAW,CAAC;IAErF,wGAAwG;IACxG,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;IACvF,OAAO,GAAG,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,QAAQ,EAAE,CAAC;AAC9D,CAAC;AAED,gCAAgC;AAChC,MAAM,kBAAkB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAE5C
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,YAAY,CAAC;AACvC,OAAO,EAAC,UAAU,EAAC,MAAM,oBAAoB,CAAC;AAE9C;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,IAAyB;IACnD,MAAM,GAAG,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChE,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAyB;IACxD,MAAM,GAAG,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChE,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,IAAyB;IAClD,MAAM,GAAG,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChE,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB,EAAE,WAAmB,EAAE,gBAAwB;IAC/F,MAAM,IAAI,GAAG,SAAS,GAAG,WAAW,CAAC;IACrC,MAAM,QAAQ,GAAG,CAAC,CAAC,SAAS,GAAG,IAAI,GAAG,WAAW,CAAC,GAAG,gBAAgB,CAAC,GAAG,WAAW,CAAC;IAErF,wGAAwG;IACxG,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;IACvF,OAAO,GAAG,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,QAAQ,EAAE,CAAC;AAC9D,CAAC;AAED,gCAAgC;AAChC,MAAM,kBAAkB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAE5C;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,OAAO,GAAG,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc;IAC3C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAChD,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;AAClG,CAAC"}
|
package/lib/metrics.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { NonEmptyArray } from "./types.js";
|
|
1
2
|
export type NoLabels = Record<string, never>;
|
|
2
3
|
export type LabelsGeneric = Record<string, string | number>;
|
|
3
4
|
export type LabelKeys<Labels extends LabelsGeneric> = Extract<keyof Labels, string>;
|
|
@@ -30,7 +31,7 @@ export type GaugeConfig<Labels extends LabelsGeneric> = {
|
|
|
30
31
|
} & (NoLabels extends Labels ? {
|
|
31
32
|
labelNames?: never;
|
|
32
33
|
} : {
|
|
33
|
-
labelNames:
|
|
34
|
+
labelNames: NonEmptyArray<LabelKeys<Labels>>;
|
|
34
35
|
});
|
|
35
36
|
export type HistogramConfig<Labels extends LabelsGeneric> = GaugeConfig<Labels> & {
|
|
36
37
|
buckets?: number[];
|
package/lib/promise.d.ts
CHANGED
|
@@ -26,11 +26,6 @@ export type PromiseRejectedResult<T> = PromiseResult<T> & {
|
|
|
26
26
|
* Wrap a promise to an object to track the status and value of the promise
|
|
27
27
|
*/
|
|
28
28
|
export declare function wrapPromise<T>(promise: PromiseLike<T>): PromiseResult<T>;
|
|
29
|
-
/**
|
|
30
|
-
* ArrayToTuple converts an `Array<T>` to `[T, ...T]`
|
|
31
|
-
*
|
|
32
|
-
* eg: `[1, 2, 3]` from type `number[]` to `[number, number, number]`
|
|
33
|
-
*/
|
|
34
29
|
type ReturnPromiseWithTuple<Tuple extends NonEmptyArray<PromiseLike<unknown>>> = {
|
|
35
30
|
[Index in keyof ArrayToTuple<Tuple>]: PromiseResult<Awaited<Tuple[Index]>>;
|
|
36
31
|
};
|
package/lib/promise.js
CHANGED
|
@@ -55,6 +55,8 @@ export async function resolveOrRacePromises(promises, { resolveTimeoutMs, raceTi
|
|
|
55
55
|
const resolveTimeoutError = new TimeoutError(`Given promises can't be resolved within resolveTimeoutMs=${resolveTimeoutMs}`);
|
|
56
56
|
const raceTimeoutError = new TimeoutError(`Not a any single promise be resolved in given raceTimeoutMs=${raceTimeoutMs}`);
|
|
57
57
|
const promiseResults = promises.map((p) => wrapPromise(p));
|
|
58
|
+
// We intentionally want an array of promises here
|
|
59
|
+
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
58
60
|
promises = promiseResults.map((p) => p.promise);
|
|
59
61
|
try {
|
|
60
62
|
await Promise.race([
|
package/lib/promise.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promise.js","sourceRoot":"","sources":["../src/promise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,YAAY,EAAC,MAAM,aAAa,CAAC;AACvD,OAAO,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AAGjC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,CAA0B,EAC1B,EAAc,EACd,QAAgB;IAEhB,IAAI,CAAC,GAA+B,SAAS,CAAC;IAC9C,MAAM,KAAK,GAAG,KAAK,IAAwB,EAAE;QAC3C,OAAO,CAAC,KAAK,SAAS,EAAE;YACtB,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtB,IAAI,CAAC,KAAK,SAAS;gBAAE,EAAE,EAAE,CAAC;SAC3B;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IAEF,CAAC,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IACrC,2DAA2D;IAC3D,IAAI,CAAC,KAAK,SAAS,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;KAC9C;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAsBD;;GAEG;AACH,MAAM,UAAU,WAAW,CAAI,OAAuB;IACpD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,MAAM,MAAM,GAAG;QACb,OAAO,EAAE,OAAO,CAAC,IAAI,CACnB,CAAC,KAAK,EAAE,EAAE;YACR,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC;YAC3B,MAAoC,CAAC,KAAK,GAAG,KAAK,CAAC;YACnD,MAAoC,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC1E,OAAO,KAAK,CAAC;QACf,CAAC,EACD,CAAC,MAAe,EAAE,EAAE;YAClB,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;YAC1B,MAAmC,CAAC,MAAM,GAAG,MAAe,CAAC;YAC7D,MAAmC,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACzE,MAAM,MAAM,CAAC;QACf,CAAC,CACF;QACD,MAAM,EAAE,SAAS;KACE,CAAC;IAEtB,OAAO,MAAM,CAAC;AAChB,CAAC;
|
|
1
|
+
{"version":3,"file":"promise.js","sourceRoot":"","sources":["../src/promise.ts"],"names":[],"mappings":"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"}
|
package/lib/types.d.ts
CHANGED
|
@@ -8,6 +8,11 @@ export type RecursivePartial<T> = {
|
|
|
8
8
|
/** Type safe wrapper for Number constructor that takes 'any' */
|
|
9
9
|
export declare function bnToNum(bn: bigint): number;
|
|
10
10
|
export type NonEmptyArray<T> = [T, ...T[]];
|
|
11
|
+
/**
|
|
12
|
+
* ArrayToTuple converts an `Array<T>` to `[T, ...T]`
|
|
13
|
+
*
|
|
14
|
+
* eg: `[1, 2, 3]` from type `number[]` to `[number, number, number]`
|
|
15
|
+
*/
|
|
11
16
|
export type ArrayToTuple<Tuple extends NonEmptyArray<unknown>> = {
|
|
12
17
|
[Index in keyof Tuple]: Tuple[Index];
|
|
13
18
|
};
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"bugs": {
|
|
12
12
|
"url": "https://github.com/ChainSafe/lodestar/issues"
|
|
13
13
|
},
|
|
14
|
-
"version": "1.16.0-dev.
|
|
14
|
+
"version": "1.16.0-dev.6a68b1e25a",
|
|
15
15
|
"type": "module",
|
|
16
16
|
"exports": "./lib/index.js",
|
|
17
17
|
"files": [
|
|
@@ -58,5 +58,5 @@
|
|
|
58
58
|
"beacon",
|
|
59
59
|
"blockchain"
|
|
60
60
|
],
|
|
61
|
-
"gitHead": "
|
|
61
|
+
"gitHead": "7ae0cf7bc0108cdc6db43bf4440f17f1f1c55d13"
|
|
62
62
|
}
|