@thisisagile/easy 15.8.1 → 15.8.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.
- package/dist/utils/View.js +3 -1
- package/dist/utils/View.js.map +1 -1
- package/package.json +2 -2
- package/src/utils/View.ts +12 -3
package/dist/utils/View.js
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.views = exports.view = exports.isSimpleView = exports.View = exports.toViewer = void 0;
|
|
4
4
|
const types_1 = require("../types");
|
|
5
5
|
const Traverse_1 = require("./Traverse");
|
|
6
|
+
const If_1 = require("./If");
|
|
6
7
|
const ignore = Symbol('view.ignore');
|
|
7
8
|
const keep = Symbol('view.keep');
|
|
8
9
|
const toViewer = (key, value) => (0, types_1.choose)(value)
|
|
@@ -13,12 +14,13 @@ const toViewer = (key, value) => (0, types_1.choose)(value)
|
|
|
13
14
|
.type(types_1.isString, s => ({ key, f: (a) => (0, Traverse_1.traverse)(a, s) }))
|
|
14
15
|
.type(types_1.isConstructor, c => ({
|
|
15
16
|
key,
|
|
16
|
-
f: (a, key) => (0, types_1.use)((0, Traverse_1.traverse)(a, key), v => ((0, types_1.isArray)(v) ? v.map(i =>
|
|
17
|
+
f: (a, key) => (0, types_1.use)((0, Traverse_1.traverse)(a, key), v => ((0, types_1.isArray)(v) ? v.map(i => optional(c, i)) : optional(c, v))),
|
|
17
18
|
}))
|
|
18
19
|
.type(exports.isSimpleView, f => ({ key, f: (a) => f.from((0, Traverse_1.traverse)(a, key)) }))
|
|
19
20
|
.type(types_1.isFunction, f => ({ key, f }))
|
|
20
21
|
.else(v => ({ key, f: () => v }));
|
|
21
22
|
exports.toViewer = toViewer;
|
|
23
|
+
const optional = (c, v) => (0, If_1.ifDefined)(v, i => new c(i), () => v);
|
|
22
24
|
const toViewers = (views) => (0, types_1.meta)(views)
|
|
23
25
|
.entries()
|
|
24
26
|
.map(([k, v]) => (0, exports.toViewer)(k, v));
|
package/dist/utils/View.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"View.js","sourceRoot":"","sources":["../../src/utils/View.ts"],"names":[],"mappings":";;;AAAA,oCAoBkB;AAClB,yCAAsC;
|
|
1
|
+
{"version":3,"file":"View.js","sourceRoot":"","sources":["../../src/utils/View.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thisisagile/easy",
|
|
3
|
-
"version": "15.8.
|
|
3
|
+
"version": "15.8.3",
|
|
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": "15.8.
|
|
34
|
+
"@thisisagile/easy-test": "15.8.3",
|
|
35
35
|
"@types/form-urlencoded": "^4.4.0",
|
|
36
36
|
"@types/jsonwebtoken": "^9.0.2",
|
|
37
37
|
"@types/luxon": "3.2.0",
|
package/src/utils/View.ts
CHANGED
|
@@ -20,6 +20,7 @@ import {
|
|
|
20
20
|
use,
|
|
21
21
|
} from '../types';
|
|
22
22
|
import { traverse } from './Traverse';
|
|
23
|
+
import { ifDefined } from './If';
|
|
23
24
|
|
|
24
25
|
type Func<T = unknown> = (a: any, key?: string) => T;
|
|
25
26
|
type Viewer = { key: string; f: Func };
|
|
@@ -39,19 +40,27 @@ export const toViewer = (key: string, value: ViewType): Viewer =>
|
|
|
39
40
|
.type(isString, s => ({ key, f: (a: any) => traverse(a, s) }))
|
|
40
41
|
.type(isConstructor, c => ({
|
|
41
42
|
key,
|
|
42
|
-
f: (a, key) => use(traverse(a, key), v => (isArray(v) ? v.map(i =>
|
|
43
|
+
f: (a, key) => use(traverse(a, key), v => (isArray(v) ? v.map(i => optional(c, i)) : optional(c, v))),
|
|
43
44
|
}))
|
|
44
45
|
.type(isSimpleView, f => ({ key, f: (a: any) => f.from(traverse(a, key)) }))
|
|
45
46
|
.type(isFunction, f => ({ key, f }))
|
|
46
47
|
.else(v => ({ key, f: () => v }));
|
|
47
48
|
|
|
49
|
+
const optional = (c: Constructor, v: any) =>
|
|
50
|
+
ifDefined(
|
|
51
|
+
v,
|
|
52
|
+
i => new c(i),
|
|
53
|
+
() => v,
|
|
54
|
+
);
|
|
55
|
+
|
|
48
56
|
const toViewers = (views: ViewRecord): Viewer[] =>
|
|
49
57
|
meta(views)
|
|
50
58
|
.entries<ViewType>()
|
|
51
59
|
.map(([k, v]) => toViewer(k, v));
|
|
52
60
|
|
|
53
61
|
export class View<V = Json> {
|
|
54
|
-
constructor(private views = {} as ViewRecord<V>, readonly startsFrom: 'scratch' | 'source' = 'scratch', readonly viewers: Viewer[] = toViewers(views)) {
|
|
62
|
+
constructor(private views = {} as ViewRecord<V>, readonly startsFrom: 'scratch' | 'source' = 'scratch', readonly viewers: Viewer[] = toViewers(views)) {
|
|
63
|
+
}
|
|
55
64
|
|
|
56
65
|
get fromSource(): View<V> {
|
|
57
66
|
return new View(this.views, 'source', this.viewers);
|
|
@@ -65,7 +74,7 @@ export class View<V = Json> {
|
|
|
65
74
|
if (isPageList(source))
|
|
66
75
|
return toPageList(
|
|
67
76
|
source.map(s => this.reduce(s)),
|
|
68
|
-
source
|
|
77
|
+
source,
|
|
69
78
|
);
|
|
70
79
|
if (isArray(source)) return source.map(s => this.reduce(s));
|
|
71
80
|
return this.reduce(source);
|