nuxeo-development-framework 1.9.9 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -98,6 +98,10 @@ export class DynamicFormSelectItemComponent {
98
98
  this.data = [...changes.data.currentValue];
99
99
  this.buffer = this.data;
100
100
  }
101
+ if (changes.loading &&
102
+ changes.loading.currentValue !== changes.loading.previousValue) {
103
+ this.loading = changes.loading.currentValue;
104
+ }
101
105
  }
102
106
  ngOnInit() {
103
107
  this.buffer = this.data;
@@ -184,4 +188,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImpor
184
188
  }], onSelectItems: [{
185
189
  type: Output
186
190
  }] } });
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXNlbGVjdGl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vY29tcG9uZW50cy9keW5hbWljLWZvcm0tc2VsZWN0aXRlbS9keW5hbWljLWZvcm0tc2VsZWN0aXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1zZWxlY3RpdGVtL2R5bmFtaWMtZm9ybS1zZWxlY3RpdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksRUFDSixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7O0FBR3pEOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBT0gsTUFBTSxPQUFPLDhCQUE4QjtJQTBEekMsWUFDUyxTQUEyQixFQUNQLE9BQWtCO1FBRHRDLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQ1AsWUFBTyxHQUFQLE9BQU8sQ0FBVztRQS9DL0MsMEJBQTBCO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDMUIsb0JBQW9CO1FBQ1gsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUM1Qiw2QkFBNkI7UUFDcEIsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFDOUIsaUNBQWlDO1FBQ3hCLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUNuQyxrQkFBa0I7UUFDVCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQzFCLCtCQUErQjtRQUN0QixVQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLDJCQUEyQjtRQUNsQixRQUFHLEdBQUcsS0FBSyxDQUFDO1FBR3JCLG9DQUFvQztRQUMzQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLHdDQUF3QztRQUM5QixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDN0MsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUVmLFdBQU0sR0FBRyxFQUFFLENBQUM7UUFDWixlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLDJDQUFzQyxHQUFHLEVBQUUsQ0FBQztRQUU1QyxvQkFBZSxHQUFRLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNqQyxlQUFVLEdBQVEsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRXJCLGNBQVMsR0FBUSxHQUFHLEVBQUU7WUFDM0IsU0FBUztRQUNYLENBQUMsQ0FBQztRQTJERixhQUFRLEdBQUksQ0FBQyxJQUFZLEVBQUUsSUFBUyxFQUFFLEVBQUU7WUFDdEMsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNoRixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0QyxJQUFHLEtBQUssRUFBQztnQkFDUCxPQUFPLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDM0M7aUJBQUk7Z0JBQ0gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNsQztRQUVMLENBQUMsQ0FBQTtRQW5EQyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1NBQ25DO0lBQ0gsQ0FBQztJQXBCRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3JELENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUV4QyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNqRCxDQUFDO0lBVUQsYUFBYSxDQUFDLEtBQUs7UUFDakIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELGFBQWE7UUFDWixvQkFBb0I7SUFDckIsQ0FBQztJQUVPLFNBQVM7UUFDZixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUMvQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBTztRQUNqQixJQUNFLE9BQU8sQ0FBQyxJQUFJO1lBQ1osT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZO1lBQ3pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUMxQjtZQUNBLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDM0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFFTixJQUFJLENBQUMsTUFBTSxHQUFFLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFhRCxVQUFVLENBQUMsS0FBSztRQUNkLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7U0FDeEI7YUFBSSxFQUFHLGdEQUFnRDtZQUN0RCxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztTQUNyQjtJQUNILENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxFQUFFO1FBQ2pCLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxRQUFRLENBQUMsQ0FBYztRQUNyQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUNELFVBQVU7UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRTtZQUNwRCxPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQXFCLENBQUMsQ0FBQztRQUN4RSxPQUFPLFNBQVMsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQ3pDLENBQUM7SUFDRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDNUMsQ0FBQzs7MkhBakpVLDhCQUE4QjsrR0FBOUIsOEJBQThCLHVlQUU5QixpQkFBaUIscUVDM0M5QixtN0ZBNEZBOzJGRG5EYSw4QkFBOEI7a0JBTjFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsV0FBVyxFQUFFLDBDQUEwQztvQkFDdkQsU0FBUyxFQUFFLENBQUMsMENBQTBDLENBQUM7b0JBQ3ZELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN0Qzs7MEJBNkRJLElBQUk7OzBCQUFJLFFBQVE7NENBMURXLGlCQUFpQjtzQkFBOUMsU0FBUzt1QkFBQyxpQkFBaUI7Z0JBRW5CLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUVHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUVHLEdBQUc7c0JBQVgsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsT0FBTztzQkFBZixLQUFLO2dCQUVJLGFBQWE7c0JBQXRCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9wdGlvbmFsLFxyXG4gIE91dHB1dCxcclxuICBTZWxmLFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBBYnN0cmFjdENvbnRyb2wsXHJcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXHJcbiAgRm9ybUNvbnRyb2wsXHJcbiAgTmdDb250cm9sLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdTZWxlY3RDb21wb25lbnQgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG4vKipcclxuICogQSAgZHJvcGRvd24gaW5wdXQgdGhhdCBjYW4gYmUgdXNlZCBpbnNpZGUgcmVhY3RpdmUgb3IgdGVtcGxhdGUgZHJpdmVuIGZvcm1zXHJcbiAqIEB0aXRsZVxyXG4gKiBEcm9wZG93blxyXG4gKiBAZXhhbXBsZVxyXG4gKiA8YXBwLWR5bmFtaWMtZm9ybS1zZWxlY3RpdGVtXHJcbiAqICAgICBbZGF0YV09XCJhcnJheU9mSXRlbXNcIlxyXG4gKiAgICAgW2JpbmRMYWJlbF09XCInYmluZExhYmVsUHJvcGVydHlOYW1lJ1wiXHJcbiAqICAgICBbbGFiZWxdPVwiJ1BBVEguVE8uTEFCRUwuVFJBTlNMQVRJT04nXCJcclxuICogICAgIHBsYWNlaG9sZGVyPVwiUEFUSC5UTy5QTEFDRUhPTERFUi5UUkFOU0xBVElPTlwiXHJcbiAqICAgICBbY2xvc2VPblNlbGVjdF09XCJ0cnVlXCJcclxuICogICAgIGZvcm1Db250cm9sTmFtZT1cImNvbnRyb2xOYW1lXCJcclxuICogICA+XHJcbiAqIDwvYXBwLWR5bmFtaWMtZm9ybS1zZWxlY3RpdGVtPlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtZHluYW1pYy1mb3JtLXNlbGVjdGl0ZW0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9keW5hbWljLWZvcm0tc2VsZWN0aXRlbS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZHluYW1pYy1mb3JtLXNlbGVjdGl0ZW0uY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1TZWxlY3RJdGVtQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBPbkNoYW5nZXMsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBAVmlld0NoaWxkKE5nU2VsZWN0Q29tcG9uZW50KSBuZ1NlbGVjdENvbXBvbmVudDogTmdTZWxlY3RDb21wb25lbnQ7XHJcbiAgLyoqIEZpZWxkIExhYmVsICovXHJcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcclxuICAvKiogUHJvcGVydHkgbmFtZSB0byBiaW5kIHZhbHVlIHRvICovXHJcbiAgQElucHV0KCkgYmluZFZhbHVlO1xyXG4gIC8qKiBQcm9wZXJ0eSBuYW1lIHRvIGJpbmQgbGFiZWwgdG8gKi9cclxuICBASW5wdXQoKSBiaW5kTGFiZWw7XHJcbiAgLyoqIEl0ZW1zIGFycmF5ICovXHJcbiAgQElucHV0KCkgZGF0YTtcclxuICAvKiogUGxhY2Vob2xkZXIgc3RyaW5nICovXHJcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI7XHJcbiAgLyoqIGNhbiBzZWxlY3QgbXVsdGlwbGUgKi9cclxuICBASW5wdXQoKSBtdWx0aXBsZSA9IGZhbHNlO1xyXG4gIC8qKiBpcyBzZWFyY2hhYmxlICovXHJcbiAgQElucHV0KCkgc2VhcmNoYWJsZSA9IGZhbHNlO1xyXG4gIC8qKiBzaG91bGQgY2xvc2Ugb24gc2VsZWN0ICovXHJcbiAgQElucHV0KCkgY2xvc2VPblNlbGVjdCA9IHRydWU7XHJcbiAgLyoqIHNob3VsZCBoaWRlIHNlbGVjdGVkIGl0ZW1zICovXHJcbiAgQElucHV0KCkgaGlkZVNlbGVjdGVkSXRlbXMgPSBmYWxzZTtcclxuICAvKiogaXMgZGlzYWJsZWQgKi9cclxuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xyXG4gIC8qKiBzaG91bGQgc2hvdyBjbGVhciBhY3Rpb24gKi9cclxuICBASW5wdXQoKSBjbGVhciA9IHRydWU7XHJcbiAgLyoqIGlzIHZvY2FidWxhcnkgc2VsZWN0ICovXHJcbiAgQElucHV0KCkgdm9jID0gZmFsc2U7XHJcbiAgLyoqIHZvY2FidWxhcnkgaWQgZm9yIHRyYW5zbGF0aW9uIChmb3Igdm9jYWJ1bGFyeSBzZWxlY3Qgb25seSkgKi9cclxuICBASW5wdXQoKSB2b2NJZDogc3RyaW5nO1xyXG4gIC8qKiBTaG91bGQgc2hvdyBsb2FkaW5nIGluZGljYXRvciAqL1xyXG4gIEBJbnB1dCgpIGxvYWRpbmcgPSBmYWxzZTtcclxuICAvKiogZXZlbnQgZW1pdHRlZCB3aXRoIHNlbGVjdGVkIGl0ZW1zICovXHJcbiAgQE91dHB1dCgpIG9uU2VsZWN0SXRlbXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgc2VsZWN0aW9uID0gW107XHJcblxyXG4gIGJ1ZmZlciA9IFtdO1xyXG4gIGJ1ZmZlclNpemUgPSA1MDtcclxuICBudW1iZXJPZkl0ZW1zRnJvbUVuZEJlZm9yZUZldGNoaW5nTW9yZSA9IDEwO1xyXG5cclxuICBwcm9wYWdhdGVDaGFuZ2U6IGFueSA9ICgpID0+IHsgfTtcclxuICB2YWxpZGF0ZUZuOiBhbnkgPSAoKSA9PiB7IH07XHJcblxyXG4gIHB1YmxpYyBvblRvdWNoZWQ6IGFueSA9ICgpID0+IHtcclxuICAgIC8qRW1wdHkqL1xyXG4gIH07XHJcbiAgcHVibGljIGdldCBpbnZhbGlkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29udHJvbCA/IHRoaXMuY29udHJvbC5pbnZhbGlkIDogZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHNob3dFcnJvcigpOiBib29sZWFuIHtcclxuICAgIGlmICghdGhpcy5jb250cm9sKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCB7IGRpcnR5LCB0b3VjaGVkIH0gPSB0aGlzLmNvbnRyb2w7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaW52YWxpZCA/IGRpcnR5IHx8IHRvdWNoZWQgOiBmYWxzZTtcclxuICB9XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwdWJsaWMgY29udHJvbDogTmdDb250cm9sXHJcbiAgKSB7XHJcbiAgICBpZiAodGhpcy5jb250cm9sKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGVtaXRTZWxlY3Rpb24oZXZlbnQpIHtcclxuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMuc2VsZWN0aW9uKTtcclxuICAgIHRoaXMub25TZWxlY3RJdGVtcy5lbWl0KGV2ZW50KTtcclxuICB9XHJcblxyXG4gIG9uU2Nyb2xsVG9FbmQoKSB7XHJcbiAgIC8vIHRoaXMuZmV0Y2hNb3JlKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZldGNoTW9yZSgpIHtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICBjb25zdCBsZW4gPSB0aGlzLmJ1ZmZlci5sZW5ndGg7XHJcbiAgICBjb25zdCBtb3JlID0gdGhpcy5kYXRhLnNsaWNlKGxlbiwgdGhpcy5idWZmZXJTaXplICsgbGVuKTtcclxuICAgIHRoaXMuYnVmZmVyID0gdGhpcy5kYXRhLmNvbmNhdChtb3JlKTtcclxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKFxyXG4gICAgICBjaGFuZ2VzLmRhdGEgJiZcclxuICAgICAgY2hhbmdlcy5kYXRhLmN1cnJlbnRWYWx1ZSAmJlxyXG4gICAgICBjaGFuZ2VzLmRhdGEucHJldmlvdXNWYWx1ZVxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuZGF0YSA9IFsuLi5jaGFuZ2VzLmRhdGEuY3VycmVudFZhbHVlXTtcclxuICAgICAgdGhpcy5idWZmZXIgPSB0aGlzLmRhdGE7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuXHJcbiAgICB0aGlzLmJ1ZmZlciA9dGhpcy5kYXRhO1xyXG4gICAgdGhpcy5idWZmZXIubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgIGl0ZW0uaXNTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvblNlYXJjaCA9ICAodGVybTogc3RyaW5nLCBpdGVtOiBhbnkpID0+IHtcclxuICAgIGxldCBrZXkgPSAnJztcclxuICAgIHRoaXMudm9jID8ga2V5ID0gIFwidm9jYWJ1bGFyeS5cIiArIHRoaXMudm9jSWQgKyBcIi5cIiArIGl0ZW0uaWQgOiBrZXkgPSBpdGVtLmxhYmVsO1xyXG4gICAgbGV0IHZhbHVlID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudChrZXkpO1xyXG4gICAgICBpZih2YWx1ZSl7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGVybSk7XHJcbiAgICAgIH1lbHNle1xyXG4gICAgICAgIHJldHVybiBpdGVtLmxhYmVsLmluY2x1ZGVzKHRlcm0pO1xyXG4gICAgICB9XHJcblxyXG4gIH1cclxuICB3cml0ZVZhbHVlKHZhbHVlKSB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5zZWxlY3Rpb24gPSB2YWx1ZTtcclxuICAgIH1lbHNleyAgLy9hZGRlZCB0byBhbGxvdyByZXNldGluZyB1aSB3aGVuIHJlc2V0dGluZyBmb3JtXHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uID0gW107XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm4pIHtcclxuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KSB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgdmFsaWRhdGUoYzogRm9ybUNvbnRyb2wpIHtcclxuICAgIHJldHVybiB0aGlzLnZhbGlkYXRlRm4oYyk7XHJcbiAgfVxyXG4gIGlzUmVxdWlyZWQoKSB7XHJcbiAgICBpZiAoIXRoaXMuY29udHJvbCB8fCAhdGhpcy5jb250cm9sLmNvbnRyb2wudmFsaWRhdG9yKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCB2YWxpZGF0b3IgPSB0aGlzLmNvbnRyb2wuY29udHJvbC52YWxpZGF0b3Ioe30gYXMgQWJzdHJhY3RDb250cm9sKTtcclxuICAgIHJldHVybiB2YWxpZGF0b3IgJiYgdmFsaWRhdG9yLnJlcXVpcmVkO1xyXG4gIH1cclxuICBoYXNFcnJvcnMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5zaG93RXJyb3I7XHJcbiAgfVxyXG4gIHJlc2V0KCkge1xyXG4gICAgdGhpcy5uZ1NlbGVjdENvbXBvbmVudC5oYW5kbGVDbGVhckNsaWNrKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPlxyXG4gIDxkaXY+XHJcbiAgICA8bGFiZWwgY2xhc3M9XCJzZWxlY3QtbGFiZWxcIlxyXG4gICAgICA+e3sgbGFiZWwgfCB0cmFuc2xhdGVcclxuICAgICAgfX08c3BhbiAqbmdJZj1cImlzUmVxdWlyZWQoKVwiIGNsYXNzPVwidGV4dC1kYW5nZXIgbS0xXCI+Kjwvc3Bhbj48L2xhYmVsXHJcbiAgICA+XHJcbiAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG48bmctc2VsZWN0XHJcbiAgW2l0ZW1zXT1cImJ1ZmZlclwiXHJcbiAgW2JpbmRMYWJlbF09XCJiaW5kTGFiZWxcIlxyXG4gIFtiaW5kVmFsdWVdPVwiYmluZFZhbHVlXCJcclxuICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXHJcbiAgW2NsZWFyYWJsZV09XCJjbGVhclwiXHJcbiAgW3NlYXJjaGFibGVdPVwic2VhcmNoYWJsZVwiXHJcbiAgW2Nsb3NlT25TZWxlY3RdPVwiY2xvc2VPblNlbGVjdFwiXHJcbiAgW2hpZGVTZWxlY3RlZF09XCJoaWRlU2VsZWN0ZWRJdGVtc1wiXHJcbiAgW3NlYXJjaEZuXT1cIm9uU2VhcmNoXCJcclxuICBbbG9hZGluZ109XCJsb2FkaW5nXCJcclxuICAoc2Nyb2xsVG9FbmQpPVwib25TY3JvbGxUb0VuZCgpXCJcclxuICAoY2hhbmdlKT1cImVtaXRTZWxlY3Rpb24oJGV2ZW50KVwiXHJcbiAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICBbKG5nTW9kZWwpXT1cInNlbGVjdGlvblwiXHJcbj5cclxuICA8IS0tIHRlbXBsYXRlIGZvciB2aWV3aW5nIG9wdGlvbnMgaW4gc2luZ2xlIGFuZCBtdWx0aSBzZWxlY3QgLS0+XHJcbiAgPG5nLXRlbXBsYXRlXHJcbiAgICBuZy1vcHRpb24tdG1wXHJcbiAgICBsZXQtaXRlbT1cIml0ZW1cIlxyXG4gICAgbGV0LWl0ZW0kPVwiaXRlbSRcIlxyXG4gICAgbGV0LWluZGV4PVwiaW5kZXhcIlxyXG4gID5cclxuICAgIDxkaXYgY2xhc3M9XCJvcHRpb24td3JhcHBlclwiPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImNoZWNrLWJveC13cmFwcGVyXCIgKm5nSWY9XCJtdWx0aXBsZVwiPlxyXG4gICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgaWQ9XCJpdGVtLXt7IGluZGV4IH19XCJcclxuICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICBbbmdNb2RlbF09XCJpdGVtJC5zZWxlY3RlZFwiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImljb24td3JhcHBlclwiPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJiaSBiaS1jaGVjazIgaWNvblwiPjwvc3Bhbj5cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgICAgPHNwYW4gKm5nSWY9XCIhdm9jXCIgY2xhc3M9XCJsYWJlbC13cmFwcGVyXCI+XHJcbiAgICAgICAge3sgaXRlbVtiaW5kTGFiZWxdIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgICAgPHNwYW4gKm5nSWY9XCJ2b2NcIiBjbGFzcz1cImxhYmVsLXdyYXBwZXJcIj5cclxuICAgICAgICB7eyBcInZvY2FidWxhcnkuXCIgKyB2b2NJZCArIFwiLlwiICsgaXRlbVtiaW5kVmFsdWVdIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDwhLS0gdGVtcGxhdGUgZm9yIHZpZXdpbmcgc2luZ2xlIHNlbGVjdCBzZWxlY3RlZCB2YWx1ZSAtLT5cclxuICA8bmctdGVtcGxhdGUgbmctbGFiZWwtdG1wIGxldC1pdGVtPVwiaXRlbVwiPlxyXG4gICAgPHNwYW4gKm5nSWY9XCIhdm9jXCI+XHJcbiAgICAgIHt7IChiaW5kTGFiZWwgPyBpdGVtW2JpbmRMYWJlbF0gOiBpdGVtKSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9zcGFuPlxyXG4gICAgPHNwYW4gKm5nSWY9XCJ2b2NcIj5cclxuICAgICAge3sgXCJ2b2NhYnVsYXJ5LlwiICsgdm9jSWQgKyBcIi5cIiArIGl0ZW1bYmluZFZhbHVlXSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9zcGFuPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDwhLS0gdGVtcGxhdGUgZm9yIHZpZXdpbmcgbXVsdGkgc2VsZWN0IHNlbGVjdGVkIHZhbHVlcyAtLT5cclxuICA8bmctdGVtcGxhdGUgbmctbXVsdGktbGFiZWwtdG1wIGxldC1pdGVtcz1cIml0ZW1zXCIgbGV0LWNsZWFyPVwiY2xlYXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJuZy12YWx1ZVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zID8gaXRlbXMgOiBbXVwiPlxyXG4gICAgICA8c3BhbiAgKm5nSWY9XCIhdm9jXCIgY2xhc3M9XCJuZy12YWx1ZS1sYWJlbFwiPlxyXG4gICAgICAgIHt7IChiaW5kTGFiZWwgPyBpdGVtW2JpbmRMYWJlbF0gOiBpdGVtKSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwidm9jXCI+XHJcbiAgICAgICAge3sgXCJ2b2NhYnVsYXJ5LlwiICsgdm9jSWQgKyBcIi5cIiArIGl0ZW1bYmluZFZhbHVlXSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDxzcGFuXHJcbiAgICAgICAgKm5nSWY9XCJjbGVhclwiXHJcbiAgICAgICAgY2xhc3M9XCJuZy12YWx1ZS1pY29uIHJpZ2h0XCJcclxuICAgICAgICAoY2xpY2spPVwiY2xlYXIoaXRlbSlcIlxyXG4gICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXHJcbiAgICAgICAgPsOXPC9zcGFuXHJcbiAgICAgID5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvbmctc2VsZWN0PlxyXG48bWF0LWVycm9yXHJcbiAgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidjYXJkLXRleHRpdGVtLWVycm9yLSdcIlxyXG4gIGNsYXNzPVwiYXBwLXRleHRpdGVtLWVkaXRhYmxlLWVycm9yXCJcclxuICAqbmdJZj1cImhhc0Vycm9ycygpXCJcclxuPlxyXG4gIDx1bD5cclxuICAgIDxsaSAqbmdJZj1cImNvbnRyb2wuZXJyb3JzLnJlcXVpcmVkXCI+XHJcbiAgICAgIHt7IFwiVkFMSURBVE9SUy5SRVFVSVJFRFwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICA8L2xpPlxyXG4gIDwvdWw+XHJcbjwvbWF0LWVycm9yPlxyXG4iXX0=
191
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXNlbGVjdGl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vY29tcG9uZW50cy9keW5hbWljLWZvcm0tc2VsZWN0aXRlbS9keW5hbWljLWZvcm0tc2VsZWN0aXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1zZWxlY3RpdGVtL2R5bmFtaWMtZm9ybS1zZWxlY3RpdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLElBQUksRUFDSixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7O0FBR3pEOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBT0gsTUFBTSxPQUFPLDhCQUE4QjtJQTBEekMsWUFDUyxTQUEyQixFQUNQLE9BQWtCO1FBRHRDLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQ1AsWUFBTyxHQUFQLE9BQU8sQ0FBVztRQS9DL0MsMEJBQTBCO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDMUIsb0JBQW9CO1FBQ1gsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUM1Qiw2QkFBNkI7UUFDcEIsa0JBQWEsR0FBRyxJQUFJLENBQUM7UUFDOUIsaUNBQWlDO1FBQ3hCLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUNu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Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsR0FBRztzQkFBWCxLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRUksYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT3B0aW9uYWwsXHJcbiAgT3V0cHV0LFxyXG4gIFNlbGYsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEFic3RyYWN0Q29udHJvbCxcclxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcclxuICBGb3JtQ29udHJvbCxcclxuICBOZ0NvbnRyb2wsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBOZ1NlbGVjdENvbXBvbmVudCB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbi8qKlxyXG4gKiBBICBkcm9wZG93biBpbnB1dCB0aGF0IGNhbiBiZSB1c2VkIGluc2lkZSByZWFjdGl2ZSBvciB0ZW1wbGF0ZSBkcml2ZW4gZm9ybXNcclxuICogQHRpdGxlXHJcbiAqIERyb3Bkb3duXHJcbiAqIEBleGFtcGxlXHJcbiAqIDxhcHAtZHluYW1pYy1mb3JtLXNlbGVjdGl0ZW1cclxuICogICAgIFtkYXRhXT1cImFycmF5T2ZJdGVtc1wiXHJcbiAqICAgICBbYmluZExhYmVsXT1cIidiaW5kTGFiZWxQcm9wZXJ0eU5hbWUnXCJcclxuICogICAgIFtsYWJlbF09XCInUEFUSC5UTy5MQUJFTC5UUkFOU0xBVElPTidcIlxyXG4gKiAgICAgcGxhY2Vob2xkZXI9XCJQQVRILlRPLlBMQUNFSE9MREVSLlRSQU5TTEFUSU9OXCJcclxuICogICAgIFtjbG9zZU9uU2VsZWN0XT1cInRydWVcIlxyXG4gKiAgICAgZm9ybUNvbnRyb2xOYW1lPVwiY29udHJvbE5hbWVcIlxyXG4gKiAgID5cclxuICogPC9hcHAtZHluYW1pYy1mb3JtLXNlbGVjdGl0ZW0+XHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1keW5hbWljLWZvcm0tc2VsZWN0aXRlbScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS1zZWxlY3RpdGVtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9keW5hbWljLWZvcm0tc2VsZWN0aXRlbS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljRm9ybVNlbGVjdEl0ZW1Db21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG4gIEBWaWV3Q2hpbGQoTmdTZWxlY3RDb21wb25lbnQpIG5nU2VsZWN0Q29tcG9uZW50OiBOZ1NlbGVjdENvbXBvbmVudDtcclxuICAvKiogRmllbGQgTGFiZWwgKi9cclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xyXG4gIC8qKiBQcm9wZXJ0eSBuYW1lIHRvIGJpbmQgdmFsdWUgdG8gKi9cclxuICBASW5wdXQoKSBiaW5kVmFsdWU7XHJcbiAgLyoqIFByb3BlcnR5IG5hbWUgdG8gYmluZCBsYWJlbCB0byAqL1xyXG4gIEBJbnB1dCgpIGJpbmRMYWJlbDtcclxuICAvKiogSXRlbXMgYXJyYXkgKi9cclxuICBASW5wdXQoKSBkYXRhO1xyXG4gIC8qKiBQbGFjZWhvbGRlciBzdHJpbmcgKi9cclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjtcclxuICAvKiogY2FuIHNlbGVjdCBtdWx0aXBsZSAqL1xyXG4gIEBJbnB1dCgpIG11bHRpcGxlID0gZmFsc2U7XHJcbiAgLyoqIGlzIHNlYXJjaGFibGUgKi9cclxuICBASW5wdXQoKSBzZWFyY2hhYmxlID0gZmFsc2U7XHJcbiAgLyoqIHNob3VsZCBjbG9zZSBvbiBzZWxlY3QgKi9cclxuICBASW5wdXQoKSBjbG9zZU9uU2VsZWN0ID0gdHJ1ZTtcclxuICAvKiogc2hvdWxkIGhpZGUgc2VsZWN0ZWQgaXRlbXMgKi9cclxuICBASW5wdXQoKSBoaWRlU2VsZWN0ZWRJdGVtcyA9IGZhbHNlO1xyXG4gIC8qKiBpcyBkaXNhYmxlZCAqL1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgLyoqIHNob3VsZCBzaG93IGNsZWFyIGFjdGlvbiAqL1xyXG4gIEBJbnB1dCgpIGNsZWFyID0gdHJ1ZTtcclxuICAvKiogaXMgdm9jYWJ1bGFyeSBzZWxlY3QgKi9cclxuICBASW5wdXQoKSB2b2MgPSBmYWxzZTtcclxuICAvKiogdm9jYWJ1bGFyeSBpZCBmb3IgdHJhbnNsYXRpb24gKGZvciB2b2NhYnVsYXJ5IHNlbGVjdCBvbmx5KSAqL1xyXG4gIEBJbnB1dCgpIHZvY0lkOiBzdHJpbmc7XHJcbiAgLyoqIFNob3VsZCBzaG93IGxvYWRpbmcgaW5kaWNhdG9yICovXHJcbiAgQElucHV0KCkgbG9hZGluZyA9IGZhbHNlO1xyXG4gIC8qKiBldmVudCBlbWl0dGVkIHdpdGggc2VsZWN0ZWQgaXRlbXMgKi9cclxuICBAT3V0cHV0KCkgb25TZWxlY3RJdGVtcyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBzZWxlY3Rpb24gPSBbXTtcclxuXHJcbiAgYnVmZmVyID0gW107XHJcbiAgYnVmZmVyU2l6ZSA9IDUwO1xyXG4gIG51bWJlck9mSXRlbXNGcm9tRW5kQmVmb3JlRmV0Y2hpbmdNb3JlID0gMTA7XHJcblxyXG4gIHByb3BhZ2F0ZUNoYW5nZTogYW55ID0gKCkgPT4geyB9O1xyXG4gIHZhbGlkYXRlRm46IGFueSA9ICgpID0+IHsgfTtcclxuXHJcbiAgcHVibGljIG9uVG91Y2hlZDogYW55ID0gKCkgPT4ge1xyXG4gICAgLypFbXB0eSovXHJcbiAgfTtcclxuICBwdWJsaWMgZ2V0IGludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250cm9sID8gdGhpcy5jb250cm9sLmludmFsaWQgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgc2hvd0Vycm9yKCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHsgZGlydHksIHRvdWNoZWQgfSA9IHRoaXMuY29udHJvbDtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5pbnZhbGlkID8gZGlydHkgfHwgdG91Y2hlZCA6IGZhbHNlO1xyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBAU2VsZigpIEBPcHRpb25hbCgpIHB1YmxpYyBjb250cm9sOiBOZ0NvbnRyb2xcclxuICApIHtcclxuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgdGhpcy5jb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZW1pdFNlbGVjdGlvbihldmVudCkge1xyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3Rpb24pO1xyXG4gICAgdGhpcy5vblNlbGVjdEl0ZW1zLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgb25TY3JvbGxUb0VuZCgpIHtcclxuICAgLy8gdGhpcy5mZXRjaE1vcmUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmV0Y2hNb3JlKCkge1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgIGNvbnN0IGxlbiA9IHRoaXMuYnVmZmVyLmxlbmd0aDtcclxuICAgIGNvbnN0IG1vcmUgPSB0aGlzLmRhdGEuc2xpY2UobGVuLCB0aGlzLmJ1ZmZlclNpemUgKyBsZW4pO1xyXG4gICAgdGhpcy5idWZmZXIgPSB0aGlzLmRhdGEuY29uY2F0KG1vcmUpO1xyXG4gICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoXHJcbiAgICAgIGNoYW5nZXMuZGF0YSAmJlxyXG4gICAgICBjaGFuZ2VzLmRhdGEuY3VycmVudFZhbHVlICYmXHJcbiAgICAgIGNoYW5nZXMuZGF0YS5wcmV2aW91c1ZhbHVlXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5kYXRhID0gWy4uLmNoYW5nZXMuZGF0YS5jdXJyZW50VmFsdWVdO1xyXG4gICAgICB0aGlzLmJ1ZmZlciA9IHRoaXMuZGF0YTtcclxuICAgIH1cclxuICAgIGlmIChcclxuICAgICAgY2hhbmdlcy5sb2FkaW5nICYmXHJcbiAgICAgIGNoYW5nZXMubG9hZGluZy5jdXJyZW50VmFsdWUgIT09IGNoYW5nZXMubG9hZGluZy5wcmV2aW91c1ZhbHVlXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5sb2FkaW5nID0gY2hhbmdlcy5sb2FkaW5nLmN1cnJlbnRWYWx1ZVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcblxyXG4gICAgdGhpcy5idWZmZXIgPXRoaXMuZGF0YTtcclxuICAgIHRoaXMuYnVmZmVyLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICBpdGVtLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25TZWFyY2ggPSAgKHRlcm06IHN0cmluZywgaXRlbTogYW55KSA9PiB7XHJcbiAgICBsZXQga2V5ID0gJyc7XHJcbiAgICB0aGlzLnZvYyA/IGtleSA9ICBcInZvY2FidWxhcnkuXCIgKyB0aGlzLnZvY0lkICsgXCIuXCIgKyBpdGVtLmlkIDoga2V5ID0gaXRlbS5sYWJlbDtcclxuICAgIGxldCB2YWx1ZSA9IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoa2V5KTtcclxuICAgICAgaWYodmFsdWUpe1xyXG4gICAgICAgIHJldHVybiB2YWx1ZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRlcm0pO1xyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICByZXR1cm4gaXRlbS5sYWJlbC5pbmNsdWRlcyh0ZXJtKTtcclxuICAgICAgfVxyXG5cclxuICB9XHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZSkge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uID0gdmFsdWU7XHJcbiAgICB9ZWxzZXsgIC8vYWRkZWQgdG8gYWxsb3cgcmVzZXRpbmcgdWkgd2hlbiByZXNldHRpbmcgZm9ybVxyXG4gICAgICB0aGlzLnNlbGVjdGlvbiA9IFtdO1xyXG4gICAgfVxyXG4gIH1cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuKSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlKGM6IEZvcm1Db250cm9sKSB7XHJcbiAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUZuKGMpO1xyXG4gIH1cclxuICBpc1JlcXVpcmVkKCkge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRyb2wgfHwgIXRoaXMuY29udHJvbC5jb250cm9sLnZhbGlkYXRvcikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdmFsaWRhdG9yID0gdGhpcy5jb250cm9sLmNvbnRyb2wudmFsaWRhdG9yKHt9IGFzIEFic3RyYWN0Q29udHJvbCk7XHJcbiAgICByZXR1cm4gdmFsaWRhdG9yICYmIHZhbGlkYXRvci5yZXF1aXJlZDtcclxuICB9XHJcbiAgaGFzRXJyb3JzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc2hvd0Vycm9yO1xyXG4gIH1cclxuICByZXNldCgpIHtcclxuICAgIHRoaXMubmdTZWxlY3RDb21wb25lbnQuaGFuZGxlQ2xlYXJDbGljaygpO1xyXG4gIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwibGFiZWxcIj5cclxuICA8ZGl2PlxyXG4gICAgPGxhYmVsIGNsYXNzPVwic2VsZWN0LWxhYmVsXCJcclxuICAgICAgPnt7IGxhYmVsIHwgdHJhbnNsYXRlXHJcbiAgICAgIH19PHNwYW4gKm5nSWY9XCJpc1JlcXVpcmVkKClcIiBjbGFzcz1cInRleHQtZGFuZ2VyIG0tMVwiPio8L3NwYW4+PC9sYWJlbFxyXG4gICAgPlxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuPG5nLXNlbGVjdFxyXG4gIFtpdGVtc109XCJidWZmZXJcIlxyXG4gIFtiaW5kTGFiZWxdPVwiYmluZExhYmVsXCJcclxuICBbYmluZFZhbHVlXT1cImJpbmRWYWx1ZVwiXHJcbiAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICBbbXVsdGlwbGVdPVwibXVsdGlwbGVcIlxyXG4gIFtjbGVhcmFibGVdPVwiY2xlYXJcIlxyXG4gIFtzZWFyY2hhYmxlXT1cInNlYXJjaGFibGVcIlxyXG4gIFtjbG9zZU9uU2VsZWN0XT1cImNsb3NlT25TZWxlY3RcIlxyXG4gIFtoaWRlU2VsZWN0ZWRdPVwiaGlkZVNlbGVjdGVkSXRlbXNcIlxyXG4gIFtzZWFyY2hGbl09XCJvblNlYXJjaFwiXHJcbiAgW2xvYWRpbmddPVwibG9hZGluZ1wiXHJcbiAgKHNjcm9sbFRvRW5kKT1cIm9uU2Nyb2xsVG9FbmQoKVwiXHJcbiAgKGNoYW5nZSk9XCJlbWl0U2VsZWN0aW9uKCRldmVudClcIlxyXG4gIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgWyhuZ01vZGVsKV09XCJzZWxlY3Rpb25cIlxyXG4+XHJcbiAgPCEtLSB0ZW1wbGF0ZSBmb3Igdmlld2luZyBvcHRpb25zIGluIHNpbmdsZSBhbmQgbXVsdGkgc2VsZWN0IC0tPlxyXG4gIDxuZy10ZW1wbGF0ZVxyXG4gICAgbmctb3B0aW9uLXRtcFxyXG4gICAgbGV0LWl0ZW09XCJpdGVtXCJcclxuICAgIGxldC1pdGVtJD1cIml0ZW0kXCJcclxuICAgIGxldC1pbmRleD1cImluZGV4XCJcclxuICA+XHJcbiAgICA8ZGl2IGNsYXNzPVwib3B0aW9uLXdyYXBwZXJcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJjaGVjay1ib3gtd3JhcHBlclwiICpuZ0lmPVwibXVsdGlwbGVcIj5cclxuICAgICAgICA8aW5wdXRcclxuICAgICAgICAgIGlkPVwiaXRlbS17eyBpbmRleCB9fVwiXHJcbiAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgW25nTW9kZWxdPVwiaXRlbSQuc2VsZWN0ZWRcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uLXdyYXBwZXJcIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmkgYmktY2hlY2syIGljb25cIj48L3NwYW4+XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwiIXZvY1wiIGNsYXNzPVwibGFiZWwtd3JhcHBlclwiPlxyXG4gICAgICAgIHt7IGl0ZW1bYmluZExhYmVsXSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICA8L3NwYW4+XHJcbiAgICAgIDxzcGFuICpuZ0lmPVwidm9jXCIgY2xhc3M9XCJsYWJlbC13cmFwcGVyXCI+XHJcbiAgICAgICAge3sgXCJ2b2NhYnVsYXJ5LlwiICsgdm9jSWQgKyBcIi5cIiArIGl0ZW1bYmluZFZhbHVlXSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICA8IS0tIHRlbXBsYXRlIGZvciB2aWV3aW5nIHNpbmdsZSBzZWxlY3Qgc2VsZWN0ZWQgdmFsdWUgLS0+XHJcbiAgPG5nLXRlbXBsYXRlIG5nLWxhYmVsLXRtcCBsZXQtaXRlbT1cIml0ZW1cIj5cclxuICAgIDxzcGFuICpuZ0lmPVwiIXZvY1wiPlxyXG4gICAgICB7eyAoYmluZExhYmVsID8gaXRlbVtiaW5kTGFiZWxdIDogaXRlbSkgfCB0cmFuc2xhdGUgfX1cclxuICAgIDwvc3Bhbj5cclxuICAgIDxzcGFuICpuZ0lmPVwidm9jXCI+XHJcbiAgICAgIHt7IFwidm9jYWJ1bGFyeS5cIiArIHZvY0lkICsgXCIuXCIgKyBpdGVtW2JpbmRWYWx1ZV0gfCB0cmFuc2xhdGUgfX1cclxuICAgIDwvc3Bhbj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICA8IS0tIHRlbXBsYXRlIGZvciB2aWV3aW5nIG11bHRpIHNlbGVjdCBzZWxlY3RlZCB2YWx1ZXMgLS0+XHJcbiAgPG5nLXRlbXBsYXRlIG5nLW11bHRpLWxhYmVsLXRtcCBsZXQtaXRlbXM9XCJpdGVtc1wiIGxldC1jbGVhcj1cImNsZWFyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibmctdmFsdWVcIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtcyA/IGl0ZW1zIDogW11cIj5cclxuICAgICAgPHNwYW4gICpuZ0lmPVwiIXZvY1wiIGNsYXNzPVwibmctdmFsdWUtbGFiZWxcIj5cclxuICAgICAgICB7eyAoYmluZExhYmVsID8gaXRlbVtiaW5kTGFiZWxdIDogaXRlbSkgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgPC9zcGFuPlxyXG4gICAgICA8c3BhbiAqbmdJZj1cInZvY1wiPlxyXG4gICAgICAgIHt7IFwidm9jYWJ1bGFyeS5cIiArIHZvY0lkICsgXCIuXCIgKyBpdGVtW2JpbmRWYWx1ZV0gfCB0cmFuc2xhdGUgfX1cclxuICAgICAgPC9zcGFuPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgICpuZ0lmPVwiY2xlYXJcIlxyXG4gICAgICAgIGNsYXNzPVwibmctdmFsdWUtaWNvbiByaWdodFwiXHJcbiAgICAgICAgKGNsaWNrKT1cImNsZWFyKGl0ZW0pXCJcclxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgID7Dlzwvc3BhblxyXG4gICAgICA+XHJcbiAgICA8L2Rpdj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG48L25nLXNlbGVjdD5cclxuPG1hdC1lcnJvclxyXG4gIFthdHRyLmRhdGEtYXV0b21hdGlvbi1pZF09XCInY2FyZC10ZXh0aXRlbS1lcnJvci0nXCJcclxuICBjbGFzcz1cImFwcC10ZXh0aXRlbS1lZGl0YWJsZS1lcnJvclwiXHJcbiAgKm5nSWY9XCJoYXNFcnJvcnMoKVwiXHJcbj5cclxuICA8dWw+XHJcbiAgICA8bGkgKm5nSWY9XCJjb250cm9sLmVycm9ycy5yZXF1aXJlZFwiPlxyXG4gICAgICB7eyBcIlZBTElEQVRPUlMuUkVRVUlSRURcIiB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9saT5cclxuICA8L3VsPlxyXG48L21hdC1lcnJvcj5cclxuIl19
@@ -30,8 +30,9 @@ import * as i6 from "@ngx-translate/core";
30
30
  * </app-dynamic-form-vocabulary-item>
31
31
  */
32
32
  export class DynamicFormVocabularyItemComponent {
33
- constructor(vocabularyApi, control) {
33
+ constructor(vocabularyApi, cdRef, control) {
34
34
  this.vocabularyApi = vocabularyApi;
35
+ this.cdRef = cdRef;
35
36
  this.control = control;
36
37
  this.data = [];
37
38
  /** Can select multiple */
@@ -82,6 +83,7 @@ export class DynamicFormVocabularyItemComponent {
82
83
  callApi.subscribe((res) => {
83
84
  this.loading = false;
84
85
  this.data = !this.shwoAllValues ? res.filter(item => !item.id.includes('archived') && !item.id.includes('draft')) : res;
86
+ this.cdRef.detectChanges();
85
87
  });
86
88
  }
87
89
  getCacheableVocabularyList(type) {
@@ -122,7 +124,7 @@ export class DynamicFormVocabularyItemComponent {
122
124
  this.DynamicFormSelectItemComponent.reset();
123
125
  }
124
126
  }
125
- DynamicFormVocabularyItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DynamicFormVocabularyItemComponent, deps: [{ token: i1.VocabularyApiService }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
127
+ DynamicFormVocabularyItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.4", ngImport: i0, type: DynamicFormVocabularyItemComponent, deps: [{ token: i1.VocabularyApiService }, { token: i0.ChangeDetectorRef }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
126
128
  DynamicFormVocabularyItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.4", type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: { bindValue: "bindValue", bindLabel: "bindLabel", placeholder: "placeholder", multiple: "multiple", searchable: "searchable", closeOnSelect: "closeOnSelect", hideSelectedItems: "hideSelectedItems", disabled: "disabled", vocabularyType: "vocabularyType", label: "label", cacheable: "cacheable", shwoAllValues: "shwoAllValues" }, outputs: { onSelecting: "onSelecting" }, viewQueries: [{ propertyName: "DynamicFormSelectItemComponent", first: true, predicate: DynamicFormSelectItemComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"label\">\r\n <div>\r\n <label class=\"select-label\"\r\n >{{ label | translate\r\n }}<span *ngIf=\"isRequired()\" class=\"text-danger m-1\">*</span></label\r\n >\r\n </div>\r\n</ng-container>\r\n<app-dynamic-form-selectitem\r\n [voc]=\"true\"\r\n [vocId]=\"vocabularyType\"\r\n [data]=\"data\"\r\n [bindLabel]=\"bindLabel\"\r\n [bindValue]=\"bindValue\"\r\n [placeholder]=\"placeholder\"\r\n [multiple]=\"multiple\"\r\n [searchable]=\"searchable\"\r\n [closeOnSelect]=\"closeOnSelect\"\r\n [disabled]=\"disabled\"\r\n [hideSelectedItems]=\"hideSelectedItems\"\r\n [loading]=\"loading\"\r\n (onSelectItems)=\"getSelecteditems($event)\"\r\n [(ngModel)]=\"selection\"\r\n></app-dynamic-form-selectitem>\r\n<mat-error\r\n [attr.data-automation-id]=\"'card-textitem-error-'\"\r\n class=\"app-textitem-editable-error\"\r\n *ngIf=\"hasErrors()\"\r\n>\r\n <ul>\r\n <li *ngIf=\"control.errors.required\">\r\n {{ label | translate }} {{ \"VALIDATORS.REQUIRED\" | translate }}\r\n </li>\r\n </ul>\r\n</mat-error>\r\n", styles: [""], components: [{ type: i3.DynamicFormSelectItemComponent, selector: "app-dynamic-form-selectitem", inputs: ["label", "bindValue", "bindLabel", "data", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "clear", "voc", "vocId", "loading"], outputs: ["onSelectItems"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "translate": i6.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
127
129
  __decorate([
128
130
  Cacheable({
@@ -139,7 +141,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImpor
139
141
  styleUrls: ['./dynamic-form-vocabulary-item.component.scss'],
140
142
  encapsulation: ViewEncapsulation.None,
141
143
  }]
142
- }], ctorParameters: function () { return [{ type: i1.VocabularyApiService }, { type: i2.NgControl, decorators: [{
144
+ }], ctorParameters: function () { return [{ type: i1.VocabularyApiService }, { type: i0.ChangeDetectorRef }, { type: i2.NgControl, decorators: [{
143
145
  type: Self
144
146
  }, {
145
147
  type: Optional
@@ -173,4 +175,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.4", ngImpor
173
175
  }], onSelecting: [{
174
176
  type: Output
175
177
  }], getCacheableVocabularyList: [] } });
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXZvY2FidWxhcnktaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS12b2NhYnVsYXJ5LWl0ZW0vZHluYW1pYy1mb3JtLXZvY2FidWxhcnktaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS12b2NhYnVsYXJ5LWl0ZW0vZHluYW1pYy1mb3JtLXZvY2FidWxhcnktaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNKLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFTdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7Ozs7Ozs7QUFFOUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFPSCxNQUFNLE9BQU8sa0NBQWtDO0lBb0Q3QyxZQUNVLGFBQW1DLEVBQ2hCLE9BQWtCO1FBRHJDLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNoQixZQUFPLEdBQVAsT0FBTyxDQUFXO1FBakQvQyxTQUFJLEdBQUcsRUFBRSxDQUFDO1FBT1YsMEJBQTBCO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDMUIsb0JB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LEVBQUUsa0NBQWtDO29CQUM1QyxXQUFXLEVBQUUsK0NBQStDO29CQUM1RCxTQUFTLEVBQUUsQ0FBQywrQ0FBK0MsQ0FBQztvQkFDNUQsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDOzswQkF1REksSUFBSTs7MEJBQUksUUFBUTs0Q0FuRG5CLDhCQUE4QjtzQkFEN0IsU0FBUzt1QkFBQyw4QkFBOEI7Z0JBS2hDLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFFSyxRQUFRO3NCQUFoQixLQUFLO2dCQUVDLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFSSxXQUFXO3NCQUFwQixNQUFNO2dCQW9EUCwwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT3B0aW9uYWwsXHJcbiAgT3V0cHV0LFxyXG4gIFNlbGYsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEFic3RyYWN0Q29udHJvbCxcclxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcclxuICBGb3JtQ29udHJvbCxcclxuICBOZ0NvbnRyb2wsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFZvY2FidWxhcnlBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdm9jYWJ1bGFyeS9zZXJ2aWNlcy92b2NhYnVsYXJ5LWFwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ2FjaGVhYmxlLCBMb2NhbFN0b3JhZ2VTdHJhdGVneSB9IGZyb20gJ3RzLWNhY2hlYWJsZSc7XHJcbmltcG9ydCB7IER5bmFtaWNGb3JtU2VsZWN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2R5bmFtaWMtZm9ybS1zZWxlY3RpdGVtL2R5bmFtaWMtZm9ybS1zZWxlY3RpdGVtLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogQSB2b2NhYnVsYXJ5IGRyb3Bkb3duIGlucHV0IGludGVncmF0ZWQgd2l0aCBudXhlbyB2b2NhYnVsYXJ5IEFQSSxcclxuICogdGhhdCBjYW4gYmUgdXNlZCBpbnNpZGUgcmVhY3RpdmUgb3IgdGVtcGxhdGUgZHJpdmVuIGZvcm1zXHJcbiAqIEB0aXRsZVxyXG4gKiB2b2NhYnVsYXJ5IGRyb3Bkb3duXHJcbiAqIEBleGFtcGxlXHJcbiAqIDxhcHAtZHluYW1pYy1mb3JtLXZvY2FidWxhcnktaXRlbVxyXG4gKiAgIFtsYWJlbF09XCInUEFUSC5UTy5MQUJFTC5UUkFOU0xBVElPTidcIlxyXG4gKiAgIFtiaW5kTGFiZWxdPVwiJ2JpbmRMYWJlbFByb3BlcnR5TmFtZSdcIlxyXG4gKiAgIFtiaW5kVmFsdWVdPVwiJ2JpbmRWYWx1ZVByb3BlcnR5TmFtZSdcIlxyXG4gKiAgIHBsYWNlaG9sZGVyPVwiJ1BBVEguVE8uUExBQ0VIT0xERVIuVFJBTlNMQVRJT04nXCJcclxuICogICBbbXVsdGlwbGVdPVwiZmFsc2VcIlxyXG4gKiAgIFtzZWFyY2hhYmxlXT1cImZhbHNlXCJcclxuICogICBbY2xvc2VPblNlbGVjdF09XCJ0cnVlXCJcclxuICogICBbaGlkZVNlbGVjdGVkSXRlbXNdPVwiZmFsc2VcIlxyXG4gKiAgIFt2b2NhYnVsYXJ5VHlwZV09XCInVm9jYWJ1bGFyeUtleSdcIlxyXG4gKiAgIGZvcm1Db250cm9sTmFtZT1cImNvbnRyb2xOYW1lXCJcclxuICogPlxyXG4gKiA8L2FwcC1keW5hbWljLWZvcm0tdm9jYWJ1bGFyeS1pdGVtPlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtZHluYW1pYy1mb3JtLXZvY2FidWxhcnktaXRlbScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS12b2NhYnVsYXJ5LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZm9ybS12b2NhYnVsYXJ5LWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1Wb2NhYnVsYXJ5SXRlbUNvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG4gIEBWaWV3Q2hpbGQoRHluYW1pY0Zvcm1TZWxlY3RJdGVtQ29tcG9uZW50KVxyXG4gIER5bmFtaWNGb3JtU2VsZWN0SXRlbUNvbXBvbmVudDogRHluYW1pY0Zvcm1TZWxlY3RJdGVtQ29tcG9uZW50O1xyXG5cclxuICBkYXRhID0gW107XHJcbiAgLyoqIEJpbmQgdmFsdWUgdG8gcHJvcGVydHkgbmFtZSAqL1xyXG4gIEBJbnB1dCgpIGJpbmRWYWx1ZTtcclxuICAvKiogQmluZCBsYWJlbCB0byBwcm9wZXJ0eSBuYW1lICovXHJcbiAgQElucHV0KCkgYmluZExhYmVsO1xyXG4gIC8qKiBQbGFjZWhvbGRlciBzdHJpbmcgKi9cclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjtcclxuICAvKiogQ2FuIHNlbGVjdCBtdWx0aXBsZSAqL1xyXG4gIEBJbnB1dCgpIG11bHRpcGxlID0gZmFsc2U7XHJcbiAgLyoqIElzIHNlYXJjaGFibGUgKi9cclxuICBASW5wdXQoKSBzZWFyY2hhYmxlID0gdHJ1ZTtcclxuICAvKiogU2hvdWxkIGNsb3NlIG9uIHNlbGVjdCAqL1xyXG4gIEBJbnB1dCgpIGNsb3NlT25TZWxlY3QgPSB0cnVlO1xyXG4gIC8qKiBTaG91bGQgaGlkZSBzZWxlY3RlZCBpdGVtcyAqL1xyXG4gIEBJbnB1dCgpIGhpZGVTZWxlY3RlZEl0ZW1zID0gZmFsc2U7XHJcbiAgICAvKiogaXMgZGlzYWJsZWQgKi9cclxuICAgIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgLyoqIFZvY2FidWxhcnkgbGlzdCBBUEkgS2V5ICovXHJcbiAgQElucHV0KCkgdm9jYWJ1bGFyeVR5cGUgPSAnJztcclxuICAvKiogRmllbGQgTGFiZWwgKi9cclxuICBASW5wdXQoKSBsYWJlbDtcclxuICBASW5wdXQoKSBjYWNoZWFibGUgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNod29BbGxWYWx1ZXMgPSB0cnVlXHJcbiAgLyoqIEV2ZW50IGVtaXR0ZWQgb24gdmFsdWUgaXMgc2VsZWN0ZWQgKi9cclxuICBAT3V0cHV0KCkgb25TZWxlY3RpbmcgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG4gIHNlbGVjdGlvbjtcclxuXHJcbiAgLy8gZnVuY3Rpb24gcmVsYXRlZCB0byB2YWx1ZSBhY2Nlc3NvclxyXG4gIHByb3BhZ2F0ZUNoYW5nZTogYW55ID0gKCkgPT4geyB9O1xyXG4gIHZhbGlkYXRlRm46IGFueSA9ICgpID0+IHsgfTtcclxuICBwdWJsaWMgb25Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7XHJcbiAgICAvKkVtcHR5Ki9cclxuICB9O1xyXG4gIHB1YmxpYyBnZXQgaW52YWxpZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmNvbnRyb2wgPyB0aGlzLmNvbnRyb2wuaW52YWxpZCA6IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBzaG93RXJyb3IoKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoIXRoaXMuY29udHJvbCkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgeyBkaXJ0eSwgdG91Y2hlZCB9ID0gdGhpcy5jb250cm9sO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmludmFsaWQgPyBkaXJ0eSB8fCB0b3VjaGVkIDogZmFsc2U7XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSB2b2NhYnVsYXJ5QXBpOiBWb2NhYnVsYXJ5QXBpU2VydmljZSxcclxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHVibGljIGNvbnRyb2w6IE5nQ29udHJvbFxyXG4gICkge1xyXG4gICAgdGhpcy5jb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy52b2NhYnVsYXJ5VHlwZSkge1xyXG4gICAgICB0aGlzLmdldExpc09mT3B0aW9ucyh0aGlzLnZvY2FidWxhcnlUeXBlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldExpc09mT3B0aW9ucyh0eXBlKSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgY29uc3QgY2FsbEFwaSA9IHRoaXMuY2FjaGVhYmxlXHJcbiAgICAgID8gdGhpcy5nZXRDYWNoZWFibGVWb2NhYnVsYXJ5TGlzdCh0eXBlKVxyXG4gICAgICA6IHRoaXMuZ2V0Vm9jYWJ1bGFyeUxpc3QodHlwZSk7XHJcbiAgICBjYWxsQXBpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmRhdGEgPSAhdGhpcy5zaHdvQWxsVmFsdWVzID8gcmVzLmZpbHRlcihpdGVtID0+ICFpdGVtLmlkLmluY2x1ZGVzKCdhcmNoaXZlZCcpICYmICFpdGVtLmlkLmluY2x1ZGVzKCdkcmFmdCcpKSA6IHJlcztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgQENhY2hlYWJsZSh7XHJcbiAgICBtYXhDYWNoZUNvdW50OiAxMDAwLFxyXG4gICAgc3RvcmFnZVN0cmF0ZWd5OiBMb2NhbFN0b3JhZ2VTdHJhdGVneSxcclxuICAgIG1heEFnZTogMjAwMDAsXHJcbiAgfSlcclxuICBnZXRDYWNoZWFibGVWb2NhYnVsYXJ5TGlzdCh0eXBlKSB7XHJcbiAgICByZXR1cm4gdGhpcy52b2NhYnVsYXJ5QXBpLmdldFZvY2FidWxhcnlMaXN0KHR5cGUpO1xyXG4gIH1cclxuICBnZXRWb2NhYnVsYXJ5TGlzdCh0eXBlKSB7XHJcbiAgICByZXR1cm4gdGhpcy52b2NhYnVsYXJ5QXBpLmdldFZvY2FidWxhcnlMaXN0KHR5cGUpO1xyXG4gIH1cclxuICBnZXRTZWxlY3RlZGl0ZW1zKHNlbGVjdGVkSXRlbXMpIHtcclxuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKHRoaXMuc2VsZWN0aW9uKTtcclxuICAgIHRoaXMub25TZWxlY3RpbmcuZW1pdCh0aGlzLnNlbGVjdGlvbik7XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlKSB7XHJcbiAgICAvLyBpZiAodmFsdWUpIHsgcmVtb3ZlZCB0byBhbGxvdyByZXNldGluZyB1aSB3aGVuIHJlc2V0dGluZyBmb3JtXHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uID0gdmFsdWU7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuKSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlKGM6IEZvcm1Db250cm9sKSB7XHJcbiAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUZuKGMpO1xyXG4gIH1cclxuICBpc1JlcXVpcmVkKCkge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRyb2wgfHwgIXRoaXMuY29udHJvbC5jb250cm9sLnZhbGlkYXRvcikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdmFsaWRhdG9yID0gdGhpcy5jb250cm9sLmNvbnRyb2wudmFsaWRhdG9yKHt9IGFzIEFic3RyYWN0Q29udHJvbCk7XHJcbiAgICByZXR1cm4gdmFsaWRhdG9yICYmIHZhbGlkYXRvci5yZXF1aXJlZDtcclxuICB9XHJcbiAgaGFzRXJyb3JzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc2hvd0Vycm9yO1xyXG4gIH1cclxuICByZXNldCgpIHtcclxuICAgIHRoaXMuRHluYW1pY0Zvcm1TZWxlY3RJdGVtQ29tcG9uZW50LnJlc2V0KCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPlxyXG4gIDxkaXY+XHJcbiAgICA8bGFiZWwgY2xhc3M9XCJzZWxlY3QtbGFiZWxcIlxyXG4gICAgICA+e3sgbGFiZWwgfCB0cmFuc2xhdGVcclxuICAgICAgfX08c3BhbiAqbmdJZj1cImlzUmVxdWlyZWQoKVwiIGNsYXNzPVwidGV4dC1kYW5nZXIgbS0xXCI+Kjwvc3Bhbj48L2xhYmVsXHJcbiAgICA+XHJcbiAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG48YXBwLWR5bmFtaWMtZm9ybS1zZWxlY3RpdGVtXHJcbiAgW3ZvY109XCJ0cnVlXCJcclxuICBbdm9jSWRdPVwidm9jYWJ1bGFyeVR5cGVcIlxyXG4gIFtkYXRhXT1cImRhdGFcIlxyXG4gIFtiaW5kTGFiZWxdPVwiYmluZExhYmVsXCJcclxuICBbYmluZFZhbHVlXT1cImJpbmRWYWx1ZVwiXHJcbiAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICBbbXVsdGlwbGVdPVwibXVsdGlwbGVcIlxyXG4gIFtzZWFyY2hhYmxlXT1cInNlYXJjaGFibGVcIlxyXG4gIFtjbG9zZU9uU2VsZWN0XT1cImNsb3NlT25TZWxlY3RcIlxyXG4gIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgW2hpZGVTZWxlY3RlZEl0ZW1zXT1cImhpZGVTZWxlY3RlZEl0ZW1zXCJcclxuICBbbG9hZGluZ109XCJsb2FkaW5nXCJcclxuICAob25TZWxlY3RJdGVtcyk9XCJnZXRTZWxlY3RlZGl0ZW1zKCRldmVudClcIlxyXG4gIFsobmdNb2RlbCldPVwic2VsZWN0aW9uXCJcclxuPjwvYXBwLWR5bmFtaWMtZm9ybS1zZWxlY3RpdGVtPlxyXG48bWF0LWVycm9yXHJcbiAgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidjYXJkLXRleHRpdGVtLWVycm9yLSdcIlxyXG4gIGNsYXNzPVwiYXBwLXRleHRpdGVtLWVkaXRhYmxlLWVycm9yXCJcclxuICAqbmdJZj1cImhhc0Vycm9ycygpXCJcclxuPlxyXG4gIDx1bD5cclxuICAgIDxsaSAqbmdJZj1cImNvbnRyb2wuZXJyb3JzLnJlcXVpcmVkXCI+XHJcbiAgICAgIHt7IGxhYmVsIHwgdHJhbnNsYXRlIH19IHt7IFwiVkFMSURBVE9SUy5SRVFVSVJFRFwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICA8L2xpPlxyXG4gIDwvdWw+XHJcbjwvbWF0LWVycm9yPlxyXG4iXX0=
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXZvY2FidWxhcnktaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS12b2NhYnVsYXJ5LWl0ZW0vZHluYW1pYy1mb3JtLXZvY2FidWxhcnktaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS12b2NhYnVsYXJ5LWl0ZW0vZHluYW1pYy1mb3JtLXZvY2FidWxhcnktaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUNKLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFTdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7Ozs7Ozs7QUFFOUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFPSCxNQUFNLE9BQU8sa0NBQWtDO0lBb0Q3QyxZQUNVLGFBQW1DLEVBQ25DLEtBQXlCLEVBQ04sT0FBa0I7UUFGckMsa0JBQWEsR0FBYixhQUFhLENBQXNCO1FBQ25DLFVBQUssR0FBTCxLQUFLLENBQW9CO1FBQ04sWUFBTyxHQUFQLE9BQU8sQ0FBVztRQWxEL0MsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQU9WLDBCQUEw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QUNyQyxNQUFNLEVBQUUsS0FBSztLQUNkLENBQUM7b0ZBR0Q7MkZBckZVLGtDQUFrQztrQkFOOUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0NBQWtDO29CQUM1QyxXQUFXLEVBQUUsK0NBQStDO29CQUM1RCxTQUFTLEVBQUUsQ0FBQywrQ0FBK0MsQ0FBQztvQkFDNUQsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDOzswQkF3REksSUFBSTs7MEJBQUksUUFBUTs0Q0FwRG5CLDhCQUE4QjtzQkFEN0IsU0FBUzt1QkFBQyw4QkFBOEI7Z0JBS2hDLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFFSyxRQUFRO3NCQUFoQixLQUFLO2dCQUVDLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFSSxXQUFXO3NCQUFwQixNQUFNO2dCQXNEUCwwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT3B0aW9uYWwsXHJcbiAgT3V0cHV0LFxyXG4gIFNlbGYsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEFic3RyYWN0Q29udHJvbCxcclxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcclxuICBGb3JtQ29udHJvbCxcclxuICBOZ0NvbnRyb2wsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFZvY2FidWxhcnlBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdm9jYWJ1bGFyeS9zZXJ2aWNlcy92b2NhYnVsYXJ5LWFwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ2FjaGVhYmxlLCBMb2NhbFN0b3JhZ2VTdHJhdGVneSB9IGZyb20gJ3RzLWNhY2hlYWJsZSc7XHJcbmltcG9ydCB7IER5bmFtaWNGb3JtU2VsZWN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2R5bmFtaWMtZm9ybS1zZWxlY3RpdGVtL2R5bmFtaWMtZm9ybS1zZWxlY3RpdGVtLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogQSB2b2NhYnVsYXJ5IGRyb3Bkb3duIGlucHV0IGludGVncmF0ZWQgd2l0aCBudXhlbyB2b2NhYnVsYXJ5IEFQSSxcclxuICogdGhhdCBjYW4gYmUgdXNlZCBpbnNpZGUgcmVhY3RpdmUgb3IgdGVtcGxhdGUgZHJpdmVuIGZvcm1zXHJcbiAqIEB0aXRsZVxyXG4gKiB2b2NhYnVsYXJ5IGRyb3Bkb3duXHJcbiAqIEBleGFtcGxlXHJcbiAqIDxhcHAtZHluYW1pYy1mb3JtLXZvY2FidWxhcnktaXRlbVxyXG4gKiAgIFtsYWJlbF09XCInUEFUSC5UTy5MQUJFTC5UUkFOU0xBVElPTidcIlxyXG4gKiAgIFtiaW5kTGFiZWxdPVwiJ2JpbmRMYWJlbFByb3BlcnR5TmFtZSdcIlxyXG4gKiAgIFtiaW5kVmFsdWVdPVwiJ2JpbmRWYWx1ZVByb3BlcnR5TmFtZSdcIlxyXG4gKiAgIHBsYWNlaG9sZGVyPVwiJ1BBVEguVE8uUExBQ0VIT0xERVIuVFJBTlNMQVRJT04nXCJcclxuICogICBbbXVsdGlwbGVdPVwiZmFsc2VcIlxyXG4gKiAgIFtzZWFyY2hhYmxlXT1cImZhbHNlXCJcclxuICogICBbY2xvc2VPblNlbGVjdF09XCJ0cnVlXCJcclxuICogICBbaGlkZVNlbGVjdGVkSXRlbXNdPVwiZmFsc2VcIlxyXG4gKiAgIFt2b2NhYnVsYXJ5VHlwZV09XCInVm9jYWJ1bGFyeUtleSdcIlxyXG4gKiAgIGZvcm1Db250cm9sTmFtZT1cImNvbnRyb2xOYW1lXCJcclxuICogPlxyXG4gKiA8L2FwcC1keW5hbWljLWZvcm0tdm9jYWJ1bGFyeS1pdGVtPlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtZHluYW1pYy1mb3JtLXZvY2FidWxhcnktaXRlbScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS12b2NhYnVsYXJ5LWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZm9ybS12b2NhYnVsYXJ5LWl0ZW0uY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1Wb2NhYnVsYXJ5SXRlbUNvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG4gIEBWaWV3Q2hpbGQoRHluYW1pY0Zvcm1TZWxlY3RJdGVtQ29tcG9uZW50KVxyXG4gIER5bmFtaWNGb3JtU2VsZWN0SXRlbUNvbXBvbmVudDogRHluYW1pY0Zvcm1TZWxlY3RJdGVtQ29tcG9uZW50O1xyXG5cclxuICBkYXRhID0gW107XHJcbiAgLyoqIEJpbmQgdmFsdWUgdG8gcHJvcGVydHkgbmFtZSAqL1xyXG4gIEBJbnB1dCgpIGJpbmRWYWx1ZTtcclxuICAvKiogQmluZCBsYWJlbCB0byBwcm9wZXJ0eSBuYW1lICovXHJcbiAgQElucHV0KCkgYmluZExhYmVsO1xyXG4gIC8qKiBQbGFjZWhvbGRlciBzdHJpbmcgKi9cclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjtcclxuICAvKiogQ2FuIHNlbGVjdCBtdWx0aXBsZSAqL1xyXG4gIEBJbnB1dCgpIG11bHRpcGxlID0gZmFsc2U7XHJcbiAgLyoqIElzIHNlYXJjaGFibGUgKi9cclxuICBASW5wdXQoKSBzZWFyY2hhYmxlID0gdHJ1ZTtcclxuICAvKiogU2hvdWxkIGNsb3NlIG9uIHNlbGVjdCAqL1xyXG4gIEBJbnB1dCgpIGNsb3NlT25TZWxlY3QgPSB0cnVlO1xyXG4gIC8qKiBTaG91bGQgaGlkZSBzZWxlY3RlZCBpdGVtcyAqL1xyXG4gIEBJbnB1dCgpIGhpZGVTZWxlY3RlZEl0ZW1zID0gZmFsc2U7XHJcbiAgICAvKiogaXMgZGlzYWJsZWQgKi9cclxuICAgIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgLyoqIFZvY2FidWxhcnkgbGlzdCBBUEkgS2V5ICovXHJcbiAgQElucHV0KCkgdm9jYWJ1bGFyeVR5cGUgPSAnJztcclxuICAvKiogRmllbGQgTGFiZWwgKi9cclxuICBASW5wdXQoKSBsYWJlbDtcclxuICBASW5wdXQoKSBjYWNoZWFibGUgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNod29BbGxWYWx1ZXMgPSB0cnVlXHJcbiAgLyoqIEV2ZW50IGVtaXR0ZWQgb24gdmFsdWUgaXMgc2VsZWN0ZWQgKi9cclxuICBAT3V0cHV0KCkgb25TZWxlY3RpbmcgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG4gIHNlbGVjdGlvbjtcclxuXHJcbiAgLy8gZnVuY3Rpb24gcmVsYXRlZCB0byB2YWx1ZSBhY2Nlc3NvclxyXG4gIHByb3BhZ2F0ZUNoYW5nZTogYW55ID0gKCkgPT4geyB9O1xyXG4gIHZhbGlkYXRlRm46IGFueSA9ICgpID0+IHsgfTtcclxuICBwdWJsaWMgb25Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7XHJcbiAgICAvKkVtcHR5Ki9cclxuICB9O1xyXG4gIHB1YmxpYyBnZXQgaW52YWxpZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmNvbnRyb2wgPyB0aGlzLmNvbnRyb2wuaW52YWxpZCA6IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBzaG93RXJyb3IoKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoIXRoaXMuY29udHJvbCkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgeyBkaXJ0eSwgdG91Y2hlZCB9ID0gdGhpcy5jb250cm9sO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmludmFsaWQgPyBkaXJ0eSB8fCB0b3VjaGVkIDogZmFsc2U7XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSB2b2NhYnVsYXJ5QXBpOiBWb2NhYnVsYXJ5QXBpU2VydmljZSxcclxuICAgIHByaXZhdGUgY2RSZWYgOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHVibGljIGNvbnRyb2w6IE5nQ29udHJvbFxyXG4gICkge1xyXG4gICAgdGhpcy5jb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy52b2NhYnVsYXJ5VHlwZSkge1xyXG4gICAgICB0aGlzLmdldExpc09mT3B0aW9ucyh0aGlzLnZvY2FidWxhcnlUeXBlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldExpc09mT3B0aW9ucyh0eXBlKSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgY29uc3QgY2FsbEFwaSA9IHRoaXMuY2FjaGVhYmxlXHJcbiAgICAgID8gdGhpcy5nZXRDYWNoZWFibGVWb2NhYnVsYXJ5TGlzdCh0eXBlKVxyXG4gICAgICA6IHRoaXMuZ2V0Vm9jYWJ1bGFyeUxpc3QodHlwZSk7XHJcbiAgICBjYWxsQXBpLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmRhdGEgPSAhdGhpcy5zaHdvQWxsVmFsdWVzID8gcmVzLmZpbHRlcihpdGVtID0+ICFpdGVtLmlkLmluY2x1ZGVzKCdhcmNoaXZlZCcpICYmICFpdGVtLmlkLmluY2x1ZGVzKCdkcmFmdCcpKSA6IHJlcztcclxuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIEBDYWNoZWFibGUoe1xyXG4gICAgbWF4Q2FjaGVDb3VudDogMTAwMCxcclxuICAgIHN0b3JhZ2VTdHJhdGVneTogTG9jYWxTdG9yYWdlU3RyYXRlZ3ksXHJcbiAgICBtYXhBZ2U6IDIwMDAwLFxyXG4gIH0pXHJcbiAgZ2V0Q2FjaGVhYmxlVm9jYWJ1bGFyeUxpc3QodHlwZSkge1xyXG4gICAgcmV0dXJuIHRoaXMudm9jYWJ1bGFyeUFwaS5nZXRWb2NhYnVsYXJ5TGlzdCh0eXBlKTtcclxuICB9XHJcbiAgXHJcbiAgZ2V0Vm9jYWJ1bGFyeUxpc3QodHlwZSkge1xyXG4gICAgcmV0dXJuIHRoaXMudm9jYWJ1bGFyeUFwaS5nZXRWb2NhYnVsYXJ5TGlzdCh0eXBlKTtcclxuICB9XHJcbiAgZ2V0U2VsZWN0ZWRpdGVtcyhzZWxlY3RlZEl0ZW1zKSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnNlbGVjdGlvbik7XHJcbiAgICB0aGlzLm9uU2VsZWN0aW5nLmVtaXQodGhpcy5zZWxlY3Rpb24pO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZSkge1xyXG4gICAgLy8gaWYgKHZhbHVlKSB7IHJlbW92ZWQgdG8gYWxsb3cgcmVzZXRpbmcgdWkgd2hlbiByZXNldHRpbmcgZm9ybVxyXG4gICAgICB0aGlzLnNlbGVjdGlvbiA9IHZhbHVlO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbikge1xyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICB2YWxpZGF0ZShjOiBGb3JtQ29udHJvbCkge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsaWRhdGVGbihjKTtcclxuICB9XHJcbiAgaXNSZXF1aXJlZCgpIHtcclxuICAgIGlmICghdGhpcy5jb250cm9sIHx8ICF0aGlzLmNvbnRyb2wuY29udHJvbC52YWxpZGF0b3IpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHZhbGlkYXRvciA9IHRoaXMuY29udHJvbC5jb250cm9sLnZhbGlkYXRvcih7fSBhcyBBYnN0cmFjdENvbnRyb2wpO1xyXG4gICAgcmV0dXJuIHZhbGlkYXRvciAmJiB2YWxpZGF0b3IucmVxdWlyZWQ7XHJcbiAgfVxyXG4gIGhhc0Vycm9ycygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnNob3dFcnJvcjtcclxuICB9XHJcbiAgcmVzZXQoKSB7XHJcbiAgICB0aGlzLkR5bmFtaWNGb3JtU2VsZWN0SXRlbUNvbXBvbmVudC5yZXNldCgpO1xyXG4gIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwibGFiZWxcIj5cclxuICA8ZGl2PlxyXG4gICAgPGxhYmVsIGNsYXNzPVwic2VsZWN0LWxhYmVsXCJcclxuICAgICAgPnt7IGxhYmVsIHwgdHJhbnNsYXRlXHJcbiAgICAgIH19PHNwYW4gKm5nSWY9XCJpc1JlcXVpcmVkKClcIiBjbGFzcz1cInRleHQtZGFuZ2VyIG0tMVwiPio8L3NwYW4+PC9sYWJlbFxyXG4gICAgPlxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuPGFwcC1keW5hbWljLWZvcm0tc2VsZWN0aXRlbVxyXG4gIFt2b2NdPVwidHJ1ZVwiXHJcbiAgW3ZvY0lkXT1cInZvY2FidWxhcnlUeXBlXCJcclxuICBbZGF0YV09XCJkYXRhXCJcclxuICBbYmluZExhYmVsXT1cImJpbmRMYWJlbFwiXHJcbiAgW2JpbmRWYWx1ZV09XCJiaW5kVmFsdWVcIlxyXG4gIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcclxuICBbc2VhcmNoYWJsZV09XCJzZWFyY2hhYmxlXCJcclxuICBbY2xvc2VPblNlbGVjdF09XCJjbG9zZU9uU2VsZWN0XCJcclxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gIFtoaWRlU2VsZWN0ZWRJdGVtc109XCJoaWRlU2VsZWN0ZWRJdGVtc1wiXHJcbiAgW2xvYWRpbmddPVwibG9hZGluZ1wiXHJcbiAgKG9uU2VsZWN0SXRlbXMpPVwiZ2V0U2VsZWN0ZWRpdGVtcygkZXZlbnQpXCJcclxuICBbKG5nTW9kZWwpXT1cInNlbGVjdGlvblwiXHJcbj48L2FwcC1keW5hbWljLWZvcm0tc2VsZWN0aXRlbT5cclxuPG1hdC1lcnJvclxyXG4gIFthdHRyLmRhdGEtYXV0b21hdGlvbi1pZF09XCInY2FyZC10ZXh0aXRlbS1lcnJvci0nXCJcclxuICBjbGFzcz1cImFwcC10ZXh0aXRlbS1lZGl0YWJsZS1lcnJvclwiXHJcbiAgKm5nSWY9XCJoYXNFcnJvcnMoKVwiXHJcbj5cclxuICA8dWw+XHJcbiAgICA8bGkgKm5nSWY9XCJjb250cm9sLmVycm9ycy5yZXF1aXJlZFwiPlxyXG4gICAgICB7eyBsYWJlbCB8IHRyYW5zbGF0ZSB9fSB7eyBcIlZBTElEQVRPUlMuUkVRVUlSRURcIiB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9saT5cclxuICA8L3VsPlxyXG48L21hdC1lcnJvcj5cclxuIl19