@alterior/common 3.0.0-rc.5 → 3.0.0-rc.6
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/base64.js +11 -14
- package/dist/base64.js.map +1 -1
- package/dist/cache.js +76 -105
- package/dist/cache.js.map +1 -1
- package/dist/cache.test.js.map +1 -1
- package/dist/clone.d.ts.map +1 -1
- package/dist/clone.js +10 -4
- package/dist/clone.js.map +1 -1
- package/dist/clone.test.js.map +1 -1
- package/dist/coalesce.js +5 -21
- package/dist/coalesce.js.map +1 -1
- package/dist/coalesce.test.js.map +1 -1
- package/dist/colors.js +5 -5
- package/dist/colors.js.map +1 -1
- package/dist/console.js +17 -43
- package/dist/console.js.map +1 -1
- package/dist/decorators.js +1 -1
- package/dist/decorators.js.map +1 -1
- package/dist/environment.js +16 -21
- package/dist/environment.js.map +1 -1
- package/dist/errors.js +89 -143
- package/dist/errors.js.map +1 -1
- package/dist/errors.test.js.map +1 -1
- package/dist/get-param-names.js +7 -7
- package/dist/index.js +1 -1
- package/dist/lazy-promise.js +18 -23
- package/dist/lazy-promise.js.map +1 -1
- package/dist/lazy-subject.js +6 -6
- package/dist/lazy-subject.js.map +1 -1
- package/dist/locks.js +41 -77
- package/dist/locks.js.map +1 -1
- package/dist/locks.test.js.map +1 -1
- package/dist/presentation.js +65 -106
- package/dist/presentation.js.map +1 -1
- package/dist/presentation.test.js.map +1 -1
- package/dist/serializer.js +4 -8
- package/dist/serializer.js.map +1 -1
- package/dist/test.js.map +1 -1
- package/dist/time.js +11 -14
- package/dist/time.js.map +1 -1
- package/dist/timeout.js +7 -8
- package/dist/timeout.js.map +1 -1
- package/dist/zones.js +58 -84
- package/dist/zones.js.map +1 -1
- package/dist.esm/clone.d.ts.map +1 -1
- package/dist.esm/clone.js +8 -2
- package/dist.esm/clone.js.map +1 -1
- package/package.json +2 -2
- package/src/clone.ts +12 -3
package/dist/lazy-subject.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.lazySubject = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
const rxjs_1 = require("rxjs");
|
|
5
|
+
const operators_1 = require("rxjs/operators");
|
|
6
6
|
/**
|
|
7
7
|
* Utility for creating a subject observable which can run arbitrary code when the first
|
|
8
8
|
* subscribe() happens and when the last unsubscribe() happens.
|
|
9
9
|
* @param options
|
|
10
10
|
*/
|
|
11
11
|
function lazySubject(options) {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
let obs = new rxjs_1.Observable(observer => {
|
|
13
|
+
let subject = new rxjs_1.Subject();
|
|
14
|
+
let subscription = subject.subscribe(observer);
|
|
15
15
|
options.start(subject);
|
|
16
|
-
return
|
|
16
|
+
return () => {
|
|
17
17
|
subscription.unsubscribe();
|
|
18
18
|
options.stop();
|
|
19
19
|
};
|
package/dist/lazy-subject.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazy-subject.js","sourceRoot":"","sources":["../src/lazy-subject.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"lazy-subject.js","sourceRoot":"","sources":["../src/lazy-subject.ts"],"names":[],"mappings":";;;AAAA,+BAAkE;AAClE,8CAAyC;AAmBzC;;;;GAIG;AACH,SAAgB,WAAW,CAAI,OAA+B;IAE1D,IAAI,GAAG,GAAG,IAAI,iBAAU,CAAC,QAAQ,CAAC,EAAE;QAChC,IAAI,OAAO,GAAG,IAAI,cAAO,EAAK,CAAC;QAC/B,IAAI,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE/C,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACvB,OAAO,GAAG,EAAE;YACR,YAAY,CAAC,WAAW,EAAE,CAAC;YAC3B,OAAO,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,OAAkC,GAAG,CAAC,IAAI,CAAC,IAAA,mBAAO,GAAE,CAAE,CAAC,QAAQ,EAAE,CAAC;AACtE,CAAC;AAdD,kCAcC"}
|
package/dist/locks.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ZoneLock = exports.Lock = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const zones_1 = require("./zones");
|
|
6
6
|
/**
|
|
7
7
|
* Provides a mechanism for ensuring that multiple function calls do not overlap, even if they are asynchronous.
|
|
8
8
|
* NOTE: This does not include macrotasks (ie setTimeout/setInterval/etc). If you require that, see ZoneLock.
|
|
9
9
|
*/
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
class Lock {
|
|
11
|
+
constructor() {
|
|
12
12
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
static forToken(token) {
|
|
14
|
+
let prop = Object.getOwnPropertyDescriptor(this, '_namedLocks');
|
|
15
|
+
let map;
|
|
16
16
|
if (!prop) {
|
|
17
17
|
map = new Map();
|
|
18
18
|
Object.defineProperty(this, '_namedLocks', {
|
|
@@ -23,91 +23,55 @@ var Lock = /** @class */ (function () {
|
|
|
23
23
|
else {
|
|
24
24
|
map = prop.value;
|
|
25
25
|
}
|
|
26
|
-
|
|
26
|
+
let lock = map.get(token);
|
|
27
27
|
if (!lock) {
|
|
28
28
|
lock = new this();
|
|
29
29
|
map.set(token, lock);
|
|
30
30
|
}
|
|
31
31
|
return lock;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
35
|
-
return
|
|
36
|
-
switch (_a.label) {
|
|
37
|
-
case 0: return [4 /*yield*/, cb()];
|
|
38
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
39
|
-
}
|
|
40
|
-
});
|
|
32
|
+
}
|
|
33
|
+
executeCallback(cb) {
|
|
34
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
35
|
+
return yield cb();
|
|
41
36
|
});
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
error = undefined;
|
|
53
|
-
this._ready = new Promise(function (resolve) { return (0, tslib_1.__awaiter)(_this, void 0, void 0, function () {
|
|
54
|
-
var e_1;
|
|
55
|
-
return (0, tslib_1.__generator)(this, function (_a) {
|
|
56
|
-
switch (_a.label) {
|
|
57
|
-
case 0: return [4 /*yield*/, ready];
|
|
58
|
-
case 1:
|
|
59
|
-
_a.sent();
|
|
60
|
-
_a.label = 2;
|
|
61
|
-
case 2:
|
|
62
|
-
_a.trys.push([2, 4, , 5]);
|
|
63
|
-
return [4 /*yield*/, this.executeCallback(cb)];
|
|
64
|
-
case 3:
|
|
65
|
-
value = _a.sent();
|
|
66
|
-
return [3 /*break*/, 5];
|
|
67
|
-
case 4:
|
|
68
|
-
e_1 = _a.sent();
|
|
69
|
-
error = e_1;
|
|
70
|
-
return [3 /*break*/, 5];
|
|
71
|
-
case 5:
|
|
72
|
-
resolve();
|
|
73
|
-
return [2 /*return*/];
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
}); });
|
|
77
|
-
return [4 /*yield*/, this._ready];
|
|
78
|
-
case 1:
|
|
79
|
-
_a.sent();
|
|
80
|
-
if (error !== undefined)
|
|
81
|
-
throw error;
|
|
82
|
-
return [2 /*return*/, value];
|
|
37
|
+
}
|
|
38
|
+
run(cb) {
|
|
39
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
40
|
+
let ready = this._ready;
|
|
41
|
+
let value = undefined;
|
|
42
|
+
let error = undefined;
|
|
43
|
+
this._ready = new Promise((resolve) => (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
44
|
+
yield ready;
|
|
45
|
+
try {
|
|
46
|
+
value = yield this.executeCallback(cb);
|
|
83
47
|
}
|
|
84
|
-
|
|
48
|
+
catch (e) {
|
|
49
|
+
error = e;
|
|
50
|
+
}
|
|
51
|
+
resolve();
|
|
52
|
+
}));
|
|
53
|
+
yield this._ready;
|
|
54
|
+
if (error !== undefined)
|
|
55
|
+
throw error;
|
|
56
|
+
return value;
|
|
85
57
|
});
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
}());
|
|
58
|
+
}
|
|
59
|
+
}
|
|
89
60
|
exports.Lock = Lock;
|
|
90
61
|
/**
|
|
91
62
|
* Provides a mechanism for ensuring that multiple function calls do not overlap, even if they are asynchronous
|
|
92
63
|
* or they spin off macrotasks (ie setTimeout/setInterval/etc). Zone.js is used to accomplish this. For a lighter
|
|
93
64
|
* lock that does not track macrotasks see Lock.
|
|
94
65
|
*/
|
|
95
|
-
|
|
96
|
-
(
|
|
97
|
-
|
|
98
|
-
return _super.call(this) || this;
|
|
66
|
+
class ZoneLock extends Lock {
|
|
67
|
+
constructor() {
|
|
68
|
+
super();
|
|
99
69
|
}
|
|
100
|
-
|
|
101
|
-
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
102
|
-
return
|
|
103
|
-
switch (_a.label) {
|
|
104
|
-
case 0: return [4 /*yield*/, zones_1.AsyncZone.run(cb)];
|
|
105
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
106
|
-
}
|
|
107
|
-
});
|
|
70
|
+
executeCallback(cb) {
|
|
71
|
+
return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
|
|
72
|
+
return yield zones_1.AsyncZone.run(cb);
|
|
108
73
|
});
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
}(Lock));
|
|
74
|
+
}
|
|
75
|
+
}
|
|
112
76
|
exports.ZoneLock = ZoneLock;
|
|
113
77
|
//# sourceMappingURL=locks.js.map
|
package/dist/locks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locks.js","sourceRoot":"","sources":["../src/locks.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"locks.js","sourceRoot":"","sources":["../src/locks.ts"],"names":[],"mappings":";;;;AAAA,mCAAoC;AAEpC;;;GAGG;AACH,MAAa,IAAI;IACb;IACA,CAAC;IAKD,MAAM,CAAC,QAAQ,CAAuC,KAAW;QAE7D,IAAI,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QAChE,IAAI,GAAiB,CAAC;QAEtB,IAAI,CAAC,IAAI,EAAE;YACP,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;YAExB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE;gBACvC,UAAU,EAAE,KAAK;gBACjB,KAAK,EAAE,GAAG;aACb,CAAC,CAAC;SACN;aAAM;YACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;SACpB;QAED,IAAI,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAE1B,IAAI,CAAC,IAAI,EAAE;YACP,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAClB,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;SACxB;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEe,eAAe,CAAC,EAAE;;YAC9B,OAAO,MAAM,EAAE,EAAE,CAAC;QACtB,CAAC;KAAA;IAEK,GAAG,CAAC,EAAa;;YACnB,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YACxB,IAAI,KAAK,GAAG,SAAS,CAAC;YACtB,IAAI,KAAK,GAAG,SAAS,CAAC;YAEtB,IAAI,CAAC,MAAM,GAAG,IAAI,OAAO,CAAC,CAAM,OAAO,EAAC,EAAE;gBACtC,MAAM,KAAK,CAAC;gBAEZ,IAAI;oBACA,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;iBAC1C;gBAAC,OAAO,CAAC,EAAE;oBACR,KAAK,GAAG,CAAC,CAAC;iBACb;gBACD,OAAO,EAAE,CAAC;YACd,CAAC,CAAA,CAAC,CAAC;YAEH,MAAM,IAAI,CAAC,MAAM,CAAC;YAElB,IAAI,KAAK,KAAK,SAAS;gBACnB,MAAM,KAAK,CAAC;YAEhB,OAAO,KAAK,CAAC;QACjB,CAAC;KAAA;CACJ;AA5DD,oBA4DC;AAED;;;;GAIG;AACH,MAAa,QAAS,SAAQ,IAAI;IAC9B;QACI,KAAK,EAAE,CAAC;IACZ,CAAC;IAEe,eAAe,CAAC,EAAE;;YAC9B,OAAO,MAAM,iBAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnC,CAAC;KAAA;CACJ;AARD,4BAQC"}
|
package/dist/locks.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locks.test.js","sourceRoot":"","sources":["../src/locks.test.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"locks.test.js","sourceRoot":"","sources":["../src/locks.test.ts"],"names":[],"mappings":"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"}
|
package/dist/presentation.js
CHANGED
|
@@ -2,22 +2,20 @@
|
|
|
2
2
|
/// <reference types="reflect-metadata" />
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.Expose = exports.Presentation = exports.PresentationSchema = exports.EXPOSE_PROTOTYPE_STORAGE_KEY = void 0;
|
|
5
|
-
|
|
6
|
-
var clone_1 = require("./clone");
|
|
5
|
+
const clone_1 = require("./clone");
|
|
7
6
|
exports.EXPOSE_PROTOTYPE_STORAGE_KEY = '@sliptap/backend:Expose';
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
class PresentationSchema {
|
|
8
|
+
constructor(type) {
|
|
10
9
|
this.type = type;
|
|
11
10
|
this.populate();
|
|
12
11
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
var prototypes = [];
|
|
12
|
+
populate() {
|
|
13
|
+
let exposureSets = [];
|
|
14
|
+
let prototype = this.type.prototype;
|
|
15
|
+
let prototypes = [];
|
|
18
16
|
while (prototype) {
|
|
19
17
|
prototypes.push(prototype);
|
|
20
|
-
|
|
18
|
+
let value = prototype[exports.EXPOSE_PROTOTYPE_STORAGE_KEY];
|
|
21
19
|
if (value)
|
|
22
20
|
exposureSets.push(value);
|
|
23
21
|
prototype = Object.getPrototypeOf(prototype);
|
|
@@ -25,47 +23,26 @@ var PresentationSchema = /** @class */ (function () {
|
|
|
25
23
|
// Reverse the order so that the super-most properties appear first,
|
|
26
24
|
// followed by the subproperties.
|
|
27
25
|
exposureSets = exposureSets.reverse();
|
|
28
|
-
|
|
29
|
-
.reduce(
|
|
30
|
-
.map(
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
if (exposure.options && exposure.options.useProperty) {
|
|
36
|
-
key = exposure.options.useProperty;
|
|
37
|
-
}
|
|
38
|
-
var designType = null;
|
|
39
|
-
try {
|
|
40
|
-
for (var prototypes_1 = (e_2 = void 0, (0, tslib_1.__values)(prototypes)), prototypes_1_1 = prototypes_1.next(); !prototypes_1_1.done; prototypes_1_1 = prototypes_1.next()) {
|
|
41
|
-
var prototype_1 = prototypes_1_1.value;
|
|
42
|
-
designType = Reflect.getMetadata('design:type', prototype_1, key);
|
|
43
|
-
if (designType)
|
|
44
|
-
break;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
48
|
-
finally {
|
|
49
|
-
try {
|
|
50
|
-
if (prototypes_1_1 && !prototypes_1_1.done && (_b = prototypes_1.return)) _b.call(prototypes_1);
|
|
51
|
-
}
|
|
52
|
-
finally { if (e_2) throw e_2.error; }
|
|
53
|
-
}
|
|
54
|
-
if (!exposure.designType)
|
|
55
|
-
exposure.designType = designType;
|
|
26
|
+
let exposures = exposureSets
|
|
27
|
+
.reduce((pv, cv) => (pv.push(...cv), pv), [])
|
|
28
|
+
.map(x => (0, clone_1.clone)(x));
|
|
29
|
+
for (let exposure of exposures) {
|
|
30
|
+
let key = exposure.propertyKey;
|
|
31
|
+
if (exposure.options && exposure.options.useProperty) {
|
|
32
|
+
key = exposure.options.useProperty;
|
|
56
33
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
34
|
+
let designType = null;
|
|
35
|
+
for (let prototype of prototypes) {
|
|
36
|
+
designType = Reflect.getMetadata('design:type', prototype, key);
|
|
37
|
+
if (designType)
|
|
38
|
+
break;
|
|
62
39
|
}
|
|
63
|
-
|
|
40
|
+
if (!exposure.designType)
|
|
41
|
+
exposure.designType = designType;
|
|
64
42
|
}
|
|
65
43
|
this.properties = exposures;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
}());
|
|
44
|
+
}
|
|
45
|
+
}
|
|
69
46
|
exports.PresentationSchema = PresentationSchema;
|
|
70
47
|
/**
|
|
71
48
|
* Allows for transforming data from one form to another using declarative rules.
|
|
@@ -77,8 +54,8 @@ exports.PresentationSchema = PresentationSchema;
|
|
|
77
54
|
* new instance of that type will be constructed and passed the property value from
|
|
78
55
|
* the given `instance`. This allows you to control the presentation of subobjects.
|
|
79
56
|
*/
|
|
80
|
-
|
|
81
|
-
|
|
57
|
+
class Presentation {
|
|
58
|
+
constructor(instance) {
|
|
82
59
|
this.instance = instance;
|
|
83
60
|
}
|
|
84
61
|
/**
|
|
@@ -88,65 +65,48 @@ var Presentation = /** @class */ (function () {
|
|
|
88
65
|
* @param this
|
|
89
66
|
* @param array
|
|
90
67
|
*/
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
},
|
|
99
|
-
enumerable: false,
|
|
100
|
-
configurable: true
|
|
101
|
-
});
|
|
102
|
-
Presentation.prototype.toJSON = function () {
|
|
103
|
-
var e_3, _a;
|
|
68
|
+
static from(array) {
|
|
69
|
+
return array.map(x => new this(x));
|
|
70
|
+
}
|
|
71
|
+
static get properties() {
|
|
72
|
+
return new PresentationSchema(this).properties;
|
|
73
|
+
}
|
|
74
|
+
toJSON() {
|
|
104
75
|
if (!this.instance)
|
|
105
76
|
return null;
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
if (options.useProperty) {
|
|
118
|
-
value = this.instance[options.useProperty];
|
|
119
|
-
}
|
|
120
|
-
else if (!propertyDescriptor || !propertyDescriptor.get) {
|
|
121
|
-
// Data property, fill from original object.
|
|
122
|
-
value = this.instance[key];
|
|
123
|
-
}
|
|
124
|
-
var entityType = void 0;
|
|
125
|
-
if (options.class) {
|
|
126
|
-
entityType = options.class;
|
|
127
|
-
}
|
|
128
|
-
else if (propertyType && propertyType.prototype instanceof Presentation) {
|
|
129
|
-
entityType = propertyType;
|
|
130
|
-
}
|
|
131
|
-
// Transform...
|
|
132
|
-
if (entityType)
|
|
133
|
-
value = new entityType(value);
|
|
134
|
-
if (value && value.toJSON)
|
|
135
|
-
value = value.toJSON();
|
|
136
|
-
properties[key] = value;
|
|
77
|
+
let properties = {};
|
|
78
|
+
let exposures = this.constructor.properties;
|
|
79
|
+
for (let exposure of exposures) {
|
|
80
|
+
let key = exposure.propertyKey;
|
|
81
|
+
let options = exposure.options;
|
|
82
|
+
let prototype = Object.getPrototypeOf(this);
|
|
83
|
+
let propertyType = Reflect.getMetadata('design:type', this.constructor.prototype, key);
|
|
84
|
+
let propertyDescriptor = Object.getOwnPropertyDescriptor(prototype, key);
|
|
85
|
+
let value = this[key];
|
|
86
|
+
if (options.useProperty) {
|
|
87
|
+
value = this.instance[options.useProperty];
|
|
137
88
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
89
|
+
else if (!propertyDescriptor || !propertyDescriptor.get) {
|
|
90
|
+
// Data property, fill from original object.
|
|
91
|
+
value = this.instance[key];
|
|
92
|
+
}
|
|
93
|
+
let entityType;
|
|
94
|
+
if (options.class) {
|
|
95
|
+
entityType = options.class;
|
|
96
|
+
}
|
|
97
|
+
else if (propertyType && propertyType.prototype instanceof Presentation) {
|
|
98
|
+
entityType = propertyType;
|
|
143
99
|
}
|
|
144
|
-
|
|
100
|
+
// Transform...
|
|
101
|
+
if (entityType)
|
|
102
|
+
value = new entityType(value);
|
|
103
|
+
if (value && value.toJSON)
|
|
104
|
+
value = value.toJSON();
|
|
105
|
+
properties[key] = value;
|
|
145
106
|
}
|
|
146
107
|
return properties;
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
}());
|
|
108
|
+
}
|
|
109
|
+
}
|
|
150
110
|
exports.Presentation = Presentation;
|
|
151
111
|
/**
|
|
152
112
|
* When used on properties declared within a subclass of `Presentation<T>`,
|
|
@@ -154,8 +114,7 @@ exports.Presentation = Presentation;
|
|
|
154
114
|
*
|
|
155
115
|
* @see Presentation<T>
|
|
156
116
|
*/
|
|
157
|
-
function Expose(options) {
|
|
158
|
-
if (options === void 0) { options = {}; }
|
|
117
|
+
function Expose(options = {}) {
|
|
159
118
|
return function (target, propertyKey, descriptor) {
|
|
160
119
|
if (!target.hasOwnProperty(exports.EXPOSE_PROTOTYPE_STORAGE_KEY)) {
|
|
161
120
|
Object.defineProperty(target, exports.EXPOSE_PROTOTYPE_STORAGE_KEY, {
|
|
@@ -163,10 +122,10 @@ function Expose(options) {
|
|
|
163
122
|
value: []
|
|
164
123
|
});
|
|
165
124
|
}
|
|
166
|
-
|
|
125
|
+
let exposures = target[exports.EXPOSE_PROTOTYPE_STORAGE_KEY];
|
|
167
126
|
exposures.push({
|
|
168
127
|
propertyKey: propertyKey,
|
|
169
|
-
options
|
|
128
|
+
options
|
|
170
129
|
});
|
|
171
130
|
};
|
|
172
131
|
}
|
package/dist/presentation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presentation.js","sourceRoot":"","sources":["../src/presentation.ts"],"names":[],"mappings":";AAAA,0CAA0C
|
|
1
|
+
{"version":3,"file":"presentation.js","sourceRoot":"","sources":["../src/presentation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presentation.test.js","sourceRoot":"","sources":["../src/presentation.test.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"presentation.test.js","sourceRoot":"","sources":["../src/presentation.test.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAC/B,+BAA8B;AAC9B,iDAAsD;AAEtD,IAAA,cAAK,EAAC,QAAQ,CAAC,EAAE;IACb,QAAQ,CAAC,iBAAiB,EAAE,EAAE,CAAC,EAAE;QAC7B,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YAQlD,SAAS,OAAO;gBACZ,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC;YACvC,CAAC;YAGD,IAAM,QAAQ,GAAd,MAAM,QAAS,SAAQ,2BAAmB;aAIzC,CAAA;YAHa;gBAAT,IAAA,qBAAM,GAAE;;yDAAsB;YACrB;gBAAT,IAAA,qBAAM,GAAE;;mDAAgB;YACf;gBAAT,IAAA,qBAAM,GAAE;;oDAAiB;YAHxB,QAAQ;gBADb,OAAO,EAAE;eACJ,QAAQ,CAIb;YAED,IAAI,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC;YAChC,IAAI,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,aAAa,CAAC,CAAC;YAChE,IAAI,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,OAAO,CAAC,CAAC;YAC3D,IAAI,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC;YAE7D,IAAA,aAAM,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAA;YACzB,IAAA,aAAM,EAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAA;YAC1B,IAAA,aAAM,EAAC,UAAU,CAAC,CAAC,EAAE,CAAC,KAAK,CAAA;YAE3B,IAAA,aAAM,EAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC7C,IAAA,aAAM,EAAC,SAAS,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAA,aAAM,EAAC,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YAMrC,MAAM,gBAAiB,SAAQ,2BAAmB;aAEjD;YADa;gBAAT,IAAA,qBAAM,GAAE;;2DAAgB;YAG7B,MAAM,QAAS,SAAQ,gBAAgB;aAEtC;YADa;gBAAT,IAAA,qBAAM,GAAE;;yDAAsB;YAGnC,IAAI,iBAAiB,GAAG,IAAI,gBAAgB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;YAC7F,IAAI,YAAY,GAAS,iBAAiB,CAAC,MAAM,EAAE,CAAC;YAEpD,IAAA,aAAM,EAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC7C,IAAA,aAAM,EAAC,YAAY,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;YAEjD,IAAI,SAAS,GAAG,IAAI,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;YAC7E,IAAI,IAAI,GAAS,SAAS,CAAC,MAAM,EAAE,CAAC;YAEpC,IAAA,aAAM,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACrC,IAAA,aAAM,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
package/dist/serializer.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.prepareForSerialization = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
4
|
/**
|
|
6
5
|
* Prepare an object for serialization by removing any fields which are undefined
|
|
7
6
|
* or functions and return the result. The operation is recursive across all subobjects.
|
|
@@ -17,13 +16,10 @@ function prepareForSerialization(data) {
|
|
|
17
16
|
if (typeof data !== 'object')
|
|
18
17
|
return data;
|
|
19
18
|
return Object.entries(data)
|
|
20
|
-
.filter(
|
|
21
|
-
.filter(
|
|
22
|
-
.map(
|
|
23
|
-
.reduce(
|
|
24
|
-
var _b = (0, tslib_1.__read)(_a, 2), k = _b[0], v = _b[1];
|
|
25
|
-
return (o[k] = v, o);
|
|
26
|
-
}, {});
|
|
19
|
+
.filter(x => x[1] !== undefined)
|
|
20
|
+
.filter(x => typeof x[1] !== 'function')
|
|
21
|
+
.map(x => [x[0], prepareForSerialization(x[1])])
|
|
22
|
+
.reduce((o, [k, v]) => (o[k] = v, o), {});
|
|
27
23
|
}
|
|
28
24
|
exports.prepareForSerialization = prepareForSerialization;
|
|
29
25
|
//# sourceMappingURL=serializer.js.map
|
package/dist/serializer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../src/serializer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../src/serializer.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACH,SAAgB,uBAAuB,CAAI,IAAQ;IAC/C,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI;QACnC,OAAO,IAAI,CAAC;IAEhB,IAAI,IAAI,CAAC,QAAQ,CAAC;QACd,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;IAE5B,IAAI,OAAO,IAAI,KAAK,QAAQ;QACxB,OAAO,IAAI,CAAC;IAEhB,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;SAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;SAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC;SACvC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC/C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAK,EAAE,CAAC,CAClD;AACL,CAAC;AAhBD,0DAgBC"}
|
package/dist/test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":";;AAAA,4BAA0B;AAC1B,uCAAqC;AAErC,
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":";;AAAA,4BAA0B;AAC1B,uCAAqC;AAErC,mCAA+B;AAE/B,IAAA,cAAK,GAAE;KACF,OAAO,CAAC,CAAC,cAAc,CAAC,CAAC;KACzB,GAAG,EAAE,CACT"}
|
package/dist/time.js
CHANGED
|
@@ -1,26 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Time = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const decorators_1 = require("./decorators");
|
|
6
6
|
/**
|
|
7
7
|
* A DI service to get the current time.
|
|
8
8
|
* Useful if you need to mock or redfine
|
|
9
9
|
* the concept of "current time"
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
Time.prototype.now = function () {
|
|
11
|
+
let Time = class Time {
|
|
12
|
+
now() {
|
|
15
13
|
return Date.now();
|
|
16
|
-
}
|
|
17
|
-
|
|
14
|
+
}
|
|
15
|
+
current() {
|
|
18
16
|
return new Date();
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}());
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
Time = (0, tslib_1.__decorate)([
|
|
20
|
+
(0, decorators_1.Injectable)()
|
|
21
|
+
], Time);
|
|
25
22
|
exports.Time = Time;
|
|
26
23
|
//# sourceMappingURL=time.js.map
|
package/dist/time.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time.js","sourceRoot":"","sources":["../src/time.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"time.js","sourceRoot":"","sources":["../src/time.ts"],"names":[],"mappings":";;;;AAAA,6CAA0C;AAE1C;;;;GAIG;AAEH,IAAa,IAAI,GAAjB,MAAa,IAAI;IACb,GAAG;QACC,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,OAAO;QACH,OAAO,IAAI,IAAI,EAAE,CAAC;IACtB,CAAC;CACJ,CAAA;AARY,IAAI;IADhB,IAAA,uBAAU,GAAE;GACA,IAAI,CAQhB;AARY,oBAAI"}
|
package/dist/timeout.js
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.interval = exports.timeout = void 0;
|
|
4
|
-
|
|
4
|
+
const lazy_subject_1 = require("./lazy-subject");
|
|
5
5
|
/**
|
|
6
6
|
* Wait a specified amount of time before resolving.
|
|
7
7
|
* @param time
|
|
8
8
|
*/
|
|
9
|
-
function timeout(time) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
setTimeout(function () { return resolve(); }, time);
|
|
9
|
+
function timeout(time = 0) {
|
|
10
|
+
return new Promise((resolve, reject) => {
|
|
11
|
+
setTimeout(() => resolve(), time);
|
|
13
12
|
});
|
|
14
13
|
}
|
|
15
14
|
exports.timeout = timeout;
|
|
@@ -20,10 +19,10 @@ exports.timeout = timeout;
|
|
|
20
19
|
* @param time
|
|
21
20
|
*/
|
|
22
21
|
function interval(time) {
|
|
23
|
-
|
|
22
|
+
let interval;
|
|
24
23
|
return (0, lazy_subject_1.lazySubject)({
|
|
25
|
-
start:
|
|
26
|
-
stop:
|
|
24
|
+
start: subject => interval = setInterval(() => subject.next()),
|
|
25
|
+
stop: () => clearInterval(interval)
|
|
27
26
|
});
|
|
28
27
|
}
|
|
29
28
|
exports.interval = interval;
|
package/dist/timeout.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeout.js","sourceRoot":"","sources":["../src/timeout.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"timeout.js","sourceRoot":"","sources":["../src/timeout.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAG7C;;;GAGG;AACH,SAAgB,OAAO,CAAC,OAAgB,CAAC;IACxC,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC5C,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;AACJ,CAAC;AAJD,0BAIC;AAED;;;;;GAKG;AACH,SAAgB,QAAQ,CAAC,IAAa;IACrC,IAAI,QAAQ,CAAC;IACb,OAAO,IAAA,0BAAW,EAAC;QAClB,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC9D,IAAI,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC;KACnC,CAAC,CAAC;AACJ,CAAC;AAND,4BAMC"}
|