@evotor-dev/ui-kit 8.8.1 → 8.9.0

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.
@@ -10,6 +10,7 @@ import { EvoControlErrorComponent } from '../evo-control-error/evo-control-error
10
10
  import { NgClass } from '@angular/common';
11
11
  import { EvoIconComponent } from '../evo-icon/evo-icon.component';
12
12
  import { EvoUiClassDirective } from '../../directives/evo-ui-class.directive';
13
+ import { EvoCircularLoaderComponent } from '../evo-loader';
13
14
  import * as i0 from "@angular/core";
14
15
  export var EvoInputSizes;
15
16
  (function (EvoInputSizes) {
@@ -305,7 +306,7 @@ export class EvoInputComponent extends EvoBaseControl {
305
306
  useExisting: forwardRef(() => EvoInputComponent),
306
307
  multi: true,
307
308
  },
308
- ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true, static: true }, { propertyName: "tooltipElement", first: true, predicate: ["tooltipContainer"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<label class=\"evo-input\" [evoUiClass]=\"inputClass\">\n <div class=\"evo-input__prefix-content\">\n <ng-content select=\"[evoInputPrefixContent]\" />\n </div>\n <div class=\"evo-input__prefix-icon\">\n <ng-content select=\"[evoInputIcon]\" />\n </div>\n\n @if (prefix) {\n <span class=\"evo-input__prefix\" [evoUiClass]=\"{focused: (!isDisabled && !!value) || uiStates.isFocused}\">\n {{ prefix }}\n </span>\n }\n\n <input\n #input\n type=\"{{ type }}\"\n placeholder=\"{{ placeholder }}\"\n class=\"evo-input__field\"\n [attr.autocomplete]=\"autocomplete\"\n [attr.data-cp]=\"dataCp\"\n [disabled]=\"isDisabled\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (compositionstart)=\"_compositionStart()\"\n (compositionend)=\"_compositionEnd($event.target.value)\"\n />\n\n @if (loading) {\n <div class=\"evo-input__loading-spinner\"></div>\n } @else {\n @if (isClearable) {\n <div class=\"evo-input__clearable\" (click)=\"onClear()\">\n <evo-icon shape=\"decline\" class=\"evo-input__icon-clear\" />\n </div>\n }\n @if (hasAdditional) {\n <div class=\"evo-input__additional\">\n @if (tooltip || uiStates.hasCustomTooltip) {\n <evo-icon\n shape=\"help\"\n class=\"evo-input__tooltip\"\n (mouseenter)=\"showTooltip()\"\n (mouseleave)=\"hideTooltip()\"\n (click)=\"onTooltipClick($event)\"\n />\n }\n @if (icon) {\n <div class=\"evo-input__icon\">\n <img [attr.src]=\"icon\" />\n </div>\n }\n </div>\n }\n }\n\n @if (!customTooltipChecked || uiStates.isTooltipVisible) {\n <div\n #tooltipContainer\n [hidden]=\"!customTooltipChecked\"\n [ngClass]=\"{'evo-input__tooltip-container': tooltip}\"\n (click)=\"onTooltipClick($event)\"\n (mouseenter)=\"showTooltip()\"\n (mouseleave)=\"hideTooltip()\"\n >\n {{ tooltip }}\n <ng-content select=\"[tooltip]\" />\n </div>\n }\n</label>\n\n@if (showErrors) {\n <evo-control-error [errors]=\"control.errors\" [errorsMessages]=\"errorsMessages\" />\n}\n", styles: ["@keyframes evo-fx-blink{50%{transform:scale(1);opacity:1}to{opacity:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gradient{0%{background-position:0 50%}50%{background-position:50vw 50%}to{background-position:100vw 50%}}:host{display:inline-block;--evo-input-prefix-content-margin: 0 12px}.evo-input{--evo-input-padding-left: 16px;--evo-input-padding-right: 8px;position:relative;cursor:text}.evo-input_focused{border:solid 1px #74706F}.evo-input_disabled{color:#b0b0b0!important;background-color:#f9fafb!important;border:1px solid #E3E3E3!important;cursor:default;pointer-events:none}.evo-input_invalid{border-color:#ff1817!important}.evo-input_theme-default{--evo-input-height: 48px;--evo-input-border-radius: 4px;--evo-input-font-size: 16px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-default.evo-input_size-small{--evo-input-height: 48px;--evo-input-border-radius: 4px;--evo-input-font-size: 16px;--evo-input-height: 32px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-default.evo-input_size-small .evo-input__field{--evo-input-padding-left: 8px;--evo-input-padding-right: 8px}.evo-input_theme-default.evo-input_size-small .evo-input__field:not(:last-child){--evo-input-padding-right: 0}.evo-input_theme-rounded{--evo-input-height: 48px;--evo-input-border-radius: 4px;--evo-input-font-size: 16px;--evo-input-border-radius: 256px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-rounded.evo-input_size-small{--evo-input-height: 48px;--evo-input-border-radius: 4px;--evo-input-font-size: 16px;--evo-input-font-size: 14px;--evo-input-height: 40px;--evo-input-border-radius: 256px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-rounded.evo-input_size-small .evo-input__field:last-child{--evo-input-padding-right: 16px}.evo-input_size-small{height:32px}.evo-input_size-small .evo-input__tooltip,.evo-input_size-small .evo-input__loading-spinner{flex:0 0 16px;width:16px;height:16px;margin:0 10px}.evo-input_size-small .evo-input__icon{margin-right:10px}.evo-input_size-small .evo-input__icon img{max-height:16px}.evo-input_size-small .evo-input__tooltip-container{top:100%}.evo-input_size-small .evo-input__tooltip-container:before{left:calc(100% - 28px)}@media (min-width: 1200px){.evo-input_size-small .evo-input__tooltip-container{top:calc(100% + 4px)}.evo-input_size-small .evo-input__tooltip-container:before{left:calc(50% - 6px)}}.evo-input_size-small .evo-input__prefix-icon{width:16px;height:16px}.evo-input_size-small .evo-input__prefix-icon:empty{display:none}.evo-input_size-small .evo-input__icon-clear{width:16px;height:16px}.evo-input__prefix-icon{display:flex;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-left:12px;fill:#91b1b8}.evo-input__prefix-icon:empty{display:none}.evo-input__prefix-content{display:inline-flex;flex-shrink:0;justify-content:center;align-items:center;margin:var(--evo-input-prefix-content-margin)}.evo-input__prefix-content:empty{display:none}.evo-input__prefix-content:not(:empty)~.evo-input__field{--evo-input-padding-left: 0}.evo-input__field{width:100%;height:100%;margin:0;padding:0 var(--evo-input-padding-right) 0 var(--evo-input-padding-left);color:inherit;font-weight:inherit;font-size:inherit;border:none;border-radius:inherit;outline:none}.evo-input__field::-webkit-input-placeholder{color:#9b9b9b}.evo-input__field::-moz-placeholder{color:#9b9b9b;opacity:1}.evo-input__field:-ms-input-placeholder{color:#9b9b9b}.evo-input__field:disabled{color:#b0b0b0;background-color:#f9fafb!important}.evo-input__field:not(:last-child){--evo-input-padding-right: 0}.evo-input__prefix{padding-left:20px;font-size:16px;transition:color .2s}.evo-input__prefix_focused{color:#000}.evo-input__prefix:not(:empty)~.evo-input__field{--evo-input-padding-left: 0}.evo-input__tooltip,.evo-input__icon-clear{width:24px;height:24px;margin:0 10px;cursor:pointer;-webkit-user-select:none;user-select:none;fill:#91b1b8}.evo-input__icon{margin:0 20px 0 10px}.evo-input__icon img{display:block;width:100%;max-width:60px;height:auto;max-height:22px}.evo-input__tooltip-container{position:absolute;top:calc(100% - 2px);left:0;z-index:1;display:flex;width:100%;padding:10px 10px 10px 20px;color:#212121;line-height:normal;white-space:normal;background-color:#fff8e6;border-radius:4px;box-shadow:0 4px 12px #0003;cursor:default}.evo-input__tooltip-container[hidden]{display:none!important}.evo-input__tooltip-container:before{position:absolute;top:-20px;left:calc(100% - 34px);border:10px solid transparent;border-bottom-color:#fff8e6;pointer-events:none;content:\"\"}@media (min-width: 1200px){.evo-input__tooltip-container{left:calc(50% - 22px)}.evo-input__tooltip-container:before{left:calc(50% - 12px)}}.evo-input__clearable{display:flex;justify-content:center;align-items:center}.evo-input__clearable+.evo-input__additional{margin-left:-10px}.evo-input__additional{display:flex;justify-content:center;align-items:center}.evo-input__additional:not(:last-child) .evo-input__icon{margin-right:10px}.evo-input__additional+.evo-input__loading-spinner{margin-left:0}.evo-input__loading-spinner{margin:0 20px;flex:0 0 16px;width:16px;height:16px;border:2px solid #C6C6C6;border-top-color:#21c68b;border-radius:50%;animation:spin .8s linear infinite}\n"], dependencies: [{ kind: "directive", type: EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { kind: "component", type: EvoIconComponent, selector: "evo-icon", inputs: ["shape", "svgWidth", "svgHeight", "svgViewBox"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: EvoControlErrorComponent, selector: "evo-control-error", inputs: ["errors", "errorsMessages", "showCount"] }] }); }
309
+ ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["input"], descendants: true, static: true }, { propertyName: "tooltipElement", first: true, predicate: ["tooltipContainer"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<label class=\"evo-input\" [evoUiClass]=\"inputClass\">\n <div class=\"evo-input__prefix-content\">\n <ng-content select=\"[evoInputPrefixContent]\" />\n </div>\n <div class=\"evo-input__prefix-icon\">\n <ng-content select=\"[evoInputIcon]\" />\n </div>\n\n @if (prefix) {\n <span class=\"evo-input__prefix\" [evoUiClass]=\"{focused: (!isDisabled && !!value) || uiStates.isFocused}\">\n {{ prefix }}\n </span>\n }\n\n <input\n #input\n type=\"{{ type }}\"\n placeholder=\"{{ placeholder }}\"\n class=\"evo-input__field\"\n [attr.autocomplete]=\"autocomplete\"\n [attr.data-cp]=\"dataCp\"\n [disabled]=\"isDisabled\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (compositionstart)=\"_compositionStart()\"\n (compositionend)=\"_compositionEnd($event.target.value)\"\n />\n\n @if (loading) {\n <evo-circular-loader class=\"evo-input__loading-spinner\" />\n } @else {\n @if (isClearable) {\n <div class=\"evo-input__clearable\" (click)=\"onClear()\">\n <evo-icon shape=\"decline\" class=\"evo-input__icon-clear\" />\n </div>\n }\n @if (hasAdditional) {\n <div class=\"evo-input__additional\">\n @if (tooltip || uiStates.hasCustomTooltip) {\n <evo-icon\n shape=\"help\"\n class=\"evo-input__tooltip\"\n (mouseenter)=\"showTooltip()\"\n (mouseleave)=\"hideTooltip()\"\n (click)=\"onTooltipClick($event)\"\n />\n }\n @if (icon) {\n <div class=\"evo-input__icon\">\n <img [attr.src]=\"icon\" />\n </div>\n }\n </div>\n }\n }\n\n @if (!customTooltipChecked || uiStates.isTooltipVisible) {\n <div\n #tooltipContainer\n [hidden]=\"!customTooltipChecked\"\n [ngClass]=\"{'evo-input__tooltip-container': tooltip}\"\n (click)=\"onTooltipClick($event)\"\n (mouseenter)=\"showTooltip()\"\n (mouseleave)=\"hideTooltip()\"\n >\n {{ tooltip }}\n <ng-content select=\"[tooltip]\" />\n </div>\n }\n</label>\n\n@if (showErrors) {\n <evo-control-error [errors]=\"control.errors\" [errorsMessages]=\"errorsMessages\" />\n}\n", styles: ["@keyframes evo-fx-blink{50%{transform:scale(1);opacity:1}to{opacity:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gradient{0%{background-position:0 50%}50%{background-position:50vw 50%}to{background-position:100vw 50%}}:host{display:inline-block;--evo-input-prefix-content-margin: 4px 8px 4px 4px}.evo-input{--evo-input-padding-left: 12px;--evo-input-padding-right: 12px;--evo-input-padding-top: 8px;--evo-input-padding-bottom: 8px;position:relative;cursor:text}.evo-input_focused{border:solid 1px #74706F}.evo-input_disabled{color:#b0b0b0!important;background-color:#f9fafb!important;border:1px solid #E3E3E3!important;cursor:default;pointer-events:none}.evo-input_invalid{border-color:#ff1817!important}.evo-input_theme-default{--evo-input-height: 40px;--evo-input-border-radius: 4px;--evo-input-font-size: 14px;--evo-input-line-height: 24px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);line-height:var(--evo-input-line-height);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-default.evo-input_size-small{--evo-input-height: 40px;--evo-input-border-radius: 4px;--evo-input-font-size: 14px;--evo-input-line-height: 24px;--evo-input-height: 32px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);line-height:var(--evo-input-line-height);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-default.evo-input_size-small .evo-input__field{--evo-input-padding-left: 12px;--evo-input-padding-right: 12px;--evo-input-padding-top: 4px;--evo-input-padding-bottom: 4px}.evo-input_theme-default.evo-input_size-small .evo-input__field:not(:last-child){--evo-input-padding-right: 0}.evo-input_theme-rounded{--evo-input-height: 40px;--evo-input-border-radius: 4px;--evo-input-font-size: 14px;--evo-input-line-height: 24px;--evo-input-border-radius: 256px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);line-height:var(--evo-input-line-height);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-rounded.evo-input_size-small{--evo-input-border-radius: 4px;--evo-input-line-height: 24px;--evo-input-font-size: 14px;--evo-input-height: 40px;--evo-input-border-radius: 256px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);line-height:var(--evo-input-line-height);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-rounded.evo-input_size-small .evo-input__field{--evo-input-padding-left: 12px}.evo-input_theme-rounded.evo-input_size-small .evo-input__field:last-child{--evo-input-padding-right: 12px}.evo-input_size-small{height:32px}.evo-input_size-small .evo-input__icon{margin-right:8px}.evo-input_size-small .evo-input__icon img{max-height:16px}.evo-input_size-small .evo-input__tooltip-container{top:100%}.evo-input_size-small .evo-input__tooltip-container:before{left:calc(100% - 28px)}@media (min-width: 1200px){.evo-input_size-small .evo-input__tooltip-container{top:calc(100% + 4px)}.evo-input_size-small .evo-input__tooltip-container:before{left:calc(50% - 6px)}}.evo-input__prefix-icon{display:flex;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-left:8px;fill:#91b1b8}.evo-input__prefix-icon:empty{display:none}.evo-input__prefix-icon:not(:empty)~.evo-input__field{--evo-input-padding-left: 8px}.evo-input__prefix-content{display:inline-flex;flex-shrink:0;justify-content:center;align-items:center;margin:var(--evo-input-prefix-content-margin)}.evo-input__prefix-content:empty{display:none}.evo-input__prefix-content:not(:empty)~.evo-input__field{--evo-input-padding-left: 0}.evo-input__field{width:100%;height:100%;margin:0;padding:var(--evo-input-padding-top) var(--evo-input-padding-right) var(--evo-input-padding-bottom) var(--evo-input-padding-left);color:inherit;font-weight:inherit;font-size:inherit;border:none;border-radius:inherit;outline:none}.evo-input__field::-webkit-input-placeholder{color:#9b9b9b}.evo-input__field::-moz-placeholder{color:#9b9b9b;opacity:1}.evo-input__field:-ms-input-placeholder{color:#9b9b9b}.evo-input__field:disabled{color:#b0b0b0;background-color:#f9fafb!important}.evo-input__field:not(:last-child){--evo-input-padding-right: 0}.evo-input__prefix{padding-left:12px;transition:color .2s;color:#9b9b9b}.evo-input__prefix:not(:empty)~.evo-input__field{--evo-input-padding-left: 0}.evo-input__tooltip{flex:0 0 24px;width:24px;height:24px;margin:0 8px;cursor:pointer;-webkit-user-select:none;user-select:none;fill:#91b1b8}.evo-input__icon-clear{width:24px;height:24px;margin:0 8px;cursor:pointer;-webkit-user-select:none;user-select:none;fill:#91b1b8}.evo-input__icon{margin:0 8px}.evo-input__icon img{display:block;width:100%;max-width:60px;height:auto;max-height:22px}.evo-input__tooltip-container{position:absolute;top:calc(100% - 2px);left:0;z-index:1;display:flex;width:100%;padding:10px 10px 10px 20px;color:#212121;line-height:normal;white-space:normal;background-color:#fff8e6;border-radius:4px;box-shadow:0 4px 12px #0003;cursor:default}.evo-input__tooltip-container[hidden]{display:none!important}.evo-input__tooltip-container:before{position:absolute;top:-20px;left:calc(100% - 34px);border:10px solid transparent;border-bottom-color:#fff8e6;pointer-events:none;content:\"\"}@media (min-width: 1200px){.evo-input__tooltip-container{left:calc(50% - 22px)}.evo-input__tooltip-container:before{left:calc(50% - 12px)}}.evo-input__clearable{display:flex;justify-content:center;align-items:center}.evo-input__clearable+.evo-input__additional{margin-left:-10px}.evo-input__additional{display:flex;justify-content:center;align-items:center}.evo-input__additional:not(:last-child) .evo-input__icon{margin-right:8px}.evo-input__additional+.evo-input__loading-spinner{margin-left:0}.evo-input__loading-spinner{flex:0 0 24px;width:24px;height:24px;margin:0 8px;--evo-circular-loader-color: #91B1B8}\n"], dependencies: [{ kind: "directive", type: EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { kind: "component", type: EvoIconComponent, selector: "evo-icon", inputs: ["shape", "svgWidth", "svgHeight", "svgViewBox"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: EvoControlErrorComponent, selector: "evo-control-error", inputs: ["errors", "errorsMessages", "showCount"] }, { kind: "component", type: EvoCircularLoaderComponent, selector: "evo-circular-loader" }] }); }
309
310
  }
310
311
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoInputComponent, decorators: [{
311
312
  type: Component,
@@ -320,7 +321,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
320
321
  useExisting: forwardRef(() => EvoInputComponent),
321
322
  multi: true,
322
323
  },
323
- ], standalone: true, imports: [EvoUiClassDirective, EvoIconComponent, NgClass, EvoControlErrorComponent], template: "<label class=\"evo-input\" [evoUiClass]=\"inputClass\">\n <div class=\"evo-input__prefix-content\">\n <ng-content select=\"[evoInputPrefixContent]\" />\n </div>\n <div class=\"evo-input__prefix-icon\">\n <ng-content select=\"[evoInputIcon]\" />\n </div>\n\n @if (prefix) {\n <span class=\"evo-input__prefix\" [evoUiClass]=\"{focused: (!isDisabled && !!value) || uiStates.isFocused}\">\n {{ prefix }}\n </span>\n }\n\n <input\n #input\n type=\"{{ type }}\"\n placeholder=\"{{ placeholder }}\"\n class=\"evo-input__field\"\n [attr.autocomplete]=\"autocomplete\"\n [attr.data-cp]=\"dataCp\"\n [disabled]=\"isDisabled\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (compositionstart)=\"_compositionStart()\"\n (compositionend)=\"_compositionEnd($event.target.value)\"\n />\n\n @if (loading) {\n <div class=\"evo-input__loading-spinner\"></div>\n } @else {\n @if (isClearable) {\n <div class=\"evo-input__clearable\" (click)=\"onClear()\">\n <evo-icon shape=\"decline\" class=\"evo-input__icon-clear\" />\n </div>\n }\n @if (hasAdditional) {\n <div class=\"evo-input__additional\">\n @if (tooltip || uiStates.hasCustomTooltip) {\n <evo-icon\n shape=\"help\"\n class=\"evo-input__tooltip\"\n (mouseenter)=\"showTooltip()\"\n (mouseleave)=\"hideTooltip()\"\n (click)=\"onTooltipClick($event)\"\n />\n }\n @if (icon) {\n <div class=\"evo-input__icon\">\n <img [attr.src]=\"icon\" />\n </div>\n }\n </div>\n }\n }\n\n @if (!customTooltipChecked || uiStates.isTooltipVisible) {\n <div\n #tooltipContainer\n [hidden]=\"!customTooltipChecked\"\n [ngClass]=\"{'evo-input__tooltip-container': tooltip}\"\n (click)=\"onTooltipClick($event)\"\n (mouseenter)=\"showTooltip()\"\n (mouseleave)=\"hideTooltip()\"\n >\n {{ tooltip }}\n <ng-content select=\"[tooltip]\" />\n </div>\n }\n</label>\n\n@if (showErrors) {\n <evo-control-error [errors]=\"control.errors\" [errorsMessages]=\"errorsMessages\" />\n}\n", styles: ["@keyframes evo-fx-blink{50%{transform:scale(1);opacity:1}to{opacity:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gradient{0%{background-position:0 50%}50%{background-position:50vw 50%}to{background-position:100vw 50%}}:host{display:inline-block;--evo-input-prefix-content-margin: 0 12px}.evo-input{--evo-input-padding-left: 16px;--evo-input-padding-right: 8px;position:relative;cursor:text}.evo-input_focused{border:solid 1px #74706F}.evo-input_disabled{color:#b0b0b0!important;background-color:#f9fafb!important;border:1px solid #E3E3E3!important;cursor:default;pointer-events:none}.evo-input_invalid{border-color:#ff1817!important}.evo-input_theme-default{--evo-input-height: 48px;--evo-input-border-radius: 4px;--evo-input-font-size: 16px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-default.evo-input_size-small{--evo-input-height: 48px;--evo-input-border-radius: 4px;--evo-input-font-size: 16px;--evo-input-height: 32px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-default.evo-input_size-small .evo-input__field{--evo-input-padding-left: 8px;--evo-input-padding-right: 8px}.evo-input_theme-default.evo-input_size-small .evo-input__field:not(:last-child){--evo-input-padding-right: 0}.evo-input_theme-rounded{--evo-input-height: 48px;--evo-input-border-radius: 4px;--evo-input-font-size: 16px;--evo-input-border-radius: 256px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-rounded.evo-input_size-small{--evo-input-height: 48px;--evo-input-border-radius: 4px;--evo-input-font-size: 16px;--evo-input-font-size: 14px;--evo-input-height: 40px;--evo-input-border-radius: 256px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-rounded.evo-input_size-small .evo-input__field:last-child{--evo-input-padding-right: 16px}.evo-input_size-small{height:32px}.evo-input_size-small .evo-input__tooltip,.evo-input_size-small .evo-input__loading-spinner{flex:0 0 16px;width:16px;height:16px;margin:0 10px}.evo-input_size-small .evo-input__icon{margin-right:10px}.evo-input_size-small .evo-input__icon img{max-height:16px}.evo-input_size-small .evo-input__tooltip-container{top:100%}.evo-input_size-small .evo-input__tooltip-container:before{left:calc(100% - 28px)}@media (min-width: 1200px){.evo-input_size-small .evo-input__tooltip-container{top:calc(100% + 4px)}.evo-input_size-small .evo-input__tooltip-container:before{left:calc(50% - 6px)}}.evo-input_size-small .evo-input__prefix-icon{width:16px;height:16px}.evo-input_size-small .evo-input__prefix-icon:empty{display:none}.evo-input_size-small .evo-input__icon-clear{width:16px;height:16px}.evo-input__prefix-icon{display:flex;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-left:12px;fill:#91b1b8}.evo-input__prefix-icon:empty{display:none}.evo-input__prefix-content{display:inline-flex;flex-shrink:0;justify-content:center;align-items:center;margin:var(--evo-input-prefix-content-margin)}.evo-input__prefix-content:empty{display:none}.evo-input__prefix-content:not(:empty)~.evo-input__field{--evo-input-padding-left: 0}.evo-input__field{width:100%;height:100%;margin:0;padding:0 var(--evo-input-padding-right) 0 var(--evo-input-padding-left);color:inherit;font-weight:inherit;font-size:inherit;border:none;border-radius:inherit;outline:none}.evo-input__field::-webkit-input-placeholder{color:#9b9b9b}.evo-input__field::-moz-placeholder{color:#9b9b9b;opacity:1}.evo-input__field:-ms-input-placeholder{color:#9b9b9b}.evo-input__field:disabled{color:#b0b0b0;background-color:#f9fafb!important}.evo-input__field:not(:last-child){--evo-input-padding-right: 0}.evo-input__prefix{padding-left:20px;font-size:16px;transition:color .2s}.evo-input__prefix_focused{color:#000}.evo-input__prefix:not(:empty)~.evo-input__field{--evo-input-padding-left: 0}.evo-input__tooltip,.evo-input__icon-clear{width:24px;height:24px;margin:0 10px;cursor:pointer;-webkit-user-select:none;user-select:none;fill:#91b1b8}.evo-input__icon{margin:0 20px 0 10px}.evo-input__icon img{display:block;width:100%;max-width:60px;height:auto;max-height:22px}.evo-input__tooltip-container{position:absolute;top:calc(100% - 2px);left:0;z-index:1;display:flex;width:100%;padding:10px 10px 10px 20px;color:#212121;line-height:normal;white-space:normal;background-color:#fff8e6;border-radius:4px;box-shadow:0 4px 12px #0003;cursor:default}.evo-input__tooltip-container[hidden]{display:none!important}.evo-input__tooltip-container:before{position:absolute;top:-20px;left:calc(100% - 34px);border:10px solid transparent;border-bottom-color:#fff8e6;pointer-events:none;content:\"\"}@media (min-width: 1200px){.evo-input__tooltip-container{left:calc(50% - 22px)}.evo-input__tooltip-container:before{left:calc(50% - 12px)}}.evo-input__clearable{display:flex;justify-content:center;align-items:center}.evo-input__clearable+.evo-input__additional{margin-left:-10px}.evo-input__additional{display:flex;justify-content:center;align-items:center}.evo-input__additional:not(:last-child) .evo-input__icon{margin-right:10px}.evo-input__additional+.evo-input__loading-spinner{margin-left:0}.evo-input__loading-spinner{margin:0 20px;flex:0 0 16px;width:16px;height:16px;border:2px solid #C6C6C6;border-top-color:#21c68b;border-radius:50%;animation:spin .8s linear infinite}\n"] }]
324
+ ], standalone: true, imports: [EvoUiClassDirective, EvoIconComponent, NgClass, EvoControlErrorComponent, EvoCircularLoaderComponent], template: "<label class=\"evo-input\" [evoUiClass]=\"inputClass\">\n <div class=\"evo-input__prefix-content\">\n <ng-content select=\"[evoInputPrefixContent]\" />\n </div>\n <div class=\"evo-input__prefix-icon\">\n <ng-content select=\"[evoInputIcon]\" />\n </div>\n\n @if (prefix) {\n <span class=\"evo-input__prefix\" [evoUiClass]=\"{focused: (!isDisabled && !!value) || uiStates.isFocused}\">\n {{ prefix }}\n </span>\n }\n\n <input\n #input\n type=\"{{ type }}\"\n placeholder=\"{{ placeholder }}\"\n class=\"evo-input__field\"\n [attr.autocomplete]=\"autocomplete\"\n [attr.data-cp]=\"dataCp\"\n [disabled]=\"isDisabled\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputBlur($event)\"\n (compositionstart)=\"_compositionStart()\"\n (compositionend)=\"_compositionEnd($event.target.value)\"\n />\n\n @if (loading) {\n <evo-circular-loader class=\"evo-input__loading-spinner\" />\n } @else {\n @if (isClearable) {\n <div class=\"evo-input__clearable\" (click)=\"onClear()\">\n <evo-icon shape=\"decline\" class=\"evo-input__icon-clear\" />\n </div>\n }\n @if (hasAdditional) {\n <div class=\"evo-input__additional\">\n @if (tooltip || uiStates.hasCustomTooltip) {\n <evo-icon\n shape=\"help\"\n class=\"evo-input__tooltip\"\n (mouseenter)=\"showTooltip()\"\n (mouseleave)=\"hideTooltip()\"\n (click)=\"onTooltipClick($event)\"\n />\n }\n @if (icon) {\n <div class=\"evo-input__icon\">\n <img [attr.src]=\"icon\" />\n </div>\n }\n </div>\n }\n }\n\n @if (!customTooltipChecked || uiStates.isTooltipVisible) {\n <div\n #tooltipContainer\n [hidden]=\"!customTooltipChecked\"\n [ngClass]=\"{'evo-input__tooltip-container': tooltip}\"\n (click)=\"onTooltipClick($event)\"\n (mouseenter)=\"showTooltip()\"\n (mouseleave)=\"hideTooltip()\"\n >\n {{ tooltip }}\n <ng-content select=\"[tooltip]\" />\n </div>\n }\n</label>\n\n@if (showErrors) {\n <evo-control-error [errors]=\"control.errors\" [errorsMessages]=\"errorsMessages\" />\n}\n", styles: ["@keyframes evo-fx-blink{50%{transform:scale(1);opacity:1}to{opacity:0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gradient{0%{background-position:0 50%}50%{background-position:50vw 50%}to{background-position:100vw 50%}}:host{display:inline-block;--evo-input-prefix-content-margin: 4px 8px 4px 4px}.evo-input{--evo-input-padding-left: 12px;--evo-input-padding-right: 12px;--evo-input-padding-top: 8px;--evo-input-padding-bottom: 8px;position:relative;cursor:text}.evo-input_focused{border:solid 1px #74706F}.evo-input_disabled{color:#b0b0b0!important;background-color:#f9fafb!important;border:1px solid #E3E3E3!important;cursor:default;pointer-events:none}.evo-input_invalid{border-color:#ff1817!important}.evo-input_theme-default{--evo-input-height: 40px;--evo-input-border-radius: 4px;--evo-input-font-size: 14px;--evo-input-line-height: 24px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);line-height:var(--evo-input-line-height);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-default.evo-input_size-small{--evo-input-height: 40px;--evo-input-border-radius: 4px;--evo-input-font-size: 14px;--evo-input-line-height: 24px;--evo-input-height: 32px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);line-height:var(--evo-input-line-height);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-default.evo-input_size-small .evo-input__field{--evo-input-padding-left: 12px;--evo-input-padding-right: 12px;--evo-input-padding-top: 4px;--evo-input-padding-bottom: 4px}.evo-input_theme-default.evo-input_size-small .evo-input__field:not(:last-child){--evo-input-padding-right: 0}.evo-input_theme-rounded{--evo-input-height: 40px;--evo-input-border-radius: 4px;--evo-input-font-size: 14px;--evo-input-line-height: 24px;--evo-input-border-radius: 256px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);line-height:var(--evo-input-line-height);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-rounded.evo-input_size-small{--evo-input-border-radius: 4px;--evo-input-line-height: 24px;--evo-input-font-size: 14px;--evo-input-height: 40px;--evo-input-border-radius: 256px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);line-height:var(--evo-input-line-height);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s}.evo-input_theme-rounded.evo-input_size-small .evo-input__field{--evo-input-padding-left: 12px}.evo-input_theme-rounded.evo-input_size-small .evo-input__field:last-child{--evo-input-padding-right: 12px}.evo-input_size-small{height:32px}.evo-input_size-small .evo-input__icon{margin-right:8px}.evo-input_size-small .evo-input__icon img{max-height:16px}.evo-input_size-small .evo-input__tooltip-container{top:100%}.evo-input_size-small .evo-input__tooltip-container:before{left:calc(100% - 28px)}@media (min-width: 1200px){.evo-input_size-small .evo-input__tooltip-container{top:calc(100% + 4px)}.evo-input_size-small .evo-input__tooltip-container:before{left:calc(50% - 6px)}}.evo-input__prefix-icon{display:flex;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-left:8px;fill:#91b1b8}.evo-input__prefix-icon:empty{display:none}.evo-input__prefix-icon:not(:empty)~.evo-input__field{--evo-input-padding-left: 8px}.evo-input__prefix-content{display:inline-flex;flex-shrink:0;justify-content:center;align-items:center;margin:var(--evo-input-prefix-content-margin)}.evo-input__prefix-content:empty{display:none}.evo-input__prefix-content:not(:empty)~.evo-input__field{--evo-input-padding-left: 0}.evo-input__field{width:100%;height:100%;margin:0;padding:var(--evo-input-padding-top) var(--evo-input-padding-right) var(--evo-input-padding-bottom) var(--evo-input-padding-left);color:inherit;font-weight:inherit;font-size:inherit;border:none;border-radius:inherit;outline:none}.evo-input__field::-webkit-input-placeholder{color:#9b9b9b}.evo-input__field::-moz-placeholder{color:#9b9b9b;opacity:1}.evo-input__field:-ms-input-placeholder{color:#9b9b9b}.evo-input__field:disabled{color:#b0b0b0;background-color:#f9fafb!important}.evo-input__field:not(:last-child){--evo-input-padding-right: 0}.evo-input__prefix{padding-left:12px;transition:color .2s;color:#9b9b9b}.evo-input__prefix:not(:empty)~.evo-input__field{--evo-input-padding-left: 0}.evo-input__tooltip{flex:0 0 24px;width:24px;height:24px;margin:0 8px;cursor:pointer;-webkit-user-select:none;user-select:none;fill:#91b1b8}.evo-input__icon-clear{width:24px;height:24px;margin:0 8px;cursor:pointer;-webkit-user-select:none;user-select:none;fill:#91b1b8}.evo-input__icon{margin:0 8px}.evo-input__icon img{display:block;width:100%;max-width:60px;height:auto;max-height:22px}.evo-input__tooltip-container{position:absolute;top:calc(100% - 2px);left:0;z-index:1;display:flex;width:100%;padding:10px 10px 10px 20px;color:#212121;line-height:normal;white-space:normal;background-color:#fff8e6;border-radius:4px;box-shadow:0 4px 12px #0003;cursor:default}.evo-input__tooltip-container[hidden]{display:none!important}.evo-input__tooltip-container:before{position:absolute;top:-20px;left:calc(100% - 34px);border:10px solid transparent;border-bottom-color:#fff8e6;pointer-events:none;content:\"\"}@media (min-width: 1200px){.evo-input__tooltip-container{left:calc(50% - 22px)}.evo-input__tooltip-container:before{left:calc(50% - 12px)}}.evo-input__clearable{display:flex;justify-content:center;align-items:center}.evo-input__clearable+.evo-input__additional{margin-left:-10px}.evo-input__additional{display:flex;justify-content:center;align-items:center}.evo-input__additional:not(:last-child) .evo-input__icon{margin-right:8px}.evo-input__additional+.evo-input__loading-spinner{margin-left:0}.evo-input__loading-spinner{flex:0 0 24px;width:24px;height:24px;margin:0 8px;--evo-circular-loader-color: #91B1B8}\n"] }]
324
325
  }], ctorParameters: () => [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: undefined, decorators: [{
325
326
  type: Optional
326
327
  }, {
@@ -373,4 +374,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
373
374
  type: Input,
374
375
  args: ['theme']
375
376
  }] } });
376
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by1pbnB1dC9ldm8taW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLWlucHV0L2V2by1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsU0FBUyxFQUVULFVBQVUsRUFDVixNQUFNLEVBRU4sS0FBSyxFQUtMLFFBQVEsRUFDUixNQUFNLEVBR04sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCx1QkFBdUIsRUFFdkIsYUFBYSxFQUNiLGlCQUFpQixHQUVwQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQ2hHLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUMsU0FBUyxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUMsWUFBWSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDakUsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sS0FBSyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQy9CLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN4QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUMsbUJBQW1CLEVB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ICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEluamVjdCxcbiAgICBJbmplY3RvcixcbiAgICBJbnB1dCxcbiAgICBOZ1pvbmUsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgb3V0cHV0LFxuICAgIFJlbmRlcmVyMixcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIENPTVBPU0lUSU9OX0JVRkZFUl9NT0RFLFxuICAgIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICAgIE5HX1ZBTElEQVRPUlMsXG4gICAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgVmFsaWRhdG9yLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0V2b0NvbnRyb2xTdGF0ZXN9IGZyb20gJy4uLy4uL2NvbW1vbi9ldm8tY29udHJvbC1zdGF0ZS1tYW5hZ2VyL2V2by1jb250cm9sLXN0YXRlcy5lbnVtJztcbmltcG9ydCB7RXZvQmFzZUNvbnRyb2x9IGZyb20gJy4uLy4uL2NvbW1vbi9ldm8tYmFzZS1jb250cm9sJztcbmltcG9ydCB7ZnJvbUV2ZW50LCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCBtYXAsIHRha2VVbnRpbCwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge2VudGVyWm9uZX0gZnJvbSAnLi4vLi4vb3BlcmF0b3JzJztcbmltcG9ydCAqIGFzIElNYXNrIGZyb20gJ2ltYXNrJztcbmltcG9ydCB7RXZvQ29udHJvbEVycm9yQ29tcG9uZW50fSBmcm9tICcuLi9ldm8tY29udHJvbC1lcnJvci9ldm8tY29udHJvbC1lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHtOZ0NsYXNzfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtFdm9JY29uQ29tcG9uZW50fSBmcm9tICcuLi9ldm8taWNvbi9ldm8taWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHtFdm9VaUNsYXNzRGlyZWN0aXZlfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2V2by11aS1jbGFzcy5kaXJlY3RpdmUnO1xuXG5leHBvcnQgZW51bSBFdm9JbnB1dFNpemVzIHtcbiAgICBzbWFsbCA9ICdzbWFsbCcsXG4gICAgbm9ybWFsID0gJ25vcm1hbCcsXG59XG5cbmV4cG9ydCBlbnVtIEV2b0lucHV0VGhlbWUge1xuICAgIGRlZmF1bHQgPSAnZGVmYXVsdCcsXG4gICAgcm91bmRlZCA9ICdyb3VuZGVkJyxcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldm8taW5wdXQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldm8taW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2V2by1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEV2b0lucHV0Q29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRXZvSW5wdXRDb21wb25lbnQpLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtFdm9VaUNsYXNzRGlyZWN0aXZlLCBFdm9JY29uQ29tcG9uZW50LCBOZ0NsYXNzLCBFdm9Db250cm9sRXJyb3JDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBFdm9JbnB1dENvbXBvbmVudFxuICAgIGV4dGVuZHMgRXZvQmFzZUNvbnRyb2xcbiAgICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBWYWxpZGF0b3JcbntcbiAgICBASW5wdXQoKSBhdXRvRm9jdXM6IGJvb2xlYW47XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgQElucHV0KCdkYXRhLWNwJykgZGF0YUNwOiBzdHJpbmc7XG4gICAgQElucHV0KCkgaWNvbjogc3RyaW5nO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIEBJbnB1dCgpIG1hc2s6IGFueTtcbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHRvb2x0aXA6IHN0cmluZztcbiAgICBASW5wdXQoKSB0eXBlID0gJ3RleHQnO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gICAgQElucHV0KCkgbG9hZGluZyA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHByZWZpeCA9ICcnO1xuICAgIEBJbnB1dCgpIGF1dG9jb21wbGV0ZTogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGlucHV0RGVib3VuY2UgPSA1MDtcbiAgICBASW5wdXQoKSB1bm1hc2s6IGJvb2xlYW4gfCAndHlwZWQnID0gZmFsc2U7XG4gICAgQElucHV0KCkgY2xlYXJhYmxlID0gZmFsc2U7XG4gICAgQElucHV0KCkgbWFza1ZhbGlkYXRpb24gPSBmYWxzZTtcblxuICAgIHJlYWRvbmx5IGJsdXIgPSBvdXRwdXQ8RXZlbnQ+KCk7XG4gICAgcmVhZG9ubHkgb25Gb2N1cyA9IG91dHB1dDxFdmVudD4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2lucHV0Jywge3N0YXRpYzogdHJ1ZX0pIGlucHV0RWxlbWVudDogRWxlbWVudFJlZjtcbiAgICBAVmlld0NoaWxkKCd0b29sdGlwQ29udGFpbmVyJywge3N0YXRpYzogdHJ1ZX0pIHRvb2x0aXBFbGVtZW50OiBFbGVtZW50UmVmO1xuXG4gICAgc2l6ZTogRXZvSW5wdXRTaXplcyA9IEV2b0lucHV0U2l6ZXMubm9ybWFsO1xuICAgIHRoZW1lOiBFdm9JbnB1dFRoZW1lID0gRXZvSW5wdXRUaGVtZS5kZWZhdWx0O1xuICAgIF92YWx1ZTogc3RyaW5nO1xuICAgIGN1c3RvbVRvb2x0aXBDaGVja2VkID0gZmFsc2U7XG4gICAgdWlTdGF0ZXMgPSB7XG4gICAgICAgIGhhc0N1c3RvbVRvb2x0aXA6IGZhbHNlLFxuICAgICAgICBpc1Rvb2x0aXBWaXNpYmxlOiBmYWxzZSxcbiAgICAgICAgaXNGb2N1c2VkOiBmYWxzZSxcbiAgICB9O1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgcHJpdmF0ZSBpTWFzazogSU1hc2suSW5wdXRNYXNrPGFueT47XG5cbiAgICBwcml2YXRlIHRvb2x0aXBWaXNpYmlsaXR5VGltZW91dCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogV2hldGhlciB0aGUgdXNlciBpcyBjcmVhdGluZyBhIGNvbXBvc2l0aW9uIHN0cmluZyAoSU1FIGV2ZW50cykuICovXG4gICAgcHJpdmF0ZSBfY29tcG9zaW5nID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB6b25lOiBOZ1pvbmUsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KENPTVBPU0lUSU9OX0JVRkZFUl9NT0RFKSBwcml2YXRlIHJlYWRvbmx5IF9jb21wb3NpdGlvbk1vZGU6IGJvb2xlYW4sXG4gICAgICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICB9XG5cbiAgICBASW5wdXQoJ3ZhbHVlJykgc2V0IHNldFZhbHVlKHZhbHVlKSB7XG4gICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgQElucHV0KCdzaXplJykgc2V0IHNldFNpemUoc2l6ZTogRXZvSW5wdXRTaXplcyB8IHN0cmluZykge1xuICAgICAgICBpZiAoRXZvSW5wdXRTaXplc1tzaXplXSkge1xuICAgICAgICAgICAgdGhpcy5zaXplID0gRXZvSW5wdXRTaXplc1tzaXplXTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBJbnB1dCgndGhlbWUnKSBzZXQgc2V0VGhlbWUodGhlbWU6IHN0cmluZyB8IEV2b0lucHV0VGhlbWUpIHtcbiAgICAgICAgaWYgKEV2b0lucHV0VGhlbWVbdGhlbWVdKSB7XG4gICAgICAgICAgICB0aGlzLnRoZW1lID0gRXZvSW5wdXRUaGVtZVt0aGVtZV07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgaXNEaXNhYmxlZCgpIHtcbiAgICAgICAgaWYgKHRoaXMubG9hZGluZykge1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgZ2V0IHZhbHVlKCk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBzZXQgdmFsdWUodmFsdWU6IGFueSkge1xuICAgICAgICBpZiAodmFsdWUgfHwgdGhpcy5fdmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdGhpcy5yZW1vdmVQcmVmaXgodmFsdWUpO1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLnByZWZpeCArICh0aGlzLl92YWx1ZSB8fCAnJykpO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCBpbnB1dENsYXNzKCk6IHtbY3NzQ2xhc3M6IHN0cmluZ106IGJvb2xlYW59IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGZvY3VzZWQ6IHRoaXMudWlTdGF0ZXMuaXNGb2N1c2VkLFxuICAgICAgICAgICAgZGlzYWJsZWQ6IHRoaXMuaXNEaXNhYmxlZCxcbiAgICAgICAgICAgIHZhbGlkOiB0aGlzLmN1cnJlbnRTdGF0ZVtFdm9Db250cm9sU3RhdGVzLnZhbGlkXSxcbiAgICAgICAgICAgIGludmFsaWQ6IHRoaXMuY3VycmVudFN0YXRlW0V2b0NvbnRyb2xTdGF0ZXMuaW52YWxpZF0sXG4gICAgICAgICAgICBbYHNpemUtJHt0aGlzLnNpemV9YF06IHRoaXMuc2l6ZSAhPT0gRXZvSW5wdXRTaXplcy5ub3JtYWwsXG4gICAgICAgICAgICBbYHRoZW1lLSR7dGhpcy50aGVtZX1gXTogdHJ1ZSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBnZXQgaGFzQWRkaXRpb25hbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy50b29sdGlwIHx8IHRoaXMudWlTdGF0ZXMuaGFzQ3VzdG9tVG9vbHRpcCB8fCAhIXRoaXMuaWNvbjtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBzZXQgbWFza1ZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgY29uc3Qgbm9ybWFsaXplZFZhbHVlID0gdmFsdWUgPz8gJyc7XG4gICAgICAgIGlmICh0aGlzLmlNYXNrKSB7XG4gICAgICAgICAgICBpZiAodGhpcy51bm1hc2sgPT09ICd0eXBlZCcpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmlNYXNrLnR5cGVkVmFsdWUgPSBub3JtYWxpemVkVmFsdWU7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMudW5tYXNrKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5pTWFzay51bm1hc2tlZFZhbHVlID0gbm9ybWFsaXplZFZhbHVlO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmlNYXNrLnZhbHVlID0gbm9ybWFsaXplZFZhbHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy53cml0ZVRvRWxlbWVudChub3JtYWxpemVkVmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgZ2V0IG1hc2tWYWx1ZSgpOiBhbnkge1xuICAgICAgICBpZiAoIXRoaXMuaU1hc2spIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LnZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnVubWFzayA9PT0gJ3R5cGVkJykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaU1hc2sudHlwZWRWYWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy51bm1hc2spIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmlNYXNrLnVubWFza2VkVmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuaU1hc2sudmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGlzQ2xlYXJhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jbGVhcmFibGUgJiYgIXRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGNvbnN0IGlucHV0RWwgPSB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5tYXNrKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVNYXNrSW5zdGFuY2UodGhpcy5tYXNrKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZnJvbUV2ZW50KGlucHV0RWwsICdpbnB1dCcpXG4gICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIGRlYm91bmNlVGltZSh0aGlzLmlucHV0RGVib3VuY2UpLFxuICAgICAgICAgICAgICAgICAgICBtYXAoKGU6IElucHV0RXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmlNYXNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubWFza1ZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChlLnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIGVudGVyWm9uZSh0aGlzLnpvbmUpLFxuICAgICAgICAgICAgICAgICAgICB0YXAoKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICAgICAgaWYgKHRoaXMuaU1hc2spIHtcbiAgICAgICAgICAgIHRoaXMuZGVzdHJveU1hc2soKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgaWYgKCFjaGFuZ2VzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7bWFza30gPSBjaGFuZ2VzO1xuXG4gICAgICAgIGlmIChtYXNrICYmICFtYXNrLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgICAgICBjb25zdCBuZXdNYXNrT3B0aW9ucyA9IG1hc2suY3VycmVudFZhbHVlO1xuICAgICAgICAgICAgaWYgKG5ld01hc2tPcHRpb25zKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaU1hc2spIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pTWFzay51cGRhdGVPcHRpb25zKG5ld01hc2tPcHRpb25zKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZU1hc2tJbnN0YW5jZShuZXdNYXNrT3B0aW9ucyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmRlc3Ryb3lNYXNrKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkNoYW5nZSh2YWx1ZSkge1xuICAgICAgICAvLyB0aGlzIGlzIGludGVudGlvbmFsXG4gICAgfVxuXG4gICAgb25Ub3VjaGVkKCkge1xuICAgICAgICAvLyB0aGlzIGlzIGludGVudGlvbmFsXG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICBpZiAodGhpcy5hdXRvRm9jdXMpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNoZWNrQ3VzdG9tVG9vbHRpcCgpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHdyaXRlVG9FbGVtZW50KHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ3ZhbHVlJywgdmFsdWUpO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAodmFsdWUgPT09IHRoaXMuX3ZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG5cbiAgICAgICAgaWYgKHRoaXMubWFzaykge1xuICAgICAgICAgICAgdGhpcy5tYXNrVmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMud3JpdGVUb0VsZW1lbnQodmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShzdGF0ZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gc3RhdGU7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgb25JbnB1dEZvY3VzKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy51aVN0YXRlcy5pc0ZvY3VzZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudWlTdGF0ZXMuaXNGb2N1c2VkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgIH1cblxuICAgIG9uSW5wdXRCbHVyKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVpU3RhdGVzLmlzRm9jdXNlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgICB0aGlzLmJsdXIuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgb25Ub29sdGlwQ2xpY2soZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG5cbiAgICBvbkNsZWFyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLndyaXRlVmFsdWUoJycpO1xuICAgIH1cblxuICAgIGhpZGVUb29sdGlwKCkge1xuICAgICAgICB0aGlzLnRvb2x0aXBWaXNpYmlsaXR5VGltZW91dCA9IHRydWU7XG5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy50b29sdGlwVmlzaWJpbGl0eVRpbWVvdXQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnVpU3RhdGVzLmlzVG9vbHRpcFZpc2libGUgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgMjUpO1xuICAgIH1cblxuICAgIHNob3dUb29sdGlwKCkge1xuICAgICAgICB0aGlzLnVpU3RhdGVzLmlzVG9vbHRpcFZpc2libGUgPSB0cnVlO1xuICAgICAgICB0aGlzLnRvb2x0aXBWaXNpYmlsaXR5VGltZW91dCA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIENvbXBvc2l0aW9uIGhhbmRsaW5nIGlzIHRha2VuIGZyb206XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9ibG9iLzExLjAuMy9wYWNrYWdlcy9mb3Jtcy9zcmMvZGlyZWN0aXZlcy9kZWZhdWx0X3ZhbHVlX2FjY2Vzc29yLnRzI0wxNTJcbiAgICBfY29tcG9zaXRpb25TdGFydCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY29tcG9zaW5nID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBfY29tcG9zaXRpb25FbmQodmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jb21wb3NpbmcgPSBmYWxzZTtcbiAgICAgICAgaWYgKHRoaXMuX2NvbXBvc2l0aW9uTW9kZSkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgcHJpdmF0ZSByZW1vdmVQcmVmaXgodmFsdWU6IGFueSk6IGFueSB7XG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHZhbHVlLmluZGV4T2YodGhpcy5wcmVmaXgpID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUucmVwbGFjZSh0aGlzLnByZWZpeCwgJycpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBwcml2YXRlIGNyZWF0ZU1hc2tJbnN0YW5jZShvcHRzOiBhbnkpIHtcbiAgICAgICAgdGhpcy5pTWFzayA9IG5ldyBJTWFzay5JbnB1dE1hc2sodGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudCwgb3B0cyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBkZXN0cm95TWFzaygpIHtcbiAgICAgICAgdGhpcy5pTWFzaz8uZGVzdHJveSgpO1xuICAgICAgICB0aGlzLmlNYXNrID0gbnVsbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNoZWNrQ3VzdG9tVG9vbHRpcCgpIHtcbiAgICAgICAgdGhpcy51aVN0YXRlcy5oYXNDdXN0b21Ub29sdGlwID1cbiAgICAgICAgICAgIHRoaXMudG9vbHRpcEVsZW1lbnQgJiZcbiAgICAgICAgICAgIHRoaXMudG9vbHRpcEVsZW1lbnQubmF0aXZlRWxlbWVudCAmJlxuICAgICAgICAgICAgdGhpcy50b29sdGlwRWxlbWVudC5uYXRpdmVFbGVtZW50LmNoaWxkcmVuLmxlbmd0aCA+IDA7XG4gICAgICAgIHRoaXMuY3VzdG9tVG9vbHRpcENoZWNrZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZSgpIHtcbiAgICAgICAgaWYgKHRoaXMubWFza1ZhbGlkYXRpb24gJiYgdGhpcy5tYXNrICYmICF0aGlzLmlNYXNrLm1hc2tlZC5pc0NvbXBsZXRlKSB7XG4gICAgICAgICAgICByZXR1cm4ge21hc2s6IHRydWV9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbn1cbiIsIjxsYWJlbCBjbGFzcz1cImV2by1pbnB1dFwiIFtldm9VaUNsYXNzXT1cImlucHV0Q2xhc3NcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZXZvLWlucHV0X19wcmVmaXgtY29udGVudFwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZXZvSW5wdXRQcmVmaXhDb250ZW50XVwiIC8+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImV2by1pbnB1dF9fcHJlZml4LWljb25cIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2V2b0lucHV0SWNvbl1cIiAvPlxuICAgIDwvZGl2PlxuXG4gICAgQGlmIChwcmVmaXgpIHtcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJldm8taW5wdXRfX3ByZWZpeFwiIFtldm9VaUNsYXNzXT1cIntmb2N1c2VkOiAoIWlzRGlzYWJsZWQgJiYgISF2YWx1ZSkgfHwgdWlTdGF0ZXMuaXNGb2N1c2VkfVwiPlxuICAgICAgICAgICAge3sgcHJlZml4IH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICB9XG5cbiAgICA8aW5wdXRcbiAgICAgICAgI2lucHV0XG4gICAgICAgIHR5cGU9XCJ7eyB0eXBlIH19XCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyBwbGFjZWhvbGRlciB9fVwiXG4gICAgICAgIGNsYXNzPVwiZXZvLWlucHV0X19maWVsZFwiXG4gICAgICAgIFthdHRyLmF1dG9jb21wbGV0ZV09XCJhdXRvY29tcGxldGVcIlxuICAgICAgICBbYXR0ci5kYXRhLWNwXT1cImRhdGFDcFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcbiAgICAgICAgKGZvY3VzKT1cIm9uSW5wdXRGb2N1cygkZXZlbnQpXCJcbiAgICAgICAgKGJsdXIpPVwib25JbnB1dEJsdXIoJGV2ZW50KVwiXG4gICAgICAgIChjb21wb3NpdGlvbnN0YXJ0KT1cIl9jb21wb3NpdGlvblN0YXJ0KClcIlxuICAgICAgICAoY29tcG9zaXRpb25lbmQpPVwiX2NvbXBvc2l0aW9uRW5kKCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAvPlxuXG4gICAgQGlmIChsb2FkaW5nKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJldm8taW5wdXRfX2xvYWRpbmctc3Bpbm5lclwiPjwvZGl2PlxuICAgIH0gQGVsc2Uge1xuICAgICAgICBAaWYgKGlzQ2xlYXJhYmxlKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZvLWlucHV0X19jbGVhcmFibGVcIiAoY2xpY2spPVwib25DbGVhcigpXCI+XG4gICAgICAgICAgICAgICAgPGV2by1pY29uIHNoYXBlPVwiZGVjbGluZVwiIGNsYXNzPVwiZXZvLWlucHV0X19pY29uLWNsZWFyXCIgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIEBpZiAoaGFzQWRkaXRpb25hbCkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2by1pbnB1dF9fYWRkaXRpb25hbFwiPlxuICAgICAgICAgICAgICAgIEBpZiAodG9vbHRpcCB8fCB1aVN0YXRlcy5oYXNDdXN0b21Ub29sdGlwKSB7XG4gICAgICAgICAgICAgICAgICAgIDxldm8taWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgc2hhcGU9XCJoZWxwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXZvLWlucHV0X190b29sdGlwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChtb3VzZWVudGVyKT1cInNob3dUb29sdGlwKClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKG1vdXNlbGVhdmUpPVwiaGlkZVRvb2x0aXAoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25Ub29sdGlwQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoaWNvbikge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZvLWlucHV0X19pY29uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW1nIFthdHRyLnNyY109XCJpY29uXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKCFjdXN0b21Ub29sdGlwQ2hlY2tlZCB8fCB1aVN0YXRlcy5pc1Rvb2x0aXBWaXNpYmxlKSB7XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICN0b29sdGlwQ29udGFpbmVyXG4gICAgICAgICAgICBbaGlkZGVuXT1cIiFjdXN0b21Ub29sdGlwQ2hlY2tlZFwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7J2V2by1pbnB1dF9fdG9vbHRpcC1jb250YWluZXInOiB0b29sdGlwfVwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25Ub29sdGlwQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAobW91c2VlbnRlcik9XCJzaG93VG9vbHRpcCgpXCJcbiAgICAgICAgICAgIChtb3VzZWxlYXZlKT1cImhpZGVUb29sdGlwKClcIlxuICAgICAgICA+XG4gICAgICAgICAgICB7eyB0b29sdGlwIH19XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbdG9vbHRpcF1cIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICB9XG48L2xhYmVsPlxuXG5AaWYgKHNob3dFcnJvcnMpIHtcbiAgICA8ZXZvLWNvbnRyb2wtZXJyb3IgW2Vycm9yc109XCJjb250cm9sLmVycm9yc1wiIFtlcnJvcnNNZXNzYWdlc109XCJlcnJvcnNNZXNzYWdlc1wiIC8+XG59XG4iXX0=
377
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by1pbnB1dC9ldm8taW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLWlucHV0L2V2by1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsU0FBUyxFQUVULFVBQVUsRUFDVixNQUFNLEVBRU4sS0FBSyxFQUtMLFFBQVEsRUFDUixNQUFNLEVBR04sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCx1QkFBdUIsRUFFdkIsYUFBYSxFQUNiLGlCQUFpQixHQUVwQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQ2hHLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUMsU0FBUyxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUMsWUFBWSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDakUsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sS0FBSyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQy9CLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN4QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUMsbUJBQW1CLEVB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QU07Z0JBTU8sUUFBUTtzQkFBM0IsS0FBSzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5qZWN0LFxuICAgIEluamVjdG9yLFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPcHRpb25hbCxcbiAgICBvdXRwdXQsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ09NUE9TSVRJT05fQlVGRkVSX01PREUsXG4gICAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gICAgTkdfVkFMSURBVE9SUyxcbiAgICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICBWYWxpZGF0b3IsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7RXZvQ29udHJvbFN0YXRlc30gZnJvbSAnLi4vLi4vY29tbW9uL2V2by1jb250cm9sLXN0YXRlLW1hbmFnZXIvZXZvLWNvbnRyb2wtc3RhdGVzLmVudW0nO1xuaW1wb3J0IHtFdm9CYXNlQ29udHJvbH0gZnJvbSAnLi4vLi4vY29tbW9uL2V2by1iYXNlLWNvbnRyb2wnO1xuaW1wb3J0IHtmcm9tRXZlbnQsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtkZWJvdW5jZVRpbWUsIG1hcCwgdGFrZVVudGlsLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7ZW50ZXJab25lfSBmcm9tICcuLi8uLi9vcGVyYXRvcnMnO1xuaW1wb3J0ICogYXMgSU1hc2sgZnJvbSAnaW1hc2snO1xuaW1wb3J0IHtFdm9Db250cm9sRXJyb3JDb21wb25lbnR9IGZyb20gJy4uL2V2by1jb250cm9sLWVycm9yL2V2by1jb250cm9sLWVycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQge05nQ2xhc3N9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0V2b0ljb25Db21wb25lbnR9IGZyb20gJy4uL2V2by1pY29uL2V2by1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQge0V2b1VpQ2xhc3NEaXJlY3RpdmV9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZXZvLXVpLWNsYXNzLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0V2b0NpcmN1bGFyTG9hZGVyQ29tcG9uZW50fSBmcm9tICcuLi9ldm8tbG9hZGVyJztcblxuZXhwb3J0IGVudW0gRXZvSW5wdXRTaXplcyB7XG4gICAgc21hbGwgPSAnc21hbGwnLFxuICAgIG5vcm1hbCA9ICdub3JtYWwnLFxufVxuXG5leHBvcnQgZW51bSBFdm9JbnB1dFRoZW1lIHtcbiAgICBkZWZhdWx0ID0gJ2RlZmF1bHQnLFxuICAgIHJvdW5kZWQgPSAncm91bmRlZCcsXG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXZvLWlucHV0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXZvLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ldm8taW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFdm9JbnB1dENvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEV2b0lucHV0Q29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbRXZvVWlDbGFzc0RpcmVjdGl2ZSwgRXZvSWNvbkNvbXBvbmVudCwgTmdDbGFzcywgRXZvQ29udHJvbEVycm9yQ29tcG9uZW50LCBFdm9DaXJjdWxhckxvYWRlckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEV2b0lucHV0Q29tcG9uZW50XG4gICAgZXh0ZW5kcyBFdm9CYXNlQ29udHJvbFxuICAgIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIFZhbGlkYXRvclxue1xuICAgIEBJbnB1dCgpIGF1dG9Gb2N1czogYm9vbGVhbjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBASW5wdXQoJ2RhdGEtY3AnKSBkYXRhQ3A6IHN0cmluZztcbiAgICBASW5wdXQoKSBpY29uOiBzdHJpbmc7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgQElucHV0KCkgbWFzazogYW55O1xuICAgIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgQElucHV0KCkgdG9vbHRpcDogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHR5cGUgPSAndGV4dCc7XG4gICAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XG4gICAgQElucHV0KCkgcHJlZml4ID0gJyc7XG4gICAgQElucHV0KCkgYXV0b2NvbXBsZXRlOiBzdHJpbmc7XG4gICAgQElucHV0KCkgaW5wdXREZWJvdW5jZSA9IDUwO1xuICAgIEBJbnB1dCgpIHVubWFzazogYm9vbGVhbiB8ICd0eXBlZCcgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBjbGVhcmFibGUgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBtYXNrVmFsaWRhdGlvbiA9IGZhbHNlO1xuXG4gICAgcmVhZG9ubHkgYmx1ciA9IG91dHB1dDxFdmVudD4oKTtcbiAgICByZWFkb25seSBvbkZvY3VzID0gb3V0cHV0PEV2ZW50PigpO1xuXG4gICAgQFZpZXdDaGlsZCgnaW5wdXQnLCB7c3RhdGljOiB0cnVlfSkgaW5wdXRFbGVtZW50OiBFbGVtZW50UmVmO1xuICAgIEBWaWV3Q2hpbGQoJ3Rvb2x0aXBDb250YWluZXInLCB7c3RhdGljOiB0cnVlfSkgdG9vbHRpcEVsZW1lbnQ6IEVsZW1lbnRSZWY7XG5cbiAgICBzaXplOiBFdm9JbnB1dFNpemVzID0gRXZvSW5wdXRTaXplcy5ub3JtYWw7XG4gICAgdGhlbWU6IEV2b0lucHV0VGhlbWUgPSBFdm9JbnB1dFRoZW1lLmRlZmF1bHQ7XG4gICAgX3ZhbHVlOiBzdHJpbmc7XG4gICAgY3VzdG9tVG9vbHRpcENoZWNrZWQgPSBmYWxzZTtcbiAgICB1aVN0YXRlcyA9IHtcbiAgICAgICAgaGFzQ3VzdG9tVG9vbHRpcDogZmFsc2UsXG4gICAgICAgIGlzVG9vbHRpcFZpc2libGU6IGZhbHNlLFxuICAgICAgICBpc0ZvY3VzZWQ6IGZhbHNlLFxuICAgIH07XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBwcml2YXRlIGlNYXNrOiBJTWFzay5JbnB1dE1hc2s8YW55PjtcblxuICAgIHByaXZhdGUgdG9vbHRpcFZpc2liaWxpdHlUaW1lb3V0ID0gZmFsc2U7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSB1c2VyIGlzIGNyZWF0aW5nIGEgY29tcG9zaXRpb24gc3RyaW5nIChJTUUgZXZlbnRzKS4gKi9cbiAgICBwcml2YXRlIF9jb21wb3NpbmcgPSBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHpvbmU6IE5nWm9uZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoQ09NUE9TSVRJT05fQlVGRkVSX01PREUpIHByaXZhdGUgcmVhZG9ubHkgX2NvbXBvc2l0aW9uTW9kZTogYm9vbGVhbixcbiAgICAgICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICApIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IpO1xuICAgIH1cblxuICAgIEBJbnB1dCgndmFsdWUnKSBzZXQgc2V0VmFsdWUodmFsdWUpIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICBASW5wdXQoJ3NpemUnKSBzZXQgc2V0U2l6ZShzaXplOiBFdm9JbnB1dFNpemVzIHwgc3RyaW5nKSB7XG4gICAgICAgIGlmIChFdm9JbnB1dFNpemVzW3NpemVdKSB7XG4gICAgICAgICAgICB0aGlzLnNpemUgPSBFdm9JbnB1dFNpemVzW3NpemVdO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KCd0aGVtZScpIHNldCBzZXRUaGVtZSh0aGVtZTogc3RyaW5nIHwgRXZvSW5wdXRUaGVtZSkge1xuICAgICAgICBpZiAoRXZvSW5wdXRUaGVtZVt0aGVtZV0pIHtcbiAgICAgICAgICAgIHRoaXMudGhlbWUgPSBFdm9JbnB1dFRoZW1lW3RoZW1lXTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCBpc0Rpc2FibGVkKCkge1xuICAgICAgICBpZiAodGhpcy5sb2FkaW5nKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBnZXQgdmFsdWUoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHNldCB2YWx1ZSh2YWx1ZTogYW55KSB7XG4gICAgICAgIGlmICh2YWx1ZSB8fCB0aGlzLl92YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5fdmFsdWUgPSB0aGlzLnJlbW92ZVByZWZpeCh2YWx1ZSk7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMucHJlZml4ICsgKHRoaXMuX3ZhbHVlIHx8ICcnKSk7XG4gICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IGlucHV0Q2xhc3MoKToge1tjc3NDbGFzczogc3RyaW5nXTogYm9vbGVhbn0ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZm9jdXNlZDogdGhpcy51aVN0YXRlcy5pc0ZvY3VzZWQsXG4gICAgICAgICAgICBkaXNhYmxlZDogdGhpcy5pc0Rpc2FibGVkLFxuICAgICAgICAgICAgdmFsaWQ6IHRoaXMuY3VycmVudFN0YXRlW0V2b0NvbnRyb2xTdGF0ZXMudmFsaWRdLFxuICAgICAgICAgICAgaW52YWxpZDogdGhpcy5jdXJyZW50U3RhdGVbRXZvQ29udHJvbFN0YXRlcy5pbnZhbGlkXSxcbiAgICAgICAgICAgIFtgc2l6ZS0ke3RoaXMuc2l6ZX1gXTogdGhpcy5zaXplICE9PSBFdm9JbnB1dFNpemVzLm5vcm1hbCxcbiAgICAgICAgICAgIFtgdGhlbWUtJHt0aGlzLnRoZW1lfWBdOiB0cnVlLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGdldCBoYXNBZGRpdGlvbmFsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnRvb2x0aXAgfHwgdGhpcy51aVN0YXRlcy5oYXNDdXN0b21Ub29sdGlwIHx8ICEhdGhpcy5pY29uO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHNldCBtYXNrVmFsdWUodmFsdWU6IGFueSkge1xuICAgICAgICBjb25zdCBub3JtYWxpemVkVmFsdWUgPSB2YWx1ZSA/PyAnJztcbiAgICAgICAgaWYgKHRoaXMuaU1hc2spIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnVubWFzayA9PT0gJ3R5cGVkJykge1xuICAgICAgICAgICAgICAgIHRoaXMuaU1hc2sudHlwZWRWYWx1ZSA9IG5vcm1hbGl6ZWRWYWx1ZTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy51bm1hc2spIHtcbiAgICAgICAgICAgICAgICB0aGlzLmlNYXNrLnVubWFza2VkVmFsdWUgPSBub3JtYWxpemVkVmFsdWU7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuaU1hc2sudmFsdWUgPSBub3JtYWxpemVkVmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLndyaXRlVG9FbGVtZW50KG5vcm1hbGl6ZWRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBnZXQgbWFza1ZhbHVlKCk6IGFueSB7XG4gICAgICAgIGlmICghdGhpcy5pTWFzaykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQudmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudW5tYXNrID09PSAndHlwZWQnKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5pTWFzay50eXBlZFZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnVubWFzaykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaU1hc2sudW5tYXNrZWRWYWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5pTWFzay52YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgaXNDbGVhcmFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNsZWFyYWJsZSAmJiAhdGhpcy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgY29uc3QgaW5wdXRFbCA9IHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLm1hc2spIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZU1hc2tJbnN0YW5jZSh0aGlzLm1hc2spO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBmcm9tRXZlbnQoaW5wdXRFbCwgJ2lucHV0JylcbiAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgZGVib3VuY2VUaW1lKHRoaXMuaW5wdXREZWJvdW5jZSksXG4gICAgICAgICAgICAgICAgICAgIG1hcCgoZTogSW5wdXRFdmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaU1hc2spIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5tYXNrVmFsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKGUudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlO1xuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgZW50ZXJab25lKHRoaXMuem9uZSksXG4gICAgICAgICAgICAgICAgICAgIHRhcCgodmFsdWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgICAgICBpZiAodGhpcy5pTWFzaykge1xuICAgICAgICAgICAgdGhpcy5kZXN0cm95TWFzaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBpZiAoIWNoYW5nZXMpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHttYXNrfSA9IGNoYW5nZXM7XG5cbiAgICAgICAgaWYgKG1hc2sgJiYgIW1hc2suZmlyc3RDaGFuZ2UpIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld01hc2tPcHRpb25zID0gbWFzay5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICBpZiAobmV3TWFza09wdGlvbnMpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pTWFzaykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlNYXNrLnVwZGF0ZU9wdGlvbnMobmV3TWFza09wdGlvbnMpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlTWFza0luc3RhbmNlKG5ld01hc2tPcHRpb25zKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZGVzdHJveU1hc2soKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ2hhbmdlKHZhbHVlKSB7XG4gICAgICAgIC8vIHRoaXMgaXMgaW50ZW50aW9uYWxcbiAgICB9XG5cbiAgICBvblRvdWNoZWQoKSB7XG4gICAgICAgIC8vIHRoaXMgaXMgaW50ZW50aW9uYWxcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLmF1dG9Gb2N1cykge1xuICAgICAgICAgICAgdGhpcy5mb2N1cygpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2hlY2tDdXN0b21Ub29sdGlwKCk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgd3JpdGVUb0VsZW1lbnQodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCB2YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdGhpcy5fdmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcblxuICAgICAgICBpZiAodGhpcy5tYXNrKSB7XG4gICAgICAgICAgICB0aGlzLm1hc2tWYWx1ZSA9IHZhbHVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy53cml0ZVRvRWxlbWVudCh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlKHN0YXRlOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBzdGF0ZTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBvbklucHV0Rm9jdXMoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnVpU3RhdGVzLmlzRm9jdXNlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy51aVN0YXRlcy5pc0ZvY3VzZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgICB0aGlzLm9uRm9jdXMuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgb25JbnB1dEJsdXIoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMudWlTdGF0ZXMuaXNGb2N1c2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgICAgIHRoaXMuYmx1ci5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBvblRvb2x0aXBDbGljayhldmVudDogYW55KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIG9uQ2xlYXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMud3JpdGVWYWx1ZSgnJyk7XG4gICAgfVxuXG4gICAgaGlkZVRvb2x0aXAoKSB7XG4gICAgICAgIHRoaXMudG9vbHRpcFZpc2liaWxpdHlUaW1lb3V0ID0gdHJ1ZTtcblxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLnRvb2x0aXBWaXNpYmlsaXR5VGltZW91dCkge1xuICAgICAgICAgICAgICAgIHRoaXMudWlTdGF0ZXMuaXNUb29sdGlwVmlzaWJsZSA9IGZhbHNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCAyNSk7XG4gICAgfVxuXG4gICAgc2hvd1Rvb2x0aXAoKSB7XG4gICAgICAgIHRoaXMudWlTdGF0ZXMuaXNUb29sdGlwVmlzaWJsZSA9IHRydWU7XG4gICAgICAgIHRoaXMudG9vbHRpcFZpc2liaWxpdHlUaW1lb3V0ID0gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gQ29tcG9zaXRpb24gaGFuZGxpbmcgaXMgdGFrZW4gZnJvbTpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvMTEuMC4zL3BhY2thZ2VzL2Zvcm1zL3NyYy9kaXJlY3RpdmVzL2RlZmF1bHRfdmFsdWVfYWNjZXNzb3IudHMjTDE1MlxuICAgIF9jb21wb3NpdGlvblN0YXJ0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jb21wb3NpbmcgPSB0cnVlO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIF9jb21wb3NpdGlvbkVuZCh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NvbXBvc2luZyA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5fY29tcG9zaXRpb25Nb2RlKSB7XG4gICAgICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBwcml2YXRlIHJlbW92ZVByZWZpeCh2YWx1ZTogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgdmFsdWUuaW5kZXhPZih0aGlzLnByZWZpeCkgPT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlKHRoaXMucHJlZml4LCAnJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHByaXZhdGUgY3JlYXRlTWFza0luc3RhbmNlKG9wdHM6IGFueSkge1xuICAgICAgICB0aGlzLmlNYXNrID0gbmV3IElNYXNrLklucHV0TWFzayh0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LCBvcHRzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGRlc3Ryb3lNYXNrKCkge1xuICAgICAgICB0aGlzLmlNYXNrPy5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMuaU1hc2sgPSBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2hlY2tDdXN0b21Ub29sdGlwKCkge1xuICAgICAgICB0aGlzLnVpU3RhdGVzLmhhc0N1c3RvbVRvb2x0aXAgPVxuICAgICAgICAgICAgdGhpcy50b29sdGlwRWxlbWVudCAmJlxuICAgICAgICAgICAgdGhpcy50b29sdGlwRWxlbWVudC5uYXRpdmVFbGVtZW50ICYmXG4gICAgICAgICAgICB0aGlzLnRvb2x0aXBFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW4ubGVuZ3RoID4gMDtcbiAgICAgICAgdGhpcy5jdXN0b21Ub29sdGlwQ2hlY2tlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHZhbGlkYXRlKCkge1xuICAgICAgICBpZiAodGhpcy5tYXNrVmFsaWRhdGlvbiAmJiB0aGlzLm1hc2sgJiYgIXRoaXMuaU1hc2subWFza2VkLmlzQ29tcGxldGUpIHtcbiAgICAgICAgICAgIHJldHVybiB7bWFzazogdHJ1ZX07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxufVxuIiwiPGxhYmVsIGNsYXNzPVwiZXZvLWlucHV0XCIgW2V2b1VpQ2xhc3NdPVwiaW5wdXRDbGFzc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJldm8taW5wdXRfX3ByZWZpeC1jb250ZW50XCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltldm9JbnB1dFByZWZpeENvbnRlbnRdXCIgLz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZXZvLWlucHV0X19wcmVmaXgtaWNvblwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZXZvSW5wdXRJY29uXVwiIC8+XG4gICAgPC9kaXY+XG5cbiAgICBAaWYgKHByZWZpeCkge1xuICAgICAgICA8c3BhbiBjbGFzcz1cImV2by1pbnB1dF9fcHJlZml4XCIgW2V2b1VpQ2xhc3NdPVwie2ZvY3VzZWQ6ICghaXNEaXNhYmxlZCAmJiAhIXZhbHVlKSB8fCB1aVN0YXRlcy5pc0ZvY3VzZWR9XCI+XG4gICAgICAgICAgICB7eyBwcmVmaXggfX1cbiAgICAgICAgPC9zcGFuPlxuICAgIH1cblxuICAgIDxpbnB1dFxuICAgICAgICAjaW5wdXRcbiAgICAgICAgdHlwZT1cInt7IHR5cGUgfX1cIlxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHBsYWNlaG9sZGVyIH19XCJcbiAgICAgICAgY2xhc3M9XCJldm8taW5wdXRfX2ZpZWxkXCJcbiAgICAgICAgW2F0dHIuYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXG4gICAgICAgIFthdHRyLmRhdGEtY3BdPVwiZGF0YUNwXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImlzRGlzYWJsZWRcIlxuICAgICAgICAoZm9jdXMpPVwib25JbnB1dEZvY3VzKCRldmVudClcIlxuICAgICAgICAoYmx1cik9XCJvbklucHV0Qmx1cigkZXZlbnQpXCJcbiAgICAgICAgKGNvbXBvc2l0aW9uc3RhcnQpPVwiX2NvbXBvc2l0aW9uU3RhcnQoKVwiXG4gICAgICAgIChjb21wb3NpdGlvbmVuZCk9XCJfY29tcG9zaXRpb25FbmQoJGV2ZW50LnRhcmdldC52YWx1ZSlcIlxuICAgIC8+XG5cbiAgICBAaWYgKGxvYWRpbmcpIHtcbiAgICAgICAgPGV2by1jaXJjdWxhci1sb2FkZXIgY2xhc3M9XCJldm8taW5wdXRfX2xvYWRpbmctc3Bpbm5lclwiIC8+XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIEBpZiAoaXNDbGVhcmFibGUpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldm8taW5wdXRfX2NsZWFyYWJsZVwiIChjbGljayk9XCJvbkNsZWFyKClcIj5cbiAgICAgICAgICAgICAgICA8ZXZvLWljb24gc2hhcGU9XCJkZWNsaW5lXCIgY2xhc3M9XCJldm8taW5wdXRfX2ljb24tY2xlYXJcIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChoYXNBZGRpdGlvbmFsKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZvLWlucHV0X19hZGRpdGlvbmFsXCI+XG4gICAgICAgICAgICAgICAgQGlmICh0b29sdGlwIHx8IHVpU3RhdGVzLmhhc0N1c3RvbVRvb2x0aXApIHtcbiAgICAgICAgICAgICAgICAgICAgPGV2by1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICBzaGFwZT1cImhlbHBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldm8taW5wdXRfX3Rvb2x0aXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKG1vdXNlZW50ZXIpPVwic2hvd1Rvb2x0aXAoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAobW91c2VsZWF2ZSk9XCJoaWRlVG9vbHRpcCgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblRvb2x0aXBDbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChpY29uKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldm8taW5wdXRfX2ljb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW2F0dHIuc3JjXT1cImljb25cIiAvPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAoIWN1c3RvbVRvb2x0aXBDaGVja2VkIHx8IHVpU3RhdGVzLmlzVG9vbHRpcFZpc2libGUpIHtcbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgI3Rvb2x0aXBDb250YWluZXJcbiAgICAgICAgICAgIFtoaWRkZW5dPVwiIWN1c3RvbVRvb2x0aXBDaGVja2VkXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnZXZvLWlucHV0X190b29sdGlwLWNvbnRhaW5lcic6IHRvb2x0aXB9XCJcbiAgICAgICAgICAgIChjbGljayk9XCJvblRvb2x0aXBDbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgIChtb3VzZWVudGVyKT1cInNob3dUb29sdGlwKClcIlxuICAgICAgICAgICAgKG1vdXNlbGVhdmUpPVwiaGlkZVRvb2x0aXAoKVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IHRvb2x0aXAgfX1cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlt0b29sdGlwXVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbjwvbGFiZWw+XG5cbkBpZiAoc2hvd0Vycm9ycykge1xuICAgIDxldm8tY29udHJvbC1lcnJvciBbZXJyb3JzXT1cImNvbnRyb2wuZXJyb3JzXCIgW2Vycm9yc01lc3NhZ2VzXT1cImVycm9yc01lc3NhZ2VzXCIgLz5cbn1cbiJdfQ==
@@ -17,6 +17,7 @@ export class EvoInputContenteditableComponent extends EvoBaseControl {
17
17
  this.cd = cd;
18
18
  this.injector = injector;
19
19
  this.blur = new EventEmitter();
20
+ this.size = 'normal';
20
21
  this.multiline = true;
21
22
  this.maxLines = 3;
22
23
  this.minLines = 0;
@@ -34,6 +35,7 @@ export class EvoInputContenteditableComponent extends EvoBaseControl {
34
35
  disabled: this._isDisabled,
35
36
  valid: this.currentState[EvoControlStates.valid],
36
37
  invalid: this.currentState[EvoControlStates.invalid],
38
+ [`size_${this.size}`]: this.size !== 'normal',
37
39
  };
38
40
  }
39
41
  ngOnInit() {
@@ -101,7 +103,7 @@ export class EvoInputContenteditableComponent extends EvoBaseControl {
101
103
  };
102
104
  }
103
105
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoInputContenteditableComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
104
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.10", type: EvoInputContenteditableComponent, isStandalone: true, selector: "evo-input-contenteditable", inputs: { multiline: "multiline", placeholder: "placeholder", autoFocus: "autoFocus", maxLines: "maxLines", minLines: "minLines", disabled: "disabled", preventStylingHotkeys: "preventStylingHotkeys" }, outputs: { blur: "blur" }, providers: [
106
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.10", type: EvoInputContenteditableComponent, isStandalone: true, selector: "evo-input-contenteditable", inputs: { size: "size", multiline: "multiline", placeholder: "placeholder", autoFocus: "autoFocus", maxLines: "maxLines", minLines: "minLines", disabled: "disabled", preventStylingHotkeys: "preventStylingHotkeys" }, outputs: { blur: "blur" }, providers: [
105
107
  {
106
108
  provide: NG_VALUE_ACCESSOR,
107
109
  useExisting: forwardRef(() => EvoInputContenteditableComponent),
@@ -112,7 +114,7 @@ export class EvoInputContenteditableComponent extends EvoBaseControl {
112
114
  useExisting: forwardRef(() => EvoInputContenteditableComponent),
113
115
  multi: true,
114
116
  },
115
- ], viewQueries: [{ propertyName: "contenteditable", first: true, predicate: ["contenteditable"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"evo-contenteditable-input\"\n [evoUiClass]=\"inputClass\"\n [style.--evo-contenteditable-lines]=\"multiline ? maxLines : 0\"\n>\n <span\n #contenteditable\n class=\"evo-contenteditable-input__content\"\n [evoUiClass]=\"{'open-lines': minLines > 0}\"\n [attr.contenteditable]=\"!isDisabled\"\n [attr.placeholder]=\"placeholder\"\n [style.--evo-contenteditable-min-lines]=\"multiline ? minLines : 0\"\n (blur)=\"onBlur($event)\"\n (input)=\"onInput($event)\"\n (paste)=\"onPaste($event)\"\n (dragover)=\"$event.preventDefault()\"\n (keydown)=\"onKeydown($event)\"\n ></span>\n</div>\n\n@if (showErrors) {\n <evo-control-error [errors]=\"control.errors\" [errorsMessages]=\"errorsMessages\" />\n}\n", styles: [".evo-contenteditable-input{--evo-input-height: 48px;--evo-input-border-radius: 4px;--evo-input-font-size: 16px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s;display:block;flex-basis:100%;height:auto;min-height:48px;max-height:calc(24px * var(--evo-contenteditable-lines) + 24px);padding:11px 16px;overflow:auto;line-height:24px}.evo-contenteditable-input_focused{border:solid 1px #74706F}.evo-contenteditable-input_invalid{border-color:#ff1817!important}.evo-contenteditable-input_disabled{color:#b0b0b0!important;background-color:#f9fafb!important;border:1px solid #E3E3E3!important;cursor:default;pointer-events:none}.evo-contenteditable-input_disabled .evo-contenteditable-input__content{display:block}.evo-contenteditable-input_single{display:flex;overflow:hidden}.evo-contenteditable-input_single .evo-contenteditable-input__content{-ms-overflow-style:none;scrollbar-width:none;flex-direction:row;overflow-x:scroll;overflow-y:hidden;white-space:nowrap}.evo-contenteditable-input_single .evo-contenteditable-input__content::-webkit-scrollbar{display:none}.evo-contenteditable-input_single .evo-contenteditable-input__content ::ng-deep br{display:none}.evo-contenteditable-input_single .evo-contenteditable-input__content ::ng-deep *{display:inline;white-space:nowrap}.evo-contenteditable-input:focus-within{border:solid 1px #74706F}.evo-contenteditable-input__content{position:relative;display:inline-block;flex-direction:column;width:100%;min-height:calc(24px * var(--evo-contenteditable-min-lines));white-space:pre-wrap;outline:none}.evo-contenteditable-input__content_open-lines{min-height:calc(calc(24px * var(--evo-contenteditable-min-lines)) + 8px)}.evo-contenteditable-input__content:empty:before{content:attr(placeholder);position:absolute;display:block;color:#9b9b9b;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { kind: "component", type: EvoControlErrorComponent, selector: "evo-control-error", inputs: ["errors", "errorsMessages", "showCount"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
117
+ ], viewQueries: [{ propertyName: "contenteditable", first: true, predicate: ["contenteditable"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<div\n class=\"evo-contenteditable-input\"\n [evoUiClass]=\"inputClass\"\n [style.--evo-contenteditable-lines]=\"multiline ? maxLines : 0\"\n>\n <span\n #contenteditable\n class=\"evo-contenteditable-input__content\"\n [evoUiClass]=\"{'open-lines': minLines > 0}\"\n [attr.contenteditable]=\"!isDisabled\"\n [attr.placeholder]=\"placeholder\"\n [style.--evo-contenteditable-min-lines]=\"multiline ? minLines : 0\"\n (blur)=\"onBlur($event)\"\n (input)=\"onInput($event)\"\n (paste)=\"onPaste($event)\"\n (dragover)=\"$event.preventDefault()\"\n (keydown)=\"onKeydown($event)\"\n ></span>\n</div>\n\n@if (showErrors) {\n <evo-control-error [errors]=\"control.errors\" [errorsMessages]=\"errorsMessages\" />\n}\n", styles: [".evo-contenteditable-input{--evo-input-height: 40px;--evo-input-border-radius: 4px;--evo-input-font-size: 14px;--evo-input-line-height: 24px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);line-height:var(--evo-input-line-height);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s;display:block;flex-basis:100%;height:auto;min-height:40px;max-height:calc(24px * var(--evo-contenteditable-lines) + 24px);padding:7px 11px;overflow:auto;line-height:24px}.evo-contenteditable-input_focused{border:solid 1px #74706F}.evo-contenteditable-input_invalid{border-color:#ff1817!important}.evo-contenteditable-input_disabled{color:#b0b0b0!important;background-color:#f9fafb!important;border:1px solid #E3E3E3!important;cursor:default;pointer-events:none}.evo-contenteditable-input_disabled .evo-contenteditable-input__content{display:block}.evo-contenteditable-input_single{display:flex;overflow:hidden}.evo-contenteditable-input_single .evo-contenteditable-input__content{-ms-overflow-style:none;scrollbar-width:none;flex-direction:row;overflow-x:scroll;overflow-y:hidden;white-space:nowrap}.evo-contenteditable-input_single .evo-contenteditable-input__content::-webkit-scrollbar{display:none}.evo-contenteditable-input_single .evo-contenteditable-input__content ::ng-deep br{display:none}.evo-contenteditable-input_single .evo-contenteditable-input__content ::ng-deep *{display:inline;white-space:nowrap}.evo-contenteditable-input_size_small{min-height:32px;padding:3px 11px}.evo-contenteditable-input:focus-within{border:solid 1px #74706F}.evo-contenteditable-input__content{position:relative;display:inline-block;flex-direction:column;width:100%;min-height:calc(24px * var(--evo-contenteditable-min-lines));white-space:pre-wrap;outline:none}.evo-contenteditable-input__content_open-lines{min-height:calc(calc(24px * var(--evo-contenteditable-min-lines)) + 8px)}.evo-contenteditable-input__content:empty:before{content:attr(placeholder);position:absolute;display:block;color:#9b9b9b;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { kind: "component", type: EvoControlErrorComponent, selector: "evo-control-error", inputs: ["errors", "errorsMessages", "showCount"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
116
118
  }
117
119
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: EvoInputContenteditableComponent, decorators: [{
118
120
  type: Component,
@@ -127,12 +129,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
127
129
  useExisting: forwardRef(() => EvoInputContenteditableComponent),
128
130
  multi: true,
129
131
  },
130
- ], standalone: true, imports: [EvoUiClassDirective, EvoControlErrorComponent], template: "<div\n class=\"evo-contenteditable-input\"\n [evoUiClass]=\"inputClass\"\n [style.--evo-contenteditable-lines]=\"multiline ? maxLines : 0\"\n>\n <span\n #contenteditable\n class=\"evo-contenteditable-input__content\"\n [evoUiClass]=\"{'open-lines': minLines > 0}\"\n [attr.contenteditable]=\"!isDisabled\"\n [attr.placeholder]=\"placeholder\"\n [style.--evo-contenteditable-min-lines]=\"multiline ? minLines : 0\"\n (blur)=\"onBlur($event)\"\n (input)=\"onInput($event)\"\n (paste)=\"onPaste($event)\"\n (dragover)=\"$event.preventDefault()\"\n (keydown)=\"onKeydown($event)\"\n ></span>\n</div>\n\n@if (showErrors) {\n <evo-control-error [errors]=\"control.errors\" [errorsMessages]=\"errorsMessages\" />\n}\n", styles: [".evo-contenteditable-input{--evo-input-height: 48px;--evo-input-border-radius: 4px;--evo-input-font-size: 16px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s;display:block;flex-basis:100%;height:auto;min-height:48px;max-height:calc(24px * var(--evo-contenteditable-lines) + 24px);padding:11px 16px;overflow:auto;line-height:24px}.evo-contenteditable-input_focused{border:solid 1px #74706F}.evo-contenteditable-input_invalid{border-color:#ff1817!important}.evo-contenteditable-input_disabled{color:#b0b0b0!important;background-color:#f9fafb!important;border:1px solid #E3E3E3!important;cursor:default;pointer-events:none}.evo-contenteditable-input_disabled .evo-contenteditable-input__content{display:block}.evo-contenteditable-input_single{display:flex;overflow:hidden}.evo-contenteditable-input_single .evo-contenteditable-input__content{-ms-overflow-style:none;scrollbar-width:none;flex-direction:row;overflow-x:scroll;overflow-y:hidden;white-space:nowrap}.evo-contenteditable-input_single .evo-contenteditable-input__content::-webkit-scrollbar{display:none}.evo-contenteditable-input_single .evo-contenteditable-input__content ::ng-deep br{display:none}.evo-contenteditable-input_single .evo-contenteditable-input__content ::ng-deep *{display:inline;white-space:nowrap}.evo-contenteditable-input:focus-within{border:solid 1px #74706F}.evo-contenteditable-input__content{position:relative;display:inline-block;flex-direction:column;width:100%;min-height:calc(24px * var(--evo-contenteditable-min-lines));white-space:pre-wrap;outline:none}.evo-contenteditable-input__content_open-lines{min-height:calc(calc(24px * var(--evo-contenteditable-min-lines)) + 8px)}.evo-contenteditable-input__content:empty:before{content:attr(placeholder);position:absolute;display:block;color:#9b9b9b;pointer-events:none}\n"] }]
132
+ ], standalone: true, imports: [EvoUiClassDirective, EvoControlErrorComponent], template: "<div\n class=\"evo-contenteditable-input\"\n [evoUiClass]=\"inputClass\"\n [style.--evo-contenteditable-lines]=\"multiline ? maxLines : 0\"\n>\n <span\n #contenteditable\n class=\"evo-contenteditable-input__content\"\n [evoUiClass]=\"{'open-lines': minLines > 0}\"\n [attr.contenteditable]=\"!isDisabled\"\n [attr.placeholder]=\"placeholder\"\n [style.--evo-contenteditable-min-lines]=\"multiline ? minLines : 0\"\n (blur)=\"onBlur($event)\"\n (input)=\"onInput($event)\"\n (paste)=\"onPaste($event)\"\n (dragover)=\"$event.preventDefault()\"\n (keydown)=\"onKeydown($event)\"\n ></span>\n</div>\n\n@if (showErrors) {\n <evo-control-error [errors]=\"control.errors\" [errorsMessages]=\"errorsMessages\" />\n}\n", styles: [".evo-contenteditable-input{--evo-input-height: 40px;--evo-input-border-radius: 4px;--evo-input-font-size: 14px;--evo-input-line-height: 24px;display:flex;align-items:center;height:var(--evo-input-height);color:#212121;font-weight:400;font-size:var(--evo-input-font-size);font-family:var(--evo-font);line-height:var(--evo-input-line-height);white-space:nowrap;background-color:#fff;border:1px solid #C6C6C6;border-radius:var(--evo-input-border-radius);outline:none;transition:color .3s,box-shadow .3s,background .3s,border .3s;display:block;flex-basis:100%;height:auto;min-height:40px;max-height:calc(24px * var(--evo-contenteditable-lines) + 24px);padding:7px 11px;overflow:auto;line-height:24px}.evo-contenteditable-input_focused{border:solid 1px #74706F}.evo-contenteditable-input_invalid{border-color:#ff1817!important}.evo-contenteditable-input_disabled{color:#b0b0b0!important;background-color:#f9fafb!important;border:1px solid #E3E3E3!important;cursor:default;pointer-events:none}.evo-contenteditable-input_disabled .evo-contenteditable-input__content{display:block}.evo-contenteditable-input_single{display:flex;overflow:hidden}.evo-contenteditable-input_single .evo-contenteditable-input__content{-ms-overflow-style:none;scrollbar-width:none;flex-direction:row;overflow-x:scroll;overflow-y:hidden;white-space:nowrap}.evo-contenteditable-input_single .evo-contenteditable-input__content::-webkit-scrollbar{display:none}.evo-contenteditable-input_single .evo-contenteditable-input__content ::ng-deep br{display:none}.evo-contenteditable-input_single .evo-contenteditable-input__content ::ng-deep *{display:inline;white-space:nowrap}.evo-contenteditable-input_size_small{min-height:32px;padding:3px 11px}.evo-contenteditable-input:focus-within{border:solid 1px #74706F}.evo-contenteditable-input__content{position:relative;display:inline-block;flex-direction:column;width:100%;min-height:calc(24px * var(--evo-contenteditable-min-lines));white-space:pre-wrap;outline:none}.evo-contenteditable-input__content_open-lines{min-height:calc(calc(24px * var(--evo-contenteditable-min-lines)) + 8px)}.evo-contenteditable-input__content:empty:before{content:attr(placeholder);position:absolute;display:block;color:#9b9b9b;pointer-events:none}\n"] }]
131
133
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.Injector }], propDecorators: { contenteditable: [{
132
134
  type: ViewChild,
133
135
  args: ['contenteditable', { read: ElementRef, static: true }]
134
136
  }], blur: [{
135
137
  type: Output
138
+ }], size: [{
139
+ type: Input
136
140
  }], multiline: [{
137
141
  type: Input
138
142
  }], placeholder: [{
@@ -148,4 +152,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImpo
148
152
  }], preventStylingHotkeys: [{
149
153
  type: Input
150
154
  }] } });
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLWlucHV0LWNvbnRlbnRlZGl0YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8taW5wdXQtY29udGVudGVkaXRhYmxlL2V2by1pbnB1dC1jb250ZW50ZWRpdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLWlucHV0LWNvbnRlbnRlZGl0YWJsZS9ldm8taW5wdXQtY29udGVudGVkaXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUVWLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBdUIsaUJBQWlCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDaEcsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDOztBQXNCNUUsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLGNBQWM7YUFDaEQsbUJBQWMsR0FBRztRQUM3QixFQUFFLEVBQUUsTUFBTTtRQUNWLEVBQUUsRUFBRSxNQUFNO1FBQ1YsRUFBRSxFQUFFLE1BQU07S0FDYixBQUo2QixDQUk1QjtJQW9CRixZQUNxQixFQUFxQixFQUM1QixRQUFr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QUNKLHlIQVdvQyxVQUFVLGtFQy9DbkQsdXlCQXVCQSw4bUVEZWMsbUJBQW1CLDBGQUFFLHdCQUF3Qjs7NEZBRTlDLGdDQUFnQztrQkFwQjVDLFNBQVM7K0JBQ0ksMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGlDQUFpQyxDQUFDOzRCQUMvRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDt3QkFDRDs0QkFDSSxPQUFPLEVBQUUsY0FBYzs0QkFDdkIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsaUNBQWlDLENBQUM7NEJBQy9ELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKLGNBQ1csSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUUsd0JBQXdCLENBQUM7NkdBU2lCLGVBQWU7c0JBQXZGLFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBRXBELElBQUk7c0JBQWIsTUFBTTtnQkFFRSxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRW9CLFFBQVE7c0JBQWpDLEtBQUs7Z0JBQ29CLHFCQUFxQjtzQkFBOUMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5qZWN0b3IsXG4gICAgSW5wdXQsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1J9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7RXZvQmFzZUNvbnRyb2x9IGZyb20gJy4uLy4uL2NvbW1vbi9ldm8tYmFzZS1jb250cm9sJztcbmltcG9ydCB7RXZvQ29udHJvbFN0YXRlc30gZnJvbSAnLi4vLi4vY29tbW9uL2V2by1jb250cm9sLXN0YXRlLW1hbmFnZXIvZXZvLWNvbnRyb2wtc3RhdGVzLmVudW0nO1xuaW1wb3J0IHtjbGVhck11bHRpbGluZX0gZnJvbSAnLi91dGlscy9jbGVhci1tdWx0aWxpbmUnO1xuaW1wb3J0IHtFdm9Db250cm9sRXJyb3JDb21wb25lbnR9IGZyb20gJy4uL2V2by1jb250cm9sLWVycm9yL2V2by1jb250cm9sLWVycm9yLmNvbXBvbmVudCc7XG5pbXBvcnQge0V2b1VpQ2xhc3NEaXJlY3RpdmV9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZXZvLXVpLWNsYXNzLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXZvLWlucHV0LWNvbnRlbnRlZGl0YWJsZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2V2by1pbnB1dC1jb250ZW50ZWRpdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2V2by1pbnB1dC1jb250ZW50ZWRpdGFibGUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFdm9JbnB1dENvbnRlbnRlZGl0YWJsZUNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRXZvQmFzZUNvbnRyb2wsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBFdm9JbnB1dENvbnRlbnRlZGl0YWJsZUNvbXBvbmVudCksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0V2b1VpQ2xhc3NEaXJlY3RpdmUsIEV2b0NvbnRyb2xFcnJvckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEV2b0lucHV0Q29udGVudGVkaXRhYmxlQ29tcG9uZW50IGV4dGVuZHMgRXZvQmFzZUNvbnRyb2wgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgICBzdGF0aWMgcmVhZG9ubHkgU1RZTEVfS0VZQ09ERVMgPSBbXG4gICAgICAgIDY2LCAvLyBCIGJcbiAgICAgICAgNzMsIC8vIEkgaVxuICAgICAgICA4NSwgLy8gVSB1XG4gICAgXTtcblxuICAgIEBWaWV3Q2hpbGQoJ2NvbnRlbnRlZGl0YWJsZScsIHtyZWFkOiBFbGVtZW50UmVmLCBzdGF0aWM6IHRydWV9KSByZWFkb25seSBjb250ZW50ZWRpdGFibGU6IEVsZW1lbnRSZWY7XG5cbiAgICBAT3V0cHV0KCkgYmx1ciA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9jdXNFdmVudD4oKTtcblxuICAgIEBJbnB1dCgpIG11bHRpbGluZSA9IHRydWU7XG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgICBASW5wdXQoKSBhdXRvRm9jdXM6IGJvb2xlYW47XG4gICAgQElucHV0KCkgbWF4TGluZXMgPSAzO1xuICAgIEBJbnB1dCgpIG1pbkxpbmVzID0gMDtcblxuICAgIEBJbnB1dCgpIHByaXZhdGUgcmVhZG9ubHkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBwcml2YXRlIHJlYWRvbmx5IHByZXZlbnRTdHlsaW5nSG90a2V5cyA9IHRydWU7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBwcml2YXRlIG9uQ2hhbmdlOiBhbnk7XG4gICAgcHJpdmF0ZSBvblRvdWNoZWQ6ICgpID0+IHZvaWQ7XG4gICAgcHJpdmF0ZSBfaXNEaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICkge1xuICAgICAgICBzdXBlcihpbmplY3Rvcik7XG4gICAgfVxuXG4gICAgZ2V0IGlzRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0Rpc2FibGVkIHx8IHRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgZ2V0IGlucHV0Q2xhc3MoKToge1tjc3NDbGFzczogc3RyaW5nXTogYm9vbGVhbn0ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgb3BlbjogdGhpcy5taW5MaW5lcyA+IDAsXG4gICAgICAgICAgICBzaW5nbGU6ICF0aGlzLm11bHRpbGluZSxcbiAgICAgICAgICAgIGRpc2FibGVkOiB0aGlzLl9pc0Rpc2FibGVkLFxuICAgICAgICAgICAgdmFsaWQ6IHRoaXMuY3VycmVudFN0YXRlW0V2b0NvbnRyb2xTdGF0ZXMudmFsaWRdLFxuICAgICAgICAgICAgaW52YWxpZDogdGhpcy5jdXJyZW50U3RhdGVbRXZvQ29udHJvbFN0YXRlcy5pbnZhbGlkXSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy53cmFwU2V0VmFsdWUoKTtcblxuICAgICAgICBpZiAodGhpcy5hdXRvRm9jdXMpIHtcbiAgICAgICAgICAgIHRoaXMuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRlbnRlZGl0YWJsZS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250ZW50ZWRpdGFibGUubmF0aXZlRWxlbWVudC5pbm5lclRleHQgPSB0aGlzLmNsZWFyTXVsdGlsaW5lKHZhbHVlKTtcbiAgICB9XG5cbiAgICBvbkJsdXIoZXZlbnQ6IEZvY3VzRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ibHVyLmVtaXQoZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE5ldyBsaW5lIHRyaWdnZXJzIGNoYW5nZXMgaW4gYm90aCBtb2Rlc1xuICAgICAqIEhhbmRsZSB0aGlzIGNhc2UgaGVyZSBpZiB5b3UgZm91bmQgdGhpcyBiZWhhdmlvdXIgcmVkdW5kYW50XG4gICAgICovXG4gICAgb25JbnB1dChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMub25Ub3VjaGVkKSB7XG4gICAgICAgICAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMub25DaGFuZ2UpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gKChldmVudCBhcyBJbnB1dEV2ZW50KS50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dDtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5jbGVhck11bHRpbGluZSh2YWx1ZSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25QYXN0ZShldmVudDogQ2xpcGJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgY29uc3QgY29udGVudCA9IGV2ZW50LmNsaXBib2FyZERhdGE/LmdldERhdGEoJ3RleHQvcGxhaW4nKTtcbiAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2luc2VydFRleHQnLCBmYWxzZSwgdGhpcy5jbGVhck11bHRpbGluZShjb250ZW50KSk7XG4gICAgfVxuXG4gICAgb25LZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHRoaXMucHJldmVudFN0eWxpbmdIb3RrZXlzICYmXG4gICAgICAgICAgICAoZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5KSAmJlxuICAgICAgICAgICAgRXZvSW5wdXRDb250ZW50ZWRpdGFibGVDb21wb25lbnQuU1RZTEVfS0VZQ09ERVMuaW5jbHVkZXMoZXZlbnQua2V5Q29kZSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICAgIH1cblxuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLl9pc0Rpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhck11bHRpbGluZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGNsZWFyTXVsdGlsaW5lKHZhbHVlLCB0aGlzLm11bHRpbGluZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB3cmFwU2V0VmFsdWUoKSB7XG4gICAgICAgIGNvbnN0IG9yaWdpbmFsU2V0VmFsdWUgPSB0aGlzLmNvbnRyb2wuc2V0VmFsdWU7XG5cbiAgICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlID0gKHZhbHVlOiB1bmtub3duLCBvcHRpb25zPzogb2JqZWN0KSA9PiB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIHZhbHVlID0gdGhpcy5jbGVhck11bHRpbGluZSh2YWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gb3JpZ2luYWxTZXRWYWx1ZS5jYWxsKHRoaXMuY29udHJvbCwgdmFsdWUsIG9wdGlvbnMpO1xuICAgICAgICB9O1xuICAgIH1cbn1cbiIsIjxkaXZcbiAgICBjbGFzcz1cImV2by1jb250ZW50ZWRpdGFibGUtaW5wdXRcIlxuICAgIFtldm9VaUNsYXNzXT1cImlucHV0Q2xhc3NcIlxuICAgIFtzdHlsZS4tLWV2by1jb250ZW50ZWRpdGFibGUtbGluZXNdPVwibXVsdGlsaW5lID8gbWF4TGluZXMgOiAwXCJcbj5cbiAgICA8c3BhblxuICAgICAgICAjY29udGVudGVkaXRhYmxlXG4gICAgICAgIGNsYXNzPVwiZXZvLWNvbnRlbnRlZGl0YWJsZS1pbnB1dF9fY29udGVudFwiXG4gICAgICAgIFtldm9VaUNsYXNzXT1cInsnb3Blbi1saW5lcyc6IG1pbkxpbmVzID4gMH1cIlxuICAgICAgICBbYXR0ci5jb250ZW50ZWRpdGFibGVdPVwiIWlzRGlzYWJsZWRcIlxuICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgIFtzdHlsZS4tLWV2by1jb250ZW50ZWRpdGFibGUtbWluLWxpbmVzXT1cIm11bHRpbGluZSA/IG1pbkxpbmVzIDogMFwiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcbiAgICAgICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgICAgIChwYXN0ZSk9XCJvblBhc3RlKCRldmVudClcIlxuICAgICAgICAoZHJhZ292ZXIpPVwiJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIlxuICAgICAgICAoa2V5ZG93bik9XCJvbktleWRvd24oJGV2ZW50KVwiXG4gICAgPjwvc3Bhbj5cbjwvZGl2PlxuXG5AaWYgKHNob3dFcnJvcnMpIHtcbiAgICA8ZXZvLWNvbnRyb2wtZXJyb3IgW2Vycm9yc109XCJjb250cm9sLmVycm9yc1wiIFtlcnJvcnNNZXNzYWdlc109XCJlcnJvcnNNZXNzYWdlc1wiIC8+XG59XG4iXX0=
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLWlucHV0LWNvbnRlbnRlZGl0YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8taW5wdXQtY29udGVudGVkaXRhYmxlL2V2by1pbnB1dC1jb250ZW50ZWRpdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLWlucHV0LWNvbnRlbnRlZGl0YWJsZS9ldm8taW5wdXQtY29udGVudGVkaXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUVWLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBdUIsaUJBQWlCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDaEcsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlDQUF5QyxDQUFDOztBQXVCNUUsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLGNBQWM7YUFDaEQsbUJBQWMsR0FBRztRQUM3QixFQUFFLEVBQUUsTUFBTTtRQUNWLEVBQUUsRUFBRSxNQUFNO1FBQ1YsRUFBRSxFQUFFLE1BQU07S0FDYixBQUo2QixDQUk1QjtJQXFCRixZQUNxQixFQUFxQixFQUM1QixRQUFrQjtRQUU1QixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFIQyxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUM1QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBbkJ0QixTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUV2QyxTQUFJLEdBQWdDLFFBQVEsQ0FBQztRQUM3QyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBR2pCLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFDYixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBRUksYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQiwwQkFBcUIsR0FBRyxJQUFJLENBQUM7UUFLL0MsZ0JBQVcsR0FBRyxLQUFLLENBQUM7SUFPNUIsQ0FBQztJQUVELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQzdDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDVixPQUFPO1lBQ0gsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQztZQUN2QixNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUztZQUN2QixRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDMUIsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDO1lBQ2hELE9BQU8sRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztZQUNwRCxDQUFDLFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRO1NBQ2hELENBQUM7SUFDTixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUVwQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDakIsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVELDJCQUEyQjtJQUMzQixnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBYTtRQUNwQixJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWlCO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxPQUFPLENBQUMsS0FBWTtRQUNoQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDckIsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2hCLE1BQU0sS0FBSyxHQUFLLEtBQW9CLENBQUMsTUFBc0IsQ0FBQyxTQUFTLENBQUM7WUFDdEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDOUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBcUI7UUFDekIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzNELFFBQVEsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFvQjtRQUMxQixJQUNJLElBQUksQ0FBQyxxQkFBcUI7WUFDMUIsQ0FBQyxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUM7WUFDaEMsZ0NBQWdDLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQ3pFLENBQUM7WUFDQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNMLENBQUM7SUFFRCwyQkFBMkI7SUFDM0IsaUJBQWlCLENBQUMsRUFBTztRQUNyQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsVUFBbUI7UUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFDOUIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU8sY0FBYyxDQUFDLEtBQWE7UUFDaEMsT0FBTyxjQUFjLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRU8sWUFBWTtRQUNoQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBRS9DLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxHQUFHLENBQUMsS0FBYyxFQUFFLE9BQWdCLEVBQUUsRUFBRTtZQUN6RCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUM1QixLQUFLLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QyxDQUFDO1lBQ0QsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDL0QsQ0FBQyxDQUFDO0lBQ04sQ0FBQzsrR0EvSFEsZ0NBQWdDO21HQUFoQyxnQ0FBZ0MsMlRBZjlCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQztnQkFDL0QsS0FBSyxFQUFFLElBQUk7YUFDZDtZQUNEO2dCQUNJLE9BQU8sRUFBRSxjQUFjO2dCQUN2QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO2dCQUMvRCxLQUFLLEVBQUUsSUFBSTthQUNkO1NBQ0oseUhBV29DLFVBQVUsa0VDaERuRCx1eUJBdUJBLDJ2RURnQmMsbUJBQW1CLDBGQUFFLHdCQUF3Qjs7NEZBRTlDLGdDQUFnQztrQkFwQjVDLFNBQVM7K0JBQ0ksMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGlDQUFpQyxDQUFDOzRCQUMvRCxLQUFLLEVBQUUsSUFBSTt5QkFDZDt3QkFDRDs0QkFDSSxPQUFPLEVBQUUsY0FBYzs0QkFDdkIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsaUNBQWlDLENBQUM7NEJBQy9ELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKLGNBQ1csSUFBSSxXQUNQLENBQUMsbUJBQW1CLEVBQUUsd0JBQXdCLENBQUM7NkdBU2lCLGVBQWU7c0JBQXZGLFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBRXBELElBQUk7c0JBQWIsTUFBTTtnQkFFRSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVvQixRQUFRO3NCQUFqQyxLQUFLO2dCQUNvQixxQkFBcUI7c0JBQTlDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEluamVjdG9yLFxuICAgIElucHV0LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0V2b0Jhc2VDb250cm9sfSBmcm9tICcuLi8uLi9jb21tb24vZXZvLWJhc2UtY29udHJvbCc7XG5pbXBvcnQge0V2b0NvbnRyb2xTdGF0ZXN9IGZyb20gJy4uLy4uL2NvbW1vbi9ldm8tY29udHJvbC1zdGF0ZS1tYW5hZ2VyL2V2by1jb250cm9sLXN0YXRlcy5lbnVtJztcbmltcG9ydCB7Y2xlYXJNdWx0aWxpbmV9IGZyb20gJy4vdXRpbHMvY2xlYXItbXVsdGlsaW5lJztcbmltcG9ydCB7RXZvQ29udHJvbEVycm9yQ29tcG9uZW50fSBmcm9tICcuLi9ldm8tY29udHJvbC1lcnJvci9ldm8tY29udHJvbC1lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHtFdm9VaUNsYXNzRGlyZWN0aXZlfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2V2by11aS1jbGFzcy5kaXJlY3RpdmUnO1xuaW1wb3J0IHtFdm9JbnB1dENvbnRlbnRlZGl0YWJsZVNpemV9IGZyb20gJy4vdHlwZXMvZXZvLWlucHV0LWNvbnRlbnRlZGl0YWJsZS1zaXplJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldm8taW5wdXQtY29udGVudGVkaXRhYmxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXZvLWlucHV0LWNvbnRlbnRlZGl0YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZXZvLWlucHV0LWNvbnRlbnRlZGl0YWJsZS5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEV2b0lucHV0Q29udGVudGVkaXRhYmxlQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBFdm9CYXNlQ29udHJvbCxcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEV2b0lucHV0Q29udGVudGVkaXRhYmxlQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbRXZvVWlDbGFzc0RpcmVjdGl2ZSwgRXZvQ29udHJvbEVycm9yQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgRXZvSW5wdXRDb250ZW50ZWRpdGFibGVDb21wb25lbnQgZXh0ZW5kcyBFdm9CYXNlQ29udHJvbCBpbXBsZW1lbnRzIE9uSW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICAgIHN0YXRpYyByZWFkb25seSBTVFlMRV9LRVlDT0RFUyA9IFtcbiAgICAgICAgNjYsIC8vIEIgYlxuICAgICAgICA3MywgLy8gSSBpXG4gICAgICAgIDg1LCAvLyBVIHVcbiAgICBdO1xuXG4gICAgQFZpZXdDaGlsZCgnY29udGVudGVkaXRhYmxlJywge3JlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZX0pIHJlYWRvbmx5IGNvbnRlbnRlZGl0YWJsZTogRWxlbWVudFJlZjtcblxuICAgIEBPdXRwdXQoKSBibHVyID0gbmV3IEV2ZW50RW1pdHRlcjxGb2N1c0V2ZW50PigpO1xuXG4gICAgQElucHV0KCkgc2l6ZTogRXZvSW5wdXRDb250ZW50ZWRpdGFibGVTaXplID0gJ25vcm1hbCc7XG4gICAgQElucHV0KCkgbXVsdGlsaW5lID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGF1dG9Gb2N1czogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBtYXhMaW5lcyA9IDM7XG4gICAgQElucHV0KCkgbWluTGluZXMgPSAwO1xuXG4gICAgQElucHV0KCkgcHJpdmF0ZSByZWFkb25seSBkaXNhYmxlZCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHByaXZhdGUgcmVhZG9ubHkgcHJldmVudFN0eWxpbmdIb3RrZXlzID0gdHJ1ZTtcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgIHByaXZhdGUgb25DaGFuZ2U6IGFueTtcbiAgICBwcml2YXRlIG9uVG91Y2hlZDogKCkgPT4gdm9pZDtcbiAgICBwcml2YXRlIF9pc0Rpc2FibGVkID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yKTtcbiAgICB9XG5cbiAgICBnZXQgaXNEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzRGlzYWJsZWQgfHwgdGhpcy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBnZXQgaW5wdXRDbGFzcygpOiB7W2Nzc0NsYXNzOiBzdHJpbmddOiBib29sZWFufSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBvcGVuOiB0aGlzLm1pbkxpbmVzID4gMCxcbiAgICAgICAgICAgIHNpbmdsZTogIXRoaXMubXVsdGlsaW5lLFxuICAgICAgICAgICAgZGlzYWJsZWQ6IHRoaXMuX2lzRGlzYWJsZWQsXG4gICAgICAgICAgICB2YWxpZDogdGhpcy5jdXJyZW50U3RhdGVbRXZvQ29udHJvbFN0YXRlcy52YWxpZF0sXG4gICAgICAgICAgICBpbnZhbGlkOiB0aGlzLmN1cnJlbnRTdGF0ZVtFdm9Db250cm9sU3RhdGVzLmludmFsaWRdLFxuICAgICAgICAgICAgW2BzaXplXyR7dGhpcy5zaXplfWBdOiB0aGlzLnNpemUgIT09ICdub3JtYWwnLFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLndyYXBTZXRWYWx1ZSgpO1xuXG4gICAgICAgIGlmICh0aGlzLmF1dG9Gb2N1cykge1xuICAgICAgICAgICAgdGhpcy5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGVudGVkaXRhYmxlLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRlbnRlZGl0YWJsZS5uYXRpdmVFbGVtZW50LmlubmVyVGV4dCA9IHRoaXMuY2xlYXJNdWx0aWxpbmUodmFsdWUpO1xuICAgIH1cblxuICAgIG9uQmx1cihldmVudDogRm9jdXNFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJsdXIuZW1pdChldmVudCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTmV3IGxpbmUgdHJpZ2dlcnMgY2hhbmdlcyBpbiBib3RoIG1vZGVzXG4gICAgICogSGFuZGxlIHRoaXMgY2FzZSBoZXJlIGlmIHlvdSBmb3VuZCB0aGlzIGJlaGF2aW91ciByZWR1bmRhbnRcbiAgICAgKi9cbiAgICBvbklucHV0KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5vblRvdWNoZWQpIHtcbiAgICAgICAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5vbkNoYW5nZSkge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSAoKGV2ZW50IGFzIElucHV0RXZlbnQpLnRhcmdldCBhcyBIVE1MRWxlbWVudCkuaW5uZXJUZXh0O1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmNsZWFyTXVsdGlsaW5lKHZhbHVlKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblBhc3RlKGV2ZW50OiBDbGlwYm9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBjb25zdCBjb250ZW50ID0gZXZlbnQuY2xpcGJvYXJkRGF0YT8uZ2V0RGF0YSgndGV4dC9wbGFpbicpO1xuICAgICAgICBkb2N1bWVudC5leGVjQ29tbWFuZCgnaW5zZXJ0VGV4dCcsIGZhbHNlLCB0aGlzLmNsZWFyTXVsdGlsaW5lKGNvbnRlbnQpKTtcbiAgICB9XG5cbiAgICBvbktleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5wcmV2ZW50U3R5bGluZ0hvdGtleXMgJiZcbiAgICAgICAgICAgIChldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkpICYmXG4gICAgICAgICAgICBFdm9JbnB1dENvbnRlbnRlZGl0YWJsZUNvbXBvbmVudC5TVFlMRV9LRVlDT0RFUy5pbmNsdWRlcyhldmVudC5rZXlDb2RlKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2lzRGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsZWFyTXVsdGlsaW5lKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gY2xlYXJNdWx0aWxpbmUodmFsdWUsIHRoaXMubXVsdGlsaW5lKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHdyYXBTZXRWYWx1ZSgpIHtcbiAgICAgICAgY29uc3Qgb3JpZ2luYWxTZXRWYWx1ZSA9IHRoaXMuY29udHJvbC5zZXRWYWx1ZTtcblxuICAgICAgICB0aGlzLmNvbnRyb2wuc2V0VmFsdWUgPSAodmFsdWU6IHVua25vd24sIG9wdGlvbnM/OiBvYmplY3QpID0+IHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgdmFsdWUgPSB0aGlzLmNsZWFyTXVsdGlsaW5lKHZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBvcmlnaW5hbFNldFZhbHVlLmNhbGwodGhpcy5jb250cm9sLCB2YWx1ZSwgb3B0aW9ucyk7XG4gICAgICAgIH07XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwiZXZvLWNvbnRlbnRlZGl0YWJsZS1pbnB1dFwiXG4gICAgW2V2b1VpQ2xhc3NdPVwiaW5wdXRDbGFzc1wiXG4gICAgW3N0eWxlLi0tZXZvLWNvbnRlbnRlZGl0YWJsZS1saW5lc109XCJtdWx0aWxpbmUgPyBtYXhMaW5lcyA6IDBcIlxuPlxuICAgIDxzcGFuXG4gICAgICAgICNjb250ZW50ZWRpdGFibGVcbiAgICAgICAgY2xhc3M9XCJldm8tY29udGVudGVkaXRhYmxlLWlucHV0X19jb250ZW50XCJcbiAgICAgICAgW2V2b1VpQ2xhc3NdPVwieydvcGVuLWxpbmVzJzogbWluTGluZXMgPiAwfVwiXG4gICAgICAgIFthdHRyLmNvbnRlbnRlZGl0YWJsZV09XCIhaXNEaXNhYmxlZFwiXG4gICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgICAgW3N0eWxlLi0tZXZvLWNvbnRlbnRlZGl0YWJsZS1taW4tbGluZXNdPVwibXVsdGlsaW5lID8gbWluTGluZXMgOiAwXCJcbiAgICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICAgICAgICAoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgKHBhc3RlKT1cIm9uUGFzdGUoJGV2ZW50KVwiXG4gICAgICAgIChkcmFnb3Zlcik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gICAgICAgIChrZXlkb3duKT1cIm9uS2V5ZG93bigkZXZlbnQpXCJcbiAgICA+PC9zcGFuPlxuPC9kaXY+XG5cbkBpZiAoc2hvd0Vycm9ycykge1xuICAgIDxldm8tY29udHJvbC1lcnJvciBbZXJyb3JzXT1cImNvbnRyb2wuZXJyb3JzXCIgW2Vycm9yc01lc3NhZ2VzXT1cImVycm9yc01lc3NhZ2VzXCIgLz5cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLWlucHV0LWNvbnRlbnRlZGl0YWJsZS1zaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLWlucHV0LWNvbnRlbnRlZGl0YWJsZS90eXBlcy9ldm8taW5wdXQtY29udGVudGVkaXRhYmxlLXNpemUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RXZvU2l6ZX0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3R5cGVzJztcblxuZXhwb3J0IHR5cGUgRXZvSW5wdXRDb250ZW50ZWRpdGFibGVTaXplID0gRXh0cmFjdDxFdm9TaXplLCAnc21hbGwnIHwgJ25vcm1hbCc+O1xuIl19