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.
@@ -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:9,timeout
2002
- FN:9,fn
2003
- FN:11,runAsync
2004
- FN:20,waitUntilTrue
2005
- FN:44,executeInDelayedLoop
2006
- FN:61,retryWithDelay
2007
- FNF:6
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,0
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,2
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,0
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,2
2152
+ DA:59,0
2074
2153
  DA:60,2
2075
2154
  DA:61,2
2076
- DA:62,0
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
- LF:69
2085
- LH:34
2086
- BRDA:9,0,0,16
2087
- BRDA:9,1,0,16
2088
- BRDA:9,2,0,16
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
+ };
@@ -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;AAGzC,KAAK,UAAU,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,GAAG,EAAE,GAAS,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA,CAAC,CAAC;AAAnH,0BAAmH;AAE5G,KAAK,UAAU,QAAQ,CAAC,QAAQ,EAAE,aAAa,GAAG,CAAC,IAAI,OAAO,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAA,CAAC,CAAC;AAAvG,4BAAuG;AAEvG;;;;;;GAMG;AACI,KAAK,UAAU,aAAa,CAAC,QAAQ,EAAE,UAAU,GAAG,EAAE,EAAE,kBAAkB,GAAG,IAAI,EAAE,SAAS,GAAG,IAAI;IACtG,IAAI,cAAc,GAAG,IAAI,CAAA;IACzB,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,MAAM,OAAO,GAAG,OAAO,kBAAkB,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,GAAG,kBAAkB,CAAC,CAAC,CAAC,sCAAsC,CAAA;IAElI,IAAI,UAAU;QAAE,UAAU,CAAC,GAAG,EAAE,CAAC,cAAc,GAAG,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC,CAAA;IAE3E,OAAO,QAAQ,EAAE,KAAK,IAAI,IAAI,cAAc,EAAE;QAC1C,IAAI,SAAS;YAAE,IAAA,6BAAc,EAAC,IAAI,EAAE,CAAC,CAAA;QACrC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;KACrB;IACD,IAAI,SAAS;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACzC,IAAI,CAAC,cAAc,IAAI,kBAAkB;QAAE,MAAM,IAAI,8BAAgB,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;AACjG,CAAC;AAbD,sCAaC;AAGD,MAAM,iBAAiB,GAAyB,EAAE,CAAA;AAClD,IAAI,WAAW,GAAG,KAAK,CAAA;AAEvB;;;;GAIG;AACI,KAAK,UAAU,oBAAoB,CAAC,QAAQ,EAAE,IAAI,GAAG,GAAG,EAAE,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC,gBAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5F,iBAAiB,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,CAAA;IACvD,IAAI,WAAW;QAAE,OAAM;IACvB,WAAW,GAAG,IAAI,CAAA;IAClB,OAAO,iBAAiB,CAAC,MAAM,EAAE;QAC7B,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,aAAa,CAAC,GAAG,iBAAiB,CAAC,KAAK,EAAS,CAAA;QACxE,IAAI;YACA,MAAM,QAAQ,EAAE,CAAA;YAChB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;SACtB;QAAC,OAAO,GAAG,EAAE;YACV,aAAa,CAAC,GAAG,CAAC,CAAA;SACrB;KACJ;IACD,WAAW,GAAG,KAAK,CAAA;AACvB,CAAC;AAdD,oDAcC;AAED,6FAA6F;AACtF,KAAK,UAAU,cAAc,CAChC,QAAkB,EAClB,YAAsB;IAEtB,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE;QAC1B,MAAM,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;QACvB,MAAM,QAAQ,EAAE,CAAA;KACnB;AACL,CAAC;AARD,wCAQC"}
1
+ {"version":3,"file":"timer-utils.js","sourceRoot":"","sources":["../../src/timer-utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "topkat-utils",
3
- "version": "1.2.112",
3
+ "version": "1.2.115",
4
4
  "type": "commonjs",
5
5
  "types": "index.ts",
6
6
  "main": "dist",
@@ -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
  }