myrta-ui 1.1.12 → 1.1.14

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.
@@ -25,7 +25,7 @@ export class CheckboxGroupHeaderComponent {
25
25
  }
26
26
  }
27
27
  CheckboxGroupHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: CheckboxGroupHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
- CheckboxGroupHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: CheckboxGroupHeaderComponent, selector: "mrx-checkbox-group-header", inputs: { searchable: "searchable", searchPlaceholder: "searchPlaceholder", tooltip: "tooltip", labelText: "labelText", linkText: "linkText", checkedItemsCount: "checkedItemsCount" }, outputs: { updateCheckboxGroupSearchValue: "updateCheckboxGroupSearchValue", clearFilters: "clearFilters" }, ngImport: i0, template: "<mrx-label\r\n *ngIf=\"labelText\"\r\n [counter]=\"checkedItemsCount\"\r\n [linkText]=\"linkText\"\r\n [tooltip]=\"tooltip\"\r\n (clickedLink)=\"onClearFilters()\"\r\n>{{ labelText }}</mrx-label>\r\n\r\n<div class=\"mrx-checkbox-group-head--search\" *ngIf=\"searchable\">\r\n <mrx-input-search\r\n [ngModel]=\"searchValue\"\r\n [size]=\"'medium'\"\r\n [placeholder]=\"searchPlaceholder\"\r\n (ngModelChange)=\"changeSearchValue($event)\"\r\n ></mrx-input-search>\r\n</div>\r\n", styles: [".mrx-checkbox-group-head--search{margin-bottom:12px}\n"], components: [{ type: i1.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeCheckboxValue", "clickedLink"] }, { type: i2.InputSearchComponent, selector: "mrx-input-search", inputs: ["fields", "disabled", "required", "readonly", "maxlength", "minlength", "placeholder", "customClasses", "mask", "size", "invalid", "invalidMessage", "checkInvalid"], outputs: ["changed", "modelChange", "blurred", "cleared", "searched"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
28
+ CheckboxGroupHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: CheckboxGroupHeaderComponent, selector: "mrx-checkbox-group-header", inputs: { searchable: "searchable", searchPlaceholder: "searchPlaceholder", tooltip: "tooltip", labelText: "labelText", linkText: "linkText", checkedItemsCount: "checkedItemsCount" }, outputs: { updateCheckboxGroupSearchValue: "updateCheckboxGroupSearchValue", clearFilters: "clearFilters" }, ngImport: i0, template: "<mrx-label\r\n *ngIf=\"labelText\"\r\n [counter]=\"checkedItemsCount\"\r\n [linkText]=\"linkText\"\r\n [tooltip]=\"tooltip\"\r\n (clickedLink)=\"onClearFilters()\"\r\n>{{ labelText }}</mrx-label>\r\n\r\n<div class=\"mrx-checkbox-group-head--search\" *ngIf=\"searchable\">\r\n <mrx-input-search\r\n [ngModel]=\"searchValue\"\r\n [size]=\"'medium'\"\r\n [placeholder]=\"searchPlaceholder\"\r\n (ngModelChange)=\"changeSearchValue($event)\"\r\n ></mrx-input-search>\r\n</div>\r\n", styles: [".mrx-checkbox-group-head--search{margin-bottom:12px}\n"], components: [{ type: i1.LabelComponent, selector: "mrx-label", inputs: ["requiredHidden", "required", "boldLabel", "disabled", "placeholder", "label", "customClasses", "triggerTextPosition", "isPublicInfo", "publicInfoTooltip", "isSwitch", "switchLabel", "switchValue", "counter", "linkText", "linkPrevent", "linkType", "linkMonochrome", "href", "triggerType", "tooltip", "tooltipInitialVisible", "isSaveToStorage"], outputs: ["changeCheckboxValue", "clickedLink"] }, { type: i2.InputSearchComponent, selector: "mrx-input-search", inputs: ["fields", "disabled", "required", "readonly", "maxlength", "minlength", "placeholder", "customClasses", "mask", "size", "invalid", "invalidMessage", "checkInvalid", "restrictInput"], outputs: ["changed", "modelChange", "blurred", "cleared", "searched"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
29
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: CheckboxGroupHeaderComponent, decorators: [{
30
30
  type: Component,
31
31
  args: [{ selector: 'mrx-checkbox-group-header', template: "<mrx-label\r\n *ngIf=\"labelText\"\r\n [counter]=\"checkedItemsCount\"\r\n [linkText]=\"linkText\"\r\n [tooltip]=\"tooltip\"\r\n (clickedLink)=\"onClearFilters()\"\r\n>{{ labelText }}</mrx-label>\r\n\r\n<div class=\"mrx-checkbox-group-head--search\" *ngIf=\"searchable\">\r\n <mrx-input-search\r\n [ngModel]=\"searchValue\"\r\n [size]=\"'medium'\"\r\n [placeholder]=\"searchPlaceholder\"\r\n (ngModelChange)=\"changeSearchValue($event)\"\r\n ></mrx-input-search>\r\n</div>\r\n", styles: [".mrx-checkbox-group-head--search{margin-bottom:12px}\n"] }]
@@ -27,6 +27,7 @@ export class InputPasswordComponent {
27
27
  this.invalid = false;
28
28
  this.invalidMessage = '';
29
29
  this.checkInvalid = null;
30
+ this.restrictInput = true;
30
31
  this.changed = new EventEmitter();
31
32
  this.modelChange = new EventEmitter();
32
33
  this.blurred = new EventEmitter();
@@ -80,13 +81,13 @@ export class InputPasswordComponent {
80
81
  }
81
82
  }
82
83
  InputPasswordComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: InputPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
83
- InputPasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: InputPasswordComponent, selector: "mrx-input-password", inputs: { fields: "fields", disabled: "disabled", required: "required", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", placeholder: "placeholder", customClasses: "customClasses", size: "size", invalid: "invalid", invalidMessage: "invalidMessage", checkInvalid: "checkInvalid" }, outputs: { changed: "changed", modelChange: "modelChange", blurred: "blurred" }, providers: [
84
+ InputPasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: InputPasswordComponent, selector: "mrx-input-password", inputs: { fields: "fields", disabled: "disabled", required: "required", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", placeholder: "placeholder", customClasses: "customClasses", size: "size", invalid: "invalid", invalidMessage: "invalidMessage", checkInvalid: "checkInvalid", restrictInput: "restrictInput" }, outputs: { changed: "changed", modelChange: "modelChange", blurred: "blurred" }, providers: [
84
85
  {
85
86
  provide: NG_VALUE_ACCESSOR,
86
87
  useExisting: forwardRef(() => InputPasswordComponent),
87
88
  multi: true,
88
89
  },
89
- ], ngImport: i0, template: "<div\n class=\"mrx-input-password\"\n [class]=\"getClasses\"\n [class.mrx-input-error]=\"getInvalid\">\n <div class=\"mrx-input-password__wrapper\">\n <input\n autocomplete=\"nope\"\n #inputElement\n [type]=\"isShowPassword ? 'text' : 'password'\"\n [id]=\"uuid\"\n [ngModel]=\"value\"\n [attr.title]=\"placeholder || ''\"\n [disabled]=\"disabled\"\n [readOnly]=\"readonly\"\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\n [attr.minlength]=\"minlength > 0 ? minlength : null\"\n [attr.maxlength]=\"maxlength > 0 ? maxlength : null\"\n (ngModelChange)=\"updateValue($event)\"\n (blur)=\"onBlur($event)\"\n />\n\n <div class=\"mrx-input-password__icons\">\n <span\n class=\"mrx-icon\"\n [class]=\"isShowPassword ? 'icon-hide' : 'icon-view'\"\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\n [class.icon-font-24]=\"size === 'large'\"\n (click)=\"toggleShow()\"\n ></span>\n </div>\n\n <mrx-chars-left\n *ngIf=\"!disabled && maxlength\"\n [value]=\"value\"\n [maxlength]=\"maxlength\"\n ></mrx-chars-left>\n </div>\n\n <mrx-error-message\n *ngIf=\"getInvalid && getInvalidMessage\"\n [invalidMessage]=\"getInvalidMessage\"\n ></mrx-error-message>\n\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\n</div>\n", styles: [".mrx-input-password.mrx-input-password{width:100%;position:relative}.mrx-input-password.mrx-input-password .mrx-input-password__wrapper{position:relative}.mrx-input-password.mrx-input-password input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;transition:outline-width .2s,border .2s}.mrx-input-password.mrx-input-password input:focus,.mrx-input-password.mrx-input-password input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-password.mrx-input-password input:hover{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-password.mrx-input-password input:disabled{background-color:var(--neutral-bg-disabled)}.mrx-input-password.mrx-input-password.mrx-input__readonly input[type=tel]:disabled{background-color:inherit}.mrx-input-password.mrx-input-password.mrx-input__readonly input{background-color:inherit}.mrx-input-password.mrx-input-password.mrx-input-password-lg input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-12) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-password.mrx-input-password.mrx-input-password-md input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-8) calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-password.mrx-input-password.mrx-input-password-sm input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-8) calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-password.mrx-input-password.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-password.mrx-input-password.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-password.mrx-input-password.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}@font-face{font-family:pass;font-style:normal;font-weight:400;src:url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAATsAA8AAAAAB2QAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAABWAAAABwAAAAcg9+z70dERUYAAAF0AAAAHAAAAB4AJwANT1MvMgAAAZAAAAA/AAAAYH7AkBhjbWFwAAAB0AAAAFkAAAFqZowMx2N2dCAAAAIsAAAABAAAAAQAIgKIZ2FzcAAAAjAAAAAIAAAACAAAABBnbHlmAAACOAAAALkAAAE0MwNYJ2hlYWQAAAL0AAAAMAAAADYPA2KgaGhlYQAAAyQAAAAeAAAAJAU+ATJobXR4AAADRAAAABwAAAAcCPoA6mxvY2EAAANgAAAAEAAAABAA5gFMbWF4cAAAA3AAAAAaAAAAIAAKAE9uYW1lAAADjAAAARYAAAIgB4hZ03Bvc3QAAASkAAAAPgAAAE5Ojr8ld2ViZgAABOQAAAAGAAAABuK7WtIAAAABAAAAANXulPUAAAAA1viLwQAAAADW+JM4eNpjYGRgYOABYjEgZmJgBEI2IGYB8xgAA+AANXjaY2BifMg4gYGVgYVBAwOeYEAFjMgcp8yiFAYHBl7VP8wx/94wpDDHMIoo2DP8B8kx2TLHACkFBkYA8/IL3QB42mNgYGBmgGAZBkYGEEgB8hjBfBYGDyDNx8DBwMTABmTxMigoKKmeV/3z/z9YJTKf8f/X/4/vP7pldosLag4SYATqhgkyMgEJJnQFECcMOGChndEAfOwRuAAAAAAiAogAAQAB//8AD3jaY2BiUGJgYDRiWsXAzMDOoLeRkUHfZhM7C8Nbo41srHdsNjEzAZkMG5lBwqwg4U3sbIx/bDYxgsSNBRUF1Y0FlZUYBd6dOcO06m+YElMa0DiGJIZUxjuM9xjkGRhU2djZlJXU1UDQ1MTcDASNjcTFQFBUBGjYEkkVMJCU4gcCKRTeHCk+fn4+KSllsJiUJEhMUgrMUQbZk8bgz/iA8SRR9qzAY087FjEYD2QPDDAzMFgyAwC39TCRAAAAeNpjYGRgYADid/fqneL5bb4yyLMwgMC1H90HIfRkCxDN+IBpFZDiYGAC8QBbSwuceNpjYGRgYI7594aBgcmOAQgYHzAwMqACdgBbWQN0AAABdgAiAAAAAAAAAAABFAAAAj4AYgI+AGYB9AAAAAAAKgAqACoAKgBeAJIAmnjaY2BkYGBgZ1BgYGIAAUYGBNADEQAFQQBaAAB42o2PwUrDQBCGvzVV9GAQDx485exBY1CU3PQgVgIFI9prlVqDwcZNC/oSPoKP4HNUfQLfxYN/NytCe5GwO9/88+/MBAh5I8C0VoAtnYYNa8oaXpAn9RxIP/XcIqLreZENnjwvyfPieVVdXj2H7DHxPJH/2/M7sVn3/MGyOfb8SWjOGv4K2DRdctpkmtqhos+D6ISh4kiUUXDj1Fr3Bc/Oc0vPqec6A8aUyu1cdTaPZvyXyqz6Fm5axC7bxHOv/r/dnbSRXCk7+mpVrOqVtFqdp3NKxaHUgeod9cm40rtrzfrt2OyQa8fppCO9tk7d1x0rpiQcuDuRkjjtkHt16ctbuf/radZY52/PnEcphXpZOcofiEZNcQAAeNpjYGIAg///GBgZsAF2BgZGJkZmBmaGdkYWRla29JzKggxD9tK8TAMDAxc2D0MLU2NjENfI1M0ZACUXCrsAAAABWtLiugAA) format(\"woff\")}.mrx-input-password.mrx-input-password input[type=password]:not(:placeholder-shown){font-family:pass,Roboto,Helvetica,Arial,sans-serif}.mrx-input-password.mrx-input-password .mrx-input-password__icons{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);display:flex;align-items:center}.mrx-input-password.mrx-input-password .mrx-input-password__icons .mrx-icon{will-change:transform;cursor:pointer;color:var(--neutral-icon-default)}\n"], components: [{ type: i1.CharsLeftComponent, selector: "mrx-chars-left", inputs: ["maxlength", "valueLength", "value"] }, { type: i2.ErrorMessageComponent, selector: "mrx-error-message", inputs: ["invalid", "invalidMessage", "customClasses"] }, { type: i3.SaveStateComponent, selector: "mrx-save-state", inputs: ["type", "fields", "id"] }], directives: [{ type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
90
+ ], ngImport: i0, template: "<div\r\n class=\"mrx-input-password\"\r\n [class]=\"getClasses\"\r\n [class.mrx-input-error]=\"getInvalid\">\r\n <div class=\"mrx-input-password__wrapper\">\r\n <input\r\n autocomplete=\"nope\"\r\n #inputElement\r\n [type]=\"isShowPassword ? 'text' : 'password'\"\r\n [id]=\"uuid\"\r\n [ngModel]=\"value\"\r\n [attr.title]=\"placeholder || ''\"\r\n [disabled]=\"disabled\"\r\n [readOnly]=\"readonly\"\r\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\r\n [minlength]=\"minlength > 0 && restrictInput ? minlength : null\"\r\n [maxlength]=\"maxlength > 0 && restrictInput ? maxlength : null\"\r\n (ngModelChange)=\"updateValue($event)\"\r\n (blur)=\"onBlur($event)\"\r\n />\r\n\r\n <div class=\"mrx-input-password__icons\">\r\n <span\r\n class=\"mrx-icon\"\r\n [class]=\"isShowPassword ? 'icon-hide' : 'icon-view'\"\r\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\r\n [class.icon-font-24]=\"size === 'large'\"\r\n (click)=\"toggleShow()\"\r\n ></span>\r\n </div>\r\n\r\n <mrx-chars-left\r\n *ngIf=\"!disabled && maxlength\"\r\n [value]=\"value\"\r\n [maxlength]=\"maxlength\"\r\n ></mrx-chars-left>\r\n </div>\r\n\r\n <mrx-error-message\r\n *ngIf=\"getInvalid && getInvalidMessage\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n ></mrx-error-message>\r\n\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\r\n</div>\r\n", styles: [".mrx-input-password.mrx-input-password{width:100%;position:relative}.mrx-input-password.mrx-input-password .mrx-input-password__wrapper{position:relative}.mrx-input-password.mrx-input-password input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;transition:outline-width .2s,border .2s}.mrx-input-password.mrx-input-password input:focus,.mrx-input-password.mrx-input-password input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-password.mrx-input-password input:hover{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-password.mrx-input-password input:disabled{background-color:var(--neutral-bg-disabled)}.mrx-input-password.mrx-input-password.mrx-input__readonly input[type=tel]:disabled{background-color:inherit}.mrx-input-password.mrx-input-password.mrx-input__readonly input{background-color:inherit}.mrx-input-password.mrx-input-password.mrx-input-password-lg input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-12) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-password.mrx-input-password.mrx-input-password-md input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-8) calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-password.mrx-input-password.mrx-input-password-sm input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-8) calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-password.mrx-input-password.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-password.mrx-input-password.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-password.mrx-input-password.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}@font-face{font-family:pass;font-style:normal;font-weight:400;src:url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAATsAA8AAAAAB2QAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAABWAAAABwAAAAcg9+z70dERUYAAAF0AAAAHAAAAB4AJwANT1MvMgAAAZAAAAA/AAAAYH7AkBhjbWFwAAAB0AAAAFkAAAFqZowMx2N2dCAAAAIsAAAABAAAAAQAIgKIZ2FzcAAAAjAAAAAIAAAACAAAABBnbHlmAAACOAAAALkAAAE0MwNYJ2hlYWQAAAL0AAAAMAAAADYPA2KgaGhlYQAAAyQAAAAeAAAAJAU+ATJobXR4AAADRAAAABwAAAAcCPoA6mxvY2EAAANgAAAAEAAAABAA5gFMbWF4cAAAA3AAAAAaAAAAIAAKAE9uYW1lAAADjAAAARYAAAIgB4hZ03Bvc3QAAASkAAAAPgAAAE5Ojr8ld2ViZgAABOQAAAAGAAAABuK7WtIAAAABAAAAANXulPUAAAAA1viLwQAAAADW+JM4eNpjYGRgYOABYjEgZmJgBEI2IGYB8xgAA+AANXjaY2BifMg4gYGVgYVBAwOeYEAFjMgcp8yiFAYHBl7VP8wx/94wpDDHMIoo2DP8B8kx2TLHACkFBkYA8/IL3QB42mNgYGBmgGAZBkYGEEgB8hjBfBYGDyDNx8DBwMTABmTxMigoKKmeV/3z/z9YJTKf8f/X/4/vP7pldosLag4SYATqhgkyMgEJJnQFECcMOGChndEAfOwRuAAAAAAiAogAAQAB//8AD3jaY2BiUGJgYDRiWsXAzMDOoLeRkUHfZhM7C8Nbo41srHdsNjEzAZkMG5lBwqwg4U3sbIx/bDYxgsSNBRUF1Y0FlZUYBd6dOcO06m+YElMa0DiGJIZUxjuM9xjkGRhU2djZlJXU1UDQ1MTcDASNjcTFQFBUBGjYEkkVMJCU4gcCKRTeHCk+fn4+KSllsJiUJEhMUgrMUQbZk8bgz/iA8SRR9qzAY087FjEYD2QPDDAzMFgyAwC39TCRAAAAeNpjYGRgYADid/fqneL5bb4yyLMwgMC1H90HIfRkCxDN+IBpFZDiYGAC8QBbSwuceNpjYGRgYI7594aBgcmOAQgYHzAwMqACdgBbWQN0AAABdgAiAAAAAAAAAAABFAAAAj4AYgI+AGYB9AAAAAAAKgAqACoAKgBeAJIAmnjaY2BkYGBgZ1BgYGIAAUYGBNADEQAFQQBaAAB42o2PwUrDQBCGvzVV9GAQDx485exBY1CU3PQgVgIFI9prlVqDwcZNC/oSPoKP4HNUfQLfxYN/NytCe5GwO9/88+/MBAh5I8C0VoAtnYYNa8oaXpAn9RxIP/XcIqLreZENnjwvyfPieVVdXj2H7DHxPJH/2/M7sVn3/MGyOfb8SWjOGv4K2DRdctpkmtqhos+D6ISh4kiUUXDj1Fr3Bc/Oc0vPqec6A8aUyu1cdTaPZvyXyqz6Fm5axC7bxHOv/r/dnbSRXCk7+mpVrOqVtFqdp3NKxaHUgeod9cm40rtrzfrt2OyQa8fppCO9tk7d1x0rpiQcuDuRkjjtkHt16ctbuf/radZY52/PnEcphXpZOcofiEZNcQAAeNpjYGIAg///GBgZsAF2BgZGJkZmBmaGdkYWRla29JzKggxD9tK8TAMDAxc2D0MLU2NjENfI1M0ZACUXCrsAAAABWtLiugAA) format(\"woff\")}.mrx-input-password.mrx-input-password input[type=password]:not(:placeholder-shown){font-family:pass,Roboto,Helvetica,Arial,sans-serif}.mrx-input-password.mrx-input-password .mrx-input-password__icons{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);display:flex;align-items:center}.mrx-input-password.mrx-input-password .mrx-input-password__icons .mrx-icon{will-change:transform;cursor:pointer;color:var(--neutral-icon-default)}\n"], components: [{ type: i1.CharsLeftComponent, selector: "mrx-chars-left", inputs: ["maxlength", "valueLength", "value"] }, { type: i2.ErrorMessageComponent, selector: "mrx-error-message", inputs: ["invalid", "invalidMessage", "customClasses"] }, { type: i3.SaveStateComponent, selector: "mrx-save-state", inputs: ["type", "fields", "id"] }], directives: [{ type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
90
91
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: InputPasswordComponent, decorators: [{
91
92
  type: Component,
92
93
  args: [{ selector: 'mrx-input-password', providers: [
@@ -95,7 +96,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
95
96
  useExisting: forwardRef(() => InputPasswordComponent),
96
97
  multi: true,
97
98
  },
98
- ], template: "<div\n class=\"mrx-input-password\"\n [class]=\"getClasses\"\n [class.mrx-input-error]=\"getInvalid\">\n <div class=\"mrx-input-password__wrapper\">\n <input\n autocomplete=\"nope\"\n #inputElement\n [type]=\"isShowPassword ? 'text' : 'password'\"\n [id]=\"uuid\"\n [ngModel]=\"value\"\n [attr.title]=\"placeholder || ''\"\n [disabled]=\"disabled\"\n [readOnly]=\"readonly\"\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\n [attr.minlength]=\"minlength > 0 ? minlength : null\"\n [attr.maxlength]=\"maxlength > 0 ? maxlength : null\"\n (ngModelChange)=\"updateValue($event)\"\n (blur)=\"onBlur($event)\"\n />\n\n <div class=\"mrx-input-password__icons\">\n <span\n class=\"mrx-icon\"\n [class]=\"isShowPassword ? 'icon-hide' : 'icon-view'\"\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\n [class.icon-font-24]=\"size === 'large'\"\n (click)=\"toggleShow()\"\n ></span>\n </div>\n\n <mrx-chars-left\n *ngIf=\"!disabled && maxlength\"\n [value]=\"value\"\n [maxlength]=\"maxlength\"\n ></mrx-chars-left>\n </div>\n\n <mrx-error-message\n *ngIf=\"getInvalid && getInvalidMessage\"\n [invalidMessage]=\"getInvalidMessage\"\n ></mrx-error-message>\n\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\n</div>\n", styles: [".mrx-input-password.mrx-input-password{width:100%;position:relative}.mrx-input-password.mrx-input-password .mrx-input-password__wrapper{position:relative}.mrx-input-password.mrx-input-password input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;transition:outline-width .2s,border .2s}.mrx-input-password.mrx-input-password input:focus,.mrx-input-password.mrx-input-password input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-password.mrx-input-password input:hover{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-password.mrx-input-password input:disabled{background-color:var(--neutral-bg-disabled)}.mrx-input-password.mrx-input-password.mrx-input__readonly input[type=tel]:disabled{background-color:inherit}.mrx-input-password.mrx-input-password.mrx-input__readonly input{background-color:inherit}.mrx-input-password.mrx-input-password.mrx-input-password-lg input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-12) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-password.mrx-input-password.mrx-input-password-md input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-8) calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-password.mrx-input-password.mrx-input-password-sm input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-8) calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-password.mrx-input-password.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-password.mrx-input-password.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-password.mrx-input-password.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}@font-face{font-family:pass;font-style:normal;font-weight:400;src:url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAATsAA8AAAAAB2QAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAABWAAAABwAAAAcg9+z70dERUYAAAF0AAAAHAAAAB4AJwANT1MvMgAAAZAAAAA/AAAAYH7AkBhjbWFwAAAB0AAAAFkAAAFqZowMx2N2dCAAAAIsAAAABAAAAAQAIgKIZ2FzcAAAAjAAAAAIAAAACAAAABBnbHlmAAACOAAAALkAAAE0MwNYJ2hlYWQAAAL0AAAAMAAAADYPA2KgaGhlYQAAAyQAAAAeAAAAJAU+ATJobXR4AAADRAAAABwAAAAcCPoA6mxvY2EAAANgAAAAEAAAABAA5gFMbWF4cAAAA3AAAAAaAAAAIAAKAE9uYW1lAAADjAAAARYAAAIgB4hZ03Bvc3QAAASkAAAAPgAAAE5Ojr8ld2ViZgAABOQAAAAGAAAABuK7WtIAAAABAAAAANXulPUAAAAA1viLwQAAAADW+JM4eNpjYGRgYOABYjEgZmJgBEI2IGYB8xgAA+AANXjaY2BifMg4gYGVgYVBAwOeYEAFjMgcp8yiFAYHBl7VP8wx/94wpDDHMIoo2DP8B8kx2TLHACkFBkYA8/IL3QB42mNgYGBmgGAZBkYGEEgB8hjBfBYGDyDNx8DBwMTABmTxMigoKKmeV/3z/z9YJTKf8f/X/4/vP7pldosLag4SYATqhgkyMgEJJnQFECcMOGChndEAfOwRuAAAAAAiAogAAQAB//8AD3jaY2BiUGJgYDRiWsXAzMDOoLeRkUHfZhM7C8Nbo41srHdsNjEzAZkMG5lBwqwg4U3sbIx/bDYxgsSNBRUF1Y0FlZUYBd6dOcO06m+YElMa0DiGJIZUxjuM9xjkGRhU2djZlJXU1UDQ1MTcDASNjcTFQFBUBGjYEkkVMJCU4gcCKRTeHCk+fn4+KSllsJiUJEhMUgrMUQbZk8bgz/iA8SRR9qzAY087FjEYD2QPDDAzMFgyAwC39TCRAAAAeNpjYGRgYADid/fqneL5bb4yyLMwgMC1H90HIfRkCxDN+IBpFZDiYGAC8QBbSwuceNpjYGRgYI7594aBgcmOAQgYHzAwMqACdgBbWQN0AAABdgAiAAAAAAAAAAABFAAAAj4AYgI+AGYB9AAAAAAAKgAqACoAKgBeAJIAmnjaY2BkYGBgZ1BgYGIAAUYGBNADEQAFQQBaAAB42o2PwUrDQBCGvzVV9GAQDx485exBY1CU3PQgVgIFI9prlVqDwcZNC/oSPoKP4HNUfQLfxYN/NytCe5GwO9/88+/MBAh5I8C0VoAtnYYNa8oaXpAn9RxIP/XcIqLreZENnjwvyfPieVVdXj2H7DHxPJH/2/M7sVn3/MGyOfb8SWjOGv4K2DRdctpkmtqhos+D6ISh4kiUUXDj1Fr3Bc/Oc0vPqec6A8aUyu1cdTaPZvyXyqz6Fm5axC7bxHOv/r/dnbSRXCk7+mpVrOqVtFqdp3NKxaHUgeod9cm40rtrzfrt2OyQa8fppCO9tk7d1x0rpiQcuDuRkjjtkHt16ctbuf/radZY52/PnEcphXpZOcofiEZNcQAAeNpjYGIAg///GBgZsAF2BgZGJkZmBmaGdkYWRla29JzKggxD9tK8TAMDAxc2D0MLU2NjENfI1M0ZACUXCrsAAAABWtLiugAA) format(\"woff\")}.mrx-input-password.mrx-input-password input[type=password]:not(:placeholder-shown){font-family:pass,Roboto,Helvetica,Arial,sans-serif}.mrx-input-password.mrx-input-password .mrx-input-password__icons{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);display:flex;align-items:center}.mrx-input-password.mrx-input-password .mrx-input-password__icons .mrx-icon{will-change:transform;cursor:pointer;color:var(--neutral-icon-default)}\n"] }]
99
+ ], template: "<div\r\n class=\"mrx-input-password\"\r\n [class]=\"getClasses\"\r\n [class.mrx-input-error]=\"getInvalid\">\r\n <div class=\"mrx-input-password__wrapper\">\r\n <input\r\n autocomplete=\"nope\"\r\n #inputElement\r\n [type]=\"isShowPassword ? 'text' : 'password'\"\r\n [id]=\"uuid\"\r\n [ngModel]=\"value\"\r\n [attr.title]=\"placeholder || ''\"\r\n [disabled]=\"disabled\"\r\n [readOnly]=\"readonly\"\r\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\r\n [minlength]=\"minlength > 0 && restrictInput ? minlength : null\"\r\n [maxlength]=\"maxlength > 0 && restrictInput ? maxlength : null\"\r\n (ngModelChange)=\"updateValue($event)\"\r\n (blur)=\"onBlur($event)\"\r\n />\r\n\r\n <div class=\"mrx-input-password__icons\">\r\n <span\r\n class=\"mrx-icon\"\r\n [class]=\"isShowPassword ? 'icon-hide' : 'icon-view'\"\r\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\r\n [class.icon-font-24]=\"size === 'large'\"\r\n (click)=\"toggleShow()\"\r\n ></span>\r\n </div>\r\n\r\n <mrx-chars-left\r\n *ngIf=\"!disabled && maxlength\"\r\n [value]=\"value\"\r\n [maxlength]=\"maxlength\"\r\n ></mrx-chars-left>\r\n </div>\r\n\r\n <mrx-error-message\r\n *ngIf=\"getInvalid && getInvalidMessage\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n ></mrx-error-message>\r\n\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\r\n</div>\r\n", styles: [".mrx-input-password.mrx-input-password{width:100%;position:relative}.mrx-input-password.mrx-input-password .mrx-input-password__wrapper{position:relative}.mrx-input-password.mrx-input-password input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;transition:outline-width .2s,border .2s}.mrx-input-password.mrx-input-password input:focus,.mrx-input-password.mrx-input-password input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-password.mrx-input-password input:hover{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-password.mrx-input-password input:disabled{background-color:var(--neutral-bg-disabled)}.mrx-input-password.mrx-input-password.mrx-input__readonly input[type=tel]:disabled{background-color:inherit}.mrx-input-password.mrx-input-password.mrx-input__readonly input{background-color:inherit}.mrx-input-password.mrx-input-password.mrx-input-password-lg input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-12) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-password.mrx-input-password.mrx-input-password-md input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-8) calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-password.mrx-input-password.mrx-input-password-sm input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-8) calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-password.mrx-input-password.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-password.mrx-input-password.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-password.mrx-input-password.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}@font-face{font-family:pass;font-style:normal;font-weight:400;src:url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAATsAA8AAAAAB2QAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAABWAAAABwAAAAcg9+z70dERUYAAAF0AAAAHAAAAB4AJwANT1MvMgAAAZAAAAA/AAAAYH7AkBhjbWFwAAAB0AAAAFkAAAFqZowMx2N2dCAAAAIsAAAABAAAAAQAIgKIZ2FzcAAAAjAAAAAIAAAACAAAABBnbHlmAAACOAAAALkAAAE0MwNYJ2hlYWQAAAL0AAAAMAAAADYPA2KgaGhlYQAAAyQAAAAeAAAAJAU+ATJobXR4AAADRAAAABwAAAAcCPoA6mxvY2EAAANgAAAAEAAAABAA5gFMbWF4cAAAA3AAAAAaAAAAIAAKAE9uYW1lAAADjAAAARYAAAIgB4hZ03Bvc3QAAASkAAAAPgAAAE5Ojr8ld2ViZgAABOQAAAAGAAAABuK7WtIAAAABAAAAANXulPUAAAAA1viLwQAAAADW+JM4eNpjYGRgYOABYjEgZmJgBEI2IGYB8xgAA+AANXjaY2BifMg4gYGVgYVBAwOeYEAFjMgcp8yiFAYHBl7VP8wx/94wpDDHMIoo2DP8B8kx2TLHACkFBkYA8/IL3QB42mNgYGBmgGAZBkYGEEgB8hjBfBYGDyDNx8DBwMTABmTxMigoKKmeV/3z/z9YJTKf8f/X/4/vP7pldosLag4SYATqhgkyMgEJJnQFECcMOGChndEAfOwRuAAAAAAiAogAAQAB//8AD3jaY2BiUGJgYDRiWsXAzMDOoLeRkUHfZhM7C8Nbo41srHdsNjEzAZkMG5lBwqwg4U3sbIx/bDYxgsSNBRUF1Y0FlZUYBd6dOcO06m+YElMa0DiGJIZUxjuM9xjkGRhU2djZlJXU1UDQ1MTcDASNjcTFQFBUBGjYEkkVMJCU4gcCKRTeHCk+fn4+KSllsJiUJEhMUgrMUQbZk8bgz/iA8SRR9qzAY087FjEYD2QPDDAzMFgyAwC39TCRAAAAeNpjYGRgYADid/fqneL5bb4yyLMwgMC1H90HIfRkCxDN+IBpFZDiYGAC8QBbSwuceNpjYGRgYI7594aBgcmOAQgYHzAwMqACdgBbWQN0AAABdgAiAAAAAAAAAAABFAAAAj4AYgI+AGYB9AAAAAAAKgAqACoAKgBeAJIAmnjaY2BkYGBgZ1BgYGIAAUYGBNADEQAFQQBaAAB42o2PwUrDQBCGvzVV9GAQDx485exBY1CU3PQgVgIFI9prlVqDwcZNC/oSPoKP4HNUfQLfxYN/NytCe5GwO9/88+/MBAh5I8C0VoAtnYYNa8oaXpAn9RxIP/XcIqLreZENnjwvyfPieVVdXj2H7DHxPJH/2/M7sVn3/MGyOfb8SWjOGv4K2DRdctpkmtqhos+D6ISh4kiUUXDj1Fr3Bc/Oc0vPqec6A8aUyu1cdTaPZvyXyqz6Fm5axC7bxHOv/r/dnbSRXCk7+mpVrOqVtFqdp3NKxaHUgeod9cm40rtrzfrt2OyQa8fppCO9tk7d1x0rpiQcuDuRkjjtkHt16ctbuf/radZY52/PnEcphXpZOcofiEZNcQAAeNpjYGIAg///GBgZsAF2BgZGJkZmBmaGdkYWRla29JzKggxD9tK8TAMDAxc2D0MLU2NjENfI1M0ZACUXCrsAAAABWtLiugAA) format(\"woff\")}.mrx-input-password.mrx-input-password input[type=password]:not(:placeholder-shown){font-family:pass,Roboto,Helvetica,Arial,sans-serif}.mrx-input-password.mrx-input-password .mrx-input-password__icons{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);display:flex;align-items:center}.mrx-input-password.mrx-input-password .mrx-input-password__icons .mrx-icon{will-change:transform;cursor:pointer;color:var(--neutral-icon-default)}\n"] }]
99
100
  }], propDecorators: { fields: [{
100
101
  type: Input
101
102
  }], disabled: [{
@@ -120,6 +121,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
120
121
  type: Input
121
122
  }], checkInvalid: [{
122
123
  type: Input
124
+ }], restrictInput: [{
125
+ type: Input
123
126
  }], changed: [{
124
127
  type: Output
125
128
  }], modelChange: [{
@@ -127,4 +130,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
127
130
  }], blurred: [{
128
131
  type: Output
129
132
  }] } });
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtcGFzc3dvcmQvaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtcGFzc3dvcmQvaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFDTCxzQkFBc0IsRUFHdkIsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsRUFBRSxJQUFJLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7OztBQWVwQyxNQUFNLE9BQU8sc0JBQXNCO0lBWm5DO1FBYVMsVUFBSyxHQUE0QixFQUFFLENBQUM7UUFDcEMsbUJBQWMsR0FBRyxLQUFLLENBQUE7UUFFN0IsYUFBYTtRQUNOLFNBQUksR0FBVyxNQUFNLEVBQUUsQ0FBQztRQUNmLFdBQU0sR0FBWSxFQUFFLENBQUM7UUFFckIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsY0FBUyxHQUFHLENBQUMsQ0FBQztRQUNkLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUNuQixTQUFJLEdBQTRCLE9BQU8s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RUFBRSxDQUFDLENBQUE7SUFDekQsQ0FBQzs7bUhBckZVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLDRhQVJ0QjtRQUNUO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixDQUFDO1lBQ3JELEtBQUssRUFBRSxJQUFJO1NBQ1o7S0FDRiwwQkNwQkgsMjRDQTZDQTsyRkR2QmEsc0JBQXNCO2tCQVpsQyxTQUFTOytCQUNFLG9CQUFvQixhQUduQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQzs0QkFDckQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OEJBUWUsTUFBTTtzQkFBckIsS0FBSztnQkFFVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxhQUFhO3NCQUE1QixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBR1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxjQUFjO3NCQUE3QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRVcsT0FBTztzQkFBdkIsTUFBTTtnQkFDVSxXQUFXO3NCQUEzQixNQUFNO2dCQUNVLE9BQU87c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7XHJcbiAgSW5wdXRQYXNzd29yZFNpemVzRW51bSxcclxuICBJbnB1dFBhc3N3b3JkU2l6ZXNUeXBlcyxcclxuICBJbnB1dFBhc3N3b3JkVmFsdWVUeXBlcywgSW5wdXRQYXNzd29yZFZhbHVlV2l0aElkXHJcbn0gZnJvbSAnLi9pbnB1dC1wYXNzd29yZC5lbnVtJztcclxuaW1wb3J0IHsgdjQgYXMgdXVpZHY0IH0gZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtcngtaW5wdXQtcGFzc3dvcmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50Lmxlc3MnXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IElucHV0UGFzc3dvcmRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0UGFzc3dvcmRDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcbiAgcHVibGljIHZhbHVlOiBJbnB1dFBhc3N3b3JkVmFsdWVUeXBlcyA9ICcnO1xyXG4gIHB1YmxpYyBpc1Nob3dQYXNzd29yZCA9IGZhbHNlXHJcblxyXG4gIC8vIFNBVkUgU1RBVEVcclxuICBwdWJsaWMgdXVpZDogc3RyaW5nID0gdXVpZHY0KCk7XHJcbiAgQElucHV0KCkgcHVibGljIGZpZWxkczogRmllbGRbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgbWF4bGVuZ3RoID0gMDtcclxuICBASW5wdXQoKSBwdWJsaWMgbWlubGVuZ3RoID0gMDtcclxuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXIgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiBJbnB1dFBhc3N3b3JkU2l6ZXNUeXBlcyA9ICdsYXJnZSc7XHJcblxyXG4gIC8vIFZBTElEQVRFXHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZE1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGNoZWNrSW52YWxpZDogdHJ1ZSB8IGZhbHNlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlZDogRXZlbnRFbWl0dGVyPElucHV0UGFzc3dvcmRWYWx1ZVR5cGVzPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRQYXNzd29yZFZhbHVlVHlwZXM+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBtb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPElucHV0UGFzc3dvcmRWYWx1ZVdpdGhJZD4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0UGFzc3dvcmRWYWx1ZVdpdGhJZD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIGJsdXJyZWQ6IEV2ZW50RW1pdHRlcjxJbnB1dFBhc3N3b3JkVmFsdWVXaXRoSWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnB1dFBhc3N3b3JkVmFsdWVXaXRoSWQ+KCk7XHJcblxyXG4gIHByaXZhdGUgZ2V0IF9pc0ludmFsaWRWYWx1ZUxlbmd0aCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLm1heGxlbmd0aCA8IHRoaXMudmFsdWU/Lmxlbmd0aCAmJiB0aGlzLm1heGxlbmd0aCA+IDBcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0SW52YWxpZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9pc0ludmFsaWRWYWx1ZUxlbmd0aCB8fCB0aGlzLmludmFsaWRcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0SW52YWxpZE1lc3NhZ2UoKTogc3RyaW5nIHwgc3RyaW5nW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzSW52YWxpZFZhbHVlTGVuZ3RoID8gJ9Cf0YDQtdCy0YvRiNC10L3QviDQtNC+0L/Rg9GB0YLQuNC80L7QtSDQt9C90LDRh9C10L3QuNC1INGB0LjQvNCy0L7Qu9C+0LInIDogdGhpcy5pbnZhbGlkTWVzc2FnZVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCByZWFkb25seUNsYXNzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5yZWFkb25seSA/ICdtcngtaW5wdXRfX3JlYWRvbmx5JyA6ICcnO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjaGVja1ZhbGlkQ2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuY2hlY2tJbnZhbGlkID09PSBmYWxzZSA/XHJcbiAgICAgICdtcngtaW5wdXQtY2hlY2tlZC1zdWNjZXNzJyA6XHJcbiAgICAgIHRoaXMuY2hlY2tJbnZhbGlkID09PSB0cnVlID8gJ21yeC1pbnB1dC1jaGVja2VkLWVycm9yJyA6ICcnXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHtJbnB1dFBhc3N3b3JkU2l6ZXNFbnVtW3RoaXMuc2l6ZV19ICR7dGhpcy5jdXN0b21DbGFzc2VzfSAke3RoaXMucmVhZG9ubHlDbGFzc30gJHt0aGlzLmNoZWNrVmFsaWRDbGFzc2VzfWA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdG9nZ2xlU2hvdygpOiB2b2lkIHtcclxuICAgIHRoaXMuaXNTaG93UGFzc3dvcmQgPSAhdGhpcy5pc1Nob3dQYXNzd29yZFxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkNoYW5nZSA9ICh2YWx1ZTogSW5wdXRQYXNzd29yZFZhbHVlVHlwZXMpID0+IHt9O1xyXG4gIHByaXZhdGUgb25Ub3VjaGVkID0gKCkgPT4ge307XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4ge30pOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgd3JpdGVWYWx1ZShvdXRzaWRlVmFsdWU6IElucHV0UGFzc3dvcmRWYWx1ZVR5cGVzKSB7XHJcbiAgICB0aGlzLnZhbHVlID0gb3V0c2lkZVZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlVmFsdWUoaW5zaWRlVmFsdWU6IElucHV0UGFzc3dvcmRWYWx1ZVR5cGVzKSB7XHJcbiAgICB0aGlzLnZhbHVlID0gaW5zaWRlVmFsdWU7XHJcbiAgICB0aGlzLmNoYW5nZWQuZW1pdChpbnNpZGVWYWx1ZSk7XHJcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQoe3ZhbHVlOiBpbnNpZGVWYWx1ZSwgaWQ6IHRoaXMudXVpZH0pXHJcbiAgICB0aGlzLm9uQ2hhbmdlKGluc2lkZVZhbHVlKTtcclxuICAgIHRoaXMub25Ub3VjaGVkKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25CbHVyKGV2ZW50OiBFdmVudCkge1xyXG4gICAgdGhpcy5ibHVycmVkLmVtaXQoeyB2YWx1ZTogdGhpcy52YWx1ZSwgaWQ6IHRoaXMudXVpZCB9KVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2XG4gIGNsYXNzPVwibXJ4LWlucHV0LXBhc3N3b3JkXCJcbiAgW2NsYXNzXT1cImdldENsYXNzZXNcIlxuICBbY2xhc3MubXJ4LWlucHV0LWVycm9yXT1cImdldEludmFsaWRcIj5cbiAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC1wYXNzd29yZF9fd3JhcHBlclwiPlxuICAgIDxpbnB1dFxuICAgICAgYXV0b2NvbXBsZXRlPVwibm9wZVwiXG4gICAgICAjaW5wdXRFbGVtZW50XG4gICAgICBbdHlwZV09XCJpc1Nob3dQYXNzd29yZCA/ICd0ZXh0JyA6ICdwYXNzd29yZCdcIlxuICAgICAgW2lkXT1cInV1aWRcIlxuICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgW2F0dHIudGl0bGVdPVwicGxhY2Vob2xkZXIgfHwgJydcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtyZWFkT25seV09XCJyZWFkb25seVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiIWRpc2FibGVkICYmIHBsYWNlaG9sZGVyID8gcGxhY2Vob2xkZXIgOiAnJ1wiXG4gICAgICBbYXR0ci5taW5sZW5ndGhdPVwibWlubGVuZ3RoID4gMCA/IG1pbmxlbmd0aCA6IG51bGxcIlxuICAgICAgW2F0dHIubWF4bGVuZ3RoXT1cIm1heGxlbmd0aCA+IDAgPyBtYXhsZW5ndGggOiBudWxsXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInVwZGF0ZVZhbHVlKCRldmVudClcIlxuICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICAgIC8+XG5cbiAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXBhc3N3b3JkX19pY29uc1wiPlxuICAgICAgPHNwYW5cbiAgICAgICAgY2xhc3M9XCJtcngtaWNvblwiXG4gICAgICAgIFtjbGFzc109XCJpc1Nob3dQYXNzd29yZCA/ICdpY29uLWhpZGUnIDogJ2ljb24tdmlldydcIlxuICAgICAgICBbY2xhc3MuaWNvbi1mb250LTE2XT1cInNpemUgPT09ICdzbWFsbCcgfHwgc2l6ZSA9PT0gJ21lZGl1bSdcIlxuICAgICAgICBbY2xhc3MuaWNvbi1mb250LTI0XT1cInNpemUgPT09ICdsYXJnZSdcIlxuICAgICAgICAoY2xpY2spPVwidG9nZ2xlU2hvdygpXCJcbiAgICAgID48L3NwYW4+XG4gICAgPC9kaXY+XG5cbiAgICA8bXJ4LWNoYXJzLWxlZnRcbiAgICAgICpuZ0lmPVwiIWRpc2FibGVkICYmIG1heGxlbmd0aFwiXG4gICAgICBbdmFsdWVdPVwidmFsdWVcIlxuICAgICAgW21heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxuICAgID48L21yeC1jaGFycy1sZWZ0PlxuICA8L2Rpdj5cblxuICA8bXJ4LWVycm9yLW1lc3NhZ2VcbiAgICAqbmdJZj1cImdldEludmFsaWQgJiYgZ2V0SW52YWxpZE1lc3NhZ2VcIlxuICAgIFtpbnZhbGlkTWVzc2FnZV09XCJnZXRJbnZhbGlkTWVzc2FnZVwiXG4gID48L21yeC1lcnJvci1tZXNzYWdlPlxuXG4gIDxtcngtc2F2ZS1zdGF0ZSBbaWRdPVwidXVpZFwiIFtmaWVsZHNdPVwiZmllbGRzXCI+PC9tcngtc2F2ZS1zdGF0ZT5cbjwvZGl2PlxuIl19
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtcGFzc3dvcmQvaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtcGFzc3dvcmQvaW5wdXQtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFDTCxzQkFBc0IsRUFHdkIsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsRUFBRSxJQUFJLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7OztBQWVwQyxNQUFNLE9BQU8sc0JBQXNCO0lBWm5DO1FBYVMsVUFBSyxHQUE0QixFQUFFLENBQUM7UUFDcEMsbUJBQWMsR0FBRyxLQUFLLENBQUE7UUFFN0IsYUFBYTtRQUNOLFNBQUksR0FBVyxNQUFNLEVBQUUsQ0FBQztRQUNmLFdBQU0sR0FBWSxFQUFFLENBQUM7UUFFckIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsY0FBUyxHQUFHLENBQUMsQ0FBQztRQUNkLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUNuQixTQUFJLEdBQTRCLE9BQU8s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RSxFQUFFLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUE7SUFDekQsQ0FBQzs7bUhBdkZVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLDRjQVJ0QjtRQUNUO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixDQUFDO1lBQ3JELEtBQUssRUFBRSxJQUFJO1NBQ1o7S0FDRiwwQkNwQkgsNi9DQTZDQTsyRkR2QmEsc0JBQXNCO2tCQVpsQyxTQUFTOytCQUNFLG9CQUFvQixhQUduQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQzs0QkFDckQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7OEJBUWUsTUFBTTtzQkFBckIsS0FBSztnQkFFVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxhQUFhO3NCQUE1QixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBR1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxjQUFjO3NCQUE3QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRVUsYUFBYTtzQkFBNUIsS0FBSztnQkFFVyxPQUFPO3NCQUF2QixNQUFNO2dCQUNVLFdBQVc7c0JBQTNCLE1BQU07Z0JBQ1UsT0FBTztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtcclxuICBJbnB1dFBhc3N3b3JkU2l6ZXNFbnVtLFxyXG4gIElucHV0UGFzc3dvcmRTaXplc1R5cGVzLFxyXG4gIElucHV0UGFzc3dvcmRWYWx1ZVR5cGVzLCBJbnB1dFBhc3N3b3JkVmFsdWVXaXRoSWRcclxufSBmcm9tICcuL2lucHV0LXBhc3N3b3JkLmVudW0nO1xyXG5pbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tICd1dWlkJztcclxuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ21yeC1pbnB1dC1wYXNzd29yZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXBhc3N3b3JkLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1wYXNzd29yZC5jb21wb25lbnQubGVzcyddLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRQYXNzd29yZENvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXRQYXNzd29yZENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBwdWJsaWMgdmFsdWU6IElucHV0UGFzc3dvcmRWYWx1ZVR5cGVzID0gJyc7XHJcbiAgcHVibGljIGlzU2hvd1Bhc3N3b3JkID0gZmFsc2VcclxuXHJcbiAgLy8gU0FWRSBTVEFURVxyXG4gIHB1YmxpYyB1dWlkOiBzdHJpbmcgPSB1dWlkdjQoKTtcclxuICBASW5wdXQoKSBwdWJsaWMgZmllbGRzOiBGaWVsZFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhsZW5ndGggPSAwO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtaW5sZW5ndGggPSAwO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlciA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21DbGFzc2VzID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIHNpemU6IElucHV0UGFzc3dvcmRTaXplc1R5cGVzID0gJ2xhcmdlJztcclxuXHJcbiAgLy8gVkFMSURBVEVcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkTWVzc2FnZTogc3RyaW5nIHwgc3RyaW5nW10gPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgY2hlY2tJbnZhbGlkOiB0cnVlIHwgZmFsc2UgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIHJlc3RyaWN0SW5wdXQgPSB0cnVlO1xyXG5cclxuICBAT3V0cHV0KCkgcHVibGljIGNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxJbnB1dFBhc3N3b3JkVmFsdWVUeXBlcz4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0UGFzc3dvcmRWYWx1ZVR5cGVzPigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgbW9kZWxDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJbnB1dFBhc3N3b3JkVmFsdWVXaXRoSWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnB1dFBhc3N3b3JkVmFsdWVXaXRoSWQ+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBibHVycmVkOiBFdmVudEVtaXR0ZXI8SW5wdXRQYXNzd29yZFZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRQYXNzd29yZFZhbHVlV2l0aElkPigpO1xyXG5cclxuICBwcml2YXRlIGdldCBfaXNJbnZhbGlkVmFsdWVMZW5ndGgoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5tYXhsZW5ndGggPCB0aGlzLnZhbHVlPy5sZW5ndGggJiYgdGhpcy5tYXhsZW5ndGggPiAwXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldEludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNJbnZhbGlkVmFsdWVMZW5ndGggfHwgdGhpcy5pbnZhbGlkXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldEludmFsaWRNZXNzYWdlKCk6IHN0cmluZyB8IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiB0aGlzLl9pc0ludmFsaWRWYWx1ZUxlbmd0aCA/ICfQn9GA0LXQstGL0YjQtdC90L4g0LTQvtC/0YPRgdGC0LjQvNC+0LUg0LfQvdCw0YfQtdC90LjQtSDRgdC40LzQstC+0LvQvtCyJyA6IHRoaXMuaW52YWxpZE1lc3NhZ2VcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgcmVhZG9ubHlDbGFzcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMucmVhZG9ubHkgPyAnbXJ4LWlucHV0X19yZWFkb25seScgOiAnJztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY2hlY2tWYWxpZENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmNoZWNrSW52YWxpZCA9PT0gZmFsc2UgP1xyXG4gICAgICAnbXJ4LWlucHV0LWNoZWNrZWQtc3VjY2VzcycgOlxyXG4gICAgICB0aGlzLmNoZWNrSW52YWxpZCA9PT0gdHJ1ZSA/ICdtcngtaW5wdXQtY2hlY2tlZC1lcnJvcicgOiAnJ1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7SW5wdXRQYXNzd29yZFNpemVzRW51bVt0aGlzLnNpemVdfSAke3RoaXMuY3VzdG9tQ2xhc3Nlc30gJHt0aGlzLnJlYWRvbmx5Q2xhc3N9ICR7dGhpcy5jaGVja1ZhbGlkQ2xhc3Nlc31gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHRvZ2dsZVNob3coKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzU2hvd1Bhc3N3b3JkID0gIXRoaXMuaXNTaG93UGFzc3dvcmRcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2UgPSAodmFsdWU6IElucHV0UGFzc3dvcmRWYWx1ZVR5cGVzKSA9PiB7fTtcclxuICBwcml2YXRlIG9uVG91Y2hlZCA9ICgpID0+IHt9O1xyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHt9KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHdyaXRlVmFsdWUob3V0c2lkZVZhbHVlOiBJbnB1dFBhc3N3b3JkVmFsdWVUeXBlcykge1xyXG4gICAgdGhpcy52YWx1ZSA9IG91dHNpZGVWYWx1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVZhbHVlKGluc2lkZVZhbHVlOiBJbnB1dFBhc3N3b3JkVmFsdWVUeXBlcykge1xyXG4gICAgdGhpcy52YWx1ZSA9IGluc2lkZVZhbHVlO1xyXG4gICAgdGhpcy5jaGFuZ2VkLmVtaXQoaW5zaWRlVmFsdWUpO1xyXG4gICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHt2YWx1ZTogaW5zaWRlVmFsdWUsIGlkOiB0aGlzLnV1aWR9KVxyXG4gICAgdGhpcy5vbkNoYW5nZShpbnNpZGVWYWx1ZSk7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uQmx1cihldmVudDogRXZlbnQpIHtcclxuICAgIHRoaXMuYmx1cnJlZC5lbWl0KHsgdmFsdWU6IHRoaXMudmFsdWUsIGlkOiB0aGlzLnV1aWQgfSlcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwibXJ4LWlucHV0LXBhc3N3b3JkXCJcclxuICBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiXHJcbiAgW2NsYXNzLm1yeC1pbnB1dC1lcnJvcl09XCJnZXRJbnZhbGlkXCI+XHJcbiAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC1wYXNzd29yZF9fd3JhcHBlclwiPlxyXG4gICAgPGlucHV0XHJcbiAgICAgIGF1dG9jb21wbGV0ZT1cIm5vcGVcIlxyXG4gICAgICAjaW5wdXRFbGVtZW50XHJcbiAgICAgIFt0eXBlXT1cImlzU2hvd1Bhc3N3b3JkID8gJ3RleHQnIDogJ3Bhc3N3b3JkJ1wiXHJcbiAgICAgIFtpZF09XCJ1dWlkXCJcclxuICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxyXG4gICAgICBbYXR0ci50aXRsZV09XCJwbGFjZWhvbGRlciB8fCAnJ1wiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgIFtyZWFkT25seV09XCJyZWFkb25seVwiXHJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIhZGlzYWJsZWQgJiYgcGxhY2Vob2xkZXIgPyBwbGFjZWhvbGRlciA6ICcnXCJcclxuICAgICAgW21pbmxlbmd0aF09XCJtaW5sZW5ndGggPiAwICYmIHJlc3RyaWN0SW5wdXQgPyBtaW5sZW5ndGggOiBudWxsXCJcclxuICAgICAgW21heGxlbmd0aF09XCJtYXhsZW5ndGggPiAwICYmIHJlc3RyaWN0SW5wdXQgPyBtYXhsZW5ndGggOiBudWxsXCJcclxuICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiXHJcbiAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcclxuICAgIC8+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC1wYXNzd29yZF9faWNvbnNcIj5cclxuICAgICAgPHNwYW5cclxuICAgICAgICBjbGFzcz1cIm1yeC1pY29uXCJcclxuICAgICAgICBbY2xhc3NdPVwiaXNTaG93UGFzc3dvcmQgPyAnaWNvbi1oaWRlJyA6ICdpY29uLXZpZXcnXCJcclxuICAgICAgICBbY2xhc3MuaWNvbi1mb250LTE2XT1cInNpemUgPT09ICdzbWFsbCcgfHwgc2l6ZSA9PT0gJ21lZGl1bSdcIlxyXG4gICAgICAgIFtjbGFzcy5pY29uLWZvbnQtMjRdPVwic2l6ZSA9PT0gJ2xhcmdlJ1wiXHJcbiAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVNob3coKVwiXHJcbiAgICAgID48L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8bXJ4LWNoYXJzLWxlZnRcclxuICAgICAgKm5nSWY9XCIhZGlzYWJsZWQgJiYgbWF4bGVuZ3RoXCJcclxuICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcclxuICAgICAgW21heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxyXG4gICAgPjwvbXJ4LWNoYXJzLWxlZnQ+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxtcngtZXJyb3ItbWVzc2FnZVxyXG4gICAgKm5nSWY9XCJnZXRJbnZhbGlkICYmIGdldEludmFsaWRNZXNzYWdlXCJcclxuICAgIFtpbnZhbGlkTWVzc2FnZV09XCJnZXRJbnZhbGlkTWVzc2FnZVwiXHJcbiAgPjwvbXJ4LWVycm9yLW1lc3NhZ2U+XHJcblxyXG4gIDxtcngtc2F2ZS1zdGF0ZSBbaWRdPVwidXVpZFwiIFtmaWVsZHNdPVwiZmllbGRzXCI+PC9tcngtc2F2ZS1zdGF0ZT5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -28,6 +28,7 @@ export class InputSearchComponent {
28
28
  this.invalid = false;
29
29
  this.invalidMessage = '';
30
30
  this.checkInvalid = null;
31
+ this.restrictInput = true;
31
32
  this.changed = new EventEmitter();
32
33
  this.modelChange = new EventEmitter();
33
34
  this.blurred = new EventEmitter();
@@ -112,13 +113,13 @@ export class InputSearchComponent {
112
113
  }
113
114
  }
114
115
  InputSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: InputSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
115
- InputSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: InputSearchComponent, selector: "mrx-input-search", inputs: { fields: "fields", disabled: "disabled", required: "required", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", placeholder: "placeholder", customClasses: "customClasses", mask: "mask", size: "size", invalid: "invalid", invalidMessage: "invalidMessage", checkInvalid: "checkInvalid" }, outputs: { changed: "changed", modelChange: "modelChange", blurred: "blurred", cleared: "cleared", searched: "searched" }, providers: [
116
+ InputSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: InputSearchComponent, selector: "mrx-input-search", inputs: { fields: "fields", disabled: "disabled", required: "required", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", placeholder: "placeholder", customClasses: "customClasses", mask: "mask", size: "size", invalid: "invalid", invalidMessage: "invalidMessage", checkInvalid: "checkInvalid", restrictInput: "restrictInput" }, outputs: { changed: "changed", modelChange: "modelChange", blurred: "blurred", cleared: "cleared", searched: "searched" }, providers: [
116
117
  {
117
118
  provide: NG_VALUE_ACCESSOR,
118
119
  useExisting: forwardRef(() => InputSearchComponent),
119
120
  multi: true,
120
121
  },
121
- ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"mrx-input-search\"\r\n [class]=\"getClasses\"\r\n [class.mrx-input-error]=\"getInvalid\">\r\n <div class=\"mrx-input-search__wrapper\">\r\n <input\r\n autocomplete=\"nope\"\r\n #inputElement\r\n [type]=\"'text'\"\r\n [id]=\"uuid\"\r\n [ngModel]=\"value\"\r\n [mask]=\"mask\"\r\n [attr.title]=\"placeholder || ''\"\r\n [disabled]=\"disabled\"\r\n [readOnly]=\"readonly\"\r\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\r\n [attr.minlength]=\"minlength > 0 ? minlength : null\"\r\n [attr.maxlength]=\"maxlength > 0 ? maxlength : null\"\r\n (ngModelChange)=\"updateValue($event)\"\r\n (blur)=\"onBlur($event)\"\r\n />\r\n\r\n <div class=\"mrx-input-search__icons\">\r\n <span\r\n class=\"mrx-icon icon-close mr-2\"\r\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\r\n [class.icon-font-24]=\"size === 'large'\"\r\n *ngIf=\"isShowCloseIcon\"\r\n (click)=\"onClear()\"\r\n ></span>\r\n\r\n <span\r\n class=\"mrx-icon icon-search\"\r\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\r\n [class.icon-font-24]=\"size === 'large'\"\r\n (click)=\"onSearch()\"\r\n ></span>\r\n </div>\r\n\r\n <mrx-chars-left\r\n *ngIf=\"!disabled && maxlength\"\r\n [value]=\"value\"\r\n [maxlength]=\"maxlength\"\r\n ></mrx-chars-left>\r\n </div>\r\n\r\n <mrx-error-message\r\n *ngIf=\"getInvalid && getInvalidMessage\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n ></mrx-error-message>\r\n\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\r\n</div>\r\n", styles: [".mrx-input-search.mrx-input-search{width:100%;position:relative}.mrx-input-search.mrx-input-search .mrx-input-search__wrapper{position:relative}.mrx-input-search.mrx-input-search:hover input{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-search.mrx-input-search input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;transition:outline-width .2s,border .2s}.mrx-input-search.mrx-input-search input:focus,.mrx-input-search.mrx-input-search input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-search.mrx-input-search input:disabled{background-color:var(--neutral-bg-disabled)}.mrx-input-search.mrx-input-search.mrx-input__readonly input[type=tel]:disabled{background-color:inherit}.mrx-input-search.mrx-input-search.mrx-input__readonly input{background-color:inherit}.mrx-input-search.mrx-input-search.mrx-input-search-lg input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-16) + var(--spacing-2)) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-search.mrx-input-search.mrx-input-search-md input{padding:calc(var(--sizing-2) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-16) - var(--spacing-1) - var(--spacing-half)) calc(var(--sizing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-search.mrx-input-search.mrx-input-search-sm input{padding:calc(var(--sizing-2) - var(--border-width-default)) calc(var(--spacing-16) - var(--spacing-1) - var(--spacing-half)) calc(var(--sizing-2) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-search.mrx-input-search.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-search.mrx-input-search.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-search.mrx-input-search.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}.mrx-input-search.mrx-input-search .mrx-input-search__icons{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);display:flex;align-items:center}.mrx-input-search.mrx-input-search .mrx-input-search__icons .mrx-icon{will-change:transform;cursor:pointer;color:var(--neutral-icon-default)}\n"], components: [{ type: i1.CharsLeftComponent, selector: "mrx-chars-left", inputs: ["maxlength", "valueLength", "value"] }, { type: i2.ErrorMessageComponent, selector: "mrx-error-message", inputs: ["invalid", "invalidMessage", "customClasses"] }, { type: i3.SaveStateComponent, selector: "mrx-save-state", inputs: ["type", "fields", "id"] }], directives: [{ type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.MaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "triggerOnMaskChange"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
122
+ ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"mrx-input-search\"\r\n [class]=\"getClasses\"\r\n [class.mrx-input-error]=\"getInvalid\">\r\n <div class=\"mrx-input-search__wrapper\">\r\n <input\r\n autocomplete=\"nope\"\r\n #inputElement\r\n [type]=\"'text'\"\r\n [id]=\"uuid\"\r\n [ngModel]=\"value\"\r\n [mask]=\"mask\"\r\n [attr.title]=\"placeholder || ''\"\r\n [disabled]=\"disabled\"\r\n [readOnly]=\"readonly\"\r\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\r\n [minlength]=\"minlength > 0 && restrictInput ? minlength : null\"\r\n [maxlength]=\"maxlength > 0 && restrictInput ? maxlength : null\"\r\n (ngModelChange)=\"updateValue($event)\"\r\n (blur)=\"onBlur($event)\"\r\n />\r\n\r\n <div class=\"mrx-input-search__icons\">\r\n <span\r\n class=\"mrx-icon icon-close mr-2\"\r\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\r\n [class.icon-font-24]=\"size === 'large'\"\r\n *ngIf=\"isShowCloseIcon\"\r\n (click)=\"onClear()\"\r\n ></span>\r\n\r\n <span\r\n class=\"mrx-icon icon-search\"\r\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\r\n [class.icon-font-24]=\"size === 'large'\"\r\n (click)=\"onSearch()\"\r\n ></span>\r\n </div>\r\n\r\n <mrx-chars-left\r\n *ngIf=\"!disabled && maxlength\"\r\n [value]=\"value\"\r\n [maxlength]=\"maxlength\"\r\n ></mrx-chars-left>\r\n </div>\r\n\r\n <mrx-error-message\r\n *ngIf=\"getInvalid && getInvalidMessage\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n ></mrx-error-message>\r\n\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\r\n</div>\r\n", styles: [".mrx-input-search.mrx-input-search{width:100%;position:relative}.mrx-input-search.mrx-input-search .mrx-input-search__wrapper{position:relative}.mrx-input-search.mrx-input-search:hover input{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-search.mrx-input-search input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;transition:outline-width .2s,border .2s}.mrx-input-search.mrx-input-search input:focus,.mrx-input-search.mrx-input-search input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-search.mrx-input-search input:disabled{background-color:var(--neutral-bg-disabled)}.mrx-input-search.mrx-input-search.mrx-input__readonly input[type=tel]:disabled{background-color:inherit}.mrx-input-search.mrx-input-search.mrx-input__readonly input{background-color:inherit}.mrx-input-search.mrx-input-search.mrx-input-search-lg input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-16) + var(--spacing-2)) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-search.mrx-input-search.mrx-input-search-md input{padding:calc(var(--sizing-2) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-16) - var(--spacing-1) - var(--spacing-half)) calc(var(--sizing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-search.mrx-input-search.mrx-input-search-sm input{padding:calc(var(--sizing-2) - var(--border-width-default)) calc(var(--spacing-16) - var(--spacing-1) - var(--spacing-half)) calc(var(--sizing-2) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-search.mrx-input-search.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-search.mrx-input-search.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-search.mrx-input-search.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}.mrx-input-search.mrx-input-search .mrx-input-search__icons{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);display:flex;align-items:center}.mrx-input-search.mrx-input-search .mrx-input-search__icons .mrx-icon{will-change:transform;cursor:pointer;color:var(--neutral-icon-default)}\n"], components: [{ type: i1.CharsLeftComponent, selector: "mrx-chars-left", inputs: ["maxlength", "valueLength", "value"] }, { type: i2.ErrorMessageComponent, selector: "mrx-error-message", inputs: ["invalid", "invalidMessage", "customClasses"] }, { type: i3.SaveStateComponent, selector: "mrx-save-state", inputs: ["type", "fields", "id"] }], directives: [{ type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.MaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "triggerOnMaskChange"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
122
123
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: InputSearchComponent, decorators: [{
123
124
  type: Component,
124
125
  args: [{ selector: 'mrx-input-search', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
@@ -127,7 +128,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
127
128
  useExisting: forwardRef(() => InputSearchComponent),
128
129
  multi: true,
129
130
  },
130
- ], template: "<div\r\n class=\"mrx-input-search\"\r\n [class]=\"getClasses\"\r\n [class.mrx-input-error]=\"getInvalid\">\r\n <div class=\"mrx-input-search__wrapper\">\r\n <input\r\n autocomplete=\"nope\"\r\n #inputElement\r\n [type]=\"'text'\"\r\n [id]=\"uuid\"\r\n [ngModel]=\"value\"\r\n [mask]=\"mask\"\r\n [attr.title]=\"placeholder || ''\"\r\n [disabled]=\"disabled\"\r\n [readOnly]=\"readonly\"\r\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\r\n [attr.minlength]=\"minlength > 0 ? minlength : null\"\r\n [attr.maxlength]=\"maxlength > 0 ? maxlength : null\"\r\n (ngModelChange)=\"updateValue($event)\"\r\n (blur)=\"onBlur($event)\"\r\n />\r\n\r\n <div class=\"mrx-input-search__icons\">\r\n <span\r\n class=\"mrx-icon icon-close mr-2\"\r\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\r\n [class.icon-font-24]=\"size === 'large'\"\r\n *ngIf=\"isShowCloseIcon\"\r\n (click)=\"onClear()\"\r\n ></span>\r\n\r\n <span\r\n class=\"mrx-icon icon-search\"\r\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\r\n [class.icon-font-24]=\"size === 'large'\"\r\n (click)=\"onSearch()\"\r\n ></span>\r\n </div>\r\n\r\n <mrx-chars-left\r\n *ngIf=\"!disabled && maxlength\"\r\n [value]=\"value\"\r\n [maxlength]=\"maxlength\"\r\n ></mrx-chars-left>\r\n </div>\r\n\r\n <mrx-error-message\r\n *ngIf=\"getInvalid && getInvalidMessage\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n ></mrx-error-message>\r\n\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\r\n</div>\r\n", styles: [".mrx-input-search.mrx-input-search{width:100%;position:relative}.mrx-input-search.mrx-input-search .mrx-input-search__wrapper{position:relative}.mrx-input-search.mrx-input-search:hover input{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-search.mrx-input-search input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;transition:outline-width .2s,border .2s}.mrx-input-search.mrx-input-search input:focus,.mrx-input-search.mrx-input-search input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-search.mrx-input-search input:disabled{background-color:var(--neutral-bg-disabled)}.mrx-input-search.mrx-input-search.mrx-input__readonly input[type=tel]:disabled{background-color:inherit}.mrx-input-search.mrx-input-search.mrx-input__readonly input{background-color:inherit}.mrx-input-search.mrx-input-search.mrx-input-search-lg input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-16) + var(--spacing-2)) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-search.mrx-input-search.mrx-input-search-md input{padding:calc(var(--sizing-2) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-16) - var(--spacing-1) - var(--spacing-half)) calc(var(--sizing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-search.mrx-input-search.mrx-input-search-sm input{padding:calc(var(--sizing-2) - var(--border-width-default)) calc(var(--spacing-16) - var(--spacing-1) - var(--spacing-half)) calc(var(--sizing-2) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-search.mrx-input-search.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-search.mrx-input-search.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-search.mrx-input-search.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}.mrx-input-search.mrx-input-search .mrx-input-search__icons{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);display:flex;align-items:center}.mrx-input-search.mrx-input-search .mrx-input-search__icons .mrx-icon{will-change:transform;cursor:pointer;color:var(--neutral-icon-default)}\n"] }]
131
+ ], template: "<div\r\n class=\"mrx-input-search\"\r\n [class]=\"getClasses\"\r\n [class.mrx-input-error]=\"getInvalid\">\r\n <div class=\"mrx-input-search__wrapper\">\r\n <input\r\n autocomplete=\"nope\"\r\n #inputElement\r\n [type]=\"'text'\"\r\n [id]=\"uuid\"\r\n [ngModel]=\"value\"\r\n [mask]=\"mask\"\r\n [attr.title]=\"placeholder || ''\"\r\n [disabled]=\"disabled\"\r\n [readOnly]=\"readonly\"\r\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\r\n [minlength]=\"minlength > 0 && restrictInput ? minlength : null\"\r\n [maxlength]=\"maxlength > 0 && restrictInput ? maxlength : null\"\r\n (ngModelChange)=\"updateValue($event)\"\r\n (blur)=\"onBlur($event)\"\r\n />\r\n\r\n <div class=\"mrx-input-search__icons\">\r\n <span\r\n class=\"mrx-icon icon-close mr-2\"\r\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\r\n [class.icon-font-24]=\"size === 'large'\"\r\n *ngIf=\"isShowCloseIcon\"\r\n (click)=\"onClear()\"\r\n ></span>\r\n\r\n <span\r\n class=\"mrx-icon icon-search\"\r\n [class.icon-font-16]=\"size === 'small' || size === 'medium'\"\r\n [class.icon-font-24]=\"size === 'large'\"\r\n (click)=\"onSearch()\"\r\n ></span>\r\n </div>\r\n\r\n <mrx-chars-left\r\n *ngIf=\"!disabled && maxlength\"\r\n [value]=\"value\"\r\n [maxlength]=\"maxlength\"\r\n ></mrx-chars-left>\r\n </div>\r\n\r\n <mrx-error-message\r\n *ngIf=\"getInvalid && getInvalidMessage\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n ></mrx-error-message>\r\n\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\r\n</div>\r\n", styles: [".mrx-input-search.mrx-input-search{width:100%;position:relative}.mrx-input-search.mrx-input-search .mrx-input-search__wrapper{position:relative}.mrx-input-search.mrx-input-search:hover input{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-search.mrx-input-search input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;transition:outline-width .2s,border .2s}.mrx-input-search.mrx-input-search input:focus,.mrx-input-search.mrx-input-search input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-search.mrx-input-search input:disabled{background-color:var(--neutral-bg-disabled)}.mrx-input-search.mrx-input-search.mrx-input__readonly input[type=tel]:disabled{background-color:inherit}.mrx-input-search.mrx-input-search.mrx-input__readonly input{background-color:inherit}.mrx-input-search.mrx-input-search.mrx-input-search-lg input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-16) + var(--spacing-2)) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-search.mrx-input-search.mrx-input-search-md input{padding:calc(var(--sizing-2) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-16) - var(--spacing-1) - var(--spacing-half)) calc(var(--sizing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-search.mrx-input-search.mrx-input-search-sm input{padding:calc(var(--sizing-2) - var(--border-width-default)) calc(var(--spacing-16) - var(--spacing-1) - var(--spacing-half)) calc(var(--sizing-2) - var(--border-width-default)) var(--spacing-4);font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-search.mrx-input-search.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-search.mrx-input-search.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-search.mrx-input-search.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}.mrx-input-search.mrx-input-search .mrx-input-search__icons{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);display:flex;align-items:center}.mrx-input-search.mrx-input-search .mrx-input-search__icons .mrx-icon{will-change:transform;cursor:pointer;color:var(--neutral-icon-default)}\n"] }]
131
132
  }], propDecorators: { fields: [{
132
133
  type: Input
133
134
  }], inputElement: [{
@@ -157,6 +158,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
157
158
  type: Input
158
159
  }], checkInvalid: [{
159
160
  type: Input
161
+ }], restrictInput: [{
162
+ type: Input
160
163
  }], changed: [{
161
164
  type: Output
162
165
  }], modelChange: [{
@@ -168,4 +171,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
168
171
  }], searched: [{
169
172
  type: Output
170
173
  }] } });
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LXNlYXJjaC9pbnB1dC1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtc2VhcmNoL2lucHV0LXNlYXJjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQ0wsb0JBQW9CLEVBSXJCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7O0FBZ0JwQyxNQUFNLE9BQU8sb0JBQW9CO0lBYmpDO1FBY1MsVUFBSyxHQUEwQixFQUFFLENBQUM7UUFJekMsYUFBYTtRQUNOLFNBQUksR0FBVyxNQUFNLEVBQUUsQ0FBQztRQUNmLFdBQU0sR0FBWSxFQUFFLENBQUM7UUFJckIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsY0FBUyxHQUFHLENBQUMsQ0FBQztRQUNkLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUNuQixTQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ1YsU0FB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O2dCQUVXLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsV0FBVztzQkFBM0IsTUFBTTtnQkFDVSxPQUFPO3NCQUF2QixNQUFNO2dCQUNVLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsUUFBUTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7XHJcbiAgSW5wdXRTZWFyY2hTaXplc0VudW0sXHJcbiAgSW5wdXRTZWFyY2hTaXplc1R5cGVzLFxyXG4gIElucHV0U2VhcmNoVmFsdWVUeXBlcyxcclxuICBJbnB1dFNlYXJjaFZhbHVlV2l0aElkXHJcbn0gZnJvbSAnLi9pbnB1dC1zZWFyY2guZW51bSc7XHJcbmltcG9ydCB7IHY0IGFzIHV1aWR2NCB9IGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LWlucHV0LXNlYXJjaCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXNlYXJjaC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtc2VhcmNoLmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dFNlYXJjaENvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXRTZWFyY2hDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcbiAgcHVibGljIHZhbHVlOiBJbnB1dFNlYXJjaFZhbHVlVHlwZXMgPSAnJztcclxuICBwdWJsaWMgc2VsZWN0aW9uU3RhcnQ6IG51bWJlciB8IHVuZGVmaW5lZDtcclxuICBwdWJsaWMgc2VsZWN0aW9uRW5kOiBudW1iZXIgfCB1bmRlZmluZWQ7XHJcblxyXG4gIC8vIFNBVkUgU1RBVEVcclxuICBwdWJsaWMgdXVpZDogc3RyaW5nID0gdXVpZHY0KCk7XHJcbiAgQElucHV0KCkgcHVibGljIGZpZWxkczogRmllbGRbXSA9IFtdO1xyXG5cclxuICBAVmlld0NoaWxkKCdpbnB1dEVsZW1lbnQnKSBpbnB1dEVsZW1lbnQhOiBFbGVtZW50UmVmO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgbWF4bGVuZ3RoID0gMDtcclxuICBASW5wdXQoKSBwdWJsaWMgbWlubGVuZ3RoID0gMDtcclxuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXIgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXNrID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIHNpemU6IElucHV0U2VhcmNoU2l6ZXNUeXBlcyA9ICdsYXJnZSc7XHJcblxyXG4gIC8vIFZBTElEQVRFXHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZE1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGNoZWNrSW52YWxpZDogdHJ1ZSB8IGZhbHNlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2hhbmdlZDogRXZlbnRFbWl0dGVyPElucHV0U2VhcmNoVmFsdWVUeXBlcz4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0U2VhcmNoVmFsdWVUeXBlcz4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG1vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SW5wdXRTZWFyY2hWYWx1ZVdpdGhJZD4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0U2VhcmNoVmFsdWVXaXRoSWQ+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBibHVycmVkOiBFdmVudEVtaXR0ZXI8SW5wdXRTZWFyY2hWYWx1ZVdpdGhJZD4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0U2VhcmNoVmFsdWVXaXRoSWQ+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBjbGVhcmVkOiBFdmVudEVtaXR0ZXI8bnVsbD4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bGw+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBzZWFyY2hlZDogRXZlbnRFbWl0dGVyPG51bGw+ID0gbmV3IEV2ZW50RW1pdHRlcjxudWxsPigpO1xyXG5cclxuICBwcml2YXRlIGdldCBfaXNJbnZhbGlkVmFsdWVMZW5ndGgoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5tYXhsZW5ndGggPCB0aGlzLnZhbHVlPy5sZW5ndGggJiYgdGhpcy5tYXhsZW5ndGggPiAwXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldEludmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNJbnZhbGlkVmFsdWVMZW5ndGggfHwgdGhpcy5pbnZhbGlkXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldEludmFsaWRNZXNzYWdlKCk6IHN0cmluZyB8IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiB0aGlzLl9pc0ludmFsaWRWYWx1ZUxlbmd0aCA/ICfQn9GA0LXQstGL0YjQtdC90L4g0LTQvtC/0YPRgdGC0LjQvNC+0LUg0LfQvdCw0YfQtdC90LjQtSDRgdC40LzQstC+0LvQvtCyJyA6IHRoaXMuaW52YWxpZE1lc3NhZ2VcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgcmVhZG9ubHlDbGFzcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMucmVhZG9ubHkgPyAnbXJ4LWlucHV0X19yZWFkb25seScgOiAnJztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgY2hlY2tWYWxpZENsYXNzZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmNoZWNrSW52YWxpZCA9PT0gZmFsc2UgP1xyXG4gICAgICAnbXJ4LWlucHV0LWNoZWNrZWQtc3VjY2VzcycgOlxyXG4gICAgICB0aGlzLmNoZWNrSW52YWxpZCA9PT0gdHJ1ZSA/ICdtcngtaW5wdXQtY2hlY2tlZC1lcnJvcicgOiAnJztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0Q2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke0lucHV0U2VhcmNoU2l6ZXNFbnVtW3RoaXMuc2l6ZV19ICR7dGhpcy5jdXN0b21DbGFzc2VzfSAke3RoaXMucmVhZG9ubHlDbGFzc30gJHt0aGlzLmNoZWNrVmFsaWRDbGFzc2VzfWA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGlzU2hvd0Nsb3NlSWNvbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnZhbHVlICE9PSAnJyAmJiB0aGlzLnZhbHVlICE9PSB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25DbGVhcigpOiB2b2lkIHtcclxuICAgIHRoaXMudXBkYXRlVmFsdWUoJycpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuY2xlYXJlZC5lbWl0KCk7XHJcbiAgICB9LCAwKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblNlYXJjaCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VhcmNoZWQuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGluc2VydFBvc2l0aW9uVGV4dCh0YWdUZXh0OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnNlbGVjdGlvblN0YXJ0ICYmIHRoaXMuc2VsZWN0aW9uRW5kKSB7XHJcbiAgICAgIGNvbnN0IGZpcnN0VGV4dCA9IHRoaXMudmFsdWUuc3Vic3RyaW5nKDAsIHRoaXMuc2VsZWN0aW9uU3RhcnQpICsgdGFnVGV4dDtcclxuICAgICAgY29uc3Qgc2Vjb25kVGV4dCA9IHRoaXMudmFsdWUuc3Vic3RyaW5nKHRoaXMuc2VsZWN0aW9uRW5kKTtcclxuICAgICAgY29uc3QgdGV4dCA9IGZpcnN0VGV4dCArIHNlY29uZFRleHQ7XHJcblxyXG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRleHQpO1xyXG5cclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydCA9IGZpcnN0VGV4dC5sZW5ndGg7XHJcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25FbmQgPSBmaXJzdFRleHQubGVuZ3RoO1xyXG4gICAgICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgfSwgMCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlU2VsZWN0aW9uKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuc2VsZWN0aW9uU3RhcnQgPSBldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQ7XHJcbiAgICB0aGlzLnNlbGVjdGlvbkVuZCA9IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25FbmQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uQ2hhbmdlID0gKHZhbHVlOiBJbnB1dFNlYXJjaFZhbHVlVHlwZXMpID0+IHtcclxuICB9O1xyXG4gIHByaXZhdGUgb25Ub3VjaGVkID0gKCkgPT4ge1xyXG4gIH07XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4ge30pOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgd3JpdGVWYWx1ZShvdXRzaWRlVmFsdWU6IElucHV0U2VhcmNoVmFsdWVUeXBlcykge1xyXG4gICAgdGhpcy52YWx1ZSA9IG91dHNpZGVWYWx1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVZhbHVlKGluc2lkZVZhbHVlOiBJbnB1dFNlYXJjaFZhbHVlVHlwZXMpIHtcclxuICAgIHRoaXMudmFsdWUgPSBpbnNpZGVWYWx1ZTtcclxuICAgIHRoaXMuY2hhbmdlZC5lbWl0KGluc2lkZVZhbHVlKTtcclxuICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdCh7dmFsdWU6IGluc2lkZVZhbHVlLCBpZDogdGhpcy51dWlkfSlcclxuICAgIHRoaXMub25DaGFuZ2UoaW5zaWRlVmFsdWUpO1xyXG4gICAgdGhpcy5vblRvdWNoZWQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkJsdXIoZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICB0aGlzLnVwZGF0ZVNlbGVjdGlvbihldmVudClcclxuICAgIHRoaXMuYmx1cnJlZC5lbWl0KHsgdmFsdWU6IHRoaXMudmFsdWUsIGlkOiB0aGlzLnV1aWQgfSlcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwibXJ4LWlucHV0LXNlYXJjaFwiXHJcbiAgW2NsYXNzXT1cImdldENsYXNzZXNcIlxyXG4gIFtjbGFzcy5tcngtaW5wdXQtZXJyb3JdPVwiZ2V0SW52YWxpZFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJtcngtaW5wdXQtc2VhcmNoX193cmFwcGVyXCI+XHJcbiAgICA8aW5wdXRcclxuICAgICAgYXV0b2NvbXBsZXRlPVwibm9wZVwiXHJcbiAgICAgICNpbnB1dEVsZW1lbnRcclxuICAgICAgW3R5cGVdPVwiJ3RleHQnXCJcclxuICAgICAgW2lkXT1cInV1aWRcIlxyXG4gICAgICBbbmdNb2RlbF09XCJ2YWx1ZVwiXHJcbiAgICAgIFttYXNrXT1cIm1hc2tcIlxyXG4gICAgICBbYXR0ci50aXRsZV09XCJwbGFjZWhvbGRlciB8fCAnJ1wiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgIFtyZWFkT25seV09XCJyZWFkb25seVwiXHJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCIhZGlzYWJsZWQgJiYgcGxhY2Vob2xkZXIgPyBwbGFjZWhvbGRlciA6ICcnXCJcclxuICAgICAgW2F0dHIubWlubGVuZ3RoXT1cIm1pbmxlbmd0aCA+IDAgPyBtaW5sZW5ndGggOiBudWxsXCJcclxuICAgICAgW2F0dHIubWF4bGVuZ3RoXT1cIm1heGxlbmd0aCA+IDAgPyBtYXhsZW5ndGggOiBudWxsXCJcclxuICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiXHJcbiAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcclxuICAgIC8+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC1zZWFyY2hfX2ljb25zXCI+XHJcbiAgICAgIDxzcGFuXHJcbiAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBpY29uLWNsb3NlIG1yLTJcIlxyXG4gICAgICAgIFtjbGFzcy5pY29uLWZvbnQtMTZdPVwic2l6ZSA9PT0gJ3NtYWxsJyB8fCBzaXplID09PSAnbWVkaXVtJ1wiXHJcbiAgICAgICAgW2NsYXNzLmljb24tZm9udC0yNF09XCJzaXplID09PSAnbGFyZ2UnXCJcclxuICAgICAgICAqbmdJZj1cImlzU2hvd0Nsb3NlSWNvblwiXHJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xlYXIoKVwiXHJcbiAgICAgID48L3NwYW4+XHJcblxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIGNsYXNzPVwibXJ4LWljb24gaWNvbi1zZWFyY2hcIlxyXG4gICAgICAgIFtjbGFzcy5pY29uLWZvbnQtMTZdPVwic2l6ZSA9PT0gJ3NtYWxsJyB8fCBzaXplID09PSAnbWVkaXVtJ1wiXHJcbiAgICAgICAgW2NsYXNzLmljb24tZm9udC0yNF09XCJzaXplID09PSAnbGFyZ2UnXCJcclxuICAgICAgICAoY2xpY2spPVwib25TZWFyY2goKVwiXHJcbiAgICAgID48L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8bXJ4LWNoYXJzLWxlZnRcclxuICAgICAgKm5nSWY9XCIhZGlzYWJsZWQgJiYgbWF4bGVuZ3RoXCJcclxuICAgICAgW3ZhbHVlXT1cInZhbHVlXCJcclxuICAgICAgW21heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxyXG4gICAgPjwvbXJ4LWNoYXJzLWxlZnQ+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxtcngtZXJyb3ItbWVzc2FnZVxyXG4gICAgKm5nSWY9XCJnZXRJbnZhbGlkICYmIGdldEludmFsaWRNZXNzYWdlXCJcclxuICAgIFtpbnZhbGlkTWVzc2FnZV09XCJnZXRJbnZhbGlkTWVzc2FnZVwiXHJcbiAgPjwvbXJ4LWVycm9yLW1lc3NhZ2U+XHJcblxyXG4gIDxtcngtc2F2ZS1zdGF0ZSBbaWRdPVwidXVpZFwiIFtmaWVsZHNdPVwiZmllbGRzXCI+PC9tcngtc2F2ZS1zdGF0ZT5cclxuPC9kaXY+XHJcbiJdfQ==
174
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtc2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvY29tcG9uZW50cy9mb3JtL2lucHV0LXNlYXJjaC9pbnB1dC1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtc2VhcmNoL2lucHV0LXNlYXJjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQ0wsb0JBQW9CLEVBSXJCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7O0FBZ0JwQyxNQUFNLE9BQU8sb0JBQW9CO0lBYmpDO1FBY1MsVUFBSyxHQUEwQixFQUFFLENBQUM7UUFJekMsYUFBYTtRQUNOLFNBQUksR0FBVyxNQUFNLEVBQUUsQ0FBQztRQUNmLFdBQU0sR0FBWSxFQUFFLENBQUM7UUFJckIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsY0FBUyxHQUFHLENBQUMsQ0FBQztRQUNkLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUNuQixTQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ1YsU0FB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LEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFFVSxhQUFhO3NCQUE1QixLQUFLO2dCQUVXLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsV0FBVztzQkFBM0IsTUFBTTtnQkFDVSxPQUFPO3NCQUF2QixNQUFNO2dCQUNVLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsUUFBUTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7XHJcbiAgSW5wdXRTZWFyY2hTaXplc0VudW0sXHJcbiAgSW5wdXRTZWFyY2hTaXplc1R5cGVzLFxyXG4gIElucHV0U2VhcmNoVmFsdWVUeXBlcyxcclxuICBJbnB1dFNlYXJjaFZhbHVlV2l0aElkXHJcbn0gZnJvbSAnLi9pbnB1dC1zZWFyY2guZW51bSc7XHJcbmltcG9ydCB7IHY0IGFzIHV1aWR2NCB9IGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LWlucHV0LXNlYXJjaCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0LXNlYXJjaC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW5wdXQtc2VhcmNoLmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dFNlYXJjaENvbXBvbmVudCksXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXRTZWFyY2hDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcbiAgcHVibGljIHZhbHVlOiBJbnB1dFNlYXJjaFZhbHVlVHlwZXMgPSAnJztcclxuICBwdWJsaWMgc2VsZWN0aW9uU3RhcnQ6IG51bWJlciB8IHVuZGVmaW5lZDtcclxuICBwdWJsaWMgc2VsZWN0aW9uRW5kOiBudW1iZXIgfCB1bmRlZmluZWQ7XHJcblxyXG4gIC8vIFNBVkUgU1RBVEVcclxuICBwdWJsaWMgdXVpZDogc3RyaW5nID0gdXVpZHY0KCk7XHJcbiAgQElucHV0KCkgcHVibGljIGZpZWxkczogRmllbGRbXSA9IFtdO1xyXG5cclxuICBAVmlld0NoaWxkKCdpbnB1dEVsZW1lbnQnKSBpbnB1dEVsZW1lbnQhOiBFbGVtZW50UmVmO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgbWF4bGVuZ3RoID0gMDtcclxuICBASW5wdXQoKSBwdWJsaWMgbWlubGVuZ3RoID0gMDtcclxuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXIgPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tQ2xhc3NlcyA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXNrID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIHNpemU6IElucHV0U2VhcmNoU2l6ZXNUeXBlcyA9ICdsYXJnZSc7XHJcblxyXG4gIC8vIFZBTElEQVRFXHJcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZE1lc3NhZ2U6IHN0cmluZyB8IHN0cmluZ1tdID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGNoZWNrSW52YWxpZDogdHJ1ZSB8IGZhbHNlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyByZXN0cmljdElucHV0ID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBjaGFuZ2VkOiBFdmVudEVtaXR0ZXI8SW5wdXRTZWFyY2hWYWx1ZVR5cGVzPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRTZWFyY2hWYWx1ZVR5cGVzPigpO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgbW9kZWxDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJbnB1dFNlYXJjaFZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRTZWFyY2hWYWx1ZVdpdGhJZD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIGJsdXJyZWQ6IEV2ZW50RW1pdHRlcjxJbnB1dFNlYXJjaFZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRTZWFyY2hWYWx1ZVdpdGhJZD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIGNsZWFyZWQ6IEV2ZW50RW1pdHRlcjxudWxsPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIHNlYXJjaGVkOiBFdmVudEVtaXR0ZXI8bnVsbD4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bGw+KCk7XHJcblxyXG4gIHByaXZhdGUgZ2V0IF9pc0ludmFsaWRWYWx1ZUxlbmd0aCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLm1heGxlbmd0aCA8IHRoaXMudmFsdWU/Lmxlbmd0aCAmJiB0aGlzLm1heGxlbmd0aCA+IDBcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0SW52YWxpZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9pc0ludmFsaWRWYWx1ZUxlbmd0aCB8fCB0aGlzLmludmFsaWRcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0SW52YWxpZE1lc3NhZ2UoKTogc3RyaW5nIHwgc3RyaW5nW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzSW52YWxpZFZhbHVlTGVuZ3RoID8gJ9Cf0YDQtdCy0YvRiNC10L3QviDQtNC+0L/Rg9GB0YLQuNC80L7QtSDQt9C90LDRh9C10L3QuNC1INGB0LjQvNCy0L7Qu9C+0LInIDogdGhpcy5pbnZhbGlkTWVzc2FnZVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCByZWFkb25seUNsYXNzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5yZWFkb25seSA/ICdtcngtaW5wdXRfX3JlYWRvbmx5JyA6ICcnO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBjaGVja1ZhbGlkQ2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuY2hlY2tJbnZhbGlkID09PSBmYWxzZSA/XHJcbiAgICAgICdtcngtaW5wdXQtY2hlY2tlZC1zdWNjZXNzJyA6XHJcbiAgICAgIHRoaXMuY2hlY2tJbnZhbGlkID09PSB0cnVlID8gJ21yeC1pbnB1dC1jaGVja2VkLWVycm9yJyA6ICcnO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7SW5wdXRTZWFyY2hTaXplc0VudW1bdGhpcy5zaXplXX0gJHt0aGlzLmN1c3RvbUNsYXNzZXN9ICR7dGhpcy5yZWFkb25seUNsYXNzfSAke3RoaXMuY2hlY2tWYWxpZENsYXNzZXN9YDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgaXNTaG93Q2xvc2VJY29uKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsdWUgIT09ICcnICYmIHRoaXMudmFsdWUgIT09IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkNsZWFyKCk6IHZvaWQge1xyXG4gICAgdGhpcy51cGRhdGVWYWx1ZSgnJyk7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5jbGVhcmVkLmVtaXQoKTtcclxuICAgIH0sIDApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uU2VhcmNoKCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWFyY2hlZC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5zZXJ0UG9zaXRpb25UZXh0KHRhZ1RleHQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uU3RhcnQgJiYgdGhpcy5zZWxlY3Rpb25FbmQpIHtcclxuICAgICAgY29uc3QgZmlyc3RUZXh0ID0gdGhpcy52YWx1ZS5zdWJzdHJpbmcoMCwgdGhpcy5zZWxlY3Rpb25TdGFydCkgKyB0YWdUZXh0O1xyXG4gICAgICBjb25zdCBzZWNvbmRUZXh0ID0gdGhpcy52YWx1ZS5zdWJzdHJpbmcodGhpcy5zZWxlY3Rpb25FbmQpO1xyXG4gICAgICBjb25zdCB0ZXh0ID0gZmlyc3RUZXh0ICsgc2Vjb25kVGV4dDtcclxuXHJcbiAgICAgIHRoaXMudXBkYXRlVmFsdWUodGV4dCk7XHJcblxyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0ID0gZmlyc3RUZXh0Lmxlbmd0aDtcclxuICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvbkVuZCA9IGZpcnN0VGV4dC5sZW5ndGg7XHJcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG4gICAgICB9LCAwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVTZWxlY3Rpb24oZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5zZWxlY3Rpb25TdGFydCA9IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydDtcclxuICAgIHRoaXMuc2VsZWN0aW9uRW5kID0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvbkVuZDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2UgPSAodmFsdWU6IElucHV0U2VhcmNoVmFsdWVUeXBlcykgPT4ge1xyXG4gIH07XHJcbiAgcHJpdmF0ZSBvblRvdWNoZWQgPSAoKSA9PiB7XHJcbiAgfTtcclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSkge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB7fSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB3cml0ZVZhbHVlKG91dHNpZGVWYWx1ZTogSW5wdXRTZWFyY2hWYWx1ZVR5cGVzKSB7XHJcbiAgICB0aGlzLnZhbHVlID0gb3V0c2lkZVZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdXBkYXRlVmFsdWUoaW5zaWRlVmFsdWU6IElucHV0U2VhcmNoVmFsdWVUeXBlcykge1xyXG4gICAgdGhpcy52YWx1ZSA9IGluc2lkZVZhbHVlO1xyXG4gICAgdGhpcy5jaGFuZ2VkLmVtaXQoaW5zaWRlVmFsdWUpO1xyXG4gICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHt2YWx1ZTogaW5zaWRlVmFsdWUsIGlkOiB0aGlzLnV1aWR9KVxyXG4gICAgdGhpcy5vbkNoYW5nZShpbnNpZGVWYWx1ZSk7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uQmx1cihldmVudDogRXZlbnQpIHtcclxuICAgIHRoaXMudXBkYXRlU2VsZWN0aW9uKGV2ZW50KVxyXG4gICAgdGhpcy5ibHVycmVkLmVtaXQoeyB2YWx1ZTogdGhpcy52YWx1ZSwgaWQ6IHRoaXMudXVpZCB9KVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJtcngtaW5wdXQtc2VhcmNoXCJcclxuICBbY2xhc3NdPVwiZ2V0Q2xhc3Nlc1wiXHJcbiAgW2NsYXNzLm1yeC1pbnB1dC1lcnJvcl09XCJnZXRJbnZhbGlkXCI+XHJcbiAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC1zZWFyY2hfX3dyYXBwZXJcIj5cclxuICAgIDxpbnB1dFxyXG4gICAgICBhdXRvY29tcGxldGU9XCJub3BlXCJcclxuICAgICAgI2lucHV0RWxlbWVudFxyXG4gICAgICBbdHlwZV09XCIndGV4dCdcIlxyXG4gICAgICBbaWRdPVwidXVpZFwiXHJcbiAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcclxuICAgICAgW21hc2tdPVwibWFza1wiXHJcbiAgICAgIFthdHRyLnRpdGxlXT1cInBsYWNlaG9sZGVyIHx8ICcnXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgW3JlYWRPbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgW3BsYWNlaG9sZGVyXT1cIiFkaXNhYmxlZCAmJiBwbGFjZWhvbGRlciA/IHBsYWNlaG9sZGVyIDogJydcIlxyXG4gICAgICBbbWlubGVuZ3RoXT1cIm1pbmxlbmd0aCA+IDAgJiYgcmVzdHJpY3RJbnB1dCA/IG1pbmxlbmd0aCA6IG51bGxcIlxyXG4gICAgICBbbWF4bGVuZ3RoXT1cIm1heGxlbmd0aCA+IDAgJiYgcmVzdHJpY3RJbnB1dCA/IG1heGxlbmd0aCA6IG51bGxcIlxyXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJ1cGRhdGVWYWx1ZSgkZXZlbnQpXCJcclxuICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxyXG4gICAgLz5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwibXJ4LWlucHV0LXNlYXJjaF9faWNvbnNcIj5cclxuICAgICAgPHNwYW5cclxuICAgICAgICBjbGFzcz1cIm1yeC1pY29uIGljb24tY2xvc2UgbXItMlwiXHJcbiAgICAgICAgW2NsYXNzLmljb24tZm9udC0xNl09XCJzaXplID09PSAnc21hbGwnIHx8IHNpemUgPT09ICdtZWRpdW0nXCJcclxuICAgICAgICBbY2xhc3MuaWNvbi1mb250LTI0XT1cInNpemUgPT09ICdsYXJnZSdcIlxyXG4gICAgICAgICpuZ0lmPVwiaXNTaG93Q2xvc2VJY29uXCJcclxuICAgICAgICAoY2xpY2spPVwib25DbGVhcigpXCJcclxuICAgICAgPjwvc3Bhbj5cclxuXHJcbiAgICAgIDxzcGFuXHJcbiAgICAgICAgY2xhc3M9XCJtcngtaWNvbiBpY29uLXNlYXJjaFwiXHJcbiAgICAgICAgW2NsYXNzLmljb24tZm9udC0xNl09XCJzaXplID09PSAnc21hbGwnIHx8IHNpemUgPT09ICdtZWRpdW0nXCJcclxuICAgICAgICBbY2xhc3MuaWNvbi1mb250LTI0XT1cInNpemUgPT09ICdsYXJnZSdcIlxyXG4gICAgICAgIChjbGljayk9XCJvblNlYXJjaCgpXCJcclxuICAgICAgPjwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxtcngtY2hhcnMtbGVmdFxyXG4gICAgICAqbmdJZj1cIiFkaXNhYmxlZCAmJiBtYXhsZW5ndGhcIlxyXG4gICAgICBbdmFsdWVdPVwidmFsdWVcIlxyXG4gICAgICBbbWF4bGVuZ3RoXT1cIm1heGxlbmd0aFwiXHJcbiAgICA+PC9tcngtY2hhcnMtbGVmdD5cclxuICA8L2Rpdj5cclxuXHJcbiAgPG1yeC1lcnJvci1tZXNzYWdlXHJcbiAgICAqbmdJZj1cImdldEludmFsaWQgJiYgZ2V0SW52YWxpZE1lc3NhZ2VcIlxyXG4gICAgW2ludmFsaWRNZXNzYWdlXT1cImdldEludmFsaWRNZXNzYWdlXCJcclxuICA+PC9tcngtZXJyb3ItbWVzc2FnZT5cclxuXHJcbiAgPG1yeC1zYXZlLXN0YXRlIFtpZF09XCJ1dWlkXCIgW2ZpZWxkc109XCJmaWVsZHNcIj48L21yeC1zYXZlLXN0YXRlPlxyXG48L2Rpdj5cclxuIl19
@@ -31,6 +31,7 @@ export class InputTextComponent {
31
31
  this.invalid = false;
32
32
  this.invalidMessage = '';
33
33
  this.checkInvalid = null;
34
+ this.restrictInput = true;
34
35
  // MASK
35
36
  this.mask = '';
36
37
  this.maskPrefix = '';
@@ -124,13 +125,13 @@ export class InputTextComponent {
124
125
  }
125
126
  }
126
127
  InputTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: InputTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
127
- InputTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: InputTextComponent, selector: "mrx-input-text", inputs: { fields: "fields", disabled: "disabled", required: "required", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", placeholder: "placeholder", customClasses: "customClasses", size: "size", isTooltipValue: "isTooltipValue", icon: "icon", iconColor: "iconColor", invalid: "invalid", invalidMessage: "invalidMessage", checkInvalid: "checkInvalid", mask: "mask", maskPrefix: "maskPrefix", showMaskTyped: "showMaskTyped", maskDropSpecialCharacters: "maskDropSpecialCharacters" }, outputs: { changed: "changed", blurred: "blurred", modelChange: "modelChange" }, providers: [
128
+ InputTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: InputTextComponent, selector: "mrx-input-text", inputs: { fields: "fields", disabled: "disabled", required: "required", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", placeholder: "placeholder", customClasses: "customClasses", size: "size", isTooltipValue: "isTooltipValue", icon: "icon", iconColor: "iconColor", invalid: "invalid", invalidMessage: "invalidMessage", checkInvalid: "checkInvalid", restrictInput: "restrictInput", mask: "mask", maskPrefix: "maskPrefix", showMaskTyped: "showMaskTyped", maskDropSpecialCharacters: "maskDropSpecialCharacters" }, outputs: { changed: "changed", blurred: "blurred", modelChange: "modelChange" }, providers: [
128
129
  {
129
130
  provide: NG_VALUE_ACCESSOR,
130
131
  useExisting: forwardRef(() => InputTextComponent),
131
132
  multi: true,
132
133
  },
133
- ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"mrx-input-text\"\r\n [class]=\"getClasses\"\r\n [class.mrx-input-error]=\"getInvalid\"\r\n [class.mrx-input-text-with-icon]=\"icon\"\r\n [class.-disabled]=\"disabled\"\r\n [class.-readonly]=\"readonly\"\r\n [mrxCdkTooltip]=\"getTooltipValue\"\r\n [tooltipPosition]=\"'top-start'\"\r\n>\r\n <div class=\"mrx-input-text__wrapper\">\r\n <span *ngIf=\"icon\" class=\"mrx-icon mrx-input-text-icon\" [class]=\"getIconClass\"></span>\r\n\r\n <input\r\n autocomplete=\"nope\"\r\n #inputElement\r\n [type]=\"'text'\"\r\n [id]=\"uuid\"\r\n [ngModel]=\"value\"\r\n [title]=\"placeholder || ''\"\r\n [disabled]=\"disabled\"\r\n [readOnly]=\"readonly\"\r\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\r\n [mask]=\"mask\"\r\n [prefix]=\"maskPrefix\"\r\n [showMaskTyped]=\"showMaskTyped\"\r\n [dropSpecialCharacters]=\"maskDropSpecialCharacters\"\r\n [attr.minlength]=\"minlength > 0 ? minlength : null\"\r\n [attr.maxlength]=\"maxlength > 0 ? maxlength : null\"\r\n (ngModelChange)=\"updateValue($event)\"\r\n (blur)=\"onBlur($event)\"\r\n />\r\n\r\n <mrx-chars-left\r\n *ngIf=\"!disabled && maxlength\"\r\n [value]=\"value\"\r\n [maxlength]=\"maxlength\"\r\n ></mrx-chars-left>\r\n </div>\r\n\r\n <mrx-error-message\r\n *ngIf=\"getInvalid && getInvalidMessage\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n ></mrx-error-message>\r\n\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\r\n</div>\r\n", styles: [".mrx-input-text{width:100%;position:relative}.mrx-input-text .mrx-input-text__wrapper{position:relative}.mrx-input-text input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;color:var(--neutral-text-primary, #262626);transition:outline-width .2s,border .2s}.mrx-input-text input:focus,.mrx-input-text input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-text input:hover{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-text input::-webkit-input-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input::-moz-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input:-ms-input-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input:-moz-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text.mrx-input-text-lg input{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-text.mrx-input-text-lg:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-lg.mrx-input-text-with-icon input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-module) * 10)}.mrx-input-text.mrx-input-text-md input{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-text.mrx-input-text-md:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-md.mrx-input-text-with-icon input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-module) * 10)}.mrx-input-text.mrx-input-text-sm input{font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-text.mrx-input-text-sm:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-sm.mrx-input-text-with-icon input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-8)}.mrx-input-text.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-error input:hover{border:var(--border-width-default) solid var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-text.mrx-input-checked-error input:hover{border:var(--border-width-default) solid var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}.mrx-input-text.mrx-input-checked-success input:hover{border:var(--border-width-default) solid var(--system-bg-controls-positive-default)}.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-lg .mrx-input-text-icon{position:absolute;top:calc(var(--spacing-3) - 1px);left:calc(var(--spacing-3) - 1px)}.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-md .mrx-input-text-icon,.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-sm .mrx-input-text-icon{position:absolute;top:calc(var(--spacing-2) - 1px);left:calc(var(--spacing-2) - 1px)}.mrx-input-text.-disabled input{background-color:var(--neutral-bg-disabled, #EEF0F4);color:var(--neutral-text-tertiary, #71767E)}.mrx-input-text.-readonly input{background-color:var(--neutral-bg-disabled, #EEF0F4);color:var(--neutral-text-primary, #262626)}\n"], components: [{ type: i1.CharsLeftComponent, selector: "mrx-chars-left", inputs: ["maxlength", "valueLength", "value"] }, { type: i2.ErrorMessageComponent, selector: "mrx-error-message", inputs: ["invalid", "invalidMessage", "customClasses"] }, { type: i3.SaveStateComponent, selector: "mrx-save-state", inputs: ["type", "fields", "id"] }], directives: [{ type: i4.CdkTooltipDirective, selector: "[mrxCdkTooltip]", inputs: ["mrxCdkTooltip", "tooltipActive", "autoCloseByScroll", "tooltipPosition", "tooltipMaxWidth"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i7.MaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "triggerOnMaskChange"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i6.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { type: i6.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
134
+ ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"mrx-input-text\"\r\n [class]=\"getClasses\"\r\n [class.mrx-input-error]=\"getInvalid\"\r\n [class.mrx-input-text-with-icon]=\"icon\"\r\n [class.-disabled]=\"disabled\"\r\n [class.-readonly]=\"readonly\"\r\n [mrxCdkTooltip]=\"getTooltipValue\"\r\n [tooltipPosition]=\"'top-start'\"\r\n>\r\n <div class=\"mrx-input-text__wrapper\">\r\n <span *ngIf=\"icon\" class=\"mrx-icon mrx-input-text-icon\" [class]=\"getIconClass\"></span>\r\n\r\n <input\r\n autocomplete=\"nope\"\r\n #inputElement\r\n [type]=\"'text'\"\r\n [id]=\"uuid\"\r\n [ngModel]=\"value\"\r\n [title]=\"placeholder || ''\"\r\n [disabled]=\"disabled\"\r\n [readOnly]=\"readonly\"\r\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\r\n [mask]=\"mask\"\r\n [prefix]=\"maskPrefix\"\r\n [showMaskTyped]=\"showMaskTyped\"\r\n [dropSpecialCharacters]=\"maskDropSpecialCharacters\"\r\n [minlength]=\"minlength > 0 && restrictInput ? minlength : null\"\r\n [maxlength]=\"maxlength > 0 && restrictInput ? maxlength : null\"\r\n (ngModelChange)=\"updateValue($event)\"\r\n (blur)=\"onBlur($event)\"\r\n />\r\n\r\n <mrx-chars-left\r\n *ngIf=\"!disabled && maxlength\"\r\n [value]=\"value\"\r\n [maxlength]=\"maxlength\"\r\n ></mrx-chars-left>\r\n </div>\r\n\r\n <mrx-error-message\r\n *ngIf=\"getInvalid && getInvalidMessage\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n ></mrx-error-message>\r\n\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\r\n</div>\r\n", styles: [".mrx-input-text{width:100%;position:relative}.mrx-input-text .mrx-input-text__wrapper{position:relative}.mrx-input-text input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;color:var(--neutral-text-primary, #262626);transition:outline-width .2s,border .2s}.mrx-input-text input:focus,.mrx-input-text input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-text input:hover{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-text input::-webkit-input-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input::-moz-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input:-ms-input-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input:-moz-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text.mrx-input-text-lg input{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-text.mrx-input-text-lg:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-lg.mrx-input-text-with-icon input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-module) * 10)}.mrx-input-text.mrx-input-text-md input{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-text.mrx-input-text-md:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-md.mrx-input-text-with-icon input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-module) * 10)}.mrx-input-text.mrx-input-text-sm input{font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-text.mrx-input-text-sm:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-sm.mrx-input-text-with-icon input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-8)}.mrx-input-text.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-error input:hover{border:var(--border-width-default) solid var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-text.mrx-input-checked-error input:hover{border:var(--border-width-default) solid var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}.mrx-input-text.mrx-input-checked-success input:hover{border:var(--border-width-default) solid var(--system-bg-controls-positive-default)}.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-lg .mrx-input-text-icon{position:absolute;top:calc(var(--spacing-3) - 1px);left:calc(var(--spacing-3) - 1px)}.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-md .mrx-input-text-icon,.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-sm .mrx-input-text-icon{position:absolute;top:calc(var(--spacing-2) - 1px);left:calc(var(--spacing-2) - 1px)}.mrx-input-text.-disabled input{background-color:var(--neutral-bg-disabled, #EEF0F4);color:var(--neutral-text-tertiary, #71767E)}.mrx-input-text.-readonly input{background-color:var(--neutral-bg-disabled, #EEF0F4);color:var(--neutral-text-primary, #262626)}\n"], components: [{ type: i1.CharsLeftComponent, selector: "mrx-chars-left", inputs: ["maxlength", "valueLength", "value"] }, { type: i2.ErrorMessageComponent, selector: "mrx-error-message", inputs: ["invalid", "invalidMessage", "customClasses"] }, { type: i3.SaveStateComponent, selector: "mrx-save-state", inputs: ["type", "fields", "id"] }], directives: [{ type: i4.CdkTooltipDirective, selector: "[mrxCdkTooltip]", inputs: ["mrxCdkTooltip", "tooltipActive", "autoCloseByScroll", "tooltipPosition", "tooltipMaxWidth"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i7.MaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "triggerOnMaskChange"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i6.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { type: i6.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
134
135
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: InputTextComponent, decorators: [{
135
136
  type: Component,
136
137
  args: [{ selector: 'mrx-input-text', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
@@ -139,7 +140,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
139
140
  useExisting: forwardRef(() => InputTextComponent),
140
141
  multi: true,
141
142
  },
142
- ], template: "<div\r\n class=\"mrx-input-text\"\r\n [class]=\"getClasses\"\r\n [class.mrx-input-error]=\"getInvalid\"\r\n [class.mrx-input-text-with-icon]=\"icon\"\r\n [class.-disabled]=\"disabled\"\r\n [class.-readonly]=\"readonly\"\r\n [mrxCdkTooltip]=\"getTooltipValue\"\r\n [tooltipPosition]=\"'top-start'\"\r\n>\r\n <div class=\"mrx-input-text__wrapper\">\r\n <span *ngIf=\"icon\" class=\"mrx-icon mrx-input-text-icon\" [class]=\"getIconClass\"></span>\r\n\r\n <input\r\n autocomplete=\"nope\"\r\n #inputElement\r\n [type]=\"'text'\"\r\n [id]=\"uuid\"\r\n [ngModel]=\"value\"\r\n [title]=\"placeholder || ''\"\r\n [disabled]=\"disabled\"\r\n [readOnly]=\"readonly\"\r\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\r\n [mask]=\"mask\"\r\n [prefix]=\"maskPrefix\"\r\n [showMaskTyped]=\"showMaskTyped\"\r\n [dropSpecialCharacters]=\"maskDropSpecialCharacters\"\r\n [attr.minlength]=\"minlength > 0 ? minlength : null\"\r\n [attr.maxlength]=\"maxlength > 0 ? maxlength : null\"\r\n (ngModelChange)=\"updateValue($event)\"\r\n (blur)=\"onBlur($event)\"\r\n />\r\n\r\n <mrx-chars-left\r\n *ngIf=\"!disabled && maxlength\"\r\n [value]=\"value\"\r\n [maxlength]=\"maxlength\"\r\n ></mrx-chars-left>\r\n </div>\r\n\r\n <mrx-error-message\r\n *ngIf=\"getInvalid && getInvalidMessage\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n ></mrx-error-message>\r\n\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\r\n</div>\r\n", styles: [".mrx-input-text{width:100%;position:relative}.mrx-input-text .mrx-input-text__wrapper{position:relative}.mrx-input-text input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;color:var(--neutral-text-primary, #262626);transition:outline-width .2s,border .2s}.mrx-input-text input:focus,.mrx-input-text input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-text input:hover{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-text input::-webkit-input-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input::-moz-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input:-ms-input-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input:-moz-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text.mrx-input-text-lg input{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-text.mrx-input-text-lg:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-lg.mrx-input-text-with-icon input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-module) * 10)}.mrx-input-text.mrx-input-text-md input{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-text.mrx-input-text-md:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-md.mrx-input-text-with-icon input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-module) * 10)}.mrx-input-text.mrx-input-text-sm input{font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-text.mrx-input-text-sm:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-sm.mrx-input-text-with-icon input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-8)}.mrx-input-text.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-error input:hover{border:var(--border-width-default) solid var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-text.mrx-input-checked-error input:hover{border:var(--border-width-default) solid var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}.mrx-input-text.mrx-input-checked-success input:hover{border:var(--border-width-default) solid var(--system-bg-controls-positive-default)}.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-lg .mrx-input-text-icon{position:absolute;top:calc(var(--spacing-3) - 1px);left:calc(var(--spacing-3) - 1px)}.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-md .mrx-input-text-icon,.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-sm .mrx-input-text-icon{position:absolute;top:calc(var(--spacing-2) - 1px);left:calc(var(--spacing-2) - 1px)}.mrx-input-text.-disabled input{background-color:var(--neutral-bg-disabled, #EEF0F4);color:var(--neutral-text-tertiary, #71767E)}.mrx-input-text.-readonly input{background-color:var(--neutral-bg-disabled, #EEF0F4);color:var(--neutral-text-primary, #262626)}\n"] }]
143
+ ], template: "<div\r\n class=\"mrx-input-text\"\r\n [class]=\"getClasses\"\r\n [class.mrx-input-error]=\"getInvalid\"\r\n [class.mrx-input-text-with-icon]=\"icon\"\r\n [class.-disabled]=\"disabled\"\r\n [class.-readonly]=\"readonly\"\r\n [mrxCdkTooltip]=\"getTooltipValue\"\r\n [tooltipPosition]=\"'top-start'\"\r\n>\r\n <div class=\"mrx-input-text__wrapper\">\r\n <span *ngIf=\"icon\" class=\"mrx-icon mrx-input-text-icon\" [class]=\"getIconClass\"></span>\r\n\r\n <input\r\n autocomplete=\"nope\"\r\n #inputElement\r\n [type]=\"'text'\"\r\n [id]=\"uuid\"\r\n [ngModel]=\"value\"\r\n [title]=\"placeholder || ''\"\r\n [disabled]=\"disabled\"\r\n [readOnly]=\"readonly\"\r\n [placeholder]=\"!disabled && placeholder ? placeholder : ''\"\r\n [mask]=\"mask\"\r\n [prefix]=\"maskPrefix\"\r\n [showMaskTyped]=\"showMaskTyped\"\r\n [dropSpecialCharacters]=\"maskDropSpecialCharacters\"\r\n [minlength]=\"minlength > 0 && restrictInput ? minlength : null\"\r\n [maxlength]=\"maxlength > 0 && restrictInput ? maxlength : null\"\r\n (ngModelChange)=\"updateValue($event)\"\r\n (blur)=\"onBlur($event)\"\r\n />\r\n\r\n <mrx-chars-left\r\n *ngIf=\"!disabled && maxlength\"\r\n [value]=\"value\"\r\n [maxlength]=\"maxlength\"\r\n ></mrx-chars-left>\r\n </div>\r\n\r\n <mrx-error-message\r\n *ngIf=\"getInvalid && getInvalidMessage\"\r\n [invalidMessage]=\"getInvalidMessage\"\r\n ></mrx-error-message>\r\n\r\n <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>\r\n</div>\r\n", styles: [".mrx-input-text{width:100%;position:relative}.mrx-input-text .mrx-input-text__wrapper{position:relative}.mrx-input-text input{box-sizing:border-box;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);width:100%;outline:none;color:var(--neutral-text-primary, #262626);transition:outline-width .2s,border .2s}.mrx-input-text input:focus,.mrx-input-text input:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-input-text input:hover{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-input-text input::-webkit-input-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input::-moz-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input:-ms-input-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text input:-moz-placeholder{color:var(--neutral-text-tertiary)}.mrx-input-text.mrx-input-text-lg input{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-text.mrx-input-text-lg:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-lg.mrx-input-text-with-icon input{padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-module) * 10)}.mrx-input-text.mrx-input-text-md input{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height)}.mrx-input-text.mrx-input-text-md:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-md.mrx-input-text-with-icon input{padding:calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-2) + var(--spacing-half) - var(--border-width-default)) calc(var(--spacing-module) * 10)}.mrx-input-text.mrx-input-text-sm input{font-family:var(--body-sm-font-family);font-size:var(--body-sm-font-size);font-weight:var(--body-sm-font-weight);line-height:var(--body-sm-line-height)}.mrx-input-text.mrx-input-text-sm:not(.mrx-input-text-with-icon) input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4)}.mrx-input-text.mrx-input-text-sm.mrx-input-text-with-icon input{padding:calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-4) calc(var(--spacing-2) - var(--border-width-default)) var(--spacing-8)}.mrx-input-text.mrx-input-error input{border-color:var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-error input:hover{border:var(--border-width-default) solid var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-checked-error input{border-color:var(--system-bg-controls-negative-default);background-color:var(--system-bg-negative-secondary)}.mrx-input-text.mrx-input-checked-error input:hover{border:var(--border-width-default) solid var(--system-bg-controls-negative-default)}.mrx-input-text.mrx-input-checked-success input{background-color:var(--system-bg-positive-secondary);border-color:var(--system-bg-controls-positive-default)}.mrx-input-text.mrx-input-checked-success input:hover{border:var(--border-width-default) solid var(--system-bg-controls-positive-default)}.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-lg .mrx-input-text-icon{position:absolute;top:calc(var(--spacing-3) - 1px);left:calc(var(--spacing-3) - 1px)}.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-md .mrx-input-text-icon,.mrx-input-text.mrx-input-text-with-icon.mrx-input-text-sm .mrx-input-text-icon{position:absolute;top:calc(var(--spacing-2) - 1px);left:calc(var(--spacing-2) - 1px)}.mrx-input-text.-disabled input{background-color:var(--neutral-bg-disabled, #EEF0F4);color:var(--neutral-text-tertiary, #71767E)}.mrx-input-text.-readonly input{background-color:var(--neutral-bg-disabled, #EEF0F4);color:var(--neutral-text-primary, #262626)}\n"] }]
143
144
  }], propDecorators: { fields: [{
144
145
  type: Input
145
146
  }], disabled: [{
@@ -170,6 +171,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
170
171
  type: Input
171
172
  }], checkInvalid: [{
172
173
  type: Input
174
+ }], restrictInput: [{
175
+ type: Input
173
176
  }], mask: [{
174
177
  type: Input
175
178
  }], maskPrefix: [{
@@ -188,4 +191,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
188
191
  }], modelChange: [{
189
192
  type: Output
190
193
  }] } });
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9pbnB1dC10ZXh0L2lucHV0LXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtdGV4dC9pbnB1dC10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFDTCxzQkFBc0IsRUFFdEIsa0JBQWtCLEVBSW5CLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7OztBQWdCcEMsTUFBTSxPQUFPLGtCQUFrQjtJQWIvQjtRQWNTLFVBQUssR0FBd0IsRUFBRSxDQUFDO1FBSXZDLGFBQWE7UUFDTixTQUFJLEdBQVcsTUFBTSxFQUFFLENBQUE7UUFDZCxXQUFNLEdBQVksRUFBRSxDQUFDO1FBRXJCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDakIsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFDbkIsU0FBSSxHQUF3QixPQUFPLENBQUM7UUFD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LFlBQVk7c0JBQTNCLEtBQUs7Z0JBR0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyx5QkFBeUI7c0JBQWpDLEtBQUs7Z0JBRXFCLFlBQVk7c0JBQXRDLFNBQVM7dUJBQUMsY0FBYztnQkFFUixPQUFPO3NCQUF2QixNQUFNO2dCQUNVLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsV0FBVztzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgSW5wdXRUZXh0SWNvbkNvbG9yRW51bSxcbiAgSW5wdXRUZXh0SWNvbkNvbG9yVHlwZXMsXG4gIElucHV0VGV4dFNpemVzRW51bSxcbiAgSW5wdXRUZXh0U2l6ZXNUeXBlcyxcbiAgSW5wdXRUZXh0VmFsdWVUeXBlcyxcbiAgSW5wdXRUZXh0VmFsdWVXaXRoSWRcbn0gZnJvbSAnLi9pbnB1dC10ZXh0LmVudW0nO1xuaW1wb3J0IHsgdjQgYXMgdXVpZHY0IH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXJ4LWlucHV0LXRleHQnLFxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtdGV4dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2lucHV0LXRleHQuY29tcG9uZW50Lmxlc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRUZXh0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIElucHV0VGV4dENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgcHVibGljIHZhbHVlOiBJbnB1dFRleHRWYWx1ZVR5cGVzID0gJyc7XG4gIHB1YmxpYyBzZWxlY3Rpb25TdGFydDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICBwdWJsaWMgc2VsZWN0aW9uRW5kOiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgLy8gU0FWRSBTVEFURVxuICBwdWJsaWMgdXVpZDogc3RyaW5nID0gdXVpZHY0KClcbiAgQElucHV0KCkgcHVibGljIGZpZWxkczogRmllbGRbXSA9IFtdO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhsZW5ndGggPSAwO1xuICBASW5wdXQoKSBwdWJsaWMgbWlubGVuZ3RoID0gMDtcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21DbGFzc2VzID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiBJbnB1dFRleHRTaXplc1R5cGVzID0gJ2xhcmdlJztcbiAgQElucHV0KCkgcHVibGljIGlzVG9vbHRpcFZhbHVlID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBpY29uOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgcHVibGljIGljb25Db2xvcjogSW5wdXRUZXh0SWNvbkNvbG9yVHlwZXMgPSAnZGVmYXVsdCc7XG5cbiAgLy8gVkFMSURBVEVcbiAgQElucHV0KCkgcHVibGljIGludmFsaWQgPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGludmFsaWRNZXNzYWdlOiBzdHJpbmcgfCBzdHJpbmdbXSA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgY2hlY2tJbnZhbGlkOiB0cnVlIHwgZmFsc2UgfCBudWxsID0gbnVsbDtcblxuICAvLyBNQVNLXG4gIEBJbnB1dCgpIG1hc2sgPSAnJztcbiAgQElucHV0KCkgbWFza1ByZWZpeCA9ICcnO1xuICBASW5wdXQoKSBzaG93TWFza1R5cGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIG1hc2tEcm9wU3BlY2lhbENoYXJhY3RlcnM6IGJvb2xlYW4gfCBzdHJpbmdbXSA9IHRydWU7XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXRFbGVtZW50JykgaW5wdXRFbGVtZW50ITogRWxlbWVudFJlZjtcblxuICBAT3V0cHV0KCkgcHVibGljIGNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxJbnB1dFRleHRWYWx1ZVR5cGVzPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRUZXh0VmFsdWVUeXBlcz4oKTtcbiAgQE91dHB1dCgpIHB1YmxpYyBibHVycmVkOiBFdmVudEVtaXR0ZXI8SW5wdXRUZXh0VmFsdWVXaXRoSWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnB1dFRleHRWYWx1ZVdpdGhJZD4oKTtcbiAgQE91dHB1dCgpIHB1YmxpYyBtb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPElucHV0VGV4dFZhbHVlV2l0aElkPiA9IG5ldyBFdmVudEVtaXR0ZXI8SW5wdXRUZXh0VmFsdWVXaXRoSWQ+KCk7XG5cbiAgcHJpdmF0ZSBnZXQgX2lzSW52YWxpZFZhbHVlTGVuZ3RoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm1heGxlbmd0aCA8IHRoaXMudmFsdWU/Lmxlbmd0aCAmJiB0aGlzLm1heGxlbmd0aCA+IDBcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZ2V0SW52YWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faXNJbnZhbGlkVmFsdWVMZW5ndGggfHwgdGhpcy5pbnZhbGlkXG4gIH1cblxuICBwdWJsaWMgZ2V0IGdldEludmFsaWRNZXNzYWdlKCk6IHN0cmluZyB8IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5faXNJbnZhbGlkVmFsdWVMZW5ndGggPyAn0J/RgNC10LLRi9GI0LXQvdC+INC00L7Qv9GD0YHRgtC40LzQvtC1INC30L3QsNGH0LXQvdC40LUg0YHQuNC80LLQvtC70L7QsicgOiB0aGlzLmludmFsaWRNZXNzYWdlXG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlYWRvbmx5Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5yZWFkb25seSA/ICdtcngtaW5wdXRfX3JlYWRvbmx5JyA6ICcnO1xuICB9XG5cbiAgcHVibGljIGdldCBjaGVja1ZhbGlkQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNoZWNrSW52YWxpZCA9PT0gZmFsc2UgPyAnbXJ4LWlucHV0LWNoZWNrZWQtc3VjY2VzcycgOiB0aGlzLmNoZWNrSW52YWxpZCA9PT0gdHJ1ZSA/ICdtcngtaW5wdXQtY2hlY2tlZC1lcnJvcicgOiAnJ1xuICB9XG5cbiAgcHVibGljIGdldCBnZXRDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke0lucHV0VGV4dFNpemVzRW51bVt0aGlzLnNpemVdfSAke3RoaXMuY3VzdG9tQ2xhc3Nlc30gJHt0aGlzLnJlYWRvbmx5Q2xhc3N9ICR7dGhpcy5jaGVja1ZhbGlkQ2xhc3Nlc31gO1xuICB9XG5cbiAgcHVibGljIGdldCBnZXRJY29uQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5pY29ufSAke3RoaXMuc2l6ZSAhPT0gJ3NtYWxsJyA/ICdpY29uLWZvbnQtMjQnIDogJ2ljb24tZm9udC0xNid9ICR7SW5wdXRUZXh0SWNvbkNvbG9yRW51bVt0aGlzLmljb25Db2xvcl19YFxuICB9XG5cbiAgcHVibGljIGdldCBnZXRUb29sdGlwVmFsdWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pc1Rvb2x0aXBWYWx1ZSA/IHRoaXMudmFsdWUgOiAnJ1xuICB9XG5cbiAgcHJpdmF0ZSBfbGVuZ3RoVmFsaWRhdGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubWF4bGVuZ3RoID4gdGhpcy52YWx1ZT8ubGVuZ3RoXG4gIH1cblxuICBwcml2YXRlIGZvcm1hdFZhbHVlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGggPT09IHRoaXMubWFza1ByZWZpeC5sZW5ndGggPyAnJyA6IHZhbHVlXG4gIH1cblxuICBwdWJsaWMgaW5zZXJ0UG9zaXRpb25UZXh0KHRhZ1RleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNlbGVjdGlvblN0YXJ0ICYmIHRoaXMuc2VsZWN0aW9uRW5kKSB7XG4gICAgICBjb25zdCBmaXJzdFRleHQgPSB0aGlzLnZhbHVlID8gdGhpcy52YWx1ZS5zdWJzdHJpbmcoMCwgdGhpcy5zZWxlY3Rpb25TdGFydCkgOiAnJ1xuICAgICAgY29uc3Qgc2Vjb25kVGV4dCA9IHRoaXMudmFsdWUuc3Vic3RyaW5nKHRoaXMuc2VsZWN0aW9uRW5kKTtcbiAgICAgIGNvbnN0IHRleHQgPSBmaXJzdFRleHQgKyB0YWdUZXh0ICsgc2Vjb25kVGV4dDtcblxuICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0ZXh0KTtcblxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgPSAoZmlyc3RUZXh0ICsgdGFnVGV4dCkubGVuZ3RoO1xuICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvbkVuZCA9IChmaXJzdFRleHQgKyB0YWdUZXh0KS5sZW5ndGg7XG4gICAgICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgIH0sIDApO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0ZXh0ID0gdGhpcy52YWx1ZSA/IHRoaXMudmFsdWUgOiAnJyArIHRhZ1RleHRcblxuICAgICAgdGhpcy51cGRhdGVWYWx1ZSh0ZXh0KTtcblxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgPSB0ZXh0Lmxlbmd0aDtcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25FbmQgPSB0ZXh0Lmxlbmd0aDtcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgfSwgMCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHVwZGF0ZVNlbGVjdGlvbihldmVudDogYW55KSB7XG4gICAgdGhpcy5zZWxlY3Rpb25TdGFydCA9IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydDtcbiAgICB0aGlzLnNlbGVjdGlvbkVuZCA9IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25FbmQ7XG5cbiAgICB0aGlzLmJsdXJyZWQuZW1pdCgpXG4gIH1cblxuICBwcml2YXRlIG9uQ2hhbmdlID0gKHZhbHVlOiBJbnB1dFRleHRWYWx1ZVR5cGVzKSA9PiB7fTtcbiAgcHJpdmF0ZSBvblRvdWNoZWQgPSAoKSA9PiB7fTtcblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KSB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB7fSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gIH1cblxuICBwdWJsaWMgd3JpdGVWYWx1ZShvdXRzaWRlVmFsdWU6IElucHV0VGV4dFZhbHVlVHlwZXMpIHtcbiAgICB0aGlzLnZhbHVlID0gb3V0c2lkZVZhbHVlO1xuICB9XG5cbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZVZhbHVlKGluc2lkZVZhbHVlOiBJbnB1dFRleHRWYWx1ZVR5cGVzKSB7XG4gICAgdGhpcy52YWx1ZSA9IGluc2lkZVZhbHVlO1xuICAgIHRoaXMuY2hhbmdlZC5lbWl0KHRoaXMuZm9ybWF0VmFsdWUoaW5zaWRlVmFsdWUpKTtcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQoe3ZhbHVlOiB0aGlzLmZvcm1hdFZhbHVlKGluc2lkZVZhbHVlKSwgaWQ6IHRoaXMudXVpZH0pXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLmZvcm1hdFZhbHVlKGluc2lkZVZhbHVlKSk7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkJsdXIoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICB0aGlzLnVwZGF0ZVNlbGVjdGlvbihldmVudClcbiAgICB0aGlzLmJsdXJyZWQuZW1pdCh7dmFsdWU6IHRoaXMuZm9ybWF0VmFsdWUodGhpcy52YWx1ZSksIGlkOiB0aGlzLnV1aWR9KVxuICB9XG59XG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJtcngtaW5wdXQtdGV4dFwiXHJcbiAgW2NsYXNzXT1cImdldENsYXNzZXNcIlxyXG4gIFtjbGFzcy5tcngtaW5wdXQtZXJyb3JdPVwiZ2V0SW52YWxpZFwiXHJcbiAgW2NsYXNzLm1yeC1pbnB1dC10ZXh0LXdpdGgtaWNvbl09XCJpY29uXCJcclxuICBbY2xhc3MuLWRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICBbY2xhc3MuLXJlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICBbbXJ4Q2RrVG9vbHRpcF09XCJnZXRUb29sdGlwVmFsdWVcIlxyXG4gIFt0b29sdGlwUG9zaXRpb25dPVwiJ3RvcC1zdGFydCdcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZXh0X193cmFwcGVyXCI+XHJcbiAgICA8c3BhbiAqbmdJZj1cImljb25cIiBjbGFzcz1cIm1yeC1pY29uIG1yeC1pbnB1dC10ZXh0LWljb25cIiBbY2xhc3NdPVwiZ2V0SWNvbkNsYXNzXCI+PC9zcGFuPlxyXG5cclxuICAgIDxpbnB1dFxyXG4gICAgICBhdXRvY29tcGxldGU9XCJub3BlXCJcclxuICAgICAgI2lucHV0RWxlbWVudFxyXG4gICAgICBbdHlwZV09XCIndGV4dCdcIlxyXG4gICAgICBbaWRdPVwidXVpZFwiXHJcbiAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcclxuICAgICAgW3RpdGxlXT1cInBsYWNlaG9sZGVyIHx8ICcnXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgW3JlYWRPbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgW3BsYWNlaG9sZGVyXT1cIiFkaXNhYmxlZCAmJiBwbGFjZWhvbGRlciA/IHBsYWNlaG9sZGVyIDogJydcIlxyXG4gICAgICBbbWFza109XCJtYXNrXCJcclxuICAgICAgW3ByZWZpeF09XCJtYXNrUHJlZml4XCJcclxuICAgICAgW3Nob3dNYXNrVHlwZWRdPVwic2hvd01hc2tUeXBlZFwiXHJcbiAgICAgIFtkcm9wU3BlY2lhbENoYXJhY3RlcnNdPVwibWFza0Ryb3BTcGVjaWFsQ2hhcmFjdGVyc1wiXHJcbiAgICAgIFthdHRyLm1pbmxlbmd0aF09XCJtaW5sZW5ndGggPiAwID8gbWlubGVuZ3RoIDogbnVsbFwiXHJcbiAgICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGggPiAwID8gbWF4bGVuZ3RoIDogbnVsbFwiXHJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInVwZGF0ZVZhbHVlKCRldmVudClcIlxyXG4gICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXHJcbiAgICAvPlxyXG5cclxuICAgIDxtcngtY2hhcnMtbGVmdFxyXG4gICAgICAqbmdJZj1cIiFkaXNhYmxlZCAmJiBtYXhsZW5ndGhcIlxyXG4gICAgICBbdmFsdWVdPVwidmFsdWVcIlxyXG4gICAgICBbbWF4bGVuZ3RoXT1cIm1heGxlbmd0aFwiXHJcbiAgICA+PC9tcngtY2hhcnMtbGVmdD5cclxuICA8L2Rpdj5cclxuXHJcbiAgPG1yeC1lcnJvci1tZXNzYWdlXHJcbiAgICAqbmdJZj1cImdldEludmFsaWQgJiYgZ2V0SW52YWxpZE1lc3NhZ2VcIlxyXG4gICAgW2ludmFsaWRNZXNzYWdlXT1cImdldEludmFsaWRNZXNzYWdlXCJcclxuICA+PC9tcngtZXJyb3ItbWVzc2FnZT5cclxuXHJcbiAgPG1yeC1zYXZlLXN0YXRlIFtpZF09XCJ1dWlkXCIgW2ZpZWxkc109XCJmaWVsZHNcIj48L21yeC1zYXZlLXN0YXRlPlxyXG48L2Rpdj5cclxuIl19
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS9pbnB1dC10ZXh0L2lucHV0LXRleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vaW5wdXQtdGV4dC9pbnB1dC10ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFDTCxzQkFBc0IsRUFFdEIsa0JBQWtCLEVBSW5CLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7OztBQWdCcEMsTUFBTSxPQUFPLGtCQUFrQjtJQWIvQjtRQWNTLFVBQUssR0FBd0IsRUFBRSxDQUFDO1FBSXZDLGFBQWE7UUFDTixTQUFJLEdBQVcsTUFBTSxFQUFFLENBQUE7UUFDZCxXQUFNLEdBQVksRUFBRSxDQUFDO1FBRXJCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxjQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDakIsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFDbkIsU0FBSSxHQUF3QixPQUFPLENBQUM7UUFD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QkFDVSxjQUFjO3NCQUE3QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRVUsYUFBYTtzQkFBNUIsS0FBSztnQkFHRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLHlCQUF5QjtzQkFBakMsS0FBSztnQkFFcUIsWUFBWTtzQkFBdEMsU0FBUzt1QkFBQyxjQUFjO2dCQUVSLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsT0FBTztzQkFBdkIsTUFBTTtnQkFDVSxXQUFXO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtcclxuICBJbnB1dFRleHRJY29uQ29sb3JFbnVtLFxyXG4gIElucHV0VGV4dEljb25Db2xvclR5cGVzLFxyXG4gIElucHV0VGV4dFNpemVzRW51bSxcclxuICBJbnB1dFRleHRTaXplc1R5cGVzLFxyXG4gIElucHV0VGV4dFZhbHVlVHlwZXMsXHJcbiAgSW5wdXRUZXh0VmFsdWVXaXRoSWRcclxufSBmcm9tICcuL2lucHV0LXRleHQuZW51bSc7XHJcbmltcG9ydCB7IHY0IGFzIHV1aWR2NCB9IGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbXJ4LWlucHV0LXRleHQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC10ZXh0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC10ZXh0LmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dFRleHRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIElucHV0VGV4dENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBwdWJsaWMgdmFsdWU6IElucHV0VGV4dFZhbHVlVHlwZXMgPSAnJztcclxuICBwdWJsaWMgc2VsZWN0aW9uU3RhcnQ6IG51bWJlciB8IHVuZGVmaW5lZDtcclxuICBwdWJsaWMgc2VsZWN0aW9uRW5kOiBudW1iZXIgfCB1bmRlZmluZWQ7XHJcblxyXG4gIC8vIFNBVkUgU1RBVEVcclxuICBwdWJsaWMgdXVpZDogc3RyaW5nID0gdXVpZHY0KClcclxuICBASW5wdXQoKSBwdWJsaWMgZmllbGRzOiBGaWVsZFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhsZW5ndGggPSAwO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtaW5sZW5ndGggPSAwO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlciA9ICcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21DbGFzc2VzID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIHNpemU6IElucHV0VGV4dFNpemVzVHlwZXMgPSAnbGFyZ2UnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpc1Rvb2x0aXBWYWx1ZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpY29uOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICBASW5wdXQoKSBwdWJsaWMgaWNvbkNvbG9yOiBJbnB1dFRleHRJY29uQ29sb3JUeXBlcyA9ICdkZWZhdWx0JztcclxuXHJcbiAgLy8gVkFMSURBVEVcclxuICBASW5wdXQoKSBwdWJsaWMgaW52YWxpZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkTWVzc2FnZTogc3RyaW5nIHwgc3RyaW5nW10gPSAnJztcclxuICBASW5wdXQoKSBwdWJsaWMgY2hlY2tJbnZhbGlkOiB0cnVlIHwgZmFsc2UgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIHJlc3RyaWN0SW5wdXQgPSB0cnVlO1xyXG5cclxuICAvLyBNQVNLXHJcbiAgQElucHV0KCkgbWFzayA9ICcnO1xyXG4gIEBJbnB1dCgpIG1hc2tQcmVmaXggPSAnJztcclxuICBASW5wdXQoKSBzaG93TWFza1R5cGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgbWFza0Ryb3BTcGVjaWFsQ2hhcmFjdGVyczogYm9vbGVhbiB8IHN0cmluZ1tdID0gdHJ1ZTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaW5wdXRFbGVtZW50JykgaW5wdXRFbGVtZW50ITogRWxlbWVudFJlZjtcclxuXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBjaGFuZ2VkOiBFdmVudEVtaXR0ZXI8SW5wdXRUZXh0VmFsdWVUeXBlcz4gPSBuZXcgRXZlbnRFbWl0dGVyPElucHV0VGV4dFZhbHVlVHlwZXM+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBibHVycmVkOiBFdmVudEVtaXR0ZXI8SW5wdXRUZXh0VmFsdWVXaXRoSWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnB1dFRleHRWYWx1ZVdpdGhJZD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG1vZGVsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SW5wdXRUZXh0VmFsdWVXaXRoSWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnB1dFRleHRWYWx1ZVdpdGhJZD4oKTtcclxuXHJcbiAgcHJpdmF0ZSBnZXQgX2lzSW52YWxpZFZhbHVlTGVuZ3RoKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMubWF4bGVuZ3RoIDwgdGhpcy52YWx1ZT8ubGVuZ3RoICYmIHRoaXMubWF4bGVuZ3RoID4gMFxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRJbnZhbGlkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lzSW52YWxpZFZhbHVlTGVuZ3RoIHx8IHRoaXMuaW52YWxpZFxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRJbnZhbGlkTWVzc2FnZSgpOiBzdHJpbmcgfCBzdHJpbmdbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5faXNJbnZhbGlkVmFsdWVMZW5ndGggPyAn0J/RgNC10LLRi9GI0LXQvdC+INC00L7Qv9GD0YHRgtC40LzQvtC1INC30L3QsNGH0LXQvdC40LUg0YHQuNC80LLQvtC70L7QsicgOiB0aGlzLmludmFsaWRNZXNzYWdlXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IHJlYWRvbmx5Q2xhc3MoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnJlYWRvbmx5ID8gJ21yeC1pbnB1dF9fcmVhZG9ubHknIDogJyc7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGNoZWNrVmFsaWRDbGFzc2VzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5jaGVja0ludmFsaWQgPT09IGZhbHNlID8gJ21yeC1pbnB1dC1jaGVja2VkLXN1Y2Nlc3MnIDogdGhpcy5jaGVja0ludmFsaWQgPT09IHRydWUgPyAnbXJ4LWlucHV0LWNoZWNrZWQtZXJyb3InIDogJydcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZ2V0Q2xhc3NlcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGAke0lucHV0VGV4dFNpemVzRW51bVt0aGlzLnNpemVdfSAke3RoaXMuY3VzdG9tQ2xhc3Nlc30gJHt0aGlzLnJlYWRvbmx5Q2xhc3N9ICR7dGhpcy5jaGVja1ZhbGlkQ2xhc3Nlc31gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBnZXRJY29uQ2xhc3MoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHt0aGlzLmljb259ICR7dGhpcy5zaXplICE9PSAnc21hbGwnID8gJ2ljb24tZm9udC0yNCcgOiAnaWNvbi1mb250LTE2J30gJHtJbnB1dFRleHRJY29uQ29sb3JFbnVtW3RoaXMuaWNvbkNvbG9yXX1gXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGdldFRvb2x0aXBWYWx1ZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNUb29sdGlwVmFsdWUgPyB0aGlzLnZhbHVlIDogJydcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2xlbmd0aFZhbGlkYXRlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMubWF4bGVuZ3RoID4gdGhpcy52YWx1ZT8ubGVuZ3RoXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZvcm1hdFZhbHVlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHZhbHVlLmxlbmd0aCA9PT0gdGhpcy5tYXNrUHJlZml4Lmxlbmd0aCA/ICcnIDogdmFsdWVcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpbnNlcnRQb3NpdGlvblRleHQodGFnVGV4dDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3Rpb25TdGFydCAmJiB0aGlzLnNlbGVjdGlvbkVuZCkge1xyXG4gICAgICBjb25zdCBmaXJzdFRleHQgPSB0aGlzLnZhbHVlID8gdGhpcy52YWx1ZS5zdWJzdHJpbmcoMCwgdGhpcy5zZWxlY3Rpb25TdGFydCkgOiAnJ1xyXG4gICAgICBjb25zdCBzZWNvbmRUZXh0ID0gdGhpcy52YWx1ZS5zdWJzdHJpbmcodGhpcy5zZWxlY3Rpb25FbmQpO1xyXG4gICAgICBjb25zdCB0ZXh0ID0gZmlyc3RUZXh0ICsgdGFnVGV4dCArIHNlY29uZFRleHQ7XHJcblxyXG4gICAgICB0aGlzLnVwZGF0ZVZhbHVlKHRleHQpO1xyXG5cclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25TdGFydCA9IChmaXJzdFRleHQgKyB0YWdUZXh0KS5sZW5ndGg7XHJcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25FbmQgPSAoZmlyc3RUZXh0ICsgdGFnVGV4dCkubGVuZ3RoO1xyXG4gICAgICAgIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcclxuICAgICAgfSwgMCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCB0ZXh0ID0gdGhpcy52YWx1ZSA/IHRoaXMudmFsdWUgOiAnJyArIHRhZ1RleHRcclxuXHJcbiAgICAgIHRoaXMudXBkYXRlVmFsdWUodGV4dCk7XHJcblxyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LnNlbGVjdGlvblN0YXJ0ID0gdGV4dC5sZW5ndGg7XHJcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5zZWxlY3Rpb25FbmQgPSB0ZXh0Lmxlbmd0aDtcclxuICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgIH0sIDApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZVNlbGVjdGlvbihldmVudDogYW55KSB7XHJcbiAgICB0aGlzLnNlbGVjdGlvblN0YXJ0ID0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvblN0YXJ0O1xyXG4gICAgdGhpcy5zZWxlY3Rpb25FbmQgPSBldmVudC50YXJnZXQuc2VsZWN0aW9uRW5kO1xyXG5cclxuICAgIHRoaXMuYmx1cnJlZC5lbWl0KClcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2UgPSAodmFsdWU6IElucHV0VGV4dFZhbHVlVHlwZXMpID0+IHt9O1xyXG4gIHByaXZhdGUgb25Ub3VjaGVkID0gKCkgPT4ge307XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4ge30pOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgd3JpdGVWYWx1ZShvdXRzaWRlVmFsdWU6IElucHV0VGV4dFZhbHVlVHlwZXMpIHtcclxuICAgIHRoaXMudmFsdWUgPSBvdXRzaWRlVmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVWYWx1ZShpbnNpZGVWYWx1ZTogSW5wdXRUZXh0VmFsdWVUeXBlcykge1xyXG4gICAgdGhpcy52YWx1ZSA9IGluc2lkZVZhbHVlO1xyXG4gICAgdGhpcy5jaGFuZ2VkLmVtaXQodGhpcy5mb3JtYXRWYWx1ZShpbnNpZGVWYWx1ZSkpO1xyXG4gICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHt2YWx1ZTogdGhpcy5mb3JtYXRWYWx1ZShpbnNpZGVWYWx1ZSksIGlkOiB0aGlzLnV1aWR9KVxyXG4gICAgdGhpcy5vbkNoYW5nZSh0aGlzLmZvcm1hdFZhbHVlKGluc2lkZVZhbHVlKSk7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uQmx1cihldmVudDogRm9jdXNFdmVudCkge1xyXG4gICAgdGhpcy51cGRhdGVTZWxlY3Rpb24oZXZlbnQpXHJcbiAgICB0aGlzLmJsdXJyZWQuZW1pdCh7dmFsdWU6IHRoaXMuZm9ybWF0VmFsdWUodGhpcy52YWx1ZSksIGlkOiB0aGlzLnV1aWR9KVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJtcngtaW5wdXQtdGV4dFwiXHJcbiAgW2NsYXNzXT1cImdldENsYXNzZXNcIlxyXG4gIFtjbGFzcy5tcngtaW5wdXQtZXJyb3JdPVwiZ2V0SW52YWxpZFwiXHJcbiAgW2NsYXNzLm1yeC1pbnB1dC10ZXh0LXdpdGgtaWNvbl09XCJpY29uXCJcclxuICBbY2xhc3MuLWRpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICBbY2xhc3MuLXJlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICBbbXJ4Q2RrVG9vbHRpcF09XCJnZXRUb29sdGlwVmFsdWVcIlxyXG4gIFt0b29sdGlwUG9zaXRpb25dPVwiJ3RvcC1zdGFydCdcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cIm1yeC1pbnB1dC10ZXh0X193cmFwcGVyXCI+XHJcbiAgICA8c3BhbiAqbmdJZj1cImljb25cIiBjbGFzcz1cIm1yeC1pY29uIG1yeC1pbnB1dC10ZXh0LWljb25cIiBbY2xhc3NdPVwiZ2V0SWNvbkNsYXNzXCI+PC9zcGFuPlxyXG5cclxuICAgIDxpbnB1dFxyXG4gICAgICBhdXRvY29tcGxldGU9XCJub3BlXCJcclxuICAgICAgI2lucHV0RWxlbWVudFxyXG4gICAgICBbdHlwZV09XCIndGV4dCdcIlxyXG4gICAgICBbaWRdPVwidXVpZFwiXHJcbiAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcclxuICAgICAgW3RpdGxlXT1cInBsYWNlaG9sZGVyIHx8ICcnXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgW3JlYWRPbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgW3BsYWNlaG9sZGVyXT1cIiFkaXNhYmxlZCAmJiBwbGFjZWhvbGRlciA/IHBsYWNlaG9sZGVyIDogJydcIlxyXG4gICAgICBbbWFza109XCJtYXNrXCJcclxuICAgICAgW3ByZWZpeF09XCJtYXNrUHJlZml4XCJcclxuICAgICAgW3Nob3dNYXNrVHlwZWRdPVwic2hvd01hc2tUeXBlZFwiXHJcbiAgICAgIFtkcm9wU3BlY2lhbENoYXJhY3RlcnNdPVwibWFza0Ryb3BTcGVjaWFsQ2hhcmFjdGVyc1wiXHJcbiAgICAgIFttaW5sZW5ndGhdPVwibWlubGVuZ3RoID4gMCAmJiByZXN0cmljdElucHV0ID8gbWlubGVuZ3RoIDogbnVsbFwiXHJcbiAgICAgIFttYXhsZW5ndGhdPVwibWF4bGVuZ3RoID4gMCAmJiByZXN0cmljdElucHV0ID8gbWF4bGVuZ3RoIDogbnVsbFwiXHJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInVwZGF0ZVZhbHVlKCRldmVudClcIlxyXG4gICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXHJcbiAgICAvPlxyXG5cclxuICAgIDxtcngtY2hhcnMtbGVmdFxyXG4gICAgICAqbmdJZj1cIiFkaXNhYmxlZCAmJiBtYXhsZW5ndGhcIlxyXG4gICAgICBbdmFsdWVdPVwidmFsdWVcIlxyXG4gICAgICBbbWF4bGVuZ3RoXT1cIm1heGxlbmd0aFwiXHJcbiAgICA+PC9tcngtY2hhcnMtbGVmdD5cclxuICA8L2Rpdj5cclxuXHJcbiAgPG1yeC1lcnJvci1tZXNzYWdlXHJcbiAgICAqbmdJZj1cImdldEludmFsaWQgJiYgZ2V0SW52YWxpZE1lc3NhZ2VcIlxyXG4gICAgW2ludmFsaWRNZXNzYWdlXT1cImdldEludmFsaWRNZXNzYWdlXCJcclxuICA+PC9tcngtZXJyb3ItbWVzc2FnZT5cclxuXHJcbiAgPG1yeC1zYXZlLXN0YXRlIFtpZF09XCJ1dWlkXCIgW2ZpZWxkc109XCJmaWVsZHNcIj48L21yeC1zYXZlLXN0YXRlPlxyXG48L2Rpdj5cclxuIl19