topkat-utils 1.2.95 → 1.2.96

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.
@@ -12,13 +12,20 @@ export declare const failSafe: typeof tryCatch;
12
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
+ /** used to uniquely identify the error */
16
+ id: string;
17
+ /** Http error code if any */
15
18
  code: number;
16
19
  msg: string;
17
20
  message: string;
21
+ /** The parent error if any */
18
22
  originalError?: string;
19
23
  [k: string]: any;
20
24
  };
25
+ /** The parent error if any */
21
26
  originalError: ExpectedOriginalError;
27
+ /** used to uniquely identify the error */
28
+ id: string;
22
29
  /** Http code. Eg: 404, 403... */
23
30
  code?: number;
24
31
  msg: string;
@@ -10,6 +10,7 @@ const is_empty_1 = require("./is-empty");
10
10
  const clean_stack_trace_1 = require("./clean-stack-trace");
11
11
  const logger_utils_1 = require("./logger-utils");
12
12
  const remove_circular_json_stringify_1 = require("./remove-circular-json-stringify");
13
+ const string_utils_1 = require("./string-utils");
13
14
  function errIfNotSet(objOfVarNamesWithValues) { return errXXXIfNotSet(422, false, objOfVarNamesWithValues); }
14
15
  exports.errIfNotSet = errIfNotSet;
15
16
  function err500IfNotSet(objOfVarNamesWithValues) { return errXXXIfNotSet(500, false, objOfVarNamesWithValues); }
@@ -61,7 +62,10 @@ function extraInfosRendererDefault(extraInfos) {
61
62
  class DescriptiveError extends Error {
62
63
  /** Full error infos, extra infos + message and code...etc as object */
63
64
  errorDescription = {};
65
+ /** The parent error if any */
64
66
  originalError = {};
67
+ /** used to uniquely identify the error */
68
+ id = (0, string_utils_1.generateToken)(24, true);
65
69
  /** Http code. Eg: 404, 403... */
66
70
  code;
67
71
  msg;
@@ -102,6 +106,7 @@ class DescriptiveError extends Error {
102
106
  const { err, noStackTrace = false, ressource, extraInfosRenderer = extraInfosRendererDefault, ...extraInfosRaw } = this.options;
103
107
  let { code } = this.options;
104
108
  const extraInfos = {
109
+ id: this.id,
105
110
  ...extraInfosRaw,
106
111
  // additionnal extra info passed from parent error
107
112
  ...(this.options.extraInfos || {}),
@@ -154,6 +159,7 @@ class DescriptiveError extends Error {
154
159
  if (this.options.doNotDisplayCode || (this.options.hasOwnProperty('code') && !(0, isset_1.isset)(this.options.code)))
155
160
  delete this.code;
156
161
  this.errorDescription = {
162
+ id: this.id,
157
163
  msg: this.msg,
158
164
  message: this.msg,
159
165
  code,
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "topkat-utils",
3
- "version": "1.2.95",
3
+ "version": "1.2.96",
4
4
  "type": "commonjs",
5
5
  "types": "index.ts",
6
6
  "main": "dist",
@@ -9,6 +9,7 @@ import { cleanStackTrace } from './clean-stack-trace'
9
9
  import { C } from './logger-utils'
10
10
  export { type ErrorOptions } from './types'
11
11
  import { removeCircularJSONstringify } from './remove-circular-json-stringify'
12
+ import { generateToken } from './string-utils'
12
13
 
13
14
  export function errIfNotSet(objOfVarNamesWithValues) { return errXXXIfNotSet(422, false, objOfVarNamesWithValues) }
14
15
 
@@ -58,13 +59,20 @@ function extraInfosRendererDefault(extraInfos) {
58
59
  export class DescriptiveError<ExpectedOriginalError = any> extends Error {
59
60
  /** Full error infos, extra infos + message and code...etc as object */
60
61
  errorDescription: {
62
+ /** used to uniquely identify the error */
63
+ id: string
64
+ /** Http error code if any */
61
65
  code: number
62
66
  msg: string
63
67
  message: string
68
+ /** The parent error if any */
64
69
  originalError?: string
65
70
  [k: string]: any
66
71
  } = {} as any
72
+ /** The parent error if any */
67
73
  originalError: ExpectedOriginalError = {} as any
74
+ /** used to uniquely identify the error */
75
+ id: string = generateToken(24, true)
68
76
  /** Http code. Eg: 404, 403... */
69
77
  code?: number
70
78
  msg: string
@@ -107,6 +115,7 @@ export class DescriptiveError<ExpectedOriginalError = any> extends Error {
107
115
  const { err, noStackTrace = false, ressource, extraInfosRenderer = extraInfosRendererDefault, ...extraInfosRaw } = this.options
108
116
  let { code } = this.options
109
117
  const extraInfos = {
118
+ id: this.id,
110
119
  ...extraInfosRaw,
111
120
  // additionnal extra info passed from parent error
112
121
  ...(this.options.extraInfos || {}),
@@ -158,6 +167,7 @@ export class DescriptiveError<ExpectedOriginalError = any> extends Error {
158
167
  this.code = code || 500
159
168
  if (this.options.doNotDisplayCode || (this.options.hasOwnProperty('code') && !isset(this.options.code))) delete this.code
160
169
  this.errorDescription = {
170
+ id: this.id,
161
171
  msg: this.msg,
162
172
  message: this.msg,
163
173
  code,