nuxeo-development-framework 4.1.7 → 4.1.9

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.
@@ -166,7 +166,7 @@ export class DynamicFieldsRendererComponent {
166
166
  }
167
167
  }
168
168
  DynamicFieldsRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFieldsRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
169
- DynamicFieldsRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFieldsRendererComponent, selector: "app-dynamic-fields-renderer", inputs: { form: "form", agencyNameFilter: "agencyNameFilter", countryNameFilter: "countryNameFilter", mode: "mode", fields: "fields" }, ngImport: i0, template: "<div [formGroup]=\"form\" *ngIf=\"form\">\r\n <div class=\"renderer-container\">\r\n <div class=\"field-container\" *ngFor=\"let field of fields\">\r\n <ng-container\r\n *permission=\"{ name: field.permission, entity: field.formControlName }\"\r\n >\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'text'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate }}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <input\r\n class=\"field-style\"\r\n [formControlName]=\"field.formControlName\"\r\n placeholder=\" {{ field.placeholder | translate }}\"\r\n />\r\n </div>\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'number'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate }}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <input\r\n min=\"1\"\r\n type=\"number\"\r\n class=\"field-style\"\r\n [formControlName]=\"field.formControlName\"\r\n placeholder=\" {{ field.placeholder | translate }}\"\r\n />\r\n </div>\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'date'\">\r\n <cts-dynamic-form-hijri-dateitem\r\n [formControlName]=\"field.formControlName\"\r\n [label]=\"field.label\"\r\n >\r\n </cts-dynamic-form-hijri-dateitem>\r\n </div>\r\n\r\n <div\r\n class=\"single-field mb-3\"\r\n *ngIf=\"field.type === 'dynamic-vocabulary'\"\r\n >\r\n <app-dynamic-form-vocabulary-item\r\n [label]=\"field.label\"\r\n [bindLabel]=\"field.bindLabel\"\r\n [bindValue]=\"field.bindValue\"\r\n placeholder=\"{{ field.placeholder | translate }}\"\r\n [multiple]=\"field.multiple\"\r\n [searchable]=\"field.searchable\"\r\n [closeOnSelect]=\"field.closeOnSelect\"\r\n [disabled]=\"field.disabled\"\r\n [hideSelectedItems]=\"field.hideSelectedItems\"\r\n [vocabularyType]=\"field.vocabularyType\"\r\n [formControlName]=\"field.formControlName\"\r\n >\r\n </app-dynamic-form-vocabulary-item>\r\n </div>\r\n\r\n <!-- <div class=\"single-field mb-3\" *ngIf=\"field.type === 'department-selector'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate }}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <app-dynamic-form-department\r\n [formControlName]=\"field.formControlName\"\r\n [placeholder]=\"field.placeholder\"\r\n [pp_departmentNestedTree]=\"field.pp_departmentNestedTree\"\r\n [pp_departmentTree]=\"field.pp_departmentTree\"\r\n [customPrefix]=\"field.customPrefix\"\r\n [customParentProperty]=\"field.customParentProperty\"\r\n [useCustomAddEditAction]=\"field.useCustomAddEditAction\"\r\n >\r\n </app-dynamic-form-department>\r\n </div> -->\r\n\r\n <div\r\n class=\"single-field mb-3\"\r\n *ngIf=\"field.type === 'translated-vocabulary'\"\r\n >\r\n <app-translated-vocabulary-select\r\n [label]=\"field.label\"\r\n [arbBindLabel]=\"field.arbBindLabel\"\r\n [engBindLabel]=\"field.engBindLabel\"\r\n [bindValue]=\"field.bindValue\"\r\n placeholder=\"{{ field.placeholder | translate }}\"\r\n [multiple]=\"field.multiple\"\r\n [searchable]=\"field.searchable\"\r\n [closeOnSelect]=\"field.closeOnSelect\"\r\n [hideSelectedItems]=\"field.hideSelectedItems\"\r\n [formControlName]=\"field.formControlName\"\r\n [vocbularyId]=\"field.vocbularyId\"\r\n [useFilter]=\"field.useFilter\"\r\n [filter]=\"\r\n field.filter === 'agencyName'\r\n ? agencyNameFilter\r\n : field.filter === 'countryName'\r\n ? countryNameFilter\r\n : {}\r\n \"\r\n [params]=\"field.params || {}\"\r\n [getByDirectorySuggestion]=\"field.getByDirectorySuggestion\"\r\n >\r\n </app-translated-vocabulary-select>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [""], components: [{ type: i1.DynamicFormHijriDateitemComponent, selector: "cts-dynamic-form-hijri-dateitem", inputs: ["minHijri", "maxHijri", "minGreg", "maxGreg", "label", "isDisabled", "range", "vertical", "isReadOnly", "placeholder"], outputs: ["valueChanged"] }, { type: i2.DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }, { type: i3.TranslatedVocabularySelectComponent, selector: "app-translated-vocabulary-select", inputs: ["label", "bindValue", "arbBindLabel", "engBindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "clear", "filter", "useFilter", "vocbularyId", "mapingResponse", "params", "getByDirectorySuggestion"], outputs: ["onSelectItems"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.PermissionsDirective, selector: "[permission]", inputs: ["permission"] }, { type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i5.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { type: i5.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }], pipes: { "translate": i7.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
169
+ DynamicFieldsRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFieldsRendererComponent, selector: "app-dynamic-fields-renderer", inputs: { form: "form", agencyNameFilter: "agencyNameFilter", countryNameFilter: "countryNameFilter", mode: "mode", fields: "fields" }, ngImport: i0, template: "<div [formGroup]=\"form\" *ngIf=\"form\">\r\n <div class=\"renderer-container\">\r\n <div class=\"field-container\" *ngFor=\"let field of fields\">\r\n <ng-container\r\n *permission=\"{ name: field.permission, entity: field.formControlName }\"\r\n >\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'text'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate }}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <input\r\n class=\"field-style\"\r\n id=\"{{ field.formControlName }}\"\r\n [formControlName]=\"field.formControlName\"\r\n placeholder=\" {{ field.placeholder | translate }}\"\r\n />\r\n </div>\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'number'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate }}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <input\r\n min=\"1\"\r\n type=\"number\"\r\n class=\"field-style\"\r\n [formControlName]=\"field.formControlName\"\r\n placeholder=\" {{ field.placeholder | translate }}\"\r\n />\r\n </div>\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'date'\">\r\n <cts-dynamic-form-hijri-dateitem\r\n [formControlName]=\"field.formControlName\"\r\n [label]=\"field.label\"\r\n >\r\n </cts-dynamic-form-hijri-dateitem>\r\n </div>\r\n\r\n <div\r\n class=\"single-field mb-3\"\r\n *ngIf=\"field.type === 'dynamic-vocabulary'\"\r\n >\r\n <app-dynamic-form-vocabulary-item\r\n [label]=\"field.label\"\r\n [bindLabel]=\"field.bindLabel\"\r\n [bindValue]=\"field.bindValue\"\r\n placeholder=\"{{ field.placeholder | translate }}\"\r\n [multiple]=\"field.multiple\"\r\n [searchable]=\"field.searchable\"\r\n [closeOnSelect]=\"field.closeOnSelect\"\r\n [disabled]=\"field.disabled\"\r\n [hideSelectedItems]=\"field.hideSelectedItems\"\r\n [vocabularyType]=\"field.vocabularyType\"\r\n [formControlName]=\"field.formControlName\"\r\n >\r\n </app-dynamic-form-vocabulary-item>\r\n </div>\r\n\r\n <!-- <div class=\"single-field mb-3\" *ngIf=\"field.type === 'department-selector'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate }}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <app-dynamic-form-department\r\n [formControlName]=\"field.formControlName\"\r\n [placeholder]=\"field.placeholder\"\r\n [pp_departmentNestedTree]=\"field.pp_departmentNestedTree\"\r\n [pp_departmentTree]=\"field.pp_departmentTree\"\r\n [customPrefix]=\"field.customPrefix\"\r\n [customParentProperty]=\"field.customParentProperty\"\r\n [useCustomAddEditAction]=\"field.useCustomAddEditAction\"\r\n >\r\n </app-dynamic-form-department>\r\n </div> -->\r\n\r\n <div\r\n class=\"single-field mb-3\"\r\n *ngIf=\"field.type === 'translated-vocabulary'\"\r\n >\r\n <app-translated-vocabulary-select\r\n [label]=\"field.label\"\r\n [arbBindLabel]=\"field.arbBindLabel\"\r\n [engBindLabel]=\"field.engBindLabel\"\r\n [bindValue]=\"field.bindValue\"\r\n placeholder=\"{{ field.placeholder | translate }}\"\r\n [multiple]=\"field.multiple\"\r\n [searchable]=\"field.searchable\"\r\n [closeOnSelect]=\"field.closeOnSelect\"\r\n [hideSelectedItems]=\"field.hideSelectedItems\"\r\n [formControlName]=\"field.formControlName\"\r\n [vocbularyId]=\"field.vocbularyId\"\r\n [useFilter]=\"field.useFilter\"\r\n [filter]=\"\r\n field.filter === 'agencyName'\r\n ? agencyNameFilter\r\n : field.filter === 'countryName'\r\n ? countryNameFilter\r\n : {}\r\n \"\r\n [params]=\"field.params || {}\"\r\n [getByDirectorySuggestion]=\"field.getByDirectorySuggestion\"\r\n >\r\n </app-translated-vocabulary-select>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [""], components: [{ type: i1.DynamicFormHijriDateitemComponent, selector: "cts-dynamic-form-hijri-dateitem", inputs: ["minHijri", "maxHijri", "minGreg", "maxGreg", "label", "isDisabled", "range", "vertical", "isReadOnly", "placeholder"], outputs: ["valueChanged"] }, { type: i2.DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }, { type: i3.TranslatedVocabularySelectComponent, selector: "app-translated-vocabulary-select", inputs: ["label", "bindValue", "arbBindLabel", "engBindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "clear", "filter", "useFilter", "vocbularyId", "mapingResponse", "params", "getByDirectorySuggestion"], outputs: ["onSelectItems"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.PermissionsDirective, selector: "[permission]", inputs: ["permission"] }, { type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i5.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { type: i5.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }], pipes: { "translate": i7.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
170
170
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFieldsRendererComponent, decorators: [{
171
171
  type: Component,
172
172
  args: [{
@@ -186,4 +186,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
186
186
  }], fields: [{
187
187
  type: Input
188
188
  }] } });
189
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZHMtcmVuZGVyZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZpZWxkcy1yZW5kZXJlci9keW5hbWljLWZpZWxkcy1yZW5kZXJlci9keW5hbWljLWZpZWxkcy1yZW5kZXJlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZmllbGRzLXJlbmRlcmVyL2R5bmFtaWMtZmllbGRzLXJlbmRlcmVyL2R5bmFtaWMtZmllbGRzLXJlbmRlcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsaUJBQWlCLEVBQUcsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFRN0UsTUFBTSxPQUFPLDhCQUE4QjtJQW9KekM7UUFoSlMsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUNiLFdBQU0sR0FBRztZQUNoQjtnQkFDRSxJQUFJLEVBQUcsTUFBTTtnQkFDYixLQUFLLEVBQUcseUJBQXlCO2dCQUNqQyxlQUFlLEVBQUcsU0FBUztnQkFDM0IsV0FBVyxFQUFHLHlCQUF5QjtnQkFDdkMsUUFBUSxFQUFHLElBQUk7Z0JBQ2YsVUFBVSxFQUFHLGVBQWU7YUFDN0I7WUFDRDtnQkFDRSxJQUFJLEVBQUcsTUFBTTtnQkFDYixLQUFLLEVBQUcsd0JBQXdCO2dCQUNoQyxlQUFlLEVBQUcsZ0JBQWdCO2dCQUNsQyxXQUFXLEVBQUcsd0JBQXdCO2dCQUN0QyxRQUFRLEVBQUcsS0FBSztnQkFDaEIsVUFBVSxFQUFHLGVBQWU7YUFDN0I7WUFDRDtnQkFDRSxJQUFJLEVBQUcsTUFBTTtn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Q0FBQyxDQUFDO2FBQ3BEO2lCQUFNLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxNQUFNLEVBQUU7Z0JBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUN4RTtTQUNGO0lBQ0gsQ0FBQzs7NEhBOUpVLDhCQUE4QjtnSEFBOUIsOEJBQThCLDJNQ1IzQyxpb0pBNEdBOzRGRHBHYSw4QkFBOEI7a0JBTjFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsV0FBVyxFQUFFLDBDQUEwQztvQkFDdkQsU0FBUyxFQUFFLENBQUMsMENBQTBDLENBQUM7b0JBQ3ZELGFBQWEsRUFBRyxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN2QzswRUFFVSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uICwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWR5bmFtaWMtZmllbGRzLXJlbmRlcmVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZHluYW1pYy1maWVsZHMtcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZmllbGRzLXJlbmRlcmVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbiA6IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNGaWVsZHNSZW5kZXJlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZm9ybTtcclxuICBASW5wdXQoKSBhZ2VuY3lOYW1lRmlsdGVyO1xyXG4gIEBJbnB1dCgpIGNvdW50cnlOYW1lRmlsdGVyO1xyXG4gIEBJbnB1dCgpIG1vZGUgPSBcImFkZFwiO1xyXG4gIEBJbnB1dCgpIGZpZWxkcyA9IFtcclxuICAgIHtcclxuICAgICAgdHlwZSA6ICd0ZXh0JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5ET0NVTUVOVF9TVUJKRUNUXCIsXHJcbiAgICAgIGZvcm1Db250cm9sTmFtZSA6IFwic3ViamVjdFwiLFxyXG4gICAgICBwbGFjZWhvbGRlciA6IFwiQ1JFQVRFLkRPQ1VNRU5UX1NVQkpFQ1RcIixcclxuICAgICAgcmVxdWlyZWQgOiB0cnVlLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdHlwZSA6ICd0ZXh0JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5ET0NVTUVOVF9OVU1CRVJcIixcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lIDogXCJkb2N1bWVudE51bWJlclwiLFxyXG4gICAgICBwbGFjZWhvbGRlciA6IFwiQ1JFQVRFLkRPQ1VNRU5UX05VTUJFUlwiLFxyXG4gICAgICByZXF1aXJlZCA6IGZhbHNlLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0eXBlIDogJ2RhdGUnLFxyXG4gICAgICBsYWJlbCA6IFwiQ1JFQVRFLkRPQ1VNRU5UX0RBVEVcIixcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lIDogXCJnZG9jdW1lbnREYXRlXCIsXHJcbiAgICAgIHBlcm1pc3Npb24gOiAnaXNIaWRkZW5GaWVsZCdcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHR5cGUgOiAnZHluYW1pYy12b2NhYnVsYXJ5JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5TQ1JFQ1lfTEVWRUxcIixcclxuICAgICAgYmluZExhYmVsIDogJ2xhYmVsJyxcclxuICAgICAgYmluZFZhbHVlIDogJ2lkJyxcclxuICAgICAgbXVsdGlwbGUgOiBmYWxzZSxcclxuICAgICAgc2VhcmNoYWJsZSA6IGZhbHNlLFxyXG4gICAgICBjbG9zZU9uU2VsZWN0IDogdHJ1ZSwgXHJcbiAgICAgIGhpZGVTZWxlY3RlZEl0ZW1zIDogZmFsc2UsXHJcbiAgICAgIGRpc2FibGVkIDogZmFsc2UsXHJcbiAgICAgIHZvY2FidWxhcnlUeXBlIDogJ1ZPQ19TZWNyZWN5TGV2ZWwnLFxyXG4gICAgICBmb3JtQ29udHJvbE5hbWUgOiBcInNlY3JlY3lMZXZlbFwiLFxyXG4gICAgICBwbGFjZWhvbGRlciA6IFwiVk9DQUJVTEFSWS5TRUxFQ1RfSVRFTVwiLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0eXBlIDogJ2R5bmFtaWMtdm9jYWJ1bGFyeScsXHJcbiAgICAgIGxhYmVsIDogXCJDUkVBVEUuSU1QT1JUQU5DRV9MRVZFTFwiLFxyXG4gICAgICBiaW5kTGFiZWwgOiAnbGFiZWwnLFxyXG4gICAgICBiaW5kVmFsdWUgOiAnaWQnLFxyXG4gICAgICBtdWx0aXBsZSA6IGZhbHNlLFxyXG4gICAgICBzZWFyY2hhYmxlIDogZmFsc2UsXHJcbiAgICAgIGNsb3NlT25TZWxlY3QgOiB0cnVlLCBcclxuICAgICAgZGlzYWJsZWQgOiBmYWxzZSxcclxuICAgICAgaGlkZVNlbGVjdGVkSXRlbXMgOiBmYWxzZSxcclxuICAgICAgdm9jYWJ1bGFyeVR5cGUgOiAnVk9DX0ltcG9ydGFuY2UnLFxyXG4gICAgICBmb3JtQ29udHJvbE5hbWUgOiBcImltcG9ydGFuY2VMZXZlbFwiLFxyXG4gICAgICBwbGFjZWhvbGRlciA6IFwiVk9DQUJVTEFSWS5TRUxFQ1RfSVRFTVwiLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0eXBlIDogJ2RlcGFydG1lbnQtc2VsZWN0b3InLFxyXG4gICAgICBsYWJlbCA6IFwiQ1JFQVRFLkRFUEFSVE1FTlRfQ09ERVwiLFxyXG4gICAgICBmb3JtQ29udHJvbE5hbWUgOiBcImRlcGFydG1lbnRDb2RlXCIsXHJcbiAgICAgIHBsYWNlaG9sZGVyIDogXCJwbGVhc2Ugc2VsZWN0IGRlcGFydG1lbnRcIixcclxuICAgICAgcHBfZGVwYXJ0bWVudE5lc3RlZFRyZWUgOiBcIlBQX09TX0RlcGFydG1lbnRzXCIsXHJcbiAgICAgIHBwX2RlcGFydG1lbnRUcmVlIDogXCJQUF9PU19EZXBhcnRtZW50c1wiLFxyXG4gICAgICBjdXN0b21QcmVmaXggOiBcIm9zZGVwdFwiLFxyXG4gICAgICBjdXN0b21QYXJlbnRQcm9wZXJ0eSA6IFwib3NkZXBhcnRtZW50X3BhcmVudERlcGFydG1lbnRDb2RlXCIsXHJcbiAgICAgIHVzZUN1c3RvbUFkZEVkaXRBY3Rpb24gOiB0cnVlLFxyXG4gICAgICByZXF1aXJlZCA6IGZhbHNlLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0eXBlIDogJ3RyYW5zbGF0ZWQtdm9jYWJ1bGFyeScsXHJcbiAgICAgIGxhYmVsIDogXCJDUkVBVEUuQUdFTkNZX0NBVEVHT1JZX0NPREVcIixcclxuICAgICAgYXJiQmluZExhYmVsIDogJ2xhYmVsX2FyJyxcclxuICAgICAgZW5nQmluZExhYmVsIDogXCJsYWJlbF9lblwiLFxyXG4gICAgICBiaW5kVmFsdWUgOiAnaWQnLFxyXG4gICAgICBtdWx0aXBsZSA6IGZhbHNlLFxyXG4gICAgICBzZWFyY2hhYmxlIDogZmFsc2UsXHJcbiAgICAgIGNsb3NlT25TZWxlY3QgOiB0cnVlLCBcclxuICAgICAgaGlkZVNlbGVjdGVkSXRlbXMgOiBmYWxzZSxcclxuICAgICAgdm9jYnVsYXJ5SWQgOiAnVk9DX0FnZW5jeUNhdGVnb3J5JyxcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lIDogXCJhZ2VuY3lDYXRlZ29yeUNvZGVcIixcclxuICAgICAgcGxhY2Vob2xkZXIgOiBcIlZPQ0FCVUxBUlkuU0VMRUNUX0lURU1cIixcclxuICAgICAgdXNlRmlsdGVyOiBmYWxzZSxcclxuICAgICAgZmlsdGVyIDogJycsXHJcbiAgICAgIHBlcm1pc3Npb24gOiAnaXNIaWRkZW5GaWVsZCdcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHR5cGUgOiAndHJhbnNsYXRlZC12b2NhYnVsYXJ5JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5BR0VOQ1lfTkFNRVwiLFxyXG4gICAgICBhcmJCaW5kTGFiZWwgOiAnbGFiZWxfYXInLFxyXG4gICAgICBlbmdCaW5kTGFiZWwgOiBcImxhYmVsX2VuXCIsXHJcbiAgICAgIGJpbmRWYWx1ZSA6ICdpZCcsXHJcbiAgICAgIG11bHRpcGxlIDogZmFsc2UsXHJcbiAgICAgIHNlYXJjaGFibGUgOiB0cnVlLFxyXG4gICAgICBjbG9zZU9uU2VsZWN0IDogdHJ1ZSwgXHJcbiAgICAgIGhpZGVTZWxlY3RlZEl0ZW1zIDogZmFsc2UsXHJcbiAgICAgIHZvY2J1bGFyeUlkIDogJ1ZPQ19BZ2VuY3knLFxyXG4gICAgICBmb3JtQ29udHJvbE5hbWUgOiBcImFnZW5jeU5hbWVcIixcclxuICAgICAgcGxhY2Vob2xkZXIgOiBcIlZPQ0FCVUxBUlkuU0VMRUNUX0lURU1cIixcclxuICAgICAgdXNlRmlsdGVyOiB0cnVlLFxyXG4gICAgICBmaWx0ZXIgOiAnYWdlbmN5TmFtZScsXHJcbiAgICAgIHBlcm1pc3Npb24gOiAnaXNIaWRkZW5GaWVsZCdcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHR5cGUgOiAndHJhbnNsYXRlZC12b2NhYnVsYXJ5JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5DT1VOVFJZX0NBVEVHT1JZX0NPREVcIixcclxuICAgICAgYXJiQmluZExhYmVsIDogJ2xhYmVsX2FyJyxcclxuICAgICAgZW5nQmluZExhYmVsIDogXCJsYWJlbF9lblwiLFxyXG4gICAgICBiaW5kVmFsdWUgOiAnaWQnLFxyXG4gICAgICBtdWx0aXBsZSA6IGZhbHNlLFxyXG4gICAgICBzZWFyY2hhYmxlIDogdHJ1ZSxcclxuICAgICAgY2xvc2VPblNlbGVjdCA6IHRydWUsIFxyXG4gICAgICBoaWRlU2VsZWN0ZWRJdGVtcyA6IGZhbHNlLFxyXG4gICAgICB2b2NidWxhcnlJZCA6ICdWT0NfQ291bnRyeUNhdGVnb3J5JyxcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lIDogXCJjb3VudHJ5Q2F0ZWdvcnlDb2RlXCIsXHJcbiAgICAgIHBsYWNlaG9sZGVyIDogXCJWT0NBQlVMQVJZLlNFTEVDVF9JVEVNXCIsXHJcbiAgICAgIHVzZUZpbHRlcjogZmFsc2UsXHJcbiAgICAgIGZpbHRlciA6ICcnLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0eXBlIDogJ3RyYW5zbGF0ZWQtdm9jYWJ1bGFyeScsXHJcbiAgICAgIGxhYmVsIDogXCJDUkVBVEUuQ09VTlRSWV9OQU1FXCIsXHJcbiAgICAgIGFyYkJpbmRMYWJlbCA6ICdsYWJlbF9hcicsXHJcbiAgICAgIGVuZ0JpbmRMYWJlbCA6IFwibGFiZWxfZW5cIixcclxuICAgICAgYmluZFZhbHVlIDogJ2lkJyxcclxuICAgICAgbXVsdGlwbGUgOiBmYWxzZSxcclxuICAgICAgc2VhcmNoYWJsZSA6IHRydWUsXHJcbiAgICAgIGNsb3NlT25TZWxlY3QgOiB0cnVlLCBcclxuICAgICAgaGlkZVNlbGVjdGVkSXRlbXMgOiBmYWxzZSxcclxuICAgICAgdm9jYnVsYXJ5SWQgOiAnVk9DX0NvdW50cnknLFxyXG4gICAgICBmb3JtQ29udHJvbE5hbWUgOiBcImNvdW50cnlOYW1lXCIsXHJcbiAgICAgIHBsYWNlaG9sZGVyIDogXCJWT0NBQlVMQVJZLlNFTEVDVF9JVEVNXCIsXHJcbiAgICAgIHVzZUZpbHRlcjogdHJ1ZSxcclxuICAgICAgZmlsdGVyIDogJ2NvdW50cnlOYW1lJyxcclxuICAgICAgcGVybWlzc2lvbiA6ICdpc0hpZGRlbkZpZWxkJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdHlwZSA6ICd0ZXh0JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5SRU1BUktTXCIsXHJcbiAgICAgIGZvcm1Db250cm9sTmFtZSA6IFwicmVtYXJrc1wiLFxyXG4gICAgICBwbGFjZWhvbGRlciA6IFwiQ1JFQVRFLlJFTUFSS1NcIixcclxuICAgICAgcmVxdWlyZWQgOiBmYWxzZSxcclxuICAgICAgcGVybWlzc2lvbiA6ICdpc0hpZGRlbkZpZWxkJ1xyXG4gICAgfVxyXG4gIF07XHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZih0aGlzLmZpZWxkcy5sZW5ndGggJiYgdGhpcy5mb3JtKSB7XHJcbiAgICAgIGlmICh0aGlzLm1vZGUgPT09IFwiYWRkXCIpIHtcclxuICAgICAgICB0aGlzLmZvcm0uZ2V0KFwic2VjcmVjeUxldmVsXCIpLnBhdGNoVmFsdWUoXCJOb3JtYWxcIik7XHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5tb2RlID09PSBcImVkaXRcIikge1xyXG4gICAgICAgIHRoaXMuZm9ybS5nZXQoXCJzZWNyZWN5TGV2ZWxcIikucGF0Y2hWYWx1ZSh0aGlzLmZvcm0udmFsdWUuc2VjcmVjeUxldmVsKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IFtmb3JtR3JvdXBdPVwiZm9ybVwiICpuZ0lmPVwiZm9ybVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJyZW5kZXJlci1jb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJmaWVsZC1jb250YWluZXJcIiAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZmllbGRzXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAqcGVybWlzc2lvbj1cInsgbmFtZTogZmllbGQucGVybWlzc2lvbiwgZW50aXR5OiBmaWVsZC5mb3JtQ29udHJvbE5hbWUgfVwiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2luZ2xlLWZpZWxkIG1iLTNcIiAqbmdJZj1cImZpZWxkLnR5cGUgPT09ICd0ZXh0J1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsLXN0eWxlXCI+XHJcbiAgICAgICAgICAgIHt7IGZpZWxkLmxhYmVsIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1yZWQtNTAwXCIgKm5nSWY9XCJmaWVsZC5yZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICBjbGFzcz1cImZpZWxkLXN0eWxlXCJcclxuICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxyXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIiB7eyBmaWVsZC5wbGFjZWhvbGRlciB8IHRyYW5zbGF0ZSB9fVwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzaW5nbGUtZmllbGQgbWItM1wiICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ251bWJlcidcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbC1zdHlsZVwiPlxyXG4gICAgICAgICAgICB7eyBmaWVsZC5sYWJlbCB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtcmVkLTUwMFwiICpuZ0lmPVwiZmllbGQucmVxdWlyZWRcIj4qPC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgbWluPVwiMVwiXHJcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImZpZWxkLXN0eWxlXCJcclxuICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxyXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cIiB7eyBmaWVsZC5wbGFjZWhvbGRlciB8IHRyYW5zbGF0ZSB9fVwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzaW5nbGUtZmllbGQgbWItM1wiICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ2RhdGUnXCI+XHJcbiAgICAgICAgICA8Y3RzLWR5bmFtaWMtZm9ybS1oaWpyaS1kYXRlaXRlbVxyXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXHJcbiAgICAgICAgICAgIFtsYWJlbF09XCJmaWVsZC5sYWJlbFwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2N0cy1keW5hbWljLWZvcm0taGlqcmktZGF0ZWl0ZW0+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgIGNsYXNzPVwic2luZ2xlLWZpZWxkIG1iLTNcIlxyXG4gICAgICAgICAgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnZHluYW1pYy12b2NhYnVsYXJ5J1wiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPGFwcC1keW5hbWljLWZvcm0tdm9jYWJ1bGFyeS1pdGVtXHJcbiAgICAgICAgICAgIFtsYWJlbF09XCJmaWVsZC5sYWJlbFwiXHJcbiAgICAgICAgICAgIFtiaW5kTGFiZWxdPVwiZmllbGQuYmluZExhYmVsXCJcclxuICAgICAgICAgICAgW2JpbmRWYWx1ZV09XCJmaWVsZC5iaW5kVmFsdWVcIlxyXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7IGZpZWxkLnBsYWNlaG9sZGVyIHwgdHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgW211bHRpcGxlXT1cImZpZWxkLm11bHRpcGxlXCJcclxuICAgICAgICAgICAgW3NlYXJjaGFibGVdPVwiZmllbGQuc2VhcmNoYWJsZVwiXHJcbiAgICAgICAgICAgIFtjbG9zZU9uU2VsZWN0XT1cImZpZWxkLmNsb3NlT25TZWxlY3RcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQuZGlzYWJsZWRcIlxyXG4gICAgICAgICAgICBbaGlkZVNlbGVjdGVkSXRlbXNdPVwiZmllbGQuaGlkZVNlbGVjdGVkSXRlbXNcIlxyXG4gICAgICAgICAgICBbdm9jYWJ1bGFyeVR5cGVdPVwiZmllbGQudm9jYWJ1bGFyeVR5cGVcIlxyXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2FwcC1keW5hbWljLWZvcm0tdm9jYWJ1bGFyeS1pdGVtPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJzaW5nbGUtZmllbGQgbWItM1wiICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ2RlcGFydG1lbnQtc2VsZWN0b3InXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsLXN0eWxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGZpZWxkLmxhYmVsIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1yZWQtNTAwXCIgKm5nSWY9XCJmaWVsZC5yZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGFwcC1keW5hbWljLWZvcm0tZGVwYXJ0bWVudFxyXG4gICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtwcF9kZXBhcnRtZW50TmVzdGVkVHJlZV09XCJmaWVsZC5wcF9kZXBhcnRtZW50TmVzdGVkVHJlZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BwX2RlcGFydG1lbnRUcmVlXT1cImZpZWxkLnBwX2RlcGFydG1lbnRUcmVlXCJcclxuICAgICAgICAgICAgICAgICAgICBbY3VzdG9tUHJlZml4XT1cImZpZWxkLmN1c3RvbVByZWZpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2N1c3RvbVBhcmVudFByb3BlcnR5XT1cImZpZWxkLmN1c3RvbVBhcmVudFByb3BlcnR5XCJcclxuICAgICAgICAgICAgICAgICAgICBbdXNlQ3VzdG9tQWRkRWRpdEFjdGlvbl09XCJmaWVsZC51c2VDdXN0b21BZGRFZGl0QWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICA8L2FwcC1keW5hbWljLWZvcm0tZGVwYXJ0bWVudD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuXHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJzaW5nbGUtZmllbGQgbWItM1wiXHJcbiAgICAgICAgICAqbmdJZj1cImZpZWxkLnR5cGUgPT09ICd0cmFuc2xhdGVkLXZvY2FidWxhcnknXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8YXBwLXRyYW5zbGF0ZWQtdm9jYWJ1bGFyeS1zZWxlY3RcclxuICAgICAgICAgICAgW2xhYmVsXT1cImZpZWxkLmxhYmVsXCJcclxuICAgICAgICAgICAgW2FyYkJpbmRMYWJlbF09XCJmaWVsZC5hcmJCaW5kTGFiZWxcIlxyXG4gICAgICAgICAgICBbZW5nQmluZExhYmVsXT1cImZpZWxkLmVuZ0JpbmRMYWJlbFwiXHJcbiAgICAgICAgICAgIFtiaW5kVmFsdWVdPVwiZmllbGQuYmluZFZhbHVlXCJcclxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyBmaWVsZC5wbGFjZWhvbGRlciB8IHRyYW5zbGF0ZSB9fVwiXHJcbiAgICAgICAgICAgIFttdWx0aXBsZV09XCJmaWVsZC5tdWx0aXBsZVwiXHJcbiAgICAgICAgICAgIFtzZWFyY2hhYmxlXT1cImZpZWxkLnNlYXJjaGFibGVcIlxyXG4gICAgICAgICAgICBbY2xvc2VPblNlbGVjdF09XCJmaWVsZC5jbG9zZU9uU2VsZWN0XCJcclxuICAgICAgICAgICAgW2hpZGVTZWxlY3RlZEl0ZW1zXT1cImZpZWxkLmhpZGVTZWxlY3RlZEl0ZW1zXCJcclxuICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxyXG4gICAgICAgICAgICBbdm9jYnVsYXJ5SWRdPVwiZmllbGQudm9jYnVsYXJ5SWRcIlxyXG4gICAgICAgICAgICBbdXNlRmlsdGVyXT1cImZpZWxkLnVzZUZpbHRlclwiXHJcbiAgICAgICAgICAgIFtmaWx0ZXJdPVwiXHJcbiAgICAgICAgICAgICAgZmllbGQuZmlsdGVyID09PSAnYWdlbmN5TmFtZSdcclxuICAgICAgICAgICAgICAgID8gYWdlbmN5TmFtZUZpbHRlclxyXG4gICAgICAgICAgICAgICAgOiBmaWVsZC5maWx0ZXIgPT09ICdjb3VudHJ5TmFtZSdcclxuICAgICAgICAgICAgICAgID8gY291bnRyeU5hbWVGaWx0ZXJcclxuICAgICAgICAgICAgICAgIDoge31cclxuICAgICAgICAgICAgXCJcclxuICAgICAgICAgICAgW3BhcmFtc109XCJmaWVsZC5wYXJhbXMgfHwge31cIlxyXG4gICAgICAgICAgICBbZ2V0QnlEaXJlY3RvcnlTdWdnZXN0aW9uXT1cImZpZWxkLmdldEJ5RGlyZWN0b3J5U3VnZ2VzdGlvblwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8L2FwcC10cmFuc2xhdGVkLXZvY2FidWxhcnktc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
189
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZHMtcmVuZGVyZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZpZWxkcy1yZW5kZXJlci9keW5hbWljLWZpZWxkcy1yZW5kZXJlci9keW5hbWljLWZpZWxkcy1yZW5kZXJlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZmllbGRzLXJlbmRlcmVyL2R5bmFtaWMtZmllbGRzLXJlbmRlcmVyL2R5bmFtaWMtZmllbGRzLXJlbmRlcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsaUJBQWlCLEVBQUcsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFRN0UsTUFBTSxPQUFPLDhCQUE4QjtJQW9KekM7UUFoSlMsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUNiLFdBQU0sR0FBRztZQUNoQjtnQkFDRSxJQUFJLEVBQUcsTUFBTTtnQkFDYixLQUFLLEVBQUcseUJBQXlCO2dCQUNqQyxlQUFlLEVBQUcsU0FBUztnQkFDM0IsV0FBVyxFQUFHLHlCQUF5QjtnQkFDdkMsUUFBUSxFQUFHLElBQUk7Z0JBQ2YsVUFBVSxFQUFHLGVBQWU7YUFDN0I7WUFDRDtnQkFDRSxJQUFJLEVBQUcsTUFBTTtnQkFDYixLQUFLLEVBQUcsd0JBQXdCO2dCQUNoQyxlQUFlLEVBQUcsZ0JBQWdCO2dCQUNsQyxXQUFXLEVBQUcsd0JBQXdCO2dCQUN0QyxRQUFRLEVBQUcsS0FBSztnQkFDaEIsVUFBVSxFQUFHLGVBQWU7YUFDN0I7WUFDRDtnQkFDRSxJQUFJLEVBQUcsTUFBTTtn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Q0FBQyxDQUFDO2FBQ3BEO2lCQUFNLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxNQUFNLEVBQUU7Z0JBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQzthQUN4RTtTQUNGO0lBQ0gsQ0FBQzs7NEhBOUpVLDhCQUE4QjtnSEFBOUIsOEJBQThCLDJNQ1IzQyxtckpBNkdBOzRGRHJHYSw4QkFBOEI7a0JBTjFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsV0FBVyxFQUFFLDBDQUEwQztvQkFDdkQsU0FBUyxFQUFFLENBQUMsMENBQTBDLENBQUM7b0JBQ3ZELGFBQWEsRUFBRyxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN2QzswRUFFVSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uICwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWR5bmFtaWMtZmllbGRzLXJlbmRlcmVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZHluYW1pYy1maWVsZHMtcmVuZGVyZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZmllbGRzLXJlbmRlcmVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbiA6IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIER5bmFtaWNGaWVsZHNSZW5kZXJlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZm9ybTtcclxuICBASW5wdXQoKSBhZ2VuY3lOYW1lRmlsdGVyO1xyXG4gIEBJbnB1dCgpIGNvdW50cnlOYW1lRmlsdGVyO1xyXG4gIEBJbnB1dCgpIG1vZGUgPSBcImFkZFwiO1xyXG4gIEBJbnB1dCgpIGZpZWxkcyA9IFtcclxuICAgIHtcclxuICAgICAgdHlwZSA6ICd0ZXh0JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5ET0NVTUVOVF9TVUJKRUNUXCIsXHJcbiAgICAgIGZvcm1Db250cm9sTmFtZSA6IFwic3ViamVjdFwiLFxyXG4gICAgICBwbGFjZWhvbGRlciA6IFwiQ1JFQVRFLkRPQ1VNRU5UX1NVQkpFQ1RcIixcclxuICAgICAgcmVxdWlyZWQgOiB0cnVlLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdHlwZSA6ICd0ZXh0JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5ET0NVTUVOVF9OVU1CRVJcIixcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lIDogXCJkb2N1bWVudE51bWJlclwiLFxyXG4gICAgICBwbGFjZWhvbGRlciA6IFwiQ1JFQVRFLkRPQ1VNRU5UX05VTUJFUlwiLFxyXG4gICAgICByZXF1aXJlZCA6IGZhbHNlLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0eXBlIDogJ2RhdGUnLFxyXG4gICAgICBsYWJlbCA6IFwiQ1JFQVRFLkRPQ1VNRU5UX0RBVEVcIixcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lIDogXCJnZG9jdW1lbnREYXRlXCIsXHJcbiAgICAgIHBlcm1pc3Npb24gOiAnaXNIaWRkZW5GaWVsZCdcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHR5cGUgOiAnZHluYW1pYy12b2NhYnVsYXJ5JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5TQ1JFQ1lfTEVWRUxcIixcclxuICAgICAgYmluZExhYmVsIDogJ2xhYmVsJyxcclxuICAgICAgYmluZFZhbHVlIDogJ2lkJyxcclxuICAgICAgbXVsdGlwbGUgOiBmYWxzZSxcclxuICAgICAgc2VhcmNoYWJsZSA6IGZhbHNlLFxyXG4gICAgICBjbG9zZU9uU2VsZWN0IDogdHJ1ZSwgXHJcbiAgICAgIGhpZGVTZWxlY3RlZEl0ZW1zIDogZmFsc2UsXHJcbiAgICAgIGRpc2FibGVkIDogZmFsc2UsXHJcbiAgICAgIHZvY2FidWxhcnlUeXBlIDogJ1ZPQ19TZWNyZWN5TGV2ZWwnLFxyXG4gICAgICBmb3JtQ29udHJvbE5hbWUgOiBcInNlY3JlY3lMZXZlbFwiLFxyXG4gICAgICBwbGFjZWhvbGRlciA6IFwiVk9DQUJVTEFSWS5TRUxFQ1RfSVRFTVwiLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0eXBlIDogJ2R5bmFtaWMtdm9jYWJ1bGFyeScsXHJcbiAgICAgIGxhYmVsIDogXCJDUkVBVEUuSU1QT1JUQU5DRV9MRVZFTFwiLFxyXG4gICAgICBiaW5kTGFiZWwgOiAnbGFiZWwnLFxyXG4gICAgICBiaW5kVmFsdWUgOiAnaWQnLFxyXG4gICAgICBtdWx0aXBsZSA6IGZhbHNlLFxyXG4gICAgICBzZWFyY2hhYmxlIDogZmFsc2UsXHJcbiAgICAgIGNsb3NlT25TZWxlY3QgOiB0cnVlLCBcclxuICAgICAgZGlzYWJsZWQgOiBmYWxzZSxcclxuICAgICAgaGlkZVNlbGVjdGVkSXRlbXMgOiBmYWxzZSxcclxuICAgICAgdm9jYWJ1bGFyeVR5cGUgOiAnVk9DX0ltcG9ydGFuY2UnLFxyXG4gICAgICBmb3JtQ29udHJvbE5hbWUgOiBcImltcG9ydGFuY2VMZXZlbFwiLFxyXG4gICAgICBwbGFjZWhvbGRlciA6IFwiVk9DQUJVTEFSWS5TRUxFQ1RfSVRFTVwiLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0eXBlIDogJ2RlcGFydG1lbnQtc2VsZWN0b3InLFxyXG4gICAgICBsYWJlbCA6IFwiQ1JFQVRFLkRFUEFSVE1FTlRfQ09ERVwiLFxyXG4gICAgICBmb3JtQ29udHJvbE5hbWUgOiBcImRlcGFydG1lbnRDb2RlXCIsXHJcbiAgICAgIHBsYWNlaG9sZGVyIDogXCJwbGVhc2Ugc2VsZWN0IGRlcGFydG1lbnRcIixcclxuICAgICAgcHBfZGVwYXJ0bWVudE5lc3RlZFRyZWUgOiBcIlBQX09TX0RlcGFydG1lbnRzXCIsXHJcbiAgICAgIHBwX2RlcGFydG1lbnRUcmVlIDogXCJQUF9PU19EZXBhcnRtZW50c1wiLFxyXG4gICAgICBjdXN0b21QcmVmaXggOiBcIm9zZGVwdFwiLFxyXG4gICAgICBjdXN0b21QYXJlbnRQcm9wZXJ0eSA6IFwib3NkZXBhcnRtZW50X3BhcmVudERlcGFydG1lbnRDb2RlXCIsXHJcbiAgICAgIHVzZUN1c3RvbUFkZEVkaXRBY3Rpb24gOiB0cnVlLFxyXG4gICAgICByZXF1aXJlZCA6IGZhbHNlLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0eXBlIDogJ3RyYW5zbGF0ZWQtdm9jYWJ1bGFyeScsXHJcbiAgICAgIGxhYmVsIDogXCJDUkVBVEUuQUdFTkNZX0NBVEVHT1JZX0NPREVcIixcclxuICAgICAgYXJiQmluZExhYmVsIDogJ2xhYmVsX2FyJyxcclxuICAgICAgZW5nQmluZExhYmVsIDogXCJsYWJlbF9lblwiLFxyXG4gICAgICBiaW5kVmFsdWUgOiAnaWQnLFxyXG4gICAgICBtdWx0aXBsZSA6IGZhbHNlLFxyXG4gICAgICBzZWFyY2hhYmxlIDogZmFsc2UsXHJcbiAgICAgIGNsb3NlT25TZWxlY3QgOiB0cnVlLCBcclxuICAgICAgaGlkZVNlbGVjdGVkSXRlbXMgOiBmYWxzZSxcclxuICAgICAgdm9jYnVsYXJ5SWQgOiAnVk9DX0FnZW5jeUNhdGVnb3J5JyxcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lIDogXCJhZ2VuY3lDYXRlZ29yeUNvZGVcIixcclxuICAgICAgcGxhY2Vob2xkZXIgOiBcIlZPQ0FCVUxBUlkuU0VMRUNUX0lURU1cIixcclxuICAgICAgdXNlRmlsdGVyOiBmYWxzZSxcclxuICAgICAgZmlsdGVyIDogJycsXHJcbiAgICAgIHBlcm1pc3Npb24gOiAnaXNIaWRkZW5GaWVsZCdcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHR5cGUgOiAndHJhbnNsYXRlZC12b2NhYnVsYXJ5JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5BR0VOQ1lfTkFNRVwiLFxyXG4gICAgICBhcmJCaW5kTGFiZWwgOiAnbGFiZWxfYXInLFxyXG4gICAgICBlbmdCaW5kTGFiZWwgOiBcImxhYmVsX2VuXCIsXHJcbiAgICAgIGJpbmRWYWx1ZSA6ICdpZCcsXHJcbiAgICAgIG11bHRpcGxlIDogZmFsc2UsXHJcbiAgICAgIHNlYXJjaGFibGUgOiB0cnVlLFxyXG4gICAgICBjbG9zZU9uU2VsZWN0IDogdHJ1ZSwgXHJcbiAgICAgIGhpZGVTZWxlY3RlZEl0ZW1zIDogZmFsc2UsXHJcbiAgICAgIHZvY2J1bGFyeUlkIDogJ1ZPQ19BZ2VuY3knLFxyXG4gICAgICBmb3JtQ29udHJvbE5hbWUgOiBcImFnZW5jeU5hbWVcIixcclxuICAgICAgcGxhY2Vob2xkZXIgOiBcIlZPQ0FCVUxBUlkuU0VMRUNUX0lURU1cIixcclxuICAgICAgdXNlRmlsdGVyOiB0cnVlLFxyXG4gICAgICBmaWx0ZXIgOiAnYWdlbmN5TmFtZScsXHJcbiAgICAgIHBlcm1pc3Npb24gOiAnaXNIaWRkZW5GaWVsZCdcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHR5cGUgOiAndHJhbnNsYXRlZC12b2NhYnVsYXJ5JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5DT1VOVFJZX0NBVEVHT1JZX0NPREVcIixcclxuICAgICAgYXJiQmluZExhYmVsIDogJ2xhYmVsX2FyJyxcclxuICAgICAgZW5nQmluZExhYmVsIDogXCJsYWJlbF9lblwiLFxyXG4gICAgICBiaW5kVmFsdWUgOiAnaWQnLFxyXG4gICAgICBtdWx0aXBsZSA6IGZhbHNlLFxyXG4gICAgICBzZWFyY2hhYmxlIDogdHJ1ZSxcclxuICAgICAgY2xvc2VPblNlbGVjdCA6IHRydWUsIFxyXG4gICAgICBoaWRlU2VsZWN0ZWRJdGVtcyA6IGZhbHNlLFxyXG4gICAgICB2b2NidWxhcnlJZCA6ICdWT0NfQ291bnRyeUNhdGVnb3J5JyxcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lIDogXCJjb3VudHJ5Q2F0ZWdvcnlDb2RlXCIsXHJcbiAgICAgIHBsYWNlaG9sZGVyIDogXCJWT0NBQlVMQVJZLlNFTEVDVF9JVEVNXCIsXHJcbiAgICAgIHVzZUZpbHRlcjogZmFsc2UsXHJcbiAgICAgIGZpbHRlciA6ICcnLFxyXG4gICAgICBwZXJtaXNzaW9uIDogJ2lzSGlkZGVuRmllbGQnXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0eXBlIDogJ3RyYW5zbGF0ZWQtdm9jYWJ1bGFyeScsXHJcbiAgICAgIGxhYmVsIDogXCJDUkVBVEUuQ09VTlRSWV9OQU1FXCIsXHJcbiAgICAgIGFyYkJpbmRMYWJlbCA6ICdsYWJlbF9hcicsXHJcbiAgICAgIGVuZ0JpbmRMYWJlbCA6IFwibGFiZWxfZW5cIixcclxuICAgICAgYmluZFZhbHVlIDogJ2lkJyxcclxuICAgICAgbXVsdGlwbGUgOiBmYWxzZSxcclxuICAgICAgc2VhcmNoYWJsZSA6IHRydWUsXHJcbiAgICAgIGNsb3NlT25TZWxlY3QgOiB0cnVlLCBcclxuICAgICAgaGlkZVNlbGVjdGVkSXRlbXMgOiBmYWxzZSxcclxuICAgICAgdm9jYnVsYXJ5SWQgOiAnVk9DX0NvdW50cnknLFxyXG4gICAgICBmb3JtQ29udHJvbE5hbWUgOiBcImNvdW50cnlOYW1lXCIsXHJcbiAgICAgIHBsYWNlaG9sZGVyIDogXCJWT0NBQlVMQVJZLlNFTEVDVF9JVEVNXCIsXHJcbiAgICAgIHVzZUZpbHRlcjogdHJ1ZSxcclxuICAgICAgZmlsdGVyIDogJ2NvdW50cnlOYW1lJyxcclxuICAgICAgcGVybWlzc2lvbiA6ICdpc0hpZGRlbkZpZWxkJ1xyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdHlwZSA6ICd0ZXh0JyxcclxuICAgICAgbGFiZWwgOiBcIkNSRUFURS5SRU1BUktTXCIsXHJcbiAgICAgIGZvcm1Db250cm9sTmFtZSA6IFwicmVtYXJrc1wiLFxyXG4gICAgICBwbGFjZWhvbGRlciA6IFwiQ1JFQVRFLlJFTUFSS1NcIixcclxuICAgICAgcmVxdWlyZWQgOiBmYWxzZSxcclxuICAgICAgcGVybWlzc2lvbiA6ICdpc0hpZGRlbkZpZWxkJ1xyXG4gICAgfVxyXG4gIF07XHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZih0aGlzLmZpZWxkcy5sZW5ndGggJiYgdGhpcy5mb3JtKSB7XHJcbiAgICAgIGlmICh0aGlzLm1vZGUgPT09IFwiYWRkXCIpIHtcclxuICAgICAgICB0aGlzLmZvcm0uZ2V0KFwic2VjcmVjeUxldmVsXCIpLnBhdGNoVmFsdWUoXCJOb3JtYWxcIik7XHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5tb2RlID09PSBcImVkaXRcIikge1xyXG4gICAgICAgIHRoaXMuZm9ybS5nZXQoXCJzZWNyZWN5TGV2ZWxcIikucGF0Y2hWYWx1ZSh0aGlzLmZvcm0udmFsdWUuc2VjcmVjeUxldmVsKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IFtmb3JtR3JvdXBdPVwiZm9ybVwiICpuZ0lmPVwiZm9ybVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJyZW5kZXJlci1jb250YWluZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJmaWVsZC1jb250YWluZXJcIiAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZmllbGRzXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAqcGVybWlzc2lvbj1cInsgbmFtZTogZmllbGQucGVybWlzc2lvbiwgZW50aXR5OiBmaWVsZC5mb3JtQ29udHJvbE5hbWUgfVwiXHJcbiAgICAgID5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2luZ2xlLWZpZWxkIG1iLTNcIiAqbmdJZj1cImZpZWxkLnR5cGUgPT09ICd0ZXh0J1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsLXN0eWxlXCI+XHJcbiAgICAgICAgICAgIHt7IGZpZWxkLmxhYmVsIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1yZWQtNTAwXCIgKm5nSWY9XCJmaWVsZC5yZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICBjbGFzcz1cImZpZWxkLXN0eWxlXCJcclxuICAgICAgICAgICAgaWQ9XCJ7eyBmaWVsZC5mb3JtQ29udHJvbE5hbWUgfX1cIlxyXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiIHt7IGZpZWxkLnBsYWNlaG9sZGVyIHwgdHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInNpbmdsZS1maWVsZCBtYi0zXCIgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnbnVtYmVyJ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsLXN0eWxlXCI+XHJcbiAgICAgICAgICAgIHt7IGZpZWxkLmxhYmVsIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1yZWQtNTAwXCIgKm5nSWY9XCJmaWVsZC5yZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICBtaW49XCIxXCJcclxuICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiZmllbGQtc3R5bGVcIlxyXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiIHt7IGZpZWxkLnBsYWNlaG9sZGVyIHwgdHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInNpbmdsZS1maWVsZCBtYi0zXCIgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnZGF0ZSdcIj5cclxuICAgICAgICAgIDxjdHMtZHluYW1pYy1mb3JtLWhpanJpLWRhdGVpdGVtXHJcbiAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCJcclxuICAgICAgICAgICAgW2xhYmVsXT1cImZpZWxkLmxhYmVsXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDwvY3RzLWR5bmFtaWMtZm9ybS1oaWpyaS1kYXRlaXRlbT5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgY2xhc3M9XCJzaW5nbGUtZmllbGQgbWItM1wiXHJcbiAgICAgICAgICAqbmdJZj1cImZpZWxkLnR5cGUgPT09ICdkeW5hbWljLXZvY2FidWxhcnknXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8YXBwLWR5bmFtaWMtZm9ybS12b2NhYnVsYXJ5LWl0ZW1cclxuICAgICAgICAgICAgW2xhYmVsXT1cImZpZWxkLmxhYmVsXCJcclxuICAgICAgICAgICAgW2JpbmRMYWJlbF09XCJmaWVsZC5iaW5kTGFiZWxcIlxyXG4gICAgICAgICAgICBbYmluZFZhbHVlXT1cImZpZWxkLmJpbmRWYWx1ZVwiXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgZmllbGQucGxhY2Vob2xkZXIgfCB0cmFuc2xhdGUgfX1cIlxyXG4gICAgICAgICAgICBbbXVsdGlwbGVdPVwiZmllbGQubXVsdGlwbGVcIlxyXG4gICAgICAgICAgICBbc2VhcmNoYWJsZV09XCJmaWVsZC5zZWFyY2hhYmxlXCJcclxuICAgICAgICAgICAgW2Nsb3NlT25TZWxlY3RdPVwiZmllbGQuY2xvc2VPblNlbGVjdFwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmaWVsZC5kaXNhYmxlZFwiXHJcbiAgICAgICAgICAgIFtoaWRlU2VsZWN0ZWRJdGVtc109XCJmaWVsZC5oaWRlU2VsZWN0ZWRJdGVtc1wiXHJcbiAgICAgICAgICAgIFt2b2NhYnVsYXJ5VHlwZV09XCJmaWVsZC52b2NhYnVsYXJ5VHlwZVwiXHJcbiAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDwvYXBwLWR5bmFtaWMtZm9ybS12b2NhYnVsYXJ5LWl0ZW0+XHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cInNpbmdsZS1maWVsZCBtYi0zXCIgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnZGVwYXJ0bWVudC1zZWxlY3RvcidcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWwtc3R5bGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAge3sgZmllbGQubGFiZWwgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXJlZC01MDBcIiAqbmdJZj1cImZpZWxkLnJlcXVpcmVkXCI+Kjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8YXBwLWR5bmFtaWMtZm9ybS1kZXBhcnRtZW50XHJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BwX2RlcGFydG1lbnROZXN0ZWRUcmVlXT1cImZpZWxkLnBwX2RlcGFydG1lbnROZXN0ZWRUcmVlXCJcclxuICAgICAgICAgICAgICAgICAgICBbcHBfZGVwYXJ0bWVudFRyZWVdPVwiZmllbGQucHBfZGVwYXJ0bWVudFRyZWVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjdXN0b21QcmVmaXhdPVwiZmllbGQuY3VzdG9tUHJlZml4XCJcclxuICAgICAgICAgICAgICAgICAgICBbY3VzdG9tUGFyZW50UHJvcGVydHldPVwiZmllbGQuY3VzdG9tUGFyZW50UHJvcGVydHlcIlxyXG4gICAgICAgICAgICAgICAgICAgIFt1c2VDdXN0b21BZGRFZGl0QWN0aW9uXT1cImZpZWxkLnVzZUN1c3RvbUFkZEVkaXRBY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDwvYXBwLWR5bmFtaWMtZm9ybS1kZXBhcnRtZW50PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG5cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICBjbGFzcz1cInNpbmdsZS1maWVsZCBtYi0zXCJcclxuICAgICAgICAgICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ3RyYW5zbGF0ZWQtdm9jYWJ1bGFyeSdcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxhcHAtdHJhbnNsYXRlZC12b2NhYnVsYXJ5LXNlbGVjdFxyXG4gICAgICAgICAgICBbbGFiZWxdPVwiZmllbGQubGFiZWxcIlxyXG4gICAgICAgICAgICBbYXJiQmluZExhYmVsXT1cImZpZWxkLmFyYkJpbmRMYWJlbFwiXHJcbiAgICAgICAgICAgIFtlbmdCaW5kTGFiZWxdPVwiZmllbGQuZW5nQmluZExhYmVsXCJcclxuICAgICAgICAgICAgW2JpbmRWYWx1ZV09XCJmaWVsZC5iaW5kVmFsdWVcIlxyXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7IGZpZWxkLnBsYWNlaG9sZGVyIHwgdHJhbnNsYXRlIH19XCJcclxuICAgICAgICAgICAgW211bHRpcGxlXT1cImZpZWxkLm11bHRpcGxlXCJcclxuICAgICAgICAgICAgW3NlYXJjaGFibGVdPVwiZmllbGQuc2VhcmNoYWJsZVwiXHJcbiAgICAgICAgICAgIFtjbG9zZU9uU2VsZWN0XT1cImZpZWxkLmNsb3NlT25TZWxlY3RcIlxyXG4gICAgICAgICAgICBbaGlkZVNlbGVjdGVkSXRlbXNdPVwiZmllbGQuaGlkZVNlbGVjdGVkSXRlbXNcIlxyXG4gICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXHJcbiAgICAgICAgICAgIFt2b2NidWxhcnlJZF09XCJmaWVsZC52b2NidWxhcnlJZFwiXHJcbiAgICAgICAgICAgIFt1c2VGaWx0ZXJdPVwiZmllbGQudXNlRmlsdGVyXCJcclxuICAgICAgICAgICAgW2ZpbHRlcl09XCJcclxuICAgICAgICAgICAgICBmaWVsZC5maWx0ZXIgPT09ICdhZ2VuY3lOYW1lJ1xyXG4gICAgICAgICAgICAgICAgPyBhZ2VuY3lOYW1lRmlsdGVyXHJcbiAgICAgICAgICAgICAgICA6IGZpZWxkLmZpbHRlciA9PT0gJ2NvdW50cnlOYW1lJ1xyXG4gICAgICAgICAgICAgICAgPyBjb3VudHJ5TmFtZUZpbHRlclxyXG4gICAgICAgICAgICAgICAgOiB7fVxyXG4gICAgICAgICAgICBcIlxyXG4gICAgICAgICAgICBbcGFyYW1zXT1cImZpZWxkLnBhcmFtcyB8fCB7fVwiXHJcbiAgICAgICAgICAgIFtnZXRCeURpcmVjdG9yeVN1Z2dlc3Rpb25dPVwiZmllbGQuZ2V0QnlEaXJlY3RvcnlTdWdnZXN0aW9uXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDwvYXBwLXRyYW5zbGF0ZWQtdm9jYWJ1bGFyeS1zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -1,20 +1,22 @@
1
- import { MAT_DIALOG_DATA } from "@angular/material/dialog";
2
- import { FormGroup, FormControl, Validators } from "@angular/forms";
3
- import { Component, Inject } from "@angular/core";
4
- import { take } from "rxjs/operators";
1
+ import { MAT_DIALOG_DATA } from '@angular/material/dialog';
2
+ import { FormGroup, FormControl, Validators } from '@angular/forms';
3
+ import { Component, Inject } from '@angular/core';
4
+ import { take, tap } from 'rxjs/operators';
5
+ import { BaseDialogComponent } from '../../../../shared/components/base/base-dialog.component';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "../../../../shared-services/publishing-document.service";
7
8
  import * as i2 from "@angular/material/dialog";
8
9
  import * as i3 from "../../../custom-toastr/services/custom-toastr.service";
9
10
  import * as i4 from "@ngx-translate/core";
10
- import * as i5 from "@ng-select/ng-select";
11
- import * as i6 from "@angular/material/icon";
12
- import * as i7 from "@angular/material/progress-spinner";
11
+ import * as i5 from "../../../../shared/components/nuxeo-dialog/nuxeo.dialog";
12
+ import * as i6 from "@ng-select/ng-select";
13
+ import * as i7 from "@angular/material/icon";
13
14
  import * as i8 from "@angular/forms";
14
15
  import * as i9 from "../../../../directive/rtl/set-rtl.directive";
15
16
  import * as i10 from "@angular/common";
16
- export class PublishDialogComponent {
17
- constructor(publishing, dialogRef, data, tosterService, translate) {
17
+ export class PublishDialogComponent extends BaseDialogComponent {
18
+ constructor(publishing, dialogRef, data, tosterService, translate, injector) {
19
+ super(injector);
18
20
  this.publishing = publishing;
19
21
  this.dialogRef = dialogRef;
20
22
  this.data = data;
@@ -25,44 +27,88 @@ export class PublishDialogComponent {
25
27
  this.startPublishing = false;
26
28
  this.renditionList = [
27
29
  {
28
- name: this.translate.instant("publishDocs.none"),
29
- value: "none",
30
+ name: this.translate.instant('publishDocs.none'),
31
+ value: 'none'
30
32
  },
31
33
  /*{
32
- name: this.translate.instant('publishDocs.defaultRendition'),
33
- value: 'defaultRendition'
34
- },*/
34
+ name: this.translate.instant('publishDocs.defaultRendition'),
35
+ value: 'defaultRendition'
36
+ },*/
35
37
  {
36
- name: this.translate.instant("publishDocs.thumbnail"),
37
- value: "thumbnail",
38
+ name: this.translate.instant('publishDocs.thumbnail'),
39
+ value: 'thumbnail'
38
40
  },
39
41
  {
40
- name: this.translate.instant("publishDocs.pdf"),
41
- value: "pdf",
42
- },
42
+ name: this.translate.instant('publishDocs.pdf'),
43
+ value: 'pdf'
44
+ }
43
45
  /*{
44
- name: this.translate.instant('publishDocs.zipExport'),
45
- value: 'zipExport'
46
- },*/
46
+ name: this.translate.instant('publishDocs.zipExport'),
47
+ value: 'zipExport'
48
+ },*/
47
49
  /*{
48
- name: this.translate.instant('publishDocs.xmlExport'),
49
- value: 'xmlExport'
50
- },*/
50
+ name: this.translate.instant('publishDocs.xmlExport'),
51
+ value: 'xmlExport'
52
+ },*/
51
53
  ];
52
54
  this.initialRenditionValue = this.renditionList[0].value;
53
55
  this.PublicationForm = new FormGroup({
54
56
  target: new FormControl(null, Validators.required),
55
57
  defaultRendition: new FormControl(),
56
- renditionName: new FormControl(),
58
+ renditionName: new FormControl()
57
59
  });
58
60
  this.isSelectThisBefor = false;
59
61
  this.showpublishingLoader = false;
62
+ this.publish = () => {
63
+ this.startPublishing = true;
64
+ this.showpublishingLoader = true;
65
+ let params = {
66
+ mySection: this.PublicationForm.get('target').value
67
+ };
68
+ if (this.data.PublishType == 'File') {
69
+ let Id;
70
+ switch (this.PublicationForm.get('renditionName').value) {
71
+ case 'none': {
72
+ break;
73
+ }
74
+ // case 'defaultRendition': { params["defaultRendition"] = true; break; }
75
+ default:
76
+ params['myRenditionName'] =
77
+ this.PublicationForm.get('renditionName').value;
78
+ }
79
+ }
80
+ let Id;
81
+ this.data.PublishType == 'File'
82
+ ? (Id = this.fetchedVersionDoc
83
+ ? this.fetchedVersionDoc.versionDocId
84
+ : this.data.file.uid)
85
+ : (Id = this.fetchedVersionDoc
86
+ ? this.fetchedVersionDoc.versionDocId
87
+ : this.data.id);
88
+ return this.publishing.publishDocument(Id, params).pipe(tap((res) => {
89
+ if (res) {
90
+ this.publishing.newPublished.next(true);
91
+ this.data.PublishType == 'File'
92
+ ? this.tosterService.show('success', 'TOASTER.SUCCESS', 'TOASTER.publishDocument_success')
93
+ : this.tosterService.show('success', 'TOASTER.SUCCESS', 'TOASTER.publishFolder_success');
94
+ this.showpublishingLoader = false;
95
+ setTimeout(() => {
96
+ this.close();
97
+ }, 500);
98
+ }
99
+ }, (err) => {
100
+ this.data.PublishType == 'File'
101
+ ? this.tosterService.show('error', 'TOASTER.ERROR', 'TOASTER.publishDocument_fail')
102
+ : this.tosterService.show('error', 'TOASTER.ERROR', 'TOASTER.publishFolder_fail');
103
+ this.startPublishing = false;
104
+ }));
105
+ };
60
106
  this.subscribtion.concat([
61
107
  this.publishing.getPublishingSections().subscribe((res) => {
62
108
  this.sections = res.entries;
63
- }),
109
+ })
64
110
  ]);
65
- this.subscription$ = this.PublicationForm.get("target").valueChanges.subscribe((res) => {
111
+ this.subscription$ = this.PublicationForm.get('target').valueChanges.subscribe((res) => {
66
112
  this.isSelectThisBefor = false;
67
113
  this.publishinpPlaces.map((item) => {
68
114
  if (item.contextParameters.breadcrumb.entries[1].uid == res) {
@@ -85,68 +131,22 @@ export class PublishDialogComponent {
85
131
  close() {
86
132
  this.dialogRef.close();
87
133
  }
88
- publish() {
89
- this.startPublishing = true;
90
- this.showpublishingLoader = true;
91
- let params = {
92
- mySection: this.PublicationForm.get("target").value,
93
- };
94
- if (this.data.PublishType == "File") {
95
- let Id;
96
- switch (this.PublicationForm.get("renditionName").value) {
97
- case "none": {
98
- break;
99
- }
100
- // case 'defaultRendition': { params["defaultRendition"] = true; break; }
101
- default:
102
- params["myRenditionName"] =
103
- this.PublicationForm.get("renditionName").value;
104
- }
105
- }
106
- let Id;
107
- this.data.PublishType == "File"
108
- ? (Id = this.fetchedVersionDoc
109
- ? this.fetchedVersionDoc.versionDocId
110
- : this.data.file.uid)
111
- : (Id = this.fetchedVersionDoc
112
- ? this.fetchedVersionDoc.versionDocId
113
- : this.data.id);
114
- this.subscribtion.concat([
115
- this.publishing.publishDocument(Id, params).subscribe((res) => {
116
- if (res) {
117
- this.publishing.newPublished.next(true);
118
- this.data.PublishType == "File"
119
- ? this.tosterService.show("success", "TOASTER.SUCCESS", "TOASTER.publishDocument_success")
120
- : this.tosterService.show("success", "TOASTER.SUCCESS", "TOASTER.publishFolder_success");
121
- this.showpublishingLoader = false;
122
- setTimeout(() => {
123
- this.close();
124
- }, 500);
125
- }
126
- }, (err) => {
127
- this.data.PublishType == "File"
128
- ? this.tosterService.show("error", "TOASTER.ERROR", "TOASTER.publishDocument_fail")
129
- : this.tosterService.show("error", "TOASTER.ERROR", "TOASTER.publishFolder_fail");
130
- this.startPublishing = false;
131
- }),
132
- ]);
133
- }
134
134
  ngOnDestroy() {
135
135
  this.subscribtion.forEach((sub) => sub.unsubscribe());
136
136
  this.subscription$.unsubscribe();
137
137
  }
138
138
  }
139
- PublishDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PublishDialogComponent, deps: [{ token: i1.PublishingDocumentService }, { token: i2.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i3.CustomToastrService }, { token: i4.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
140
- PublishDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PublishDialogComponent, selector: "app-publish-dialog", ngImport: i0, template: "<form [formGroup]=\"PublicationForm\" class=\"h-full\" SetRtl>\r\n <span class=\"text-gray-900 text-lg\">\r\n {{ \"publishDocs.publishDialogTitle\" | translate }}\r\n </span>\r\n <div class=\"flex flex-col justify-between h-full\">\r\n <!--Form Section-->\r\n <div class=\"mt-2\" *ngIf=\"!startPublishing; else loading\">\r\n <div class=\"mb-3\">\r\n <label class=\"text-base font-bold mb-0\">\r\n {{ \"publishDocs.target\" | translate }}\r\n <span class=\"text-danger\">*</span>\r\n </label>\r\n <ng-select\r\n [items]=\"sections\"\r\n bindLabel=\"title\"\r\n bindValue=\"uid\"\r\n [placeholder]=\"'publishDocs.targetPlaceholder' | translate\"\r\n formControlName=\"target\"\r\n >\r\n </ng-select>\r\n <div\r\n *ngIf=\"\r\n PublicationForm.get('target').touched &&\r\n PublicationForm.get('target').errors?.required\r\n \"\r\n >\r\n <span class=\"text-red-500 text-base\">\r\n {{ \"publishDocs.target\" | translate }}\r\n {{ \"VALIDATORS.REQUIRED\" | translate }}\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"data.PublishType == 'File'\" class=\"mb-3\">\r\n <label class=\"text-base font-bold mb-0\">\r\n {{ \"publishDocs.rendition\" | translate }}\r\n </label>\r\n <ng-select\r\n [items]=\"renditionList\"\r\n bindLabel=\"name\"\r\n bindValue=\"value\"\r\n [(ngModel)]=\"initialRenditionValue\"\r\n formControlName=\"renditionName\"\r\n >\r\n </ng-select>\r\n </div>\r\n <div\r\n class=\"text-primary font-bold text-md flex justify-center items-center\"\r\n *ngIf=\"isSelectThisBefor\"\r\n >\r\n <mat-icon class=\"w-16 h-16\" [svgIcon]=\"'alertIcon'\"> </mat-icon>\r\n {{ \"publishDocs.publishWithDepbefpre\" | translate }}\r\n </div>\r\n </div>\r\n <ng-template #loading>\r\n <span class=\"flex h-full justify-center items-center\">\r\n {{ \"publishDocs.doingPublish\" | translate }}</span\r\n >\r\n </ng-template>\r\n <!--Buttons Section-->\r\n <div class=\"flex justify-between py-4\">\r\n <button\r\n class=\"submission-button\"\r\n (click)=\"publish()\"\r\n [disabled]=\"!PublicationForm.valid\"\r\n >\r\n <span *ngIf=\"!showpublishingLoader; else loader\">{{\r\n \"BUTTONS.PUBLISH\" | translate\r\n }}</span>\r\n </button>\r\n <button class=\"cancelation-button\" (click)=\"close()\">\r\n {{ \"BUTTONS.Cancel\" | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n</form>\r\n<ng-template #loader>\r\n <mat-spinner\r\n [value]=\"90\"\r\n [strokeWidth]=\"3\"\r\n overlay=\"true\"\r\n [diameter]=\"25\"\r\n color=\"warn\"\r\n >\r\n </mat-spinner>\r\n</ng-template>\r\n", styles: [""], components: [{ type: i5.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i7.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i9.SetRtlDirective, selector: "[SetRtl]" }, { type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i4.TranslatePipe } });
139
+ PublishDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PublishDialogComponent, deps: [{ token: i1.PublishingDocumentService }, { token: i2.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i3.CustomToastrService }, { token: i4.TranslateService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
140
+ PublishDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PublishDialogComponent, selector: "app-publish-dialog", usesInheritance: true, ngImport: i0, template: "<ndf-nuxeo-dialog\r\n\tdialogTitle=\"{{ 'publishDocs.publishDialogTitle' | translate }}\"\r\n>\r\n\t<ng-template #contentTemplate>\r\n\t\t<form [formGroup]=\"PublicationForm\" class=\"h-full\" SetRtl>\r\n\t\t\t<div class=\"flex flex-col justify-between h-full\">\r\n\t\t\t\t<!--Form Section-->\r\n\t\t\t\t<div class=\"mt-2\" *ngIf=\"!startPublishing; else loading\">\r\n\t\t\t\t\t<div class=\"mb-3\">\r\n\t\t\t\t\t\t<label class=\"text-base font-bold mb-0\">\r\n\t\t\t\t\t\t\t{{ 'publishDocs.target' | translate }}\r\n\t\t\t\t\t\t\t<span class=\"text-danger\">*</span>\r\n\t\t\t\t\t\t</label>\r\n\t\t\t\t\t\t<ng-select\r\n\t\t\t\t\t\t\t[items]=\"sections\"\r\n\t\t\t\t\t\t\tbindLabel=\"title\"\r\n\t\t\t\t\t\t\tbindValue=\"uid\"\r\n\t\t\t\t\t\t\t[placeholder]=\"'publishDocs.targetPlaceholder' | translate\"\r\n\t\t\t\t\t\t\tformControlName=\"target\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t</ng-select>\r\n\t\t\t\t\t\t<div\r\n\t\t\t\t\t\t\t*ngIf=\"\r\n\t\t\t\t\t\t\t\tPublicationForm.get('target').touched &&\r\n\t\t\t\t\t\t\t\tPublicationForm.get('target').errors?.required\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<span class=\"text-red-500 text-base\">\r\n\t\t\t\t\t\t\t\t{{ 'publishDocs.target' | translate }}\r\n\t\t\t\t\t\t\t\t{{ 'VALIDATORS.REQUIRED' | translate }}\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div *ngIf=\"data.PublishType == 'File'\" class=\"mb-3\">\r\n\t\t\t\t\t\t<label class=\"text-base font-bold mb-0\">\r\n\t\t\t\t\t\t\t{{ 'publishDocs.rendition' | translate }}\r\n\t\t\t\t\t\t</label>\r\n\t\t\t\t\t\t<ng-select\r\n\t\t\t\t\t\t\t[items]=\"renditionList\"\r\n\t\t\t\t\t\t\tbindLabel=\"name\"\r\n\t\t\t\t\t\t\tbindValue=\"value\"\r\n\t\t\t\t\t\t\t[(ngModel)]=\"initialRenditionValue\"\r\n\t\t\t\t\t\t\tformControlName=\"renditionName\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t</ng-select>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclass=\"text-primary font-bold text-md flex justify-center items-center\"\r\n\t\t\t\t\t\t*ngIf=\"isSelectThisBefor\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<mat-icon class=\"w-16 h-16\" [svgIcon]=\"'alertIcon'\"> </mat-icon>\r\n\t\t\t\t\t\t{{ 'publishDocs.publishWithDepbefpre' | translate }}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</form>\r\n\t</ng-template>\r\n\r\n\t<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t\t<button\r\n\t\t\tclass=\"submission-button\"\r\n\t\t\t(click)=\"dialog.executeAction(publish)\"\r\n\t\t\t[disabled]=\"!PublicationForm.valid\"\r\n\t\t>\r\n\t\t\t<span>{{ 'BUTTONS.PUBLISH' | translate }}</span>\r\n\t\t</button>\r\n\t</ng-template>\r\n</ndf-nuxeo-dialog>\r\n", styles: [""], components: [{ type: i5.NdfNuxeoDialog, selector: "ndf-nuxeo-dialog", inputs: ["dialogTitle", "subTitle", "loaderMode"] }, { type: i6.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i9.SetRtlDirective, selector: "[SetRtl]" }, { type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i10.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i8.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i4.TranslatePipe } });
141
141
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PublishDialogComponent, decorators: [{
142
142
  type: Component,
143
143
  args: [{
144
- selector: "app-publish-dialog",
145
- templateUrl: "./publish-dialog.component.html",
146
- styleUrls: ["./publish-dialog.component.scss"],
144
+ selector: 'app-publish-dialog',
145
+ templateUrl: './publish-dialog.component.html',
146
+ styleUrls: ['./publish-dialog.component.scss']
147
147
  }]
148
148
  }], ctorParameters: function () { return [{ type: i1.PublishingDocumentService }, { type: i2.MatDialogRef }, { type: undefined, decorators: [{
149
149
  type: Inject,
150
150
  args: [MAT_DIALOG_DATA]
151
- }] }, { type: i3.CustomToastrService }, { type: i4.TranslateService }]; } });
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL3B1Ymxpc2gtZGlhbG9nL3B1Ymxpc2gtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9wdWJsaXNoLWRpYWxvZy9wdWJsaXNoLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdyRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7OztBQU90QyxNQUFNLE9BQU8sc0JBQXNCO0lBeUNqQyxZQUNVLFVBQXFDLEVBQ3JDLFNBQStDLEVBQ3ZCLElBQUksRUFDNUIsYUFBa0MsRUFDbEMsU0FBMkI7UUFKM0IsZUFBVSxHQUFWLFVBQVUsQ0FBMkI7UUFDckMsY0FBUyxHQUFULFNBQVMsQ0FBc0M7UUFDdkIsU0FBSSxHQUFKLElBQUksQ0FBQTtRQUM1QixrQkFBYSxHQUFiLGFBQWEsQ0FBcUI7UUFDbEMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUE3Q3JDLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxpQkFBWSxHQUFtQixFQUFFLENBQUM7UUFDbEMsb0JBQWUs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aUNBQWlDLENBQUM7aUJBQy9DOzswQkE2Q0ksTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2RpYWxvZ1wiO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3ksIEluamVjdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFB1Ymxpc2hpbmdEb2N1bWVudFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vLi4vc2hhcmVkLXNlcnZpY2VzL3B1Ymxpc2hpbmctZG9jdW1lbnQuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBDdXN0b21Ub2FzdHJTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uL2N1c3RvbS10b2FzdHIvc2VydmljZXMvY3VzdG9tLXRvYXN0ci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IHRha2UgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImFwcC1wdWJsaXNoLWRpYWxvZ1wiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vcHVibGlzaC1kaWFsb2cuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vcHVibGlzaC1kaWFsb2cuY29tcG9uZW50LnNjc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQdWJsaXNoRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHNlY3Rpb25zID0gW107XHJcbiAgc3Vic2NyaWJ0aW9uOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG4gIHN0YXJ0UHVibGlzaGluZyA9IGZhbHNlO1xyXG4gIGZldGNoZWRWZXJzaW9uRG9jOiBhbnk7XHJcbiAgcmVuZGl0aW9uTGlzdCA9IFtcclxuICAgIHtcclxuICAgICAgbmFtZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInB1Ymxpc2hEb2NzLm5vbmVcIiksXHJcbiAgICAgIHZhbHVlOiBcIm5vbmVcIixcclxuICAgIH0sXHJcbiAgICAvKntcclxuICAgICAgbmFtZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgncHVibGlzaERvY3MuZGVmYXVsdFJlbmRpdGlvbicpLFxyXG4gICAgICB2YWx1ZTogJ2RlZmF1bHRSZW5kaXRpb24nXHJcbiAgICB9LCovXHJcbiAgICB7XHJcbiAgICAgIG5hbWU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoXCJwdWJsaXNoRG9jcy50aHVtYm5haWxcIiksXHJcbiAgICAgIHZhbHVlOiBcInRodW1ibmFpbFwiLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgbmFtZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcInB1Ymxpc2hEb2NzLnBkZlwiKSxcclxuICAgICAgdmFsdWU6IFwicGRmXCIsXHJcbiAgICB9LFxyXG4gICAgLyp7XHJcbiAgICAgIG5hbWU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3B1Ymxpc2hEb2NzLnppcEV4cG9ydCcpLFxyXG4gICAgICB2YWx1ZTogJ3ppcEV4cG9ydCdcclxuICAgIH0sKi9cclxuICAgIC8qe1xyXG4gICAgICBuYW1lOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdwdWJsaXNoRG9jcy54bWxFeHBvcnQnKSxcclxuICAgICAgdmFsdWU6ICd4bWxFeHBvcnQnXHJcbiAgICB9LCovXHJcbiAgXTtcclxuICBpbml0aWFsUmVuZGl0aW9uVmFsdWUgPSB0aGlzLnJlbmRpdGlvbkxpc3RbMF0udmFsdWU7XHJcbiAgUHVibGljYXRpb25Gb3JtOiBGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHtcclxuICAgIHRhcmdldDogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxyXG4gICAgZGVmYXVsdFJlbmRpdGlvbjogbmV3IEZvcm1Db250cm9sKCksXHJcbiAgICByZW5kaXRpb25OYW1lOiBuZXcgRm9ybUNvbnRyb2woKSxcclxuICB9KTtcclxuICBzdWJzY3JpcHRpb24kOiBTdWJzY3JpcHRpb247XHJcbiAgaXNTZWxlY3RUaGlzQmVmb3I6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaXNoaW5wUGxhY2VzOiBhbnk7XHJcbiAgc2hvd3B1Ymxpc2hpbmdMb2FkZXIgPSBmYWxzZTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcHVibGlzaGluZzogUHVibGlzaGluZ0RvY3VtZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8UHVibGlzaERpYWxvZ0NvbXBvbmVudD4sXHJcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGEsXHJcbiAgICBwcml2YXRlIHRvc3RlclNlcnZpY2U6IEN1c3RvbVRvYXN0clNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5zdWJzY3JpYnRpb24uY29uY2F0KFtcclxuICAgICAgdGhpcy5wdWJsaXNoaW5nLmdldFB1Ymxpc2hpbmdTZWN0aW9ucygpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICB0aGlzLnNlY3Rpb25zID0gcmVzLmVudHJpZXM7XHJcbiAgICAgIH0pLFxyXG4gICAgXSk7XHJcblxyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24kID0gdGhpcy5QdWJsaWNhdGlvbkZvcm0uZ2V0KFxyXG4gICAgICBcInRhcmdldFwiXHJcbiAgICApLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICB0aGlzLmlzU2VsZWN0VGhpc0JlZm9yID0gZmFsc2U7XHJcbiAgICAgIHRoaXMucHVibGlzaGlucFBsYWNlcy5tYXAoKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChpdGVtLmNvbnRleHRQYXJhbWV0ZXJzLmJyZWFkY3J1bWIuZW50cmllc1sxXS51aWQgPT0gcmVzKSB7XHJcbiAgICAgICAgICB0aGlzLmlzU2VsZWN0VGhpc0JlZm9yID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZ2V0UHVibGlzaGVkUGxhY2VzKCk7XHJcbiAgfVxyXG4gIGdldFB1Ymxpc2hlZFBsYWNlcygpIHtcclxuICAgIHRoaXMucHVibGlzaGluZ1xyXG4gICAgICAuZ2V0UHVibGlzaGVkUGxhY2VzKHRoaXMuZGF0YS5maWxlLnVpZClcclxuICAgICAgLnBpcGUodGFrZSgxKSlcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5wdWJsaXNoaW5wUGxhY2VzID0gcmVzLmVudHJpZXM7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICBjbG9zZSgpIHtcclxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XHJcbiAgfVxyXG4gIHB1Ymxpc2goKSB7XHJcbiAgICB0aGlzLnN0YXJ0UHVibGlzaGluZyA9IHRydWU7XHJcbiAgICB0aGlzLnNob3dwdWJsaXNoaW5nTG9hZGVyID0gdHJ1ZTtcclxuICAgIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgIG15U2VjdGlvbjogdGhpcy5QdWJsaWNhdGlvbkZvcm0uZ2V0KFwidGFyZ2V0XCIpLnZhbHVlLFxyXG4gICAgfTtcclxuICAgIGlmICh0aGlzLmRhdGEuUHVibGlzaFR5cGUgPT0gXCJGaWxlXCIpIHtcclxuICAgICAgbGV0IElkO1xyXG4gICAgICBzd2l0Y2ggKHRoaXMuUHVibGljYXRpb25Gb3JtLmdldChcInJlbmRpdGlvbk5hbWVcIikudmFsdWUpIHtcclxuICAgICAgICBjYXNlIFwibm9uZVwiOiB7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gY2FzZSAnZGVmYXVsdFJlbmRpdGlvbic6IHsgcGFyYW1zW1wiZGVmYXVsdFJlbmRpdGlvblwiXSA9IHRydWU7IGJyZWFrOyB9XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIHBhcmFtc1tcIm15UmVuZGl0aW9uTmFtZVwiXSA9XHJcbiAgICAgICAgICAgIHRoaXMuUHVibGljYXRpb25Gb3JtLmdldChcInJlbmRpdGlvbk5hbWVcIikudmFsdWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGxldCBJZDtcclxuICAgIHRoaXMuZGF0YS5QdWJsaXNoVHlwZSA9PSBcIkZpbGVcIlxyXG4gICAgICA/IChJZCA9IHRoaXMuZmV0Y2hlZFZlcnNpb25Eb2NcclxuICAgICAgICAgID8gdGhpcy5mZXRjaGVkVmVyc2lvbkRvYy52ZXJzaW9uRG9jSWRcclxuICAgICAgICAgIDogdGhpcy5kYXRhLmZpbGUudWlkKVxyXG4gICAgICA6IChJZCA9IHRoaXMuZmV0Y2hlZFZlcnNpb25Eb2NcclxuICAgICAgICAgID8gdGhpcy5mZXRjaGVkVmVyc2lvbkRvYy52ZXJzaW9uRG9jSWRcclxuICAgICAgICAgIDogdGhpcy5kYXRhLmlkKTtcclxuICAgIHRoaXMuc3Vic2NyaWJ0aW9uLmNvbmNhdChbXHJcbiAgICAgIHRoaXMucHVibGlzaGluZy5wdWJsaXNoRG9jdW1lbnQoSWQsIHBhcmFtcykuc3Vic2NyaWJlKFxyXG4gICAgICAgIChyZXMpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICAgICAgdGhpcy5wdWJsaXNoaW5nLm5ld1B1Ymxpc2hlZC5uZXh0KHRydWUpO1xyXG4gICAgICAgICAgICB0aGlzLmRhdGEuUHVibGlzaFR5cGUgPT0gXCJGaWxlXCJcclxuICAgICAgICAgICAgICA/IHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG4gICAgICAgICAgICAgICAgICBcInN1Y2Nlc3NcIixcclxuICAgICAgICAgICAgICAgICAgXCJUT0FTVEVSLlNVQ0NFU1NcIixcclxuICAgICAgICAgICAgICAgICAgXCJUT0FTVEVSLnB1Ymxpc2hEb2N1bWVudF9zdWNjZXNzXCJcclxuICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICA6IHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG4gICAgICAgICAgICAgICAgICBcInN1Y2Nlc3NcIixcclxuICAgICAgICAgICAgICAgICAgXCJUT0FTVEVSLlNVQ0NFU1NcIixcclxuICAgICAgICAgICAgICAgICAgXCJUT0FTVEVSLnB1Ymxpc2hGb2xkZXJfc3VjY2Vzc1wiXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0aGlzLnNob3dwdWJsaXNoaW5nTG9hZGVyID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgICAgICAgfSwgNTAwKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMuZGF0YS5QdWJsaXNoVHlwZSA9PSBcIkZpbGVcIlxyXG4gICAgICAgICAgICA/IHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG4gICAgICAgICAgICAgICAgXCJlcnJvclwiLFxyXG4gICAgICAgICAgICAgICAgXCJUT0FTVEVSLkVSUk9SXCIsXHJcbiAgICAgICAgICAgICAgICBcIlRPQVNURVIucHVibGlzaERvY3VtZW50X2ZhaWxcIlxyXG4gICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgOiB0aGlzLnRvc3RlclNlcnZpY2Uuc2hvdyhcclxuICAgICAgICAgICAgICAgIFwiZXJyb3JcIixcclxuICAgICAgICAgICAgICAgIFwiVE9BU1RFUi5FUlJPUlwiLFxyXG4gICAgICAgICAgICAgICAgXCJUT0FTVEVSLnB1Ymxpc2hGb2xkZXJfZmFpbFwiXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgIHRoaXMuc3RhcnRQdWJsaXNoaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICApLFxyXG4gICAgXSk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpYnRpb24uZm9yRWFjaCgoc3ViKSA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XHJcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiQudW5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJQdWJsaWNhdGlvbkZvcm1cIiBjbGFzcz1cImgtZnVsbFwiIFNldFJ0bD5cclxuICA8c3BhbiBjbGFzcz1cInRleHQtZ3JheS05MDAgdGV4dC1sZ1wiPlxyXG4gICAge3sgXCJwdWJsaXNoRG9jcy5wdWJsaXNoRGlhbG9nVGl0bGVcIiB8IHRyYW5zbGF0ZSB9fVxyXG4gIDwvc3Bhbj5cclxuICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBqdXN0aWZ5LWJldHdlZW4gaC1mdWxsXCI+XHJcbiAgICA8IS0tRm9ybSBTZWN0aW9uLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwibXQtMlwiICpuZ0lmPVwiIXN0YXJ0UHVibGlzaGluZzsgZWxzZSBsb2FkaW5nXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtYi0zXCI+XHJcbiAgICAgICAgPGxhYmVsIGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtYm9sZCBtYi0wXCI+XHJcbiAgICAgICAgICB7eyBcInB1Ymxpc2hEb2NzLnRhcmdldFwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+Kjwvc3Bhbj5cclxuICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgIDxuZy1zZWxlY3RcclxuICAgICAgICAgIFtpdGVtc109XCJzZWN0aW9uc1wiXHJcbiAgICAgICAgICBiaW5kTGFiZWw9XCJ0aXRsZVwiXHJcbiAgICAgICAgICBiaW5kVmFsdWU9XCJ1aWRcIlxyXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidwdWJsaXNoRG9jcy50YXJnZXRQbGFjZWhvbGRlcicgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidGFyZ2V0XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9uZy1zZWxlY3Q+XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgKm5nSWY9XCJcclxuICAgICAgICAgICAgUHVibGljYXRpb25Gb3JtLmdldCgndGFyZ2V0JykudG91Y2hlZCAmJlxyXG4gICAgICAgICAgICBQdWJsaWNhdGlvbkZvcm0uZ2V0KCd0YXJnZXQnKS5lcnJvcnM/LnJlcXVpcmVkXHJcbiAgICAgICAgICBcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1yZWQtNTAwIHRleHQtYmFzZVwiPlxyXG4gICAgICAgICAgICB7eyBcInB1Ymxpc2hEb2NzLnRhcmdldFwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICAgIHt7IFwiVkFMSURBVE9SUy5SRVFVSVJFRFwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiZGF0YS5QdWJsaXNoVHlwZSA9PSAnRmlsZSdcIiBjbGFzcz1cIm1iLTNcIj5cclxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJ0ZXh0LWJhc2UgZm9udC1ib2xkIG1iLTBcIj5cclxuICAgICAgICAgIHt7IFwicHVibGlzaERvY3MucmVuZGl0aW9uXCIgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgIDxuZy1zZWxlY3RcclxuICAgICAgICAgIFtpdGVtc109XCJyZW5kaXRpb25MaXN0XCJcclxuICAgICAgICAgIGJpbmRMYWJlbD1cIm5hbWVcIlxyXG4gICAgICAgICAgYmluZFZhbHVlPVwidmFsdWVcIlxyXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJpbml0aWFsUmVuZGl0aW9uVmFsdWVcIlxyXG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwicmVuZGl0aW9uTmFtZVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvbmctc2VsZWN0PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwidGV4dC1wcmltYXJ5IGZvbnQtYm9sZCB0ZXh0LW1kIGZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyXCJcclxuICAgICAgICAqbmdJZj1cImlzU2VsZWN0VGhpc0JlZm9yXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInctMTYgaC0xNlwiIFtzdmdJY29uXT1cIidhbGVydEljb24nXCI+IDwvbWF0LWljb24+XHJcbiAgICAgICAge3sgXCJwdWJsaXNoRG9jcy5wdWJsaXNoV2l0aERlcGJlZnByZVwiIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctdGVtcGxhdGUgI2xvYWRpbmc+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiZmxleCBoLWZ1bGwganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAge3sgXCJwdWJsaXNoRG9jcy5kb2luZ1B1Ymxpc2hcIiB8IHRyYW5zbGF0ZSB9fTwvc3BhblxyXG4gICAgICA+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgPCEtLUJ1dHRvbnMgU2VjdGlvbi0tPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuIHB5LTRcIj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwic3VibWlzc2lvbi1idXR0b25cIlxyXG4gICAgICAgIChjbGljayk9XCJwdWJsaXNoKClcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCIhUHVibGljYXRpb25Gb3JtLnZhbGlkXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIXNob3dwdWJsaXNoaW5nTG9hZGVyOyBlbHNlIGxvYWRlclwiPnt7XHJcbiAgICAgICAgICBcIkJVVFRPTlMuUFVCTElTSFwiIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8YnV0dG9uIGNsYXNzPVwiY2FuY2VsYXRpb24tYnV0dG9uXCIgKGNsaWNrKT1cImNsb3NlKClcIj5cclxuICAgICAgICB7eyBcIkJVVFRPTlMuQ2FuY2VsXCIgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9mb3JtPlxyXG48bmctdGVtcGxhdGUgI2xvYWRlcj5cclxuICA8bWF0LXNwaW5uZXJcclxuICAgIFt2YWx1ZV09XCI5MFwiXHJcbiAgICBbc3Ryb2tlV2lkdGhdPVwiM1wiXHJcbiAgICBvdmVybGF5PVwidHJ1ZVwiXHJcbiAgICBbZGlhbWV0ZXJdPVwiMjVcIlxyXG4gICAgY29sb3I9XCJ3YXJuXCJcclxuICA+XHJcbiAgPC9tYXQtc3Bpbm5lcj5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
151
+ }] }, { type: i3.CustomToastrService }, { type: i4.TranslateService }, { type: i0.Injector }]; } });
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9maWxlLW1hbmdlci9jb21wb25lbnRzL3B1Ymxpc2gtZGlhbG9nL3B1Ymxpc2gtZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZmlsZS1tYW5nZXIvY29tcG9uZW50cy9wdWJsaXNoLWRpYWxvZy9wdWJsaXNoLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUcvRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDOzs7Ozs7Ozs7Ozs7QUFPL0YsTUFBTSxPQUFPLHNCQUNaLFNBQVEsbUJBQXFEO0lBMkM3RCxZQUNTLFVBQXFDLEVBQ3JDLFNBQStDLEVBQ3ZCLElBQUksRUFDNUIsYUFBa0MsRUFDbEMsU0FBMkIsRUFDbkMsUUFBa0I7UUFFbEIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBUFIsZUFBVSxHQUFWLFVBQVUsQ0FBMkI7UUFDckMsY0FBUyxHQUFULFNBQVMsQ0FBc0M7UUFDdkIsU0FBSSxHQUFKLElBQUksQ0FBQTtRQUM1QixrQkFBYSxH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LDhqRkFvRUE7NEZEckRhLHNCQUFzQjtrQkFMbEMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixXQUFXLEVBQUUsaUNBQWlDO29CQUM5QyxTQUFTLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQztpQkFDOUM7OzBCQWdERSxNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3ksIEluamVjdCwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUHVibGlzaGluZ0RvY3VtZW50U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC1zZXJ2aWNlcy9wdWJsaXNoaW5nLWRvY3VtZW50LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDdXN0b21Ub2FzdHJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY3VzdG9tLXRvYXN0ci9zZXJ2aWNlcy9jdXN0b20tdG9hc3RyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyB0YWtlLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEJhc2VEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9iYXNlL2Jhc2UtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERpYWxvZ0FjdGlvblR5cGUgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cy9udXhlby1kaWFsb2cvbW9kZWxzL2RpYWxvZy1vcHRpb24ubW9kZWwnO1xyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FwcC1wdWJsaXNoLWRpYWxvZycsXHJcblx0dGVtcGxhdGVVcmw6ICcuL3B1Ymxpc2gtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9wdWJsaXNoLWRpYWxvZy5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQdWJsaXNoRGlhbG9nQ29tcG9uZW50XHJcblx0ZXh0ZW5kcyBCYXNlRGlhbG9nQ29tcG9uZW50PFB1Ymxpc2hEaWFsb2dDb21wb25lbnQsIGFueSwgYW55PlxyXG5cdGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3lcclxue1xyXG5cdHNlY3Rpb25zID0gW107XHJcblx0c3Vic2NyaWJ0aW9uOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cdHN0YXJ0UHVibGlzaGluZyA9IGZhbHNlO1xyXG5cdGZldGNoZWRWZXJzaW9uRG9jOiBhbnk7XHJcblx0cmVuZGl0aW9uTGlzdCA9IFtcclxuXHRcdHtcclxuXHRcdFx0bmFtZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgncHVibGlzaERvY3Mubm9uZScpLFxyXG5cdFx0XHR2YWx1ZTogJ25vbmUnXHJcblx0XHR9LFxyXG5cdFx0Lyp7XHJcbiAgICAgIG5hbWU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3B1Ymxpc2hEb2NzLmRlZmF1bHRSZW5kaXRpb24nKSxcclxuICAgICAgdmFsdWU6ICdkZWZhdWx0UmVuZGl0aW9uJ1xyXG4gICAgfSwqL1xyXG5cdFx0e1xyXG5cdFx0XHRuYW1lOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdwdWJsaXNoRG9jcy50aHVtYm5haWwnKSxcclxuXHRcdFx0dmFsdWU6ICd0aHVtYm5haWwnXHJcblx0XHR9LFxyXG5cdFx0e1xyXG5cdFx0XHRuYW1lOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdwdWJsaXNoRG9jcy5wZGYnKSxcclxuXHRcdFx0dmFsdWU6ICdwZGYnXHJcblx0XHR9XHJcblx0XHQvKntcclxuICAgICAgbmFtZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgncHVibGlzaERvY3MuemlwRXhwb3J0JyksXHJcbiAgICAgIHZhbHVlOiAnemlwRXhwb3J0J1xyXG4gICAgfSwqL1xyXG5cdFx0Lyp7XHJcbiAgICAgIG5hbWU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ3B1Ymxpc2hEb2NzLnhtbEV4cG9ydCcpLFxyXG4gICAgICB2YWx1ZTogJ3htbEV4cG9ydCdcclxuICAgIH0sKi9cclxuXHRdO1xyXG5cdGluaXRpYWxSZW5kaXRpb25WYWx1ZSA9IHRoaXMucmVuZGl0aW9uTGlzdFswXS52YWx1ZTtcclxuXHRQdWJsaWNhdGlvbkZvcm06IEZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe1xyXG5cdFx0dGFyZ2V0OiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXHJcblx0XHRkZWZhdWx0UmVuZGl0aW9uOiBuZXcgRm9ybUNvbnRyb2woKSxcclxuXHRcdHJlbmRpdGlvbk5hbWU6IG5ldyBGb3JtQ29udHJvbCgpXHJcblx0fSk7XHJcblx0c3Vic2NyaXB0aW9uJDogU3Vic2NyaXB0aW9uO1xyXG5cdGlzU2VsZWN0VGhpc0JlZm9yOiBib29sZWFuID0gZmFsc2U7XHJcblx0cHVibGlzaGlucFBsYWNlczogYW55O1xyXG5cdHNob3dwdWJsaXNoaW5nTG9hZGVyID0gZmFsc2U7XHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIHB1Ymxpc2hpbmc6IFB1Ymxpc2hpbmdEb2N1bWVudFNlcnZpY2UsXHJcblx0XHRwcml2YXRlIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFB1Ymxpc2hEaWFsb2dDb21wb25lbnQ+LFxyXG5cdFx0QEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhLFxyXG5cdFx0cHJpdmF0ZSB0b3N0ZXJTZXJ2aWNlOiBDdXN0b21Ub2FzdHJTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcblx0XHRpbmplY3RvcjogSW5qZWN0b3JcclxuXHQpIHtcclxuXHRcdHN1cGVyKGluamVjdG9yKTtcclxuXHJcblx0XHR0aGlzLnN1YnNjcmlidGlvbi5jb25jYXQoW1xyXG5cdFx0XHR0aGlzLnB1Ymxpc2hpbmcuZ2V0UHVibGlzaGluZ1NlY3Rpb25zKCkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG5cdFx0XHRcdHRoaXMuc2VjdGlvbnMgPSByZXMuZW50cmllcztcclxuXHRcdFx0fSlcclxuXHRcdF0pO1xyXG5cclxuXHRcdHRoaXMuc3Vic2NyaXB0aW9uJCA9IHRoaXMuUHVibGljYXRpb25Gb3JtLmdldChcclxuXHRcdFx0J3RhcmdldCdcclxuXHRcdCkudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcblx0XHRcdHRoaXMuaXNTZWxlY3RUaGlzQmVmb3IgPSBmYWxzZTtcclxuXHRcdFx0dGhpcy5wdWJsaXNoaW5wUGxhY2VzLm1hcCgoaXRlbTogYW55KSA9PiB7XHJcblx0XHRcdFx0aWYgKGl0ZW0uY29udGV4dFBhcmFtZXRlcnMuYnJlYWRjcnVtYi5lbnRyaWVzWzFdLnVpZCA9PSByZXMpIHtcclxuXHRcdFx0XHRcdHRoaXMuaXNTZWxlY3RUaGlzQmVmb3IgPSB0cnVlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge1xyXG5cdFx0dGhpcy5nZXRQdWJsaXNoZWRQbGFjZXMoKTtcclxuXHR9XHJcblx0Z2V0UHVibGlzaGVkUGxhY2VzKCkge1xyXG5cdFx0dGhpcy5wdWJsaXNoaW5nXHJcblx0XHRcdC5nZXRQdWJsaXNoZWRQbGFjZXModGhpcy5kYXRhLmZpbGUudWlkKVxyXG5cdFx0XHQucGlwZSh0YWtlKDEpKVxyXG5cdFx0XHQuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0XHR0aGlzLnB1Ymxpc2hpbnBQbGFjZXMgPSByZXMuZW50cmllcztcclxuXHRcdFx0fSk7XHJcblx0fVxyXG5cdGNsb3NlKCkge1xyXG5cdFx0dGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcclxuXHR9XHJcblx0cHVibGlzaDogRGlhbG9nQWN0aW9uVHlwZSA9ICgpID0+IHtcclxuXHRcdHRoaXMuc3RhcnRQdWJsaXNoaW5nID0gdHJ1ZTtcclxuXHRcdHRoaXMuc2hvd3B1Ymxpc2hpbmdMb2FkZXIgPSB0cnVlO1xyXG5cdFx0bGV0IHBhcmFtcyA9IHtcclxuXHRcdFx0bXlTZWN0aW9uOiB0aGlzLlB1YmxpY2F0aW9uRm9ybS5nZXQoJ3RhcmdldCcpLnZhbHVlXHJcblx0XHR9O1xyXG5cdFx0aWYgKHRoaXMuZGF0YS5QdWJsaXNoVHlwZSA9PSAnRmlsZScpIHtcclxuXHRcdFx0bGV0IElkO1xyXG5cdFx0XHRzd2l0Y2ggKHRoaXMuUHVibGljYXRpb25Gb3JtLmdldCgncmVuZGl0aW9uTmFtZScpLnZhbHVlKSB7XHJcblx0XHRcdFx0Y2FzZSAnbm9uZSc6IHtcclxuXHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQvLyBjYXNlICdkZWZhdWx0UmVuZGl0aW9uJzogeyBwYXJhbXNbXCJkZWZhdWx0UmVuZGl0aW9uXCJdID0gdHJ1ZTsgYnJlYWs7IH1cclxuXHRcdFx0XHRkZWZhdWx0OlxyXG5cdFx0XHRcdFx0cGFyYW1zWydteVJlbmRpdGlvbk5hbWUnXSA9XHJcblx0XHRcdFx0XHRcdHRoaXMuUHVibGljYXRpb25Gb3JtLmdldCgncmVuZGl0aW9uTmFtZScpLnZhbHVlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRsZXQgSWQ7XHJcblx0XHR0aGlzLmRhdGEuUHVibGlzaFR5cGUgPT0gJ0ZpbGUnXHJcblx0XHRcdD8gKElkID0gdGhpcy5mZXRjaGVkVmVyc2lvbkRvY1xyXG5cdFx0XHRcdFx0PyB0aGlzLmZldGNoZWRWZXJzaW9uRG9jLnZlcnNpb25Eb2NJZFxyXG5cdFx0XHRcdFx0OiB0aGlzLmRhdGEuZmlsZS51aWQpXHJcblx0XHRcdDogKElkID0gdGhpcy5mZXRjaGVkVmVyc2lvbkRvY1xyXG5cdFx0XHRcdFx0PyB0aGlzLmZldGNoZWRWZXJzaW9uRG9jLnZlcnNpb25Eb2NJZFxyXG5cdFx0XHRcdFx0OiB0aGlzLmRhdGEuaWQpO1xyXG5cdFx0cmV0dXJuIHRoaXMucHVibGlzaGluZy5wdWJsaXNoRG9jdW1lbnQoSWQsIHBhcmFtcykucGlwZShcclxuXHRcdFx0dGFwKFxyXG5cdFx0XHRcdChyZXMpID0+IHtcclxuXHRcdFx0XHRcdGlmIChyZXMpIHtcclxuXHRcdFx0XHRcdFx0dGhpcy5wdWJsaXNoaW5nLm5ld1B1Ymxpc2hlZC5uZXh0KHRydWUpO1xyXG5cdFx0XHRcdFx0XHR0aGlzLmRhdGEuUHVibGlzaFR5cGUgPT0gJ0ZpbGUnXHJcblx0XHRcdFx0XHRcdFx0PyB0aGlzLnRvc3RlclNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHRcdFx0XHRcdFx0J3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5TVUNDRVNTJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIucHVibGlzaERvY3VtZW50X3N1Y2Nlc3MnXHJcblx0XHRcdFx0XHRcdFx0ICApXHJcblx0XHRcdFx0XHRcdFx0OiB0aGlzLnRvc3RlclNlcnZpY2Uuc2hvdyhcclxuXHRcdFx0XHRcdFx0XHRcdFx0J3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0XHRcdFx0XHQnVE9BU1RFUi5TVUNDRVNTJyxcclxuXHRcdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIucHVibGlzaEZvbGRlcl9zdWNjZXNzJ1xyXG5cdFx0XHRcdFx0XHRcdCAgKTtcclxuXHRcdFx0XHRcdFx0dGhpcy5zaG93cHVibGlzaGluZ0xvYWRlciA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0XHRcdFx0XHR0aGlzLmNsb3NlKCk7XHJcblx0XHRcdFx0XHRcdH0sIDUwMCk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSxcclxuXHRcdFx0XHQoZXJyKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLmRhdGEuUHVibGlzaFR5cGUgPT0gJ0ZpbGUnXHJcblx0XHRcdFx0XHRcdD8gdGhpcy50b3N0ZXJTZXJ2aWNlLnNob3coXHJcblx0XHRcdFx0XHRcdFx0XHQnZXJyb3InLFxyXG5cdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIuRVJST1InLFxyXG5cdFx0XHRcdFx0XHRcdFx0J1RPQVNURVIucHVibGlzaERvY3VtZW50X2ZhaWwnXHJcblx0XHRcdFx0XHRcdCAgKVxyXG5cdFx0XHRcdFx0XHQ6IHRoaXMudG9zdGVyU2VydmljZS5zaG93KFxyXG5cdFx0XHRcdFx0XHRcdFx0J2Vycm9yJyxcclxuXHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLkVSUk9SJyxcclxuXHRcdFx0XHRcdFx0XHRcdCdUT0FTVEVSLnB1Ymxpc2hGb2xkZXJfZmFpbCdcclxuXHRcdFx0XHRcdFx0ICApO1xyXG5cdFx0XHRcdFx0dGhpcy5zdGFydFB1Ymxpc2hpbmcgPSBmYWxzZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdClcclxuXHRcdCk7XHJcblx0fTtcclxuXHRuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuXHRcdHRoaXMuc3Vic2NyaWJ0aW9uLmZvckVhY2goKHN1YikgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xyXG5cdFx0dGhpcy5zdWJzY3JpcHRpb24kLnVuc3Vic2NyaWJlKCk7XHJcblx0fVxyXG59XHJcbiIsIjxuZGYtbnV4ZW8tZGlhbG9nXHJcblx0ZGlhbG9nVGl0bGU9XCJ7eyAncHVibGlzaERvY3MucHVibGlzaERpYWxvZ1RpdGxlJyB8IHRyYW5zbGF0ZSB9fVwiXHJcbj5cclxuXHQ8bmctdGVtcGxhdGUgI2NvbnRlbnRUZW1wbGF0ZT5cclxuXHRcdDxmb3JtIFtmb3JtR3JvdXBdPVwiUHVibGljYXRpb25Gb3JtXCIgY2xhc3M9XCJoLWZ1bGxcIiBTZXRSdGw+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGp1c3RpZnktYmV0d2VlbiBoLWZ1bGxcIj5cclxuXHRcdFx0XHQ8IS0tRm9ybSBTZWN0aW9uLS0+XHJcblx0XHRcdFx0PGRpdiBjbGFzcz1cIm10LTJcIiAqbmdJZj1cIiFzdGFydFB1Ymxpc2hpbmc7IGVsc2UgbG9hZGluZ1wiPlxyXG5cdFx0XHRcdFx0PGRpdiBjbGFzcz1cIm1iLTNcIj5cclxuXHRcdFx0XHRcdFx0PGxhYmVsIGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtYm9sZCBtYi0wXCI+XHJcblx0XHRcdFx0XHRcdFx0e3sgJ3B1Ymxpc2hEb2NzLnRhcmdldCcgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInRleHQtZGFuZ2VyXCI+Kjwvc3Bhbj5cclxuXHRcdFx0XHRcdFx0PC9sYWJlbD5cclxuXHRcdFx0XHRcdFx0PG5nLXNlbGVjdFxyXG5cdFx0XHRcdFx0XHRcdFtpdGVtc109XCJzZWN0aW9uc1wiXHJcblx0XHRcdFx0XHRcdFx0YmluZExhYmVsPVwidGl0bGVcIlxyXG5cdFx0XHRcdFx0XHRcdGJpbmRWYWx1ZT1cInVpZFwiXHJcblx0XHRcdFx0XHRcdFx0W3BsYWNlaG9sZGVyXT1cIidwdWJsaXNoRG9jcy50YXJnZXRQbGFjZWhvbGRlcicgfCB0cmFuc2xhdGVcIlxyXG5cdFx0XHRcdFx0XHRcdGZvcm1Db250cm9sTmFtZT1cInRhcmdldFwiXHJcblx0XHRcdFx0XHRcdD5cclxuXHRcdFx0XHRcdFx0PC9uZy1zZWxlY3Q+XHJcblx0XHRcdFx0XHRcdDxkaXZcclxuXHRcdFx0XHRcdFx0XHQqbmdJZj1cIlxyXG5cdFx0XHRcdFx0XHRcdFx0UHVibGljYXRpb25Gb3JtLmdldCgndGFyZ2V0JykudG91Y2hlZCAmJlxyXG5cdFx0XHRcdFx0XHRcdFx0UHVibGljYXRpb25Gb3JtLmdldCgndGFyZ2V0JykuZXJyb3JzPy5yZXF1aXJlZFxyXG5cdFx0XHRcdFx0XHRcdFwiXHJcblx0XHRcdFx0XHRcdD5cclxuXHRcdFx0XHRcdFx0XHQ8c3BhbiBjbGFzcz1cInRleHQtcmVkLTUwMCB0ZXh0LWJhc2VcIj5cclxuXHRcdFx0XHRcdFx0XHRcdHt7ICdwdWJsaXNoRG9jcy50YXJnZXQnIHwgdHJhbnNsYXRlIH19XHJcblx0XHRcdFx0XHRcdFx0XHR7eyAnVkFMSURBVE9SUy5SRVFVSVJFRCcgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdFx0XHQ8L3NwYW4+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8ZGl2ICpuZ0lmPVwiZGF0YS5QdWJsaXNoVHlwZSA9PSAnRmlsZSdcIiBjbGFzcz1cIm1iLTNcIj5cclxuXHRcdFx0XHRcdFx0PGxhYmVsIGNsYXNzPVwidGV4dC1iYXNlIGZvbnQtYm9sZCBtYi0wXCI+XHJcblx0XHRcdFx0XHRcdFx0e3sgJ3B1Ymxpc2hEb2NzLnJlbmRpdGlvbicgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdFx0PC9sYWJlbD5cclxuXHRcdFx0XHRcdFx0PG5nLXNlbGVjdFxyXG5cdFx0XHRcdFx0XHRcdFtpdGVtc109XCJyZW5kaXRpb25MaXN0XCJcclxuXHRcdFx0XHRcdFx0XHRiaW5kTGFiZWw9XCJuYW1lXCJcclxuXHRcdFx0XHRcdFx0XHRiaW5kVmFsdWU9XCJ2YWx1ZVwiXHJcblx0XHRcdFx0XHRcdFx0WyhuZ01vZGVsKV09XCJpbml0aWFsUmVuZGl0aW9uVmFsdWVcIlxyXG5cdFx0XHRcdFx0XHRcdGZvcm1Db250cm9sTmFtZT1cInJlbmRpdGlvbk5hbWVcIlxyXG5cdFx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHRcdDwvbmctc2VsZWN0PlxyXG5cdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8ZGl2XHJcblx0XHRcdFx0XHRcdGNsYXNzPVwidGV4dC1wcmltYXJ5IGZvbnQtYm9sZCB0ZXh0LW1kIGZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyXCJcclxuXHRcdFx0XHRcdFx0Km5nSWY9XCJpc1NlbGVjdFRoaXNCZWZvclwiXHJcblx0XHRcdFx0XHQ+XHJcblx0XHRcdFx0XHRcdDxtYXQtaWNvbiBjbGFzcz1cInctMTYgaC0xNlwiIFtzdmdJY29uXT1cIidhbGVydEljb24nXCI+IDwvbWF0LWljb24+XHJcblx0XHRcdFx0XHRcdHt7ICdwdWJsaXNoRG9jcy5wdWJsaXNoV2l0aERlcGJlZnByZScgfCB0cmFuc2xhdGUgfX1cclxuXHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdDwvZm9ybT5cclxuXHQ8L25nLXRlbXBsYXRlPlxyXG5cclxuXHQ8bmctdGVtcGxhdGUgI2FjdGlvbnNUZW1wbGF0ZSBsZXQtZGlhbG9nPVwiZGlhbG9nXCI+XHJcblx0XHQ8YnV0dG9uXHJcblx0XHRcdGNsYXNzPVwic3VibWlzc2lvbi1idXR0b25cIlxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nLmV4ZWN1dGVBY3Rpb24ocHVibGlzaClcIlxyXG5cdFx0XHRbZGlzYWJsZWRdPVwiIVB1YmxpY2F0aW9uRm9ybS52YWxpZFwiXHJcblx0XHQ+XHJcblx0XHRcdDxzcGFuPnt7ICdCVVRUT05TLlBVQkxJU0gnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG5cdFx0PC9idXR0b24+XHJcblx0PC9uZy10ZW1wbGF0ZT5cclxuPC9uZGYtbnV4ZW8tZGlhbG9nPlxyXG4iXX0=