sidesys-generic-ui 2.4.6 → 2.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/esm2022/lib/animation/animation.component.mjs +6 -3
  2. package/esm2022/lib/avatar/components/profile-group/s-profile-group.component.mjs +1 -1
  3. package/esm2022/lib/avatar/s-avatar.component.mjs +13 -16
  4. package/esm2022/lib/badge/s-badge.component.mjs +7 -6
  5. package/esm2022/lib/bottom-status-bar/bottom-status-bar.component.mjs +7 -11
  6. package/esm2022/lib/breadcrum/s-breadcrum.component.mjs +7 -4
  7. package/esm2022/lib/button/components/button/s-button.component.mjs +7 -3
  8. package/esm2022/lib/card/s-card.component.mjs +10 -7
  9. package/esm2022/lib/checkbox/checkbox-new/s-checkbox.component.mjs +12 -5
  10. package/esm2022/lib/checkbox/s-checkbox.component.mjs +8 -8
  11. package/esm2022/lib/collapse/s-collapse.component.mjs +7 -4
  12. package/esm2022/lib/company-logo/s-company-logo.component.mjs +9 -5
  13. package/esm2022/lib/container/s-container.component.mjs +6 -3
  14. package/esm2022/lib/content/s-content.component.mjs +6 -3
  15. package/esm2022/lib/dynamic-form/s-dynamic-form.component.mjs +1 -1
  16. package/esm2022/lib/empty/empty.component.mjs +4 -3
  17. package/esm2022/lib/footer/s-footer.component.mjs +3 -3
  18. package/esm2022/lib/grid-multi-inputs/grid-multi-inputs.component.mjs +1 -1
  19. package/esm2022/lib/icon-material/s-icon-material.component.mjs +6 -3
  20. package/esm2022/lib/input/components/calendar/s-calendar.component.mjs +11 -14
  21. package/esm2022/lib/input/components/color/s-color.component.mjs +10 -8
  22. package/esm2022/lib/input/components/error-control/s-error-control.component.mjs +18 -15
  23. package/esm2022/lib/input/components/input/s-input-model.mjs +2 -6
  24. package/esm2022/lib/input/components/input/s-input.component.mjs +11 -5
  25. package/esm2022/lib/input/components/input-number/s-input-number.component.mjs +12 -12
  26. package/esm2022/lib/input/components/input-textarea/s-input-textarea.component.mjs +11 -8
  27. package/esm2022/lib/input/components/slider/s-slider.component.mjs +21 -13
  28. package/esm2022/lib/input/components/time/s-time.component.mjs +11 -14
  29. package/esm2022/lib/input/components/validation-error/s-validation-error.component.mjs +7 -4
  30. package/esm2022/lib/link/s-link.component.mjs +6 -3
  31. package/esm2022/lib/list/s-list.component.mjs +6 -3
  32. package/esm2022/lib/list-simple/s-list-simple.component.mjs +6 -3
  33. package/esm2022/lib/modal/modal-confirm/modal-confirm.component.mjs +6 -13
  34. package/esm2022/lib/modal/modal-confirm/models/modal-confirm.interface.mjs +1 -1
  35. package/esm2022/lib/modal/modal-confirm/services/modal-confirm.service.mjs +1 -1
  36. package/esm2022/lib/navbar/components/icon-menu/components/s-notificaction.component.mjs +1 -1
  37. package/esm2022/lib/navbar/components/icon-menu/s-icon-menu.component.mjs +1 -1
  38. package/esm2022/lib/navbar/components/menu-main/s-menu-main.component.mjs +1 -1
  39. package/esm2022/lib/navbar/s-navbar.component.mjs +9 -3
  40. package/esm2022/lib/pagination/s-pagination.component.mjs +7 -4
  41. package/esm2022/lib/popup/s-popup.component.mjs +22 -19
  42. package/esm2022/lib/precode/s-precode.component.mjs +9 -7
  43. package/esm2022/lib/progressbar/s-progressbar.component.mjs +6 -3
  44. package/esm2022/lib/radio/s-radio.component.mjs +13 -11
  45. package/esm2022/lib/select/select/s-select.component.mjs +12 -8
  46. package/esm2022/lib/select/select-multiple/s-select-multiple-model.mjs +1 -1
  47. package/esm2022/lib/select/select-multiple/s-select-multiple.component.mjs +12 -10
  48. package/esm2022/lib/select/select-multiple-old/s-select-multiple-old.component.mjs +1 -1
  49. package/esm2022/lib/select/select-simple/s-select-simple.component.mjs +1 -1
  50. package/esm2022/lib/sidebar/s-sidebar.component.mjs +6 -3
  51. package/esm2022/lib/spinner/s-spinner.component.mjs +1 -1
  52. package/esm2022/lib/sub-menu/s-sub-menu.component.mjs +1 -1
  53. package/esm2022/lib/table-complete/table-complete.component.mjs +7 -3
  54. package/esm2022/lib/table-double/table-double.component.mjs +4 -3
  55. package/esm2022/lib/table-double/table-double.model.mjs +1 -1
  56. package/esm2022/lib/table-double-complete/table-double-complete.component.mjs +6 -4
  57. package/esm2022/lib/table-double-complete/table-double-complete.model.mjs +1 -1
  58. package/esm2022/lib/table-t/s-tablet.component.mjs +6 -3
  59. package/esm2022/lib/table-t/table-actions-buttons/interfaces/TypeActions.interface.mjs +1 -1
  60. package/esm2022/lib/table-t/table-actions-buttons/table-actions-buttons.component.mjs +6 -3
  61. package/esm2022/lib/tabs/models/configTabs.interface.mjs +1 -1
  62. package/esm2022/lib/tabs/s-tabs.component.mjs +8 -4
  63. package/esm2022/lib/tag/s-tag.component.mjs +6 -3
  64. package/esm2022/lib/timeline/s-timeline.component.mjs +6 -3
  65. package/esm2022/lib/toast/s-toast-service.mjs +3 -3
  66. package/esm2022/lib/toast/s-toast.component.mjs +3 -3
  67. package/esm2022/lib/toggle-switch/s-toggle-switch.component.mjs +1 -1
  68. package/esm2022/lib/toggle-switch/toggle-switch-form/toggle-switch-form.component.mjs +12 -10
  69. package/esm2022/lib/toolbar-top/toolbar-top.component.mjs +4 -3
  70. package/esm2022/lib/tooltip/s-tooltip.component.mjs +32 -16
  71. package/esm2022/lib/tree-list/s-tree-list.component.mjs +6 -3
  72. package/fesm2022/sidesys-generic-ui.mjs +581 -461
  73. package/fesm2022/sidesys-generic-ui.mjs.map +1 -1
  74. package/lib/animation/animation.component.d.ts +2 -1
  75. package/lib/avatar/s-avatar.component.d.ts +2 -2
  76. package/lib/badge/s-badge.component.d.ts +3 -5
  77. package/lib/bottom-status-bar/bottom-status-bar.component.d.ts +2 -0
  78. package/lib/breadcrum/s-breadcrum.component.d.ts +2 -1
  79. package/lib/button/components/button/s-button.component.d.ts +6 -5
  80. package/lib/card/s-card.component.d.ts +3 -2
  81. package/lib/checkbox/checkbox-new/s-checkbox.component.d.ts +5 -3
  82. package/lib/collapse/s-collapse.component.d.ts +2 -1
  83. package/lib/company-logo/s-company-logo.component.d.ts +2 -1
  84. package/lib/container/s-container.component.d.ts +2 -1
  85. package/lib/content/s-content.component.d.ts +2 -1
  86. package/lib/empty/empty.component.d.ts +2 -0
  87. package/lib/icon-material/s-icon-material.component.d.ts +2 -1
  88. package/lib/input/components/calendar/s-calendar.component.d.ts +4 -3
  89. package/lib/input/components/color/s-color.component.d.ts +4 -3
  90. package/lib/input/components/error-control/s-error-control.component.d.ts +2 -1
  91. package/lib/input/components/input/s-input-model.d.ts +0 -1
  92. package/lib/input/components/input/s-input.component.d.ts +5 -2
  93. package/lib/input/components/input-number/s-input-number.component.d.ts +4 -2
  94. package/lib/input/components/input-textarea/s-input-textarea.component.d.ts +4 -2
  95. package/lib/input/components/time/s-time.component.d.ts +4 -3
  96. package/lib/input/components/validation-error/s-validation-error.component.d.ts +2 -1
  97. package/lib/link/s-link.component.d.ts +2 -1
  98. package/lib/list/s-list.component.d.ts +2 -1
  99. package/lib/list-simple/s-list-simple.component.d.ts +2 -1
  100. package/lib/modal/modal-confirm/modal-confirm.component.d.ts +1 -0
  101. package/lib/modal/modal-confirm/models/modal-confirm.interface.d.ts +1 -0
  102. package/lib/navbar/s-navbar.component.d.ts +5 -3
  103. package/lib/pagination/s-pagination.component.d.ts +2 -1
  104. package/lib/popup/s-popup.component.d.ts +2 -1
  105. package/lib/precode/s-precode.component.d.ts +3 -5
  106. package/lib/progressbar/s-progressbar.component.d.ts +2 -1
  107. package/lib/radio/s-radio.component.d.ts +3 -2
  108. package/lib/select/select/s-select.component.d.ts +5 -3
  109. package/lib/select/select-multiple/s-select-multiple-model.d.ts +1 -0
  110. package/lib/select/select-multiple/s-select-multiple.component.d.ts +5 -3
  111. package/lib/sidebar/s-sidebar.component.d.ts +2 -1
  112. package/lib/table-complete/table-complete.component.d.ts +3 -1
  113. package/lib/table-double/table-double.component.d.ts +1 -0
  114. package/lib/table-double/table-double.model.d.ts +1 -0
  115. package/lib/table-double-complete/table-double-complete.component.d.ts +1 -0
  116. package/lib/table-double-complete/table-double-complete.model.d.ts +1 -0
  117. package/lib/table-t/s-tablet.component.d.ts +2 -1
  118. package/lib/table-t/table-actions-buttons/interfaces/TypeActions.interface.d.ts +1 -0
  119. package/lib/table-t/table-actions-buttons/table-actions-buttons.component.d.ts +2 -1
  120. package/lib/tabs/models/configTabs.interface.d.ts +1 -0
  121. package/lib/tabs/s-tabs.component.d.ts +2 -2
  122. package/lib/tag/s-tag.component.d.ts +2 -1
  123. package/lib/timeline/s-timeline.component.d.ts +2 -1
  124. package/lib/toast/s-toast-service.d.ts +3 -3
  125. package/lib/toggle-switch/toggle-switch-form/toggle-switch-form.component.d.ts +6 -3
  126. package/lib/toolbar-top/toolbar-top.component.d.ts +2 -0
  127. package/lib/tooltip/s-tooltip.component.d.ts +2 -1
  128. package/lib/tree-list/s-tree-list.component.d.ts +2 -1
  129. package/package.json +1 -1
@@ -20,12 +20,14 @@ export class ToggleSwitchFormComponent extends ControlBooleanAccessorDirective {
20
20
  this._controlSubscribed = false;
21
21
  }
22
22
  ngAfterViewInit() {
23
- if (this.config.useFormControl &&
24
- this.control &&
25
- !this._controlSubscribed) {
23
+ if (this.config.useFormControl && this.control && !this._controlSubscribed) {
26
24
  this.subscribeToControl();
27
25
  }
28
26
  }
27
+ ngOnInit() {
28
+ if (!this.id)
29
+ this.id = this.config?.id ?? `s-toggle-switch`;
30
+ }
29
31
  subscribeToControl() {
30
32
  if (this._controlSubscribed || !this.control)
31
33
  return;
@@ -101,9 +103,7 @@ export class ToggleSwitchFormComponent extends ControlBooleanAccessorDirective {
101
103
  }
102
104
  getIcon() {
103
105
  const isChecked = this.control?.value ?? this.value === true;
104
- return isChecked
105
- ? (this.config?.icon ?? 'check')
106
- : (this.config?.iconOff ?? 'close');
106
+ return isChecked ? (this.config?.icon ?? 'check') : (this.config?.iconOff ?? 'close');
107
107
  }
108
108
  onBlur(event) {
109
109
  this.blur.next(event);
@@ -153,13 +153,13 @@ export class ToggleSwitchFormComponent extends ControlBooleanAccessorDirective {
153
153
  }
154
154
  }
155
155
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToggleSwitchFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
156
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ToggleSwitchFormComponent, selector: "s-toggle-switch", inputs: { config: "config" }, outputs: { blur: "blur", focus: "focus", valueChange: "valueChange" }, providers: [
156
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ToggleSwitchFormComponent, selector: "s-toggle-switch", inputs: { config: "config", id: "id" }, outputs: { blur: "blur", focus: "focus", valueChange: "valueChange" }, providers: [
157
157
  {
158
158
  provide: NG_VALUE_ACCESSOR,
159
159
  useExisting: forwardRef(() => ToggleSwitchFormComponent),
160
160
  multi: true,
161
161
  },
162
- ], viewQueries: [{ propertyName: "inputHidden", first: true, predicate: ["inputHidden"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"s-toggle-switch\"\n [ngClass]=\"{\n 's-toggle-switch--size-md': config && config.size === 'md',\n 's-toggle-switch--vertical': config && config.vertical,\n }\">\n <label\n class=\"s-toggle-switch__content\"\n tabindex=\"0\"\n (keydown)=\"onKeydown($event)\">\n <ng-container *ngIf=\"control; else notUseFormControl\">\n <input\n #inputHidden\n tabindex=\"-1\"\n class=\"s-toggle-switch__content__input\"\n type=\"checkbox\"\n [formControl]=\"control\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\" />\n </ng-container>\n <ng-template #notUseFormControl>\n <input\n #inputHidden\n tabindex=\"-1\"\n class=\"s-toggle-switch__content__input\"\n type=\"checkbox\"\n [disabled]=\"config.disabled || config.readOnly\"\n [checked]=\"getValue()\"\n (input)=\"onInput()\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\" />\n </ng-template>\n <span\n class=\"s-toggle-switch__content__slider\"\n [ngClass]=\"{\n active: getValueGeneral(),\n 'no-active': !getValueGeneral(),\n disabled:\n (control?.disabled || (config && config.disabled)) &&\n !(config && config.readOnly),\n }\">\n <s-icon-mat\n class=\"slider-icon-dynamic\"\n *ngIf=\"(config && config.showIcon !== false) || !config\"\n >{{ getIcon() }}</s-icon-mat\n >\n </span>\n </label>\n\n <div *ngIf=\"config?.label\" (click)=\"onClickLabel()\">\n <div\n *ngIf=\"control\"\n class=\"s-toggle-switch__label\"\n [ngClass]=\"{\n 'bold-select-active':\n (config.boldSelectActive ?? true) && control.value,\n disabled: (control.disabled || config.disabled) && !config.readOnly,\n }\">\n {{ config.label }}\n </div>\n\n <div\n *ngIf=\"!control\"\n class=\"s-toggle-switch__label\"\n [ngClass]=\"{\n 'bold-select-active': (config.boldSelectActive ?? true) && value,\n disabled: config.disabled && !config.readOnly,\n }\">\n {{ config.label }}\n </div>\n </div>\n</div>\n", styles: [".s-toggle-switch{display:flex;align-items:center;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.s-toggle-switch__content{transform:translate(.125rem);position:relative;display:inline-block;width:2rem;height:1rem;min-width:2rem}.s-toggle-switch__content__input{opacity:0;width:0;height:0}.s-toggle-switch__content__slider.active{background-color:var(--primary-600)}.s-toggle-switch__content__slider.no-active{background-color:var(--secondary-600)}.s-toggle-switch__content__slider.active:before{-webkit-transform:translateX(1.5rem);-ms-transform:translateX(1.5rem);transform:translate(1.5rem);left:-.375rem}.s-toggle-switch__content__slider{position:absolute;cursor:pointer;inset:0;background-color:var(--secondary-600);-webkit-transition:.4s;transition:.4s;border-radius:.938rem}.s-toggle-switch__content__slider .slider-icon-dynamic{position:absolute;transition:left .4s;top:.125rem;z-index:1}.s-toggle-switch__content__slider .slider-icon-dynamic span{color:var(--neutrals-1200);font-size:.8rem;font-weight:900}.s-toggle-switch__content__slider.active .slider-icon-dynamic{left:.188rem}.s-toggle-switch__content__slider.no-active .slider-icon-dynamic{left:1rem}.s-toggle-switch__content__slider.disabled{background-color:var(--neutrals-900)!important;cursor:default}.s-toggle-switch__content__slider:before{z-index:2;position:absolute;content:\"\";background-color:var(--neutrals-1200);-webkit-transition:.4s;transition:.4s;border-radius:50%;height:.75rem;width:.75rem;left:.125rem;bottom:.125rem}.s-toggle-switch__label{margin-left:.563rem;font-size:.875rem;color:var(--secondary-600)}.s-toggle-switch__label.disabled{color:var(--neutrals-700)}.s-toggle-switch__label.bold-select-active{font-weight:700}.s-toggle-switch--size-md .s-toggle-switch__content{width:2.5rem;height:1.25rem;min-width:2.5rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider:before{height:1rem;width:1rem;left:.125rem;bottom:.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.active:before{left:-.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.no-active:before{left:.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider .slider-icon-dynamic span{position:absolute;font-size:1rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.active .slider-icon-dynamic{left:.188rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.no-active .slider-icon-dynamic{left:1.375rem}.s-toggle-switch:hover .s-toggle-switch__content__slider.active{background-color:var(--primary-900)}.s-toggle-switch:hover .s-toggle-switch__content__slider.no-active{background-color:var(--secondary-900)}.s-toggle-switch--vertical{align-items:center}.s-toggle-switch--vertical .s-toggle-switch__content{transform:rotate(90deg)}.s-toggle-switch--vertical .slider-icon-dynamic .s-icon-mat .material-icons{transform:rotate(-90deg)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i3.SIconMaterialComponent, selector: "s-icon-mat", inputs: ["name", "size", "fill", "weight", "grade", "style", "type"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], encapsulation: i0.ViewEncapsulation.None }); }
162
+ ], viewQueries: [{ propertyName: "inputHidden", first: true, predicate: ["inputHidden"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"s-toggle-switch\"\n [ngClass]=\"{\n 's-toggle-switch--size-md': config && config.size === 'md',\n 's-toggle-switch--vertical': config && config.vertical,\n }\">\n <label [id]=\"id + '-label'\" class=\"s-toggle-switch__content\" tabindex=\"0\" (keydown)=\"onKeydown($event)\">\n <ng-container *ngIf=\"control; else notUseFormControl\">\n <input\n #inputHidden\n tabindex=\"-1\"\n class=\"s-toggle-switch__content__input\"\n type=\"checkbox\"\n [id]=\"id\"\n [formControl]=\"control\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\" />\n </ng-container>\n <ng-template #notUseFormControl>\n <input\n #inputHidden\n tabindex=\"-1\"\n class=\"s-toggle-switch__content__input\"\n type=\"checkbox\"\n [id]=\"id\"\n [disabled]=\"config.disabled || config.readOnly\"\n [checked]=\"getValue()\"\n (input)=\"onInput()\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\" />\n </ng-template>\n <span\n class=\"s-toggle-switch__content__slider\"\n [ngClass]=\"{\n active: getValueGeneral(),\n 'no-active': !getValueGeneral(),\n disabled: (control?.disabled || (config && config.disabled)) && !(config && config.readOnly),\n }\">\n <s-icon-mat class=\"slider-icon-dynamic\" *ngIf=\"(config && config.showIcon !== false) || !config\">{{\n getIcon()\n }}</s-icon-mat>\n </span>\n </label>\n\n <div *ngIf=\"config?.label\" (click)=\"onClickLabel()\">\n <div\n *ngIf=\"control\"\n [id]=\"id + '-label'\"\n class=\"s-toggle-switch__label\"\n [ngClass]=\"{\n 'bold-select-active': (config.boldSelectActive ?? true) && control.value,\n disabled: (control.disabled || config.disabled) && !config.readOnly,\n }\">\n {{ config.label }}\n </div>\n\n <div\n *ngIf=\"!control\"\n [id]=\"id + '-label'\"\n class=\"s-toggle-switch__label\"\n [ngClass]=\"{\n 'bold-select-active': (config.boldSelectActive ?? true) && value,\n disabled: config.disabled && !config.readOnly,\n }\">\n {{ config.label }}\n </div>\n </div>\n</div>\n", styles: [".s-toggle-switch{display:flex;align-items:center;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.s-toggle-switch__content{transform:translate(.125rem);position:relative;display:inline-block;width:2rem;height:1rem;min-width:2rem}.s-toggle-switch__content__input{opacity:0;width:0;height:0}.s-toggle-switch__content__slider.active{background-color:var(--primary-600)}.s-toggle-switch__content__slider.no-active{background-color:var(--secondary-600)}.s-toggle-switch__content__slider.active:before{-webkit-transform:translateX(1.5rem);-ms-transform:translateX(1.5rem);transform:translate(1.5rem);left:-.375rem}.s-toggle-switch__content__slider{position:absolute;cursor:pointer;inset:0;background-color:var(--secondary-600);-webkit-transition:.4s;transition:.4s;border-radius:.938rem}.s-toggle-switch__content__slider .slider-icon-dynamic{position:absolute;transition:left .4s;top:.125rem;z-index:1}.s-toggle-switch__content__slider .slider-icon-dynamic span{color:var(--neutrals-1200);font-size:.8rem;font-weight:900}.s-toggle-switch__content__slider.active .slider-icon-dynamic{left:.188rem}.s-toggle-switch__content__slider.no-active .slider-icon-dynamic{left:1rem}.s-toggle-switch__content__slider.disabled{background-color:var(--neutrals-900)!important;cursor:default}.s-toggle-switch__content__slider:before{z-index:2;position:absolute;content:\"\";background-color:var(--neutrals-1200);-webkit-transition:.4s;transition:.4s;border-radius:50%;height:.75rem;width:.75rem;left:.125rem;bottom:.125rem}.s-toggle-switch__label{margin-left:.563rem;font-size:.875rem;color:var(--secondary-600)}.s-toggle-switch__label.disabled{color:var(--neutrals-700)}.s-toggle-switch__label.bold-select-active{font-weight:700}.s-toggle-switch--size-md .s-toggle-switch__content{width:2.5rem;height:1.25rem;min-width:2.5rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider:before{height:1rem;width:1rem;left:.125rem;bottom:.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.active:before{left:-.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.no-active:before{left:.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider .slider-icon-dynamic span{position:absolute;font-size:1rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.active .slider-icon-dynamic{left:.188rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.no-active .slider-icon-dynamic{left:1.375rem}.s-toggle-switch:hover .s-toggle-switch__content__slider.active{background-color:var(--primary-900)}.s-toggle-switch:hover .s-toggle-switch__content__slider.no-active{background-color:var(--secondary-900)}.s-toggle-switch--vertical{align-items:center}.s-toggle-switch--vertical .s-toggle-switch__content{transform:rotate(90deg)}.s-toggle-switch--vertical .slider-icon-dynamic .s-icon-mat .material-icons{transform:rotate(-90deg)}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i3.SIconMaterialComponent, selector: "s-icon-mat", inputs: ["name", "size", "fill", "weight", "grade", "style", "type", "id"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], encapsulation: i0.ViewEncapsulation.None }); }
163
163
  }
164
164
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ToggleSwitchFormComponent, decorators: [{
165
165
  type: Component,
@@ -169,12 +169,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
169
169
  useExisting: forwardRef(() => ToggleSwitchFormComponent),
170
170
  multi: true,
171
171
  },
172
- ], template: "<div\n class=\"s-toggle-switch\"\n [ngClass]=\"{\n 's-toggle-switch--size-md': config && config.size === 'md',\n 's-toggle-switch--vertical': config && config.vertical,\n }\">\n <label\n class=\"s-toggle-switch__content\"\n tabindex=\"0\"\n (keydown)=\"onKeydown($event)\">\n <ng-container *ngIf=\"control; else notUseFormControl\">\n <input\n #inputHidden\n tabindex=\"-1\"\n class=\"s-toggle-switch__content__input\"\n type=\"checkbox\"\n [formControl]=\"control\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\" />\n </ng-container>\n <ng-template #notUseFormControl>\n <input\n #inputHidden\n tabindex=\"-1\"\n class=\"s-toggle-switch__content__input\"\n type=\"checkbox\"\n [disabled]=\"config.disabled || config.readOnly\"\n [checked]=\"getValue()\"\n (input)=\"onInput()\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\" />\n </ng-template>\n <span\n class=\"s-toggle-switch__content__slider\"\n [ngClass]=\"{\n active: getValueGeneral(),\n 'no-active': !getValueGeneral(),\n disabled:\n (control?.disabled || (config && config.disabled)) &&\n !(config && config.readOnly),\n }\">\n <s-icon-mat\n class=\"slider-icon-dynamic\"\n *ngIf=\"(config && config.showIcon !== false) || !config\"\n >{{ getIcon() }}</s-icon-mat\n >\n </span>\n </label>\n\n <div *ngIf=\"config?.label\" (click)=\"onClickLabel()\">\n <div\n *ngIf=\"control\"\n class=\"s-toggle-switch__label\"\n [ngClass]=\"{\n 'bold-select-active':\n (config.boldSelectActive ?? true) && control.value,\n disabled: (control.disabled || config.disabled) && !config.readOnly,\n }\">\n {{ config.label }}\n </div>\n\n <div\n *ngIf=\"!control\"\n class=\"s-toggle-switch__label\"\n [ngClass]=\"{\n 'bold-select-active': (config.boldSelectActive ?? true) && value,\n disabled: config.disabled && !config.readOnly,\n }\">\n {{ config.label }}\n </div>\n </div>\n</div>\n", styles: [".s-toggle-switch{display:flex;align-items:center;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.s-toggle-switch__content{transform:translate(.125rem);position:relative;display:inline-block;width:2rem;height:1rem;min-width:2rem}.s-toggle-switch__content__input{opacity:0;width:0;height:0}.s-toggle-switch__content__slider.active{background-color:var(--primary-600)}.s-toggle-switch__content__slider.no-active{background-color:var(--secondary-600)}.s-toggle-switch__content__slider.active:before{-webkit-transform:translateX(1.5rem);-ms-transform:translateX(1.5rem);transform:translate(1.5rem);left:-.375rem}.s-toggle-switch__content__slider{position:absolute;cursor:pointer;inset:0;background-color:var(--secondary-600);-webkit-transition:.4s;transition:.4s;border-radius:.938rem}.s-toggle-switch__content__slider .slider-icon-dynamic{position:absolute;transition:left .4s;top:.125rem;z-index:1}.s-toggle-switch__content__slider .slider-icon-dynamic span{color:var(--neutrals-1200);font-size:.8rem;font-weight:900}.s-toggle-switch__content__slider.active .slider-icon-dynamic{left:.188rem}.s-toggle-switch__content__slider.no-active .slider-icon-dynamic{left:1rem}.s-toggle-switch__content__slider.disabled{background-color:var(--neutrals-900)!important;cursor:default}.s-toggle-switch__content__slider:before{z-index:2;position:absolute;content:\"\";background-color:var(--neutrals-1200);-webkit-transition:.4s;transition:.4s;border-radius:50%;height:.75rem;width:.75rem;left:.125rem;bottom:.125rem}.s-toggle-switch__label{margin-left:.563rem;font-size:.875rem;color:var(--secondary-600)}.s-toggle-switch__label.disabled{color:var(--neutrals-700)}.s-toggle-switch__label.bold-select-active{font-weight:700}.s-toggle-switch--size-md .s-toggle-switch__content{width:2.5rem;height:1.25rem;min-width:2.5rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider:before{height:1rem;width:1rem;left:.125rem;bottom:.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.active:before{left:-.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.no-active:before{left:.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider .slider-icon-dynamic span{position:absolute;font-size:1rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.active .slider-icon-dynamic{left:.188rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.no-active .slider-icon-dynamic{left:1.375rem}.s-toggle-switch:hover .s-toggle-switch__content__slider.active{background-color:var(--primary-900)}.s-toggle-switch:hover .s-toggle-switch__content__slider.no-active{background-color:var(--secondary-900)}.s-toggle-switch--vertical{align-items:center}.s-toggle-switch--vertical .s-toggle-switch__content{transform:rotate(90deg)}.s-toggle-switch--vertical .slider-icon-dynamic .s-icon-mat .material-icons{transform:rotate(-90deg)}\n"] }]
172
+ ], template: "<div\n class=\"s-toggle-switch\"\n [ngClass]=\"{\n 's-toggle-switch--size-md': config && config.size === 'md',\n 's-toggle-switch--vertical': config && config.vertical,\n }\">\n <label [id]=\"id + '-label'\" class=\"s-toggle-switch__content\" tabindex=\"0\" (keydown)=\"onKeydown($event)\">\n <ng-container *ngIf=\"control; else notUseFormControl\">\n <input\n #inputHidden\n tabindex=\"-1\"\n class=\"s-toggle-switch__content__input\"\n type=\"checkbox\"\n [id]=\"id\"\n [formControl]=\"control\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\" />\n </ng-container>\n <ng-template #notUseFormControl>\n <input\n #inputHidden\n tabindex=\"-1\"\n class=\"s-toggle-switch__content__input\"\n type=\"checkbox\"\n [id]=\"id\"\n [disabled]=\"config.disabled || config.readOnly\"\n [checked]=\"getValue()\"\n (input)=\"onInput()\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\" />\n </ng-template>\n <span\n class=\"s-toggle-switch__content__slider\"\n [ngClass]=\"{\n active: getValueGeneral(),\n 'no-active': !getValueGeneral(),\n disabled: (control?.disabled || (config && config.disabled)) && !(config && config.readOnly),\n }\">\n <s-icon-mat class=\"slider-icon-dynamic\" *ngIf=\"(config && config.showIcon !== false) || !config\">{{\n getIcon()\n }}</s-icon-mat>\n </span>\n </label>\n\n <div *ngIf=\"config?.label\" (click)=\"onClickLabel()\">\n <div\n *ngIf=\"control\"\n [id]=\"id + '-label'\"\n class=\"s-toggle-switch__label\"\n [ngClass]=\"{\n 'bold-select-active': (config.boldSelectActive ?? true) && control.value,\n disabled: (control.disabled || config.disabled) && !config.readOnly,\n }\">\n {{ config.label }}\n </div>\n\n <div\n *ngIf=\"!control\"\n [id]=\"id + '-label'\"\n class=\"s-toggle-switch__label\"\n [ngClass]=\"{\n 'bold-select-active': (config.boldSelectActive ?? true) && value,\n disabled: config.disabled && !config.readOnly,\n }\">\n {{ config.label }}\n </div>\n </div>\n</div>\n", styles: [".s-toggle-switch{display:flex;align-items:center;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.s-toggle-switch__content{transform:translate(.125rem);position:relative;display:inline-block;width:2rem;height:1rem;min-width:2rem}.s-toggle-switch__content__input{opacity:0;width:0;height:0}.s-toggle-switch__content__slider.active{background-color:var(--primary-600)}.s-toggle-switch__content__slider.no-active{background-color:var(--secondary-600)}.s-toggle-switch__content__slider.active:before{-webkit-transform:translateX(1.5rem);-ms-transform:translateX(1.5rem);transform:translate(1.5rem);left:-.375rem}.s-toggle-switch__content__slider{position:absolute;cursor:pointer;inset:0;background-color:var(--secondary-600);-webkit-transition:.4s;transition:.4s;border-radius:.938rem}.s-toggle-switch__content__slider .slider-icon-dynamic{position:absolute;transition:left .4s;top:.125rem;z-index:1}.s-toggle-switch__content__slider .slider-icon-dynamic span{color:var(--neutrals-1200);font-size:.8rem;font-weight:900}.s-toggle-switch__content__slider.active .slider-icon-dynamic{left:.188rem}.s-toggle-switch__content__slider.no-active .slider-icon-dynamic{left:1rem}.s-toggle-switch__content__slider.disabled{background-color:var(--neutrals-900)!important;cursor:default}.s-toggle-switch__content__slider:before{z-index:2;position:absolute;content:\"\";background-color:var(--neutrals-1200);-webkit-transition:.4s;transition:.4s;border-radius:50%;height:.75rem;width:.75rem;left:.125rem;bottom:.125rem}.s-toggle-switch__label{margin-left:.563rem;font-size:.875rem;color:var(--secondary-600)}.s-toggle-switch__label.disabled{color:var(--neutrals-700)}.s-toggle-switch__label.bold-select-active{font-weight:700}.s-toggle-switch--size-md .s-toggle-switch__content{width:2.5rem;height:1.25rem;min-width:2.5rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider:before{height:1rem;width:1rem;left:.125rem;bottom:.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.active:before{left:-.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.no-active:before{left:.125rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider .slider-icon-dynamic span{position:absolute;font-size:1rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.active .slider-icon-dynamic{left:.188rem}.s-toggle-switch--size-md .s-toggle-switch__content__slider.no-active .slider-icon-dynamic{left:1.375rem}.s-toggle-switch:hover .s-toggle-switch__content__slider.active{background-color:var(--primary-900)}.s-toggle-switch:hover .s-toggle-switch__content__slider.no-active{background-color:var(--secondary-900)}.s-toggle-switch--vertical{align-items:center}.s-toggle-switch--vertical .s-toggle-switch__content{transform:rotate(90deg)}.s-toggle-switch--vertical .slider-icon-dynamic .s-icon-mat .material-icons{transform:rotate(-90deg)}\n"] }]
173
173
  }], propDecorators: { inputHidden: [{
174
174
  type: ViewChild,
175
175
  args: ['inputHidden']
176
176
  }], config: [{
177
177
  type: Input
178
+ }], id: [{
179
+ type: Input
178
180
  }], blur: [{
179
181
  type: Output
180
182
  }], focus: [{
@@ -182,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
182
184
  }], valueChange: [{
183
185
  type: Output
184
186
  }] } });
185
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLXN3aXRjaC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpZGVzeXMtZ2VuZXJpYy11aS9zcmMvbGliL3RvZ2dsZS1zd2l0Y2gvdG9nZ2xlLXN3aXRjaC1mb3JtL3RvZ2dsZS1zd2l0Y2gtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaWRlc3lzLWdlbmVyaWMtdWkvc3JjL2xpYi90b2dnbGUtc3dpdGNoL3RvZ2dsZS1zd2l0Y2gtZm9ybS90b2dnbGUtc3dpdGNoLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMkRBQTJELENBQUM7Ozs7O0FBRTVHLE1BQU0sT0FBTyxPQUFPO0NBV25CO0FBZUQsTUFBTSxPQUFPLHlCQUNYLFNBQVEsK0JBQWtDO0lBZDVDOztRQW1CVyxXQUFNLEdBQVksRUFBRSxDQUFDO1FBQ3BCLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ2hDLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ2pDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUVwRCxZQUFPLEdBQVksS0FBSyxDQUFDO1FBRWpCLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBQ2hDLHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUMxQix1QkFBa0IsR0FBRyxLQUFLLENBQUM7S0FrS3BDO0lBaEtDLGVBQWU7UUFDYixJQUNFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYztZQUMxQixJQUFJLENBQUMsT0FBTztZQUNaLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUN4QixDQUFDO1lBQ0QsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDNUIsQ0FBQztJQUNILENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFDckQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztRQUUvQixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDeEMsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLEdBQUcsRUFBRSxDQUFDO2dCQUNoQyxJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQztnQkFDMUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxVQUFVLENBQUMsR0FBWTtRQUN6QixJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNoQixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsR0FBRyxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUM3QyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO1FBQy9DLENBQUM7SUFDSCxDQUFDO0lBRVEsVUFBVSxDQUFDLEtBQVE7UUFDMUIsSUFBSSxLQUFLLElBQUksSUFBSTtZQUFFLE9BQU87UUFFMUIsTUFBTSxRQUFRLEdBQUcsS0FBZ0IsQ0FBQztRQUNsQyxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztRQUN0QixJQUFJLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztRQUUzQixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzNDLENBQUM7WUFFRCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUUxQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUNwQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN4RCxDQUFDO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzFCLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRTFELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7SUFDbEMsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDakMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUM7UUFDOUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUUsQ0FBQztZQUNoQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsS0FBSztZQUFFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUM7UUFDbkQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDOUIsQ0FBQztRQUNELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELE9BQU87UUFDTCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQztRQUM3RCxPQUFPLFNBQVM7WUFDZCxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksSUFBSSxPQUFPLENBQUM7WUFDaEMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLElBQUksT0FBTyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFVO1FBQ2YsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFVO1FBQ2hCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBb0I7UUFDNUIsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLE9BQU8sSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQy9DLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3QixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsY0FBYyxFQUFFLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxZQUFZO1FBQ1YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxhQUFhLENBQUM7UUFDOUMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDNUQsTUFBTSxNQUFNLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1lBQzlCLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1lBRXBCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUUsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQy9CLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuQixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN4QixDQUFDO1lBRUQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMzQixDQUFDO0lBQ0gsQ0FBQztJQUVPLFdBQVcsQ0FDakIsTUFBZSxFQUNmLGNBQWMsR0FBRyxLQUFLLEVBQ3RCLFFBQVEsR0FBRyxLQUFLO1FBRWhCLElBQUksSUFBSSxDQUFDLGNBQWMsS0FBSyxNQUFNO1lBQUUsT0FBTztRQUUzQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQztRQUU3QixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDN0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUNsRCxDQUFDO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUV0QixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoQyxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLGNBQWMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ25ELElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELENBQUM7SUFDSCxDQUFDOytHQWhMVSx5QkFBeUI7bUdBQXpCLHlCQUF5QiwrSUFSekI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO2dCQUN4RCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsNkpDdENILHFwRUF3RUE7OzRGRGhDYSx5QkFBeUI7a0JBYnJDLFNBQVM7K0JBQ0UsaUJBQWlCLGlCQUdaLGlCQUFpQixDQUFDLElBQUksYUFDMUI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsMEJBQTBCLENBQUM7NEJBQ3hELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGOzhCQU15QixXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWE7Z0JBRWYsTUFBTTtzQkFBZCxLQUFLO2dCQUNJLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbnRyb2xCb29sZWFuQWNjZXNzb3JEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9pbnB1dC9kaXJlY3RpdmVzL2NvbnRyb2wtYm9vbGVhbi1hY2Nlc3Nvci5kaXJlY3RpdmUnO1xuXG5leHBvcnQgY2xhc3MgU1N3aXRjaCB7XG4gIGJvbGRTZWxlY3RBY3RpdmU/OiBib29sZWFuO1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG4gIGxhYmVsPzogc3RyaW5nO1xuICBpY29uPzogc3RyaW5nO1xuICBpY29uT2ZmPzogc3RyaW5nO1xuICBzaXplPzogJ3NtJyB8ICdtZCc7XG4gIHNob3dJY29uPzogYm9vbGVhbjtcbiAgdmVydGljYWw/OiBib29sZWFuO1xuICB1c2VGb3JtQ29udHJvbD86IGJvb2xlYW47XG4gIHJlYWRPbmx5PzogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncy10b2dnbGUtc3dpdGNoJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvZ2dsZS1zd2l0Y2gtZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RvZ2dsZS1zd2l0Y2gtZm9ybS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRvZ2dsZVN3aXRjaEZvcm1Db21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVG9nZ2xlU3dpdGNoRm9ybUNvbXBvbmVudDxUPlxuICBleHRlbmRzIENvbnRyb2xCb29sZWFuQWNjZXNzb3JEaXJlY3RpdmU8VD5cbiAgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0XG57XG4gIEBWaWV3Q2hpbGQoJ2lucHV0SGlkZGVuJykgaW5wdXRIaWRkZW4hOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gIEBJbnB1dCgpIGNvbmZpZzogU1N3aXRjaCA9IHt9O1xuICBAT3V0cHV0KCkgYmx1ciA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIGZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX3ZhbHVlSW50ZXJuYWw6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaXNGaXJzdFdyaXRlVmFsdWUgPSB0cnVlO1xuICBwcml2YXRlIF9jb250cm9sU3Vic2NyaWJlZCA9IGZhbHNlO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLmNvbmZpZy51c2VGb3JtQ29udHJvbCAmJlxuICAgICAgdGhpcy5jb250cm9sICYmXG4gICAgICAhdGhpcy5fY29udHJvbFN1YnNjcmliZWRcbiAgICApIHtcbiAgICAgIHRoaXMuc3Vic2NyaWJlVG9Db250cm9sKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzdWJzY3JpYmVUb0NvbnRyb2woKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2NvbnRyb2xTdWJzY3JpYmVkIHx8ICF0aGlzLmNvbnRyb2wpIHJldHVybjtcbiAgICB0aGlzLl9jb250cm9sU3Vic2NyaWJlZCA9IHRydWU7XG5cbiAgICB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSh2YWwgPT4ge1xuICAgICAgaWYgKHRoaXMuX3ZhbHVlSW50ZXJuYWwgIT09IHZhbCkge1xuICAgICAgICB0aGlzLl92YWx1ZUludGVybmFsID0gdmFsO1xuICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodmFsKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWwpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IHZhbHVlUHJveHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlSW50ZXJuYWw7XG4gIH1cblxuICBzZXQgdmFsdWVQcm94eSh2YWw6IGJvb2xlYW4pIHtcbiAgICBpZiAodmFsID09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fdmFsdWVJbnRlcm5hbCA9IHZhbDtcbiAgICBpZiAoIXRoaXMudXNlRm9ybUNvbnRyb2wgJiYgdGhpcy5pbnB1dEhpZGRlbikge1xuICAgICAgdGhpcy5pbnB1dEhpZGRlbi5uYXRpdmVFbGVtZW50LmNoZWNrZWQgPSB2YWw7XG4gICAgfVxuICB9XG5cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZSh2YWx1ZTogVCk6IHZvaWQge1xuICAgIGlmICh2YWx1ZSA9PSBudWxsKSByZXR1cm47XG5cbiAgICBjb25zdCBuZXdWYWx1ZSA9IHZhbHVlIGFzIGJvb2xlYW47XG4gICAgdGhpcy52YWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMudmFsdWVQcm94eSA9IG5ld1ZhbHVlO1xuXG4gICAgaWYgKHRoaXMudXNlRm9ybUNvbnRyb2wpIHtcbiAgICAgIGlmICghdGhpcy5jb250cm9sKSB7XG4gICAgICAgIHRoaXMuY29udHJvbCA9IG5ldyBGb3JtQ29udHJvbChuZXdWYWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc3Vic2NyaWJlVG9Db250cm9sKCk7XG5cbiAgICAgIGlmICh0aGlzLmNvbnRyb2wudmFsdWUgIT09IG5ld1ZhbHVlKSB7XG4gICAgICAgIHRoaXMuY29udHJvbC5zZXRWYWx1ZShuZXdWYWx1ZSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoIXRoaXMuX2lzRmlyc3RXcml0ZVZhbHVlKSB7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChuZXdWYWx1ZSk7XG4gICAgICAgIHRoaXMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMudXBkYXRlVmFsdWUobmV3VmFsdWUsIHRydWUsIHRoaXMuX2lzRmlyc3RXcml0ZVZhbHVlKTtcblxuICAgIHRoaXMuX2lzRmlyc3RXcml0ZVZhbHVlID0gZmFsc2U7XG4gIH1cblxuICBvbklucHV0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNvbmZpZy5kaXNhYmxlZCkgcmV0dXJuO1xuICAgIGNvbnN0IGlucHV0ID0gdGhpcy5pbnB1dEhpZGRlbj8ubmF0aXZlRWxlbWVudDtcbiAgICB0aGlzLnZhbHVlID0gaW5wdXQuY2hlY2tlZDtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMudmFsdWUpO1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgaWYgKHRoaXMuY29uZmlnPy51c2VGb3JtQ29udHJvbCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB9XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICBnZXRWYWx1ZSgpIHtcbiAgICBpZiAodGhpcy52YWx1ZSkgdGhpcy5jaGVja2VkID0gdGhpcy52YWx1ZSA9PT0gdHJ1ZTtcbiAgICByZXR1cm4gdGhpcy5jaGVja2VkO1xuICB9XG5cbiAgZ2V0VmFsdWVHZW5lcmFsKCkge1xuICAgIGlmICh0aGlzLmNvbnRyb2wpIHtcbiAgICAgIHJldHVybiAhIXRoaXMuY29udHJvbC52YWx1ZTtcbiAgICB9XG4gICAgcmV0dXJuICEhdGhpcy52YWx1ZTtcbiAgfVxuXG4gIGdldEljb24oKSB7XG4gICAgY29uc3QgaXNDaGVja2VkID0gdGhpcy5jb250cm9sPy52YWx1ZSA/PyB0aGlzLnZhbHVlID09PSB0cnVlO1xuICAgIHJldHVybiBpc0NoZWNrZWRcbiAgICAgID8gKHRoaXMuY29uZmlnPy5pY29uID8/ICdjaGVjaycpXG4gICAgICA6ICh0aGlzLmNvbmZpZz8uaWNvbk9mZiA/PyAnY2xvc2UnKTtcbiAgfVxuXG4gIG9uQmx1cihldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5ibHVyLm5leHQoZXZlbnQpO1xuICB9XG5cbiAgb25Gb2N1cyhldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5mb2N1cy5uZXh0KGV2ZW50KTtcbiAgfVxuXG4gIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicgfHwgZXZlbnQua2V5ID09PSAnICcpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnZhbHVlID0gIXRoaXMudmFsdWU7XG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMudmFsdWUpO1xuICAgICAgaWYgKHRoaXMuY29uZmlnPy51c2VGb3JtQ29udHJvbCkge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uQ2xpY2tMYWJlbCgpIHtcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRIaWRkZW4/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKGlucHV0ICYmICF0aGlzLmNvbmZpZy5kaXNhYmxlZCAmJiAhdGhpcy5jb25maWcucmVhZE9ubHkpIHtcbiAgICAgIGNvbnN0IG5ld1ZhbCA9ICFpbnB1dC5jaGVja2VkO1xuICAgICAgaW5wdXQuY2hlY2tlZCA9IG5ld1ZhbDtcbiAgICAgIHRoaXMudmFsdWUgPSBuZXdWYWw7XG5cbiAgICAgIGlmICh0aGlzLmNvbmZpZz8udXNlRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgdGhpcy5jb250cm9sPy5zZXRWYWx1ZShuZXdWYWwpO1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZShuZXdWYWwpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlKG5ld1ZhbCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVWYWx1ZShcbiAgICBuZXdWYWw6IGJvb2xlYW4sXG4gICAgZnJvbVdyaXRlVmFsdWUgPSBmYWxzZSxcbiAgICBza2lwRW1pdCA9IGZhbHNlXG4gICk6IHZvaWQge1xuICAgIGlmICh0aGlzLl92YWx1ZUludGVybmFsID09PSBuZXdWYWwpIHJldHVybjtcblxuICAgIHRoaXMuX3ZhbHVlSW50ZXJuYWwgPSBuZXdWYWw7XG5cbiAgICBpZiAoIXRoaXMudXNlRm9ybUNvbnRyb2wgJiYgdGhpcy5pbnB1dEhpZGRlbikge1xuICAgICAgdGhpcy5pbnB1dEhpZGRlbi5uYXRpdmVFbGVtZW50LmNoZWNrZWQgPSBuZXdWYWw7XG4gICAgfVxuXG4gICAgdGhpcy5vbkNoYW5nZShuZXdWYWwpO1xuXG4gICAgaWYgKCFza2lwRW1pdCkge1xuICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KG5ld1ZhbCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29uZmlnPy51c2VGb3JtQ29udHJvbCAmJiAhZnJvbVdyaXRlVmFsdWUpIHtcbiAgICAgIHRoaXMuY29udHJvbD8uc2V0VmFsdWUobmV3VmFsLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwicy10b2dnbGUtc3dpdGNoXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdzLXRvZ2dsZS1zd2l0Y2gtLXNpemUtbWQnOiBjb25maWcgJiYgY29uZmlnLnNpemUgPT09ICdtZCcsXG4gICAgJ3MtdG9nZ2xlLXN3aXRjaC0tdmVydGljYWwnOiBjb25maWcgJiYgY29uZmlnLnZlcnRpY2FsLFxuICB9XCI+XG4gIDxsYWJlbFxuICAgIGNsYXNzPVwicy10b2dnbGUtc3dpdGNoX19jb250ZW50XCJcbiAgICB0YWJpbmRleD1cIjBcIlxuICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRyb2w7IGVsc2Ugbm90VXNlRm9ybUNvbnRyb2xcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICAjaW5wdXRIaWRkZW5cbiAgICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgIGNsYXNzPVwicy10b2dnbGUtc3dpdGNoX19jb250ZW50X19pbnB1dFwiXG4gICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCIgLz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI25vdFVzZUZvcm1Db250cm9sPlxuICAgICAgPGlucHV0XG4gICAgICAgICNpbnB1dEhpZGRlblxuICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgY2xhc3M9XCJzLXRvZ2dsZS1zd2l0Y2hfX2NvbnRlbnRfX2lucHV0XCJcbiAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImNvbmZpZy5kaXNhYmxlZCB8fCBjb25maWcucmVhZE9ubHlcIlxuICAgICAgICBbY2hlY2tlZF09XCJnZXRWYWx1ZSgpXCJcbiAgICAgICAgKGlucHV0KT1cIm9uSW5wdXQoKVwiXG4gICAgICAgIChmb2N1cyk9XCJvbkZvY3VzKCRldmVudClcIlxuICAgICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiIC8+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8c3BhblxuICAgICAgY2xhc3M9XCJzLXRvZ2dsZS1zd2l0Y2hfX2NvbnRlbnRfX3NsaWRlclwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgIGFjdGl2ZTogZ2V0VmFsdWVHZW5lcmFsKCksXG4gICAgICAgICduby1hY3RpdmUnOiAhZ2V0VmFsdWVHZW5lcmFsKCksXG4gICAgICAgIGRpc2FibGVkOlxuICAgICAgICAgIChjb250cm9sPy5kaXNhYmxlZCB8fCAoY29uZmlnICYmIGNvbmZpZy5kaXNhYmxlZCkpICYmXG4gICAgICAgICAgIShjb25maWcgJiYgY29uZmlnLnJlYWRPbmx5KSxcbiAgICAgIH1cIj5cbiAgICAgIDxzLWljb24tbWF0XG4gICAgICAgIGNsYXNzPVwic2xpZGVyLWljb24tZHluYW1pY1wiXG4gICAgICAgICpuZ0lmPVwiKGNvbmZpZyAmJiBjb25maWcuc2hvd0ljb24gIT09IGZhbHNlKSB8fCAhY29uZmlnXCJcbiAgICAgICAgPnt7IGdldEljb24oKSB9fTwvcy1pY29uLW1hdFxuICAgICAgPlxuICAgIDwvc3Bhbj5cbiAgPC9sYWJlbD5cblxuICA8ZGl2ICpuZ0lmPVwiY29uZmlnPy5sYWJlbFwiIChjbGljayk9XCJvbkNsaWNrTGFiZWwoKVwiPlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiY29udHJvbFwiXG4gICAgICBjbGFzcz1cInMtdG9nZ2xlLXN3aXRjaF9fbGFiZWxcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAnYm9sZC1zZWxlY3QtYWN0aXZlJzpcbiAgICAgICAgICAoY29uZmlnLmJvbGRTZWxlY3RBY3RpdmUgPz8gdHJ1ZSkgJiYgY29udHJvbC52YWx1ZSxcbiAgICAgICAgZGlzYWJsZWQ6IChjb250cm9sLmRpc2FibGVkIHx8IGNvbmZpZy5kaXNhYmxlZCkgJiYgIWNvbmZpZy5yZWFkT25seSxcbiAgICAgIH1cIj5cbiAgICAgIHt7IGNvbmZpZy5sYWJlbCB9fVxuICAgIDwvZGl2PlxuXG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCIhY29udHJvbFwiXG4gICAgICBjbGFzcz1cInMtdG9nZ2xlLXN3aXRjaF9fbGFiZWxcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAnYm9sZC1zZWxlY3QtYWN0aXZlJzogKGNvbmZpZy5ib2xkU2VsZWN0QWN0aXZlID8/IHRydWUpICYmIHZhbHVlLFxuICAgICAgICBkaXNhYmxlZDogY29uZmlnLmRpc2FibGVkICYmICFjb25maWcucmVhZE9ubHksXG4gICAgICB9XCI+XG4gICAgICB7eyBjb25maWcubGFiZWwgfX1cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLXN3aXRjaC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpZGVzeXMtZ2VuZXJpYy11aS9zcmMvbGliL3RvZ2dsZS1zd2l0Y2gvdG9nZ2xlLXN3aXRjaC1mb3JtL3RvZ2dsZS1zd2l0Y2gtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaWRlc3lzLWdlbmVyaWMtdWkvc3JjL2xpYi90b2dnbGUtc3dpdGNoL3RvZ2dsZS1zd2l0Y2gtZm9ybS90b2dnbGUtc3dpdGNoLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sMkRBQTJELENBQUM7Ozs7O0FBRTVHLE1BQU0sT0FBTyxPQUFPO0NBWW5CO0FBZUQsTUFBTSxPQUFPLHlCQUE2QixTQUFRLCtCQUFrQztJQWJwRjs7UUFnQlcsV0FBTSxHQUFZLEVBQUUsQ0FBQztRQUdwQixTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNoQyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNqQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFcEQsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUVqQixtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUNoQyx1QkFBa0IsR0FBRyxJQUFJLENBQUM7UUFDMUIsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO0tBNEpwQztJQTFKQyxlQUFlO1FBQ2IsSUFBSSxJQUFJ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QkFHWixpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDBCQUEwQixDQUFDOzRCQUN4RCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjs4QkFHeUIsV0FBVztzQkFBcEMsU0FBUzt1QkFBQyxhQUFhO2dCQUVmLE1BQU07c0JBQWQsS0FBSztnQkFDRyxFQUFFO3NCQUFWLEtBQUs7Z0JBRUksSUFBSTtzQkFBYixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb250cm9sQm9vbGVhbkFjY2Vzc29yRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vaW5wdXQvZGlyZWN0aXZlcy9jb250cm9sLWJvb2xlYW4tYWNjZXNzb3IuZGlyZWN0aXZlJztcblxuZXhwb3J0IGNsYXNzIFNTd2l0Y2gge1xuICBib2xkU2VsZWN0QWN0aXZlPzogYm9vbGVhbjtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBsYWJlbD86IHN0cmluZztcbiAgaWNvbj86IHN0cmluZztcbiAgaWNvbk9mZj86IHN0cmluZztcbiAgaWQ/OiBzdHJpbmc7XG4gIHNpemU/OiAnc20nIHwgJ21kJztcbiAgc2hvd0ljb24/OiBib29sZWFuO1xuICB2ZXJ0aWNhbD86IGJvb2xlYW47XG4gIHVzZUZvcm1Db250cm9sPzogYm9vbGVhbjtcbiAgcmVhZE9ubHk/OiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzLXRvZ2dsZS1zd2l0Y2gnLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9nZ2xlLXN3aXRjaC1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG9nZ2xlLXN3aXRjaC1mb3JtLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVG9nZ2xlU3dpdGNoRm9ybUNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUb2dnbGVTd2l0Y2hGb3JtQ29tcG9uZW50PFQ+IGV4dGVuZHMgQ29udHJvbEJvb2xlYW5BY2Nlc3NvckRpcmVjdGl2ZTxUPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uSW5pdCB7XG4gIEBWaWV3Q2hpbGQoJ2lucHV0SGlkZGVuJykgaW5wdXRIaWRkZW4hOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gIEBJbnB1dCgpIGNvbmZpZzogU1N3aXRjaCA9IHt9O1xuICBASW5wdXQoKSBpZCE6IHN0cmluZztcblxuICBAT3V0cHV0KCkgYmx1ciA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIGZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX3ZhbHVlSW50ZXJuYWw6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaXNGaXJzdFdyaXRlVmFsdWUgPSB0cnVlO1xuICBwcml2YXRlIF9jb250cm9sU3Vic2NyaWJlZCA9IGZhbHNlO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jb25maWcudXNlRm9ybUNvbnRyb2wgJiYgdGhpcy5jb250cm9sICYmICF0aGlzLl9jb250cm9sU3Vic2NyaWJlZCkge1xuICAgICAgdGhpcy5zdWJzY3JpYmVUb0NvbnRyb2woKTtcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaWQpIHRoaXMuaWQgPSB0aGlzLmNvbmZpZz8uaWQgPz8gYHMtdG9nZ2xlLXN3aXRjaGA7XG4gIH1cblxuICBwcml2YXRlIHN1YnNjcmliZVRvQ29udHJvbCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fY29udHJvbFN1YnNjcmliZWQgfHwgIXRoaXMuY29udHJvbCkgcmV0dXJuO1xuICAgIHRoaXMuX2NvbnRyb2xTdWJzY3JpYmVkID0gdHJ1ZTtcblxuICAgIHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbCA9PiB7XG4gICAgICBpZiAodGhpcy5fdmFsdWVJbnRlcm5hbCAhPT0gdmFsKSB7XG4gICAgICAgIHRoaXMuX3ZhbHVlSW50ZXJuYWwgPSB2YWw7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2YWwpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBnZXQgdmFsdWVQcm94eSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVJbnRlcm5hbDtcbiAgfVxuXG4gIHNldCB2YWx1ZVByb3h5KHZhbDogYm9vbGVhbikge1xuICAgIGlmICh2YWwgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl92YWx1ZUludGVybmFsID0gdmFsO1xuICAgIGlmICghdGhpcy51c2VGb3JtQ29udHJvbCAmJiB0aGlzLmlucHV0SGlkZGVuKSB7XG4gICAgICB0aGlzLmlucHV0SGlkZGVuLm5hdGl2ZUVsZW1lbnQuY2hlY2tlZCA9IHZhbDtcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSB3cml0ZVZhbHVlKHZhbHVlOiBUKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlID09IG51bGwpIHJldHVybjtcblxuICAgIGNvbnN0IG5ld1ZhbHVlID0gdmFsdWUgYXMgYm9vbGVhbjtcbiAgICB0aGlzLnZhbHVlID0gbmV3VmFsdWU7XG4gICAgdGhpcy52YWx1ZVByb3h5ID0gbmV3VmFsdWU7XG5cbiAgICBpZiAodGhpcy51c2VGb3JtQ29udHJvbCkge1xuICAgICAgaWYgKCF0aGlzLmNvbnRyb2wpIHtcbiAgICAgICAgdGhpcy5jb250cm9sID0gbmV3IEZvcm1Db250cm9sKG5ld1ZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zdWJzY3JpYmVUb0NvbnRyb2woKTtcblxuICAgICAgaWYgKHRoaXMuY29udHJvbC52YWx1ZSAhPT0gbmV3VmFsdWUpIHtcbiAgICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKG5ld1ZhbHVlLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghdGhpcy5faXNGaXJzdFdyaXRlVmFsdWUpIHtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy51cGRhdGVWYWx1ZShuZXdWYWx1ZSwgdHJ1ZSwgdGhpcy5faXNGaXJzdFdyaXRlVmFsdWUpO1xuXG4gICAgdGhpcy5faXNGaXJzdFdyaXRlVmFsdWUgPSBmYWxzZTtcbiAgfVxuXG4gIG9uSW5wdXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmRpc2FibGVkKSByZXR1cm47XG4gICAgY29uc3QgaW5wdXQgPSB0aGlzLmlucHV0SGlkZGVuPy5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMudmFsdWUgPSBpbnB1dC5jaGVja2VkO1xuICAgIHRoaXMudXBkYXRlVmFsdWUodGhpcy52YWx1ZSk7XG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLnZhbHVlKTtcbiAgICBpZiAodGhpcy5jb25maWc/LnVzZUZvcm1Db250cm9sKSB7XG4gICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgIH1cbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIGdldFZhbHVlKCkge1xuICAgIGlmICh0aGlzLnZhbHVlKSB0aGlzLmNoZWNrZWQgPSB0aGlzLnZhbHVlID09PSB0cnVlO1xuICAgIHJldHVybiB0aGlzLmNoZWNrZWQ7XG4gIH1cblxuICBnZXRWYWx1ZUdlbmVyYWwoKSB7XG4gICAgaWYgKHRoaXMuY29udHJvbCkge1xuICAgICAgcmV0dXJuICEhdGhpcy5jb250cm9sLnZhbHVlO1xuICAgIH1cbiAgICByZXR1cm4gISF0aGlzLnZhbHVlO1xuICB9XG5cbiAgZ2V0SWNvbigpIHtcbiAgICBjb25zdCBpc0NoZWNrZWQgPSB0aGlzLmNvbnRyb2w/LnZhbHVlID8/IHRoaXMudmFsdWUgPT09IHRydWU7XG4gICAgcmV0dXJuIGlzQ2hlY2tlZCA/ICh0aGlzLmNvbmZpZz8uaWNvbiA/PyAnY2hlY2snKSA6ICh0aGlzLmNvbmZpZz8uaWNvbk9mZiA/PyAnY2xvc2UnKTtcbiAgfVxuXG4gIG9uQmx1cihldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5ibHVyLm5leHQoZXZlbnQpO1xuICB9XG5cbiAgb25Gb2N1cyhldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5mb2N1cy5uZXh0KGV2ZW50KTtcbiAgfVxuXG4gIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicgfHwgZXZlbnQua2V5ID09PSAnICcpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnZhbHVlID0gIXRoaXMudmFsdWU7XG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRoaXMudmFsdWUpO1xuICAgICAgaWYgKHRoaXMuY29uZmlnPy51c2VGb3JtQ29udHJvbCkge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uQ2xpY2tMYWJlbCgpIHtcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuaW5wdXRIaWRkZW4/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKGlucHV0ICYmICF0aGlzLmNvbmZpZy5kaXNhYmxlZCAmJiAhdGhpcy5jb25maWcucmVhZE9ubHkpIHtcbiAgICAgIGNvbnN0IG5ld1ZhbCA9ICFpbnB1dC5jaGVja2VkO1xuICAgICAgaW5wdXQuY2hlY2tlZCA9IG5ld1ZhbDtcbiAgICAgIHRoaXMudmFsdWUgPSBuZXdWYWw7XG5cbiAgICAgIGlmICh0aGlzLmNvbmZpZz8udXNlRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgdGhpcy5jb250cm9sPy5zZXRWYWx1ZShuZXdWYWwpO1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZShuZXdWYWwpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlKG5ld1ZhbCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVWYWx1ZShuZXdWYWw6IGJvb2xlYW4sIGZyb21Xcml0ZVZhbHVlID0gZmFsc2UsIHNraXBFbWl0ID0gZmFsc2UpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fdmFsdWVJbnRlcm5hbCA9PT0gbmV3VmFsKSByZXR1cm47XG5cbiAgICB0aGlzLl92YWx1ZUludGVybmFsID0gbmV3VmFsO1xuXG4gICAgaWYgKCF0aGlzLnVzZUZvcm1Db250cm9sICYmIHRoaXMuaW5wdXRIaWRkZW4pIHtcbiAgICAgIHRoaXMuaW5wdXRIaWRkZW4ubmF0aXZlRWxlbWVudC5jaGVja2VkID0gbmV3VmFsO1xuICAgIH1cblxuICAgIHRoaXMub25DaGFuZ2UobmV3VmFsKTtcblxuICAgIGlmICghc2tpcEVtaXQpIHtcbiAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChuZXdWYWwpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmNvbmZpZz8udXNlRm9ybUNvbnRyb2wgJiYgIWZyb21Xcml0ZVZhbHVlKSB7XG4gICAgICB0aGlzLmNvbnRyb2w/LnNldFZhbHVlKG5ld1ZhbCwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cInMtdG9nZ2xlLXN3aXRjaFwiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAncy10b2dnbGUtc3dpdGNoLS1zaXplLW1kJzogY29uZmlnICYmIGNvbmZpZy5zaXplID09PSAnbWQnLFxuICAgICdzLXRvZ2dsZS1zd2l0Y2gtLXZlcnRpY2FsJzogY29uZmlnICYmIGNvbmZpZy52ZXJ0aWNhbCxcbiAgfVwiPlxuICA8bGFiZWwgW2lkXT1cImlkICsgJy1sYWJlbCdcIiBjbGFzcz1cInMtdG9nZ2xlLXN3aXRjaF9fY29udGVudFwiIHRhYmluZGV4PVwiMFwiIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbnRyb2w7IGVsc2Ugbm90VXNlRm9ybUNvbnRyb2xcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICAjaW5wdXRIaWRkZW5cbiAgICAgICAgdGFiaW5kZXg9XCItMVwiXG4gICAgICAgIGNsYXNzPVwicy10b2dnbGUtc3dpdGNoX19jb250ZW50X19pbnB1dFwiXG4gICAgICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgIFtpZF09XCJpZFwiXG4gICAgICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCIgLz5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI25vdFVzZUZvcm1Db250cm9sPlxuICAgICAgPGlucHV0XG4gICAgICAgICNpbnB1dEhpZGRlblxuICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgY2xhc3M9XCJzLXRvZ2dsZS1zd2l0Y2hfX2NvbnRlbnRfX2lucHV0XCJcbiAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgW2lkXT1cImlkXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImNvbmZpZy5kaXNhYmxlZCB8fCBjb25maWcucmVhZE9ubHlcIlxuICAgICAgICBbY2hlY2tlZF09XCJnZXRWYWx1ZSgpXCJcbiAgICAgICAgKGlucHV0KT1cIm9uSW5wdXQoKVwiXG4gICAgICAgIChmb2N1cyk9XCJvbkZvY3VzKCRldmVudClcIlxuICAgICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiIC8+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8c3BhblxuICAgICAgY2xhc3M9XCJzLXRvZ2dsZS1zd2l0Y2hfX2NvbnRlbnRfX3NsaWRlclwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgIGFjdGl2ZTogZ2V0VmFsdWVHZW5lcmFsKCksXG4gICAgICAgICduby1hY3RpdmUnOiAhZ2V0VmFsdWVHZW5lcmFsKCksXG4gICAgICAgIGRpc2FibGVkOiAoY29udHJvbD8uZGlzYWJsZWQgfHwgKGNvbmZpZyAmJiBjb25maWcuZGlzYWJsZWQpKSAmJiAhKGNvbmZpZyAmJiBjb25maWcucmVhZE9ubHkpLFxuICAgICAgfVwiPlxuICAgICAgPHMtaWNvbi1tYXQgY2xhc3M9XCJzbGlkZXItaWNvbi1keW5hbWljXCIgKm5nSWY9XCIoY29uZmlnICYmIGNvbmZpZy5zaG93SWNvbiAhPT0gZmFsc2UpIHx8ICFjb25maWdcIj57e1xuICAgICAgICBnZXRJY29uKClcbiAgICAgIH19PC9zLWljb24tbWF0PlxuICAgIDwvc3Bhbj5cbiAgPC9sYWJlbD5cblxuICA8ZGl2ICpuZ0lmPVwiY29uZmlnPy5sYWJlbFwiIChjbGljayk9XCJvbkNsaWNrTGFiZWwoKVwiPlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiY29udHJvbFwiXG4gICAgICBbaWRdPVwiaWQgKyAnLWxhYmVsJ1wiXG4gICAgICBjbGFzcz1cInMtdG9nZ2xlLXN3aXRjaF9fbGFiZWxcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAnYm9sZC1zZWxlY3QtYWN0aXZlJzogKGNvbmZpZy5ib2xkU2VsZWN0QWN0aXZlID8/IHRydWUpICYmIGNvbnRyb2wudmFsdWUsXG4gICAgICAgIGRpc2FibGVkOiAoY29udHJvbC5kaXNhYmxlZCB8fCBjb25maWcuZGlzYWJsZWQpICYmICFjb25maWcucmVhZE9ubHksXG4gICAgICB9XCI+XG4gICAgICB7eyBjb25maWcubGFiZWwgfX1cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiIWNvbnRyb2xcIlxuICAgICAgW2lkXT1cImlkICsgJy1sYWJlbCdcIlxuICAgICAgY2xhc3M9XCJzLXRvZ2dsZS1zd2l0Y2hfX2xhYmVsXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgJ2JvbGQtc2VsZWN0LWFjdGl2ZSc6IChjb25maWcuYm9sZFNlbGVjdEFjdGl2ZSA/PyB0cnVlKSAmJiB2YWx1ZSxcbiAgICAgICAgZGlzYWJsZWQ6IGNvbmZpZy5kaXNhYmxlZCAmJiAhY29uZmlnLnJlYWRPbmx5LFxuICAgICAgfVwiPlxuICAgICAge3sgY29uZmlnLmxhYmVsIH19XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -35,6 +35,7 @@ export class SToolbarTopComponent {
35
35
  }
36
36
  }
37
37
  ngOnInit() {
38
+ this.id = this.config.id ?? `s-toolbar-top`;
38
39
  this._initConfig();
39
40
  }
40
41
  action() {
@@ -105,11 +106,11 @@ export class SToolbarTopComponent {
105
106
  this.config.searchValue = val;
106
107
  }
107
108
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SToolbarTopComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
108
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SToolbarTopComponent, selector: "s-toolbar-top", inputs: { config: "config" }, outputs: { actionEvent: "actionEvent", deleteEvent: "deleteEvent", filterEvent: "filterEvent", multiSelectEvent: "multiSelectEvent", pillButtonEvent: "pillButtonEvent", selectEvent: "selectEvent", searchEvent: "searchEvent" }, usesOnChanges: true, ngImport: i0, template: "<section class=\"s-toolbar-top\">\n <section class=\"s-toolbar-top__content\">\n <div class=\"s-toolbar-top__section\">\n <h3 *ngIf=\"config.title\" class=\"s-toolbar-top__title\">\n {{ config.title }}\n </h3>\n <div\n *ngIf=\"config.title && (config.actionButton || config.multiActionButton)\"\n class=\"s-toolbar-top__section--line\"></div>\n <s-button class=\"s-toolbar-top__button\" *ngIf=\"config.actionButton\" (click)=\"action()\" (keydown.enter)=\"action()\">\n @if (!config.actionButtonIconDisabled) {\n <s-icon-mat>\n {{ config.actionButtonIcon ?? 'add_circle' }}\n </s-icon-mat>\n }\n {{ config.actionButton }}\n </s-button>\n <div class=\"s-toolbar-top--relativeContainer\" *ngIf=\"this.config.multiActionButton\">\n <s-button\n class=\"s-toolbar-top__multiAction s-toolbar-top__button\"\n (click)=\"multiActionToggle()\"\n (keydown.enter)=\"multiActionToggle()\">\n <s-icon-mat>add_circle</s-icon-mat>\n {{ config.multiActionButton }}\n <s-icon-mat>keyboard_arrow_down</s-icon-mat>\n </s-button>\n <div class=\"s-toolbar-top__multiAction--sub-menu\" *ngIf=\"multiAction\">\n <s-sub-menu\n *ngIf=\"multiActionMenu\"\n class=\"w-100\"\n [menu]=\"multiActionMenu\"\n (closeMenuEvent)=\"multiActionToggle()\"></s-sub-menu>\n </div>\n </div>\n <div *ngIf=\"config.deleteButton\" class=\"s-toolbar-top__section--line\"></div>\n <s-button\n class=\"s-toolbar-top__button\"\n *ngIf=\"config.deleteButton\"\n theme=\"red\"\n [disabled]=\"config.deleteDisabled ?? false\"\n (click)=\"delete()\"\n (keydown.enter)=\"delete()\">\n <s-icon-mat>delete</s-icon-mat>\n {{ config.deleteButton }}\n </s-button>\n </div>\n <div class=\"s-toolbar-top__section\">\n <div class=\"s-toolbar-top__section--search\">\n <s-input\n *ngIf=\"inputSearchConfig\"\n class=\"w-100\"\n [config]=\"inputSearchConfig\"\n [(ngModel)]=\"searchValue\"\n (ngModelChange)=\"search($event)\">\n </s-input>\n </div>\n <div class=\"s-toolbar-top__section--select\" *ngIf=\"config.select\">\n <s-select [config]=\"config.select\" [(ngModel)]=\"select\" (ngModelChange)=\"selectChange($event)\"></s-select>\n </div>\n <div class=\"s-toolbar-top__section--select\" *ngIf=\"config.multiSelect\">\n <s-select-multiple\n class=\"s-toolbar-top__section--multi-select\"\n [config]=\"config.multiSelect\"\n (selectedEvent)=\"multiSelect($event)\">\n </s-select-multiple>\n </div>\n <div class=\"s-toolbar-top--relativeContainer\" *ngIf=\"config.filterButton && config.filters\">\n <s-button class=\"s-toolbar-top__button\" [disabled]=\"config.filtersDisabled ?? false\" (click)=\"filterShow()\">\n <s-icon-mat>tune</s-icon-mat>\n {{ config.filterButton }}\n <s-icon-mat>keyboard_arrow_down</s-icon-mat>\n </s-button>\n <div class=\"s-toolbar-top__section--toggle\" *ngIf=\"filterToggle\">\n <s-sub-menu\n [menu]=\"config.filters\"\n (changeMenuEvent)=\"selectFilter($event)\"\n (closeMenuEvent)=\"filterShow()\"></s-sub-menu>\n </div>\n </div>\n <div *ngIf=\"config.pillButton\">\n <s-button\n class=\"s-toolbar-top__button\"\n [disabled]=\"config.filtersDisabled ?? false\"\n (click)=\"pillSelect()\"\n (keydowyn.enter)=\"pillSelect()\"\n [pill]=\"true\">\n <s-icon-mat>{{ config.pillButton }}</s-icon-mat>\n </s-button>\n </div>\n </div>\n </section>\n</section>\n", styles: [".s-toolbar-top{color:var(--secondary-700);min-width:0;word-wrap:break-word;background-color:var(--neutrals-1200);border-radius:.5rem .5rem 0 0;border-bottom:.031rem solid var(--secondary-300)}.s-toolbar-top--relativeContainer{position:relative}.s-toolbar-top__content{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem}.s-toolbar-top__button{white-space:nowrap}.s-toolbar-top__section{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.s-toolbar-top__section--line{width:.063rem;height:2rem;background-color:var(--neutrals-700)}.s-toolbar-top__section--search{max-width:17.5rem;min-width:13.5rem}.s-toolbar-top__section--select{width:12rem}.s-toolbar-top__section--select s-select-multiple .s-select__main__selected-option span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.s-toolbar-top__section--multi-select{width:12rem}.s-toolbar-top__section--toggle{position:absolute;z-index:2}.s-toolbar-top__section-filters{justify-content:start!important}.s-toolbar-top__title{background-color:var(--primary-100);border-radius:.25rem;font-size:.875rem;font-weight:700;padding:.1rem .75rem;white-space:nowrap}.s-toolbar-top__multiAction{position:relative}.s-toolbar-top__multiAction--sub-menu{display:flex;z-index:1;position:absolute;width:21rem}.s-toolbar-top s-input .s-input{margin-bottom:none!important}.s-toolbar-top .s-select__options.md{top:3rem!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SButtonComponent, selector: "s-button", inputs: ["disabled", "pill", "size", "invert", "type", "loading", "position", "theme", "active"] }, { kind: "component", type: i3.SInputComponent, selector: "s-input", inputs: ["config"], outputs: ["clickHelpIconEvent", "blur", "focus"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.SIconMaterialComponent, selector: "s-icon-mat", inputs: ["name", "size", "fill", "weight", "grade", "style", "type"] }, { kind: "component", type: i6.SSubMenuComponent, selector: "s-sub-menu", inputs: ["menu"], outputs: ["changeMenuEvent", "closeMenuEvent"] }, { kind: "component", type: i7.SSelectMultipleComponent, selector: "s-select-multiple", inputs: ["config"], outputs: ["selectEvent", "selectedEvent", "blurEvent", "focusEvent"] }, { kind: "component", type: i8.SSelectComponent, selector: "s-select", inputs: ["config"], outputs: ["blur", "focus"] }], encapsulation: i0.ViewEncapsulation.None }); }
109
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SToolbarTopComponent, selector: "s-toolbar-top", inputs: { config: "config" }, outputs: { actionEvent: "actionEvent", deleteEvent: "deleteEvent", filterEvent: "filterEvent", multiSelectEvent: "multiSelectEvent", pillButtonEvent: "pillButtonEvent", selectEvent: "selectEvent", searchEvent: "searchEvent" }, usesOnChanges: true, ngImport: i0, template: "<section class=\"s-toolbar-top\" [id]=\"id\">\n <section class=\"s-toolbar-top__content\">\n <div class=\"s-toolbar-top__section\">\n <h3 *ngIf=\"config.title\" class=\"s-toolbar-top__title\">\n {{ config.title }}\n </h3>\n <div\n *ngIf=\"config.title && (config.actionButton || config.multiActionButton)\"\n class=\"s-toolbar-top__section--line\"></div>\n <s-button\n class=\"s-toolbar-top__button\"\n *ngIf=\"config.actionButton\"\n [id]=\"id + '-actionButton'\"\n (click)=\"action()\"\n (keydown.enter)=\"action()\">\n @if (!config.actionButtonIconDisabled) {\n <s-icon-mat>\n {{ config.actionButtonIcon ?? 'add_circle' }}\n </s-icon-mat>\n }\n {{ config.actionButton }}\n </s-button>\n <div class=\"s-toolbar-top--relativeContainer\" *ngIf=\"this.config.multiActionButton\">\n <s-button\n class=\"s-toolbar-top__multiAction s-toolbar-top__button\"\n [id]=\"id + '-multiAction'\"\n (click)=\"multiActionToggle()\"\n (keydown.enter)=\"multiActionToggle()\">\n <s-icon-mat>add_circle</s-icon-mat>\n {{ config.multiActionButton }}\n <s-icon-mat>keyboard_arrow_down</s-icon-mat>\n </s-button>\n <div class=\"s-toolbar-top__multiAction--sub-menu\" *ngIf=\"multiAction\">\n <s-sub-menu\n *ngIf=\"multiActionMenu\"\n class=\"w-100\"\n [menu]=\"multiActionMenu\"\n (closeMenuEvent)=\"multiActionToggle()\"></s-sub-menu>\n </div>\n </div>\n <div *ngIf=\"config.deleteButton\" class=\"s-toolbar-top__section--line\"></div>\n <s-button\n class=\"s-toolbar-top__button\"\n *ngIf=\"config.deleteButton\"\n theme=\"red\"\n [disabled]=\"config.deleteDisabled ?? false\"\n [id]=\"id + '-deleteButton'\"\n (click)=\"delete()\"\n (keydown.enter)=\"delete()\">\n <s-icon-mat>delete</s-icon-mat>\n {{ config.deleteButton }}\n </s-button>\n </div>\n <div class=\"s-toolbar-top__section\">\n <div class=\"s-toolbar-top__section--search\">\n <s-input\n [id]=\"id + '-search'\"\n *ngIf=\"inputSearchConfig\"\n class=\"w-100\"\n [config]=\"inputSearchConfig\"\n [(ngModel)]=\"searchValue\"\n (ngModelChange)=\"search($event)\">\n </s-input>\n </div>\n <div class=\"s-toolbar-top__section--select\" *ngIf=\"config.select\">\n <s-select\n [config]=\"config.select\"\n [id]=\"id + '-searchSelect'\"\n [(ngModel)]=\"select\"\n (ngModelChange)=\"selectChange($event)\"></s-select>\n </div>\n <div class=\"s-toolbar-top__section--select\" *ngIf=\"config.multiSelect\">\n <s-select-multiple\n class=\"s-toolbar-top__section--multi-select\"\n [config]=\"config.multiSelect\"\n [id]=\"id + '-multiSelect'\"\n (selectedEvent)=\"multiSelect($event)\">\n </s-select-multiple>\n </div>\n <div class=\"s-toolbar-top--relativeContainer\" *ngIf=\"config.filterButton && config.filters\">\n <s-button\n class=\"s-toolbar-top__button\"\n [id]=\"id + '-filterButton'\"\n [disabled]=\"config.filtersDisabled ?? false\"\n (click)=\"filterShow()\">\n <s-icon-mat>tune</s-icon-mat>\n {{ config.filterButton }}\n <s-icon-mat>keyboard_arrow_down</s-icon-mat>\n </s-button>\n <div class=\"s-toolbar-top__section--toggle\" *ngIf=\"filterToggle\">\n <s-sub-menu\n [menu]=\"config.filters\"\n (changeMenuEvent)=\"selectFilter($event)\"\n (closeMenuEvent)=\"filterShow()\"></s-sub-menu>\n </div>\n </div>\n <div *ngIf=\"config.pillButton\">\n <s-button\n class=\"s-toolbar-top__button\"\n [id]=\"id + '-pillSelect'\"\n [disabled]=\"config.filtersDisabled ?? false\"\n (click)=\"pillSelect()\"\n (keydowyn.enter)=\"pillSelect()\"\n [pill]=\"true\">\n <s-icon-mat>{{ config.pillButton }}</s-icon-mat>\n </s-button>\n </div>\n </div>\n </section>\n</section>\n", styles: [".s-toolbar-top{color:var(--secondary-700);min-width:0;word-wrap:break-word;background-color:var(--neutrals-1200);border-radius:.5rem .5rem 0 0;border-bottom:.031rem solid var(--secondary-300)}.s-toolbar-top--relativeContainer{position:relative}.s-toolbar-top__content{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem}.s-toolbar-top__button{white-space:nowrap}.s-toolbar-top__section{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.s-toolbar-top__section--line{width:.063rem;height:2rem;background-color:var(--neutrals-700)}.s-toolbar-top__section--search{max-width:17.5rem;min-width:13.5rem}.s-toolbar-top__section--select{width:12rem}.s-toolbar-top__section--select s-select-multiple .s-select__main__selected-option span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.s-toolbar-top__section--multi-select{width:12rem}.s-toolbar-top__section--toggle{position:absolute;z-index:2}.s-toolbar-top__section-filters{justify-content:start!important}.s-toolbar-top__title{background-color:var(--primary-100);border-radius:.25rem;font-size:.875rem;font-weight:700;padding:.1rem .75rem;white-space:nowrap}.s-toolbar-top__multiAction{position:relative}.s-toolbar-top__multiAction--sub-menu{display:flex;z-index:1;position:absolute;width:21rem}.s-toolbar-top s-input .s-input{margin-bottom:none!important}.s-toolbar-top .s-select__options.md{top:3rem!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SButtonComponent, selector: "s-button", inputs: ["disabled", "id", "pill", "size", "invert", "type", "loading", "position", "theme", "active"] }, { kind: "component", type: i3.SInputComponent, selector: "s-input", inputs: ["config"], outputs: ["clickHelpIconEvent", "blur", "focus"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.SIconMaterialComponent, selector: "s-icon-mat", inputs: ["name", "size", "fill", "weight", "grade", "style", "type", "id"] }, { kind: "component", type: i6.SSubMenuComponent, selector: "s-sub-menu", inputs: ["menu"], outputs: ["changeMenuEvent", "closeMenuEvent"] }, { kind: "component", type: i7.SSelectMultipleComponent, selector: "s-select-multiple", inputs: ["config", "id"], outputs: ["selectEvent", "selectedEvent", "blurEvent", "focusEvent"] }, { kind: "component", type: i8.SSelectComponent, selector: "s-select", inputs: ["config", "id"], outputs: ["blur", "focus"] }], encapsulation: i0.ViewEncapsulation.None }); }
109
110
  }
110
111
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SToolbarTopComponent, decorators: [{
111
112
  type: Component,
112
- args: [{ selector: 's-toolbar-top', encapsulation: ViewEncapsulation.None, template: "<section class=\"s-toolbar-top\">\n <section class=\"s-toolbar-top__content\">\n <div class=\"s-toolbar-top__section\">\n <h3 *ngIf=\"config.title\" class=\"s-toolbar-top__title\">\n {{ config.title }}\n </h3>\n <div\n *ngIf=\"config.title && (config.actionButton || config.multiActionButton)\"\n class=\"s-toolbar-top__section--line\"></div>\n <s-button class=\"s-toolbar-top__button\" *ngIf=\"config.actionButton\" (click)=\"action()\" (keydown.enter)=\"action()\">\n @if (!config.actionButtonIconDisabled) {\n <s-icon-mat>\n {{ config.actionButtonIcon ?? 'add_circle' }}\n </s-icon-mat>\n }\n {{ config.actionButton }}\n </s-button>\n <div class=\"s-toolbar-top--relativeContainer\" *ngIf=\"this.config.multiActionButton\">\n <s-button\n class=\"s-toolbar-top__multiAction s-toolbar-top__button\"\n (click)=\"multiActionToggle()\"\n (keydown.enter)=\"multiActionToggle()\">\n <s-icon-mat>add_circle</s-icon-mat>\n {{ config.multiActionButton }}\n <s-icon-mat>keyboard_arrow_down</s-icon-mat>\n </s-button>\n <div class=\"s-toolbar-top__multiAction--sub-menu\" *ngIf=\"multiAction\">\n <s-sub-menu\n *ngIf=\"multiActionMenu\"\n class=\"w-100\"\n [menu]=\"multiActionMenu\"\n (closeMenuEvent)=\"multiActionToggle()\"></s-sub-menu>\n </div>\n </div>\n <div *ngIf=\"config.deleteButton\" class=\"s-toolbar-top__section--line\"></div>\n <s-button\n class=\"s-toolbar-top__button\"\n *ngIf=\"config.deleteButton\"\n theme=\"red\"\n [disabled]=\"config.deleteDisabled ?? false\"\n (click)=\"delete()\"\n (keydown.enter)=\"delete()\">\n <s-icon-mat>delete</s-icon-mat>\n {{ config.deleteButton }}\n </s-button>\n </div>\n <div class=\"s-toolbar-top__section\">\n <div class=\"s-toolbar-top__section--search\">\n <s-input\n *ngIf=\"inputSearchConfig\"\n class=\"w-100\"\n [config]=\"inputSearchConfig\"\n [(ngModel)]=\"searchValue\"\n (ngModelChange)=\"search($event)\">\n </s-input>\n </div>\n <div class=\"s-toolbar-top__section--select\" *ngIf=\"config.select\">\n <s-select [config]=\"config.select\" [(ngModel)]=\"select\" (ngModelChange)=\"selectChange($event)\"></s-select>\n </div>\n <div class=\"s-toolbar-top__section--select\" *ngIf=\"config.multiSelect\">\n <s-select-multiple\n class=\"s-toolbar-top__section--multi-select\"\n [config]=\"config.multiSelect\"\n (selectedEvent)=\"multiSelect($event)\">\n </s-select-multiple>\n </div>\n <div class=\"s-toolbar-top--relativeContainer\" *ngIf=\"config.filterButton && config.filters\">\n <s-button class=\"s-toolbar-top__button\" [disabled]=\"config.filtersDisabled ?? false\" (click)=\"filterShow()\">\n <s-icon-mat>tune</s-icon-mat>\n {{ config.filterButton }}\n <s-icon-mat>keyboard_arrow_down</s-icon-mat>\n </s-button>\n <div class=\"s-toolbar-top__section--toggle\" *ngIf=\"filterToggle\">\n <s-sub-menu\n [menu]=\"config.filters\"\n (changeMenuEvent)=\"selectFilter($event)\"\n (closeMenuEvent)=\"filterShow()\"></s-sub-menu>\n </div>\n </div>\n <div *ngIf=\"config.pillButton\">\n <s-button\n class=\"s-toolbar-top__button\"\n [disabled]=\"config.filtersDisabled ?? false\"\n (click)=\"pillSelect()\"\n (keydowyn.enter)=\"pillSelect()\"\n [pill]=\"true\">\n <s-icon-mat>{{ config.pillButton }}</s-icon-mat>\n </s-button>\n </div>\n </div>\n </section>\n</section>\n", styles: [".s-toolbar-top{color:var(--secondary-700);min-width:0;word-wrap:break-word;background-color:var(--neutrals-1200);border-radius:.5rem .5rem 0 0;border-bottom:.031rem solid var(--secondary-300)}.s-toolbar-top--relativeContainer{position:relative}.s-toolbar-top__content{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem}.s-toolbar-top__button{white-space:nowrap}.s-toolbar-top__section{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.s-toolbar-top__section--line{width:.063rem;height:2rem;background-color:var(--neutrals-700)}.s-toolbar-top__section--search{max-width:17.5rem;min-width:13.5rem}.s-toolbar-top__section--select{width:12rem}.s-toolbar-top__section--select s-select-multiple .s-select__main__selected-option span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.s-toolbar-top__section--multi-select{width:12rem}.s-toolbar-top__section--toggle{position:absolute;z-index:2}.s-toolbar-top__section-filters{justify-content:start!important}.s-toolbar-top__title{background-color:var(--primary-100);border-radius:.25rem;font-size:.875rem;font-weight:700;padding:.1rem .75rem;white-space:nowrap}.s-toolbar-top__multiAction{position:relative}.s-toolbar-top__multiAction--sub-menu{display:flex;z-index:1;position:absolute;width:21rem}.s-toolbar-top s-input .s-input{margin-bottom:none!important}.s-toolbar-top .s-select__options.md{top:3rem!important}\n"] }]
113
+ args: [{ selector: 's-toolbar-top', encapsulation: ViewEncapsulation.None, template: "<section class=\"s-toolbar-top\" [id]=\"id\">\n <section class=\"s-toolbar-top__content\">\n <div class=\"s-toolbar-top__section\">\n <h3 *ngIf=\"config.title\" class=\"s-toolbar-top__title\">\n {{ config.title }}\n </h3>\n <div\n *ngIf=\"config.title && (config.actionButton || config.multiActionButton)\"\n class=\"s-toolbar-top__section--line\"></div>\n <s-button\n class=\"s-toolbar-top__button\"\n *ngIf=\"config.actionButton\"\n [id]=\"id + '-actionButton'\"\n (click)=\"action()\"\n (keydown.enter)=\"action()\">\n @if (!config.actionButtonIconDisabled) {\n <s-icon-mat>\n {{ config.actionButtonIcon ?? 'add_circle' }}\n </s-icon-mat>\n }\n {{ config.actionButton }}\n </s-button>\n <div class=\"s-toolbar-top--relativeContainer\" *ngIf=\"this.config.multiActionButton\">\n <s-button\n class=\"s-toolbar-top__multiAction s-toolbar-top__button\"\n [id]=\"id + '-multiAction'\"\n (click)=\"multiActionToggle()\"\n (keydown.enter)=\"multiActionToggle()\">\n <s-icon-mat>add_circle</s-icon-mat>\n {{ config.multiActionButton }}\n <s-icon-mat>keyboard_arrow_down</s-icon-mat>\n </s-button>\n <div class=\"s-toolbar-top__multiAction--sub-menu\" *ngIf=\"multiAction\">\n <s-sub-menu\n *ngIf=\"multiActionMenu\"\n class=\"w-100\"\n [menu]=\"multiActionMenu\"\n (closeMenuEvent)=\"multiActionToggle()\"></s-sub-menu>\n </div>\n </div>\n <div *ngIf=\"config.deleteButton\" class=\"s-toolbar-top__section--line\"></div>\n <s-button\n class=\"s-toolbar-top__button\"\n *ngIf=\"config.deleteButton\"\n theme=\"red\"\n [disabled]=\"config.deleteDisabled ?? false\"\n [id]=\"id + '-deleteButton'\"\n (click)=\"delete()\"\n (keydown.enter)=\"delete()\">\n <s-icon-mat>delete</s-icon-mat>\n {{ config.deleteButton }}\n </s-button>\n </div>\n <div class=\"s-toolbar-top__section\">\n <div class=\"s-toolbar-top__section--search\">\n <s-input\n [id]=\"id + '-search'\"\n *ngIf=\"inputSearchConfig\"\n class=\"w-100\"\n [config]=\"inputSearchConfig\"\n [(ngModel)]=\"searchValue\"\n (ngModelChange)=\"search($event)\">\n </s-input>\n </div>\n <div class=\"s-toolbar-top__section--select\" *ngIf=\"config.select\">\n <s-select\n [config]=\"config.select\"\n [id]=\"id + '-searchSelect'\"\n [(ngModel)]=\"select\"\n (ngModelChange)=\"selectChange($event)\"></s-select>\n </div>\n <div class=\"s-toolbar-top__section--select\" *ngIf=\"config.multiSelect\">\n <s-select-multiple\n class=\"s-toolbar-top__section--multi-select\"\n [config]=\"config.multiSelect\"\n [id]=\"id + '-multiSelect'\"\n (selectedEvent)=\"multiSelect($event)\">\n </s-select-multiple>\n </div>\n <div class=\"s-toolbar-top--relativeContainer\" *ngIf=\"config.filterButton && config.filters\">\n <s-button\n class=\"s-toolbar-top__button\"\n [id]=\"id + '-filterButton'\"\n [disabled]=\"config.filtersDisabled ?? false\"\n (click)=\"filterShow()\">\n <s-icon-mat>tune</s-icon-mat>\n {{ config.filterButton }}\n <s-icon-mat>keyboard_arrow_down</s-icon-mat>\n </s-button>\n <div class=\"s-toolbar-top__section--toggle\" *ngIf=\"filterToggle\">\n <s-sub-menu\n [menu]=\"config.filters\"\n (changeMenuEvent)=\"selectFilter($event)\"\n (closeMenuEvent)=\"filterShow()\"></s-sub-menu>\n </div>\n </div>\n <div *ngIf=\"config.pillButton\">\n <s-button\n class=\"s-toolbar-top__button\"\n [id]=\"id + '-pillSelect'\"\n [disabled]=\"config.filtersDisabled ?? false\"\n (click)=\"pillSelect()\"\n (keydowyn.enter)=\"pillSelect()\"\n [pill]=\"true\">\n <s-icon-mat>{{ config.pillButton }}</s-icon-mat>\n </s-button>\n </div>\n </div>\n </section>\n</section>\n", styles: [".s-toolbar-top{color:var(--secondary-700);min-width:0;word-wrap:break-word;background-color:var(--neutrals-1200);border-radius:.5rem .5rem 0 0;border-bottom:.031rem solid var(--secondary-300)}.s-toolbar-top--relativeContainer{position:relative}.s-toolbar-top__content{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem}.s-toolbar-top__button{white-space:nowrap}.s-toolbar-top__section{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.s-toolbar-top__section--line{width:.063rem;height:2rem;background-color:var(--neutrals-700)}.s-toolbar-top__section--search{max-width:17.5rem;min-width:13.5rem}.s-toolbar-top__section--select{width:12rem}.s-toolbar-top__section--select s-select-multiple .s-select__main__selected-option span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.s-toolbar-top__section--multi-select{width:12rem}.s-toolbar-top__section--toggle{position:absolute;z-index:2}.s-toolbar-top__section-filters{justify-content:start!important}.s-toolbar-top__title{background-color:var(--primary-100);border-radius:.25rem;font-size:.875rem;font-weight:700;padding:.1rem .75rem;white-space:nowrap}.s-toolbar-top__multiAction{position:relative}.s-toolbar-top__multiAction--sub-menu{display:flex;z-index:1;position:absolute;width:21rem}.s-toolbar-top s-input .s-input{margin-bottom:none!important}.s-toolbar-top .s-select__options.md{top:3rem!important}\n"] }]
113
114
  }], propDecorators: { config: [{
114
115
  type: Input
115
116
  }], actionEvent: [{
@@ -127,4 +128,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
127
128
  }], searchEvent: [{
128
129
  type: Output
129
130
  }] } });
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci10b3AuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2lkZXN5cy1nZW5lcmljLXVpL3NyYy9saWIvdG9vbGJhci10b3AvdG9vbGJhci10b3AuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2lkZXN5cy1nZW5lcmljLXVpL3NyYy9saWIvdG9vbGJhci10b3AvdG9vbGJhci10b3AuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFFTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7Ozs7O0FBNkI3RSxNQUFNLE9BQU8sb0JBQW9CO0lBTmpDO1FBUVksZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3ZDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUN2QyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFZLENBQUM7UUFDM0MscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQztRQUNoRCxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDM0MsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3pDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUluRCxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUU3QixpQkFBWSxHQUFZLEtBQUssQ0FBQztLQWtHL0I7SUFoR0MsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDdEIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxD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QUFXLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxJQUFJLEtBQUssQ0FBQztRQUMxRSxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLGVBQWUsR0FBRztnQkFDckIsS0FBSyxFQUFFO29CQUNMO3dCQUNFLEVBQUUsRUFBRSxHQUFHO3dCQUNQLEtBQUssRUFBRSxTQUFTO3dCQUNoQixJQUFJLEVBQUUsVUFBVTtxQkFDakI7b0JBQ0Q7d0JBQ0UsRUFBRSxFQUFFLEdBQUc7d0JBQ1AsS0FBSyxFQUFFLE9BQU87d0JBQ2QsSUFBSSxFQUFFLFFBQVE7cUJBQ2Y7aUJBQ0Y7YUFDRixDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxJQUFJLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxXQUFXLENBQUMsR0FBVztRQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUM7SUFDaEMsQ0FBQzsrR0EvR1Usb0JBQW9CO21HQUFwQixvQkFBb0IsMlVDeENqQyxxeUhBNEZBOzs0RkRwRGEsb0JBQW9CO2tCQU5oQyxTQUFTOytCQUNFLGVBQWUsaUJBR1YsaUJBQWlCLENBQUMsSUFBSTs4QkFHNUIsTUFBTTtzQkFBZCxLQUFLO2dCQUNJLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFDRyxlQUFlO3NCQUF4QixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU1N1Yk1lbnUsIFNTdWJNZW51SXRlbSB9IGZyb20gJy4uL3N1Yi1tZW51JztcbmltcG9ydCB7IElOUFVUX1RZUEUsIFNJbnB1dCB9IGZyb20gJy4uL2lucHV0L2NvbXBvbmVudHMvaW5wdXQvcy1pbnB1dC1tb2RlbCc7XG5pbXBvcnQgeyBTTXVsdGlTZWxlY3QgfSBmcm9tICcuLi9zZWxlY3Qvc2VsZWN0LW11bHRpcGxlL3Mtc2VsZWN0LW11bHRpcGxlLW1vZGVsJztcbmltcG9ydCB7IFNTZWxlY3QgfSBmcm9tICcuLi9zZWxlY3Qvc2VsZWN0L3Mtc2VsZWN0LW1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBTVG9vbGJhclRvcCB7XG4gIGFjdGlvbkJ1dHRvbj86IHN0cmluZzsgLy9UZXh0byBkZWwgYnRuIGRlIGFjY2nDs24sIHNpbm8gbm8gc2UgbXVlc3RyYVxuICBhY3Rpb25CdXR0b25JY29uPzogc3RyaW5nOyAvLyBQZXJzb25hbGl6YXIgZWwgaWNvbm9cbiAgYWN0aW9uQnV0dG9uSWNvbkRpc2FibGVkPzogYm9vbGVhbjsgLy8gT2N1bHRhciBpY29ub1xuICBtdWx0aUFjdGlvbkJ1dHRvbj86IHN0cmluZzsgLy9UZXh0byBkZWwgYnRuIGRlIG11bHRpQWNjacOzbiwgc2lubyBubyBzZSBtdWVzdHJhXG4gIGRlbGV0ZUJ1dHRvbj86IHN0cmluZzsgLy9UZXh0byBkZWwgYnRuIGRlIGVsaW1pbmFyLCBzaW5vIG5vIHNlIG11ZXN0cmFcbiAgZGVsZXRlRGlzYWJsZWQ/OiBib29sZWFuO1xuICBmaWx0ZXJCdXR0b24/OiBzdHJpbmc7IC8vVGV4dG8gZGVsIGJ0biBkZSBmaWx0cmFyLCBzaW5vIG5vIHNlIG11ZXN0cmFcbiAgZmlsdGVyc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgZmlsdGVycz86IFNTdWJNZW51OyAvL0ZpbHRyb3MgcGFyYSBtb3N0cmFyIGVuIGVsIGRlc3BsZWdhYmxlXG4gIHBsYWNlaG9sZGVyU2VhcmNoPzogc3RyaW5nOyAvL1BvciBkZWZlY3RvICdCdXNjYXJcbiAgc2VhcmNoPzogYm9vbGVhbjsgLy9Qb3IgZGVmZWN0byB0cnVlXG4gIHNlYXJjaFZhbHVlPzogc3RyaW5nO1xuICBzZWxlY3Q/OiBTU2VsZWN0O1xuICBtdWx0aVNlbGVjdD86IFNNdWx0aVNlbGVjdDtcbiAgcGlsbEJ1dHRvbj86IHN0cmluZzsgLy9JY29ubyBkZWwgYnRuIGRlIHBpbGwsIHNpbm8gbm8gc2UgbXVlc3RyYVxuICB0aXRsZT86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncy10b29sYmFyLXRvcCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90b29sYmFyLXRvcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Rvb2xiYXItdG9wLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFNUb29sYmFyVG9wQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBjb25maWchOiBTVG9vbGJhclRvcDtcbiAgQE91dHB1dCgpIGFjdGlvbkV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgZGVsZXRlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBmaWx0ZXJFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG4gIEBPdXRwdXQoKSBtdWx0aVNlbGVjdEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmdbXT4oKTtcbiAgQE91dHB1dCgpIHBpbGxCdXR0b25FdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIHNlbGVjdEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBzZWFyY2hFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIGlucHV0U2VhcmNoQ29uZmlnITogU0lucHV0O1xuICBtdWx0aUFjdGlvbk1lbnUhOiBTU3ViTWVudTtcbiAgbXVsdGlBY3Rpb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgc2VsZWN0ITogc3RyaW5nO1xuICBmaWx0ZXJUb2dnbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZXNbJ2NvbmZpZyddKSB7XG4gICAgICBpZiAodGhpcy5jb25maWcuc2VhcmNoICYmIHRoaXMuY29uZmlnLmZpbHRlcnNEaXNhYmxlZCkge1xuICAgICAgICB0aGlzLmlucHV0U2VhcmNoQ29uZmlnLmRpc2FibGVkID0gdGhpcy5jb25maWcuZmlsdGVyc0Rpc2FibGVkID8/IGZhbHNlO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuY29uZmlnLnNlbGVjdCkge1xuICAgICAgICB0aGlzLmNvbmZpZy5zZWxlY3QuZGlzYWJsZWQgPSB0aGlzLmNvbmZpZy5maWx0ZXJzRGlzYWJsZWQgPz8gZmFsc2U7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5jb25maWcubXVsdGlTZWxlY3QpIHtcbiAgICAgICAgdGhpcy5jb25maWcubXVsdGlTZWxlY3QuZGlzYWJsZWQgPSB0aGlzLmNvbmZpZy5maWx0ZXJzRGlzYWJsZWQgPz8gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5faW5pdENvbmZpZygpO1xuICB9XG5cbiAgYWN0aW9uKCkge1xuICAgIHRoaXMuYWN0aW9uRXZlbnQuZW1pdCgpO1xuICB9XG5cbiAgbXVsdGlBY3Rpb25Ub2dnbGUoKSB7XG4gICAgdGhpcy5tdWx0aUFjdGlvbiA9ICF0aGlzLm11bHRpQWN0aW9uO1xuICB9XG5cbiAgZGVsZXRlKCkge1xuICAgIHRoaXMuZGVsZXRlRXZlbnQuZW1pdCgpO1xuICB9XG5cbiAgc2VhcmNoKHRleHQ6IHN0cmluZykge1xuICAgIHRoaXMuc2VhcmNoRXZlbnQuZW1pdCh0ZXh0KTtcbiAgfVxuXG4gIHNlbGVjdENoYW5nZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5zZWxlY3RFdmVudC5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIG11bHRpU2VsZWN0KHZhbHVlOiBzdHJpbmdbXSkge1xuICAgIHRoaXMubXVsdGlTZWxlY3RFdmVudC5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIHNlbGVjdEZpbHRlcihpdGVtczogU1N1Yk1lbnVJdGVtW10pIHtcbiAgICBjb25zdCBzZWxlY3RlZElkcyA9IGl0ZW1zLmZpbHRlcihpdGVtID0+IGl0ZW0udmFsdWUgPT09IHRydWUpLm1hcChpdGVtID0+IGl0ZW0uaWQpO1xuICAgIHRoaXMuZmlsdGVyRXZlbnQuZW1pdChzZWxlY3RlZElkcyk7XG4gIH1cblxuICBmaWx0ZXJTaG93KCkge1xuICAgIHRoaXMuZmlsdGVyVG9nZ2xlID0gIXRoaXMuZmlsdGVyVG9nZ2xlO1xuICB9XG5cbiAgcGlsbFNlbGVjdCgpIHtcbiAgICB0aGlzLnBpbGxCdXR0b25FdmVudC5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIF9pbml0Q29uZmlnKCkge1xuICAgIGlmICh0aGlzLmNvbmZpZy5zZWFyY2ggfHwgdGhpcy5jb25maWcuc2VhcmNoID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuaW5wdXRTZWFyY2hDb25maWcgPSB7XG4gICAgICAgIGlkOiAnc2VhcmNoJyxcbiAgICAgICAgZGlzYWJsZWQ6IHRoaXMuY29uZmlnLmZpbHRlcnNEaXNhYmxlZCA/PyBmYWxzZSxcbiAgICAgICAgcGxhY2Vob2xkZXI6IHRoaXMuY29uZmlnLnBsYWNlaG9sZGVyU2VhcmNoID8/ICdCdXNjYXInLFxuICAgICAgICB0eXBlOiBJTlBVVF9UWVBFLlNFQVJDSCxcbiAgICAgICAgdXNlRm9ybUNvbnRyb2w6IGZhbHNlLFxuICAgICAgfTtcbiAgICB9XG4gICAgaWYgKHRoaXMuY29uZmlnLnNlbGVjdCkge1xuICAgICAgdGhpcy5jb25maWcuc2VsZWN0LmRpc2FibGVkID0gdGhpcy5jb25maWcuZmlsdGVyc0Rpc2FibGVkID8/IGZhbHNlO1xuICAgIH1cbiAgICBpZiAodGhpcy5jb25maWcubXVsdGlTZWxlY3QpIHtcbiAgICAgIHRoaXMuY29uZmlnLm11bHRpU2VsZWN0LmRpc2FibGVkID0gdGhpcy5jb25maWcuZmlsdGVyc0Rpc2FibGVkID8/IGZhbHNlO1xuICAgIH1cbiAgICBpZiAodGhpcy5jb25maWcubXVsdGlBY3Rpb25CdXR0b24pIHtcbiAgICAgIHRoaXMubXVsdGlBY3Rpb25NZW51ID0ge1xuICAgICAgICBpdGVtczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAnMScsXG4gICAgICAgICAgICB0aXRsZTogJ1N1Ym1lbnUnLFxuICAgICAgICAgICAgbGluazogJy9zdWJtZW51JyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAnMicsXG4gICAgICAgICAgICB0aXRsZTogJ0JhZGdlJyxcbiAgICAgICAgICAgIGxpbms6ICcvYmFkZ2UnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIGdldCBzZWFyY2hWYWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWc/LnNlYXJjaFZhbHVlID8/ICcnO1xuICB9XG5cbiAgc2V0IHNlYXJjaFZhbHVlKHZhbDogc3RyaW5nKSB7XG4gICAgdGhpcy5jb25maWcuc2VhcmNoVmFsdWUgPSB2YWw7XG4gIH1cbn1cbiIsIjxzZWN0aW9uIGNsYXNzPVwicy10b29sYmFyLXRvcFwiPlxuICA8c2VjdGlvbiBjbGFzcz1cInMtdG9vbGJhci10b3BfX2NvbnRlbnRcIj5cbiAgICA8ZGl2IGNsYXNzPVwicy10b29sYmFyLXRvcF9fc2VjdGlvblwiPlxuICAgICAgPGgzICpuZ0lmPVwiY29uZmlnLnRpdGxlXCIgY2xhc3M9XCJzLXRvb2xiYXItdG9wX190aXRsZVwiPlxuICAgICAgICB7eyBjb25maWcudGl0bGUgfX1cbiAgICAgIDwvaDM+XG4gICAgICA8ZGl2XG4gICAgICAgICpuZ0lmPVwiY29uZmlnLnRpdGxlICYmIChjb25maWcuYWN0aW9uQnV0dG9uIHx8IGNvbmZpZy5tdWx0aUFjdGlvbkJ1dHRvbilcIlxuICAgICAgICBjbGFzcz1cInMtdG9vbGJhci10b3BfX3NlY3Rpb24tLWxpbmVcIj48L2Rpdj5cbiAgICAgIDxzLWJ1dHRvbiBjbGFzcz1cInMtdG9vbGJhci10b3BfX2J1dHRvblwiICpuZ0lmPVwiY29uZmlnLmFjdGlvbkJ1dHRvblwiIChjbGljayk9XCJhY3Rpb24oKVwiIChrZXlkb3duLmVudGVyKT1cImFjdGlvbigpXCI+XG4gICAgICAgIEBpZiAoIWNvbmZpZy5hY3Rpb25CdXR0b25JY29uRGlzYWJsZWQpIHtcbiAgICAgICAgICA8cy1pY29uLW1hdD5cbiAgICAgICAgICAgIHt7IGNvbmZpZy5hY3Rpb25CdXR0b25JY29uID8/ICdhZGRfY2lyY2xlJyB9fVxuICAgICAgICAgIDwvcy1pY29uLW1hdD5cbiAgICAgICAgfVxuICAgICAgICB7eyBjb25maWcuYWN0aW9uQnV0dG9uIH19XG4gICAgICA8L3MtYnV0dG9uPlxuICAgICAgPGRpdiBjbGFzcz1cInMtdG9vbGJhci10b3AtLXJlbGF0aXZlQ29udGFpbmVyXCIgKm5nSWY9XCJ0aGlzLmNvbmZpZy5tdWx0aUFjdGlvbkJ1dHRvblwiPlxuICAgICAgICA8cy1idXR0b25cbiAgICAgICAgICBjbGFzcz1cInMtdG9vbGJhci10b3BfX211bHRpQWN0aW9uIHMtdG9vbGJhci10b3BfX2J1dHRvblwiXG4gICAgICAgICAgKGNsaWNrKT1cIm11bHRpQWN0aW9uVG9nZ2xlKClcIlxuICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIm11bHRpQWN0aW9uVG9nZ2xlKClcIj5cbiAgICAgICAgICA8cy1pY29uLW1hdD5hZGRfY2lyY2xlPC9zLWljb24tbWF0PlxuICAgICAgICAgIHt7IGNvbmZpZy5tdWx0aUFjdGlvbkJ1dHRvbiB9fVxuICAgICAgICAgIDxzLWljb24tbWF0PmtleWJvYXJkX2Fycm93X2Rvd248L3MtaWNvbi1tYXQ+XG4gICAgICAgIDwvcy1idXR0b24+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19tdWx0aUFjdGlvbi0tc3ViLW1lbnVcIiAqbmdJZj1cIm11bHRpQWN0aW9uXCI+XG4gICAgICAgICAgPHMtc3ViLW1lbnVcbiAgICAgICAgICAgICpuZ0lmPVwibXVsdGlBY3Rpb25NZW51XCJcbiAgICAgICAgICAgIGNsYXNzPVwidy0xMDBcIlxuICAgICAgICAgICAgW21lbnVdPVwibXVsdGlBY3Rpb25NZW51XCJcbiAgICAgICAgICAgIChjbG9zZU1lbnVFdmVudCk9XCJtdWx0aUFjdGlvblRvZ2dsZSgpXCI+PC9zLXN1Yi1tZW51PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImNvbmZpZy5kZWxldGVCdXR0b25cIiBjbGFzcz1cInMtdG9vbGJhci10b3BfX3NlY3Rpb24tLWxpbmVcIj48L2Rpdj5cbiAgICAgIDxzLWJ1dHRvblxuICAgICAgICBjbGFzcz1cInMtdG9vbGJhci10b3BfX2J1dHRvblwiXG4gICAgICAgICpuZ0lmPVwiY29uZmlnLmRlbGV0ZUJ1dHRvblwiXG4gICAgICAgIHRoZW1lPVwicmVkXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImNvbmZpZy5kZWxldGVEaXNhYmxlZCA/PyBmYWxzZVwiXG4gICAgICAgIChjbGljayk9XCJkZWxldGUoKVwiXG4gICAgICAgIChrZXlkb3duLmVudGVyKT1cImRlbGV0ZSgpXCI+XG4gICAgICAgIDxzLWljb24tbWF0PmRlbGV0ZTwvcy1pY29uLW1hdD5cbiAgICAgICAge3sgY29uZmlnLmRlbGV0ZUJ1dHRvbiB9fVxuICAgICAgPC9zLWJ1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicy10b29sYmFyLXRvcF9fc2VjdGlvblwiPlxuICAgICAgPGRpdiBjbGFzcz1cInMtdG9vbGJhci10b3BfX3NlY3Rpb24tLXNlYXJjaFwiPlxuICAgICAgICA8cy1pbnB1dFxuICAgICAgICAgICpuZ0lmPVwiaW5wdXRTZWFyY2hDb25maWdcIlxuICAgICAgICAgIGNsYXNzPVwidy0xMDBcIlxuICAgICAgICAgIFtjb25maWddPVwiaW5wdXRTZWFyY2hDb25maWdcIlxuICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVmFsdWVcIlxuICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNlYXJjaCgkZXZlbnQpXCI+XG4gICAgICAgIDwvcy1pbnB1dD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInMtdG9vbGJhci10b3BfX3NlY3Rpb24tLXNlbGVjdFwiICpuZ0lmPVwiY29uZmlnLnNlbGVjdFwiPlxuICAgICAgICA8cy1zZWxlY3QgW2NvbmZpZ109XCJjb25maWcuc2VsZWN0XCIgWyhuZ01vZGVsKV09XCJzZWxlY3RcIiAobmdNb2RlbENoYW5nZSk9XCJzZWxlY3RDaGFuZ2UoJGV2ZW50KVwiPjwvcy1zZWxlY3Q+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19zZWN0aW9uLS1zZWxlY3RcIiAqbmdJZj1cImNvbmZpZy5tdWx0aVNlbGVjdFwiPlxuICAgICAgICA8cy1zZWxlY3QtbXVsdGlwbGVcbiAgICAgICAgICBjbGFzcz1cInMtdG9vbGJhci10b3BfX3NlY3Rpb24tLW11bHRpLXNlbGVjdFwiXG4gICAgICAgICAgW2NvbmZpZ109XCJjb25maWcubXVsdGlTZWxlY3RcIlxuICAgICAgICAgIChzZWxlY3RlZEV2ZW50KT1cIm11bHRpU2VsZWN0KCRldmVudClcIj5cbiAgICAgICAgPC9zLXNlbGVjdC1tdWx0aXBsZT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInMtdG9vbGJhci10b3AtLXJlbGF0aXZlQ29udGFpbmVyXCIgKm5nSWY9XCJjb25maWcuZmlsdGVyQnV0dG9uICYmIGNvbmZpZy5maWx0ZXJzXCI+XG4gICAgICAgIDxzLWJ1dHRvbiBjbGFzcz1cInMtdG9vbGJhci10b3BfX2J1dHRvblwiIFtkaXNhYmxlZF09XCJjb25maWcuZmlsdGVyc0Rpc2FibGVkID8/IGZhbHNlXCIgKGNsaWNrKT1cImZpbHRlclNob3coKVwiPlxuICAgICAgICAgIDxzLWljb24tbWF0PnR1bmU8L3MtaWNvbi1tYXQ+XG4gICAgICAgICAge3sgY29uZmlnLmZpbHRlckJ1dHRvbiB9fVxuICAgICAgICAgIDxzLWljb24tbWF0PmtleWJvYXJkX2Fycm93X2Rvd248L3MtaWNvbi1tYXQ+XG4gICAgICAgIDwvcy1idXR0b24+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19zZWN0aW9uLS10b2dnbGVcIiAqbmdJZj1cImZpbHRlclRvZ2dsZVwiPlxuICAgICAgICAgIDxzLXN1Yi1tZW51XG4gICAgICAgICAgICBbbWVudV09XCJjb25maWcuZmlsdGVyc1wiXG4gICAgICAgICAgICAoY2hhbmdlTWVudUV2ZW50KT1cInNlbGVjdEZpbHRlcigkZXZlbnQpXCJcbiAgICAgICAgICAgIChjbG9zZU1lbnVFdmVudCk9XCJmaWx0ZXJTaG93KClcIj48L3Mtc3ViLW1lbnU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY29uZmlnLnBpbGxCdXR0b25cIj5cbiAgICAgICAgPHMtYnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19idXR0b25cIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJjb25maWcuZmlsdGVyc0Rpc2FibGVkID8/IGZhbHNlXCJcbiAgICAgICAgICAoY2xpY2spPVwicGlsbFNlbGVjdCgpXCJcbiAgICAgICAgICAoa2V5ZG93eW4uZW50ZXIpPVwicGlsbFNlbGVjdCgpXCJcbiAgICAgICAgICBbcGlsbF09XCJ0cnVlXCI+XG4gICAgICAgICAgPHMtaWNvbi1tYXQ+e3sgY29uZmlnLnBpbGxCdXR0b24gfX08L3MtaWNvbi1tYXQ+XG4gICAgICAgIDwvcy1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9zZWN0aW9uPlxuPC9zZWN0aW9uPlxuIl19
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci10b3AuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2lkZXN5cy1nZW5lcmljLXVpL3NyYy9saWIvdG9vbGJhci10b3AvdG9vbGJhci10b3AuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2lkZXN5cy1nZW5lcmljLXVpL3NyYy9saWIvdG9vbGJhci10b3AvdG9vbGJhci10b3AuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFFTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7Ozs7O0FBOEI3RSxNQUFNLE9BQU8sb0JBQW9CO0lBTmpDO1FBUVksZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3ZDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUN2QyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFZLENBQUM7UUFDM0MscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQztRQUNoRCxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDM0MsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3pDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUtuRCxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUU3QixpQkFBWSxHQUFZLEtBQUssQ0FBQztLQW1HL0I7SUFqR0MsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDdEIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxD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bmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU1N1Yk1lbnUsIFNTdWJNZW51SXRlbSB9IGZyb20gJy4uL3N1Yi1tZW51JztcbmltcG9ydCB7IElOUFVUX1RZUEUsIFNJbnB1dCB9IGZyb20gJy4uL2lucHV0L2NvbXBvbmVudHMvaW5wdXQvcy1pbnB1dC1tb2RlbCc7XG5pbXBvcnQgeyBTTXVsdGlTZWxlY3QgfSBmcm9tICcuLi9zZWxlY3Qvc2VsZWN0LW11bHRpcGxlL3Mtc2VsZWN0LW11bHRpcGxlLW1vZGVsJztcbmltcG9ydCB7IFNTZWxlY3QgfSBmcm9tICcuLi9zZWxlY3Qvc2VsZWN0L3Mtc2VsZWN0LW1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBTVG9vbGJhclRvcCB7XG4gIGFjdGlvbkJ1dHRvbj86IHN0cmluZzsgLy9UZXh0byBkZWwgYnRuIGRlIGFjY2nDs24sIHNpbm8gbm8gc2UgbXVlc3RyYVxuICBhY3Rpb25CdXR0b25JY29uPzogc3RyaW5nOyAvLyBQZXJzb25hbGl6YXIgZWwgaWNvbm9cbiAgYWN0aW9uQnV0dG9uSWNvbkRpc2FibGVkPzogYm9vbGVhbjsgLy8gT2N1bHRhciBpY29ub1xuICBtdWx0aUFjdGlvbkJ1dHRvbj86IHN0cmluZzsgLy9UZXh0byBkZWwgYnRuIGRlIG11bHRpQWNjacOzbiwgc2lubyBubyBzZSBtdWVzdHJhXG4gIGRlbGV0ZUJ1dHRvbj86IHN0cmluZzsgLy9UZXh0byBkZWwgYnRuIGRlIGVsaW1pbmFyLCBzaW5vIG5vIHNlIG11ZXN0cmFcbiAgZGVsZXRlRGlzYWJsZWQ/OiBib29sZWFuO1xuICBmaWx0ZXJCdXR0b24/OiBzdHJpbmc7IC8vVGV4dG8gZGVsIGJ0biBkZSBmaWx0cmFyLCBzaW5vIG5vIHNlIG11ZXN0cmFcbiAgZmlsdGVyc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgZmlsdGVycz86IFNTdWJNZW51OyAvL0ZpbHRyb3MgcGFyYSBtb3N0cmFyIGVuIGVsIGRlc3BsZWdhYmxlXG4gIHBsYWNlaG9sZGVyU2VhcmNoPzogc3RyaW5nOyAvL1BvciBkZWZlY3RvICdCdXNjYXJcbiAgc2VhcmNoPzogYm9vbGVhbjsgLy9Qb3IgZGVmZWN0byB0cnVlXG4gIHNlYXJjaFZhbHVlPzogc3RyaW5nO1xuICBzZWxlY3Q/OiBTU2VsZWN0O1xuICBtdWx0aVNlbGVjdD86IFNNdWx0aVNlbGVjdDtcbiAgcGlsbEJ1dHRvbj86IHN0cmluZzsgLy9JY29ubyBkZWwgYnRuIGRlIHBpbGwsIHNpbm8gbm8gc2UgbXVlc3RyYVxuICB0aXRsZT86IHN0cmluZztcbiAgaWQ/OiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3MtdG9vbGJhci10b3AnLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9vbGJhci10b3AuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b29sYmFyLXRvcC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBTVG9vbGJhclRvcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgY29uZmlnITogU1Rvb2xiYXJUb3A7XG4gIEBPdXRwdXQoKSBhY3Rpb25FdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIGRlbGV0ZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgZmlsdGVyRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZ1tdPigpO1xuICBAT3V0cHV0KCkgbXVsdGlTZWxlY3RFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG4gIEBPdXRwdXQoKSBwaWxsQnV0dG9uRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzZWxlY3RFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBAT3V0cHV0KCkgc2VhcmNoRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgaWQhOiBzdHJpbmc7XG5cbiAgaW5wdXRTZWFyY2hDb25maWchOiBTSW5wdXQ7XG4gIG11bHRpQWN0aW9uTWVudSE6IFNTdWJNZW51O1xuICBtdWx0aUFjdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xuICBzZWxlY3QhOiBzdHJpbmc7XG4gIGZpbHRlclRvZ2dsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlc1snY29uZmlnJ10pIHtcbiAgICAgIGlmICh0aGlzLmNvbmZpZy5zZWFyY2ggJiYgdGhpcy5jb25maWcuZmlsdGVyc0Rpc2FibGVkKSB7XG4gICAgICAgIHRoaXMuaW5wdXRTZWFyY2hDb25maWcuZGlzYWJsZWQgPSB0aGlzLmNvbmZpZy5maWx0ZXJzRGlzYWJsZWQgPz8gZmFsc2U7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5jb25maWcuc2VsZWN0KSB7XG4gICAgICAgIHRoaXMuY29uZmlnLnNlbGVjdC5kaXNhYmxlZCA9IHRoaXMuY29uZmlnLmZpbHRlcnNEaXNhYmxlZCA/PyBmYWxzZTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmNvbmZpZy5tdWx0aVNlbGVjdCkge1xuICAgICAgICB0aGlzLmNvbmZpZy5tdWx0aVNlbGVjdC5kaXNhYmxlZCA9IHRoaXMuY29uZmlnLmZpbHRlcnNEaXNhYmxlZCA/PyBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlkID0gdGhpcy5jb25maWcuaWQgPz8gYHMtdG9vbGJhci10b3BgO1xuICAgIHRoaXMuX2luaXRDb25maWcoKTtcbiAgfVxuXG4gIGFjdGlvbigpIHtcbiAgICB0aGlzLmFjdGlvbkV2ZW50LmVtaXQoKTtcbiAgfVxuXG4gIG11bHRpQWN0aW9uVG9nZ2xlKCkge1xuICAgIHRoaXMubXVsdGlBY3Rpb24gPSAhdGhpcy5tdWx0aUFjdGlvbjtcbiAgfVxuXG4gIGRlbGV0ZSgpIHtcbiAgICB0aGlzLmRlbGV0ZUV2ZW50LmVtaXQoKTtcbiAgfVxuXG4gIHNlYXJjaCh0ZXh0OiBzdHJpbmcpIHtcbiAgICB0aGlzLnNlYXJjaEV2ZW50LmVtaXQodGV4dCk7XG4gIH1cblxuICBzZWxlY3RDaGFuZ2UodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuc2VsZWN0RXZlbnQuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBtdWx0aVNlbGVjdCh2YWx1ZTogc3RyaW5nW10pIHtcbiAgICB0aGlzLm11bHRpU2VsZWN0RXZlbnQuZW1pdCh2YWx1ZSk7XG4gIH1cblxuICBzZWxlY3RGaWx0ZXIoaXRlbXM6IFNTdWJNZW51SXRlbVtdKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWRJZHMgPSBpdGVtcy5maWx0ZXIoaXRlbSA9PiBpdGVtLnZhbHVlID09PSB0cnVlKS5tYXAoaXRlbSA9PiBpdGVtLmlkKTtcbiAgICB0aGlzLmZpbHRlckV2ZW50LmVtaXQoc2VsZWN0ZWRJZHMpO1xuICB9XG5cbiAgZmlsdGVyU2hvdygpIHtcbiAgICB0aGlzLmZpbHRlclRvZ2dsZSA9ICF0aGlzLmZpbHRlclRvZ2dsZTtcbiAgfVxuXG4gIHBpbGxTZWxlY3QoKSB7XG4gICAgdGhpcy5waWxsQnV0dG9uRXZlbnQuZW1pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaW5pdENvbmZpZygpIHtcbiAgICBpZiAodGhpcy5jb25maWcuc2VhcmNoIHx8IHRoaXMuY29uZmlnLnNlYXJjaCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmlucHV0U2VhcmNoQ29uZmlnID0ge1xuICAgICAgICBpZDogJ3NlYXJjaCcsXG4gICAgICAgIGRpc2FibGVkOiB0aGlzLmNvbmZpZy5maWx0ZXJzRGlzYWJsZWQgPz8gZmFsc2UsXG4gICAgICAgIHBsYWNlaG9sZGVyOiB0aGlzLmNvbmZpZy5wbGFjZWhvbGRlclNlYXJjaCA/PyAnQnVzY2FyJyxcbiAgICAgICAgdHlwZTogSU5QVVRfVFlQRS5TRUFSQ0gsXG4gICAgICAgIHVzZUZvcm1Db250cm9sOiBmYWxzZSxcbiAgICAgIH07XG4gICAgfVxuICAgIGlmICh0aGlzLmNvbmZpZy5zZWxlY3QpIHtcbiAgICAgIHRoaXMuY29uZmlnLnNlbGVjdC5kaXNhYmxlZCA9IHRoaXMuY29uZmlnLmZpbHRlcnNEaXNhYmxlZCA/PyBmYWxzZTtcbiAgICB9XG4gICAgaWYgKHRoaXMuY29uZmlnLm11bHRpU2VsZWN0KSB7XG4gICAgICB0aGlzLmNvbmZpZy5tdWx0aVNlbGVjdC5kaXNhYmxlZCA9IHRoaXMuY29uZmlnLmZpbHRlcnNEaXNhYmxlZCA/PyBmYWxzZTtcbiAgICB9XG4gICAgaWYgKHRoaXMuY29uZmlnLm11bHRpQWN0aW9uQnV0dG9uKSB7XG4gICAgICB0aGlzLm11bHRpQWN0aW9uTWVudSA9IHtcbiAgICAgICAgaXRlbXM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJzEnLFxuICAgICAgICAgICAgdGl0bGU6ICdTdWJtZW51JyxcbiAgICAgICAgICAgIGxpbms6ICcvc3VibWVudScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJzInLFxuICAgICAgICAgICAgdGl0bGU6ICdCYWRnZScsXG4gICAgICAgICAgICBsaW5rOiAnL2JhZGdlJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICBnZXQgc2VhcmNoVmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnPy5zZWFyY2hWYWx1ZSA/PyAnJztcbiAgfVxuXG4gIHNldCBzZWFyY2hWYWx1ZSh2YWw6IHN0cmluZykge1xuICAgIHRoaXMuY29uZmlnLnNlYXJjaFZhbHVlID0gdmFsO1xuICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cInMtdG9vbGJhci10b3BcIiBbaWRdPVwiaWRcIj5cbiAgPHNlY3Rpb24gY2xhc3M9XCJzLXRvb2xiYXItdG9wX19jb250ZW50XCI+XG4gICAgPGRpdiBjbGFzcz1cInMtdG9vbGJhci10b3BfX3NlY3Rpb25cIj5cbiAgICAgIDxoMyAqbmdJZj1cImNvbmZpZy50aXRsZVwiIGNsYXNzPVwicy10b29sYmFyLXRvcF9fdGl0bGVcIj5cbiAgICAgICAge3sgY29uZmlnLnRpdGxlIH19XG4gICAgICA8L2gzPlxuICAgICAgPGRpdlxuICAgICAgICAqbmdJZj1cImNvbmZpZy50aXRsZSAmJiAoY29uZmlnLmFjdGlvbkJ1dHRvbiB8fCBjb25maWcubXVsdGlBY3Rpb25CdXR0b24pXCJcbiAgICAgICAgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19zZWN0aW9uLS1saW5lXCI+PC9kaXY+XG4gICAgICA8cy1idXR0b25cbiAgICAgICAgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19idXR0b25cIlxuICAgICAgICAqbmdJZj1cImNvbmZpZy5hY3Rpb25CdXR0b25cIlxuICAgICAgICBbaWRdPVwiaWQgKyAnLWFjdGlvbkJ1dHRvbidcIlxuICAgICAgICAoY2xpY2spPVwiYWN0aW9uKClcIlxuICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJhY3Rpb24oKVwiPlxuICAgICAgICBAaWYgKCFjb25maWcuYWN0aW9uQnV0dG9uSWNvbkRpc2FibGVkKSB7XG4gICAgICAgICAgPHMtaWNvbi1tYXQ+XG4gICAgICAgICAgICB7eyBjb25maWcuYWN0aW9uQnV0dG9uSWNvbiA/PyAnYWRkX2NpcmNsZScgfX1cbiAgICAgICAgICA8L3MtaWNvbi1tYXQ+XG4gICAgICAgIH1cbiAgICAgICAge3sgY29uZmlnLmFjdGlvbkJ1dHRvbiB9fVxuICAgICAgPC9zLWJ1dHRvbj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzLXRvb2xiYXItdG9wLS1yZWxhdGl2ZUNvbnRhaW5lclwiICpuZ0lmPVwidGhpcy5jb25maWcubXVsdGlBY3Rpb25CdXR0b25cIj5cbiAgICAgICAgPHMtYnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19tdWx0aUFjdGlvbiBzLXRvb2xiYXItdG9wX19idXR0b25cIlxuICAgICAgICAgIFtpZF09XCJpZCArICctbXVsdGlBY3Rpb24nXCJcbiAgICAgICAgICAoY2xpY2spPVwibXVsdGlBY3Rpb25Ub2dnbGUoKVwiXG4gICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwibXVsdGlBY3Rpb25Ub2dnbGUoKVwiPlxuICAgICAgICAgIDxzLWljb24tbWF0PmFkZF9jaXJjbGU8L3MtaWNvbi1tYXQ+XG4gICAgICAgICAge3sgY29uZmlnLm11bHRpQWN0aW9uQnV0dG9uIH19XG4gICAgICAgICAgPHMtaWNvbi1tYXQ+a2V5Ym9hcmRfYXJyb3dfZG93bjwvcy1pY29uLW1hdD5cbiAgICAgICAgPC9zLWJ1dHRvbj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInMtdG9vbGJhci10b3BfX211bHRpQWN0aW9uLS1zdWItbWVudVwiICpuZ0lmPVwibXVsdGlBY3Rpb25cIj5cbiAgICAgICAgICA8cy1zdWItbWVudVxuICAgICAgICAgICAgKm5nSWY9XCJtdWx0aUFjdGlvbk1lbnVcIlxuICAgICAgICAgICAgY2xhc3M9XCJ3LTEwMFwiXG4gICAgICAgICAgICBbbWVudV09XCJtdWx0aUFjdGlvbk1lbnVcIlxuICAgICAgICAgICAgKGNsb3NlTWVudUV2ZW50KT1cIm11bHRpQWN0aW9uVG9nZ2xlKClcIj48L3Mtc3ViLW1lbnU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY29uZmlnLmRlbGV0ZUJ1dHRvblwiIGNsYXNzPVwicy10b29sYmFyLXRvcF9fc2VjdGlvbi0tbGluZVwiPjwvZGl2PlxuICAgICAgPHMtYnV0dG9uXG4gICAgICAgIGNsYXNzPVwicy10b29sYmFyLXRvcF9fYnV0dG9uXCJcbiAgICAgICAgKm5nSWY9XCJjb25maWcuZGVsZXRlQnV0dG9uXCJcbiAgICAgICAgdGhlbWU9XCJyZWRcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiY29uZmlnLmRlbGV0ZURpc2FibGVkID8/IGZhbHNlXCJcbiAgICAgICAgW2lkXT1cImlkICsgJy1kZWxldGVCdXR0b24nXCJcbiAgICAgICAgKGNsaWNrKT1cImRlbGV0ZSgpXCJcbiAgICAgICAgKGtleWRvd24uZW50ZXIpPVwiZGVsZXRlKClcIj5cbiAgICAgICAgPHMtaWNvbi1tYXQ+ZGVsZXRlPC9zLWljb24tbWF0PlxuICAgICAgICB7eyBjb25maWcuZGVsZXRlQnV0dG9uIH19XG4gICAgICA8L3MtYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19zZWN0aW9uXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicy10b29sYmFyLXRvcF9fc2VjdGlvbi0tc2VhcmNoXCI+XG4gICAgICAgIDxzLWlucHV0XG4gICAgICAgICAgW2lkXT1cImlkICsgJy1zZWFyY2gnXCJcbiAgICAgICAgICAqbmdJZj1cImlucHV0U2VhcmNoQ29uZmlnXCJcbiAgICAgICAgICBjbGFzcz1cInctMTAwXCJcbiAgICAgICAgICBbY29uZmlnXT1cImlucHV0U2VhcmNoQ29uZmlnXCJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFZhbHVlXCJcbiAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJzZWFyY2goJGV2ZW50KVwiPlxuICAgICAgICA8L3MtaW5wdXQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19zZWN0aW9uLS1zZWxlY3RcIiAqbmdJZj1cImNvbmZpZy5zZWxlY3RcIj5cbiAgICAgICAgPHMtc2VsZWN0XG4gICAgICAgICAgW2NvbmZpZ109XCJjb25maWcuc2VsZWN0XCJcbiAgICAgICAgICBbaWRdPVwiaWQgKyAnLXNlYXJjaFNlbGVjdCdcIlxuICAgICAgICAgIFsobmdNb2RlbCldPVwic2VsZWN0XCJcbiAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJzZWxlY3RDaGFuZ2UoJGV2ZW50KVwiPjwvcy1zZWxlY3Q+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19zZWN0aW9uLS1zZWxlY3RcIiAqbmdJZj1cImNvbmZpZy5tdWx0aVNlbGVjdFwiPlxuICAgICAgICA8cy1zZWxlY3QtbXVsdGlwbGVcbiAgICAgICAgICBjbGFzcz1cInMtdG9vbGJhci10b3BfX3NlY3Rpb24tLW11bHRpLXNlbGVjdFwiXG4gICAgICAgICAgW2NvbmZpZ109XCJjb25maWcubXVsdGlTZWxlY3RcIlxuICAgICAgICAgIFtpZF09XCJpZCArICctbXVsdGlTZWxlY3QnXCJcbiAgICAgICAgICAoc2VsZWN0ZWRFdmVudCk9XCJtdWx0aVNlbGVjdCgkZXZlbnQpXCI+XG4gICAgICAgIDwvcy1zZWxlY3QtbXVsdGlwbGU+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzLXRvb2xiYXItdG9wLS1yZWxhdGl2ZUNvbnRhaW5lclwiICpuZ0lmPVwiY29uZmlnLmZpbHRlckJ1dHRvbiAmJiBjb25maWcuZmlsdGVyc1wiPlxuICAgICAgICA8cy1idXR0b25cbiAgICAgICAgICBjbGFzcz1cInMtdG9vbGJhci10b3BfX2J1dHRvblwiXG4gICAgICAgICAgW2lkXT1cImlkICsgJy1maWx0ZXJCdXR0b24nXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiY29uZmlnLmZpbHRlcnNEaXNhYmxlZCA/PyBmYWxzZVwiXG4gICAgICAgICAgKGNsaWNrKT1cImZpbHRlclNob3coKVwiPlxuICAgICAgICAgIDxzLWljb24tbWF0PnR1bmU8L3MtaWNvbi1tYXQ+XG4gICAgICAgICAge3sgY29uZmlnLmZpbHRlckJ1dHRvbiB9fVxuICAgICAgICAgIDxzLWljb24tbWF0PmtleWJvYXJkX2Fycm93X2Rvd248L3MtaWNvbi1tYXQ+XG4gICAgICAgIDwvcy1idXR0b24+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19zZWN0aW9uLS10b2dnbGVcIiAqbmdJZj1cImZpbHRlclRvZ2dsZVwiPlxuICAgICAgICAgIDxzLXN1Yi1tZW51XG4gICAgICAgICAgICBbbWVudV09XCJjb25maWcuZmlsdGVyc1wiXG4gICAgICAgICAgICAoY2hhbmdlTWVudUV2ZW50KT1cInNlbGVjdEZpbHRlcigkZXZlbnQpXCJcbiAgICAgICAgICAgIChjbG9zZU1lbnVFdmVudCk9XCJmaWx0ZXJTaG93KClcIj48L3Mtc3ViLW1lbnU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2ICpuZ0lmPVwiY29uZmlnLnBpbGxCdXR0b25cIj5cbiAgICAgICAgPHMtYnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJzLXRvb2xiYXItdG9wX19idXR0b25cIlxuICAgICAgICAgIFtpZF09XCJpZCArICctcGlsbFNlbGVjdCdcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJjb25maWcuZmlsdGVyc0Rpc2FibGVkID8/IGZhbHNlXCJcbiAgICAgICAgICAoY2xpY2spPVwicGlsbFNlbGVjdCgpXCJcbiAgICAgICAgICAoa2V5ZG93eW4uZW50ZXIpPVwicGlsbFNlbGVjdCgpXCJcbiAgICAgICAgICBbcGlsbF09XCJ0cnVlXCI+XG4gICAgICAgICAgPHMtaWNvbi1tYXQ+e3sgY29uZmlnLnBpbGxCdXR0b24gfX08L3MtaWNvbi1tYXQ+XG4gICAgICAgIDwvcy1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9zZWN0aW9uPlxuPC9zZWN0aW9uPlxuIl19
@@ -4,7 +4,8 @@ import * as i1 from "@angular/common";
4
4
  export class STooltipComponent {
5
5
  constructor() {
6
6
  this.theme = 'light';
7
- this.position = "top";
7
+ this.position = 'top';
8
+ this.id = 's-tooltip';
8
9
  this.stylePosition = '';
9
10
  this.showTooltip = false;
10
11
  }
@@ -22,48 +23,61 @@ export class STooltipComponent {
22
23
  }
23
24
  factoryStyle(position, x, y, heightParent, widthParent) {
24
25
  switch (position) {
25
- case "top":
26
+ case 'top':
26
27
  y = y - 5;
27
28
  if (this.tooltip.nativeElement.offsetWidth < widthParent) {
28
29
  widthParent = this.tooltip.nativeElement.offsetWidth - 4;
29
30
  }
30
- document.documentElement.style.setProperty('--stilePositionArrow', (widthParent / 2) + "px");
31
- this.stylePosition = { "translate": +x + "px " + y + "px", "transform": "translateY(-100%)", "position": "fixed" };
31
+ document.documentElement.style.setProperty('--stilePositionArrow', widthParent / 2 + 'px');
32
+ this.stylePosition = { translate: +x + 'px ' + y + 'px', transform: 'translateY(-100%)', position: 'fixed' };
32
33
  break;
33
- case "bottom":
34
+ case 'bottom':
34
35
  y = y + 5;
35
36
  if (this.tooltip.nativeElement.offsetWidth < widthParent) {
36
37
  widthParent = this.tooltip.nativeElement.offsetWidth - 4;
37
38
  }
38
- document.documentElement.style.setProperty('--stilePositionArrow', (widthParent / 2) + "px");
39
- this.stylePosition = { "translate": +x + "px " + y + "px", "transform": "translateY(" + heightParent + "px)", "position": "fixed" };
39
+ document.documentElement.style.setProperty('--stilePositionArrow', widthParent / 2 + 'px');
40
+ this.stylePosition = {
41
+ translate: +x + 'px ' + y + 'px',
42
+ transform: 'translateY(' + heightParent + 'px)',
43
+ position: 'fixed',
44
+ };
40
45
  break;
41
- case "left":
46
+ case 'left':
42
47
  x = x - 10;
43
48
  if (this.tooltip.nativeElement.offsetHeight < heightParent) {
44
49
  heightParent = this.tooltip.nativeElement.offsetHeight - 4;
45
50
  }
46
- document.documentElement.style.setProperty('--stilePositionArrow', ((heightParent - 5) / 2) + "px");
47
- this.stylePosition = { "translate": +x + "px " + y + "px", "transform": "translateX(-100%)", "position": "fixed", "margin-right": "0.625rem" };
51
+ document.documentElement.style.setProperty('--stilePositionArrow', (heightParent - 5) / 2 + 'px');
52
+ this.stylePosition = {
53
+ translate: +x + 'px ' + y + 'px',
54
+ transform: 'translateX(-100%)',
55
+ position: 'fixed',
56
+ 'margin-right': '0.625rem',
57
+ };
48
58
  break;
49
- case "right":
59
+ case 'right':
50
60
  x = x + 10;
51
61
  if (this.tooltip.nativeElement.offsetHeight < heightParent) {
52
62
  heightParent = this.tooltip.nativeElement.offsetHeight - 4;
53
63
  }
54
- document.documentElement.style.setProperty('--stilePositionArrow', ((heightParent - 5) / 2) + "px");
55
- this.stylePosition = { "translate": +x + "px " + y + "px", "transform": "translateX(" + widthParent + "px)", "position": "fixed" };
64
+ document.documentElement.style.setProperty('--stilePositionArrow', (heightParent - 5) / 2 + 'px');
65
+ this.stylePosition = {
66
+ translate: +x + 'px ' + y + 'px',
67
+ transform: 'translateX(' + widthParent + 'px)',
68
+ position: 'fixed',
69
+ };
56
70
  break;
57
71
  default:
58
72
  break;
59
73
  }
60
74
  }
61
75
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: STooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
62
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: STooltipComponent, selector: "s-tooltip", inputs: { title: "title", description: "description", theme: "theme", position: "position" }, viewQueries: [{ propertyName: "tooltip", first: true, predicate: ["stooltip"], descendants: true }], ngImport: i0, template: " <div #stooltip [ngStyle]=\"stylePosition\" class=\"s-tooltip s-tooltip--theme-{{theme}} s-tooltip--position-{{position}} s-tooltip--display-{{showTooltip}}\">\n <div class=\"s-tooltip__title\">{{title}}</div>\n <div class=\"s-tooltip__description\" *ngIf=\"description\">{{description}}</div>\n </div>\n", styles: [".s-tooltip{position:absolute;width:max-content;max-width:20.5rem;text-align:left;z-index:3;top:0;left:0;padding:.5rem .75rem;border-radius:.25rem}.s-tooltip__title{font-weight:700;font-size:.75rem}.s-tooltip__description{font-weight:400;font-size:.75rem}.s-tooltip--display-false{display:none}.s-tooltip--display-true{display:block}.s-tooltip--theme-dark{background-color:var(--primary-600)}.s-tooltip--theme-dark .s-tooltip__title,.s-tooltip--theme-dark .s-tooltip__description{color:var(--neutrals-1200)}.s-tooltip--theme-light{background-color:var(--neutrals-1200)}.s-tooltip--theme-light .s-tooltip__title{color:var(--secondary-600)}.s-tooltip--theme-light .s-tooltip__description{color:var(--secondary-500)}.s-tooltip--position-top{box-shadow:0 .125rem .5625rem .4375rem var(--blue-alpha-200)}.s-tooltip--position-bottom{box-shadow:0 -.125rem .5625rem .4375rem var(--blue-alpha-200)}.s-tooltip--position-right{box-shadow:-.3125rem .125rem .75rem .375rem var(--blue-alpha-200)}.s-tooltip--position-left{box-shadow:.3125rem .0625rem .75rem .375rem var(--blue-alpha-200)}.s-tooltip--theme-dark:before{background:var(--primary-600)}.s-tooltip--theme-light:before{background:var(--neutrals-1200);box-shadow:0 1.125rem 1.75rem 0 var(--blue-alpha-200)}.s-tooltip--position-right:before,.s-tooltip--position-left:before,.s-tooltip--position-bottom:before,.s-tooltip--position-top:before{content:\"\";position:absolute!important;transform:rotate(45deg);height:.625rem;width:.625rem}.s-tooltip--position-right:before{top:var(--stilePositionArrow);left:-.188rem}.s-tooltip--position-left:before{top:var(--stilePositionArrow);right:-.188rem}.s-tooltip--position-bottom:before{top:-.188rem;left:var(--stilePositionArrow)}.s-tooltip--position-top:before{bottom:-.188rem;left:var(--stilePositionArrow)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
76
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: STooltipComponent, selector: "s-tooltip", inputs: { title: "title", description: "description", theme: "theme", position: "position", id: "id" }, viewQueries: [{ propertyName: "tooltip", first: true, predicate: ["stooltip"], descendants: true }], ngImport: i0, template: "<div\n #stooltip\n [ngStyle]=\"stylePosition\"\n [id]=\"id\"\n class=\"s-tooltip s-tooltip--theme-{{ theme }} s-tooltip--position-{{ position }} s-tooltip--display-{{\n showTooltip\n }}\">\n <div class=\"s-tooltip__title\">{{ title }}</div>\n <div class=\"s-tooltip__description\" *ngIf=\"description\">{{ description }}</div>\n</div>\n", styles: [".s-tooltip{position:absolute;width:max-content;max-width:20.5rem;text-align:left;z-index:3;top:0;left:0;padding:.5rem .75rem;border-radius:.25rem}.s-tooltip__title{font-weight:700;font-size:.75rem}.s-tooltip__description{font-weight:400;font-size:.75rem}.s-tooltip--display-false{display:none}.s-tooltip--display-true{display:block}.s-tooltip--theme-dark{background-color:var(--primary-600)}.s-tooltip--theme-dark .s-tooltip__title,.s-tooltip--theme-dark .s-tooltip__description{color:var(--neutrals-1200)}.s-tooltip--theme-light{background-color:var(--neutrals-1200)}.s-tooltip--theme-light .s-tooltip__title{color:var(--secondary-600)}.s-tooltip--theme-light .s-tooltip__description{color:var(--secondary-500)}.s-tooltip--position-top{box-shadow:0 .125rem .5625rem .4375rem var(--blue-alpha-200)}.s-tooltip--position-bottom{box-shadow:0 -.125rem .5625rem .4375rem var(--blue-alpha-200)}.s-tooltip--position-right{box-shadow:-.3125rem .125rem .75rem .375rem var(--blue-alpha-200)}.s-tooltip--position-left{box-shadow:.3125rem .0625rem .75rem .375rem var(--blue-alpha-200)}.s-tooltip--theme-dark:before{background:var(--primary-600)}.s-tooltip--theme-light:before{background:var(--neutrals-1200);box-shadow:0 1.125rem 1.75rem 0 var(--blue-alpha-200)}.s-tooltip--position-right:before,.s-tooltip--position-left:before,.s-tooltip--position-bottom:before,.s-tooltip--position-top:before{content:\"\";position:absolute!important;transform:rotate(45deg);height:.625rem;width:.625rem}.s-tooltip--position-right:before{top:var(--stilePositionArrow);left:-.188rem}.s-tooltip--position-left:before{top:var(--stilePositionArrow);right:-.188rem}.s-tooltip--position-bottom:before{top:-.188rem;left:var(--stilePositionArrow)}.s-tooltip--position-top:before{bottom:-.188rem;left:var(--stilePositionArrow)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
63
77
  }
64
78
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: STooltipComponent, decorators: [{
65
79
  type: Component,
66
- args: [{ selector: 's-tooltip', template: " <div #stooltip [ngStyle]=\"stylePosition\" class=\"s-tooltip s-tooltip--theme-{{theme}} s-tooltip--position-{{position}} s-tooltip--display-{{showTooltip}}\">\n <div class=\"s-tooltip__title\">{{title}}</div>\n <div class=\"s-tooltip__description\" *ngIf=\"description\">{{description}}</div>\n </div>\n", styles: [".s-tooltip{position:absolute;width:max-content;max-width:20.5rem;text-align:left;z-index:3;top:0;left:0;padding:.5rem .75rem;border-radius:.25rem}.s-tooltip__title{font-weight:700;font-size:.75rem}.s-tooltip__description{font-weight:400;font-size:.75rem}.s-tooltip--display-false{display:none}.s-tooltip--display-true{display:block}.s-tooltip--theme-dark{background-color:var(--primary-600)}.s-tooltip--theme-dark .s-tooltip__title,.s-tooltip--theme-dark .s-tooltip__description{color:var(--neutrals-1200)}.s-tooltip--theme-light{background-color:var(--neutrals-1200)}.s-tooltip--theme-light .s-tooltip__title{color:var(--secondary-600)}.s-tooltip--theme-light .s-tooltip__description{color:var(--secondary-500)}.s-tooltip--position-top{box-shadow:0 .125rem .5625rem .4375rem var(--blue-alpha-200)}.s-tooltip--position-bottom{box-shadow:0 -.125rem .5625rem .4375rem var(--blue-alpha-200)}.s-tooltip--position-right{box-shadow:-.3125rem .125rem .75rem .375rem var(--blue-alpha-200)}.s-tooltip--position-left{box-shadow:.3125rem .0625rem .75rem .375rem var(--blue-alpha-200)}.s-tooltip--theme-dark:before{background:var(--primary-600)}.s-tooltip--theme-light:before{background:var(--neutrals-1200);box-shadow:0 1.125rem 1.75rem 0 var(--blue-alpha-200)}.s-tooltip--position-right:before,.s-tooltip--position-left:before,.s-tooltip--position-bottom:before,.s-tooltip--position-top:before{content:\"\";position:absolute!important;transform:rotate(45deg);height:.625rem;width:.625rem}.s-tooltip--position-right:before{top:var(--stilePositionArrow);left:-.188rem}.s-tooltip--position-left:before{top:var(--stilePositionArrow);right:-.188rem}.s-tooltip--position-bottom:before{top:-.188rem;left:var(--stilePositionArrow)}.s-tooltip--position-top:before{bottom:-.188rem;left:var(--stilePositionArrow)}\n"] }]
80
+ args: [{ selector: 's-tooltip', template: "<div\n #stooltip\n [ngStyle]=\"stylePosition\"\n [id]=\"id\"\n class=\"s-tooltip s-tooltip--theme-{{ theme }} s-tooltip--position-{{ position }} s-tooltip--display-{{\n showTooltip\n }}\">\n <div class=\"s-tooltip__title\">{{ title }}</div>\n <div class=\"s-tooltip__description\" *ngIf=\"description\">{{ description }}</div>\n</div>\n", styles: [".s-tooltip{position:absolute;width:max-content;max-width:20.5rem;text-align:left;z-index:3;top:0;left:0;padding:.5rem .75rem;border-radius:.25rem}.s-tooltip__title{font-weight:700;font-size:.75rem}.s-tooltip__description{font-weight:400;font-size:.75rem}.s-tooltip--display-false{display:none}.s-tooltip--display-true{display:block}.s-tooltip--theme-dark{background-color:var(--primary-600)}.s-tooltip--theme-dark .s-tooltip__title,.s-tooltip--theme-dark .s-tooltip__description{color:var(--neutrals-1200)}.s-tooltip--theme-light{background-color:var(--neutrals-1200)}.s-tooltip--theme-light .s-tooltip__title{color:var(--secondary-600)}.s-tooltip--theme-light .s-tooltip__description{color:var(--secondary-500)}.s-tooltip--position-top{box-shadow:0 .125rem .5625rem .4375rem var(--blue-alpha-200)}.s-tooltip--position-bottom{box-shadow:0 -.125rem .5625rem .4375rem var(--blue-alpha-200)}.s-tooltip--position-right{box-shadow:-.3125rem .125rem .75rem .375rem var(--blue-alpha-200)}.s-tooltip--position-left{box-shadow:.3125rem .0625rem .75rem .375rem var(--blue-alpha-200)}.s-tooltip--theme-dark:before{background:var(--primary-600)}.s-tooltip--theme-light:before{background:var(--neutrals-1200);box-shadow:0 1.125rem 1.75rem 0 var(--blue-alpha-200)}.s-tooltip--position-right:before,.s-tooltip--position-left:before,.s-tooltip--position-bottom:before,.s-tooltip--position-top:before{content:\"\";position:absolute!important;transform:rotate(45deg);height:.625rem;width:.625rem}.s-tooltip--position-right:before{top:var(--stilePositionArrow);left:-.188rem}.s-tooltip--position-left:before{top:var(--stilePositionArrow);right:-.188rem}.s-tooltip--position-bottom:before{top:-.188rem;left:var(--stilePositionArrow)}.s-tooltip--position-top:before{bottom:-.188rem;left:var(--stilePositionArrow)}\n"] }]
67
81
  }], propDecorators: { tooltip: [{
68
82
  type: ViewChild,
69
83
  args: ['stooltip']
@@ -75,5 +89,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
75
89
  type: Input
76
90
  }], position: [{
77
91
  type: Input
92
+ }], id: [{
93
+ type: Input
78
94
  }] } });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicy10b29sdGlwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpZGVzeXMtZ2VuZXJpYy11aS9zcmMvbGliL3Rvb2x0aXAvcy10b29sdGlwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpZGVzeXMtZ2VuZXJpYy11aS9zcmMvbGliL3Rvb2x0aXAvcy10b29sdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUXhFLE1BQU0sT0FBTyxpQkFBaUI7SUFOOUI7UUFZVyxVQUFLLEdBQXNCLE9BQU8sQ0FBQztRQUNuQyxhQUFRLEdBQTBDLEtBQUssQ0FBQztRQUNqRSxrQkFBYSxHQUFPLEVBQUUsQ0FBQztRQUN2QixnQkFBVyxHQUFXLEtBQUssQ0FBQTtLQTBENUI7SUF4REMsTUFBTTtRQUNKLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFBO0lBQ3RDLENBQUM7SUFFRCxJQUFJLENBQUMsQ0FBTSxFQUFHLENBQU0sRUFBRyxZQUFpQixFQUFHLFdBQWdCO1FBQ3pELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFBO1FBQ3ZCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUcsQ0FBQyxFQUFHLENBQUMsRUFBRyxZQUFZLEVBQUcsV0FBVyxDQUFDLENBQUE7UUFDdkUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFBO0lBQzFCLENBQUM7SUFFRCxZQUFZLENBQUMsUUFBWSxFQUFHLENBQUssRUFBRyxDQUFLLEVBQUcsWUFBZ0IsRUFBRyxXQUFlO1FBRTVF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LENBQUMsR0FBQyxJQUFJLEVBQUcsV0FBVyxFQUFFLGFBQWEsR0FBQyxXQUFXLEdBQUMsS0FBSyxFQUFHLFVBQVUsRUFBRSxPQUFPLEVBQUMsQ0FBQTtnQkFDMUgsTUFBTTtZQUVOO2dCQUVBLE1BQU07UUFDUixDQUFDO0lBQ0gsQ0FBQzsrR0FsRVUsaUJBQWlCO21HQUFqQixpQkFBaUIsb1BDUjlCLGdVQUlBOzs0RkRJYSxpQkFBaUI7a0JBTjdCLFNBQVM7K0JBQ0UsV0FBVzs4QkFPRSxPQUFPO3NCQUE3QixTQUFTO3VCQUFDLFVBQVU7Z0JBRVosS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncy10b29sdGlwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3MtdG9vbHRpcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3MtdG9vbHRpcC5jb21wb25lbnQuc2NzcyddXG59KVxuXG5leHBvcnQgY2xhc3MgU1Rvb2x0aXBDb21wb25lbnQge1xuICBcbiAgQFZpZXdDaGlsZCgnc3Rvb2x0aXAnKSB0b29sdGlwITogRWxlbWVudFJlZjtcblxuICBASW5wdXQoKSB0aXRsZSE6IHN0cmluZztcbiAgQElucHV0KCkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHRoZW1lPzogJ2xpZ2h0JyB8ICdkYXJrJyA9ICdsaWdodCc7XG4gIEBJbnB1dCgpIHBvc2l0aW9uPzogJ2xlZnQnIHwgJ3JpZ2h0JyB8ICdib3R0b20nIHwgJ3RvcCcgID0gXCJ0b3BcIjtcbiAgc3R5bGVQb3NpdGlvbjphbnkgPSAnJztcbiAgc2hvd1Rvb2x0aXA6Ym9vbGVhbiA9IGZhbHNlXG5cbiAgdG9vZ2xlKCl7XG4gICAgdGhpcy5zaG93VG9vbHRpcCA9ICF0aGlzLnNob3dUb29sdGlwXG4gIH1cblxuICBzaG93KHg/OmFueSAsIHk/OmFueSAsIGhlaWdodFBhcmVudD86YW55ICwgd2lkdGhQYXJlbnQ/OmFueSl7XG4gICAgdGhpcy5zaG93VG9vbHRpcCA9IHRydWVcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuZmFjdG9yeVN0eWxlKHRoaXMucG9zaXRpb24gLCB4ICwgeSAsIGhlaWdodFBhcmVudCAsIHdpZHRoUGFyZW50KVxuICAgIH0pO1xuICB9XG5cbiAgaGlkZSgpe1xuICAgIHRoaXMuc2hvd1Rvb2x0aXAgPSBmYWxzZVxuICB9XG5cbiAgZmFjdG9yeVN0eWxlKHBvc2l0aW9uOmFueSAsIHg6YW55ICwgeTphbnkgLCBoZWlnaHRQYXJlbnQ6YW55ICwgd2lkdGhQYXJlbnQ6YW55KXtcblxuICAgIHN3aXRjaCAocG9zaXRpb24pIHtcbiAgICAgIGNhc2UgXCJ0b3BcIjpcbiAgICAgICAgeT15LTVcbiAgICAgICAgaWYodGhpcy50b29sdGlwLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggPCB3aWR0aFBhcmVudCl7XG4gICAgICAgICAgd2lkdGhQYXJlbnQgPSB0aGlzLnRvb2x0aXAubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCAtNFxuICAgICAgICB9XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zdGlsZVBvc2l0aW9uQXJyb3cnICwgKHdpZHRoUGFyZW50LzIpK1wicHhcIiApO1xuICAgICAgICB0aGlzLnN0eWxlUG9zaXRpb24gPSB7XCJ0cmFuc2xhdGVcIjogK3grXCJweCBcIit5K1wicHhcIiAsIFwidHJhbnNmb3JtXCI6IFwidHJhbnNsYXRlWSgtMTAwJSlcIiAsIFwicG9zaXRpb25cIjogXCJmaXhlZFwifVxuICAgICAgYnJlYWs7XG4gICAgICBjYXNlIFwiYm90dG9tXCI6XG4gICAgICAgIHk9eSs1XG4gICAgICAgIGlmKHRoaXMudG9vbHRpcC5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoIDwgd2lkdGhQYXJlbnQpe1xuICAgICAgICAgIHdpZHRoUGFyZW50ID0gdGhpcy50b29sdGlwLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggLTRcbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tc3RpbGVQb3NpdGlvbkFycm93JyAsICh3aWR0aFBhcmVudC8yKStcInB4XCIgKTtcbiAgICAgICAgdGhpcy5zdHlsZVBvc2l0aW9uID0ge1widHJhbnNsYXRlXCI6ICt4K1wicHggXCIreStcInB4XCIgLCBcInRyYW5zZm9ybVwiOiBcInRyYW5zbGF0ZVkoXCIraGVpZ2h0UGFyZW50K1wicHgpXCIgLCBcInBvc2l0aW9uXCI6IFwiZml4ZWRcIn1cbiAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBcImxlZnRcIjpcbiAgICAgICAgeD14LTEwXG4gICAgICAgIGlmKHRoaXMudG9vbHRpcC5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodCA8IGhlaWdodFBhcmVudCl7XG4gICAgICAgICAgaGVpZ2h0UGFyZW50ID0gdGhpcy50b29sdGlwLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0IC00XG4gICAgICAgIH1cbiAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLXN0aWxlUG9zaXRpb25BcnJvdycgLCAoKGhlaWdodFBhcmVudC01KS8yKStcInB4XCIgKTtcbiAgICAgICAgdGhpcy5zdHlsZVBvc2l0aW9uID0ge1widHJhbnNsYXRlXCI6ICt4K1wicHggXCIreStcInB4XCIgLCBcInRyYW5zZm9ybVwiOiBcInRyYW5zbGF0ZVgoLTEwMCUpXCIgLCBcInBvc2l0aW9uXCI6IFwiZml4ZWRcIiAsIFwibWFyZ2luLXJpZ2h0XCI6IFwiMC42MjVyZW1cIn1cbiAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBcInJpZ2h0XCI6XG4gICAgICAgIHg9eCsxMFxuICAgICAgICBpZih0aGlzLnRvb2x0aXAubmF0aXZlRWxlbWVudC5vZmZzZXRIZWlnaHQgPCBoZWlnaHRQYXJlbnQpe1xuICAgICAgICAgIGhlaWdodFBhcmVudCA9IHRoaXMudG9vbHRpcC5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodCAtNFxuICAgICAgICB9XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zdGlsZVBvc2l0aW9uQXJyb3cnICwgKChoZWlnaHRQYXJlbnQtNSkvMikrXCJweFwiICk7XG4gICAgICAgIHRoaXMuc3R5bGVQb3NpdGlvbiA9IHtcInRyYW5zbGF0ZVwiOiAreCtcInB4IFwiK3krXCJweFwiICwgXCJ0cmFuc2Zvcm1cIjogXCJ0cmFuc2xhdGVYKFwiK3dpZHRoUGFyZW50K1wicHgpXCIgLCBcInBvc2l0aW9uXCI6IFwiZml4ZWRcIn1cbiAgICAgIGJyZWFrO1xuICAgICAgICBcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIFxuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59IiwiICAgPGRpdiAjc3Rvb2x0aXAgW25nU3R5bGVdPVwic3R5bGVQb3NpdGlvblwiIGNsYXNzPVwicy10b29sdGlwIHMtdG9vbHRpcC0tdGhlbWUte3t0aGVtZX19IHMtdG9vbHRpcC0tcG9zaXRpb24te3twb3NpdGlvbn19IHMtdG9vbHRpcC0tZGlzcGxheS17e3Nob3dUb29sdGlwfX1cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzLXRvb2x0aXBfX3RpdGxlXCI+e3t0aXRsZX19PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicy10b29sdGlwX19kZXNjcmlwdGlvblwiICpuZ0lmPVwiZGVzY3JpcHRpb25cIj57e2Rlc2NyaXB0aW9ufX08L2Rpdj5cbiAgIDwvZGl2PlxuIl19
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicy10b29sdGlwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpZGVzeXMtZ2VuZXJpYy11aS9zcmMvbGliL3Rvb2x0aXAvcy10b29sdGlwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpZGVzeXMtZ2VuZXJpYy11aS9zcmMvbGliL3Rvb2x0aXAvcy10b29sdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBT3hFLE1BQU0sT0FBTyxpQkFBaUI7SUFMOUI7UUFVVyxVQUFLLEdBQXNCLE9BQU8sQ0FBQztRQUNuQyxhQUFRLEdBQXlDLEtBQUssQ0FBQztRQUN2RCxPQUFFLEdBQVksV0FBVyxDQUFDO1FBQ25DLGtCQUFhLEdBQVEsRUFBRSxDQUFDO1FBQ3hCLGdCQUFXLEdBQVksS0FBSyxDQUFDO0tBb0U5QjtJQWxFQyxNQUFNO1FBQ0osSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQUksQ0FBQyxDQUFPLEVBQUUsQ0FBTyxFQUFFLFlBQWtCLEVBQUUsV0FBaUI7UUFDMUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFDeEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNwRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELFlBQVksQ0FBQyxRQUFhLEVBQUUsQ0FBTSxFQUFFLENBQU0s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LEdBQUcsQ0FBQyxHQUFHLElBQUk7b0JBQ2hDLFNBQVMsRUFBRSxhQUFhLEdBQUcsV0FBVyxHQUFHLEtBQUs7b0JBQzlDLFFBQVEsRUFBRSxPQUFPO2lCQUNsQixDQUFDO2dCQUNGLE1BQU07WUFDUjtnQkFDRSxNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUM7K0dBNUVVLGlCQUFpQjttR0FBakIsaUJBQWlCLDhQQ1A5Qiw0VkFVQTs7NEZESGEsaUJBQWlCO2tCQUw3QixTQUFTOytCQUNFLFdBQVc7OEJBS0UsT0FBTztzQkFBN0IsU0FBUzt1QkFBQyxVQUFVO2dCQUVaLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEVBQUU7c0JBQVYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzLXRvb2x0aXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vcy10b29sdGlwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcy10b29sdGlwLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNUb29sdGlwQ29tcG9uZW50IHtcbiAgQFZpZXdDaGlsZCgnc3Rvb2x0aXAnKSB0b29sdGlwITogRWxlbWVudFJlZjtcblxuICBASW5wdXQoKSB0aXRsZSE6IHN0cmluZztcbiAgQElucHV0KCkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHRoZW1lPzogJ2xpZ2h0JyB8ICdkYXJrJyA9ICdsaWdodCc7XG4gIEBJbnB1dCgpIHBvc2l0aW9uPzogJ2xlZnQnIHwgJ3JpZ2h0JyB8ICdib3R0b20nIHwgJ3RvcCcgPSAndG9wJztcbiAgQElucHV0KCkgaWQ/OiBzdHJpbmcgPSAncy10b29sdGlwJztcbiAgc3R5bGVQb3NpdGlvbjogYW55ID0gJyc7XG4gIHNob3dUb29sdGlwOiBib29sZWFuID0gZmFsc2U7XG5cbiAgdG9vZ2xlKCkge1xuICAgIHRoaXMuc2hvd1Rvb2x0aXAgPSAhdGhpcy5zaG93VG9vbHRpcDtcbiAgfVxuXG4gIHNob3coeD86IGFueSwgeT86IGFueSwgaGVpZ2h0UGFyZW50PzogYW55LCB3aWR0aFBhcmVudD86IGFueSkge1xuICAgIHRoaXMuc2hvd1Rvb2x0aXAgPSB0cnVlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5mYWN0b3J5U3R5bGUodGhpcy5wb3NpdGlvbiwgeCwgeSwgaGVpZ2h0UGFyZW50LCB3aWR0aFBhcmVudCk7XG4gICAgfSk7XG4gIH1cblxuICBoaWRlKCkge1xuICAgIHRoaXMuc2hvd1Rvb2x0aXAgPSBmYWxzZTtcbiAgfVxuXG4gIGZhY3RvcnlTdHlsZShwb3NpdGlvbjogYW55LCB4OiBhbnksIHk6IGFueSwgaGVpZ2h0UGFyZW50OiBhbnksIHdpZHRoUGFyZW50OiBhbnkpIHtcbiAgICBzd2l0Y2ggKHBvc2l0aW9uKSB7XG4gICAgICBjYXNlICd0b3AnOlxuICAgICAgICB5ID0geSAtIDU7XG4gICAgICAgIGlmICh0aGlzLnRvb2x0aXAubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCA8IHdpZHRoUGFyZW50KSB7XG4gICAgICAgICAgd2lkdGhQYXJlbnQgPSB0aGlzLnRvb2x0aXAubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aCAtIDQ7XG4gICAgICAgIH1cbiAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLXN0aWxlUG9zaXRpb25BcnJvdycsIHdpZHRoUGFyZW50IC8gMiArICdweCcpO1xuICAgICAgICB0aGlzLnN0eWxlUG9zaXRpb24gPSB7IHRyYW5zbGF0ZTogK3ggKyAncHggJyArIHkgKyAncHgnLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKC0xMDAlKScsIHBvc2l0aW9uOiAnZml4ZWQnIH07XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgeSA9IHkgKyA1O1xuICAgICAgICBpZiAodGhpcy50b29sdGlwLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggPCB3aWR0aFBhcmVudCkge1xuICAgICAgICAgIHdpZHRoUGFyZW50ID0gdGhpcy50b29sdGlwLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggLSA0O1xuICAgICAgICB9XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zdGlsZVBvc2l0aW9uQXJyb3cnLCB3aWR0aFBhcmVudCAvIDIgKyAncHgnKTtcbiAgICAgICAgdGhpcy5zdHlsZVBvc2l0aW9uID0ge1xuICAgICAgICAgIHRyYW5zbGF0ZTogK3ggKyAncHggJyArIHkgKyAncHgnLFxuICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoJyArIGhlaWdodFBhcmVudCArICdweCknLFxuICAgICAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLFxuICAgICAgICB9O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICB4ID0geCAtIDEwO1xuICAgICAgICBpZiAodGhpcy50b29sdGlwLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0IDwgaGVpZ2h0UGFyZW50KSB7XG4gICAgICAgICAgaGVpZ2h0UGFyZW50ID0gdGhpcy50b29sdGlwLm5hdGl2ZUVsZW1lbnQub2Zmc2V0SGVpZ2h0IC0gNDtcbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJy0tc3RpbGVQb3NpdGlvbkFycm93JywgKGhlaWdodFBhcmVudCAtIDUpIC8gMiArICdweCcpO1xuICAgICAgICB0aGlzLnN0eWxlUG9zaXRpb24gPSB7XG4gICAgICAgICAgdHJhbnNsYXRlOiAreCArICdweCAnICsgeSArICdweCcsXG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgtMTAwJSknLFxuICAgICAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLFxuICAgICAgICAgICdtYXJnaW4tcmlnaHQnOiAnMC42MjVyZW0nLFxuICAgICAgICB9O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgeCA9IHggKyAxMDtcbiAgICAgICAgaWYgKHRoaXMudG9vbHRpcC5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodCA8IGhlaWdodFBhcmVudCkge1xuICAgICAgICAgIGhlaWdodFBhcmVudCA9IHRoaXMudG9vbHRpcC5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodCAtIDQ7XG4gICAgICAgIH1cbiAgICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCctLXN0aWxlUG9zaXRpb25BcnJvdycsIChoZWlnaHRQYXJlbnQgLSA1KSAvIDIgKyAncHgnKTtcbiAgICAgICAgdGhpcy5zdHlsZVBvc2l0aW9uID0ge1xuICAgICAgICAgIHRyYW5zbGF0ZTogK3ggKyAncHggJyArIHkgKyAncHgnLFxuICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoJyArIHdpZHRoUGFyZW50ICsgJ3B4KScsXG4gICAgICAgICAgcG9zaXRpb246ICdmaXhlZCcsXG4gICAgICAgIH07XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gICNzdG9vbHRpcFxuICBbbmdTdHlsZV09XCJzdHlsZVBvc2l0aW9uXCJcbiAgW2lkXT1cImlkXCJcbiAgY2xhc3M9XCJzLXRvb2x0aXAgcy10b29sdGlwLS10aGVtZS17eyB0aGVtZSB9fSBzLXRvb2x0aXAtLXBvc2l0aW9uLXt7IHBvc2l0aW9uIH19IHMtdG9vbHRpcC0tZGlzcGxheS17e1xuICAgIHNob3dUb29sdGlwXG4gIH19XCI+XG4gIDxkaXYgY2xhc3M9XCJzLXRvb2x0aXBfX3RpdGxlXCI+e3sgdGl0bGUgfX08L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInMtdG9vbHRpcF9fZGVzY3JpcHRpb25cIiAqbmdJZj1cImRlc2NyaXB0aW9uXCI+e3sgZGVzY3JpcHRpb24gfX08L2Rpdj5cbjwvZGl2PlxuIl19