UNPKG

bootstrangular-datatable

Version:

Este es un simple modulo de tabla interactiva al estilo de Angular, Bootstrap y Datatable. Necesita angular/core, bootstrap y sus dependencias (jquery y popper) para funcionar.

85 lines (84 loc) 3.42 kB
import { OnInit } from '@angular/core'; export declare class DatatableComponent implements OnInit { private dataSource; headers: any; pageSize: number; pageSizeOptions: number[]; pageIndex: number; tableBtnOptions: BtnOption[]; rowBtnOptions: BtnOption[]; showNumeration: boolean; showSearcher: boolean; showSizeOptions: boolean; showPaginator: boolean; private filterText; private dataSourceFilter; constructor(); ngOnInit(): void; /** Obtener fuente de datos * @description Devuelve los datos filtrados en caso de que `filterText` tenga * valor, de lo contrario devuelve el total de datos. */ getDataSource(): any[]; /** Obtener datos por página * @description Devuelve los datos por tamaño de página (número de renglones) * dependiendo del índice de página del que se encuentre. */ getPageData(): any[]; /** Obtener el renglón inicial por página * @description Devuelve el numero del renglón inicial de la página actual. */ getPageRowStart(): number; /** Obtener el renglón final por página * @description Devuelve el numero del renglón final de la página actual. */ getPageRowEnd(): number; /** Ir a la primer página */ goFirstPage(): void; /** Ir a la página anterior */ goPreviousPage(): void; /** Ir a la siguiente página */ goNextPage(): void; /** Ir a la ultima página */ goLastPage(): void; /** Obtener ultima página * @description Devuelve el índice de la ultima página de los datos disponibles * calculado por el tamaño de datos por página. */ getLastPage(): number; /** Cambiar tamaño de página * @description Cambia el tamaño de renglones de la tabla por página vinculado * con el índice de la página actual para no rebasar el total de datos por página. * @param size Valor para el nuevo tamaño de página. */ changePageSize(size: number): void; /** Revisar tamaño de página * @description Verifica si `pageSize` está vacío, en tal caso se le asignará * el primer valor de la lista de opciones. En caso de que la lista de opciones * también se encuentre vacía, agrega el total de los datos como valor único. */ private checkPageSize; /** Añadir tamaño de página * @description Añade a la lista de opciones de tamaño de pagina el tamaño * de pagina `pageSize` que llegue como parámetro. */ private addPageSizeToPageSizeOptions; /** Obtener encabezados * @description Obtiene los encabezados de la tabla, en caso de que no se * definan como parámetro, devolverá una lista de las llaves de la primer fila. */ getHeaders(): object[]; /** Aplicar filtro * @description Guarda en `filterText` lo escrito en la caja de búsqueda y * guarda en `dataSourceFilter` el filtro aplicado en los datos. * @param filter Texto escrito en la caja de búsqueda. */ applyFilter(filter: string): void; } /** Button Option * @param title Titulo del boton. * @param action Funcion del boton. * @param icon Interface Button Icon. */ export interface BtnOption { title: string; action: Function; icon?: BtnIcon; } /** Button Icon * @param origin Origen o tipo de icono. * @param icon Definicion del icono o recurso. */ interface BtnIcon { origin: String; icon: String; } export {};