UNPKG

@progress/kendo-angular-label

Version:
59 lines (58 loc) 2.01 kB
/**----------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the project root for more information *-------------------------------------------------------------------------------------------*/ import { Observable } from 'rxjs'; import { EventEmitter } from '@angular/core'; /** * @hidden */ export class FloatingLabelInputAdapter { component; onFocus; onBlur; autoFillStart; autoFillEnd; onValueChange; get focusableId() { const component = this.component; if ('focusableId' in component) { return component.focusableId; } else if ('id' in component) { return component.id; } return ""; } set focusableId(value) { const component = this.component; if ('focusableId' in component) { component.focusableId = value; } else if ('id' in component) { component.id = value; } } constructor(component, formControl) { this.component = component; const isObservableOrEventEmitter = (event) => event instanceof Observable || event instanceof EventEmitter; if (isObservableOrEventEmitter(component.onFocus)) { this.onFocus = component.onFocus; } if (isObservableOrEventEmitter(component.autoFillStart)) { this.autoFillStart = component.autoFillStart; } if (isObservableOrEventEmitter(component.autoFillEnd)) { this.autoFillEnd = component.autoFillEnd; } if (isObservableOrEventEmitter(component.onBlur)) { this.onBlur = component.onBlur; } if (formControl) { this.onValueChange = formControl.valueChanges; } else if (component.valueChange) { this.onValueChange = component.valueChange; } } }