@elderbyte/ngx-starter 14.4.0-beta.19 → 14.4.0-beta.21
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/esm2020/lib/common/data/entity-set-patch.mjs +76 -3
- package/esm2020/lib/common/json-map.mjs +3 -3
- package/esm2020/lib/components/forms/directives/elder-form-field-label.directive.mjs +31 -18
- package/fesm2015/elderbyte-ngx-starter.mjs +122 -36
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +122 -36
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/data/entity-set-patch.d.ts +32 -1
- package/lib/common/json-map.d.ts +1 -1
- package/lib/components/forms/directives/elder-form-field-label.directive.d.ts +19 -6
- package/package.json +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { JsonMapUtil } from '../json-map';
|
|
1
2
|
export class EntitySetPatch {
|
|
2
3
|
/***************************************************************************
|
|
3
4
|
* *
|
|
@@ -32,7 +33,75 @@ export class EntitySetPatch {
|
|
|
32
33
|
}
|
|
33
34
|
/***************************************************************************
|
|
34
35
|
* *
|
|
35
|
-
*
|
|
36
|
+
* Query *
|
|
37
|
+
* *
|
|
38
|
+
**************************************************************************/
|
|
39
|
+
getUpsertsById() {
|
|
40
|
+
return JsonMapUtil.toMap(this.upsertsById);
|
|
41
|
+
}
|
|
42
|
+
getUpdatesById() {
|
|
43
|
+
return JsonMapUtil.toMap(this.updatesById);
|
|
44
|
+
}
|
|
45
|
+
getUpsertOnes() {
|
|
46
|
+
return [...this.upsertOnes];
|
|
47
|
+
}
|
|
48
|
+
getUpdateOnes() {
|
|
49
|
+
return [...this.updateOnes];
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Gets all ids which should be deleted.
|
|
53
|
+
* Also consider isDeleteOther, which means
|
|
54
|
+
* everything gets deleted.
|
|
55
|
+
*/
|
|
56
|
+
collectDeletions() {
|
|
57
|
+
return [
|
|
58
|
+
...Array.from(this.getUpsertsById().entries())
|
|
59
|
+
.filter(([id, update]) => !update)
|
|
60
|
+
.map(([id, update]) => id),
|
|
61
|
+
...Array.from(this.getUpdatesById().entries())
|
|
62
|
+
.filter(([id, update]) => !update)
|
|
63
|
+
.map(([id, update]) => id),
|
|
64
|
+
];
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Delete all entities which are not
|
|
68
|
+
* explicitly defined in this update.
|
|
69
|
+
* "Replace with" semantics.
|
|
70
|
+
*/
|
|
71
|
+
get isDeleteOther() {
|
|
72
|
+
return this.deleteOther;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Collects all upserts. (Updates are ignored)
|
|
76
|
+
*/
|
|
77
|
+
collectUpserts() {
|
|
78
|
+
return [
|
|
79
|
+
...Array.from(this.getUpsertsById().entries())
|
|
80
|
+
.filter(([id, update]) => !!update)
|
|
81
|
+
.map(([id, update]) => update),
|
|
82
|
+
...this.upsertOnes
|
|
83
|
+
];
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Collects all updates. (Upserts are ignored)
|
|
87
|
+
*/
|
|
88
|
+
collectUpdates() {
|
|
89
|
+
return [
|
|
90
|
+
...Array.from(this.getUpdatesById().entries())
|
|
91
|
+
.filter(([id, update]) => !!update)
|
|
92
|
+
.map(([id, update]) => update),
|
|
93
|
+
...this.updateOnes
|
|
94
|
+
];
|
|
95
|
+
}
|
|
96
|
+
collectUpdatesAndUpserts() {
|
|
97
|
+
return [
|
|
98
|
+
...this.collectUpserts(),
|
|
99
|
+
...this.collectUpdates()
|
|
100
|
+
];
|
|
101
|
+
}
|
|
102
|
+
/***************************************************************************
|
|
103
|
+
* *
|
|
104
|
+
* Builder API *
|
|
36
105
|
* *
|
|
37
106
|
**************************************************************************/
|
|
38
107
|
update(updateOne) {
|
|
@@ -80,12 +149,16 @@ export class EntitySetPatch {
|
|
|
80
149
|
return this;
|
|
81
150
|
}
|
|
82
151
|
deleteAll() {
|
|
152
|
+
this.clear();
|
|
153
|
+
this.deleteAllOther();
|
|
154
|
+
return this;
|
|
155
|
+
}
|
|
156
|
+
clear() {
|
|
83
157
|
this.upsertOnes = [];
|
|
84
158
|
this.upsertsById = {};
|
|
85
159
|
this.updateOnes = [];
|
|
86
160
|
this.updatesById = {};
|
|
87
|
-
this.deleteAllOther();
|
|
88
161
|
return this;
|
|
89
162
|
}
|
|
90
163
|
}
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNldC1wYXRjaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2VudGl0eS1zZXQtcGF0Y2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFPLGNBQWM7SUFzQ3pCOzs7O2dGQUk0RTtJQUU1RSxZQUNFLFlBQTBDO1FBbkNwQyxnQkFBVyxHQUF3QixFQUFFLENBQUM7UUFDdEMsZ0JBQVcsR0FBd0IsRUFBRSxDQUFDO1FBQ3RDLGVBQVUsR0FBaUIsRUFBRSxDQUFDO1FBQzlCLGVBQVUsR0FBaUIsRUFBRSxDQUFDO1FBa0NwQyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksSUFBSSxjQUFjLENBQUMsaUJBQWlCLENBQUM7SUFDdkUsQ0FBQztJQWhDRDs7OztnRkFJNEU7SUFFckUsTUFBTSxDQUFDLEtBQUssQ0FDakIsWUFBMEM7UUFFMUMsT0FBTyxJQUFJLGNBQWMsQ0FBaUIsWUFBWSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVPLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBSyxFQUFNO1FBQ3pDLElBQUksT0FBTyxFQUFFLEtBQUssUUFBUSxFQUFFO1lBQzFCLE9BQU8sRUFBRSxDQUFDO1NBQ1g7YUFBTSxJQUFJLE9BQU8sRUFBRSxLQUFLLFFBQVEsRUFBRTtZQUNqQyxPQUFPLEVBQUUsQ0FBQztTQUNYO2FBQU07WUFDTCxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUM7U0FDaEI7SUFDSCxDQUFDO0lBY0Q7Ozs7Z0ZBSTRFO0lBRXJFLE1BQU0sQ0FBQyxTQUFxQjtRQUNqQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNoQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxTQUFTLENBQUMsU0FBdUI7UUFDdEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxTQUFTLENBQUMsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxVQUFVLENBQUMsRUFBTSxFQUFFLFNBQXFCO1FBQzdDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQztRQUNwRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxhQUFhLENBQUMsT0FBNEI7UUFDL0MsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sTUFBTSxDQUFDLFNBQXFCO1FBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFNBQVMsQ0FBQyxTQUF1QjtRQUN0QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFVBQVUsQ0FBQyxFQUFNLEVBQUUsU0FBcUI7UUFDN0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQ3BELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGFBQWEsQ0FBQyxPQUE0QjtRQUMvQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxVQUFVLENBQUMsR0FBRyxNQUFZO1FBQy9CLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFdBQVcsQ0FBQyxHQUFTO1FBQzFCLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGNBQWM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFDeEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sU0FBUztRQUNkLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FTRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SnNvbk1hcH0gZnJvbSAnLi4vanNvbi1tYXAnO1xuXG5cbmV4cG9ydCBjbGFzcyBFbnRpdHlTZXRQYXRjaDxJRCwgSXRlbVVwZGF0ZT4ge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgaWRUb01hcEtleUZuOiAoaWQ6IElEKSA9PiBzdHJpbmcgfCBudW1iZXI7XG5cbiAgcHJpdmF0ZSB1cHNlcnRzQnlJZDogSnNvbk1hcDxJdGVtVXBkYXRlPiA9IHt9O1xuICBwcml2YXRlIHVwZGF0ZXNCeUlkOiBKc29uTWFwPEl0ZW1VcGRhdGU+ID0ge307XG4gIHByaXZhdGUgdXBzZXJ0T25lczogSXRlbVVwZGF0ZVtdID0gW107XG4gIHByaXZhdGUgdXBkYXRlT25lczogSXRlbVVwZGF0ZVtdID0gW107XG4gIHByaXZhdGUgZGVsZXRlT3RoZXI/OiBib29sZWFuO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBTdGF0aWMgQnVpbGRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBzdGF0aWMgc3RhcnQ8SUQsIEl0ZW1VcGRhdGU+KFxuICAgIGlkVG9NYXBLZXlGbj86IChpZDogSUQpID0+IHN0cmluZyB8IG51bWJlclxuICApOiBFbnRpdHlTZXRQYXRjaDxJRCwgSXRlbVVwZGF0ZT4ge1xuICAgIHJldHVybiBuZXcgRW50aXR5U2V0UGF0Y2g8SUQsIEl0ZW1VcGRhdGU+KGlkVG9NYXBLZXlGbik7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBpZFRvTWFwS2V5RGVmYXVsdDxJRD4oaWQ6IElEKTogc3RyaW5nIHwgbnVtYmVyIHtcbiAgICBpZiAodHlwZW9mIGlkID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIGlkO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIGlkID09PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuIGlkO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gaWQgKyAnJztcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBpZFRvTWFwS2V5Rm4/OiAoaWQ6IElEKSA9PiBzdHJpbmcgfCBudW1iZXJcbiAgKSB7XG4gICAgdGhpcy5pZFRvTWFwS2V5Rm4gPSBpZFRvTWFwS2V5Rm4gPz8gRW50aXR5U2V0UGF0Y2guaWRUb01hcEtleURlZmF1bHQ7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgdXBkYXRlKHVwZGF0ZU9uZTogSXRlbVVwZGF0ZSk6IHRoaXMge1xuICAgIHRoaXMudXBkYXRlT25lcy5wdXNoKHVwZGF0ZU9uZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlQWxsKHVwZGF0ZU9uZTogSXRlbVVwZGF0ZVtdKTogdGhpcyB7XG4gICAgdGhpcy51cGRhdGVPbmVzLnB1c2goLi4udXBkYXRlT25lKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVCeUlkKGlkOiBJRCwgdXBkYXRlT25lOiBJdGVtVXBkYXRlKTogdGhpcyB7XG4gICAgdGhpcy51cGRhdGVzQnlJZFt0aGlzLmlkVG9NYXBLZXlGbihpZCldID0gdXBkYXRlT25lO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUFsbEJ5SWQodXBkYXRlczogTWFwPElELCBJdGVtVXBkYXRlPik6IHRoaXMge1xuICAgIHVwZGF0ZXMuZm9yRWFjaCgodiwgaykgPT4gdGhpcy51cGRhdGVCeUlkKGssIHYpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyB1cHNlcnQodXBkYXRlT25lOiBJdGVtVXBkYXRlKTogdGhpcyB7XG4gICAgdGhpcy51cHNlcnRPbmVzLnB1c2godXBkYXRlT25lKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyB1cHNlcnRBbGwodXBkYXRlT25lOiBJdGVtVXBkYXRlW10pOiB0aGlzIHtcbiAgICB0aGlzLnVwc2VydE9uZXMucHVzaCguLi51cGRhdGVPbmUpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIHVwc2VydEJ5SWQoaWQ6IElELCB1cGRhdGVPbmU6IEl0ZW1VcGRhdGUpOiB0aGlzIHtcbiAgICB0aGlzLnVwc2VydHNCeUlkW3RoaXMuaWRUb01hcEtleUZuKGlkKV0gPSB1cGRhdGVPbmU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgdXBzZXJ0QWxsQnlJZCh1cHNlcnRzOiBNYXA8SUQsIEl0ZW1VcGRhdGU+KTogdGhpcyB7XG4gICAgdXBzZXJ0cy5mb3JFYWNoKCh2LCBrKSA9PiB0aGlzLnVwc2VydEJ5SWQoaywgdikpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGRlbGV0ZUJ5SWQoLi4uaWRBcmdzOiBJRFtdKTogdGhpcyB7XG4gICAgaWRBcmdzLmZvckVhY2goaWQgPT4gdGhpcy51cHNlcnRCeUlkKGlkLCBudWxsKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQnlJZHMoaWRzOiBJRFtdKTogdGhpcyB7XG4gICAgaWRzLmZvckVhY2goaWQgPT4gdGhpcy51cHNlcnRCeUlkKGlkLCBudWxsKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQWxsT3RoZXIoKTogdGhpcyB7XG4gICAgdGhpcy5kZWxldGVPdGhlciA9IHRydWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQWxsKCk6IHRoaXMge1xuICAgIHRoaXMudXBzZXJ0T25lcyA9IFtdO1xuICAgIHRoaXMudXBzZXJ0c0J5SWQgPSB7fTtcbiAgICB0aGlzLnVwZGF0ZU9uZXMgPSBbXTtcbiAgICB0aGlzLnVwZGF0ZXNCeUlkID0ge307XG4gICAgdGhpcy5kZWxldGVBbGxPdGhlcigpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cblxufVxuXG5cblxuIl19
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNldC1wYXRjaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2VudGl0eS1zZXQtcGF0Y2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLFdBQVcsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUdqRCxNQUFNLE9BQU8sY0FBYztJQXNDekI7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ0UsWUFBMEM7UUFuQ3BDLGdCQUFXLEdBQXdCLEVBQUUsQ0FBQztRQUN0QyxnQkFBVyxHQUF3QixFQUFFLENBQUM7UUFDdEMsZUFBVSxHQUFpQixFQUFFLENBQUM7UUFDOUIsZUFBVSxHQUFpQixFQUFFLENBQUM7UUFrQ3BDLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxJQUFJLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQztJQUN2RSxDQUFDO0lBaENEOzs7O2dGQUk0RTtJQUVyRSxNQUFNLENBQUMsS0FBSyxDQUNqQixZQUEwQztRQUUxQyxPQUFPLElBQUksY0FBYyxDQUFpQixZQUFZLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRU8sTUFBTSxDQUFDLGlCQUFpQixDQUFLLEVBQU07UUFDekMsSUFBSSxPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQUU7WUFDMUIsT0FBTyxFQUFFLENBQUM7U0FDWDthQUFNLElBQUksT0FBTyxFQUFFLEtBQUssUUFBUSxFQUFFO1lBQ2pDLE9BQU8sRUFBRSxDQUFDO1NBQ1g7YUFBTTtZQUNMLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQztTQUNoQjtJQUNILENBQUM7SUFjRDs7OztnRkFJNEU7SUFFckUsY0FBYztRQUNuQixPQUFPLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU8sV0FBVyxDQUFDLEtBQUss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RUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDN0MsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN4QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxTQUFTO1FBQ2QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLEtBQUs7UUFDVixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUN0QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SnNvbk1hcCwgSnNvbk1hcFV0aWx9IGZyb20gJy4uL2pzb24tbWFwJztcblxuXG5leHBvcnQgY2xhc3MgRW50aXR5U2V0UGF0Y2g8SUQsIEl0ZW1VcGRhdGU+IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGlkVG9NYXBLZXlGbjogKGlkOiBJRCkgPT4gc3RyaW5nIHwgbnVtYmVyO1xuXG4gIHByaXZhdGUgdXBzZXJ0c0J5SWQ6IEpzb25NYXA8SXRlbVVwZGF0ZT4gPSB7fTtcbiAgcHJpdmF0ZSB1cGRhdGVzQnlJZDogSnNvbk1hcDxJdGVtVXBkYXRlPiA9IHt9O1xuICBwcml2YXRlIHVwc2VydE9uZXM6IEl0ZW1VcGRhdGVbXSA9IFtdO1xuICBwcml2YXRlIHVwZGF0ZU9uZXM6IEl0ZW1VcGRhdGVbXSA9IFtdO1xuICBwcml2YXRlIGRlbGV0ZU90aGVyPzogYm9vbGVhbjtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogU3RhdGljIEJ1aWxkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgc3RhdGljIHN0YXJ0PElELCBJdGVtVXBkYXRlPihcbiAgICBpZFRvTWFwS2V5Rm4/OiAoaWQ6IElEKSA9PiBzdHJpbmcgfCBudW1iZXJcbiAgKTogRW50aXR5U2V0UGF0Y2g8SUQsIEl0ZW1VcGRhdGU+IHtcbiAgICByZXR1cm4gbmV3IEVudGl0eVNldFBhdGNoPElELCBJdGVtVXBkYXRlPihpZFRvTWFwS2V5Rm4pO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgaWRUb01hcEtleURlZmF1bHQ8SUQ+KGlkOiBJRCk6IHN0cmluZyB8IG51bWJlciB7XG4gICAgaWYgKHR5cGVvZiBpZCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBpZDtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBpZCA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBpZDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGlkICsgJyc7XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgaWRUb01hcEtleUZuPzogKGlkOiBJRCkgPT4gc3RyaW5nIHwgbnVtYmVyXG4gICkge1xuICAgIHRoaXMuaWRUb01hcEtleUZuID0gaWRUb01hcEtleUZuID8/IEVudGl0eVNldFBhdGNoLmlkVG9NYXBLZXlEZWZhdWx0O1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFF1ZXJ5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGdldFVwc2VydHNCeUlkKCk6IE1hcDxJRCwgSXRlbVVwZGF0ZT4ge1xuICAgIHJldHVybiBKc29uTWFwVXRpbC50b01hcCh0aGlzLnVwc2VydHNCeUlkKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRVcGRhdGVzQnlJZCgpOiBNYXA8SUQsIEl0ZW1VcGRhdGU+IHtcbiAgICByZXR1cm4gSnNvbk1hcFV0aWwudG9NYXAodGhpcy51cGRhdGVzQnlJZCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0VXBzZXJ0T25lcygpOiBJdGVtVXBkYXRlW10ge1xuICAgIHJldHVybiBbLi4udGhpcy51cHNlcnRPbmVzXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRVcGRhdGVPbmVzKCk6IEl0ZW1VcGRhdGVbXSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLnVwZGF0ZU9uZXNdO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYWxsIGlkcyB3aGljaCBzaG91bGQgYmUgZGVsZXRlZC5cbiAgICogQWxzbyBjb25zaWRlciBpc0RlbGV0ZU90aGVyLCB3aGljaCBtZWFuc1xuICAgKiBldmVyeXRoaW5nIGdldHMgZGVsZXRlZC5cbiAgICovXG4gIHB1YmxpYyBjb2xsZWN0RGVsZXRpb25zKCk6IElEW10ge1xuICAgIHJldHVybiBbXG4gICAgICAuLi5BcnJheS5mcm9tKHRoaXMuZ2V0VXBzZXJ0c0J5SWQoKS5lbnRyaWVzKCkpXG4gICAgICAgIC5maWx0ZXIoKFtpZCwgdXBkYXRlXSkgPT4gIXVwZGF0ZSlcbiAgICAgICAgLm1hcCgoW2lkLCB1cGRhdGVdKSA9PiBpZCksXG4gICAgICAuLi5BcnJheS5mcm9tKHRoaXMuZ2V0VXBkYXRlc0J5SWQoKS5lbnRyaWVzKCkpXG4gICAgICAgIC5maWx0ZXIoKFtpZCwgdXBkYXRlXSkgPT4gIXVwZGF0ZSlcbiAgICAgICAgLm1hcCgoW2lkLCB1cGRhdGVdKSA9PiBpZCksXG4gICAgXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGUgYWxsIGVudGl0aWVzIHdoaWNoIGFyZSBub3RcbiAgICogZXhwbGljaXRseSBkZWZpbmVkIGluIHRoaXMgdXBkYXRlLlxuICAgKiBcIlJlcGxhY2Ugd2l0aFwiIHNlbWFudGljcy5cbiAgICovXG4gIHB1YmxpYyBnZXQgaXNEZWxldGVPdGhlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kZWxldGVPdGhlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb2xsZWN0cyBhbGwgdXBzZXJ0cy4gKFVwZGF0ZXMgYXJlIGlnbm9yZWQpXG4gICAqL1xuICBwdWJsaWMgY29sbGVjdFVwc2VydHMoKTogSXRlbVVwZGF0ZVtdIHtcbiAgICByZXR1cm4gW1xuICAgICAgLi4uQXJyYXkuZnJvbSh0aGlzLmdldFVwc2VydHNCeUlkKCkuZW50cmllcygpKVxuICAgICAgICAuZmlsdGVyKChbaWQsIHVwZGF0ZV0pID0+ICEhdXBkYXRlKVxuICAgICAgICAubWFwKChbaWQsIHVwZGF0ZV0pID0+IHVwZGF0ZSksXG4gICAgICAuLi50aGlzLnVwc2VydE9uZXNcbiAgICBdO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbGxlY3RzIGFsbCB1cGRhdGVzLiAoVXBzZXJ0cyBhcmUgaWdub3JlZClcbiAgICovXG4gIHB1YmxpYyBjb2xsZWN0VXBkYXRlcygpOiBJdGVtVXBkYXRlW10ge1xuICAgIHJldHVybiBbXG4gICAgICAuLi5BcnJheS5mcm9tKHRoaXMuZ2V0VXBkYXRlc0J5SWQoKS5lbnRyaWVzKCkpXG4gICAgICAgIC5maWx0ZXIoKFtpZCwgdXBkYXRlXSkgPT4gISF1cGRhdGUpXG4gICAgICAgIC5tYXAoKFtpZCwgdXBkYXRlXSkgPT4gdXBkYXRlKSxcbiAgICAgIC4uLnRoaXMudXBkYXRlT25lc1xuICAgIF07XG4gIH1cblxuICBwdWJsaWMgY29sbGVjdFVwZGF0ZXNBbmRVcHNlcnRzKCk6IEl0ZW1VcGRhdGVbXSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIC4uLnRoaXMuY29sbGVjdFVwc2VydHMoKSxcbiAgICAgIC4uLnRoaXMuY29sbGVjdFVwZGF0ZXMoKVxuICAgIF07XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQnVpbGRlciBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgdXBkYXRlKHVwZGF0ZU9uZTogSXRlbVVwZGF0ZSk6IHRoaXMge1xuICAgIHRoaXMudXBkYXRlT25lcy5wdXNoKHVwZGF0ZU9uZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlQWxsKHVwZGF0ZU9uZTogSXRlbVVwZGF0ZVtdKTogdGhpcyB7XG4gICAgdGhpcy51cGRhdGVPbmVzLnB1c2goLi4udXBkYXRlT25lKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVCeUlkKGlkOiBJRCwgdXBkYXRlT25lOiBJdGVtVXBkYXRlKTogdGhpcyB7XG4gICAgdGhpcy51cGRhdGVzQnlJZFt0aGlzLmlkVG9NYXBLZXlGbihpZCldID0gdXBkYXRlT25lO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUFsbEJ5SWQodXBkYXRlczogTWFwPElELCBJdGVtVXBkYXRlPik6IHRoaXMge1xuICAgIHVwZGF0ZXMuZm9yRWFjaCgodiwgaykgPT4gdGhpcy51cGRhdGVCeUlkKGssIHYpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyB1cHNlcnQodXBkYXRlT25lOiBJdGVtVXBkYXRlKTogdGhpcyB7XG4gICAgdGhpcy51cHNlcnRPbmVzLnB1c2godXBkYXRlT25lKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyB1cHNlcnRBbGwodXBkYXRlT25lOiBJdGVtVXBkYXRlW10pOiB0aGlzIHtcbiAgICB0aGlzLnVwc2VydE9uZXMucHVzaCguLi51cGRhdGVPbmUpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIHVwc2VydEJ5SWQoaWQ6IElELCB1cGRhdGVPbmU6IEl0ZW1VcGRhdGUpOiB0aGlzIHtcbiAgICB0aGlzLnVwc2VydHNCeUlkW3RoaXMuaWRUb01hcEtleUZuKGlkKV0gPSB1cGRhdGVPbmU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgdXBzZXJ0QWxsQnlJZCh1cHNlcnRzOiBNYXA8SUQsIEl0ZW1VcGRhdGU+KTogdGhpcyB7XG4gICAgdXBzZXJ0cy5mb3JFYWNoKCh2LCBrKSA9PiB0aGlzLnVwc2VydEJ5SWQoaywgdikpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGRlbGV0ZUJ5SWQoLi4uaWRBcmdzOiBJRFtdKTogdGhpcyB7XG4gICAgaWRBcmdzLmZvckVhY2goaWQgPT4gdGhpcy51cHNlcnRCeUlkKGlkLCBudWxsKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQnlJZHMoaWRzOiBJRFtdKTogdGhpcyB7XG4gICAgaWRzLmZvckVhY2goaWQgPT4gdGhpcy51cHNlcnRCeUlkKGlkLCBudWxsKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQWxsT3RoZXIoKTogdGhpcyB7XG4gICAgdGhpcy5kZWxldGVPdGhlciA9IHRydWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQWxsKCk6IHRoaXMge1xuICAgIHRoaXMuY2xlYXIoKTtcbiAgICB0aGlzLmRlbGV0ZUFsbE90aGVyKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgY2xlYXIoKTogdGhpcyB7XG4gICAgdGhpcy51cHNlcnRPbmVzID0gW107XG4gICAgdGhpcy51cHNlcnRzQnlJZCA9IHt9O1xuICAgIHRoaXMudXBkYXRlT25lcyA9IFtdO1xuICAgIHRoaXMudXBkYXRlc0J5SWQgPSB7fTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG59XG5cblxuXG4iXX0=
|
|
@@ -8,11 +8,11 @@ export class JsonMapUtil {
|
|
|
8
8
|
}, jsonMap);
|
|
9
9
|
return jsonMap;
|
|
10
10
|
}
|
|
11
|
-
static toMap(jsonMap) {
|
|
11
|
+
static toMap(jsonMap, toIdFn = key => key) {
|
|
12
12
|
const map = new Map();
|
|
13
13
|
Object.keys(jsonMap)
|
|
14
|
-
.forEach(k => map.set(k, jsonMap[k]));
|
|
14
|
+
.forEach(k => map.set(toIdFn(k), jsonMap[k]));
|
|
15
15
|
return map;
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1tYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21tb24vanNvbi1tYXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLFdBQVc7SUFFZixNQUFNLENBQUMsU0FBUyxDQUFJLEtBQThCO1FBQ3ZELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDNUMsTUFBTSxPQUFPLEdBQWUsRUFBRSxDQUFDO1FBQy9CLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtZQUNqQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO1lBQ2YsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDWixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQUssQ0FDakIsT0FBbUIsRUFDbkIsU0FBeUMsR0FBRyxDQUFDLEVBQUUsQ0FBTSxHQUFHO1FBRXhELE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxFQUFTLENBQUM7UUFDN0IsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7YUFDakIsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEpzb25NYXA8VD4gPSB7XG4gIFtuYW1lIGluIHN0cmluZyB8IG51bWJlcl06IFQ7XG59O1xuXG5leHBvcnQgY2xhc3MgSnNvbk1hcFV0aWwge1xuXG4gIHB1YmxpYyBzdGF0aWMgdG9Kc29uTWFwPFQ+KGVzTWFwOiBNYXA8c3RyaW5nIHwgbnVtYmVyLCBUPik6IEpzb25NYXA8VD4ge1xuICAgIGNvbnN0IGVudHJpZXMgPSBBcnJheS5mcm9tKGVzTWFwLmVudHJpZXMoKSk7XG4gICAgY29uc3QganNvbk1hcCA9IDxKc29uTWFwPFQ+Pnt9O1xuICAgIGVudHJpZXMucmVkdWNlKChvLCBba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIG9ba2V5XSA9IHZhbHVlO1xuICAgICAgcmV0dXJuIG87XG4gICAgfSwganNvbk1hcCk7XG4gICAgcmV0dXJuIGpzb25NYXA7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRvTWFwPFQsIElEID0gc3RyaW5nIHwgbnVtYmVyPihcbiAgICBqc29uTWFwOiBKc29uTWFwPFQ+LFxuICAgIHRvSWRGbjogKChrZXk6IHN0cmluZyB8IG51bWJlcikgPT4gSUQpID0ga2V5ID0+IDxhbnk+a2V5XG4gICk6IE1hcDxJRCwgVD4ge1xuICAgIGNvbnN0IG1hcCA9IG5ldyBNYXA8SUQsIFQ+KCk7XG4gICAgT2JqZWN0LmtleXMoanNvbk1hcClcbiAgICAgIC5mb3JFYWNoKGsgPT4gbWFwLnNldCh0b0lkRm4oayksIGpzb25NYXBba10pKTtcbiAgICByZXR1cm4gbWFwO1xuICB9XG59XG4iXX0=
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { Directive, Input } from '@angular/core';
|
|
2
|
-
import { MatInput } from '@angular/material/input';
|
|
1
|
+
import { Directive, HostBinding, Input } from '@angular/core';
|
|
3
2
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
4
|
import * as i1 from "@angular/material/form-field";
|
|
@@ -9,9 +8,9 @@ import * as i1 from "@angular/material/form-field";
|
|
|
9
8
|
*
|
|
10
9
|
* Example Usage:
|
|
11
10
|
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
11
|
+
* <mat-form-field elderFormFieldLabel>
|
|
12
|
+
* <input matInput placeholder="Readonly Input" readonly="true" value="Some Value">
|
|
13
|
+
* </mat-form-field>
|
|
15
14
|
*
|
|
16
15
|
*/
|
|
17
16
|
export class ElderFormFieldLabelDirective {
|
|
@@ -23,6 +22,20 @@ export class ElderFormFieldLabelDirective {
|
|
|
23
22
|
constructor(_matFormField) {
|
|
24
23
|
this._matFormField = _matFormField;
|
|
25
24
|
}
|
|
25
|
+
/***************************************************************************
|
|
26
|
+
* *
|
|
27
|
+
* Host Bindings *
|
|
28
|
+
* *
|
|
29
|
+
**************************************************************************/
|
|
30
|
+
get getFormFieldLabelStyle() {
|
|
31
|
+
return this.isLabelMode();
|
|
32
|
+
}
|
|
33
|
+
/***************************************************************************
|
|
34
|
+
* *
|
|
35
|
+
* Properties *
|
|
36
|
+
* *
|
|
37
|
+
**************************************************************************/
|
|
38
|
+
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
26
39
|
set enabled(enabled) {
|
|
27
40
|
this._enabled = coerceBooleanProperty(enabled);
|
|
28
41
|
}
|
|
@@ -34,12 +47,12 @@ export class ElderFormFieldLabelDirective {
|
|
|
34
47
|
* Public API *
|
|
35
48
|
* *
|
|
36
49
|
**************************************************************************/
|
|
37
|
-
|
|
50
|
+
isControlReadonly() {
|
|
38
51
|
const ctrl = this._matFormField._control;
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
return
|
|
52
|
+
return ctrl?.readonly;
|
|
53
|
+
}
|
|
54
|
+
isLabelMode() {
|
|
55
|
+
return this.enabled && this.isControlReadonly();
|
|
43
56
|
}
|
|
44
57
|
/***************************************************************************
|
|
45
58
|
* *
|
|
@@ -47,23 +60,23 @@ export class ElderFormFieldLabelDirective {
|
|
|
47
60
|
* *
|
|
48
61
|
**************************************************************************/
|
|
49
62
|
ngAfterViewInit() {
|
|
50
|
-
if (this.
|
|
63
|
+
if (this.isLabelMode()) {
|
|
51
64
|
this._matFormField.floatLabel = 'always';
|
|
52
65
|
}
|
|
53
66
|
}
|
|
54
67
|
}
|
|
55
68
|
ElderFormFieldLabelDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderFormFieldLabelDirective, deps: [{ token: i1.MatFormField }], target: i0.ɵɵFactoryTarget.Directive });
|
|
56
|
-
ElderFormFieldLabelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.6", type: ElderFormFieldLabelDirective, selector: "mat-form-field[elderFormFieldLabel]", inputs: { enabled: ["elderFormFieldLabel", "enabled"] }, host: { properties: { "class.elder-form-field-label": "
|
|
69
|
+
ElderFormFieldLabelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.6", type: ElderFormFieldLabelDirective, selector: "mat-form-field[elderFormFieldLabel]", inputs: { enabled: ["elderFormFieldLabel", "enabled"] }, host: { properties: { "class.elder-form-field-label": "this.getFormFieldLabelStyle" } }, ngImport: i0 });
|
|
57
70
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderFormFieldLabelDirective, decorators: [{
|
|
58
71
|
type: Directive,
|
|
59
72
|
args: [{
|
|
60
|
-
selector: 'mat-form-field[elderFormFieldLabel]'
|
|
61
|
-
host: {
|
|
62
|
-
'[class.elder-form-field-label]': 'enabled && isReadonlyInput()'
|
|
63
|
-
}
|
|
73
|
+
selector: 'mat-form-field[elderFormFieldLabel]'
|
|
64
74
|
}]
|
|
65
|
-
}], ctorParameters: function () { return [{ type: i1.MatFormField }]; }, propDecorators: {
|
|
75
|
+
}], ctorParameters: function () { return [{ type: i1.MatFormField }]; }, propDecorators: { getFormFieldLabelStyle: [{
|
|
76
|
+
type: HostBinding,
|
|
77
|
+
args: ['class.elder-form-field-label']
|
|
78
|
+
}], enabled: [{
|
|
66
79
|
type: Input,
|
|
67
80
|
args: ['elderFormFieldLabel']
|
|
68
81
|
}] } });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZm9ybS1maWVsZC1sYWJlbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2RpcmVjdGl2ZXMvZWxkZXItZm9ybS1maWVsZC1sYWJlbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUduRixPQUFPLEVBQWUscUJBQXFCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7O0FBRTFFOzs7Ozs7Ozs7O0dBVUc7QUFJSCxNQUFNLE9BQU8sNEJBQTRCO0lBVXZDOzs7O2dGQUk0RTtJQUU1RSxZQUFvQixhQUEyQjtRQUEzQixrQkFBYSxHQUFiLGFBQWEsQ0FBYztJQUMvQyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFLElBQWlELHNCQUFzQjtRQUNyRSxPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFLDJEQUEyRDtJQUMzRCxJQUNXLE9BQU8sQ0FBQyxPQUFxQjtRQUN0QyxJQUFJLENBQUMsUUFBUSxHQUFHLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsaUJBQWlCO1FBQ3RCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDO1FBQ3pDLE9BQWEsSUFBSyxFQUFFLFFBQVEsQ0FBQztJQUMvQixDQUFDO0lBRU0sV0FBVztRQUNoQixPQUFPLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDbEQsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxlQUFlO1FBQ3BCLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztTQUMxQztJQUNILENBQUM7O3lIQXRFVSw0QkFBNEI7NkdBQTVCLDRCQUE0QjsyRkFBNUIsNEJBQTRCO2tCQUh4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQ0FBcUM7aUJBQ2hEO21HQTBCa0Qsc0JBQXNCO3NCQUF0RSxXQUFXO3VCQUFDLDhCQUE4QjtnQkFZaEMsT0FBTztzQkFEakIsS0FBSzt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNYXRGb3JtRmllbGR9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHtNYXRJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHtCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuLyoqXG4gKiBPbmNlIGRlY2xhcmVkIG9uIGEgTWF0Rm9ybUZpZWxkIHRhZyB3aGljaCBpbmNsdWRlcyBhIHJlYWRvbmx5IGlucHV0LCB0aGUgY3NzIGNsYXNzICdlbGRlci1mb3JtLWZpZWxkLWxhYmVsJyB3aWxsIGJlIGFkZGVkXG4gKiBhbmQgY3VzdG9tIHN0eWxpbmcgd2lsbCBiZSBhcHBsaWVkLlxuICpcbiAqIEV4YW1wbGUgVXNhZ2U6XG4gKlxuICogIDxtYXQtZm9ybS1maWVsZCBlbGRlckZvcm1GaWVsZExhYmVsPlxuICogICAgPGlucHV0IG1hdElucHV0IHBsYWNlaG9sZGVyPVwiUmVhZG9ubHkgSW5wdXRcIiByZWFkb25seT1cInRydWVcIiB2YWx1ZT1cIlNvbWUgVmFsdWVcIj5cbiAqICA8L21hdC1mb3JtLWZpZWxkPlxuICpcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnbWF0LWZvcm0tZmllbGRbZWxkZXJGb3JtRmllbGRMYWJlbF0nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRm9ybUZpZWxkTGFiZWxEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIF9lbmFibGVkOiBib29sZWFuO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX21hdEZvcm1GaWVsZDogTWF0Rm9ybUZpZWxkKSB7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogSG9zdCBCaW5kaW5ncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmVsZGVyLWZvcm0tZmllbGQtbGFiZWwnKSBnZXQgZ2V0Rm9ybUZpZWxkTGFiZWxTdHlsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0xhYmVsTW9kZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdlbGRlckZvcm1GaWVsZExhYmVsJylcbiAgcHVibGljIHNldCBlbmFibGVkKGVuYWJsZWQ6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX2VuYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkoZW5hYmxlZCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgaXNDb250cm9sUmVhZG9ubHkoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY3RybCA9IHRoaXMuX21hdEZvcm1GaWVsZC5fY29udHJvbDtcbiAgICByZXR1cm4gKDxhbnk+Y3RybCk/LnJlYWRvbmx5O1xuICB9XG5cbiAgcHVibGljIGlzTGFiZWxNb2RlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmVuYWJsZWQgJiYgdGhpcy5pc0NvbnRyb2xSZWFkb25seSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0xhYmVsTW9kZSgpKSB7XG4gICAgICB0aGlzLl9tYXRGb3JtRmllbGQuZmxvYXRMYWJlbCA9ICdhbHdheXMnO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=
|
|
@@ -37,7 +37,7 @@ import { FlexLayoutModule, FlexModule } from '@angular/flex-layout';
|
|
|
37
37
|
import * as i5 from '@angular/material/button';
|
|
38
38
|
import { MatButtonModule } from '@angular/material/button';
|
|
39
39
|
import * as i5$1 from '@angular/material/input';
|
|
40
|
-
import { MatInputModule
|
|
40
|
+
import { MatInputModule } from '@angular/material/input';
|
|
41
41
|
import * as i1$5 from '@angular/material/autocomplete';
|
|
42
42
|
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
43
43
|
import * as i6 from '@angular/material/core';
|
|
@@ -2559,6 +2559,24 @@ class Pageable {
|
|
|
2559
2559
|
}
|
|
2560
2560
|
}
|
|
2561
2561
|
|
|
2562
|
+
class JsonMapUtil {
|
|
2563
|
+
static toJsonMap(esMap) {
|
|
2564
|
+
const entries = Array.from(esMap.entries());
|
|
2565
|
+
const jsonMap = {};
|
|
2566
|
+
entries.reduce((o, [key, value]) => {
|
|
2567
|
+
o[key] = value;
|
|
2568
|
+
return o;
|
|
2569
|
+
}, jsonMap);
|
|
2570
|
+
return jsonMap;
|
|
2571
|
+
}
|
|
2572
|
+
static toMap(jsonMap, toIdFn = key => key) {
|
|
2573
|
+
const map = new Map();
|
|
2574
|
+
Object.keys(jsonMap)
|
|
2575
|
+
.forEach(k => map.set(toIdFn(k), jsonMap[k]));
|
|
2576
|
+
return map;
|
|
2577
|
+
}
|
|
2578
|
+
}
|
|
2579
|
+
|
|
2562
2580
|
class EntitySetPatch {
|
|
2563
2581
|
/***************************************************************************
|
|
2564
2582
|
* *
|
|
@@ -2593,7 +2611,75 @@ class EntitySetPatch {
|
|
|
2593
2611
|
}
|
|
2594
2612
|
/***************************************************************************
|
|
2595
2613
|
* *
|
|
2596
|
-
*
|
|
2614
|
+
* Query *
|
|
2615
|
+
* *
|
|
2616
|
+
**************************************************************************/
|
|
2617
|
+
getUpsertsById() {
|
|
2618
|
+
return JsonMapUtil.toMap(this.upsertsById);
|
|
2619
|
+
}
|
|
2620
|
+
getUpdatesById() {
|
|
2621
|
+
return JsonMapUtil.toMap(this.updatesById);
|
|
2622
|
+
}
|
|
2623
|
+
getUpsertOnes() {
|
|
2624
|
+
return [...this.upsertOnes];
|
|
2625
|
+
}
|
|
2626
|
+
getUpdateOnes() {
|
|
2627
|
+
return [...this.updateOnes];
|
|
2628
|
+
}
|
|
2629
|
+
/**
|
|
2630
|
+
* Gets all ids which should be deleted.
|
|
2631
|
+
* Also consider isDeleteOther, which means
|
|
2632
|
+
* everything gets deleted.
|
|
2633
|
+
*/
|
|
2634
|
+
collectDeletions() {
|
|
2635
|
+
return [
|
|
2636
|
+
...Array.from(this.getUpsertsById().entries())
|
|
2637
|
+
.filter(([id, update]) => !update)
|
|
2638
|
+
.map(([id, update]) => id),
|
|
2639
|
+
...Array.from(this.getUpdatesById().entries())
|
|
2640
|
+
.filter(([id, update]) => !update)
|
|
2641
|
+
.map(([id, update]) => id),
|
|
2642
|
+
];
|
|
2643
|
+
}
|
|
2644
|
+
/**
|
|
2645
|
+
* Delete all entities which are not
|
|
2646
|
+
* explicitly defined in this update.
|
|
2647
|
+
* "Replace with" semantics.
|
|
2648
|
+
*/
|
|
2649
|
+
get isDeleteOther() {
|
|
2650
|
+
return this.deleteOther;
|
|
2651
|
+
}
|
|
2652
|
+
/**
|
|
2653
|
+
* Collects all upserts. (Updates are ignored)
|
|
2654
|
+
*/
|
|
2655
|
+
collectUpserts() {
|
|
2656
|
+
return [
|
|
2657
|
+
...Array.from(this.getUpsertsById().entries())
|
|
2658
|
+
.filter(([id, update]) => !!update)
|
|
2659
|
+
.map(([id, update]) => update),
|
|
2660
|
+
...this.upsertOnes
|
|
2661
|
+
];
|
|
2662
|
+
}
|
|
2663
|
+
/**
|
|
2664
|
+
* Collects all updates. (Upserts are ignored)
|
|
2665
|
+
*/
|
|
2666
|
+
collectUpdates() {
|
|
2667
|
+
return [
|
|
2668
|
+
...Array.from(this.getUpdatesById().entries())
|
|
2669
|
+
.filter(([id, update]) => !!update)
|
|
2670
|
+
.map(([id, update]) => update),
|
|
2671
|
+
...this.updateOnes
|
|
2672
|
+
];
|
|
2673
|
+
}
|
|
2674
|
+
collectUpdatesAndUpserts() {
|
|
2675
|
+
return [
|
|
2676
|
+
...this.collectUpserts(),
|
|
2677
|
+
...this.collectUpdates()
|
|
2678
|
+
];
|
|
2679
|
+
}
|
|
2680
|
+
/***************************************************************************
|
|
2681
|
+
* *
|
|
2682
|
+
* Builder API *
|
|
2597
2683
|
* *
|
|
2598
2684
|
**************************************************************************/
|
|
2599
2685
|
update(updateOne) {
|
|
@@ -2641,11 +2727,15 @@ class EntitySetPatch {
|
|
|
2641
2727
|
return this;
|
|
2642
2728
|
}
|
|
2643
2729
|
deleteAll() {
|
|
2730
|
+
this.clear();
|
|
2731
|
+
this.deleteAllOther();
|
|
2732
|
+
return this;
|
|
2733
|
+
}
|
|
2734
|
+
clear() {
|
|
2644
2735
|
this.upsertOnes = [];
|
|
2645
2736
|
this.upsertsById = {};
|
|
2646
2737
|
this.updateOnes = [];
|
|
2647
2738
|
this.updatesById = {};
|
|
2648
|
-
this.deleteAllOther();
|
|
2649
2739
|
return this;
|
|
2650
2740
|
}
|
|
2651
2741
|
}
|
|
@@ -7998,24 +8088,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
|
|
|
7998
8088
|
}]
|
|
7999
8089
|
}], ctorParameters: function () { return [{ type: i1$3.Router }, { type: i1$3.ActivatedRoute }]; } });
|
|
8000
8090
|
|
|
8001
|
-
class JsonMapUtil {
|
|
8002
|
-
static toJsonMap(esMap) {
|
|
8003
|
-
const entries = Array.from(esMap.entries());
|
|
8004
|
-
const jsonMap = {};
|
|
8005
|
-
entries.reduce((o, [key, value]) => {
|
|
8006
|
-
o[key] = value;
|
|
8007
|
-
return o;
|
|
8008
|
-
}, jsonMap);
|
|
8009
|
-
return jsonMap;
|
|
8010
|
-
}
|
|
8011
|
-
static toMap(jsonMap) {
|
|
8012
|
-
const map = new Map();
|
|
8013
|
-
Object.keys(jsonMap)
|
|
8014
|
-
.forEach(k => map.set(k, jsonMap[k]));
|
|
8015
|
-
return map;
|
|
8016
|
-
}
|
|
8017
|
-
}
|
|
8018
|
-
|
|
8019
8091
|
class Sets {
|
|
8020
8092
|
/**
|
|
8021
8093
|
* Compares the content of two sets for equality in O(n).
|
|
@@ -13674,9 +13746,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImpor
|
|
|
13674
13746
|
*
|
|
13675
13747
|
* Example Usage:
|
|
13676
13748
|
*
|
|
13677
|
-
*
|
|
13678
|
-
*
|
|
13679
|
-
*
|
|
13749
|
+
* <mat-form-field elderFormFieldLabel>
|
|
13750
|
+
* <input matInput placeholder="Readonly Input" readonly="true" value="Some Value">
|
|
13751
|
+
* </mat-form-field>
|
|
13680
13752
|
*
|
|
13681
13753
|
*/
|
|
13682
13754
|
class ElderFormFieldLabelDirective {
|
|
@@ -13688,6 +13760,20 @@ class ElderFormFieldLabelDirective {
|
|
|
13688
13760
|
constructor(_matFormField) {
|
|
13689
13761
|
this._matFormField = _matFormField;
|
|
13690
13762
|
}
|
|
13763
|
+
/***************************************************************************
|
|
13764
|
+
* *
|
|
13765
|
+
* Host Bindings *
|
|
13766
|
+
* *
|
|
13767
|
+
**************************************************************************/
|
|
13768
|
+
get getFormFieldLabelStyle() {
|
|
13769
|
+
return this.isLabelMode();
|
|
13770
|
+
}
|
|
13771
|
+
/***************************************************************************
|
|
13772
|
+
* *
|
|
13773
|
+
* Properties *
|
|
13774
|
+
* *
|
|
13775
|
+
**************************************************************************/
|
|
13776
|
+
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
13691
13777
|
set enabled(enabled) {
|
|
13692
13778
|
this._enabled = coerceBooleanProperty(enabled);
|
|
13693
13779
|
}
|
|
@@ -13699,12 +13785,12 @@ class ElderFormFieldLabelDirective {
|
|
|
13699
13785
|
* Public API *
|
|
13700
13786
|
* *
|
|
13701
13787
|
**************************************************************************/
|
|
13702
|
-
|
|
13788
|
+
isControlReadonly() {
|
|
13703
13789
|
const ctrl = this._matFormField._control;
|
|
13704
|
-
|
|
13705
|
-
|
|
13706
|
-
|
|
13707
|
-
return
|
|
13790
|
+
return ctrl === null || ctrl === void 0 ? void 0 : ctrl.readonly;
|
|
13791
|
+
}
|
|
13792
|
+
isLabelMode() {
|
|
13793
|
+
return this.enabled && this.isControlReadonly();
|
|
13708
13794
|
}
|
|
13709
13795
|
/***************************************************************************
|
|
13710
13796
|
* *
|
|
@@ -13712,22 +13798,22 @@ class ElderFormFieldLabelDirective {
|
|
|
13712
13798
|
* *
|
|
13713
13799
|
**************************************************************************/
|
|
13714
13800
|
ngAfterViewInit() {
|
|
13715
|
-
if (this.
|
|
13801
|
+
if (this.isLabelMode()) {
|
|
13716
13802
|
this._matFormField.floatLabel = 'always';
|
|
13717
13803
|
}
|
|
13718
13804
|
}
|
|
13719
13805
|
}
|
|
13720
13806
|
ElderFormFieldLabelDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderFormFieldLabelDirective, deps: [{ token: i4$1.MatFormField }], target: i0.ɵɵFactoryTarget.Directive });
|
|
13721
|
-
ElderFormFieldLabelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.6", type: ElderFormFieldLabelDirective, selector: "mat-form-field[elderFormFieldLabel]", inputs: { enabled: ["elderFormFieldLabel", "enabled"] }, host: { properties: { "class.elder-form-field-label": "
|
|
13807
|
+
ElderFormFieldLabelDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.6", type: ElderFormFieldLabelDirective, selector: "mat-form-field[elderFormFieldLabel]", inputs: { enabled: ["elderFormFieldLabel", "enabled"] }, host: { properties: { "class.elder-form-field-label": "this.getFormFieldLabelStyle" } }, ngImport: i0 });
|
|
13722
13808
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.6", ngImport: i0, type: ElderFormFieldLabelDirective, decorators: [{
|
|
13723
13809
|
type: Directive,
|
|
13724
13810
|
args: [{
|
|
13725
|
-
selector: 'mat-form-field[elderFormFieldLabel]'
|
|
13726
|
-
host: {
|
|
13727
|
-
'[class.elder-form-field-label]': 'enabled && isReadonlyInput()'
|
|
13728
|
-
}
|
|
13811
|
+
selector: 'mat-form-field[elderFormFieldLabel]'
|
|
13729
13812
|
}]
|
|
13730
|
-
}], ctorParameters: function () { return [{ type: i4$1.MatFormField }]; }, propDecorators: {
|
|
13813
|
+
}], ctorParameters: function () { return [{ type: i4$1.MatFormField }]; }, propDecorators: { getFormFieldLabelStyle: [{
|
|
13814
|
+
type: HostBinding,
|
|
13815
|
+
args: ['class.elder-form-field-label']
|
|
13816
|
+
}], enabled: [{
|
|
13731
13817
|
type: Input,
|
|
13732
13818
|
args: ['elderFormFieldLabel']
|
|
13733
13819
|
}] } });
|