@leyyo/common 1.2.1 → 1.2.3
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.
|
@@ -2,15 +2,31 @@ import type { ErrorCastType, ErrorCommonLike, ErrorCommonSecure, LeyyoErrorLike
|
|
|
2
2
|
import type { LeyyoLike } from "../leyyo";
|
|
3
3
|
import type { ClassLike } from "../shared";
|
|
4
4
|
import type { Opt } from "../opt";
|
|
5
|
+
/**
|
|
6
|
+
* Error common class
|
|
7
|
+
* */
|
|
5
8
|
export declare class ErrorCommon implements ErrorCommonLike, ErrorCommonSecure {
|
|
6
9
|
private lyy;
|
|
7
10
|
private _knownPackages;
|
|
8
11
|
constructor(lyy: LeyyoLike);
|
|
9
|
-
|
|
10
|
-
|
|
12
|
+
/**
|
|
13
|
+
* Copy source properties into target parameters
|
|
14
|
+
*
|
|
15
|
+
* @param {LeyyoErrorLike} target - target error
|
|
16
|
+
* @param {Error} source - source error
|
|
17
|
+
* */
|
|
18
|
+
protected _copyProperties(target: LeyyoErrorLike, source: Error): void;
|
|
19
|
+
/** @inheritDoc */
|
|
20
|
+
register(clazz: ClassLike, fqn?: string): void;
|
|
21
|
+
/** @inheritDoc */
|
|
11
22
|
castForClass<E extends LeyyoErrorLike>(clazz: ClassLike<E>, e: Error, opt?: Opt): E;
|
|
12
|
-
|
|
23
|
+
/** @inheritDoc */
|
|
24
|
+
cast(e: Error, params: Opt, type?: ErrorCastType): LeyyoErrorLike;
|
|
25
|
+
/** @inheritDoc */
|
|
13
26
|
addKnownPackage(packageName: string, shortName: string): void;
|
|
27
|
+
/** @inheritDoc */
|
|
28
|
+
logText(e: Error, ...parts: Array<string | number>): string;
|
|
29
|
+
/** @inheritDoc */
|
|
14
30
|
stack(source: LeyyoErrorLike, force?: boolean): void;
|
|
15
31
|
get $back(): ErrorCommonLike;
|
|
16
32
|
$init(): void;
|
|
@@ -40,20 +40,34 @@ const items_3 = require("./items");
|
|
|
40
40
|
const stackTraceParser = __importStar(require("stacktrace-parser"));
|
|
41
41
|
const internal_1 = require("../internal");
|
|
42
42
|
// noinspection JSUnusedLocalSymbols
|
|
43
|
+
/**
|
|
44
|
+
* Error common class
|
|
45
|
+
* */
|
|
43
46
|
class ErrorCommon {
|
|
44
47
|
constructor(lyy) {
|
|
45
48
|
this.lyy = lyy;
|
|
46
49
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
50
|
+
/**
|
|
51
|
+
* Copy source properties into target parameters
|
|
52
|
+
*
|
|
53
|
+
* @param {LeyyoErrorLike} target - target error
|
|
54
|
+
* @param {Error} source - source error
|
|
55
|
+
* */
|
|
56
|
+
_copyProperties(target, source) {
|
|
57
|
+
if (!(source instanceof Error)) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
for (const [k, v] of Object.entries(source)) {
|
|
52
61
|
if (!['name', 'message', 'stack'].includes(k) && (typeof k === 'string') && !['symbol', 'function', 'undefined'].includes(typeof v)) {
|
|
53
|
-
this.lyy.opt.add(
|
|
62
|
+
target.params = this.lyy.opt.add(target.params, k, v);
|
|
54
63
|
}
|
|
55
64
|
}
|
|
56
65
|
}
|
|
66
|
+
/** @inheritDoc */
|
|
67
|
+
register(clazz, fqn) {
|
|
68
|
+
this.lyy.event.emit('ly:error:register', clazz, fqn);
|
|
69
|
+
}
|
|
70
|
+
/** @inheritDoc */
|
|
57
71
|
castForClass(clazz, e, opt) {
|
|
58
72
|
const err = new clazz(e.message, opt);
|
|
59
73
|
this._copyProperties(err, e);
|
|
@@ -61,18 +75,19 @@ class ErrorCommon {
|
|
|
61
75
|
err.causedBy = e;
|
|
62
76
|
return err;
|
|
63
77
|
}
|
|
64
|
-
|
|
78
|
+
/** @inheritDoc */
|
|
79
|
+
cast(e, params, type = 'leyyo') {
|
|
65
80
|
let err;
|
|
66
81
|
if (!(e instanceof items_1.LeyyoError)) {
|
|
67
82
|
switch (type) {
|
|
68
83
|
case "caused":
|
|
69
|
-
err = new items_3.CausedError(e.message,
|
|
84
|
+
err = new items_3.CausedError(e.message, params, e);
|
|
70
85
|
break;
|
|
71
86
|
case "silent":
|
|
72
|
-
err = new items_2.SilentError(e,
|
|
87
|
+
err = new items_2.SilentError(e, params);
|
|
73
88
|
break;
|
|
74
89
|
default:
|
|
75
|
-
err = new items_1.LeyyoError(e.message,
|
|
90
|
+
err = new items_1.LeyyoError(e.message, params);
|
|
76
91
|
err.causedBy = e;
|
|
77
92
|
break;
|
|
78
93
|
}
|
|
@@ -80,10 +95,11 @@ class ErrorCommon {
|
|
|
80
95
|
}
|
|
81
96
|
else {
|
|
82
97
|
err = e;
|
|
83
|
-
err.params = this.lyy.opt.append(err.params,
|
|
98
|
+
err.params = this.lyy.opt.append(err.params, params);
|
|
84
99
|
}
|
|
85
100
|
return err;
|
|
86
101
|
}
|
|
102
|
+
/** @inheritDoc */
|
|
87
103
|
addKnownPackage(packageName, shortName) {
|
|
88
104
|
if (typeof packageName !== 'string' || packageName.trim() !== packageName || packageName.trim() === '') {
|
|
89
105
|
throw new items_1.LeyyoError('Invalid package name', { where: `${internal_1.FQN}.ErrorCommon`, method: 'addKnownPackage', value: packageName, field: 'packageName' });
|
|
@@ -93,6 +109,28 @@ class ErrorCommon {
|
|
|
93
109
|
}
|
|
94
110
|
this._knownPackages.set(packageName, shortName);
|
|
95
111
|
}
|
|
112
|
+
/** @inheritDoc */
|
|
113
|
+
logText(e, ...parts) {
|
|
114
|
+
var _a, _b;
|
|
115
|
+
parts = parts.map(p => {
|
|
116
|
+
if (typeof p === 'string') {
|
|
117
|
+
p = p.trim();
|
|
118
|
+
return (p !== '') ? p : undefined;
|
|
119
|
+
}
|
|
120
|
+
else if (typeof p === 'number') {
|
|
121
|
+
return p.toString(10);
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
return undefined;
|
|
125
|
+
}
|
|
126
|
+
}).filter(p => p !== undefined);
|
|
127
|
+
const info = parts.length > 0 ? '<' + parts.join('/') + '> ' : '';
|
|
128
|
+
if (!(e instanceof Error)) {
|
|
129
|
+
return info;
|
|
130
|
+
}
|
|
131
|
+
return `${info}[${(_a = e.name) !== null && _a !== void 0 ? _a : 'UnknownError'}] => ${(_b = e.message) !== null && _b !== void 0 ? _b : 'Unknown message'}`;
|
|
132
|
+
}
|
|
133
|
+
/** @inheritDoc */
|
|
96
134
|
stack(source, force) {
|
|
97
135
|
var _a;
|
|
98
136
|
if (!force && Array.isArray(source.stackTrace)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.common.js","sourceRoot":"","sources":["../../src/error/error.common.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,mCAAmC;AACnC,mCAAoC;AACpC,mCAAoC;AACpC,oEAAsD;AACtD,0CAAgC;AAEhC,oCAAoC;AACpC,MAAa,WAAW;IAGpB,YAAoB,GAAc;QAAd,QAAG,GAAH,GAAG,CAAW;IAClC,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"error.common.js","sourceRoot":"","sources":["../../src/error/error.common.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,25 +2,88 @@ import type { ClassLike, InitLike, OneOrMore, ShiftMain, ShiftSecure } from "../
|
|
|
2
2
|
import type { Logger } from "../log";
|
|
3
3
|
import type { Opt } from "../opt";
|
|
4
4
|
export type ErrorCastType = 'leyyo' | 'silent' | 'caused';
|
|
5
|
+
/**
|
|
6
|
+
* Error common interface
|
|
7
|
+
* */
|
|
5
8
|
export interface ErrorCommonLike extends ShiftSecure<ErrorCommonSecure> {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Register an error class
|
|
11
|
+
*
|
|
12
|
+
* @param {function} clazz - error class
|
|
13
|
+
* @param {string?} fqn - fully qualified name
|
|
14
|
+
* */
|
|
15
|
+
register(clazz: ClassLike, fqn?: string): void;
|
|
16
|
+
/**
|
|
17
|
+
* Cast a native error to given error class
|
|
18
|
+
*
|
|
19
|
+
* @param {function} clazz - new error class
|
|
20
|
+
* @param {Error} e - native error instance
|
|
21
|
+
* @param {Opt?} params - params for error
|
|
22
|
+
* @return {LeyyoErrorLike} - new error instance
|
|
23
|
+
* */
|
|
24
|
+
castForClass<E extends LeyyoErrorLike>(clazz: ClassLike<E>, e: Error, params?: Opt): E;
|
|
25
|
+
/**
|
|
26
|
+
* Cast a native error to one of default error classes
|
|
27
|
+
*
|
|
28
|
+
* @param {Error} e - native error instance
|
|
29
|
+
* @param {Opt?} params - params for error
|
|
30
|
+
* @param {ErrorCastType?} type - which class, ie: leyyo, silent, caused
|
|
31
|
+
* @return {LeyyoErrorLike} - new error instance
|
|
32
|
+
* */
|
|
33
|
+
cast(e: Error, params?: Opt, type?: ErrorCastType): LeyyoErrorLike;
|
|
34
|
+
/**
|
|
35
|
+
* Add known package to shorten stack paths
|
|
36
|
+
*
|
|
37
|
+
* @param {string} packageName - original package name, like @package/component
|
|
38
|
+
* @param {string} shortName - short name for given package
|
|
39
|
+
* */
|
|
9
40
|
addKnownPackage(packageName: string, shortName: string): void;
|
|
41
|
+
/**
|
|
42
|
+
* Build formatted {@link LeyyoErrorLike#stackTrace} from native {@link Error#stack}
|
|
43
|
+
*
|
|
44
|
+
* @param {LeyyoErrorLike} source - error instance
|
|
45
|
+
* @param {boolean} force - format again, even if it was already formatted
|
|
46
|
+
* */
|
|
10
47
|
stack(source: LeyyoErrorLike, force?: boolean): void;
|
|
48
|
+
/**
|
|
49
|
+
* Build easy error text as `<info> [error.name] => [error.message]`
|
|
50
|
+
*
|
|
51
|
+
* @param {Error} err - error instance
|
|
52
|
+
* @param {...Array<string|number>} parts - parts for info
|
|
53
|
+
* @return {string}
|
|
54
|
+
* */
|
|
55
|
+
logText(err: Error, ...parts: Array<string | number>): string;
|
|
11
56
|
}
|
|
12
57
|
/**
|
|
13
58
|
* Stack line
|
|
14
59
|
* */
|
|
15
60
|
export interface ErrorStackLine {
|
|
61
|
+
/**
|
|
62
|
+
* File of error
|
|
63
|
+
* */
|
|
16
64
|
file: string;
|
|
65
|
+
/**
|
|
66
|
+
* Method of error
|
|
67
|
+
* */
|
|
17
68
|
method?: string;
|
|
69
|
+
/**
|
|
70
|
+
* Position of error
|
|
71
|
+
* */
|
|
18
72
|
pos?: string;
|
|
19
73
|
}
|
|
20
74
|
export type ErrorCommonSecure = ShiftMain<ErrorCommonLike> & InitLike;
|
|
21
75
|
export interface LeyyoErrorLike extends Error, ShiftSecure<LeyyoErrorSecure> {
|
|
76
|
+
/**
|
|
77
|
+
* Parameters for error
|
|
78
|
+
* */
|
|
22
79
|
params?: Opt;
|
|
80
|
+
/**
|
|
81
|
+
* Caused error
|
|
82
|
+
* */
|
|
23
83
|
causedBy?: OneOrMore<Error>;
|
|
84
|
+
/**
|
|
85
|
+
* Formatted stack trace
|
|
86
|
+
* */
|
|
24
87
|
stackTrace?: Array<ErrorStackLine>;
|
|
25
88
|
}
|
|
26
89
|
export interface LeyyoErrorSecure extends ShiftMain<LeyyoErrorLike> {
|