UNPKG

ngx-tag-autocomplete

Version:

Tag input component for Angular

67 lines (66 loc) 2.31 kB
import { ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core'; import { ControlValueAccessor, FormBuilder, FormGroup } from '@angular/forms'; export interface AutoCompleteItem { [index: string]: any; } export declare class TagInputComponent implements ControlValueAccessor, OnDestroy, OnInit { private fb; private elementRef; isFocused: any; addOnBlur: boolean; addOnComma: boolean; addOnEnter: boolean; addOnPaste: boolean; addOnSpace: boolean; allowDuplicates: boolean; allowedTagsPattern: RegExp; autocomplete: boolean; private autocompleteItemsValue; private autocompleteItems; autocompleteMustMatch: boolean; autocompleteSelectFirstItem: boolean; pasteSplitPattern: string; placeholder: string; addTag: EventEmitter<string>; removeTag: EventEmitter<string>; disallowTag: EventEmitter<string>; tagInputElement: ElementRef; private canShowAutoComplete; private tagInputSubscription; private splitRegExp; private readonly tagInputField; private readonly inputValue; tagInputForm: FormGroup; autocompleteResults: string[]; tagsList: string[]; selectedTag: number; onDocumentClick(event: MouseEvent, target: HTMLElement): void; constructor(fb: FormBuilder, elementRef: ElementRef); ngOnInit(): void; onKeydown(event: KeyboardEvent): void; onInputBlurred(event: any): void; onInputFocused(): void; onInputPaste(event: any): void; onAutocompleteSelect(selectedItem: any): void; onAutocompleteEnter(): void; showAutocomplete(): boolean; private _splitString(tagString); private _isTagValid(tagString); private _isTagUnique(tagString); private _isTagAutocompleteItem(tagString); private _emitTagAdded(addedTags); private _emitTagRemoved(removedTag); private _emitDisallowedTags(disallowedTags); private _addTags(tags); private _removeTag(tagIndexToRemove); private _handleBackspace(); private _resetSelected(); private _resetInput(); /** Implemented as part of ControlValueAccessor. */ onChange: (value: any) => any; onTouched: () => any; writeValue(value: any): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; ngOnDestroy(): void; }