@thisisagile/easy 7.34.17 → 7.34.19
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/types/Try.d.ts
CHANGED
|
@@ -4,15 +4,15 @@ import { Get } from './Get';
|
|
|
4
4
|
import { Func } from './Func';
|
|
5
5
|
declare abstract class Try<T = unknown> implements Validatable {
|
|
6
6
|
is: {
|
|
7
|
-
defined: () => Try<T>;
|
|
8
|
-
empty: () => Try<T>;
|
|
9
|
-
valid: () => Try<T>;
|
|
10
|
-
true: () => Try<T>;
|
|
11
|
-
false: () => Try<T>;
|
|
7
|
+
defined: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
8
|
+
empty: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
9
|
+
valid: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
10
|
+
true: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
11
|
+
false: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
12
12
|
not: {
|
|
13
|
-
defined: () => Try<T>;
|
|
14
|
-
empty: () => Try<T>;
|
|
15
|
-
valid: () => Try<T>;
|
|
13
|
+
defined: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
14
|
+
empty: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
15
|
+
valid: (prop?: Func<unknown, T> | undefined) => Try<T>;
|
|
16
16
|
};
|
|
17
17
|
};
|
|
18
18
|
abstract get value(): T;
|
package/dist/types/Try.js
CHANGED
|
@@ -8,15 +8,15 @@ const Get_1 = require("./Get");
|
|
|
8
8
|
class Try {
|
|
9
9
|
constructor() {
|
|
10
10
|
this.is = {
|
|
11
|
-
defined: () => this.filter(v => (0, Is_1.isDefined)(v)),
|
|
12
|
-
empty: () => this.filter(v => (0, Is_1.isEmpty)(v)),
|
|
13
|
-
valid: () => this.filter(v => (0, validation_1.validate)(v).isValid),
|
|
14
|
-
true: () => this.filter(v => (0, Is_1.isTrue)(v)),
|
|
15
|
-
false: () => this.filter(v => !(0, Is_1.isTrue)(v)),
|
|
11
|
+
defined: (prop) => this.filter(v => (0, Is_1.isDefined)(prop ? prop(v) : v)),
|
|
12
|
+
empty: (prop) => this.filter(v => (0, Is_1.isEmpty)(prop ? prop(v) : v)),
|
|
13
|
+
valid: (prop) => this.filter(v => (0, validation_1.validate)(prop ? prop(v) : v).isValid),
|
|
14
|
+
true: (prop) => this.filter(v => (0, Is_1.isTrue)(prop ? prop(v) : v)),
|
|
15
|
+
false: (prop) => this.filter(v => !(0, Is_1.isTrue)(prop ? prop(v) : v)),
|
|
16
16
|
not: {
|
|
17
|
-
defined: () => this.filter(v => !(0, Is_1.isDefined)(v)),
|
|
18
|
-
empty: () => this.filter(v => !(0, Is_1.isEmpty)(v)),
|
|
19
|
-
valid: () => this.filter(v => !(0, validation_1.validate)(v).isValid),
|
|
17
|
+
defined: (prop) => this.filter(v => !(0, Is_1.isDefined)(prop ? prop(v) : v)),
|
|
18
|
+
empty: (prop) => this.filter(v => !(0, Is_1.isEmpty)(prop ? prop(v) : v)),
|
|
19
|
+
valid: (prop) => this.filter(v => !(0, validation_1.validate)(prop ? prop(v) : v).isValid),
|
|
20
20
|
},
|
|
21
21
|
};
|
|
22
22
|
}
|
package/dist/types/Try.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Try.js","sourceRoot":"","sources":["../../src/types/Try.ts"],"names":[],"mappings":";;;AAAA,6BAAkD;AAClD,8CAAyC;AACzC,+CAAoE;AAEpE,+BAAmC;AAGnC,MAAe,GAAG;IAAlB;QAEE,OAAE,GAAG;YACH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Try.js","sourceRoot":"","sources":["../../src/types/Try.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,9 +12,9 @@ const validators = (subject) => (0, types_1.meta)(subject)
|
|
|
12
12
|
const runValidator = (v, subject) => (0, types_1.tryTo)(() => subject[v.property])
|
|
13
13
|
.map(actual => v.constraint(actual))
|
|
14
14
|
.map(res => (0, types_1.isResults)(res) ? res : !res ? (0, exports.asResults)(subject, v.text, v) : (0, types_1.toResults)()).value;
|
|
15
|
-
const constraints = (subject) => validators(subject)
|
|
16
|
-
.mapDefined(v => runValidator(v, subject))
|
|
17
|
-
.reduce((rs, r) => rs.add(...r.results), (0, types_1.toResults)());
|
|
15
|
+
const constraints = (subject) => (0, types_1.tryTo)(() => validators(subject))
|
|
16
|
+
.map(vs => vs.mapDefined(v => runValidator(v, subject)))
|
|
17
|
+
.map(res => res.reduce((rs, r) => rs.add(...r.results), (0, types_1.toResults)())).value;
|
|
18
18
|
const validate = (subject) => (0, utils_1.choose)(subject)
|
|
19
19
|
.case(s => !(0, types_1.isDefined)(s), s => (0, exports.asResults)(s, 'Subject is not defined.'))
|
|
20
20
|
.case(s => (0, types_1.isEnum)(s), (e) => (e.isValid ? (0, types_1.toResults)() : (0, exports.asResults)(e, 'This is not a valid {type}.')))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validate.js","sourceRoot":"","sources":["../../src/validation/Validate.ts"],"names":[],"mappings":";;;AAAA,oCAmBkB;AAElB,iCAA8B;AAC9B,oCAAkC;AAI3B,MAAM,SAAS,GAAG,CAAC,OAAgB,EAAE,QAAc,EAAE,UAA2B,EAAE,EAAW,EAAE,CACpG,IAAA,iBAAS,EAAC,IAAA,gBAAQ,EAAC,IAAA,YAAI,EAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,IAAA,cAAM,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AADlE,QAAA,SAAS,aACyD;AAE/E,MAAM,UAAU,GAAG,CAAC,OAAgB,EAAmB,EAAE,CACvD,IAAA,YAAI,EAAC,OAAO,CAAC;KACV,IAAI,CAAkB,YAAY,CAAC;KACnC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,IAAA,cAAM,GAAa,CAAC,CAAC;AAE7D,MAAM,YAAY,GAAG,CAAC,CAAY,EAAE,OAAiB,EAAW,EAAE,CAChE,IAAA,aAAK,EAAC,GAAG,EAAE,CAAE,OAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;KACtC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;KACnC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAA,iBAAS,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,iBAAS,EAAC,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,iBAAS,GAAE,CAAC,CAAC,KAAK,CAAC;AAEjG,MAAM,WAAW,GAAG,CAAC,OAAiB,EAAW,EAAE,CACjD,UAAU,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Validate.js","sourceRoot":"","sources":["../../src/validation/Validate.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thisisagile/easy",
|
|
3
|
-
"version": "7.34.
|
|
3
|
+
"version": "7.34.19",
|
|
4
4
|
"description": "Straightforward library for building domain-driven microservice architectures",
|
|
5
5
|
"author": "Sander Hoogendoorn",
|
|
6
6
|
"license": "MIT",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"access": "public"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@thisisagile/easy-test": "7.34.
|
|
34
|
+
"@thisisagile/easy-test": "7.34.19",
|
|
35
35
|
"@types/form-urlencoded": "^4.4.0",
|
|
36
36
|
"@types/jsonwebtoken": "^8.5.5",
|
|
37
37
|
"@types/validator": "^13.6.3"
|
package/src/types/Try.ts
CHANGED
|
@@ -8,15 +8,15 @@ import { Func } from './Func';
|
|
|
8
8
|
abstract class Try<T = unknown> implements Validatable {
|
|
9
9
|
|
|
10
10
|
is = {
|
|
11
|
-
defined: (): Try<T> => this.filter(v => isDefined(v)),
|
|
12
|
-
empty: (): Try<T> => this.filter(v => isEmpty(v)),
|
|
13
|
-
valid: (): Try<T> => this.filter(v => validate(v).isValid),
|
|
14
|
-
true: (): Try<T> => this.filter(v => isTrue(v)),
|
|
15
|
-
false: (): Try<T> => this.filter(v => !isTrue(v)),
|
|
11
|
+
defined: (prop?: Func<unknown, T>): Try<T> => this.filter(v => isDefined(prop ? prop(v) : v)),
|
|
12
|
+
empty: (prop?: Func<unknown, T>): Try<T> => this.filter(v => isEmpty(prop ? prop(v) : v)),
|
|
13
|
+
valid: (prop?: Func<unknown, T>): Try<T> => this.filter(v => validate(prop ? prop(v) : v).isValid),
|
|
14
|
+
true: (prop?: Func<unknown, T>): Try<T> => this.filter(v => isTrue(prop ? prop(v) : v)),
|
|
15
|
+
false: (prop?: Func<unknown, T>): Try<T> => this.filter(v => !isTrue(prop ? prop(v) : v)),
|
|
16
16
|
not: {
|
|
17
|
-
defined: (): Try<T> => this.filter(v => !isDefined(v)),
|
|
18
|
-
empty: (): Try<T> => this.filter(v => !isEmpty(v)),
|
|
19
|
-
valid: (): Try<T> => this.filter(v => !validate(v).isValid),
|
|
17
|
+
defined: (prop?: Func<unknown, T>): Try<T> => this.filter(v => !isDefined(prop ? prop(v) : v)),
|
|
18
|
+
empty: (prop?: Func<unknown, T>): Try<T> => this.filter(v => !isEmpty(prop ? prop(v) : v)),
|
|
19
|
+
valid: (prop?: Func<unknown, T>): Try<T> => this.filter(v => !validate(prop ? prop(v) : v).isValid),
|
|
20
20
|
},
|
|
21
21
|
};
|
|
22
22
|
|
|
@@ -38,9 +38,9 @@ const runValidator = (v: Validator, subject?: unknown): Results =>
|
|
|
38
38
|
.map(res => isResults(res) ? res : !res ? asResults(subject, v.text, v) : toResults()).value;
|
|
39
39
|
|
|
40
40
|
const constraints = (subject?: unknown): Results =>
|
|
41
|
-
validators(subject)
|
|
42
|
-
.mapDefined(v => runValidator(v, subject))
|
|
43
|
-
.reduce((rs, r) => rs.add(...r.results), toResults());
|
|
41
|
+
tryTo(() => validators(subject))
|
|
42
|
+
.map(vs => vs.mapDefined(v => runValidator(v, subject)))
|
|
43
|
+
.map(res => res.reduce((rs, r) => rs.add(...r.results), toResults())).value;
|
|
44
44
|
|
|
45
45
|
export const validate = (subject?: unknown): Results =>
|
|
46
46
|
choose<Results, any>(subject)
|