tango-app-ui-manage-settings 3.0.38-dev → 3.0.39-dev

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.
@@ -1,13 +1,16 @@
1
1
  import { Component, HostListener, Input, forwardRef } from '@angular/core';
2
2
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
4
+ import * as i1 from "../../services/client-api.service";
5
+ import * as i2 from "@angular/common";
5
6
  const SELECT_CONTROL_VALUE_ACCESSOR = {
6
7
  provide: NG_VALUE_ACCESSOR,
7
8
  useExisting: forwardRef(() => ReactiveSelectComponent),
8
9
  multi: true,
9
10
  };
10
11
  export class ReactiveSelectComponent {
12
+ apiService;
13
+ cd;
11
14
  onTouched;
12
15
  onChanged;
13
16
  isDisabled;
@@ -18,6 +21,20 @@ export class ReactiveSelectComponent {
18
21
  isOpened = false;
19
22
  selected = null;
20
23
  selectedId;
24
+ instanceId;
25
+ constructor(apiService, cd) {
26
+ this.apiService = apiService;
27
+ this.cd = cd;
28
+ }
29
+ ngOnInit() {
30
+ this.instanceId = crypto.randomUUID();
31
+ this.apiService.dropDownTrigger.subscribe((e) => {
32
+ if (e !== this.instanceId) {
33
+ this.isOpened = false;
34
+ this.cd.detectChanges();
35
+ }
36
+ });
37
+ }
21
38
  writeValue(val) {
22
39
  this.selectedId = val;
23
40
  this.selected = this.data.filter((item) => item?.[this.idField] === val)[0];
@@ -59,13 +76,17 @@ export class ReactiveSelectComponent {
59
76
  }
60
77
  return false;
61
78
  }
62
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ReactiveSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
63
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: ReactiveSelectComponent, selector: "lib-reactive-select", inputs: { idField: "idField", nameField: "nameField", label: "label", data: "data" }, host: { listeners: { "document:click": "onClick($event)" } }, providers: [SELECT_CONTROL_VALUE_ACCESSOR], ngImport: i0, template: "<div class=\"custom-select\">\r\n <div class=\"form-group\">\r\n <label *ngIf=\"label\" class=\"form-label\">{{label}}</label>\r\n <div class=\"position-relative\">\r\n <div (click)=\"isOpened = !isOpened;\" [ngClass]=\"isDisabled ? 'disable' : ''\" class=\"form-select dropselect\">\r\n {{selected?.[nameField]}}</div>\r\n <div *ngIf=\"isOpened\" class=\"card py-2 w-100 position-absolute end-0 z-1 drop-list\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li *ngFor=\"let item of data\" (click)=\"onSelect(item)\"\r\n [ngClass]=\"item?.[idField] === selected?.[idField] ? 'active' : ''\"\r\n class=\"text px-5 items cursor-pointer py-4\">\r\n {{item?.[nameField]}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".custom-select .items:hover,.custom-select .tems.focus,.custom-select .items.active,.custom-select .camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.custom-select .drop-list{max-height:300px;overflow:scroll}.custom-select .dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important;cursor:default;white-space:nowrap}.custom-select .text{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.custom-select .disable{pointer-events:none;background-color:#f9fafb!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
79
+ openDropdown() {
80
+ this.isOpened = !this.isOpened;
81
+ this.apiService.dropDownTrigger.next(this.instanceId);
82
+ }
83
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ReactiveSelectComponent, deps: [{ token: i1.ClientApiService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
84
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: ReactiveSelectComponent, selector: "lib-reactive-select", inputs: { idField: "idField", nameField: "nameField", label: "label", data: "data" }, host: { listeners: { "document:click": "onClick($event)" } }, providers: [SELECT_CONTROL_VALUE_ACCESSOR], ngImport: i0, template: "<div class=\"custom-select\">\r\n <div class=\"form-group\">\r\n <label *ngIf=\"label\" class=\"form-label\">{{label}}</label>\r\n <div class=\"position-relative\">\r\n <div (click)=\"openDropdown()\" [ngClass]=\"isDisabled ? 'disable' : ''\" class=\"form-select dropselect\">\r\n {{selected?.[nameField]}}</div>\r\n <div *ngIf=\"isOpened\" class=\"card py-2 w-100 position-absolute end-0 z-1 drop-list\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li *ngFor=\"let item of data\" (click)=\"onSelect(item)\"\r\n [ngClass]=\"item?.[idField] === selected?.[idField] ? 'active' : ''\"\r\n class=\"text px-5 items cursor-pointer py-4\">\r\n {{item?.[nameField]}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".custom-select .items:hover,.custom-select .tems.focus,.custom-select .items.active,.custom-select .camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.custom-select .drop-list{max-height:300px;overflow:scroll}.custom-select .dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important;cursor:default;white-space:nowrap}.custom-select .text{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.custom-select .disable{pointer-events:none;background-color:#f9fafb!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
64
85
  }
65
86
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ReactiveSelectComponent, decorators: [{
66
87
  type: Component,
67
- args: [{ selector: 'lib-reactive-select', providers: [SELECT_CONTROL_VALUE_ACCESSOR], template: "<div class=\"custom-select\">\r\n <div class=\"form-group\">\r\n <label *ngIf=\"label\" class=\"form-label\">{{label}}</label>\r\n <div class=\"position-relative\">\r\n <div (click)=\"isOpened = !isOpened;\" [ngClass]=\"isDisabled ? 'disable' : ''\" class=\"form-select dropselect\">\r\n {{selected?.[nameField]}}</div>\r\n <div *ngIf=\"isOpened\" class=\"card py-2 w-100 position-absolute end-0 z-1 drop-list\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li *ngFor=\"let item of data\" (click)=\"onSelect(item)\"\r\n [ngClass]=\"item?.[idField] === selected?.[idField] ? 'active' : ''\"\r\n class=\"text px-5 items cursor-pointer py-4\">\r\n {{item?.[nameField]}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".custom-select .items:hover,.custom-select .tems.focus,.custom-select .items.active,.custom-select .camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.custom-select .drop-list{max-height:300px;overflow:scroll}.custom-select .dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important;cursor:default;white-space:nowrap}.custom-select .text{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.custom-select .disable{pointer-events:none;background-color:#f9fafb!important}\n"] }]
68
- }], propDecorators: { idField: [{
88
+ args: [{ selector: 'lib-reactive-select', providers: [SELECT_CONTROL_VALUE_ACCESSOR], template: "<div class=\"custom-select\">\r\n <div class=\"form-group\">\r\n <label *ngIf=\"label\" class=\"form-label\">{{label}}</label>\r\n <div class=\"position-relative\">\r\n <div (click)=\"openDropdown()\" [ngClass]=\"isDisabled ? 'disable' : ''\" class=\"form-select dropselect\">\r\n {{selected?.[nameField]}}</div>\r\n <div *ngIf=\"isOpened\" class=\"card py-2 w-100 position-absolute end-0 z-1 drop-list\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li *ngFor=\"let item of data\" (click)=\"onSelect(item)\"\r\n [ngClass]=\"item?.[idField] === selected?.[idField] ? 'active' : ''\"\r\n class=\"text px-5 items cursor-pointer py-4\">\r\n {{item?.[nameField]}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".custom-select .items:hover,.custom-select .tems.focus,.custom-select .items.active,.custom-select .camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.custom-select .drop-list{max-height:300px;overflow:scroll}.custom-select .dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important;cursor:default;white-space:nowrap}.custom-select .text{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.custom-select .disable{pointer-events:none;background-color:#f9fafb!important}\n"] }]
89
+ }], ctorParameters: () => [{ type: i1.ClientApiService }, { type: i0.ChangeDetectorRef }], propDecorators: { idField: [{
69
90
  type: Input
70
91
  }], nameField: [{
71
92
  type: Input
@@ -77,4 +98,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
77
98
  type: HostListener,
78
99
  args: ['document:click', ['$event']]
79
100
  }] } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhY3RpdmUtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvcmVhY3RpdmUtc2VsZWN0L3JlYWN0aXZlLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3JlYWN0aXZlLXNlbGVjdC9yZWFjdGl2ZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFZLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUV6RSxNQUFNLDZCQUE2QixHQUFhO0lBQzlDLE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztJQUN0RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFRRixNQUFNLE9BQU8sdUJBQXVCO0lBRTFCLFNBQVMsQ0FBVztJQUNwQixTQUFTLENBQVc7SUFDbEIsVUFBVSxDQUFVO0lBQ3JCLE9BQU8sQ0FBUTtJQUNmLFNBQVMsQ0FBUTtJQUNqQixLQUFLLENBQVE7SUFDYixJQUFJLENBQUs7SUFDUixRQUFRLEdBQVksS0FBSyxDQUFBO0lBQ3pCLFFBQVEsR0FBK0IsSUFBSSxDQUFBO0lBQzNDLFVBQVUsQ0FBaUI7SUFFckMsVUFBVSxDQUFDLEdBQW9CO1FBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFBO1FBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUF3QixFQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDaEcsQ0FBQztJQUNELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUE7SUFDckIsQ0FBQztJQUNELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUE7SUFDckIsQ0FBQztJQUNELGdCQUFnQixDQUFFLFVBQW1CO1FBQ25DLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFBO0lBRTlCLENBQUM7SUFFRCxRQUFRLENBQUMsSUFBeUI7UUFDaEMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFBO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3RDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFBO1FBQ3JCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ2pDLENBQUM7SUFHRCxPQUFPLENBQUMsS0FBaUI7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDcEIsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7WUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsRUFBRTtnQkFDM0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7YUFDdkI7U0FDRjtJQUNILENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxhQUEwQjtRQUMzQyxNQUFNLGFBQWEsR0FBRyxhQUFhLENBQUMsYUFBYSxDQUFDO1FBQ2xELElBQUksYUFBYSxFQUFFO1lBQ2pCLE1BQU0sa0JBQWtCLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDN0UsSUFBSSxrQkFBa0IsRUFBRTtnQkFDdEIsT0FBTyxJQUFJLENBQUM7YUFDYjtpQkFBTTtnQkFDTCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUMvQztTQUNGO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO3VHQXpEVSx1QkFBdUI7MkZBQXZCLHVCQUF1QixrTUFGdkIsQ0FBQyw2QkFBNkIsQ0FBQywwQkNiNUMsNjZCQWlCTTs7MkZERk8sdUJBQXVCO2tCQU5uQyxTQUFTOytCQUNFLHFCQUFxQixhQUdwQixDQUFDLDZCQUE2QixDQUFDOzhCQU9qQyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQTZCTixPQUFPO3NCQUROLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIFByb3ZpZGVyLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmNvbnN0IFNFTEVDVF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SOiBQcm92aWRlciA9IHtcclxuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBSZWFjdGl2ZVNlbGVjdENvbXBvbmVudCksXHJcbiAgbXVsdGk6IHRydWUsXHJcbn07XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1yZWFjdGl2ZS1zZWxlY3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9yZWFjdGl2ZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9yZWFjdGl2ZS1zZWxlY3QuY29tcG9uZW50LnNjc3MnLFxyXG4gIHByb3ZpZGVyczogW1NFTEVDVF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVhY3RpdmVTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcblxyXG4gIHByaXZhdGUgb25Ub3VjaGVkOiBGdW5jdGlvbjtcclxuICBwcml2YXRlIG9uQ2hhbmdlZDogRnVuY3Rpb247XHJcbiAgcHJvdGVjdGVkIGlzRGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaWRGaWVsZDogc3RyaW5nXHJcbiAgQElucHV0KCkgbmFtZUZpZWxkOiBzdHJpbmdcclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nXHJcbiAgQElucHV0KCkgZGF0YTogYW55XHJcbiAgcHJvdGVjdGVkIGlzT3BlbmVkOiBib29sZWFuID0gZmFsc2VcclxuICBwcm90ZWN0ZWQgc2VsZWN0ZWQ6IFJlY29yZDxzdHJpbmcsIGFueT4gfCBudWxsID0gbnVsbFxyXG4gIHByb3RlY3RlZCBzZWxlY3RlZElkOiBzdHJpbmcgfCBudW1iZXJcclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWw6IHN0cmluZyB8IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZElkID0gdmFsXHJcbiAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5kYXRhLmZpbHRlcigoaXRlbTpSZWNvcmQ8c3RyaW5nLCBhbnk+KT0+IGl0ZW0/Llt0aGlzLmlkRmllbGRdID09PSB2YWwpWzBdICAgIFxyXG4gIH1cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2VkID0gZm5cclxuICB9XHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmblxyXG4gIH1cclxuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzRGlzYWJsZWQgPSBpc0Rpc2FibGVkXHJcblxyXG4gIH1cclxuXHJcbiAgb25TZWxlY3QoaXRlbTogUmVjb3JkPHN0cmluZywgYW55Pikge1xyXG4gICAgdGhpcy5vblRvdWNoZWQoKVxyXG4gICAgdGhpcy5zZWxlY3RlZCA9IGl0ZW1cclxuICAgIHRoaXMuc2VsZWN0ZWRJZCA9IGl0ZW0/Llt0aGlzLmlkRmllbGRdICAgIFxyXG4gICAgdGhpcy5pc09wZW5lZCA9IGZhbHNlXHJcbiAgICB0aGlzLm9uQ2hhbmdlZCh0aGlzLnNlbGVjdGVkSWQpXHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbiAgb25DbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgaWYgKCF0aGlzLmlzRGlzYWJsZWQpIHtcclxuICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgaWYgKCF0aGlzLmlzQ29tcG9uZW50Q2xpY2tlZCh0YXJnZXRFbGVtZW50KSkge1xyXG4gICAgICAgIHRoaXMuaXNPcGVuZWQgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaXNDb21wb25lbnRDbGlja2VkKHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBwYXJlbnRFbGVtZW50ID0gdGFyZ2V0RWxlbWVudC5wYXJlbnRFbGVtZW50O1xyXG4gICAgaWYgKHBhcmVudEVsZW1lbnQpIHtcclxuICAgICAgY29uc3QgY2xpY2tlZE9uQ29tcG9uZW50ID0gcGFyZW50RWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ2N1c3RvbS1zZWxlY3QnKTtcclxuICAgICAgaWYgKGNsaWNrZWRPbkNvbXBvbmVudCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmlzQ29tcG9uZW50Q2xpY2tlZChwYXJlbnRFbGVtZW50KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjdXN0b20tc2VsZWN0XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxyXG4gICAgICAgIDxsYWJlbCAqbmdJZj1cImxhYmVsXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tsYWJlbH19PC9sYWJlbD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwiaXNPcGVuZWQgPSAhaXNPcGVuZWQ7XCIgW25nQ2xhc3NdPVwiaXNEaXNhYmxlZCA/ICdkaXNhYmxlJyA6ICcnXCIgY2xhc3M9XCJmb3JtLXNlbGVjdCBkcm9wc2VsZWN0XCI+XHJcbiAgICAgICAgICAgICAgICB7e3NlbGVjdGVkPy5bbmFtZUZpZWxkXX19PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpc09wZW5lZFwiIGNsYXNzPVwiY2FyZCBweS0yIHctMTAwIHBvc2l0aW9uLWFic29sdXRlIGVuZC0wIHotMSBkcm9wLWxpc3RcIj5cclxuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImxpc3QtdW5zdHlsZWQgbWItMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhXCIgKGNsaWNrKT1cIm9uU2VsZWN0KGl0ZW0pXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXRlbT8uW2lkRmllbGRdID09PSBzZWxlY3RlZD8uW2lkRmllbGRdID8gJ2FjdGl2ZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidGV4dCBweC01IGl0ZW1zIGN1cnNvci1wb2ludGVyIHB5LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAge3tpdGVtPy5bbmFtZUZpZWxkXX19XHJcbiAgICAgICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhY3RpdmUtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvcmVhY3RpdmUtc2VsZWN0L3JlYWN0aXZlLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3JlYWN0aXZlLXNlbGVjdC9yZWFjdGl2ZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBb0IsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUd6RSxNQUFNLDZCQUE2QixHQUFhO0lBQzlDLE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztJQUN0RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFRRixNQUFNLE9BQU8sdUJBQXVCO0lBZWQ7SUFBc0M7SUFibEQsU0FBUyxDQUFXO0lBQ3BCLFNBQVMsQ0FBVztJQUNsQixVQUFVLENBQVU7SUFDckIsT0FBTyxDQUFRO0lBQ2YsU0FBUyxDQUFRO0lBQ2pCLEtBQUssQ0FBUTtJQUNiLElBQUksQ0FBSztJQUNSLFFBQVEsR0FBWSxLQUFLLENBQUE7SUFDekIsUUFBUSxHQUErQixJQUFJLENBQUE7SUFDM0MsVUFBVSxDQUFpQjtJQUNyQyxVQUFVLENBQVM7SUFHbkIsWUFBb0IsVUFBNEIsRUFBVSxFQUFxQjtRQUEzRCxlQUFVLEdBQVYsVUFBVSxDQUFrQjtRQUFVLE9BQUUsR0FBRixFQUFFLENBQW1CO0lBRS9FLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDdEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDOUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUE7Z0JBQ3JCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUE7YUFDeEI7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFHRCxVQUFVLENBQUMsR0FBb0I7UUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUE7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQXlCLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNsRyxDQUFDO0lBQ0QsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQTtJQUNyQixDQUFDO0lBQ0QsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQTtJQUNyQixDQUFDO0lBQ0QsZ0JBQWdCLENBQUUsVUFBbUI7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUE7SUFFOUIsQ0FBQztJQUVELFFBQVEsQ0FBQyxJQUF5QjtRQUNoQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7UUFDaEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUE7UUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDdEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUE7UUFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDakMsQ0FBQztJQUdELE9BQU8sQ0FBQyxLQUFpQjtRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNwQixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsTUFBcUIsQ0FBQztZQUNsRCxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxFQUFFO2dCQUMzQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQzthQUN2QjtTQUNGO0lBQ0gsQ0FBQztJQUVELGtCQUFrQixDQUFDLGFBQTBCO1FBQzNDLE1BQU0sYUFBYSxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUM7UUFDbEQsSUFBSSxhQUFhLEVBQUU7WUFDakIsTUFBTSxrQkFBa0IsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUM3RSxJQUFJLGtCQUFrQixFQUFFO2dCQUN0QixPQUFPLElBQUksQ0FBQzthQUNiO2lCQUFNO2dCQUNMLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQy9DO1NBQ0Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDL0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUN2RCxDQUFDO3VHQS9FVSx1QkFBdUI7MkZBQXZCLHVCQUF1QixrTUFGdkIsQ0FBQyw2QkFBNkIsQ0FBQywwQkNkNUMsczZCQWlCTTs7MkZERE8sdUJBQXVCO2tCQU5uQyxTQUFTOytCQUNFLHFCQUFxQixhQUdwQixDQUFDLDZCQUE2QixDQUFDO3FIQU9qQyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQThDTixPQUFPO3NCQUROLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIFByb3ZpZGVyLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQ2xpZW50QXBpU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NsaWVudC1hcGkuc2VydmljZSc7XHJcblxyXG5jb25zdCBTRUxFQ1RfQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUjogUHJvdmlkZXIgPSB7XHJcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUmVhY3RpdmVTZWxlY3RDb21wb25lbnQpLFxyXG4gIG11bHRpOiB0cnVlLFxyXG59O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcmVhY3RpdmUtc2VsZWN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmVhY3RpdmUtc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vcmVhY3RpdmUtc2VsZWN0LmNvbXBvbmVudC5zY3NzJyxcclxuICBwcm92aWRlcnM6IFtTRUxFQ1RfQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUl1cclxufSlcclxuZXhwb3J0IGNsYXNzIFJlYWN0aXZlU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XHJcblxyXG4gIHByaXZhdGUgb25Ub3VjaGVkOiBGdW5jdGlvbjtcclxuICBwcml2YXRlIG9uQ2hhbmdlZDogRnVuY3Rpb247XHJcbiAgcHJvdGVjdGVkIGlzRGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgaWRGaWVsZDogc3RyaW5nXHJcbiAgQElucHV0KCkgbmFtZUZpZWxkOiBzdHJpbmdcclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nXHJcbiAgQElucHV0KCkgZGF0YTogYW55XHJcbiAgcHJvdGVjdGVkIGlzT3BlbmVkOiBib29sZWFuID0gZmFsc2VcclxuICBwcm90ZWN0ZWQgc2VsZWN0ZWQ6IFJlY29yZDxzdHJpbmcsIGFueT4gfCBudWxsID0gbnVsbFxyXG4gIHByb3RlY3RlZCBzZWxlY3RlZElkOiBzdHJpbmcgfCBudW1iZXJcclxuICBpbnN0YW5jZUlkOiBzdHJpbmc7XHJcblxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwaVNlcnZpY2U6IENsaWVudEFwaVNlcnZpY2UsIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcblxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmluc3RhbmNlSWQgPSBjcnlwdG8ucmFuZG9tVVVJRCgpO1xyXG4gICAgdGhpcy5hcGlTZXJ2aWNlLmRyb3BEb3duVHJpZ2dlci5zdWJzY3JpYmUoKGUpID0+IHtcclxuICAgICAgaWYgKGUgIT09IHRoaXMuaW5zdGFuY2VJZCkge1xyXG4gICAgICAgIHRoaXMuaXNPcGVuZWQgPSBmYWxzZVxyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpXHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWw6IHN0cmluZyB8IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZElkID0gdmFsXHJcbiAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5kYXRhLmZpbHRlcigoaXRlbTogUmVjb3JkPHN0cmluZywgYW55PikgPT4gaXRlbT8uW3RoaXMuaWRGaWVsZF0gPT09IHZhbClbMF1cclxuICB9XHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlZCA9IGZuXHJcbiAgfVxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm5cclxuICB9XHJcbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5pc0Rpc2FibGVkID0gaXNEaXNhYmxlZFxyXG5cclxuICB9XHJcblxyXG4gIG9uU2VsZWN0KGl0ZW06IFJlY29yZDxzdHJpbmcsIGFueT4pIHtcclxuICAgIHRoaXMub25Ub3VjaGVkKClcclxuICAgIHRoaXMuc2VsZWN0ZWQgPSBpdGVtXHJcbiAgICB0aGlzLnNlbGVjdGVkSWQgPSBpdGVtPy5bdGhpcy5pZEZpZWxkXVxyXG4gICAgdGhpcy5pc09wZW5lZCA9IGZhbHNlXHJcbiAgICB0aGlzLm9uQ2hhbmdlZCh0aGlzLnNlbGVjdGVkSWQpXHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbiAgb25DbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgaWYgKCF0aGlzLmlzRGlzYWJsZWQpIHtcclxuICAgICAgY29uc3QgdGFyZ2V0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgaWYgKCF0aGlzLmlzQ29tcG9uZW50Q2xpY2tlZCh0YXJnZXRFbGVtZW50KSkge1xyXG4gICAgICAgIHRoaXMuaXNPcGVuZWQgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaXNDb21wb25lbnRDbGlja2VkKHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBwYXJlbnRFbGVtZW50ID0gdGFyZ2V0RWxlbWVudC5wYXJlbnRFbGVtZW50O1xyXG4gICAgaWYgKHBhcmVudEVsZW1lbnQpIHtcclxuICAgICAgY29uc3QgY2xpY2tlZE9uQ29tcG9uZW50ID0gcGFyZW50RWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ2N1c3RvbS1zZWxlY3QnKTtcclxuICAgICAgaWYgKGNsaWNrZWRPbkNvbXBvbmVudCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmlzQ29tcG9uZW50Q2xpY2tlZChwYXJlbnRFbGVtZW50KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgb3BlbkRyb3Bkb3duKCl7XHJcbiAgICB0aGlzLmlzT3BlbmVkID0gIXRoaXMuaXNPcGVuZWQ7XHJcbiAgICB0aGlzLmFwaVNlcnZpY2UuZHJvcERvd25UcmlnZ2VyLm5leHQodGhpcy5pbnN0YW5jZUlkKVxyXG4gIH1cclxuXHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjdXN0b20tc2VsZWN0XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxyXG4gICAgICAgIDxsYWJlbCAqbmdJZj1cImxhYmVsXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tsYWJlbH19PC9sYWJlbD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwib3BlbkRyb3Bkb3duKClcIiBbbmdDbGFzc109XCJpc0Rpc2FibGVkID8gJ2Rpc2FibGUnIDogJydcIiBjbGFzcz1cImZvcm0tc2VsZWN0IGRyb3BzZWxlY3RcIj5cclxuICAgICAgICAgICAgICAgIHt7c2VsZWN0ZWQ/LltuYW1lRmllbGRdfX08L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cImlzT3BlbmVkXCIgY2xhc3M9XCJjYXJkIHB5LTIgdy0xMDAgcG9zaXRpb24tYWJzb2x1dGUgZW5kLTAgei0xIGRyb3AtbGlzdFwiPlxyXG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwibGlzdC11bnN0eWxlZCBtYi0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGFcIiAoY2xpY2spPVwib25TZWxlY3QoaXRlbSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJpdGVtPy5baWRGaWVsZF0gPT09IHNlbGVjdGVkPy5baWRGaWVsZF0gPyAnYWN0aXZlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0IHB4LTUgaXRlbXMgY3Vyc29yLXBvaW50ZXIgcHktNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7e2l0ZW0/LltuYW1lRmllbGRdfX1cclxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
@@ -18,6 +18,7 @@ export class ClientApiService {
18
18
  clientId = new BehaviorSubject('');
19
19
  clientData = new BehaviorSubject(null);
20
20
  clientFormData = new BehaviorSubject({ value: null, type: null, form: null });
21
+ dropDownTrigger = new BehaviorSubject(null);
21
22
  constructor(http, gs) {
22
23
  this.http = http;
23
24
  this.gs = gs;
@@ -148,4 +149,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
148
149
  providedIn: 'root'
149
150
  }]
150
151
  }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.GlobalStateService }] });
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGFuZ28tbWFuYWdlLXNldHRpbmdzL3NyYy9saWIvc2VydmljZXMvY2xpZW50LWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEtBQUssU0FBUyxNQUFNLFlBQVksQ0FBQzs7OztBQUd4QyxNQUFNLFVBQVUsR0FBRyxpRkFBaUYsQ0FBQztBQUNyRyxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUM7QUFLaEMsTUFBTSxPQUFPLGdCQUFnQjtJQWdCUDtJQUF5QjtJQWQ3QyxZQUFZLENBQU87SUFDbkIsZ0JBQWdCLENBQVE7SUFDeEIsV0FBVyxDQUFTO0lBQ3BCLFlBQVksQ0FBUztJQUNyQixVQUFVLENBQVM7SUFDbkIsYUFBYSxDQUFRO0lBSXJCLFFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQTtJQUMxQyxVQUFVLEdBQUcsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUE7SUFDM0MsY0FBYyxHQUFHLElBQUksZUFBZSxDQUFNLEVBQUMsS0FBSyxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUMsSUFBSSxFQUFFLElBQUksRUFBQyxJQUFJLEVBQUMsQ0FBQyxDQUFBO0lBRzdFLFlBQW9CLElBQWUsRUFBVSxFQUFxQjtRQUE5QyxTQUFJLEdBQUosSUFBSSxDQUFXO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDaEUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBSyxFQUFDLEVBQUU7WUFBQyxJQUFHLENBQUMsRUFBQztnQkFDM0MsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMs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LENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsNkJBQTZCLEVBQUMsSUFBSSxDQUFDLENBQUE7SUFDaEYsQ0FBQztJQUVBLGNBQWMsQ0FBQyxNQUFXLEVBQUUsUUFBZ0I7UUFDM0MsTUFBTSxJQUFJLEdBQVMsSUFBSSxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNwQyxJQUFJLEVBQUUsVUFBVTtTQUNqQixDQUFDLENBQUM7UUFDSCxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxRQUFRLEdBQUcsZUFBZSxDQUFDLENBQUM7SUFDckQsQ0FBQzt1R0FsS1UsZ0JBQWdCOzJHQUFoQixnQkFBZ0IsY0FGZixNQUFNOzsyRkFFUCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0ICogYXMgRmlsZVNhdmVyIGZyb20gJ2ZpbGUtc2F2ZXInO1xyXG5pbXBvcnQgKiBhcyBYTFNYIGZyb20gJ3hsc3gnO1xyXG5pbXBvcnQgeyBHbG9iYWxTdGF0ZVNlcnZpY2UgfSBmcm9tICd0YW5nby1hcHAtdWktZ2xvYmFsJztcclxuY29uc3QgRVhDRUxfVFlQRSA9ICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldDtjaGFyc2V0PVVURi04JztcclxuY29uc3QgRVhDRUxfRVhURU5TSU9OID0gJy54bHN4JztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIENsaWVudEFwaVNlcnZpY2Uge1xyXG5cclxuICBjbGllbnRBcGlVcmw6c3RyaW5nXHJcbiAgbWlkZGxld2FyZUFwaVVybDpzdHJpbmc7XHJcbiAgc3RvcmVBcGlVcmw6IHN0cmluZztcclxuICByZXBvcnRBcGlVcmw6IHN0cmluZztcclxuICB1c2VyQXBpVXJsOiBzdHJpbmc7XHJcbiAgdGlja2V0c0FwaVVybDpzdHJpbmc7XHJcblxyXG5cclxuXHJcbiAgY2xpZW50SWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpXHJcbiAgY2xpZW50RGF0YSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKVxyXG4gIGNsaWVudEZvcm1EYXRhID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KHt2YWx1ZTpudWxsLCB0eXBlOm51bGwsIGZvcm06bnVsbH0pXHJcblxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6SHR0cENsaWVudCwgcHJpdmF0ZSBnczpHbG9iYWxTdGF0ZVNlcnZpY2UpIHtcclxuICAgIHRoaXMuZ3MuZW52aXJvbm1lbnQuc3Vic2NyaWJlKChlOmFueSk9PntpZihlKXtcclxuICAgICAgdGhpcy5jbGllbnRBcGlVcmwgPSBlLmNsaWVudEFwaVVybDtcclxuICAgICAgdGhpcy5taWRkbGV3YXJlQXBpVXJsID0gZS5taWRkbGV3YXJlQXBpVXJsO1xyXG4gICAgICB0aGlzLnN0b3JlQXBpVXJsID0gZS5zdG9yZUFwaVVybDtcclxuICAgICAgdGhpcy5yZXBvcnRBcGlVcmwgPSBlLnJlcG9ydEFwaVVybDtcclxuICAgICAgdGhpcy51c2VyQXBpVXJsID0gZS51c2VyQXBpVXJsO1xyXG4gICAgICB0aGlzLnRpY2tldHNBcGlVcmwgPSBlLnRpY2tldHNBcGlVcmw7XHJcbiAgICB9fSlcclxuICAgIHRoaXMuZ3MuZGF0YVJhbmdlVmFsdWUuc3Vic2NyaWJlKChlOmFueSk9PnsgICAgICBcclxuICAgICAgaWYoZSl7XHJcbiAgICAgICAgdGhpcy5jbGllbnRJZC5uZXh0KGUuY2xpZW50KVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gICB9XHJcblxyXG4gIGdldEJyYW5kRGV0YWlscyhpZDpzdHJpbmcpOk9ic2VydmFibGU8YW55PntcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuY2xpZW50QXBpVXJsfS9jbGllbnQtZGV0YWlscy8ke2lkfWApXHJcbiAgfVxyXG5cclxuICBnZXRDb3VudHJ5Q29kZXMoKTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHt0aGlzLm1pZGRsZXdhcmVBcGlVcmx9L2NvdW50cnktY29kZWAsKVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlQnJhbmRJbmZvKGlkOnN0cmluZywgZnJvbWRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5jbGllbnRBcGlVcmx9L2JyYW5kLWluZm8vJHtpZH1gLCBmcm9tZGF0YSApXHJcbiAgfVxyXG5cclxuICB1cGRhdGVCaWxsaW5nRGV0YWlscyhpZDpzdHJpbmcsIGZyb21kYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuY2xpZW50QXBpVXJsfS9iaWxsaW5nLWRldGFpbHMvJHtpZH1gLCBmcm9tZGF0YSApXHJcbiAgfVxyXG5cclxuICB1cGRhdGVTaWduYXRvcnlEZXRhaWxzKGlkOnN0cmluZywgZnJvbWRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5jbGllbnRBcGlVcmx9L3NpZ25hdG9yeS1kZXRhaWxzLyR7aWR9YCwgZnJvbWRhdGEgKVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlVGlja2V0Q29uZmlndXJhdGlvbihpZDpzdHJpbmcsIGZyb21kYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuY2xpZW50QXBpVXJsfS90aWNrZXQtY29uZmlndXJhdGlvbi8ke2lkfWAsIGZyb21kYXRhIClcclxuICB9XHJcblxyXG4gIHVwZGF0ZUZlYXR1cmVDb25maWd1cmF0aW9uKGlkOnN0cmluZywgZnJvbWRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5jbGllbnRBcGlVcmx9L2ZlYXR1cmUtY29uZmlndXJhdGlvbi8ke2lkfWAsIGZyb21kYXRhIClcclxuICB9XHJcblxyXG4gIHVwZGF0ZURvbWFpbkRldGFpbENvbmZpZ3VyYXRpb24oaWQ6c3RyaW5nLCBmcm9tZGF0YTphbnkpOk9ic2VydmFibGU8YW55PnsgXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmNsaWVudEFwaVVybH0vZG9tYWluLWRldGFpbHMvJHtpZH1gLCBmcm9tZGF0YSApXHJcbiAgfVxyXG4gIHVwZGF0ZVVzZXJDb25maWd1cmF0aW9uKGlkOnN0cmluZywgZnJvbWRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5jbGllbnRBcGlVcmx9L3VzZXItY29uZmlndXJhdGlvbi8ke2lkfWAsIGZyb21kYXRhIClcclxuICB9XHJcbiAgdXBkYXRlRG9jdW1lbnRzKGlkOnN0cmluZywgZnJvbWRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5jbGllbnRBcGlVcmx9L2RvY3VtZW50cy8ke2lkfWAsIGZyb21kYXRhIClcclxuICB9XHJcbiAgZ2V0U3RvcmVMaXN0KGlkOnN0cmluZyk6T2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5zdG9yZUFwaVVybH0vZ2V0LXN0b3Jlcz9jbGllbnRJZD0ke2lkfWApXHJcbiAgfVxyXG5cclxuICB1cGRhdGVhdWRpdENvbmZpZ3VyYXRpb24oZnJvbWRhdGE6YW55LCBpZDpzdHJpbmcpOk9ic2VydmFibGU8YW55PnsgXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5jbGllbnRBcGlVcmx9L2F1ZGl0LWNvbmZpZ3VyYXRpb24vJHtpZH1gLCBmcm9tZGF0YSApXHJcbiAgfVxyXG5cclxuICBnZXRBdWRpdENvbmZpZyhpZDpzdHJpbmcpOk9ic2VydmFibGU8YW55PntcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuY2xpZW50QXBpVXJsfS9hdWRpdC1jb25maWd1cmF0aW9uLyR7aWR9YClcclxuICB9XHJcblxyXG4gIGFkZFJlcG9ydChpZDpzdHJpbmcsIGRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5yZXBvcnRBcGlVcmx9L2NyZWF0ZS1yZXBvcnQvJHtpZH1gLCBkYXRhKVxyXG4gIH1cclxuXHJcbiAgZ2V0Q2xpZW50UmVwb3J0cyhpZDpzdHJpbmcpOk9ic2VydmFibGU8YW55PntcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMucmVwb3J0QXBpVXJsfS9nZXQtY2xpZW50LXJlcG9ydHMvJHtpZH1gKVxyXG4gIH1cclxuXHJcbiAgZ2V0U2luZ2xlUmVwb3J0KGlkOnN0cmluZyk6T2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5yZXBvcnRBcGlVcmx9L2dldC1yZXBvcnQvJHtpZH1gKVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlUmVwb3J0KGlkOnN0cmluZywgZGF0YTphbnkpOk9ic2VydmFibGU8YW55PntcclxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMucmVwb3J0QXBpVXJsfS91cGRhdGUtcmVwb3J0LyR7aWR9YCwgZGF0YSlcclxuICB9XHJcblxyXG4gIGdldENzbVVzZXJzKCk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuY2xpZW50QXBpVXJsfS9nZXQtY3NtLXVzZXJzYCApXHJcbiAgfVxyXG5cclxuICBnZXRPcHNVc2VycygpOk9ic2VydmFibGU8YW55PnsgXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHt0aGlzLmNsaWVudEFwaVVybH0vZ2V0LW9wcy11c2Vyc2AgKVxyXG4gIH1cclxuXHJcbiAgZ2V0QWxsQ291bnRyaWVzKCk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMubWlkZGxld2FyZUFwaVVybH0vZ2V0LWNvdW50cmllc2AgKVxyXG4gIH1cclxuXHJcbiAgZ2V0QWxsU3RhdGVzKGNvdW50cnk6c3RyaW5nKTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5taWRkbGV3YXJlQXBpVXJsfS9nZXQtY291bnRyeS1zdGF0ZXM/Y291bnRyeT0ke2NvdW50cnl9YCApXHJcbiAgfVxyXG5cclxuICBnZXRBbGxDaXRpZXMoY291bnRyeTpzdHJpbmcsIHN0YXRlOnN0cmluZyk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMubWlkZGxld2FyZUFwaVVybH0vZ2V0LXN0YXRlLWNpdGllcz9jb3VudHJ5PSR7Y291bnRyeX0mc3RhdGU9JHtzdGF0ZX1gIClcclxuICB9XHJcblxyXG4gIHNwb2NUYWJsZURhdGEoIGRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5zdG9yZUFwaVVybH0vZ2V0LXNwb2MtbGlzdGAsIGRhdGEpXHJcbiAgfVxyXG5cclxuICBzcG9jVGFibGVEYXRhRXhwb3J0KCBkYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuc3RvcmVBcGlVcmx9L2dldC1zcG9jLWxpc3RgLCBkYXRhLCB7cmVzcG9uc2VUeXBlOiAnYXJyYXlidWZmZXInfSlcclxuICB9XHJcblxyXG4gIGdldFNwb2NEZXRhaWxzKHN0b3JlSWQ6c3RyaW5nLCBzcG9jSWQ6c3RyaW5nKTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5zdG9yZUFwaVVybH0vZ2V0LXNwb2MvJHtzdG9yZUlkfWAsIHtzcG9jSWQ6c3BvY0lkfSlcclxuICB9XHJcblxyXG4gIGRlbGV0ZVNwb2NEZXRhaWxzKHN0b3JlSWQ6c3RyaW5nLCBzcG9jSWQ6c3RyaW5nKTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5zdG9yZUFwaVVybH0vZGVsZXRlLXNwb2MvJHtzdG9yZUlkfWAsIHtzcG9jSWQ6c3BvY0lkfSlcclxuICB9XHJcblxyXG4gIHVwZGF0ZVNwb2NEZXRhaWxzKHN0b3JlSWQ6c3RyaW5nLCBkYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuc3RvcmVBcGlVcmx9L3VwZGF0ZS1zcG9jLyR7c3RvcmVJZH1gLCBkYXRhKVxyXG4gIH1cclxuXHJcbiAgZ2V0QWN0aXZpdHlMb2dzKGRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5jbGllbnRBcGlVcmx9L2FjdGl2aXR5LWxvZ2AsIGRhdGEpXHJcbiAgfVxyXG5cclxuICBhc3NpZ25Dc20oZGF0YTphbnkpOk9ic2VydmFibGU8YW55PnsgXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy51c2VyQXBpVXJsfS9hc3NpZ24tY2xpZW50YCwgZGF0YSApXHJcbiAgfVxyXG5cclxuICBnZXRBc3NpZ25lZFVzZXJzKGNsaWVudElkOnN0cmluZyk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMudXNlckFwaVVybH0vZ2V0LWFzc2lnbi1jbGllbnQ/Y2xpZW50SWQ9JHtjbGllbnRJZH1gIClcclxuICB9XHJcbiAgXHJcbiAgZW1haWxVc2VyTGlzdChkYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLnRpY2tldHNBcGlVcmx9L2luZnJhL2VtYWlsVXNlckxpc3RgLGRhdGEpXHJcbiAgfVxyXG5cclxuICBzYXZlSW5mcmFFbWFpbENvbmZpZyhkYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLnRpY2tldHNBcGlVcmx9L2luZnJhL3NhdmVJbmZyYUVtYWlsQ29uZmlnYCxkYXRhKVxyXG4gIH1cclxuXHJcbiAgIHNhdmVBc1RlbXBsYXRlKGJ1ZmZlcjogYW55LCBmaWxlTmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBkYXRhOiBCbG9iID0gbmV3IEJsb2IoW2J1ZmZlcl0sIHtcclxuICAgICAgdHlwZTogRVhDRUxfVFlQRVxyXG4gICAgfSk7XHJcbiAgICBGaWxlU2F2ZXIuc2F2ZUFzKGRhdGEsIGZpbGVOYW1lICsgRVhDRUxfRVhURU5TSU9OKTtcclxuICB9XHJcbiAgXHJcbn1cclxuIl19
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGFuZ28tbWFuYWdlLXNldHRpbmdzL3NyYy9saWIvc2VydmljZXMvY2xpZW50LWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEtBQUssU0FBUyxNQUFNLFlBQVksQ0FBQzs7OztBQUd4QyxNQUFNLFVBQVUsR0FBRyxpRkFBaUYsQ0FBQztBQUNyRyxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUM7QUFLaEMsTUFBTSxPQUFPLGdCQUFnQjtJQWtCUDtJQUF5QjtJQWhCN0MsWUFBWSxDQUFPO0lBQ25CLGdCQUFnQixDQUFRO0lBQ3hCLFdBQVcsQ0FBUztJQUNwQixZQUFZLENBQVM7SUFDckIsVUFBVSxDQUFTO0lBQ25CLGFBQWEsQ0FBUTtJQUlyQixRQUFRLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUE7SUFDMUMsVUFBVSxHQUFHLElBQUksZUFBZSxDQUFNLElBQUksQ0FBQyxDQUFBO0lBQzNDLGNBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBTSxFQUFDLEtBQUssRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUMsSUFBSSxFQUFDLENBQUMsQ0FBQTtJQUM3RSxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQU0sSUFBSSxDQUFDLENBQUE7SUFJaEQsWUFBb0IsSUFBZSxFQUFVLEVBQXFCO1FBQTlDLFNBQUksR0FBSixJQUFJLENBQVc7UUFBVSxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUNoRSxJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFLLEVBQUMsRUFBRTtZQUFDLElBQUcs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SUFFRCxvQkFBb0IsQ0FBQyxJQUFRO1FBQzNCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSw2QkFBNkIsRUFBQyxJQUFJLENBQUMsQ0FBQTtJQUNoRixDQUFDO0lBRUEsY0FBYyxDQUFDLE1BQVcsRUFBRSxRQUFnQjtRQUMzQyxNQUFNLElBQUksR0FBUyxJQUFJLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3BDLElBQUksRUFBRSxVQUFVO1NBQ2pCLENBQUMsQ0FBQztRQUNILFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLFFBQVEsR0FBRyxlQUFlLENBQUMsQ0FBQztJQUNyRCxDQUFDO3VHQXBLVSxnQkFBZ0I7MkdBQWhCLGdCQUFnQixjQUZmLE1BQU07OzJGQUVQLGdCQUFnQjtrQkFINUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgKiBhcyBGaWxlU2F2ZXIgZnJvbSAnZmlsZS1zYXZlcic7XHJcbmltcG9ydCAqIGFzIFhMU1ggZnJvbSAneGxzeCc7XHJcbmltcG9ydCB7IEdsb2JhbFN0YXRlU2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1nbG9iYWwnO1xyXG5jb25zdCBFWENFTF9UWVBFID0gJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0O2NoYXJzZXQ9VVRGLTgnO1xyXG5jb25zdCBFWENFTF9FWFRFTlNJT04gPSAnLnhsc3gnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2xpZW50QXBpU2VydmljZSB7XHJcblxyXG4gIGNsaWVudEFwaVVybDpzdHJpbmdcclxuICBtaWRkbGV3YXJlQXBpVXJsOnN0cmluZztcclxuICBzdG9yZUFwaVVybDogc3RyaW5nO1xyXG4gIHJlcG9ydEFwaVVybDogc3RyaW5nO1xyXG4gIHVzZXJBcGlVcmw6IHN0cmluZztcclxuICB0aWNrZXRzQXBpVXJsOnN0cmluZztcclxuXHJcblxyXG5cclxuICBjbGllbnRJZCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJylcclxuICBjbGllbnREYXRhID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnk+KG51bGwpXHJcbiAgY2xpZW50Rm9ybURhdGEgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4oe3ZhbHVlOm51bGwsIHR5cGU6bnVsbCwgZm9ybTpudWxsfSlcclxuICBkcm9wRG93blRyaWdnZXIgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4obnVsbClcclxuXHJcblxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6SHR0cENsaWVudCwgcHJpdmF0ZSBnczpHbG9iYWxTdGF0ZVNlcnZpY2UpIHtcclxuICAgIHRoaXMuZ3MuZW52aXJvbm1lbnQuc3Vic2NyaWJlKChlOmFueSk9PntpZihlKXtcclxuICAgICAgdGhpcy5jbGllbnRBcGlVcmwgPSBlLmNsaWVudEFwaVVybDtcclxuICAgICAgdGhpcy5taWRkbGV3YXJlQXBpVXJsID0gZS5taWRkbGV3YXJlQXBpVXJsO1xyXG4gICAgICB0aGlzLnN0b3JlQXBpVXJsID0gZS5zdG9yZUFwaVVybDtcclxuICAgICAgdGhpcy5yZXBvcnRBcGlVcmwgPSBlLnJlcG9ydEFwaVVybDtcclxuICAgICAgdGhpcy51c2VyQXBpVXJsID0gZS51c2VyQXBpVXJsO1xyXG4gICAgICB0aGlzLnRpY2tldHNBcGlVcmwgPSBlLnRpY2tldHNBcGlVcmw7XHJcbiAgICB9fSlcclxuICAgIHRoaXMuZ3MuZGF0YVJhbmdlVmFsdWUuc3Vic2NyaWJlKChlOmFueSk9PnsgICAgICBcclxuICAgICAgaWYoZSl7XHJcbiAgICAgICAgdGhpcy5jbGllbnRJZC5uZXh0KGUuY2xpZW50KVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gICB9XHJcblxyXG4gIGdldEJyYW5kRGV0YWlscyhpZDpzdHJpbmcpOk9ic2VydmFibGU8YW55PntcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuY2xpZW50QXBpVXJsfS9jbGllbnQtZGV0YWlscy8ke2lkfWApXHJcbiAgfVxyXG5cclxuICBnZXRDb3VudHJ5Q29kZXMoKTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHt0aGlzLm1pZGRsZXdhcmVBcGlVcmx9L2NvdW50cnktY29kZWAsKVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlQnJhbmRJbmZvKGlkOnN0cmluZywgZnJvbWRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5jbGllbnRBcGlVcmx9L2JyYW5kLWluZm8vJHtpZH1gLCBmcm9tZGF0YSApXHJcbiAgfVxyXG5cclxuICB1cGRhdGVCaWxsaW5nRGV0YWlscyhpZDpzdHJpbmcsIGZyb21kYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuY2xpZW50QXBpVXJsfS9iaWxsaW5nLWRldGFpbHMvJHtpZH1gLCBmcm9tZGF0YSApXHJcbiAgfVxyXG5cclxuICB1cGRhdGVTaWduYXRvcnlEZXRhaWxzKGlkOnN0cmluZywgZnJvbWRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5jbGllbnRBcGlVcmx9L3NpZ25hdG9yeS1kZXRhaWxzLyR7aWR9YCwgZnJvbWRhdGEgKVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlVGlja2V0Q29uZmlndXJhdGlvbihpZDpzdHJpbmcsIGZyb21kYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuY2xpZW50QXBpVXJsfS90aWNrZXQtY29uZmlndXJhdGlvbi8ke2lkfWAsIGZyb21kYXRhIClcclxuICB9XHJcblxyXG4gIHVwZGF0ZUZlYXR1cmVDb25maWd1cmF0aW9uKGlkOnN0cmluZywgZnJvbWRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5jbGllbnRBcGlVcmx9L2ZlYXR1cmUtY29uZmlndXJhdGlvbi8ke2lkfWAsIGZyb21kYXRhIClcclxuICB9XHJcblxyXG4gIHVwZGF0ZURvbWFpbkRldGFpbENvbmZpZ3VyYXRpb24oaWQ6c3RyaW5nLCBmcm9tZGF0YTphbnkpOk9ic2VydmFibGU8YW55PnsgXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmNsaWVudEFwaVVybH0vZG9tYWluLWRldGFpbHMvJHtpZH1gLCBmcm9tZGF0YSApXHJcbiAgfVxyXG4gIHVwZGF0ZVVzZXJDb25maWd1cmF0aW9uKGlkOnN0cmluZywgZnJvbWRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5jbGllbnRBcGlVcmx9L3VzZXItY29uZmlndXJhdGlvbi8ke2lkfWAsIGZyb21kYXRhIClcclxuICB9XHJcbiAgdXBkYXRlRG9jdW1lbnRzKGlkOnN0cmluZywgZnJvbWRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5jbGllbnRBcGlVcmx9L2RvY3VtZW50cy8ke2lkfWAsIGZyb21kYXRhIClcclxuICB9XHJcbiAgZ2V0U3RvcmVMaXN0KGlkOnN0cmluZyk6T2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5zdG9yZUFwaVVybH0vZ2V0LXN0b3Jlcz9jbGllbnRJZD0ke2lkfWApXHJcbiAgfVxyXG5cclxuICB1cGRhdGVhdWRpdENvbmZpZ3VyYXRpb24oZnJvbWRhdGE6YW55LCBpZDpzdHJpbmcpOk9ic2VydmFibGU8YW55PnsgXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5jbGllbnRBcGlVcmx9L2F1ZGl0LWNvbmZpZ3VyYXRpb24vJHtpZH1gLCBmcm9tZGF0YSApXHJcbiAgfVxyXG5cclxuICBnZXRBdWRpdENvbmZpZyhpZDpzdHJpbmcpOk9ic2VydmFibGU8YW55PntcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuY2xpZW50QXBpVXJsfS9hdWRpdC1jb25maWd1cmF0aW9uLyR7aWR9YClcclxuICB9XHJcblxyXG4gIGFkZFJlcG9ydChpZDpzdHJpbmcsIGRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5yZXBvcnRBcGlVcmx9L2NyZWF0ZS1yZXBvcnQvJHtpZH1gLCBkYXRhKVxyXG4gIH1cclxuXHJcbiAgZ2V0Q2xpZW50UmVwb3J0cyhpZDpzdHJpbmcpOk9ic2VydmFibGU8YW55PntcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMucmVwb3J0QXBpVXJsfS9nZXQtY2xpZW50LXJlcG9ydHMvJHtpZH1gKVxyXG4gIH1cclxuXHJcbiAgZ2V0U2luZ2xlUmVwb3J0KGlkOnN0cmluZyk6T2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5yZXBvcnRBcGlVcmx9L2dldC1yZXBvcnQvJHtpZH1gKVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlUmVwb3J0KGlkOnN0cmluZywgZGF0YTphbnkpOk9ic2VydmFibGU8YW55PntcclxuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMucmVwb3J0QXBpVXJsfS91cGRhdGUtcmVwb3J0LyR7aWR9YCwgZGF0YSlcclxuICB9XHJcblxyXG4gIGdldENzbVVzZXJzKCk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuY2xpZW50QXBpVXJsfS9nZXQtY3NtLXVzZXJzYCApXHJcbiAgfVxyXG5cclxuICBnZXRPcHNVc2VycygpOk9ic2VydmFibGU8YW55PnsgXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHt0aGlzLmNsaWVudEFwaVVybH0vZ2V0LW9wcy11c2Vyc2AgKVxyXG4gIH1cclxuXHJcbiAgZ2V0QWxsQ291bnRyaWVzKCk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMubWlkZGxld2FyZUFwaVVybH0vZ2V0LWNvdW50cmllc2AgKVxyXG4gIH1cclxuXHJcbiAgZ2V0QWxsU3RhdGVzKGNvdW50cnk6c3RyaW5nKTpPYnNlcnZhYmxlPGFueT57IFxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5taWRkbGV3YXJlQXBpVXJsfS9nZXQtY291bnRyeS1zdGF0ZXM/Y291bnRyeT0ke2NvdW50cnl9YCApXHJcbiAgfVxyXG5cclxuICBnZXRBbGxDaXRpZXMoY291bnRyeTpzdHJpbmcsIHN0YXRlOnN0cmluZyk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMubWlkZGxld2FyZUFwaVVybH0vZ2V0LXN0YXRlLWNpdGllcz9jb3VudHJ5PSR7Y291bnRyeX0mc3RhdGU9JHtzdGF0ZX1gIClcclxuICB9XHJcblxyXG4gIHNwb2NUYWJsZURhdGEoIGRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5zdG9yZUFwaVVybH0vZ2V0LXNwb2MtbGlzdGAsIGRhdGEpXHJcbiAgfVxyXG5cclxuICBzcG9jVGFibGVEYXRhRXhwb3J0KCBkYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuc3RvcmVBcGlVcmx9L2dldC1zcG9jLWxpc3RgLCBkYXRhLCB7cmVzcG9uc2VUeXBlOiAnYXJyYXlidWZmZXInfSlcclxuICB9XHJcblxyXG4gIGdldFNwb2NEZXRhaWxzKHN0b3JlSWQ6c3RyaW5nLCBzcG9jSWQ6c3RyaW5nKTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5zdG9yZUFwaVVybH0vZ2V0LXNwb2MvJHtzdG9yZUlkfWAsIHtzcG9jSWQ6c3BvY0lkfSlcclxuICB9XHJcblxyXG4gIGRlbGV0ZVNwb2NEZXRhaWxzKHN0b3JlSWQ6c3RyaW5nLCBzcG9jSWQ6c3RyaW5nKTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5zdG9yZUFwaVVybH0vZGVsZXRlLXNwb2MvJHtzdG9yZUlkfWAsIHtzcG9jSWQ6c3BvY0lkfSlcclxuICB9XHJcblxyXG4gIHVwZGF0ZVNwb2NEZXRhaWxzKHN0b3JlSWQ6c3RyaW5nLCBkYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+e1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuc3RvcmVBcGlVcmx9L3VwZGF0ZS1zcG9jLyR7c3RvcmVJZH1gLCBkYXRhKVxyXG4gIH1cclxuXHJcbiAgZ2V0QWN0aXZpdHlMb2dzKGRhdGE6YW55KTpPYnNlcnZhYmxlPGFueT57XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5jbGllbnRBcGlVcmx9L2FjdGl2aXR5LWxvZ2AsIGRhdGEpXHJcbiAgfVxyXG5cclxuICBhc3NpZ25Dc20oZGF0YTphbnkpOk9ic2VydmFibGU8YW55PnsgXHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy51c2VyQXBpVXJsfS9hc3NpZ24tY2xpZW50YCwgZGF0YSApXHJcbiAgfVxyXG5cclxuICBnZXRBc3NpZ25lZFVzZXJzKGNsaWVudElkOnN0cmluZyk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMudXNlckFwaVVybH0vZ2V0LWFzc2lnbi1jbGllbnQ/Y2xpZW50SWQ9JHtjbGllbnRJZH1gIClcclxuICB9XHJcbiAgXHJcbiAgZW1haWxVc2VyTGlzdChkYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLnRpY2tldHNBcGlVcmx9L2luZnJhL2VtYWlsVXNlckxpc3RgLGRhdGEpXHJcbiAgfVxyXG5cclxuICBzYXZlSW5mcmFFbWFpbENvbmZpZyhkYXRhOmFueSk6T2JzZXJ2YWJsZTxhbnk+eyBcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLnRpY2tldHNBcGlVcmx9L2luZnJhL3NhdmVJbmZyYUVtYWlsQ29uZmlnYCxkYXRhKVxyXG4gIH1cclxuXHJcbiAgIHNhdmVBc1RlbXBsYXRlKGJ1ZmZlcjogYW55LCBmaWxlTmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBjb25zdCBkYXRhOiBCbG9iID0gbmV3IEJsb2IoW2J1ZmZlcl0sIHtcclxuICAgICAgdHlwZTogRVhDRUxfVFlQRVxyXG4gICAgfSk7XHJcbiAgICBGaWxlU2F2ZXIuc2F2ZUFzKGRhdGEsIGZpbGVOYW1lICsgRVhDRUxfRVhURU5TSU9OKTtcclxuICB9XHJcbiAgXHJcbn1cclxuIl19
@@ -44,6 +44,7 @@ class ClientApiService {
44
44
  clientId = new BehaviorSubject('');
45
45
  clientData = new BehaviorSubject(null);
46
46
  clientFormData = new BehaviorSubject({ value: null, type: null, form: null });
47
+ dropDownTrigger = new BehaviorSubject(null);
47
48
  constructor(http, gs) {
48
49
  this.http = http;
49
50
  this.gs = gs;
@@ -239,6 +240,8 @@ const SELECT_CONTROL_VALUE_ACCESSOR = {
239
240
  multi: true,
240
241
  };
241
242
  class ReactiveSelectComponent {
243
+ apiService;
244
+ cd;
242
245
  onTouched;
243
246
  onChanged;
244
247
  isDisabled;
@@ -249,6 +252,20 @@ class ReactiveSelectComponent {
249
252
  isOpened = false;
250
253
  selected = null;
251
254
  selectedId;
255
+ instanceId;
256
+ constructor(apiService, cd) {
257
+ this.apiService = apiService;
258
+ this.cd = cd;
259
+ }
260
+ ngOnInit() {
261
+ this.instanceId = crypto.randomUUID();
262
+ this.apiService.dropDownTrigger.subscribe((e) => {
263
+ if (e !== this.instanceId) {
264
+ this.isOpened = false;
265
+ this.cd.detectChanges();
266
+ }
267
+ });
268
+ }
252
269
  writeValue(val) {
253
270
  this.selectedId = val;
254
271
  this.selected = this.data.filter((item) => item?.[this.idField] === val)[0];
@@ -290,13 +307,17 @@ class ReactiveSelectComponent {
290
307
  }
291
308
  return false;
292
309
  }
293
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ReactiveSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
294
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: ReactiveSelectComponent, selector: "lib-reactive-select", inputs: { idField: "idField", nameField: "nameField", label: "label", data: "data" }, host: { listeners: { "document:click": "onClick($event)" } }, providers: [SELECT_CONTROL_VALUE_ACCESSOR], ngImport: i0, template: "<div class=\"custom-select\">\r\n <div class=\"form-group\">\r\n <label *ngIf=\"label\" class=\"form-label\">{{label}}</label>\r\n <div class=\"position-relative\">\r\n <div (click)=\"isOpened = !isOpened;\" [ngClass]=\"isDisabled ? 'disable' : ''\" class=\"form-select dropselect\">\r\n {{selected?.[nameField]}}</div>\r\n <div *ngIf=\"isOpened\" class=\"card py-2 w-100 position-absolute end-0 z-1 drop-list\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li *ngFor=\"let item of data\" (click)=\"onSelect(item)\"\r\n [ngClass]=\"item?.[idField] === selected?.[idField] ? 'active' : ''\"\r\n class=\"text px-5 items cursor-pointer py-4\">\r\n {{item?.[nameField]}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".custom-select .items:hover,.custom-select .tems.focus,.custom-select .items.active,.custom-select .camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.custom-select .drop-list{max-height:300px;overflow:scroll}.custom-select .dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important;cursor:default;white-space:nowrap}.custom-select .text{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.custom-select .disable{pointer-events:none;background-color:#f9fafb!important}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
310
+ openDropdown() {
311
+ this.isOpened = !this.isOpened;
312
+ this.apiService.dropDownTrigger.next(this.instanceId);
313
+ }
314
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ReactiveSelectComponent, deps: [{ token: ClientApiService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
315
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: ReactiveSelectComponent, selector: "lib-reactive-select", inputs: { idField: "idField", nameField: "nameField", label: "label", data: "data" }, host: { listeners: { "document:click": "onClick($event)" } }, providers: [SELECT_CONTROL_VALUE_ACCESSOR], ngImport: i0, template: "<div class=\"custom-select\">\r\n <div class=\"form-group\">\r\n <label *ngIf=\"label\" class=\"form-label\">{{label}}</label>\r\n <div class=\"position-relative\">\r\n <div (click)=\"openDropdown()\" [ngClass]=\"isDisabled ? 'disable' : ''\" class=\"form-select dropselect\">\r\n {{selected?.[nameField]}}</div>\r\n <div *ngIf=\"isOpened\" class=\"card py-2 w-100 position-absolute end-0 z-1 drop-list\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li *ngFor=\"let item of data\" (click)=\"onSelect(item)\"\r\n [ngClass]=\"item?.[idField] === selected?.[idField] ? 'active' : ''\"\r\n class=\"text px-5 items cursor-pointer py-4\">\r\n {{item?.[nameField]}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".custom-select .items:hover,.custom-select .tems.focus,.custom-select .items.active,.custom-select .camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.custom-select .drop-list{max-height:300px;overflow:scroll}.custom-select .dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important;cursor:default;white-space:nowrap}.custom-select .text{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.custom-select .disable{pointer-events:none;background-color:#f9fafb!important}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
295
316
  }
296
317
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: ReactiveSelectComponent, decorators: [{
297
318
  type: Component,
298
- args: [{ selector: 'lib-reactive-select', providers: [SELECT_CONTROL_VALUE_ACCESSOR], template: "<div class=\"custom-select\">\r\n <div class=\"form-group\">\r\n <label *ngIf=\"label\" class=\"form-label\">{{label}}</label>\r\n <div class=\"position-relative\">\r\n <div (click)=\"isOpened = !isOpened;\" [ngClass]=\"isDisabled ? 'disable' : ''\" class=\"form-select dropselect\">\r\n {{selected?.[nameField]}}</div>\r\n <div *ngIf=\"isOpened\" class=\"card py-2 w-100 position-absolute end-0 z-1 drop-list\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li *ngFor=\"let item of data\" (click)=\"onSelect(item)\"\r\n [ngClass]=\"item?.[idField] === selected?.[idField] ? 'active' : ''\"\r\n class=\"text px-5 items cursor-pointer py-4\">\r\n {{item?.[nameField]}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".custom-select .items:hover,.custom-select .tems.focus,.custom-select .items.active,.custom-select .camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.custom-select .drop-list{max-height:300px;overflow:scroll}.custom-select .dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important;cursor:default;white-space:nowrap}.custom-select .text{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.custom-select .disable{pointer-events:none;background-color:#f9fafb!important}\n"] }]
299
- }], propDecorators: { idField: [{
319
+ args: [{ selector: 'lib-reactive-select', providers: [SELECT_CONTROL_VALUE_ACCESSOR], template: "<div class=\"custom-select\">\r\n <div class=\"form-group\">\r\n <label *ngIf=\"label\" class=\"form-label\">{{label}}</label>\r\n <div class=\"position-relative\">\r\n <div (click)=\"openDropdown()\" [ngClass]=\"isDisabled ? 'disable' : ''\" class=\"form-select dropselect\">\r\n {{selected?.[nameField]}}</div>\r\n <div *ngIf=\"isOpened\" class=\"card py-2 w-100 position-absolute end-0 z-1 drop-list\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li *ngFor=\"let item of data\" (click)=\"onSelect(item)\"\r\n [ngClass]=\"item?.[idField] === selected?.[idField] ? 'active' : ''\"\r\n class=\"text px-5 items cursor-pointer py-4\">\r\n {{item?.[nameField]}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".custom-select .items:hover,.custom-select .tems.focus,.custom-select .items.active,.custom-select .camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.custom-select .drop-list{max-height:300px;overflow:scroll}.custom-select .dropselect{color:var(--Gray-500, #667085);font-family:Inter;font-size:16px;font-style:normal;font-weight:400;line-height:24px;height:45px!important;cursor:default;white-space:nowrap}.custom-select .text{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.custom-select .disable{pointer-events:none;background-color:#f9fafb!important}\n"] }]
320
+ }], ctorParameters: () => [{ type: ClientApiService }, { type: i0.ChangeDetectorRef }], propDecorators: { idField: [{
300
321
  type: Input
301
322
  }], nameField: [{
302
323
  type: Input