@bimeister/pupakit.forms
Version:
PupaKit Forms
53 lines (52 loc) • 3.05 kB
TypeScript
import { ElementRef, EventEmitter, OnChanges, TemplateRef } from '@angular/core';
import { ComponentChange, ComponentChanges } from '@bimeister/pupakit.common';
import { Nullable } from '@bimeister/utilities';
import { BehaviorSubject, Observable } from 'rxjs';
import { InputSize } from '../../types/input-size.type';
import { InputStyleCustomization } from '../../types/input-style-customization.type';
import { InputBaseControlValueAccessor } from './input-base-control-value-accessor.abstract';
import * as i0 from "@angular/core";
export declare abstract class InputBase<T> extends InputBaseControlValueAccessor<T> implements OnChanges {
readonly controlAttribute: string;
protected readonly inputElementRef: ElementRef<HTMLInputElement>;
invalidTooltipHideOnHover: boolean;
invalidTooltipDisabled: boolean;
invalidTooltip: Nullable<string>;
invalidTooltipContentTemplate: Nullable<TemplateRef<unknown>>;
size: InputSize;
readonly size$: BehaviorSubject<InputSize>;
placeholder: string;
readonly placeholder$: BehaviorSubject<string>;
autocomplete: boolean;
readonly autocomplete$: BehaviorSubject<boolean>;
withReset: boolean;
readonly withReset$: BehaviorSubject<boolean>;
isPatched: boolean;
readonly isPatched$: BehaviorSubject<boolean>;
customStyles: InputStyleCustomization[];
readonly customStyles$: BehaviorSubject<InputStyleCustomization[]>;
leftIcon: string;
readonly leftIcon$: BehaviorSubject<string>;
rightIcon: string;
readonly rightIcon$: BehaviorSubject<string>;
readonly focus: EventEmitter<FocusEvent>;
readonly blur: EventEmitter<FocusEvent>;
readonly isInvalid$: Observable<boolean>;
readonly resultClassList$: Observable<string[]>;
readonly isVisibleReset$: Observable<boolean>;
protected processIsPatchedChange(change: ComponentChange<this, boolean>): void;
protected processWithResetChange(change: ComponentChange<this, boolean>): void;
ngOnChanges(changes: ComponentChanges<this>): void;
emitFocusEvent(focusEvent: FocusEvent): void;
emitBlurEvent(blurEvent: FocusEvent): void;
isDate(value: unknown): boolean;
focusOnInputElement(): void;
private processSizeChange;
private processPlaceholderChange;
private processAutocompleteChange;
private processStylesChange;
private processLeftIconChange;
private processRightIconChange;
static ɵfac: i0.ɵɵFactoryDeclaration<InputBase<any>, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<InputBase<any>, never, never, { "invalidTooltipHideOnHover": "invalidTooltipHideOnHover"; "invalidTooltipDisabled": "invalidTooltipDisabled"; "invalidTooltip": "invalidTooltip"; "invalidTooltipContentTemplate": "invalidTooltipContentTemplate"; "size": "size"; "placeholder": "placeholder"; "autocomplete": "autocomplete"; "withReset": "withReset"; "isPatched": "isPatched"; "customStyles": "customStyles"; "leftIcon": "leftIcon"; "rightIcon": "rightIcon"; }, { "focus": "focus"; "blur": "blur"; }, never, never, false>;
}