@clr/angular
Version:
Angular components for Clarity
88 lines (87 loc) • 4.81 kB
TypeScript
import { AfterContentInit, ChangeDetectorRef, ElementRef, EventEmitter, Injector, Renderer2, ViewContainerRef } from '@angular/core';
import { ControlValueAccessor, NgControl } from '@angular/forms';
import { ClrCommonStringsService } from '../../utils/i18n/common-strings.service';
import { ClrLoadingState } from '../../utils/loading/loading';
import { LoadingListener } from '../../utils/loading/loading-listener';
import { ClrPopoverPosition } from '../../utils/popover/interfaces/popover-position.interface';
import { ClrPopoverPositionService } from '../../utils/popover/providers/popover-position.service';
import { ClrPopoverToggleService } from '../../utils/popover/providers/popover-toggle.service';
import { IfControlStateService } from '../common/if-control-state/if-control-state.service';
import { WrappedFormControl } from '../common/wrapped-control';
import { ClrComboboxContainer } from './combobox-container';
import { ComboboxModel } from './model/combobox.model';
import { ClrOptionSelected } from './option-selected.directive';
import { ComboboxContainerService } from './providers/combobox-container.service';
import { ComboboxFocusHandler } from './providers/combobox-focus-handler.service';
import { OptionSelectionService } from './providers/option-selection.service';
import * as i0 from "@angular/core";
import * as i1 from "../../utils/popover/popover-host.directive";
export declare class ClrCombobox<T> extends WrappedFormControl<ClrComboboxContainer> implements ControlValueAccessor, LoadingListener, AfterContentInit {
control: NgControl;
protected renderer: Renderer2;
protected el: ElementRef<HTMLElement>;
optionSelectionService: OptionSelectionService<T>;
commonStrings: ClrCommonStringsService;
private toggleService;
private positionService;
private controlStateService;
private containerService;
private platformId;
private focusHandler;
private cdr;
placeholder: string;
clrInputChange: EventEmitter<string>;
clrOpenChange: import("rxjs").Observable<boolean>;
/**
* This output should be used to set up a live region using aria-live and populate it with updates that reflect each combobox change.
*/
clrSelectionChange: import("rxjs").Observable<ComboboxModel<T>>;
textbox: ElementRef<HTMLInputElement>;
trigger: ElementRef<HTMLButtonElement>;
optionSelected: ClrOptionSelected<T>;
invalid: boolean;
focused: boolean;
focusedPill: any;
smartPosition: ClrPopoverPosition;
protected index: number;
private options;
private _searchText;
private onTouchedCallback;
private onChangeCallback;
constructor(vcr: ViewContainerRef, injector: Injector, control: NgControl, renderer: Renderer2, el: ElementRef<HTMLElement>, optionSelectionService: OptionSelectionService<T>, commonStrings: ClrCommonStringsService, toggleService: ClrPopoverToggleService, positionService: ClrPopoverPositionService, controlStateService: IfControlStateService, containerService: ComboboxContainerService, platformId: any, focusHandler: ComboboxFocusHandler<T>, cdr: ChangeDetectorRef);
get multiSelect(): boolean | string;
set multiSelect(value: boolean | string);
get id(): string;
set id(id: string);
get searchText(): string;
set searchText(text: string);
get openState(): boolean;
get multiSelectModel(): T[];
get ariaControls(): string;
get ariaOwns(): string;
get ariaDescribedBySelection(): string;
get displayField(): string;
private get disabled();
ngAfterContentInit(): void;
ngAfterViewInit(): void;
onKeyUp(event: KeyboardEvent): void;
inputId(): string;
loadingStateChange(state: ClrLoadingState): void;
unselect(item: T): void;
onBlur(): void;
onFocus(): void;
getSelectionAriaLabel(): string;
focusFirstActive(): void;
writeValue(value: T | T[]): void;
registerOnTouched(onTouched: any): void;
registerOnChange(onChange: any): void;
getActiveDescendant(): string;
setDisabledState(): void;
focusInput(): void;
private initializeSubscriptions;
private updateInputValue;
private updateControlValue;
private getDisplayNames;
static ɵfac: i0.ɵɵFactoryDeclaration<ClrCombobox<any>, [null, null, { optional: true; self: true; }, null, null, null, null, null, null, { optional: true; }, { optional: true; }, null, null, null]>;
static ɵcmp: i0.ɵɵComponentDeclaration<ClrCombobox<any>, "clr-combobox", never, { "placeholder": "placeholder"; "multiSelect": "clrMulti"; }, { "clrInputChange": "clrInputChange"; "clrOpenChange": "clrOpenChange"; "clrSelectionChange": "clrSelectionChange"; }, ["optionSelected", "options"], ["*"], false, [{ directive: typeof i1.ClrPopoverHostDirective; inputs: {}; outputs: {}; }]>;
}