@metadev/lux
Version:
Lux: Library with User Interface components for Angular.
52 lines (51 loc) • 2.41 kB
TypeScript
import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
/** Filter component to query for objects. */
export declare class FilterComponent implements ControlValueAccessor, OnInit, OnDestroy {
static idCounter: number;
private touched;
private _searchValue;
disabled: boolean;
/** id for the input. If left blank, it is autogenerated */
inputId: string;
/** Placeholder default text. */
placeholder: string;
/** Search value introduced by the user. */
get searchValue(): string;
set searchValue(v: string);
/** Search on type: (default true) Auto-search when user types in. */
searchOnType: boolean;
/** Custom aria label in case of not using a label */
ariaLabel: string;
private debounceValue;
/** Debounce time in milliseconds. (defaults to 300 ms) */
set debounce(val: number);
get debounce(): number;
/** Search value changed by user. */
searchValueChange: EventEmitter<string>;
searchValue$: Observable<string>;
private subject;
private sub;
constructor();
onChange: (value: any) => void;
onTouched: () => void;
writeValue(value: any): void;
registerOnChange(onChange: any): void;
registerOnTouched(onTouched: any): void;
markAsTouched(): void;
setDisabledState(disabled: boolean): void;
ngOnInit(): void;
ngOnDestroy(): void;
clear(): void;
search(): void;
keyup(event: KeyboardEvent, newValue: string): void;
onInputValueChange(newValue: string): void;
private recreateObservable;
private freeSubscriptions;
private searchNow;
private addEvent;
static ɵfac: i0.ɵɵFactoryDeclaration<FilterComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<FilterComponent, "lux-filter", never, { "disabled": { "alias": "disabled"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "searchValue": { "alias": "searchValue"; "required": false; }; "searchOnType": { "alias": "searchOnType"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "debounce": { "alias": "debounce"; "required": false; }; }, { "searchValueChange": "searchValueChange"; }, never, never, false, never>;
}