@lodestar/utils 1.12.0-dev.f77b774be2 → 1.12.0-rc.0
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 +6 -0
- package/lib/format.js +9 -0
- package/lib/format.js.map +1 -1
- package/lib/index.d.ts +2 -2
- package/lib/index.js.map +1 -1
- package/lib/logger.d.ts +1 -1
- package/lib/objects.d.ts +2 -1
- package/lib/objects.js +3 -0
- package/lib/objects.js.map +1 -1
- package/lib/retry.d.ts +1 -0
- package/lib/retry.js +1 -1
- package/lib/retry.js.map +1 -1
- package/lib/waitFor.d.ts +13 -0
- package/lib/waitFor.js +21 -0
- package/lib/waitFor.js.map +1 -1
- package/package.json +2 -2
package/lib/format.d.ts
CHANGED
|
@@ -8,4 +8,10 @@ export declare function prettyBytes(root: Uint8Array | string): string;
|
|
|
8
8
|
* Paired with block numbers or slots, it can still act as a decent identify-able format
|
|
9
9
|
*/
|
|
10
10
|
export declare function prettyBytesShort(root: Uint8Array | string): string;
|
|
11
|
+
/**
|
|
12
|
+
* Truncate and format bytes as `0x123456789abc`
|
|
13
|
+
* 6 bytes is sufficient to avoid collisions and it allows to easily look up
|
|
14
|
+
* values on explorers like beaconcha.in while improving readability of logs
|
|
15
|
+
*/
|
|
16
|
+
export declare function truncBytes(root: Uint8Array | string): string;
|
|
11
17
|
//# sourceMappingURL=format.d.ts.map
|
package/lib/format.js
CHANGED
|
@@ -15,4 +15,13 @@ export function prettyBytesShort(root) {
|
|
|
15
15
|
const str = typeof root === "string" ? root : toHexString(root);
|
|
16
16
|
return `${str.slice(0, 6)}…`;
|
|
17
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* Truncate and format bytes as `0x123456789abc`
|
|
20
|
+
* 6 bytes is sufficient to avoid collisions and it allows to easily look up
|
|
21
|
+
* values on explorers like beaconcha.in while improving readability of logs
|
|
22
|
+
*/
|
|
23
|
+
export function truncBytes(root) {
|
|
24
|
+
const str = typeof root === "string" ? root : toHexString(root);
|
|
25
|
+
return str.slice(0, 14);
|
|
26
|
+
}
|
|
18
27
|
//# sourceMappingURL=format.js.map
|
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;AAEvC;;;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"}
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,YAAY,CAAC;AAEvC;;;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"}
|
package/lib/index.d.ts
CHANGED
|
@@ -9,12 +9,12 @@ export * from "./logger.js";
|
|
|
9
9
|
export * from "./map.js";
|
|
10
10
|
export * from "./math.js";
|
|
11
11
|
export * from "./objects.js";
|
|
12
|
-
export { retry, RetryOptions } from "./retry.js";
|
|
12
|
+
export { retry, type RetryOptions } from "./retry.js";
|
|
13
13
|
export * from "./notNullish.js";
|
|
14
14
|
export * from "./sleep.js";
|
|
15
15
|
export * from "./sort.js";
|
|
16
16
|
export * from "./timeout.js";
|
|
17
|
-
export { RecursivePartial, bnToNum } from "./types.js";
|
|
17
|
+
export { type RecursivePartial, bnToNum } from "./types.js";
|
|
18
18
|
export * from "./validation.js";
|
|
19
19
|
export * from "./verifyMerkleBranch.js";
|
|
20
20
|
export * from "./promise.js";
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAC,KAAK,EAAoB,MAAM,YAAY,CAAC;AACpD,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAwB,OAAO,EAAC,MAAM,YAAY,CAAC;AAC1D,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
|
package/lib/logger.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Interface of a generic Lodestar logger. For implementations, see `@lodestar/logger`
|
|
3
3
|
*/
|
|
4
|
-
export type Logger = Record<LogLevel, LogHandler>;
|
|
4
|
+
export type Logger = Record<Exclude<LogLevel, LogLevel.trace>, LogHandler>;
|
|
5
5
|
export declare enum LogLevel {
|
|
6
6
|
error = "error",
|
|
7
7
|
warn = "warn",
|
package/lib/objects.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export type KeyCase = "snake" | "constant" | "camel" | "param" | "header" | "pascal" | "dot" | "notransform";
|
|
2
2
|
export declare function toExpectedCase(value: string, expectedCase?: KeyCase, customCasingMap?: Record<string, string>): string;
|
|
3
|
-
export declare function isPlainObject(o: unknown):
|
|
3
|
+
export declare function isPlainObject(o: unknown): o is object;
|
|
4
|
+
export declare function isEmptyObject(value: unknown): boolean;
|
|
4
5
|
/**
|
|
5
6
|
* Creates an object with the same keys as object and values generated by running each own enumerable
|
|
6
7
|
* string keyed property of object thru iteratee.
|
package/lib/objects.js
CHANGED
|
@@ -34,6 +34,9 @@ export function isPlainObject(o) {
|
|
|
34
34
|
// Most likely a plain Object
|
|
35
35
|
return true;
|
|
36
36
|
}
|
|
37
|
+
export function isEmptyObject(value) {
|
|
38
|
+
return isObjectObject(value) && Object.keys(value).length === 0;
|
|
39
|
+
}
|
|
37
40
|
/**
|
|
38
41
|
* Creates an object with the same keys as object and values generated by running each own enumerable
|
|
39
42
|
* string keyed property of object thru iteratee.
|
package/lib/objects.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"objects.js","sourceRoot":"","sources":["../src/objects.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"objects.js","sourceRoot":"","sources":["../src/objects.ts"],"names":[],"mappings":"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"}
|
package/lib/retry.d.ts
CHANGED
package/lib/retry.js
CHANGED
package/lib/retry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AAoBjC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,KAAK,CAAI,EAAuC,EAAE,IAAmB;IACzF,MAAM,UAAU,GAAG,IAAI,EAAE,OAAO,IAAI,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,CAAC;IAEtC,IAAI,SAAS,GAAU,KAAK,CAAC,YAAY,CAAC,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC,EAAE,EAAE;QACpC,IAAI;YACF,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SACpB;QAAC,OAAO,CAAC,EAAE;YACV,SAAS,GAAG,CAAU,CAAC;YACvB,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE;gBAC1C,MAAM;aACP;iBAAM,IAAI,IAAI,EAAE,UAAU,KAAK,SAAS,EAAE;gBACzC,MAAM,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;aAC7C;SACF;KACF;IACD,MAAM,SAAS,CAAC;AAClB,CAAC"}
|
package/lib/waitFor.d.ts
CHANGED
|
@@ -10,4 +10,17 @@ export type WaitForOpts = {
|
|
|
10
10
|
* Wait for a condition to be true
|
|
11
11
|
*/
|
|
12
12
|
export declare function waitFor(condition: () => boolean, opts?: WaitForOpts): Promise<void>;
|
|
13
|
+
export interface ElapsedTimeTracker {
|
|
14
|
+
(): boolean;
|
|
15
|
+
msSinceLastCall: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Create a tracker which keeps track of the last time a function was called
|
|
19
|
+
*
|
|
20
|
+
* @param durationMs
|
|
21
|
+
* @returns
|
|
22
|
+
*/
|
|
23
|
+
export declare function createElapsedTimeTracker({ minElapsedTime }: {
|
|
24
|
+
minElapsedTime: number;
|
|
25
|
+
}): ElapsedTimeTracker;
|
|
13
26
|
//# sourceMappingURL=waitFor.d.ts.map
|
package/lib/waitFor.js
CHANGED
|
@@ -36,4 +36,25 @@ export function waitFor(condition, opts = {}) {
|
|
|
36
36
|
};
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Create a tracker which keeps track of the last time a function was called
|
|
41
|
+
*
|
|
42
|
+
* @param durationMs
|
|
43
|
+
* @returns
|
|
44
|
+
*/
|
|
45
|
+
export function createElapsedTimeTracker({ minElapsedTime }) {
|
|
46
|
+
// Initialized with undefined as the function has not been called yet
|
|
47
|
+
let lastTimeCalled = undefined;
|
|
48
|
+
function elapsedTimeTracker() {
|
|
49
|
+
const now = Date.now();
|
|
50
|
+
const msSinceLastCall = now - (lastTimeCalled ?? 0);
|
|
51
|
+
lastTimeCalled = now;
|
|
52
|
+
return msSinceLastCall > minElapsedTime;
|
|
53
|
+
}
|
|
54
|
+
return Object.assign(elapsedTimeTracker, {
|
|
55
|
+
get msSinceLastCall() {
|
|
56
|
+
return Date.now() - (lastTimeCalled ?? 0);
|
|
57
|
+
},
|
|
58
|
+
});
|
|
59
|
+
}
|
|
39
60
|
//# sourceMappingURL=waitFor.js.map
|
package/lib/waitFor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"waitFor.js","sourceRoot":"","sources":["../src/waitFor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,YAAY,EAAC,MAAM,aAAa,CAAC;AAWvD;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,SAAwB,EAAE,OAAoB,EAAE;IACtE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,EAAC,QAAQ,GAAG,EAAE,EAAE,OAAO,GAAG,QAAQ,EAAE,MAAM,EAAC,GAAG,IAAI,CAAC;QAEzD,IAAI,MAAM,EAAE,OAAO,EAAE;YACnB,OAAO,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;SACnC;QAED,IAAI,SAAS,EAAE,EAAE;YACf,OAAO,OAAO,EAAE,CAAC;SAClB;QAED,IAAI,MAAM,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC;QAElC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,CAAC;YACT,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;QAC7B,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;YAClC,IAAI,SAAS,EAAE,EAAE;gBACf,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,CAAC;aACX;QACH,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,MAAM,OAAO,GAAG,GAAS,EAAE;YACzB,MAAM,EAAE,CAAC;YACT,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;QAC7B,CAAC,CAAC;QACF,IAAI,MAAM;YAAE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAEtD,MAAM,GAAG,GAAG,EAAE;YACZ,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,aAAa,CAAC,UAAU,CAAC,CAAC;YAC1B,IAAI,MAAM;gBAAE,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"waitFor.js","sourceRoot":"","sources":["../src/waitFor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,YAAY,EAAC,MAAM,aAAa,CAAC;AAWvD;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,SAAwB,EAAE,OAAoB,EAAE;IACtE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,EAAC,QAAQ,GAAG,EAAE,EAAE,OAAO,GAAG,QAAQ,EAAE,MAAM,EAAC,GAAG,IAAI,CAAC;QAEzD,IAAI,MAAM,EAAE,OAAO,EAAE;YACnB,OAAO,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;SACnC;QAED,IAAI,SAAS,EAAE,EAAE;YACf,OAAO,OAAO,EAAE,CAAC;SAClB;QAED,IAAI,MAAM,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC;QAElC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,CAAC;YACT,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;QAC7B,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;YAClC,IAAI,SAAS,EAAE,EAAE;gBACf,MAAM,EAAE,CAAC;gBACT,OAAO,EAAE,CAAC;aACX;QACH,CAAC,EAAE,QAAQ,CAAC,CAAC;QAEb,MAAM,OAAO,GAAG,GAAS,EAAE;YACzB,MAAM,EAAE,CAAC;YACT,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;QAC7B,CAAC,CAAC;QACF,IAAI,MAAM;YAAE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAEtD,MAAM,GAAG,GAAG,EAAE;YACZ,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,aAAa,CAAC,UAAU,CAAC,CAAC;YAC1B,IAAI,MAAM;gBAAE,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAOD;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,EAAC,cAAc,EAA2B;IACjF,qEAAqE;IACrE,IAAI,cAAc,GAAuB,SAAS,CAAC;IAEnD,SAAS,kBAAkB;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,eAAe,GAAG,GAAG,GAAG,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC;QACpD,cAAc,GAAG,GAAG,CAAC;QAErB,OAAO,eAAe,GAAG,cAAc,CAAC;IAC1C,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;QACvC,IAAI,eAAe;YACjB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC;QAC5C,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
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.12.0-
|
|
14
|
+
"version": "1.12.0-rc.0",
|
|
15
15
|
"type": "module",
|
|
16
16
|
"exports": "./lib/index.js",
|
|
17
17
|
"files": [
|
|
@@ -55,5 +55,5 @@
|
|
|
55
55
|
"beacon",
|
|
56
56
|
"blockchain"
|
|
57
57
|
],
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "26744e003f0bc60171fb9f39b0c72072b42c868b"
|
|
59
59
|
}
|