UNPKG

@jchinc/ng-multiselect

Version:

Control de selección múltiple de elementos

75 lines (74 loc) 2.59 kB
import { OnInit, OnChanges, SimpleChanges, EventEmitter, Renderer2 } from '@angular/core'; import { FormBuilder, FormGroup } from '@angular/forms'; import { INgMultiselectItem, NgMultiselectItem } from './ng-multiselect.models'; export declare class NgMultiselectComponent implements OnInit, OnChanges { private _renderer; private _formBuilder; selectForm: FormGroup; dropdownVisible: boolean; filteredItems: Array<INgMultiselectItem>; itemAll: NgMultiselectItem; selectedItemsKeys: string; hoveredItem: INgMultiselectItem; private _hoveredItemIndex; private _selectedItems; /** * Altura de los elementos de la caja de selección. */ private _listItemHeight; term: string; source: Array<INgMultiselectItem>; top: number; /** * Para permitir que funcione como un select de 1 sólo registro. */ onlyOneRow: boolean; inputSearchPlaceHolder: string; disabled: boolean; toggleButtonText: string; noRowsText: string; accentInsensitive: boolean; toggleButtonClasses: Array<string>; selectedItemsChanged: EventEmitter<INgMultiselectItem[]>; selectedItemsKeysChanged: EventEmitter<string>; private _containerRef; private _dropdownRef; private _dropdownItemsRef; private _inputRef; /** * Evento click del documento para determinar si se oculta el dropdown de elementos. * @param event Evento click del mouse */ documentClick(event: MouseEvent): void; /** * Evento tecla ESCAPE del documento para determinar si se oculta el dropdown de elementos. * @param event Evento tecla */ documentKeyup(event: KeyboardEvent): void; constructor(_renderer: Renderer2, _formBuilder: FormBuilder); ngOnChanges(changes: SimpleChanges): void; ngOnInit(): void; /** * Selecciona el elemento indicado * @param item Elemento a seleccionar */ selectItem(item: INgMultiselectItem): void; toggleButtonClick(): void; /** * Selecciona/desselecciona todos los registros filtrados. */ selectUnselectAll(): void; clearTerm(): void; inputKeyup(event: KeyboardEvent): void; private _initialize(); private _createForm(); private _filterData(term?); private _match(item, term); private _showDropdown(); private _hideDropdown(); private _setSelectedItems(); /** * Ajusta el scroll para visualizar el elemento actualmente seleccionado */ private _scrollToView(index); }