nuxeo-development-framework 3.8.9 → 3.9.1

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.
Files changed (21) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +38 -23
  2. package/bundles/nuxeo-development-framework.umd.js.map +1 -1
  3. package/esm2015/lib/components/activities-log/activities-log/activities-log.component.js +1 -1
  4. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.js +14 -3
  5. package/esm2015/lib/components/dynamic-form/components/form-wrappers/user-selector-wrapper/user-selector-wrapper.component.js +1 -1
  6. package/esm2015/lib/components/dynamic-search/dynamic-search/dynamic-search.component.js +7 -4
  7. package/esm2015/lib/components/dynamic-tabs/dynamic-tabs/dynamic-tabs.component.js +2 -2
  8. package/esm2015/lib/components/latest-activity/components/activity-line/activity-line.component.js +9 -16
  9. package/esm2015/lib/components/latest-activity/components/latest-activity/latest-activity.component.js +4 -2
  10. package/esm2015/lib/components/latest-activity/components/single-activity/single-activity.component.js +6 -2
  11. package/esm2015/lib/components/viewer-log/components/viewer-log/viewer-log.component.js +4 -2
  12. package/fesm2015/nuxeo-development-framework.js +38 -22
  13. package/fesm2015/nuxeo-development-framework.js.map +1 -1
  14. package/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.d.ts +5 -1
  15. package/lib/components/dynamic-search/dynamic-search/dynamic-search.component.d.ts +2 -0
  16. package/lib/components/dynamic-tabs/dynamic-tabs/dynamic-tabs.component.d.ts +1 -1
  17. package/lib/components/latest-activity/components/activity-line/activity-line.component.d.ts +5 -12
  18. package/lib/components/latest-activity/components/latest-activity/latest-activity.component.d.ts +2 -1
  19. package/lib/components/latest-activity/components/single-activity/single-activity.component.d.ts +3 -1
  20. package/lib/components/viewer-log/components/viewer-log/viewer-log.component.d.ts +2 -1
  21. package/package.json +1 -1
@@ -168,7 +168,7 @@ export class ActivitiesLogComponent {
168
168
  }
169
169
  }
170
170
  ActivitiesLogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ActivitiesLogComponent, deps: [{ token: i1.ActivitiesLogService }, { token: i2.AppConfigService }], target: i0.ɵɵFactoryTarget.Component });
171
- ActivitiesLogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ActivitiesLogComponent, selector: "app-activities-log", inputs: { documentId: "documentId", file: "file", documentTitle: "documentTitle" }, outputs: { success: "success" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"viewer-loader pb-2\">\r\n <mat-progress-bar *ngIf=\"isFetching\" mode=\"indeterminate\"></mat-progress-bar>\r\n</div>\r\n<div class=\"activity-button flex flex-row justify-end items-center\">\r\n <form [formGroup]=\"filterForm\">\r\n <div class=\"w-full flex flex-row justify-end\">\r\n <cts-dynamic-form-slide-toggleitem class=\"text-base text-primary-500 font-bold mb-0\"\r\n formControlName=\"allevent\" [label]=\"'ACTIVITY_LOG.AllEvent'| translate\" (onToggle)=\"getToggleFilters()\">\r\n </cts-dynamic-form-slide-toggleitem>\r\n </div>\r\n </form>\r\n</div>\r\n<div class=\"activity-body\">\r\n <div class=\"activity-area\">\r\n <div *ngFor=\"let item of activitylog; let i = index\">\r\n <cts-single-activity [item]=\"item\" [documentTitle]=\"documentTitle\">\r\n </cts-single-activity>\r\n </div>\r\n </div>\r\n</div>", styles: [".activity-body{padding:14px 10px;overflow:auto;height:100%;overflow-x:hidden}.activity-body .activity-area{padding-inline-start:20px;padding-inline-end:12px;border-inline-start:2px solid #d9dce2}.activity-button{padding:0 25px}\n"], components: [{ type: i3.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "mode", "value", "bufferValue"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i4.DynamicFormSlideToggleitemComponent, selector: "cts-dynamic-form-slide-toggleitem", inputs: ["label", "disabled", "checked", "theme"], outputs: ["onToggle"] }, { type: i5.SingleActivityComponent, selector: "cts-single-activity", inputs: ["item", "documentTitle"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": i8.TranslatePipe } });
171
+ ActivitiesLogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ActivitiesLogComponent, selector: "app-activities-log", inputs: { documentId: "documentId", file: "file", documentTitle: "documentTitle" }, outputs: { success: "success" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"viewer-loader pb-2\">\r\n <mat-progress-bar *ngIf=\"isFetching\" mode=\"indeterminate\"></mat-progress-bar>\r\n</div>\r\n<div class=\"activity-button flex flex-row justify-end items-center\">\r\n <form [formGroup]=\"filterForm\">\r\n <div class=\"w-full flex flex-row justify-end\">\r\n <cts-dynamic-form-slide-toggleitem class=\"text-base text-primary-500 font-bold mb-0\"\r\n formControlName=\"allevent\" [label]=\"'ACTIVITY_LOG.AllEvent'| translate\" (onToggle)=\"getToggleFilters()\">\r\n </cts-dynamic-form-slide-toggleitem>\r\n </div>\r\n </form>\r\n</div>\r\n<div class=\"activity-body\">\r\n <div class=\"activity-area\">\r\n <div *ngFor=\"let item of activitylog; let i = index\">\r\n <cts-single-activity [item]=\"item\" [documentTitle]=\"documentTitle\">\r\n </cts-single-activity>\r\n </div>\r\n </div>\r\n</div>", styles: [".activity-body{padding:14px 10px;overflow:auto;height:100%;overflow-x:hidden}.activity-body .activity-area{padding-inline-start:20px;padding-inline-end:12px;border-inline-start:2px solid #d9dce2}.activity-button{padding:0 25px}\n"], components: [{ type: i3.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "mode", "value", "bufferValue"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i4.DynamicFormSlideToggleitemComponent, selector: "cts-dynamic-form-slide-toggleitem", inputs: ["label", "disabled", "checked", "theme"], outputs: ["onToggle"] }, { type: i5.SingleActivityComponent, selector: "cts-single-activity", inputs: ["item", "documentTitle", "newLogActor", "isArabic"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i7.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": i8.TranslatePipe } });
172
172
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ActivitiesLogComponent, decorators: [{
173
173
  type: Component,
174
174
  args: [{
@@ -53,6 +53,8 @@ export class DynamicFormSelectUsersComponent {
53
53
  this.disabled = false;
54
54
  /** List of usernames that should be exluded */
55
55
  this.filter = [];
56
+ /** flage to indicate if use full arabic name or not beside fullName */
57
+ this.useArabicName = false;
56
58
  /** event emitted when item is selected */
57
59
  this.onSelectItems = new EventEmitter();
58
60
  this.loading = false;
@@ -61,6 +63,7 @@ export class DynamicFormSelectUsersComponent {
61
63
  this.numberOfItemsFromEndBeforeFetchingMore = 10;
62
64
  this.propagateChange = () => { };
63
65
  this.validateFn = () => { };
66
+ this.isArabic = false;
64
67
  this.onTouched = () => {
65
68
  /*Empty*/
66
69
  };
@@ -116,6 +119,7 @@ export class DynamicFormSelectUsersComponent {
116
119
  }
117
120
  this.getDepartments();
118
121
  this.translation.isArabic.subscribe((ar) => {
122
+ this.isArabic = ar;
119
123
  ar
120
124
  ? (this.suffix = 'مستخدم تم إختياره')
121
125
  : (this.suffix = 'Users Selected');
@@ -242,7 +246,10 @@ export class DynamicFormSelectUsersComponent {
242
246
  }
243
247
  constructUserArray(data, filterValue) {
244
248
  let ConstructedData;
245
- ConstructedData = this.insertFUllName(data);
249
+ // if not using arabic name then construct full name here
250
+ if (!this.useArabicName) {
251
+ ConstructedData = this.insertFUllName(data);
252
+ }
246
253
  ConstructedData = this.filterUsers(data, filterValue);
247
254
  return ConstructedData;
248
255
  }
@@ -270,7 +277,7 @@ export class DynamicFormSelectUsersComponent {
270
277
  }
271
278
  }
272
279
  DynamicFormSelectUsersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFormSelectUsersComponent, deps: [{ token: i1.UsersInDepartmentsApiService }, { token: i2.TranslateService }, { token: i3.TranslationService }, { token: i4.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
273
- DynamicFormSelectUsersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFormSelectUsersComponent, selector: "cts-dynamic-form-select-users", inputs: { deptTitle: "deptTitle", groupName: "groupName", label: "label", bindValue: "bindValue", bindLabel: "bindLabel", placeholder: "placeholder", multiple: "multiple", searchable: "searchable", closeOnSelect: "closeOnSelect", hideSelectedItems: "hideSelectedItems", preSelectedValues: "preSelectedValues", usePreSelectedValue: "usePreSelectedValue", disabled: "disabled", filter: "filter" }, outputs: { onSelectItems: "onSelectItems" }, viewQueries: [{ propertyName: "ngSelectComponent", first: true, predicate: ["ngSelectComponent"], descendants: true }], usesOnChanges: 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<div class=\"user-select\" [ngClass]=\"{ 'multiple-wrapper': multiple }\" SetRtl>\r\n <ng-select\r\n #ngSelectComponent\r\n [items]=\"buffer\"\r\n [bindLabel]=\"bindLabel\"\r\n [placeholder]=\"\r\n multiple && (selection && selection.length > 0) ? selectionstrg : placeholder\r\n \"\r\n [multiple]=\"multiple\"\r\n [searchable]=\"searchable\"\r\n [closeOnSelect]=\"closeOnSelect\"\r\n [hideSelected]=\"hideSelectedItems\"\r\n [loading]=\"loading\"\r\n (scrollToEnd)=\"onScrollToEnd()\"\r\n [disabled]=\"disabled\"\r\n [typeahead]=\"userNameInput$\"\r\n [compareWith]=\"compareFn\"\r\n [(ngModel)]=\"selection\"\r\n (change)=\"emitSelection($event)\"\r\n >\r\n <ng-template ng-label-tmp let-item=\"item\" let-clear=\"clear\">\r\n <span\r\n style=\"\r\n display: flex;\r\n align-items: center;\r\n column-gap: 4px;\r\n font-size: 16px;\r\n \"\r\n >\r\n <div style=\"width: 30px; height: 30px\">\r\n <cts-avatar [user]=\"item\"></cts-avatar>\r\n </div>\r\n <div class=\"user-name\">\r\n {{ item?.id === 'system' ? ('SYSTEM_ADMIN' | translate) : item?.properties?.firstName + \" \" +item?.properties?.lastName }}\r\n\r\n\r\n </div>\r\n <div>\r\n <span\r\n class=\"ng-value-icon right\"\r\n (click)=\"clear(item)\"\r\n aria-hidden=\"true\"\r\n >\u00D7</span\r\n >\r\n </div>\r\n </span>\r\n </ng-template>\r\n\r\n <ng-template\r\n ng-option-tmp\r\n let-item=\"item\"\r\n let-item$=\"item$\"\r\n let-index=\"index\"\r\n >\r\n <span\r\n style=\"\r\n display: flex;\r\n align-items: center;\r\n column-gap: 4px;\r\n font-size: 16px;\r\n \"\r\n >\r\n <mat-checkbox\r\n *ngIf=\"multiple\"\r\n id=\"item-{{ index }}\"\r\n [ngModel]=\"item$.selected\"\r\n (click)=\"(false)\"\r\n ></mat-checkbox>\r\n <div style=\"width: 30px; height: 30px\">\r\n <cts-avatar [user]=\"item\"></cts-avatar>\r\n </div>\r\n <div>\r\n {{ item?.id === 'system' ? ('SYSTEM_ADMIN' | translate) : item?.properties?.firstName + \" \" +item?.properties?.lastName }}\r\n </div>\r\n\r\n <div></div>\r\n </span>\r\n </ng-template>\r\n </ng-select>\r\n</div>\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 {{ \"VALIDATORS.REQUIRED\" | translate }}\r\n </li>\r\n </ul>\r\n</mat-error>\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.select-label{color:#8f98aa;font-size:12px;margin-bottom:0}.user-select .ng-select-container{border:1px solid #ccc!important;border-radius:5px!important;background-color:#8f98aa1a!important}.user-select .ng-select-container .ng-value-container{padding:5px 7px 0!important}.user-select .ng-select-container .ng-value-container .ng-placeholder{padding:0 5px;font-size:12px}.user-select .ng-select-container .ng-value-container .ng-value{color:#495057}.user-select .ng-select-container .ng-arrow-wrapper{padding:0 20px}.user-select .ng-select-container .ng-input{left:10px;right:10px;width:auto}.user-select .mat-checkbox-ripple .mat-ripple-element,.user-select .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#33e3b7!important}.user-select .mat-checkbox-ripple .mat-ripple-element{position:fixed;left:inherit;top:inherit;transform:translate(-3px,-3px)!important}.user-select mat-checkbox .mat-checkbox-background{background-color:#d9dce2!important}.multiple-wrapper .ng-select-container{overflow:visible!important}.multiple-wrapper .ng-select-container.ng-has-value{margin-bottom:65px}.multiple-wrapper .ng-select-container .ng-value-container{position:absolute;top:40px;width:100%;max-height:65px;overflow-y:auto}.multiple-wrapper .ng-select-container .ng-value-container .ng-placeholder{display:block;position:absolute;top:-26px!important}.multiple-wrapper .ng-select-container .ng-value-container .ng-value{padding:5px 10px}.multiple-wrapper .ng-select-container .ng-value-container .ng-value .user-name{font-size:12px}.multiple-wrapper .ng-select-container .ng-value-container .ng-input{position:absolute;top:-35px!important}.multiple-wrapper .ng-select-container .ng-clear-wrapper{display:none}.multiple-wrapper .ng-select-container .ng-arrow-wrapper{position:absolute;right:5px}.multiple-wrapper .ng-select-filtered .ng-value-container .ng-placeholder{display:none!important}.multiple-wrapper.rtl .ng-select-container .ng-value-container .ng-value{padding:5px 10px}.multiple-wrapper.rtl .ng-select-container .ng-value-container .ng-value .ng-value-icon{border-left:none!important;border-right:1px solid #b8dbff}.multiple-wrapper.rtl .ng-select-container .ng-arrow-wrapper{left:5px;right:auto}.ng-select-disabled .ng-select-container{background-color:#e9ecef!important}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper{position:relative}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper input{visibility:hidden;width:20px;height:20px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper .icon-wrapper{position:absolute;top:0px;left:0px;width:20px;height:20px;border:1px solid #2e62df;display:flex;justify-content:center;align-items:center}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper .icon-wrapper .icon{color:#2e62df;display:none;justify-content:center;align-items:center;font-weight:bold}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option-selected .option-wrapper .check-box-wrapper .icon-wrapper .icon{display:flex}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option-selected .option-wrapper .label-wrapper{color:#2e62df}.ng-select .ng-select-focused:not(.ng-select-opened) .ng-select-container{border-color:#ccc;box-shadow:none}\n"], 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.AvatarComponent, selector: "cts-avatar", inputs: ["user"] }, { type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.SetRtlDirective, selector: "[SetRtl]" }, { type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.ɵh, selector: "[ng-label-tmp]" }, { type: i5.ɵf, selector: "[ng-option-tmp]" }, { type: i10.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "translate": i2.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
280
+ DynamicFormSelectUsersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFormSelectUsersComponent, selector: "cts-dynamic-form-select-users", inputs: { deptTitle: "deptTitle", groupName: "groupName", label: "label", bindValue: "bindValue", bindLabel: "bindLabel", arabicBindLabel: "arabicBindLabel", placeholder: "placeholder", multiple: "multiple", searchable: "searchable", closeOnSelect: "closeOnSelect", hideSelectedItems: "hideSelectedItems", preSelectedValues: "preSelectedValues", usePreSelectedValue: "usePreSelectedValue", disabled: "disabled", filter: "filter", useArabicName: "useArabicName" }, outputs: { onSelectItems: "onSelectItems" }, viewQueries: [{ propertyName: "ngSelectComponent", first: true, predicate: ["ngSelectComponent"], descendants: true }], usesOnChanges: 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<div class=\"user-select\" [ngClass]=\"{ 'multiple-wrapper': multiple }\" SetRtl>\r\n <ng-select\r\n #ngSelectComponent\r\n [items]=\"buffer\"\r\n [bindLabel]=\"useArabicName ? (isArabic ? arabicBindLabel : bindLabel) : bindLabel\"\r\n [placeholder]=\"\r\n multiple && (selection && selection.length > 0) ? selectionstrg : placeholder\r\n \"\r\n [multiple]=\"multiple\"\r\n [searchable]=\"searchable\"\r\n [closeOnSelect]=\"closeOnSelect\"\r\n [hideSelected]=\"hideSelectedItems\"\r\n [loading]=\"loading\"\r\n (scrollToEnd)=\"onScrollToEnd()\"\r\n [disabled]=\"disabled\"\r\n [typeahead]=\"userNameInput$\"\r\n [compareWith]=\"compareFn\"\r\n [(ngModel)]=\"selection\"\r\n (change)=\"emitSelection($event)\"\r\n >\r\n <ng-template ng-label-tmp let-item=\"item\" let-clear=\"clear\">\r\n <span\r\n style=\"\r\n display: flex;\r\n align-items: center;\r\n column-gap: 4px;\r\n font-size: 16px;\r\n \"\r\n >\r\n <div style=\"width: 30px; height: 30px\">\r\n <cts-avatar [user]=\"item\"></cts-avatar>\r\n </div>\r\n <div class=\"user-name\">\r\n {{ item?.id === 'system' ? ('SYSTEM_ADMIN' | translate) : \r\n (useArabicName ? (isArabic ? (item?.fullNameAr ? item?.fullNameAr : item?.fullName) : item?.fullName) : \r\n (item?.properties?.firstName + \" \" +item?.properties?.lastName)) }}\r\n\r\n\r\n </div>\r\n <div>\r\n <span\r\n class=\"ng-value-icon right\"\r\n (click)=\"clear(item)\"\r\n aria-hidden=\"true\"\r\n >\u00D7</span\r\n >\r\n </div>\r\n </span>\r\n </ng-template>\r\n\r\n <ng-template\r\n ng-option-tmp\r\n let-item=\"item\"\r\n let-item$=\"item$\"\r\n let-index=\"index\"\r\n >\r\n <span\r\n style=\"\r\n display: flex;\r\n align-items: center;\r\n column-gap: 4px;\r\n font-size: 16px;\r\n \"\r\n >\r\n <mat-checkbox\r\n *ngIf=\"multiple\"\r\n id=\"item-{{ index }}\"\r\n [ngModel]=\"item$.selected\"\r\n (click)=\"(false)\"\r\n ></mat-checkbox>\r\n <div style=\"width: 30px; height: 30px\">\r\n <cts-avatar [user]=\"item\"></cts-avatar>\r\n </div>\r\n <div>\r\n {{ item?.id === 'system' ? ('SYSTEM_ADMIN' | translate) : \r\n (useArabicName ? (isArabic ? (item?.fullNameAr ? item?.fullNameAr : item?.fullName) : item?.fullName) : \r\n (item?.properties?.firstName + \" \" +item?.properties?.lastName)) }}\r\n </div>\r\n\r\n <div></div>\r\n </span>\r\n </ng-template>\r\n </ng-select>\r\n</div>\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 {{ \"VALIDATORS.REQUIRED\" | translate }}\r\n </li>\r\n </ul>\r\n</mat-error>\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.select-label{color:#8f98aa;font-size:12px;margin-bottom:0}.user-select .ng-select-container{border:1px solid #ccc!important;border-radius:5px!important;background-color:#8f98aa1a!important}.user-select .ng-select-container .ng-value-container{padding:5px 7px 0!important}.user-select .ng-select-container .ng-value-container .ng-placeholder{padding:0 5px;font-size:12px}.user-select .ng-select-container .ng-value-container .ng-value{color:#495057}.user-select .ng-select-container .ng-arrow-wrapper{padding:0 20px}.user-select .ng-select-container .ng-input{left:10px;right:10px;width:auto}.user-select .mat-checkbox-ripple .mat-ripple-element,.user-select .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#33e3b7!important}.user-select .mat-checkbox-ripple .mat-ripple-element{position:fixed;left:inherit;top:inherit;transform:translate(-3px,-3px)!important}.user-select mat-checkbox .mat-checkbox-background{background-color:#d9dce2!important}.multiple-wrapper .ng-select-container{overflow:visible!important}.multiple-wrapper .ng-select-container.ng-has-value{margin-bottom:65px}.multiple-wrapper .ng-select-container .ng-value-container{position:absolute;top:40px;width:100%;max-height:65px;overflow-y:auto}.multiple-wrapper .ng-select-container .ng-value-container .ng-placeholder{display:block;position:absolute;top:-26px!important}.multiple-wrapper .ng-select-container .ng-value-container .ng-value{padding:5px 10px}.multiple-wrapper .ng-select-container .ng-value-container .ng-value .user-name{font-size:12px}.multiple-wrapper .ng-select-container .ng-value-container .ng-input{position:absolute;top:-35px!important}.multiple-wrapper .ng-select-container .ng-clear-wrapper{display:none}.multiple-wrapper .ng-select-container .ng-arrow-wrapper{position:absolute;right:5px}.multiple-wrapper .ng-select-filtered .ng-value-container .ng-placeholder{display:none!important}.multiple-wrapper.rtl .ng-select-container .ng-value-container .ng-value{padding:5px 10px}.multiple-wrapper.rtl .ng-select-container .ng-value-container .ng-value .ng-value-icon{border-left:none!important;border-right:1px solid #b8dbff}.multiple-wrapper.rtl .ng-select-container .ng-arrow-wrapper{left:5px;right:auto}.ng-select-disabled .ng-select-container{background-color:#e9ecef!important}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper{position:relative}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper input{visibility:hidden;width:20px;height:20px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper .icon-wrapper{position:absolute;top:0px;left:0px;width:20px;height:20px;border:1px solid #2e62df;display:flex;justify-content:center;align-items:center}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper .icon-wrapper .icon{color:#2e62df;display:none;justify-content:center;align-items:center;font-weight:bold}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option-selected .option-wrapper .check-box-wrapper .icon-wrapper .icon{display:flex}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option-selected .option-wrapper .label-wrapper{color:#2e62df}.ng-select .ng-select-focused:not(.ng-select-opened) .ng-select-container{border-color:#ccc;box-shadow:none}\n"], 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.AvatarComponent, selector: "cts-avatar", inputs: ["user"] }, { type: i7.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.SetRtlDirective, selector: "[SetRtl]" }, { type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i5.ɵh, selector: "[ng-label-tmp]" }, { type: i5.ɵf, selector: "[ng-option-tmp]" }, { type: i10.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "translate": i2.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
274
281
  __decorate([
275
282
  Cacheable({
276
283
  maxCacheCount: 1000,
@@ -302,6 +309,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
302
309
  type: Input
303
310
  }], bindLabel: [{
304
311
  type: Input
312
+ }], arabicBindLabel: [{
313
+ type: Input
305
314
  }], placeholder: [{
306
315
  type: Input
307
316
  }], multiple: [{
@@ -320,7 +329,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
320
329
  type: Input
321
330
  }], filter: [{
322
331
  type: Input
332
+ }], useArabicName: [{
333
+ type: Input
323
334
  }], onSelectItems: [{
324
335
  type: Output
325
336
  }], getUsersSuggestions: [] } });
326
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMvZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMvZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUVKLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFTdkIsT0FBTyxFQUFrQixPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUVMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFDO0FBR3hCLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7Ozs7OztBQUN6Qzs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQztBQU9yQixNQUFNLE9BQU8sK0JBQStCO0lBa0UxQyxZQUNVLGNBQTRDLEVBQzdDLFNBQTJCLEVBQzFCLFdBQStCLEVBQ1os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LEVBQUUsNENBQTRDO29CQUN6RCxTQUFTLEVBQUUsQ0FBQyw0Q0FBNEMsQ0FBQztvQkFDekQsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3RDOzswQkF1RUksSUFBSTs7MEJBQUksUUFBUTs0Q0FuRWEsaUJBQWlCO3NCQUFoRCxTQUFTO3VCQUFDLG1CQUFtQjtnQkFNckIsU0FBUztzQkFBakIsS0FBSztnQkFFSyxTQUFTO3NCQUFqQixLQUFLO2dCQUVDLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBRUcsYUFBYTtzQkFBckIsS0FBSztnQkFFRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUVHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFFRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNO2dCQWlPUCxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9uRGVzdHJveSxcclxuICBPcHRpb25hbCxcclxuICBPdXRwdXQsXHJcbiAgU2VsZixcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBBYnN0cmFjdENvbnRyb2wsXHJcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXHJcbiAgRm9ybUNvbnRyb2wsXHJcbiAgTmdDb250cm9sLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdTZWxlY3RDb21wb25lbnQgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBjYXRjaEVycm9yLFxyXG4gIGRlYm91bmNlVGltZSxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICBzd2l0Y2hNYXAsXHJcbiAgdGFwLFxyXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlcnNJbkRlcGFydG1lbnRzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdXNlci1hcGkuc2VydmljZSc7XHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgQ2FjaGVhYmxlIH0gZnJvbSAndHMtY2FjaGVhYmxlJztcclxuLyoqXHJcbiAqIFVzZXJzIGRyb3Bkb3duIGlucHV0IGludGVncmF0ZWQgd2l0aCB1c2VycyBBUEksXHJcbiAqIHRoYXQgY2FuIGJlIHVzZWQgaW5zaWRlIHJlYWN0aXZlIG9yIHRlbXBsYXRlIGRyaXZlbiBmb3Jtc1xyXG4gKiBAdGl0bGVcclxuICogVXNlcnMgZHJvcGRvd25cclxuICogQGV4YW1wbGVcclxuICogPGN0cy1keW5hbWljLWZvcm0tc2VsZWN0LXVzZXJzXHJcbiAqICAgICBmb3JtQ29udHJvbE5hbWU9XCJjb250cm9sTmFtZVwiXHJcbiAqICAgICBbYmluZFZhbHVlXT1cImJpbmRUb1Byb3BlcnR5XCJcclxuICogICAgIFtiaW5kTGFiZWxdPVwiJ2JpbmRUb0xhYmVsJ1wiXHJcbiAqICAgICBbc2VhcmNoYWJsZV09XCJ0cnVlXCJcclxuICogICAgIFtsYWJlbF09XCInUEFUSC5UTy5UUkFOU0xBVElPTidcIlxyXG4gKiAgICAgW2RlcHRUaXRsZV09XCInYWxsJ1wiXHJcbiAqICAgPjwvY3RzLWR5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnM+XHJcbiAqL1xyXG5jb25zdCBtaW51dGUgPSA2MDAwMDtcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtZHluYW1pYy1mb3JtLXNlbGVjdC11c2VycycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1TZWxlY3RVc2Vyc0NvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yXHJcbntcclxuICBAVmlld0NoaWxkKCduZ1NlbGVjdENvbXBvbmVudCcpIG5nU2VsZWN0Q29tcG9uZW50OiBOZ1NlbGVjdENvbXBvbmVudDtcclxuICBzZWxlY3Rpb25zdHJnOiBzdHJpbmc7XHJcbiAgZGF0YSA9IFtdO1xyXG4gIGFsbFVzZXJzOiBib29sZWFuO1xyXG4gIHVzZXJOYW1lSW5wdXQkID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG4gIC8qKiBmaWx0ZXIgdXNlcnMgYnkgZGVwYXJ0bWVudCAoZGVwYXJ0bWVudE5hbWUgfCBhbGwpICovXHJcbiAgQElucHV0KCkgZGVwdFRpdGxlOiBzdHJpbmc7XHJcbiAgICAvKiogZmlsdGVyIHVzZXJzIGJ5IGdyb3VwIG5hbWUgPT4gdGhpcyB3aWxsIHJlcGxjZSBkZXAgdGl0bGUgKi9cclxuICAgIEBJbnB1dCgpIGdyb3VwTmFtZTogc3RyaW5nO1xyXG4gIC8qKiBGaWVsZCBMYWJlbCAqL1xyXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XHJcbiAgLyoqIEJpbmQgdmFsdWUgdG8gb2JqZWN0IHByb3BlcnR5ICovXHJcbiAgQElucHV0KCkgYmluZFZhbHVlO1xyXG4gIC8qKiBCaW5kIGxhYmVsIHRvIG9iamVjdCBwcm9wZXJ0eSAqL1xyXG4gIEBJbnB1dCgpIGJpbmRMYWJlbDtcclxuICAvKiogUGxhY2Vob2xkZXIgdGV4dCAqL1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyO1xyXG4gIC8qKiBDYW4gc2VsZWN0IG11bHRpcGxlICovXHJcbiAgQElucHV0KCkgbXVsdGlwbGUgPSBmYWxzZTtcclxuICAvKiogaXMgZHJvcGRvd24gc2VhcmNoYWJsZSAqL1xyXG4gIEBJbnB1dCgpIHNlYXJjaGFibGUgPSBmYWxzZTtcclxuICAvKiogc2hvdWxkIGNsb3NlIGRyb3Bkb3duIG9uIHZhbHVlIHNlbGVjdGlvbiAqL1xyXG4gIEBJbnB1dCgpIGNsb3NlT25TZWxlY3QgPSB0cnVlO1xyXG4gIC8qKiBzaG91bGQgaGlkZSBzZWxlY3RlZCBpdGVtcyAqL1xyXG4gIEBJbnB1dCgpIGhpZGVTZWxlY3RlZEl0ZW1zID0gZmFsc2U7XHJcbiAgLyoqIFByZSBTZWxlY3RlZCB2YWx1ZXMgKi9cclxuICBASW5wdXQoKSBwcmVTZWxlY3RlZFZhbHVlcztcclxuICAvKiogZmxhZ2UgdG8gdXNlIHByZXNlbGVjdGVkIHZhbHVlcyBvciBub3QgKi9cclxuICBASW5wdXQoKSB1c2VQcmVTZWxlY3RlZFZhbHVlID0gZmFsc2U7XHJcbiAgLyoqIGlzIERpc2FibGVkICovXHJcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcclxuICAvKiogTGlzdCBvZiB1c2VybmFtZXMgdGhhdCBzaG91bGQgYmUgZXhsdWRlZCAgKi9cclxuICBASW5wdXQoKSBmaWx0ZXI6IHN0cmluZ1tdID0gW107XHJcbiAgLyoqIGV2ZW50IGVtaXR0ZWQgd2hlbiBpdGVtIGlzIHNlbGVjdGVkICovXHJcbiAgQE91dHB1dCgpIG9uU2VsZWN0SXRlbXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgbG9hZGluZyA9IGZhbHNlO1xyXG4gIHNlbGVjdGlvbjtcclxuICBidWZmZXIgPSBbXTtcclxuICBidWZmZXJTaXplID0gMTAwMDtcclxuICBudW1iZXJPZkl0ZW1zRnJvbUVuZEJlZm9yZUZldGNoaW5nTW9yZSA9IDEwO1xyXG4gIHN1ZmZpeDtcclxuXHJcbiAgcHJvcGFnYXRlQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcclxuICB2YWxpZGF0ZUZuOiBhbnkgPSAoKSA9PiB7fTtcclxuXHJcbiAgcHVibGljIG9uVG91Y2hlZDogYW55ID0gKCkgPT4ge1xyXG4gICAgLypFbXB0eSovXHJcbiAgfTtcclxuICBwYWdlSW5kZXg6IG51bWJlciA9IDA7XHJcbiAgaXNOZXh0UGFnZUF2YWlsYWJsZTogYm9vbGVhbjtcclxuICBwdWJsaWMgZ2V0IGludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250cm9sID8gdGhpcy5jb250cm9sLmludmFsaWQgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgc2hvd0Vycm9yKCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHsgZGlydHksIHRvdWNoZWQgfSA9IHRoaXMuY29udHJvbDtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5pbnZhbGlkID8gZGlydHkgfHwgdG91Y2hlZCA6IGZhbHNlO1xyXG4gIH1cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgdXNlckFwaVNlcnZpY2U6IFVzZXJzSW5EZXBhcnRtZW50c0FwaVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGlvbjogVHJhbnNsYXRpb25TZXJ2aWNlLFxyXG4gICAgQFNlbGYoKSBAT3B0aW9uYWwoKSBwdWJsaWMgY29udHJvbDogTmdDb250cm9sXHJcbiAgKSB7XHJcbiAgICBpZiAodGhpcy5jb250cm9sKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGVtaXRTZWxlY3Rpb24oZXZlbnQpIHtcclxuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IGAke3RoaXMuc2VsZWN0aW9uLmxlbmd0aH0gJHt0aGlzLnN1ZmZpeH1gO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UodGhpcy5zZWxlY3Rpb24pO1xyXG4gICAgdGhpcy5vblNlbGVjdEl0ZW1zLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgb25TY3JvbGxUb0VuZCgpIHtcclxuICAgIHRoaXMuZmV0Y2hNb3JlKCk7XHJcbiAgICArK3RoaXMucGFnZUluZGV4O1xyXG4gICAgaWYgKHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSAmJiB0aGlzLmFsbFVzZXJzKSB7XHJcbiAgICAgIHRoaXMuZ2V0RGVwYXJ0bWVudHModGhpcy5wYWdlSW5kZXgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmZXRjaE1vcmUoKSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgY29uc3QgbGVuID0gdGhpcy5idWZmZXIubGVuZ3RoO1xyXG4gICAgY29uc3QgbW9yZSA9IHRoaXMuZGF0YS5zbGljZShsZW4sIHRoaXMuYnVmZmVyU2l6ZSArIGxlbik7XHJcbiAgICB0aGlzLmJ1ZmZlciA9IHRoaXMuZGF0YS5jb25jYXQobW9yZSk7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICB9XHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKChjaGFuZ2VzLmRlcHRUaXRsZSAmJiAhY2hhbmdlcy5kZXB0VGl0bGU/LmZpcnN0Q2hhbmdlKSB8fCAoY2hhbmdlcy5ncm91cE5hbWUgJiYgIWNoYW5nZXMuZ3JvdXBOYW1lPy5maXJzdENoYW5nZSkpIHtcclxuICAgICAgdGhpcy5kYXRhID0gW107XHJcbiAgICAgIHRoaXMuYnVmZmVyID0gW107XHJcbiAgICAgIHRoaXMuZ2V0RGVwYXJ0bWVudHMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hbGxVc2VycyA9IHRoaXMuZGVwdFRpdGxlID09PSAnYWxsJyA/IHRydWUgOiBmYWxzZTtcclxuICAgIHRoaXMuc2VsZWN0aW9uID0gdGhpcy5tdWx0aXBsZSA/IFtdIDogdW5kZWZpbmVkO1xyXG4gICAgaWYgKHRoaXMuYWxsVXNlcnMpIHtcclxuICAgICAgdGhpcy5sb2FkVXNlcnMoKTtcclxuICAgIH1cclxuICAgIHRoaXMuZ2V0RGVwYXJ0bWVudHMoKTtcclxuICAgIHRoaXMudHJhbnNsYXRpb24uaXNBcmFiaWMuc3Vic2NyaWJlKChhcikgPT4ge1xyXG4gICAgICBhclxyXG4gICAgICAgID8gKHRoaXMuc3VmZml4ID0gJ9mF2LPYqtiu2K/ZhSDYqtmFINil2K7YqtmK2KfYsdmHJylcclxuICAgICAgICA6ICh0aGlzLnN1ZmZpeCA9ICdVc2VycyBTZWxlY3RlZCcpO1xyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IGAke3RoaXMuc2VsZWN0aW9uLmxlbmd0aH0gJHt0aGlzLnN1ZmZpeH1gO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldERlcGFydG1lbnRzKHBhZ2UgPSAwKSB7XHJcbiAgICBpZih0aGlzLmdyb3VwTmFtZSl7XHJcbiAgICAgIHRoaXMudXNlckFwaVNlcnZpY2UuZ2V0VXNlcnNVbmRlckNlcnRhaW5Hcm91cCh0aGlzLmdyb3VwTmFtZSkuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICAgIGxldCBuZXdEYXRhID0gdGhpcy5jb25zdHJ1Y3RVc2VyQXJyYXkoXHJcbiAgICAgICAgICBkYXRhLnVzZXJzLFxyXG4gICAgICAgICAgJ3Byb3BlcnRpZXMudXNlcm5hbWUnXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLmRhdGEgPSB0aGlzLmRhdGEuY29uY2F0KG5ld0RhdGEpO1xyXG4gICAgICAgIHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSA9IGRhdGEuaXNOZXh0UGFnZUF2YWlsYWJsZTtcclxuICAgICAgICB0aGlzLmJ1ZmZlciA9ICh0aGlzLmRhdGEgfHwgW10pLnNsaWNlKDAsIHRoaXMuYnVmZmVyU2l6ZSk7XHJcbiAgICAgICAgdGhpcy5idWZmZXIubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICBpdGVtLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSlcclxuICAgIH1lbHNlIGlmICh0aGlzLmRlcHRUaXRsZSkge1xyXG4gICAgICBpZiAodGhpcy5hbGxVc2Vycykge1xyXG4gICAgICAgIHRoaXMuZ2V0QWxsVXNlcnMocGFnZSkuc3Vic2NyaWJlKChkYXRhKSA9PiB7XHJcbiAgICAgICAgICBsZXQgbmV3RGF0YSA9IHRoaXMuY29uc3RydWN0VXNlckFycmF5KGRhdGEuZW50cmllcywgJ2lkJyk7XHJcbiAgICAgICAgICB0aGlzLmRhdGEgPSB0aGlzLmRhdGEuY29uY2F0KG5ld0RhdGEpO1xyXG4gICAgICAgICAgdGhpcy5pc05leHRQYWdlQXZhaWxhYmxlID0gZGF0YS5pc05leHRQYWdlQXZhaWxhYmxlO1xyXG4gICAgICAgICAgdGhpcy5idWZmZXIgPSAodGhpcy5kYXRhIHx8IFtdKS5zbGljZSgwLCB0aGlzLmJ1ZmZlclNpemUpO1xyXG4gICAgICAgICAgdGhpcy5idWZmZXIubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgIGl0ZW0uaXNTZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsgLy8gZm9yIGxvYWRpbmcgc3Bpbm5lclxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZ2V0Q3RzVXNlcnModGhpcy5kZXB0VGl0bGUpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgbGV0IG5ld0RhdGEgPSB0aGlzLmNvbnN0cnVjdFVzZXJBcnJheShcclxuICAgICAgICAgICAgZGF0YS51c2VycyxcclxuICAgICAgICAgICAgJ3Byb3BlcnRpZXMudXNlcm5hbWUnXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhLmNvbmNhdChuZXdEYXRhKTtcclxuICAgICAgICAgIHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSA9IGRhdGEuaXNOZXh0UGFnZUF2YWlsYWJsZTtcclxuICAgICAgICAgIHRoaXMuYnVmZmVyID0gKHRoaXMuZGF0YSB8fCBbXSkuc2xpY2UoMCwgdGhpcy5idWZmZXJTaXplKTtcclxuICAgICAgICAgIHRoaXMuYnVmZmVyLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICBpdGVtLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIGdldEFsbFVzZXJzKHBhZ2UgPSAwKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLnVzZXJBcGlTZXJ2aWNlLmdldEFsbFVzZXJzKHtcclxuICAgICAgY3VycmVudFBhZ2VJbmRleDogcGFnZSxcclxuICAgICAgcGFnZVNpemU6IDIwLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxvYWRVc2VycygpIHtcclxuICAgIHRoaXMudXNlck5hbWVJbnB1dCRcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZGVib3VuY2VUaW1lKDIwMCksXHJcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgICB0YXAoKCkgPT4gKHRoaXMubG9hZGluZyA9IHRydWUpKSxcclxuICAgICAgICBzd2l0Y2hNYXAoKHRlcm0pID0+IHtcclxuICAgICAgICAgIGlmICh0ZXJtICYmIHRlcm0ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmdldFVzZXJzU3VnZ2VzdGlvbnModGVybSk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRBbGxVc2VycygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShcclxuICAgICAgICAoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAoZGF0YS5lbnRyaWVzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBsZXQgbmV3RGF0YSA9IHRoaXMuY29uc3RydWN0VXNlckFycmF5KGRhdGEuZW50cmllcywgJ2lkJyk7XHJcbiAgICAgICAgICAgIHRoaXMuYnVmZmVyID0gKG5ld0RhdGEgfHwgW10pLnNsaWNlKDAsIHRoaXMuYnVmZmVyU2l6ZSk7XHJcbiAgICAgICAgICAgIHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSA9IGRhdGEuaXNOZXh0UGFnZUF2YWlsYWJsZTtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmJ1ZmZlciA9IFtdO1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5idWZmZXIgPSBbXTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgfVxyXG4gIFxyXG4gIHdyaXRlVmFsdWUodmFsdWUpIHtcclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGlvbiA9IHZhbHVlO1xyXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IGAke3RoaXMuc2VsZWN0aW9uLmxlbmd0aH0gJHt0aGlzLnN1ZmZpeH1gO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGlvbiA9IG51bGw7XHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uc3RyZyA9IG51bGxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbXBhcmVGbihpdGVtLCBzZWxlY3RlZCkge1xyXG4gICAgY29uc29sZS5sb2coXCJpdGVtIDFcIiwgaXRlbSk7XHJcbiAgICBjb25zb2xlLmxvZyhcIkl0ZW0gMlwiLCBzZWxlY3RlZCk7XHJcbiAgICByZXR1cm4gaXRlbS5pZCA9PT0gc2VsZWN0ZWQuaWQ7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuKSB7XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHZhbGlkYXRlKGM6IEZvcm1Db250cm9sKSB7XHJcbiAgICByZXR1cm4gdGhpcy52YWxpZGF0ZUZuKGMpO1xyXG4gIH1cclxuICBpc1JlcXVpcmVkKCkge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRyb2wgfHwgIXRoaXMuY29udHJvbC5jb250cm9sLnZhbGlkYXRvcikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdmFsaWRhdG9yID0gdGhpcy5jb250cm9sLmNvbnRyb2wudmFsaWRhdG9yKHt9IGFzIEFic3RyYWN0Q29udHJvbCk7XHJcbiAgICByZXR1cm4gdmFsaWRhdG9yICYmIHZhbGlkYXRvci5yZXF1aXJlZDtcclxuICB9XHJcbiAgaGFzRXJyb3JzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc2hvd0Vycm9yO1xyXG4gIH1cclxuXHJcbiAgLy8gQENhY2hlYWJsZSh7XHJcbiAgLy8gICBtYXhDYWNoZUNvdW50OiAxMDAwLFxyXG4gIC8vICAgbWF4QWdlOiAyMDAwMCxcclxuICAvLyB9KVxyXG5cclxuICBnZXRDdHNVc2VycyhkZXB0VGl0bGUpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMudXNlckFwaVNlcnZpY2UuZ2V0Q3RzVXNlcnMoZGVwdFRpdGxlKTtcclxuICB9XHJcblxyXG4gIEBDYWNoZWFibGUoe1xyXG4gICAgbWF4Q2FjaGVDb3VudDogMTAwMCxcclxuICAgIG1heEFnZTogNSAqIG1pbnV0ZSxcclxuICB9KVxyXG4gIGdldFVzZXJzU3VnZ2VzdGlvbnModGVybSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy51c2VyQXBpU2VydmljZS5nZXRVc2Vyc1N1Z2dlc3Rpb25zKHRlcm0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjb25zdHJ1Y3RVc2VyQXJyYXkoZGF0YSwgZmlsdGVyVmFsdWU6IHN0cmluZykge1xyXG4gICAgbGV0IENvbnN0cnVjdGVkRGF0YTogYW55W107XHJcbiAgICBDb25zdHJ1Y3RlZERhdGEgPSB0aGlzLmluc2VydEZVbGxOYW1lKGRhdGEpO1xyXG4gICAgQ29uc3RydWN0ZWREYXRhID0gdGhpcy5maWx0ZXJVc2VycyhkYXRhLCBmaWx0ZXJWYWx1ZSk7XHJcbiAgICByZXR1cm4gQ29uc3RydWN0ZWREYXRhO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbnNlcnRGVWxsTmFtZShkYXRhKSB7XHJcbiAgICByZXR1cm4gZGF0YS5tYXAoKHVzZXIpID0+IHtcclxuICAgICAgdXNlci5mdWxsTmFtZSA9IGAke3VzZXIucHJvcGVydGllcz8uZmlyc3ROYW1lfSAke3VzZXIucHJvcGVydGllcz8ubGFzdE5hbWV9YDtcclxuICAgIH0pO1xyXG4gIH1cclxuICBwcml2YXRlIGZpbHRlclVzZXJzKGRhdGEsIHBhdGg6IHN0cmluZykge1xyXG4gICAgbGV0IGZpbHRlckRhdGEgPSBkYXRhLmZpbHRlcigodXNlcikgPT4ge1xyXG4gICAgICBjb25zdCBpbmNsdWRlZEluRmlsdGVyID1cclxuICAgICAgICB0aGlzLmZpbHRlci5pbmNsdWRlcyhfLmdldCh1c2VyLCBwYXRoKSkgfHxcclxuICAgICAgICBfLmdldCh1c2VyLCBwYXRoKSA9PT0gJ0FkbWluaXN0cmF0b3InO1xyXG4gICAgICByZXR1cm4gIWluY2x1ZGVkSW5GaWx0ZXI7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBmaWx0ZXJEYXRhO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXNlcnNVbmRlckNlcnRhaW5Hcm91cCgpe1xyXG5cclxuICB9XHJcbiAgcmVzZXQoKSB7XHJcbiAgICB0aGlzLm5nU2VsZWN0Q29tcG9uZW50LmhhbmRsZUNsZWFyQ2xpY2soKTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnVzZXJOYW1lSW5wdXQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPlxyXG4gIDxkaXY+XHJcbiAgICA8bGFiZWwgY2xhc3M9XCJzZWxlY3QtbGFiZWxcIlxyXG4gICAgICA+e3sgbGFiZWwgfCB0cmFuc2xhdGVcclxuICAgICAgfX08c3BhbiAqbmdJZj1cImlzUmVxdWlyZWQoKVwiIGNsYXNzPVwidGV4dC1kYW5nZXIgbS0xXCI+Kjwvc3Bhbj48L2xhYmVsXHJcbiAgICA+XHJcbiAgPC9kaXY+XHJcbjwvbmctY29udGFpbmVyPlxyXG48ZGl2IGNsYXNzPVwidXNlci1zZWxlY3RcIiBbbmdDbGFzc109XCJ7ICdtdWx0aXBsZS13cmFwcGVyJzogbXVsdGlwbGUgfVwiIFNldFJ0bD5cclxuICA8bmctc2VsZWN0XHJcbiAgICAjbmdTZWxlY3RDb21wb25lbnRcclxuICAgIFtpdGVtc109XCJidWZmZXJcIlxyXG4gICAgW2JpbmRMYWJlbF09XCJiaW5kTGFiZWxcIlxyXG4gICAgW3BsYWNlaG9sZGVyXT1cIlxyXG4gICAgICBtdWx0aXBsZSAmJiAoc2VsZWN0aW9uICYmIHNlbGVjdGlvbi5sZW5ndGggPiAwKSA/IHNlbGVjdGlvbnN0cmcgOiBwbGFjZWhvbGRlclxyXG4gICAgXCJcclxuICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXHJcbiAgICBbc2VhcmNoYWJsZV09XCJzZWFyY2hhYmxlXCJcclxuICAgIFtjbG9zZU9uU2VsZWN0XT1cImNsb3NlT25TZWxlY3RcIlxyXG4gICAgW2hpZGVTZWxlY3RlZF09XCJoaWRlU2VsZWN0ZWRJdGVtc1wiXHJcbiAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcclxuICAgIChzY3JvbGxUb0VuZCk9XCJvblNjcm9sbFRvRW5kKClcIlxyXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIFt0eXBlYWhlYWRdPVwidXNlck5hbWVJbnB1dCRcIlxyXG4gICAgW2NvbXBhcmVXaXRoXT1cImNvbXBhcmVGblwiXHJcbiAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGlvblwiXHJcbiAgICAoY2hhbmdlKT1cImVtaXRTZWxlY3Rpb24oJGV2ZW50KVwiXHJcbiAgPlxyXG4gICAgPG5nLXRlbXBsYXRlIG5nLWxhYmVsLXRtcCBsZXQtaXRlbT1cIml0ZW1cIiBsZXQtY2xlYXI9XCJjbGVhclwiPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIHN0eWxlPVwiXHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGNvbHVtbi1nYXA6IDRweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOiAzMHB4OyBoZWlnaHQ6IDMwcHhcIj5cclxuICAgICAgICAgIDxjdHMtYXZhdGFyIFt1c2VyXT1cIml0ZW1cIj48L2N0cy1hdmF0YXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInVzZXItbmFtZVwiPlxyXG4gICAgICAgICAge3sgaXRlbT8uaWQgPT09ICdzeXN0ZW0nID8gKCdTWVNURU1fQURNSU4nIHwgdHJhbnNsYXRlKSA6IGl0ZW0/LnByb3BlcnRpZXM/LmZpcnN0TmFtZSArIFwiIFwiICtpdGVtPy5wcm9wZXJ0aWVzPy5sYXN0TmFtZSB9fVxyXG5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgIGNsYXNzPVwibmctdmFsdWUtaWNvbiByaWdodFwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJjbGVhcihpdGVtKVwiXHJcbiAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgID7Dlzwvc3BhblxyXG4gICAgICAgICAgPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZVxyXG4gICAgICBuZy1vcHRpb24tdG1wXHJcbiAgICAgIGxldC1pdGVtPVwiaXRlbVwiXHJcbiAgICAgIGxldC1pdGVtJD1cIml0ZW0kXCJcclxuICAgICAgbGV0LWluZGV4PVwiaW5kZXhcIlxyXG4gICAgPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIHN0eWxlPVwiXHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGNvbHVtbi1nYXA6IDRweDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG1hdC1jaGVja2JveFxyXG4gICAgICAgICAgKm5nSWY9XCJtdWx0aXBsZVwiXHJcbiAgICAgICAgICBpZD1cIml0ZW0te3sgaW5kZXggfX1cIlxyXG4gICAgICAgICAgW25nTW9kZWxdPVwiaXRlbSQuc2VsZWN0ZWRcIlxyXG4gICAgICAgICAgKGNsaWNrKT1cIihmYWxzZSlcIlxyXG4gICAgICAgID48L21hdC1jaGVja2JveD5cclxuICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDMwcHg7IGhlaWdodDogMzBweFwiPlxyXG4gICAgICAgICAgPGN0cy1hdmF0YXIgW3VzZXJdPVwiaXRlbVwiPjwvY3RzLWF2YXRhcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAge3sgaXRlbT8uaWQgPT09ICdzeXN0ZW0nID8gKCdTWVNURU1fQURNSU4nIHwgdHJhbnNsYXRlKSA6IGl0ZW0/LnByb3BlcnRpZXM/LmZpcnN0TmFtZSArIFwiIFwiICtpdGVtPy5wcm9wZXJ0aWVzPy5sYXN0TmFtZSB9fVxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2PjwvZGl2PlxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvbmctc2VsZWN0PlxyXG48L2Rpdj5cclxuPG1hdC1lcnJvclxyXG4gIFthdHRyLmRhdGEtYXV0b21hdGlvbi1pZF09XCInY2FyZC10ZXh0aXRlbS1lcnJvci0nXCJcclxuICBjbGFzcz1cImFwcC10ZXh0aXRlbS1lZGl0YWJsZS1lcnJvclwiXHJcbiAgKm5nSWY9XCJoYXNFcnJvcnMoKVwiXHJcbj5cclxuICA8dWw+XHJcbiAgICA8bGkgKm5nSWY9XCJjb250cm9sLmVycm9ycy5yZXF1aXJlZFwiPlxyXG4gICAgICB7eyBcIlZBTElEQVRPUlMuUkVRVUlSRURcIiB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9saT5cclxuICA8L3VsPlxyXG48L21hdC1lcnJvcj5cclxuIl19
337
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMvZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMvZHluYW1pYy1mb3JtLXNlbGVjdC11c2Vycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLFFBQVEsRUFDUixNQUFNLEVBQ04sSUFBSSxFQUVKLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFTdkIsT0FBTyxFQUFrQixPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUVMLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFDO0FBR3hCLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7Ozs7Ozs7Ozs7OztBQUN6Qzs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQztBQU9yQixNQUFNLE9BQU8sK0JBQStCO0lBdUUxQyxZQUNVLGNBQTRDLEVBQzdDLFNBQTJCLEVBQzFCLFdBQStCLEVBQ1os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QUQ0TkU7SUFKQyxTQUFTLENBQUM7UUFDVCxhQUFhLEVBQUUsSUFBSTtRQUNuQixNQUFNLEVBQUUsQ0FBQyxHQUFHLE1BQU07S0FDbkIsQ0FBQzswRUFHRDs0RkE5UVUsK0JBQStCO2tCQU4zQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwrQkFBK0I7b0JBQ3pDLFdBQVcsRUFBRSw0Q0FBNEM7b0JBQ3pELFNBQVMsRUFBRSxDQUFDLDRDQUE0QyxDQUFDO29CQUN6RCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtpQkFDdEM7OzBCQTRFSSxJQUFJOzswQkFBSSxRQUFROzRDQXhFYSxpQkFBaUI7c0JBQWhELFNBQVM7dUJBQUMsbUJBQW1CO2dCQU1yQixTQUFTO3NCQUFqQixLQUFLO2dCQUVLLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUMsS0FBSztzQkFBYixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUVHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFFRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSztnQkFHSSxhQUFhO3NCQUF0QixNQUFNO2dCQWtPUCxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25DaGFuZ2VzLFxyXG4gIE9uRGVzdHJveSxcclxuICBPcHRpb25hbCxcclxuICBPdXRwdXQsXHJcbiAgU2VsZixcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBBYnN0cmFjdENvbnRyb2wsXHJcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXHJcbiAgRm9ybUNvbnRyb2wsXHJcbiAgTmdDb250cm9sLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdTZWxlY3RDb21wb25lbnQgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtcclxuICBjYXRjaEVycm9yLFxyXG4gIGRlYm91bmNlVGltZSxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICBzd2l0Y2hNYXAsXHJcbiAgdGFwLFxyXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXNlcnNJbkRlcGFydG1lbnRzQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdXNlci1hcGkuc2VydmljZSc7XHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgQ2FjaGVhYmxlIH0gZnJvbSAndHMtY2FjaGVhYmxlJztcclxuLyoqXHJcbiAqIFVzZXJzIGRyb3Bkb3duIGlucHV0IGludGVncmF0ZWQgd2l0aCB1c2VycyBBUEksXHJcbiAqIHRoYXQgY2FuIGJlIHVzZWQgaW5zaWRlIHJlYWN0aXZlIG9yIHRlbXBsYXRlIGRyaXZlbiBmb3Jtc1xyXG4gKiBAdGl0bGVcclxuICogVXNlcnMgZHJvcGRvd25cclxuICogQGV4YW1wbGVcclxuICogPGN0cy1keW5hbWljLWZvcm0tc2VsZWN0LXVzZXJzXHJcbiAqICAgICBmb3JtQ29udHJvbE5hbWU9XCJjb250cm9sTmFtZVwiXHJcbiAqICAgICBbYmluZFZhbHVlXT1cImJpbmRUb1Byb3BlcnR5XCJcclxuICogICAgIFtiaW5kTGFiZWxdPVwiJ2JpbmRUb0xhYmVsJ1wiXHJcbiAqICAgICBbc2VhcmNoYWJsZV09XCJ0cnVlXCJcclxuICogICAgIFtsYWJlbF09XCInUEFUSC5UTy5UUkFOU0xBVElPTidcIlxyXG4gKiAgICAgW2RlcHRUaXRsZV09XCInYWxsJ1wiXHJcbiAqICAgPjwvY3RzLWR5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnM+XHJcbiAqL1xyXG5jb25zdCBtaW51dGUgPSA2MDAwMDtcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjdHMtZHluYW1pYy1mb3JtLXNlbGVjdC11c2VycycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZm9ybS1zZWxlY3QtdXNlcnMuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1TZWxlY3RVc2Vyc0NvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yXHJcbntcclxuICBAVmlld0NoaWxkKCduZ1NlbGVjdENvbXBvbmVudCcpIG5nU2VsZWN0Q29tcG9uZW50OiBOZ1NlbGVjdENvbXBvbmVudDtcclxuICBzZWxlY3Rpb25zdHJnOiBzdHJpbmc7XHJcbiAgZGF0YSA9IFtdO1xyXG4gIGFsbFVzZXJzOiBib29sZWFuO1xyXG4gIHVzZXJOYW1lSW5wdXQkID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG4gIC8qKiBmaWx0ZXIgdXNlcnMgYnkgZGVwYXJ0bWVudCAoZGVwYXJ0bWVudE5hbWUgfCBhbGwpICovXHJcbiAgQElucHV0KCkgZGVwdFRpdGxlOiBzdHJpbmc7XHJcbiAgICAvKiogZmlsdGVyIHVzZXJzIGJ5IGdyb3VwIG5hbWUgPT4gdGhpcyB3aWxsIHJlcGxjZSBkZXAgdGl0bGUgKi9cclxuICAgIEBJbnB1dCgpIGdyb3VwTmFtZTogc3RyaW5nO1xyXG4gIC8qKiBGaWVsZCBMYWJlbCAqL1xyXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XHJcbiAgLyoqIEJpbmQgdmFsdWUgdG8gb2JqZWN0IHByb3BlcnR5ICovXHJcbiAgQElucHV0KCkgYmluZFZhbHVlO1xyXG4gIC8qKiBCaW5kIGxhYmVsIHRvIG9iamVjdCBwcm9wZXJ0eSAqL1xyXG4gIEBJbnB1dCgpIGJpbmRMYWJlbDtcclxuICBASW5wdXQoKSBhcmFiaWNCaW5kTGFiZWw7XHJcbiAgLyoqIFBsYWNlaG9sZGVyIHRleHQgKi9cclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjtcclxuICAvKiogQ2FuIHNlbGVjdCBtdWx0aXBsZSAqL1xyXG4gIEBJbnB1dCgpIG11bHRpcGxlID0gZmFsc2U7XHJcbiAgLyoqIGlzIGRyb3Bkb3duIHNlYXJjaGFibGUgKi9cclxuICBASW5wdXQoKSBzZWFyY2hhYmxlID0gZmFsc2U7XHJcbiAgLyoqIHNob3VsZCBjbG9zZSBkcm9wZG93biBvbiB2YWx1ZSBzZWxlY3Rpb24gKi9cclxuICBASW5wdXQoKSBjbG9zZU9uU2VsZWN0ID0gdHJ1ZTtcclxuICAvKiogc2hvdWxkIGhpZGUgc2VsZWN0ZWQgaXRlbXMgKi9cclxuICBASW5wdXQoKSBoaWRlU2VsZWN0ZWRJdGVtcyA9IGZhbHNlO1xyXG4gIC8qKiBQcmUgU2VsZWN0ZWQgdmFsdWVzICovXHJcbiAgQElucHV0KCkgcHJlU2VsZWN0ZWRWYWx1ZXM7XHJcbiAgLyoqIGZsYWdlIHRvIHVzZSBwcmVzZWxlY3RlZCB2YWx1ZXMgb3Igbm90ICovXHJcbiAgQElucHV0KCkgdXNlUHJlU2VsZWN0ZWRWYWx1ZSA9IGZhbHNlO1xyXG4gIC8qKiBpcyBEaXNhYmxlZCAqL1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgLyoqIExpc3Qgb2YgdXNlcm5hbWVzIHRoYXQgc2hvdWxkIGJlIGV4bHVkZWQgICovXHJcbiAgQElucHV0KCkgZmlsdGVyOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAvKiogZmxhZ2UgdG8gaW5kaWNhdGUgaWYgdXNlIGZ1bGwgYXJhYmljIG5hbWUgb3Igbm90IGJlc2lkZSBmdWxsTmFtZSAgKi9cclxuICBASW5wdXQoKSB1c2VBcmFiaWNOYW1lID0gZmFsc2U7XHJcblxyXG4gIC8qKiBldmVudCBlbWl0dGVkIHdoZW4gaXRlbSBpcyBzZWxlY3RlZCAqL1xyXG4gIEBPdXRwdXQoKSBvblNlbGVjdEl0ZW1zID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIGxvYWRpbmcgPSBmYWxzZTtcclxuICBzZWxlY3Rpb247XHJcbiAgYnVmZmVyID0gW107XHJcbiAgYnVmZmVyU2l6ZSA9IDEwMDA7XHJcbiAgbnVtYmVyT2ZJdGVtc0Zyb21FbmRCZWZvcmVGZXRjaGluZ01vcmUgPSAxMDtcclxuICBzdWZmaXg7XHJcblxyXG4gIHByb3BhZ2F0ZUNoYW5nZTogYW55ID0gKCkgPT4ge307XHJcbiAgdmFsaWRhdGVGbjogYW55ID0gKCkgPT4ge307XHJcbiAgaXNBcmFiaWMgPSBmYWxzZTtcclxuICBwdWJsaWMgb25Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7XHJcbiAgICAvKkVtcHR5Ki9cclxuICB9O1xyXG4gIHBhZ2VJbmRleDogbnVtYmVyID0gMDtcclxuICBpc05leHRQYWdlQXZhaWxhYmxlOiBib29sZWFuO1xyXG4gIHB1YmxpYyBnZXQgaW52YWxpZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmNvbnRyb2wgPyB0aGlzLmNvbnRyb2wuaW52YWxpZCA6IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBzaG93RXJyb3IoKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoIXRoaXMuY29udHJvbCkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgeyBkaXJ0eSwgdG91Y2hlZCB9ID0gdGhpcy5jb250cm9sO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmludmFsaWQgPyBkaXJ0eSB8fCB0b3VjaGVkIDogZmFsc2U7XHJcbiAgfVxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSB1c2VyQXBpU2VydmljZTogVXNlcnNJbkRlcGFydG1lbnRzQXBpU2VydmljZSxcclxuICAgIHB1YmxpYyB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHRyYW5zbGF0aW9uOiBUcmFuc2xhdGlvblNlcnZpY2UsXHJcbiAgICBAU2VsZigpIEBPcHRpb25hbCgpIHB1YmxpYyBjb250cm9sOiBOZ0NvbnRyb2xcclxuICApIHtcclxuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcclxuICAgICAgdGhpcy5jb250cm9sLnZhbHVlQWNjZXNzb3IgPSB0aGlzO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZW1pdFNlbGVjdGlvbihldmVudCkge1xyXG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcclxuICAgICAgdGhpcy5zZWxlY3Rpb25zdHJnID0gYCR7dGhpcy5zZWxlY3Rpb24ubGVuZ3RofSAke3RoaXMuc3VmZml4fWA7XHJcbiAgICB9XHJcbiAgICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSh0aGlzLnNlbGVjdGlvbik7XHJcbiAgICB0aGlzLm9uU2VsZWN0SXRlbXMuZW1pdChldmVudCk7XHJcbiAgfVxyXG5cclxuICBvblNjcm9sbFRvRW5kKCkge1xyXG4gICAgdGhpcy5mZXRjaE1vcmUoKTtcclxuICAgICsrdGhpcy5wYWdlSW5kZXg7XHJcbiAgICBpZiAodGhpcy5pc05leHRQYWdlQXZhaWxhYmxlICYmIHRoaXMuYWxsVXNlcnMpIHtcclxuICAgICAgdGhpcy5nZXREZXBhcnRtZW50cyh0aGlzLnBhZ2VJbmRleCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZldGNoTW9yZSgpIHtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICBjb25zdCBsZW4gPSB0aGlzLmJ1ZmZlci5sZW5ndGg7XHJcbiAgICBjb25zdCBtb3JlID0gdGhpcy5kYXRhLnNsaWNlKGxlbiwgdGhpcy5idWZmZXJTaXplICsgbGVuKTtcclxuICAgIHRoaXMuYnVmZmVyID0gdGhpcy5kYXRhLmNvbmNhdChtb3JlKTtcclxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gIH1cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoKGNoYW5nZXMuZGVwdFRpdGxlICYmICFjaGFuZ2VzLmRlcHRUaXRsZT8uZmlyc3RDaGFuZ2UpIHx8IChjaGFuZ2VzLmdyb3VwTmFtZSAmJiAhY2hhbmdlcy5ncm91cE5hbWU/LmZpcnN0Q2hhbmdlKSkge1xyXG4gICAgICB0aGlzLmRhdGEgPSBbXTtcclxuICAgICAgdGhpcy5idWZmZXIgPSBbXTtcclxuICAgICAgdGhpcy5nZXREZXBhcnRtZW50cygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmFsbFVzZXJzID0gdGhpcy5kZXB0VGl0bGUgPT09ICdhbGwnID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgdGhpcy5zZWxlY3Rpb24gPSB0aGlzLm11bHRpcGxlID8gW10gOiB1bmRlZmluZWQ7XHJcbiAgICBpZiAodGhpcy5hbGxVc2Vycykge1xyXG4gICAgICB0aGlzLmxvYWRVc2VycygpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5nZXREZXBhcnRtZW50cygpO1xyXG4gICAgdGhpcy50cmFuc2xhdGlvbi5pc0FyYWJpYy5zdWJzY3JpYmUoKGFyKSA9PiB7XHJcbiAgICAgIHRoaXMuaXNBcmFiaWMgPSBhcjtcclxuICAgICAgYXJcclxuICAgICAgICA/ICh0aGlzLnN1ZmZpeCA9ICfZhdiz2KrYrtiv2YUg2KrZhSDYpdiu2KrZitin2LHZhycpXHJcbiAgICAgICAgOiAodGhpcy5zdWZmaXggPSAnVXNlcnMgU2VsZWN0ZWQnKTtcclxuICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGlvbnN0cmcgPSBgJHt0aGlzLnNlbGVjdGlvbi5sZW5ndGh9ICR7dGhpcy5zdWZmaXh9YDtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXREZXBhcnRtZW50cyhwYWdlID0gMCkge1xyXG4gICAgaWYodGhpcy5ncm91cE5hbWUpe1xyXG4gICAgICB0aGlzLnVzZXJBcGlTZXJ2aWNlLmdldFVzZXJzVW5kZXJDZXJ0YWluR3JvdXAodGhpcy5ncm91cE5hbWUpLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgICBsZXQgbmV3RGF0YSA9IHRoaXMuY29uc3RydWN0VXNlckFycmF5KFxyXG4gICAgICAgICAgZGF0YS51c2VycyxcclxuICAgICAgICAgICdwcm9wZXJ0aWVzLnVzZXJuYW1lJ1xyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhLmNvbmNhdChuZXdEYXRhKTtcclxuICAgICAgICB0aGlzLmlzTmV4dFBhZ2VBdmFpbGFibGUgPSBkYXRhLmlzTmV4dFBhZ2VBdmFpbGFibGU7XHJcbiAgICAgICAgdGhpcy5idWZmZXIgPSAodGhpcy5kYXRhIHx8IFtdKS5zbGljZSgwLCB0aGlzLmJ1ZmZlclNpemUpO1xyXG4gICAgICAgIHRoaXMuYnVmZmVyLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgaXRlbS5pc1NlbGVjdGVkID0gZmFsc2U7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pXHJcbiAgICB9ZWxzZSBpZiAodGhpcy5kZXB0VGl0bGUpIHtcclxuICAgICAgaWYgKHRoaXMuYWxsVXNlcnMpIHtcclxuICAgICAgICB0aGlzLmdldEFsbFVzZXJzKHBhZ2UpLnN1YnNjcmliZSgoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgbGV0IG5ld0RhdGEgPSB0aGlzLmNvbnN0cnVjdFVzZXJBcnJheShkYXRhLmVudHJpZXMsICdpZCcpO1xyXG4gICAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhLmNvbmNhdChuZXdEYXRhKTtcclxuICAgICAgICAgIHRoaXMuaXNOZXh0UGFnZUF2YWlsYWJsZSA9IGRhdGEuaXNOZXh0UGFnZUF2YWlsYWJsZTtcclxuICAgICAgICAgIHRoaXMuYnVmZmVyID0gKHRoaXMuZGF0YSB8fCBbXSkuc2xpY2UoMCwgdGhpcy5idWZmZXJTaXplKTtcclxuICAgICAgICAgIHRoaXMuYnVmZmVyLm1hcCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICBpdGVtLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7IC8vIGZvciBsb2FkaW5nIHNwaW5uZXJcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmdldEN0c1VzZXJzKHRoaXMuZGVwdFRpdGxlKS5zdWJzY3JpYmUoKGRhdGEpID0+IHtcclxuICAgICAgICAgIGxldCBuZXdEYXRhID0gdGhpcy5jb25zdHJ1Y3RVc2VyQXJyYXkoXHJcbiAgICAgICAgICAgIGRhdGEudXNlcnMsXHJcbiAgICAgICAgICAgICdwcm9wZXJ0aWVzLnVzZXJuYW1lJ1xyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIHRoaXMuZGF0YSA9IHRoaXMuZGF0YS5jb25jYXQobmV3RGF0YSk7XHJcbiAgICAgICAgICB0aGlzLmlzTmV4dFBhZ2VBdmFpbGFibGUgPSBkYXRhLmlzTmV4dFBhZ2VBdmFpbGFibGU7XHJcbiAgICAgICAgICB0aGlzLmJ1ZmZlciA9ICh0aGlzLmRhdGEgfHwgW10pLnNsaWNlKDAsIHRoaXMuYnVmZmVyU2l6ZSk7XHJcbiAgICAgICAgICB0aGlzLmJ1ZmZlci5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgaXRlbS5pc1NlbGVjdGVkID0gZmFsc2U7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICBnZXRBbGxVc2VycyhwYWdlID0gMCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy51c2VyQXBpU2VydmljZS5nZXRBbGxVc2Vycyh7XHJcbiAgICAgIGN1cnJlbnRQYWdlSW5kZXg6IHBhZ2UsXHJcbiAgICAgIHBhZ2VTaXplOiAyMCxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkVXNlcnMoKSB7XHJcbiAgICB0aGlzLnVzZXJOYW1lSW5wdXQkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGRlYm91bmNlVGltZSgyMDApLFxyXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXHJcbiAgICAgICAgdGFwKCgpID0+ICh0aGlzLmxvYWRpbmcgPSB0cnVlKSksXHJcbiAgICAgICAgc3dpdGNoTWFwKCh0ZXJtKSA9PiB7XHJcbiAgICAgICAgICBpZiAodGVybSAmJiB0ZXJtLmxlbmd0aCkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRVc2Vyc1N1Z2dlc3Rpb25zKHRlcm0pO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0QWxsVXNlcnMoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoXHJcbiAgICAgICAgKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKGRhdGEuZW50cmllcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgbGV0IG5ld0RhdGEgPSB0aGlzLmNvbnN0cnVjdFVzZXJBcnJheShkYXRhLmVudHJpZXMsICdpZCcpO1xyXG4gICAgICAgICAgICB0aGlzLmJ1ZmZlciA9IChuZXdEYXRhIHx8IFtdKS5zbGljZSgwLCB0aGlzLmJ1ZmZlclNpemUpO1xyXG4gICAgICAgICAgICB0aGlzLmlzTmV4dFBhZ2VBdmFpbGFibGUgPSBkYXRhLmlzTmV4dFBhZ2VBdmFpbGFibGU7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5idWZmZXIgPSBbXTtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICAoZXJyKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMuYnVmZmVyID0gW107XHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gIH1cclxuICBcclxuICB3cml0ZVZhbHVlKHZhbHVlKSB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5zZWxlY3Rpb24gPSB2YWx1ZTtcclxuICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGlvbnN0cmcgPSBgJHt0aGlzLnNlbGVjdGlvbi5sZW5ndGh9ICR7dGhpcy5zdWZmaXh9YDtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZWxlY3Rpb24gPSBudWxsO1xyXG4gICAgICB0aGlzLnNlbGVjdGlvbnN0cmcgPSBudWxsXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb21wYXJlRm4oaXRlbSwgc2VsZWN0ZWQpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiaXRlbSAxXCIsIGl0ZW0pO1xyXG4gICAgY29uc29sZS5sb2coXCJJdGVtIDJcIiwgc2VsZWN0ZWQpO1xyXG4gICAgcmV0dXJuIGl0ZW0uaWQgPT09IHNlbGVjdGVkLmlkO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbikge1xyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICB2YWxpZGF0ZShjOiBGb3JtQ29udHJvbCkge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsaWRhdGVGbihjKTtcclxuICB9XHJcbiAgaXNSZXF1aXJlZCgpIHtcclxuICAgIGlmICghdGhpcy5jb250cm9sIHx8ICF0aGlzLmNvbnRyb2wuY29udHJvbC52YWxpZGF0b3IpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHZhbGlkYXRvciA9IHRoaXMuY29udHJvbC5jb250cm9sLnZhbGlkYXRvcih7fSBhcyBBYnN0cmFjdENvbnRyb2wpO1xyXG4gICAgcmV0dXJuIHZhbGlkYXRvciAmJiB2YWxpZGF0b3IucmVxdWlyZWQ7XHJcbiAgfVxyXG4gIGhhc0Vycm9ycygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnNob3dFcnJvcjtcclxuICB9XHJcblxyXG4gIC8vIEBDYWNoZWFibGUoe1xyXG4gIC8vICAgbWF4Q2FjaGVDb3VudDogMTAwMCxcclxuICAvLyAgIG1heEFnZTogMjAwMDAsXHJcbiAgLy8gfSlcclxuXHJcbiAgZ2V0Q3RzVXNlcnMoZGVwdFRpdGxlKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLnVzZXJBcGlTZXJ2aWNlLmdldEN0c1VzZXJzKGRlcHRUaXRsZSk7XHJcbiAgfVxyXG5cclxuICBAQ2FjaGVhYmxlKHtcclxuICAgIG1heENhY2hlQ291bnQ6IDEwMDAsXHJcbiAgICBtYXhBZ2U6IDUgKiBtaW51dGUsXHJcbiAgfSlcclxuICBnZXRVc2Vyc1N1Z2dlc3Rpb25zKHRlcm0pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMudXNlckFwaVNlcnZpY2UuZ2V0VXNlcnNTdWdnZXN0aW9ucyh0ZXJtKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY29uc3RydWN0VXNlckFycmF5KGRhdGEsIGZpbHRlclZhbHVlOiBzdHJpbmcpIHtcclxuICAgIGxldCBDb25zdHJ1Y3RlZERhdGE6IGFueVtdO1xyXG4gICAgLy8gaWYgbm90IHVzaW5nIGFyYWJpYyBuYW1lIHRoZW4gY29uc3RydWN0IGZ1bGwgbmFtZSBoZXJlXHJcbiAgICBpZighdGhpcy51c2VBcmFiaWNOYW1lKXtcclxuICAgICAgQ29uc3RydWN0ZWREYXRhID0gdGhpcy5pbnNlcnRGVWxsTmFtZShkYXRhKTtcclxuICAgIH1cclxuICAgIENvbnN0cnVjdGVkRGF0YSA9IHRoaXMuZmlsdGVyVXNlcnMoZGF0YSwgZmlsdGVyVmFsdWUpO1xyXG4gICAgcmV0dXJuIENvbnN0cnVjdGVkRGF0YTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5zZXJ0RlVsbE5hbWUoZGF0YSkge1xyXG4gICAgcmV0dXJuIGRhdGEubWFwKCh1c2VyKSA9PiB7XHJcbiAgICAgIHVzZXIuZnVsbE5hbWUgPSBgJHt1c2VyLnByb3BlcnRpZXM/LmZpcnN0TmFtZX0gJHt1c2VyLnByb3BlcnRpZXM/Lmxhc3ROYW1lfWA7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgcHJpdmF0ZSBmaWx0ZXJVc2VycyhkYXRhLCBwYXRoOiBzdHJpbmcpIHtcclxuICAgIGxldCBmaWx0ZXJEYXRhID0gZGF0YS5maWx0ZXIoKHVzZXIpID0+IHtcclxuICAgICAgY29uc3QgaW5jbHVkZWRJbkZpbHRlciA9XHJcbiAgICAgICAgdGhpcy5maWx0ZXIuaW5jbHVkZXMoXy5nZXQodXNlciwgcGF0aCkpIHx8XHJcbiAgICAgICAgXy5nZXQodXNlciwgcGF0aCkgPT09ICdBZG1pbmlzdHJhdG9yJztcclxuICAgICAgcmV0dXJuICFpbmNsdWRlZEluRmlsdGVyO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZmlsdGVyRGF0YTtcclxuICB9XHJcblxyXG4gIGdldFVzZXJzVW5kZXJDZXJ0YWluR3JvdXAoKXtcclxuXHJcbiAgfVxyXG4gIHJlc2V0KCkge1xyXG4gICAgdGhpcy5uZ1NlbGVjdENvbXBvbmVudC5oYW5kbGVDbGVhckNsaWNrKCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy51c2VyTmFtZUlucHV0JC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwibGFiZWxcIj5cclxuICA8ZGl2PlxyXG4gICAgPGxhYmVsIGNsYXNzPVwic2VsZWN0LWxhYmVsXCJcclxuICAgICAgPnt7IGxhYmVsIHwgdHJhbnNsYXRlXHJcbiAgICAgIH19PHNwYW4gKm5nSWY9XCJpc1JlcXVpcmVkKClcIiBjbGFzcz1cInRleHQtZGFuZ2VyIG0tMVwiPio8L3NwYW4+PC9sYWJlbFxyXG4gICAgPlxyXG4gIDwvZGl2PlxyXG48L25nLWNvbnRhaW5lcj5cclxuPGRpdiBjbGFzcz1cInVzZXItc2VsZWN0XCIgW25nQ2xhc3NdPVwieyAnbXVsdGlwbGUtd3JhcHBlcic6IG11bHRpcGxlIH1cIiBTZXRSdGw+XHJcbiAgPG5nLXNlbGVjdFxyXG4gICAgI25nU2VsZWN0Q29tcG9uZW50XHJcbiAgICBbaXRlbXNdPVwiYnVmZmVyXCJcclxuICAgIFtiaW5kTGFiZWxdPVwidXNlQXJhYmljTmFtZSA/IChpc0FyYWJpYyA/IGFyYWJpY0JpbmRMYWJlbCA6IGJpbmRMYWJlbCkgIDogYmluZExhYmVsXCJcclxuICAgIFtwbGFjZWhvbGRlcl09XCJcclxuICAgICAgbXVsdGlwbGUgJiYgKHNlbGVjdGlvbiAmJiBzZWxlY3Rpb24ubGVuZ3RoID4gMCkgPyBzZWxlY3Rpb25zdHJnIDogcGxhY2Vob2xkZXJcclxuICAgIFwiXHJcbiAgICBbbXVsdGlwbGVdPVwibXVsdGlwbGVcIlxyXG4gICAgW3NlYXJjaGFibGVdPVwic2VhcmNoYWJsZVwiXHJcbiAgICBbY2xvc2VPblNlbGVjdF09XCJjbG9zZU9uU2VsZWN0XCJcclxuICAgIFtoaWRlU2VsZWN0ZWRdPVwiaGlkZVNlbGVjdGVkSXRlbXNcIlxyXG4gICAgW2xvYWRpbmddPVwibG9hZGluZ1wiXHJcbiAgICAoc2Nyb2xsVG9FbmQpPVwib25TY3JvbGxUb0VuZCgpXCJcclxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICBbdHlwZWFoZWFkXT1cInVzZXJOYW1lSW5wdXQkXCJcclxuICAgIFtjb21wYXJlV2l0aF09XCJjb21wYXJlRm5cIlxyXG4gICAgWyhuZ01vZGVsKV09XCJzZWxlY3Rpb25cIlxyXG4gICAgKGNoYW5nZSk9XCJlbWl0U2VsZWN0aW9uKCRldmVudClcIlxyXG4gID5cclxuICAgIDxuZy10ZW1wbGF0ZSBuZy1sYWJlbC10bXAgbGV0LWl0ZW09XCJpdGVtXCIgbGV0LWNsZWFyPVwiY2xlYXJcIj5cclxuICAgICAgPHNwYW5cclxuICAgICAgICBzdHlsZT1cIlxyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBjb2x1bW4tZ2FwOiA0cHg7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDogMzBweDsgaGVpZ2h0OiAzMHB4XCI+XHJcbiAgICAgICAgICA8Y3RzLWF2YXRhciBbdXNlcl09XCJpdGVtXCI+PC9jdHMtYXZhdGFyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1c2VyLW5hbWVcIj5cclxuICAgICAgICAgIHt7IGl0ZW0/LmlkID09PSAnc3lzdGVtJyA/ICgnU1lTVEVNX0FETUlOJyB8IHRyYW5zbGF0ZSkgOiBcclxuICAgICAgICAgICh1c2VBcmFiaWNOYW1lID8gKGlzQXJhYmljID8gKGl0ZW0/LmZ1bGxOYW1lQXIgPyBpdGVtPy5mdWxsTmFtZUFyIDogaXRlbT8uZnVsbE5hbWUpIDogaXRlbT8uZnVsbE5hbWUpIDogXHJcbiAgICAgICAgICAoaXRlbT8ucHJvcGVydGllcz8uZmlyc3ROYW1lICsgXCIgXCIgK2l0ZW0/LnByb3BlcnRpZXM/Lmxhc3ROYW1lKSkgfX1cclxuXHJcblxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8c3BhblxyXG4gICAgICAgICAgICBjbGFzcz1cIm5nLXZhbHVlLWljb24gcmlnaHRcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiY2xlYXIoaXRlbSlcIlxyXG4gICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxyXG4gICAgICAgICAgICA+w5c8L3NwYW5cclxuICAgICAgICAgID5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICA8bmctdGVtcGxhdGVcclxuICAgICAgbmctb3B0aW9uLXRtcFxyXG4gICAgICBsZXQtaXRlbT1cIml0ZW1cIlxyXG4gICAgICBsZXQtaXRlbSQ9XCJpdGVtJFwiXHJcbiAgICAgIGxldC1pbmRleD1cImluZGV4XCJcclxuICAgID5cclxuICAgICAgPHNwYW5cclxuICAgICAgICBzdHlsZT1cIlxyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBjb2x1bW4tZ2FwOiA0cHg7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxtYXQtY2hlY2tib3hcclxuICAgICAgICAgICpuZ0lmPVwibXVsdGlwbGVcIlxyXG4gICAgICAgICAgaWQ9XCJpdGVtLXt7IGluZGV4IH19XCJcclxuICAgICAgICAgIFtuZ01vZGVsXT1cIml0ZW0kLnNlbGVjdGVkXCJcclxuICAgICAgICAgIChjbGljayk9XCIoZmFsc2UpXCJcclxuICAgICAgICA+PC9tYXQtY2hlY2tib3g+XHJcbiAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOiAzMHB4OyBoZWlnaHQ6IDMwcHhcIj5cclxuICAgICAgICAgIDxjdHMtYXZhdGFyIFt1c2VyXT1cIml0ZW1cIj48L2N0cy1hdmF0YXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgIHt7IGl0ZW0/LmlkID09PSAnc3lzdGVtJyA/ICgnU1lTVEVNX0FETUlOJyB8IHRyYW5zbGF0ZSkgOiBcclxuICAgICAgICAgICh1c2VBcmFiaWNOYW1lID8gKGlzQXJhYmljID8gKGl0ZW0/LmZ1bGxOYW1lQXIgPyBpdGVtPy5mdWxsTmFtZUFyIDogaXRlbT8uZnVsbE5hbWUpIDogaXRlbT8uZnVsbE5hbWUpIDogXHJcbiAgICAgICAgICAoaXRlbT8ucHJvcGVydGllcz8uZmlyc3ROYW1lICsgXCIgXCIgK2l0ZW0/LnByb3BlcnRpZXM/Lmxhc3ROYW1lKSkgfX1cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdj48L2Rpdj5cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICA8L25nLXNlbGVjdD5cclxuPC9kaXY+XHJcbjxtYXQtZXJyb3JcclxuICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2NhcmQtdGV4dGl0ZW0tZXJyb3ItJ1wiXHJcbiAgY2xhc3M9XCJhcHAtdGV4dGl0ZW0tZWRpdGFibGUtZXJyb3JcIlxyXG4gICpuZ0lmPVwiaGFzRXJyb3JzKClcIlxyXG4+XHJcbiAgPHVsPlxyXG4gICAgPGxpICpuZ0lmPVwiY29udHJvbC5lcnJvcnMucmVxdWlyZWRcIj5cclxuICAgICAge3sgXCJWQUxJREFUT1JTLlJFUVVJUkVEXCIgfCB0cmFuc2xhdGUgfX1cclxuICAgIDwvbGk+XHJcbiAgPC91bD5cclxuPC9tYXQtZXJyb3I+XHJcbiJdfQ==
@@ -54,7 +54,7 @@ export class UserSelectorWrapperComponent {
54
54
  }
55
55
  }
56
56
  UserSelectorWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: UserSelectorWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
57
- UserSelectorWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: UserSelectorWrapperComponent, selector: "lib-user-selector-wrapper", inputs: { value: "value", multipleMode: "multipleMode", customOptions: "customOptions" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<cts-dynamic-form-select-users placeholder=\"{{ 'CREATE.PLACE_HOLDER' | translate }} {{'CREATE.USER' | translate}}\"\r\n [multiple]=\"multipleMode\"\r\n [searchable]=\"true\"\r\n [bindLabel]=\"'fullName'\"\r\n [closeOnSelect]=\"!multipleMode\"\r\n [searchable]=\"true\"\r\n [deptTitle]=\"'all'\"\r\n [preSelectedValues]=\"[]\"\r\n [usePreSelectedValue]=\"true\"\r\n (onSelectItems)=\"executeFunction($event)\"\r\n (ngModelChange)=\"checkChange($event)\"\r\n [(ngModel)]=\"bindedValue\" >\r\n</cts-dynamic-form-select-users>\r\n <!-- -->\r\n\r\n<!-- <div>{{customOptions | json}}</div>\r\n<div>{{multipleMode}}</div> -->", styles: [""], components: [{ type: i1.DynamicFormSelectUsersComponent, selector: "cts-dynamic-form-select-users", inputs: ["deptTitle", "groupName", "label", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "preSelectedValues", "usePreSelectedValue", "disabled", "filter"], outputs: ["onSelectItems"] }], directives: [{ 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"] }], pipes: { "translate": i3.TranslatePipe } });
57
+ UserSelectorWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: UserSelectorWrapperComponent, selector: "lib-user-selector-wrapper", inputs: { value: "value", multipleMode: "multipleMode", customOptions: "customOptions" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<cts-dynamic-form-select-users placeholder=\"{{ 'CREATE.PLACE_HOLDER' | translate }} {{'CREATE.USER' | translate}}\"\r\n [multiple]=\"multipleMode\"\r\n [searchable]=\"true\"\r\n [bindLabel]=\"'fullName'\"\r\n [closeOnSelect]=\"!multipleMode\"\r\n [searchable]=\"true\"\r\n [deptTitle]=\"'all'\"\r\n [preSelectedValues]=\"[]\"\r\n [usePreSelectedValue]=\"true\"\r\n (onSelectItems)=\"executeFunction($event)\"\r\n (ngModelChange)=\"checkChange($event)\"\r\n [(ngModel)]=\"bindedValue\" >\r\n</cts-dynamic-form-select-users>\r\n <!-- -->\r\n\r\n<!-- <div>{{customOptions | json}}</div>\r\n<div>{{multipleMode}}</div> -->", styles: [""], components: [{ type: i1.DynamicFormSelectUsersComponent, selector: "cts-dynamic-form-select-users", inputs: ["deptTitle", "groupName", "label", "bindValue", "bindLabel", "arabicBindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "preSelectedValues", "usePreSelectedValue", "disabled", "filter", "useArabicName"], outputs: ["onSelectItems"] }], directives: [{ 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"] }], pipes: { "translate": i3.TranslatePipe } });
58
58
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: UserSelectorWrapperComponent, decorators: [{
59
59
  type: Component,
60
60
  args: [{