topkat-utils 1.2.82 → 1.2.84

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.
@@ -9,7 +9,7 @@ export declare function err422IfNotSet(o: any): void;
9
9
  /** Works natively with sync AND async functions */
10
10
  export declare function tryCatch<T>(callback: () => T, onErr?: Function): T;
11
11
  export declare const failSafe: typeof tryCatch;
12
- export declare class DescriptiveError extends Error {
12
+ export declare class DescriptiveError<ExpectedOriginalError = any> extends Error {
13
13
  /** Full error infos, extra infos + message and code...etc as object */
14
14
  errorDescription: {
15
15
  code: number;
@@ -18,6 +18,7 @@ export declare class DescriptiveError extends Error {
18
18
  originalError?: string;
19
19
  [k: string]: any;
20
20
  };
21
+ originalError: ExpectedOriginalError;
21
22
  /** Http code. Eg: 404, 403... */
22
23
  code?: number;
23
24
  msg: string;
@@ -61,6 +61,7 @@ function extraInfosRendererDefault(extraInfos) {
61
61
  class DescriptiveError extends Error {
62
62
  /** Full error infos, extra infos + message and code...etc as object */
63
63
  errorDescription = {};
64
+ originalError = {};
64
65
  /** Http code. Eg: 404, 403... */
65
66
  code;
66
67
  msg;
@@ -122,6 +123,7 @@ class DescriptiveError extends Error {
122
123
  errorLogs.push(...extraInfosRenderer(extraInfos));
123
124
  }
124
125
  if (err) {
126
+ this.originalError = err;
125
127
  errorLogs.push('== ORIGINAL ERROR ==');
126
128
  if (typeof err.parseError === 'function') {
127
129
  err.hasBeenLogged = false;
@@ -1 +1 @@
1
- {"version":3,"file":"error-utils.js","sourceRoot":"","sources":["../../src/error-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error-utils.js","sourceRoot":"","sources":["../../src/error-utils.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,8 @@ export declare function round2(number: number | string, decimals?: number): numb
6
6
  export declare function isBetween(number: number, min: number, max: number, inclusive?: boolean): boolean;
7
7
  /** Random number between two values with 0 decimals by default */
8
8
  export declare function random(nb1: number, nb2: number, nbOfDecimals?: number): number;
9
+ /** Random multiple of a number between two values */
10
+ export declare function randomMultipleOf(multiple: number, nb1: number, nb2: number): number;
9
11
  /** Sum all values of an array, all values MUST be numbers */
10
12
  export declare function sumArray(array: number[]): number;
11
13
  /** Moyenne / average between array of values
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.minMax = exports.pad = exports.moyenne = exports.sumArray = exports.random = exports.isBetween = exports.round2 = exports.round = void 0;
3
+ exports.minMax = exports.pad = exports.moyenne = exports.sumArray = exports.randomMultipleOf = exports.random = exports.isBetween = exports.round2 = exports.round = void 0;
4
4
  //----------------------------------------
5
5
  // MATH UTILS
6
6
  //----------------------------------------
@@ -17,6 +17,15 @@ exports.isBetween = isBetween;
17
17
  /** Random number between two values with 0 decimals by default */
18
18
  function random(nb1, nb2, nbOfDecimals = 0) { return round(Math.random() * (nb2 - nb1) + nb1, nbOfDecimals); }
19
19
  exports.random = random;
20
+ /** Random multiple of a number between two values */
21
+ function randomMultipleOf(multiple, nb1, nb2) {
22
+ if (multiple === 0)
23
+ multiple = 1;
24
+ let randomNumber = Math.random() * (nb2 - nb1) + nb1;
25
+ randomNumber = Math.round(randomNumber / multiple) * multiple;
26
+ return randomNumber < 1 ? randomNumber = multiple : randomNumber;
27
+ }
28
+ exports.randomMultipleOf = randomMultipleOf;
20
29
  /** Sum all values of an array, all values MUST be numbers */
21
30
  function sumArray(array) {
22
31
  return array.filter(item => typeof item === 'number').reduce((sum, val) => (0, isset_1.isset)(val) ? val + sum : sum, 0);
@@ -1 +1 @@
1
- {"version":3,"file":"math-utils.js","sourceRoot":"","sources":["../../src/math-utils.ts"],"names":[],"mappings":";;;AAAA,0CAA0C;AAC1C,aAAa;AACb,0CAA0C;AAC1C,mCAA+B;AAE/B,uDAAuD;AACvD,SAAgB,KAAK,CAAC,MAAuB,EAAE,QAAQ,GAAG,CAAC,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA,CAAC,CAAC;AAAhM,sBAAgM;AAChM,uDAAuD;AACvD,SAAgB,MAAM,CAAC,MAAuB,EAAE,QAAQ,GAAG,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA,CAAC,CAAC;AAAhG,wBAAgG;AAEhG,8DAA8D;AAC9D,SAAgB,SAAS,CAAC,MAAc,EAAE,GAAW,EAAE,GAAW,EAAE,SAAS,GAAG,IAAI,IAAI,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,GAAG,IAAI,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,IAAI,MAAM,GAAG,GAAG,CAAA,CAAC,CAAC;AAA1K,8BAA0K;AAE1K,kEAAkE;AAClE,SAAgB,MAAM,CAAC,GAAW,EAAE,GAAW,EAAE,YAAY,GAAG,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,EAAE,YAAY,CAAC,CAAA,CAAC,CAAC;AAApI,wBAAoI;AAEpI,6DAA6D;AAC7D,SAAgB,QAAQ,CAAC,KAAe;IACpC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,IAAA,aAAK,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;AAC/G,CAAC;AAFD,4BAEC;AAED;;EAEE;AACF,SAAgB,OAAO,CAAC,KAAe,EAAE,YAAY,GAAG,CAAC;IACrD,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;AAC9D,CAAC;AAFD,0BAEC;AAED,6CAA6C;AAC7C,SAAgB,GAAG,CAAC,WAA4B,EAAE,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA,CAAC,CAAC;AAAjH,kBAAiH;AAGjH;;;;;GAKG;AACH,SAAgB,MAAM,CAAC,EAAU,EAAE,GAAW,EAAE,GAAW,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAA,CAAC,CAAC;AAAxG,wBAAwG"}
1
+ {"version":3,"file":"math-utils.js","sourceRoot":"","sources":["../../src/math-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.82",
3
+ "version": "1.2.84",
4
4
  "type": "commonjs",
5
5
  "types": "index.ts",
6
6
  "main": "dist",
@@ -55,7 +55,7 @@ function extraInfosRendererDefault(extraInfos) {
55
55
 
56
56
 
57
57
 
58
- export class DescriptiveError extends Error {
58
+ export class DescriptiveError<ExpectedOriginalError = any> extends Error {
59
59
  /** Full error infos, extra infos + message and code...etc as object */
60
60
  errorDescription: {
61
61
  code: number
@@ -64,6 +64,7 @@ export class DescriptiveError extends Error {
64
64
  originalError?: string
65
65
  [k: string]: any
66
66
  } = {} as any
67
+ originalError: ExpectedOriginalError = {} as any
67
68
  /** Http code. Eg: 404, 403... */
68
69
  code?: number
69
70
  msg: string
@@ -111,6 +112,7 @@ export class DescriptiveError extends Error {
111
112
  }
112
113
 
113
114
  this.code = code || 500
115
+
114
116
  if (this.options.doNotDisplayCode || (this.options.hasOwnProperty('code') && !isset(this.options.code))) delete this.code
115
117
 
116
118
  if (!isset(extraInfos.value) && this.options.hasOwnProperty('value')) extraInfos.value = 'undefined'
@@ -129,6 +131,7 @@ export class DescriptiveError extends Error {
129
131
  }
130
132
 
131
133
  if (err) {
134
+ this.originalError = err
132
135
  errorLogs.push('== ORIGINAL ERROR ==')
133
136
  if (typeof err.parseError === 'function') {
134
137
  err.hasBeenLogged = false
package/src/math-utils.ts CHANGED
@@ -14,6 +14,17 @@ export function isBetween(number: number, min: number, max: number, inclusive =
14
14
  /** Random number between two values with 0 decimals by default */
15
15
  export function random(nb1: number, nb2: number, nbOfDecimals = 0) { return round(Math.random() * (nb2 - nb1) + nb1, nbOfDecimals) }
16
16
 
17
+ /** Random multiple of a number between two values */
18
+ export function randomMultipleOf(multiple: number, nb1: number, nb2: number) {
19
+
20
+ if (multiple === 0) multiple = 1
21
+
22
+ let randomNumber = Math.random() * (nb2 - nb1) + nb1
23
+ randomNumber = Math.round(randomNumber / multiple) * multiple
24
+
25
+ return randomNumber < 1 ? randomNumber = multiple : randomNumber
26
+ }
27
+
17
28
  /** Sum all values of an array, all values MUST be numbers */
18
29
  export function sumArray(array: number[]) {
19
30
  return array.filter(item => typeof item === 'number').reduce((sum, val) => isset(val) ? val + sum : sum, 0)