ets-fe-ng-sdk 18.0.0 → 18.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/Shared/components/autocomplete/autocomplete-td-rf/autocomplete-td-rf.component.mjs +3 -3
- package/esm2022/lib/Shared/components/autocomplete/autocomplete.component.mjs +3 -3
- package/esm2022/lib/Shared/components/autocomplete/autocomplete.service.mjs +7 -4
- package/esm2022/lib/Shared/components/input/input-basic.component.mjs +3 -3
- package/esm2022/lib/Shared/components/input/input-control.component.mjs +3 -3
- package/esm2022/lib/Shared/components/input/input-td-rf.component.mjs +3 -3
- package/esm2022/lib/Shared/components/input/input.component.mjs +3 -3
- package/esm2022/lib/Shared/components/input/input.service.mjs +10 -7
- package/esm2022/lib/Shared/components/input-NgModel/input-ngmodel.component.mjs +3 -3
- package/fesm2022/ets-fe-ng-sdk.mjs +27 -23
- package/fesm2022/ets-fe-ng-sdk.mjs.map +1 -1
- package/lib/Services/api.service.d.ts +1 -1
- package/lib/Services/utility.service.d.ts +1 -1
- package/lib/Shared/components/autocomplete/autocomplete-td-rf/autocomplete-td-rf.component.d.ts +1 -2
- package/lib/Shared/components/autocomplete/autocomplete.component.d.ts +2 -2
- package/lib/Shared/components/autocomplete/autocomplete.service.d.ts +6 -2
- package/lib/Shared/components/btn/btn.component.d.ts +3 -3
- package/lib/Shared/components/form-generator/form-generated-value/form-generated-value.component.d.ts +2 -2
- package/lib/Shared/components/index-comp-layout/index-comp-layout.component.d.ts +1 -1
- package/lib/Shared/components/input/input.service.d.ts +4 -2
- package/lib/Shared/components/page-template/page-template.component.d.ts +1 -1
- package/lib/Shared/components/table-https/table-https.component.d.ts +3 -3
- package/lib/Shared/components/text-case-2/text-case-2.component.d.ts +1 -1
- package/package.json +23 -23
|
@@ -94,7 +94,7 @@ export class AutocompleteTdRfComponent extends InputTD_RFComponent {
|
|
|
94
94
|
// }, 600);
|
|
95
95
|
}
|
|
96
96
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AutocompleteTdRfComponent, deps: [{ token: i1.AutocompleteService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
97
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.0", type: AutocompleteTdRfComponent, isStandalone: true, selector: "autocomplete-td-rf,app-autocomplete-td-rf", inputs: { validate: "validate", _options: ["options", "_options"] }, viewQueries: [{ propertyName: "autoCompleteRef", first: true, predicate: MatAutocomplete, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"row align-items-center\">\n <!-- {{options()|json}} -->\n @if (verbose()) {\n <div>disabledSignal: {{ disabledSignal() }}</div>\n <div>validSignal: {{ validSignal() }}</div>\n <div>invalidSignal: {{ invalidSignal() }}</div>\n <div>valueSignal: {{ valueSignal()|json }}</div>\n <div>hasValue: {{ hasValue() }}</div>\n <div>dirtySignal: {{ dirtySignal() }}</div>\n <div>touchedSignal: {{ touchedSignal() }}</div>\n <div>errorsSignal: {{ errorsSignaljson() }}</div>\n <div>pendingSignal: {{ pendingSignal() }}</div>\n <div>pristineSignal: {{ pristineSignal() }}</div>\n <div>controlRequiredSignal: {{ controlRequiredSignal() }}</div>\n <div>isRequiredSignal: {{ isRequiredSignal() }}</div>\n <div class=\"\">onControlObtainedList Length: {{ onControlObtainedList().length }}</div>\n }\n @if (computedShowLabel()) {\n <app-input-label\n [colored]=\"coloredSignal()\"\n [form]=\"form()|toAny\"\n [hint]=\"hint\"\n [id]=\"idSignal()\"\n [invalidCheckbox]=\"invalidCheckboxSignal()\"\n [isRequired]=\"isRequiredSignal()\"\n [label]=\"labelSignal()\"\n [lblCl]=\"lblCl\"\n [light]=\"light\"\n [mini]=\"miniSignal()\"\n [showRequiredTag]=\"showRequiredTagSignal()\"\n [showLabel]=\"showLabelSignal()\"\n [small]=\"smallSignal()\"\n [stacked]=\"stackedSignal()\"\n [theme]=\"theme\"\n [xsmall]=\"xsmall\" />\n }\n <div class=\"{{ stackedSignal() ? 'col-12' : 'col-md' }} position-relative\">\n <form [formGroup]=\"form()|toAny\" class=\"position-relative\">\n <input\n type=\"text\"\n data-noformat=\"true\"\n [formControlName]=\"nameStrSignal()\"\n placeholder=\"{{ placeholder() }}\"\n [id]=\"idSignal()\"\n (keyup)=\"fetchOptions($event)\"\n [class]=\"inputClassSignal()\"\n [required]=\"requiredSignal()\"\n [readonly]=\"readonlySignal()\"\n #trigger=\"matAutocompleteTrigger\"\n [matAutocomplete]=\"auto\"\n #inp />\n @if (!disabledSignal()) {\n <i
|
|
97
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.0", type: AutocompleteTdRfComponent, isStandalone: true, selector: "autocomplete-td-rf,app-autocomplete-td-rf", inputs: { validate: "validate", _options: ["options", "_options"] }, viewQueries: [{ propertyName: "autoCompleteRef", first: true, predicate: MatAutocomplete, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"row align-items-center\">\n <!-- {{options()|json}} -->\n @if (verbose()) {\n <div>disabledSignal: {{ disabledSignal() }}</div>\n <div>validSignal: {{ validSignal() }}</div>\n <div>invalidSignal: {{ invalidSignal() }}</div>\n <div>valueSignal: {{ valueSignal() | json }}</div>\n <div>hasValue: {{ hasValue() }}</div>\n <div>dirtySignal: {{ dirtySignal() }}</div>\n <div>touchedSignal: {{ touchedSignal() }}</div>\n <div>errorsSignal: {{ errorsSignaljson() }}</div>\n <div>pendingSignal: {{ pendingSignal() }}</div>\n <div>pristineSignal: {{ pristineSignal() }}</div>\n <div>controlRequiredSignal: {{ controlRequiredSignal() }}</div>\n <div>isRequiredSignal: {{ isRequiredSignal() }}</div>\n <div class=\"\">onControlObtainedList Length: {{ onControlObtainedList().length }}</div>\n }\n @if (computedShowLabel()) {\n <app-input-label\n [colored]=\"coloredSignal()\"\n [form]=\"form() | toAny\"\n [hint]=\"hint\"\n [id]=\"idSignal()\"\n [invalidCheckbox]=\"invalidCheckboxSignal()\"\n [isRequired]=\"isRequiredSignal()\"\n [label]=\"labelSignal()\"\n [lblCl]=\"lblCl\"\n [light]=\"light\"\n [mini]=\"miniSignal()\"\n [showRequiredTag]=\"showRequiredTagSignal()\"\n [showLabel]=\"showLabelSignal()\"\n [small]=\"smallSignal()\"\n [stacked]=\"stackedSignal()\"\n [theme]=\"theme\"\n [xsmall]=\"xsmall\" />\n }\n <div class=\"{{ stackedSignal() ? 'col-12' : 'col-md' }} position-relative\">\n <form [formGroup]=\"form() | toAny\" class=\"position-relative\">\n <input\n type=\"text\"\n data-noformat=\"true\"\n [formControlName]=\"nameStrSignal()\"\n placeholder=\"{{ placeholder() }}\"\n [id]=\"idSignal()\"\n (keyup)=\"fetchOptions($event)\"\n [class]=\"inputClassSignal()\"\n [required]=\"requiredSignal()\"\n [readonly]=\"readonlySignal()\"\n #trigger=\"matAutocompleteTrigger\"\n [matAutocomplete]=\"auto\"\n #inp />\n @if (!disabledSignal()) {\n <i\n class=\"input-icon fa fa-search\"\n (click)=\"$event.stopPropagation(); trigger.openPanel()\"></i>\n }\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [displayWith]=\"displayWith\"\n class=\"options-w-auto\"\n (optionSelected)=\"selected($event)\">\n <!-- <ng-container *ngIf=\"duplicateCheck; else elseNoDulicateTemplate\">\n <mat-option\n *ngFor=\"let item of filteredOptions|removeUsedOptionsReactive:(form.parent|toAny):(form.value):'value':name;trackBy:iS.trackByValue\"\n [value]=\"item.value\">\n <div class=\"option\" [matTooltip]=\"ele.innerText\" [matTooltipDisabled]=\"ele.scrollWidth<=ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions | async }}\n </div>\n </mat-option>\n </ng-container>\n <ng-template #elseNoDulicateTemplate>\n <mat-option\n *ngFor=\"let item of filteredOptions;trackBy:iS.trackByValue\"\n [value]=\"item.value\">\n <div class=\"option\" [matTooltip]=\"ele.innerText\" [matTooltipDisabled]=\"ele.scrollWidth<=ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions | async }}\n </div>\n </mat-option>\n </ng-template> -->\n\n @if (showEmptyOptionSignal()) {\n <mat-option selected [value]=\"null\" class=\"empty-option\">\n {{ optionsFunc ? 'Type to search' : placeholder() }}\n </mat-option>\n }\n @for (item of filteredOptions(); track item._id) {\n <mat-option [value]=\"item.value\" (onSelectionChange)=\"selectedOption(item)\">\n <div\n class=\"option\"\n [matTooltip]=\"ele.innerText\"\n [matTooltipShowDelay]=\"1000\"\n [matTooltipDisabled]=\"ele.scrollWidth <= ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions() | async }}\n </div>\n </mat-option>\n }\n </mat-autocomplete>\n @if (dirtySignal() && showValidationSignal() && showValidationIconSignal()) {\n <div [ngClass]=\"{ valid: validSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-check\"></i>\n </div>\n <div [ngClass]=\"{ pending: pendingSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-spinner fa-spin\"></i>\n </div>\n <div [ngClass]=\"{ invalid: invalidSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-times\"></i>\n </div>\n }\n @if (loading) {\n <div class=\"d-flex text-primary me-1 validity-icon\">\n <i class=\"fa fa-spinner fa-spin\"></i>\n </div>\n }\n </form>\n </div>\n</div>\n@if (showValidationMsgSignal()) {\n <app-validation-message [label]=\"labelSignal()\" [control]=\"control()\" />\n}\n", styles: ["i.input-icon{position:absolute;top:15px;right:7px;opacity:.4;font-size:10px}.option{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"], dependencies: [{ kind: "component", type: InputLabelComponent, selector: "app-input-label", inputs: ["colored", "form", "hint", "inlineHint", "id", "invalidCheckbox", "isRequired", "label", "labelLink", "lblCl", "light", "mini", "showLabel", "showRequiredTag", "small", "stacked", "theme", "xsmall"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: JsonPipe, name: "json" }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i4.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: MatOptionModule }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ValidationMessageComponent, selector: "app-validation-message", inputs: ["debug", "label", "hideOverflow", "minLength", "maxLength", "ignoreDirtiness", "customMessage", "control", "input"], outputs: ["labelChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: ToAnyPipe, name: "toAny" }, { kind: "pipe", type: SDKTranslatePipe, name: "appTranslate" }] }); }
|
|
98
98
|
}
|
|
99
99
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AutocompleteTdRfComponent, decorators: [{
|
|
100
100
|
type: Component,
|
|
@@ -114,7 +114,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
114
114
|
ToAnyPipe,
|
|
115
115
|
SDKTranslatePipe,
|
|
116
116
|
InputClassPipe,
|
|
117
|
-
], template: "<div class=\"row align-items-center\">\n <!-- {{options()|json}} -->\n @if (verbose()) {\n <div>disabledSignal: {{ disabledSignal() }}</div>\n <div>validSignal: {{ validSignal() }}</div>\n <div>invalidSignal: {{ invalidSignal() }}</div>\n <div>valueSignal: {{ valueSignal()|json }}</div>\n <div>hasValue: {{ hasValue() }}</div>\n <div>dirtySignal: {{ dirtySignal() }}</div>\n <div>touchedSignal: {{ touchedSignal() }}</div>\n <div>errorsSignal: {{ errorsSignaljson() }}</div>\n <div>pendingSignal: {{ pendingSignal() }}</div>\n <div>pristineSignal: {{ pristineSignal() }}</div>\n <div>controlRequiredSignal: {{ controlRequiredSignal() }}</div>\n <div>isRequiredSignal: {{ isRequiredSignal() }}</div>\n <div class=\"\">onControlObtainedList Length: {{ onControlObtainedList().length }}</div>\n }\n @if (computedShowLabel()) {\n <app-input-label\n [colored]=\"coloredSignal()\"\n [form]=\"form()|toAny\"\n [hint]=\"hint\"\n [id]=\"idSignal()\"\n [invalidCheckbox]=\"invalidCheckboxSignal()\"\n [isRequired]=\"isRequiredSignal()\"\n [label]=\"labelSignal()\"\n [lblCl]=\"lblCl\"\n [light]=\"light\"\n [mini]=\"miniSignal()\"\n [showRequiredTag]=\"showRequiredTagSignal()\"\n [showLabel]=\"showLabelSignal()\"\n [small]=\"smallSignal()\"\n [stacked]=\"stackedSignal()\"\n [theme]=\"theme\"\n [xsmall]=\"xsmall\" />\n }\n <div class=\"{{ stackedSignal() ? 'col-12' : 'col-md' }} position-relative\">\n <form [formGroup]=\"form()|toAny\" class=\"position-relative\">\n <input\n type=\"text\"\n data-noformat=\"true\"\n [formControlName]=\"nameStrSignal()\"\n placeholder=\"{{ placeholder() }}\"\n [id]=\"idSignal()\"\n (keyup)=\"fetchOptions($event)\"\n [class]=\"inputClassSignal()\"\n [required]=\"requiredSignal()\"\n [readonly]=\"readonlySignal()\"\n #trigger=\"matAutocompleteTrigger\"\n [matAutocomplete]=\"auto\"\n #inp />\n @if (!disabledSignal()) {\n <i
|
|
117
|
+
], template: "<div class=\"row align-items-center\">\n <!-- {{options()|json}} -->\n @if (verbose()) {\n <div>disabledSignal: {{ disabledSignal() }}</div>\n <div>validSignal: {{ validSignal() }}</div>\n <div>invalidSignal: {{ invalidSignal() }}</div>\n <div>valueSignal: {{ valueSignal() | json }}</div>\n <div>hasValue: {{ hasValue() }}</div>\n <div>dirtySignal: {{ dirtySignal() }}</div>\n <div>touchedSignal: {{ touchedSignal() }}</div>\n <div>errorsSignal: {{ errorsSignaljson() }}</div>\n <div>pendingSignal: {{ pendingSignal() }}</div>\n <div>pristineSignal: {{ pristineSignal() }}</div>\n <div>controlRequiredSignal: {{ controlRequiredSignal() }}</div>\n <div>isRequiredSignal: {{ isRequiredSignal() }}</div>\n <div class=\"\">onControlObtainedList Length: {{ onControlObtainedList().length }}</div>\n }\n @if (computedShowLabel()) {\n <app-input-label\n [colored]=\"coloredSignal()\"\n [form]=\"form() | toAny\"\n [hint]=\"hint\"\n [id]=\"idSignal()\"\n [invalidCheckbox]=\"invalidCheckboxSignal()\"\n [isRequired]=\"isRequiredSignal()\"\n [label]=\"labelSignal()\"\n [lblCl]=\"lblCl\"\n [light]=\"light\"\n [mini]=\"miniSignal()\"\n [showRequiredTag]=\"showRequiredTagSignal()\"\n [showLabel]=\"showLabelSignal()\"\n [small]=\"smallSignal()\"\n [stacked]=\"stackedSignal()\"\n [theme]=\"theme\"\n [xsmall]=\"xsmall\" />\n }\n <div class=\"{{ stackedSignal() ? 'col-12' : 'col-md' }} position-relative\">\n <form [formGroup]=\"form() | toAny\" class=\"position-relative\">\n <input\n type=\"text\"\n data-noformat=\"true\"\n [formControlName]=\"nameStrSignal()\"\n placeholder=\"{{ placeholder() }}\"\n [id]=\"idSignal()\"\n (keyup)=\"fetchOptions($event)\"\n [class]=\"inputClassSignal()\"\n [required]=\"requiredSignal()\"\n [readonly]=\"readonlySignal()\"\n #trigger=\"matAutocompleteTrigger\"\n [matAutocomplete]=\"auto\"\n #inp />\n @if (!disabledSignal()) {\n <i\n class=\"input-icon fa fa-search\"\n (click)=\"$event.stopPropagation(); trigger.openPanel()\"></i>\n }\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [displayWith]=\"displayWith\"\n class=\"options-w-auto\"\n (optionSelected)=\"selected($event)\">\n <!-- <ng-container *ngIf=\"duplicateCheck; else elseNoDulicateTemplate\">\n <mat-option\n *ngFor=\"let item of filteredOptions|removeUsedOptionsReactive:(form.parent|toAny):(form.value):'value':name;trackBy:iS.trackByValue\"\n [value]=\"item.value\">\n <div class=\"option\" [matTooltip]=\"ele.innerText\" [matTooltipDisabled]=\"ele.scrollWidth<=ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions | async }}\n </div>\n </mat-option>\n </ng-container>\n <ng-template #elseNoDulicateTemplate>\n <mat-option\n *ngFor=\"let item of filteredOptions;trackBy:iS.trackByValue\"\n [value]=\"item.value\">\n <div class=\"option\" [matTooltip]=\"ele.innerText\" [matTooltipDisabled]=\"ele.scrollWidth<=ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions | async }}\n </div>\n </mat-option>\n </ng-template> -->\n\n @if (showEmptyOptionSignal()) {\n <mat-option selected [value]=\"null\" class=\"empty-option\">\n {{ optionsFunc ? 'Type to search' : placeholder() }}\n </mat-option>\n }\n @for (item of filteredOptions(); track item._id) {\n <mat-option [value]=\"item.value\" (onSelectionChange)=\"selectedOption(item)\">\n <div\n class=\"option\"\n [matTooltip]=\"ele.innerText\"\n [matTooltipShowDelay]=\"1000\"\n [matTooltipDisabled]=\"ele.scrollWidth <= ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions() | async }}\n </div>\n </mat-option>\n }\n </mat-autocomplete>\n @if (dirtySignal() && showValidationSignal() && showValidationIconSignal()) {\n <div [ngClass]=\"{ valid: validSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-check\"></i>\n </div>\n <div [ngClass]=\"{ pending: pendingSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-spinner fa-spin\"></i>\n </div>\n <div [ngClass]=\"{ invalid: invalidSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-times\"></i>\n </div>\n }\n @if (loading) {\n <div class=\"d-flex text-primary me-1 validity-icon\">\n <i class=\"fa fa-spinner fa-spin\"></i>\n </div>\n }\n </form>\n </div>\n</div>\n@if (showValidationMsgSignal()) {\n <app-validation-message [label]=\"labelSignal()\" [control]=\"control()\" />\n}\n", styles: ["i.input-icon{position:absolute;top:15px;right:7px;opacity:.4;font-size:10px}.option{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"] }]
|
|
118
118
|
}], ctorParameters: () => [{ type: i1.AutocompleteService }], propDecorators: { validate: [{
|
|
119
119
|
type: Input
|
|
120
120
|
}], _options: [{
|
|
@@ -124,4 +124,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
124
124
|
type: ViewChild,
|
|
125
125
|
args: [MatAutocomplete]
|
|
126
126
|
}] } });
|
|
127
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLXRkLXJmLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V0cy1mZS1uZy1zZGsvc3JjL2xpYi9TaGFyZWQvY29tcG9uZW50cy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLXRkLXJmL2F1dG9jb21wbGV0ZS10ZC1yZi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldHMtZmUtbmctc2RrL3NyYy9saWIvU2hhcmVkL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBbUIsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkYsT0FBTyxFQUNMLGVBQWUsRUFFZixxQkFBcUIsR0FDdEIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsYUFBYSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFeEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsZ0JBQWdC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O0lBQzFCLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBb0M7UUFDM0MsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDaEYscUJBQXFCO1FBQ3JCLDhDQUE4QztRQUM5QyxXQUFXO0lBQ2IsQ0FBQzs4R0E5RFUseUJBQXlCO2tHQUF6Qix5QkFBeUIsMk5BV3pCLGVBQWUsdUVDdkQ1QiwwdkpBeUdBLDBNRDdFSSxtQkFBbUIsNFFBQ25CLFdBQVcsdzNCQUNYLG1CQUFtQiwyVUFDbkIsUUFBUSw0Q0FDUixxQkFBcUIsdzFCQUVyQixlQUFlLDhCQUNmLGdCQUFnQiw2VEFDaEIsT0FBTyxvRkFDUCwwQkFBMEIsc05BQzFCLFNBQVMseUNBQ1QsU0FBUyx5Q0FDVCxnQkFBZ0I7OzJGQUlQLHlCQUF5QjtrQkF2QnJDLFNBQVM7K0JBQ0UsMkNBQTJDLGNBR3pDLElBQUksV0FDUDt3QkFDUCxJQUFJO3dCQUNKLG1CQUFtQjt3QkFDbkIsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLFFBQVE7d0JBQ1IscUJBQXFCO3dCQUNyQixLQUFLO3dCQUNMLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixPQUFPO3dCQUNQLDBCQUEwQjt3QkFDMUIsU0FBUzt3QkFDVCxTQUFTO3dCQUNULGdCQUFnQjt3QkFDaEIsY0FBYztxQkFDZjt3RkFPUSxRQUFRO3NCQUFoQixLQUFLO2dCQUN5QixRQUFRO3NCQUF0QyxLQUFLO3VCQUFDLFNBQVM7Z0JBS1ksZUFBZTtzQkFBMUMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NoaWxkLCBjb21wdXRlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIE1hdEF1dG9jb21wbGV0ZSxcbiAgTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCxcbiAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBJT3B0aW9uIH0gZnJvbSAnLi4vLi4vaW5wdXQvaW5wdXQtYmFzaWMuY29tcG9uZW50JztcbmltcG9ydCB7IElucHV0VERfUkZDb21wb25lbnQgfSBmcm9tICcuLi8uLi9pbnB1dC9pbnB1dC10ZC1yZi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0b2NvbXBsZXRlU2VydmljZSB9IGZyb20gJy4uL2F1dG9jb21wbGV0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IElucHV0Q2xhc3NQaXBlIH0gZnJvbSAnLi4vLi4vaW5wdXQvaW5wdXRzLXBpcGVzLnBpcGUnO1xuaW1wb3J0IHsgVG9BbnlQaXBlIH0gZnJvbSAnLi4vLi4vLi4vcGlwZXMvdXRpbGl0eS5waXBlJztcbmltcG9ydCB7IFNES1RyYW5zbGF0ZVBpcGUgfSBmcm9tICcuLi8uLi8uLi9waXBlcy90cmFuc2xhdGUucGlwZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uTWVzc2FnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2lucHV0L3ZhbGlkYXRpb24tbWVzc2FnZS92YWxpZGF0aW9uLW1lc3NhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IE1hdE9wdGlvbiwgTWF0T3B0aW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBJbnB1dExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vaW5wdXQvaW5wdXQtbGFiZWwvaW5wdXQtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IE5nSWYsIE5nRm9yLCBOZ0NsYXNzLCBBc3luY1BpcGUsIEpzb25QaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXV0b2NvbXBsZXRlLXRkLXJmLGFwcC1hdXRvY29tcGxldGUtdGQtcmYnLFxuICB0ZW1wbGF0ZVVybDogJy4uL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuLi9hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgSW5wdXRMYWJlbENvbXBvbmVudCxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEpzb25QaXBlLFxuICAgIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcbiAgICBOZ0ZvcixcbiAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBOZ0NsYXNzLFxuICAgIFZhbGlkYXRpb25NZXNzYWdlQ29tcG9uZW50LFxuICAgIEFzeW5jUGlwZSxcbiAgICBUb0FueVBpcGUsXG4gICAgU0RLVHJhbnNsYXRlUGlwZSxcbiAgICBJbnB1dENsYXNzUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlVGRSZkNvbXBvbmVudDxUT3B0aW9uPiBleHRlbmRzIElucHV0VERfUkZDb21wb25lbnQ8VE9wdGlvbj4ge1xuICByZWFkb25seSBjT3B0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuYXV0b1Mubm9ybWFsaXplT3B0aW9ucyh0aGlzLm9wdGlvbnMoKSkpO1xuICBmaWx0ZXJlZE9wdGlvbnMgPSBjb21wdXRlZDxJT3B0aW9uW10+KCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5hdXRvUy5maWx0ZXJPcHRpb25zKHRoaXMudmFsdWVTaWduYWwoKSwgdGhpcy5jT3B0aW9ucygpKTtcbiAgfSk7XG4gIEBJbnB1dCgpIHZhbGlkYXRlID0gdHJ1ZTtcbiAgQElucHV0KCdvcHRpb25zJykgb3ZlcnJpZGUgc2V0IF9vcHRpb25zKHY6IFRPcHRpb25bXSkge1xuICAgIHN1cGVyLl9vcHRpb25zID0gdjtcbiAgICBpZiAodGhpcy5hdXRvQ29tcGxldGVSZWYgJiYgdGhpcy5jb250cm9sKCk/LmdldFJhd1ZhbHVlKCkpXG4gICAgICB0aGlzLmNvbnRyb2woKS5zZXRWYWx1ZSh0aGlzLmNvbnRyb2woKT8uZ2V0UmF3VmFsdWUoKSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICB9XG4gIEBWaWV3Q2hpbGQoTWF0QXV0b2NvbXBsZXRlKSBhdXRvQ29tcGxldGVSZWY6IE1hdEF1dG9jb21wbGV0ZTtcblxuICBwcm90ZWN0ZWQgdmFsdWVDaGFuZ2VkID0gbmV3IFJlcGxheVN1YmplY3Q8c3RyaW5nPigpO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBhdXRvUzogQXV0b2NvbXBsZXRlU2VydmljZSkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIGxldCB2UzogU3Vic2NyaXB0aW9uO1xuICAgIHRoaXMuYWRkT25Db250cm9sT2J0YWluZWRIb29rKCdpbmNsdWRlc09wdGlvbicsIChjb250cm9sKSA9PiB7XG4gICAgICBpZiAoIWNvbnRyb2w/Lmhhc1ZhbGlkYXRvcih0aGlzLmluY2x1ZGVzT3B0aW9uKSkgY29udHJvbD8uYWRkVmFsaWRhdG9ycyh0aGlzLmluY2x1ZGVzT3B0aW9uKTtcbiAgICAgIGVsc2UgZGVidWdnZXI7XG4gICAgICB2Uz8udW5zdWJzY3JpYmUoKTtcbiAgICAgIHZTID0gY29udHJvbD8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgocikgPT4ge1xuICAgICAgICAvLyBkZWJ1Z2dlclxuICAgICAgICBzdXBlci5jaGFuZ2UoeyB0YXJnZXQ6IHsgdmFsdWU6IHIgfSB9KTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIGlmICh0aGlzLm9wdGlvbnNGdW5jKVxuICAgICAgdGhpcy52YWx1ZUNoYW5nZWRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFwKCgpID0+ICh0aGlzLmxvYWRpbmcgPSB0cnVlKSksXG4gICAgICAgICAgZGVib3VuY2VUaW1lKDYwMCksXG4gICAgICAgICAgZmlsdGVyKCh2KSA9PiB2ICE9IG51bGwgJiYgdiAhPSAnJyksXG4gICAgICAgICAgc3dpdGNoTWFwKCh2KSA9PiB0aGlzLm9wdGlvbnNGdW5jKHYpKSxcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChyKSA9PiB7XG4gICAgICAgICAgLy8gZGVidWdnZXJcbiAgICAgICAgICB0aGlzLl9vcHRpb25zID0gcjtcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gIH1cblxuICBmZXRjaE9wdGlvbnMoJGV2ZW50OiBFdmVudCkge1xuICAgIGlmICh0aGlzLm9wdGlvbnNGdW5jKSB7XG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgICAgdGhpcy52YWx1ZUNoYW5nZWQubmV4dCh0aGlzLmNvbnRyb2woKT8uZ2V0UmF3VmFsdWUoKSk7XG4gICAgfVxuICB9XG5cbiAgb3ZlcnJpZGUgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICB9XG5cbiAgc2VsZWN0ZWQoJGV2ZW50OiBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50KSB7XG4gICAgdGhpcy5tU2VsZWN0ZWRPcHRpb25MYWJlbC5lbWl0KHRoaXMuZGlzcGxheVdpdGgodGhpcy5jb250cm9sKCk/LmdldFJhd1ZhbHVlKCkpKTtcbiAgICAvLyBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAvLyAgIHRoaXMuZmlsdGVyZWRPcHRpb25zLnNldCh0aGlzLm9wdGlvbnMoKSk7XG4gICAgLy8gfSwgNjAwKTtcbiAgfVxuXG4gIGRpc3BsYXlXaXRoID0gKHZhbDogYW55KSA9PlxuICAgIC8vIHtcbiAgICAvLyBpZiAodGhpcy5kZWJ1ZygpKSBkZWJ1Z2dlcjtcbiAgICB2YWwgaW5zdGFuY2VvZiBNYXRPcHRpb25cbiAgICAgID8gdGhpcy5kaXNwbGF5V2l0aCh2YWwudmFsdWUpXG4gICAgICA6IHRoaXMuZG9lc09wdGlvbkV4aXN0KHZhbCk/LmxhYmVsIHx8IHZhbDtcbiAgLy8gfTtcblxuICBpbmNsdWRlc09wdGlvbiA9IChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHtcbiAgICBpZiAodGhpcy5kZWJ1ZygpKSBkZWJ1Z2dlcjtcbiAgICBjb25zdCB2YWwgPSBjb250cm9sPy52YWx1ZTtcbiAgICBpZiAoIXZhbCkgcmV0dXJuIG51bGw7XG4gICAgaWYgKCF0aGlzLm9wdGlvbnMoKSB8fCB0aGlzLm9wdGlvbnMoKS5sZW5ndGggPT09IDApIHJldHVybiBudWxsO1xuICAgIC8vIGRlYnVnZ2VyXG4gICAgaWYgKHRoaXMuZG9lc09wdGlvbkV4aXN0KHZhbCkpIHJldHVybiBudWxsO1xuICAgIGVsc2UgcmV0dXJuIHRoaXMuYXV0b1MuaW52YWxpZFNlbGVjdGlvbkVycm9yO1xuICB9O1xufVxuIiwiPGRpdiBjbGFzcz1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgPCEtLSB7e29wdGlvbnMoKXxqc29ufX0gLS0+XG4gIEBpZiAodmVyYm9zZSgpKSB7XG4gICAgPGRpdj5kaXNhYmxlZFNpZ25hbDoge3sgZGlzYWJsZWRTaWduYWwoKSB9fTwvZGl2PlxuICAgIDxkaXY+dmFsaWRTaWduYWw6IHt7IHZhbGlkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PmludmFsaWRTaWduYWw6IHt7IGludmFsaWRTaWduYWwoKSB9fTwvZGl2PlxuICAgIDxkaXY+dmFsdWVTaWduYWw6IHt7IHZhbHVlU2lnbmFsKCl8anNvbiB9fTwvZGl2PlxuICAgIDxkaXY+aGFzVmFsdWU6IHt7IGhhc1ZhbHVlKCkgfX08L2Rpdj5cbiAgICA8ZGl2PmRpcnR5U2lnbmFsOiB7eyBkaXJ0eVNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj50b3VjaGVkU2lnbmFsOiB7eyB0b3VjaGVkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PmVycm9yc1NpZ25hbDoge3sgZXJyb3JzU2lnbmFsanNvbigpIH19PC9kaXY+XG4gICAgPGRpdj5wZW5kaW5nU2lnbmFsOiB7eyBwZW5kaW5nU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PnByaXN0aW5lU2lnbmFsOiB7eyBwcmlzdGluZVNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj5jb250cm9sUmVxdWlyZWRTaWduYWw6IHt7IGNvbnRyb2xSZXF1aXJlZFNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj5pc1JlcXVpcmVkU2lnbmFsOiB7eyBpc1JlcXVpcmVkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiXCI+b25Db250cm9sT2J0YWluZWRMaXN0IExlbmd0aDoge3sgb25Db250cm9sT2J0YWluZWRMaXN0KCkubGVuZ3RoIH19PC9kaXY+XG4gIH1cbiAgQGlmIChjb21wdXRlZFNob3dMYWJlbCgpKSB7XG4gICAgPGFwcC1pbnB1dC1sYWJlbFxuICAgICAgW2NvbG9yZWRdPVwiY29sb3JlZFNpZ25hbCgpXCJcbiAgICAgIFtmb3JtXT1cImZvcm0oKXx0b0FueVwiXG4gICAgICBbaGludF09XCJoaW50XCJcbiAgICAgIFtpZF09XCJpZFNpZ25hbCgpXCJcbiAgICAgIFtpbnZhbGlkQ2hlY2tib3hdPVwiaW52YWxpZENoZWNrYm94U2lnbmFsKClcIlxuICAgICAgW2lzUmVxdWlyZWRdPVwiaXNSZXF1aXJlZFNpZ25hbCgpXCJcbiAgICAgIFtsYWJlbF09XCJsYWJlbFNpZ25hbCgpXCJcbiAgICAgIFtsYmxDbF09XCJsYmxDbFwiXG4gICAgICBbbGlnaHRdPVwibGlnaHRcIlxuICAgICAgW21pbmldPVwibWluaVNpZ25hbCgpXCJcbiAgICAgIFtzaG93UmVxdWlyZWRUYWddPVwic2hvd1JlcXVpcmVkVGFnU2lnbmFsKClcIlxuICAgICAgW3Nob3dMYWJlbF09XCJzaG93TGFiZWxTaWduYWwoKVwiXG4gICAgICBbc21hbGxdPVwic21hbGxTaWduYWwoKVwiXG4gICAgICBbc3RhY2tlZF09XCJzdGFja2VkU2lnbmFsKClcIlxuICAgICAgW3RoZW1lXT1cInRoZW1lXCJcbiAgICAgIFt4c21hbGxdPVwieHNtYWxsXCIgLz5cbiAgfVxuICA8ZGl2IGNsYXNzPVwie3sgc3RhY2tlZFNpZ25hbCgpID8gJ2NvbC0xMicgOiAnY29sLW1kJyB9fSBwb3NpdGlvbi1yZWxhdGl2ZVwiPlxuICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybSgpfHRvQW55XCIgY2xhc3M9XCJwb3NpdGlvbi1yZWxhdGl2ZVwiPlxuICAgICAgPGlucHV0XG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgZGF0YS1ub2Zvcm1hdD1cInRydWVcIlxuICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIm5hbWVTdHJTaWduYWwoKVwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwie3sgcGxhY2Vob2xkZXIoKSB9fVwiXG4gICAgICAgIFtpZF09XCJpZFNpZ25hbCgpXCJcbiAgICAgICAgKGtleXVwKT1cImZldGNoT3B0aW9ucygkZXZlbnQpXCJcbiAgICAgICAgW2NsYXNzXT1cImlucHV0Q2xhc3NTaWduYWwoKVwiXG4gICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFNpZ25hbCgpXCJcbiAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5U2lnbmFsKClcIlxuICAgICAgICAjdHJpZ2dlcj1cIm1hdEF1dG9jb21wbGV0ZVRyaWdnZXJcIlxuICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxuICAgICAgICAjaW5wIC8+XG4gICAgICBAaWYgKCFkaXNhYmxlZFNpZ25hbCgpKSB7XG4gICAgICAgIDxpIGNsYXNzPVwiaW5wdXQtaWNvbiBmYSBmYS1zZWFyY2hcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyB0cmlnZ2VyLm9wZW5QYW5lbCgpXCI+PC9pPlxuICAgICAgfVxuICAgICAgPG1hdC1hdXRvY29tcGxldGUgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIiBbZGlzcGxheVdpdGhdPVwiZGlzcGxheVdpdGhcIiBjbGFzcz1cIm9wdGlvbnMtdy1hdXRvXCIgKG9wdGlvblNlbGVjdGVkKT1cInNlbGVjdGVkKCRldmVudClcIj5cbiAgICAgICAgPCEtLSA8bmctY29udGFpbmVyICpuZ0lmPVwiZHVwbGljYXRlQ2hlY2s7IGVsc2UgZWxzZU5vRHVsaWNhdGVUZW1wbGF0ZVwiPlxuICAgICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWx0ZXJlZE9wdGlvbnN8cmVtb3ZlVXNlZE9wdGlvbnNSZWFjdGl2ZTooZm9ybS5wYXJlbnR8dG9BbnkpOihmb3JtLnZhbHVlKTondmFsdWUnOm5hbWU7dHJhY2tCeTppUy50cmFja0J5VmFsdWVcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvcHRpb25cIiBbbWF0VG9vbHRpcF09XCJlbGUuaW5uZXJUZXh0XCIgW21hdFRvb2x0aXBEaXNhYmxlZF09XCJlbGUuc2Nyb2xsV2lkdGg8PWVsZS5vZmZzZXRXaWR0aFwiXG4gICAgICAgICAgICAgICNlbGU+XG4gICAgICAgICAgICAgIHt7IGl0ZW0ubGFiZWwgfCBhcHBUcmFuc2xhdGU6IHRyYW5zbGF0ZU9wdGlvbnMgfCBhc3luYyB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNlbHNlTm9EdWxpY2F0ZVRlbXBsYXRlPlxuICAgICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWx0ZXJlZE9wdGlvbnM7dHJhY2tCeTppUy50cmFja0J5VmFsdWVcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvcHRpb25cIiBbbWF0VG9vbHRpcF09XCJlbGUuaW5uZXJUZXh0XCIgW21hdFRvb2x0aXBEaXNhYmxlZF09XCJlbGUuc2Nyb2xsV2lkdGg8PWVsZS5vZmZzZXRXaWR0aFwiXG4gICAgICAgICAgICAgICNlbGU+XG4gICAgICAgICAgICAgIHt7IGl0ZW0ubGFiZWwgfCBhcHBUcmFuc2xhdGU6IHRyYW5zbGF0ZU9wdGlvbnMgfCBhc3luYyB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L25nLXRlbXBsYXRlPiAtLT5cblxuICAgICAgICBAaWYgKHNob3dFbXB0eU9wdGlvblNpZ25hbCgpKSB7XG4gICAgICAgICAgPG1hdC1vcHRpb24gc2VsZWN0ZWQgW3ZhbHVlXT1cIm51bGxcIiBjbGFzcz1cImVtcHR5LW9wdGlvblwiPlxuICAgICAgICAgICAge3sgb3B0aW9uc0Z1bmMgPyAnVHlwZSB0byBzZWFyY2gnIDogcGxhY2Vob2xkZXIoKSB9fVxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgfVxuICAgICAgICBAZm9yIChpdGVtIG9mIGZpbHRlcmVkT3B0aW9ucygpOyB0cmFjayBpUy50cmFja0J5VmFsdWUpIHtcbiAgICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiIChvblNlbGVjdGlvbkNoYW5nZSk9XCJzZWxlY3RlZE9wdGlvbihpdGVtKVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvblwiIFttYXRUb29sdGlwXT1cImVsZS5pbm5lclRleHRcIiBbbWF0VG9vbHRpcFNob3dEZWxheV09XCIxMDAwXCIgW21hdFRvb2x0aXBEaXNhYmxlZF09XCJlbGUuc2Nyb2xsV2lkdGggPD0gZWxlLm9mZnNldFdpZHRoXCIgI2VsZT5cbiAgICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB8IGFwcFRyYW5zbGF0ZTogdHJhbnNsYXRlT3B0aW9ucygpIHwgYXN5bmMgfX0gXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIH1cbiAgICAgIDwvbWF0LWF1dG9jb21wbGV0ZT5cbiAgICAgIEBpZiAoZGlydHlTaWduYWwoKSAmJiBzaG93VmFsaWRhdGlvblNpZ25hbCgpICYmIHNob3dWYWxpZGF0aW9uSWNvblNpZ25hbCgpKSB7XG4gICAgICAgIDxkaXYgW25nQ2xhc3NdPVwieyB2YWxpZDogdmFsaWRTaWduYWwoKSB9XCIgY2xhc3M9XCJ2YWxpZGl0eS1pY29uXCI+PGkgY2xhc3M9XCJmYSBmYS1jaGVja1wiPjwvaT48L2Rpdj5cbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7IHBlbmRpbmc6IHBlbmRpbmdTaWduYWwoKSB9XCIgY2xhc3M9XCJ2YWxpZGl0eS1pY29uXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1zcGlubmVyIGZhLXNwaW5cIj48L2k+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cInsgaW52YWxpZDogaW52YWxpZFNpZ25hbCgpIH1cIiBjbGFzcz1cInZhbGlkaXR5LWljb25cIj48aSBjbGFzcz1cImZhIGZhLXRpbWVzXCI+PC9pPjwvZGl2PlxuICAgICAgfVxuICAgICAgQGlmIChsb2FkaW5nKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggdGV4dC1wcmltYXJ5IG1lLTEgdmFsaWRpdHktaWNvblwiPjxpIGNsYXNzPVwiZmEgZmEtc3Bpbm5lciBmYS1zcGluXCI+PC9pPjwvZGl2PlxuICAgICAgfVxuICAgIDwvZm9ybT5cbiAgPC9kaXY+XG48L2Rpdj5cbkBpZiAoc2hvd1ZhbGlkYXRpb25Nc2dTaWduYWwoKSkge1xuICA8YXBwLXZhbGlkYXRpb24tbWVzc2FnZSBbbGFiZWxdPVwibGFiZWxTaWduYWwoKVwiIFtjb250cm9sXT1cImNvbnRyb2woKVwiIC8+XG59XG4iXX0=
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLXRkLXJmLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V0cy1mZS1uZy1zZGsvc3JjL2xpYi9TaGFyZWQvY29tcG9uZW50cy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLXRkLXJmL2F1dG9jb21wbGV0ZS10ZC1yZi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldHMtZmUtbmctc2RrL3NyYy9saWIvU2hhcmVkL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBbUIsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkYsT0FBTyxFQUNMLGVBQWUsRUFFZixxQkFBcUIsR0FDdEIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsYUFBYSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFeEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2REFBNkQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7QUF5QjVFLE1BQU0sT0FBTyx5QkFBbUMsU0FBUSxtQkFBNEI7SUFNbEYsSUFBK0IsUUFBUSxDQUFDLENBQVk7UUFDbEQsS0FBSyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDbkIsSUFBSSxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxXQUFXLEVBQUU7WUFDdkQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBS0QsWUFBbUIsS0FBMEI7UUFDM0MsS0FBSyxFQUFFLENBQUM7UUFEUyxVQUFLLEdBQUwsS0FBSyxDQUFxQjtRQWRwQyxhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN2RSxvQkFBZSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDdkMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQyxDQUFDLENBQUM7UUFDTSxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBUWYsaUJBQVksR0FBRyxJQUFJLGFBQWEsRUFBVSxDQUFDO1FBbURyRCxnQkFBVyxHQUFHLENBQUMsR0FBUSxFQUFFLEVBQUU7UUFDekIsSUFBSTtRQUNKLDhCQUE4QjtRQUM5QixHQUFHLFlBQVksU0FBUztZQUN0QixDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO1lBQzdCLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssSUFBSSxHQUFHLENBQUM7UUFDOUMsS0FBSztRQUVMLG1CQUFjLEdBQUcsQ0FBQyxPQUF3QixFQUFFLEVBQUU7WUFDNUMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUFFLFFBQVEsQ0FBQztZQUMzQixNQUFNLEdBQUcsR0FBRyxPQUFPLEVBQUUsS0FBSyxDQUFDO1lBQzNCLElBQUksQ0FBQyxHQUFHO2dCQUFFLE9BQU8sSUFBSSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sS0FBSyxDQUFDO2dCQUFFLE9BQU8sSUFBSSxDQUFDO1lBQ2hFLFdBQVc7WUFDWCxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDO2dCQUFFLE9BQU8sSUFBSSxDQUFDOztnQkFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDO1FBQy9DLENBQUMsQ0FBQztJQS9ERixDQUFDO0lBRVEsUUFBUTtRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLEVBQWdCLENBQUM7UUFDckIsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGdCQUFnQixFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDMUQsSUFBSSxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztnQkFBRSxPQUFPLEVBQUUsYUFBYSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzs7Z0JBQ3hGLFFBQVEsQ0FBQztZQUNkLEVBQUUsRUFBRSxXQUFXLEVBQUUsQ0FBQztZQUNsQixFQUFFLEdBQUcsT0FBTyxFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDekMsV0FBVztnQkFDWCxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN6QyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxJQUFJLENBQUMsV0FBVztZQUNsQixJQUFJLENBQUMsWUFBWTtpQkFDZCxJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUNoQyxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQ25DLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUN0QztpQkFDQSxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDZixXQUFXO2dCQUNYLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO2dCQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUN2QixDQUFDLENBQUMsQ0FBQztJQUNULENBQUM7SUFFRCxZQUFZLENBQUMsTUFBYTtRQUN4QixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUN4RCxDQUFDO0lBQ0gsQ0FBQztJQUVRLGVBQWU7UUFDdEIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBb0M7UUFDM0MsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDaEYscUJBQXFCO1FBQ3JCLDhDQUE4QztRQUM5QyxXQUFXO0lBQ2IsQ0FBQzs4R0E5RFUseUJBQXlCO2tHQUF6Qix5QkFBeUIsMk5BV3pCLGVBQWUsdUVDdkQ1QiwrN0pBMEhBLDBNRDlGSSxtQkFBbUIsNFFBQ25CLFdBQVcsdzNCQUNYLG1CQUFtQiwyVUFDbkIsUUFBUSw0Q0FDUixxQkFBcUIsdzFCQUVyQixlQUFlLDhCQUNmLGdCQUFnQiw2VEFDaEIsT0FBTyxvRkFDUCwwQkFBMEIsc05BQzFCLFNBQVMseUNBQ1QsU0FBUyx5Q0FDVCxnQkFBZ0I7OzJGQUlQLHlCQUF5QjtrQkF2QnJDLFNBQVM7K0JBQ0UsMkNBQTJDLGNBR3pDLElBQUksV0FDUDt3QkFDUCxJQUFJO3dCQUNKLG1CQUFtQjt3QkFDbkIsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLFFBQVE7d0JBQ1IscUJBQXFCO3dCQUNyQixLQUFLO3dCQUNMLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixPQUFPO3dCQUNQLDBCQUEwQjt3QkFDMUIsU0FBUzt3QkFDVCxTQUFTO3dCQUNULGdCQUFnQjt3QkFDaEIsY0FBYztxQkFDZjt3RkFPUSxRQUFRO3NCQUFoQixLQUFLO2dCQUN5QixRQUFRO3NCQUF0QyxLQUFLO3VCQUFDLFNBQVM7Z0JBS1ksZUFBZTtzQkFBMUMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NoaWxkLCBjb21wdXRlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIE1hdEF1dG9jb21wbGV0ZSxcbiAgTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCxcbiAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBJT3B0aW9uIH0gZnJvbSAnLi4vLi4vaW5wdXQvaW5wdXQtYmFzaWMuY29tcG9uZW50JztcbmltcG9ydCB7IElucHV0VERfUkZDb21wb25lbnQgfSBmcm9tICcuLi8uLi9pbnB1dC9pbnB1dC10ZC1yZi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0b2NvbXBsZXRlU2VydmljZSB9IGZyb20gJy4uL2F1dG9jb21wbGV0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IElucHV0Q2xhc3NQaXBlIH0gZnJvbSAnLi4vLi4vaW5wdXQvaW5wdXRzLXBpcGVzLnBpcGUnO1xuaW1wb3J0IHsgVG9BbnlQaXBlIH0gZnJvbSAnLi4vLi4vLi4vcGlwZXMvdXRpbGl0eS5waXBlJztcbmltcG9ydCB7IFNES1RyYW5zbGF0ZVBpcGUgfSBmcm9tICcuLi8uLi8uLi9waXBlcy90cmFuc2xhdGUucGlwZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uTWVzc2FnZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2lucHV0L3ZhbGlkYXRpb24tbWVzc2FnZS92YWxpZGF0aW9uLW1lc3NhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IE1hdE9wdGlvbiwgTWF0T3B0aW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBJbnB1dExhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vaW5wdXQvaW5wdXQtbGFiZWwvaW5wdXQtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IE5nSWYsIE5nRm9yLCBOZ0NsYXNzLCBBc3luY1BpcGUsIEpzb25QaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXV0b2NvbXBsZXRlLXRkLXJmLGFwcC1hdXRvY29tcGxldGUtdGQtcmYnLFxuICB0ZW1wbGF0ZVVybDogJy4uL2F1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuLi9hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgSW5wdXRMYWJlbENvbXBvbmVudCxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEpzb25QaXBlLFxuICAgIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcbiAgICBOZ0ZvcixcbiAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBOZ0NsYXNzLFxuICAgIFZhbGlkYXRpb25NZXNzYWdlQ29tcG9uZW50LFxuICAgIEFzeW5jUGlwZSxcbiAgICBUb0FueVBpcGUsXG4gICAgU0RLVHJhbnNsYXRlUGlwZSxcbiAgICBJbnB1dENsYXNzUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlVGRSZkNvbXBvbmVudDxUT3B0aW9uPiBleHRlbmRzIElucHV0VERfUkZDb21wb25lbnQ8VE9wdGlvbj4ge1xuICByZWFkb25seSBjT3B0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHRoaXMuYXV0b1Mubm9ybWFsaXplT3B0aW9ucyh0aGlzLm9wdGlvbnMoKSkpO1xuICByZWFkb25seSBmaWx0ZXJlZE9wdGlvbnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuYXV0b1MuZmlsdGVyT3B0aW9ucyh0aGlzLnZhbHVlU2lnbmFsKCksIHRoaXMuY09wdGlvbnMoKSk7XG4gIH0pO1xuICBASW5wdXQoKSB2YWxpZGF0ZSA9IHRydWU7XG4gIEBJbnB1dCgnb3B0aW9ucycpIG92ZXJyaWRlIHNldCBfb3B0aW9ucyh2OiBUT3B0aW9uW10pIHtcbiAgICBzdXBlci5fb3B0aW9ucyA9IHY7XG4gICAgaWYgKHRoaXMuYXV0b0NvbXBsZXRlUmVmICYmIHRoaXMuY29udHJvbCgpPy5nZXRSYXdWYWx1ZSgpKVxuICAgICAgdGhpcy5jb250cm9sKCkuc2V0VmFsdWUodGhpcy5jb250cm9sKCk/LmdldFJhd1ZhbHVlKCksIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgfVxuICBAVmlld0NoaWxkKE1hdEF1dG9jb21wbGV0ZSkgYXV0b0NvbXBsZXRlUmVmOiBNYXRBdXRvY29tcGxldGU7XG5cbiAgcHJvdGVjdGVkIHZhbHVlQ2hhbmdlZCA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZz4oKTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgYXV0b1M6IEF1dG9jb21wbGV0ZVNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICBsZXQgdlM6IFN1YnNjcmlwdGlvbjtcbiAgICB0aGlzLmFkZE9uQ29udHJvbE9idGFpbmVkSG9vaygnaW5jbHVkZXNPcHRpb24nLCAoY29udHJvbCkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sPy5oYXNWYWxpZGF0b3IodGhpcy5pbmNsdWRlc09wdGlvbikpIGNvbnRyb2w/LmFkZFZhbGlkYXRvcnModGhpcy5pbmNsdWRlc09wdGlvbik7XG4gICAgICBlbHNlIGRlYnVnZ2VyO1xuICAgICAgdlM/LnVuc3Vic2NyaWJlKCk7XG4gICAgICB2UyA9IGNvbnRyb2w/LnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHIpID0+IHtcbiAgICAgICAgLy8gZGVidWdnZXJcbiAgICAgICAgc3VwZXIuY2hhbmdlKHsgdGFyZ2V0OiB7IHZhbHVlOiByIH0gfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgICBpZiAodGhpcy5vcHRpb25zRnVuYylcbiAgICAgIHRoaXMudmFsdWVDaGFuZ2VkXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRhcCgoKSA9PiAodGhpcy5sb2FkaW5nID0gdHJ1ZSkpLFxuICAgICAgICAgIGRlYm91bmNlVGltZSg2MDApLFxuICAgICAgICAgIGZpbHRlcigodikgPT4gdiAhPSBudWxsICYmIHYgIT0gJycpLFxuICAgICAgICAgIHN3aXRjaE1hcCgodikgPT4gdGhpcy5vcHRpb25zRnVuYyh2KSksXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgocikgPT4ge1xuICAgICAgICAgIC8vIGRlYnVnZ2VyXG4gICAgICAgICAgdGhpcy5fb3B0aW9ucyA9IHI7XG4gICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgIH0pO1xuICB9XG5cbiAgZmV0Y2hPcHRpb25zKCRldmVudDogRXZlbnQpIHtcbiAgICBpZiAodGhpcy5vcHRpb25zRnVuYykge1xuICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgIHRoaXMudmFsdWVDaGFuZ2VkLm5leHQodGhpcy5jb250cm9sKCk/LmdldFJhd1ZhbHVlKCkpO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcbiAgfVxuXG4gIHNlbGVjdGVkKCRldmVudDogTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCkge1xuICAgIHRoaXMubVNlbGVjdGVkT3B0aW9uTGFiZWwuZW1pdCh0aGlzLmRpc3BsYXlXaXRoKHRoaXMuY29udHJvbCgpPy5nZXRSYXdWYWx1ZSgpKSk7XG4gICAgLy8gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgLy8gICB0aGlzLmZpbHRlcmVkT3B0aW9ucy5zZXQodGhpcy5vcHRpb25zKCkpO1xuICAgIC8vIH0sIDYwMCk7XG4gIH1cblxuICBkaXNwbGF5V2l0aCA9ICh2YWw6IGFueSkgPT5cbiAgICAvLyB7XG4gICAgLy8gaWYgKHRoaXMuZGVidWcoKSkgZGVidWdnZXI7XG4gICAgdmFsIGluc3RhbmNlb2YgTWF0T3B0aW9uXG4gICAgICA/IHRoaXMuZGlzcGxheVdpdGgodmFsLnZhbHVlKVxuICAgICAgOiB0aGlzLmRvZXNPcHRpb25FeGlzdCh2YWwpPy5sYWJlbCB8fCB2YWw7XG4gIC8vIH07XG5cbiAgaW5jbHVkZXNPcHRpb24gPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgaWYgKHRoaXMuZGVidWcoKSkgZGVidWdnZXI7XG4gICAgY29uc3QgdmFsID0gY29udHJvbD8udmFsdWU7XG4gICAgaWYgKCF2YWwpIHJldHVybiBudWxsO1xuICAgIGlmICghdGhpcy5vcHRpb25zKCkgfHwgdGhpcy5vcHRpb25zKCkubGVuZ3RoID09PSAwKSByZXR1cm4gbnVsbDtcbiAgICAvLyBkZWJ1Z2dlclxuICAgIGlmICh0aGlzLmRvZXNPcHRpb25FeGlzdCh2YWwpKSByZXR1cm4gbnVsbDtcbiAgICBlbHNlIHJldHVybiB0aGlzLmF1dG9TLmludmFsaWRTZWxlY3Rpb25FcnJvcjtcbiAgfTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gIDwhLS0ge3tvcHRpb25zKCl8anNvbn19IC0tPlxuICBAaWYgKHZlcmJvc2UoKSkge1xuICAgIDxkaXY+ZGlzYWJsZWRTaWduYWw6IHt7IGRpc2FibGVkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PnZhbGlkU2lnbmFsOiB7eyB2YWxpZFNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj5pbnZhbGlkU2lnbmFsOiB7eyBpbnZhbGlkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PnZhbHVlU2lnbmFsOiB7eyB2YWx1ZVNpZ25hbCgpIHwganNvbiB9fTwvZGl2PlxuICAgIDxkaXY+aGFzVmFsdWU6IHt7IGhhc1ZhbHVlKCkgfX08L2Rpdj5cbiAgICA8ZGl2PmRpcnR5U2lnbmFsOiB7eyBkaXJ0eVNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj50b3VjaGVkU2lnbmFsOiB7eyB0b3VjaGVkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PmVycm9yc1NpZ25hbDoge3sgZXJyb3JzU2lnbmFsanNvbigpIH19PC9kaXY+XG4gICAgPGRpdj5wZW5kaW5nU2lnbmFsOiB7eyBwZW5kaW5nU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PnByaXN0aW5lU2lnbmFsOiB7eyBwcmlzdGluZVNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj5jb250cm9sUmVxdWlyZWRTaWduYWw6IHt7IGNvbnRyb2xSZXF1aXJlZFNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj5pc1JlcXVpcmVkU2lnbmFsOiB7eyBpc1JlcXVpcmVkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiXCI+b25Db250cm9sT2J0YWluZWRMaXN0IExlbmd0aDoge3sgb25Db250cm9sT2J0YWluZWRMaXN0KCkubGVuZ3RoIH19PC9kaXY+XG4gIH1cbiAgQGlmIChjb21wdXRlZFNob3dMYWJlbCgpKSB7XG4gICAgPGFwcC1pbnB1dC1sYWJlbFxuICAgICAgW2NvbG9yZWRdPVwiY29sb3JlZFNpZ25hbCgpXCJcbiAgICAgIFtmb3JtXT1cImZvcm0oKSB8IHRvQW55XCJcbiAgICAgIFtoaW50XT1cImhpbnRcIlxuICAgICAgW2lkXT1cImlkU2lnbmFsKClcIlxuICAgICAgW2ludmFsaWRDaGVja2JveF09XCJpbnZhbGlkQ2hlY2tib3hTaWduYWwoKVwiXG4gICAgICBbaXNSZXF1aXJlZF09XCJpc1JlcXVpcmVkU2lnbmFsKClcIlxuICAgICAgW2xhYmVsXT1cImxhYmVsU2lnbmFsKClcIlxuICAgICAgW2xibENsXT1cImxibENsXCJcbiAgICAgIFtsaWdodF09XCJsaWdodFwiXG4gICAgICBbbWluaV09XCJtaW5pU2lnbmFsKClcIlxuICAgICAgW3Nob3dSZXF1aXJlZFRhZ109XCJzaG93UmVxdWlyZWRUYWdTaWduYWwoKVwiXG4gICAgICBbc2hvd0xhYmVsXT1cInNob3dMYWJlbFNpZ25hbCgpXCJcbiAgICAgIFtzbWFsbF09XCJzbWFsbFNpZ25hbCgpXCJcbiAgICAgIFtzdGFja2VkXT1cInN0YWNrZWRTaWduYWwoKVwiXG4gICAgICBbdGhlbWVdPVwidGhlbWVcIlxuICAgICAgW3hzbWFsbF09XCJ4c21hbGxcIiAvPlxuICB9XG4gIDxkaXYgY2xhc3M9XCJ7eyBzdGFja2VkU2lnbmFsKCkgPyAnY29sLTEyJyA6ICdjb2wtbWQnIH19IHBvc2l0aW9uLXJlbGF0aXZlXCI+XG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtKCkgfCB0b0FueVwiIGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGRhdGEtbm9mb3JtYXQ9XCJ0cnVlXCJcbiAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJuYW1lU3RyU2lnbmFsKClcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHBsYWNlaG9sZGVyKCkgfX1cIlxuICAgICAgICBbaWRdPVwiaWRTaWduYWwoKVwiXG4gICAgICAgIChrZXl1cCk9XCJmZXRjaE9wdGlvbnMoJGV2ZW50KVwiXG4gICAgICAgIFtjbGFzc109XCJpbnB1dENsYXNzU2lnbmFsKClcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRTaWduYWwoKVwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVNpZ25hbCgpXCJcbiAgICAgICAgI3RyaWdnZXI9XCJtYXRBdXRvY29tcGxldGVUcmlnZ2VyXCJcbiAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvXCJcbiAgICAgICAgI2lucCAvPlxuICAgICAgQGlmICghZGlzYWJsZWRTaWduYWwoKSkge1xuICAgICAgICA8aVxuICAgICAgICAgIGNsYXNzPVwiaW5wdXQtaWNvbiBmYSBmYS1zZWFyY2hcIlxuICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IHRyaWdnZXIub3BlblBhbmVsKClcIj48L2k+XG4gICAgICB9XG4gICAgICA8bWF0LWF1dG9jb21wbGV0ZVxuICAgICAgICAjYXV0bz1cIm1hdEF1dG9jb21wbGV0ZVwiXG4gICAgICAgIFtkaXNwbGF5V2l0aF09XCJkaXNwbGF5V2l0aFwiXG4gICAgICAgIGNsYXNzPVwib3B0aW9ucy13LWF1dG9cIlxuICAgICAgICAob3B0aW9uU2VsZWN0ZWQpPVwic2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgICAgICA8IS0tIDxuZy1jb250YWluZXIgKm5nSWY9XCJkdXBsaWNhdGVDaGVjazsgZWxzZSBlbHNlTm9EdWxpY2F0ZVRlbXBsYXRlXCI+XG4gICAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGZpbHRlcmVkT3B0aW9uc3xyZW1vdmVVc2VkT3B0aW9uc1JlYWN0aXZlOihmb3JtLnBhcmVudHx0b0FueSk6KGZvcm0udmFsdWUpOid2YWx1ZSc6bmFtZTt0cmFja0J5OmlTLnRyYWNrQnlWYWx1ZVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvblwiIFttYXRUb29sdGlwXT1cImVsZS5pbm5lclRleHRcIiBbbWF0VG9vbHRpcERpc2FibGVkXT1cImVsZS5zY3JvbGxXaWR0aDw9ZWxlLm9mZnNldFdpZHRoXCJcbiAgICAgICAgICAgICAgI2VsZT5cbiAgICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB8IGFwcFRyYW5zbGF0ZTogdHJhbnNsYXRlT3B0aW9ucyB8IGFzeW5jIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgI2Vsc2VOb0R1bGljYXRlVGVtcGxhdGU+XG4gICAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGZpbHRlcmVkT3B0aW9uczt0cmFja0J5OmlTLnRyYWNrQnlWYWx1ZVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvblwiIFttYXRUb29sdGlwXT1cImVsZS5pbm5lclRleHRcIiBbbWF0VG9vbHRpcERpc2FibGVkXT1cImVsZS5zY3JvbGxXaWR0aDw9ZWxlLm9mZnNldFdpZHRoXCJcbiAgICAgICAgICAgICAgI2VsZT5cbiAgICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB8IGFwcFRyYW5zbGF0ZTogdHJhbnNsYXRlT3B0aW9ucyB8IGFzeW5jIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+IC0tPlxuXG4gICAgICAgIEBpZiAoc2hvd0VtcHR5T3B0aW9uU2lnbmFsKCkpIHtcbiAgICAgICAgICA8bWF0LW9wdGlvbiBzZWxlY3RlZCBbdmFsdWVdPVwibnVsbFwiIGNsYXNzPVwiZW1wdHktb3B0aW9uXCI+XG4gICAgICAgICAgICB7eyBvcHRpb25zRnVuYyA/ICdUeXBlIHRvIHNlYXJjaCcgOiBwbGFjZWhvbGRlcigpIH19XG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICB9XG4gICAgICAgIEBmb3IgKGl0ZW0gb2YgZmlsdGVyZWRPcHRpb25zKCk7IHRyYWNrIGl0ZW0uX2lkKSB7XG4gICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cIml0ZW0udmFsdWVcIiAob25TZWxlY3Rpb25DaGFuZ2UpPVwic2VsZWN0ZWRPcHRpb24oaXRlbSlcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJvcHRpb25cIlxuICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJlbGUuaW5uZXJUZXh0XCJcbiAgICAgICAgICAgICAgW21hdFRvb2x0aXBTaG93RGVsYXldPVwiMTAwMFwiXG4gICAgICAgICAgICAgIFttYXRUb29sdGlwRGlzYWJsZWRdPVwiZWxlLnNjcm9sbFdpZHRoIDw9IGVsZS5vZmZzZXRXaWR0aFwiXG4gICAgICAgICAgICAgICNlbGU+XG4gICAgICAgICAgICAgIHt7IGl0ZW0ubGFiZWwgfCBhcHBUcmFuc2xhdGU6IHRyYW5zbGF0ZU9wdGlvbnMoKSB8IGFzeW5jIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIH1cbiAgICAgIDwvbWF0LWF1dG9jb21wbGV0ZT5cbiAgICAgIEBpZiAoZGlydHlTaWduYWwoKSAmJiBzaG93VmFsaWRhdGlvblNpZ25hbCgpICYmIHNob3dWYWxpZGF0aW9uSWNvblNpZ25hbCgpKSB7XG4gICAgICAgIDxkaXYgW25nQ2xhc3NdPVwieyB2YWxpZDogdmFsaWRTaWduYWwoKSB9XCIgY2xhc3M9XCJ2YWxpZGl0eS1pY29uXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1jaGVja1wiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgW25nQ2xhc3NdPVwieyBwZW5kaW5nOiBwZW5kaW5nU2lnbmFsKCkgfVwiIGNsYXNzPVwidmFsaWRpdHktaWNvblwiPlxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtc3Bpbm5lciBmYS1zcGluXCI+PC9pPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7IGludmFsaWQ6IGludmFsaWRTaWduYWwoKSB9XCIgY2xhc3M9XCJ2YWxpZGl0eS1pY29uXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS10aW1lc1wiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgICBAaWYgKGxvYWRpbmcpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCB0ZXh0LXByaW1hcnkgbWUtMSB2YWxpZGl0eS1pY29uXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1zcGlubmVyIGZhLXNwaW5cIj48L2k+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZm9ybT5cbiAgPC9kaXY+XG48L2Rpdj5cbkBpZiAoc2hvd1ZhbGlkYXRpb25Nc2dTaWduYWwoKSkge1xuICA8YXBwLXZhbGlkYXRpb24tbWVzc2FnZSBbbGFiZWxdPVwibGFiZWxTaWduYWwoKVwiIFtjb250cm9sXT1cImNvbnRyb2woKVwiIC8+XG59XG4iXX0=
|
|
@@ -90,7 +90,7 @@ export class AutocompleteComponent extends InputBasicComponent {
|
|
|
90
90
|
// }, 600);
|
|
91
91
|
}
|
|
92
92
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AutocompleteComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
93
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.0", type: AutocompleteComponent, isStandalone: true, selector: "app-autocomplete,autocomplete", inputs: { showRequiredTag: "showRequiredTag", validate: "validate", _options: ["options", "_options"] }, viewQueries: [{ propertyName: "autoCompleteRef", first: true, predicate: MatAutocomplete, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"row align-items-center\">\n <!-- {{options()|json}} -->\n @if (verbose()) {\n <div>disabledSignal: {{ disabledSignal() }}</div>\n <div>validSignal: {{ validSignal() }}</div>\n <div>invalidSignal: {{ invalidSignal() }}</div>\n <div>valueSignal: {{ valueSignal()|json }}</div>\n <div>hasValue: {{ hasValue() }}</div>\n <div>dirtySignal: {{ dirtySignal() }}</div>\n <div>touchedSignal: {{ touchedSignal() }}</div>\n <div>errorsSignal: {{ errorsSignaljson() }}</div>\n <div>pendingSignal: {{ pendingSignal() }}</div>\n <div>pristineSignal: {{ pristineSignal() }}</div>\n <div>controlRequiredSignal: {{ controlRequiredSignal() }}</div>\n <div>isRequiredSignal: {{ isRequiredSignal() }}</div>\n <div class=\"\">onControlObtainedList Length: {{ onControlObtainedList().length }}</div>\n }\n @if (computedShowLabel()) {\n <app-input-label\n [colored]=\"coloredSignal()\"\n [form]=\"form()|toAny\"\n [hint]=\"hint\"\n [id]=\"idSignal()\"\n [invalidCheckbox]=\"invalidCheckboxSignal()\"\n [isRequired]=\"isRequiredSignal()\"\n [label]=\"labelSignal()\"\n [lblCl]=\"lblCl\"\n [light]=\"light\"\n [mini]=\"miniSignal()\"\n [showRequiredTag]=\"showRequiredTagSignal()\"\n [showLabel]=\"showLabelSignal()\"\n [small]=\"smallSignal()\"\n [stacked]=\"stackedSignal()\"\n [theme]=\"theme\"\n [xsmall]=\"xsmall\" />\n }\n <div class=\"{{ stackedSignal() ? 'col-12' : 'col-md' }} position-relative\">\n <form [formGroup]=\"form()|toAny\" class=\"position-relative\">\n <input\n type=\"text\"\n data-noformat=\"true\"\n [formControlName]=\"nameStrSignal()\"\n placeholder=\"{{ placeholder() }}\"\n [id]=\"idSignal()\"\n (keyup)=\"fetchOptions($event)\"\n [class]=\"inputClassSignal()\"\n [required]=\"requiredSignal()\"\n [readonly]=\"readonlySignal()\"\n #trigger=\"matAutocompleteTrigger\"\n [matAutocomplete]=\"auto\"\n #inp />\n @if (!disabledSignal()) {\n <i
|
|
93
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.0", type: AutocompleteComponent, isStandalone: true, selector: "app-autocomplete,autocomplete", inputs: { showRequiredTag: "showRequiredTag", validate: "validate", _options: ["options", "_options"] }, viewQueries: [{ propertyName: "autoCompleteRef", first: true, predicate: MatAutocomplete, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"row align-items-center\">\n <!-- {{options()|json}} -->\n @if (verbose()) {\n <div>disabledSignal: {{ disabledSignal() }}</div>\n <div>validSignal: {{ validSignal() }}</div>\n <div>invalidSignal: {{ invalidSignal() }}</div>\n <div>valueSignal: {{ valueSignal() | json }}</div>\n <div>hasValue: {{ hasValue() }}</div>\n <div>dirtySignal: {{ dirtySignal() }}</div>\n <div>touchedSignal: {{ touchedSignal() }}</div>\n <div>errorsSignal: {{ errorsSignaljson() }}</div>\n <div>pendingSignal: {{ pendingSignal() }}</div>\n <div>pristineSignal: {{ pristineSignal() }}</div>\n <div>controlRequiredSignal: {{ controlRequiredSignal() }}</div>\n <div>isRequiredSignal: {{ isRequiredSignal() }}</div>\n <div class=\"\">onControlObtainedList Length: {{ onControlObtainedList().length }}</div>\n }\n @if (computedShowLabel()) {\n <app-input-label\n [colored]=\"coloredSignal()\"\n [form]=\"form() | toAny\"\n [hint]=\"hint\"\n [id]=\"idSignal()\"\n [invalidCheckbox]=\"invalidCheckboxSignal()\"\n [isRequired]=\"isRequiredSignal()\"\n [label]=\"labelSignal()\"\n [lblCl]=\"lblCl\"\n [light]=\"light\"\n [mini]=\"miniSignal()\"\n [showRequiredTag]=\"showRequiredTagSignal()\"\n [showLabel]=\"showLabelSignal()\"\n [small]=\"smallSignal()\"\n [stacked]=\"stackedSignal()\"\n [theme]=\"theme\"\n [xsmall]=\"xsmall\" />\n }\n <div class=\"{{ stackedSignal() ? 'col-12' : 'col-md' }} position-relative\">\n <form [formGroup]=\"form() | toAny\" class=\"position-relative\">\n <input\n type=\"text\"\n data-noformat=\"true\"\n [formControlName]=\"nameStrSignal()\"\n placeholder=\"{{ placeholder() }}\"\n [id]=\"idSignal()\"\n (keyup)=\"fetchOptions($event)\"\n [class]=\"inputClassSignal()\"\n [required]=\"requiredSignal()\"\n [readonly]=\"readonlySignal()\"\n #trigger=\"matAutocompleteTrigger\"\n [matAutocomplete]=\"auto\"\n #inp />\n @if (!disabledSignal()) {\n <i\n class=\"input-icon fa fa-search\"\n (click)=\"$event.stopPropagation(); trigger.openPanel()\"></i>\n }\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [displayWith]=\"displayWith\"\n class=\"options-w-auto\"\n (optionSelected)=\"selected($event)\">\n <!-- <ng-container *ngIf=\"duplicateCheck; else elseNoDulicateTemplate\">\n <mat-option\n *ngFor=\"let item of filteredOptions|removeUsedOptionsReactive:(form.parent|toAny):(form.value):'value':name;trackBy:iS.trackByValue\"\n [value]=\"item.value\">\n <div class=\"option\" [matTooltip]=\"ele.innerText\" [matTooltipDisabled]=\"ele.scrollWidth<=ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions | async }}\n </div>\n </mat-option>\n </ng-container>\n <ng-template #elseNoDulicateTemplate>\n <mat-option\n *ngFor=\"let item of filteredOptions;trackBy:iS.trackByValue\"\n [value]=\"item.value\">\n <div class=\"option\" [matTooltip]=\"ele.innerText\" [matTooltipDisabled]=\"ele.scrollWidth<=ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions | async }}\n </div>\n </mat-option>\n </ng-template> -->\n\n @if (showEmptyOptionSignal()) {\n <mat-option selected [value]=\"null\" class=\"empty-option\">\n {{ optionsFunc ? 'Type to search' : placeholder() }}\n </mat-option>\n }\n @for (item of filteredOptions(); track item._id) {\n <mat-option [value]=\"item.value\" (onSelectionChange)=\"selectedOption(item)\">\n <div\n class=\"option\"\n [matTooltip]=\"ele.innerText\"\n [matTooltipShowDelay]=\"1000\"\n [matTooltipDisabled]=\"ele.scrollWidth <= ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions() | async }}\n </div>\n </mat-option>\n }\n </mat-autocomplete>\n @if (dirtySignal() && showValidationSignal() && showValidationIconSignal()) {\n <div [ngClass]=\"{ valid: validSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-check\"></i>\n </div>\n <div [ngClass]=\"{ pending: pendingSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-spinner fa-spin\"></i>\n </div>\n <div [ngClass]=\"{ invalid: invalidSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-times\"></i>\n </div>\n }\n @if (loading) {\n <div class=\"d-flex text-primary me-1 validity-icon\">\n <i class=\"fa fa-spinner fa-spin\"></i>\n </div>\n }\n </form>\n </div>\n</div>\n@if (showValidationMsgSignal()) {\n <app-validation-message [label]=\"labelSignal()\" [control]=\"control()\" />\n}\n", styles: [".bordercheck{border:1px solid #4ef580!important;outline:0}.borderuncheck{border:1px solid red!important;outline:0}.light{font-weight:500}.validity-icon{display:none;position:absolute;top:0;left:unset;right:20px;height:100%;align-items:center}.select .validity-icon{right:30px}.valid{display:flex!important;color:#4ef580}.pending{display:flex!important;color:#ff4500}.invalid{display:flex!important;color:red}.inputform{height:41px}.invalid-label{color:red!important}input[type=checkbox]:checked{position:relative}.showValidationIcon .form-control:not(input[type=checkbox].form-control),.showValidationIcon select.form-control:not(input[type=checkbox].form-control){padding:10px 36px 10px 12px}.password-icons{position:absolute;right:20px;top:17%}[disabled]{cursor:default}.link{cursor:pointer}.option{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n", "i.input-icon{position:absolute;top:15px;right:7px;opacity:.4;font-size:10px}.option{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"], dependencies: [{ kind: "component", type: InputLabelComponent, selector: "app-input-label", inputs: ["colored", "form", "hint", "inlineHint", "id", "invalidCheckbox", "isRequired", "label", "labelLink", "lblCl", "light", "mini", "showLabel", "showRequiredTag", "small", "stacked", "theme", "xsmall"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "pipe", type: JsonPipe, name: "json" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i2.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i3.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i2.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: MatOptionModule }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ValidationMessageComponent, selector: "app-validation-message", inputs: ["debug", "label", "hideOverflow", "minLength", "maxLength", "ignoreDirtiness", "customMessage", "control", "input"], outputs: ["labelChange"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: ToAnyPipe, name: "toAny" }, { kind: "pipe", type: SDKTranslatePipe, name: "appTranslate" }] }); }
|
|
94
94
|
}
|
|
95
95
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AutocompleteComponent, decorators: [{
|
|
96
96
|
type: Component,
|
|
@@ -110,7 +110,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
110
110
|
ToAnyPipe,
|
|
111
111
|
SDKTranslatePipe,
|
|
112
112
|
InputClassPipe,
|
|
113
|
-
], template: "<div class=\"row align-items-center\">\n <!-- {{options()|json}} -->\n @if (verbose()) {\n <div>disabledSignal: {{ disabledSignal() }}</div>\n <div>validSignal: {{ validSignal() }}</div>\n <div>invalidSignal: {{ invalidSignal() }}</div>\n <div>valueSignal: {{ valueSignal()|json }}</div>\n <div>hasValue: {{ hasValue() }}</div>\n <div>dirtySignal: {{ dirtySignal() }}</div>\n <div>touchedSignal: {{ touchedSignal() }}</div>\n <div>errorsSignal: {{ errorsSignaljson() }}</div>\n <div>pendingSignal: {{ pendingSignal() }}</div>\n <div>pristineSignal: {{ pristineSignal() }}</div>\n <div>controlRequiredSignal: {{ controlRequiredSignal() }}</div>\n <div>isRequiredSignal: {{ isRequiredSignal() }}</div>\n <div class=\"\">onControlObtainedList Length: {{ onControlObtainedList().length }}</div>\n }\n @if (computedShowLabel()) {\n <app-input-label\n [colored]=\"coloredSignal()\"\n [form]=\"form()|toAny\"\n [hint]=\"hint\"\n [id]=\"idSignal()\"\n [invalidCheckbox]=\"invalidCheckboxSignal()\"\n [isRequired]=\"isRequiredSignal()\"\n [label]=\"labelSignal()\"\n [lblCl]=\"lblCl\"\n [light]=\"light\"\n [mini]=\"miniSignal()\"\n [showRequiredTag]=\"showRequiredTagSignal()\"\n [showLabel]=\"showLabelSignal()\"\n [small]=\"smallSignal()\"\n [stacked]=\"stackedSignal()\"\n [theme]=\"theme\"\n [xsmall]=\"xsmall\" />\n }\n <div class=\"{{ stackedSignal() ? 'col-12' : 'col-md' }} position-relative\">\n <form [formGroup]=\"form()|toAny\" class=\"position-relative\">\n <input\n type=\"text\"\n data-noformat=\"true\"\n [formControlName]=\"nameStrSignal()\"\n placeholder=\"{{ placeholder() }}\"\n [id]=\"idSignal()\"\n (keyup)=\"fetchOptions($event)\"\n [class]=\"inputClassSignal()\"\n [required]=\"requiredSignal()\"\n [readonly]=\"readonlySignal()\"\n #trigger=\"matAutocompleteTrigger\"\n [matAutocomplete]=\"auto\"\n #inp />\n @if (!disabledSignal()) {\n <i
|
|
113
|
+
], template: "<div class=\"row align-items-center\">\n <!-- {{options()|json}} -->\n @if (verbose()) {\n <div>disabledSignal: {{ disabledSignal() }}</div>\n <div>validSignal: {{ validSignal() }}</div>\n <div>invalidSignal: {{ invalidSignal() }}</div>\n <div>valueSignal: {{ valueSignal() | json }}</div>\n <div>hasValue: {{ hasValue() }}</div>\n <div>dirtySignal: {{ dirtySignal() }}</div>\n <div>touchedSignal: {{ touchedSignal() }}</div>\n <div>errorsSignal: {{ errorsSignaljson() }}</div>\n <div>pendingSignal: {{ pendingSignal() }}</div>\n <div>pristineSignal: {{ pristineSignal() }}</div>\n <div>controlRequiredSignal: {{ controlRequiredSignal() }}</div>\n <div>isRequiredSignal: {{ isRequiredSignal() }}</div>\n <div class=\"\">onControlObtainedList Length: {{ onControlObtainedList().length }}</div>\n }\n @if (computedShowLabel()) {\n <app-input-label\n [colored]=\"coloredSignal()\"\n [form]=\"form() | toAny\"\n [hint]=\"hint\"\n [id]=\"idSignal()\"\n [invalidCheckbox]=\"invalidCheckboxSignal()\"\n [isRequired]=\"isRequiredSignal()\"\n [label]=\"labelSignal()\"\n [lblCl]=\"lblCl\"\n [light]=\"light\"\n [mini]=\"miniSignal()\"\n [showRequiredTag]=\"showRequiredTagSignal()\"\n [showLabel]=\"showLabelSignal()\"\n [small]=\"smallSignal()\"\n [stacked]=\"stackedSignal()\"\n [theme]=\"theme\"\n [xsmall]=\"xsmall\" />\n }\n <div class=\"{{ stackedSignal() ? 'col-12' : 'col-md' }} position-relative\">\n <form [formGroup]=\"form() | toAny\" class=\"position-relative\">\n <input\n type=\"text\"\n data-noformat=\"true\"\n [formControlName]=\"nameStrSignal()\"\n placeholder=\"{{ placeholder() }}\"\n [id]=\"idSignal()\"\n (keyup)=\"fetchOptions($event)\"\n [class]=\"inputClassSignal()\"\n [required]=\"requiredSignal()\"\n [readonly]=\"readonlySignal()\"\n #trigger=\"matAutocompleteTrigger\"\n [matAutocomplete]=\"auto\"\n #inp />\n @if (!disabledSignal()) {\n <i\n class=\"input-icon fa fa-search\"\n (click)=\"$event.stopPropagation(); trigger.openPanel()\"></i>\n }\n <mat-autocomplete\n #auto=\"matAutocomplete\"\n [displayWith]=\"displayWith\"\n class=\"options-w-auto\"\n (optionSelected)=\"selected($event)\">\n <!-- <ng-container *ngIf=\"duplicateCheck; else elseNoDulicateTemplate\">\n <mat-option\n *ngFor=\"let item of filteredOptions|removeUsedOptionsReactive:(form.parent|toAny):(form.value):'value':name;trackBy:iS.trackByValue\"\n [value]=\"item.value\">\n <div class=\"option\" [matTooltip]=\"ele.innerText\" [matTooltipDisabled]=\"ele.scrollWidth<=ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions | async }}\n </div>\n </mat-option>\n </ng-container>\n <ng-template #elseNoDulicateTemplate>\n <mat-option\n *ngFor=\"let item of filteredOptions;trackBy:iS.trackByValue\"\n [value]=\"item.value\">\n <div class=\"option\" [matTooltip]=\"ele.innerText\" [matTooltipDisabled]=\"ele.scrollWidth<=ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions | async }}\n </div>\n </mat-option>\n </ng-template> -->\n\n @if (showEmptyOptionSignal()) {\n <mat-option selected [value]=\"null\" class=\"empty-option\">\n {{ optionsFunc ? 'Type to search' : placeholder() }}\n </mat-option>\n }\n @for (item of filteredOptions(); track item._id) {\n <mat-option [value]=\"item.value\" (onSelectionChange)=\"selectedOption(item)\">\n <div\n class=\"option\"\n [matTooltip]=\"ele.innerText\"\n [matTooltipShowDelay]=\"1000\"\n [matTooltipDisabled]=\"ele.scrollWidth <= ele.offsetWidth\"\n #ele>\n {{ item.label | appTranslate: translateOptions() | async }}\n </div>\n </mat-option>\n }\n </mat-autocomplete>\n @if (dirtySignal() && showValidationSignal() && showValidationIconSignal()) {\n <div [ngClass]=\"{ valid: validSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-check\"></i>\n </div>\n <div [ngClass]=\"{ pending: pendingSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-spinner fa-spin\"></i>\n </div>\n <div [ngClass]=\"{ invalid: invalidSignal() }\" class=\"validity-icon\">\n <i class=\"fa fa-times\"></i>\n </div>\n }\n @if (loading) {\n <div class=\"d-flex text-primary me-1 validity-icon\">\n <i class=\"fa fa-spinner fa-spin\"></i>\n </div>\n }\n </form>\n </div>\n</div>\n@if (showValidationMsgSignal()) {\n <app-validation-message [label]=\"labelSignal()\" [control]=\"control()\" />\n}\n", styles: [".bordercheck{border:1px solid #4ef580!important;outline:0}.borderuncheck{border:1px solid red!important;outline:0}.light{font-weight:500}.validity-icon{display:none;position:absolute;top:0;left:unset;right:20px;height:100%;align-items:center}.select .validity-icon{right:30px}.valid{display:flex!important;color:#4ef580}.pending{display:flex!important;color:#ff4500}.invalid{display:flex!important;color:red}.inputform{height:41px}.invalid-label{color:red!important}input[type=checkbox]:checked{position:relative}.showValidationIcon .form-control:not(input[type=checkbox].form-control),.showValidationIcon select.form-control:not(input[type=checkbox].form-control){padding:10px 36px 10px 12px}.password-icons{position:absolute;right:20px;top:17%}[disabled]{cursor:default}.link{cursor:pointer}.option{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n", "i.input-icon{position:absolute;top:15px;right:7px;opacity:.4;font-size:10px}.option{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n"] }]
|
|
114
114
|
}], propDecorators: { showRequiredTag: [{
|
|
115
115
|
type: Input
|
|
116
116
|
}], validate: [{
|
|
@@ -122,4 +122,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
122
122
|
type: ViewChild,
|
|
123
123
|
args: [MatAutocomplete]
|
|
124
124
|
}] } });
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V0cy1mZS1uZy1zZGsvc3JjL2xpYi9TaGFyZWQvY29tcG9uZW50cy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V0cy1mZS1uZy1zZGsvc3JjL2xpYi9TaGFyZWQvY29tcG9uZW50cy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBbUIsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkYsT0FBTyxFQUNMLGVBQWUsRUFFZixxQkFBcUIsR0FDdEIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQVMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFhLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsbUJBQW1CLEVBQVcsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3RH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RixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDaEYsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV6RCxxQkFBcUI7UUFDckIsOENBQThDO1FBQzlDLFdBQVc7SUFDYixDQUFDOzhHQXpFVSxxQkFBcUI7a0dBQXJCLHFCQUFxQixtUEFzQnJCLGVBQWUsdUVDakU1QiwwdkpBeUdBLDJpQ0Q5RUksbUJBQW1CLDRRQUNuQixXQUFXLG8zQkFDWCxRQUFRLDRDQUNSLG1CQUFtQiwrVUFDbkIscUJBQXFCLHcxQkFFckIsZUFBZSw4QkFDZixnQkFBZ0IsNlRBQ2hCLE9BQU8sb0ZBQ1AsMEJBQTBCLHNOQUMxQixTQUFTLHlDQUNULFNBQVMseUNBQ1QsZ0JBQWdCOzsyRkFJUCxxQkFBcUI7a0JBdkJqQyxTQUFTOytCQUNFLCtCQUErQixjQUc3QixJQUFJLFdBQ1A7d0JBQ1AsSUFBSTt3QkFDSixtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsUUFBUTt3QkFDUixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIsS0FBSzt3QkFDTCxlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsT0FBTzt3QkFDUCwwQkFBMEI7d0JBQzFCLFNBQVM7d0JBQ1QsU0FBUzt3QkFDVCxnQkFBZ0I7d0JBQ2hCLGNBQWM7cUJBQ2Y7OEJBY1EsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUV5QixRQUFRO3NCQUF0QyxLQUFLO3VCQUFDLFNBQVM7Z0JBT1ksZUFBZTtzQkFBMUMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NoaWxkLCBjb21wdXRlZCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBNYXRBdXRvY29tcGxldGUsXG4gIE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQsXG4gIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IG1lcmdlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IElucHV0QmFzaWNDb21wb25lbnQsIElPcHRpb24gfSBmcm9tICcuLi9pbnB1dC9pbnB1dC1iYXNpYy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0b2NvbXBsZXRlU2VydmljZSB9IGZyb20gJy4vYXV0b2NvbXBsZXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgSW5wdXRDbGFzc1BpcGUgfSBmcm9tICcuLi9pbnB1dC9pbnB1dHMtcGlwZXMucGlwZSc7XG5pbXBvcnQgeyBUb0FueVBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy91dGlsaXR5LnBpcGUnO1xuaW1wb3J0IHsgU0RLVHJhbnNsYXRlUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL3RyYW5zbGF0ZS5waXBlJztcbmltcG9ydCB7IFZhbGlkYXRpb25NZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vaW5wdXQvdmFsaWRhdGlvbi1tZXNzYWdlL3ZhbGlkYXRpb24tbWVzc2FnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHsgTWF0T3B0aW9uLCBNYXRPcHRpb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IElucHV0TGFiZWxDb21wb25lbnQgfSBmcm9tICcuLi9pbnB1dC9pbnB1dC1sYWJlbC9pbnB1dC1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmdJZiwgTmdGb3IsIE5nQ2xhc3MsIEFzeW5jUGlwZSwgSnNvblBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYXV0b2NvbXBsZXRlLGF1dG9jb21wbGV0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi4vaW5wdXQvaW5wdXQuY29tcG9uZW50LnNjc3MnLCAnLi9hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgSW5wdXRMYWJlbENvbXBvbmVudCxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBKc29uUGlwZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcbiAgICBOZ0ZvcixcbiAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBOZ0NsYXNzLFxuICAgIFZhbGlkYXRpb25NZXNzYWdlQ29tcG9uZW50LFxuICAgIEFzeW5jUGlwZSxcbiAgICBUb0FueVBpcGUsXG4gICAgU0RLVHJhbnNsYXRlUGlwZSxcbiAgICBJbnB1dENsYXNzUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlQ29tcG9uZW50PFxuICBURm9ybUdyb3VwIGV4dGVuZHMge1xuICAgIFtLIGluIGtleW9mIFRGb3JtR3JvdXBdOiBBYnN0cmFjdENvbnRyb2w8YW55LCBhbnk+O1xuICB9ID0gYW55LFxuICBUQ29udHJvbCA9IGFueSxcbiAgVE9wdGlvbiA9IGFueSxcbj4gZXh0ZW5kcyBJbnB1dEJhc2ljQ29tcG9uZW50PFRGb3JtR3JvdXAsIFRDb250cm9sLCBUT3B0aW9uPiB7XG4gIHJlYWRvbmx5IGNPcHRpb25zID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5hdXRvUy5ub3JtYWxpemVPcHRpb25zKHRoaXMub3B0aW9ucygpKSk7XG4gIHJlYWRvbmx5IGZpbHRlcmVkT3B0aW9ucyA9IGNvbXB1dGVkPElPcHRpb25bXT4oKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLmF1dG9TLmZpbHRlck9wdGlvbnModGhpcy52YWx1ZVNpZ25hbCgpLCB0aGlzLmNPcHRpb25zKCkpO1xuICB9KTtcblxuICBASW5wdXQoKSBzaG93UmVxdWlyZWRUYWc6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSB2YWxpZGF0ZSA9IHRydWU7XG5cbiAgQElucHV0KCdvcHRpb25zJykgb3ZlcnJpZGUgc2V0IF9vcHRpb25zKHY6IFRPcHRpb25bXSB8IG51bGwpIHtcbiAgICAvLyBkZWJ1Z2dlcjtcbiAgICBzdXBlci5fb3B0aW9ucyA9IHY7XG4gICAgaWYgKHRoaXMuYXV0b0NvbXBsZXRlUmVmICYmIHRoaXMuY29udHJvbCgpPy5nZXRSYXdWYWx1ZSgpKVxuICAgICAgdGhpcy5jb250cm9sKCk/LnNldFZhbHVlKHRoaXMuY29udHJvbCgpPy5nZXRSYXdWYWx1ZSgpLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gIH1cblxuICBAVmlld0NoaWxkKE1hdEF1dG9jb21wbGV0ZSkgYXV0b0NvbXBsZXRlUmVmOiBNYXRBdXRvY29tcGxldGU7XG5cbiAgcHJvdGVjdGVkIHZhbHVlQ2hhbmdlZCA9IG5ldyBSZXBsYXlTdWJqZWN0PHN0cmluZz4oKTtcblxuICBvdmVycmlkZSBsb2FkaW5nOiBib29sZWFuO1xuICBwdWJsaWMgYXV0b1MgPSBpbmplY3QoQXV0b2NvbXBsZXRlU2VydmljZSk7XG5cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB0aGlzLmFkZE9uQ29udHJvbE9idGFpbmVkSG9vaygnaW5jbHVkZXNPcHRpb24nLCAoY29udHJvbCkgPT4ge1xuICAgICAgaWYgKCFjb250cm9sPy5oYXNWYWxpZGF0b3IodGhpcy5pbmNsdWRlc09wdGlvbikpIGNvbnRyb2w/LmFkZFZhbGlkYXRvcnModGhpcy5pbmNsdWRlc09wdGlvbik7XG4gICAgICBlbHNlIGRlYnVnZ2VyO1xuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMub3B0aW9uc0Z1bmMpXG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlZFxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YXAoKCkgPT4gKHRoaXMubG9hZGluZyA9IHRydWUpKSxcbiAgICAgICAgICBkZWJvdW5jZVRpbWUoNjAwKSxcbiAgICAgICAgICBmaWx0ZXIoKHYpID0+IHYgIT0gbnVsbCAmJiB2ICE9ICcnKSxcbiAgICAgICAgICBzd2l0Y2hNYXAoKHYpID0+IHRoaXMub3B0aW9uc0Z1bmModikpLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKHIpID0+IHtcbiAgICAgICAgICAvLyBkZWJ1Z2dlclxuICAgICAgICAgIHRoaXMuX29wdGlvbnMgPSByO1xuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIC8vIGRlYnVnZ2VyO1xuICAgIGlmICh0aGlzLmNvbnRyb2woKT8uaGFzVmFsaWRhdG9yKHRoaXMuaW5jbHVkZXNPcHRpb24pKVxuICAgICAgdGhpcy5jb250cm9sKCk/LnJlbW92ZVZhbGlkYXRvcnModGhpcy5pbmNsdWRlc09wdGlvbik7XG4gIH1cblxuICBmZXRjaE9wdGlvbnMoJGV2ZW50OiBFdmVudCkge1xuICAgIGlmICh0aGlzLm9wdGlvbnNGdW5jKSB7XG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgICAgdGhpcy52YWx1ZUNoYW5nZWQubmV4dCh0aGlzLmNvbnRyb2woKT8uZ2V0UmF3VmFsdWUoKSk7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0ZWQoJGV2ZW50OiBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50KSB7XG4gICAgLy8gZGVidWdnZXI7XG4gICAgdGhpcy5tU2VsZWN0ZWRPcHRpb25MYWJlbC5lbWl0KHRoaXMuZGlzcGxheVdpdGgodGhpcy5jb250cm9sKCk/LmdldFJhd1ZhbHVlKCkpKTtcbiAgICB0aGlzLmNvbnRyb2woKS5mb3JtYXR0ZWRWYWx1ZSA9IHRoaXMuZGlzcGxheVdpdGgodGhpcy5jb250cm9sKCk/LmdldFJhd1ZhbHVlKCkpO1xuICAgIHN1cGVyLmNoYW5nZSh7IHRhcmdldDogeyB2YWx1ZTogJGV2ZW50Lm9wdGlvbi52YWx1ZSB9IH0pO1xuXG4gICAgLy8gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgLy8gICB0aGlzLmZpbHRlcmVkT3B0aW9ucy5zZXQodGhpcy5vcHRpb25zKCkpO1xuICAgIC8vIH0sIDYwMCk7XG4gIH1cblxuICBkaXNwbGF5V2l0aCA9ICh2YWw6IGFueSkgPT5cbiAgICB2YWwgaW5zdGFuY2VvZiBNYXRPcHRpb25cbiAgICAgID8gdGhpcy5kaXNwbGF5V2l0aCh2YWwudmFsdWUpXG4gICAgICA6IHRoaXMuZG9lc09wdGlvbkV4aXN0KHZhbCk/LmxhYmVsIHx8IHZhbDtcblxuICBpbmNsdWRlc09wdGlvbiA9IChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHtcbiAgICBjb25zdCB2YWwgPSBjb250cm9sPy52YWx1ZTtcbiAgICAvLyBkZWJ1Z2dlcjtcbiAgICBpZiAoIXZhbCkgcmV0dXJuIG51bGw7XG4gICAgaWYgKCF0aGlzLm9wdGlvbnMoKSB8fCB0aGlzLm9wdGlvbnMoKS5sZW5ndGggPT09IDApIHJldHVybiBudWxsO1xuICAgIC8vIGRlYnVnZ2VyXG4gICAgaWYgKHRoaXMuZG9lc09wdGlvbkV4aXN0KHZhbCkpIHJldHVybiBudWxsO1xuICAgIGVsc2UgcmV0dXJuIHRoaXMuYXV0b1MuaW52YWxpZFNlbGVjdGlvbkVycm9yO1xuICB9O1xufVxuIiwiPGRpdiBjbGFzcz1cInJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgPCEtLSB7e29wdGlvbnMoKXxqc29ufX0gLS0+XG4gIEBpZiAodmVyYm9zZSgpKSB7XG4gICAgPGRpdj5kaXNhYmxlZFNpZ25hbDoge3sgZGlzYWJsZWRTaWduYWwoKSB9fTwvZGl2PlxuICAgIDxkaXY+dmFsaWRTaWduYWw6IHt7IHZhbGlkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PmludmFsaWRTaWduYWw6IHt7IGludmFsaWRTaWduYWwoKSB9fTwvZGl2PlxuICAgIDxkaXY+dmFsdWVTaWduYWw6IHt7IHZhbHVlU2lnbmFsKCl8anNvbiB9fTwvZGl2PlxuICAgIDxkaXY+aGFzVmFsdWU6IHt7IGhhc1ZhbHVlKCkgfX08L2Rpdj5cbiAgICA8ZGl2PmRpcnR5U2lnbmFsOiB7eyBkaXJ0eVNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj50b3VjaGVkU2lnbmFsOiB7eyB0b3VjaGVkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PmVycm9yc1NpZ25hbDoge3sgZXJyb3JzU2lnbmFsanNvbigpIH19PC9kaXY+XG4gICAgPGRpdj5wZW5kaW5nU2lnbmFsOiB7eyBwZW5kaW5nU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PnByaXN0aW5lU2lnbmFsOiB7eyBwcmlzdGluZVNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj5jb250cm9sUmVxdWlyZWRTaWduYWw6IHt7IGNvbnRyb2xSZXF1aXJlZFNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj5pc1JlcXVpcmVkU2lnbmFsOiB7eyBpc1JlcXVpcmVkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiXCI+b25Db250cm9sT2J0YWluZWRMaXN0IExlbmd0aDoge3sgb25Db250cm9sT2J0YWluZWRMaXN0KCkubGVuZ3RoIH19PC9kaXY+XG4gIH1cbiAgQGlmIChjb21wdXRlZFNob3dMYWJlbCgpKSB7XG4gICAgPGFwcC1pbnB1dC1sYWJlbFxuICAgICAgW2NvbG9yZWRdPVwiY29sb3JlZFNpZ25hbCgpXCJcbiAgICAgIFtmb3JtXT1cImZvcm0oKXx0b0FueVwiXG4gICAgICBbaGludF09XCJoaW50XCJcbiAgICAgIFtpZF09XCJpZFNpZ25hbCgpXCJcbiAgICAgIFtpbnZhbGlkQ2hlY2tib3hdPVwiaW52YWxpZENoZWNrYm94U2lnbmFsKClcIlxuICAgICAgW2lzUmVxdWlyZWRdPVwiaXNSZXF1aXJlZFNpZ25hbCgpXCJcbiAgICAgIFtsYWJlbF09XCJsYWJlbFNpZ25hbCgpXCJcbiAgICAgIFtsYmxDbF09XCJsYmxDbFwiXG4gICAgICBbbGlnaHRdPVwibGlnaHRcIlxuICAgICAgW21pbmldPVwibWluaVNpZ25hbCgpXCJcbiAgICAgIFtzaG93UmVxdWlyZWRUYWddPVwic2hvd1JlcXVpcmVkVGFnU2lnbmFsKClcIlxuICAgICAgW3Nob3dMYWJlbF09XCJzaG93TGFiZWxTaWduYWwoKVwiXG4gICAgICBbc21hbGxdPVwic21hbGxTaWduYWwoKVwiXG4gICAgICBbc3RhY2tlZF09XCJzdGFja2VkU2lnbmFsKClcIlxuICAgICAgW3RoZW1lXT1cInRoZW1lXCJcbiAgICAgIFt4c21hbGxdPVwieHNtYWxsXCIgLz5cbiAgfVxuICA8ZGl2IGNsYXNzPVwie3sgc3RhY2tlZFNpZ25hbCgpID8gJ2NvbC0xMicgOiAnY29sLW1kJyB9fSBwb3NpdGlvbi1yZWxhdGl2ZVwiPlxuICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybSgpfHRvQW55XCIgY2xhc3M9XCJwb3NpdGlvbi1yZWxhdGl2ZVwiPlxuICAgICAgPGlucHV0XG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgZGF0YS1ub2Zvcm1hdD1cInRydWVcIlxuICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIm5hbWVTdHJTaWduYWwoKVwiXG4gICAgICAgIHBsYWNlaG9sZGVyPVwie3sgcGxhY2Vob2xkZXIoKSB9fVwiXG4gICAgICAgIFtpZF09XCJpZFNpZ25hbCgpXCJcbiAgICAgICAgKGtleXVwKT1cImZldGNoT3B0aW9ucygkZXZlbnQpXCJcbiAgICAgICAgW2NsYXNzXT1cImlucHV0Q2xhc3NTaWduYWwoKVwiXG4gICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFNpZ25hbCgpXCJcbiAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5U2lnbmFsKClcIlxuICAgICAgICAjdHJpZ2dlcj1cIm1hdEF1dG9jb21wbGV0ZVRyaWdnZXJcIlxuICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxuICAgICAgICAjaW5wIC8+XG4gICAgICBAaWYgKCFkaXNhYmxlZFNpZ25hbCgpKSB7XG4gICAgICAgIDxpIGNsYXNzPVwiaW5wdXQtaWNvbiBmYSBmYS1zZWFyY2hcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyB0cmlnZ2VyLm9wZW5QYW5lbCgpXCI+PC9pPlxuICAgICAgfVxuICAgICAgPG1hdC1hdXRvY29tcGxldGUgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIiBbZGlzcGxheVdpdGhdPVwiZGlzcGxheVdpdGhcIiBjbGFzcz1cIm9wdGlvbnMtdy1hdXRvXCIgKG9wdGlvblNlbGVjdGVkKT1cInNlbGVjdGVkKCRldmVudClcIj5cbiAgICAgICAgPCEtLSA8bmctY29udGFpbmVyICpuZ0lmPVwiZHVwbGljYXRlQ2hlY2s7IGVsc2UgZWxzZU5vRHVsaWNhdGVUZW1wbGF0ZVwiPlxuICAgICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWx0ZXJlZE9wdGlvbnN8cmVtb3ZlVXNlZE9wdGlvbnNSZWFjdGl2ZTooZm9ybS5wYXJlbnR8dG9BbnkpOihmb3JtLnZhbHVlKTondmFsdWUnOm5hbWU7dHJhY2tCeTppUy50cmFja0J5VmFsdWVcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvcHRpb25cIiBbbWF0VG9vbHRpcF09XCJlbGUuaW5uZXJUZXh0XCIgW21hdFRvb2x0aXBEaXNhYmxlZF09XCJlbGUuc2Nyb2xsV2lkdGg8PWVsZS5vZmZzZXRXaWR0aFwiXG4gICAgICAgICAgICAgICNlbGU+XG4gICAgICAgICAgICAgIHt7IGl0ZW0ubGFiZWwgfCBhcHBUcmFuc2xhdGU6IHRyYW5zbGF0ZU9wdGlvbnMgfCBhc3luYyB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNlbHNlTm9EdWxpY2F0ZVRlbXBsYXRlPlxuICAgICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWx0ZXJlZE9wdGlvbnM7dHJhY2tCeTppUy50cmFja0J5VmFsdWVcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvcHRpb25cIiBbbWF0VG9vbHRpcF09XCJlbGUuaW5uZXJUZXh0XCIgW21hdFRvb2x0aXBEaXNhYmxlZF09XCJlbGUuc2Nyb2xsV2lkdGg8PWVsZS5vZmZzZXRXaWR0aFwiXG4gICAgICAgICAgICAgICNlbGU+XG4gICAgICAgICAgICAgIHt7IGl0ZW0ubGFiZWwgfCBhcHBUcmFuc2xhdGU6IHRyYW5zbGF0ZU9wdGlvbnMgfCBhc3luYyB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8L25nLXRlbXBsYXRlPiAtLT5cblxuICAgICAgICBAaWYgKHNob3dFbXB0eU9wdGlvblNpZ25hbCgpKSB7XG4gICAgICAgICAgPG1hdC1vcHRpb24gc2VsZWN0ZWQgW3ZhbHVlXT1cIm51bGxcIiBjbGFzcz1cImVtcHR5LW9wdGlvblwiPlxuICAgICAgICAgICAge3sgb3B0aW9uc0Z1bmMgPyAnVHlwZSB0byBzZWFyY2gnIDogcGxhY2Vob2xkZXIoKSB9fVxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgfVxuICAgICAgICBAZm9yIChpdGVtIG9mIGZpbHRlcmVkT3B0aW9ucygpOyB0cmFjayBpUy50cmFja0J5VmFsdWUpIHtcbiAgICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiIChvblNlbGVjdGlvbkNoYW5nZSk9XCJzZWxlY3RlZE9wdGlvbihpdGVtKVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvblwiIFttYXRUb29sdGlwXT1cImVsZS5pbm5lclRleHRcIiBbbWF0VG9vbHRpcFNob3dEZWxheV09XCIxMDAwXCIgW21hdFRvb2x0aXBEaXNhYmxlZF09XCJlbGUuc2Nyb2xsV2lkdGggPD0gZWxlLm9mZnNldFdpZHRoXCIgI2VsZT5cbiAgICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB8IGFwcFRyYW5zbGF0ZTogdHJhbnNsYXRlT3B0aW9ucygpIHwgYXN5bmMgfX0gXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIH1cbiAgICAgIDwvbWF0LWF1dG9jb21wbGV0ZT5cbiAgICAgIEBpZiAoZGlydHlTaWduYWwoKSAmJiBzaG93VmFsaWRhdGlvblNpZ25hbCgpICYmIHNob3dWYWxpZGF0aW9uSWNvblNpZ25hbCgpKSB7XG4gICAgICAgIDxkaXYgW25nQ2xhc3NdPVwieyB2YWxpZDogdmFsaWRTaWduYWwoKSB9XCIgY2xhc3M9XCJ2YWxpZGl0eS1pY29uXCI+PGkgY2xhc3M9XCJmYSBmYS1jaGVja1wiPjwvaT48L2Rpdj5cbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7IHBlbmRpbmc6IHBlbmRpbmdTaWduYWwoKSB9XCIgY2xhc3M9XCJ2YWxpZGl0eS1pY29uXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1zcGlubmVyIGZhLXNwaW5cIj48L2k+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cInsgaW52YWxpZDogaW52YWxpZFNpZ25hbCgpIH1cIiBjbGFzcz1cInZhbGlkaXR5LWljb25cIj48aSBjbGFzcz1cImZhIGZhLXRpbWVzXCI+PC9pPjwvZGl2PlxuICAgICAgfVxuICAgICAgQGlmIChsb2FkaW5nKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggdGV4dC1wcmltYXJ5IG1lLTEgdmFsaWRpdHktaWNvblwiPjxpIGNsYXNzPVwiZmEgZmEtc3Bpbm5lciBmYS1zcGluXCI+PC9pPjwvZGl2PlxuICAgICAgfVxuICAgIDwvZm9ybT5cbiAgPC9kaXY+XG48L2Rpdj5cbkBpZiAoc2hvd1ZhbGlkYXRpb25Nc2dTaWduYWwoKSkge1xuICA8YXBwLXZhbGlkYXRpb24tbWVzc2FnZSBbbGFiZWxdPVwibGFiZWxTaWduYWwoKVwiIFtjb250cm9sXT1cImNvbnRyb2woKVwiIC8+XG59XG4iXX0=
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V0cy1mZS1uZy1zZGsvc3JjL2xpYi9TaGFyZWQvY29tcG9uZW50cy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V0cy1mZS1uZy1zZGsvc3JjL2xpYi9TaGFyZWQvY29tcG9uZW50cy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBbUIsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkYsT0FBTyxFQUNMLGVBQWUsRUFFZixxQkFBcUIsR0FDdEIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQVMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFhLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsbUJBQW1CLEVBQVcsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3RH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RixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDaEYsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUV6RCxxQkFBcUI7UUFDckIsOENBQThDO1FBQzlDLFdBQVc7SUFDYixDQUFDOzhHQXpFVSxxQkFBcUI7a0dBQXJCLHFCQUFxQixtUEFzQnJCLGVBQWUsdUVDakU1QiwrN0pBMEhBLDJpQ0QvRkksbUJBQW1CLDRRQUNuQixXQUFXLG8zQkFDWCxRQUFRLDRDQUNSLG1CQUFtQiwrVUFDbkIscUJBQXFCLHcxQkFFckIsZUFBZSw4QkFDZixnQkFBZ0IsNlRBQ2hCLE9BQU8sb0ZBQ1AsMEJBQTBCLHNOQUMxQixTQUFTLHlDQUNULFNBQVMseUNBQ1QsZ0JBQWdCOzsyRkFJUCxxQkFBcUI7a0JBdkJqQyxTQUFTOytCQUNFLCtCQUErQixjQUc3QixJQUFJLFdBQ1A7d0JBQ1AsSUFBSTt3QkFDSixtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsUUFBUTt3QkFDUixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIsS0FBSzt3QkFDTCxlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsT0FBTzt3QkFDUCwwQkFBMEI7d0JBQzFCLFNBQVM7d0JBQ1QsU0FBUzt3QkFDVCxnQkFBZ0I7d0JBQ2hCLGNBQWM7cUJBQ2Y7OEJBY1EsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUV5QixRQUFRO3NCQUF0QyxLQUFLO3VCQUFDLFNBQVM7Z0JBT1ksZUFBZTtzQkFBMUMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NoaWxkLCBjb21wdXRlZCwgaW5qZWN0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBNYXRBdXRvY29tcGxldGUsXG4gIE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQsXG4gIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IG1lcmdlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZpbHRlciwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IElucHV0QmFzaWNDb21wb25lbnQsIElPcHRpb24gfSBmcm9tICcuLi9pbnB1dC9pbnB1dC1iYXNpYy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXV0b2NvbXBsZXRlU2VydmljZSB9IGZyb20gJy4vYXV0b2NvbXBsZXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgSW5wdXRDbGFzc1BpcGUgfSBmcm9tICcuLi9pbnB1dC9pbnB1dHMtcGlwZXMucGlwZSc7XG5pbXBvcnQgeyBUb0FueVBpcGUgfSBmcm9tICcuLi8uLi9waXBlcy91dGlsaXR5LnBpcGUnO1xuaW1wb3J0IHsgU0RLVHJhbnNsYXRlUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL3RyYW5zbGF0ZS5waXBlJztcbmltcG9ydCB7IFZhbGlkYXRpb25NZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vaW5wdXQvdmFsaWRhdGlvbi1tZXNzYWdlL3ZhbGlkYXRpb24tbWVzc2FnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHsgTWF0T3B0aW9uLCBNYXRPcHRpb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IElucHV0TGFiZWxDb21wb25lbnQgfSBmcm9tICcuLi9pbnB1dC9pbnB1dC1sYWJlbC9pbnB1dC1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmdJZiwgTmdGb3IsIE5nQ2xhc3MsIEFzeW5jUGlwZSwgSnNvblBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYXV0b2NvbXBsZXRlLGF1dG9jb21wbGV0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi4vaW5wdXQvaW5wdXQuY29tcG9uZW50LnNjc3MnLCAnLi9hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgSW5wdXRMYWJlbENvbXBvbmVudCxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBKc29uUGlwZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcbiAgICBOZ0ZvcixcbiAgICBNYXRPcHRpb25Nb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBOZ0NsYXNzLFxuICAgIFZhbGlkYXRpb25NZXNzYWdlQ29tcG9uZW50LFxuICAgIEFzeW5jUGlwZSxcbiAgICBUb0FueVBpcGUsXG4gICAgU0RLVHJhbnNsYXRlUGlwZSxcbiAgICBJbnB1dENsYXNzUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlQ29tcG9uZW50PFxuICBURm9ybUdyb3VwIGV4dGVuZHMge1xuICAgIFtLIGluIGtleW9mIFRGb3JtR3JvdXBdOiBBYnN0cmFjdENvbnRyb2w8YW55LCBhbnk+O1xuICB9ID0gYW55LFxuICBUQ29udHJvbCA9IGFueSxcbiAgVE9wdGlvbiA9IGFueSxcbj4gZXh0ZW5kcyBJbnB1dEJhc2ljQ29tcG9uZW50PFRGb3JtR3JvdXAsIFRDb250cm9sLCBUT3B0aW9uPiB7XG4gIHJlYWRvbmx5IGNPcHRpb25zID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5hdXRvUy5ub3JtYWxpemVPcHRpb25zKHRoaXMub3B0aW9ucygpKSk7XG4gIHJlYWRvbmx5IGZpbHRlcmVkT3B0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5hdXRvUy5maWx0ZXJPcHRpb25zKHRoaXMudmFsdWVTaWduYWwoKSwgdGhpcy5jT3B0aW9ucygpKTtcbiAgfSk7XG5cbiAgQElucHV0KCkgc2hvd1JlcXVpcmVkVGFnOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgdmFsaWRhdGUgPSB0cnVlO1xuXG4gIEBJbnB1dCgnb3B0aW9ucycpIG92ZXJyaWRlIHNldCBfb3B0aW9ucyh2OiBUT3B0aW9uW10gfCBudWxsKSB7XG4gICAgLy8gZGVidWdnZXI7XG4gICAgc3VwZXIuX29wdGlvbnMgPSB2O1xuICAgIGlmICh0aGlzLmF1dG9Db21wbGV0ZVJlZiAmJiB0aGlzLmNvbnRyb2woKT8uZ2V0UmF3VmFsdWUoKSlcbiAgICAgIHRoaXMuY29udHJvbCgpPy5zZXRWYWx1ZSh0aGlzLmNvbnRyb2woKT8uZ2V0UmF3VmFsdWUoKSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICB9XG5cbiAgQFZpZXdDaGlsZChNYXRBdXRvY29tcGxldGUpIGF1dG9Db21wbGV0ZVJlZjogTWF0QXV0b2NvbXBsZXRlO1xuXG4gIHByb3RlY3RlZCB2YWx1ZUNoYW5nZWQgPSBuZXcgUmVwbGF5U3ViamVjdDxzdHJpbmc+KCk7XG5cbiAgb3ZlcnJpZGUgbG9hZGluZzogYm9vbGVhbjtcbiAgcHVibGljIGF1dG9TID0gaW5qZWN0KEF1dG9jb21wbGV0ZVNlcnZpY2UpO1xuXG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgdGhpcy5hZGRPbkNvbnRyb2xPYnRhaW5lZEhvb2soJ2luY2x1ZGVzT3B0aW9uJywgKGNvbnRyb2wpID0+IHtcbiAgICAgIGlmICghY29udHJvbD8uaGFzVmFsaWRhdG9yKHRoaXMuaW5jbHVkZXNPcHRpb24pKSBjb250cm9sPy5hZGRWYWxpZGF0b3JzKHRoaXMuaW5jbHVkZXNPcHRpb24pO1xuICAgICAgZWxzZSBkZWJ1Z2dlcjtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLm9wdGlvbnNGdW5jKVxuICAgICAgdGhpcy52YWx1ZUNoYW5nZWRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFwKCgpID0+ICh0aGlzLmxvYWRpbmcgPSB0cnVlKSksXG4gICAgICAgICAgZGVib3VuY2VUaW1lKDYwMCksXG4gICAgICAgICAgZmlsdGVyKCh2KSA9PiB2ICE9IG51bGwgJiYgdiAhPSAnJyksXG4gICAgICAgICAgc3dpdGNoTWFwKCh2KSA9PiB0aGlzLm9wdGlvbnNGdW5jKHYpKSxcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChyKSA9PiB7XG4gICAgICAgICAgLy8gZGVidWdnZXJcbiAgICAgICAgICB0aGlzLl9vcHRpb25zID0gcjtcbiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAvLyBkZWJ1Z2dlcjtcbiAgICBpZiAodGhpcy5jb250cm9sKCk/Lmhhc1ZhbGlkYXRvcih0aGlzLmluY2x1ZGVzT3B0aW9uKSlcbiAgICAgIHRoaXMuY29udHJvbCgpPy5yZW1vdmVWYWxpZGF0b3JzKHRoaXMuaW5jbHVkZXNPcHRpb24pO1xuICB9XG5cbiAgZmV0Y2hPcHRpb25zKCRldmVudDogRXZlbnQpIHtcbiAgICBpZiAodGhpcy5vcHRpb25zRnVuYykge1xuICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgIHRoaXMudmFsdWVDaGFuZ2VkLm5leHQodGhpcy5jb250cm9sKCk/LmdldFJhd1ZhbHVlKCkpO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdGVkKCRldmVudDogTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCkge1xuICAgIC8vIGRlYnVnZ2VyO1xuICAgIHRoaXMubVNlbGVjdGVkT3B0aW9uTGFiZWwuZW1pdCh0aGlzLmRpc3BsYXlXaXRoKHRoaXMuY29udHJvbCgpPy5nZXRSYXdWYWx1ZSgpKSk7XG4gICAgdGhpcy5jb250cm9sKCkuZm9ybWF0dGVkVmFsdWUgPSB0aGlzLmRpc3BsYXlXaXRoKHRoaXMuY29udHJvbCgpPy5nZXRSYXdWYWx1ZSgpKTtcbiAgICBzdXBlci5jaGFuZ2UoeyB0YXJnZXQ6IHsgdmFsdWU6ICRldmVudC5vcHRpb24udmFsdWUgfSB9KTtcblxuICAgIC8vIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIC8vICAgdGhpcy5maWx0ZXJlZE9wdGlvbnMuc2V0KHRoaXMub3B0aW9ucygpKTtcbiAgICAvLyB9LCA2MDApO1xuICB9XG5cbiAgZGlzcGxheVdpdGggPSAodmFsOiBhbnkpID0+XG4gICAgdmFsIGluc3RhbmNlb2YgTWF0T3B0aW9uXG4gICAgICA/IHRoaXMuZGlzcGxheVdpdGgodmFsLnZhbHVlKVxuICAgICAgOiB0aGlzLmRvZXNPcHRpb25FeGlzdCh2YWwpPy5sYWJlbCB8fCB2YWw7XG5cbiAgaW5jbHVkZXNPcHRpb24gPSAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgY29uc3QgdmFsID0gY29udHJvbD8udmFsdWU7XG4gICAgLy8gZGVidWdnZXI7XG4gICAgaWYgKCF2YWwpIHJldHVybiBudWxsO1xuICAgIGlmICghdGhpcy5vcHRpb25zKCkgfHwgdGhpcy5vcHRpb25zKCkubGVuZ3RoID09PSAwKSByZXR1cm4gbnVsbDtcbiAgICAvLyBkZWJ1Z2dlclxuICAgIGlmICh0aGlzLmRvZXNPcHRpb25FeGlzdCh2YWwpKSByZXR1cm4gbnVsbDtcbiAgICBlbHNlIHJldHVybiB0aGlzLmF1dG9TLmludmFsaWRTZWxlY3Rpb25FcnJvcjtcbiAgfTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJyb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gIDwhLS0ge3tvcHRpb25zKCl8anNvbn19IC0tPlxuICBAaWYgKHZlcmJvc2UoKSkge1xuICAgIDxkaXY+ZGlzYWJsZWRTaWduYWw6IHt7IGRpc2FibGVkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PnZhbGlkU2lnbmFsOiB7eyB2YWxpZFNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj5pbnZhbGlkU2lnbmFsOiB7eyBpbnZhbGlkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PnZhbHVlU2lnbmFsOiB7eyB2YWx1ZVNpZ25hbCgpIHwganNvbiB9fTwvZGl2PlxuICAgIDxkaXY+aGFzVmFsdWU6IHt7IGhhc1ZhbHVlKCkgfX08L2Rpdj5cbiAgICA8ZGl2PmRpcnR5U2lnbmFsOiB7eyBkaXJ0eVNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj50b3VjaGVkU2lnbmFsOiB7eyB0b3VjaGVkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PmVycm9yc1NpZ25hbDoge3sgZXJyb3JzU2lnbmFsanNvbigpIH19PC9kaXY+XG4gICAgPGRpdj5wZW5kaW5nU2lnbmFsOiB7eyBwZW5kaW5nU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2PnByaXN0aW5lU2lnbmFsOiB7eyBwcmlzdGluZVNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj5jb250cm9sUmVxdWlyZWRTaWduYWw6IHt7IGNvbnRyb2xSZXF1aXJlZFNpZ25hbCgpIH19PC9kaXY+XG4gICAgPGRpdj5pc1JlcXVpcmVkU2lnbmFsOiB7eyBpc1JlcXVpcmVkU2lnbmFsKCkgfX08L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiXCI+b25Db250cm9sT2J0YWluZWRMaXN0IExlbmd0aDoge3sgb25Db250cm9sT2J0YWluZWRMaXN0KCkubGVuZ3RoIH19PC9kaXY+XG4gIH1cbiAgQGlmIChjb21wdXRlZFNob3dMYWJlbCgpKSB7XG4gICAgPGFwcC1pbnB1dC1sYWJlbFxuICAgICAgW2NvbG9yZWRdPVwiY29sb3JlZFNpZ25hbCgpXCJcbiAgICAgIFtmb3JtXT1cImZvcm0oKSB8IHRvQW55XCJcbiAgICAgIFtoaW50XT1cImhpbnRcIlxuICAgICAgW2lkXT1cImlkU2lnbmFsKClcIlxuICAgICAgW2ludmFsaWRDaGVja2JveF09XCJpbnZhbGlkQ2hlY2tib3hTaWduYWwoKVwiXG4gICAgICBbaXNSZXF1aXJlZF09XCJpc1JlcXVpcmVkU2lnbmFsKClcIlxuICAgICAgW2xhYmVsXT1cImxhYmVsU2lnbmFsKClcIlxuICAgICAgW2xibENsXT1cImxibENsXCJcbiAgICAgIFtsaWdodF09XCJsaWdodFwiXG4gICAgICBbbWluaV09XCJtaW5pU2lnbmFsKClcIlxuICAgICAgW3Nob3dSZXF1aXJlZFRhZ109XCJzaG93UmVxdWlyZWRUYWdTaWduYWwoKVwiXG4gICAgICBbc2hvd0xhYmVsXT1cInNob3dMYWJlbFNpZ25hbCgpXCJcbiAgICAgIFtzbWFsbF09XCJzbWFsbFNpZ25hbCgpXCJcbiAgICAgIFtzdGFja2VkXT1cInN0YWNrZWRTaWduYWwoKVwiXG4gICAgICBbdGhlbWVdPVwidGhlbWVcIlxuICAgICAgW3hzbWFsbF09XCJ4c21hbGxcIiAvPlxuICB9XG4gIDxkaXYgY2xhc3M9XCJ7eyBzdGFja2VkU2lnbmFsKCkgPyAnY29sLTEyJyA6ICdjb2wtbWQnIH19IHBvc2l0aW9uLXJlbGF0aXZlXCI+XG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtKCkgfCB0b0FueVwiIGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGRhdGEtbm9mb3JtYXQ9XCJ0cnVlXCJcbiAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJuYW1lU3RyU2lnbmFsKClcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHBsYWNlaG9sZGVyKCkgfX1cIlxuICAgICAgICBbaWRdPVwiaWRTaWduYWwoKVwiXG4gICAgICAgIChrZXl1cCk9XCJmZXRjaE9wdGlvbnMoJGV2ZW50KVwiXG4gICAgICAgIFtjbGFzc109XCJpbnB1dENsYXNzU2lnbmFsKClcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRTaWduYWwoKVwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVNpZ25hbCgpXCJcbiAgICAgICAgI3RyaWdnZXI9XCJtYXRBdXRvY29tcGxldGVUcmlnZ2VyXCJcbiAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvXCJcbiAgICAgICAgI2lucCAvPlxuICAgICAgQGlmICghZGlzYWJsZWRTaWduYWwoKSkge1xuICAgICAgICA8aVxuICAgICAgICAgIGNsYXNzPVwiaW5wdXQtaWNvbiBmYSBmYS1zZWFyY2hcIlxuICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IHRyaWdnZXIub3BlblBhbmVsKClcIj48L2k+XG4gICAgICB9XG4gICAgICA8bWF0LWF1dG9jb21wbGV0ZVxuICAgICAgICAjYXV0bz1cIm1hdEF1dG9jb21wbGV0ZVwiXG4gICAgICAgIFtkaXNwbGF5V2l0aF09XCJkaXNwbGF5V2l0aFwiXG4gICAgICAgIGNsYXNzPVwib3B0aW9ucy13LWF1dG9cIlxuICAgICAgICAob3B0aW9uU2VsZWN0ZWQpPVwic2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgICAgICA8IS0tIDxuZy1jb250YWluZXIgKm5nSWY9XCJkdXBsaWNhdGVDaGVjazsgZWxzZSBlbHNlTm9EdWxpY2F0ZVRlbXBsYXRlXCI+XG4gICAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGZpbHRlcmVkT3B0aW9uc3xyZW1vdmVVc2VkT3B0aW9uc1JlYWN0aXZlOihmb3JtLnBhcmVudHx0b0FueSk6KGZvcm0udmFsdWUpOid2YWx1ZSc6bmFtZTt0cmFja0J5OmlTLnRyYWNrQnlWYWx1ZVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvblwiIFttYXRUb29sdGlwXT1cImVsZS5pbm5lclRleHRcIiBbbWF0VG9vbHRpcERpc2FibGVkXT1cImVsZS5zY3JvbGxXaWR0aDw9ZWxlLm9mZnNldFdpZHRoXCJcbiAgICAgICAgICAgICAgI2VsZT5cbiAgICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB8IGFwcFRyYW5zbGF0ZTogdHJhbnNsYXRlT3B0aW9ucyB8IGFzeW5jIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgI2Vsc2VOb0R1bGljYXRlVGVtcGxhdGU+XG4gICAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGZpbHRlcmVkT3B0aW9uczt0cmFja0J5OmlTLnRyYWNrQnlWYWx1ZVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm9wdGlvblwiIFttYXRUb29sdGlwXT1cImVsZS5pbm5lclRleHRcIiBbbWF0VG9vbHRpcERpc2FibGVkXT1cImVsZS5zY3JvbGxXaWR0aDw9ZWxlLm9mZnNldFdpZHRoXCJcbiAgICAgICAgICAgICAgI2VsZT5cbiAgICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB8IGFwcFRyYW5zbGF0ZTogdHJhbnNsYXRlT3B0aW9ucyB8IGFzeW5jIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+IC0tPlxuXG4gICAgICAgIEBpZiAoc2hvd0VtcHR5T3B0aW9uU2lnbmFsKCkpIHtcbiAgICAgICAgICA8bWF0LW9wdGlvbiBzZWxlY3RlZCBbdmFsdWVdPVwibnVsbFwiIGNsYXNzPVwiZW1wdHktb3B0aW9uXCI+XG4gICAgICAgICAgICB7eyBvcHRpb25zRnVuYyA/ICdUeXBlIHRvIHNlYXJjaCcgOiBwbGFjZWhvbGRlcigpIH19XG4gICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICB9XG4gICAgICAgIEBmb3IgKGl0ZW0gb2YgZmlsdGVyZWRPcHRpb25zKCk7IHRyYWNrIGl0ZW0uX2lkKSB7XG4gICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cIml0ZW0udmFsdWVcIiAob25TZWxlY3Rpb25DaGFuZ2UpPVwic2VsZWN0ZWRPcHRpb24oaXRlbSlcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJvcHRpb25cIlxuICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJlbGUuaW5uZXJUZXh0XCJcbiAgICAgICAgICAgICAgW21hdFRvb2x0aXBTaG93RGVsYXldPVwiMTAwMFwiXG4gICAgICAgICAgICAgIFttYXRUb29sdGlwRGlzYWJsZWRdPVwiZWxlLnNjcm9sbFdpZHRoIDw9IGVsZS5vZmZzZXRXaWR0aFwiXG4gICAgICAgICAgICAgICNlbGU+XG4gICAgICAgICAgICAgIHt7IGl0ZW0ubGFiZWwgfCBhcHBUcmFuc2xhdGU6IHRyYW5zbGF0ZU9wdGlvbnMoKSB8IGFzeW5jIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIH1cbiAgICAgIDwvbWF0LWF1dG9jb21wbGV0ZT5cbiAgICAgIEBpZiAoZGlydHlTaWduYWwoKSAmJiBzaG93VmFsaWRhdGlvblNpZ25hbCgpICYmIHNob3dWYWxpZGF0aW9uSWNvblNpZ25hbCgpKSB7XG4gICAgICAgIDxkaXYgW25nQ2xhc3NdPVwieyB2YWxpZDogdmFsaWRTaWduYWwoKSB9XCIgY2xhc3M9XCJ2YWxpZGl0eS1pY29uXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1jaGVja1wiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgW25nQ2xhc3NdPVwieyBwZW5kaW5nOiBwZW5kaW5nU2lnbmFsKCkgfVwiIGNsYXNzPVwidmFsaWRpdHktaWNvblwiPlxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtc3Bpbm5lciBmYS1zcGluXCI+PC9pPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7IGludmFsaWQ6IGludmFsaWRTaWduYWwoKSB9XCIgY2xhc3M9XCJ2YWxpZGl0eS1pY29uXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS10aW1lc1wiPjwvaT5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgICBAaWYgKGxvYWRpbmcpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCB0ZXh0LXByaW1hcnkgbWUtMSB2YWxpZGl0eS1pY29uXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1zcGlubmVyIGZhLXNwaW5cIj48L2k+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvZm9ybT5cbiAgPC9kaXY+XG48L2Rpdj5cbkBpZiAoc2hvd1ZhbGlkYXRpb25Nc2dTaWduYWwoKSkge1xuICA8YXBwLXZhbGlkYXRpb24tbWVzc2FnZSBbbGFiZWxdPVwibGFiZWxTaWduYWwoKVwiIFtjb250cm9sXT1cImNvbnRyb2woKVwiIC8+XG59XG4iXX0=
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../../Services/utility.service";
|
|
3
4
|
export class AutocompleteService {
|
|
4
|
-
constructor() {
|
|
5
|
+
constructor(uS) {
|
|
6
|
+
this.uS = uS;
|
|
5
7
|
this.invalidSelectionError = { invalid: true };
|
|
6
8
|
this.normalizeOptions = (options) => options?.map((x) => ({
|
|
7
9
|
...x,
|
|
8
10
|
_normalizedLabel: this.normalizeValue(x.label),
|
|
11
|
+
// _id: this.uS.generateUUID(),
|
|
9
12
|
}));
|
|
10
13
|
this.displayWith = (options) => (val) => {
|
|
11
14
|
console.log('this.options', options);
|
|
@@ -29,7 +32,7 @@ export class AutocompleteService {
|
|
|
29
32
|
normalizeValue(value) {
|
|
30
33
|
return value?.toString()?.toLowerCase().replace(/\s/g, '');
|
|
31
34
|
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AutocompleteService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
35
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AutocompleteService, deps: [{ token: i1.UtilityService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
33
36
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AutocompleteService, providedIn: 'root' }); }
|
|
34
37
|
}
|
|
35
38
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: AutocompleteService, decorators: [{
|
|
@@ -37,5 +40,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImpor
|
|
|
37
40
|
args: [{
|
|
38
41
|
providedIn: 'root',
|
|
39
42
|
}]
|
|
40
|
-
}], ctorParameters: () => [] });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
}], ctorParameters: () => [{ type: i1.UtilityService }] });
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldHMtZmUtbmctc2RrL3NyYy9saWIvU2hhcmVkL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVEzQyxNQUFNLE9BQU8sbUJBQW1CO0lBRzlCLFlBQW1CLEVBQWtCO1FBQWxCLE9BQUUsR0FBRixFQUFFLENBQWdCO1FBRjVCLDBCQUFxQixHQUEwQixFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztRQW1CMUUscUJBQWdCLEdBQUcsQ0FBQyxPQUFrQixFQUFFLEVBQUUsQ0FDeEMsT0FBTyxFQUFFLEdBQUcsQ0FBc0IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDeEMsR0FBRyxDQUFDO1lBQ0osZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQzlDLCtCQUErQjtTQUNoQyxDQUFDLENBQUMsQ0FBQztRQUNOLGdCQUFXLEdBQUcsQ0FBQyxPQUFjLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDeEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDckMsT0FBTyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLEdBQUcsQ0FBQyxFQUFFLEtBQUssSUFBSSxHQUFHLENBQUM7UUFDNUQsQ0FBQyxDQUFDO0lBMUJzQyxDQUFDO0lBRXpDLGFBQWEsQ0FBeUMsS0FBYSxFQUFFLE9BQVk7UUFDL0UsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQyxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQ2hCLE1BQU0sR0FBRyxHQUFRLEVBQUUsRUFDakIsV0FBVyxHQUFRLEVBQUUsQ0FBQztZQUN4QixLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU87Z0JBQzFCLElBQUksTUFBTSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUM7b0JBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztxQkFDakUsSUFBSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQztvQkFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ25GLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqQyxDQUFDOztZQUFNLE9BQU8sT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBYTtRQUMxQixPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsRUFBRSxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzdELENBQUM7OEdBbkJVLG1CQUFtQjtrSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzJGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJT3B0aW9uIH0gZnJvbSAnLi4vaW5wdXQvaW5wdXQuc2VydmljZSc7XG5pbXBvcnQgeyBDdXN0b21WYWxpZGF0aW9uRXJyb3IgfSBmcm9tICcuLi8uLi9tb2RlbHMvaW5kZXgubW9kZWwnO1xuaW1wb3J0IHsgVXRpbGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9TZXJ2aWNlcy91dGlsaXR5LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b2NvbXBsZXRlU2VydmljZSB7XG4gIHJlYWRvbmx5IGludmFsaWRTZWxlY3Rpb25FcnJvcjogQ3VzdG9tVmFsaWRhdGlvbkVycm9yID0geyBpbnZhbGlkOiB0cnVlIH07XG5cbiAgY29uc3RydWN0b3IocHVibGljIHVTOiBVdGlsaXR5U2VydmljZSkge31cblxuICBmaWx0ZXJPcHRpb25zPFQgZXh0ZW5kcyB7IF9ub3JtYWxpemVkTGFiZWw6IHN0cmluZyB9PihxdWVyeTogc3RyaW5nLCBvcHRpb25zOiBUW10pOiBUW10ge1xuICAgIGNvbnN0IGZpbHRlclZhbHVlID0gdGhpcy5ub3JtYWxpemVWYWx1ZShxdWVyeSk7XG4gICAgaWYgKGZpbHRlclZhbHVlKSB7XG4gICAgICBjb25zdCByZXM6IFRbXSA9IFtdLFxuICAgICAgICByZXNJbmNsdWRlczogVFtdID0gW107XG4gICAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiBvcHRpb25zKVxuICAgICAgICBpZiAob3B0aW9uLl9ub3JtYWxpemVkTGFiZWwuc3RhcnRzV2l0aChmaWx0ZXJWYWx1ZSkpIHJlcy5wdXNoKG9wdGlvbik7XG4gICAgICAgIGVsc2UgaWYgKG9wdGlvbi5fbm9ybWFsaXplZExhYmVsLmluY2x1ZGVzKGZpbHRlclZhbHVlKSkgcmVzSW5jbHVkZXMucHVzaChvcHRpb24pO1xuICAgICAgcmV0dXJuIHJlcy5jb25jYXQocmVzSW5jbHVkZXMpO1xuICAgIH0gZWxzZSByZXR1cm4gb3B0aW9ucztcbiAgfVxuXG4gIG5vcm1hbGl6ZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB2YWx1ZT8udG9TdHJpbmcoKT8udG9Mb3dlckNhc2UoKS5yZXBsYWNlKC9cXHMvZywgJycpO1xuICB9XG4gIG5vcm1hbGl6ZU9wdGlvbnMgPSAob3B0aW9uczogSU9wdGlvbltdKSA9PlxuICAgIG9wdGlvbnM/Lm1hcDxJQXV0b0NvbXBsZXRlT3B0aW9uPigoeCkgPT4gKHtcbiAgICAgIC4uLngsXG4gICAgICBfbm9ybWFsaXplZExhYmVsOiB0aGlzLm5vcm1hbGl6ZVZhbHVlKHgubGFiZWwpLFxuICAgICAgLy8gX2lkOiB0aGlzLnVTLmdlbmVyYXRlVVVJRCgpLFxuICAgIH0pKTtcbiAgZGlzcGxheVdpdGggPSAob3B0aW9uczogYW55W10pID0+ICh2YWwpID0+IHtcbiAgICBjb25zb2xlLmxvZygndGhpcy5vcHRpb25zJywgb3B0aW9ucyk7XG4gICAgcmV0dXJuIG9wdGlvbnM/LmZpbmQoKHgpID0+IHgudmFsdWUgPT0gdmFsKT8ubGFiZWwgfHwgdmFsO1xuICB9O1xufVxuZXhwb3J0IGludGVyZmFjZSBJQXV0b0NvbXBsZXRlT3B0aW9uIGV4dGVuZHMgSU9wdGlvbiB7XG4gIF9ub3JtYWxpemVkTGFiZWw6IHN0cmluZztcbn1cbiJdfQ==
|