@eqproject/eqp-dynamic-module 2.6.12 → 2.6.13
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/components/private/add-form-field/add-form-field.component.mjs +4 -1
- package/esm2020/lib/components/private/add-formula-field/add-formula-field.component.mjs +6 -3
- package/esm2020/lib/components/private/field-templates/attachment-field-template/attachment-field-template.component.mjs +3 -2
- package/esm2020/lib/components/private/field-templates/boolean-field-template/boolean-field-template.component.mjs +2 -2
- package/esm2020/lib/components/private/field-templates/date-field-template/date-field-template.component.mjs +2 -2
- package/esm2020/lib/components/private/field-templates/image-field-template/image-field-template.component.mjs +3 -2
- package/esm2020/lib/components/private/field-templates/image-with-markers-field-template/image-with-markers-field-template.component.mjs +3 -2
- package/esm2020/lib/components/private/field-templates/label-field-template/label-field-template.component.mjs +2 -2
- package/esm2020/lib/components/private/field-templates/numeric-field-template/numeric-field-template.component.mjs +2 -2
- package/esm2020/lib/components/private/field-templates/text-field-template/text-field-template.component.mjs +2 -2
- package/esm2020/lib/components/private/field-templates/textarea-field-template/textarea-field-template.component.mjs +2 -2
- package/fesm2015/eqproject-eqp-dynamic-module.mjs +17 -11
- package/fesm2015/eqproject-eqp-dynamic-module.mjs.map +1 -1
- package/fesm2020/eqproject-eqp-dynamic-module.mjs +17 -11
- package/fesm2020/eqproject-eqp-dynamic-module.mjs.map +1 -1
- package/lib/components/private/add-formula-field/add-formula-field.component.d.ts +1 -0
- package/package.json +1 -1
|
@@ -28,7 +28,7 @@ export class DateFieldTemplateComponent {
|
|
|
28
28
|
* Metodo per aggiornare il valore del campo quando questo è rappresentato da una formula.
|
|
29
29
|
*/
|
|
30
30
|
updateField() {
|
|
31
|
-
if (this.field.Formula) {
|
|
31
|
+
if ((this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Manuale || this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Formula) && this.field.Formula) {
|
|
32
32
|
this.record[this.field.Name] = UtilityHelperService.EvaluateFieldFormula(this.field.Formula, this.record, null);
|
|
33
33
|
}
|
|
34
34
|
if (this.field.VisibleIf) {
|
|
@@ -92,4 +92,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
92
92
|
}], recordChange: [{
|
|
93
93
|
type: Output
|
|
94
94
|
}] } });
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2RhdGUtZmllbGQtdGVtcGxhdGUvZGF0ZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2RhdGUtZmllbGQtdGVtcGxhdGUvZGF0ZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFekcsT0FBTyxFQUFhLGdCQUFnQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFeEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7OztBQU9wRCxNQUFNLE9BQU8sMEJBQTBCO0lBWXJDO1FBUlUsaUJBQVksR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUUxRSxVQUFLLEdBQUcsUUFBUSxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxZQUFZLENBQUM7UUFHeEIsaUJBQVksR0FBVyxJQUFJLENBQUM7SUFFWixDQUFDO0lBRWpCLFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZC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UixLQUFLLGdCQUFnQixDQUFDLGFBQWEsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDO2dCQUNoQyxNQUFNO1lBQ1IsS0FBSyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQztnQkFDcEMsTUFBTTtTQUNUO0lBQ0gsQ0FBQzs7d0hBckZVLDBCQUEwQjs0R0FBMUIsMEJBQTBCLHlLQ2J2Qyw2ZkFLcUI7NEZEUVIsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLHFCQUFxQjswRUFNdEIsS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9yZWNvcmQubW9kZWwnO1xyXG5pbXBvcnQgeyBEYXRlRmllbGQsIERhdGVUaW1lVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZmllbGRzL2RhdGVGaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IElCYXNlRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzL2lCYXNlRmllbGRDb21wb25lbnQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgVXRpbGl0eUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy91dGlsaXR5SGVscGVyLnNlcnZpY2VzJztcclxuaW1wb3J0IHsgRGF0YUdldHRlclR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2Jhc2VGaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IE1vZGVFbnVtLCBUaW1lVHlwZUVudW0gfSBmcm9tIFwidG13LXBpY2tlclwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkYXRlLWZpZWxkLXRlbXBsYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZGF0ZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYXRlRmllbGRUZW1wbGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBJQmFzZUZpZWxkQ29tcG9uZW50IHtcclxuXHJcbiAgQElucHV0KCkgZmllbGQ6IERhdGVGaWVsZDtcclxuICBASW5wdXQoKSByZWNvcmQ6IFJlY29yZDtcclxuICBAT3V0cHV0KCkgcmVjb3JkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8UmVjb3JkPiA9IG5ldyBFdmVudEVtaXR0ZXI8UmVjb3JkPigpO1xyXG5cclxuICBtb2RlcyA9IE1vZGVFbnVtO1xyXG4gIHRpbWVUeXBlID0gVGltZVR5cGVFbnVtO1xyXG4gIG1vZGU6IE1vZGVFbnVtO1xyXG5cclxuICBvdXRwdXRGb3JtYXQ6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXRUaW1lVHlwZSgpO1xyXG4gICAgdGhpcy5zZXRPdXRwdXRGb3JtYXQoKTtcclxuICAgIHRoaXMudXBkYXRlRmllbGQoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIC8vIFNlIHZpZW5lIG1vZGlmaWNhdG8gaWwgdmFsb3JlIGRpIFwibmdNb2RlbElucHV0XCIgYWxsb3JhIGFnZ2lvcm5hIGwnaW5wdXRcclxuICAgIGlmIChjaGFuZ2VzWydyZWNvcmQnXSAhPSB1bmRlZmluZWQgJiYgY2hhbmdlc1sncmVjb3JkJ10uZmlyc3RDaGFuZ2UgPT0gZmFsc2UgJiYgSlNPTi5zdHJpbmdpZnkoY2hhbmdlc1sncmVjb3JkJ10uY3VycmVudFZhbHVlKSAhPSBKU09OLnN0cmluZ2lmeShjaGFuZ2VzWydyZWNvcmQnXS5wcmV2aW91c1ZhbHVlKSkge1xyXG4gICAgICB0aGlzLnJlY29yZCA9IGNoYW5nZXNbJ3JlY29yZCddLmN1cnJlbnRWYWx1ZTtcclxuICAgICAgdGhpcy51cGRhdGVGaWVsZCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBhZ2dpb3JuYXJlIGlsIHZhbG9yZSBkZWwgY2FtcG8gcXVhbmRvIHF1ZXN0byDDqCByYXBwcmVzZW50YXRvIGRhIHVuYSBmb3JtdWxhLlxyXG4gICAqL1xyXG4gIHVwZGF0ZUZpZWxkKCkge1xyXG4gICAgaWYgKHRoaXMuZmllbGQuRm9ybXVsYSkge1xyXG4gICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuRXZhbHVhdGVGaWVsZEZvcm11bGEodGhpcy5maWVsZC5Gb3JtdWxhLCB0aGlzLnJlY29yZCwgbnVsbCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5maWVsZC5WaXNpYmxlSWYpIHtcclxuICAgICAgdGhpcy5maWVsZC5Jbkxpc3RWaWV3ID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuRXZhbHVhdGVGaWVsZEZvcm11bGEodGhpcy5maWVsZC5WaXNpYmxlSWYsIHRoaXMucmVjb3JkLCBudWxsKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclR5cGUgPT0gRGF0YUdldHRlclR5cGVFbnVtLk1hbnVhbGUgJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9PSBudWxsKSB7XHJcbiAgICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclZhbHVlO1xyXG4gICAgfSAgICAgICBcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgZW1ldHRlcmUgbCdldmVudG8gY2hlIGlsIHZhbG9yZSBkZWwgcmVjb3JkIMOoIGNhbWJpYXRvLlxyXG4gICAqL1xyXG4gIG9uUmVjb3JkVmFsdWVDaGFuZ2UoKSB7XHJcbiAgICBpZiAoIXRoaXMuZmllbGQuRm9ybXVsYSkge1xyXG4gICAgICB0aGlzLnJlY29yZENoYW5nZS5lbWl0KHRoaXMucmVjb3JkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldE91dHB1dEZvcm1hdCgpe1xyXG4gICAgaWYgKHRoaXMub3V0cHV0Rm9ybWF0ICE9IG51bGwpe1xyXG4gICAgICB0aGlzLm91dHB1dEZvcm1hdCA9IHRoaXMuZmllbGQuRGF0ZUZvcm1hdDsgIFxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMuZmllbGQuSXNPbmx5RGF0ZSA9PSBEYXRlVGltZVR5cGVFbnVtWydTb2xvIGRhdGEnXSl7XHJcbiAgICAgICAgdGhpcy5vdXRwdXRGb3JtYXQgPSAnREQvTU0vWVlZWSc7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuZmllbGQuSXNPbmx5RGF0ZSA9PSBEYXRlVGltZVR5cGVFbnVtWydEYXRhIGUgb3JhJ10pe1xyXG4gICAgICAgIHRoaXMub3V0cHV0Rm9ybWF0ID0gJ0REL01NL1lZWVkgSEg6bW0nO1xyXG4gICAgICB9ICAgICAgXHJcbiAgICAgIGlmICh0aGlzLmZpZWxkLklzT25seURhdGUgPT0gRGF0ZVRpbWVUeXBlRW51bVsnU29sbyBvcmFyaW8nXSl7XHJcbiAgICAgICAgdGhpcy5vdXRwdXRGb3JtYXQgPSAnSEg6bW0nO1xyXG4gICAgICB9ICAgICAgICAgIFxyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbiBiYXNlIGFsIGZvcm1hdG8gZGVsbGEgZGF0YSByaWNoaWVzdGEgbmVsIERhdGVGaWVsZCAoc29sbyBkYXRhLCBzb2xvIG9yYXJpbyBvIGRhdGEgZSBvcmEpXHJcbiAgICogaW1wb3N0YSBsYSB2aXN1YWxpenphemlvbmUgY29ycmV0dGEgZGVsIGNvbXBvbmVudGUgZXFwLWRhdGV0aW1lcGlja2VyLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2V0VGltZVR5cGUoKSB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuZmllbGQuSXNPbmx5RGF0ZSkge1xyXG4gICAgICBjYXNlIERhdGVUaW1lVHlwZUVudW1bXCJTb2xvIGRhdGFcIl06XHJcbiAgICAgICAgdGhpcy5tb2RlID0gTW9kZUVudW0uREFURVBJQ0tFUjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBEYXRlVGltZVR5cGVFbnVtW1wiU29sbyBvcmFyaW9cIl06XHJcbiAgICAgICAgdGhpcy5tb2RlID0gTW9kZUVudW0uVElNRVBJQ0tFUjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBEYXRlVGltZVR5cGVFbnVtW1wiRGF0YSBlIG9yYVwiXTpcclxuICAgICAgICB0aGlzLm1vZGUgPSBNb2RlRW51bS5EQVRFVElNRVBJQ0tFUjtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPHRtdy1kYXRldGltZXBpY2tlciAgW3BsYWNlaG9sZGVyXT1cImZpZWxkLkRlc2NyaXB0aW9uXCIgW2xhYmVsXT1cImZpZWxkLkRlc2NyaXB0aW9uXCIgIFtwaWNrZXJNb2RlXT1cIm1vZGVcIlxyXG4gICAgW2Zvcm1Hcm91cElucHV0XT1cImZpZWxkLkZvcm1Gb3JtR3JvdXBcIiBbZm9ybUNvbnRyb2xOYW1lSW5wdXRdPVwiZmllbGQuTmFtZVwiXHJcbiAgICBbbWluRGF0ZV09XCJmaWVsZC5NaW5EYXRlID8gZmllbGQuTWluRGF0ZSA6IG51bGxcIiBbbWF4RGF0ZV09XCJmaWVsZC5NYXhEYXRlID8gZmllbGQuTWF4RGF0ZSA6IG51bGxcIlxyXG4gICAgW2Rpc2FibGVkXT1cImZpZWxkLkZvcm1Gb3JtR3JvdXAuZGlzYWJsZWRcIiBbKG5nTW9kZWxJbnB1dCldPVwicmVjb3JkW2ZpZWxkLk5hbWVdXCJcclxuICAgIChuZ01vZGVsSW5wdXRDaGFuZ2UpPVwib25SZWNvcmRWYWx1ZUNoYW5nZSgpXCIgW291dHB1dEZvcm1hdF09XCJvdXRwdXRGb3JtYXRcIj5cclxuPC90bXctZGF0ZXRpbWVwaWNrZXI+Il19
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2RhdGUtZmllbGQtdGVtcGxhdGUvZGF0ZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2RhdGUtZmllbGQtdGVtcGxhdGUvZGF0ZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFekcsT0FBTyxFQUFhLGdCQUFnQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFeEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSxZQUFZLENBQUM7OztBQU9wRCxNQUFNLE9BQU8sMEJBQTBCO0lBWXJDO1FBUlUsaUJBQVksR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUUxRSxVQUFLLEdBQUcsUUFBUSxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxZQUFZLENBQUM7UUFHeEIsaUJBQVksR0FBVyxJQUFJLENBQUM7SUFFWixDQUFDO0lBRWpCLFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZC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Q2pCLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUU7WUFDN0IsS0FBSyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQztnQkFDaEMsTUFBTTtZQUNSLEtBQUssZ0JBQWdCLENBQUMsYUFBYSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUM7Z0JBQ2hDLE1BQU07WUFDUixLQUFLLGdCQUFnQixDQUFDLFlBQVksQ0FBQztnQkFDakMsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDO2dCQUNwQyxNQUFNO1NBQ1Q7SUFDSCxDQUFDOzt3SEFyRlUsMEJBQTBCOzRHQUExQiwwQkFBMEIseUtDYnZDLDZmQUtxQjs0RkRRUiwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UscUJBQXFCOzBFQU10QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3JlY29yZC5tb2RlbCc7XHJcbmltcG9ydCB7IERhdGVGaWVsZCwgRGF0ZVRpbWVUeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9maWVsZHMvZGF0ZUZpZWxkLm1vZGVsJztcclxuaW1wb3J0IHsgSUJhc2VGaWVsZENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL2ludGVyZmFjZXMvaUJhc2VGaWVsZENvbXBvbmVudC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBVdGlsaXR5SGVscGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxpdHlIZWxwZXIuc2VydmljZXMnO1xyXG5pbXBvcnQgeyBEYXRhR2V0dGVyVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvYmFzZUZpZWxkLm1vZGVsJztcclxuaW1wb3J0IHsgTW9kZUVudW0sIFRpbWVUeXBlRW51bSB9IGZyb20gXCJ0bXctcGlja2VyXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2RhdGUtZmllbGQtdGVtcGxhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kYXRlLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIERhdGVGaWVsZFRlbXBsYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIElCYXNlRmllbGRDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBmaWVsZDogRGF0ZUZpZWxkO1xyXG4gIEBJbnB1dCgpIHJlY29yZDogUmVjb3JkO1xyXG4gIEBPdXRwdXQoKSByZWNvcmRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxSZWNvcmQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxSZWNvcmQ+KCk7XHJcblxyXG4gIG1vZGVzID0gTW9kZUVudW07XHJcbiAgdGltZVR5cGUgPSBUaW1lVHlwZUVudW07XHJcbiAgbW9kZTogTW9kZUVudW07XHJcblxyXG4gIG91dHB1dEZvcm1hdDogc3RyaW5nID0gbnVsbDtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldFRpbWVUeXBlKCk7XHJcbiAgICB0aGlzLnNldE91dHB1dEZvcm1hdCgpO1xyXG4gICAgdGhpcy51cGRhdGVGaWVsZCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgLy8gU2UgdmllbmUgbW9kaWZpY2F0byBpbCB2YWxvcmUgZGkgXCJuZ01vZGVsSW5wdXRcIiBhbGxvcmEgYWdnaW9ybmEgbCdpbnB1dFxyXG4gICAgaWYgKGNoYW5nZXNbJ3JlY29yZCddICE9IHVuZGVmaW5lZCAmJiBjaGFuZ2VzWydyZWNvcmQnXS5maXJzdENoYW5nZSA9PSBmYWxzZSAmJiBKU09OLnN0cmluZ2lmeShjaGFuZ2VzWydyZWNvcmQnXS5jdXJyZW50VmFsdWUpICE9IEpTT04uc3RyaW5naWZ5KGNoYW5nZXNbJ3JlY29yZCddLnByZXZpb3VzVmFsdWUpKSB7XHJcbiAgICAgIHRoaXMucmVjb3JkID0gY2hhbmdlc1sncmVjb3JkJ10uY3VycmVudFZhbHVlO1xyXG4gICAgICB0aGlzLnVwZGF0ZUZpZWxkKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gcGVyIGFnZ2lvcm5hcmUgaWwgdmFsb3JlIGRlbCBjYW1wbyBxdWFuZG8gcXVlc3RvIMOoIHJhcHByZXNlbnRhdG8gZGEgdW5hIGZvcm11bGEuXHJcbiAgICovXHJcbiAgdXBkYXRlRmllbGQoKSB7XHJcbiAgICBpZiAoKHRoaXMuZmllbGQuRGF0YUdldHRlci5EYXRhR2V0dGVyVHlwZSA9PSBEYXRhR2V0dGVyVHlwZUVudW0uTWFudWFsZSB8fCB0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclR5cGUgPT0gRGF0YUdldHRlclR5cGVFbnVtLkZvcm11bGEpICYmIHRoaXMuZmllbGQuRm9ybXVsYSkge1xyXG4gICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuRXZhbHVhdGVGaWVsZEZvcm11bGEodGhpcy5maWVsZC5Gb3JtdWxhLCB0aGlzLnJlY29yZCwgbnVsbCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5maWVsZC5WaXNpYmxlSWYpIHtcclxuICAgICAgdGhpcy5maWVsZC5Jbkxpc3RWaWV3ID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuRXZhbHVhdGVGaWVsZEZvcm11bGEodGhpcy5maWVsZC5WaXNpYmxlSWYsIHRoaXMucmVjb3JkLCBudWxsKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclR5cGUgPT0gRGF0YUdldHRlclR5cGVFbnVtLk1hbnVhbGUgJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9PSBudWxsKSB7XHJcbiAgICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclZhbHVlO1xyXG4gICAgfSAgICAgICBcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgZW1ldHRlcmUgbCdldmVudG8gY2hlIGlsIHZhbG9yZSBkZWwgcmVjb3JkIMOoIGNhbWJpYXRvLlxyXG4gICAqL1xyXG4gIG9uUmVjb3JkVmFsdWVDaGFuZ2UoKSB7XHJcbiAgICBpZiAoIXRoaXMuZmllbGQuRm9ybXVsYSkge1xyXG4gICAgICB0aGlzLnJlY29yZENoYW5nZS5lbWl0KHRoaXMucmVjb3JkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldE91dHB1dEZvcm1hdCgpe1xyXG4gICAgaWYgKHRoaXMub3V0cHV0Rm9ybWF0ICE9IG51bGwpe1xyXG4gICAgICB0aGlzLm91dHB1dEZvcm1hdCA9IHRoaXMuZmllbGQuRGF0ZUZvcm1hdDsgIFxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHRoaXMuZmllbGQuSXNPbmx5RGF0ZSA9PSBEYXRlVGltZVR5cGVFbnVtWydTb2xvIGRhdGEnXSl7XHJcbiAgICAgICAgdGhpcy5vdXRwdXRGb3JtYXQgPSAnREQvTU0vWVlZWSc7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuZmllbGQuSXNPbmx5RGF0ZSA9PSBEYXRlVGltZVR5cGVFbnVtWydEYXRhIGUgb3JhJ10pe1xyXG4gICAgICAgIHRoaXMub3V0cHV0Rm9ybWF0ID0gJ0REL01NL1lZWVkgSEg6bW0nO1xyXG4gICAgICB9ICAgICAgXHJcbiAgICAgIGlmICh0aGlzLmZpZWxkLklzT25seURhdGUgPT0gRGF0ZVRpbWVUeXBlRW51bVsnU29sbyBvcmFyaW8nXSl7XHJcbiAgICAgICAgdGhpcy5vdXRwdXRGb3JtYXQgPSAnSEg6bW0nO1xyXG4gICAgICB9ICAgICAgICAgIFxyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbiBiYXNlIGFsIGZvcm1hdG8gZGVsbGEgZGF0YSByaWNoaWVzdGEgbmVsIERhdGVGaWVsZCAoc29sbyBkYXRhLCBzb2xvIG9yYXJpbyBvIGRhdGEgZSBvcmEpXHJcbiAgICogaW1wb3N0YSBsYSB2aXN1YWxpenphemlvbmUgY29ycmV0dGEgZGVsIGNvbXBvbmVudGUgZXFwLWRhdGV0aW1lcGlja2VyLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2V0VGltZVR5cGUoKSB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuZmllbGQuSXNPbmx5RGF0ZSkge1xyXG4gICAgICBjYXNlIERhdGVUaW1lVHlwZUVudW1bXCJTb2xvIGRhdGFcIl06XHJcbiAgICAgICAgdGhpcy5tb2RlID0gTW9kZUVudW0uREFURVBJQ0tFUjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBEYXRlVGltZVR5cGVFbnVtW1wiU29sbyBvcmFyaW9cIl06XHJcbiAgICAgICAgdGhpcy5tb2RlID0gTW9kZUVudW0uVElNRVBJQ0tFUjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBEYXRlVGltZVR5cGVFbnVtW1wiRGF0YSBlIG9yYVwiXTpcclxuICAgICAgICB0aGlzLm1vZGUgPSBNb2RlRW51bS5EQVRFVElNRVBJQ0tFUjtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPHRtdy1kYXRldGltZXBpY2tlciAgW3BsYWNlaG9sZGVyXT1cImZpZWxkLkRlc2NyaXB0aW9uXCIgW2xhYmVsXT1cImZpZWxkLkRlc2NyaXB0aW9uXCIgIFtwaWNrZXJNb2RlXT1cIm1vZGVcIlxyXG4gICAgW2Zvcm1Hcm91cElucHV0XT1cImZpZWxkLkZvcm1Gb3JtR3JvdXBcIiBbZm9ybUNvbnRyb2xOYW1lSW5wdXRdPVwiZmllbGQuTmFtZVwiXHJcbiAgICBbbWluRGF0ZV09XCJmaWVsZC5NaW5EYXRlID8gZmllbGQuTWluRGF0ZSA6IG51bGxcIiBbbWF4RGF0ZV09XCJmaWVsZC5NYXhEYXRlID8gZmllbGQuTWF4RGF0ZSA6IG51bGxcIlxyXG4gICAgW2Rpc2FibGVkXT1cImZpZWxkLkZvcm1Gb3JtR3JvdXAuZGlzYWJsZWRcIiBbKG5nTW9kZWxJbnB1dCldPVwicmVjb3JkW2ZpZWxkLk5hbWVdXCJcclxuICAgIChuZ01vZGVsSW5wdXRDaGFuZ2UpPVwib25SZWNvcmRWYWx1ZUNoYW5nZSgpXCIgW291dHB1dEZvcm1hdF09XCJvdXRwdXRGb3JtYXRcIj5cclxuPC90bXctZGF0ZXRpbWVwaWNrZXI+Il19
|
|
@@ -2,6 +2,7 @@ import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core
|
|
|
2
2
|
import { ImageFolderEnum } from '../../../../models/fields/imageField.model';
|
|
3
3
|
import { UtilityHelperService } from '../../../../services/utilityHelper.services';
|
|
4
4
|
import { ParamTypeEnum } from '../../../../models/endPointConfiguration.model';
|
|
5
|
+
import { DataGetterTypeEnum } from '../../../../models/baseField.model';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
import * as i1 from "@angular/material/dialog";
|
|
7
8
|
import * as i2 from "../../../../services/utilityHelper.services";
|
|
@@ -92,7 +93,7 @@ export class ImageFieldTemplateComponent {
|
|
|
92
93
|
* Metodo per aggiornare il valore del campo quando questo è rappresentato da una formula.
|
|
93
94
|
*/
|
|
94
95
|
updateField() {
|
|
95
|
-
if (this.field.Formula) {
|
|
96
|
+
if ((this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Manuale || this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Formula) && this.field.Formula) {
|
|
96
97
|
this.record[this.field.Name] = UtilityHelperService.EvaluateFieldFormula(this.field.Formula, this.record, null);
|
|
97
98
|
}
|
|
98
99
|
if (this.field.VisibleIf) {
|
|
@@ -252,4 +253,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
252
253
|
type: ViewChild,
|
|
253
254
|
args: ["dialogImageDrawing", { static: true }]
|
|
254
255
|
}] } });
|
|
255
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtZmllbGQtdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2ZpZWxkLXRlbXBsYXRlcy9pbWFnZS1maWVsZC10ZW1wbGF0ZS9pbWFnZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2ltYWdlLWZpZWxkLXRlbXBsYXRlL2ltYWdlLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUE4QixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakksT0FBTyxFQUFjLGVBQWUsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBR3pGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBR25GLE9BQU8sRUFBeUIsYUFBYSxFQUFFLE1BQU0sZ0RBQWdELENBQUM7Ozs7OztBQUd0Rzs7OztHQUlHO0FBQ0gsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBUyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtJQUMvRCxNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO0lBQ2hDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxD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SUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUU1QixDQUFDLEVBQ0QsQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUVSLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUsRUFBQyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ25FLENBQUM7O3lIQW5SVSwyQkFBMkI7NkdBQTNCLDJCQUEyQixnWkMzQnhDLGs4RUE2Q2M7NEZEbEJELDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSxzQkFBc0I7bUlBTXZCLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQXdCNEMsa0JBQWtCO3NCQUFwRSxTQUFTO3VCQUFDLG9CQUFvQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJbWFnZUZpZWxkLCBJbWFnZUZvbGRlckVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZmllbGRzL2ltYWdlRmllbGQubW9kZWwnO1xyXG5pbXBvcnQgeyBSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvcmVjb3JkLm1vZGVsJztcclxuaW1wb3J0IHsgSUJhc2VGaWVsZENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL2ludGVyZmFjZXMvaUJhc2VGaWVsZENvbXBvbmVudC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBVdGlsaXR5SGVscGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxpdHlIZWxwZXIuc2VydmljZXMnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IEkxOG5JbnRlcmZhY2UgfSBmcm9tICcuLi8uLi90bXctaW1hZ2UtZHJhd2VyL2kxOG4nO1xyXG5pbXBvcnQgeyBFbmRQb2ludENvbmZpZ3VyYXRpb24sIFBhcmFtVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZW5kUG9pbnRDb25maWd1cmF0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgRHluQXR0YWNobWVudCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9keW5BdHRhY2htZW50JztcclxuXHJcbi8qKlxyXG4gKiBNZXRvZG8gcGVyIHJlY3VwZXJhcmUsIGEgcGFydGlyZSBkYSB1biBCbG9iLCBsYSBzdHJpbmdhIGNvbnRlbmVudGUgaWwgYmFzZTY0IGRlbCBmaWxlLlxyXG4gKiBVc2F0byBwZXIgcHJlbmRlcmUgaWwgYmFzZTY0IGRlbGwnaW1tYWdpbmUgZG9wbyBjaGUgbCd1dGVudGUgY2kgaGEgZGlzZWduYXRvIHNvcHJhLlxyXG4gKiBAcGFyYW0gZmlsZSBCbG9iIGNoZSByYXBwcmVzZW50YSBsJ2ltbWFnaW5lLlxyXG4gKi9cclxuY29uc3QgdG9CYXNlNjQgPSBmaWxlID0+IG5ldyBQcm9taXNlPHN0cmluZz4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XHJcbiAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHJlc29sdmUocmVhZGVyLnJlc3VsdC50b1N0cmluZygpKTtcclxuICByZWFkZXIub25lcnJvciA9IGVycm9yID0+IHJlamVjdChlcnJvcik7XHJcbn0pO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpbWFnZS1maWVsZC10ZW1wbGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ltYWdlLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbWFnZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbWFnZUZpZWxkVGVtcGxhdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgSUJhc2VGaWVsZENvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIGVuZFBvaW50Q29uZmlndXJhdGlvbjogRW5kUG9pbnRDb25maWd1cmF0aW9uO1xyXG4gIEBJbnB1dCgpIHJlY29yZDogUmVjb3JkO1xyXG4gIEBJbnB1dCgpIGZpZWxkOiBJbWFnZUZpZWxkO1xyXG4gIEBJbnB1dCgpIGluQ29uZmlnOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQE91dHB1dCgpIHJlY29yZENoYW5nZTogRXZlbnRFbWl0dGVyPFJlY29yZD4gPSBuZXcgRXZlbnRFbWl0dGVyPFJlY29yZD4oKTtcclxuICBAT3V0cHV0KCkgaW1hZ2VEcmF3OiBFdmVudEVtaXR0ZXI8RHluQXR0YWNobWVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPER5bkF0dGFjaG1lbnQ+KCk7XHJcblxyXG4gIGltYWdlV2lkdGg6IG51bWJlciA9IDA7XHJcbiAgZHJhd2luZ0xvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEZpbGVCYXNlNjQ6IHN0cmluZyA9IFwiXCI7XHJcbiAgRHJhd0ZpbGVCYXNlNjQ6IHN0cmluZyA9IFwiXCI7XHJcbiAgRmlsZURhdGFCYXNlNjQ6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gIEF0dGFjaG1lbnRJRDogc3RyaW5nIHwgbnVtYmVyO1xyXG5cclxuICBpbWFnZURyYXdBdHRhY2htZW50OiBEeW5BdHRhY2htZW50O1xyXG4gIFxyXG5cclxuICAvL3ByZUxvYWRlZEltYWdlTWV0YWRhdGFGb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIC8vI3JlZ2lvbiBQcm9wcmlldMOgIHBlciBjb25maWd1cmFyZSBpbCBjb21wb25lbnRlIG5neC1pbWFnZS1kcmF3aW5nIGUgYXByaXJlIGlsIHJlbGF0aXZvIGRpYWxvZy5cclxuICBwdWJsaWMgd2lkdGggPSBudWxsO1xyXG4gIHB1YmxpYyBoZWlnaHQgPSBudWxsO1xyXG4gIHB1YmxpYyBpMThuOiBJMThuSW50ZXJmYWNlID0ge1xyXG4gICAgc2F2ZUJ0bjogJ1NhbHZhIG1vZGlmaWNoZScsXHJcbiAgICBjYW5jZWxCdG46ICdSaWNhcmljYSBvcmlnaW5hbGUnLFxyXG4gICAgY2xvc2VEaWFsb2c6ICdBbm51bGxhIGRpc2Vnbm8nLFxyXG4gIH07XHJcbiAgZGlhbG9nSW1hZ2VEcmF3aW5nUmVmOiBNYXREaWFsb2dSZWY8VGVtcGxhdGVSZWY8YW55Pj47XHJcbiAgQFZpZXdDaGlsZChcImRpYWxvZ0ltYWdlRHJhd2luZ1wiLCB7IHN0YXRpYzogdHJ1ZSB9KSBkaWFsb2dJbWFnZURyYXdpbmc6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcclxuICAgIHByaXZhdGUgdXRpbGl0eUhlbHBlclNlcnZpY2U6IFV0aWxpdHlIZWxwZXJTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgaWYgKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT0gbnVsbCB8fCB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID09IDApe1xyXG4gICAgICB0aGlzLkZpbGVEYXRhQmFzZTY0ID0gdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LkZpbGVEYXRhQmFzZTY0O1xyXG4gICAgICB0aGlzLmltYWdlV2lkdGggPSAgKHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5SZXNpemVkSW1hZ2VIZWlnaHRQeCAvIHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JbWFnZUhlaWdodFB4ICogdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LkltYWdlV2lkdGhQeCkgKyA1MDtcclxuICAgICAgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9IHRoaXMuZmllbGQuRHluQXR0YWNobWVudDtcclxuXHJcbiAgICAgIHRoaXMuaW1hZ2VEcmF3QXR0YWNobWVudCA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5maWVsZC5EeW5BdHRhY2htZW50KSk7XHJcbiAgICAgIHRoaXMuaW1hZ2VEcmF3QXR0YWNobWVudC5JRCA9IDA7XHJcblxyXG4gICAgICB0aGlzLkF0dGFjaG1lbnRJRCA9IHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JRDtcclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodHlwZW9mIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT09ICdzdHJpbmcnKXtcclxuICAgICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gSlNPTi5wYXJzZSh0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmltYWdlV2lkdGggPSAgKHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5SZXNpemVkSW1hZ2VIZWlnaHRQeCAvIHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JbWFnZUhlaWdodFB4ICogdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LkltYWdlV2lkdGhQeCkgKyA1MDtcclxuXHJcbiAgICAgIGlmICgodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSBhcyBEeW5BdHRhY2htZW50KS5GaWxlQmFzZXM2NCAhPSBudWxsKXtcclxuICAgICAgICB0aGlzLkZpbGVEYXRhQmFzZTY0ID0gKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gYXMgRHluQXR0YWNobWVudCkuRmlsZUJhc2VzNjRbSW1hZ2VGb2xkZXJFbnVtLlJlZ3VsYXJdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuRmlsZURhdGFCYXNlNjQgPSAodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSBhcyBEeW5BdHRhY2htZW50KS5GaWxlRGF0YUJhc2U2NDtcclxuICAgICAgfVxyXG5cclxuICAgICAgKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gYXMgRHluQXR0YWNobWVudCkuRmlsZURhdGFCYXNlNjQgPSB0aGlzLkZpbGVEYXRhQmFzZTY0O1xyXG5cclxuICAgICAgdGhpcy5pbWFnZURyYXdBdHRhY2htZW50ID0gdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXTtcclxuICAgICAgdGhpcy5pbWFnZURyYXdBdHRhY2htZW50LkZpbGVEYXRhQmFzZTY0ID0gdGhpcy5GaWxlRGF0YUJhc2U2NDtcclxuXHJcbiAgICAgIHRoaXMuQXR0YWNobWVudElEID0gdGhpcy5pbWFnZURyYXdBdHRhY2htZW50LklEO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVjb3JkQ2hhbmdlLmVtaXQodGhpcy5yZWNvcmQpO1xyXG5cclxuXHJcbiAgICAvLyBDbG9ubyBsJ2F0dGFjaG1lbnQgb3JpZ2luYWxlLCBnbGkgY2FtYmlvIGlsIEZpbGVCYXNlIGUgZ2xpIGF6emVybyBsJ0lEXHJcblxyXG4gICAgLy8gdGhpcy5pbWFnZURyYXdBdHRhY2htZW50LkZpbGVOYW1lID0gXCJcIjtcclxuICAgIC8vIHRoaXMuaW1hZ2VEcmF3QXR0YWNobWVudC5GaWxlUGF0aCA9IFwiXCI7XHJcblxyXG4gICAgdGhpcy5pbWFnZURyYXcuZW1pdCh0aGlzLmltYWdlRHJhd0F0dGFjaG1lbnQpO1xyXG5cclxuXHJcblxyXG5cclxuXHJcbiAgICB0aGlzLnVwZGF0ZUZpZWxkKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAvLyBTZSB2aWVuZSBtb2RpZmljYXRvIGlsIHZhbG9yZSBkaSBcIm5nTW9kZWxJbnB1dFwiIGFsbG9yYSBhZ2dpb3JuYSBsJ2lucHV0XHJcbiAgICBpZiAoY2hhbmdlc1sncmVjb3JkJ10gIT0gdW5kZWZpbmVkICYmIGNoYW5nZXNbJ3JlY29yZCddLmZpcnN0Q2hhbmdlID09IGZhbHNlICYmIEpTT04uc3RyaW5naWZ5KGNoYW5nZXNbJ3JlY29yZCddLmN1cnJlbnRWYWx1ZSkgIT0gSlNPTi5zdHJpbmdpZnkoY2hhbmdlc1sncmVjb3JkJ10ucHJldmlvdXNWYWx1ZSkpIHtcclxuICAgICAgdGhpcy5yZWNvcmQgPSBjaGFuZ2VzWydyZWNvcmQnXS5jdXJyZW50VmFsdWU7XHJcbiAgICAgIHRoaXMudXBkYXRlRmllbGQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICAvLyB1cGRhdGVNZXRhZGF0YVZhbGlkaXR5KCkge1xyXG4gIC8vICAgaWYgKHRoaXMucHJlTG9hZGVkSW1hZ2VNZXRhZGF0YUZvcm1Hcm91cC5pbnZhbGlkKSB7XHJcbiAgLy8gICAgIHRoaXMuZmllbGQuRm9ybUZvcm1Hcm91cC5jb250cm9sc1t0aGlzLmZpZWxkLk5hbWVdLnNldEVycm9ycyh7ICdpbmNvcnJlY3QnOiB0cnVlIH0pO1xyXG4gIC8vICAgfSBlbHNlIHtcclxuICAvLyAgICAgdGhpcy5maWVsZC5Gb3JtRm9ybUdyb3VwLmNvbnRyb2xzW3RoaXMuZmllbGQuTmFtZV0uc2V0RXJyb3JzKG51bGwpO1xyXG4gIC8vICAgfVxyXG4gIC8vICAgdGhpcy5vblJlY29yZFZhbHVlQ2hhbmdlKCk7XHJcbiAgLy8gfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBhZ2dpb3JuYXJlIGlsIHZhbG9yZSBkZWwgY2FtcG8gcXVhbmRvIHF1ZXN0byDDqCByYXBwcmVzZW50YXRvIGRhIHVuYSBmb3JtdWxhLlxyXG4gICAqL1xyXG4gIHVwZGF0ZUZpZWxkKCkge1xyXG4gICAgaWYgKHRoaXMuZmllbGQuRm9ybXVsYSkge1xyXG4gICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuRXZhbHVhdGVGaWVsZEZvcm11bGEodGhpcy5maWVsZC5Gb3JtdWxhLCB0aGlzLnJlY29yZCwgbnVsbCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5maWVsZC5WaXNpYmxlSWYpIHtcclxuICAgICAgdGhpcy5maWVsZC5Jbkxpc3RWaWV3ID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuRXZhbHVhdGVGaWVsZEZvcm11bGEodGhpcy5maWVsZC5WaXNpYmxlSWYsIHRoaXMucmVjb3JkLCBudWxsKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICByZXNldFByZUxvYWRlZEltYWdlKCkge1xyXG4gICAgdGhpcy53aWR0aCA9IG51bGw7XHJcbiAgICB0aGlzLmhlaWdodCA9IG51bGw7XHJcbiAgICAvKnRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSBbSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmZpZWxkLkNvbnRleHR1YWxBdHRhY2htZW50KSldOyovXHJcbiAgICB0aGlzLmdldEltYWdlRGltZW5zaW9ucygpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIGludm9jYXRvIHF1YW5kbyB2ZW5nb25vIGFnZ2l1bnRpIG8gZWxpbWluYXRpIGdsaSBhbGxlZ2F0aSBuZWwgY29tcG9uZW50ZSBBdHRhY2htZW50RmllbGRUZW1wbGF0ZS5cclxuICAgKiBTZSBsJ0ltYWdlRmllbGQgw6ggYWJpbGl0YXRvIGFsIGRpc2Vnbm8gKEVuYWJsZURyYXdpbmcgPT0gdHJ1ZSksIG5vbiBwZXJtZXR0ZSBhbGxlZ2F0aSBtdWx0aXBsaSAoSXNNdWxpdEF0dGFjaCA9PSBmYWxzZSlcclxuICAgKiBlIG5lbCBSZWNvcmQgY29ycmVudGUgw6ggcHJlc2VudGUgbCdpbW1hZ2luZSBjYXJpY2F0YSBkYWxsJ3V0ZW50ZSBhbGxvcmEgcmVjdXBlcmEgbGUgZGltZW5zaW9uaSBkZWxsJ2ltbWFnaW5lIGVcclxuICAgKiBhcHJlIGlsIGRpYWxvZyBjb24gaWwgY29tcG9uZW50ZSBpbWFnZS1kcmF3aW5nIHBlciBwZXJtZXR0ZXJlIGlsIGRpc2Vnbm8gc3VsbCdpbW1hZ2luZSBhcHBlbmEgY2FyaWNhdGEuXHJcbiAgICovXHJcbiAgb25BdHRhY2htZW50c0NoYW5nZSgpIHtcclxuICAgIC8qXHJcbiAgICBpZiAoIXRoaXMuZmllbGQuQXR0YWNoRGVmaW5pdGlvbi5Jc011bHRpQXR0YWNoICYmIHRoaXMuZmllbGQuRW5hYmxlRHJhd2luZyAmJiB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdICYmIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV1bMF0pIHtcclxuICAgICAgdGhpcy5nZXRJbWFnZURpbWVuc2lvbnMoKTtcclxuICAgICAgdGhpcy5kaWFsb2dJbWFnZURyb3dpbmdSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKHRoaXMuZGlhbG9nSW1hZ2VEcm93aW5nLCB7XHJcbiAgICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICAgIGhhc0JhY2tkcm9wOiB0cnVlLFxyXG4gICAgICAgIHdpZHRoOiAnNzUlJ1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgICovXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gaW52b2NhdG8gYWwgc2FsdmF0YWdnaW8gZGVsbCdpbW1hZ2luZSBkYWwgY29tcG9uZW50ZSBpbWFnZS1kcmF3aW5nLlxyXG4gICAqIFRyYXNmb3JtYSBpbCBCbG9iIHJpY2V2dXRvIGluIHVuIGJhc2U2NCwgYWdnaW9ybmEgaWwgRmlsZUNvbnRldFR5cGUgZSBpbCBGaWxlRGF0YUJhc2U2NFxyXG4gICAqIGRlbGwnYWxsZWdhdG8gY2FyaWNhdG8gZSBjaGl1ZGUgaWwgZGlhbG9nIGluIGN1aSBkaXNlZ25hcmUuXHJcbiAgICogQHBhcmFtIGRyYXduUGljdHVyZSBCbG9iIGRlbGwnaW1tYWdpbmUgZGlzZWduYXRhLlxyXG4gICAqL1xyXG4gIGFzeW5jIHNhdmVEcmF3KGRyYXduUGljdHVyZTogQmxvYikge1xyXG4gICAgbGV0IGJhc2U2NEZpbGUgPSBhd2FpdCB0b0Jhc2U2NChkcmF3blBpY3R1cmUpO1xyXG4gICAgaWYgKGJhc2U2NEZpbGUpIHtcclxuICAgICAgdGhpcy5EcmF3RmlsZUJhc2U2NCA9IGJhc2U2NEZpbGUuc3BsaXQoXCIsXCIpWzFdO1xyXG4gICAgICB0aGlzLkZpbGVEYXRhQmFzZTY0ID0gdGhpcy5EcmF3RmlsZUJhc2U2NDtcclxuXHJcbiAgICAgIC8vIENsb25vIGwnYXR0YWNobWVudCBvcmlnaW5hbGUsIGdsaSBjYW1iaW8gaWwgRmlsZUJhc2UgZSBnbGkgYXp6ZXJvIGwnSURcclxuICAgICAgdGhpcy5pbWFnZURyYXdBdHRhY2htZW50LkZpbGVEYXRhQmFzZTY0ID0gdGhpcy5EcmF3RmlsZUJhc2U2NDtcclxuXHJcbiAgICAgIHRoaXMuaW1hZ2VEcmF3LmVtaXQodGhpcy5pbWFnZURyYXdBdHRhY2htZW50KTtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuZGlhbG9nSW1hZ2VEcmF3aW5nUmVmKSB7XHJcbiAgICAgIHRoaXMuY2xvc2VJbWFnZURyb3dpbmdEaWFsb2coKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgY2hpdWRlcmUgaWwgZGlhbG9nIGluIGN1aSBkaXNlZ25hcmUgc3VsbCdpbW1hZ2luZSBjYXJpYXRhIGUgc3Z1b3RhcmUgbGUgZGltZW5zaW9uaS5cclxuICAgKi9cclxuICBjbG9zZUltYWdlRHJvd2luZ0RpYWxvZygpIHtcclxuICAgIHRoaXMuZGlhbG9nSW1hZ2VEcmF3aW5nUmVmLmNsb3NlKCk7XHJcbiAgICB0aGlzLndpZHRoID0gbnVsbDtcclxuICAgIHRoaXMuaGVpZ2h0ID0gbnVsbDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgcmVjdXBlcmFyZSBsZSBkaW1lbnNpb25pIGRlbGwnaW1tYWdpbmUgY2FyaWNhdGEgcGVyIG1vc3RyYXJlIGNvcnJldHRhbWVudGVcclxuICAgKiBpbCBjb21wb25lbnRlIGltYWdlLWRyYXdpbmcuIFNlIG5vbiB2aWVuZSBlc2VndWl0byBxdWVzdG8gcGFzc2FnZ2lvIGwnYXJlYSBpbiBjdWkgZGlzZWduYXJlIFxyXG4gICAqIMOoIHBpw7kgZ3JhbmRlIGRlbGwnaW1tYWdpbmUgc3Rlc3NhIGUgYWwgc2FsdmF0YWdnaW8gaSB0cmF0dGkgZGlzZWduYXRpIHZlbmdvbm8gc3Bvc3RhdGkuIFxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0SW1hZ2VEaW1lbnNpb25zKCkge1xyXG4gICAgdmFyIGJsb2I6IEJsb2IgPSB0aGlzLmdldEJsb2JGcm9tQmFzZTY0KCk7XHJcbiAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xyXG4gICAgcmVhZGVyLm9ubG9hZCA9IChlOiBhbnkpID0+IHtcclxuICAgICAgY29uc3QgaW1hZ2UgPSBuZXcgSW1hZ2UoKTtcclxuICAgICAgaW1hZ2Uuc3JjID0gZS50YXJnZXQucmVzdWx0O1xyXG4gICAgICBpbWFnZS5vbmxvYWQgPSBycyA9PiB7XHJcbiAgICAgICAgdGhpcy5oZWlnaHQgPSBycy5jdXJyZW50VGFyZ2V0WydoZWlnaHQnXTtcclxuICAgICAgICB0aGlzLndpZHRoID0gcnMuY3VycmVudFRhcmdldFsnd2lkdGgnXTtcclxuICAgICAgfTtcclxuICAgIH07XHJcbiAgICByZWFkZXIucmVhZEFzRGF0YVVSTChibG9iKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgY29udmVydGlyZSBpbCBiYXNlNjQgZGkgdW4naW1tYWdpbmUgaW4gdW4gQmxvYi5cclxuICAgKiBOZWNlc3NhcmlvIHBlciBpbCByZWN1cGVybyBkZWxsZSBkaW1lbnNpb25pIGRlbGwnaW1tYWdpbmUgY2FyaWNhdGEgYSBwYXJ0aXJlIGRhbCBzdW8gYmFzZTY0LlxyXG4gICAqIFZpZW5lIGVzZWd1aXRvIHNvbG8gbmVsIGNhc28gaW4gY3VpIGwnSW1hZ2VGaWVsZCBub24gYW1tZXR0ZSBhbGxlZ2F0aSBtdWx0aXBsaS5cclxuICAgKiBAcmV0dXJucyBSZXN0aXR1aXNjZSBpbCBCbG9iIGRlbGwnaW1tYWdpbmUgY2FyaWNhdGEuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXRCbG9iRnJvbUJhc2U2NCgpIHtcclxuICAgIGNvbnN0IGJ5dGVDaGFyYWN0ZXJzID0gYXRvYih0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdWzBdLkZpbGVEYXRhQmFzZTY0KTtcclxuICAgIGNvbnN0IGJ5dGVOdW1iZXJzID0gbmV3IEFycmF5KGJ5dGVDaGFyYWN0ZXJzLmxlbmd0aCk7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGJ5dGVDaGFyYWN0ZXJzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGJ5dGVOdW1iZXJzW2ldID0gYnl0ZUNoYXJhY3RlcnMuY2hhckNvZGVBdChpKTtcclxuICAgIH1cclxuICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGJ5dGVOdW1iZXJzKTtcclxuICAgIHJldHVybiBuZXcgQmxvYihbYnl0ZUFycmF5XSwgeyB0eXBlOiB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdWzBdLkZpbGVDb250ZW50VHlwZSB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgZW1ldHRlcmUgbCdldmVudG8gY2hlIGlsIHZhbG9yZSBkZWwgcmVjb3JkIMOoIGNhbWJpYXRvLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgb25SZWNvcmRWYWx1ZUNoYW5nZSgpIHtcclxuICAgIGlmICghdGhpcy5maWVsZC5Gb3JtdWxhKSB7XHJcbiAgICAgIHRoaXMucmVjb3JkQ2hhbmdlLmVtaXQodGhpcy5yZWNvcmQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9wZW5EcmF3KCl7XHJcbiAgICB0aGlzLmRpYWxvZ0ltYWdlRHJhd2luZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4odGhpcy5kaWFsb2dJbWFnZURyYXdpbmcsIHtcclxuICAgICAgZGlzYWJsZUNsb3NlOiB0cnVlLFxyXG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcclxuICAgICAgcGFuZWxDbGFzczogJ2ltYWdlLW1vZGFsJyxcclxuICAgICAgd2lkdGg6ICc3NSUnXHJcbiAgICB9KTtcclxuXHJcbiAgICBpZiAodGhpcy5BdHRhY2htZW50SUQgIT0gbnVsbCAmJiBOdW1iZXIodGhpcy5BdHRhY2htZW50SUQpID4gMCl7XHJcbiAgICAgIHRoaXMubG9hZCh0aGlzLkF0dGFjaG1lbnRJRCxbSW1hZ2VGb2xkZXJFbnVtLlJlZ3VsYXJdKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuRmlsZUJhc2U2NCA9IHRoaXMuRmlsZURhdGFCYXNlNjQ7XHJcbiAgICAgIHRoaXMuZHJhd2luZ0xvYWRlZCA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgbG9hZChJRCxUeXBlcyl7XHJcblxyXG4gICAgdGhpcy5kcmF3aW5nTG9hZGVkID0gZmFsc2U7XHJcblxyXG4gICAgICAvLyBwcmVwYXJvIGxhIHZlcnNpb25lIGNvcnJldHRhIGRlbCBmb3JtXHJcbiAgICAgIHZhciBkeW5hbWljTW9kdWxlUGFyYW1zID0gW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIFBhcmFtTmFtZTogXCJBdHRhY2htZW50SURcIixcclxuICAgICAgICAgIFBhcmFtVmFsdWU6IElELFxyXG4gICAgICAgICAgUGFyYW1UeXBlOiBQYXJhbVR5cGVFbnVtW1wiUXVlcnkgcGFyYW1cIl0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBQYXJhbU5hbWU6IFwiVHlwZXNcIixcclxuICAgICAgICAgIFBhcmFtVmFsdWU6IFR5cGVzLFxyXG4gICAgICAgICAgUGFyYW1UeXBlOiBQYXJhbVR5cGVFbnVtW1wiUXVlcnkgcGFyYW1cIl0sXHJcbiAgICAgICAgfSxcclxuICAgICAgXTsgICAgXHJcbiAgICAgIFxyXG4gICAgdGhpcy51dGlsaXR5SGVscGVyU2VydmljZS5SdW5FbmRQb2ludENhbGwoXHJcbiAgICAgIHRoaXMuZW5kUG9pbnRDb25maWd1cmF0aW9uLkZvcm1zLkdldEF0dGFjaG1lbnRXaXRoQmFzZXM2NCxcclxuICAgICAgZHluYW1pY01vZHVsZVBhcmFtcyxcclxuICAgICAgKHJlczogRHluQXR0YWNobWVudCkgPT4ge1xyXG5cclxuICAgICAgICB0aGlzLkZpbGVCYXNlNjQgPSByZXMuRmlsZUJhc2VzNjRbSW1hZ2VGb2xkZXJFbnVtLlJlZ3VsYXJdO1xyXG4gICAgICAgIHRoaXMuZHJhd2luZ0xvYWRlZCA9IHRydWU7XHJcblxyXG4gICAgICB9LFxyXG4gICAgICAoZXJyKSA9PiB7XHJcblxyXG4gICAgICB9XHJcbiAgICApOyAgICBcclxuICB9XHJcblxyXG4gIGxvYWRPcmlnaW5hbCgpe1xyXG4gICAgdGhpcy5sb2FkKHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JRCxbSW1hZ2VGb2xkZXJFbnVtLlJlZ3VsYXJdKTtcclxuICB9XHJcbiAgXHJcbn0iLCJcclxuPGRpdiBjbGFzcz1cInJvdyBpbWFnZUNvbnRhaW5lclwiIHN0eWxlPVwid2lkdGg6IHt7aW1hZ2VXaWR0aH19cHg7XCI+XHJcbiAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj57e2ZpZWxkLkRlc2NyaXB0aW9ufX08L2Rpdj5cclxuICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgICAgICA8aW1nICpuZ0lmPVwiZmllbGQuRHluQXR0YWNobWVudFwiXHJcbiAgICAgICAgICAgICAgIHNyYz1cImRhdGE6e3tmaWVsZC5EeW5BdHRhY2htZW50LkZpbGVDb250ZW50VHlwZX19O2Jhc2U2NCx7e0ZpbGVEYXRhQmFzZTY0fX1cIlxyXG4gICAgICAgICAgICAgICBbaGVpZ2h0XT1cImZpZWxkLkR5bkF0dGFjaG1lbnQuUmVzaXplZEltYWdlSGVpZ2h0UHggIT0gbnVsbCA/IGZpZWxkLkR5bkF0dGFjaG1lbnQuUmVzaXplZEltYWdlSGVpZ2h0UHggOiAxMjhcIlxyXG4gICAgICAgICAgICAgICBjbGFzcz1cInNpbmdsZUltYWdlXCI+XHJcbiAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZmllbGQuRW5hYmxlRHJhd2luZ1wiIGNsYXNzPVwiY29sLTEyIGRyYXdCdXR0b25cIj5cclxuICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBidG4tdzEwMFwiIChjbGljayk9XCJvcGVuRHJhdygpXCI+RGlzZWduYTwvYnV0dG9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZmllbGQuRHluQXR0YWNobWVudC5CdXR0b25LZXkgIT0gbnVsbCAmJiBmaWVsZC5EeW5BdHRhY2htZW50LkJ1dHRvbktleSAhPSAnJ1wiIGNsYXNzPVwiY29sLTEyIGZsZXgganVzdGlmeS1jb250ZW50LWFyb3VuZCBidXR0b25rZXlcIj5cclxuICAgICAgICAgICAgICAgPGRpdj5FdGljaGV0dGE8L2Rpdj48ZGl2Pnt7ZmllbGQuRHluQXR0YWNobWVudC5CdXR0b25LZXl9fTwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiZmllbGQuRHluQXR0YWNobWVudC5CdXR0b25WYWx1ZSAhPSBudWxsICYmIGZpZWxkLkR5bkF0dGFjaG1lbnQuQnV0dG9uVmFsdWUgIT0gJydcIiBjbGFzcz1cImNvbC0xMiBmbGV4IGp1c3RpZnktY29udGVudC1hcm91bmQgYnV0dG9udmFsdWVcIj4gXHJcbiAgICAgICAgICAgICAgIDxkaXY+VmFsb3JlPC9kaXY+PGRpdj57e2ZpZWxkLkR5bkF0dGFjaG1lbnQuQnV0dG9uVmFsdWV9fTwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgPC9kaXY+ICAgXHJcbjwvZGl2PlxyXG5cclxuPCEtLSBESUFMT0cgUEVSIERJU0VHTkFSRSBTVUwgTlVPVk8gQUxMRUdBVE8gQ0FSSUNBVE8gLS0+XHJcbjxuZy10ZW1wbGF0ZSAjZGlhbG9nSW1hZ2VEcmF3aW5nPlxyXG4gICAgIDxkaXYgY2xhc3M9XCJwYWRkZXJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMiBjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dG13LWltYWdlLWRyYXdlciAqbmdJZj1cImRyYXdpbmdMb2FkZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3NyY109XCInZGF0YTonKyBmaWVsZC5EeW5BdHRhY2htZW50LkZpbGVDb250ZW50VHlwZSArICc7YmFzZTY0LCcrIEZpbGVCYXNlNjRcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtpbkNvbmZpZ109XCJpbkNvbmZpZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0NhbmNlbEJ1dHRvbl09XCJmYWxzZVwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2VuYWJsZUxvYWRBbm90aGVySW1hZ2VdPVwiZmFsc2VcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtlbmFibGVSZW1vdmVJbWFnZV09XCJmYWxzZVwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3dpZHRoXT1cImZpZWxkLkR5bkF0dGFjaG1lbnQuSW1hZ2VXaWR0aFB4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtoZWlnaHRdPVwiZmllbGQuRHluQXR0YWNobWVudC5JbWFnZUhlaWdodFB4XCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaTE4bl09XCJpMThuXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0NhbmNlbEJ1dHRvbl09XCJ0cnVlXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoc2F2ZSk9XCJzYXZlRHJhdygkZXZlbnQpXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAobG9hZE9yaWdpbmFsKT1cImxvYWRPcmlnaW5hbCgpXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAoY2xvc2VEaWFsb2cpPVwiY2xvc2VJbWFnZURyb3dpbmdEaWFsb2coKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdG13LWltYWdlLWRyYXdlcj5cclxuICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
|
|
256
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtZmllbGQtdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2ZpZWxkLXRlbXBsYXRlcy9pbWFnZS1maWVsZC10ZW1wbGF0ZS9pbWFnZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2ltYWdlLWZpZWxkLXRlbXBsYXRlL2ltYWdlLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUE4QixTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakksT0FBTyxFQUFjLGVBQWUsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBR3pGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBR25GLE9BQU8sRUFBeUIsYUFBYSxFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFdEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7OztBQUV4RTs7OztHQUlHO0FBQ0gsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBUyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtJQUMvRCxNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO0lBQ2hDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxP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QUs7Z0JBQ2pCLFNBQVMsRUFBRSxhQUFhLENBQUMsYUFBYSxDQUFDO2FBQ3hDO1NBQ0YsQ0FBQztRQUVKLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLENBQ3ZDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEVBQ3pELG1CQUFtQixFQUNuQixDQUFDLEdBQWtCLEVBQUUsRUFBRTtZQUVyQixJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBRTVCLENBQUMsRUFDRCxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBRVIsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFDLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQzs7eUhBblJVLDJCQUEyQjs2R0FBM0IsMkJBQTJCLGdaQzVCeEMsazhFQTZDYzs0RkRqQkQsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHNCQUFzQjttSUFNdkIscUJBQXFCO3NCQUE3QixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU07Z0JBd0I0QyxrQkFBa0I7c0JBQXBFLFNBQVM7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEltYWdlRmllbGQsIEltYWdlRm9sZGVyRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9maWVsZHMvaW1hZ2VGaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IFJlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9yZWNvcmQubW9kZWwnO1xyXG5pbXBvcnQgeyBJQmFzZUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vaW50ZXJmYWNlcy9pQmFzZUZpZWxkQ29tcG9uZW50LmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFV0aWxpdHlIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvdXRpbGl0eUhlbHBlci5zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgSTE4bkludGVyZmFjZSB9IGZyb20gJy4uLy4uL3Rtdy1pbWFnZS1kcmF3ZXIvaTE4bic7XHJcbmltcG9ydCB7IEVuZFBvaW50Q29uZmlndXJhdGlvbiwgUGFyYW1UeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9lbmRQb2ludENvbmZpZ3VyYXRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBEeW5BdHRhY2htZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2R5bkF0dGFjaG1lbnQnO1xyXG5pbXBvcnQgeyBEYXRhR2V0dGVyVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvYmFzZUZpZWxkLm1vZGVsJztcclxuXHJcbi8qKlxyXG4gKiBNZXRvZG8gcGVyIHJlY3VwZXJhcmUsIGEgcGFydGlyZSBkYSB1biBCbG9iLCBsYSBzdHJpbmdhIGNvbnRlbmVudGUgaWwgYmFzZTY0IGRlbCBmaWxlLlxyXG4gKiBVc2F0byBwZXIgcHJlbmRlcmUgaWwgYmFzZTY0IGRlbGwnaW1tYWdpbmUgZG9wbyBjaGUgbCd1dGVudGUgY2kgaGEgZGlzZWduYXRvIHNvcHJhLlxyXG4gKiBAcGFyYW0gZmlsZSBCbG9iIGNoZSByYXBwcmVzZW50YSBsJ2ltbWFnaW5lLlxyXG4gKi9cclxuY29uc3QgdG9CYXNlNjQgPSBmaWxlID0+IG5ldyBQcm9taXNlPHN0cmluZz4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XHJcbiAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHJlc29sdmUocmVhZGVyLnJlc3VsdC50b1N0cmluZygpKTtcclxuICByZWFkZXIub25lcnJvciA9IGVycm9yID0+IHJlamVjdChlcnJvcik7XHJcbn0pO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpbWFnZS1maWVsZC10ZW1wbGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ltYWdlLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbWFnZS1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbWFnZUZpZWxkVGVtcGxhdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgSUJhc2VGaWVsZENvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIGVuZFBvaW50Q29uZmlndXJhdGlvbjogRW5kUG9pbnRDb25maWd1cmF0aW9uO1xyXG4gIEBJbnB1dCgpIHJlY29yZDogUmVjb3JkO1xyXG4gIEBJbnB1dCgpIGZpZWxkOiBJbWFnZUZpZWxkO1xyXG4gIEBJbnB1dCgpIGluQ29uZmlnOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQE91dHB1dCgpIHJlY29yZENoYW5nZTogRXZlbnRFbWl0dGVyPFJlY29yZD4gPSBuZXcgRXZlbnRFbWl0dGVyPFJlY29yZD4oKTtcclxuICBAT3V0cHV0KCkgaW1hZ2VEcmF3OiBFdmVudEVtaXR0ZXI8RHluQXR0YWNobWVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPER5bkF0dGFjaG1lbnQ+KCk7XHJcblxyXG4gIGltYWdlV2lkdGg6IG51bWJlciA9IDA7XHJcbiAgZHJhd2luZ0xvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEZpbGVCYXNlNjQ6IHN0cmluZyA9IFwiXCI7XHJcbiAgRHJhd0ZpbGVCYXNlNjQ6IHN0cmluZyA9IFwiXCI7XHJcbiAgRmlsZURhdGFCYXNlNjQ6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gIEF0dGFjaG1lbnRJRDogc3RyaW5nIHwgbnVtYmVyO1xyXG5cclxuICBpbWFnZURyYXdBdHRhY2htZW50OiBEeW5BdHRhY2htZW50O1xyXG4gIFxyXG5cclxuICAvL3ByZUxvYWRlZEltYWdlTWV0YWRhdGFGb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIC8vI3JlZ2lvbiBQcm9wcmlldMOgIHBlciBjb25maWd1cmFyZSBpbCBjb21wb25lbnRlIG5neC1pbWFnZS1kcmF3aW5nIGUgYXByaXJlIGlsIHJlbGF0aXZvIGRpYWxvZy5cclxuICBwdWJsaWMgd2lkdGggPSBudWxsO1xyXG4gIHB1YmxpYyBoZWlnaHQgPSBudWxsO1xyXG4gIHB1YmxpYyBpMThuOiBJMThuSW50ZXJmYWNlID0ge1xyXG4gICAgc2F2ZUJ0bjogJ1NhbHZhIG1vZGlmaWNoZScsXHJcbiAgICBjYW5jZWxCdG46ICdSaWNhcmljYSBvcmlnaW5hbGUnLFxyXG4gICAgY2xvc2VEaWFsb2c6ICdBbm51bGxhIGRpc2Vnbm8nLFxyXG4gIH07XHJcbiAgZGlhbG9nSW1hZ2VEcmF3aW5nUmVmOiBNYXREaWFsb2dSZWY8VGVtcGxhdGVSZWY8YW55Pj47XHJcbiAgQFZpZXdDaGlsZChcImRpYWxvZ0ltYWdlRHJhd2luZ1wiLCB7IHN0YXRpYzogdHJ1ZSB9KSBkaWFsb2dJbWFnZURyYXdpbmc6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcclxuICAgIHByaXZhdGUgdXRpbGl0eUhlbHBlclNlcnZpY2U6IFV0aWxpdHlIZWxwZXJTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgaWYgKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT0gbnVsbCB8fCB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID09IDApe1xyXG4gICAgICB0aGlzLkZpbGVEYXRhQmFzZTY0ID0gdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LkZpbGVEYXRhQmFzZTY0O1xyXG4gICAgICB0aGlzLmltYWdlV2lkdGggPSAgKHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5SZXNpemVkSW1hZ2VIZWlnaHRQeCAvIHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JbWFnZUhlaWdodFB4ICogdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LkltYWdlV2lkdGhQeCkgKyA1MDtcclxuICAgICAgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9IHRoaXMuZmllbGQuRHluQXR0YWNobWVudDtcclxuXHJcbiAgICAgIHRoaXMuaW1hZ2VEcmF3QXR0YWNobWVudCA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5maWVsZC5EeW5BdHRhY2htZW50KSk7XHJcbiAgICAgIHRoaXMuaW1hZ2VEcmF3QXR0YWNobWVudC5JRCA9IDA7XHJcblxyXG4gICAgICB0aGlzLkF0dGFjaG1lbnRJRCA9IHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JRDtcclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodHlwZW9mIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT09ICdzdHJpbmcnKXtcclxuICAgICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gSlNPTi5wYXJzZSh0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmltYWdlV2lkdGggPSAgKHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5SZXNpemVkSW1hZ2VIZWlnaHRQeCAvIHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JbWFnZUhlaWdodFB4ICogdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LkltYWdlV2lkdGhQeCkgKyA1MDtcclxuXHJcbiAgICAgIGlmICgodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSBhcyBEeW5BdHRhY2htZW50KS5GaWxlQmFzZXM2NCAhPSBudWxsKXtcclxuICAgICAgICB0aGlzLkZpbGVEYXRhQmFzZTY0ID0gKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gYXMgRHluQXR0YWNobWVudCkuRmlsZUJhc2VzNjRbSW1hZ2VGb2xkZXJFbnVtLlJlZ3VsYXJdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuRmlsZURhdGFCYXNlNjQgPSAodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSBhcyBEeW5BdHRhY2htZW50KS5GaWxlRGF0YUJhc2U2NDtcclxuICAgICAgfVxyXG5cclxuICAgICAgKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gYXMgRHluQXR0YWNobWVudCkuRmlsZURhdGFCYXNlNjQgPSB0aGlzLkZpbGVEYXRhQmFzZTY0O1xyXG5cclxuICAgICAgdGhpcy5pbWFnZURyYXdBdHRhY2htZW50ID0gdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXTtcclxuICAgICAgdGhpcy5pbWFnZURyYXdBdHRhY2htZW50LkZpbGVEYXRhQmFzZTY0ID0gdGhpcy5GaWxlRGF0YUJhc2U2NDtcclxuXHJcbiAgICAgIHRoaXMuQXR0YWNobWVudElEID0gdGhpcy5pbWFnZURyYXdBdHRhY2htZW50LklEO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVjb3JkQ2hhbmdlLmVtaXQodGhpcy5yZWNvcmQpO1xyXG5cclxuXHJcbiAgICAvLyBDbG9ubyBsJ2F0dGFjaG1lbnQgb3JpZ2luYWxlLCBnbGkgY2FtYmlvIGlsIEZpbGVCYXNlIGUgZ2xpIGF6emVybyBsJ0lEXHJcblxyXG4gICAgLy8gdGhpcy5pbWFnZURyYXdBdHRhY2htZW50LkZpbGVOYW1lID0gXCJcIjtcclxuICAgIC8vIHRoaXMuaW1hZ2VEcmF3QXR0YWNobWVudC5GaWxlUGF0aCA9IFwiXCI7XHJcblxyXG4gICAgdGhpcy5pbWFnZURyYXcuZW1pdCh0aGlzLmltYWdlRHJhd0F0dGFjaG1lbnQpO1xyXG5cclxuXHJcblxyXG5cclxuXHJcbiAgICB0aGlzLnVwZGF0ZUZpZWxkKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAvLyBTZSB2aWVuZSBtb2RpZmljYXRvIGlsIHZhbG9yZSBkaSBcIm5nTW9kZWxJbnB1dFwiIGFsbG9yYSBhZ2dpb3JuYSBsJ2lucHV0XHJcbiAgICBpZiAoY2hhbmdlc1sncmVjb3JkJ10gIT0gdW5kZWZpbmVkICYmIGNoYW5nZXNbJ3JlY29yZCddLmZpcnN0Q2hhbmdlID09IGZhbHNlICYmIEpTT04uc3RyaW5naWZ5KGNoYW5nZXNbJ3JlY29yZCddLmN1cnJlbnRWYWx1ZSkgIT0gSlNPTi5zdHJpbmdpZnkoY2hhbmdlc1sncmVjb3JkJ10ucHJldmlvdXNWYWx1ZSkpIHtcclxuICAgICAgdGhpcy5yZWNvcmQgPSBjaGFuZ2VzWydyZWNvcmQnXS5jdXJyZW50VmFsdWU7XHJcbiAgICAgIHRoaXMudXBkYXRlRmllbGQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICAvLyB1cGRhdGVNZXRhZGF0YVZhbGlkaXR5KCkge1xyXG4gIC8vICAgaWYgKHRoaXMucHJlTG9hZGVkSW1hZ2VNZXRhZGF0YUZvcm1Hcm91cC5pbnZhbGlkKSB7XHJcbiAgLy8gICAgIHRoaXMuZmllbGQuRm9ybUZvcm1Hcm91cC5jb250cm9sc1t0aGlzLmZpZWxkLk5hbWVdLnNldEVycm9ycyh7ICdpbmNvcnJlY3QnOiB0cnVlIH0pO1xyXG4gIC8vICAgfSBlbHNlIHtcclxuICAvLyAgICAgdGhpcy5maWVsZC5Gb3JtRm9ybUdyb3VwLmNvbnRyb2xzW3RoaXMuZmllbGQuTmFtZV0uc2V0RXJyb3JzKG51bGwpO1xyXG4gIC8vICAgfVxyXG4gIC8vICAgdGhpcy5vblJlY29yZFZhbHVlQ2hhbmdlKCk7XHJcbiAgLy8gfVxyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBhZ2dpb3JuYXJlIGlsIHZhbG9yZSBkZWwgY2FtcG8gcXVhbmRvIHF1ZXN0byDDqCByYXBwcmVzZW50YXRvIGRhIHVuYSBmb3JtdWxhLlxyXG4gICAqL1xyXG4gIHVwZGF0ZUZpZWxkKCkge1xyXG4gICAgaWYgKCh0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclR5cGUgPT0gRGF0YUdldHRlclR5cGVFbnVtLk1hbnVhbGUgfHwgdGhpcy5maWVsZC5EYXRhR2V0dGVyLkRhdGFHZXR0ZXJUeXBlID09IERhdGFHZXR0ZXJUeXBlRW51bS5Gb3JtdWxhKSAmJiB0aGlzLmZpZWxkLkZvcm11bGEpIHtcclxuICAgICAgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLkV2YWx1YXRlRmllbGRGb3JtdWxhKHRoaXMuZmllbGQuRm9ybXVsYSwgdGhpcy5yZWNvcmQsIG51bGwpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuZmllbGQuVmlzaWJsZUlmKSB7XHJcbiAgICAgIHRoaXMuZmllbGQuSW5MaXN0VmlldyA9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLkV2YWx1YXRlRmllbGRGb3JtdWxhKHRoaXMuZmllbGQuVmlzaWJsZUlmLCB0aGlzLnJlY29yZCwgbnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgcmVzZXRQcmVMb2FkZWRJbWFnZSgpIHtcclxuICAgIHRoaXMud2lkdGggPSBudWxsO1xyXG4gICAgdGhpcy5oZWlnaHQgPSBudWxsO1xyXG4gICAgLyp0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gW0pTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5maWVsZC5Db250ZXh0dWFsQXR0YWNobWVudCkpXTsqL1xyXG4gICAgdGhpcy5nZXRJbWFnZURpbWVuc2lvbnMoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBpbnZvY2F0byBxdWFuZG8gdmVuZ29ubyBhZ2dpdW50aSBvIGVsaW1pbmF0aSBnbGkgYWxsZWdhdGkgbmVsIGNvbXBvbmVudGUgQXR0YWNobWVudEZpZWxkVGVtcGxhdGUuXHJcbiAgICogU2UgbCdJbWFnZUZpZWxkIMOoIGFiaWxpdGF0byBhbCBkaXNlZ25vIChFbmFibGVEcmF3aW5nID09IHRydWUpLCBub24gcGVybWV0dGUgYWxsZWdhdGkgbXVsdGlwbGkgKElzTXVsaXRBdHRhY2ggPT0gZmFsc2UpXHJcbiAgICogZSBuZWwgUmVjb3JkIGNvcnJlbnRlIMOoIHByZXNlbnRlIGwnaW1tYWdpbmUgY2FyaWNhdGEgZGFsbCd1dGVudGUgYWxsb3JhIHJlY3VwZXJhIGxlIGRpbWVuc2lvbmkgZGVsbCdpbW1hZ2luZSBlXHJcbiAgICogYXByZSBpbCBkaWFsb2cgY29uIGlsIGNvbXBvbmVudGUgaW1hZ2UtZHJhd2luZyBwZXIgcGVybWV0dGVyZSBpbCBkaXNlZ25vIHN1bGwnaW1tYWdpbmUgYXBwZW5hIGNhcmljYXRhLlxyXG4gICAqL1xyXG4gIG9uQXR0YWNobWVudHNDaGFuZ2UoKSB7XHJcbiAgICAvKlxyXG4gICAgaWYgKCF0aGlzLmZpZWxkLkF0dGFjaERlZmluaXRpb24uSXNNdWx0aUF0dGFjaCAmJiB0aGlzLmZpZWxkLkVuYWJsZURyYXdpbmcgJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSAmJiB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdWzBdKSB7XHJcbiAgICAgIHRoaXMuZ2V0SW1hZ2VEaW1lbnNpb25zKCk7XHJcbiAgICAgIHRoaXMuZGlhbG9nSW1hZ2VEcm93aW5nUmVmID0gdGhpcy5kaWFsb2cub3Blbih0aGlzLmRpYWxvZ0ltYWdlRHJvd2luZywge1xyXG4gICAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcclxuICAgICAgICB3aWR0aDogJzc1JSdcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICAqL1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIGludm9jYXRvIGFsIHNhbHZhdGFnZ2lvIGRlbGwnaW1tYWdpbmUgZGFsIGNvbXBvbmVudGUgaW1hZ2UtZHJhd2luZy5cclxuICAgKiBUcmFzZm9ybWEgaWwgQmxvYiByaWNldnV0byBpbiB1biBiYXNlNjQsIGFnZ2lvcm5hIGlsIEZpbGVDb250ZXRUeXBlIGUgaWwgRmlsZURhdGFCYXNlNjRcclxuICAgKiBkZWxsJ2FsbGVnYXRvIGNhcmljYXRvIGUgY2hpdWRlIGlsIGRpYWxvZyBpbiBjdWkgZGlzZWduYXJlLlxyXG4gICAqIEBwYXJhbSBkcmF3blBpY3R1cmUgQmxvYiBkZWxsJ2ltbWFnaW5lIGRpc2VnbmF0YS5cclxuICAgKi9cclxuICBhc3luYyBzYXZlRHJhdyhkcmF3blBpY3R1cmU6IEJsb2IpIHtcclxuICAgIGxldCBiYXNlNjRGaWxlID0gYXdhaXQgdG9CYXNlNjQoZHJhd25QaWN0dXJlKTtcclxuICAgIGlmIChiYXNlNjRGaWxlKSB7XHJcbiAgICAgIHRoaXMuRHJhd0ZpbGVCYXNlNjQgPSBiYXNlNjRGaWxlLnNwbGl0KFwiLFwiKVsxXTtcclxuICAgICAgdGhpcy5GaWxlRGF0YUJhc2U2NCA9IHRoaXMuRHJhd0ZpbGVCYXNlNjQ7XHJcblxyXG4gICAgICAvLyBDbG9ubyBsJ2F0dGFjaG1lbnQgb3JpZ2luYWxlLCBnbGkgY2FtYmlvIGlsIEZpbGVCYXNlIGUgZ2xpIGF6emVybyBsJ0lEXHJcbiAgICAgIHRoaXMuaW1hZ2VEcmF3QXR0YWNobWVudC5GaWxlRGF0YUJhc2U2NCA9IHRoaXMuRHJhd0ZpbGVCYXNlNjQ7XHJcblxyXG4gICAgICB0aGlzLmltYWdlRHJhdy5lbWl0KHRoaXMuaW1hZ2VEcmF3QXR0YWNobWVudCk7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmRpYWxvZ0ltYWdlRHJhd2luZ1JlZikge1xyXG4gICAgICB0aGlzLmNsb3NlSW1hZ2VEcm93aW5nRGlhbG9nKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gcGVyIGNoaXVkZXJlIGlsIGRpYWxvZyBpbiBjdWkgZGlzZWduYXJlIHN1bGwnaW1tYWdpbmUgY2FyaWF0YSBlIHN2dW90YXJlIGxlIGRpbWVuc2lvbmkuXHJcbiAgICovXHJcbiAgY2xvc2VJbWFnZURyb3dpbmdEaWFsb2coKSB7XHJcbiAgICB0aGlzLmRpYWxvZ0ltYWdlRHJhd2luZ1JlZi5jbG9zZSgpO1xyXG4gICAgdGhpcy53aWR0aCA9IG51bGw7XHJcbiAgICB0aGlzLmhlaWdodCA9IG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gcGVyIHJlY3VwZXJhcmUgbGUgZGltZW5zaW9uaSBkZWxsJ2ltbWFnaW5lIGNhcmljYXRhIHBlciBtb3N0cmFyZSBjb3JyZXR0YW1lbnRlXHJcbiAgICogaWwgY29tcG9uZW50ZSBpbWFnZS1kcmF3aW5nLiBTZSBub24gdmllbmUgZXNlZ3VpdG8gcXVlc3RvIHBhc3NhZ2dpbyBsJ2FyZWEgaW4gY3VpIGRpc2VnbmFyZSBcclxuICAgKiDDqCBwacO5IGdyYW5kZSBkZWxsJ2ltbWFnaW5lIHN0ZXNzYSBlIGFsIHNhbHZhdGFnZ2lvIGkgdHJhdHRpIGRpc2VnbmF0aSB2ZW5nb25vIHNwb3N0YXRpLiBcclxuICAgKi9cclxuICBwcml2YXRlIGdldEltYWdlRGltZW5zaW9ucygpIHtcclxuICAgIHZhciBibG9iOiBCbG9iID0gdGhpcy5nZXRCbG9iRnJvbUJhc2U2NCgpO1xyXG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgIHJlYWRlci5vbmxvYWQgPSAoZTogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IGltYWdlID0gbmV3IEltYWdlKCk7XHJcbiAgICAgIGltYWdlLnNyYyA9IGUudGFyZ2V0LnJlc3VsdDtcclxuICAgICAgaW1hZ2Uub25sb2FkID0gcnMgPT4ge1xyXG4gICAgICAgIHRoaXMuaGVpZ2h0ID0gcnMuY3VycmVudFRhcmdldFsnaGVpZ2h0J107XHJcbiAgICAgICAgdGhpcy53aWR0aCA9IHJzLmN1cnJlbnRUYXJnZXRbJ3dpZHRoJ107XHJcbiAgICAgIH07XHJcbiAgICB9O1xyXG4gICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoYmxvYik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gcGVyIGNvbnZlcnRpcmUgaWwgYmFzZTY0IGRpIHVuJ2ltbWFnaW5lIGluIHVuIEJsb2IuXHJcbiAgICogTmVjZXNzYXJpbyBwZXIgaWwgcmVjdXBlcm8gZGVsbGUgZGltZW5zaW9uaSBkZWxsJ2ltbWFnaW5lIGNhcmljYXRhIGEgcGFydGlyZSBkYWwgc3VvIGJhc2U2NC5cclxuICAgKiBWaWVuZSBlc2VndWl0byBzb2xvIG5lbCBjYXNvIGluIGN1aSBsJ0ltYWdlRmllbGQgbm9uIGFtbWV0dGUgYWxsZWdhdGkgbXVsdGlwbGkuXHJcbiAgICogQHJldHVybnMgUmVzdGl0dWlzY2UgaWwgQmxvYiBkZWxsJ2ltbWFnaW5lIGNhcmljYXRhLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0QmxvYkZyb21CYXNlNjQoKSB7XHJcbiAgICBjb25zdCBieXRlQ2hhcmFjdGVycyA9IGF0b2IodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXVswXS5GaWxlRGF0YUJhc2U2NCk7XHJcbiAgICBjb25zdCBieXRlTnVtYmVycyA9IG5ldyBBcnJheShieXRlQ2hhcmFjdGVycy5sZW5ndGgpO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBieXRlQ2hhcmFjdGVycy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBieXRlTnVtYmVyc1tpXSA9IGJ5dGVDaGFyYWN0ZXJzLmNoYXJDb2RlQXQoaSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBieXRlQXJyYXkgPSBuZXcgVWludDhBcnJheShieXRlTnVtYmVycyk7XHJcbiAgICByZXR1cm4gbmV3IEJsb2IoW2J5dGVBcnJheV0sIHsgdHlwZTogdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXVswXS5GaWxlQ29udGVudFR5cGUgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gcGVyIGVtZXR0ZXJlIGwnZXZlbnRvIGNoZSBpbCB2YWxvcmUgZGVsIHJlY29yZCDDqCBjYW1iaWF0by5cclxuICAgKi9cclxuICBwcml2YXRlIG9uUmVjb3JkVmFsdWVDaGFuZ2UoKSB7XHJcbiAgICBpZiAoIXRoaXMuZmllbGQuRm9ybXVsYSkge1xyXG4gICAgICB0aGlzLnJlY29yZENoYW5nZS5lbWl0KHRoaXMucmVjb3JkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvcGVuRHJhdygpe1xyXG4gICAgdGhpcy5kaWFsb2dJbWFnZURyYXdpbmdSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKHRoaXMuZGlhbG9nSW1hZ2VEcmF3aW5nLCB7XHJcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXHJcbiAgICAgIHBhbmVsQ2xhc3M6ICdpbWFnZS1tb2RhbCcsXHJcbiAgICAgIHdpZHRoOiAnNzUlJ1xyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHRoaXMuQXR0YWNobWVudElEICE9IG51bGwgJiYgTnVtYmVyKHRoaXMuQXR0YWNobWVudElEKSA+IDApe1xyXG4gICAgICB0aGlzLmxvYWQodGhpcy5BdHRhY2htZW50SUQsW0ltYWdlRm9sZGVyRW51bS5SZWd1bGFyXSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLkZpbGVCYXNlNjQgPSB0aGlzLkZpbGVEYXRhQmFzZTY0O1xyXG4gICAgICB0aGlzLmRyYXdpbmdMb2FkZWQgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGxvYWQoSUQsVHlwZXMpe1xyXG5cclxuICAgIHRoaXMuZHJhd2luZ0xvYWRlZCA9IGZhbHNlO1xyXG5cclxuICAgICAgLy8gcHJlcGFybyBsYSB2ZXJzaW9uZSBjb3JyZXR0YSBkZWwgZm9ybVxyXG4gICAgICB2YXIgZHluYW1pY01vZHVsZVBhcmFtcyA9IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBQYXJhbU5hbWU6IFwiQXR0YWNobWVudElEXCIsXHJcbiAgICAgICAgICBQYXJhbVZhbHVlOiBJRCxcclxuICAgICAgICAgIFBhcmFtVHlwZTogUGFyYW1UeXBlRW51bVtcIlF1ZXJ5IHBhcmFtXCJdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgUGFyYW1OYW1lOiBcIlR5cGVzXCIsXHJcbiAgICAgICAgICBQYXJhbVZhbHVlOiBUeXBlcyxcclxuICAgICAgICAgIFBhcmFtVHlwZTogUGFyYW1UeXBlRW51bVtcIlF1ZXJ5IHBhcmFtXCJdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF07ICAgIFxyXG4gICAgICBcclxuICAgIHRoaXMudXRpbGl0eUhlbHBlclNlcnZpY2UuUnVuRW5kUG9pbnRDYWxsKFxyXG4gICAgICB0aGlzLmVuZFBvaW50Q29uZmlndXJhdGlvbi5Gb3Jtcy5HZXRBdHRhY2htZW50V2l0aEJhc2VzNjQsXHJcbiAgICAgIGR5bmFtaWNNb2R1bGVQYXJhbXMsXHJcbiAgICAgIChyZXM6IER5bkF0dGFjaG1lbnQpID0+IHtcclxuXHJcbiAgICAgICAgdGhpcy5GaWxlQmFzZTY0ID0gcmVzLkZpbGVCYXNlczY0W0ltYWdlRm9sZGVyRW51bS5SZWd1bGFyXTtcclxuICAgICAgICB0aGlzLmRyYXdpbmdMb2FkZWQgPSB0cnVlO1xyXG5cclxuICAgICAgfSxcclxuICAgICAgKGVycikgPT4ge1xyXG5cclxuICAgICAgfVxyXG4gICAgKTsgICAgXHJcbiAgfVxyXG5cclxuICBsb2FkT3JpZ2luYWwoKXtcclxuICAgIHRoaXMubG9hZCh0aGlzLmZpZWxkLkR5bkF0dGFjaG1lbnQuSUQsW0ltYWdlRm9sZGVyRW51bS5SZWd1bGFyXSk7XHJcbiAgfVxyXG4gIFxyXG59IiwiXHJcbjxkaXYgY2xhc3M9XCJyb3cgaW1hZ2VDb250YWluZXJcIiBzdHlsZT1cIndpZHRoOiB7e2ltYWdlV2lkdGh9fXB4O1wiPlxyXG4gICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+e3tmaWVsZC5EZXNjcmlwdGlvbn19PC9kaXY+XHJcbiAgICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPlxyXG4gICAgICAgICAgPGltZyAqbmdJZj1cImZpZWxkLkR5bkF0dGFjaG1lbnRcIlxyXG4gICAgICAgICAgICAgICBzcmM9XCJkYXRhOnt7ZmllbGQuRHluQXR0YWNobWVudC5GaWxlQ29udGVudFR5cGV9fTtiYXNlNjQse3tGaWxlRGF0YUJhc2U2NH19XCJcclxuICAgICAgICAgICAgICAgW2hlaWdodF09XCJmaWVsZC5EeW5BdHRhY2htZW50LlJlc2l6ZWRJbWFnZUhlaWdodFB4ICE9IG51bGwgPyBmaWVsZC5EeW5BdHRhY2htZW50LlJlc2l6ZWRJbWFnZUhlaWdodFB4IDogMTI4XCJcclxuICAgICAgICAgICAgICAgY2xhc3M9XCJzaW5nbGVJbWFnZVwiPlxyXG4gICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cImZpZWxkLkVuYWJsZURyYXdpbmdcIiBjbGFzcz1cImNvbC0xMiBkcmF3QnV0dG9uXCI+XHJcbiAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgYnRuLXcxMDBcIiAoY2xpY2spPVwib3BlbkRyYXcoKVwiPkRpc2VnbmE8L2J1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cImZpZWxkLkR5bkF0dGFjaG1lbnQuQnV0dG9uS2V5ICE9IG51bGwgJiYgZmllbGQuRHluQXR0YWNobWVudC5CdXR0b25LZXkgIT0gJydcIiBjbGFzcz1cImNvbC0xMiBmbGV4IGp1c3RpZnktY29udGVudC1hcm91bmQgYnV0dG9ua2V5XCI+XHJcbiAgICAgICAgICAgICAgIDxkaXY+RXRpY2hldHRhPC9kaXY+PGRpdj57e2ZpZWxkLkR5bkF0dGFjaG1lbnQuQnV0dG9uS2V5fX08L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cImZpZWxkLkR5bkF0dGFjaG1lbnQuQnV0dG9uVmFsdWUgIT0gbnVsbCAmJiBmaWVsZC5EeW5BdHRhY2htZW50LkJ1dHRvblZhbHVlICE9ICcnXCIgY2xhc3M9XCJjb2wtMTIgZmxleCBqdXN0aWZ5LWNvbnRlbnQtYXJvdW5kIGJ1dHRvbnZhbHVlXCI+IFxyXG4gICAgICAgICAgICAgICA8ZGl2PlZhbG9yZTwvZGl2PjxkaXY+e3tmaWVsZC5EeW5BdHRhY2htZW50LkJ1dHRvblZhbHVlfX08L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgIDwvZGl2PiAgIFxyXG48L2Rpdj5cclxuXHJcbjwhLS0gRElBTE9HIFBFUiBESVNFR05BUkUgU1VMIE5VT1ZPIEFMTEVHQVRPIENBUklDQVRPIC0tPlxyXG48bmctdGVtcGxhdGUgI2RpYWxvZ0ltYWdlRHJhd2luZz5cclxuICAgICA8ZGl2IGNsYXNzPVwicGFkZGVyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTIgY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRtdy1pbWFnZS1kcmF3ZXIgKm5nSWY9XCJkcmF3aW5nTG9hZGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiJ2RhdGE6JysgZmllbGQuRHluQXR0YWNobWVudC5GaWxlQ29udGVudFR5cGUgKyAnO2Jhc2U2NCwnKyBGaWxlQmFzZTY0XCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaW5Db25maWddPVwiaW5Db25maWdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dDYW5jZWxCdXR0b25dPVwiZmFsc2VcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtlbmFibGVMb2FkQW5vdGhlckltYWdlXT1cImZhbHNlXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZW5hYmxlUmVtb3ZlSW1hZ2VdPVwiZmFsc2VcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt3aWR0aF09XCJmaWVsZC5EeW5BdHRhY2htZW50LkltYWdlV2lkdGhQeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGVpZ2h0XT1cImZpZWxkLkR5bkF0dGFjaG1lbnQuSW1hZ2VIZWlnaHRQeFwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2kxOG5dPVwiaTE4blwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dDYW5jZWxCdXR0b25dPVwidHJ1ZVwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgKHNhdmUpPVwic2F2ZURyYXcoJGV2ZW50KVwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgKGxvYWRPcmlnaW5hbCk9XCJsb2FkT3JpZ2luYWwoKVwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgKGNsb3NlRGlhbG9nKT1cImNsb3NlSW1hZ2VEcm93aW5nRGlhbG9nKClcIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8L3Rtdy1pbWFnZS1kcmF3ZXI+XHJcbiAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -2,6 +2,7 @@ import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core
|
|
|
2
2
|
import { ImageFolderEnum } from '../../../../models/fields/imageField.model';
|
|
3
3
|
import { UtilityHelperService } from '../../../../services/utilityHelper.services';
|
|
4
4
|
import { ParamTypeEnum } from '../../../../models/endPointConfiguration.model';
|
|
5
|
+
import { DataGetterTypeEnum } from '../../../../models/baseField.model';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
import * as i1 from "@angular/material/dialog";
|
|
7
8
|
import * as i2 from "../../../../services/utilityHelper.services";
|
|
@@ -89,7 +90,7 @@ export class ImageWithMarkersFieldTemplateComponent {
|
|
|
89
90
|
* Metodo per aggiornare il valore del campo quando questo è rappresentato da una formula.
|
|
90
91
|
*/
|
|
91
92
|
updateField() {
|
|
92
|
-
if (this.field.Formula) {
|
|
93
|
+
if ((this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Manuale || this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Formula) && this.field.Formula) {
|
|
93
94
|
this.record[this.field.Name] = UtilityHelperService.EvaluateFieldFormula(this.field.Formula, this.record, null);
|
|
94
95
|
}
|
|
95
96
|
if (this.field.VisibleIf) {
|
|
@@ -248,4 +249,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
248
249
|
type: ViewChild,
|
|
249
250
|
args: ["dialogImageMarking", { static: true }]
|
|
250
251
|
}] } });
|
|
251
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utd2l0aC1tYXJrZXJzLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9maWVsZC10ZW1wbGF0ZXMvaW1hZ2Utd2l0aC1tYXJrZXJzLWZpZWxkLXRlbXBsYXRlL2ltYWdlLXdpdGgtbWFya2Vycy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2ltYWdlLXdpdGgtbWFya2Vycy1maWVsZC10ZW1wbGF0ZS9pbWFnZS13aXRoLW1hcmtlcnMtZmllbGQtdGVtcGxhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQThCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSSxPQUFPLEVBQWMsZUFBZSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFekYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFFbkYsT0FBTyxFQUF5QixhQUFhLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7O0FBS3RHOzs7O0dBSUc7QUFDSCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksT0FBTyxDQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO0lBQy9ELE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7SUFDaEMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixNQUFNLENBQUMsTUFBTSxH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QyxhQUFhLENBQUM7YUFDeEM7WUFDRDtnQkFDRSxTQUFTLEVBQUUsT0FBTztnQkFDbEIsVUFBVSxFQUFFLEtBQUs7Z0JBQ2pCLFNBQVMsRUFBRSxhQUFhLENBQUMsYUFBYSxDQUFDO2FBQ3hDO1NBQ0YsQ0FBQztRQUVKLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLENBQ3ZDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEVBQ3pELG1CQUFtQixFQUNuQixDQUFDLEdBQWtCLEVBQUUsRUFBRTtZQUVyQixJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBRTVCLENBQUMsRUFDRCxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBRVIsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDOztvSUEvUVUsc0NBQXNDO3dIQUF0QyxzQ0FBc0MsNlpDNUJuRCxvZ0VBa0NjOzRGRE5ELHNDQUFzQztrQkFObEQsU0FBUzsrQkFDRSxtQ0FBbUM7bUlBT3BDLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQXFCNEMsa0JBQWtCO3NCQUFwRSxTQUFTO3VCQUFDLG9CQUFvQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJbWFnZUZpZWxkLCBJbWFnZUZvbGRlckVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZmllbGRzL2ltYWdlRmllbGQubW9kZWwnO1xyXG5pbXBvcnQgeyBSZWNvcmQgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvcmVjb3JkLm1vZGVsJztcclxuaW1wb3J0IHsgVXRpbGl0eUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy91dGlsaXR5SGVscGVyLnNlcnZpY2VzJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBFbmRQb2ludENvbmZpZ3VyYXRpb24sIFBhcmFtVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZW5kUG9pbnRDb25maWd1cmF0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgRHluQXR0YWNobWVudCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9keW5BdHRhY2htZW50JztcclxuaW1wb3J0IHsgTWFya2VkSW1hZ2UgfSBmcm9tICcuLi8uLi90bXctaW1hZ2UtbWFya2VyL3Rtdy1pbWFnZS1tYXJrZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW1hZ2VXaXRoTWFya2Vyc0ZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2ZpZWxkcy9pbWFnZVdpdGhNYXJrZXJzRmllbGQubW9kZWwnO1xyXG5cclxuLyoqXHJcbiAqIE1ldG9kbyBwZXIgcmVjdXBlcmFyZSwgYSBwYXJ0aXJlIGRhIHVuIEJsb2IsIGxhIHN0cmluZ2EgY29udGVuZW50ZSBpbCBiYXNlNjQgZGVsIGZpbGUuXHJcbiAqIFVzYXRvIHBlciBwcmVuZGVyZSBpbCBiYXNlNjQgZGVsbCdpbW1hZ2luZSBkb3BvIGNoZSBsJ3V0ZW50ZSBjaSBoYSBkaXNlZ25hdG8gc29wcmEuXHJcbiAqIEBwYXJhbSBmaWxlIEJsb2IgY2hlIHJhcHByZXNlbnRhIGwnaW1tYWdpbmUuXHJcbiAqL1xyXG5jb25zdCB0b0Jhc2U2NCA9IGZpbGUgPT4gbmV3IFByb21pc2U8c3RyaW5nPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcclxuICByZWFkZXIub25sb2FkID0gKCkgPT4gcmVzb2x2ZShyZWFkZXIucmVzdWx0LnRvU3RyaW5nKCkpO1xyXG4gIHJlYWRlci5vbmVycm9yID0gZXJyb3IgPT4gcmVqZWN0KGVycm9yKTtcclxufSk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2ltYWdlLXdpdGgtbWFya2Vycy1maWVsZC10ZW1wbGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ltYWdlLXdpdGgtbWFya2Vycy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW1hZ2Utd2l0aC1tYXJrZXJzLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBJbWFnZVdpdGhNYXJrZXJzRmllbGRUZW1wbGF0ZUNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIGVuZFBvaW50Q29uZmlndXJhdGlvbjogRW5kUG9pbnRDb25maWd1cmF0aW9uO1xyXG4gIEBJbnB1dCgpIHJlY29yZDogUmVjb3JkO1xyXG4gIEBJbnB1dCgpIGZpZWxkOiBJbWFnZVdpdGhNYXJrZXJzRmllbGQ7XHJcbiAgQElucHV0KCkgaW5Db25maWc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBAT3V0cHV0KCkgcmVjb3JkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8UmVjb3JkPiA9IG5ldyBFdmVudEVtaXR0ZXI8UmVjb3JkPigpO1xyXG4gIEBPdXRwdXQoKSBpbWFnZU1hcms6IEV2ZW50RW1pdHRlcjxEeW5BdHRhY2htZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RHluQXR0YWNobWVudD4oKTtcclxuXHJcbiAgaW1hZ2VXaWR0aDogbnVtYmVyID0gMDtcclxuICBNYXJraW5nTG9hZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgRmlsZUJhc2U2NDogc3RyaW5nID0gXCJcIjtcclxuICBNYXJrRmlsZUJhc2U2NDogc3RyaW5nID0gXCJcIjtcclxuICBGaWxlRGF0YUJhc2U2NDogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgQXR0YWNobWVudElEOiBzdHJpbmcgfCBudW1iZXI7XHJcblxyXG4gIGltYWdlTWFya0F0dGFjaG1lbnQ6IER5bkF0dGFjaG1lbnQ7XHJcbiAgZXh0cmFKU09OOiBzdHJpbmcgPSBudWxsO1xyXG4gIFxyXG5cclxuICAvL3ByZUxvYWRlZEltYWdlTWV0YWRhdGFGb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIC8vI3JlZ2lvbiBQcm9wcmlldMOgIHBlciBjb25maWd1cmFyZSBpbCBjb21wb25lbnRlIG5neC1pbWFnZS1NYXJraW5nIGUgYXByaXJlIGlsIHJlbGF0aXZvIGRpYWxvZy5cclxuICBwdWJsaWMgd2lkdGggPSBudWxsO1xyXG4gIHB1YmxpYyBoZWlnaHQgPSBudWxsO1xyXG5cclxuICBkaWFsb2dJbWFnZU1hcmtpbmdSZWY6IE1hdERpYWxvZ1JlZjxUZW1wbGF0ZVJlZjxhbnk+PjtcclxuICBAVmlld0NoaWxkKFwiZGlhbG9nSW1hZ2VNYXJraW5nXCIsIHsgc3RhdGljOiB0cnVlIH0pIGRpYWxvZ0ltYWdlTWFya2luZzogVGVtcGxhdGVSZWY8YW55PjtcclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSB1dGlsaXR5SGVscGVyU2VydmljZTogVXRpbGl0eUhlbHBlclNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9PSBudWxsIHx8IHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT0gMCl7XHJcbiAgICAgIHRoaXMuRmlsZURhdGFCYXNlNjQgPSB0aGlzLmZpZWxkLkR5bkF0dGFjaG1lbnQuRmlsZURhdGFCYXNlNjQ7XHJcbiAgICAgIHRoaXMuaW1hZ2VXaWR0aCA9ICAodGhpcy5maWVsZC5EeW5BdHRhY2htZW50LlJlc2l6ZWRJbWFnZUhlaWdodFB4IC8gdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LkltYWdlSGVpZ2h0UHggKiB0aGlzLmZpZWxkLkR5bkF0dGFjaG1lbnQuSW1hZ2VXaWR0aFB4KSArIDUwO1xyXG4gICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gdGhpcy5maWVsZC5EeW5BdHRhY2htZW50O1xyXG5cclxuICAgICAgdGhpcy5pbWFnZU1hcmtBdHRhY2htZW50ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmZpZWxkLkR5bkF0dGFjaG1lbnQpKTtcclxuICAgICAgdGhpcy5pbWFnZU1hcmtBdHRhY2htZW50LklEID0gMDtcclxuXHJcbiAgICAgIHRoaXMuQXR0YWNobWVudElEID0gdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LklEOyBcclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodHlwZW9mIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT09ICdzdHJpbmcnKXtcclxuICAgICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gSlNPTi5wYXJzZSh0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmltYWdlV2lkdGggPSAgKHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5SZXNpemVkSW1hZ2VIZWlnaHRQeCAvIHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JbWFnZUhlaWdodFB4ICogdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LkltYWdlV2lkdGhQeCkgKyA1MDtcclxuXHJcbiAgICAgIGlmICgodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSBhcyBEeW5BdHRhY2htZW50KS5GaWxlQmFzZXM2NCAhPSBudWxsKXtcclxuICAgICAgICB0aGlzLkZpbGVEYXRhQmFzZTY0ID0gKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gYXMgRHluQXR0YWNobWVudCkuRmlsZUJhc2VzNjRbSW1hZ2VGb2xkZXJFbnVtLlJlZ3VsYXJdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuRmlsZURhdGFCYXNlNjQgPSAodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSBhcyBEeW5BdHRhY2htZW50KS5GaWxlRGF0YUJhc2U2NDtcclxuICAgICAgfSAgICAgIFxyXG5cclxuICAgICAgKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gYXMgRHluQXR0YWNobWVudCkuRmlsZURhdGFCYXNlNjQgPSB0aGlzLkZpbGVEYXRhQmFzZTY0O1xyXG4gICAgICB0aGlzLmV4dHJhSlNPTiA9ICh0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdIGFzIER5bkF0dGFjaG1lbnQpLkV4dHJhSlNPTjtcclxuXHJcbiAgICAgIHRoaXMuaW1hZ2VNYXJrQXR0YWNobWVudCA9IHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV07XHJcbiAgICAgIHRoaXMuaW1hZ2VNYXJrQXR0YWNobWVudC5GaWxlRGF0YUJhc2U2NCA9IHRoaXMuRmlsZURhdGFCYXNlNjQ7XHJcblxyXG4gICAgICB0aGlzLkF0dGFjaG1lbnRJRCA9IHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JRDtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnJlY29yZENoYW5nZS5lbWl0KHRoaXMucmVjb3JkKTtcclxuXHJcblxyXG4gICAgLy8gQ2xvbm8gbCdhdHRhY2htZW50IG9yaWdpbmFsZSwgZ2xpIGNhbWJpbyBpbCBGaWxlQmFzZSBlIGdsaSBhenplcm8gbCdJRFxyXG5cclxuICAgIC8vIHRoaXMuaW1hZ2VNYXJrQXR0YWNobWVudC5GaWxlTmFtZSA9IFwiXCI7XHJcbiAgICAvLyB0aGlzLmltYWdlTWFya0F0dGFjaG1lbnQuRmlsZVBhdGggPSBcIlwiO1xyXG5cclxuICAgIHRoaXMuaW1hZ2VNYXJrLmVtaXQodGhpcy5pbWFnZU1hcmtBdHRhY2htZW50KTtcclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgdGhpcy51cGRhdGVGaWVsZCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgLy8gU2UgdmllbmUgbW9kaWZpY2F0byBpbCB2YWxvcmUgZGkgXCJuZ01vZGVsSW5wdXRcIiBhbGxvcmEgYWdnaW9ybmEgbCdpbnB1dFxyXG4gICAgaWYgKGNoYW5nZXNbJ3JlY29yZCddICE9IHVuZGVmaW5lZCAmJiBjaGFuZ2VzWydyZWNvcmQnXS5maXJzdENoYW5nZSA9PSBmYWxzZSAmJiBKU09OLnN0cmluZ2lmeShjaGFuZ2VzWydyZWNvcmQnXS5jdXJyZW50VmFsdWUpICE9IEpTT04uc3RyaW5naWZ5KGNoYW5nZXNbJ3JlY29yZCddLnByZXZpb3VzVmFsdWUpKSB7XHJcbiAgICAgIHRoaXMucmVjb3JkID0gY2hhbmdlc1sncmVjb3JkJ10uY3VycmVudFZhbHVlO1xyXG4gICAgICB0aGlzLnVwZGF0ZUZpZWxkKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8gdXBkYXRlTWV0YWRhdGFWYWxpZGl0eSgpIHtcclxuICAvLyAgIGlmICh0aGlzLnByZUxvYWRlZEltYWdlTWV0YWRhdGFGb3JtR3JvdXAuaW52YWxpZCkge1xyXG4gIC8vICAgICB0aGlzLmZpZWxkLkZvcm1Gb3JtR3JvdXAuY29udHJvbHNbdGhpcy5maWVsZC5OYW1lXS5zZXRFcnJvcnMoeyAnaW5jb3JyZWN0JzogdHJ1ZSB9KTtcclxuICAvLyAgIH0gZWxzZSB7XHJcbiAgLy8gICAgIHRoaXMuZmllbGQuRm9ybUZvcm1Hcm91cC5jb250cm9sc1t0aGlzLmZpZWxkLk5hbWVdLnNldEVycm9ycyhudWxsKTtcclxuICAvLyAgIH1cclxuICAvLyAgIHRoaXMub25SZWNvcmRWYWx1ZUNoYW5nZSgpO1xyXG4gIC8vIH1cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgYWdnaW9ybmFyZSBpbCB2YWxvcmUgZGVsIGNhbXBvIHF1YW5kbyBxdWVzdG8gw6ggcmFwcHJlc2VudGF0byBkYSB1bmEgZm9ybXVsYS5cclxuICAgKi9cclxuICB1cGRhdGVGaWVsZCgpIHtcclxuICAgIGlmICh0aGlzLmZpZWxkLkZvcm11bGEpIHtcclxuICAgICAgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLkV2YWx1YXRlRmllbGRGb3JtdWxhKHRoaXMuZmllbGQuRm9ybXVsYSwgdGhpcy5yZWNvcmQsIG51bGwpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuZmllbGQuVmlzaWJsZUlmKSB7XHJcbiAgICAgIHRoaXMuZmllbGQuSW5MaXN0VmlldyA9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLkV2YWx1YXRlRmllbGRGb3JtdWxhKHRoaXMuZmllbGQuVmlzaWJsZUlmLCB0aGlzLnJlY29yZCwgbnVsbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgcmVzZXRQcmVMb2FkZWRJbWFnZSgpIHtcclxuICAgIHRoaXMud2lkdGggPSBudWxsO1xyXG4gICAgdGhpcy5oZWlnaHQgPSBudWxsO1xyXG4gICAgLyp0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gW0pTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5maWVsZC5Db250ZXh0dWFsQXR0YWNobWVudCkpXTsqL1xyXG4gICAgdGhpcy5nZXRJbWFnZURpbWVuc2lvbnMoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBpbnZvY2F0byBxdWFuZG8gdmVuZ29ubyBhZ2dpdW50aSBvIGVsaW1pbmF0aSBnbGkgYWxsZWdhdGkgbmVsIGNvbXBvbmVudGUgQXR0YWNobWVudEZpZWxkVGVtcGxhdGUuXHJcbiAgICogU2UgbCdJbWFnZUZpZWxkIMOoIGFiaWxpdGF0byBhbCBkaXNlZ25vIChFbmFibGVNYXJraW5nID09IHRydWUpLCBub24gcGVybWV0dGUgYWxsZWdhdGkgbXVsdGlwbGkgKElzTXVsaXRBdHRhY2ggPT0gZmFsc2UpXHJcbiAgICogZSBuZWwgUmVjb3JkIGNvcnJlbnRlIMOoIHByZXNlbnRlIGwnaW1tYWdpbmUgY2FyaWNhdGEgZGFsbCd1dGVudGUgYWxsb3JhIHJlY3VwZXJhIGxlIGRpbWVuc2lvbmkgZGVsbCdpbW1hZ2luZSBlXHJcbiAgICogYXByZSBpbCBkaWFsb2cgY29uIGlsIGNvbXBvbmVudGUgaW1hZ2UtTWFya2luZyBwZXIgcGVybWV0dGVyZSBpbCBkaXNlZ25vIHN1bGwnaW1tYWdpbmUgYXBwZW5hIGNhcmljYXRhLlxyXG4gICAqL1xyXG4gIG9uQXR0YWNobWVudHNDaGFuZ2UoKSB7XHJcbiAgICAvKlxyXG4gICAgaWYgKCF0aGlzLmZpZWxkLkF0dGFjaERlZmluaXRpb24uSXNNdWx0aUF0dGFjaCAmJiB0aGlzLmZpZWxkLkVuYWJsZU1hcmtpbmcgJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSAmJiB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdWzBdKSB7XHJcbiAgICAgIHRoaXMuZ2V0SW1hZ2VEaW1lbnNpb25zKCk7XHJcbiAgICAgIHRoaXMuZGlhbG9nSW1hZ2VEcm93aW5nUmVmID0gdGhpcy5kaWFsb2cub3Blbih0aGlzLmRpYWxvZ0ltYWdlRHJvd2luZywge1xyXG4gICAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcclxuICAgICAgICB3aWR0aDogJzc1JSdcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICAqL1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIGludm9jYXRvIGFsIHNhbHZhdGFnZ2lvIGRlbGwnaW1tYWdpbmUgZGFsIGNvbXBvbmVudGUgaW1hZ2UtTWFya2luZy5cclxuICAgKiBUcmFzZm9ybWEgaWwgQmxvYiByaWNldnV0byBpbiB1biBiYXNlNjQsIGFnZ2lvcm5hIGlsIEZpbGVDb250ZXRUeXBlIGUgaWwgRmlsZURhdGFCYXNlNjRcclxuICAgKiBkZWxsJ2FsbGVnYXRvIGNhcmljYXRvIGUgY2hpdWRlIGlsIGRpYWxvZyBpbiBjdWkgZGlzZWduYXJlLlxyXG4gICAqIEBwYXJhbSBNYXJrblBpY3R1cmUgQmxvYiBkZWxsJ2ltbWFnaW5lIGRpc2VnbmF0YS5cclxuICAgKi9cclxuICBhc3luYyBzYXZlTWFyayhtYXJrZWRJbWFnZTogTWFya2VkSW1hZ2UpIHtcclxuICAgIGxldCBiYXNlNjRGaWxlID0gYXdhaXQgdG9CYXNlNjQobWFya2VkSW1hZ2UuaW1hZ2UpO1xyXG4gICAgaWYgKGJhc2U2NEZpbGUpIHtcclxuICAgICAgdGhpcy5NYXJrRmlsZUJhc2U2NCA9IGJhc2U2NEZpbGUuc3BsaXQoXCIsXCIpWzFdO1xyXG4gICAgICB0aGlzLkZpbGVEYXRhQmFzZTY0ID0gdGhpcy5NYXJrRmlsZUJhc2U2NDtcclxuXHJcbiAgICAgIC8vIENsb25vIGwnYXR0YWNobWVudCBvcmlnaW5hbGUsIGdsaSBjYW1iaW8gaWwgRmlsZUJhc2UgZSBnbGkgYXp6ZXJvIGwnSURcclxuICAgICAgdGhpcy5pbWFnZU1hcmtBdHRhY2htZW50LkZpbGVEYXRhQmFzZTY0ID0gdGhpcy5NYXJrRmlsZUJhc2U2NDtcclxuICAgICAgdGhpcy5pbWFnZU1hcmtBdHRhY2htZW50LkV4dHJhSlNPTiA9IEpTT04uc3RyaW5naWZ5KG1hcmtlZEltYWdlLm91dG1hcmtlcnMpO1xyXG4gICAgICB0aGlzLmV4dHJhSlNPTiA9IHRoaXMuaW1hZ2VNYXJrQXR0YWNobWVudC5FeHRyYUpTT047XHJcblxyXG4gICAgICB0aGlzLmltYWdlTWFyay5lbWl0KHRoaXMuaW1hZ2VNYXJrQXR0YWNobWVudCk7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmRpYWxvZ0ltYWdlTWFya2luZ1JlZikge1xyXG4gICAgICB0aGlzLmNsb3NlRGlhbG9nKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gcGVyIGNoaXVkZXJlIGlsIGRpYWxvZyBpbiBjdWkgZGlzZWduYXJlIHN1bGwnaW1tYWdpbmUgY2FyaWF0YSBlIHN2dW90YXJlIGxlIGRpbWVuc2lvbmkuXHJcbiAgICovXHJcbiAgY2xvc2VEaWFsb2coKSB7XHJcbiAgICB0aGlzLmRpYWxvZ0ltYWdlTWFya2luZ1JlZi5jbG9zZSgpO1xyXG4gICAgdGhpcy53aWR0aCA9IG51bGw7XHJcbiAgICB0aGlzLmhlaWdodCA9IG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gcGVyIHJlY3VwZXJhcmUgbGUgZGltZW5zaW9uaSBkZWxsJ2ltbWFnaW5lIGNhcmljYXRhIHBlciBtb3N0cmFyZSBjb3JyZXR0YW1lbnRlXHJcbiAgICogaWwgY29tcG9uZW50ZSBpbWFnZS1NYXJraW5nLiBTZSBub24gdmllbmUgZXNlZ3VpdG8gcXVlc3RvIHBhc3NhZ2dpbyBsJ2FyZWEgaW4gY3VpIGRpc2VnbmFyZSBcclxuICAgKiDDqCBwacO5IGdyYW5kZSBkZWxsJ2ltbWFnaW5lIHN0ZXNzYSBlIGFsIHNhbHZhdGFnZ2lvIGkgdHJhdHRpIGRpc2VnbmF0aSB2ZW5nb25vIHNwb3N0YXRpLiBcclxuICAgKi9cclxuICBwcml2YXRlIGdldEltYWdlRGltZW5zaW9ucygpIHtcclxuICAgIHZhciBibG9iOiBCbG9iID0gdGhpcy5nZXRCbG9iRnJvbUJhc2U2NCgpO1xyXG4gICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgIHJlYWRlci5vbmxvYWQgPSAoZTogYW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IGltYWdlID0gbmV3IEltYWdlKCk7XHJcbiAgICAgIGltYWdlLnNyYyA9IGUudGFyZ2V0LnJlc3VsdDtcclxuICAgICAgaW1hZ2Uub25sb2FkID0gcnMgPT4ge1xyXG4gICAgICAgIHRoaXMuaGVpZ2h0ID0gcnMuY3VycmVudFRhcmdldFsnaGVpZ2h0J107XHJcbiAgICAgICAgdGhpcy53aWR0aCA9IHJzLmN1cnJlbnRUYXJnZXRbJ3dpZHRoJ107XHJcbiAgICAgIH07XHJcbiAgICB9O1xyXG4gICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoYmxvYik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gcGVyIGNvbnZlcnRpcmUgaWwgYmFzZTY0IGRpIHVuJ2ltbWFnaW5lIGluIHVuIEJsb2IuXHJcbiAgICogTmVjZXNzYXJpbyBwZXIgaWwgcmVjdXBlcm8gZGVsbGUgZGltZW5zaW9uaSBkZWxsJ2ltbWFnaW5lIGNhcmljYXRhIGEgcGFydGlyZSBkYWwgc3VvIGJhc2U2NC5cclxuICAgKiBWaWVuZSBlc2VndWl0byBzb2xvIG5lbCBjYXNvIGluIGN1aSBsJ0ltYWdlRmllbGQgbm9uIGFtbWV0dGUgYWxsZWdhdGkgbXVsdGlwbGkuXHJcbiAgICogQHJldHVybnMgUmVzdGl0dWlzY2UgaWwgQmxvYiBkZWxsJ2ltbWFnaW5lIGNhcmljYXRhLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0QmxvYkZyb21CYXNlNjQoKSB7XHJcbiAgICBjb25zdCBieXRlQ2hhcmFjdGVycyA9IGF0b2IodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXVswXS5GaWxlRGF0YUJhc2U2NCk7XHJcbiAgICBjb25zdCBieXRlTnVtYmVycyA9IG5ldyBBcnJheShieXRlQ2hhcmFjdGVycy5sZW5ndGgpO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBieXRlQ2hhcmFjdGVycy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBieXRlTnVtYmVyc1tpXSA9IGJ5dGVDaGFyYWN0ZXJzLmNoYXJDb2RlQXQoaSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBieXRlQXJyYXkgPSBuZXcgVWludDhBcnJheShieXRlTnVtYmVycyk7XHJcbiAgICByZXR1cm4gbmV3IEJsb2IoW2J5dGVBcnJheV0sIHsgdHlwZTogdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXVswXS5GaWxlQ29udGVudFR5cGUgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gcGVyIGVtZXR0ZXJlIGwnZXZlbnRvIGNoZSBpbCB2YWxvcmUgZGVsIHJlY29yZCDDqCBjYW1iaWF0by5cclxuICAgKi9cclxuICBwcml2YXRlIG9uUmVjb3JkVmFsdWVDaGFuZ2UoKSB7XHJcbiAgICBpZiAoIXRoaXMuZmllbGQuRm9ybXVsYSkge1xyXG4gICAgICB0aGlzLnJlY29yZENoYW5nZS5lbWl0KHRoaXMucmVjb3JkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBvcGVuTWFyaygpe1xyXG4gICAgdGhpcy5kaWFsb2dJbWFnZU1hcmtpbmdSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKHRoaXMuZGlhbG9nSW1hZ2VNYXJraW5nLCB7XHJcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcclxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXHJcbiAgICAgIHBhbmVsQ2xhc3M6ICdpbWFnZS1tb2RhbCcsXHJcbiAgICAgIHdpZHRoOiAnNzUlJ1xyXG4gICAgfSk7XHJcblxyXG4gICAgaWYgKHRoaXMuQXR0YWNobWVudElEICE9IG51bGwgJiYgTnVtYmVyKHRoaXMuQXR0YWNobWVudElEKSA+IDApe1xyXG4gICAgICB0aGlzLmxvYWQodGhpcy5BdHRhY2htZW50SUQsW0ltYWdlRm9sZGVyRW51bS5SZWd1bGFyXSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLkZpbGVCYXNlNjQgPSB0aGlzLkZpbGVEYXRhQmFzZTY0O1xyXG4gICAgICB0aGlzLk1hcmtpbmdMb2FkZWQgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGxvYWQoSUQsVHlwZXMpe1xyXG5cclxuICAgIHRoaXMuTWFya2luZ0xvYWRlZCA9IGZhbHNlO1xyXG5cclxuICAgICAgLy8gcHJlcGFybyBsYSB2ZXJzaW9uZSBjb3JyZXR0YSBkZWwgZm9ybVxyXG4gICAgICB2YXIgZHluYW1pY01vZHVsZVBhcmFtcyA9IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBQYXJhbU5hbWU6IFwiQXR0YWNobWVudElEXCIsXHJcbiAgICAgICAgICBQYXJhbVZhbHVlOiBJRCxcclxuICAgICAgICAgIFBhcmFtVHlwZTogUGFyYW1UeXBlRW51bVtcIlF1ZXJ5IHBhcmFtXCJdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgUGFyYW1OYW1lOiBcIlR5cGVzXCIsXHJcbiAgICAgICAgICBQYXJhbVZhbHVlOiBUeXBlcyxcclxuICAgICAgICAgIFBhcmFtVHlwZTogUGFyYW1UeXBlRW51bVtcIlF1ZXJ5IHBhcmFtXCJdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF07ICAgIFxyXG4gICAgICBcclxuICAgIHRoaXMudXRpbGl0eUhlbHBlclNlcnZpY2UuUnVuRW5kUG9pbnRDYWxsKFxyXG4gICAgICB0aGlzLmVuZFBvaW50Q29uZmlndXJhdGlvbi5Gb3Jtcy5HZXRBdHRhY2htZW50V2l0aEJhc2VzNjQsXHJcbiAgICAgIGR5bmFtaWNNb2R1bGVQYXJhbXMsXHJcbiAgICAgIChyZXM6IER5bkF0dGFjaG1lbnQpID0+IHtcclxuXHJcbiAgICAgICAgdGhpcy5GaWxlQmFzZTY0ID0gcmVzLkZpbGVCYXNlczY0W0ltYWdlRm9sZGVyRW51bS5SZWd1bGFyXTtcclxuICAgICAgICB0aGlzLk1hcmtpbmdMb2FkZWQgPSB0cnVlO1xyXG5cclxuICAgICAgfSxcclxuICAgICAgKGVycikgPT4ge1xyXG5cclxuICAgICAgfVxyXG4gICAgKTsgICAgXHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicm93IGltYWdlQ29udGFpbmVyXCIgc3R5bGU9XCJ3aWR0aDoge3tpbWFnZVdpZHRofX1weDtcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPnt7ZmllbGQuRGVzY3JpcHRpb259fTwvZGl2PlxyXG4gICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+PGltZyAqbmdJZj1cImZpZWxkLkR5bkF0dGFjaG1lbnRcIlxyXG4gICAgICAgICAgICAgIHNyYz1cImRhdGE6e3tmaWVsZC5EeW5BdHRhY2htZW50LkZpbGVDb250ZW50VHlwZX19O2Jhc2U2NCx7e0ZpbGVEYXRhQmFzZTY0fX1cIlxyXG4gICAgICAgICAgICAgIFtoZWlnaHRdPVwiZmllbGQuRHluQXR0YWNobWVudC5SZXNpemVkSW1hZ2VIZWlnaHRQeCAhPSBudWxsID8gZmllbGQuRHluQXR0YWNobWVudC5SZXNpemVkSW1hZ2VIZWlnaHRQeCA6IDEyOFwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzaW5nbGVJbWFnZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgZHJhd0J1dHRvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBidG4tdzEwMFwiIChjbGljayk9XCJvcGVuTWFyaygpXCI+TWFyY2E8L2J1dHRvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGZsZXgganVzdGlmeS1jb250ZW50LWFyb3VuZCBidXR0b25rZXlcIiAqbmdJZj1cImZpZWxkLkR5bkF0dGFjaG1lbnQuQnV0dG9uS2V5ICE9IG51bGwgJiYgZmllbGQuRHluQXR0YWNobWVudC5CdXR0b25LZXkgIT0gJydcIj5cclxuICAgICAgICAgICAgICAgICAgIDxkaXY+RXRpY2hldHRhPC9kaXY+PGRpdj57e2ZpZWxkLkR5bkF0dGFjaG1lbnQuQnV0dG9uS2V5fX08L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGZsZXgganVzdGlmeS1jb250ZW50LWFyb3VuZCBidXR0b252YWx1ZVwiICpuZ0lmPVwiZmllbGQuRHluQXR0YWNobWVudC5CdXR0b25WYWx1ZSAhPSBudWxsICYmIGZpZWxkLkR5bkF0dGFjaG1lbnQuQnV0dG9uVmFsdWUgIT0gJydcIj4gXHJcbiAgICAgICAgICAgICAgICAgICA8ZGl2PlZhbG9yZTwvZGl2PjxkaXY+e3tmaWVsZC5EeW5BdHRhY2htZW50LkJ1dHRvblZhbHVlfX08L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PiAgIFxyXG48L2Rpdj5cclxuXHJcbjwhLS0gRElBTE9HIFBFUiBESVNFR05BUkUgU1VMIE5VT1ZPIEFMTEVHQVRPIENBUklDQVRPIC0tPlxyXG48bmctdGVtcGxhdGUgI2RpYWxvZ0ltYWdlTWFya2luZz5cclxuICAgIDxkaXYgY2xhc3M9XCJwYWRkZXJcIj5cclxuICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0xMiBjb2wtbWQtMTJcIj5cclxuICAgICAgICAgICAgICAgICAgIDx0bXctaW1hZ2UtbWFya2VyXHJcbiAgICAgICAgICAgICAgICAgICAqbmdJZj1cIk1hcmtpbmdMb2FkZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgW3NyY109XCInZGF0YTonKyBmaWVsZC5EeW5BdHRhY2htZW50LkZpbGVDb250ZW50VHlwZSArICc7YmFzZTY0LCcrIEZpbGVCYXNlNjRcIiBbaW5Db25maWddPVwiaW5Db25maWdcIiBbc2F2ZWRNYXJrZXJzXT1cImV4dHJhSlNPTlwiXHJcbiAgICAgICAgICAgICAgICAgICBbd2lkdGhdPVwiZmllbGQuRHluQXR0YWNobWVudC5JbWFnZVdpZHRoUHhcIiBbaGVpZ2h0XT1cImZpZWxkLkR5bkF0dGFjaG1lbnQuSW1hZ2VIZWlnaHRQeFwiIFxyXG4gICAgICAgICAgICAgICAgICAgKHNhdmUpPVwic2F2ZU1hcmsoJGV2ZW50KVwiIChjbG9zZURpYWxvZyk9XCJjbG9zZURpYWxvZygpXCI+XHJcbiAgICAgICAgICAgICAgICAgICA8L3Rtdy1pbWFnZS1tYXJrZXI+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
|
252
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Utd2l0aC1tYXJrZXJzLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS9maWVsZC10ZW1wbGF0ZXMvaW1hZ2Utd2l0aC1tYXJrZXJzLWZpZWxkLXRlbXBsYXRlL2ltYWdlLXdpdGgtbWFya2Vycy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2ltYWdlLXdpdGgtbWFya2Vycy1maWVsZC10ZW1wbGF0ZS9pbWFnZS13aXRoLW1hcmtlcnMtZmllbGQtdGVtcGxhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQThCLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSSxPQUFPLEVBQWMsZUFBZSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFekYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFFbkYsT0FBTyxFQUF5QixhQUFhLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUl0RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7O0FBRXhFOzs7O0dBSUc7QUFDSCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksT0FBTyxDQUFTLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO0lBQy9ELE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7SUFDaEMsTUFBTSxDQUFDLGFB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aW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEltYWdlRmllbGQsIEltYWdlRm9sZGVyRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9maWVsZHMvaW1hZ2VGaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IFJlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9yZWNvcmQubW9kZWwnO1xyXG5pbXBvcnQgeyBVdGlsaXR5SGVscGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxpdHlIZWxwZXIuc2VydmljZXMnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IEVuZFBvaW50Q29uZmlndXJhdGlvbiwgUGFyYW1UeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9lbmRQb2ludENvbmZpZ3VyYXRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBEeW5BdHRhY2htZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2R5bkF0dGFjaG1lbnQnO1xyXG5pbXBvcnQgeyBNYXJrZWRJbWFnZSB9IGZyb20gJy4uLy4uL3Rtdy1pbWFnZS1tYXJrZXIvdG13LWltYWdlLW1hcmtlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJbWFnZVdpdGhNYXJrZXJzRmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZmllbGRzL2ltYWdlV2l0aE1hcmtlcnNGaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IERhdGFHZXR0ZXJUeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9iYXNlRmllbGQubW9kZWwnO1xyXG5cclxuLyoqXHJcbiAqIE1ldG9kbyBwZXIgcmVjdXBlcmFyZSwgYSBwYXJ0aXJlIGRhIHVuIEJsb2IsIGxhIHN0cmluZ2EgY29udGVuZW50ZSBpbCBiYXNlNjQgZGVsIGZpbGUuXHJcbiAqIFVzYXRvIHBlciBwcmVuZGVyZSBpbCBiYXNlNjQgZGVsbCdpbW1hZ2luZSBkb3BvIGNoZSBsJ3V0ZW50ZSBjaSBoYSBkaXNlZ25hdG8gc29wcmEuXHJcbiAqIEBwYXJhbSBmaWxlIEJsb2IgY2hlIHJhcHByZXNlbnRhIGwnaW1tYWdpbmUuXHJcbiAqL1xyXG5jb25zdCB0b0Jhc2U2NCA9IGZpbGUgPT4gbmV3IFByb21pc2U8c3RyaW5nPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcclxuICByZWFkZXIub25sb2FkID0gKCkgPT4gcmVzb2x2ZShyZWFkZXIucmVzdWx0LnRvU3RyaW5nKCkpO1xyXG4gIHJlYWRlci5vbmVycm9yID0gZXJyb3IgPT4gcmVqZWN0KGVycm9yKTtcclxufSk7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2ltYWdlLXdpdGgtbWFya2Vycy1maWVsZC10ZW1wbGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2ltYWdlLXdpdGgtbWFya2Vycy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW1hZ2Utd2l0aC1tYXJrZXJzLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBJbWFnZVdpdGhNYXJrZXJzRmllbGRUZW1wbGF0ZUNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIGVuZFBvaW50Q29uZmlndXJhdGlvbjogRW5kUG9pbnRDb25maWd1cmF0aW9uO1xyXG4gIEBJbnB1dCgpIHJlY29yZDogUmVjb3JkO1xyXG4gIEBJbnB1dCgpIGZpZWxkOiBJbWFnZVdpdGhNYXJrZXJzRmllbGQ7XHJcbiAgQElucHV0KCkgaW5Db25maWc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBAT3V0cHV0KCkgcmVjb3JkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8UmVjb3JkPiA9IG5ldyBFdmVudEVtaXR0ZXI8UmVjb3JkPigpO1xyXG4gIEBPdXRwdXQoKSBpbWFnZU1hcms6IEV2ZW50RW1pdHRlcjxEeW5BdHRhY2htZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RHluQXR0YWNobWVudD4oKTtcclxuXHJcbiAgaW1hZ2VXaWR0aDogbnVtYmVyID0gMDtcclxuICBNYXJraW5nTG9hZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgRmlsZUJhc2U2NDogc3RyaW5nID0gXCJcIjtcclxuICBNYXJrRmlsZUJhc2U2NDogc3RyaW5nID0gXCJcIjtcclxuICBGaWxlRGF0YUJhc2U2NDogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgQXR0YWNobWVudElEOiBzdHJpbmcgfCBudW1iZXI7XHJcblxyXG4gIGltYWdlTWFya0F0dGFjaG1lbnQ6IER5bkF0dGFjaG1lbnQ7XHJcbiAgZXh0cmFKU09OOiBzdHJpbmcgPSBudWxsO1xyXG4gIFxyXG5cclxuICAvL3ByZUxvYWRlZEltYWdlTWV0YWRhdGFGb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIC8vI3JlZ2lvbiBQcm9wcmlldMOgIHBlciBjb25maWd1cmFyZSBpbCBjb21wb25lbnRlIG5neC1pbWFnZS1NYXJraW5nIGUgYXByaXJlIGlsIHJlbGF0aXZvIGRpYWxvZy5cclxuICBwdWJsaWMgd2lkdGggPSBudWxsO1xyXG4gIHB1YmxpYyBoZWlnaHQgPSBudWxsO1xyXG5cclxuICBkaWFsb2dJbWFnZU1hcmtpbmdSZWY6IE1hdERpYWxvZ1JlZjxUZW1wbGF0ZVJlZjxhbnk+PjtcclxuICBAVmlld0NoaWxkKFwiZGlhbG9nSW1hZ2VNYXJraW5nXCIsIHsgc3RhdGljOiB0cnVlIH0pIGRpYWxvZ0ltYWdlTWFya2luZzogVGVtcGxhdGVSZWY8YW55PjtcclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSB1dGlsaXR5SGVscGVyU2VydmljZTogVXRpbGl0eUhlbHBlclNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9PSBudWxsIHx8IHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT0gMCl7XHJcbiAgICAgIHRoaXMuRmlsZURhdGFCYXNlNjQgPSB0aGlzLmZpZWxkLkR5bkF0dGFjaG1lbnQuRmlsZURhdGFCYXNlNjQ7XHJcbiAgICAgIHRoaXMuaW1hZ2VXaWR0aCA9ICAodGhpcy5maWVsZC5EeW5BdHRhY2htZW50LlJlc2l6ZWRJbWFnZUhlaWdodFB4IC8gdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LkltYWdlSGVpZ2h0UHggKiB0aGlzLmZpZWxkLkR5bkF0dGFjaG1lbnQuSW1hZ2VXaWR0aFB4KSArIDUwO1xyXG4gICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gdGhpcy5maWVsZC5EeW5BdHRhY2htZW50O1xyXG5cclxuICAgICAgdGhpcy5pbWFnZU1hcmtBdHRhY2htZW50ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmZpZWxkLkR5bkF0dGFjaG1lbnQpKTtcclxuICAgICAgdGhpcy5pbWFnZU1hcmtBdHRhY2htZW50LklEID0gMDtcclxuXHJcbiAgICAgIHRoaXMuQXR0YWNobWVudElEID0gdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LklEOyBcclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodHlwZW9mIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT09ICdzdHJpbmcnKXtcclxuICAgICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gSlNPTi5wYXJzZSh0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmltYWdlV2lkdGggPSAgKHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5SZXNpemVkSW1hZ2VIZWlnaHRQeCAvIHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JbWFnZUhlaWdodFB4ICogdGhpcy5maWVsZC5EeW5BdHRhY2htZW50LkltYWdlV2lkdGhQeCkgKyA1MDtcclxuXHJcbiAgICAgIGlmICgodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSBhcyBEeW5BdHRhY2htZW50KS5GaWxlQmFzZXM2NCAhPSBudWxsKXtcclxuICAgICAgICB0aGlzLkZpbGVEYXRhQmFzZTY0ID0gKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gYXMgRHluQXR0YWNobWVudCkuRmlsZUJhc2VzNjRbSW1hZ2VGb2xkZXJFbnVtLlJlZ3VsYXJdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuRmlsZURhdGFCYXNlNjQgPSAodGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSBhcyBEeW5BdHRhY2htZW50KS5GaWxlRGF0YUJhc2U2NDtcclxuICAgICAgfSAgICAgIFxyXG5cclxuICAgICAgKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gYXMgRHluQXR0YWNobWVudCkuRmlsZURhdGFCYXNlNjQgPSB0aGlzLkZpbGVEYXRhQmFzZTY0O1xyXG4gICAgICB0aGlzLmV4dHJhSlNPTiA9ICh0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdIGFzIER5bkF0dGFjaG1lbnQpLkV4dHJhSlNPTjtcclxuXHJcbiAgICAgIHRoaXMuaW1hZ2VNYXJrQXR0YWNobWVudCA9IHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV07XHJcbiAgICAgIHRoaXMuaW1hZ2VNYXJrQXR0YWNobWVudC5GaWxlRGF0YUJhc2U2NCA9IHRoaXMuRmlsZURhdGFCYXNlNjQ7XHJcblxyXG4gICAgICB0aGlzLkF0dGFjaG1lbnRJRCA9IHRoaXMuZmllbGQuRHluQXR0YWNobWVudC5JRDtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnJlY29yZENoYW5nZS5lbWl0KHRoaXMucmVjb3JkKTtcclxuXHJcblxyXG4gICAgLy8gQ2xvbm8gbCdhdHRhY2htZW50IG9yaWdpbmFsZSwgZ2xpIGNhbWJpbyBpbCBGaWxlQmFzZSBlIGdsaSBhenplcm8gbCdJRFxyXG5cclxuICAgIC8vIHRoaXMuaW1hZ2VNYXJrQXR0YWNobWVudC5GaWxlTmFtZSA9IFwiXCI7XHJcbiAgICAvLyB0aGlzLmltYWdlTWFya0F0dGFjaG1lbnQuRmlsZVBhdGggPSBcIlwiO1xyXG5cclxuICAgIHRoaXMuaW1hZ2VNYXJrLmVtaXQodGhpcy5pbWFnZU1hcmtBdHRhY2htZW50KTtcclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgdGhpcy51cGRhdGVGaWVsZCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgLy8gU2UgdmllbmUgbW9kaWZpY2F0byBpbCB2YWxvcmUgZGkgXCJuZ01vZGVsSW5wdXRcIiBhbGxvcmEgYWdnaW9ybmEgbCdpbnB1dFxyXG4gICAgaWYgKGNoYW5nZXNbJ3JlY29yZCddICE9IHVuZGVmaW5lZCAmJiBjaGFuZ2VzWydyZWNvcmQnXS5maXJzdENoYW5nZSA9PSBmYWxzZSAmJiBKU09OLnN0cmluZ2lmeShjaGFuZ2VzWydyZWNvcmQnXS5jdXJyZW50VmFsdWUpICE9IEpTT04uc3RyaW5naWZ5KGNoYW5nZXNbJ3JlY29yZCddLnByZXZpb3VzVmFsdWUpKSB7XHJcbiAgICAgIHRoaXMucmVjb3JkID0gY2hhbmdlc1sncmVjb3JkJ10uY3VycmVudFZhbHVlO1xyXG4gICAgICB0aGlzLnVwZGF0ZUZpZWxkKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8gdXBkYXRlTWV0YWRhdGFWYWxpZGl0eSgpIHtcclxuICAvLyAgIGlmICh0aGlzLnByZUxvYWRlZEltYWdlTWV0YWRhdGFGb3JtR3JvdXAuaW52YWxpZCkge1xyXG4gIC8vICAgICB0aGlzLmZpZWxkLkZvcm1Gb3JtR3JvdXAuY29udHJvbHNbdGhpcy5maWVsZC5OYW1lXS5zZXRFcnJvcnMoeyAnaW5jb3JyZWN0JzogdHJ1ZSB9KTtcclxuICAvLyAgIH0gZWxzZSB7XHJcbiAgLy8gICAgIHRoaXMuZmllbGQuRm9ybUZvcm1Hcm91cC5jb250cm9sc1t0aGlzLmZpZWxkLk5hbWVdLnNldEVycm9ycyhudWxsKTtcclxuICAvLyAgIH1cclxuICAvLyAgIHRoaXMub25SZWNvcmRWYWx1ZUNoYW5nZSgpO1xyXG4gIC8vIH1cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgYWdnaW9ybmFyZSBpbCB2YWxvcmUgZGVsIGNhbXBvIHF1YW5kbyBxdWVzdG8gw6ggcmFwcHJlc2VudGF0byBkYSB1bmEgZm9ybXVsYS5cclxuICAgKi9cclxuICB1cGRhdGVGaWVsZCgpIHtcclxuICAgIGlmICgodGhpcy5maWVsZC5EYXRhR2V0dGVyLkRhdGFHZXR0ZXJUeXBlID09IERhdGFHZXR0ZXJUeXBlRW51bS5NYW51YWxlIHx8IHRoaXMuZmllbGQuRGF0YUdldHRlci5EYXRhR2V0dGVyVHlwZSA9PSBEYXRhR2V0dGVyVHlwZUVudW0uRm9ybXVsYSkgJiYgdGhpcy5maWVsZC5Gb3JtdWxhKSB7XHJcbiAgICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSBVdGlsaXR5SGVscGVyU2VydmljZS5FdmFsdWF0ZUZpZWxkRm9ybXVsYSh0aGlzLmZpZWxkLkZvcm11bGEsIHRoaXMucmVjb3JkLCBudWxsKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmZpZWxkLlZpc2libGVJZikge1xyXG4gICAgICB0aGlzLmZpZWxkLkluTGlzdFZpZXcgPSBVdGlsaXR5SGVscGVyU2VydmljZS5FdmFsdWF0ZUZpZWxkRm9ybXVsYSh0aGlzLmZpZWxkLlZpc2libGVJZiwgdGhpcy5yZWNvcmQsIG51bGwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIHJlc2V0UHJlTG9hZGVkSW1hZ2UoKSB7XHJcbiAgICB0aGlzLndpZHRoID0gbnVsbDtcclxuICAgIHRoaXMuaGVpZ2h0ID0gbnVsbDtcclxuICAgIC8qdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9IFtKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMuZmllbGQuQ29udGV4dHVhbEF0dGFjaG1lbnQpKV07Ki9cclxuICAgIHRoaXMuZ2V0SW1hZ2VEaW1lbnNpb25zKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gaW52b2NhdG8gcXVhbmRvIHZlbmdvbm8gYWdnaXVudGkgbyBlbGltaW5hdGkgZ2xpIGFsbGVnYXRpIG5lbCBjb21wb25lbnRlIEF0dGFjaG1lbnRGaWVsZFRlbXBsYXRlLlxyXG4gICAqIFNlIGwnSW1hZ2VGaWVsZCDDqCBhYmlsaXRhdG8gYWwgZGlzZWdubyAoRW5hYmxlTWFya2luZyA9PSB0cnVlKSwgbm9uIHBlcm1ldHRlIGFsbGVnYXRpIG11bHRpcGxpIChJc011bGl0QXR0YWNoID09IGZhbHNlKVxyXG4gICAqIGUgbmVsIFJlY29yZCBjb3JyZW50ZSDDqCBwcmVzZW50ZSBsJ2ltbWFnaW5lIGNhcmljYXRhIGRhbGwndXRlbnRlIGFsbG9yYSByZWN1cGVyYSBsZSBkaW1lbnNpb25pIGRlbGwnaW1tYWdpbmUgZVxyXG4gICAqIGFwcmUgaWwgZGlhbG9nIGNvbiBpbCBjb21wb25lbnRlIGltYWdlLU1hcmtpbmcgcGVyIHBlcm1ldHRlcmUgaWwgZGlzZWdubyBzdWxsJ2ltbWFnaW5lIGFwcGVuYSBjYXJpY2F0YS5cclxuICAgKi9cclxuICBvbkF0dGFjaG1lbnRzQ2hhbmdlKCkge1xyXG4gICAgLypcclxuICAgIGlmICghdGhpcy5maWVsZC5BdHRhY2hEZWZpbml0aW9uLklzTXVsdGlBdHRhY2ggJiYgdGhpcy5maWVsZC5FbmFibGVNYXJraW5nICYmIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXVswXSkge1xyXG4gICAgICB0aGlzLmdldEltYWdlRGltZW5zaW9ucygpO1xyXG4gICAgICB0aGlzLmRpYWxvZ0ltYWdlRHJvd2luZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4odGhpcy5kaWFsb2dJbWFnZURyb3dpbmcsIHtcclxuICAgICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXHJcbiAgICAgICAgd2lkdGg6ICc3NSUnXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgKi9cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBpbnZvY2F0byBhbCBzYWx2YXRhZ2dpbyBkZWxsJ2ltbWFnaW5lIGRhbCBjb21wb25lbnRlIGltYWdlLU1hcmtpbmcuXHJcbiAgICogVHJhc2Zvcm1hIGlsIEJsb2IgcmljZXZ1dG8gaW4gdW4gYmFzZTY0LCBhZ2dpb3JuYSBpbCBGaWxlQ29udGV0VHlwZSBlIGlsIEZpbGVEYXRhQmFzZTY0XHJcbiAgICogZGVsbCdhbGxlZ2F0byBjYXJpY2F0byBlIGNoaXVkZSBpbCBkaWFsb2cgaW4gY3VpIGRpc2VnbmFyZS5cclxuICAgKiBAcGFyYW0gTWFya25QaWN0dXJlIEJsb2IgZGVsbCdpbW1hZ2luZSBkaXNlZ25hdGEuXHJcbiAgICovXHJcbiAgYXN5bmMgc2F2ZU1hcmsobWFya2VkSW1hZ2U6IE1hcmtlZEltYWdlKSB7XHJcbiAgICBsZXQgYmFzZTY0RmlsZSA9IGF3YWl0IHRvQmFzZTY0KG1hcmtlZEltYWdlLmltYWdlKTtcclxuICAgIGlmIChiYXNlNjRGaWxlKSB7XHJcbiAgICAgIHRoaXMuTWFya0ZpbGVCYXNlNjQgPSBiYXNlNjRGaWxlLnNwbGl0KFwiLFwiKVsxXTtcclxuICAgICAgdGhpcy5GaWxlRGF0YUJhc2U2NCA9IHRoaXMuTWFya0ZpbGVCYXNlNjQ7XHJcblxyXG4gICAgICAvLyBDbG9ubyBsJ2F0dGFjaG1lbnQgb3JpZ2luYWxlLCBnbGkgY2FtYmlvIGlsIEZpbGVCYXNlIGUgZ2xpIGF6emVybyBsJ0lEXHJcbiAgICAgIHRoaXMuaW1hZ2VNYXJrQXR0YWNobWVudC5GaWxlRGF0YUJhc2U2NCA9IHRoaXMuTWFya0ZpbGVCYXNlNjQ7XHJcbiAgICAgIHRoaXMuaW1hZ2VNYXJrQXR0YWNobWVudC5FeHRyYUpTT04gPSBKU09OLnN0cmluZ2lmeShtYXJrZWRJbWFnZS5vdXRtYXJrZXJzKTtcclxuICAgICAgdGhpcy5leHRyYUpTT04gPSB0aGlzLmltYWdlTWFya0F0dGFjaG1lbnQuRXh0cmFKU09OO1xyXG5cclxuICAgICAgdGhpcy5pbWFnZU1hcmsuZW1pdCh0aGlzLmltYWdlTWFya0F0dGFjaG1lbnQpO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5kaWFsb2dJbWFnZU1hcmtpbmdSZWYpIHtcclxuICAgICAgdGhpcy5jbG9zZURpYWxvZygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBjaGl1ZGVyZSBpbCBkaWFsb2cgaW4gY3VpIGRpc2VnbmFyZSBzdWxsJ2ltbWFnaW5lIGNhcmlhdGEgZSBzdnVvdGFyZSBsZSBkaW1lbnNpb25pLlxyXG4gICAqL1xyXG4gIGNsb3NlRGlhbG9nKCkge1xyXG4gICAgdGhpcy5kaWFsb2dJbWFnZU1hcmtpbmdSZWYuY2xvc2UoKTtcclxuICAgIHRoaXMud2lkdGggPSBudWxsO1xyXG4gICAgdGhpcy5oZWlnaHQgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciByZWN1cGVyYXJlIGxlIGRpbWVuc2lvbmkgZGVsbCdpbW1hZ2luZSBjYXJpY2F0YSBwZXIgbW9zdHJhcmUgY29ycmV0dGFtZW50ZVxyXG4gICAqIGlsIGNvbXBvbmVudGUgaW1hZ2UtTWFya2luZy4gU2Ugbm9uIHZpZW5lIGVzZWd1aXRvIHF1ZXN0byBwYXNzYWdnaW8gbCdhcmVhIGluIGN1aSBkaXNlZ25hcmUgXHJcbiAgICogw6ggcGnDuSBncmFuZGUgZGVsbCdpbW1hZ2luZSBzdGVzc2EgZSBhbCBzYWx2YXRhZ2dpbyBpIHRyYXR0aSBkaXNlZ25hdGkgdmVuZ29ubyBzcG9zdGF0aS4gXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXRJbWFnZURpbWVuc2lvbnMoKSB7XHJcbiAgICB2YXIgYmxvYjogQmxvYiA9IHRoaXMuZ2V0QmxvYkZyb21CYXNlNjQoKTtcclxuICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgICByZWFkZXIub25sb2FkID0gKGU6IGFueSkgPT4ge1xyXG4gICAgICBjb25zdCBpbWFnZSA9IG5ldyBJbWFnZSgpO1xyXG4gICAgICBpbWFnZS5zcmMgPSBlLnRhcmdldC5yZXN1bHQ7XHJcbiAgICAgIGltYWdlLm9ubG9hZCA9IHJzID0+IHtcclxuICAgICAgICB0aGlzLmhlaWdodCA9IHJzLmN1cnJlbnRUYXJnZXRbJ2hlaWdodCddO1xyXG4gICAgICAgIHRoaXMud2lkdGggPSBycy5jdXJyZW50VGFyZ2V0Wyd3aWR0aCddO1xyXG4gICAgICB9O1xyXG4gICAgfTtcclxuICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGJsb2IpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBjb252ZXJ0aXJlIGlsIGJhc2U2NCBkaSB1bidpbW1hZ2luZSBpbiB1biBCbG9iLlxyXG4gICAqIE5lY2Vzc2FyaW8gcGVyIGlsIHJlY3VwZXJvIGRlbGxlIGRpbWVuc2lvbmkgZGVsbCdpbW1hZ2luZSBjYXJpY2F0YSBhIHBhcnRpcmUgZGFsIHN1byBiYXNlNjQuXHJcbiAgICogVmllbmUgZXNlZ3VpdG8gc29sbyBuZWwgY2FzbyBpbiBjdWkgbCdJbWFnZUZpZWxkIG5vbiBhbW1ldHRlIGFsbGVnYXRpIG11bHRpcGxpLlxyXG4gICAqIEByZXR1cm5zIFJlc3RpdHVpc2NlIGlsIEJsb2IgZGVsbCdpbW1hZ2luZSBjYXJpY2F0YS5cclxuICAgKi9cclxuICBwcml2YXRlIGdldEJsb2JGcm9tQmFzZTY0KCkge1xyXG4gICAgY29uc3QgYnl0ZUNoYXJhY3RlcnMgPSBhdG9iKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV1bMF0uRmlsZURhdGFCYXNlNjQpO1xyXG4gICAgY29uc3QgYnl0ZU51bWJlcnMgPSBuZXcgQXJyYXkoYnl0ZUNoYXJhY3RlcnMubGVuZ3RoKTtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYnl0ZUNoYXJhY3RlcnMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgYnl0ZU51bWJlcnNbaV0gPSBieXRlQ2hhcmFjdGVycy5jaGFyQ29kZUF0KGkpO1xyXG4gICAgfVxyXG4gICAgY29uc3QgYnl0ZUFycmF5ID0gbmV3IFVpbnQ4QXJyYXkoYnl0ZU51bWJlcnMpO1xyXG4gICAgcmV0dXJuIG5ldyBCbG9iKFtieXRlQXJyYXldLCB7IHR5cGU6IHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV1bMF0uRmlsZUNvbnRlbnRUeXBlIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBlbWV0dGVyZSBsJ2V2ZW50byBjaGUgaWwgdmFsb3JlIGRlbCByZWNvcmQgw6ggY2FtYmlhdG8uXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBvblJlY29yZFZhbHVlQ2hhbmdlKCkge1xyXG4gICAgaWYgKCF0aGlzLmZpZWxkLkZvcm11bGEpIHtcclxuICAgICAgdGhpcy5yZWNvcmRDaGFuZ2UuZW1pdCh0aGlzLnJlY29yZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb3Blbk1hcmsoKXtcclxuICAgIHRoaXMuZGlhbG9nSW1hZ2VNYXJraW5nUmVmID0gdGhpcy5kaWFsb2cub3Blbih0aGlzLmRpYWxvZ0ltYWdlTWFya2luZywge1xyXG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXHJcbiAgICAgIGhhc0JhY2tkcm9wOiB0cnVlLFxyXG4gICAgICBwYW5lbENsYXNzOiAnaW1hZ2UtbW9kYWwnLFxyXG4gICAgICB3aWR0aDogJzc1JSdcclxuICAgIH0pO1xyXG5cclxuICAgIGlmICh0aGlzLkF0dGFjaG1lbnRJRCAhPSBudWxsICYmIE51bWJlcih0aGlzLkF0dGFjaG1lbnRJRCkgPiAwKXtcclxuICAgICAgdGhpcy5sb2FkKHRoaXMuQXR0YWNobWVudElELFtJbWFnZUZvbGRlckVudW0uUmVndWxhcl0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5GaWxlQmFzZTY0ID0gdGhpcy5GaWxlRGF0YUJhc2U2NDtcclxuICAgICAgdGhpcy5NYXJraW5nTG9hZGVkID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBsb2FkKElELFR5cGVzKXtcclxuXHJcbiAgICB0aGlzLk1hcmtpbmdMb2FkZWQgPSBmYWxzZTtcclxuXHJcbiAgICAgIC8vIHByZXBhcm8gbGEgdmVyc2lvbmUgY29ycmV0dGEgZGVsIGZvcm1cclxuICAgICAgdmFyIGR5bmFtaWNNb2R1bGVQYXJhbXMgPSBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgUGFyYW1OYW1lOiBcIkF0dGFjaG1lbnRJRFwiLFxyXG4gICAgICAgICAgUGFyYW1WYWx1ZTogSUQsXHJcbiAgICAgICAgICBQYXJhbVR5cGU6IFBhcmFtVHlwZUVudW1bXCJRdWVyeSBwYXJhbVwiXSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIFBhcmFtTmFtZTogXCJUeXBlc1wiLFxyXG4gICAgICAgICAgUGFyYW1WYWx1ZTogVHlwZXMsXHJcbiAgICAgICAgICBQYXJhbVR5cGU6IFBhcmFtVHlwZUVudW1bXCJRdWVyeSBwYXJhbVwiXSxcclxuICAgICAgICB9LFxyXG4gICAgICBdOyAgICBcclxuICAgICAgXHJcbiAgICB0aGlzLnV0aWxpdHlIZWxwZXJTZXJ2aWNlLlJ1bkVuZFBvaW50Q2FsbChcclxuICAgICAgdGhpcy5lbmRQb2ludENvbmZpZ3VyYXRpb24uRm9ybXMuR2V0QXR0YWNobWVudFdpdGhCYXNlczY0LFxyXG4gICAgICBkeW5hbWljTW9kdWxlUGFyYW1zLFxyXG4gICAgICAocmVzOiBEeW5BdHRhY2htZW50KSA9PiB7XHJcblxyXG4gICAgICAgIHRoaXMuRmlsZUJhc2U2NCA9IHJlcy5GaWxlQmFzZXM2NFtJbWFnZUZvbGRlckVudW0uUmVndWxhcl07XHJcbiAgICAgICAgdGhpcy5NYXJraW5nTG9hZGVkID0gdHJ1ZTtcclxuXHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnIpID0+IHtcclxuXHJcbiAgICAgIH1cclxuICAgICk7ICAgIFxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInJvdyBpbWFnZUNvbnRhaW5lclwiIHN0eWxlPVwid2lkdGg6IHt7aW1hZ2VXaWR0aH19cHg7XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj57e2ZpZWxkLkRlc2NyaXB0aW9ufX08L2Rpdj5cclxuICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMlwiPjxpbWcgKm5nSWY9XCJmaWVsZC5EeW5BdHRhY2htZW50XCJcclxuICAgICAgICAgICAgICBzcmM9XCJkYXRhOnt7ZmllbGQuRHluQXR0YWNobWVudC5GaWxlQ29udGVudFR5cGV9fTtiYXNlNjQse3tGaWxlRGF0YUJhc2U2NH19XCJcclxuICAgICAgICAgICAgICBbaGVpZ2h0XT1cImZpZWxkLkR5bkF0dGFjaG1lbnQuUmVzaXplZEltYWdlSGVpZ2h0UHggIT0gbnVsbCA/IGZpZWxkLkR5bkF0dGFjaG1lbnQuUmVzaXplZEltYWdlSGVpZ2h0UHggOiAxMjhcIlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwic2luZ2xlSW1hZ2VcIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGRyYXdCdXR0b25cIj5cclxuICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgYnRuLXcxMDBcIiAoY2xpY2spPVwib3Blbk1hcmsoKVwiPk1hcmNhPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBmbGV4IGp1c3RpZnktY29udGVudC1hcm91bmQgYnV0dG9ua2V5XCIgKm5nSWY9XCJmaWVsZC5EeW5BdHRhY2htZW50LkJ1dHRvbktleSAhPSBudWxsICYmIGZpZWxkLkR5bkF0dGFjaG1lbnQuQnV0dG9uS2V5ICE9ICcnXCI+XHJcbiAgICAgICAgICAgICAgICAgICA8ZGl2PkV0aWNoZXR0YTwvZGl2PjxkaXY+e3tmaWVsZC5EeW5BdHRhY2htZW50LkJ1dHRvbktleX19PC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBmbGV4IGp1c3RpZnktY29udGVudC1hcm91bmQgYnV0dG9udmFsdWVcIiAqbmdJZj1cImZpZWxkLkR5bkF0dGFjaG1lbnQuQnV0dG9uVmFsdWUgIT0gbnVsbCAmJiBmaWVsZC5EeW5BdHRhY2htZW50LkJ1dHRvblZhbHVlICE9ICcnXCI+IFxyXG4gICAgICAgICAgICAgICAgICAgPGRpdj5WYWxvcmU8L2Rpdj48ZGl2Pnt7ZmllbGQuRHluQXR0YWNobWVudC5CdXR0b25WYWx1ZX19PC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj4gICBcclxuPC9kaXY+XHJcblxyXG48IS0tIERJQUxPRyBQRVIgRElTRUdOQVJFIFNVTCBOVU9WTyBBTExFR0FUTyBDQVJJQ0FUTyAtLT5cclxuPG5nLXRlbXBsYXRlICNkaWFsb2dJbWFnZU1hcmtpbmc+XHJcbiAgICA8ZGl2IGNsYXNzPVwicGFkZGVyXCI+XHJcbiAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMTIgY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgICAgICAgICA8dG13LWltYWdlLW1hcmtlclxyXG4gICAgICAgICAgICAgICAgICAgKm5nSWY9XCJNYXJraW5nTG9hZGVkXCJcclxuICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiJ2RhdGE6JysgZmllbGQuRHluQXR0YWNobWVudC5GaWxlQ29udGVudFR5cGUgKyAnO2Jhc2U2NCwnKyBGaWxlQmFzZTY0XCIgW2luQ29uZmlnXT1cImluQ29uZmlnXCIgW3NhdmVkTWFya2Vyc109XCJleHRyYUpTT05cIlxyXG4gICAgICAgICAgICAgICAgICAgW3dpZHRoXT1cImZpZWxkLkR5bkF0dGFjaG1lbnQuSW1hZ2VXaWR0aFB4XCIgW2hlaWdodF09XCJmaWVsZC5EeW5BdHRhY2htZW50LkltYWdlSGVpZ2h0UHhcIiBcclxuICAgICAgICAgICAgICAgICAgIChzYXZlKT1cInNhdmVNYXJrKCRldmVudClcIiAoY2xvc2VEaWFsb2cpPVwiY2xvc2VEaWFsb2coKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgPC90bXctaW1hZ2UtbWFya2VyPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -37,7 +37,7 @@ export class LabelFieldTemplateComponent {
|
|
|
37
37
|
* Metodo per aggiornare il valore del campo quando questo è rappresentato da una formula.
|
|
38
38
|
*/
|
|
39
39
|
updateField() {
|
|
40
|
-
if (this.field.Formula) {
|
|
40
|
+
if ((this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Manuale || this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Formula) && this.field.Formula) {
|
|
41
41
|
this.record[this.field.Name] = UtilityHelperService.EvaluateFieldFormula(this.field.Formula, this.record, null);
|
|
42
42
|
}
|
|
43
43
|
if (this.field.VisibleIf) {
|
|
@@ -76,4 +76,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
76
76
|
}], recordChange: [{
|
|
77
77
|
type: Output
|
|
78
78
|
}] } });
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwtZmllbGQtdGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvY29tcG9uZW50cy9wcml2YXRlL2ZpZWxkLXRlbXBsYXRlcy9sYWJlbC1maWVsZC10ZW1wbGF0ZS9sYWJlbC1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL2xhYmVsLWZpZWxkLXRlbXBsYXRlL2xhYmVsLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUd6RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUVuRixPQUFPLEVBQUUsUUFBUSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUU5QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7OztBQU94RSxNQUFNLE9BQU8sMkJBQTJCO0lBaUJ0QyxZQUFtQixZQUFxQztRQUFyQyxpQkFBWSxHQUFaLFlBQVksQ0FBeUI7UUFoQnhELDhCQUE4QjtRQUM5QixxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDekIsV0FBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQU12QixRQUFHLEdBQVUsSUFBSSxDQUFDO1FBS1IsaUJBQVksR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUl4RSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxRQUFRO1FB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Q0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQztTQUN0RTtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILG1CQUFtQjtRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3JDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNyQztJQUNILENBQUM7O3lIQXZFVSwyQkFBMkI7NkdBQTNCLDJCQUEyQiwwS0NkeEMsZ0dBQXdGOzRGRGMzRSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0Usc0JBQXNCOzhHQVd2QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQU1JLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVjb3JkIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3JlY29yZC5tb2RlbCc7XHJcbmltcG9ydCB7IElCYXNlRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzL2lCYXNlRmllbGRDb21wb25lbnQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgVXRpbGl0eUhlbHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy91dGlsaXR5SGVscGVyLnNlcnZpY2VzJztcclxuaW1wb3J0IHsgVm9pY2VSZWNvZ25pdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy92b2ljZS1yZWNvZ25pdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgaW50ZXJ2YWwsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBMYWJlbEZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2ZpZWxkcy9sYWJlbEZpZWxkLm1vZGVsJztcclxuaW1wb3J0IHsgRGF0YUdldHRlclR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2Jhc2VGaWVsZC5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xhYmVsLWZpZWxkLXRlbXBsYXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbGFiZWwtZmllbGQtdGVtcGxhdGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xhYmVsLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIExhYmVsRmllbGRUZW1wbGF0ZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBJQmFzZUZpZWxkQ29tcG9uZW50IHtcclxuICAvL1ZhcmlhYmlsaSBwZXIgbCdpbnB1dCB2b2NhbGVcclxuICBpc1N0aWxsUmVjb2dpbnplID0gZmFsc2U7XHJcbiAgc291cmNlID0gaW50ZXJ2YWwoMjAwKTtcclxuICBuZXd0ZXh0OiBzdHJpbmc7XHJcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgLy92YXJpYWJpbGkgZXN0ZXJuZSBwZXIgbCdpbnB1dCBkZWkgY2FtcGlcclxuICBASW5wdXQoKSBmaWVsZDogTGFiZWxGaWVsZDtcclxuICBASW5wdXQoKSByZWNvcmQ6IFJlY29yZDtcclxuICBTVFQ6Ym9vbGVhbiA9dHJ1ZTtcclxuICAvL3ZhcmlhYmlsaSBwZXIgZ2VzdGlyZSBpbCBjc3MgZGVsbGEgbGFiZWwgZSBkZWwgZmllbGRcclxuICBGaWVsZHN0eWxlT2JqOiBhbnk7XHJcbiAgTGFiZWxzdHlsZU9iajogYW55O1xyXG5cclxuICBAT3V0cHV0KCkgcmVjb3JkQ2hhbmdlOiBFdmVudEVtaXR0ZXI8UmVjb3JkPiA9IG5ldyBFdmVudEVtaXR0ZXI8UmVjb3JkPigpO1xyXG5cclxuXHJcbiAgY29uc3RydWN0b3IocHVibGljIHZvaWNlc2VydmljZTogVm9pY2VSZWNvZ25pdGlvblNlcnZpY2UpIHtcclxuICAgIHRoaXMudm9pY2VzZXJ2aWNlLmluaXQoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy51cGRhdGVGaWVsZCgpO1xyXG4gICAgdGhpcy5pbml0U3R5bGVzKCk7XHJcbiAgfVxyXG4gIGluaXRTdHlsZXMoKSB7XHJcbiAgICAgIC8vRnVuemlvbmUgcGVyIHBhcnNhcmUgaWwgY2FtcG8gc3R5bGVjc3MgZGVsbCdvZ2dldHRvIGZpZWxkIGVkIGFwcGxpY2FybG8gYWxsJ2h0bWxcclxuICAgIGlmKHRoaXMuZmllbGQuRmllbGRzdHlsZUNTUyAhPSBudWxsIHx8IHRoaXMuZmllbGQuRmllbGRzdHlsZUNTUyAhPSB1bmRlZmluZWQpICAgXHJcbiAgICAgIHRoaXMuRmllbGRzdHlsZU9iaj0gVXRpbGl0eUhlbHBlclNlcnZpY2UuaW5pdFN0eWxlcyh0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MpO1xyXG4gICAgaWYodGhpcy5maWVsZC5MYWJlbHN0eWxlQ1NTICE9IG51bGwgfHwgdGhpcy5maWVsZC5MYWJlbHN0eWxlQ1NTICE9IHVuZGVmaW5lZCkgICBcclxuICAgICAgdGhpcy5MYWJlbHN0eWxlT2JqID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuaW5pdFN0eWxlcyh0aGlzLmZpZWxkLkxhYmVsc3R5bGVDU1MpO1xyXG4gfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAvLyBTZSB2aWVuZSBtb2RpZmljYXRvIGlsIHZhbG9yZSBkaSBcIm5nTW9kZWxJbnB1dFwiIGFsbG9yYSBhZ2dpb3JuYSBsJ2lucHV0XHJcbiAgICBpZiAoY2hhbmdlc1sncmVjb3JkJ10gIT0gdW5kZWZpbmVkICYmIGNoYW5nZXNbJ3JlY29yZCddLmZpcnN0Q2hhbmdlID09IGZhbHNlICYmIEpTT04uc3RyaW5naWZ5KGNoYW5nZXNbJ3JlY29yZCddLmN1cnJlbnRWYWx1ZSkgIT0gSlNPTi5zdHJpbmdpZnkoY2hhbmdlc1sncmVjb3JkJ10ucHJldmlvdXNWYWx1ZSkpIHtcclxuICAgICAgdGhpcy5yZWNvcmQgPSBjaGFuZ2VzWydyZWNvcmQnXS5jdXJyZW50VmFsdWU7XHJcbiAgICAgIHRoaXMudXBkYXRlRmllbGQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgYWdnaW9ybmFyZSBpbCB2YWxvcmUgZGVsIGNhbXBvIHF1YW5kbyBxdWVzdG8gw6ggcmFwcHJlc2VudGF0byBkYSB1bmEgZm9ybXVsYS5cclxuICAgKi9cclxuICB1cGRhdGVGaWVsZCgpIHtcclxuICAgIGlmICgodGhpcy5maWVsZC5EYXRhR2V0dGVyLkRhdGFHZXR0ZXJUeXBlID09IERhdGFHZXR0ZXJUeXBlRW51bS5NYW51YWxlIHx8IHRoaXMuZmllbGQuRGF0YUdldHRlci5EYXRhR2V0dGVyVHlwZSA9PSBEYXRhR2V0dGVyVHlwZUVudW0uRm9ybXVsYSkgJiYgdGhpcy5maWVsZC5Gb3JtdWxhKSB7XHJcbiAgICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSBVdGlsaXR5SGVscGVyU2VydmljZS5FdmFsdWF0ZUZpZWxkRm9ybXVsYSh0aGlzLmZpZWxkLkZvcm11bGEsIHRoaXMucmVjb3JkLCBudWxsKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmZpZWxkLlZpc2libGVJZikge1xyXG4gICAgICB0aGlzLmZpZWxkLkluTGlzdFZpZXcgPSBVdGlsaXR5SGVscGVyU2VydmljZS5FdmFsdWF0ZUZpZWxkRm9ybXVsYSh0aGlzLmZpZWxkLlZpc2libGVJZiwgdGhpcy5yZWNvcmQsIG51bGwpO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLmlzU3RpbGxSZWNvZ2luemUpIHtcclxuICAgICAgaWYgKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gIT0gbnVsbCB8fCB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdICE9IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHRoaXMudm9pY2VzZXJ2aWNlLnRleHQgPSB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5maWVsZC5EYXRhR2V0dGVyLkRhdGFHZXR0ZXJUeXBlID09IERhdGFHZXR0ZXJUeXBlRW51bS5NYW51YWxlICYmIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gdGhpcy5maWVsZC5EYXRhR2V0dGVyLkRhdGFHZXR0ZXJWYWx1ZTtcclxuICAgIH0gICBcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgZW1ldHRlcmUgbCdldmVudG8gY2hlIGlsIHZhbG9yZSBkZWwgcmVjb3JkIMOoIGNhbWJpYXRvLlxyXG4gICAqL1xyXG4gIG9uUmVjb3JkVmFsdWVDaGFuZ2UoKSB7XHJcbiAgICBpZiAoIXRoaXMuZmllbGQuRm9ybXVsYSkge1xyXG4gICAgICB0aGlzLnJlY29yZENoYW5nZS5lbWl0KHRoaXMucmVjb3JkKTtcclxuICAgIH1cclxuICAgIGlmICghdGhpcy5maWVsZC5WaXNpYmxlSWYpIHtcclxuICAgICAgdGhpcy5yZWNvcmRDaGFuZ2UuZW1pdCh0aGlzLnJlY29yZCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJkbS1ldGljaGV0dGFcIiBbbmdTdHlsZV09XCJMYWJlbHN0eWxlT2JqXCIgW2lubmVySFRNTF09XCJmaWVsZC5FdGljaGV0dGFcIj48L2Rpdj4iXX0=
|
|
@@ -40,7 +40,7 @@ export class NumericFieldTemplateComponent {
|
|
|
40
40
|
* Metodo per aggiornare il valore del campo quando questo è rappresentato da una formula.
|
|
41
41
|
*/
|
|
42
42
|
updateField() {
|
|
43
|
-
if (this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Formula && this.field.Formula) {
|
|
43
|
+
if ((this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Manuale || this.field.DataGetter.DataGetterType == DataGetterTypeEnum.Formula) && this.field.Formula) {
|
|
44
44
|
this.record[this.field.Name] = UtilityHelperService.EvaluateFieldFormula(this.field.Formula, this.record, null);
|
|
45
45
|
//console.log("field modified - original value",this.field.Name,this.record[this.field.Name]);
|
|
46
46
|
//this.record[this.field.Name] = this.record[this.field.Name] == 0 ? 0 : (this.record[this.field.Name] / Math.pow(10,this.eqpNumericOptions.precision)).toFixed(this.eqpNumericOptions.precision);
|
|
@@ -118,4 +118,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
118
118
|
}], recordChange: [{
|
|
119
119
|
type: Output
|
|
120
120
|
}] } });
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL251bWVyaWMtZmllbGQtdGVtcGxhdGUvbnVtZXJpYy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL251bWVyaWMtZmllbGQtdGVtcGxhdGUvbnVtZXJpYy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLG1CQUFtQixFQUFxQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBSW5GLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7OztBQU94RSxNQUFNLE9BQU8sNkJBQTZCO0lBYzFDO1FBVlksaUJBQVksR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMxRSxvQkFBZSxHQUFVLEVBQUUsQ0FBQztRQUM1QixzQkFBaUIsR0FBK0IsRUFBRSxDQUFDO1FBTXJELFlBQU8sR0FBWSxLQUFLLENBQUM7SUFHekIsQ0FBQztJQUVDLFFBQVE7UUFDTixJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsb0JB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ZUFBZSxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDOzsySEE1R1UsNkJBQTZCOytHQUE3Qiw2QkFBNkIsNEtDZjFDLDh2QkFRaUI7NEZET0osNkJBQTZCO2tCQUx6QyxTQUFTOytCQUNFLHdCQUF3QjswRUFNekIsS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEVxcE51bWVyaWNJbnB1dE1vZGUsIE51bWVyaWNNYXNrQ29uZmlnIH0gZnJvbSAnQGVxcHJvamVjdC9lcXAtbnVtZXJpYyc7XHJcbmltcG9ydCB7IFV0aWxpdHlIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvdXRpbGl0eUhlbHBlci5zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IFJlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9yZWNvcmQubW9kZWwnO1xyXG5pbXBvcnQgeyBOdW1lcmljRmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZmllbGRzL251bWVyaWNGaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IElCYXNlRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzL2lCYXNlRmllbGRDb21wb25lbnQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgR2xvYmFsU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2dsb2JhbC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGF0YUdldHRlclR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2Jhc2VGaWVsZC5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ251bWVyaWMtZmllbGQtdGVtcGxhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9udW1lcmljLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9udW1lcmljLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE51bWVyaWNGaWVsZFRlbXBsYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIElCYXNlRmllbGRDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBmaWVsZDogTnVtZXJpY0ZpZWxkO1xyXG4gIEBJbnB1dCgpIHJlY29yZDogUmVjb3JkO1xyXG4gIEBPdXRwdXQoKSByZWNvcmRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxSZWNvcmQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxSZWNvcmQ+KCk7XHJcbiAgdmFsaWRhdG9yc0FycmF5OiBhbnlbXSA9IFtdO1xyXG4gIGVxcE51bWVyaWNPcHRpb25zOiBQYXJ0aWFsPE51bWVyaWNNYXNrQ29uZmlnPiA9IHt9O1xyXG5cclxuLy92YXJpYWJpbGkgcGVyIGdlc3RpcmUgaWwgY3NzIGRlbGxhIGxhYmVsIGUgZGVsIGZpZWxkXHJcbkZpZWxkc3R5bGVPYmo6IGFueTtcclxuTGFiZWxzdHlsZU9iajogYW55O1xyXG5cclxuaXNEaXJ0eTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuY29uc3RydWN0b3IoKSB7XHJcbn1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbmZpZ3VyZUVxcE51bWVyaWNPcHRpb25zKCk7XHJcbiAgICB0aGlzLmNvbmZpZ3VyZUNvbnRyb2xsZXJzKCk7ICAgXHJcbiAgICB0aGlzLnVwZGF0ZUZpZWxkKCk7XHJcbiAgICB0aGlzLmluaXRTdHlsZXMoKTtcclxuICB9XHJcblxyXG4gIC8vRnVuemlvbmUgcGVyIHBhcnNhcmUgaWwgY2FtcG8gc3R5bGVjc3MgZGVsbCdvZ2dldHRvIGZpZWxkIGVkIGFwcGxpY2FybG8gYWxsJ2h0bWxcclxuICBpbml0U3R5bGVzKCkge1xyXG4gICAgICAgICBpZih0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gbnVsbCB8fCB0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gdW5kZWZpbmVkKSAgIFxyXG4gICAgICAgICB0aGlzLkZpZWxkc3R5bGVPYmo9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLmluaXRTdHlsZXModGhpcy5maWVsZC5GaWVsZHN0eWxlQ1NTKTtcclxuICAgICAgICAgaWYodGhpcy5maWVsZC5MYWJlbHN0eWxlQ1NTICE9IG51bGwgfHwgdGhpcy5maWVsZC5MYWJlbHN0eWxlQ1NTICE9IHVuZGVmaW5lZCkgICBcclxuICAgICAgICAgdGhpcy5MYWJlbHN0eWxlT2JqID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuaW5pdFN0eWxlcyh0aGlzLmZpZWxkLkxhYmVsc3R5bGVDU1MpO1xyXG4gfVxyXG4gLy8gU2UgdmllbmUgbW9kaWZpY2F0byBpbCB2YWxvcmUgZGkgXCJuZ01vZGVsSW5wdXRcIiBhbGxvcmEgYWdnaW9ybmEgbCdpbnB1dFxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgXHJcbiAgICBpZiAoY2hhbmdlc1sncmVjb3JkJ10gIT0gdW5kZWZpbmVkICYmIGNoYW5nZXNbJ3JlY29yZCddLmZpcnN0Q2hhbmdlID09IGZhbHNlICYmIEpTT04uc3RyaW5naWZ5KGNoYW5nZXNbJ3JlY29yZCddLmN1cnJlbnRWYWx1ZSkgIT0gSlNPTi5zdHJpbmdpZnkoY2hhbmdlc1sncmVjb3JkJ10ucHJldmlvdXNWYWx1ZSkpIHtcclxuICAgICAgdGhpcy5yZWNvcmQgPSBjaGFuZ2VzWydyZWNvcmQnXS5jdXJyZW50VmFsdWU7XHJcbiAgICAgIHRoaXMudXBkYXRlRmllbGQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgYWdnaW9ybmFyZSBpbCB2YWxvcmUgZGVsIGNhbXBvIHF1YW5kbyBxdWVzdG8gw6ggcmFwcHJlc2VudGF0byBkYSB1bmEgZm9ybXVsYS5cclxuICAgKi9cclxuICB1cGRhdGVGaWVsZCgpIHtcclxuICAgIFxyXG4gICAgaWYgKHRoaXMuZmllbGQuRGF0YUdldHRlci5EYXRhR2V0dGVyVHlwZSA9PSBEYXRhR2V0dGVyVHlwZUVudW0uRm9ybXVsYSAmJiB0aGlzLmZpZWxkLkZvcm11bGEpIHtcclxuICAgICAgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLkV2YWx1YXRlRmllbGRGb3JtdWxhKHRoaXMuZmllbGQuRm9ybXVsYSwgdGhpcy5yZWNvcmQsIG51bGwpO1xyXG4gICAgICAvL2NvbnNvbGUubG9nKFwiZmllbGQgbW9kaWZpZWQgLSBvcmlnaW5hbCB2YWx1ZVwiLHRoaXMuZmllbGQuTmFtZSx0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdKTtcclxuICAgICAgLy90aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9PSAwID8gMCA6ICh0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdIC8gTWF0aC5wb3coMTAsdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5wcmVjaXNpb24pKS50b0ZpeGVkKHRoaXMuZXFwTnVtZXJpY09wdGlvbnMucHJlY2lzaW9uKTtcclxuICAgICAgLy9jb25zb2xlLmxvZyhcImZpZWxkIG1vZGlmaWVkIC0gZmluYWwgdmFsdWVcIix0aGlzLmZpZWxkLk5hbWUsdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5maWVsZC5WaXNpYmxlSWYpIHtcclxuICAgICAgdGhpcy5maWVsZC5Jbkxpc3RWaWV3ID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuRXZhbHVhdGVGaWVsZEZvcm11bGEodGhpcy5maWVsZC5WaXNpYmxlSWYsIHRoaXMucmVjb3JkLCBudWxsKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclR5cGUgPT0gRGF0YUdldHRlclR5cGVFbnVtLk1hbnVhbGUgJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9PSBudWxsKSB7XHJcbiAgICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBlbWV0dGVyZSBsJ2V2ZW50byBjaGUgaWwgdmFsb3JlIGRlbCByZWNvcmQgw6ggY2FtYmlhdG8uXHJcbiAgICovXHJcbiAgb25SZWNvcmRWYWx1ZUNoYW5nZSgpIHtcclxuICAgIGlmICghdGhpcy5maWVsZC5Gb3JtdWxhKSB7XHJcbiAgICAgIGlmICh0aGlzLmlzRGlydHkpe1xyXG4gICAgICAgIC8vIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID09IDAgPyAwIDogKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gLyBNYXRoLnBvdygxMCx0aGlzLmVxcE51bWVyaWNPcHRpb25zLnByZWNpc2lvbikpLnRvRml4ZWQodGhpcy5lcXBOdW1lcmljT3B0aW9ucy5wcmVjaXNpb24pO1xyXG4gICAgICAgIHRoaXMuaXNEaXJ0eSA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMucmVjb3JkQ2hhbmdlLmVtaXQodGhpcy5yZWNvcmQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBjb25maWd1cmFyZSBlcXAtbnVtZXJpY1xyXG4gICAqL1xyXG4gIHByaXZhdGUgY29uZmlndXJlRXFwTnVtZXJpY09wdGlvbnMoKSB7XHJcbiAgICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLnN1ZmZpeCA9IHRoaXMuZmllbGQuTWVhc3VyZVVuaXQgPyBcIiAgXCIrdGhpcy5maWVsZC5NZWFzdXJlVW5pdCtcIiAgXCIgOiBcIlwiO1xyXG4gICAgdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5wcmVmaXggPSB0aGlzLmZpZWxkLkN1cnJlbmN5U3ltYm9sID8gdGhpcy5maWVsZC5DdXJyZW5jeVN5bWJvbCtcIiBcIiA6IFwiXCI7XHJcbiAgICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLmlucHV0TW9kZSA9IHRoaXMuZmllbGQuQ3VycmVuY3lTeW1ib2wgPyBFcXBOdW1lcmljSW5wdXRNb2RlLkZJTkFOQ0lBTCA6IEVxcE51bWVyaWNJbnB1dE1vZGUuTkFUVVJBTDtcclxuICAgIHRoaXMuZXFwTnVtZXJpY09wdGlvbnMuYWxsb3dOZWdhdGl2ZT10cnVlO1xyXG4gICAgaWYgKHRoaXMuZmllbGQuRGVjaW1hbFNlcGFyYXRvciAhPSBudWxsICYmIHRoaXMuZmllbGQuRGVjaW1hbFNlcGFyYXRvciAhPSB1bmRlZmluZWQpXHJcbiAgICAgIHRoaXMuZXFwTnVtZXJpY09wdGlvbnMuZGVjaW1hbCA9IHRoaXMuZmllbGQuRGVjaW1hbFNlcGFyYXRvcjtcclxuICAgICAgZWxzZVxyXG4gICAgICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLmRlY2ltYWw9XCIuXCI7XHJcbiAgICBpZiAodGhpcy5maWVsZC5UaG91c2FuZHNTZXBhcmF0b3IgIT0gbnVsbCAmJiB0aGlzLmZpZWxkLlRob3VzYW5kc1NlcGFyYXRvciAhPSB1bmRlZmluZWQgJiYgdGhpcy5maWVsZC5UaG91c2FuZHNTZXBhcmF0b3IudHJpbSgpLmxlbmd0aCA+IDApXHJcbiAgICAgIHRoaXMuZXFwTnVtZXJpY09wdGlvbnMudGhvdXNhbmRzID0gdGhpcy5maWVsZC5UaG91c2FuZHNTZXBhcmF0b3I7XHJcbiAgICAgIGlmKHRoaXMuZmllbGQuSXNJbnRlZ2VyPT0gZmFsc2Upe1xyXG4gICAgICAgIGlmICh0aGlzLmZpZWxkLkRlY2ltYWxQcmVjaXNpb24gIT0gbnVsbCAmJiB0aGlzLmZpZWxkLkRlY2ltYWxQcmVjaXNpb24gIT0gdW5kZWZpbmVkKSB7IHRoaXMuZXFwTnVtZXJpY09wdGlvbnMucHJlY2lzaW9uID0gdGhpcy5maWVsZC5EZWNpbWFsUHJlY2lzaW9uOyB9XHJcbiAgICAgICAgZWxzZSB7IHRoaXMuZXFwTnVtZXJpY09wdGlvbnMucHJlY2lzaW9uID0gMjsgfVxyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLnByZWNpc2lvbiA9IDA7XHJcbiAgICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gKiBNZXRvZG8gZGkgYWdnaXVudGEgZGVpIHZhbGlkYXRvciBkZWxsJ2lucHV0XHJcbiAqL1xyXG4gIHByaXZhdGUgY29uZmlndXJlQ29udHJvbGxlcnMoKSB7XHJcbiAgICB0aGlzLnZhbGlkYXRvcnNBcnJheSA9IFtdO1xyXG4gICAgaWYgKHRoaXMuZmllbGQuTWluVmFsdWUgIT0gbnVsbCAmJiB0aGlzLmZpZWxkLk1pblZhbHVlICE9IHVuZGVmaW5lZClcclxuICAgICAgdGhpcy52YWxpZGF0b3JzQXJyYXkucHVzaChWYWxpZGF0b3JzLm1pbih0aGlzLmZpZWxkLk1pblZhbHVlKSk7XHJcbiAgICBpZiAodGhpcy5maWVsZC5NYXhWYWx1ZSAhPSBudWxsICYmIHRoaXMuZmllbGQuTWF4VmFsdWUgIT0gdW5kZWZpbmVkKVxyXG4gICAgICB0aGlzLnZhbGlkYXRvcnNBcnJheS5wdXNoKFZhbGlkYXRvcnMubWF4KHRoaXMuZmllbGQuTWF4VmFsdWUpKTtcclxuICAgIHRoaXMuZmllbGQuRm9ybUZvcm1Hcm91cC5nZXQoW3RoaXMuZmllbGQuTmFtZV0pLnNldFZhbGlkYXRvcnModGhpcy52YWxpZGF0b3JzQXJyYXkpO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlydHkoKXtcclxuICAgIHRoaXMuaXNEaXJ0eSA9IHRydWU7XHJcbiAgfVxyXG59IiwiPG1hdC1mb3JtLWZpZWxkIFtmb3JtR3JvdXBdPVwiZmllbGQuRm9ybUZvcm1Hcm91cFwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICA8bWF0LWxhYmVsICBjbGFzcz1cInB0LTFcIiBbbmdTdHlsZV09XCJMYWJlbHN0eWxlT2JqXCI+IHt7ZmllbGQuRGVzY3JpcHRpb259fSA8L21hdC1sYWJlbD5cclxuICAgIDxpbnB1dCBbbmdTdHlsZV09XCJGaWVsZHN0eWxlT2JqXCIgbWF0SW5wdXQgZXFwTnVtZXJpY01hc2sgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5OYW1lXCIgW3JlYWRvbmx5XT1cImZpZWxkLlJlYWRvbmx5XCJcclxuICAgICAgICBbcmVxdWlyZWRdPVwiZmllbGQuUmVxdWlyZWRcIiBbKG5nTW9kZWwpXT1cInJlY29yZFtmaWVsZC5OYW1lXVwiIFtvcHRpb25zXT1cImVxcE51bWVyaWNPcHRpb25zXCJcclxuICAgICAgICBbc3RlcF09XCJmaWVsZC5Jc0ludGVnZXIgPyAxIDogbnVsbFwiIChibHVyKT1cIm9uUmVjb3JkVmFsdWVDaGFuZ2UoKVwiIChrZXlwcmVzcyk9XCJzZXREaXJ0eSgpXCIgLz5cclxuICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiIWZpZWxkLkZvcm1Gb3JtR3JvdXAudmFsaWQgJiYgZmllbGQuRm9ybUZvcm1Hcm91cC5jb250cm9sc1tmaWVsZC5OYW1lXS50b3VjaGVkICYmICFmaWVsZC5SZWFkb25seVwiPlxyXG4gICAgICAgICAgICBNaW46IHt7ZmllbGQuTWluVmFsdWV9fSAtIE1heDoge3tmaWVsZC5NYXhWYWx1ZX19XHJcbiAgICAgICAgICA8L21hdC1lcnJvcj5cclxuPC9tYXQtZm9ybS1maWVsZD4iXX0=
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL251bWVyaWMtZmllbGQtdGVtcGxhdGUvbnVtZXJpYy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvZmllbGQtdGVtcGxhdGVzL251bWVyaWMtZmllbGQtdGVtcGxhdGUvbnVtZXJpYy1maWVsZC10ZW1wbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLG1CQUFtQixFQUFxQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBSW5GLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7OztBQU94RSxNQUFNLE9BQU8sNkJBQTZCO0lBYzFDO1FBVlksaUJBQVksR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUMxRSxvQkFBZSxHQUFVLEVBQUUsQ0FBQztRQUM1QixzQkFBaUIsR0FBK0IsRUFBRSxDQUFDO1FBTXJELFlBQU8sR0FBWSxLQUFLLENBQUM7SUFHekIsQ0FBQztJQUVDLFFBQVE7UUFDTixJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsb0JB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RyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDdEYsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDOzsySEE1R1UsNkJBQTZCOytHQUE3Qiw2QkFBNkIsNEtDZjFDLDh2QkFRaUI7NEZET0osNkJBQTZCO2tCQUx6QyxTQUFTOytCQUNFLHdCQUF3QjswRUFNekIsS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEVxcE51bWVyaWNJbnB1dE1vZGUsIE51bWVyaWNNYXNrQ29uZmlnIH0gZnJvbSAnQGVxcHJvamVjdC9lcXAtbnVtZXJpYyc7XHJcbmltcG9ydCB7IFV0aWxpdHlIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvdXRpbGl0eUhlbHBlci5zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IFJlY29yZCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9yZWNvcmQubW9kZWwnO1xyXG5pbXBvcnQgeyBOdW1lcmljRmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZmllbGRzL251bWVyaWNGaWVsZC5tb2RlbCc7XHJcbmltcG9ydCB7IElCYXNlRmllbGRDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzL2lCYXNlRmllbGRDb21wb25lbnQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgR2xvYmFsU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2dsb2JhbC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGF0YUdldHRlclR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL2Jhc2VGaWVsZC5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ251bWVyaWMtZmllbGQtdGVtcGxhdGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9udW1lcmljLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9udW1lcmljLWZpZWxkLXRlbXBsYXRlLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIE51bWVyaWNGaWVsZFRlbXBsYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIElCYXNlRmllbGRDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBmaWVsZDogTnVtZXJpY0ZpZWxkO1xyXG4gIEBJbnB1dCgpIHJlY29yZDogUmVjb3JkO1xyXG4gIEBPdXRwdXQoKSByZWNvcmRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxSZWNvcmQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxSZWNvcmQ+KCk7XHJcbiAgdmFsaWRhdG9yc0FycmF5OiBhbnlbXSA9IFtdO1xyXG4gIGVxcE51bWVyaWNPcHRpb25zOiBQYXJ0aWFsPE51bWVyaWNNYXNrQ29uZmlnPiA9IHt9O1xyXG5cclxuLy92YXJpYWJpbGkgcGVyIGdlc3RpcmUgaWwgY3NzIGRlbGxhIGxhYmVsIGUgZGVsIGZpZWxkXHJcbkZpZWxkc3R5bGVPYmo6IGFueTtcclxuTGFiZWxzdHlsZU9iajogYW55O1xyXG5cclxuaXNEaXJ0eTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuY29uc3RydWN0b3IoKSB7XHJcbn1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbmZpZ3VyZUVxcE51bWVyaWNPcHRpb25zKCk7XHJcbiAgICB0aGlzLmNvbmZpZ3VyZUNvbnRyb2xsZXJzKCk7ICAgXHJcbiAgICB0aGlzLnVwZGF0ZUZpZWxkKCk7XHJcbiAgICB0aGlzLmluaXRTdHlsZXMoKTtcclxuICB9XHJcblxyXG4gIC8vRnVuemlvbmUgcGVyIHBhcnNhcmUgaWwgY2FtcG8gc3R5bGVjc3MgZGVsbCdvZ2dldHRvIGZpZWxkIGVkIGFwcGxpY2FybG8gYWxsJ2h0bWxcclxuICBpbml0U3R5bGVzKCkge1xyXG4gICAgICAgICBpZih0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gbnVsbCB8fCB0aGlzLmZpZWxkLkZpZWxkc3R5bGVDU1MgIT0gdW5kZWZpbmVkKSAgIFxyXG4gICAgICAgICB0aGlzLkZpZWxkc3R5bGVPYmo9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLmluaXRTdHlsZXModGhpcy5maWVsZC5GaWVsZHN0eWxlQ1NTKTtcclxuICAgICAgICAgaWYodGhpcy5maWVsZC5MYWJlbHN0eWxlQ1NTICE9IG51bGwgfHwgdGhpcy5maWVsZC5MYWJlbHN0eWxlQ1NTICE9IHVuZGVmaW5lZCkgICBcclxuICAgICAgICAgdGhpcy5MYWJlbHN0eWxlT2JqID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuaW5pdFN0eWxlcyh0aGlzLmZpZWxkLkxhYmVsc3R5bGVDU1MpO1xyXG4gfVxyXG4gLy8gU2UgdmllbmUgbW9kaWZpY2F0byBpbCB2YWxvcmUgZGkgXCJuZ01vZGVsSW5wdXRcIiBhbGxvcmEgYWdnaW9ybmEgbCdpbnB1dFxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgXHJcbiAgICBpZiAoY2hhbmdlc1sncmVjb3JkJ10gIT0gdW5kZWZpbmVkICYmIGNoYW5nZXNbJ3JlY29yZCddLmZpcnN0Q2hhbmdlID09IGZhbHNlICYmIEpTT04uc3RyaW5naWZ5KGNoYW5nZXNbJ3JlY29yZCddLmN1cnJlbnRWYWx1ZSkgIT0gSlNPTi5zdHJpbmdpZnkoY2hhbmdlc1sncmVjb3JkJ10ucHJldmlvdXNWYWx1ZSkpIHtcclxuICAgICAgdGhpcy5yZWNvcmQgPSBjaGFuZ2VzWydyZWNvcmQnXS5jdXJyZW50VmFsdWU7XHJcbiAgICAgIHRoaXMudXBkYXRlRmllbGQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBwZXIgYWdnaW9ybmFyZSBpbCB2YWxvcmUgZGVsIGNhbXBvIHF1YW5kbyBxdWVzdG8gw6ggcmFwcHJlc2VudGF0byBkYSB1bmEgZm9ybXVsYS5cclxuICAgKi9cclxuICB1cGRhdGVGaWVsZCgpIHtcclxuICAgIFxyXG4gICAgaWYgKCh0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclR5cGUgPT0gRGF0YUdldHRlclR5cGVFbnVtLk1hbnVhbGUgfHwgdGhpcy5maWVsZC5EYXRhR2V0dGVyLkRhdGFHZXR0ZXJUeXBlID09IERhdGFHZXR0ZXJUeXBlRW51bS5Gb3JtdWxhKSAmJiB0aGlzLmZpZWxkLkZvcm11bGEpIHtcclxuICAgICAgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9IFV0aWxpdHlIZWxwZXJTZXJ2aWNlLkV2YWx1YXRlRmllbGRGb3JtdWxhKHRoaXMuZmllbGQuRm9ybXVsYSwgdGhpcy5yZWNvcmQsIG51bGwpO1xyXG4gICAgICAvL2NvbnNvbGUubG9nKFwiZmllbGQgbW9kaWZpZWQgLSBvcmlnaW5hbCB2YWx1ZVwiLHRoaXMuZmllbGQuTmFtZSx0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdKTtcclxuICAgICAgLy90aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID0gdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9PSAwID8gMCA6ICh0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdIC8gTWF0aC5wb3coMTAsdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5wcmVjaXNpb24pKS50b0ZpeGVkKHRoaXMuZXFwTnVtZXJpY09wdGlvbnMucHJlY2lzaW9uKTtcclxuICAgICAgLy9jb25zb2xlLmxvZyhcImZpZWxkIG1vZGlmaWVkIC0gZmluYWwgdmFsdWVcIix0aGlzLmZpZWxkLk5hbWUsdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5maWVsZC5WaXNpYmxlSWYpIHtcclxuICAgICAgdGhpcy5maWVsZC5Jbkxpc3RWaWV3ID0gVXRpbGl0eUhlbHBlclNlcnZpY2UuRXZhbHVhdGVGaWVsZEZvcm11bGEodGhpcy5maWVsZC5WaXNpYmxlSWYsIHRoaXMucmVjb3JkLCBudWxsKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclR5cGUgPT0gRGF0YUdldHRlclR5cGVFbnVtLk1hbnVhbGUgJiYgdGhpcy5yZWNvcmRbdGhpcy5maWVsZC5OYW1lXSA9PSBudWxsKSB7XHJcbiAgICAgIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLmZpZWxkLkRhdGFHZXR0ZXIuRGF0YUdldHRlclZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBlbWV0dGVyZSBsJ2V2ZW50byBjaGUgaWwgdmFsb3JlIGRlbCByZWNvcmQgw6ggY2FtYmlhdG8uXHJcbiAgICovXHJcbiAgb25SZWNvcmRWYWx1ZUNoYW5nZSgpIHtcclxuICAgIGlmICghdGhpcy5maWVsZC5Gb3JtdWxhKSB7XHJcbiAgICAgIGlmICh0aGlzLmlzRGlydHkpe1xyXG4gICAgICAgIC8vIHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gPSB0aGlzLnJlY29yZFt0aGlzLmZpZWxkLk5hbWVdID09IDAgPyAwIDogKHRoaXMucmVjb3JkW3RoaXMuZmllbGQuTmFtZV0gLyBNYXRoLnBvdygxMCx0aGlzLmVxcE51bWVyaWNPcHRpb25zLnByZWNpc2lvbikpLnRvRml4ZWQodGhpcy5lcXBOdW1lcmljT3B0aW9ucy5wcmVjaXNpb24pO1xyXG4gICAgICAgIHRoaXMuaXNEaXJ0eSA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMucmVjb3JkQ2hhbmdlLmVtaXQodGhpcy5yZWNvcmQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIHBlciBjb25maWd1cmFyZSBlcXAtbnVtZXJpY1xyXG4gICAqL1xyXG4gIHByaXZhdGUgY29uZmlndXJlRXFwTnVtZXJpY09wdGlvbnMoKSB7XHJcbiAgICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLnN1ZmZpeCA9IHRoaXMuZmllbGQuTWVhc3VyZVVuaXQgPyBcIiAgXCIrdGhpcy5maWVsZC5NZWFzdXJlVW5pdCtcIiAgXCIgOiBcIlwiO1xyXG4gICAgdGhpcy5lcXBOdW1lcmljT3B0aW9ucy5wcmVmaXggPSB0aGlzLmZpZWxkLkN1cnJlbmN5U3ltYm9sID8gdGhpcy5maWVsZC5DdXJyZW5jeVN5bWJvbCtcIiBcIiA6IFwiXCI7XHJcbiAgICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLmlucHV0TW9kZSA9IHRoaXMuZmllbGQuQ3VycmVuY3lTeW1ib2wgPyBFcXBOdW1lcmljSW5wdXRNb2RlLkZJTkFOQ0lBTCA6IEVxcE51bWVyaWNJbnB1dE1vZGUuTkFUVVJBTDtcclxuICAgIHRoaXMuZXFwTnVtZXJpY09wdGlvbnMuYWxsb3dOZWdhdGl2ZT10cnVlO1xyXG4gICAgaWYgKHRoaXMuZmllbGQuRGVjaW1hbFNlcGFyYXRvciAhPSBudWxsICYmIHRoaXMuZmllbGQuRGVjaW1hbFNlcGFyYXRvciAhPSB1bmRlZmluZWQpXHJcbiAgICAgIHRoaXMuZXFwTnVtZXJpY09wdGlvbnMuZGVjaW1hbCA9IHRoaXMuZmllbGQuRGVjaW1hbFNlcGFyYXRvcjtcclxuICAgICAgZWxzZVxyXG4gICAgICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLmRlY2ltYWw9XCIuXCI7XHJcbiAgICBpZiAodGhpcy5maWVsZC5UaG91c2FuZHNTZXBhcmF0b3IgIT0gbnVsbCAmJiB0aGlzLmZpZWxkLlRob3VzYW5kc1NlcGFyYXRvciAhPSB1bmRlZmluZWQgJiYgdGhpcy5maWVsZC5UaG91c2FuZHNTZXBhcmF0b3IudHJpbSgpLmxlbmd0aCA+IDApXHJcbiAgICAgIHRoaXMuZXFwTnVtZXJpY09wdGlvbnMudGhvdXNhbmRzID0gdGhpcy5maWVsZC5UaG91c2FuZHNTZXBhcmF0b3I7XHJcbiAgICAgIGlmKHRoaXMuZmllbGQuSXNJbnRlZ2VyPT0gZmFsc2Upe1xyXG4gICAgICAgIGlmICh0aGlzLmZpZWxkLkRlY2ltYWxQcmVjaXNpb24gIT0gbnVsbCAmJiB0aGlzLmZpZWxkLkRlY2ltYWxQcmVjaXNpb24gIT0gdW5kZWZpbmVkKSB7IHRoaXMuZXFwTnVtZXJpY09wdGlvbnMucHJlY2lzaW9uID0gdGhpcy5maWVsZC5EZWNpbWFsUHJlY2lzaW9uOyB9XHJcbiAgICAgICAgZWxzZSB7IHRoaXMuZXFwTnVtZXJpY09wdGlvbnMucHJlY2lzaW9uID0gMjsgfVxyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICB0aGlzLmVxcE51bWVyaWNPcHRpb25zLnByZWNpc2lvbiA9IDA7XHJcbiAgICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gKiBNZXRvZG8gZGkgYWdnaXVudGEgZGVpIHZhbGlkYXRvciBkZWxsJ2lucHV0XHJcbiAqL1xyXG4gIHByaXZhdGUgY29uZmlndXJlQ29udHJvbGxlcnMoKSB7XHJcbiAgICB0aGlzLnZhbGlkYXRvcnNBcnJheSA9IFtdO1xyXG4gICAgaWYgKHRoaXMuZmllbGQuTWluVmFsdWUgIT0gbnVsbCAmJiB0aGlzLmZpZWxkLk1pblZhbHVlICE9IHVuZGVmaW5lZClcclxuICAgICAgdGhpcy52YWxpZGF0b3JzQXJyYXkucHVzaChWYWxpZGF0b3JzLm1pbih0aGlzLmZpZWxkLk1pblZhbHVlKSk7XHJcbiAgICBpZiAodGhpcy5maWVsZC5NYXhWYWx1ZSAhPSBudWxsICYmIHRoaXMuZmllbGQuTWF4VmFsdWUgIT0gdW5kZWZpbmVkKVxyXG4gICAgICB0aGlzLnZhbGlkYXRvcnNBcnJheS5wdXNoKFZhbGlkYXRvcnMubWF4KHRoaXMuZmllbGQuTWF4VmFsdWUpKTtcclxuICAgIHRoaXMuZmllbGQuRm9ybUZvcm1Hcm91cC5nZXQoW3RoaXMuZmllbGQuTmFtZV0pLnNldFZhbGlkYXRvcnModGhpcy52YWxpZGF0b3JzQXJyYXkpO1xyXG4gIH1cclxuXHJcbiAgc2V0RGlydHkoKXtcclxuICAgIHRoaXMuaXNEaXJ0eSA9IHRydWU7XHJcbiAgfVxyXG59IiwiPG1hdC1mb3JtLWZpZWxkIFtmb3JtR3JvdXBdPVwiZmllbGQuRm9ybUZvcm1Hcm91cFwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICA8bWF0LWxhYmVsICBjbGFzcz1cInB0LTFcIiBbbmdTdHlsZV09XCJMYWJlbHN0eWxlT2JqXCI+IHt7ZmllbGQuRGVzY3JpcHRpb259fSA8L21hdC1sYWJlbD5cclxuICAgIDxpbnB1dCBbbmdTdHlsZV09XCJGaWVsZHN0eWxlT2JqXCIgbWF0SW5wdXQgZXFwTnVtZXJpY01hc2sgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5OYW1lXCIgW3JlYWRvbmx5XT1cImZpZWxkLlJlYWRvbmx5XCJcclxuICAgICAgICBbcmVxdWlyZWRdPVwiZmllbGQuUmVxdWlyZWRcIiBbKG5nTW9kZWwpXT1cInJlY29yZFtmaWVsZC5OYW1lXVwiIFtvcHRpb25zXT1cImVxcE51bWVyaWNPcHRpb25zXCJcclxuICAgICAgICBbc3RlcF09XCJmaWVsZC5Jc0ludGVnZXIgPyAxIDogbnVsbFwiIChibHVyKT1cIm9uUmVjb3JkVmFsdWVDaGFuZ2UoKVwiIChrZXlwcmVzcyk9XCJzZXREaXJ0eSgpXCIgLz5cclxuICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiIWZpZWxkLkZvcm1Gb3JtR3JvdXAudmFsaWQgJiYgZmllbGQuRm9ybUZvcm1Hcm91cC5jb250cm9sc1tmaWVsZC5OYW1lXS50b3VjaGVkICYmICFmaWVsZC5SZWFkb25seVwiPlxyXG4gICAgICAgICAgICBNaW46IHt7ZmllbGQuTWluVmFsdWV9fSAtIE1heDoge3tmaWVsZC5NYXhWYWx1ZX19XHJcbiAgICAgICAgICA8L21hdC1lcnJvcj5cclxuPC9tYXQtZm9ybS1maWVsZD4iXX0=
|