@leyyo/common 1.0.0 → 1.0.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/dist/assertion/common-assertion-impl.d.ts +38 -7
- package/dist/assertion/common-assertion-impl.js +64 -26
- package/dist/assertion/index-types.d.ts +466 -75
- package/dist/assertion/index.d.ts +0 -1
- package/dist/assertion/index.js +0 -1
- package/dist/error/common-error-impl.d.ts +6 -4
- package/dist/error/common-error-impl.js +8 -4
- package/dist/error/index-types.d.ts +5 -54
- package/dist/error/index.d.ts +0 -5
- package/dist/error/index.js +0 -5
- package/dist/{error → exception}/assertion-exception.d.ts +1 -1
- package/dist/{error → exception}/caused-exception.d.ts +1 -1
- package/dist/{error → exception}/developer-exception.d.ts +1 -1
- package/dist/{error → exception}/exception.d.ts +4 -3
- package/dist/{error → exception}/exception.js +4 -4
- package/dist/exception/index-types.d.ts +30 -0
- package/dist/exception/index.d.ts +6 -0
- package/dist/exception/index.js +22 -0
- package/dist/fqn/common-fqn-impl.d.ts +11 -0
- package/dist/fqn/common-fqn-impl.js +47 -0
- package/dist/fqn/index-types.d.ts +6 -0
- package/dist/fqn/index-types.js +2 -0
- package/dist/fqn/index.d.ts +2 -0
- package/dist/{callback → fqn}/index.js +1 -1
- package/dist/hook/common-hook-impl.d.ts +30 -0
- package/dist/hook/common-hook-impl.js +111 -0
- package/dist/hook/index-types.d.ts +56 -0
- package/dist/hook/index-types.js +2 -0
- package/dist/hook/index.d.ts +2 -0
- package/dist/hook/index.js +18 -0
- package/dist/index.d.ts +11 -5
- package/dist/index.js +19 -6
- package/dist/is/common-is-impl.d.ts +36 -15
- package/dist/is/common-is-impl.js +35 -10
- package/dist/is/index-types.d.ts +142 -20
- package/dist/leyyo/index-types.d.ts +4 -2
- package/dist/leyyo/leyyo-impl.d.ts +4 -2
- package/dist/leyyo/leyyo-impl.js +37 -29
- package/dist/literal/country-code.d.ts +8 -0
- package/dist/literal/country-code.js +17 -0
- package/dist/literal/environment.d.ts +8 -0
- package/dist/literal/environment.js +7 -0
- package/dist/literal/http-method.d.ts +8 -0
- package/dist/literal/http-method.js +7 -0
- package/dist/literal/http-place.d.ts +8 -0
- package/dist/literal/http-place.js +7 -0
- package/dist/literal/index-types.d.ts +6 -0
- package/dist/literal/index-types.js +2 -0
- package/dist/literal/index.d.ts +14 -0
- package/dist/literal/index.js +30 -0
- package/dist/literal/key-value.d.ts +4 -0
- package/dist/literal/key-value.js +7 -0
- package/dist/literal/language-code.d.ts +8 -0
- package/dist/literal/language-code.js +12 -0
- package/dist/literal/locale-code.d.ts +10 -0
- package/dist/literal/locale-code.js +17 -0
- package/dist/literal/primitive.d.ts +8 -0
- package/dist/literal/primitive.js +7 -0
- package/dist/literal/real-value.d.ts +8 -0
- package/dist/literal/real-value.js +7 -0
- package/dist/literal/severity.d.ts +8 -0
- package/dist/literal/severity.js +7 -0
- package/dist/literal/storage-type.d.ts +8 -0
- package/dist/literal/storage-type.js +7 -0
- package/dist/literal/weak-false.d.ts +8 -0
- package/dist/literal/weak-false.js +7 -0
- package/dist/literal/weak-true.d.ts +8 -0
- package/dist/literal/weak-true.js +7 -0
- package/dist/log/common-log-impl.d.ts +3 -2
- package/dist/log/common-log-impl.js +6 -6
- package/dist/log/index-types.d.ts +2 -55
- package/dist/log/index-types.js +0 -1
- package/dist/log/index.d.ts +1 -1
- package/dist/log/index.js +1 -1
- package/dist/log/logger-impl.d.ts +4 -3
- package/dist/log/logger-impl.js +7 -6
- package/dist/{assertion → shared}/assert.js +1 -0
- package/dist/{aliases.d.ts → shared/index-aliases.d.ts} +32 -4
- package/dist/shared/index-types.d.ts +141 -0
- package/dist/shared/index-types.js +3 -0
- package/dist/shared/index.d.ts +5 -0
- package/dist/shared/index.js +21 -0
- package/dist/storage/common-storage-impl.d.ts +3 -2
- package/dist/storage/common-storage-impl.js +3 -3
- package/dist/storage/index-types.d.ts +3 -18
- package/dist/storage/index.d.ts +0 -1
- package/dist/storage/index.js +0 -1
- package/dist/to/common-to-impl.d.ts +19 -19
- package/dist/to/common-to-impl.js +11 -11
- package/dist/to/index-types.d.ts +18 -48
- package/package.json +1 -1
- package/dist/callback/common-callback-impl.d.ts +0 -31
- package/dist/callback/common-callback-impl.js +0 -134
- package/dist/callback/index-types.d.ts +0 -75
- package/dist/callback/index.d.ts +0 -2
- package/dist/literals.d.ts +0 -98
- package/dist/literals.js +0 -77
- package/dist/{error → exception}/assertion-exception.js +0 -0
- package/dist/{error → exception}/caused-exception.js +0 -0
- package/dist/{error → exception}/developer-exception.js +0 -0
- package/dist/{callback → exception}/index-types.js +0 -0
- package/dist/{error → exception}/multiple-exception.d.ts +1 -1
- package/dist/{error → exception}/multiple-exception.js +0 -0
- package/dist/{assertion → shared}/assert.d.ts +1 -1
- /package/dist/{aliases.js → shared/index-aliases.js} +0 -0
- /package/dist/{constants.d.ts → shared/index-constants.d.ts} +0 -0
- /package/dist/{constants.js → shared/index-constants.js} +0 -0
- /package/dist/{storage → shared}/list.d.ts +0 -0
- /package/dist/{storage → shared}/list.js +0 -0
|
@@ -1,34 +1,65 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CommonAssertion, CommonAssertionSecure } from "./index-types";
|
|
2
2
|
import { Leyyo } from "../leyyo";
|
|
3
|
-
import {
|
|
4
|
-
|
|
3
|
+
import { Arr, AssertionCallback, AssertionOpt, Obj, ToTypeOpt } from "../shared";
|
|
4
|
+
/** @inheritDoc */
|
|
5
5
|
export declare class CommonAssertionImpl implements CommonAssertion, CommonAssertionSecure {
|
|
6
6
|
private is;
|
|
7
|
-
private
|
|
7
|
+
private fqn;
|
|
8
8
|
constructor();
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Build error parameters as message and params
|
|
11
|
+
* */
|
|
12
|
+
private buildErrorParameters;
|
|
13
|
+
/**
|
|
14
|
+
* Inner secure json function, it will be used after creating weak set
|
|
15
|
+
* */
|
|
10
16
|
_secureJson(value: unknown, level: number, set: WeakSet<Obj>): unknown;
|
|
17
|
+
/** @inheritDoc */
|
|
11
18
|
raise(opt: string | AssertionOpt | AssertionCallback, value?: any, indicator?: string, def?: string): void;
|
|
19
|
+
/** @inheritDoc */
|
|
12
20
|
emptyFn(...params: Arr): void;
|
|
21
|
+
/** @inheritDoc */
|
|
13
22
|
secureJson<E = unknown>(value: unknown): E;
|
|
14
|
-
|
|
23
|
+
/** @inheritDoc */
|
|
15
24
|
array(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
25
|
+
/** @inheritDoc */
|
|
16
26
|
boolean(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
27
|
+
/** @inheritDoc */
|
|
17
28
|
clazz(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
29
|
+
/** @inheritDoc */
|
|
18
30
|
date(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
31
|
+
/** @inheritDoc */
|
|
19
32
|
func(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
33
|
+
/** @inheritDoc */
|
|
20
34
|
integer(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
35
|
+
/** @inheritDoc */
|
|
21
36
|
key(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
37
|
+
/** @inheritDoc */
|
|
22
38
|
notEmpty(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
39
|
+
/** @inheritDoc */
|
|
23
40
|
number(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
41
|
+
/** @inheritDoc */
|
|
42
|
+
realNumber(value: number, opt?: ToTypeOpt): number;
|
|
43
|
+
/** @inheritDoc */
|
|
24
44
|
object(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
45
|
+
/** @inheritDoc */
|
|
25
46
|
positiveInteger(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
47
|
+
/** @inheritDoc */
|
|
48
|
+
safeInteger(value: any, opt?: string | AssertionCallback | AssertionOpt): void;
|
|
49
|
+
/** @inheritDoc */
|
|
26
50
|
positiveNumber(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
51
|
+
/** @inheritDoc */
|
|
27
52
|
primitive(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
53
|
+
/** @inheritDoc */
|
|
28
54
|
string(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
55
|
+
/** @inheritDoc */
|
|
29
56
|
text(value: unknown, opt?: string | AssertionOpt | AssertionCallback): string;
|
|
30
|
-
|
|
57
|
+
/** @inheritDoc */
|
|
58
|
+
realValue(value: unknown, opt?: string | AssertionOpt | AssertionCallback): void;
|
|
59
|
+
/** @inheritDoc */
|
|
31
60
|
get $back(): CommonAssertion;
|
|
61
|
+
/** @inheritDoc */
|
|
32
62
|
$init(leyyo: Leyyo): void;
|
|
63
|
+
/** @inheritDoc */
|
|
33
64
|
get $secure(): CommonAssertionSecure;
|
|
34
65
|
}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CommonAssertionImpl = void 0;
|
|
4
|
-
const
|
|
4
|
+
const exception_1 = require("../exception");
|
|
5
|
+
// noinspection JSUnusedGlobalSymbols
|
|
6
|
+
/** @inheritDoc */
|
|
5
7
|
class CommonAssertionImpl {
|
|
6
8
|
// endregion properties
|
|
7
9
|
constructor() {
|
|
8
10
|
}
|
|
9
11
|
// region internal
|
|
10
|
-
|
|
12
|
+
/**
|
|
13
|
+
* Build error parameters as message and params
|
|
14
|
+
* */
|
|
15
|
+
buildErrorParameters(v2, indicator) {
|
|
11
16
|
if (typeof v2 === 'string') {
|
|
12
17
|
return { message: v2, params: { indicator } };
|
|
13
18
|
}
|
|
@@ -21,7 +26,7 @@ class CommonAssertionImpl {
|
|
|
21
26
|
}
|
|
22
27
|
if (typeof v2 === 'function') {
|
|
23
28
|
try {
|
|
24
|
-
return this.
|
|
29
|
+
return this.buildErrorParameters(v2(), indicator);
|
|
25
30
|
}
|
|
26
31
|
catch (e) {
|
|
27
32
|
return { params: { indicator, callbackError: e.message } };
|
|
@@ -36,6 +41,9 @@ class CommonAssertionImpl {
|
|
|
36
41
|
}
|
|
37
42
|
return { params: { json, indicator } };
|
|
38
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Inner secure json function, it will be used after creating weak set
|
|
46
|
+
* */
|
|
39
47
|
_secureJson(value, level, set) {
|
|
40
48
|
if ([null, undefined].includes(value)) {
|
|
41
49
|
return null;
|
|
@@ -43,10 +51,10 @@ class CommonAssertionImpl {
|
|
|
43
51
|
switch (typeof value) {
|
|
44
52
|
case 'object':
|
|
45
53
|
if (set.has(value)) {
|
|
46
|
-
return `<circular>${this.
|
|
54
|
+
return `<circular>${this.fqn.name(value === null || value === void 0 ? void 0 : value.constructor)}`;
|
|
47
55
|
}
|
|
48
56
|
if (level >= 10) {
|
|
49
|
-
return `<max-depth>${this.
|
|
57
|
+
return `<max-depth>${this.fqn.name(value === null || value === void 0 ? void 0 : value.constructor)}`;
|
|
50
58
|
}
|
|
51
59
|
set.add(value);
|
|
52
60
|
if (Array.isArray(value)) {
|
|
@@ -68,7 +76,7 @@ class CommonAssertionImpl {
|
|
|
68
76
|
}
|
|
69
77
|
return obj;
|
|
70
78
|
case 'function':
|
|
71
|
-
return `<function>${this.
|
|
79
|
+
return `<function>${this.fqn.name(value)}`;
|
|
72
80
|
case 'symbol':
|
|
73
81
|
return `<symbol>${value.toString()}`;
|
|
74
82
|
}
|
|
@@ -76,133 +84,163 @@ class CommonAssertionImpl {
|
|
|
76
84
|
}
|
|
77
85
|
// endregion internal
|
|
78
86
|
// region raise
|
|
87
|
+
/** @inheritDoc */
|
|
79
88
|
raise(opt, value, indicator, def) {
|
|
80
|
-
const { message, params } = this.
|
|
89
|
+
const { message, params } = this.buildErrorParameters(opt, indicator);
|
|
81
90
|
const type = typeof value;
|
|
82
91
|
switch (type) {
|
|
83
92
|
case "object":
|
|
84
|
-
params.type = `object(${this.
|
|
93
|
+
params.type = `object(${this.fqn.name(value.constructor)})`;
|
|
85
94
|
break;
|
|
86
95
|
case "function":
|
|
87
|
-
params.type = `function(${this.
|
|
96
|
+
params.type = `function(${this.fqn.name(value)})`;
|
|
88
97
|
break;
|
|
89
98
|
default:
|
|
90
99
|
params.type = type;
|
|
91
100
|
break;
|
|
92
101
|
}
|
|
93
102
|
def = def !== null && def !== void 0 ? def : 'Assertion error';
|
|
94
|
-
throw new
|
|
103
|
+
throw new exception_1.AssertionException(message !== null && message !== void 0 ? message : def, params);
|
|
95
104
|
}
|
|
105
|
+
/** @inheritDoc */
|
|
96
106
|
// noinspection JSUnusedLocalSymbols
|
|
97
|
-
emptyFn(...params) {
|
|
107
|
+
emptyFn(...params) {
|
|
108
|
+
}
|
|
109
|
+
/** @inheritDoc */
|
|
98
110
|
secureJson(value) {
|
|
99
111
|
return this._secureJson(value, 0, new WeakSet());
|
|
100
112
|
}
|
|
101
|
-
realNumber(value, opt) {
|
|
102
|
-
if (isNaN(value) || !isFinite(value)) {
|
|
103
|
-
if (!opt) {
|
|
104
|
-
opt = {};
|
|
105
|
-
}
|
|
106
|
-
if (!opt.silent) {
|
|
107
|
-
delete opt.silent;
|
|
108
|
-
this.raise(opt, value, 'not.real.number', 'Not real number');
|
|
109
|
-
}
|
|
110
|
-
return null;
|
|
111
|
-
}
|
|
112
|
-
return value;
|
|
113
|
-
}
|
|
114
113
|
// endregion raise
|
|
115
114
|
// region types
|
|
115
|
+
/** @inheritDoc */
|
|
116
116
|
array(value, opt) {
|
|
117
117
|
if (!this.is.array(value)) {
|
|
118
118
|
this.raise(opt, value, 'invalid.array.value', 'Invalid array value');
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
|
+
/** @inheritDoc */
|
|
121
122
|
boolean(value, opt) {
|
|
122
123
|
if (!this.is.boolean(value)) {
|
|
123
124
|
this.raise(opt, value, 'invalid.boolean.value', 'Invalid boolean value');
|
|
124
125
|
}
|
|
125
126
|
}
|
|
127
|
+
/** @inheritDoc */
|
|
126
128
|
clazz(value, opt) {
|
|
127
129
|
if (!this.is.clazz(value)) {
|
|
128
130
|
this.raise(opt, value, 'invalid.class.value', 'Invalid class value');
|
|
129
131
|
}
|
|
130
132
|
}
|
|
133
|
+
/** @inheritDoc */
|
|
131
134
|
date(value, opt) {
|
|
132
135
|
if (!(value instanceof Date)) {
|
|
133
136
|
this.raise(opt, value, 'invalid.date.value', 'Invalid date value');
|
|
134
137
|
}
|
|
135
138
|
}
|
|
139
|
+
/** @inheritDoc */
|
|
136
140
|
func(value, opt) {
|
|
137
141
|
if (!this.is.func(value)) {
|
|
138
142
|
this.raise(opt, value, 'invalid.function.value', 'Invalid function value');
|
|
139
143
|
}
|
|
140
144
|
}
|
|
145
|
+
/** @inheritDoc */
|
|
141
146
|
integer(value, opt) {
|
|
142
147
|
if (!this.is.integer(value)) {
|
|
143
148
|
this.raise(opt, value, 'invalid.integer.value', 'Invalid integer value');
|
|
144
149
|
}
|
|
145
150
|
}
|
|
151
|
+
/** @inheritDoc */
|
|
146
152
|
key(value, opt) {
|
|
147
153
|
if (!this.is.key(value)) {
|
|
148
154
|
this.raise(opt, value, 'invalid.key.value', 'Invalid key value');
|
|
149
155
|
}
|
|
150
156
|
}
|
|
157
|
+
/** @inheritDoc */
|
|
151
158
|
notEmpty(value, opt) {
|
|
152
159
|
if (this.is.empty(value)) {
|
|
153
160
|
this.raise(opt, value, 'empty.value', 'Empty value');
|
|
154
161
|
}
|
|
155
162
|
}
|
|
163
|
+
/** @inheritDoc */
|
|
156
164
|
number(value, opt) {
|
|
157
165
|
if (!this.is.number(value)) {
|
|
158
166
|
this.raise(opt, value, 'invalid.number.value', 'Invalid number value');
|
|
159
167
|
}
|
|
160
168
|
}
|
|
169
|
+
/** @inheritDoc */
|
|
170
|
+
realNumber(value, opt) {
|
|
171
|
+
if (isNaN(value) || !isFinite(value)) {
|
|
172
|
+
if (!opt) {
|
|
173
|
+
opt = {};
|
|
174
|
+
}
|
|
175
|
+
if (!opt.silent) {
|
|
176
|
+
delete opt.silent;
|
|
177
|
+
this.raise(opt, value, 'not.real.number', 'Not real number');
|
|
178
|
+
}
|
|
179
|
+
return null;
|
|
180
|
+
}
|
|
181
|
+
return value;
|
|
182
|
+
}
|
|
183
|
+
/** @inheritDoc */
|
|
161
184
|
object(value, opt) {
|
|
162
185
|
if (!this.is.object(value)) {
|
|
163
186
|
this.raise(opt, value, 'invalid.object.value', 'Invalid object value');
|
|
164
187
|
}
|
|
165
188
|
}
|
|
189
|
+
/** @inheritDoc */
|
|
166
190
|
positiveInteger(value, opt) {
|
|
167
191
|
if (!this.is.integer(value) || (value <= 0)) {
|
|
168
192
|
this.raise(opt, value, 'invalid.positive.integer.value', 'Invalid positive integer value');
|
|
169
193
|
}
|
|
170
194
|
}
|
|
195
|
+
/** @inheritDoc */
|
|
196
|
+
safeInteger(value, opt) {
|
|
197
|
+
if (!this.is.safeInteger(value) || (value <= 0)) {
|
|
198
|
+
this.raise(opt, value, 'invalid.safe.integer.value', 'Invalid safe integer value');
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
/** @inheritDoc */
|
|
171
202
|
positiveNumber(value, opt) {
|
|
172
203
|
if (!this.is.number(value) || (value <= 0)) {
|
|
173
204
|
this.raise(opt, value, 'invalid.positive.number.value', 'Invalid positive number value');
|
|
174
205
|
}
|
|
175
206
|
}
|
|
207
|
+
/** @inheritDoc */
|
|
176
208
|
primitive(value, opt) {
|
|
177
209
|
if (!this.is.primitive(value)) {
|
|
178
210
|
this.raise(opt, value, 'invalid.primitive.value', 'Invalid primitive value');
|
|
179
211
|
}
|
|
180
212
|
}
|
|
213
|
+
/** @inheritDoc */
|
|
181
214
|
string(value, opt) {
|
|
182
215
|
if (!this.is.string(value)) {
|
|
183
216
|
this.raise(opt, value, 'invalid.string.value', 'Invalid string value');
|
|
184
217
|
}
|
|
185
218
|
}
|
|
219
|
+
/** @inheritDoc */
|
|
186
220
|
text(value, opt) {
|
|
187
221
|
if (!this.is.text(value)) {
|
|
188
222
|
this.raise(opt, value, 'invalid.text.value', 'Invalid text value');
|
|
189
223
|
}
|
|
190
224
|
return value.trim();
|
|
191
225
|
}
|
|
192
|
-
|
|
226
|
+
/** @inheritDoc */
|
|
227
|
+
realValue(value, opt) {
|
|
193
228
|
if (!this.is.text(value)) {
|
|
194
229
|
this.raise(opt, value, 'invalid.value.value', 'Invalid regular value');
|
|
195
230
|
}
|
|
196
231
|
}
|
|
197
232
|
// endregion types
|
|
198
233
|
// region secure
|
|
234
|
+
/** @inheritDoc */
|
|
199
235
|
get $back() {
|
|
200
236
|
return this;
|
|
201
237
|
}
|
|
238
|
+
/** @inheritDoc */
|
|
202
239
|
$init(leyyo) {
|
|
203
240
|
this.is = leyyo.is;
|
|
204
|
-
this.
|
|
241
|
+
this.fqn = leyyo.fqn;
|
|
205
242
|
}
|
|
243
|
+
/** @inheritDoc */
|
|
206
244
|
get $secure() {
|
|
207
245
|
return this;
|
|
208
246
|
}
|