@jchinc/ng-multiselect
Version:
Control de selección múltiple de elementos
75 lines (74 loc) • 2.59 kB
TypeScript
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);
}