@elderbyte/ngx-starter 14.4.0-beta.20 → 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/fesm2015/elderbyte-ngx-starter.mjs +92 -20
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +92 -20
- 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/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=
|
|
@@ -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).
|