ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
80 lines (79 loc) • 3.09 kB
TypeScript
/**
* @license
* Copyright Alibaba.com All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
*/
import { Overlay } from '@angular/cdk/overlay';
import { ElementRef, ExistingProvider, NgZone, OnDestroy, ViewContainerRef } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { NzSafeAny, OnChangeType, OnTouchedType } from 'ng-zorro-antd/core/types';
import { NzInputGroupWhitSuffixOrPrefixDirective } from 'ng-zorro-antd/input';
import { NzAutocompleteOptionComponent } from './autocomplete-option.component';
import { NzAutocompleteComponent } from './autocomplete.component';
export declare const NZ_AUTOCOMPLETE_VALUE_ACCESSOR: ExistingProvider;
export declare function getNzAutocompleteMissingPanelError(): Error;
export declare class NzAutocompleteTriggerDirective implements ControlValueAccessor, OnDestroy {
private elementRef;
private overlay;
private viewContainerRef;
private ngZone;
private nzInputGroupWhitSuffixOrPrefixDirective;
private document;
/** Bind nzAutocomplete component */
nzAutocomplete: NzAutocompleteComponent;
onChange: OnChangeType;
onTouched: OnTouchedType;
panelOpen: boolean;
/** Current active option */
get activeOption(): NzAutocompleteOptionComponent | void;
private overlayRef;
private portal;
private positionStrategy;
private previousValue;
private selectionChangeSubscription;
private optionsChangeSubscription;
private overlayBackdropClickSubscription;
private overlayPositionChangeSubscription;
constructor(elementRef: ElementRef, overlay: Overlay, viewContainerRef: ViewContainerRef, ngZone: NgZone, nzInputGroupWhitSuffixOrPrefixDirective: NzInputGroupWhitSuffixOrPrefixDirective, document: NzSafeAny);
ngOnDestroy(): void;
writeValue(value: NzSafeAny): void;
registerOnChange(fn: (value: {}) => {}): void;
registerOnTouched(fn: () => {}): void;
setDisabledState(isDisabled: boolean): void;
openPanel(): void;
closePanel(): void;
handleKeydown(event: KeyboardEvent): void;
handleInput(event: KeyboardEvent): void;
handleFocus(): void;
handleBlur(): void;
/**
* Subscription data source changes event
*/
private subscribeOptionsChange;
/**
* Subscription option changes event and set the value
*/
private subscribeSelectionChange;
/**
* Subscription external click and close panel
*/
private subscribeOverlayBackdropClick;
/**
* Subscription overlay position changes and reset dropdown position
*/
private subscribeOverlayPositionChange;
private attachOverlay;
private updateStatus;
private destroyPanel;
private getOverlayConfig;
private getConnectedElement;
private getHostWidth;
private getOverlayPosition;
private resetActiveItem;
private setValueAndClose;
private setTriggerValue;
private doBackfill;
private canOpen;
}