import * as i0 from '@angular/core'; import { OnInit, EventEmitter } from '@angular/core'; import * as i3 from '@angular/cdk/scrolling'; import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling'; import { CsvService } from 'ngx-redi-core/Helper'; import * as i2 from '@angular/common'; import * as i4 from '@angular/material/icon'; /** * Interface que representa una celda en el grid */ interface Cell { /** * Indice de la columna */ indiceColumna?: number; /** * Indice de la fila */ indiceFila?: number; /** * Indica si es valido */ esValido?: boolean; /** * Contiene el tamaño máximo */ longitud?: number; /** * Contiene el valor de la celda */ valor?: string; /** * Indica si su valor fue editado en el grid */ editado?: boolean; /** * Indica si el valor esta bloqueado */ bloqueado?: boolean; /** * Propiedad que indica si el valor es serializable */ serializable?: boolean; } /** * Interface que contiene la configuración y el origen de datos para un Grid */ interface DataGrid { /** * Contiene el arreglo de celtas para el Grid */ columnas: Array; /** * Contiene el arreglo de filas para el grid */ filas: Array>; /** * Propiedad que indica si el grid se enumera */ enumerable?: boolean; /** * Propiedad que indica si el grid es editable */ editable?: boolean; /** * Arreglo de indices de columnas bloqueadas */ bloquearColumnas?: Array; /** * Arreglo de indices de columnas no visibles */ ocultarColumnas?: Array; } /** * Componente que representa los datos en un grid * @decorators `@Component()` */ declare class RediGridComponent implements OnInit { private csv; /** * Datos de origen y configuración del grid */ data: DataGrid; /** * Indica si el grid se enumera */ enumerar: boolean; /** * Indica si el grid es editable */ editable: boolean; onUpdateValue: EventEmitter; /** * Constructor del grid * @param csv - Servicio CSV */ constructor(csv: CsvService); /** * Método de inicialización de visualización */ ngOnInit(): void; /** * ViewPort para el scroll virtual */ viewPort: CdkVirtualScrollViewport; /** * Método que invierte la ubicación del objeto renderizado * @returns Regresa la ubicación invertida en modo texto */ get invertirUbicacion(): string; /** * Método que valida si una columna esta bloqueada * @param numeroColumna - Numero de columna * @returns True si la columna esta bloqueada */ columnaBloqueada(numeroColumna: number): boolean; /** * Método que valida si una columna es visible * @param numeroColumna - Numero de columna * @returns True si es visible */ columnaVisible(numeroColumna: number): boolean; /** * Método que actualiza los datos editados en el grid * @param indiceFila - Contiene el indice de la fila editada * @param indiceColumna - Contiene el indice de la columna editada * @param valor - Contiene el valor de edición de celda */ actualizarDatos(indiceFila: number, indiceColumna: number, valor: string): void; /** * Cambia el foco de las celdas * @param event - KeyboardEvent */ moverFoco(event: KeyboardEvent): void; /** * Realiza el movimiento de celdas por el teclado * @param control - Control que desencadena el evento * @param key - Tecla que desencadeno el evento * @param nodesControls - Controles del grid */ private moverDeCelda; /** * Regresa el numero de columnas habilitadas dentro del grid * @returns Numero de columnas habilitadas */ private columnasHabilitadas; /** * Obtiene el control de un NodeList por indice * @param nodes - Lista de nodos * @param index - Indice del control * @returns Control del indice especificado */ private obtenerControl; /** * Descarga los datos contenidos en el Grid como un CSV * @param archivo - Nombre del archivo */ descargarCsv(archivo: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * Modulo que contiene los componentes de grid * @decorators ´@NgModule´ */ declare class RediGridModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { RediGridComponent, RediGridModule }; export type { Cell, DataGrid };