\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, HostBinding, Input, OnInit, Optional, Output, Self, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, NgControl } from '@angular/forms';\r\nimport { noop } from 'rxjs';\r\nexport const PASSWORD_EDITOR_VALUE_ACCESSOR: any = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => PasswordEditorComponent),\r\n multi: true,\r\n};\r\n@Component({\r\n selector: 'common-password-editor',\r\n templateUrl: './password-editor.component.html',\r\n styleUrls: ['./password-editor.component.css'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [PASSWORD_EDITOR_VALUE_ACCESSOR]\r\n})\r\nexport class PasswordEditorComponent implements ControlValueAccessor {\r\n @HostBinding('class') class = 'input-group'\r\n @Input() label = '';\r\n @Input() value = '';\r\n @Input() disabled = false;\r\n @Input() type = 'password';\r\n @Input() pattern: string | RegExp;\r\n @Input() placeholder: string ;\r\n @Input() showTooltip = false;\r\n\r\n @Output() inputText = new EventEmitter();\r\n showText = false;\r\n constructor(private cdr: ChangeDetectorRef) {\r\n\r\n }\r\n\r\n\r\n writeValue(value: any): void {\r\n this.value = value;\r\n this.cdr.detectChanges();\r\n }\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n setDisabledState?(isDisabled: boolean): void {\r\n this.disabled = isDisabled;\r\n this.cdr.detectChanges();\r\n }\r\n\r\n public onTouched: () => void = noop;\r\n public onChange: (_: any) => void = noop;\r\n\r\n onInput(text: string) {\r\n this.onTouched();\r\n this.onChange(text);\r\n this.inputText.emit(text);\r\n\r\n \r\n }\r\n toggleShowText(event: Event) {\r\n event.stopPropagation();\r\n this.showText = !this.showText;\r\n this.cdr.detectChanges();\r\n }\r\n}\r\n"],"x_google_ignoreList":[]}