@avstantso/errors 1.1.0 → 1.2.2
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/CHANGELOG.md +14 -0
- package/dist/_global/BaseError/Abort/_register.d.ts +35 -0
- package/dist/_global/BaseError/Abort/index.d.ts +1 -0
- package/dist/_global/BaseError/ImposibleCaseError/_register.d.ts +15 -0
- package/dist/_global/BaseError/ImposibleCaseError/index.d.ts +1 -0
- package/dist/_global/BaseError/InstanceMethodError/AbstractError/_register.d.ts +23 -0
- package/dist/_global/BaseError/InstanceMethodError/AbstractError/index.d.ts +1 -0
- package/dist/_global/BaseError/InstanceMethodError/NotImplementedError/_register.d.ts +7 -0
- package/dist/_global/BaseError/InstanceMethodError/NotImplementedError/index.d.ts +1 -0
- package/dist/_global/BaseError/InstanceMethodError/NotSupportedError/_register.d.ts +29 -0
- package/dist/_global/BaseError/InstanceMethodError/NotSupportedError/index.d.ts +1 -0
- package/dist/_global/BaseError/InstanceMethodError/_register.d.ts +13 -0
- package/dist/_global/BaseError/InstanceMethodError/index.d.ts +4 -0
- package/dist/_global/BaseError/InvalidArgumentError/InvalidArgumentTypeError/_register.d.ts +57 -0
- package/dist/_global/BaseError/InvalidArgumentError/InvalidArgumentTypeError/index.d.ts +1 -0
- package/dist/_global/BaseError/InvalidArgumentError/_register.d.ts +17 -0
- package/dist/_global/BaseError/InvalidArgumentError/index.d.ts +2 -0
- package/dist/_global/BaseError/InvalidStateError/_register.d.ts +9 -0
- package/dist/_global/BaseError/InvalidStateError/index.d.ts +1 -0
- package/dist/_global/BaseError/SystemError/_register.d.ts +7 -0
- package/dist/_global/BaseError/SystemError/index.d.ts +1 -0
- package/dist/_global/BaseError/UnexpectedError/_register.d.ts +7 -0
- package/dist/_global/BaseError/UnexpectedError/index.d.ts +1 -0
- package/dist/_global/BaseError/_register.d.ts +59 -0
- package/dist/_global/BaseError/index.d.ts +8 -0
- package/dist/_global/index.d.ts +1 -0
- package/dist/export.d.ts +13 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +477 -0
- package/dist/index.js.map +1 -0
- package/package.json +3 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
|
|
4
|
+
## [1.2.2] - 2026-02-04
|
|
5
|
+
|
|
6
|
+
### Changed
|
|
7
|
+
|
|
8
|
+
- Removed `dev-basic` workspace dependency (dev deps now resolved via `.yarnrc.yml` packageExtensions)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
## [1.2.1] - 2026-01-18
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
|
|
15
|
+
- Fix publishing
|
|
16
|
+
|
|
3
17
|
All notable changes to this project will be documented in this file.
|
|
4
18
|
|
|
5
19
|
## [1.1.0] - 2026-01-18
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Abort error class.\
|
|
3
|
+
* Uses exception mechanics for leave call stack of any depth.\
|
|
4
|
+
* In very few cases this way may be normal
|
|
5
|
+
* @example
|
|
6
|
+
* function level1() {
|
|
7
|
+
* function level2() {
|
|
8
|
+
* function levelN() {
|
|
9
|
+
* const condition = true;
|
|
10
|
+
* const x = 15;
|
|
11
|
+
* if (condition) throw new Abort(x);
|
|
12
|
+
* }
|
|
13
|
+
*
|
|
14
|
+
* levelN();
|
|
15
|
+
* }
|
|
16
|
+
*
|
|
17
|
+
* try {
|
|
18
|
+
* level2();
|
|
19
|
+
* } catch (e) {
|
|
20
|
+
* if (Abort.absorb(e)) return e.payload;
|
|
21
|
+
* }
|
|
22
|
+
* }
|
|
23
|
+
*
|
|
24
|
+
* level1()
|
|
25
|
+
*/
|
|
26
|
+
declare class AVStantso_Abort<Payload = unknown> extends AVStantso_BaseError {
|
|
27
|
+
payload?: Payload;
|
|
28
|
+
constructor(payload?: Payload);
|
|
29
|
+
}
|
|
30
|
+
declare namespace AVStantso_Abort {
|
|
31
|
+
/**
|
|
32
|
+
* @summary Abort error class type
|
|
33
|
+
*/
|
|
34
|
+
type Class<Payload = unknown> = AVStantso.TS.Class<AVStantso_Abort<Payload>>;
|
|
35
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './_register';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Handle cases imposible (or imposible-like)
|
|
3
|
+
* @example
|
|
4
|
+
* const a = 1;
|
|
5
|
+
* if (1 === a)
|
|
6
|
+
* console.log('Positive')
|
|
7
|
+
* else if (1 !== a)
|
|
8
|
+
* console.log('Negative')
|
|
9
|
+
* else
|
|
10
|
+
* throw new ImposibleCaseError();
|
|
11
|
+
*/
|
|
12
|
+
declare class AVStantso_ImposibleCaseError extends AVStantso_BaseError {
|
|
13
|
+
constructor(message?: string, internal?: Error);
|
|
14
|
+
}
|
|
15
|
+
declare namespace AVStantso_ImposibleCaseError { }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './_register';
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Error for handle violation of OOP abstraction
|
|
3
|
+
* @example
|
|
4
|
+
* class A {
|
|
5
|
+
* protected doPrint(){
|
|
6
|
+
* throw new AbstractError(this, this.doPrint);
|
|
7
|
+
* }
|
|
8
|
+
*
|
|
9
|
+
* public print(){
|
|
10
|
+
* this.doPrint();
|
|
11
|
+
* }
|
|
12
|
+
* }
|
|
13
|
+
*
|
|
14
|
+
* class B extends A {
|
|
15
|
+
* protected doPrint(){
|
|
16
|
+
* console.log(`%O`, this);
|
|
17
|
+
* }
|
|
18
|
+
* }
|
|
19
|
+
*/
|
|
20
|
+
declare class AVStantso_AbstractError extends AVStantso_InstanceMethodError {
|
|
21
|
+
constructor(instance: object, method: AVStantso_InstanceMethodError.Method, message?: string);
|
|
22
|
+
}
|
|
23
|
+
declare namespace AVStantso_AbstractError { }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './_register';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Stub for not implemented features
|
|
3
|
+
*/
|
|
4
|
+
declare class AVStantso_NotImplementedError extends AVStantso_InstanceMethodError {
|
|
5
|
+
constructor(instance: object, method: AVStantso_InstanceMethodError.Method, message?: string);
|
|
6
|
+
}
|
|
7
|
+
declare namespace AVStantso_NotImplementedError { }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './_register';
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Common case for unsupported features.\
|
|
3
|
+
* Or stub for not ideally OOP hierarchy
|
|
4
|
+
* @example
|
|
5
|
+
* class Foo {
|
|
6
|
+
* read() {
|
|
7
|
+
* ///
|
|
8
|
+
* }
|
|
9
|
+
*
|
|
10
|
+
* write() {
|
|
11
|
+
* ///
|
|
12
|
+
* }
|
|
13
|
+
* }
|
|
14
|
+
*
|
|
15
|
+
* // 👇This is bad code
|
|
16
|
+
* class ReadonlyFoo extends Foo {
|
|
17
|
+
* read() {
|
|
18
|
+
* ///
|
|
19
|
+
* }
|
|
20
|
+
*
|
|
21
|
+
* write() {
|
|
22
|
+
* throw new NotSupportedError(this, this.write);
|
|
23
|
+
* }
|
|
24
|
+
* }
|
|
25
|
+
*/
|
|
26
|
+
declare class AVStantso_NotSupportedError extends AVStantso_InstanceMethodError {
|
|
27
|
+
constructor(instance: object, method: AVStantso_InstanceMethodError.Method, message?: string);
|
|
28
|
+
}
|
|
29
|
+
declare namespace AVStantso_NotSupportedError { }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './_register';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Abstract error class for instance method errors
|
|
3
|
+
*/
|
|
4
|
+
declare class AVStantso_InstanceMethodError extends AVStantso_BaseError {
|
|
5
|
+
instance: object;
|
|
6
|
+
method: AVStantso_InstanceMethodError.Method;
|
|
7
|
+
constructor(instance: object, method: AVStantso_InstanceMethodError.Method, message?: string);
|
|
8
|
+
}
|
|
9
|
+
declare namespace AVStantso_InstanceMethodError {
|
|
10
|
+
type Method = string | {
|
|
11
|
+
name: string;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Hendle or/and check invalid argument type cases
|
|
3
|
+
*/
|
|
4
|
+
declare class AVStantso_InvalidArgumentTypeError extends AVStantso_InvalidArgumentError {
|
|
5
|
+
static validateEx(...[validator, instance, method, type, field]: AVStantso_InvalidArgumentTypeError.Params.ValidateEx): boolean;
|
|
6
|
+
static validate: AVStantso_InvalidArgumentTypeError.Validate;
|
|
7
|
+
type: AVStantso_InvalidArgumentTypeError.Type;
|
|
8
|
+
constructor(...[instance, method, type, field, message]: AVStantso_InvalidArgumentTypeError.Params.Constructor);
|
|
9
|
+
}
|
|
10
|
+
declare namespace AVStantso_InvalidArgumentTypeError {
|
|
11
|
+
type Instance = AVStantso_InvalidArgumentError.Instance;
|
|
12
|
+
type Method = AVStantso_InvalidArgumentError.Method;
|
|
13
|
+
type Type = Method | string[];
|
|
14
|
+
type Field = AVStantso_InvalidArgumentError.Field;
|
|
15
|
+
namespace Validator {
|
|
16
|
+
type Context = {
|
|
17
|
+
instance: Instance;
|
|
18
|
+
method: Method;
|
|
19
|
+
type: Method | string[];
|
|
20
|
+
field: Field;
|
|
21
|
+
key: string;
|
|
22
|
+
value: unknown;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
type Validator = (context: Validator.Context) => boolean;
|
|
26
|
+
namespace Params {
|
|
27
|
+
type Constructor = [
|
|
28
|
+
instance: Instance,
|
|
29
|
+
method: Method,
|
|
30
|
+
type: Type,
|
|
31
|
+
field: Field,
|
|
32
|
+
message?: string
|
|
33
|
+
];
|
|
34
|
+
type ValidateEx = [
|
|
35
|
+
validator: Validator,
|
|
36
|
+
instance: Instance,
|
|
37
|
+
method: Method,
|
|
38
|
+
type: Type,
|
|
39
|
+
field: Field
|
|
40
|
+
];
|
|
41
|
+
type Validate<TType extends Type = Type> = [
|
|
42
|
+
instance: Instance,
|
|
43
|
+
method: Method,
|
|
44
|
+
type: TType,
|
|
45
|
+
field: Field
|
|
46
|
+
];
|
|
47
|
+
type ValidateNoType = [
|
|
48
|
+
instance: Instance,
|
|
49
|
+
method: Method,
|
|
50
|
+
field: Field
|
|
51
|
+
];
|
|
52
|
+
}
|
|
53
|
+
type Validate = {
|
|
54
|
+
(...params: Params.Validate): boolean;
|
|
55
|
+
instanceOf(...params: Params.Validate<AVStantso.TS.Class>): boolean;
|
|
56
|
+
} & Record<'string' | 'number' | 'bigint' | 'boolean' | 'symbol' | 'undefined' | 'object' | 'function' | 'array', (...params: Params.ValidateNoType) => boolean>;
|
|
57
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './_register';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Hendle invalid argument cases
|
|
3
|
+
*/
|
|
4
|
+
declare class AVStantso_InvalidArgumentError extends AVStantso_BaseError {
|
|
5
|
+
static expandField(param: unknown): [string, any];
|
|
6
|
+
static msgPrefix(instance: AVStantso_InvalidArgumentError.Instance, method: AVStantso_InvalidArgumentError.Method): string;
|
|
7
|
+
instance: AVStantso_InvalidArgumentError.Instance;
|
|
8
|
+
method: AVStantso_InvalidArgumentError.Method;
|
|
9
|
+
field: AVStantso_InvalidArgumentError.Field;
|
|
10
|
+
constructor(instance: AVStantso_InvalidArgumentError.Instance, method: AVStantso_InvalidArgumentError.Method, field: AVStantso_InvalidArgumentError.Field, message?: string);
|
|
11
|
+
get expandField(): [string, any];
|
|
12
|
+
}
|
|
13
|
+
declare namespace AVStantso_InvalidArgumentError {
|
|
14
|
+
type Instance = object | AVStantso.TS.Func | string;
|
|
15
|
+
type Method = AVStantso_InstanceMethodError.Method;
|
|
16
|
+
type Field = NodeJS.Dict<unknown>;
|
|
17
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Hendle errors of internal state
|
|
3
|
+
*/
|
|
4
|
+
declare class AVStantso_InvalidStateError extends AVStantso_BaseError {
|
|
5
|
+
instance: AVStantso_InvalidArgumentError.Instance;
|
|
6
|
+
state: unknown;
|
|
7
|
+
constructor(instance: AVStantso_InvalidArgumentError.Instance, state: unknown, message?: string);
|
|
8
|
+
}
|
|
9
|
+
declare namespace AVStantso_InvalidStateError { }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './_register';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './_register';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './_register';
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @summary Base error class
|
|
3
|
+
*/
|
|
4
|
+
declare class AVStantso_BaseError extends Error {
|
|
5
|
+
static stackToArr(error: Error): string[];
|
|
6
|
+
internal: Error;
|
|
7
|
+
constructor(message: string, internal?: Error);
|
|
8
|
+
/**
|
|
9
|
+
* @summary `error` is `this` error class
|
|
10
|
+
*/
|
|
11
|
+
static is<TErrorClass extends AVStantso_BaseError.Class>(this: TErrorClass, error: unknown): error is InstanceType<TErrorClass>;
|
|
12
|
+
/**
|
|
13
|
+
* @summary If `error` is `this` error class, returns `true`, throws `error` else
|
|
14
|
+
*/
|
|
15
|
+
static absorb<TErrorClass extends AVStantso_BaseError.Class>(this: TErrorClass, error: unknown): error is InstanceType<TErrorClass>;
|
|
16
|
+
/**
|
|
17
|
+
* @summary Extract data from error for write to log
|
|
18
|
+
*/
|
|
19
|
+
static toLogAnyError(error: Error, parentMessage?: string): object;
|
|
20
|
+
/**
|
|
21
|
+
* @summary Log `internal` error rule.\
|
|
22
|
+
* May be overridden
|
|
23
|
+
*/
|
|
24
|
+
protected toLogInternal(): object;
|
|
25
|
+
/**
|
|
26
|
+
* @summary Log this error details rule.\
|
|
27
|
+
* Must be overridden for log others details of this error
|
|
28
|
+
*/
|
|
29
|
+
protected toLogDetails(): object;
|
|
30
|
+
/**
|
|
31
|
+
* @summary Log this error rule.
|
|
32
|
+
* @param parentMessage Parent message for internal errors
|
|
33
|
+
*/
|
|
34
|
+
toLog(parentMessage?: string): object;
|
|
35
|
+
}
|
|
36
|
+
declare namespace AVStantso_BaseError {
|
|
37
|
+
/**
|
|
38
|
+
* @summary Base error class type
|
|
39
|
+
*/
|
|
40
|
+
type Class = AVStantso.TS.Class<AVStantso_BaseError>;
|
|
41
|
+
/**
|
|
42
|
+
* @summary Error details for external usage
|
|
43
|
+
*/
|
|
44
|
+
namespace Details {
|
|
45
|
+
/**
|
|
46
|
+
* @summary Error details union
|
|
47
|
+
*/
|
|
48
|
+
type Union = Details | unknown[];
|
|
49
|
+
/**
|
|
50
|
+
* @summary Error details provider
|
|
51
|
+
*/
|
|
52
|
+
type Provider = {
|
|
53
|
+
details: Details.Union;
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
interface Details {
|
|
57
|
+
[key: string]: unknown;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './BaseError';
|
package/dist/export.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import BaseError = AVStantso_BaseError;
|
|
2
|
+
import InstanceMethodError = AVStantso_InstanceMethodError;
|
|
3
|
+
import Abort = AVStantso_Abort;
|
|
4
|
+
import AbstractError = AVStantso_AbstractError;
|
|
5
|
+
import InvalidArgumentError = AVStantso_InvalidArgumentError;
|
|
6
|
+
import InvalidArgumentTypeError = AVStantso_InvalidArgumentTypeError;
|
|
7
|
+
import InvalidStateError = AVStantso_InvalidStateError;
|
|
8
|
+
import ImposibleCaseError = AVStantso_ImposibleCaseError;
|
|
9
|
+
import SystemError = AVStantso_SystemError;
|
|
10
|
+
import UnexpectedError = AVStantso_UnexpectedError;
|
|
11
|
+
import NotImplementedError = AVStantso_NotImplementedError;
|
|
12
|
+
import NotSupportedError = AVStantso_NotSupportedError;
|
|
13
|
+
export { BaseError, InstanceMethodError, Abort, AbstractError, InvalidArgumentError, InvalidArgumentTypeError, InvalidStateError, ImposibleCaseError, UnexpectedError, SystemError, NotImplementedError, NotSupportedError };
|
package/dist/index.d.ts
ADDED
package/dist/index.js
ADDED
|
@@ -0,0 +1,477 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
require('@avstantso/core');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @summary Base error class
|
|
7
|
+
*/
|
|
8
|
+
let AVStantso_BaseError$1 = class AVStantso_BaseError extends Error {
|
|
9
|
+
static stackToArr(error) {
|
|
10
|
+
const r = error.stack.split('\n').map((s) => s.trim());
|
|
11
|
+
function cut(pattern, replacement) {
|
|
12
|
+
const i = r.findIndex((s) => s.includes(pattern));
|
|
13
|
+
r.splice(i, r.length - i, replacement);
|
|
14
|
+
}
|
|
15
|
+
// The following information takes up a lot of space,
|
|
16
|
+
// and there is no point in it. Let's cut it short...
|
|
17
|
+
cut('bluebird-npm', '...bluebird');
|
|
18
|
+
return r;
|
|
19
|
+
}
|
|
20
|
+
;
|
|
21
|
+
internal;
|
|
22
|
+
constructor(message, internal) {
|
|
23
|
+
super(message);
|
|
24
|
+
this.name = this.constructor.name.replace(/^AVStantso_/, '');
|
|
25
|
+
if (undefined !== internal)
|
|
26
|
+
this.internal = internal;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* @summary `error` is `this` error class
|
|
30
|
+
*/
|
|
31
|
+
static is(error) {
|
|
32
|
+
return error instanceof this;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* @summary If `error` is `this` error class, returns `true`, throws `error` else
|
|
36
|
+
*/
|
|
37
|
+
static absorb(error) {
|
|
38
|
+
if (error instanceof this)
|
|
39
|
+
return true;
|
|
40
|
+
throw error;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* @summary Extract data from error for write to log
|
|
44
|
+
*/
|
|
45
|
+
static toLogAnyError(error, parentMessage) {
|
|
46
|
+
return {
|
|
47
|
+
class: error.constructor.name,
|
|
48
|
+
...(!parentMessage || parentMessage != error.message
|
|
49
|
+
? { message: error.message }
|
|
50
|
+
: {}),
|
|
51
|
+
details: {
|
|
52
|
+
stack: AVStantso_BaseError.stackToArr(error)
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* @summary Log `internal` error rule.\
|
|
58
|
+
* May be overridden
|
|
59
|
+
*/
|
|
60
|
+
toLogInternal() {
|
|
61
|
+
if (!this.internal)
|
|
62
|
+
return undefined;
|
|
63
|
+
if (AVStantso_BaseError.is(this.internal))
|
|
64
|
+
return this.internal.toLog(this.message);
|
|
65
|
+
return AVStantso_BaseError.toLogAnyError(this.internal, this.message);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* @summary Log this error details rule.\
|
|
69
|
+
* Must be overridden for log others details of this error
|
|
70
|
+
*/
|
|
71
|
+
toLogDetails() {
|
|
72
|
+
return {
|
|
73
|
+
stack: AVStantso_BaseError.stackToArr(this),
|
|
74
|
+
...(this.internal ? { internal: this.toLogInternal() } : {})
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* @summary Log this error rule.
|
|
79
|
+
* @param parentMessage Parent message for internal errors
|
|
80
|
+
*/
|
|
81
|
+
toLog(parentMessage) {
|
|
82
|
+
return {
|
|
83
|
+
class: this.constructor.name,
|
|
84
|
+
...(!parentMessage || parentMessage != this.message
|
|
85
|
+
? { message: this.message }
|
|
86
|
+
: {}),
|
|
87
|
+
details: this.toLogDetails()
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
if (!('AVStantso_BaseError' in globalThis))
|
|
92
|
+
Object.defineProperties(globalThis, {
|
|
93
|
+
AVStantso_BaseError: {
|
|
94
|
+
value: AVStantso_BaseError$1,
|
|
95
|
+
writable: false,
|
|
96
|
+
configurable: false
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* @summary Abort error class.\
|
|
102
|
+
* Uses exception mechanics for leave call stack of any depth.\
|
|
103
|
+
* In very few cases this way may be normal
|
|
104
|
+
* @example
|
|
105
|
+
* function level1() {
|
|
106
|
+
* function level2() {
|
|
107
|
+
* function levelN() {
|
|
108
|
+
* const condition = true;
|
|
109
|
+
* const x = 15;
|
|
110
|
+
* if (condition) throw new Abort(x);
|
|
111
|
+
* }
|
|
112
|
+
*
|
|
113
|
+
* levelN();
|
|
114
|
+
* }
|
|
115
|
+
*
|
|
116
|
+
* try {
|
|
117
|
+
* level2();
|
|
118
|
+
* } catch (e) {
|
|
119
|
+
* if (Abort.absorb(e)) return e.payload;
|
|
120
|
+
* }
|
|
121
|
+
* }
|
|
122
|
+
*
|
|
123
|
+
* level1()
|
|
124
|
+
*/
|
|
125
|
+
let AVStantso_Abort$1 = class AVStantso_Abort extends AVStantso_BaseError {
|
|
126
|
+
payload;
|
|
127
|
+
constructor(payload) {
|
|
128
|
+
super(`${payload}`);
|
|
129
|
+
this.payload = payload;
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
if (!('AVStantso_Abort' in globalThis))
|
|
133
|
+
Object.defineProperties(globalThis, {
|
|
134
|
+
AVStantso_Abort: {
|
|
135
|
+
value: AVStantso_Abort$1,
|
|
136
|
+
writable: false,
|
|
137
|
+
configurable: false
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* @summary Handle cases imposible (or imposible-like)
|
|
143
|
+
* @example
|
|
144
|
+
* const a = 1;
|
|
145
|
+
* if (1 === a)
|
|
146
|
+
* console.log('Positive')
|
|
147
|
+
* else if (1 !== a)
|
|
148
|
+
* console.log('Negative')
|
|
149
|
+
* else
|
|
150
|
+
* throw new ImposibleCaseError();
|
|
151
|
+
*/
|
|
152
|
+
let AVStantso_ImposibleCaseError$1 = class AVStantso_ImposibleCaseError extends AVStantso_BaseError {
|
|
153
|
+
constructor(message = 'Imposible case error', internal) {
|
|
154
|
+
super(message, internal);
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
if (!('AVStantso_ImposibleCaseError' in globalThis))
|
|
158
|
+
Object.defineProperties(globalThis, {
|
|
159
|
+
AVStantso_ImposibleCaseError: {
|
|
160
|
+
value: AVStantso_ImposibleCaseError$1,
|
|
161
|
+
writable: false,
|
|
162
|
+
configurable: false
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
|
|
166
|
+
/**
|
|
167
|
+
* @summary Abstract error class for instance method errors
|
|
168
|
+
*/
|
|
169
|
+
let AVStantso_InstanceMethodError$1 = class AVStantso_InstanceMethodError extends AVStantso_BaseError {
|
|
170
|
+
instance;
|
|
171
|
+
method;
|
|
172
|
+
constructor(instance, method, message) {
|
|
173
|
+
const m = message
|
|
174
|
+
.replace(/%M/g, 'string' === typeof method ? method : method.name)
|
|
175
|
+
.replace(/%C/g, instance.constructor.name);
|
|
176
|
+
super(m);
|
|
177
|
+
Object.assign(this, { instance, method });
|
|
178
|
+
}
|
|
179
|
+
};
|
|
180
|
+
if (!('AVStantso_InstanceMethodError' in globalThis))
|
|
181
|
+
Object.defineProperties(globalThis, {
|
|
182
|
+
AVStantso_InstanceMethodError: {
|
|
183
|
+
value: AVStantso_InstanceMethodError$1,
|
|
184
|
+
writable: false,
|
|
185
|
+
configurable: false
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* @summary Error for handle violation of OOP abstraction
|
|
191
|
+
* @example
|
|
192
|
+
* class A {
|
|
193
|
+
* protected doPrint(){
|
|
194
|
+
* throw new AbstractError(this, this.doPrint);
|
|
195
|
+
* }
|
|
196
|
+
*
|
|
197
|
+
* public print(){
|
|
198
|
+
* this.doPrint();
|
|
199
|
+
* }
|
|
200
|
+
* }
|
|
201
|
+
*
|
|
202
|
+
* class B extends A {
|
|
203
|
+
* protected doPrint(){
|
|
204
|
+
* console.log(`%O`, this);
|
|
205
|
+
* }
|
|
206
|
+
* }
|
|
207
|
+
*/
|
|
208
|
+
let AVStantso_AbstractError$1 = class AVStantso_AbstractError extends AVStantso_InstanceMethodError {
|
|
209
|
+
constructor(instance, method, message) {
|
|
210
|
+
super(instance, method, message || 'You need override "%M" method for "%C" class');
|
|
211
|
+
}
|
|
212
|
+
};
|
|
213
|
+
if (!('AVStantso_AbstractError' in globalThis))
|
|
214
|
+
Object.defineProperties(globalThis, {
|
|
215
|
+
AVStantso_AbstractError: {
|
|
216
|
+
value: AVStantso_AbstractError$1,
|
|
217
|
+
writable: false,
|
|
218
|
+
configurable: false
|
|
219
|
+
}
|
|
220
|
+
});
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* @summary Stub for not implemented features
|
|
224
|
+
*/
|
|
225
|
+
let AVStantso_NotImplementedError$1 = class AVStantso_NotImplementedError extends AVStantso_InstanceMethodError {
|
|
226
|
+
constructor(instance, method, message) {
|
|
227
|
+
super(instance, method, message || '"%M" not implemented for "%C" class');
|
|
228
|
+
}
|
|
229
|
+
};
|
|
230
|
+
if (!('AVStantso_NotImplementedError' in globalThis))
|
|
231
|
+
Object.defineProperties(globalThis, {
|
|
232
|
+
AVStantso_NotImplementedError: {
|
|
233
|
+
value: AVStantso_NotImplementedError$1,
|
|
234
|
+
writable: false,
|
|
235
|
+
configurable: false
|
|
236
|
+
}
|
|
237
|
+
});
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* @summary Common case for unsupported features.\
|
|
241
|
+
* Or stub for not ideally OOP hierarchy
|
|
242
|
+
* @example
|
|
243
|
+
* class Foo {
|
|
244
|
+
* read() {
|
|
245
|
+
* ///
|
|
246
|
+
* }
|
|
247
|
+
*
|
|
248
|
+
* write() {
|
|
249
|
+
* ///
|
|
250
|
+
* }
|
|
251
|
+
* }
|
|
252
|
+
*
|
|
253
|
+
* // 👇This is bad code
|
|
254
|
+
* class ReadonlyFoo extends Foo {
|
|
255
|
+
* read() {
|
|
256
|
+
* ///
|
|
257
|
+
* }
|
|
258
|
+
*
|
|
259
|
+
* write() {
|
|
260
|
+
* throw new NotSupportedError(this, this.write);
|
|
261
|
+
* }
|
|
262
|
+
* }
|
|
263
|
+
*/
|
|
264
|
+
let AVStantso_NotSupportedError$1 = class AVStantso_NotSupportedError extends AVStantso_InstanceMethodError {
|
|
265
|
+
constructor(instance, method, message) {
|
|
266
|
+
super(instance, method, message || '"%M" not supported for "%C" class');
|
|
267
|
+
}
|
|
268
|
+
};
|
|
269
|
+
if (!('AVStantso_NotSupportedError' in globalThis))
|
|
270
|
+
Object.defineProperties(globalThis, {
|
|
271
|
+
AVStantso_NotSupportedError: {
|
|
272
|
+
value: AVStantso_NotSupportedError$1,
|
|
273
|
+
writable: false,
|
|
274
|
+
configurable: false
|
|
275
|
+
}
|
|
276
|
+
});
|
|
277
|
+
|
|
278
|
+
/**
|
|
279
|
+
* @summary Hendle invalid argument cases
|
|
280
|
+
*/
|
|
281
|
+
let AVStantso_InvalidArgumentError$1 = class AVStantso_InvalidArgumentError extends AVStantso_BaseError {
|
|
282
|
+
static expandField(param) {
|
|
283
|
+
return Object.entries(param instanceof AVStantso_InvalidArgumentError ? param.field : param)[0];
|
|
284
|
+
}
|
|
285
|
+
static msgPrefix(instance, method) {
|
|
286
|
+
return `${instance
|
|
287
|
+
? `${'function' === typeof instance
|
|
288
|
+
? instance.name
|
|
289
|
+
: 'object' === typeof instance
|
|
290
|
+
? instance.constructor.name
|
|
291
|
+
: instance}.`
|
|
292
|
+
: ''}${'function' === typeof method ? method.name : method}: `;
|
|
293
|
+
}
|
|
294
|
+
instance;
|
|
295
|
+
method;
|
|
296
|
+
field;
|
|
297
|
+
constructor(instance, method, field, message = 'invalid %FN=%FV') {
|
|
298
|
+
const [fieldName, fieldValue] = AVStantso_InvalidArgumentError.expandField(field);
|
|
299
|
+
const m = message
|
|
300
|
+
.replace(/%FN/g, fieldName)
|
|
301
|
+
.replace(/%FVT/g, typeof fieldValue)
|
|
302
|
+
.replace(/%FV/g, fieldValue);
|
|
303
|
+
super(`${AVStantso_InvalidArgumentError.msgPrefix(instance, method)}${m}`);
|
|
304
|
+
Object.assign(this, { instance, method, field });
|
|
305
|
+
}
|
|
306
|
+
get expandField() {
|
|
307
|
+
return AVStantso_InvalidArgumentError.expandField(this);
|
|
308
|
+
}
|
|
309
|
+
};
|
|
310
|
+
if (!('AVStantso_InvalidArgumentError' in globalThis))
|
|
311
|
+
Object.defineProperties(globalThis, {
|
|
312
|
+
AVStantso_InvalidArgumentError: {
|
|
313
|
+
value: AVStantso_InvalidArgumentError$1,
|
|
314
|
+
writable: false,
|
|
315
|
+
configurable: false
|
|
316
|
+
}
|
|
317
|
+
});
|
|
318
|
+
|
|
319
|
+
/**
|
|
320
|
+
* @summary Hendle or/and check invalid argument type cases
|
|
321
|
+
*/
|
|
322
|
+
let AVStantso_InvalidArgumentTypeError$1 = class AVStantso_InvalidArgumentTypeError extends AVStantso_InvalidArgumentError {
|
|
323
|
+
static validateEx(...[validator, instance, method, type, field]) {
|
|
324
|
+
return Object.entries(field).every(([key, value], i, a) => {
|
|
325
|
+
if (validator({ field, type, method, instance, key, value }))
|
|
326
|
+
return true;
|
|
327
|
+
const ff = 1 === a.length
|
|
328
|
+
? field
|
|
329
|
+
: Object.fromEntries([[key, value]]);
|
|
330
|
+
throw new AVStantso_InvalidArgumentTypeError(instance, method, type, ff);
|
|
331
|
+
});
|
|
332
|
+
}
|
|
333
|
+
static validate = (() => {
|
|
334
|
+
const validate = AVStantso_InvalidArgumentTypeError.validateEx.bind(AVStantso_InvalidArgumentTypeError, ({ type, value }) => type === typeof value);
|
|
335
|
+
function injectType(params, type) {
|
|
336
|
+
params.splice(params.length - 1, 0, type);
|
|
337
|
+
return params;
|
|
338
|
+
}
|
|
339
|
+
for (const type of [
|
|
340
|
+
'string',
|
|
341
|
+
'number',
|
|
342
|
+
'bigint',
|
|
343
|
+
'boolean',
|
|
344
|
+
'symbol',
|
|
345
|
+
'undefined',
|
|
346
|
+
'object',
|
|
347
|
+
'function'
|
|
348
|
+
])
|
|
349
|
+
Object.defineProperty(validate, type, {
|
|
350
|
+
value(...params) {
|
|
351
|
+
return validate(...injectType(params, type));
|
|
352
|
+
},
|
|
353
|
+
writable: false
|
|
354
|
+
});
|
|
355
|
+
Object.defineProperties(validate, {
|
|
356
|
+
array: {
|
|
357
|
+
value(...params) {
|
|
358
|
+
return AVStantso_InvalidArgumentTypeError.validateEx(({ value }) => Array.isArray(value), ...injectType(params, 'array'));
|
|
359
|
+
}
|
|
360
|
+
},
|
|
361
|
+
instanceOf: {
|
|
362
|
+
value(...params) {
|
|
363
|
+
const type = params[2];
|
|
364
|
+
return AVStantso_InvalidArgumentTypeError.validateEx(({ value }) => {
|
|
365
|
+
if (!value)
|
|
366
|
+
return false;
|
|
367
|
+
const v = 'function' === typeof value ? value.prototype : value;
|
|
368
|
+
return v instanceof type;
|
|
369
|
+
}, ...params);
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
});
|
|
373
|
+
return validate;
|
|
374
|
+
})();
|
|
375
|
+
type;
|
|
376
|
+
constructor(...[instance, method, type, field, message]) {
|
|
377
|
+
const tp = Array.isArray(type) ? type.join('|') : type;
|
|
378
|
+
super(instance, method, field, message
|
|
379
|
+
|| `%FN must be ${'function' === typeof tp ? tp.name : tp} but it's %FVT`);
|
|
380
|
+
this.type = tp;
|
|
381
|
+
}
|
|
382
|
+
};
|
|
383
|
+
if (!('AVStantso_InvalidArgumentTypeError' in globalThis))
|
|
384
|
+
Object.defineProperties(globalThis, {
|
|
385
|
+
AVStantso_InvalidArgumentTypeError: {
|
|
386
|
+
value: AVStantso_InvalidArgumentTypeError$1,
|
|
387
|
+
writable: false,
|
|
388
|
+
configurable: false
|
|
389
|
+
}
|
|
390
|
+
});
|
|
391
|
+
|
|
392
|
+
/**
|
|
393
|
+
* @summary Hendle errors of internal state
|
|
394
|
+
*/
|
|
395
|
+
let AVStantso_InvalidStateError$1 = class AVStantso_InvalidStateError extends AVStantso_BaseError {
|
|
396
|
+
instance;
|
|
397
|
+
state;
|
|
398
|
+
constructor(instance, state, message) {
|
|
399
|
+
const m = (message || 'Invalid state "%S" of "%C"')
|
|
400
|
+
.replace(/%S/g, 'function' === typeof state ? state.name : `${state}`)
|
|
401
|
+
.replace(/%C/g, 'string' === typeof instance
|
|
402
|
+
? instance
|
|
403
|
+
: ('object' === typeof instance ? instance.constructor : instance)
|
|
404
|
+
.name);
|
|
405
|
+
super(m);
|
|
406
|
+
Object.assign(this, { instance, state });
|
|
407
|
+
}
|
|
408
|
+
};
|
|
409
|
+
if (!('AVStantso_InvalidStateError' in globalThis))
|
|
410
|
+
Object.defineProperties(globalThis, {
|
|
411
|
+
AVStantso_InvalidStateError: {
|
|
412
|
+
value: AVStantso_InvalidStateError$1,
|
|
413
|
+
writable: false,
|
|
414
|
+
configurable: false
|
|
415
|
+
}
|
|
416
|
+
});
|
|
417
|
+
|
|
418
|
+
/**
|
|
419
|
+
* @summary Common system error. Violation rules of system
|
|
420
|
+
*/
|
|
421
|
+
let AVStantso_SystemError$1 = class AVStantso_SystemError extends AVStantso_BaseError {
|
|
422
|
+
constructor(message, internal) {
|
|
423
|
+
super(message, internal);
|
|
424
|
+
}
|
|
425
|
+
};
|
|
426
|
+
if (!('AVStantso_SystemError' in globalThis))
|
|
427
|
+
Object.defineProperties(globalThis, {
|
|
428
|
+
AVStantso_SystemError: {
|
|
429
|
+
value: AVStantso_SystemError$1,
|
|
430
|
+
writable: false,
|
|
431
|
+
configurable: false
|
|
432
|
+
}
|
|
433
|
+
});
|
|
434
|
+
|
|
435
|
+
/**
|
|
436
|
+
* @summary Common unexpected error
|
|
437
|
+
*/
|
|
438
|
+
let AVStantso_UnexpectedError$1 = class AVStantso_UnexpectedError extends AVStantso_BaseError {
|
|
439
|
+
constructor(message = 'Unexpected error', internal) {
|
|
440
|
+
super(message, internal);
|
|
441
|
+
}
|
|
442
|
+
};
|
|
443
|
+
if (!('AVStantso_UnexpectedError' in globalThis))
|
|
444
|
+
Object.defineProperties(globalThis, {
|
|
445
|
+
AVStantso_UnexpectedError: {
|
|
446
|
+
value: AVStantso_UnexpectedError$1,
|
|
447
|
+
writable: false,
|
|
448
|
+
configurable: false
|
|
449
|
+
}
|
|
450
|
+
});
|
|
451
|
+
|
|
452
|
+
var BaseError = AVStantso_BaseError;
|
|
453
|
+
var InstanceMethodError = AVStantso_InstanceMethodError;
|
|
454
|
+
var Abort = AVStantso_Abort;
|
|
455
|
+
var AbstractError = AVStantso_AbstractError;
|
|
456
|
+
var InvalidArgumentError = AVStantso_InvalidArgumentError;
|
|
457
|
+
var InvalidArgumentTypeError = AVStantso_InvalidArgumentTypeError;
|
|
458
|
+
var InvalidStateError = AVStantso_InvalidStateError;
|
|
459
|
+
var ImposibleCaseError = AVStantso_ImposibleCaseError;
|
|
460
|
+
var SystemError = AVStantso_SystemError;
|
|
461
|
+
var UnexpectedError = AVStantso_UnexpectedError;
|
|
462
|
+
var NotImplementedError = AVStantso_NotImplementedError;
|
|
463
|
+
var NotSupportedError = AVStantso_NotSupportedError;
|
|
464
|
+
|
|
465
|
+
exports.Abort = Abort;
|
|
466
|
+
exports.AbstractError = AbstractError;
|
|
467
|
+
exports.BaseError = BaseError;
|
|
468
|
+
exports.ImposibleCaseError = ImposibleCaseError;
|
|
469
|
+
exports.InstanceMethodError = InstanceMethodError;
|
|
470
|
+
exports.InvalidArgumentError = InvalidArgumentError;
|
|
471
|
+
exports.InvalidArgumentTypeError = InvalidArgumentTypeError;
|
|
472
|
+
exports.InvalidStateError = InvalidStateError;
|
|
473
|
+
exports.NotImplementedError = NotImplementedError;
|
|
474
|
+
exports.NotSupportedError = NotSupportedError;
|
|
475
|
+
exports.SystemError = SystemError;
|
|
476
|
+
exports.UnexpectedError = UnexpectedError;
|
|
477
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/_global/BaseError/_register.ts","../src/_global/BaseError/Abort/_register.ts","../src/_global/BaseError/ImposibleCaseError/_register.ts","../src/_global/BaseError/InstanceMethodError/_register.ts","../src/_global/BaseError/InstanceMethodError/AbstractError/_register.ts","../src/_global/BaseError/InstanceMethodError/NotImplementedError/_register.ts","../src/_global/BaseError/InstanceMethodError/NotSupportedError/_register.ts","../src/_global/BaseError/InvalidArgumentError/_register.ts","../src/_global/BaseError/InvalidArgumentError/InvalidArgumentTypeError/_register.ts","../src/_global/BaseError/InvalidStateError/_register.ts","../src/_global/BaseError/SystemError/_register.ts","../src/_global/BaseError/UnexpectedError/_register.ts","../src/export.ts"],"sourcesContent":["/**\n * @summary Base error class\n */\nclass AVStantso_BaseError extends Error {\n static stackToArr(error: Error): string[] {\n const r = error.stack.split('\\n').map((s) => s.trim());\n\n function cut(pattern: string, replacement: string): void {\n const i = r.findIndex((s) => s.includes(pattern));\n r.splice(i, r.length - i, replacement);\n }\n\n // The following information takes up a lot of space,\n // and there is no point in it. Let's cut it short...\n cut('bluebird-npm', '...bluebird');\n\n return r;\n };\n\n internal: Error;\n\n constructor(message: string, internal?: Error) {\n super(message);\n this.name = this.constructor.name.replace(/^AVStantso_/, '');\n if (undefined !== internal) this.internal = internal;\n }\n\n /**\n * @summary `error` is `this` error class\n */\n static is<TErrorClass extends AVStantso_BaseError.Class>(\n this: TErrorClass,\n error: unknown\n ): error is InstanceType<TErrorClass> {\n return error instanceof this;\n }\n\n /**\n * @summary If `error` is `this` error class, returns `true`, throws `error` else\n */\n static absorb<TErrorClass extends AVStantso_BaseError.Class>(\n this: TErrorClass,\n error: unknown\n ): error is InstanceType<TErrorClass> {\n if (error instanceof this) return true;\n\n throw error;\n }\n\n /**\n * @summary Extract data from error for write to log\n */\n static toLogAnyError(error: Error, parentMessage?: string): object {\n return {\n class: error.constructor.name,\n ...(!parentMessage || parentMessage != error.message\n ? { message: error.message }\n : {}),\n details: {\n stack: AVStantso_BaseError.stackToArr(error)\n }\n };\n }\n\n /**\n * @summary Log `internal` error rule.\\\n * May be overridden\n */\n protected toLogInternal(): object {\n if (!this.internal) return undefined;\n\n if (AVStantso_BaseError.is(this.internal)) return this.internal.toLog(this.message);\n\n return AVStantso_BaseError.toLogAnyError(this.internal, this.message);\n }\n\n /**\n * @summary Log this error details rule.\\\n * Must be overridden for log others details of this error\n */\n protected toLogDetails(): object {\n return {\n stack: AVStantso_BaseError.stackToArr(this),\n ...(this.internal ? { internal: this.toLogInternal() } : {})\n };\n }\n\n /**\n * @summary Log this error rule.\n * @param parentMessage Parent message for internal errors\n */\n public toLog(parentMessage?: string): object {\n return {\n class: this.constructor.name,\n ...(!parentMessage || parentMessage != this.message\n ? { message: this.message }\n : {}),\n details: this.toLogDetails()\n };\n }\n};\n\nif (!('AVStantso_BaseError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_BaseError: {\n value: AVStantso_BaseError,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_BaseError {\n /**\n * @summary Base error class type\n */\n export type Class = AVStantso.TS.Class<AVStantso_BaseError>;\n\n /**\n * @summary Error details for external usage\n */\n export namespace Details {\n /**\n * @summary Error details union\n */\n export type Union = Details | unknown[];\n\n /**\n * @summary Error details provider\n */\n export type Provider = { details: Details.Union };\n }\n\n export interface Details {\n [key: string]: unknown;\n }\n}\n","/**\n * @summary Abort error class.\\\n * Uses exception mechanics for leave call stack of any depth.\\\n * In very few cases this way may be normal\n * @example\n * function level1() {\n * function level2() {\n * function levelN() {\n * const condition = true;\n * const x = 15;\n * if (condition) throw new Abort(x);\n * }\n *\n * levelN();\n * }\n *\n * try {\n * level2();\n * } catch (e) {\n * if (Abort.absorb(e)) return e.payload;\n * }\n * }\n *\n * level1()\n */\nclass AVStantso_Abort<Payload = unknown> extends AVStantso_BaseError {\n constructor(public payload?: Payload) {\n super(`${payload}`);\n }\n}\n\nif (!('AVStantso_Abort' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_Abort: {\n value: AVStantso_Abort,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_Abort {\n /**\n * @summary Abort error class type\n */\n export type Class<Payload = unknown> = AVStantso.TS.Class<AVStantso_Abort<Payload>>;\n}\n","/**\n * @summary Handle cases imposible (or imposible-like)\n * @example\n * const a = 1;\n * if (1 === a)\n * console.log('Positive')\n * else if (1 !== a)\n * console.log('Negative')\n * else\n * throw new ImposibleCaseError();\n */\nclass AVStantso_ImposibleCaseError extends AVStantso_BaseError {\n constructor(message: string = 'Imposible case error', internal?: Error) {\n super(message, internal);\n }\n}\n\nif (!('AVStantso_ImposibleCaseError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_ImposibleCaseError: {\n value: AVStantso_ImposibleCaseError,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_ImposibleCaseError {}\n","/**\n * @summary Abstract error class for instance method errors\n */\nclass AVStantso_InstanceMethodError extends AVStantso_BaseError {\n public instance: object;\n public method: AVStantso_InstanceMethodError.Method;\n\n constructor(\n instance: object,\n method: AVStantso_InstanceMethodError.Method,\n message?: string\n ) {\n const m = message\n .replace(/%M/g, 'string' === typeof method ? method : method.name)\n .replace(/%C/g, instance.constructor.name);\n\n super(m);\n\n Object.assign(this, { instance, method });\n }\n}\n\nif (!('AVStantso_InstanceMethodError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_InstanceMethodError: {\n value: AVStantso_InstanceMethodError,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_InstanceMethodError {\n export type Method = string | { name: string };\n}\n","/**\n * @summary Error for handle violation of OOP abstraction\n * @example\n * class A {\n * protected doPrint(){\n * throw new AbstractError(this, this.doPrint);\n * }\n *\n * public print(){\n * this.doPrint();\n * }\n * }\n *\n * class B extends A {\n * protected doPrint(){\n * console.log(`%O`, this);\n * }\n * }\n */\nclass AVStantso_AbstractError extends AVStantso_InstanceMethodError {\n constructor(\n instance: object,\n method: AVStantso_InstanceMethodError.Method,\n message?: string\n ) {\n super(\n instance,\n method,\n message || 'You need override \"%M\" method for \"%C\" class'\n );\n }\n}\n\nif (!('AVStantso_AbstractError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_AbstractError: {\n value: AVStantso_AbstractError,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_AbstractError {}\n","/**\n * @summary Stub for not implemented features\n */\nclass AVStantso_NotImplementedError extends AVStantso_InstanceMethodError {\n constructor(\n instance: object,\n method: AVStantso_InstanceMethodError.Method,\n message?: string\n ) {\n super(instance, method, message || '\"%M\" not implemented for \"%C\" class');\n }\n}\n\nif (!('AVStantso_NotImplementedError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_NotImplementedError: {\n value: AVStantso_NotImplementedError,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_NotImplementedError {}\n","/**\n * @summary Common case for unsupported features.\\\n * Or stub for not ideally OOP hierarchy\n * @example\n * class Foo {\n * read() {\n * ///\n * }\n *\n * write() {\n * ///\n * }\n * }\n *\n * // 👇This is bad code\n * class ReadonlyFoo extends Foo {\n * read() {\n * ///\n * }\n *\n * write() {\n * throw new NotSupportedError(this, this.write);\n * }\n * }\n */\nclass AVStantso_NotSupportedError extends AVStantso_InstanceMethodError {\n constructor(\n instance: object,\n method: AVStantso_InstanceMethodError.Method,\n message?: string\n ) {\n super(instance, method, message || '\"%M\" not supported for \"%C\" class');\n }\n}\n\nif (!('AVStantso_NotSupportedError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_NotSupportedError: {\n value: AVStantso_NotSupportedError,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_NotSupportedError {}\n","/**\n * @summary Hendle invalid argument cases\n */\nclass AVStantso_InvalidArgumentError extends AVStantso_BaseError {\n static expandField(param: unknown) {\n return Object.entries(\n param instanceof AVStantso_InvalidArgumentError ? param.field : param\n )[0];\n }\n\n static msgPrefix(\n instance: AVStantso_InvalidArgumentError.Instance,\n method: AVStantso_InvalidArgumentError.Method\n ) {\n return `${\n instance\n ? `${\n 'function' === typeof instance\n ? instance.name\n : 'object' === typeof instance\n ? instance.constructor.name\n : instance\n }.`\n : ''\n }${'function' === typeof method ? method.name : method}: `;\n }\n\n public instance: AVStantso_InvalidArgumentError.Instance;\n public method: AVStantso_InvalidArgumentError.Method;\n public field: AVStantso_InvalidArgumentError.Field;\n\n constructor(\n instance: AVStantso_InvalidArgumentError.Instance,\n method: AVStantso_InvalidArgumentError.Method,\n field: AVStantso_InvalidArgumentError.Field,\n message = 'invalid %FN=%FV'\n ) {\n const [fieldName, fieldValue] = AVStantso_InvalidArgumentError.expandField(field);\n const m = message\n .replace(/%FN/g, fieldName)\n .replace(/%FVT/g, typeof fieldValue)\n .replace(/%FV/g, fieldValue);\n\n super(`${AVStantso_InvalidArgumentError.msgPrefix(instance, method)}${m}`);\n\n Object.assign(this, { instance, method, field });\n }\n\n get expandField() {\n return AVStantso_InvalidArgumentError.expandField(this);\n }\n}\n\nif (!('AVStantso_InvalidArgumentError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_InvalidArgumentError: {\n value: AVStantso_InvalidArgumentError,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_InvalidArgumentError {\n export type Instance = object | AVStantso.TS.Func | string;\n export type Method = AVStantso_InstanceMethodError.Method;\n export type Field = NodeJS.Dict<unknown>;\n}\n","/**\n * @summary Hendle or/and check invalid argument type cases\n */\nclass AVStantso_InvalidArgumentTypeError extends AVStantso_InvalidArgumentError {\n public static validateEx(\n ...[\n validator,\n instance,\n method,\n type,\n field\n ]: AVStantso_InvalidArgumentTypeError.Params.ValidateEx\n ) {\n return Object.entries(field).every(([key, value], i, a) => {\n if (validator({ field, type, method, instance, key, value })) return true;\n\n const ff = 1 === a.length\n ? field\n : (Object.fromEntries([[key, value]]) as AVStantso_InvalidArgumentError.Field);\n\n throw new AVStantso_InvalidArgumentTypeError(instance, method, type, ff);\n });\n }\n\n public static validate = (() => {\n const validate = AVStantso_InvalidArgumentTypeError.validateEx.bind(\n AVStantso_InvalidArgumentTypeError,\n ({ type, value }) => type === typeof value\n );\n\n function injectType(\n params: AVStantso_InvalidArgumentTypeError.Params.ValidateNoType,\n type: string\n ): AVStantso_InvalidArgumentTypeError.Params.Validate {\n params.splice(params.length - 1, 0, type);\n return params as unknown as AVStantso_InvalidArgumentTypeError.Params.Validate;\n }\n\n for (const type of [\n 'string',\n 'number',\n 'bigint',\n 'boolean',\n 'symbol',\n 'undefined',\n 'object',\n 'function'\n ])\n Object.defineProperty(validate, type, {\n value(...params: AVStantso_InvalidArgumentTypeError.Params.ValidateNoType) {\n return validate(...injectType(params, type));\n },\n writable: false\n });\n\n Object.defineProperties(validate, {\n array: {\n value(...params: AVStantso_InvalidArgumentTypeError.Params.ValidateNoType) {\n return AVStantso_InvalidArgumentTypeError.validateEx(\n ({ value }: { value: unknown }) => Array.isArray(value),\n ...injectType(params, 'array')\n );\n }\n },\n instanceOf: {\n value(\n ...params: AVStantso_InvalidArgumentTypeError.Params.Validate<AVStantso.TS.Class>\n ) {\n const type = params[2];\n return AVStantso_InvalidArgumentTypeError.validateEx(({ value }) => {\n if (!value) return false;\n\n const v = 'function' === typeof value ? value.prototype : value;\n return v instanceof type;\n }, ...params);\n }\n }\n });\n\n return validate as AVStantso_InvalidArgumentTypeError.Validate;\n })();\n\n public type: AVStantso_InvalidArgumentTypeError.Type;\n\n constructor(\n ...[\n instance,\n method,\n type,\n field,\n message\n ]: AVStantso_InvalidArgumentTypeError.Params.Constructor\n ) {\n const tp = Array.isArray(type) ? type.join('|') : type;\n\n super(\n instance,\n method,\n field,\n message\n || `%FN must be ${'function' === typeof tp ? tp.name : tp} but it's %FVT`\n );\n\n this.type = tp;\n }\n}\n\nif (!('AVStantso_InvalidArgumentTypeError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_InvalidArgumentTypeError: {\n value: AVStantso_InvalidArgumentTypeError,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_InvalidArgumentTypeError {\n export type Instance = AVStantso_InvalidArgumentError.Instance;\n export type Method = AVStantso_InvalidArgumentError.Method;\n export type Type = Method | string[];\n export type Field = AVStantso_InvalidArgumentError.Field;\n\n export namespace Validator {\n export type Context = {\n instance: Instance;\n method: Method;\n type: Method | string[];\n field: Field;\n key: string;\n value: unknown;\n };\n }\n\n export type Validator = (context: Validator.Context) => boolean;\n\n export namespace Params {\n export type Constructor = [\n instance: Instance,\n method: Method,\n type: Type,\n field: Field,\n message?: string\n ];\n\n export type ValidateEx = [\n validator: Validator,\n instance: Instance,\n method: Method,\n type: Type,\n field: Field\n ];\n\n export type Validate<TType extends Type = Type> = [\n instance: Instance,\n method: Method,\n type: TType,\n field: Field\n ];\n\n export type ValidateNoType = [\n instance: Instance,\n method: Method,\n field: Field\n ];\n }\n\n export type Validate = {\n (...params: Params.Validate): boolean;\n\n instanceOf(\n ...params: Params.Validate<AVStantso.TS.Class>\n ): boolean;\n } & Record<\n | 'string'\n | 'number'\n | 'bigint'\n | 'boolean'\n | 'symbol'\n | 'undefined'\n | 'object'\n | 'function'\n | 'array',\n (...params: Params.ValidateNoType) => boolean\n >;\n}\n","/**\n * @summary Hendle errors of internal state\n */\nclass AVStantso_InvalidStateError extends AVStantso_BaseError {\n public instance: AVStantso_InvalidArgumentError.Instance;\n public state: unknown;\n\n constructor(\n instance: AVStantso_InvalidArgumentError.Instance,\n state: unknown,\n message?: string\n ) {\n const m = (message || 'Invalid state \"%S\" of \"%C\"')\n .replace(/%S/g, 'function' === typeof state ? state.name : `${state}`)\n .replace(\n /%C/g,\n 'string' === typeof instance\n ? instance\n : ('object' === typeof instance ? instance.constructor : instance)\n .name\n );\n\n super(m);\n\n Object.assign(this, { instance, state });\n }\n}\n\nif (!('AVStantso_InvalidStateError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_InvalidStateError: {\n value: AVStantso_InvalidStateError,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_InvalidStateError {}\n","/**\n * @summary Common system error. Violation rules of system\n */\nclass AVStantso_SystemError extends AVStantso_BaseError {\n constructor(message: string, internal?: Error) {\n super(message, internal);\n }\n}\n\nif (!('AVStantso_SystemError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_SystemError: {\n value: AVStantso_SystemError,\n writable: false,\n configurable: false\n }\n });\n\n\nnamespace AVStantso_SystemError {}\n","/**\n * @summary Common unexpected error\n */\nclass AVStantso_UnexpectedError extends AVStantso_BaseError {\n constructor(message: string = 'Unexpected error', internal?: Error) {\n super(message, internal);\n }\n}\n\nif (!('AVStantso_UnexpectedError' in globalThis))\n Object.defineProperties(globalThis, {\n AVStantso_UnexpectedError: {\n value: AVStantso_UnexpectedError,\n writable: false,\n configurable: false\n }\n });\n\nnamespace AVStantso_UnexpectedError {}\n","import BaseError = AVStantso_BaseError;\nimport InstanceMethodError = AVStantso_InstanceMethodError;\n\nimport Abort = AVStantso_Abort;\nimport AbstractError = AVStantso_AbstractError;\nimport InvalidArgumentError = AVStantso_InvalidArgumentError;\nimport InvalidArgumentTypeError = AVStantso_InvalidArgumentTypeError;\nimport InvalidStateError = AVStantso_InvalidStateError;\nimport ImposibleCaseError = AVStantso_ImposibleCaseError;\nimport SystemError = AVStantso_SystemError;\nimport UnexpectedError = AVStantso_UnexpectedError;\nimport NotImplementedError = AVStantso_NotImplementedError;\nimport NotSupportedError = AVStantso_NotSupportedError;\n\nexport {\n BaseError,\n InstanceMethodError,\n\n Abort,\n AbstractError,\n InvalidArgumentError,\n InvalidArgumentTypeError,\n InvalidStateError,\n ImposibleCaseError,\n UnexpectedError,\n SystemError,\n NotImplementedError,\n NotSupportedError\n};\n"],"names":["AVStantso_BaseError","AVStantso_Abort","AVStantso_ImposibleCaseError","AVStantso_InstanceMethodError","AVStantso_AbstractError","AVStantso_NotImplementedError","AVStantso_NotSupportedError","AVStantso_InvalidArgumentError","AVStantso_InvalidArgumentTypeError","AVStantso_InvalidStateError","AVStantso_SystemError","AVStantso_UnexpectedError"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@avstantso/errors",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"author": "avstantso",
|
|
5
|
-
"version": "1.
|
|
5
|
+
"version": "1.2.2",
|
|
6
6
|
"description": "Error classes hierarchy",
|
|
7
7
|
"keywords": [
|
|
8
8
|
"Error"
|
|
@@ -23,10 +23,7 @@
|
|
|
23
23
|
"test": "NODE_ENV=test jest --coverage"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@avstantso/core": "1.
|
|
27
|
-
"@avstantso/std-ext": "1.
|
|
28
|
-
},
|
|
29
|
-
"devDependencies": {
|
|
30
|
-
"@avstantso/dev-basic": "1.0.0"
|
|
26
|
+
"@avstantso/core": "1.2.2",
|
|
27
|
+
"@avstantso/std-ext": "1.2.2"
|
|
31
28
|
}
|
|
32
29
|
}
|