ecabs-components 1.1.68 → 1.1.70

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/README.md CHANGED
@@ -25,6 +25,9 @@ To get more help on the Angular CLI use `ng help` or go check out the [Angular C
25
25
 
26
26
  ## Version History
27
27
 
28
+ - **v1.1.70** — Improve `EcabsCheckboxV2` with new `checked` input and dynamic label styles.
29
+ - Update border color for `EcabsPhone` and `EcabsTextarea`.
30
+ - **v1.1.69** — Use `--color-gray-300` instead of `--color-gray-100` for `form-input--suffix`.
28
31
  - **v1.1.68** — Add `isVisible` callback for `SidebarMenuItem` to support dynamic visibility based on context.
29
32
  - **v1.1.67** — Add support for optional "to" (end date) for `EcabsDateRangePickerV2Component`.
30
33
  - Add allow cross-midnight time ranges for `EcabsTimeRangeInputV2Component`.
@@ -88,7 +88,7 @@ export class EcabsCheckboxToggleComponent extends EcabsElementBaseComponent {
88
88
  useExisting: EcabsCheckboxToggleComponent,
89
89
  multi: true,
90
90
  },
91
- ], viewQueries: [{ propertyName: "matCheckbox", first: true, predicate: MatCheckbox, descendants: true }, { propertyName: "matSlideToggle", first: true, predicate: MatSlideToggle, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mat-checkbox\r\n (change)=\"change($event)\"\r\n (click)=\"onClick($event)\"\r\n (blur)=\"onBlur()\"\r\n [checked]=\"checked\"\r\n [indeterminate]=\"indeterminate\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [id]=\"name\"\r\n [labelPosition]=\"labelPosition\"\r\n [ngClass]=\"{ 'indeterminate': indeterminate }\"\r\n *ngSwitchCase=\"'checkbox'\"\r\n >\r\n {{ text }}\r\n </mat-checkbox>\r\n\r\n <mat-slide-toggle\r\n (change)=\"change($event)\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [labelPosition]=\"labelPosition\"\r\n *ngSwitchCase=\"'toggle'\"\r\n >{{ text }}</mat-slide-toggle\r\n >\r\n </ng-container>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--mat-standard-button-toggle-shape: calc-rem(8px);--mat-option-label-text-color: var(--color-gray-900);--mat-option-focus-state-layer-color: var(--color-gray-100);--mat-option-hover-state-layer-color: var(--color-gray-50);--mat-divider-color: var(--color-gray-100);--mat-select-placeholder-text-color: var(--color-gray-400);--color-black: #020618;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CAD5E2;--color-gray-400: #90A1B9;--color-gray-500: #62748E;--color-gray-600: #45556C;--color-gray-700: #314158;--color-gray-800: #1D293D;--color-gray-900: #0F172B;--color-gray-950: #020618;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #075145;--color-success--opacity: #affebf;--color-success-rgb: 175, 254, 191;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5);--mat-option-label-text-size: 13px}.form-field__subscript--wrapper,form-field__subscript--wrapper,.form-field--required .form-field__label:after,form-field--required .form-field__label:after{position:absolute;content:\"\"}.form-field--required .form-field__label:after,form-field--required .form-field__label:after{content:\"*\"!important;margin-left:.2rem;margin-top:2px;color:var(--color-error)}.form-field,form-field{margin-bottom:1rem;position:relative}.form-field__label,form-field__label{font-size:12px;font-size:.75rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-500);cursor:pointer}.form-field__label .icon,form-field__label .icon{font-size:16px;font-size:1rem;display:inline;vertical-align:middle;margin-left:.375rem}.form-field__label-note,form-field__label-note{font-size:14px;font-size:.875rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-400);cursor:pointer}.form-field__input,form-field__input{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;border-radius:6px;border:1px solid var(--color-gray-300);color:var(--color-black);line-height:1.5}.form-field__input:focus,form-field__input:focus{border-color:var(--color-brand-dark)}.form-field__input:focus-visible,form-field__input:focus-visible{outline:none}.form-field__input--wrapper,form-field__input--wrapper{display:flex;position:relative;line-height:1}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,form-field__input--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-100);transform:translateY(-50%)}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,.form-field__input--suffix i,.form-field__textarea--prefix i,form-field__textarea--prefix i,.form-field__input--prefix i,form-field__input--prefix i,.form-field__input--suffix .mat-icon,.form-field__textarea--prefix .mat-icon,form-field__textarea--prefix .mat-icon,.form-field__input--prefix .mat-icon,form-field__input--prefix .mat-icon,form-field__input--suffix,form-field__input--suffix i,form-field__input--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__input--prefix,form-field__input--prefix{right:unset;left:1rem}.form-field__input--disabled,form-field__input--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__input--invalid,form-field__input--invalid{border-color:var(--color-error);color:var(--color-error)}.form-field__textarea,form-field__textarea{font-size:16px;font-size:1rem;display:block;width:100%;padding:1rem;border-radius:6px;border:1px solid var(--color-gray-200);color:var(--color-black);line-height:1.5}.form-field__textarea:focus,form-field__textarea:focus{border-color:var(--color-brand-dark)}.form-field__textarea--wrapper,form-field__textarea--wrapper{display:flex;position:relative;line-height:1}.form-field__textarea--suffix,form-field__textarea--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-100);transform:translateY(-50%)}.form-field__textarea--suffix,.form-field__textarea--suffix i,.form-field__textarea--suffix .mat-icon,form-field__textarea--suffix,form-field__textarea--suffix i,form-field__textarea--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__textarea--prefix,form-field__textarea--prefix{right:unset;left:1rem}.form-field__textarea--disabled,form-field__textarea--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__range,form-field__range{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;color:var(--color-black);line-height:1.5;border:none}.form-field__range:focus-visible,form-field__range:focus-visible{outline:none}.form-field__range--wrapper,form-field__range--wrapper{display:grid;grid-template-columns:1fr auto 1fr;border-radius:.5rem;border:1px solid var(--color-gray-300);align-items:center;line-height:1;background-color:var(--color-white)}.form-field__range--wrapper:focus-within,form-field__range--wrapper:focus-within{border-color:var(--color-brand-dark)}.form-field__range--suffix,.form-field__range--prefix,form-field__range--prefix,form-field__range--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-100);transform:translateY(-50%)}.form-field__range--suffix,.form-field__range--prefix,form-field__range--prefix,.form-field__range--suffix i,.form-field__range--prefix i,form-field__range--prefix i,.form-field__range--suffix .mat-icon,.form-field__range--prefix .mat-icon,form-field__range--prefix .mat-icon,form-field__range--suffix,form-field__range--suffix i,form-field__range--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__range--prefix,form-field__range--prefix{right:unset;left:1rem}.form-field__range--disabled,form-field__range--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__range--invalid,form-field__range--invalid{border-color:var(--color-error)!important;color:var(--color-error)!important}.form-field--invalid,.form-field--invalid .form-field__input,.form-field--invalid .form-field__textarea,.form-field--invalid .form-field__range,form-field--invalid,form-field--invalid .form-field__input,form-field--invalid .form-field__textarea,form-field--invalid .form-field__range{color:var(--color-error);border-color:var(--color-error)}.form-field--invalid,.form-field--invalid .form-field__range--wrapper,form-field--invalid,form-field--invalid .form-field__range--wrapper{border-color:var(--color-error)}.form-field__validation,form-field__validation{font-size:12px;font-size:.75rem;padding-top:.5rem;color:var(--color-error)}.form-field__validation--item,form-field__validation--item{padding-bottom:.6rem}.form-field__validation--item:last-of-type,form-field__validation--item:last-of-type{padding-bottom:0}.form-field__subscript--wrapper,form-field__subscript--wrapper{margin-top:1.2rem}.form-field .spinner,form-field .spinner{position:absolute;right:.25rem;top:1.85rem}.form-field .hint,form-field .hint{font-size:10px;text-align:right;margin-right:1.0625rem;transform:translateY(-1rem);margin-bottom:-1rem}.form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex,form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex{padding-top:0}.form .mat-mdc-form-field-infix,form .mat-mdc-form-field-infix{border-top:0}.form .mat-mdc-form-field .mat-mdc-form-field-flex,form .mat-mdc-form-field .mat-mdc-form-field-flex{padding-top:0}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:auto}.mat-mdc-text-field-wrapper{padding-bottom:0}:host::ng-deep .form-field{display:flex;margin:0}:host::ng-deep .mat-mdc-slide-toggle .mdc-label{font-size:14px;font-size:.875rem}:host::ng-deep .mat-mdc-slide-toggle{margin-right:.96rem}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
91
+ ], viewQueries: [{ propertyName: "matCheckbox", first: true, predicate: MatCheckbox, descendants: true }, { propertyName: "matSlideToggle", first: true, predicate: MatSlideToggle, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mat-checkbox\r\n (change)=\"change($event)\"\r\n (click)=\"onClick($event)\"\r\n (blur)=\"onBlur()\"\r\n [checked]=\"checked\"\r\n [indeterminate]=\"indeterminate\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [id]=\"name\"\r\n [labelPosition]=\"labelPosition\"\r\n [ngClass]=\"{ 'indeterminate': indeterminate }\"\r\n *ngSwitchCase=\"'checkbox'\"\r\n >\r\n {{ text }}\r\n </mat-checkbox>\r\n\r\n <mat-slide-toggle\r\n (change)=\"change($event)\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [labelPosition]=\"labelPosition\"\r\n *ngSwitchCase=\"'toggle'\"\r\n >{{ text }}</mat-slide-toggle\r\n >\r\n </ng-container>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--mat-standard-button-toggle-shape: calc-rem(8px);--mat-option-label-text-color: var(--color-gray-900);--mat-option-focus-state-layer-color: var(--color-gray-100);--mat-option-hover-state-layer-color: var(--color-gray-50);--mat-divider-color: var(--color-gray-100);--mat-select-placeholder-text-color: var(--color-gray-400);--color-black: #020618;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CAD5E2;--color-gray-400: #90A1B9;--color-gray-500: #62748E;--color-gray-600: #45556C;--color-gray-700: #314158;--color-gray-800: #1D293D;--color-gray-900: #0F172B;--color-gray-950: #020618;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #075145;--color-success--opacity: #affebf;--color-success-rgb: 175, 254, 191;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5);--mat-option-label-text-size: 13px}.form-field__subscript--wrapper,form-field__subscript--wrapper,.form-field--required .form-field__label:after,form-field--required .form-field__label:after{position:absolute;content:\"\"}.form-field--required .form-field__label:after,form-field--required .form-field__label:after{content:\"*\"!important;margin-left:.2rem;margin-top:2px;color:var(--color-error)}.form-field,form-field{margin-bottom:1rem;position:relative}.form-field__label,form-field__label{font-size:12px;font-size:.75rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-500);cursor:pointer}.form-field__label .icon,form-field__label .icon{font-size:16px;font-size:1rem;display:inline;vertical-align:middle;margin-left:.375rem}.form-field__label-note,form-field__label-note{font-size:14px;font-size:.875rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-400);cursor:pointer}.form-field__input,form-field__input{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;border-radius:6px;border:1px solid var(--color-gray-300);color:var(--color-black);line-height:1.5}.form-field__input:focus,form-field__input:focus{border-color:var(--color-brand-dark)}.form-field__input:focus-visible,form-field__input:focus-visible{outline:none}.form-field__input--wrapper,form-field__input--wrapper{display:flex;position:relative;line-height:1}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,form-field__input--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-300);transform:translateY(-50%)}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,.form-field__input--suffix i,.form-field__textarea--prefix i,form-field__textarea--prefix i,.form-field__input--prefix i,form-field__input--prefix i,.form-field__input--suffix .mat-icon,.form-field__textarea--prefix .mat-icon,form-field__textarea--prefix .mat-icon,.form-field__input--prefix .mat-icon,form-field__input--prefix .mat-icon,form-field__input--suffix,form-field__input--suffix i,form-field__input--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__input--prefix,form-field__input--prefix{right:unset;left:1rem}.form-field__input--disabled,form-field__input--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__input--invalid,form-field__input--invalid{border-color:var(--color-error);color:var(--color-error)}.form-field__textarea,form-field__textarea{font-size:16px;font-size:1rem;display:block;width:100%;padding:1rem;border-radius:6px;border:1px solid var(--color-gray-300);color:var(--color-black);line-height:1.5}.form-field__textarea:focus,form-field__textarea:focus{border-color:var(--color-brand-dark)}.form-field__textarea--wrapper,form-field__textarea--wrapper{display:flex;position:relative;line-height:1}.form-field__textarea--suffix,form-field__textarea--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-100);transform:translateY(-50%)}.form-field__textarea--suffix,.form-field__textarea--suffix i,.form-field__textarea--suffix .mat-icon,form-field__textarea--suffix,form-field__textarea--suffix i,form-field__textarea--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__textarea--prefix,form-field__textarea--prefix{right:unset;left:1rem}.form-field__textarea--disabled,form-field__textarea--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__range,form-field__range{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;color:var(--color-black);line-height:1.5;border:none}.form-field__range:focus-visible,form-field__range:focus-visible{outline:none}.form-field__range--wrapper,form-field__range--wrapper{display:grid;grid-template-columns:1fr auto 1fr;border-radius:.5rem;border:1px solid var(--color-gray-300);align-items:center;line-height:1;background-color:var(--color-white)}.form-field__range--wrapper:focus-within,form-field__range--wrapper:focus-within{border-color:var(--color-brand-dark)}.form-field__range--suffix,.form-field__range--prefix,form-field__range--prefix,form-field__range--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-100);transform:translateY(-50%)}.form-field__range--suffix,.form-field__range--prefix,form-field__range--prefix,.form-field__range--suffix i,.form-field__range--prefix i,form-field__range--prefix i,.form-field__range--suffix .mat-icon,.form-field__range--prefix .mat-icon,form-field__range--prefix .mat-icon,form-field__range--suffix,form-field__range--suffix i,form-field__range--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__range--prefix,form-field__range--prefix{right:unset;left:1rem}.form-field__range--disabled,form-field__range--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__range--invalid,form-field__range--invalid{border-color:var(--color-error)!important;color:var(--color-error)!important}.form-field--invalid,.form-field--invalid .form-field__input,.form-field--invalid .form-field__textarea,.form-field--invalid .form-field__range,form-field--invalid,form-field--invalid .form-field__input,form-field--invalid .form-field__textarea,form-field--invalid .form-field__range{color:var(--color-error);border-color:var(--color-error)}.form-field--invalid,.form-field--invalid .form-field__range--wrapper,form-field--invalid,form-field--invalid .form-field__range--wrapper{border-color:var(--color-error)}.form-field__validation,form-field__validation{font-size:12px;font-size:.75rem;padding-top:.5rem;color:var(--color-error)}.form-field__validation--item,form-field__validation--item{padding-bottom:.6rem}.form-field__validation--item:last-of-type,form-field__validation--item:last-of-type{padding-bottom:0}.form-field__subscript--wrapper,form-field__subscript--wrapper{margin-top:1.2rem}.form-field .spinner,form-field .spinner{position:absolute;right:.25rem;top:1.85rem}.form-field .hint,form-field .hint{font-size:10px;text-align:right;margin-right:1.0625rem;transform:translateY(-1rem);margin-bottom:-1rem}.form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex,form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex{padding-top:0}.form .mat-mdc-form-field-infix,form .mat-mdc-form-field-infix{border-top:0}.form .mat-mdc-form-field .mat-mdc-form-field-flex,form .mat-mdc-form-field .mat-mdc-form-field-flex{padding-top:0}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:auto}.mat-mdc-text-field-wrapper{padding-bottom:0}:host::ng-deep .form-field{display:flex;margin:0}:host::ng-deep .mat-mdc-slide-toggle .mdc-label{font-size:14px;font-size:.875rem}:host::ng-deep .mat-mdc-slide-toggle{margin-right:.96rem}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "component", type: i4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
92
92
  }
93
93
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsCheckboxToggleComponent, decorators: [{
94
94
  type: Component,
@@ -98,7 +98,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
98
98
  useExisting: EcabsCheckboxToggleComponent,
99
99
  multi: true,
100
100
  },
101
- ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mat-checkbox\r\n (change)=\"change($event)\"\r\n (click)=\"onClick($event)\"\r\n (blur)=\"onBlur()\"\r\n [checked]=\"checked\"\r\n [indeterminate]=\"indeterminate\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [id]=\"name\"\r\n [labelPosition]=\"labelPosition\"\r\n [ngClass]=\"{ 'indeterminate': indeterminate }\"\r\n *ngSwitchCase=\"'checkbox'\"\r\n >\r\n {{ text }}\r\n </mat-checkbox>\r\n\r\n <mat-slide-toggle\r\n (change)=\"change($event)\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [labelPosition]=\"labelPosition\"\r\n *ngSwitchCase=\"'toggle'\"\r\n >{{ text }}</mat-slide-toggle\r\n >\r\n </ng-container>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--mat-standard-button-toggle-shape: calc-rem(8px);--mat-option-label-text-color: var(--color-gray-900);--mat-option-focus-state-layer-color: var(--color-gray-100);--mat-option-hover-state-layer-color: var(--color-gray-50);--mat-divider-color: var(--color-gray-100);--mat-select-placeholder-text-color: var(--color-gray-400);--color-black: #020618;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CAD5E2;--color-gray-400: #90A1B9;--color-gray-500: #62748E;--color-gray-600: #45556C;--color-gray-700: #314158;--color-gray-800: #1D293D;--color-gray-900: #0F172B;--color-gray-950: #020618;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #075145;--color-success--opacity: #affebf;--color-success-rgb: 175, 254, 191;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5);--mat-option-label-text-size: 13px}.form-field__subscript--wrapper,form-field__subscript--wrapper,.form-field--required .form-field__label:after,form-field--required .form-field__label:after{position:absolute;content:\"\"}.form-field--required .form-field__label:after,form-field--required .form-field__label:after{content:\"*\"!important;margin-left:.2rem;margin-top:2px;color:var(--color-error)}.form-field,form-field{margin-bottom:1rem;position:relative}.form-field__label,form-field__label{font-size:12px;font-size:.75rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-500);cursor:pointer}.form-field__label .icon,form-field__label .icon{font-size:16px;font-size:1rem;display:inline;vertical-align:middle;margin-left:.375rem}.form-field__label-note,form-field__label-note{font-size:14px;font-size:.875rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-400);cursor:pointer}.form-field__input,form-field__input{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;border-radius:6px;border:1px solid var(--color-gray-300);color:var(--color-black);line-height:1.5}.form-field__input:focus,form-field__input:focus{border-color:var(--color-brand-dark)}.form-field__input:focus-visible,form-field__input:focus-visible{outline:none}.form-field__input--wrapper,form-field__input--wrapper{display:flex;position:relative;line-height:1}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,form-field__input--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-100);transform:translateY(-50%)}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,.form-field__input--suffix i,.form-field__textarea--prefix i,form-field__textarea--prefix i,.form-field__input--prefix i,form-field__input--prefix i,.form-field__input--suffix .mat-icon,.form-field__textarea--prefix .mat-icon,form-field__textarea--prefix .mat-icon,.form-field__input--prefix .mat-icon,form-field__input--prefix .mat-icon,form-field__input--suffix,form-field__input--suffix i,form-field__input--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__input--prefix,form-field__input--prefix{right:unset;left:1rem}.form-field__input--disabled,form-field__input--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__input--invalid,form-field__input--invalid{border-color:var(--color-error);color:var(--color-error)}.form-field__textarea,form-field__textarea{font-size:16px;font-size:1rem;display:block;width:100%;padding:1rem;border-radius:6px;border:1px solid var(--color-gray-200);color:var(--color-black);line-height:1.5}.form-field__textarea:focus,form-field__textarea:focus{border-color:var(--color-brand-dark)}.form-field__textarea--wrapper,form-field__textarea--wrapper{display:flex;position:relative;line-height:1}.form-field__textarea--suffix,form-field__textarea--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-100);transform:translateY(-50%)}.form-field__textarea--suffix,.form-field__textarea--suffix i,.form-field__textarea--suffix .mat-icon,form-field__textarea--suffix,form-field__textarea--suffix i,form-field__textarea--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__textarea--prefix,form-field__textarea--prefix{right:unset;left:1rem}.form-field__textarea--disabled,form-field__textarea--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__range,form-field__range{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;color:var(--color-black);line-height:1.5;border:none}.form-field__range:focus-visible,form-field__range:focus-visible{outline:none}.form-field__range--wrapper,form-field__range--wrapper{display:grid;grid-template-columns:1fr auto 1fr;border-radius:.5rem;border:1px solid var(--color-gray-300);align-items:center;line-height:1;background-color:var(--color-white)}.form-field__range--wrapper:focus-within,form-field__range--wrapper:focus-within{border-color:var(--color-brand-dark)}.form-field__range--suffix,.form-field__range--prefix,form-field__range--prefix,form-field__range--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-100);transform:translateY(-50%)}.form-field__range--suffix,.form-field__range--prefix,form-field__range--prefix,.form-field__range--suffix i,.form-field__range--prefix i,form-field__range--prefix i,.form-field__range--suffix .mat-icon,.form-field__range--prefix .mat-icon,form-field__range--prefix .mat-icon,form-field__range--suffix,form-field__range--suffix i,form-field__range--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__range--prefix,form-field__range--prefix{right:unset;left:1rem}.form-field__range--disabled,form-field__range--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__range--invalid,form-field__range--invalid{border-color:var(--color-error)!important;color:var(--color-error)!important}.form-field--invalid,.form-field--invalid .form-field__input,.form-field--invalid .form-field__textarea,.form-field--invalid .form-field__range,form-field--invalid,form-field--invalid .form-field__input,form-field--invalid .form-field__textarea,form-field--invalid .form-field__range{color:var(--color-error);border-color:var(--color-error)}.form-field--invalid,.form-field--invalid .form-field__range--wrapper,form-field--invalid,form-field--invalid .form-field__range--wrapper{border-color:var(--color-error)}.form-field__validation,form-field__validation{font-size:12px;font-size:.75rem;padding-top:.5rem;color:var(--color-error)}.form-field__validation--item,form-field__validation--item{padding-bottom:.6rem}.form-field__validation--item:last-of-type,form-field__validation--item:last-of-type{padding-bottom:0}.form-field__subscript--wrapper,form-field__subscript--wrapper{margin-top:1.2rem}.form-field .spinner,form-field .spinner{position:absolute;right:.25rem;top:1.85rem}.form-field .hint,form-field .hint{font-size:10px;text-align:right;margin-right:1.0625rem;transform:translateY(-1rem);margin-bottom:-1rem}.form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex,form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex{padding-top:0}.form .mat-mdc-form-field-infix,form .mat-mdc-form-field-infix{border-top:0}.form .mat-mdc-form-field .mat-mdc-form-field-flex,form .mat-mdc-form-field .mat-mdc-form-field-flex{padding-top:0}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:auto}.mat-mdc-text-field-wrapper{padding-bottom:0}:host::ng-deep .form-field{display:flex;margin:0}:host::ng-deep .mat-mdc-slide-toggle .mdc-label{font-size:14px;font-size:.875rem}:host::ng-deep .mat-mdc-slide-toggle{margin-right:.96rem}\n"] }]
101
+ ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <mat-checkbox\r\n (change)=\"change($event)\"\r\n (click)=\"onClick($event)\"\r\n (blur)=\"onBlur()\"\r\n [checked]=\"checked\"\r\n [indeterminate]=\"indeterminate\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [id]=\"name\"\r\n [labelPosition]=\"labelPosition\"\r\n [ngClass]=\"{ 'indeterminate': indeterminate }\"\r\n *ngSwitchCase=\"'checkbox'\"\r\n >\r\n {{ text }}\r\n </mat-checkbox>\r\n\r\n <mat-slide-toggle\r\n (change)=\"change($event)\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"value\"\r\n [labelPosition]=\"labelPosition\"\r\n *ngSwitchCase=\"'toggle'\"\r\n >{{ text }}</mat-slide-toggle\r\n >\r\n </ng-container>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--mat-standard-button-toggle-shape: calc-rem(8px);--mat-option-label-text-color: var(--color-gray-900);--mat-option-focus-state-layer-color: var(--color-gray-100);--mat-option-hover-state-layer-color: var(--color-gray-50);--mat-divider-color: var(--color-gray-100);--mat-select-placeholder-text-color: var(--color-gray-400);--color-black: #020618;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CAD5E2;--color-gray-400: #90A1B9;--color-gray-500: #62748E;--color-gray-600: #45556C;--color-gray-700: #314158;--color-gray-800: #1D293D;--color-gray-900: #0F172B;--color-gray-950: #020618;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #075145;--color-success--opacity: #affebf;--color-success-rgb: 175, 254, 191;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5);--mat-option-label-text-size: 13px}.form-field__subscript--wrapper,form-field__subscript--wrapper,.form-field--required .form-field__label:after,form-field--required .form-field__label:after{position:absolute;content:\"\"}.form-field--required .form-field__label:after,form-field--required .form-field__label:after{content:\"*\"!important;margin-left:.2rem;margin-top:2px;color:var(--color-error)}.form-field,form-field{margin-bottom:1rem;position:relative}.form-field__label,form-field__label{font-size:12px;font-size:.75rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-500);cursor:pointer}.form-field__label .icon,form-field__label .icon{font-size:16px;font-size:1rem;display:inline;vertical-align:middle;margin-left:.375rem}.form-field__label-note,form-field__label-note{font-size:14px;font-size:.875rem;display:inline-block;margin-bottom:.25rem;color:var(--color-gray-400);cursor:pointer}.form-field__input,form-field__input{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;border-radius:6px;border:1px solid var(--color-gray-300);color:var(--color-black);line-height:1.5}.form-field__input:focus,form-field__input:focus{border-color:var(--color-brand-dark)}.form-field__input:focus-visible,form-field__input:focus-visible{outline:none}.form-field__input--wrapper,form-field__input--wrapper{display:flex;position:relative;line-height:1}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,form-field__input--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-300);transform:translateY(-50%)}.form-field__input--suffix,.form-field__textarea--prefix,form-field__textarea--prefix,.form-field__input--prefix,form-field__input--prefix,.form-field__input--suffix i,.form-field__textarea--prefix i,form-field__textarea--prefix i,.form-field__input--prefix i,form-field__input--prefix i,.form-field__input--suffix .mat-icon,.form-field__textarea--prefix .mat-icon,form-field__textarea--prefix .mat-icon,.form-field__input--prefix .mat-icon,form-field__input--prefix .mat-icon,form-field__input--suffix,form-field__input--suffix i,form-field__input--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__input--prefix,form-field__input--prefix{right:unset;left:1rem}.form-field__input--disabled,form-field__input--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__input--invalid,form-field__input--invalid{border-color:var(--color-error);color:var(--color-error)}.form-field__textarea,form-field__textarea{font-size:16px;font-size:1rem;display:block;width:100%;padding:1rem;border-radius:6px;border:1px solid var(--color-gray-300);color:var(--color-black);line-height:1.5}.form-field__textarea:focus,form-field__textarea:focus{border-color:var(--color-brand-dark)}.form-field__textarea--wrapper,form-field__textarea--wrapper{display:flex;position:relative;line-height:1}.form-field__textarea--suffix,form-field__textarea--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-100);transform:translateY(-50%)}.form-field__textarea--suffix,.form-field__textarea--suffix i,.form-field__textarea--suffix .mat-icon,form-field__textarea--suffix,form-field__textarea--suffix i,form-field__textarea--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__textarea--prefix,form-field__textarea--prefix{right:unset;left:1rem}.form-field__textarea--disabled,form-field__textarea--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__range,form-field__range{font-size:16px;font-size:1rem;display:block;width:100%;padding:.5rem 1rem;color:var(--color-black);line-height:1.5;border:none}.form-field__range:focus-visible,form-field__range:focus-visible{outline:none}.form-field__range--wrapper,form-field__range--wrapper{display:grid;grid-template-columns:1fr auto 1fr;border-radius:.5rem;border:1px solid var(--color-gray-300);align-items:center;line-height:1;background-color:var(--color-white)}.form-field__range--wrapper:focus-within,form-field__range--wrapper:focus-within{border-color:var(--color-brand-dark)}.form-field__range--suffix,.form-field__range--prefix,form-field__range--prefix,form-field__range--suffix{position:absolute!important;top:50%;right:1rem;color:var(--color-gray-100);transform:translateY(-50%)}.form-field__range--suffix,.form-field__range--prefix,form-field__range--prefix,.form-field__range--suffix i,.form-field__range--prefix i,form-field__range--prefix i,.form-field__range--suffix .mat-icon,.form-field__range--prefix .mat-icon,form-field__range--prefix .mat-icon,form-field__range--suffix,form-field__range--suffix i,form-field__range--suffix .mat-icon{font-size:18px;font-size:1.125rem;width:1.125rem;height:1.125rem}.form-field__range--prefix,form-field__range--prefix{right:unset;left:1rem}.form-field__range--disabled,form-field__range--disabled{background-color:var(--color-gray-100);opacity:.5;pointer-events:none}.form-field__range--invalid,form-field__range--invalid{border-color:var(--color-error)!important;color:var(--color-error)!important}.form-field--invalid,.form-field--invalid .form-field__input,.form-field--invalid .form-field__textarea,.form-field--invalid .form-field__range,form-field--invalid,form-field--invalid .form-field__input,form-field--invalid .form-field__textarea,form-field--invalid .form-field__range{color:var(--color-error);border-color:var(--color-error)}.form-field--invalid,.form-field--invalid .form-field__range--wrapper,form-field--invalid,form-field--invalid .form-field__range--wrapper{border-color:var(--color-error)}.form-field__validation,form-field__validation{font-size:12px;font-size:.75rem;padding-top:.5rem;color:var(--color-error)}.form-field__validation--item,form-field__validation--item{padding-bottom:.6rem}.form-field__validation--item:last-of-type,form-field__validation--item:last-of-type{padding-bottom:0}.form-field__subscript--wrapper,form-field__subscript--wrapper{margin-top:1.2rem}.form-field .spinner,form-field .spinner{position:absolute;right:.25rem;top:1.85rem}.form-field .hint,form-field .hint{font-size:10px;text-align:right;margin-right:1.0625rem;transform:translateY(-1rem);margin-bottom:-1rem}.form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex,form .mat-mdc-form-field-appearance-standard .mat-mdc-form-field-flex{padding-top:0}.form .mat-mdc-form-field-infix,form .mat-mdc-form-field-infix{border-top:0}.form .mat-mdc-form-field .mat-mdc-form-field-flex,form .mat-mdc-form-field .mat-mdc-form-field-flex{padding-top:0}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:auto}.mat-mdc-text-field-wrapper{padding-bottom:0}:host::ng-deep .form-field{display:flex;margin:0}:host::ng-deep .mat-mdc-slide-toggle .mdc-label{font-size:14px;font-size:.875rem}:host::ng-deep .mat-mdc-slide-toggle{margin-right:.96rem}\n"] }]
102
102
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.DestroyRef }]; }, propDecorators: { matCheckbox: [{
103
103
  type: ViewChild,
104
104
  args: [MatCheckbox, { static: false }]
@@ -3,13 +3,17 @@ import { NG_VALUE_ACCESSOR, NgControl, } from '@angular/forms';
3
3
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
4
  import EcabsElementBaseComponent from '../base/element-base';
5
5
  import * as i0 from "@angular/core";
6
- import * as i1 from "../base/element-wrapper/element-wrapper.component";
7
- import * as i2 from "@angular/material/checkbox";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "../base/element-wrapper/element-wrapper.component";
8
+ import * as i3 from "@angular/material/checkbox";
8
9
  export class EcabsCheckboxV2Component extends EcabsElementBaseComponent {
9
10
  injector;
10
11
  destroyRef;
11
12
  label = '';
12
13
  showLabel = false;
14
+ set checked(value) {
15
+ this.value = !!value;
16
+ }
13
17
  checkboxChanged = new EventEmitter();
14
18
  val = false;
15
19
  get value() {
@@ -78,13 +82,13 @@ export class EcabsCheckboxV2Component extends EcabsElementBaseComponent {
78
82
  this.onTouched = fn;
79
83
  }
80
84
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsCheckboxV2Component, deps: [{ token: i0.Injector }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component });
81
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsCheckboxV2Component, selector: "ecabs-checkbox-v2", inputs: { label: "label", showLabel: "showLabel" }, outputs: { checkboxChanged: "checkboxChanged" }, providers: [
85
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsCheckboxV2Component, selector: "ecabs-checkbox-v2", inputs: { label: "label", showLabel: "showLabel", checked: "checked" }, outputs: { checkboxChanged: "checkboxChanged" }, providers: [
82
86
  {
83
87
  provide: NG_VALUE_ACCESSOR,
84
88
  useExisting: forwardRef(() => EcabsCheckboxV2Component),
85
89
  multi: true,
86
90
  },
87
- ], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div\r\n class=\"ecabs-checkbox-v2\"\r\n [class.ecabs-checkbox-v2--checked]=\"value\"\r\n [class.ecabs-checkbox-v2--disabled]=\"disabled\"\r\n [class.ecabs-checkbox-v2--error]=\"hasError\"\r\n [attr.tabindex]=\"disabled ? null : 0\"\r\n (click)=\"onRowClick()\"\r\n (keydown)=\"onKeyDown($event)\"\r\n >\r\n <span class=\"form-field__label text-base pl-2\">{{ label }}</span>\r\n\r\n <mat-checkbox\r\n class=\"ecabs-checkbox-v2__control\"\r\n [id]=\"name\"\r\n [name]=\"name\"\r\n [disabled]=\"disabled\"\r\n [checked]=\"value\"\r\n color=\"primary\"\r\n [disableRipple]=\"true\"\r\n (change)=\"toggle($event)\"\r\n (blur)=\"onBlur()\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n </mat-checkbox>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--mat-standard-button-toggle-shape: calc-rem(8px);--mat-option-label-text-color: var(--color-gray-900);--mat-option-focus-state-layer-color: var(--color-gray-100);--mat-option-hover-state-layer-color: var(--color-gray-50);--mat-divider-color: var(--color-gray-100);--mat-select-placeholder-text-color: var(--color-gray-400);--color-black: #020618;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CAD5E2;--color-gray-400: #90A1B9;--color-gray-500: #62748E;--color-gray-600: #45556C;--color-gray-700: #314158;--color-gray-800: #1D293D;--color-gray-900: #0F172B;--color-gray-950: #020618;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #075145;--color-success--opacity: #affebf;--color-success-rgb: 175, 254, 191;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5);--mat-option-label-text-size: 13px}.ecabs-checkbox-v2{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 8px;border:1px solid var(--color-gray-200);border-radius:.5rem;background-color:var(--color-white);cursor:pointer}.ecabs-checkbox-v2:hover{border-color:var(--color-gray-300);background-color:var(--color-gray-50)}.ecabs-checkbox-v2--checked{border-color:var(--color-brand-dark)}.ecabs-checkbox-v2--error{border-color:var(--color-error)}.ecabs-checkbox-v2--error:hover{border-color:var(--color-error);background-color:var(--color-white)}.ecabs-checkbox-v2--disabled{opacity:.5;cursor:default;border-color:var(--color-gray-200);background-color:var(--color-white)}.ecabs-checkbox-v2--disabled:hover{border-color:var(--color-gray-200);background-color:var(--color-white)}\n"], dependencies: [{ kind: "component", type: i1.EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }] });
91
+ ], usesInheritance: true, ngImport: i0, template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div\r\n class=\"ecabs-checkbox-v2\"\r\n [class.ecabs-checkbox-v2--checked]=\"value\"\r\n [class.ecabs-checkbox-v2--disabled]=\"disabled\"\r\n [class.ecabs-checkbox-v2--error]=\"hasError\"\r\n [attr.tabindex]=\"disabled ? null : 0\"\r\n (click)=\"onRowClick()\"\r\n (keydown)=\"onKeyDown($event)\"\r\n >\r\n <span class=\"form-field__label text-sm pl-2\"\r\n [ngClass]=\"value ? 'font-semibold' : 'font-medium'\">\r\n {{ label }}\r\n </span>\r\n\r\n <mat-checkbox\r\n class=\"ecabs-checkbox-v2__control\"\r\n [id]=\"name\"\r\n [name]=\"name\"\r\n [disabled]=\"disabled\"\r\n [checked]=\"value\"\r\n color=\"primary\"\r\n [disableRipple]=\"true\"\r\n (change)=\"toggle($event)\"\r\n (blur)=\"onBlur()\"\r\n (click)=\"$event.stopPropagation()\"\r\n (keydown.enter)=\"$event.stopPropagation()\"\r\n >\r\n </mat-checkbox>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--mat-standard-button-toggle-shape: calc-rem(8px);--mat-option-label-text-color: var(--color-gray-900);--mat-option-focus-state-layer-color: var(--color-gray-100);--mat-option-hover-state-layer-color: var(--color-gray-50);--mat-divider-color: var(--color-gray-100);--mat-select-placeholder-text-color: var(--color-gray-400);--color-black: #020618;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CAD5E2;--color-gray-400: #90A1B9;--color-gray-500: #62748E;--color-gray-600: #45556C;--color-gray-700: #314158;--color-gray-800: #1D293D;--color-gray-900: #0F172B;--color-gray-950: #020618;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #075145;--color-success--opacity: #affebf;--color-success-rgb: 175, 254, 191;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5);--mat-option-label-text-size: 13px}.ecabs-checkbox-v2{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 8px;border:1px solid var(--color-gray-200);border-radius:.5rem;background-color:var(--color-white);cursor:pointer}.ecabs-checkbox-v2 .form-field__label{margin-bottom:0}.ecabs-checkbox-v2:hover{border-color:var(--color-gray-300);background-color:var(--color-gray-50)}.ecabs-checkbox-v2--checked{background-color:var(--color-gray-50);border-color:var(--color-brand-dark)}.ecabs-checkbox-v2--error{border-color:var(--color-error)}.ecabs-checkbox-v2--error:hover{border-color:var(--color-error);background-color:var(--color-white)}.ecabs-checkbox-v2--disabled{opacity:.5;cursor:default;border-color:var(--color-gray-200);background-color:var(--color-white)}.ecabs-checkbox-v2--disabled:hover{border-color:var(--color-gray-200);background-color:var(--color-white)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.EcabsElementWrapperComponent, selector: "ecabs-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }] });
88
92
  }
89
93
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsCheckboxV2Component, decorators: [{
90
94
  type: Component,
@@ -94,12 +98,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
94
98
  useExisting: forwardRef(() => EcabsCheckboxV2Component),
95
99
  multi: true,
96
100
  },
97
- ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div\r\n class=\"ecabs-checkbox-v2\"\r\n [class.ecabs-checkbox-v2--checked]=\"value\"\r\n [class.ecabs-checkbox-v2--disabled]=\"disabled\"\r\n [class.ecabs-checkbox-v2--error]=\"hasError\"\r\n [attr.tabindex]=\"disabled ? null : 0\"\r\n (click)=\"onRowClick()\"\r\n (keydown)=\"onKeyDown($event)\"\r\n >\r\n <span class=\"form-field__label text-base pl-2\">{{ label }}</span>\r\n\r\n <mat-checkbox\r\n class=\"ecabs-checkbox-v2__control\"\r\n [id]=\"name\"\r\n [name]=\"name\"\r\n [disabled]=\"disabled\"\r\n [checked]=\"value\"\r\n color=\"primary\"\r\n [disableRipple]=\"true\"\r\n (change)=\"toggle($event)\"\r\n (blur)=\"onBlur()\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n </mat-checkbox>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--mat-standard-button-toggle-shape: calc-rem(8px);--mat-option-label-text-color: var(--color-gray-900);--mat-option-focus-state-layer-color: var(--color-gray-100);--mat-option-hover-state-layer-color: var(--color-gray-50);--mat-divider-color: var(--color-gray-100);--mat-select-placeholder-text-color: var(--color-gray-400);--color-black: #020618;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CAD5E2;--color-gray-400: #90A1B9;--color-gray-500: #62748E;--color-gray-600: #45556C;--color-gray-700: #314158;--color-gray-800: #1D293D;--color-gray-900: #0F172B;--color-gray-950: #020618;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #075145;--color-success--opacity: #affebf;--color-success-rgb: 175, 254, 191;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5);--mat-option-label-text-size: 13px}.ecabs-checkbox-v2{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 8px;border:1px solid var(--color-gray-200);border-radius:.5rem;background-color:var(--color-white);cursor:pointer}.ecabs-checkbox-v2:hover{border-color:var(--color-gray-300);background-color:var(--color-gray-50)}.ecabs-checkbox-v2--checked{border-color:var(--color-brand-dark)}.ecabs-checkbox-v2--error{border-color:var(--color-error)}.ecabs-checkbox-v2--error:hover{border-color:var(--color-error);background-color:var(--color-white)}.ecabs-checkbox-v2--disabled{opacity:.5;cursor:default;border-color:var(--color-gray-200);background-color:var(--color-white)}.ecabs-checkbox-v2--disabled:hover{border-color:var(--color-gray-200);background-color:var(--color-white)}\n"] }]
101
+ ], template: "<ecabs-element-wrapper [data]=\"getData()\">\r\n <div\r\n class=\"ecabs-checkbox-v2\"\r\n [class.ecabs-checkbox-v2--checked]=\"value\"\r\n [class.ecabs-checkbox-v2--disabled]=\"disabled\"\r\n [class.ecabs-checkbox-v2--error]=\"hasError\"\r\n [attr.tabindex]=\"disabled ? null : 0\"\r\n (click)=\"onRowClick()\"\r\n (keydown)=\"onKeyDown($event)\"\r\n >\r\n <span class=\"form-field__label text-sm pl-2\"\r\n [ngClass]=\"value ? 'font-semibold' : 'font-medium'\">\r\n {{ label }}\r\n </span>\r\n\r\n <mat-checkbox\r\n class=\"ecabs-checkbox-v2__control\"\r\n [id]=\"name\"\r\n [name]=\"name\"\r\n [disabled]=\"disabled\"\r\n [checked]=\"value\"\r\n color=\"primary\"\r\n [disableRipple]=\"true\"\r\n (change)=\"toggle($event)\"\r\n (blur)=\"onBlur()\"\r\n (click)=\"$event.stopPropagation()\"\r\n (keydown.enter)=\"$event.stopPropagation()\"\r\n >\r\n </mat-checkbox>\r\n </div>\r\n</ecabs-element-wrapper>\r\n", styles: [":root{--mat-standard-button-toggle-shape: calc-rem(8px);--mat-option-label-text-color: var(--color-gray-900);--mat-option-focus-state-layer-color: var(--color-gray-100);--mat-option-hover-state-layer-color: var(--color-gray-50);--mat-divider-color: var(--color-gray-100);--mat-select-placeholder-text-color: var(--color-gray-400);--color-black: #020618;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CAD5E2;--color-gray-400: #90A1B9;--color-gray-500: #62748E;--color-gray-600: #45556C;--color-gray-700: #314158;--color-gray-800: #1D293D;--color-gray-900: #0F172B;--color-gray-950: #020618;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #075145;--color-success--opacity: #affebf;--color-success-rgb: 175, 254, 191;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5);--mat-option-label-text-size: 13px}.ecabs-checkbox-v2{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 8px;border:1px solid var(--color-gray-200);border-radius:.5rem;background-color:var(--color-white);cursor:pointer}.ecabs-checkbox-v2 .form-field__label{margin-bottom:0}.ecabs-checkbox-v2:hover{border-color:var(--color-gray-300);background-color:var(--color-gray-50)}.ecabs-checkbox-v2--checked{background-color:var(--color-gray-50);border-color:var(--color-brand-dark)}.ecabs-checkbox-v2--error{border-color:var(--color-error)}.ecabs-checkbox-v2--error:hover{border-color:var(--color-error);background-color:var(--color-white)}.ecabs-checkbox-v2--disabled{opacity:.5;cursor:default;border-color:var(--color-gray-200);background-color:var(--color-white)}.ecabs-checkbox-v2--disabled:hover{border-color:var(--color-gray-200);background-color:var(--color-white)}\n"] }]
98
102
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.DestroyRef }]; }, propDecorators: { label: [{
99
103
  type: Input
100
104
  }], showLabel: [{
101
105
  type: Input
106
+ }], checked: [{
107
+ type: Input
102
108
  }], checkboxChanged: [{
103
109
  type: Output
104
110
  }] } });
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtY2hlY2tib3gtdjIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWNoZWNrYm94LXYyL2VjYWJzLWNoZWNrYm94LXYyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1jaGVja2JveC12Mi9lY2Ficy1jaGVja2JveC12Mi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFFWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsR0FFVixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8seUJBQXlCLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFjN0QsTUFBTSxPQUFPLHdCQUNYLFNBQVEseUJBQXlCO0lBaUNkO0lBQ0E7SUE5QlYsS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUdYLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFHbEIsZUFBZSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7SUFFdkQsR0FBRyxHQUFHLEtBQUssQ0FBQztJQUVaLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNsQixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxDQUNMLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTztZQUNkLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTztZQUNwQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQzdD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RUFBRSxDQUFDLHdCQUF3QixDQUFDO2dCQUN2RCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsaURDOUJILGszQkEyQkE7OzRGREthLHdCQUF3QjtrQkFacEMsU0FBUzsrQkFDRSxtQkFBbUIsYUFHbEI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUseUJBQXlCLENBQUM7NEJBQ3ZELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO3dIQU9RLEtBQUs7c0JBRGIsS0FBSztnQkFJRyxTQUFTO3NCQURqQixLQUFLO2dCQUlHLGVBQWU7c0JBRHZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ29tcG9uZW50LFxyXG4gIERlc3Ryb3lSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEluamVjdG9yLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBmb3J3YXJkUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxyXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gIE5nQ29udHJvbCxcclxuICBVbnR5cGVkRm9ybUNvbnRyb2wsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRDaGVja2JveENoYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcclxuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xyXG5pbXBvcnQgRWNhYnNFbGVtZW50QmFzZUNvbXBvbmVudCBmcm9tICcuLi9iYXNlL2VsZW1lbnQtYmFzZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLWNoZWNrYm94LXYyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtY2hlY2tib3gtdjIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2VjYWJzLWNoZWNrYm94LXYyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFY2Fic0NoZWNrYm94VjJDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVjYWJzQ2hlY2tib3hWMkNvbXBvbmVudFxyXG4gIGV4dGVuZHMgRWNhYnNFbGVtZW50QmFzZUNvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEFmdGVyVmlld0luaXRcclxue1xyXG4gIEBJbnB1dCgpXHJcbiAgb3ZlcnJpZGUgbGFiZWwgPSAnJztcclxuXHJcbiAgQElucHV0KClcclxuICBvdmVycmlkZSBzaG93TGFiZWwgPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcmVhZG9ubHkgY2hlY2tib3hDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICB2YWwgPSBmYWxzZTtcclxuXHJcbiAgZ2V0IHZhbHVlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGhhc0Vycm9yKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIChcclxuICAgICAgISF0aGlzLmNvbnRyb2wgJiZcclxuICAgICAgdGhpcy5jb250cm9sLmludmFsaWQgJiZcclxuICAgICAgKHRoaXMuY29udHJvbC50b3VjaGVkIHx8IHRoaXMuY29udHJvbC5kaXJ0eSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzZXQgdmFsdWUodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHRoaXMudmFsICE9PSB2YWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbCA9IHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZjogRGVzdHJveVJlZixcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBvbkNoYW5nZTogKHZhbHVlOiBib29sZWFuKSA9PiB2b2lkID0gKCkgPT4ge307XHJcbiAgb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG5nQ29udHJvbDogTmdDb250cm9sID0gdGhpcy5pbmplY3Rvci5nZXQoTmdDb250cm9sLCBudWxsKTtcclxuXHJcbiAgICBpZiAobmdDb250cm9sKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbCA9IG5nQ29udHJvbC5jb250cm9sIGFzIFVudHlwZWRGb3JtQ29udHJvbDtcclxuICAgICAgdGhpcy52YWxpZGF0aW9uTGFiZWwgPSB0aGlzLmxhYmVsIHx8IHRoaXMudmFsaWRhdGlvbkxhYmVsO1xyXG4gICAgICB0aGlzLmNvbnRyb2wuc3RhdHVzQ2hhbmdlc1xyXG4gICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVEaXNhYmxlZFN0YXRlKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cGRhdGVEaXNhYmxlZFN0YXRlKCk7XHJcbiAgfVxyXG5cclxuICB0b2dnbGUoZXZlbnQ6IE1hdENoZWNrYm94Q2hhbmdlKTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gISFldmVudC5jaGVja2VkO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgICB0aGlzLmNoZWNrYm94Q2hhbmdlZC5lbWl0KHRoaXMudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgb25Sb3dDbGljaygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xyXG4gICAgICB0aGlzLnZhbHVlID0gIXRoaXMudmFsdWU7XHJcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgICAgIHRoaXMuY2hlY2tib3hDaGFuZ2VkLmVtaXQodGhpcy52YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmIChldmVudC5rZXkgPT09ICcgJyB8fCBldmVudC5rZXkgPT09ICdFbnRlcicpIHtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgdGhpcy5vblJvd0NsaWNrKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkJsdXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYm9vbGVhbiB8IG51bGwgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUgPSAhIXZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKHZhbHVlOiBib29sZWFuKSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcbn1cclxuIiwiPGVjYWJzLWVsZW1lbnQtd3JhcHBlciBbZGF0YV09XCJnZXREYXRhKClcIj5cclxuICA8ZGl2XHJcbiAgICBjbGFzcz1cImVjYWJzLWNoZWNrYm94LXYyXCJcclxuICAgIFtjbGFzcy5lY2Ficy1jaGVja2JveC12Mi0tY2hlY2tlZF09XCJ2YWx1ZVwiXHJcbiAgICBbY2xhc3MuZWNhYnMtY2hlY2tib3gtdjItLWRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIFtjbGFzcy5lY2Ficy1jaGVja2JveC12Mi0tZXJyb3JdPVwiaGFzRXJyb3JcIlxyXG4gICAgW2F0dHIudGFiaW5kZXhdPVwiZGlzYWJsZWQgPyBudWxsIDogMFwiXHJcbiAgICAoY2xpY2spPVwib25Sb3dDbGljaygpXCJcclxuICAgIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcclxuICA+XHJcbiAgICA8c3BhbiBjbGFzcz1cImZvcm0tZmllbGRfX2xhYmVsIHRleHQtYmFzZSBwbC0yXCI+e3sgbGFiZWwgfX08L3NwYW4+XHJcblxyXG4gICAgPG1hdC1jaGVja2JveFxyXG4gICAgICBjbGFzcz1cImVjYWJzLWNoZWNrYm94LXYyX19jb250cm9sXCJcclxuICAgICAgW2lkXT1cIm5hbWVcIlxyXG4gICAgICBbbmFtZV09XCJuYW1lXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgW2NoZWNrZWRdPVwidmFsdWVcIlxyXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxyXG4gICAgICBbZGlzYWJsZVJpcHBsZV09XCJ0cnVlXCJcclxuICAgICAgKGNoYW5nZSk9XCJ0b2dnbGUoJGV2ZW50KVwiXHJcbiAgICAgIChibHVyKT1cIm9uQmx1cigpXCJcclxuICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXHJcbiAgICA+XHJcbiAgICA8L21hdC1jaGVja2JveD5cclxuICA8L2Rpdj5cclxuPC9lY2Ficy1lbGVtZW50LXdyYXBwZXI+XHJcbiJdfQ==
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtY2hlY2tib3gtdjIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWNoZWNrYm94LXYyL2VjYWJzLWNoZWNrYm94LXYyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1jaGVja2JveC12Mi9lY2Ficy1jaGVja2JveC12Mi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFFWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBRUwsaUJBQWlCLEVBQ2pCLFNBQVMsR0FFVixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8seUJBQXlCLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBYzdELE1BQU0sT0FBTyx3QkFDWCxTQUFRLHlCQUF5QjtJQXNDZDtJQUNBO0lBbkNWLEtBQUssR0FBRyxFQUFFLENBQUM7SUFHWCxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRTNCLElBQ0ksT0FBTyxDQUFDLEtBQWM7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFHUSxlQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUV2RCxHQUFHLEdBQUcsS0FBSyxDQUFDO0lBRVosSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLENBQ0wsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQ2QsSUFBSSxDQUFDLE9BQU8sQ0FB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Qjs0RkFBeEIsd0JBQXdCLHFLQVJ4QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsd0JBQXdCLENBQUM7Z0JBQ3ZELEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRixpREM5QkgsMi9CQStCQTs7NEZEQ2Esd0JBQXdCO2tCQVpwQyxTQUFTOytCQUNFLG1CQUFtQixhQUdsQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx5QkFBeUIsQ0FBQzs0QkFDdkQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7d0hBT1EsS0FBSztzQkFEYixLQUFLO2dCQUlHLFNBQVM7c0JBRGpCLEtBQUs7Z0JBSUYsT0FBTztzQkFEVixLQUFLO2dCQU1HLGVBQWU7c0JBRHZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ29tcG9uZW50LFxyXG4gIERlc3Ryb3lSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEluamVjdG9yLFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBmb3J3YXJkUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxyXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gIE5nQ29udHJvbCxcclxuICBVbnR5cGVkRm9ybUNvbnRyb2wsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRDaGVja2JveENoYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcclxuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xyXG5pbXBvcnQgRWNhYnNFbGVtZW50QmFzZUNvbXBvbmVudCBmcm9tICcuLi9iYXNlL2VsZW1lbnQtYmFzZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLWNoZWNrYm94LXYyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtY2hlY2tib3gtdjIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2VjYWJzLWNoZWNrYm94LXYyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFY2Fic0NoZWNrYm94VjJDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVjYWJzQ2hlY2tib3hWMkNvbXBvbmVudFxyXG4gIGV4dGVuZHMgRWNhYnNFbGVtZW50QmFzZUNvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEFmdGVyVmlld0luaXRcclxue1xyXG4gIEBJbnB1dCgpXHJcbiAgb3ZlcnJpZGUgbGFiZWwgPSAnJztcclxuXHJcbiAgQElucHV0KClcclxuICBvdmVycmlkZSBzaG93TGFiZWwgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgY2hlY2tlZCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy52YWx1ZSA9ICEhdmFsdWU7XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KClcclxuICByZWFkb25seSBjaGVja2JveENoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gIHZhbCA9IGZhbHNlO1xyXG5cclxuICBnZXQgdmFsdWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy52YWw7XHJcbiAgfVxyXG5cclxuICBnZXQgaGFzRXJyb3IoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICAhIXRoaXMuY29udHJvbCAmJlxyXG4gICAgICB0aGlzLmNvbnRyb2wuaW52YWxpZCAmJlxyXG4gICAgICAodGhpcy5jb250cm9sLnRvdWNoZWQgfHwgdGhpcy5jb250cm9sLmRpcnR5KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHNldCB2YWx1ZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgaWYgKHZhbHVlICE9PSB1bmRlZmluZWQgJiYgdGhpcy52YWwgIT09IHZhbHVlKSB7XHJcbiAgICAgIHRoaXMudmFsID0gdmFsdWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmOiBEZXN0cm95UmVmLFxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlOiAodmFsdWU6IGJvb2xlYW4pID0+IHZvaWQgPSAoKSA9PiB7fTtcclxuICBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7fTtcclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgbmdDb250cm9sOiBOZ0NvbnRyb2wgPSB0aGlzLmluamVjdG9yLmdldChOZ0NvbnRyb2wsIG51bGwpO1xyXG5cclxuICAgIGlmIChuZ0NvbnRyb2wpIHtcclxuICAgICAgdGhpcy5jb250cm9sID0gbmdDb250cm9sLmNvbnRyb2wgYXMgVW50eXBlZEZvcm1Db250cm9sO1xyXG4gICAgICB0aGlzLnZhbGlkYXRpb25MYWJlbCA9IHRoaXMubGFiZWwgfHwgdGhpcy52YWxpZGF0aW9uTGFiZWw7XHJcbiAgICAgIHRoaXMuY29udHJvbC5zdGF0dXNDaGFuZ2VzXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXHJcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZURpc2FibGVkU3RhdGUoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnVwZGF0ZURpc2FibGVkU3RhdGUoKTtcclxuICB9XHJcblxyXG4gIHRvZ2dsZShldmVudDogTWF0Q2hlY2tib3hDaGFuZ2UpOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUgPSAhIWV2ZW50LmNoZWNrZWQ7XHJcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICAgIHRoaXMuY2hlY2tib3hDaGFuZ2VkLmVtaXQodGhpcy52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBvblJvd0NsaWNrKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSAhdGhpcy52YWx1ZTtcclxuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcclxuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICAgICAgdGhpcy5jaGVja2JveENoYW5nZWQuZW1pdCh0aGlzLnZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gJyAnIHx8IGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICB0aGlzLm9uUm93Q2xpY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQmx1cigpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlKHZhbHVlOiBib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZCk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9ICEhdmFsdWU7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGJvb2xlYW4pID0+IHZvaWQpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxufVxyXG4iLCI8ZWNhYnMtZWxlbWVudC13cmFwcGVyIFtkYXRhXT1cImdldERhdGEoKVwiPlxyXG4gIDxkaXZcclxuICAgIGNsYXNzPVwiZWNhYnMtY2hlY2tib3gtdjJcIlxyXG4gICAgW2NsYXNzLmVjYWJzLWNoZWNrYm94LXYyLS1jaGVja2VkXT1cInZhbHVlXCJcclxuICAgIFtjbGFzcy5lY2Ficy1jaGVja2JveC12Mi0tZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgW2NsYXNzLmVjYWJzLWNoZWNrYm94LXYyLS1lcnJvcl09XCJoYXNFcnJvclwiXHJcbiAgICBbYXR0ci50YWJpbmRleF09XCJkaXNhYmxlZCA/IG51bGwgOiAwXCJcclxuICAgIChjbGljayk9XCJvblJvd0NsaWNrKClcIlxyXG4gICAgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIlxyXG4gID5cclxuICAgIDxzcGFuIGNsYXNzPVwiZm9ybS1maWVsZF9fbGFiZWwgdGV4dC1zbSBwbC0yXCJcclxuICAgICAgICAgIFtuZ0NsYXNzXT1cInZhbHVlID8gJ2ZvbnQtc2VtaWJvbGQnIDogJ2ZvbnQtbWVkaXVtJ1wiPlxyXG4gICAgICB7eyBsYWJlbCB9fVxyXG4gICAgPC9zcGFuPlxyXG5cclxuICAgIDxtYXQtY2hlY2tib3hcclxuICAgICAgY2xhc3M9XCJlY2Ficy1jaGVja2JveC12Ml9fY29udHJvbFwiXHJcbiAgICAgIFtpZF09XCJuYW1lXCJcclxuICAgICAgW25hbWVdPVwibmFtZVwiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgIFtjaGVja2VkXT1cInZhbHVlXCJcclxuICAgICAgY29sb3I9XCJwcmltYXJ5XCJcclxuICAgICAgW2Rpc2FibGVSaXBwbGVdPVwidHJ1ZVwiXHJcbiAgICAgIChjaGFuZ2UpPVwidG9nZ2xlKCRldmVudClcIlxyXG4gICAgICAoYmx1cik9XCJvbkJsdXIoKVwiXHJcbiAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxyXG4gICAgICAoa2V5ZG93bi5lbnRlcik9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxyXG4gICAgPlxyXG4gICAgPC9tYXQtY2hlY2tib3g+XHJcbiAgPC9kaXY+XHJcbjwvZWNhYnMtZWxlbWVudC13cmFwcGVyPlxyXG4iXX0=
@@ -14,7 +14,7 @@ import { NgxPhosphorIconsLightFileModule } from 'ngx-phosphor-icons';
14
14
  import { MatTooltipModule } from '@angular/material/tooltip';
15
15
  import { EcabsPipesModule } from '../base/pipes/pipes.module';
16
16
  import { distinctUntilChanged } from 'rxjs/operators';
17
- import { EcabsLoadingModule } from "../ecabs-loading/ecabs-loading.module";
17
+ import { EcabsLoadingModule } from '../ecabs-loading/ecabs-loading.module';
18
18
  import * as i0 from "@angular/core";
19
19
  import * as i1 from "@angular/common";
20
20
  import * as i2 from "@angular/material/chips";
@@ -53,8 +53,12 @@ export class EcabsChipAutocompleteComponent extends EcabsElementBaseComponent {
53
53
  destroyRef = inject(DestroyRef);
54
54
  overlayPanelClass = 'ecabs-chip-autocomplete-overlay-panel';
55
55
  selectedOptions = computed(() => this.setValidSelectedOptions(this._values(), this._options()));
56
- filteredOptions = computed(() => this._loading() ? [] : this.setFilteredOptions(this._term(), this._values(), this._options()));
57
- noMatchResult = computed(() => !this._loading() && !!this._term().trim().length && !this.filteredOptions().length);
56
+ filteredOptions = computed(() => this._loading()
57
+ ? []
58
+ : this.setFilteredOptions(this._term(), this._values(), this._options()));
59
+ noMatchResult = computed(() => !this._loading() &&
60
+ !!this._term().trim().length &&
61
+ !this.filteredOptions().length);
58
62
  get options() {
59
63
  return this._options();
60
64
  }
@@ -64,7 +68,9 @@ export class EcabsChipAutocompleteComponent extends EcabsElementBaseComponent {
64
68
  this.normalizedTerm$
65
69
  .pipe(takeUntilDestroyed(this.destroyRef))
66
70
  .subscribe((value) => {
67
- if (this.suppressNextTermOnRefocus && this._suppressNextTermOnRefocus() && value === '') {
71
+ if (this.suppressNextTermOnRefocus &&
72
+ this._suppressNextTermOnRefocus() &&
73
+ value === '') {
68
74
  this._suppressNextTermOnRefocus.set(false);
69
75
  return;
70
76
  }
@@ -131,10 +137,8 @@ export class EcabsChipAutocompleteComponent extends EcabsElementBaseComponent {
131
137
  blur() {
132
138
  this.onTouched();
133
139
  }
134
- onChange = () => {
135
- };
136
- onTouched = () => {
137
- };
140
+ onChange = () => { };
141
+ onTouched = () => { };
138
142
  updateValues(values) {
139
143
  this._values.set(values);
140
144
  this.onChange(values);
@@ -228,4 +232,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
228
232
  }], termChange: [{
229
233
  type: Output
230
234
  }] } });
231
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtY2hpcC1hdXRvY29tcGxldGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWNoaXAtYXV0b2NvbXBsZXRlL2VjYWJzLWNoaXAtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1jaGlwLWF1dG9jb21wbGV0ZS9lY2Ficy1jaGlwLWF1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsVUFBVSxFQUVWLFlBQVksRUFDWixVQUFVLEVBQ1YsTUFBTSxFQUNOLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUNOLE1BQU0sRUFHTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF1QixXQUFXLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEdBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxRyxPQUFPLHlCQUF5QixNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sRUFBQyxxQkFBcUIsR0FBZ0MsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsUUFBUSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDeEUsT0FBTyxFQUFDLEdBQUcsRUFBRSxTQUFTLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsWUFBWSxFQUFF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RHhCLFNBQVM7dUJBQUMsV0FBVztnQkFHYixjQUFjO3NCQUF0QixLQUFLO2dCQUdOLHFCQUFxQjtzQkFEcEIsS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLHlCQUF5QjtzQkFEeEIsS0FBSztnQkFJRixPQUFPO3NCQURWLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDO2dCQU1kLGVBQWU7c0JBRHZCLE1BQU07Z0JBSUUsVUFBVTtzQkFEbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIGNvbXB1dGVkLFxyXG4gIERlc3Ryb3lSZWYsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBpbmplY3QsXHJcbiAgSW5qZWN0LFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPdXRwdXQsXHJcbiAgc2lnbmFsLFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0NvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IsIFJlYWN0aXZlRm9ybXNNb2R1bGUsfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7U2VsZWN0T3B0aW9ufSBmcm9tICcuLi9iYXNlL21vZGVscy9zZWxlY3QubW9kZWxzJztcclxuaW1wb3J0IEVjYWJzRWxlbWVudEJhc2VDb21wb25lbnQgZnJvbSAnLi4vYmFzZS9lbGVtZW50LWJhc2UnO1xyXG5pbXBvcnQge01hdEF1dG9jb21wbGV0ZU1vZHVsZSwgTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCx9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XHJcbmltcG9ydCB7RWNhYnNJbnB1dE1vZHVsZX0gZnJvbSAnLi4vZWNhYnMtaW5wdXQvZWNhYnMtaW5wdXQubW9kdWxlJztcclxuaW1wb3J0IHt0YWtlVW50aWxEZXN0cm95ZWQsIHRvU2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcbmltcG9ydCB7bWFwLCBzdGFydFdpdGh9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge01hdENoaXBzTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGlwcyc7XHJcbmltcG9ydCB7TWF0SWNvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7Q29tbW9uTW9kdWxlLCBET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtNYXRJbnB1dE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQge0VsZW1lbnRXcmFwcGVyTW9kdWxlfSBmcm9tICcuLi9iYXNlL2VsZW1lbnQtd3JhcHBlci9lbGVtZW50LXdyYXBwZXIubW9kdWxlJztcclxuaW1wb3J0IHtOZ3hQaG9zcGhvckljb25zTGlnaHRGaWxlTW9kdWxlfSBmcm9tICduZ3gtcGhvc3Bob3ItaWNvbnMnO1xyXG5pbXBvcnQge01hdFRvb2x0aXBNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQge0VjYWJzUGlwZXNNb2R1bGV9IGZyb20gJy4uL2Jhc2UvcGlwZXMvcGlwZXMubW9kdWxlJztcclxuaW1wb3J0IHtkaXN0aW5jdFVudGlsQ2hhbmdlZH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQge0VjYWJzTG9hZGluZ01vZHVsZX0gZnJvbSBcIi4uL2VjYWJzLWxvYWRpbmcvZWNhYnMtbG9hZGluZy5tb2R1bGVcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZWNhYnMtY2hpcC1hdXRvY29tcGxldGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9lY2Ficy1jaGlwLWF1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZWNhYnMtY2hpcC1hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEVjYWJzSW5wdXRNb2R1bGUsXHJcbiAgICBNYXRDaGlwc01vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRBdXRvY29tcGxldGVNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBFbGVtZW50V3JhcHBlck1vZHVsZSxcclxuICAgIE5neFBob3NwaG9ySWNvbnNMaWdodEZpbGVNb2R1bGUsXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgRWNhYnNQaXBlc01vZHVsZSxcclxuICAgIEVjYWJzTG9hZGluZ01vZHVsZSxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRWNhYnNDaGlwQXV0b2NvbXBsZXRlQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic0NoaXBBdXRvY29tcGxldGVDb21wb25lbnQ8VCA9IHVua25vd24+XHJcbiAgZXh0ZW5kcyBFY2Fic0VsZW1lbnRCYXNlQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25DaGFuZ2VzIHtcclxuICBAVmlld0NoaWxkKCdpbnB1dEVsZW0nKVxyXG4gIHByaXZhdGUgcmVhZG9ubHkgaW5wdXRSZWY/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xyXG5cclxuICBASW5wdXQoKSB2aXNpYmxlT3B0aW9ucyA9IDguNTtcclxuXHJcbiAgQElucHV0KClcclxuICBhdXRvQWN0aXZlRmlyc3RPcHRpb24gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIG5vUmVzdWx0c1RleHQgPSAnTm8gcmVzdWx0cyBmb3VuZCc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgbG9hZGluZ1RleHQgPSAnTG9hZGluZy4uLic7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgY29tcGFyZUZuOiAoYTogVCwgYjogVCkgPT4gYm9vbGVhbiA9IE9iamVjdC5pcztcclxuXHJcbiAgQElucHV0KClcclxuICBhdmF0YXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8eyAkaW1wbGljaXQ6IFNlbGVjdE9wdGlvbjxUPiB9PiB8IG51bGw7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdHJ1bmNhdGVBdCA9IDE4O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHN1cHByZXNzTmV4dFRlcm1PblJlZm9jdXMgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KHtyZXF1aXJlZDogdHJ1ZX0pXHJcbiAgc2V0IG9wdGlvbnModmFsdWU6IFNlbGVjdE9wdGlvbjxUPltdIHwgbnVsbCkge1xyXG4gICAgdGhpcy5fb3B0aW9ucy5zZXQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcmVhZG9ubHkgc2VsZWN0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUW10+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHJlYWRvbmx5IHRlcm1DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGlucHV0Q29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJyk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgbm9ybWFsaXplZFRlcm0kID0gdGhpcy5pbnB1dENvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXHJcbiAgICBzdGFydFdpdGgoJycpLFxyXG4gICAgbWFwKCh2YWx1ZSkgPT4gdmFsdWUgPz8gJycpLFxyXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICApO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9sb2FkaW5nID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9vcHRpb25zID0gc2lnbmFsPFNlbGVjdE9wdGlvbjxUPltdPihbXSk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfdmFsdWVzID0gc2lnbmFsPFRbXT4oW10pO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1cHByZXNzTmV4dFRlcm1PblJlZm9jdXMgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3Rlcm0gPSB0b1NpZ25hbCh0aGlzLm5vcm1hbGl6ZWRUZXJtJCwge2luaXRpYWxWYWx1ZTogJyd9KTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XHJcblxyXG4gIHByb3RlY3RlZCByZWFkb25seSBvdmVybGF5UGFuZWxDbGFzcyA9XHJcbiAgICAnZWNhYnMtY2hpcC1hdXRvY29tcGxldGUtb3ZlcmxheS1wYW5lbCc7XHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHNlbGVjdGVkT3B0aW9ucyA9IGNvbXB1dGVkKCgpID0+XHJcbiAgICB0aGlzLnNldFZhbGlkU2VsZWN0ZWRPcHRpb25zKHRoaXMuX3ZhbHVlcygpLCB0aGlzLl9vcHRpb25zKCkpLFxyXG4gICk7XHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZpbHRlcmVkT3B0aW9ucyA9IGNvbXB1dGVkKCgpID0+XHJcbiAgICB0aGlzLl9sb2FkaW5nKCkgPyBbXSA6IHRoaXMuc2V0RmlsdGVyZWRPcHRpb25zKHRoaXMuX3Rlcm0oKSwgdGhpcy5fdmFsdWVzKCksIHRoaXMuX29wdGlvbnMoKSksXHJcbiAgKTtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbm9NYXRjaFJlc3VsdCA9IGNvbXB1dGVkKFxyXG4gICAgKCkgPT4gIXRoaXMuX2xvYWRpbmcoKSAmJiAhIXRoaXMuX3Rlcm0oKS50cmltKCkubGVuZ3RoICYmICF0aGlzLmZpbHRlcmVkT3B0aW9ucygpLmxlbmd0aCxcclxuICApO1xyXG5cclxuICBnZXQgb3B0aW9ucygpOiBTZWxlY3RPcHRpb248VD5bXSB8IG51bGwge1xyXG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbnMoKTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnQ6IERvY3VtZW50KSB7XHJcbiAgICBzdXBlcigpO1xyXG5cclxuICAgIHRoaXMubm9ybWFsaXplZFRlcm0kXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxyXG4gICAgICAuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLnN1cHByZXNzTmV4dFRlcm1PblJlZm9jdXMgJiYgdGhpcy5fc3VwcHJlc3NOZXh0VGVybU9uUmVmb2N1cygpICYmIHZhbHVlID09PSAnJykge1xyXG4gICAgICAgICAgdGhpcy5fc3VwcHJlc3NOZXh0VGVybU9uUmVmb2N1cy5zZXQoZmFsc2UpO1xyXG5cclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMudGVybUNoYW5nZS5lbWl0KHZhbHVlKTtcclxuICAgICAgICB0aGlzLl9zdXBwcmVzc05leHRUZXJtT25SZWZvY3VzLnNldChmYWxzZSk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc3Qge2xvYWRpbmd9ID0gY2hhbmdlcyA/PyB7fTtcclxuXHJcbiAgICBpZiAobG9hZGluZykge1xyXG4gICAgICB0aGlzLl9sb2FkaW5nLnNldCh0aGlzLmxvYWRpbmcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0T3ZlcmxheUhlaWdodCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHBhbmVsID0gdGhpcy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKFxyXG4gICAgICBgLiR7dGhpcy5vdmVybGF5UGFuZWxDbGFzc31gLFxyXG4gICAgKSBhcyBIVE1MRWxlbWVudCB8IG51bGw7XHJcblxyXG4gICAgaWYgKCFwYW5lbCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgcGFuZWwuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICctLWF1dG9jb21wbGV0ZS12aXNpYmxlLW9wdGlvbnMnLFxyXG4gICAgICBTdHJpbmcodGhpcy52aXNpYmxlT3B0aW9ucyksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2V0U2VsZWN0aW9uKGV2ZW50OiBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc2VsZWN0ZWRWYWx1ZTogU2VsZWN0T3B0aW9uPFQ+ID0gZXZlbnQub3B0aW9uLnZhbHVlO1xyXG5cclxuICAgIGlmIChzZWxlY3RlZFZhbHVlPy5kaXNhYmxlZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZXhpc3RpbmdTZWxlY3Rpb24gPSB0aGlzLl92YWx1ZXMoKS5zb21lKChzZWxlY3RlZE9wdGlvbjogVCkgPT5cclxuICAgICAgdGhpcy5jb21wYXJlRm4oc2VsZWN0ZWRPcHRpb24sIHNlbGVjdGVkVmFsdWUudmFsdWUpLFxyXG4gICAgKTtcclxuXHJcbiAgICBpZiAoIWV4aXN0aW5nU2VsZWN0aW9uKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlVmFsdWVzKFsuLi50aGlzLl92YWx1ZXMoKSwgc2VsZWN0ZWRWYWx1ZS52YWx1ZV0pO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuY2xlYXJBbmRSZWZvY3VzSW5wdXQoKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZVNlbGVjdGlvbihvcHRpb246IFNlbGVjdE9wdGlvbjxUPik6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgb3B0aW9uPy5kaXNhYmxlZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZmlsdGVyZWRWYWx1ZXMgPSB0aGlzLl92YWx1ZXMoKS5maWx0ZXIoXHJcbiAgICAgICh2YWx1ZTogVCkgPT4gIXRoaXMuY29tcGFyZUZuKHZhbHVlLCBvcHRpb24udmFsdWUpLFxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLnVwZGF0ZVZhbHVlcyhmaWx0ZXJlZFZhbHVlcyk7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5Rm4oX2luZGV4OiBudW1iZXIsIG9wdGlvbjogU2VsZWN0T3B0aW9uPFQ+KTogVCB8IG51bWJlciB7XHJcbiAgICByZXR1cm4gb3B0aW9uLnZhbHVlID8/IF9pbmRleDtcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IFRbXSB8IG51bGwpOiB2b2lkIHtcclxuICAgIHRoaXMuX3ZhbHVlcy5zZXQoQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFtdKTtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IHR5cGVvZiB0aGlzLm9uQ2hhbmdlKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XHJcblxyXG4gICAgaWYgKGlzRGlzYWJsZWQpIHtcclxuICAgICAgdGhpcy5pbnB1dENvbnRyb2wuZGlzYWJsZSh7ZW1pdEV2ZW50OiBmYWxzZX0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnB1dENvbnRyb2wuZW5hYmxlKHtlbWl0RXZlbnQ6IGZhbHNlfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cGRhdGVEaXNhYmxlZFN0YXRlKCk7XHJcbiAgfVxyXG5cclxuICBibHVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2U6ICh2YWx1ZTogVFtdIHwgbnVsbCkgPT4gdm9pZCA9ICgpID0+IHtcclxuICB9O1xyXG5cclxuICBwcml2YXRlIG9uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+IHtcclxuICB9O1xyXG5cclxuICBwcml2YXRlIHVwZGF0ZVZhbHVlcyh2YWx1ZXM6IFRbXSk6IHZvaWQge1xyXG4gICAgdGhpcy5fdmFsdWVzLnNldCh2YWx1ZXMpO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZXMpO1xyXG4gICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UuZW1pdCh2YWx1ZXMpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbGVhckFuZFJlZm9jdXNJbnB1dCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnN1cHByZXNzTmV4dFRlcm1PblJlZm9jdXMpIHtcclxuICAgICAgdGhpcy5fc3VwcHJlc3NOZXh0VGVybU9uUmVmb2N1cy5zZXQodHJ1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pbnB1dENvbnRyb2wuc2V0VmFsdWUoJycpO1xyXG4gICAgdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8uZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0VmFsaWRTZWxlY3RlZE9wdGlvbnMoXHJcbiAgICBzZWxlY3RlZDogVFtdLFxyXG4gICAgb3B0aW9uczogU2VsZWN0T3B0aW9uPFQ+W10sXHJcbiAgKTogU2VsZWN0T3B0aW9uPFQ+W10ge1xyXG4gICAgaWYgKCFzZWxlY3RlZCB8fCAhb3B0aW9ucykge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHNlbGVjdGVkXHJcbiAgICAgIC5tYXAoKGl0ZW0pID0+XHJcbiAgICAgICAgb3B0aW9ucy5maW5kKChvcHRpb24pID0+IHRoaXMuY29tcGFyZUZuKG9wdGlvbi52YWx1ZSwgaXRlbSkpLFxyXG4gICAgICApXHJcbiAgICAgIC5maWx0ZXIoKHZhbHVlKTogdmFsdWUgaXMgU2VsZWN0T3B0aW9uPFQ+ID0+ICEhdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRGaWx0ZXJlZE9wdGlvbnMoXHJcbiAgICB0ZXJtOiBzdHJpbmcgfCBudWxsLFxyXG4gICAgc2VsZWN0ZWQ6IFRbXSxcclxuICAgIG9wdGlvbnM6IFNlbGVjdE9wdGlvbjxUPltdLFxyXG4gICk6IFNlbGVjdE9wdGlvbjxUPltdIHtcclxuICAgIGlmICghc2VsZWN0ZWQgfHwgIW9wdGlvbnMpIHtcclxuICAgICAgcmV0dXJuIFtdO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG5vcm1hbGl6ZWRUZXJtID0gdGVybT8udG9Mb3dlckNhc2UoKSA/PyAnJztcclxuXHJcbiAgICByZXR1cm4gb3B0aW9ucy5maWx0ZXIoKG9wdGlvbikgPT4ge1xyXG4gICAgICBjb25zdCBleGlzdGluZ1NlbGVjdGlvbiA9IHNlbGVjdGVkLnNvbWUoKHNlbGVjdGVkT3B0aW9uOiBUKSA9PlxyXG4gICAgICAgIHRoaXMuY29tcGFyZUZuKHNlbGVjdGVkT3B0aW9uLCBvcHRpb24udmFsdWUpLFxyXG4gICAgICApO1xyXG4gICAgICBjb25zdCBtYXRjaGVkVGVybSA9XHJcbiAgICAgICAgb3B0aW9uLmxhYmVsPy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKG5vcm1hbGl6ZWRUZXJtKSB8fFxyXG4gICAgICAgIHRlcm0/Lmxlbmd0aCA9PT0gMDtcclxuXHJcbiAgICAgIHJldHVybiAhZXhpc3RpbmdTZWxlY3Rpb24gJiYgbWF0Y2hlZFRlcm07XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGVjYWJzLWVsZW1lbnQtd3JhcHBlciBbZGF0YV09XCJnZXREYXRhKClcIj5cclxuICA8ZGl2IGNsYXNzPVwiZm9ybS1maWVsZF9faW5wdXQtLXdyYXBwZXJcIj5cclxuICAgIDxpbnB1dCBtYXRJbnB1dFxyXG4gICAgICAgICAgIFtpZF09XCJsYWJlbFwiXHJcbiAgICAgICAgICAgW25hbWVdPVwibGFiZWxcIlxyXG4gICAgICAgICAgIGNsYXNzPVwiZm9ybS1maWVsZF9faW5wdXRcIlxyXG4gICAgICAgICAgIFtuZ0NsYXNzXT1cImRpc2FibGVkID8gJ2Zvcm0tZmllbGRfX2lucHV0LS1kaXNhYmxlZCcgOiBudWxsXCJcclxuICAgICAgICAgICAjaW5wdXRFbGVtXHJcbiAgICAgICAgICAgW21hdENoaXBJbnB1dEZvcl09XCJjaGlwR3JpZFwiXHJcbiAgICAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvXCJcclxuICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiaW5wdXRDb250cm9sXCJcclxuICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgKGJsdXIpPVwiYmx1cigpXCIvPlxyXG4gIDwvZGl2PlxyXG48L2VjYWJzLWVsZW1lbnQtd3JhcHBlcj5cclxuXHJcbjxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCJcclxuICAgICAgICAgICAgICAgICAgW2F1dG9BY3RpdmVGaXJzdE9wdGlvbl09XCJhdXRvQWN0aXZlRmlyc3RPcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAob3B0aW9uU2VsZWN0ZWQpPVwic2V0U2VsZWN0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAob3BlbmVkKT1cInNldE92ZXJsYXlIZWlnaHQoKVwiXHJcbiAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJvdmVybGF5UGFuZWxDbGFzc1wiPlxyXG4gIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZmlsdGVyZWRPcHRpb25zKCk7IHRyYWNrQnk6IHRyYWNrQnlGblwiXHJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cIm9wdGlvblwiXHJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm9wdGlvbi5kaXNhYmxlZCA/PyBmYWxzZVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJhdmF0YXJDb250ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBvcHRpb259XCI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIHt7IG9wdGlvbi5sYWJlbCB9fVxyXG4gIDwvbWF0LW9wdGlvbj5cclxuXHJcbiAgPG1hdC1vcHRpb24gKm5nSWY9XCJsb2FkaW5nXCIgZGlzYWJsZWQ+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1yLTJcIj57eyBsb2FkaW5nVGV4dCB9fTwvZGl2PlxyXG4gICAgICA8ZWNhYnMtbG9hZGluZy1zcGlubmVyIHNpemU9XCJ0aW55XCI+PC9lY2Ficy1sb2FkaW5nLXNwaW5uZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L21hdC1vcHRpb24+XHJcblxyXG4gIDxtYXQtb3B0aW9uIGRpc2FibGVkICpuZ0lmPVwibm9NYXRjaFJlc3VsdCgpXCI+XHJcbiAgICB7eyBub1Jlc3VsdHNUZXh0IH19XHJcbiAgPC9tYXQtb3B0aW9uPlxyXG48L21hdC1hdXRvY29tcGxldGU+XHJcblxyXG48bWF0LWNoaXAtZ3JpZCAjY2hpcEdyaWRcclxuICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgICAgICAgW2NsYXNzLm10LTRdPVwic2VsZWN0ZWRPcHRpb25zKCkubGVuZ3RoID4gMFwiPlxyXG4gIDxtYXQtY2hpcC1yb3cgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBzZWxlY3RlZE9wdGlvbnMoKTsgdHJhY2tCeTogdHJhY2tCeUZuXCJcclxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCB8fCBvcHRpb24uZGlzYWJsZWRcIlxyXG4gICAgICAgICAgICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlU2VsZWN0aW9uKG9wdGlvbilcIj5cclxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYXZhdGFyQ29udGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogb3B0aW9ufVwiPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9wdGlvbj8ubGFiZWwgYXMgbGFiZWxcIj5cclxuICAgICAgPHNwYW4gW21hdFRvb2x0aXBdPVwibGFiZWxcIlxyXG4gICAgICAgICAgICBbbWF0VG9vbHRpcERpc2FibGVkXT1cImxhYmVsLmxlbmd0aCA8PSB0cnVuY2F0ZUF0XCI+XHJcbiAgICAgICAge3sgbGFiZWwgfCB0cnVuY2F0ZTogdHJ1bmNhdGVBdCB9fVxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxtYXQtaWNvbiBtYXRDaGlwUmVtb3ZlXHJcbiAgICAgICAgICAgICAgc3ZnSWNvbj1cInBoLWxpZ2h0OnhcIj5cclxuICAgIDwvbWF0LWljb24+XHJcbiAgPC9tYXQtY2hpcC1yb3c+XHJcbjwvbWF0LWNoaXAtZ3JpZD5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjYXZhdGFyQ29udGV4dCBsZXQtb3B0aW9uPlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdmF0YXJUZW1wbGF0ZVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJhdmF0YXJUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogb3B0aW9ufVwiPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
235
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtY2hpcC1hdXRvY29tcGxldGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWNoaXAtYXV0b2NvbXBsZXRlL2VjYWJzLWNoaXAtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1jaGlwLWF1dG9jb21wbGV0ZS9lY2Ficy1jaGlwLWF1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsVUFBVSxFQUVWLFlBQVksRUFDWixVQUFVLEVBQ1YsTUFBTSxFQUNOLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUNOLE1BQU0sRUFHTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLFdBQVcsRUFDWCxpQkFBaUIsRUFDakIsbUJBQW1CLEdBQ3BCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyx5QkFBeUIsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RCxPQUFPLEVBQ0wscUJBQXFCLEdBRXRCLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFlBQVksRUFB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QVE7c0JBRHhCLFNBQVM7dUJBQUMsV0FBVztnQkFHYixjQUFjO3NCQUF0QixLQUFLO2dCQUdOLHFCQUFxQjtzQkFEcEIsS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sVUFBVTtzQkFEVCxLQUFLO2dCQUlOLHlCQUF5QjtzQkFEeEIsS0FBSztnQkFJRixPQUFPO3NCQURWLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQU1oQixlQUFlO3NCQUR2QixNQUFNO2dCQUlFLFVBQVU7c0JBRGxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBjb21wdXRlZCxcclxuICBEZXN0cm95UmVmLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgaW5qZWN0LFxyXG4gIEluamVjdCxcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT3V0cHV0LFxyXG4gIHNpZ25hbCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcclxuICBGb3JtQ29udHJvbCxcclxuICBOR19WQUxVRV9BQ0NFU1NPUixcclxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU2VsZWN0T3B0aW9uIH0gZnJvbSAnLi4vYmFzZS9tb2RlbHMvc2VsZWN0Lm1vZGVscyc7XHJcbmltcG9ydCBFY2Fic0VsZW1lbnRCYXNlQ29tcG9uZW50IGZyb20gJy4uL2Jhc2UvZWxlbWVudC1iYXNlJztcclxuaW1wb3J0IHtcclxuICBNYXRBdXRvY29tcGxldGVNb2R1bGUsXHJcbiAgTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudCxcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xyXG5pbXBvcnQgeyBFY2Fic0lucHV0TW9kdWxlIH0gZnJvbSAnLi4vZWNhYnMtaW5wdXQvZWNhYnMtaW5wdXQubW9kdWxlJztcclxuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkLCB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTWF0Q2hpcHNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGlwcyc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQgeyBFbGVtZW50V3JhcHBlck1vZHVsZSB9IGZyb20gJy4uL2Jhc2UvZWxlbWVudC13cmFwcGVyL2VsZW1lbnQtd3JhcHBlci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBOZ3hQaG9zcGhvckljb25zTGlnaHRGaWxlTW9kdWxlIH0gZnJvbSAnbmd4LXBob3NwaG9yLWljb25zJztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBFY2Fic1BpcGVzTW9kdWxlIH0gZnJvbSAnLi4vYmFzZS9waXBlcy9waXBlcy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgRWNhYnNMb2FkaW5nTW9kdWxlIH0gZnJvbSAnLi4vZWNhYnMtbG9hZGluZy9lY2Ficy1sb2FkaW5nLm1vZHVsZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLWNoaXAtYXV0b2NvbXBsZXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtY2hpcC1hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2VjYWJzLWNoaXAtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBFY2Fic0lucHV0TW9kdWxlLFxyXG4gICAgTWF0Q2hpcHNNb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgRWxlbWVudFdyYXBwZXJNb2R1bGUsXHJcbiAgICBOZ3hQaG9zcGhvckljb25zTGlnaHRGaWxlTW9kdWxlLFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICAgIEVjYWJzUGlwZXNNb2R1bGUsXHJcbiAgICBFY2Fic0xvYWRpbmdNb2R1bGUsXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVjYWJzQ2hpcEF1dG9jb21wbGV0ZUNvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNDaGlwQXV0b2NvbXBsZXRlQ29tcG9uZW50PFQgPSB1bmtub3duPlxyXG4gIGV4dGVuZHMgRWNhYnNFbGVtZW50QmFzZUNvbXBvbmVudFxyXG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uQ2hhbmdlc1xyXG57XHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRFbGVtJylcclxuICBwcml2YXRlIHJlYWRvbmx5IGlucHV0UmVmPzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcclxuXHJcbiAgQElucHV0KCkgdmlzaWJsZU9wdGlvbnMgPSA4LjU7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYXV0b0FjdGl2ZUZpcnN0T3B0aW9uID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBub1Jlc3VsdHNUZXh0ID0gJ05vIHJlc3VsdHMgZm91bmQnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGxvYWRpbmdUZXh0ID0gJ0xvYWRpbmcuLi4nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNvbXBhcmVGbjogKGE6IFQsIGI6IFQpID0+IGJvb2xlYW4gPSBPYmplY3QuaXM7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYXZhdGFyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHsgJGltcGxpY2l0OiBTZWxlY3RPcHRpb248VD4gfT4gfCBudWxsO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHRydW5jYXRlQXQgPSAxODtcclxuXHJcbiAgQElucHV0KClcclxuICBzdXBwcmVzc05leHRUZXJtT25SZWZvY3VzID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pXHJcbiAgc2V0IG9wdGlvbnModmFsdWU6IFNlbGVjdE9wdGlvbjxUPltdIHwgbnVsbCkge1xyXG4gICAgdGhpcy5fb3B0aW9ucy5zZXQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcmVhZG9ubHkgc2VsZWN0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUW10+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHJlYWRvbmx5IHRlcm1DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGlucHV0Q29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJyk7XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgbm9ybWFsaXplZFRlcm0kID0gdGhpcy5pbnB1dENvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXHJcbiAgICBzdGFydFdpdGgoJycpLFxyXG4gICAgbWFwKCh2YWx1ZSkgPT4gdmFsdWUgPz8gJycpLFxyXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICApO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IF9sb2FkaW5nID0gc2lnbmFsPGJvb2xlYW4+KGZhbHNlKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IF9vcHRpb25zID0gc2lnbmFsPFNlbGVjdE9wdGlvbjxUPltdPihbXSk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfdmFsdWVzID0gc2lnbmFsPFRbXT4oW10pO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1cHByZXNzTmV4dFRlcm1PblJlZm9jdXMgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX3Rlcm0gPSB0b1NpZ25hbCh0aGlzLm5vcm1hbGl6ZWRUZXJtJCwgeyBpbml0aWFsVmFsdWU6ICcnIH0pO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcclxuXHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG92ZXJsYXlQYW5lbENsYXNzID1cclxuICAgICdlY2Ficy1jaGlwLWF1dG9jb21wbGV0ZS1vdmVybGF5LXBhbmVsJztcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2VsZWN0ZWRPcHRpb25zID0gY29tcHV0ZWQoKCkgPT5cclxuICAgIHRoaXMuc2V0VmFsaWRTZWxlY3RlZE9wdGlvbnModGhpcy5fdmFsdWVzKCksIHRoaXMuX29wdGlvbnMoKSksXHJcbiAgKTtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZmlsdGVyZWRPcHRpb25zID0gY29tcHV0ZWQoKCkgPT5cclxuICAgIHRoaXMuX2xvYWRpbmcoKVxyXG4gICAgICA/IFtdXHJcbiAgICAgIDogdGhpcy5zZXRGaWx0ZXJlZE9wdGlvbnModGhpcy5fdGVybSgpLCB0aGlzLl92YWx1ZXMoKSwgdGhpcy5fb3B0aW9ucygpKSxcclxuICApO1xyXG4gIHByb3RlY3RlZCByZWFkb25seSBub01hdGNoUmVzdWx0ID0gY29tcHV0ZWQoXHJcbiAgICAoKSA9PlxyXG4gICAgICAhdGhpcy5fbG9hZGluZygpICYmXHJcbiAgICAgICEhdGhpcy5fdGVybSgpLnRyaW0oKS5sZW5ndGggJiZcclxuICAgICAgIXRoaXMuZmlsdGVyZWRPcHRpb25zKCkubGVuZ3RoLFxyXG4gICk7XHJcblxyXG4gIGdldCBvcHRpb25zKCk6IFNlbGVjdE9wdGlvbjxUPltdIHwgbnVsbCB7XHJcbiAgICByZXR1cm4gdGhpcy5fb3B0aW9ucygpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudDogRG9jdW1lbnQpIHtcclxuICAgIHN1cGVyKCk7XHJcblxyXG4gICAgdGhpcy5ub3JtYWxpemVkVGVybSRcclxuICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgdGhpcy5zdXBwcmVzc05leHRUZXJtT25SZWZvY3VzICYmXHJcbiAgICAgICAgICB0aGlzLl9zdXBwcmVzc05leHRUZXJtT25SZWZvY3VzKCkgJiZcclxuICAgICAgICAgIHZhbHVlID09PSAnJ1xyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5fc3VwcHJlc3NOZXh0VGVybU9uUmVmb2N1cy5zZXQoZmFsc2UpO1xyXG5cclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMudGVybUNoYW5nZS5lbWl0KHZhbHVlKTtcclxuICAgICAgICB0aGlzLl9zdXBwcmVzc05leHRUZXJtT25SZWZvY3VzLnNldChmYWxzZSk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc3QgeyBsb2FkaW5nIH0gPSBjaGFuZ2VzID8/IHt9O1xyXG5cclxuICAgIGlmIChsb2FkaW5nKSB7XHJcbiAgICAgIHRoaXMuX2xvYWRpbmcuc2V0KHRoaXMubG9hZGluZyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZXRPdmVybGF5SGVpZ2h0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgcGFuZWwgPSB0aGlzLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXHJcbiAgICAgIGAuJHt0aGlzLm92ZXJsYXlQYW5lbENsYXNzfWAsXHJcbiAgICApIGFzIEhUTUxFbGVtZW50IHwgbnVsbDtcclxuXHJcbiAgICBpZiAoIXBhbmVsKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBwYW5lbC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgJy0tYXV0b2NvbXBsZXRlLXZpc2libGUtb3B0aW9ucycsXHJcbiAgICAgIFN0cmluZyh0aGlzLnZpc2libGVPcHRpb25zKSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBzZXRTZWxlY3Rpb24oZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzZWxlY3RlZFZhbHVlOiBTZWxlY3RPcHRpb248VD4gPSBldmVudC5vcHRpb24udmFsdWU7XHJcblxyXG4gICAgaWYgKHNlbGVjdGVkVmFsdWU/LmRpc2FibGVkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBleGlzdGluZ1NlbGVjdGlvbiA9IHRoaXMuX3ZhbHVlcygpLnNvbWUoKHNlbGVjdGVkT3B0aW9uOiBUKSA9PlxyXG4gICAgICB0aGlzLmNvbXBhcmVGbihzZWxlY3RlZE9wdGlvbiwgc2VsZWN0ZWRWYWx1ZS52YWx1ZSksXHJcbiAgICApO1xyXG5cclxuICAgIGlmICghZXhpc3RpbmdTZWxlY3Rpb24pIHtcclxuICAgICAgdGhpcy51cGRhdGVWYWx1ZXMoWy4uLnRoaXMuX3ZhbHVlcygpLCBzZWxlY3RlZFZhbHVlLnZhbHVlXSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jbGVhckFuZFJlZm9jdXNJbnB1dCgpO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlU2VsZWN0aW9uKG9wdGlvbjogU2VsZWN0T3B0aW9uPFQ+KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCBvcHRpb24/LmRpc2FibGVkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBmaWx0ZXJlZFZhbHVlcyA9IHRoaXMuX3ZhbHVlcygpLmZpbHRlcihcclxuICAgICAgKHZhbHVlOiBUKSA9PiAhdGhpcy5jb21wYXJlRm4odmFsdWUsIG9wdGlvbi52YWx1ZSksXHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMudXBkYXRlVmFsdWVzKGZpbHRlcmVkVmFsdWVzKTtcclxuICB9XHJcblxyXG4gIHRyYWNrQnlGbihfaW5kZXg6IG51bWJlciwgb3B0aW9uOiBTZWxlY3RPcHRpb248VD4pOiBUIHwgbnVtYmVyIHtcclxuICAgIHJldHVybiBvcHRpb24udmFsdWUgPz8gX2luZGV4O1xyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogVFtdIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgdGhpcy5fdmFsdWVzLnNldChBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW10pO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogdHlwZW9mIHRoaXMub25DaGFuZ2UpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuXHJcbiAgICBpZiAoaXNEaXNhYmxlZCkge1xyXG4gICAgICB0aGlzLmlucHV0Q29udHJvbC5kaXNhYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaW5wdXRDb250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cGRhdGVEaXNhYmxlZFN0YXRlKCk7XHJcbiAgfVxyXG5cclxuICBibHVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2U6ICh2YWx1ZTogVFtdIHwgbnVsbCkgPT4gdm9pZCA9ICgpID0+IHt9O1xyXG5cclxuICBwcml2YXRlIG9uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xyXG5cclxuICBwcml2YXRlIHVwZGF0ZVZhbHVlcyh2YWx1ZXM6IFRbXSk6IHZvaWQge1xyXG4gICAgdGhpcy5fdmFsdWVzLnNldCh2YWx1ZXMpO1xyXG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZXMpO1xyXG4gICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UuZW1pdCh2YWx1ZXMpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjbGVhckFuZFJlZm9jdXNJbnB1dCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnN1cHByZXNzTmV4dFRlcm1PblJlZm9jdXMpIHtcclxuICAgICAgdGhpcy5fc3VwcHJlc3NOZXh0VGVybU9uUmVmb2N1cy5zZXQodHJ1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5pbnB1dENvbnRyb2wuc2V0VmFsdWUoJycpO1xyXG4gICAgdGhpcy5pbnB1dFJlZj8ubmF0aXZlRWxlbWVudD8uZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0VmFsaWRTZWxlY3RlZE9wdGlvbnMoXHJcbiAgICBzZWxlY3RlZDogVFtdLFxyXG4gICAgb3B0aW9uczogU2VsZWN0T3B0aW9uPFQ+W10sXHJcbiAgKTogU2VsZWN0T3B0aW9uPFQ+W10ge1xyXG4gICAgaWYgKCFzZWxlY3RlZCB8fCAhb3B0aW9ucykge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHNlbGVjdGVkXHJcbiAgICAgIC5tYXAoKGl0ZW0pID0+XHJcbiAgICAgICAgb3B0aW9ucy5maW5kKChvcHRpb24pID0+IHRoaXMuY29tcGFyZUZuKG9wdGlvbi52YWx1ZSwgaXRlbSkpLFxyXG4gICAgICApXHJcbiAgICAgIC5maWx0ZXIoKHZhbHVlKTogdmFsdWUgaXMgU2VsZWN0T3B0aW9uPFQ+ID0+ICEhdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRGaWx0ZXJlZE9wdGlvbnMoXHJcbiAgICB0ZXJtOiBzdHJpbmcgfCBudWxsLFxyXG4gICAgc2VsZWN0ZWQ6IFRbXSxcclxuICAgIG9wdGlvbnM6IFNlbGVjdE9wdGlvbjxUPltdLFxyXG4gICk6IFNlbGVjdE9wdGlvbjxUPltdIHtcclxuICAgIGlmICghc2VsZWN0ZWQgfHwgIW9wdGlvbnMpIHtcclxuICAgICAgcmV0dXJuIFtdO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG5vcm1hbGl6ZWRUZXJtID0gdGVybT8udG9Mb3dlckNhc2UoKSA/PyAnJztcclxuXHJcbiAgICByZXR1cm4gb3B0aW9ucy5maWx0ZXIoKG9wdGlvbikgPT4ge1xyXG4gICAgICBjb25zdCBleGlzdGluZ1NlbGVjdGlvbiA9IHNlbGVjdGVkLnNvbWUoKHNlbGVjdGVkT3B0aW9uOiBUKSA9PlxyXG4gICAgICAgIHRoaXMuY29tcGFyZUZuKHNlbGVjdGVkT3B0aW9uLCBvcHRpb24udmFsdWUpLFxyXG4gICAgICApO1xyXG4gICAgICBjb25zdCBtYXRjaGVkVGVybSA9XHJcbiAgICAgICAgb3B0aW9uLmxhYmVsPy50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKG5vcm1hbGl6ZWRUZXJtKSB8fFxyXG4gICAgICAgIHRlcm0/Lmxlbmd0aCA9PT0gMDtcclxuXHJcbiAgICAgIHJldHVybiAhZXhpc3RpbmdTZWxlY3Rpb24gJiYgbWF0Y2hlZFRlcm07XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGVjYWJzLWVsZW1lbnQtd3JhcHBlciBbZGF0YV09XCJnZXREYXRhKClcIj5cclxuICA8ZGl2IGNsYXNzPVwiZm9ybS1maWVsZF9faW5wdXQtLXdyYXBwZXJcIj5cclxuICAgIDxpbnB1dCBtYXRJbnB1dFxyXG4gICAgICAgICAgIFtpZF09XCJsYWJlbFwiXHJcbiAgICAgICAgICAgW25hbWVdPVwibGFiZWxcIlxyXG4gICAgICAgICAgIGNsYXNzPVwiZm9ybS1maWVsZF9faW5wdXRcIlxyXG4gICAgICAgICAgIFtuZ0NsYXNzXT1cImRpc2FibGVkID8gJ2Zvcm0tZmllbGRfX2lucHV0LS1kaXNhYmxlZCcgOiBudWxsXCJcclxuICAgICAgICAgICAjaW5wdXRFbGVtXHJcbiAgICAgICAgICAgW21hdENoaXBJbnB1dEZvcl09XCJjaGlwR3JpZFwiXHJcbiAgICAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvXCJcclxuICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiaW5wdXRDb250cm9sXCJcclxuICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgKGJsdXIpPVwiYmx1cigpXCIvPlxyXG4gIDwvZGl2PlxyXG48L2VjYWJzLWVsZW1lbnQtd3JhcHBlcj5cclxuXHJcbjxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCJcclxuICAgICAgICAgICAgICAgICAgW2F1dG9BY3RpdmVGaXJzdE9wdGlvbl09XCJhdXRvQWN0aXZlRmlyc3RPcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAob3B0aW9uU2VsZWN0ZWQpPVwic2V0U2VsZWN0aW9uKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAob3BlbmVkKT1cInNldE92ZXJsYXlIZWlnaHQoKVwiXHJcbiAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJvdmVybGF5UGFuZWxDbGFzc1wiPlxyXG4gIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZmlsdGVyZWRPcHRpb25zKCk7IHRyYWNrQnk6IHRyYWNrQnlGblwiXHJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cIm9wdGlvblwiXHJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIm9wdGlvbi5kaXNhYmxlZCA/PyBmYWxzZVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJhdmF0YXJDb250ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBvcHRpb259XCI+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIHt7IG9wdGlvbi5sYWJlbCB9fVxyXG4gIDwvbWF0LW9wdGlvbj5cclxuXHJcbiAgPG1hdC1vcHRpb24gKm5nSWY9XCJsb2FkaW5nXCIgZGlzYWJsZWQ+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1yLTJcIj57eyBsb2FkaW5nVGV4dCB9fTwvZGl2PlxyXG4gICAgICA8ZWNhYnMtbG9hZGluZy1zcGlubmVyIHNpemU9XCJ0aW55XCI+PC9lY2Ficy1sb2FkaW5nLXNwaW5uZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L21hdC1vcHRpb24+XHJcblxyXG4gIDxtYXQtb3B0aW9uIGRpc2FibGVkICpuZ0lmPVwibm9NYXRjaFJlc3VsdCgpXCI+XHJcbiAgICB7eyBub1Jlc3VsdHNUZXh0IH19XHJcbiAgPC9tYXQtb3B0aW9uPlxyXG48L21hdC1hdXRvY29tcGxldGU+XHJcblxyXG48bWF0LWNoaXAtZ3JpZCAjY2hpcEdyaWRcclxuICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgICAgICAgW2NsYXNzLm10LTRdPVwic2VsZWN0ZWRPcHRpb25zKCkubGVuZ3RoID4gMFwiPlxyXG4gIDxtYXQtY2hpcC1yb3cgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBzZWxlY3RlZE9wdGlvbnMoKTsgdHJhY2tCeTogdHJhY2tCeUZuXCJcclxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCB8fCBvcHRpb24uZGlzYWJsZWRcIlxyXG4gICAgICAgICAgICAgICAgKHJlbW92ZWQpPVwicmVtb3ZlU2VsZWN0aW9uKG9wdGlvbilcIj5cclxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYXZhdGFyQ29udGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogb3B0aW9ufVwiPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9wdGlvbj8ubGFiZWwgYXMgbGFiZWxcIj5cclxuICAgICAgPHNwYW4gW21hdFRvb2x0aXBdPVwibGFiZWxcIlxyXG4gICAgICAgICAgICBbbWF0VG9vbHRpcERpc2FibGVkXT1cImxhYmVsLmxlbmd0aCA8PSB0cnVuY2F0ZUF0XCI+XHJcbiAgICAgICAge3sgbGFiZWwgfCB0cnVuY2F0ZTogdHJ1bmNhdGVBdCB9fVxyXG4gICAgICA8L3NwYW4+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDxtYXQtaWNvbiBtYXRDaGlwUmVtb3ZlXHJcbiAgICAgICAgICAgICAgc3ZnSWNvbj1cInBoLWxpZ2h0OnhcIj5cclxuICAgIDwvbWF0LWljb24+XHJcbiAgPC9tYXQtY2hpcC1yb3c+XHJcbjwvbWF0LWNoaXAtZ3JpZD5cclxuXHJcbjxuZy10ZW1wbGF0ZSAjYXZhdGFyQ29udGV4dCBsZXQtb3B0aW9uPlxyXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdmF0YXJUZW1wbGF0ZVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJhdmF0YXJUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogb3B0aW9ufVwiPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9uZy1jb250YWluZXI+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==