@trudb/tru-common-lib 0.0.997 → 0.1.0
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/esm2022/lib/components/validation-dialog/tru-validation-dialog-config.mjs +21 -8
- package/esm2022/lib/components/validation-dialog/tru-validation-dialog.mjs +1 -1
- package/esm2022/lib/directives/breeze-grid-validator/tru-breeze-grid-validator.mjs +22 -14
- package/esm2022/lib/directives/breeze-validator/tru-breeze-validator.mjs +16 -17
- package/fesm2022/trudb-tru-common-lib.mjs +36 -54
- package/fesm2022/trudb-tru-common-lib.mjs.map +1 -1
- package/lib/components/validation-dialog/tru-validation-dialog-config.d.ts +11 -3
- package/lib/directives/breeze-validator/tru-breeze-validator.d.ts +3 -5
- package/package.json +1 -1
|
@@ -1,28 +1,41 @@
|
|
|
1
1
|
export class TruValidationDialogConfig {
|
|
2
2
|
_entity;
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
_propertyConfig;
|
|
4
|
+
_isSubProperty;
|
|
5
|
+
_propertyName = '';
|
|
6
|
+
_errorMsg = '';
|
|
7
|
+
_mergeData = null;
|
|
6
8
|
get entity() {
|
|
7
9
|
return this._entity;
|
|
8
10
|
}
|
|
11
|
+
get propertyConfig() {
|
|
12
|
+
return this._propertyConfig;
|
|
13
|
+
}
|
|
14
|
+
get isSubProperty() {
|
|
15
|
+
return this._isSubProperty;
|
|
16
|
+
}
|
|
9
17
|
get propertyName() {
|
|
10
18
|
return this._propertyName;
|
|
11
19
|
}
|
|
20
|
+
set propertyName(value) {
|
|
21
|
+
this._propertyName = value;
|
|
22
|
+
}
|
|
12
23
|
get errorMsg() {
|
|
13
24
|
return this._errorMsg;
|
|
14
25
|
}
|
|
26
|
+
set errorMsg(value) {
|
|
27
|
+
this._errorMsg = value;
|
|
28
|
+
}
|
|
15
29
|
get mergeData() {
|
|
16
30
|
return this._mergeData;
|
|
17
31
|
}
|
|
18
32
|
set mergeData(value) {
|
|
19
33
|
this._mergeData = value;
|
|
20
34
|
}
|
|
21
|
-
constructor(entity,
|
|
35
|
+
constructor(entity, propertyConfig, isSubProperty) {
|
|
22
36
|
this._entity = entity;
|
|
23
|
-
this.
|
|
24
|
-
this.
|
|
25
|
-
this._mergeData = mergeData;
|
|
37
|
+
this._propertyConfig = propertyConfig;
|
|
38
|
+
this._isSubProperty = isSubProperty;
|
|
26
39
|
}
|
|
27
40
|
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXZhbGlkYXRpb24tZGlhbG9nLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy92YWxpZGF0aW9uLWRpYWxvZy90cnUtdmFsaWRhdGlvbi1kaWFsb2ctY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE1BQU0sT0FBTyx5QkFBeUI7SUFDNUIsT0FBTyxDQUFnQjtJQUN2QixlQUFlLENBQWdFO0lBQy9FLGNBQWMsQ0FBVTtJQUN4QixhQUFhLEdBQVcsRUFBRSxDQUFDO0lBQzNCLFNBQVMsR0FBVyxFQUFFLENBQUM7SUFDdkIsVUFBVSxHQUEyQixJQUFJLENBQUM7SUFFbEQsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFXLGNBQWM7UUFDdkIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFXLFlBQVk7UUFDckIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFXLFlBQVksQ0FBQyxLQUFhO1FBQ25DLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLFFBQVEsQ0FBQyxLQUFhO1FBQy9CLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFXLFNBQVMsQ0FBQyxLQUE2QjtRQUNoRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQsWUFDRSxNQUFxQixFQUNyQixjQUE2RSxFQUM3RSxhQUFzQjtRQUN0QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN0QixJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztRQUN0QyxJQUFJLENBQUMsY0FBYyxHQUFHLGFBQWEsQ0FBQztJQUN0QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnVFZGl0Q29udHJvbENvbmZpZ0Jhc2UgfSBmcm9tIFwiLi4vLi4vYmFzZS1jbGFzc2VzL3RydS1lZGl0LWNvbnRyb2wtY29uZmlnLWJhc2VcIjtcclxuaW1wb3J0IHsgVHJ1RW50aXR5QmFzZSB9IGZyb20gXCIuLi8uLi9iYXNlLWNsYXNzZXMvdHJ1LWVudGl0eS1iYXNlXCI7XHJcbmltcG9ydCB7IFRydUxpc3RDb250cm9sQ29uZmlnQmFzZSB9IGZyb20gXCIuLi8uLi9iYXNlLWNsYXNzZXMvdHJ1LWxpc3QtY29udHJvbC1jb25maWctYmFzZVwiO1xyXG5pbXBvcnQgeyBUcnVNZXJnZURhdGFTZXQgfSBmcm9tIFwiLi4vLi4vY2xhc3Nlcy90cnUtbWVyZ2UtZGF0YS1zZXRcIjtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgVHJ1VmFsaWRhdGlvbkRpYWxvZ0NvbmZpZyB7XHJcbiAgcHJpdmF0ZSBfZW50aXR5OiBUcnVFbnRpdHlCYXNlO1xyXG4gIHByaXZhdGUgX3Byb3BlcnR5Q29uZmlnOiBUcnVFZGl0Q29udHJvbENvbmZpZ0Jhc2U8YW55PiB8IFRydUxpc3RDb250cm9sQ29uZmlnQmFzZTxhbnk+O1xyXG4gIHByaXZhdGUgX2lzU3ViUHJvcGVydHk6IGJvb2xlYW47XHJcbiAgcHJpdmF0ZSBfcHJvcGVydHlOYW1lOiBzdHJpbmcgPSAnJztcclxuICBwcml2YXRlIF9lcnJvck1zZzogc3RyaW5nID0gJyc7XHJcbiAgcHJpdmF0ZSBfbWVyZ2VEYXRhOiBUcnVNZXJnZURhdGFTZXQgfCBudWxsID0gbnVsbDtcclxuICBcclxuICBwdWJsaWMgZ2V0IGVudGl0eSgpOiBUcnVFbnRpdHlCYXNlIHtcclxuICAgIHJldHVybiB0aGlzLl9lbnRpdHk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHByb3BlcnR5Q29uZmlnKCk6IFRydUVkaXRDb250cm9sQ29uZmlnQmFzZTxhbnk+IHwgVHJ1TGlzdENvbnRyb2xDb25maWdCYXNlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3Byb3BlcnR5Q29uZmlnO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBpc1N1YlByb3BlcnR5KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzU3ViUHJvcGVydHk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHByb3BlcnR5TmFtZSgpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgIHJldHVybiB0aGlzLl9wcm9wZXJ0eU5hbWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0IHByb3BlcnR5TmFtZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl9wcm9wZXJ0eU5hbWUgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZXJyb3JNc2coKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICByZXR1cm4gdGhpcy5fZXJyb3JNc2c7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0IGVycm9yTXNnKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2Vycm9yTXNnID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IG1lcmdlRGF0YSgpOiBUcnVNZXJnZURhdGFTZXQgfCBudWxsIHtcclxuICAgIHJldHVybiB0aGlzLl9tZXJnZURhdGE7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0IG1lcmdlRGF0YSh2YWx1ZTogVHJ1TWVyZ2VEYXRhU2V0IHwgbnVsbCkge1xyXG4gICAgdGhpcy5fbWVyZ2VEYXRhID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIGVudGl0eTogVHJ1RW50aXR5QmFzZSxcclxuICAgIHByb3BlcnR5Q29uZmlnOiBUcnVFZGl0Q29udHJvbENvbmZpZ0Jhc2U8YW55PiB8IFRydUxpc3RDb250cm9sQ29uZmlnQmFzZTxhbnk+LFxyXG4gICAgaXNTdWJQcm9wZXJ0eTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fZW50aXR5ID0gZW50aXR5O1xyXG4gICAgdGhpcy5fcHJvcGVydHlDb25maWcgPSBwcm9wZXJ0eUNvbmZpZztcclxuICAgIHRoaXMuX2lzU3ViUHJvcGVydHkgPSBpc1N1YlByb3BlcnR5O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -73,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
73
73
|
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.TruUtil }], propDecorators: { config: [{
|
|
74
74
|
type: Input
|
|
75
75
|
}] } });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXZhbGlkYXRpb24tZGlhbG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jb21wb25lbnRzL3ZhbGlkYXRpb24tZGlhbG9nL3RydS12YWxpZGF0aW9uLWRpYWxvZy50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY29tcG9uZW50cy92YWxpZGF0aW9uLWRpYWxvZy90cnUtdmFsaWRhdGlvbi1kaWFsb2cuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBZ0MsTUFBTSxlQUFlLENBQUM7Ozs7QUFTM0YsTUFBTSxPQUFPLG1CQUFtQjtJQVFwQjtJQUNBO0lBQ0E7SUFURCxNQUFNLENBQTZCO0lBRTVDLFFBQVEsR0FBVyxFQUFFLENBQUM7SUFFZCxTQUFTLEdBQXNCLEVBQUUsQ0FBQztJQUUxQyxZQUNVLFFBQW1CLEVBQ25CLFVBQXNCLEVBQ3RCLElBQWE7UUFGYixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsU0FBSSxHQUFKLElBQUksQ0FBUztJQUFJLENBQUM7SUFFNUIsV0FBVyxHQUFHLEdBQUcsRUFBRTtRQUNqQixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQWEsQ0FBQztRQUN2QyxJQUFJLGNBQWMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQztRQUV4RCxLQUFLLE1BQU0sR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ2pELE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFFLENBQUMsS0FBSyxDQUFDO1lBQ3JE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Q0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNyRSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ25ILElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNuQyxDQUFDO3VHQTNFVSxtQkFBbUI7MkZBQW5CLG1CQUFtQiwyRkNUaEMsaWtCQVNBOzsyRkRBYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsdUJBQXVCOzZIQUt4QixNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRydVV0aWwgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90cnUtdXRpbCc7XHJcbmltcG9ydCB7IFRydVZhbGlkYXRpb25EaWFsb2dDb25maWcgfSBmcm9tICcuL3RydS12YWxpZGF0aW9uLWRpYWxvZy1jb25maWcnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd0cnUtdmFsaWRhdGlvbi1kaWFsb2cnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90cnUtdmFsaWRhdGlvbi1kaWFsb2cuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHJ1LXZhbGlkYXRpb24tZGlhbG9nLmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVWYWxpZGF0aW9uRGlhbG9nIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIGNvbmZpZyE6IFRydVZhbGlkYXRpb25EaWFsb2dDb25maWc7XHJcblxyXG4gIGVycm9yTXNnOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgcHJpdmF0ZSBsaXN0ZW5lcnM6IEFycmF5PCgpID0+IHZvaWQ+ID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBcclxuICAgIHByaXZhdGUgdXRpbDogVHJ1VXRpbCkgeyB9XHJcblxyXG4gIG9uQWNjZXB0QWxsID0gKCkgPT4ge1xyXG4gICAgbGV0IGVudGl0eSA9IHRoaXMuY29uZmlnLmVudGl0eSBhcyBhbnk7XHJcbiAgICBsZXQgb3JpZ2luYWxWYWx1ZXMgPSBlbnRpdHkuZW50aXR5QXNwZWN0Lm9yaWdpbmFsVmFsdWVzO1xyXG5cclxuICAgIGZvciAoY29uc3Qga2V5IGluIHRoaXMuY29uZmlnLm1lcmdlRGF0YT8uZ2V0QWxsKCkpIHtcclxuICAgICAgZW50aXR5W2tleV0gPSB0aGlzLmNvbmZpZy5tZXJnZURhdGE/LmdldChrZXkpIS52YWx1ZTtcclxuICAgICAgaWYgKG9yaWdpbmFsVmFsdWVzLmhhc093blByb3BlcnR5KGtleSkpXHJcbiAgICAgICAgZGVsZXRlIG9yaWdpbmFsVmFsdWVzW2tleV07XHJcbiAgICB9O1xyXG5cclxuICAgIGlmIChPYmplY3Qua2V5cyhvcmlnaW5hbFZhbHVlcykubGVuZ3RoID09PSAwICYmIG9yaWdpbmFsVmFsdWVzLmNvbnN0cnVjdG9yID09PSBPYmplY3QpXHJcbiAgICAgIGVudGl0eS5lbnRpdHlBc3BlY3Quc2V0VW5jaGFuZ2VkKCk7XHJcblxyXG4gICAgZW50aXR5Lk1lcmdlX0RhdGFfU2V0LmNsZWFyQWxsKCk7XHJcblxyXG4gICAgZW50aXR5LmVudGl0eUFzcGVjdC52YWxpZGF0ZUVudGl0eSgpO1xyXG4gIH1cclxuXHJcbiAgb25BY2NlcHQgPSAoKSA9PiB7XHJcbiAgICBsZXQgZW50aXR5ID0gdGhpcy5jb25maWcuZW50aXR5IGFzIGFueTtcclxuICAgIGxldCBvcmlnaW5hbFZhbHVlcyA9IGVudGl0eS5lbnRpdHlBc3BlY3Qub3JpZ2luYWxWYWx1ZXM7XHJcbiAgICBsZXQgcHJvcGVydHlOYW1lID0gdGhpcy5jb25maWcucHJvcGVydHlOYW1lIGFzIHN0cmluZztcclxuXHJcbiAgICBlbnRpdHlbcHJvcGVydHlOYW1lXSA9IHRoaXMuY29uZmlnLm1lcmdlRGF0YT8uZ2V0KHByb3BlcnR5TmFtZSkhLnZhbHVlO1xyXG4gICAgdGhpcy5jb25maWcubWVyZ2VEYXRhPy5jbGVhcihwcm9wZXJ0eU5hbWUpO1xyXG5cclxuICAgIGlmIChvcmlnaW5hbFZhbHVlcy5oYXNPd25Qcm9wZXJ0eShwcm9wZXJ0eU5hbWUpICYmIChPYmplY3Qua2V5cyhvcmlnaW5hbFZhbHVlcykubGVuZ3RoID09PSAwICYmIG9yaWdpbmFsVmFsdWVzLmNvbnN0cnVjdG9yID09PSBPYmplY3QpKVxyXG4gICAgICBkZWxldGUgb3JpZ2luYWxWYWx1ZXNbcHJvcGVydHlOYW1lXTtcclxuXHJcbiAgICBpZiAodGhpcy5jb25maWcubWVyZ2VEYXRhPy5pc0VtcHR5KCkpXHJcbiAgICAgIGVudGl0eS5lbnRpdHlBc3BlY3Quc2V0VW5jaGFuZ2VkKCk7XHJcblxyXG4gICAgZW50aXR5LmVudGl0eUFzcGVjdC52YWxpZGF0ZUVudGl0eSgpO1xyXG4gIH1cclxuXHJcbiAgb25EZWNsaW5lID0gKCkgPT4ge1xyXG4gICAgbGV0IGVudGl0eSA9IHRoaXMuY29uZmlnLmVudGl0eSBhcyBhbnk7XHJcbiAgICB0aGlzLmNvbmZpZy5tZXJnZURhdGE/LmNsZWFyQWxsKCk7XHJcbiAgICBlbnRpdHkuZW50aXR5QXNwZWN0LnZhbGlkYXRlRW50aXR5KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuZXJyb3JNc2cgPSB0aGlzLmNvbmZpZy5lcnJvck1zZyBhcyBzdHJpbmc7XHJcblxyXG4gICAgdmFyIGludmFsaWRUYXJnZXQgPSAgdGhpcy51dGlsLmZpbmRDbG9zZXN0QW5jZXN0b3JCeUNsYXNzKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnLmludmFsaWQtdGFyZ2V0Jyk7XHJcbiAgICB0aGlzLmxpc3RlbmVycy5wdXNoKHRoaXMucmVuZGVyZXIubGlzdGVuKGludmFsaWRUYXJnZXQsICdtb3VzZWVudGVyJywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XHJcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNoaWxkTm9kZXNbMF0uY2xhc3NMaXN0LnJlbW92ZSgnaGlkZScpO1xyXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzWzBdLmNsYXNzTGlzdC5hZGQoJ3Nob3cnKTtcclxuICAgIH0pKTtcclxuXHJcbiAgICB0aGlzLmxpc3RlbmVycy5wdXNoKHRoaXMucmVuZGVyZXIubGlzdGVuKGludmFsaWRUYXJnZXQsICdtb3VzZWxlYXZlJywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB7XHJcbiAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNoaWxkTm9kZXNbMF0uY2xhc3NMaXN0LnJlbW92ZSgnc2hvdycpO1xyXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzWzBdLmNsYXNzTGlzdC5hZGQoJ2hpZGUnKTtcclxuICAgIH0pKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudXRpbC5maW5kQ2xvc2VzdEFuY2VzdG9yQnlDbGFzcyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJy5pbnZhbGlkLXRhcmdldCcpLmNsYXNzTGlzdC5hZGQoJ2ludmFsaWQnKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy51dGlsLmZpbmRDbG9zZXN0QW5jZXN0b3JCeUNsYXNzKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnLmludmFsaWQtdGFyZ2V0JykuY2xhc3NMaXN0LnJlbW92ZSgnaW52YWxpZCcpO1xyXG4gICAgdGhpcy5saXN0ZW5lcnMuZm9yRWFjaChsID0+IGwoKSk7XHJcbiAgfVxyXG59XHJcblxyXG4iLCI8ZGl2IGNsYXNzPVwiaW52YWxpZCBoaWRlXCI+XHJcbiAgPGkgY2xhc3M9XCJpY29uLXdhcm5pbmctc2lnbiBpY29uLXdoaXRlXCI+PC9pPnt7Y29uZmlnLmVycm9yTXNnfX1cclxuICA8ZGl2ICpuZ0lmPVwiY29uZmlnLm1lcmdlRGF0YVwiPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cIm1kLXByaW1hcnkgbWQtYnV0dG9uIG5nLXNjb3BlIG1kLWluay1yaXBwbGUgbWVyZ2UtYnV0dG9uXCIgKGNsaWNrKT1cIm9uQWNjZXB0QWxsKClcIj5BY2NlcHQgQWxsPC9idXR0b24+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwibWQtcHJpbWFyeSBtZC1idXR0b24gbmctc2NvcGUgbWQtaW5rLXJpcHBsZSBtZXJnZS1idXR0b25cIiAoY2xpY2spPVwib25BY2NlcHQoKVwiPkFjY2VwdDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cIm1kLXByaW1hcnkgbWQtYnV0dG9uIG5nLXNjb3BlIG1kLWluay1yaXBwbGUgbWVyZ2UtYnV0dG9uXCIgKGNsaWNrKT1cIm9uRGVjbGluZSgpXCI+RGVjbGluZTwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuPHNwYW4gY2xhc3M9XCJpbnZhbGlkLWZsYWdcIj48L3NwYW4+XHJcbiJdfQ==
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { Directive, Input } from '@angular/core';
|
|
2
2
|
import { TruGridValidationDialog } from '../../components/grid-validation-dialog/tru-grid-validation-dialog';
|
|
3
|
-
import { TruGridValidationDialogConfig } from '../../components/grid-validation-dialog/tru-grid-validation-dialog-config';
|
|
4
3
|
import { TruValidationDialog } from '../../components/validation-dialog/tru-validation-dialog';
|
|
5
|
-
import { TruValidationDialogConfig } from '../../components/validation-dialog/tru-validation-dialog-config';
|
|
6
4
|
import * as i0 from "@angular/core";
|
|
7
5
|
import * as i1 from "../../services/tru-data-context";
|
|
8
6
|
export class TruBreezeGridValidator {
|
|
@@ -92,17 +90,27 @@ export class TruBreezeGridValidator {
|
|
|
92
90
|
return properties.includes(v.propertyName);
|
|
93
91
|
});
|
|
94
92
|
this.mergeData = this.getMergeData();
|
|
95
|
-
if (
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
93
|
+
//if (
|
|
94
|
+
// this.config.rootTable === validationTableName &&
|
|
95
|
+
// this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
96
|
+
// (addedPropertyValdations.length || this.mergeData)) {
|
|
97
|
+
// this.removeValidationDialog();
|
|
98
|
+
// if (this.isSubProperty) {
|
|
99
|
+
// this.addSubPropertyValidationDialog(new TruValidationDialogConfig(
|
|
100
|
+
// this.entity,
|
|
101
|
+
// this.config.propertyName as string,
|
|
102
|
+
// this.parseErrorMessages(addedPropertyValdations),
|
|
103
|
+
// this.mergeData
|
|
104
|
+
// ));
|
|
105
|
+
// } else {
|
|
106
|
+
// this.addValidationDialog(new TruGridValidationDialogConfig(
|
|
107
|
+
// this.entity,
|
|
108
|
+
// this.config.propertyName as string,
|
|
109
|
+
// this.parseErrorMessages(addedPropertyValdations),
|
|
110
|
+
// this.mergeData
|
|
111
|
+
// ));
|
|
112
|
+
// }
|
|
113
|
+
//}
|
|
106
114
|
if (this.config.rootTable === validationTableName &&
|
|
107
115
|
this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
108
116
|
(removedPropertyValdations.length)) {
|
|
@@ -140,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
140
148
|
}], isSubProperty: [{
|
|
141
149
|
type: Input
|
|
142
150
|
}] } });
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWJyZWV6ZS1ncmlkLXZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvZGlyZWN0aXZlcy9icmVlemUtZ3JpZC12YWxpZGF0b3IvdHJ1LWJyZWV6ZS1ncmlkLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBDLFNBQVMsRUFBYyxLQUFLLEVBQXNELE1BQU0sZUFBZSxDQUFDO0FBVXpKLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9FQUFvRSxDQUFDO0FBQzdHLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDJFQUEyRSxDQUFDO0FBQzFILE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlFQUFpRSxDQUFDOzs7QUFNNUcsTUFBTSxPQUFPLHNCQUFzQjtJQU92QjtJQUNBO0lBQ0E7SUFDQTtJQVR1QixNQUFNLENBQWlCO0lBQy9DLE1BQU0sQ0FBaUU7SUFDdkUsT0FBTyxDQUF1QjtJQUM5QixhQUFhLEdBQVksS0FBSyxDQUFDO0lBRXhDLFlBQ1UsRUFBYyxFQUNkLFdBQTJCLEVBQzNCLGdCQUFrQyxFQUNsQyx3QkFBa0Q7UUFIbEQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUMzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7SUFDNUQsQ0FBQztJQUVELFdBQVcsR0FBUSxFQUFFLENBQUM7SUFDdEIsU0FBUyxDQUFNO0lBRVAsU0FBUyxHQUE2QixJQUFJLENBQUM7SUFDM0MsSUFBSSxHQUF3QixFQUFFLENBQUM7SUFDL0IsYUFBYSxHQUFxRixJQUFJLENBQUE7SUFFdEcsWUFBWSxHQUFHLEdBQWdDLEVBQUU7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QyxRQUFRLENBQUMsRUFBRTtZQUM3RSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDSixJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUMxQyxDQUFDO3VHQS9JVSxzQkFBc0I7MkZBQXRCLHNCQUFzQjs7MkZBQXRCLHNCQUFzQjtrQkFIbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMEJBQTBCO2lCQUNyQztrTEFFa0MsTUFBTTtzQkFBdEMsS0FBSzt1QkFBQyx3QkFBd0I7Z0JBQ3RCLE1BQU07c0JBQWQsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgQ29tcG9uZW50UmVmLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcywgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBHcmlkQXBpIH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3IgfSBmcm9tICdicmVlemUtY2xpZW50JztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZvckVhY2ggfSBmcm9tICd1bmRlcnNjb3JlJztcclxuaW1wb3J0IHsgVHJ1RWRpdENvbnRyb2xDb25maWdCYXNlIH0gZnJvbSAnLi4vLi4vYmFzZS1jbGFzc2VzL3RydS1lZGl0LWNvbnRyb2wtY29uZmlnLWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVFbnRpdHlCYXNlIH0gZnJvbSAnLi4vLi4vYmFzZS1jbGFzc2VzL3RydS1lbnRpdHktYmFzZSc7XHJcbmltcG9ydCB7IFRydUxpc3RDb250cm9sQ29uZmlnQmFzZSB9IGZyb20gJy4uLy4uL2Jhc2UtY2xhc3Nlcy90cnUtbGlzdC1jb250cm9sLWNvbmZpZy1iYXNlJztcclxuaW1wb3J0IHsgVHJ1TWVyZ2VEYXRhIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy90cnUtbWVyZ2UtZGF0YSc7XHJcbmltcG9ydCB7IFRydU1lcmdlRGF0YVNldCB9IGZyb20gJy4uLy4uL2NsYXNzZXMvdHJ1LW1lcmdlLWRhdGEtc2V0JztcclxuaW1wb3J0IHsgVHJ1R3JpZFZhbGlkYXRpb25EaWFsb2cgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2dyaWQtdmFsaWRhdGlvbi1kaWFsb2cvdHJ1LWdyaWQtdmFsaWRhdGlvbi1kaWFsb2cnO1xyXG5pbXBvcnQgeyBUcnVHcmlkVmFsaWRhdGlvbkRpYWxvZ0NvbmZpZyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZ3JpZC12YWxpZGF0aW9uLWRpYWxvZy90cnUtZ3JpZC12YWxpZGF0aW9uLWRpYWxvZy1jb25maWcnO1xyXG5pbXBvcnQgeyBUcnVWYWxpZGF0aW9uRGlhbG9nIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy92YWxpZGF0aW9uLWRpYWxvZy90cnUtdmFsaWRhdGlvbi1kaWFsb2cnO1xyXG5pbXBvcnQgeyBUcnVWYWxpZGF0aW9uRGlhbG9nQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy92YWxpZGF0aW9uLWRpYWxvZy90cnUtdmFsaWRhdGlvbi1kaWFsb2ctY29uZmlnJztcclxuaW1wb3J0IHsgVHJ1RGF0YUNvbnRleHQgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90cnUtZGF0YS1jb250ZXh0JztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3RydUJyZWV6ZUdyaWRWYWxpZGF0b3JdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1QnJlZXplR3JpZFZhbGlkYXRvciBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoJ3RydUJyZWV6ZUdyaWRWYWxpZGF0b3InKSBlbnRpdHkhOiBUcnVFbnRpdHlCYXNlO1xyXG4gIEBJbnB1dCgpIGNvbmZpZyE6IFRydUVkaXRDb250cm9sQ29uZmlnQmFzZTxhbnk+IHwgVHJ1TGlzdENvbnRyb2xDb25maWdCYXNlPGFueT47XHJcbiAgQElucHV0KCkgZ3JpZEFwaSE6IEdyaWRBcGkgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgaXNTdWJQcm9wZXJ0eTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIGRhdGFDb250ZXh0OiBUcnVEYXRhQ29udGV4dCxcclxuICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcclxuICAgIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIpIHtcclxuICB9XHJcblxyXG4gIGNvbmZpZ01vZGVsOiBhbnkgPSB7fTtcclxuICBtZXJnZURhdGE6IGFueTtcclxuXHJcbiAgcHJpdmF0ZSBkaWFsb2dSZWY6IENvbXBvbmVudFJlZjxhbnk+IHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBzdWJzOiBBcnJheTxTdWJzY3JpcHRpb24+ID0gW107XHJcbiAgcHJpdmF0ZSBjdXJyZW50RGlhbG9nOiBDb21wb25lbnRSZWY8VHJ1R3JpZFZhbGlkYXRpb25EaWFsb2c+IHwgQ29tcG9uZW50UmVmPFRydVZhbGlkYXRpb25EaWFsb2c+IHwgbnVsbCA9IG51bGxcclxuXHJcbiAgcHJpdmF0ZSBnZXRNZXJnZURhdGEgPSAoKTogVHJ1TWVyZ2VEYXRhU2V0IHwgdW5kZWZpbmVkID0+IHtcclxuICAgIGlmICh0aGlzLmNvbmZpZy5wcm9wZXJ0eVBhdGg/LmluY2x1ZGVzKCcvJykpIHtcclxuICAgICAgbGV0IHByb3BlcnR5TmFtZVBhcnRzID0gdGhpcy5jb25maWcucHJvcGVydHlQYXRoLnNwbGl0KCcvJyk7XHJcbiAgICAgIHByb3BlcnR5TmFtZVBhcnRzLnBvcCgpO1xyXG4gICAgICBsZXQgdGFyZ2V0UHJvcGVydHk6IGFueTtcclxuICAgICAgcHJvcGVydHlOYW1lUGFydHMuZm9yRWFjaCgobmFtZSkgPT4ge1xyXG4gICAgICAgIGlmICghdGFyZ2V0UHJvcGVydHkpIHtcclxuICAgICAgICAgIGxldCB0YXJnZXRQcm9wZXJ0eU5hbWUgPSAnbycgKyBuYW1lIGFzIGtleW9mIHR5cGVvZiB0aGlzLmVudGl0eTtcclxuICAgICAgICAgIHRhcmdldFByb3BlcnR5ID0gdGhpcy5lbnRpdHlbdGFyZ2V0UHJvcGVydHlOYW1lXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgbGV0IHRhcmdldFByb3BlcnR5TmFtZSA9ICdvJyArIG5hbWUgYXMga2V5b2YgdHlwZW9mIHRoaXMuZW50aXR5O1xyXG4gICAgICAgICAgdGFyZ2V0UHJvcGVydHkgPSB0YXJnZXRQcm9wZXJ0eVt0YXJnZXRQcm9wZXJ0eU5hbWVdO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIGlmICh0YXJnZXRQcm9wZXJ0eSAmJiB0YXJnZXRQcm9wZXJ0eS5NZXJnZV9EYXRhKSB7XHJcbiAgICAgICAgcmV0dXJuIHRhcmdldFByb3BlcnR5Lk1lcmdlX0RhdGFfU2V0O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5lbnRpdHkuTWVyZ2VfRGF0YV9TZXQ/LmdldCh0aGlzLmNvbmZpZy5wcm9wZXJ0eU5hbWUgYXMgc3RyaW5nKSA/IHRoaXMuZW50aXR5Lk1lcmdlX0RhdGFfU2V0IDogdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwYXJzZUVycm9yTWVzc2FnZXMgPSAodmFsaWRhdGlvbkVycm9yczogQXJyYXk8VmFsaWRhdGlvbkVycm9yPik6IHN0cmluZyA9PiB7XHJcbiAgICBsZXQgZXJyb3JNc2c6IHN0cmluZyA9ICcnO1xyXG4gICAgdmFsaWRhdGlvbkVycm9ycy5mb3JFYWNoKChlcnJvcikgPT4ge1xyXG4gICAgICBlcnJvck1zZyArPSBlcnJvci5lcnJvck1lc3NhZ2UgKyAnOyAnO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZXJyb3JNc2c7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZFZhbGlkYXRpb25EaWFsb2cgPSAoY29uZmlnOiBUcnVHcmlkVmFsaWRhdGlvbkRpYWxvZ0NvbmZpZykgPT4ge1xyXG4gICAgbGV0IGNvbXBvbmVudEZhY3RvcnkgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShUcnVHcmlkVmFsaWRhdGlvbkRpYWxvZyk7XHJcbiAgICBsZXQgY29tcG9uZW50ID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudDxUcnVHcmlkVmFsaWRhdGlvbkRpYWxvZz4oY29tcG9uZW50RmFjdG9yeSwgMCwgdGhpcy52aWV3Q29udGFpbmVyUmVmLmluamVjdG9yKTtcclxuICAgIGNvbXBvbmVudC5pbnN0YW5jZS5jb25maWcgPSBjb25maWc7XHJcbiAgICB0aGlzLmN1cnJlbnREaWFsb2cgPSBjb21wb25lbnQ7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZiA9IGNvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkU3ViUHJvcGVydHlWYWxpZGF0aW9uRGlhbG9nID0gKGNvbmZpZzogVHJ1VmFsaWRhdGlvbkRpYWxvZ0NvbmZpZykgPT4ge1xyXG4gICAgbGV0IGNvbXBvbmVudEZhY3RvcnkgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShUcnVWYWxpZGF0aW9uRGlhbG9nKTtcclxuICAgIGxldCBjb21wb25lbnQgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50PFRydVZhbGlkYXRpb25EaWFsb2c+KGNvbXBvbmVudEZhY3RvcnksIDAsIHRoaXMudmlld0NvbnRhaW5lclJlZi5pbmplY3Rvcik7XHJcbiAgICBjb21wb25lbnQuaW5zdGFuY2UuY29uZmlnID0gY29uZmlnO1xyXG4gICAgdGhpcy5jdXJyZW50RGlhbG9nID0gY29tcG9uZW50O1xyXG4gICAgdGhpcy5kaWFsb2dSZWYgPSBjb21wb25lbnQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlbW92ZVZhbGlkYXRpb25EaWFsb2cgPSAoKSA9PiB7XHJcbiAgICBpZiAodGhpcy5jdXJyZW50RGlhbG9nKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudERpYWxvZy5kZXN0cm95KCk7XHJcbiAgICAgIHRoaXMuY3VycmVudERpYWxvZyA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB2YWxFcnJzQ2hhbmdlZCA9ICh2YWxpZGF0aW9uT2JqZWN0OiBhbnkpID0+IHtcclxuICAgIGxldCB2YWxpZGF0aW9uT2JqZWN0RW50aXR5ID0gdmFsaWRhdGlvbk9iamVjdC5lbnRpdHlcclxuICAgIGxldCB2YWxpZGF0aW9uVGFibGVOYW1lID0gdmFsaWRhdGlvbk9iamVjdEVudGl0eS5jb25zdHJ1Y3Rvci5uYW1lO1xyXG5cclxuICAgIHR5cGUgRW50aXR5T2JqZWN0S2V5ID0ga2V5b2YgdHlwZW9mIHRoaXMuZW50aXR5O1xyXG4gICAgY29uc3QgZW50aXR5UGtleU5hbWUgPSB2YWxpZGF0aW9uVGFibGVOYW1lICsgJ1JlZicgYXMgRW50aXR5T2JqZWN0S2V5O1xyXG5cclxuICAgIHR5cGUgVmFsaWRhdGlvbk9iamVjdEVudGl0eU9iamVjdEtleSA9IGtleW9mIHR5cGVvZiB2YWxpZGF0aW9uT2JqZWN0RW50aXR5O1xyXG4gICAgY29uc3QgdmFsaWRhdGlvbk9iamVjdEVudGl0eXBrZXlOYW1lID0gdmFsaWRhdGlvblRhYmxlTmFtZSArICdSZWYnIGFzIFZhbGlkYXRpb25PYmplY3RFbnRpdHlPYmplY3RLZXk7XHJcblxyXG4gICAgbGV0IHByb3BlcnRpZXM6IEFycmF5PHN0cmluZz4gPSBbXTtcclxuICAgIHByb3BlcnRpZXMucHVzaCh0aGlzLmNvbmZpZy5wcm9wZXJ0eU5hbWU/LnNwbGl0KCcuJykuam9pbihcIlwiKSBhcyBzdHJpbmcpO1xyXG4gICAgbGV0IHN1YlByb3BlcnRpZXMgPSB0aGlzLmNvbmZpZy5zdWJQcm9wZXJ0aWVzO1xyXG4gICAgcHJvcGVydGllcyA9IHByb3BlcnRpZXMuY29uY2F0KHN1YlByb3BlcnRpZXMpO1xyXG4gICAgbGV0IGFkZGVkUHJvcGVydHlWYWxkYXRpb25zID0gdmFsaWRhdGlvbk9iamVjdC5hZGRlZC5maWx0ZXIoKHY6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4gcHJvcGVydGllcy5pbmNsdWRlcyh2LnByb3BlcnR5TmFtZSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICBsZXQgcmVtb3ZlZFByb3BlcnR5VmFsZGF0aW9ucyA9IHZhbGlkYXRpb25PYmplY3QucmVtb3ZlZC5maWx0ZXIoKHY6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4gcHJvcGVydGllcy5pbmNsdWRlcyh2LnByb3BlcnR5TmFtZSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLm1lcmdlRGF0YSA9IHRoaXMuZ2V0TWVyZ2VEYXRhKCk7XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmNvbmZpZy5yb290VGFibGUgPT09IHZhbGlkYXRpb25UYWJsZU5hbWUgJiZcclxuICAgICAgdGhpcy5lbnRpdHlbZW50aXR5UGtleU5hbWVdID09PSB2YWxpZGF0aW9uT2JqZWN0RW50aXR5W3ZhbGlkYXRpb25PYmplY3RFbnRpdHlwa2V5TmFtZV0gJiZcclxuICAgICAgKGFkZGVkUHJvcGVydHlWYWxkYXRpb25zLmxlbmd0aCB8fCB0aGlzLm1lcmdlRGF0YSkpIHtcclxuICAgICAgdGhpcy5yZW1vdmVWYWxpZGF0aW9uRGlhbG9nKCk7XHJcbiAgICAgIGlmICh0aGlzLmlzU3ViUHJvcGVydHkpIHtcclxuICAgICAgICB0aGlzLmFkZFN1YlByb3BlcnR5VmFsaWRhdGlvbkRpYWxvZyhuZXcgVHJ1VmFsaWRhdGlvbkRpYWxvZ0NvbmZpZyhcclxuICAgICAgICAgIHRoaXMuZW50aXR5LFxyXG4gICAgICAgICAgdGhpcy5jb25maWcucHJvcGVydHlOYW1lIGFzIHN0cmluZyxcclxuICAgICAgICAgIHRoaXMucGFyc2VFcnJvck1lc3NhZ2VzKGFkZGVkUHJvcGVydHlWYWxkYXRpb25zKSxcclxuICAgICAgICAgIHRoaXMubWVyZ2VEYXRhXHJcbiAgICAgICAgKSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5hZGRWYWxpZGF0aW9uRGlhbG9nKG5ldyBUcnVHcmlkVmFsaWRhdGlvbkRpYWxvZ0NvbmZpZyhcclxuICAgICAgICAgIHRoaXMuZW50aXR5LFxyXG4gICAgICAgICAgdGhpcy5jb25maWcucHJvcGVydHlOYW1lIGFzIHN0cmluZyxcclxuICAgICAgICAgIHRoaXMucGFyc2VFcnJvck1lc3NhZ2VzKGFkZGVkUHJvcGVydHlWYWxkYXRpb25zKSxcclxuICAgICAgICAgIHRoaXMubWVyZ2VEYXRhXHJcbiAgICAgICAgKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMuY29uZmlnLnJvb3RUYWJsZSA9PT0gdmFsaWRhdGlvblRhYmxlTmFtZSAmJlxyXG4gICAgICB0aGlzLmVudGl0eVtlbnRpdHlQa2V5TmFtZV0gPT09IHZhbGlkYXRpb25PYmplY3RFbnRpdHlbdmFsaWRhdGlvbk9iamVjdEVudGl0eXBrZXlOYW1lXSAmJlxyXG4gICAgICAocmVtb3ZlZFByb3BlcnR5VmFsZGF0aW9ucy5sZW5ndGgpKSB7XHJcbiAgICAgIHRoaXMucmVtb3ZlVmFsaWRhdGlvbkRpYWxvZygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7IH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzLnB1c2godGhpcy5kYXRhQ29udGV4dC52YWxpZGF0aW9uQ2hhbmdlRGV0ZWN0aW9uLnN1YnNjcmliZShlbnRpdGllcyA9PiB7XHJcbiAgICAgIHRoaXMudmFsRXJyc0NoYW5nZWQoZW50aXRpZXMpO1xyXG4gICAgfSkpO1xyXG4gICAgdGhpcy5lbnRpdHkuZW50aXR5QXNwZWN0LnZhbGlkYXRlRW50aXR5KCk7ICAgIFxyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgdGhpcy5lbnRpdHkuZW50aXR5QXNwZWN0LnZhbGlkYXRlRW50aXR5KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcbn1cclxuIl19
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWJyZWV6ZS1ncmlkLXZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvZGlyZWN0aXZlcy9icmVlemUtZ3JpZC12YWxpZGF0b3IvdHJ1LWJyZWV6ZS1ncmlkLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBDLFNBQVMsRUFBYyxLQUFLLEVBQXNELE1BQU0sZUFBZSxDQUFDO0FBVXpKLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9FQUFvRSxDQUFDO0FBRTdHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDOzs7QUFPL0YsTUFBTSxPQUFPLHNCQUFzQjtJQU92QjtJQUNBO0lBQ0E7SUFDQTtJQVR1QixNQUFNLENBQWlCO0lBQy9DLE1BQU0sQ0FBaUU7SUFDdkUsT0FBTyxDQUF1QjtJQUM5QixhQUFhLEdBQVksS0FBSyxDQUFDO0lBRXhDLFlBQ1UsRUFBYyxFQUNkLFdBQTJCLEVBQzNCLGdCQUFrQyxFQUNsQyx3QkFBa0Q7UUFIbEQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUMzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7SUFDNUQsQ0FBQztJQUVELFdBQVcsR0FBUSxFQUFFLENBQUM7SUFDdEIsU0FBUyxDQUFNO0lBRVAsU0FBUyxHQUE2QixJQUFJLENBQUM7SUFDM0MsSUFBSSxHQUF3QixFQUFFLENBQUM7SUFDL0IsYUFBYSxHQUFxRixJQUFJLENBQUE7SUFFdEcsWUFBWSxHQUFHLEdBQWdDLEVBQUU7UUFDdkQsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDM0MsSUFBSSxpQkFBaUIsR0FBRyxJ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QUVrQyxNQUFNO3NCQUF0QyxLQUFLO3VCQUFDLHdCQUF3QjtnQkFDdEIsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBDb21wb25lbnRSZWYsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEdyaWRBcGkgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvciB9IGZyb20gJ2JyZWV6ZS1jbGllbnQnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZm9yRWFjaCB9IGZyb20gJ3VuZGVyc2NvcmUnO1xyXG5pbXBvcnQgeyBUcnVFZGl0Q29udHJvbENvbmZpZ0Jhc2UgfSBmcm9tICcuLi8uLi9iYXNlLWNsYXNzZXMvdHJ1LWVkaXQtY29udHJvbC1jb25maWctYmFzZSc7XHJcbmltcG9ydCB7IFRydUVudGl0eUJhc2UgfSBmcm9tICcuLi8uLi9iYXNlLWNsYXNzZXMvdHJ1LWVudGl0eS1iYXNlJztcclxuaW1wb3J0IHsgVHJ1TGlzdENvbnRyb2xDb25maWdCYXNlIH0gZnJvbSAnLi4vLi4vYmFzZS1jbGFzc2VzL3RydS1saXN0LWNvbnRyb2wtY29uZmlnLWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVNZXJnZURhdGEgfSBmcm9tICcuLi8uLi9jbGFzc2VzL3RydS1tZXJnZS1kYXRhJztcclxuaW1wb3J0IHsgVHJ1TWVyZ2VEYXRhU2V0IH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy90cnUtbWVyZ2UtZGF0YS1zZXQnO1xyXG5pbXBvcnQgeyBUcnVHcmlkVmFsaWRhdGlvbkRpYWxvZyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZ3JpZC12YWxpZGF0aW9uLWRpYWxvZy90cnUtZ3JpZC12YWxpZGF0aW9uLWRpYWxvZyc7XHJcbmltcG9ydCB7IFRydUdyaWRWYWxpZGF0aW9uRGlhbG9nQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9ncmlkLXZhbGlkYXRpb24tZGlhbG9nL3RydS1ncmlkLXZhbGlkYXRpb24tZGlhbG9nLWNvbmZpZyc7XHJcbmltcG9ydCB7IFRydVZhbGlkYXRpb25EaWFsb2cgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3ZhbGlkYXRpb24tZGlhbG9nL3RydS12YWxpZGF0aW9uLWRpYWxvZyc7XHJcbmltcG9ydCB7IFRydVZhbGlkYXRpb25EaWFsb2dDb25maWcgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3ZhbGlkYXRpb24tZGlhbG9nL3RydS12YWxpZGF0aW9uLWRpYWxvZy1jb25maWcnO1xyXG5pbXBvcnQgeyBUcnVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RydS1kYXRhLWNvbnRleHQnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbdHJ1QnJlZXplR3JpZFZhbGlkYXRvcl0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUcnVCcmVlemVHcmlkVmFsaWRhdG9yIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgndHJ1QnJlZXplR3JpZFZhbGlkYXRvcicpIGVudGl0eSE6IFRydUVudGl0eUJhc2U7XHJcbiAgQElucHV0KCkgY29uZmlnITogVHJ1RWRpdENvbnRyb2xDb25maWdCYXNlPGFueT4gfCBUcnVMaXN0Q29udHJvbENvbmZpZ0Jhc2U8YW55PjtcclxuICBASW5wdXQoKSBncmlkQXBpITogR3JpZEFwaSB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBpc1N1YlByb3BlcnR5OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgZGF0YUNvbnRleHQ6IFRydURhdGFDb250ZXh0LFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcikge1xyXG4gIH1cclxuXHJcbiAgY29uZmlnTW9kZWw6IGFueSA9IHt9O1xyXG4gIG1lcmdlRGF0YTogYW55O1xyXG5cclxuICBwcml2YXRlIGRpYWxvZ1JlZjogQ29tcG9uZW50UmVmPGFueT4gfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIHN1YnM6IEFycmF5PFN1YnNjcmlwdGlvbj4gPSBbXTtcclxuICBwcml2YXRlIGN1cnJlbnREaWFsb2c6IENvbXBvbmVudFJlZjxUcnVHcmlkVmFsaWRhdGlvbkRpYWxvZz4gfCBDb21wb25lbnRSZWY8VHJ1VmFsaWRhdGlvbkRpYWxvZz4gfCBudWxsID0gbnVsbFxyXG5cclxuICBwcml2YXRlIGdldE1lcmdlRGF0YSA9ICgpOiBUcnVNZXJnZURhdGFTZXQgfCB1bmRlZmluZWQgPT4ge1xyXG4gICAgaWYgKHRoaXMuY29uZmlnLnByb3BlcnR5UGF0aD8uaW5jbHVkZXMoJy8nKSkge1xyXG4gICAgICBsZXQgcHJvcGVydHlOYW1lUGFydHMgPSB0aGlzLmNvbmZpZy5wcm9wZXJ0eVBhdGguc3BsaXQoJy8nKTtcclxuICAgICAgcHJvcGVydHlOYW1lUGFydHMucG9wKCk7XHJcbiAgICAgIGxldCB0YXJnZXRQcm9wZXJ0eTogYW55O1xyXG4gICAgICBwcm9wZXJ0eU5hbWVQYXJ0cy5mb3JFYWNoKChuYW1lKSA9PiB7XHJcbiAgICAgICAgaWYgKCF0YXJnZXRQcm9wZXJ0eSkge1xyXG4gICAgICAgICAgbGV0IHRhcmdldFByb3BlcnR5TmFtZSA9ICdvJyArIG5hbWUgYXMga2V5b2YgdHlwZW9mIHRoaXMuZW50aXR5O1xyXG4gICAgICAgICAgdGFyZ2V0UHJvcGVydHkgPSB0aGlzLmVudGl0eVt0YXJnZXRQcm9wZXJ0eU5hbWVdO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBsZXQgdGFyZ2V0UHJvcGVydHlOYW1lID0gJ28nICsgbmFtZSBhcyBrZXlvZiB0eXBlb2YgdGhpcy5lbnRpdHk7XHJcbiAgICAgICAgICB0YXJnZXRQcm9wZXJ0eSA9IHRhcmdldFByb3BlcnR5W3RhcmdldFByb3BlcnR5TmFtZV07XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgaWYgKHRhcmdldFByb3BlcnR5ICYmIHRhcmdldFByb3BlcnR5Lk1lcmdlX0RhdGEpIHtcclxuICAgICAgICByZXR1cm4gdGFyZ2V0UHJvcGVydHkuTWVyZ2VfRGF0YV9TZXQ7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmVudGl0eS5NZXJnZV9EYXRhX1NldD8uZ2V0KHRoaXMuY29uZmlnLnByb3BlcnR5TmFtZSBhcyBzdHJpbmcpID8gdGhpcy5lbnRpdHkuTWVyZ2VfRGF0YV9TZXQgOiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHBhcnNlRXJyb3JNZXNzYWdlcyA9ICh2YWxpZGF0aW9uRXJyb3JzOiBBcnJheTxWYWxpZGF0aW9uRXJyb3I+KTogc3RyaW5nID0+IHtcclxuICAgIGxldCBlcnJvck1zZzogc3RyaW5nID0gJyc7XHJcbiAgICB2YWxpZGF0aW9uRXJyb3JzLmZvckVhY2goKGVycm9yKSA9PiB7XHJcbiAgICAgIGVycm9yTXNnICs9IGVycm9yLmVycm9yTWVzc2FnZSArICc7ICc7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBlcnJvck1zZztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkVmFsaWRhdGlvbkRpYWxvZyA9IChjb25maWc6IFRydUdyaWRWYWxpZGF0aW9uRGlhbG9nQ29uZmlnKSA9PiB7XHJcbiAgICBsZXQgY29tcG9uZW50RmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFRydUdyaWRWYWxpZGF0aW9uRGlhbG9nKTtcclxuICAgIGxldCBjb21wb25lbnQgPSB0aGlzLnZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50PFRydUdyaWRWYWxpZGF0aW9uRGlhbG9nPihjb21wb25lbnRGYWN0b3J5LCAwLCB0aGlzLnZpZXdDb250YWluZXJSZWYuaW5qZWN0b3IpO1xyXG4gICAgY29tcG9uZW50Lmluc3RhbmNlLmNvbmZpZyA9IGNvbmZpZztcclxuICAgIHRoaXMuY3VycmVudERpYWxvZyA9IGNvbXBvbmVudDtcclxuICAgIHRoaXMuZGlhbG9nUmVmID0gY29tcG9uZW50O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhZGRTdWJQcm9wZXJ0eVZhbGlkYXRpb25EaWFsb2cgPSAoY29uZmlnOiBUcnVWYWxpZGF0aW9uRGlhbG9nQ29uZmlnKSA9PiB7XHJcbiAgICBsZXQgY29tcG9uZW50RmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFRydVZhbGlkYXRpb25EaWFsb2cpO1xyXG4gICAgbGV0IGNvbXBvbmVudCA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQ8VHJ1VmFsaWRhdGlvbkRpYWxvZz4oY29tcG9uZW50RmFjdG9yeSwgMCwgdGhpcy52aWV3Q29udGFpbmVyUmVmLmluamVjdG9yKTtcclxuICAgIGNvbXBvbmVudC5pbnN0YW5jZS5jb25maWcgPSBjb25maWc7XHJcbiAgICB0aGlzLmN1cnJlbnREaWFsb2cgPSBjb21wb25lbnQ7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZiA9IGNvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVtb3ZlVmFsaWRhdGlvbkRpYWxvZyA9ICgpID0+IHtcclxuICAgIGlmICh0aGlzLmN1cnJlbnREaWFsb2cpIHtcclxuICAgICAgdGhpcy5jdXJyZW50RGlhbG9nLmRlc3Ryb3koKTtcclxuICAgICAgdGhpcy5jdXJyZW50RGlhbG9nID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHZhbEVycnNDaGFuZ2VkID0gKHZhbGlkYXRpb25PYmplY3Q6IGFueSkgPT4ge1xyXG4gICAgbGV0IHZhbGlkYXRpb25PYmplY3RFbnRpdHkgPSB2YWxpZGF0aW9uT2JqZWN0LmVudGl0eVxyXG4gICAgbGV0IHZhbGlkYXRpb25UYWJsZU5hbWUgPSB2YWxpZGF0aW9uT2JqZWN0RW50aXR5LmNvbnN0cnVjdG9yLm5hbWU7XHJcblxyXG4gICAgdHlwZSBFbnRpdHlPYmplY3RLZXkgPSBrZXlvZiB0eXBlb2YgdGhpcy5lbnRpdHk7XHJcbiAgICBjb25zdCBlbnRpdHlQa2V5TmFtZSA9IHZhbGlkYXRpb25UYWJsZU5hbWUgKyAnUmVmJyBhcyBFbnRpdHlPYmplY3RLZXk7XHJcblxyXG4gICAgdHlwZSBWYWxpZGF0aW9uT2JqZWN0RW50aXR5T2JqZWN0S2V5ID0ga2V5b2YgdHlwZW9mIHZhbGlkYXRpb25PYmplY3RFbnRpdHk7XHJcbiAgICBjb25zdCB2YWxpZGF0aW9uT2JqZWN0RW50aXR5cGtleU5hbWUgPSB2YWxpZGF0aW9uVGFibGVOYW1lICsgJ1JlZicgYXMgVmFsaWRhdGlvbk9iamVjdEVudGl0eU9iamVjdEtleTtcclxuXHJcbiAgICBsZXQgcHJvcGVydGllczogQXJyYXk8c3RyaW5nPiA9IFtdO1xyXG4gICAgcHJvcGVydGllcy5wdXNoKHRoaXMuY29uZmlnLnByb3BlcnR5TmFtZT8uc3BsaXQoJy4nKS5qb2luKFwiXCIpIGFzIHN0cmluZyk7XHJcbiAgICBsZXQgc3ViUHJvcGVydGllcyA9IHRoaXMuY29uZmlnLnN1YlByb3BlcnRpZXM7XHJcbiAgICBwcm9wZXJ0aWVzID0gcHJvcGVydGllcy5jb25jYXQoc3ViUHJvcGVydGllcyk7XHJcbiAgICBsZXQgYWRkZWRQcm9wZXJ0eVZhbGRhdGlvbnMgPSB2YWxpZGF0aW9uT2JqZWN0LmFkZGVkLmZpbHRlcigodjogYW55KSA9PiB7XHJcbiAgICAgIHJldHVybiBwcm9wZXJ0aWVzLmluY2x1ZGVzKHYucHJvcGVydHlOYW1lKTtcclxuICAgIH0pO1xyXG5cclxuICAgIGxldCByZW1vdmVkUHJvcGVydHlWYWxkYXRpb25zID0gdmFsaWRhdGlvbk9iamVjdC5yZW1vdmVkLmZpbHRlcigodjogYW55KSA9PiB7XHJcbiAgICAgIHJldHVybiBwcm9wZXJ0aWVzLmluY2x1ZGVzKHYucHJvcGVydHlOYW1lKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMubWVyZ2VEYXRhID0gdGhpcy5nZXRNZXJnZURhdGEoKTtcclxuXHJcbiAgICAvL2lmIChcclxuICAgIC8vICB0aGlzLmNvbmZpZy5yb290VGFibGUgPT09IHZhbGlkYXRpb25UYWJsZU5hbWUgJiZcclxuICAgIC8vICB0aGlzLmVudGl0eVtlbnRpdHlQa2V5TmFtZV0gPT09IHZhbGlkYXRpb25PYmplY3RFbnRpdHlbdmFsaWRhdGlvbk9iamVjdEVudGl0eXBrZXlOYW1lXSAmJlxyXG4gICAgLy8gIChhZGRlZFByb3BlcnR5VmFsZGF0aW9ucy5sZW5ndGggfHwgdGhpcy5tZXJnZURhdGEpKSB7XHJcbiAgICAvLyAgdGhpcy5yZW1vdmVWYWxpZGF0aW9uRGlhbG9nKCk7XHJcbiAgICAvLyAgaWYgKHRoaXMuaXNTdWJQcm9wZXJ0eSkge1xyXG4gICAgLy8gICAgdGhpcy5hZGRTdWJQcm9wZXJ0eVZhbGlkYXRpb25EaWFsb2cobmV3IFRydVZhbGlkYXRpb25EaWFsb2dDb25maWcoXHJcbiAgICAvLyAgICAgIHRoaXMuZW50aXR5LFxyXG4gICAgLy8gICAgICB0aGlzLmNvbmZpZy5wcm9wZXJ0eU5hbWUgYXMgc3RyaW5nLFxyXG4gICAgLy8gICAgICB0aGlzLnBhcnNlRXJyb3JNZXNzYWdlcyhhZGRlZFByb3BlcnR5VmFsZGF0aW9ucyksXHJcbiAgICAvLyAgICAgIHRoaXMubWVyZ2VEYXRhXHJcbiAgICAvLyAgICApKTtcclxuICAgIC8vICB9IGVsc2Uge1xyXG4gICAgLy8gICAgdGhpcy5hZGRWYWxpZGF0aW9uRGlhbG9nKG5ldyBUcnVHcmlkVmFsaWRhdGlvbkRpYWxvZ0NvbmZpZyhcclxuICAgIC8vICAgICAgdGhpcy5lbnRpdHksXHJcbiAgICAvLyAgICAgIHRoaXMuY29uZmlnLnByb3BlcnR5TmFtZSBhcyBzdHJpbmcsXHJcbiAgICAvLyAgICAgIHRoaXMucGFyc2VFcnJvck1lc3NhZ2VzKGFkZGVkUHJvcGVydHlWYWxkYXRpb25zKSxcclxuICAgIC8vICAgICAgdGhpcy5tZXJnZURhdGFcclxuICAgIC8vICAgICkpO1xyXG4gICAgLy8gIH1cclxuICAgIC8vfVxyXG5cclxuICAgIGlmIChcclxuICAgICAgdGhpcy5jb25maWcucm9vdFRhYmxlID09PSB2YWxpZGF0aW9uVGFibGVOYW1lICYmXHJcbiAgICAgIHRoaXMuZW50aXR5W2VudGl0eVBrZXlOYW1lXSA9PT0gdmFsaWRhdGlvbk9iamVjdEVudGl0eVt2YWxpZGF0aW9uT2JqZWN0RW50aXR5cGtleU5hbWVdICYmXHJcbiAgICAgIChyZW1vdmVkUHJvcGVydHlWYWxkYXRpb25zLmxlbmd0aCkpIHtcclxuICAgICAgdGhpcy5yZW1vdmVWYWxpZGF0aW9uRGlhbG9nKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHsgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnMucHVzaCh0aGlzLmRhdGFDb250ZXh0LnZhbGlkYXRpb25DaGFuZ2VEZXRlY3Rpb24uc3Vic2NyaWJlKGVudGl0aWVzID0+IHtcclxuICAgICAgdGhpcy52YWxFcnJzQ2hhbmdlZChlbnRpdGllcyk7XHJcbiAgICB9KSk7XHJcbiAgICB0aGlzLmVudGl0eS5lbnRpdHlBc3BlY3QudmFsaWRhdGVFbnRpdHkoKTsgICAgXHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICB0aGlzLmVudGl0eS5lbnRpdHlBc3BlY3QudmFsaWRhdGVFbnRpdHkoKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Directive, Input } from '@angular/core';
|
|
2
2
|
import { TruValidationDialog } from '../../components/validation-dialog/tru-validation-dialog';
|
|
3
|
-
import { TruValidationDialogConfig } from '../../components/validation-dialog/tru-validation-dialog-config';
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
4
|
import * as i1 from "../../services/tru-data-context";
|
|
6
5
|
export class TruBreezeValidator {
|
|
@@ -8,7 +7,6 @@ export class TruBreezeValidator {
|
|
|
8
7
|
dataContext;
|
|
9
8
|
viewContainerRef;
|
|
10
9
|
componentFactoryResolver;
|
|
11
|
-
entity;
|
|
12
10
|
config;
|
|
13
11
|
constructor(el, dataContext, viewContainerRef, componentFactoryResolver) {
|
|
14
12
|
this.el = el;
|
|
@@ -22,14 +20,14 @@ export class TruBreezeValidator {
|
|
|
22
20
|
subs = [];
|
|
23
21
|
currentDialog = null;
|
|
24
22
|
getMergeData = () => {
|
|
25
|
-
if (this.config.propertyPath?.includes('/')) {
|
|
26
|
-
let propertyNameParts = this.config.propertyPath.split('/');
|
|
23
|
+
if (this.config.propertyConfig.propertyPath?.includes('/')) {
|
|
24
|
+
let propertyNameParts = this.config.propertyConfig.propertyPath.split('/');
|
|
27
25
|
propertyNameParts.pop();
|
|
28
26
|
let targetProperty;
|
|
29
27
|
propertyNameParts.forEach((name) => {
|
|
30
28
|
if (!targetProperty) {
|
|
31
29
|
let targetPropertyName = 'o' + name;
|
|
32
|
-
targetProperty = this.entity[targetPropertyName];
|
|
30
|
+
targetProperty = this.config.entity[targetPropertyName];
|
|
33
31
|
}
|
|
34
32
|
else {
|
|
35
33
|
let targetPropertyName = 'o' + name;
|
|
@@ -42,7 +40,7 @@ export class TruBreezeValidator {
|
|
|
42
40
|
return undefined;
|
|
43
41
|
}
|
|
44
42
|
else {
|
|
45
|
-
return this.entity.Merge_Data_Set?.get(this.config.propertyName) ? this.entity.Merge_Data_Set : undefined;
|
|
43
|
+
return this.config.entity.Merge_Data_Set?.get(this.config.propertyName) ? this.config.entity.Merge_Data_Set : undefined;
|
|
46
44
|
}
|
|
47
45
|
};
|
|
48
46
|
parseErrorMessages = (validationErrors) => {
|
|
@@ -77,14 +75,17 @@ export class TruBreezeValidator {
|
|
|
77
75
|
return v.propertyName === this.config.propertyName;
|
|
78
76
|
});
|
|
79
77
|
this.mergeData = this.getMergeData();
|
|
80
|
-
if (this.config.rootTable === validationTableName &&
|
|
81
|
-
this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
78
|
+
if (this.config.propertyConfig.rootTable === validationTableName &&
|
|
79
|
+
this.config.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
82
80
|
(addedPropertyValdations.length || this.mergeData)) {
|
|
83
81
|
this.removeValidationDialog();
|
|
84
|
-
this.
|
|
82
|
+
this.config.propertyName = this.config.propertyConfig.propertyName;
|
|
83
|
+
this.config.mergeData = this.mergeData;
|
|
84
|
+
this.config.errorMsg = this.parseErrorMessages(addedPropertyValdations);
|
|
85
|
+
this.addValidationDialog(this.config);
|
|
85
86
|
}
|
|
86
|
-
if (this.config.rootTable === validationTableName &&
|
|
87
|
-
this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
87
|
+
if (this.config.propertyConfig.rootTable === validationTableName &&
|
|
88
|
+
this.config.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
88
89
|
(removedPropertyValdations.length)) {
|
|
89
90
|
this.removeValidationDialog();
|
|
90
91
|
}
|
|
@@ -98,24 +99,22 @@ export class TruBreezeValidator {
|
|
|
98
99
|
ngOnChanges(changes) {
|
|
99
100
|
if (!changes.entity.firstChange) {
|
|
100
101
|
this.removeValidationDialog();
|
|
101
|
-
this.entity.entityAspect.validateEntity();
|
|
102
|
+
this.config.entity.entityAspect.validateEntity();
|
|
102
103
|
}
|
|
103
104
|
}
|
|
104
105
|
ngOnDestroy() {
|
|
105
106
|
this.subs.forEach(s => s.unsubscribe());
|
|
106
107
|
}
|
|
107
108
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruBreezeValidator, deps: [{ token: i0.ElementRef }, { token: i1.TruDataContext }, { token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive });
|
|
108
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: TruBreezeValidator, selector: "[truBreezeValidator]", inputs: {
|
|
109
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: TruBreezeValidator, selector: "[truBreezeValidator]", inputs: { config: ["truBreezeValidator", "config"] }, usesOnChanges: true, ngImport: i0 });
|
|
109
110
|
}
|
|
110
111
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruBreezeValidator, decorators: [{
|
|
111
112
|
type: Directive,
|
|
112
113
|
args: [{
|
|
113
114
|
selector: '[truBreezeValidator]'
|
|
114
115
|
}]
|
|
115
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.TruDataContext }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }], propDecorators: {
|
|
116
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.TruDataContext }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }], propDecorators: { config: [{
|
|
116
117
|
type: Input,
|
|
117
118
|
args: ['truBreezeValidator']
|
|
118
|
-
}], config: [{
|
|
119
|
-
type: Input
|
|
120
119
|
}] } });
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWJyZWV6ZS12YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2RpcmVjdGl2ZXMvYnJlZXplLXZhbGlkYXRvci90cnUtYnJlZXplLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBDLFNBQVMsRUFBYyxLQUFLLEVBQXNELE1BQU0sZUFBZSxDQUFDO0FBUXpKLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlFQUFpRSxDQUFDOzs7QUFNNUcsTUFBTSxPQUFPLGtCQUFrQjtJQUtuQjtJQUNBO0lBQ0E7SUFDQTtJQVBtQixNQUFNLENBQWlCO0lBQzNDLE1BQU0sQ0FBaUM7SUFFaEQsWUFDVSxFQUFjLEVBQ2QsV0FBMkIsRUFDM0IsZ0JBQWtDLEVBQ2xDLHdCQUFrRDtRQUhsRCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQzNCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtJQUM1RCxDQUFDO0lBRUQsV0FBVyxHQUFRLEVBQUUsQ0FBQztJQUN0QixTQUFTLENBQU07SUFFUCxTQUFTLEdBQTZCLElBQUksQ0FBQztJQUMzQyxJQUFJLEdBQXdCLEVBQUUsQ0FBQztJQUMvQixhQUFhLEdBQTZDLElBQUksQ0FBQTtJQUU5RCxZQUFZLEdBQUcsR0FBZ0MsRUFBRTtRQUN2RCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUMzQyxJQUFJLGlCQUFpQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM1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UUFDaEMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFO1lBQy9CLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQzNDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7dUdBMUhVLGtCQUFrQjsyRkFBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUg5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7aUJBQ2pDO2tMQUU4QixNQUFNO3NCQUFsQyxLQUFLO3VCQUFDLG9CQUFvQjtnQkFDbEIsTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBDb21wb25lbnRSZWYsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvciB9IGZyb20gJ2JyZWV6ZS1jbGllbnQnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZm9yRWFjaCB9IGZyb20gJ3VuZGVyc2NvcmUnO1xyXG5pbXBvcnQgeyBUcnVFZGl0Q29udHJvbENvbmZpZ0Jhc2UgfSBmcm9tICcuLi8uLi9iYXNlLWNsYXNzZXMvdHJ1LWVkaXQtY29udHJvbC1jb25maWctYmFzZSc7XHJcbmltcG9ydCB7IFRydUVudGl0eUJhc2UgfSBmcm9tICcuLi8uLi9iYXNlLWNsYXNzZXMvdHJ1LWVudGl0eS1iYXNlJztcclxuaW1wb3J0IHsgVHJ1TWVyZ2VEYXRhIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy90cnUtbWVyZ2UtZGF0YSc7XHJcbmltcG9ydCB7IFRydU1lcmdlRGF0YVNldCB9IGZyb20gJy4uLy4uL2NsYXNzZXMvdHJ1LW1lcmdlLWRhdGEtc2V0JztcclxuaW1wb3J0IHsgVHJ1VmFsaWRhdGlvbkRpYWxvZyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvdmFsaWRhdGlvbi1kaWFsb2cvdHJ1LXZhbGlkYXRpb24tZGlhbG9nJztcclxuaW1wb3J0IHsgVHJ1VmFsaWRhdGlvbkRpYWxvZ0NvbmZpZyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvdmFsaWRhdGlvbi1kaWFsb2cvdHJ1LXZhbGlkYXRpb24tZGlhbG9nLWNvbmZpZyc7XHJcbmltcG9ydCB7IFRydURhdGFDb250ZXh0IH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdHJ1LWRhdGEtY29udGV4dCc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1t0cnVCcmVlemVWYWxpZGF0b3JdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJ1QnJlZXplVmFsaWRhdG9yIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgndHJ1QnJlZXplVmFsaWRhdG9yJykgZW50aXR5ITogVHJ1RW50aXR5QmFzZTtcclxuICBASW5wdXQoKSBjb25maWchOiBUcnVFZGl0Q29udHJvbENvbmZpZ0Jhc2U8YW55PjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSBkYXRhQ29udGV4dDogVHJ1RGF0YUNvbnRleHQsXHJcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgICBwcml2YXRlIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XHJcbiAgfVxyXG5cclxuICBjb25maWdNb2RlbDogYW55ID0ge307XHJcbiAgbWVyZ2VEYXRhOiBhbnk7XHJcblxyXG4gIHByaXZhdGUgZGlhbG9nUmVmOiBDb21wb25lbnRSZWY8YW55PiB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgc3ViczogQXJyYXk8U3Vic2NyaXB0aW9uPiA9IFtdO1xyXG4gIHByaXZhdGUgY3VycmVudERpYWxvZzogQ29tcG9uZW50UmVmPFRydVZhbGlkYXRpb25EaWFsb2c+IHwgbnVsbCA9IG51bGxcclxuXHJcbiAgcHJpdmF0ZSBnZXRNZXJnZURhdGEgPSAoKTogVHJ1TWVyZ2VEYXRhU2V0IHwgdW5kZWZpbmVkID0+IHtcclxuICAgIGlmICh0aGlzLmNvbmZpZy5wcm9wZXJ0eVBhdGg/LmluY2x1ZGVzKCcvJykpIHtcclxuICAgICAgbGV0IHByb3BlcnR5TmFtZVBhcnRzID0gdGhpcy5jb25maWcucHJvcGVydHlQYXRoLnNwbGl0KCcvJyk7XHJcbiAgICAgIHByb3BlcnR5TmFtZVBhcnRzLnBvcCgpO1xyXG4gICAgICBsZXQgdGFyZ2V0UHJvcGVydHk6IGFueTtcclxuICAgICAgcHJvcGVydHlOYW1lUGFydHMuZm9yRWFjaCgobmFtZSkgPT4ge1xyXG4gICAgICAgIGlmICghdGFyZ2V0UHJvcGVydHkpIHtcclxuICAgICAgICAgIGxldCB0YXJnZXRQcm9wZXJ0eU5hbWUgPSAnbycgKyBuYW1lIGFzIGtleW9mIHR5cGVvZiB0aGlzLmVudGl0eTtcclxuICAgICAgICAgIHRhcmdldFByb3BlcnR5ID0gdGhpcy5lbnRpdHlbdGFyZ2V0UHJvcGVydHlOYW1lXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgbGV0IHRhcmdldFByb3BlcnR5TmFtZSA9ICdvJyArIG5hbWUgYXMga2V5b2YgdHlwZW9mIHRoaXMuZW50aXR5O1xyXG4gICAgICAgICAgdGFyZ2V0UHJvcGVydHkgPSB0YXJnZXRQcm9wZXJ0eVt0YXJnZXRQcm9wZXJ0eU5hbWVdO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIGlmICh0YXJnZXRQcm9wZXJ0eSAmJiB0YXJnZXRQcm9wZXJ0eS5NZXJnZV9EYXRhKSB7XHJcbiAgICAgICAgcmV0dXJuIHRhcmdldFByb3BlcnR5Lk1lcmdlX0RhdGFfU2V0O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5lbnRpdHkuTWVyZ2VfRGF0YV9TZXQ/LmdldCh0aGlzLmNvbmZpZy5wcm9wZXJ0eU5hbWUgYXMgc3RyaW5nKSA/IHRoaXMuZW50aXR5Lk1lcmdlX0RhdGFfU2V0IDogdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwYXJzZUVycm9yTWVzc2FnZXMgPSAodmFsaWRhdGlvbkVycm9yczogQXJyYXk8VmFsaWRhdGlvbkVycm9yPik6IHN0cmluZyA9PiB7XHJcbiAgICBsZXQgZXJyb3JNc2c6IHN0cmluZyA9ICcnO1xyXG4gICAgdmFsaWRhdGlvbkVycm9ycy5mb3JFYWNoKChlcnJvcikgPT4ge1xyXG4gICAgICBlcnJvck1zZyArPSBlcnJvci5lcnJvck1lc3NhZ2UgKyAnOyAnO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZXJyb3JNc2c7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZFZhbGlkYXRpb25EaWFsb2cgPSAoY29uZmlnOiBUcnVWYWxpZGF0aW9uRGlhbG9nQ29uZmlnKSA9PiB7XHJcbiAgICBsZXQgY29tcG9uZW50RmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFRydVZhbGlkYXRpb25EaWFsb2cpO1xyXG4gICAgbGV0IGNvbXBvbmVudCA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQ8VHJ1VmFsaWRhdGlvbkRpYWxvZz4oY29tcG9uZW50RmFjdG9yeSwgMCwgdGhpcy52aWV3Q29udGFpbmVyUmVmLmluamVjdG9yKTtcclxuICAgIGNvbXBvbmVudC5pbnN0YW5jZS5jb25maWcgPSBjb25maWc7XHJcbiAgICB0aGlzLmN1cnJlbnREaWFsb2cgPSBjb21wb25lbnQ7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZiA9IGNvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVtb3ZlVmFsaWRhdGlvbkRpYWxvZyA9ICgpID0+IHtcclxuICAgIGlmICh0aGlzLmN1cnJlbnREaWFsb2cpIHtcclxuICAgICAgdGhpcy5jdXJyZW50RGlhbG9nLmRlc3Ryb3koKTtcclxuICAgICAgdGhpcy5jdXJyZW50RGlhbG9nID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHZhbEVycnNDaGFuZ2VkID0gKHZhbGlkYXRpb25PYmplY3Q6IGFueSkgPT4ge1xyXG4gICAgbGV0IHZhbGlkYXRpb25PYmplY3RFbnRpdHkgPSB2YWxpZGF0aW9uT2JqZWN0LmVudGl0eVxyXG4gICAgbGV0IHZhbGlkYXRpb25UYWJsZU5hbWUgPSB2YWxpZGF0aW9uT2JqZWN0RW50aXR5LmNvbnN0cnVjdG9yLm5hbWU7XHJcblxyXG4gICAgdHlwZSBFbnRpdHlPYmplY3RLZXkgPSBrZXlvZiB0eXBlb2YgdGhpcy5lbnRpdHk7XHJcbiAgICBjb25zdCBlbnRpdHlQa2V5TmFtZSA9IHZhbGlkYXRpb25UYWJsZU5hbWUgKyAnUmVmJyBhcyBFbnRpdHlPYmplY3RLZXk7XHJcblxyXG4gICAgdHlwZSBWYWxpZGF0aW9uT2JqZWN0RW50aXR5T2JqZWN0S2V5ID0ga2V5b2YgdHlwZW9mIHZhbGlkYXRpb25PYmplY3RFbnRpdHk7XHJcbiAgICBjb25zdCB2YWxpZGF0aW9uT2JqZWN0RW50aXR5cGtleU5hbWUgPSB2YWxpZGF0aW9uVGFibGVOYW1lICsgJ1JlZicgYXMgVmFsaWRhdGlvbk9iamVjdEVudGl0eU9iamVjdEtleTtcclxuXHJcbiAgICBsZXQgYWRkZWRQcm9wZXJ0eVZhbGRhdGlvbnMgPSB2YWxpZGF0aW9uT2JqZWN0LmFkZGVkLmZpbHRlcigodjogYW55KSA9PiB7XHJcbiAgICAgIHJldHVybiB2LnByb3BlcnR5TmFtZSA9PT0gdGhpcy5jb25maWcucHJvcGVydHlOYW1lXHJcbiAgICB9KTtcclxuXHJcbiAgICBsZXQgcmVtb3ZlZFByb3BlcnR5VmFsZGF0aW9ucyA9IHZhbGlkYXRpb25PYmplY3QucmVtb3ZlZC5maWx0ZXIoKHY6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4gdi5wcm9wZXJ0eU5hbWUgPT09IHRoaXMuY29uZmlnLnByb3BlcnR5TmFtZVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5tZXJnZURhdGEgPSB0aGlzLmdldE1lcmdlRGF0YSgpO1xyXG5cclxuICAgIGlmIChcclxuICAgICAgdGhpcy5jb25maWcucm9vdFRhYmxlID09PSB2YWxpZGF0aW9uVGFibGVOYW1lICYmXHJcbiAgICAgIHRoaXMuZW50aXR5W2VudGl0eVBrZXlOYW1lXSA9PT0gdmFsaWRhdGlvbk9iamVjdEVudGl0eVt2YWxpZGF0aW9uT2JqZWN0RW50aXR5cGtleU5hbWVdICYmXHJcbiAgICAgIChhZGRlZFByb3BlcnR5VmFsZGF0aW9ucy5sZW5ndGggfHwgdGhpcy5tZXJnZURhdGEpKSB7XHJcbiAgICAgIHRoaXMucmVtb3ZlVmFsaWRhdGlvbkRpYWxvZygpO1xyXG4gICAgICB0aGlzLmFkZFZhbGlkYXRpb25EaWFsb2cobmV3IFRydVZhbGlkYXRpb25EaWFsb2dDb25maWcoXHJcbiAgICAgICAgdGhpcy5lbnRpdHksXHJcbiAgICAgICAgdGhpcy5jb25maWcucHJvcGVydHlOYW1lIGFzIHN0cmluZyxcclxuICAgICAgICB0aGlzLnBhcnNlRXJyb3JNZXNzYWdlcyhhZGRlZFByb3BlcnR5VmFsZGF0aW9ucyksXHJcbiAgICAgICAgdGhpcy5tZXJnZURhdGFcclxuICAgICAgKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmNvbmZpZy5yb290VGFibGUgPT09IHZhbGlkYXRpb25UYWJsZU5hbWUgJiZcclxuICAgICAgdGhpcy5lbnRpdHlbZW50aXR5UGtleU5hbWVdID09PSB2YWxpZGF0aW9uT2JqZWN0RW50aXR5W3ZhbGlkYXRpb25PYmplY3RFbnRpdHlwa2V5TmFtZV0gJiZcclxuICAgICAgKHJlbW92ZWRQcm9wZXJ0eVZhbGRhdGlvbnMubGVuZ3RoKSkge1xyXG4gICAgICB0aGlzLnJlbW92ZVZhbGlkYXRpb25EaWFsb2coKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQgeyB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vicy5wdXNoKHRoaXMuZGF0YUNvbnRleHQudmFsaWRhdGlvbkNoYW5nZURldGVjdGlvbi5zdWJzY3JpYmUoZW50aXRpZXMgPT4ge1xyXG4gICAgICB0aGlzLnZhbEVycnNDaGFuZ2VkKGVudGl0aWVzKTtcclxuICAgIH0pKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICghY2hhbmdlcy5lbnRpdHkuZmlyc3RDaGFuZ2UpIHtcclxuICAgICAgdGhpcy5yZW1vdmVWYWxpZGF0aW9uRGlhbG9nKCk7XHJcbiAgICAgIHRoaXMuZW50aXR5LmVudGl0eUFzcGVjdC52YWxpZGF0ZUVudGl0eSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnN1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWJyZWV6ZS12YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2RpcmVjdGl2ZXMvYnJlZXplLXZhbGlkYXRvci90cnUtYnJlZXplLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBDLFNBQVMsRUFBYyxLQUFLLEVBQXNELE1BQU0sZUFBZSxDQUFDO0FBUXpKLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDOzs7QUFPL0YsTUFBTSxPQUFPLGtCQUFrQjtJQUluQjtJQUNBO0lBQ0E7SUFDQTtJQU5tQixNQUFNLENBQTZCO0lBRWhFLFlBQ1UsRUFBYyxFQUNkLFdBQTJCLEVBQzNCLGdCQUFrQyxFQUNsQyx3QkFBa0Q7UUFIbEQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUMzQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7SUFDNUQsQ0FBQztJQUVELFdBQVcsR0FBUSxFQUFFLENBQUM7SUFDdEIsU0FBUyxDQUFNO0lBRVAsU0FBUyxHQUE2QixJQUFJLENBQUM7SUFDM0MsSUFBSSxHQUF3QixFQUFFLENBQUM7SUFDL0IsYUFBYSxHQUE2QyxJQUFJLENBQUE7SUFFOUQsWUFBWSxHQUFHLEdBQWdDLEVBQUU7UUFDdkQsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzFELElBQUksaUJBQWlCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMzRSxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUN4QixJQUFJLGNBQW1CLENBQUM7WUFDeEIsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxjQUFjLEVBQUU7b0JBQ25CLElBQUksa0JBQWtCLEdBQUcsR0FBRyxHQUFHLElBQXVDLENBQUM7b0JBQ3ZFLGNBQWMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO2lCQUN6RDtxQkFBTTtvQkFDTCxJQUFJLGtCQUFrQixHQUFHLEdBQUcsR0FBRyxJQUF1QyxDQUFDO29CQUN2RSxjQUFjLEdBQUcsY0FBYyxDQUFDLGtCQUFrQixDQUFDLENBQUM7aUJBQ3JEO1lBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLGNBQWMsSUFBSSxjQUFjLENBQUMsVUFBVSxFQUFFO2dCQUMvQyxPQUFPLGNBQWMsQ0FBQyxjQUFjLENBQUM7YUFDdEM7WUFDRCxPQUFPLFNBQVMsQ0FBQztTQUNsQjthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztTQUNuSTtJQUNILENBQUMsQ0FBQTtJQUVPLGtCQUFrQixHQUFHLENBQUMsZ0JBQXdDLEVBQVUsRUFBRTtRQUNoRixJQUFJLFFBQVEsR0FBVyxFQUFFLENBQUM7UUFDMUIsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakMsUUFBUSxJQUFJLEtBQUssQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQyxDQUFBO0lBRU8sbUJBQW1CLEdBQUcsQ0FBQyxNQUFpQyxFQUFFLEVBQUU7UUFDbEUsSUFBSSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNsRyxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFzQixnQkFBZ0IsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hJLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNuQyxJQUFJLENBQUMsYUFBYSxHQUFHLFNBQVMsQ0FBQztRQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUM3QixDQUFDLENBQUE7SUFFTyxzQkFBc0IsR0FBRyxHQUFHLEVBQUU7UUFDcEMsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7U0FDM0I7SUFDSCxDQUFDLENBQUE7SUFFRCxjQUFjLEdBQUcsQ0FBQyxnQkFBcUIsRUFBRSxFQUFFO1FBQ3pDLElBQUksc0JBQXNCLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFBO1FBQ3BELElBQUksbUJBQW1CLEdBQUcsc0JBQXNCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztRQUdsRSxNQUFNLGNBQWMsR0FBRyxtQkFBbUIsR0FBRyxLQUF3QixDQUFDO1FBR3RFLE1BQU0sOEJBQThCLEdBQUcsbUJBQW1CLEdBQUcsS0FBd0MsQ0FBQztRQUV0RyxJQUFJLHVCQUF1QixHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRTtZQUNyRSxPQUFPLENBQUMsQ0FBQyxZQUFZLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUE7UUFDcEQsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLHlCQUF5QixHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRTtZQUN6RSxPQUFPLENBQUMsQ0FBQyxZQUFZLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUE7UUFDcEQsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVyQyxJQUNFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLFNBQVMsS0FBSyxtQkFBbUI7WUFDNUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQUssc0JBQXNCLENBQUMsOEJBQThCLENBQUM7WUFDN0YsQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3BELElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLFlBQXNCLENBQUM7WUFDN0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUN2QyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsdUJBQXVCLENBQUMsQ0FBQztZQUN4RSxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3ZDO1FBRUQsSUFDRSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEtBQUssbUJBQW1CO1lBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFLLHNCQUFzQixDQUFDLDhCQUE4QixDQUFDO1lBQzdGLENBQUMseUJBQXlCLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDcEMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7U0FDL0I7SUFDSCxDQUFDLENBQUE7SUFFRCxRQUFRLEtBQVcsQ0FBQztJQUVwQixlQUFlO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDN0UsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUU7WUFDL0IsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ2xEO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7dUdBdkhVLGtCQUFrQjsyRkFBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUg5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7aUJBQ2pDO2tMQUU4QixNQUFNO3NCQUFsQyxLQUFLO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgQ29tcG9uZW50UmVmLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcywgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3IgfSBmcm9tICdicmVlemUtY2xpZW50JztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZvckVhY2ggfSBmcm9tICd1bmRlcnNjb3JlJztcclxuaW1wb3J0IHsgVHJ1RWRpdENvbnRyb2xDb25maWdCYXNlIH0gZnJvbSAnLi4vLi4vYmFzZS1jbGFzc2VzL3RydS1lZGl0LWNvbnRyb2wtY29uZmlnLWJhc2UnO1xyXG5pbXBvcnQgeyBUcnVFbnRpdHlCYXNlIH0gZnJvbSAnLi4vLi4vYmFzZS1jbGFzc2VzL3RydS1lbnRpdHktYmFzZSc7XHJcbmltcG9ydCB7IFRydU1lcmdlRGF0YSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvdHJ1LW1lcmdlLWRhdGEnO1xyXG5pbXBvcnQgeyBUcnVNZXJnZURhdGFTZXQgfSBmcm9tICcuLi8uLi9jbGFzc2VzL3RydS1tZXJnZS1kYXRhLXNldCc7XHJcbmltcG9ydCB7IFRydVZhbGlkYXRpb25EaWFsb2cgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3ZhbGlkYXRpb24tZGlhbG9nL3RydS12YWxpZGF0aW9uLWRpYWxvZyc7XHJcbmltcG9ydCB7IFRydVZhbGlkYXRpb25EaWFsb2dDb25maWcgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL3ZhbGlkYXRpb24tZGlhbG9nL3RydS12YWxpZGF0aW9uLWRpYWxvZy1jb25maWcnO1xyXG5pbXBvcnQgeyBUcnVEYXRhQ29udGV4dCB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RydS1kYXRhLWNvbnRleHQnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbdHJ1QnJlZXplVmFsaWRhdG9yXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRydUJyZWV6ZVZhbGlkYXRvciBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoJ3RydUJyZWV6ZVZhbGlkYXRvcicpIGNvbmZpZyE6IFRydVZhbGlkYXRpb25EaWFsb2dDb25maWc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgZGF0YUNvbnRleHQ6IFRydURhdGFDb250ZXh0LFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcikge1xyXG4gIH1cclxuXHJcbiAgY29uZmlnTW9kZWw6IGFueSA9IHt9O1xyXG4gIG1lcmdlRGF0YTogYW55O1xyXG5cclxuICBwcml2YXRlIGRpYWxvZ1JlZjogQ29tcG9uZW50UmVmPGFueT4gfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIHN1YnM6IEFycmF5PFN1YnNjcmlwdGlvbj4gPSBbXTtcclxuICBwcml2YXRlIGN1cnJlbnREaWFsb2c6IENvbXBvbmVudFJlZjxUcnVWYWxpZGF0aW9uRGlhbG9nPiB8IG51bGwgPSBudWxsXHJcblxyXG4gIHByaXZhdGUgZ2V0TWVyZ2VEYXRhID0gKCk6IFRydU1lcmdlRGF0YVNldCB8IHVuZGVmaW5lZCA9PiB7XHJcbiAgICBpZiAodGhpcy5jb25maWcucHJvcGVydHlDb25maWcucHJvcGVydHlQYXRoPy5pbmNsdWRlcygnLycpKSB7XHJcbiAgICAgIGxldCBwcm9wZXJ0eU5hbWVQYXJ0cyA9IHRoaXMuY29uZmlnLnByb3BlcnR5Q29uZmlnLnByb3BlcnR5UGF0aC5zcGxpdCgnLycpO1xyXG4gICAgICBwcm9wZXJ0eU5hbWVQYXJ0cy5wb3AoKTtcclxuICAgICAgbGV0IHRhcmdldFByb3BlcnR5OiBhbnk7XHJcbiAgICAgIHByb3BlcnR5TmFtZVBhcnRzLmZvckVhY2goKG5hbWUpID0+IHtcclxuICAgICAgICBpZiAoIXRhcmdldFByb3BlcnR5KSB7XHJcbiAgICAgICAgICBsZXQgdGFyZ2V0UHJvcGVydHlOYW1lID0gJ28nICsgbmFtZSBhcyBrZXlvZiB0eXBlb2YgdGhpcy5jb25maWcuZW50aXR5O1xyXG4gICAgICAgICAgdGFyZ2V0UHJvcGVydHkgPSB0aGlzLmNvbmZpZy5lbnRpdHlbdGFyZ2V0UHJvcGVydHlOYW1lXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgbGV0IHRhcmdldFByb3BlcnR5TmFtZSA9ICdvJyArIG5hbWUgYXMga2V5b2YgdHlwZW9mIHRoaXMuY29uZmlnLmVudGl0eTtcclxuICAgICAgICAgIHRhcmdldFByb3BlcnR5ID0gdGFyZ2V0UHJvcGVydHlbdGFyZ2V0UHJvcGVydHlOYW1lXTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAodGFyZ2V0UHJvcGVydHkgJiYgdGFyZ2V0UHJvcGVydHkuTWVyZ2VfRGF0YSkge1xyXG4gICAgICAgIHJldHVybiB0YXJnZXRQcm9wZXJ0eS5NZXJnZV9EYXRhX1NldDtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29uZmlnLmVudGl0eS5NZXJnZV9EYXRhX1NldD8uZ2V0KHRoaXMuY29uZmlnLnByb3BlcnR5TmFtZSBhcyBzdHJpbmcpID8gdGhpcy5jb25maWcuZW50aXR5Lk1lcmdlX0RhdGFfU2V0IDogdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwYXJzZUVycm9yTWVzc2FnZXMgPSAodmFsaWRhdGlvbkVycm9yczogQXJyYXk8VmFsaWRhdGlvbkVycm9yPik6IHN0cmluZyA9PiB7XHJcbiAgICBsZXQgZXJyb3JNc2c6IHN0cmluZyA9ICcnO1xyXG4gICAgdmFsaWRhdGlvbkVycm9ycy5mb3JFYWNoKChlcnJvcikgPT4ge1xyXG4gICAgICBlcnJvck1zZyArPSBlcnJvci5lcnJvck1lc3NhZ2UgKyAnOyAnO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZXJyb3JNc2c7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZFZhbGlkYXRpb25EaWFsb2cgPSAoY29uZmlnOiBUcnVWYWxpZGF0aW9uRGlhbG9nQ29uZmlnKSA9PiB7XHJcbiAgICBsZXQgY29tcG9uZW50RmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KFRydVZhbGlkYXRpb25EaWFsb2cpO1xyXG4gICAgbGV0IGNvbXBvbmVudCA9IHRoaXMudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQ8VHJ1VmFsaWRhdGlvbkRpYWxvZz4oY29tcG9uZW50RmFjdG9yeSwgMCwgdGhpcy52aWV3Q29udGFpbmVyUmVmLmluamVjdG9yKTtcclxuICAgIGNvbXBvbmVudC5pbnN0YW5jZS5jb25maWcgPSBjb25maWc7XHJcbiAgICB0aGlzLmN1cnJlbnREaWFsb2cgPSBjb21wb25lbnQ7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZiA9IGNvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVtb3ZlVmFsaWRhdGlvbkRpYWxvZyA9ICgpID0+IHtcclxuICAgIGlmICh0aGlzLmN1cnJlbnREaWFsb2cpIHtcclxuICAgICAgdGhpcy5jdXJyZW50RGlhbG9nLmRlc3Ryb3koKTtcclxuICAgICAgdGhpcy5jdXJyZW50RGlhbG9nID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHZhbEVycnNDaGFuZ2VkID0gKHZhbGlkYXRpb25PYmplY3Q6IGFueSkgPT4ge1xyXG4gICAgbGV0IHZhbGlkYXRpb25PYmplY3RFbnRpdHkgPSB2YWxpZGF0aW9uT2JqZWN0LmVudGl0eVxyXG4gICAgbGV0IHZhbGlkYXRpb25UYWJsZU5hbWUgPSB2YWxpZGF0aW9uT2JqZWN0RW50aXR5LmNvbnN0cnVjdG9yLm5hbWU7XHJcblxyXG4gICAgdHlwZSBFbnRpdHlPYmplY3RLZXkgPSBrZXlvZiB0eXBlb2YgdGhpcy5jb25maWcuZW50aXR5O1xyXG4gICAgY29uc3QgZW50aXR5UGtleU5hbWUgPSB2YWxpZGF0aW9uVGFibGVOYW1lICsgJ1JlZicgYXMgRW50aXR5T2JqZWN0S2V5O1xyXG5cclxuICAgIHR5cGUgVmFsaWRhdGlvbk9iamVjdEVudGl0eU9iamVjdEtleSA9IGtleW9mIHR5cGVvZiB2YWxpZGF0aW9uT2JqZWN0RW50aXR5O1xyXG4gICAgY29uc3QgdmFsaWRhdGlvbk9iamVjdEVudGl0eXBrZXlOYW1lID0gdmFsaWRhdGlvblRhYmxlTmFtZSArICdSZWYnIGFzIFZhbGlkYXRpb25PYmplY3RFbnRpdHlPYmplY3RLZXk7XHJcblxyXG4gICAgbGV0IGFkZGVkUHJvcGVydHlWYWxkYXRpb25zID0gdmFsaWRhdGlvbk9iamVjdC5hZGRlZC5maWx0ZXIoKHY6IGFueSkgPT4ge1xyXG4gICAgICByZXR1cm4gdi5wcm9wZXJ0eU5hbWUgPT09IHRoaXMuY29uZmlnLnByb3BlcnR5TmFtZVxyXG4gICAgfSk7XHJcblxyXG4gICAgbGV0IHJlbW92ZWRQcm9wZXJ0eVZhbGRhdGlvbnMgPSB2YWxpZGF0aW9uT2JqZWN0LnJlbW92ZWQuZmlsdGVyKCh2OiBhbnkpID0+IHtcclxuICAgICAgcmV0dXJuIHYucHJvcGVydHlOYW1lID09PSB0aGlzLmNvbmZpZy5wcm9wZXJ0eU5hbWVcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMubWVyZ2VEYXRhID0gdGhpcy5nZXRNZXJnZURhdGEoKTtcclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMuY29uZmlnLnByb3BlcnR5Q29uZmlnLnJvb3RUYWJsZSA9PT0gdmFsaWRhdGlvblRhYmxlTmFtZSAmJlxyXG4gICAgICB0aGlzLmNvbmZpZy5lbnRpdHlbZW50aXR5UGtleU5hbWVdID09PSB2YWxpZGF0aW9uT2JqZWN0RW50aXR5W3ZhbGlkYXRpb25PYmplY3RFbnRpdHlwa2V5TmFtZV0gJiZcclxuICAgICAgKGFkZGVkUHJvcGVydHlWYWxkYXRpb25zLmxlbmd0aCB8fCB0aGlzLm1lcmdlRGF0YSkpIHtcclxuICAgICAgdGhpcy5yZW1vdmVWYWxpZGF0aW9uRGlhbG9nKCk7XHJcbiAgICAgIHRoaXMuY29uZmlnLnByb3BlcnR5TmFtZSA9IHRoaXMuY29uZmlnLnByb3BlcnR5Q29uZmlnLnByb3BlcnR5TmFtZSBhcyBzdHJpbmc7XHJcbiAgICAgIHRoaXMuY29uZmlnLm1lcmdlRGF0YSA9IHRoaXMubWVyZ2VEYXRhO1xyXG4gICAgICB0aGlzLmNvbmZpZy5lcnJvck1zZyA9IHRoaXMucGFyc2VFcnJvck1lc3NhZ2VzKGFkZGVkUHJvcGVydHlWYWxkYXRpb25zKTtcclxuICAgICAgdGhpcy5hZGRWYWxpZGF0aW9uRGlhbG9nKHRoaXMuY29uZmlnKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIHRoaXMuY29uZmlnLnByb3BlcnR5Q29uZmlnLnJvb3RUYWJsZSA9PT0gdmFsaWRhdGlvblRhYmxlTmFtZSAmJlxyXG4gICAgICB0aGlzLmNvbmZpZy5lbnRpdHlbZW50aXR5UGtleU5hbWVdID09PSB2YWxpZGF0aW9uT2JqZWN0RW50aXR5W3ZhbGlkYXRpb25PYmplY3RFbnRpdHlwa2V5TmFtZV0gJiZcclxuICAgICAgKHJlbW92ZWRQcm9wZXJ0eVZhbGRhdGlvbnMubGVuZ3RoKSkge1xyXG4gICAgICB0aGlzLnJlbW92ZVZhbGlkYXRpb25EaWFsb2coKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQgeyB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vicy5wdXNoKHRoaXMuZGF0YUNvbnRleHQudmFsaWRhdGlvbkNoYW5nZURldGVjdGlvbi5zdWJzY3JpYmUoZW50aXRpZXMgPT4ge1xyXG4gICAgICB0aGlzLnZhbEVycnNDaGFuZ2VkKGVudGl0aWVzKTtcclxuICAgIH0pKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmICghY2hhbmdlcy5lbnRpdHkuZmlyc3RDaGFuZ2UpIHtcclxuICAgICAgdGhpcy5yZW1vdmVWYWxpZGF0aW9uRGlhbG9nKCk7XHJcbiAgICAgIHRoaXMuY29uZmlnLmVudGl0eS5lbnRpdHlBc3BlY3QudmFsaWRhdGVFbnRpdHkoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -6965,34 +6965,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
|
|
|
6965
6965
|
}]
|
|
6966
6966
|
}] });
|
|
6967
6967
|
|
|
6968
|
-
class TruValidationDialogConfig {
|
|
6969
|
-
_entity;
|
|
6970
|
-
_propertyName;
|
|
6971
|
-
_errorMsg;
|
|
6972
|
-
_mergeData;
|
|
6973
|
-
get entity() {
|
|
6974
|
-
return this._entity;
|
|
6975
|
-
}
|
|
6976
|
-
get propertyName() {
|
|
6977
|
-
return this._propertyName;
|
|
6978
|
-
}
|
|
6979
|
-
get errorMsg() {
|
|
6980
|
-
return this._errorMsg;
|
|
6981
|
-
}
|
|
6982
|
-
get mergeData() {
|
|
6983
|
-
return this._mergeData;
|
|
6984
|
-
}
|
|
6985
|
-
set mergeData(value) {
|
|
6986
|
-
this._mergeData = value;
|
|
6987
|
-
}
|
|
6988
|
-
constructor(entity, propertyName, errorMsg, mergeData = null) {
|
|
6989
|
-
this._entity = entity;
|
|
6990
|
-
this._propertyName = propertyName;
|
|
6991
|
-
this._errorMsg = errorMsg;
|
|
6992
|
-
this._mergeData = mergeData;
|
|
6993
|
-
}
|
|
6994
|
-
}
|
|
6995
|
-
|
|
6996
6968
|
class TruBreezeGridValidator {
|
|
6997
6969
|
el;
|
|
6998
6970
|
dataContext;
|
|
@@ -7080,17 +7052,27 @@ class TruBreezeGridValidator {
|
|
|
7080
7052
|
return properties.includes(v.propertyName);
|
|
7081
7053
|
});
|
|
7082
7054
|
this.mergeData = this.getMergeData();
|
|
7083
|
-
if (
|
|
7084
|
-
|
|
7085
|
-
|
|
7086
|
-
|
|
7087
|
-
|
|
7088
|
-
|
|
7089
|
-
|
|
7090
|
-
|
|
7091
|
-
|
|
7092
|
-
|
|
7093
|
-
|
|
7055
|
+
//if (
|
|
7056
|
+
// this.config.rootTable === validationTableName &&
|
|
7057
|
+
// this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
7058
|
+
// (addedPropertyValdations.length || this.mergeData)) {
|
|
7059
|
+
// this.removeValidationDialog();
|
|
7060
|
+
// if (this.isSubProperty) {
|
|
7061
|
+
// this.addSubPropertyValidationDialog(new TruValidationDialogConfig(
|
|
7062
|
+
// this.entity,
|
|
7063
|
+
// this.config.propertyName as string,
|
|
7064
|
+
// this.parseErrorMessages(addedPropertyValdations),
|
|
7065
|
+
// this.mergeData
|
|
7066
|
+
// ));
|
|
7067
|
+
// } else {
|
|
7068
|
+
// this.addValidationDialog(new TruGridValidationDialogConfig(
|
|
7069
|
+
// this.entity,
|
|
7070
|
+
// this.config.propertyName as string,
|
|
7071
|
+
// this.parseErrorMessages(addedPropertyValdations),
|
|
7072
|
+
// this.mergeData
|
|
7073
|
+
// ));
|
|
7074
|
+
// }
|
|
7075
|
+
//}
|
|
7094
7076
|
if (this.config.rootTable === validationTableName &&
|
|
7095
7077
|
this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
7096
7078
|
(removedPropertyValdations.length)) {
|
|
@@ -7148,7 +7130,6 @@ class TruBreezeValidator {
|
|
|
7148
7130
|
dataContext;
|
|
7149
7131
|
viewContainerRef;
|
|
7150
7132
|
componentFactoryResolver;
|
|
7151
|
-
entity;
|
|
7152
7133
|
config;
|
|
7153
7134
|
constructor(el, dataContext, viewContainerRef, componentFactoryResolver) {
|
|
7154
7135
|
this.el = el;
|
|
@@ -7162,14 +7143,14 @@ class TruBreezeValidator {
|
|
|
7162
7143
|
subs = [];
|
|
7163
7144
|
currentDialog = null;
|
|
7164
7145
|
getMergeData = () => {
|
|
7165
|
-
if (this.config.propertyPath?.includes('/')) {
|
|
7166
|
-
let propertyNameParts = this.config.propertyPath.split('/');
|
|
7146
|
+
if (this.config.propertyConfig.propertyPath?.includes('/')) {
|
|
7147
|
+
let propertyNameParts = this.config.propertyConfig.propertyPath.split('/');
|
|
7167
7148
|
propertyNameParts.pop();
|
|
7168
7149
|
let targetProperty;
|
|
7169
7150
|
propertyNameParts.forEach((name) => {
|
|
7170
7151
|
if (!targetProperty) {
|
|
7171
7152
|
let targetPropertyName = 'o' + name;
|
|
7172
|
-
targetProperty = this.entity[targetPropertyName];
|
|
7153
|
+
targetProperty = this.config.entity[targetPropertyName];
|
|
7173
7154
|
}
|
|
7174
7155
|
else {
|
|
7175
7156
|
let targetPropertyName = 'o' + name;
|
|
@@ -7182,7 +7163,7 @@ class TruBreezeValidator {
|
|
|
7182
7163
|
return undefined;
|
|
7183
7164
|
}
|
|
7184
7165
|
else {
|
|
7185
|
-
return this.entity.Merge_Data_Set?.get(this.config.propertyName) ? this.entity.Merge_Data_Set : undefined;
|
|
7166
|
+
return this.config.entity.Merge_Data_Set?.get(this.config.propertyName) ? this.config.entity.Merge_Data_Set : undefined;
|
|
7186
7167
|
}
|
|
7187
7168
|
};
|
|
7188
7169
|
parseErrorMessages = (validationErrors) => {
|
|
@@ -7217,14 +7198,17 @@ class TruBreezeValidator {
|
|
|
7217
7198
|
return v.propertyName === this.config.propertyName;
|
|
7218
7199
|
});
|
|
7219
7200
|
this.mergeData = this.getMergeData();
|
|
7220
|
-
if (this.config.rootTable === validationTableName &&
|
|
7221
|
-
this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
7201
|
+
if (this.config.propertyConfig.rootTable === validationTableName &&
|
|
7202
|
+
this.config.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
7222
7203
|
(addedPropertyValdations.length || this.mergeData)) {
|
|
7223
7204
|
this.removeValidationDialog();
|
|
7224
|
-
this.
|
|
7205
|
+
this.config.propertyName = this.config.propertyConfig.propertyName;
|
|
7206
|
+
this.config.mergeData = this.mergeData;
|
|
7207
|
+
this.config.errorMsg = this.parseErrorMessages(addedPropertyValdations);
|
|
7208
|
+
this.addValidationDialog(this.config);
|
|
7225
7209
|
}
|
|
7226
|
-
if (this.config.rootTable === validationTableName &&
|
|
7227
|
-
this.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
7210
|
+
if (this.config.propertyConfig.rootTable === validationTableName &&
|
|
7211
|
+
this.config.entity[entityPkeyName] === validationObjectEntity[validationObjectEntitypkeyName] &&
|
|
7228
7212
|
(removedPropertyValdations.length)) {
|
|
7229
7213
|
this.removeValidationDialog();
|
|
7230
7214
|
}
|
|
@@ -7238,25 +7222,23 @@ class TruBreezeValidator {
|
|
|
7238
7222
|
ngOnChanges(changes) {
|
|
7239
7223
|
if (!changes.entity.firstChange) {
|
|
7240
7224
|
this.removeValidationDialog();
|
|
7241
|
-
this.entity.entityAspect.validateEntity();
|
|
7225
|
+
this.config.entity.entityAspect.validateEntity();
|
|
7242
7226
|
}
|
|
7243
7227
|
}
|
|
7244
7228
|
ngOnDestroy() {
|
|
7245
7229
|
this.subs.forEach(s => s.unsubscribe());
|
|
7246
7230
|
}
|
|
7247
7231
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruBreezeValidator, deps: [{ token: i0.ElementRef }, { token: TruDataContext }, { token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Directive });
|
|
7248
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: TruBreezeValidator, selector: "[truBreezeValidator]", inputs: {
|
|
7232
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: TruBreezeValidator, selector: "[truBreezeValidator]", inputs: { config: ["truBreezeValidator", "config"] }, usesOnChanges: true, ngImport: i0 });
|
|
7249
7233
|
}
|
|
7250
7234
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: TruBreezeValidator, decorators: [{
|
|
7251
7235
|
type: Directive,
|
|
7252
7236
|
args: [{
|
|
7253
7237
|
selector: '[truBreezeValidator]'
|
|
7254
7238
|
}]
|
|
7255
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: TruDataContext }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }], propDecorators: {
|
|
7239
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: TruDataContext }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }], propDecorators: { config: [{
|
|
7256
7240
|
type: Input,
|
|
7257
7241
|
args: ['truBreezeValidator']
|
|
7258
|
-
}], config: [{
|
|
7259
|
-
type: Input
|
|
7260
7242
|
}] } });
|
|
7261
7243
|
|
|
7262
7244
|
class TruBreezeValidatorModule {
|