UNPKG

kea-react

Version:

Componentes comunes de react

48 lines (47 loc) 3.32 kB
/// <reference types="react" /> import React = require("react"); import { CellData, GridRow, GridRowExEx, GridColumn, GridColumnEx, OrdenGrid, FiltroColumna, DataTypes, filtroKind } from "./tipos"; /**Convierte a GridColumnEx */ export declare function toGridColumnEx(x: GridColumn): GridColumnEx; /**Normaliza un GridRow a un GridRowExEx */ export declare function toGridRowExEx(x: GridRow): GridRowExEx; /**Obtiene un arreglo que por cada columna, devuelve el tipo de dato que mas existe en esa columna */ export declare function obtenerTiposColumnas(data: GridRow[], columnCount: number): DataTypes[]; export declare function compare(a: any, b: any): 0 | 1 | -1; /**Obtiene los datos que se deben de descargar en el CSV de un grid */ export declare function ObtenerDatosCsv(rows: GridRowExEx[], columns: GridColumnEx[]): (string | number | boolean | Date | null | undefined)[][]; /**Obtiene los datos de celda de un GridRow en cierta columna */ export declare function getRowCellDataAt(row: GridRow, index: number): CellData; /**Obtiene los valroes unicos de una columna */ export declare function valoresUnicos(datos: GridRow[], columna: number): (string | number | boolean | Date | null | undefined)[]; export declare function aplicarFiltroBusqueda<T>(datos: T[], getKey: (item: T) => GridRow, filtro: string, columnCount: number): T[]; /**Aplica un filtro a la información */ export declare function aplicarFiltroColumna<T>(datos: T[], getKey: (item: T) => GridRow, filtro: FiltroColumna): T[]; /**Devuelve los datos en orden de los datos que se van a mostrar en un grid */ export declare function filtrarOrdenar(data: GridRow[], orden: OrdenGrid | undefined, filtros: FiltroColumna[], busqueda: string, columnCount: number): GridRow[]; /** * Filtra una colección de elementos dado el filtro de un grid * @param data * @param getKey * @param filtros * @param busqueda * @param columnCount */ export declare function filtrarItems<T>(data: T[], getKey: (item: T) => GridRow, filtros: FiltroColumna[], busqueda: string, columnCount: number): T[]; /** * Obtiene el elemento tr que sera la cabecera de la tabla * @param columnas Columnas del grid * @param orden Estado del ordenamiento del grid * @param tiposFiltros Tipos de los filtros por columna * @param stateFiltros Estado actual de los filtros * @param handleOnOrdenar Funcion que toma el indice de la columna y que se ejecuta cuando el usuario quiera ordenar por esa columna * @param handleOnFiltrar Funcion que toma el indice de la columna y el tipo de filtro y quita o agrega el filtro para esa columna */ export declare function getGridHeader(columnas: GridColumnEx[], orden: OrdenGrid | undefined, tiposFiltros: (filtroKind | null)[], stateFiltros: FiltroColumna[], handleOnOrdenar: (index: number) => void, handleOnFiltrar: (index: number, tipoFiltro: filtroKind) => void): React.DetailedReactHTMLElement<{}, HTMLElement>; /** * Devuelve una función que dado el visualProps crea un tr del Grid * @param row Fila * @param visualProps Propiedades visuales de la fila * @param key Key */ export declare function getGridRow(row: GridRow, key: string | number, visualPropsThunk: () => any): () => React.DetailedReactHTMLElement<React.HTMLAttributes<HTMLTableRowElement>, HTMLTableRowElement>;