topkat-utils 1.2.112 → 1.2.115
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/coverage/clover.xml +99 -26
- package/coverage/coverage-final.json +16 -15
- package/coverage/lcov-report/clean-stack-trace.ts.html +1 -1
- package/coverage/lcov-report/config.ts.html +1 -1
- package/coverage/lcov-report/error-utils.ts.html +1 -1
- package/coverage/lcov-report/index.html +31 -16
- package/coverage/lcov-report/is-empty.ts.html +1 -1
- package/coverage/lcov-report/is-nodejs.ts.html +1 -1
- package/coverage/lcov-report/is-object.ts.html +1 -1
- package/coverage/lcov-report/isset.ts.html +1 -1
- package/coverage/lcov-report/logger-utils.ts.html +1 -1
- package/coverage/lcov-report/loop-utils.ts.html +1 -1
- package/coverage/lcov-report/math-utils.ts.html +232 -0
- package/coverage/lcov-report/object-utils.ts.html +1 -1
- package/coverage/lcov-report/regexp-utils.ts.html +1 -1
- package/coverage/lcov-report/remove-circular-json-stringify.ts.html +1 -1
- package/coverage/lcov-report/string-utils.ts.html +1 -1
- package/coverage/lcov-report/timer-utils.ts.html +69 -9
- package/coverage/lcov-report/transaction-utils.ts.html +1 -1
- package/coverage/lcov.info +116 -17
- package/dist/src/timer-utils.d.ts +13 -0
- package/dist/src/timer-utils.js +21 -1
- package/dist/src/timer-utils.js.map +1 -1
- package/package.json +1 -1
- package/src/timer-utils.ts +20 -0
package/coverage/lcov.info
CHANGED
|
@@ -1074,6 +1074,83 @@ BRF:0
|
|
|
1074
1074
|
BRH:0
|
|
1075
1075
|
end_of_record
|
|
1076
1076
|
TN:
|
|
1077
|
+
SF:src/math-utils.ts
|
|
1078
|
+
FN:7,round
|
|
1079
|
+
FN:9,round2
|
|
1080
|
+
FN:12,isBetween
|
|
1081
|
+
FN:15,random
|
|
1082
|
+
FN:18,randomMultipleOf
|
|
1083
|
+
FN:29,sumArray
|
|
1084
|
+
FN:36,moyenne
|
|
1085
|
+
FN:41,pad
|
|
1086
|
+
FN:50,minMax
|
|
1087
|
+
FNF:9
|
|
1088
|
+
FNH:0
|
|
1089
|
+
FNDA:0,round
|
|
1090
|
+
FNDA:0,round2
|
|
1091
|
+
FNDA:0,isBetween
|
|
1092
|
+
FNDA:0,random
|
|
1093
|
+
FNDA:0,randomMultipleOf
|
|
1094
|
+
FNDA:0,sumArray
|
|
1095
|
+
FNDA:0,moyenne
|
|
1096
|
+
FNDA:0,pad
|
|
1097
|
+
FNDA:0,minMax
|
|
1098
|
+
DA:1,2
|
|
1099
|
+
DA:2,2
|
|
1100
|
+
DA:3,2
|
|
1101
|
+
DA:4,2
|
|
1102
|
+
DA:5,2
|
|
1103
|
+
DA:6,2
|
|
1104
|
+
DA:7,0
|
|
1105
|
+
DA:8,2
|
|
1106
|
+
DA:9,0
|
|
1107
|
+
DA:10,2
|
|
1108
|
+
DA:11,2
|
|
1109
|
+
DA:12,0
|
|
1110
|
+
DA:13,2
|
|
1111
|
+
DA:14,2
|
|
1112
|
+
DA:15,0
|
|
1113
|
+
DA:16,2
|
|
1114
|
+
DA:17,2
|
|
1115
|
+
DA:18,0
|
|
1116
|
+
DA:19,0
|
|
1117
|
+
DA:20,0
|
|
1118
|
+
DA:21,0
|
|
1119
|
+
DA:22,0
|
|
1120
|
+
DA:23,0
|
|
1121
|
+
DA:24,0
|
|
1122
|
+
DA:25,0
|
|
1123
|
+
DA:26,0
|
|
1124
|
+
DA:27,2
|
|
1125
|
+
DA:28,2
|
|
1126
|
+
DA:29,0
|
|
1127
|
+
DA:30,0
|
|
1128
|
+
DA:31,0
|
|
1129
|
+
DA:32,2
|
|
1130
|
+
DA:33,2
|
|
1131
|
+
DA:34,2
|
|
1132
|
+
DA:35,2
|
|
1133
|
+
DA:36,0
|
|
1134
|
+
DA:37,0
|
|
1135
|
+
DA:38,0
|
|
1136
|
+
DA:39,2
|
|
1137
|
+
DA:40,2
|
|
1138
|
+
DA:41,0
|
|
1139
|
+
DA:42,2
|
|
1140
|
+
DA:43,2
|
|
1141
|
+
DA:44,2
|
|
1142
|
+
DA:45,2
|
|
1143
|
+
DA:46,2
|
|
1144
|
+
DA:47,2
|
|
1145
|
+
DA:48,2
|
|
1146
|
+
DA:49,2
|
|
1147
|
+
DA:50,0
|
|
1148
|
+
LF:50
|
|
1149
|
+
LH:29
|
|
1150
|
+
BRF:0
|
|
1151
|
+
BRH:0
|
|
1152
|
+
end_of_record
|
|
1153
|
+
TN:
|
|
1077
1154
|
SF:src/object-utils.ts
|
|
1078
1155
|
FN:17,simpleObjectMaskOrSelect
|
|
1079
1156
|
FN:44,has
|
|
@@ -1998,13 +2075,14 @@ BRH:0
|
|
|
1998
2075
|
end_of_record
|
|
1999
2076
|
TN:
|
|
2000
2077
|
SF:src/timer-utils.ts
|
|
2001
|
-
FN:
|
|
2002
|
-
FN:
|
|
2003
|
-
FN:
|
|
2004
|
-
FN:
|
|
2005
|
-
FN:
|
|
2006
|
-
FN:
|
|
2007
|
-
|
|
2078
|
+
FN:10,timeout
|
|
2079
|
+
FN:10,fn
|
|
2080
|
+
FN:12,runAsync
|
|
2081
|
+
FN:21,waitUntilTrue
|
|
2082
|
+
FN:45,executeInDelayedLoop
|
|
2083
|
+
FN:62,retryWithDelay
|
|
2084
|
+
FN:81,perfTimer
|
|
2085
|
+
FNF:7
|
|
2008
2086
|
FNH:2
|
|
2009
2087
|
FNDA:16,timeout
|
|
2010
2088
|
FNDA:16,fn
|
|
@@ -2012,6 +2090,7 @@ FNDA:0,runAsync
|
|
|
2012
2090
|
FNDA:0,waitUntilTrue
|
|
2013
2091
|
FNDA:0,executeInDelayedLoop
|
|
2014
2092
|
FNDA:0,retryWithDelay
|
|
2093
|
+
FNDA:0,perfTimer
|
|
2015
2094
|
DA:1,2
|
|
2016
2095
|
DA:2,2
|
|
2017
2096
|
DA:3,2
|
|
@@ -2032,7 +2111,7 @@ DA:17,2
|
|
|
2032
2111
|
DA:18,2
|
|
2033
2112
|
DA:19,2
|
|
2034
2113
|
DA:20,2
|
|
2035
|
-
DA:21,
|
|
2114
|
+
DA:21,2
|
|
2036
2115
|
DA:22,0
|
|
2037
2116
|
DA:23,0
|
|
2038
2117
|
DA:24,0
|
|
@@ -2045,7 +2124,7 @@ DA:30,0
|
|
|
2045
2124
|
DA:31,0
|
|
2046
2125
|
DA:32,0
|
|
2047
2126
|
DA:33,0
|
|
2048
|
-
DA:34,
|
|
2127
|
+
DA:34,0
|
|
2049
2128
|
DA:35,2
|
|
2050
2129
|
DA:36,2
|
|
2051
2130
|
DA:37,2
|
|
@@ -2056,7 +2135,7 @@ DA:41,2
|
|
|
2056
2135
|
DA:42,2
|
|
2057
2136
|
DA:43,2
|
|
2058
2137
|
DA:44,2
|
|
2059
|
-
DA:45,
|
|
2138
|
+
DA:45,2
|
|
2060
2139
|
DA:46,0
|
|
2061
2140
|
DA:47,0
|
|
2062
2141
|
DA:48,0
|
|
@@ -2070,10 +2149,10 @@ DA:55,0
|
|
|
2070
2149
|
DA:56,0
|
|
2071
2150
|
DA:57,0
|
|
2072
2151
|
DA:58,0
|
|
2073
|
-
DA:59,
|
|
2152
|
+
DA:59,0
|
|
2074
2153
|
DA:60,2
|
|
2075
2154
|
DA:61,2
|
|
2076
|
-
DA:62,
|
|
2155
|
+
DA:62,2
|
|
2077
2156
|
DA:63,0
|
|
2078
2157
|
DA:64,0
|
|
2079
2158
|
DA:65,0
|
|
@@ -2081,11 +2160,31 @@ DA:66,0
|
|
|
2081
2160
|
DA:67,0
|
|
2082
2161
|
DA:68,0
|
|
2083
2162
|
DA:69,0
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
|
|
2087
|
-
|
|
2088
|
-
|
|
2163
|
+
DA:70,0
|
|
2164
|
+
DA:71,2
|
|
2165
|
+
DA:72,2
|
|
2166
|
+
DA:73,2
|
|
2167
|
+
DA:74,2
|
|
2168
|
+
DA:75,2
|
|
2169
|
+
DA:76,2
|
|
2170
|
+
DA:77,2
|
|
2171
|
+
DA:78,2
|
|
2172
|
+
DA:79,2
|
|
2173
|
+
DA:80,2
|
|
2174
|
+
DA:81,0
|
|
2175
|
+
DA:82,0
|
|
2176
|
+
DA:83,0
|
|
2177
|
+
DA:84,0
|
|
2178
|
+
DA:85,0
|
|
2179
|
+
DA:86,0
|
|
2180
|
+
DA:87,0
|
|
2181
|
+
DA:88,0
|
|
2182
|
+
DA:89,0
|
|
2183
|
+
LF:89
|
|
2184
|
+
LH:45
|
|
2185
|
+
BRDA:10,0,0,16
|
|
2186
|
+
BRDA:10,1,0,16
|
|
2187
|
+
BRDA:10,2,0,16
|
|
2089
2188
|
BRF:3
|
|
2090
2189
|
BRH:3
|
|
2091
2190
|
end_of_record
|
|
@@ -16,3 +16,16 @@ export declare function waitUntilTrue(callback: any, timeoutSec?: number, errorA
|
|
|
16
16
|
export declare function executeInDelayedLoop(callback: any, time?: number, errorCallback?: (e: any) => any): Promise<void>;
|
|
17
17
|
/** Will first wait before calling callback every seconds configured in retrySeconds array */
|
|
18
18
|
export declare function retryWithDelay(callback: Function, retrySeconds: number[]): Promise<void>;
|
|
19
|
+
/** Use this timer to measure code performances.
|
|
20
|
+
* @example ```
|
|
21
|
+
const time = perfTimer()
|
|
22
|
+
|
|
23
|
+
for(let i = 0; i < 9999;i++) longProcess()
|
|
24
|
+
|
|
25
|
+
console.log('Process took ' + time.end())
|
|
26
|
+
```
|
|
27
|
+
*/
|
|
28
|
+
export declare function perfTimer(unit?: 'ms' | 'seconds'): {
|
|
29
|
+
start: number;
|
|
30
|
+
end(): string;
|
|
31
|
+
};
|
package/dist/src/timer-utils.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.retryWithDelay = exports.executeInDelayedLoop = exports.waitUntilTrue = exports.runAsync = exports.timeout = void 0;
|
|
3
|
+
exports.perfTimer = exports.retryWithDelay = exports.executeInDelayedLoop = exports.waitUntilTrue = exports.runAsync = exports.timeout = void 0;
|
|
4
4
|
//----------------------------------------
|
|
5
5
|
// TIMEOUT UTILS
|
|
6
6
|
//----------------------------------------
|
|
7
7
|
const logger_utils_1 = require("./logger-utils");
|
|
8
8
|
const error_utils_1 = require("./error-utils");
|
|
9
|
+
const math_utils_1 = require("./math-utils");
|
|
9
10
|
async function timeout(ms, fn = () => { }) { return new Promise(res => setTimeout(res, ms)).then(fn); }
|
|
10
11
|
exports.timeout = timeout;
|
|
11
12
|
async function runAsync(callback, milliseconds$ = 1) { return timeout(milliseconds$, callback); }
|
|
@@ -67,4 +68,23 @@ async function retryWithDelay(callback, retrySeconds) {
|
|
|
67
68
|
}
|
|
68
69
|
}
|
|
69
70
|
exports.retryWithDelay = retryWithDelay;
|
|
71
|
+
/** Use this timer to measure code performances.
|
|
72
|
+
* @example ```
|
|
73
|
+
const time = perfTimer()
|
|
74
|
+
|
|
75
|
+
for(let i = 0; i < 9999;i++) longProcess()
|
|
76
|
+
|
|
77
|
+
console.log('Process took ' + time.end())
|
|
78
|
+
```
|
|
79
|
+
*/
|
|
80
|
+
function perfTimer(unit = 'seconds') {
|
|
81
|
+
return {
|
|
82
|
+
start: Date.now(),
|
|
83
|
+
end() {
|
|
84
|
+
const msSinceStart = Date.now() - this.start;
|
|
85
|
+
return unit === 'ms' ? msSinceStart + ' ' + unit : (0, math_utils_1.round2)(msSinceStart / 1000) + ' ' + unit;
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
exports.perfTimer = perfTimer;
|
|
70
90
|
//# sourceMappingURL=timer-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timer-utils.js","sourceRoot":"","sources":["../../src/timer-utils.ts"],"names":[],"mappings":";;;AACA,0CAA0C;AAC1C,gBAAgB;AAChB,0CAA0C;AAC1C,iDAAkD;AAClD,+CAAgD;
|
|
1
|
+
{"version":3,"file":"timer-utils.js","sourceRoot":"","sources":["../../src/timer-utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/timer-utils.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
//----------------------------------------
|
|
5
5
|
import { cliProgressBar, C } from './logger-utils'
|
|
6
6
|
import { DescriptiveError } from './error-utils'
|
|
7
|
+
import { round2 } from './math-utils'
|
|
7
8
|
|
|
8
9
|
|
|
9
10
|
export async function timeout(ms, fn = () => { /* */ }) { return new Promise(res => setTimeout(res, ms)).then(fn) }
|
|
@@ -66,4 +67,23 @@ export async function retryWithDelay(
|
|
|
66
67
|
await timeout(n * 1000)
|
|
67
68
|
await callback()
|
|
68
69
|
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/** Use this timer to measure code performances.
|
|
73
|
+
* @example ```
|
|
74
|
+
const time = perfTimer()
|
|
75
|
+
|
|
76
|
+
for(let i = 0; i < 9999;i++) longProcess()
|
|
77
|
+
|
|
78
|
+
console.log('Process took ' + time.end())
|
|
79
|
+
```
|
|
80
|
+
*/
|
|
81
|
+
export function perfTimer(unit: 'ms' | 'seconds' = 'seconds') {
|
|
82
|
+
return {
|
|
83
|
+
start: Date.now(),
|
|
84
|
+
end() {
|
|
85
|
+
const msSinceStart = Date.now() - this.start
|
|
86
|
+
return unit === 'ms' ? msSinceStart + ' ' + unit : round2(msSinceStart / 1000) + ' ' + unit
|
|
87
|
+
}
|
|
88
|
+
}
|
|
69
89
|
}
|