UNPKG

@jcbautistam/custom-table

Version:

Librería de tabla reutilizable con acciones, filtros, exportación y más.

67 lines 9.28 kB
import { HttpParams } from '@angular/common/http'; import { Injectable } from '@angular/core'; import * as i0 from "@angular/core"; export class ParametrosGenerales { constructor(init) { this.ordenarPor = 'FechaCreacion'; this.descending = false; this.noPagina = 1; this.tamanoPagina = 10; this.activos = true; this.filtrosIniciales = {}; this.filtrosPorColumna = {}; this.rangoFechas = ''; this.multiIds = ''; this.actionMulti = ''; this.idCompania = 0; if (init) { Object.assign(this, init); } } } export class ConfiguracionParametros { configurar(parametros, extraParams) { let params = new HttpParams(); parametros.idCompania = Number(localStorage.getItem('CompaniaSelect')) || 0; // Agregar valores básicos del objeto de parámetros Object.entries(parametros).forEach(([key, value]) => { if (value !== undefined && value !== null) { params = params.set(key, value.toString()); } }); // Agregar filtros iniciales params = this.agregarFiltros(params, 'filtrosIniciales', parametros.filtrosIniciales); // Agregar filtros por columna params = this.agregarFiltros(params, 'filtrosPorColumna', parametros.filtrosPorColumna); // Agregar parámetros adicionales if (extraParams) { Object.entries(extraParams).forEach(([key, value]) => { if (value !== undefined && value !== null) { params = params.set(key, value.toString()); } }); } return params; } agregarFiltros(params, prefix, filtros) { // Añadir filtros si existen if (filtros) { Object.keys(filtros).forEach((key) => { const filtro = filtros[key]; if (filtro) { params = params.set(`${prefix}[${key}]`, filtro); } }); } return params; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ConfiguracionParametros, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ConfiguracionParametros, providedIn: 'root' }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: ConfiguracionParametros, decorators: [{ type: Injectable, args: [{ providedIn: 'root', }] }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGFyYW1ldHJvc0dlbmVyYWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2N1c3RvbS10YWJsZS9zcmMvbGliL01vZGVscy9QYXJhbWV0cm9zR2VuZXJhbGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQWUzQyxNQUFNLE9BQU8sbUJBQW1CO0lBZTlCLFlBQVksSUFBb0M7UUFkaEQsZUFBVSxHQUFXLGVBQWUsQ0FBQztRQUNyQyxlQUFVLEdBQVksS0FBSyxDQUFDO1FBQzVCLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFDckIsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFDMUIsWUFBTyxHQUFZLElBQUksQ0FBQztRQUN4QixxQkFBZ0IsR0FBMkIsRUFBRSxDQUFDO1FBQzlDLHNCQUFpQixHQUEyQixFQUFFLENBQUM7UUFFL0MsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFFekIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0QixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUN6QixlQUFVLEdBQVcsQ0FBQyxDQUFDO1FBR3JCLElBQUksSUFBSSxFQUFFO1lBQ1IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDM0I7SUFDSCxDQUFDO0NBQ0Y7QUFLRCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLFVBQVUsQ0FDUixVQUErQixFQUMvQixXQUFpQztRQUVqQyxJQUFJLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQzlCLFVBQVUsQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUU1RSxtREFBbUQ7UUFDbkQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQ2xELElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO2dCQUN6QyxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7YUFDNUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILDRCQUE0QjtRQUM1QixNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FDMUIsTUFBTSxFQUNOLGtCQUFrQixFQUNsQixVQUFVLENBQUMsZ0JBQWdCLENBQzVCLENBQUM7UUFFRiw4QkFBOEI7UUFDOUIsTUFBTSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQzFCLE1BQU0sRUFDTixtQkFBbUIsRUFDbkIsVUFBVSxDQUFDLGlCQUFpQixDQUM3QixDQUFDO1FBRUYsaUNBQWlDO1FBQ2pDLElBQUksV0FBVyxFQUFFO1lBQ2YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO2dCQUNuRCxJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtvQkFDekMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO2lCQUM1QztZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU8sY0FBYyxDQUNwQixNQUFrQixFQUNsQixNQUFjLEVBQ2QsT0FBZ0M7UUFFaEMsNEJBQTRCO1FBQzVCLElBQUksT0FBTyxFQUFFO1lBQ1gsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDbkMsTUFBTSxNQUFNLEdBQUcsT0FBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUM3QixJQUFJLE1BQU0sRUFBRTtvQkFDVixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sSUFBSSxHQUFHLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztpQkFDbEQ7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs4R0F6RFUsdUJBQXVCO2tIQUF2Qix1QkFBdUIsY0FGdEIsTUFBTTs7MkZBRVAsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVBhcmFtZXRyb3NHZW5lcmFsZXMge1xyXG4gIG9yZGVuYXJQb3I/OiBzdHJpbmc7XHJcbiAgZGVzY2VuZGluZz86IGJvb2xlYW47XHJcbiAgbm9QYWdpbmE/OiBudW1iZXI7XHJcbiAgdGFtYW5vUGFnaW5hPzogbnVtYmVyO1xyXG4gIGFjdGl2b3M/OiBib29sZWFuO1xyXG4gIGZpbHRyb3NJbmljaWFsZXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xyXG4gIGZpbHRyb3NQb3JDb2x1bW5hPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcclxuICBtdWx0aUlkcz86IHN0cmluZztcclxuICBhY3Rpb25NdWx0aT86IHN0cmluZztcclxuICBpZENvbXBhbmlhPzogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgUGFyYW1ldHJvc0dlbmVyYWxlcyBpbXBsZW1lbnRzIElQYXJhbWV0cm9zR2VuZXJhbGVzIHtcclxuICBvcmRlbmFyUG9yOiBzdHJpbmcgPSAnRmVjaGFDcmVhY2lvbic7XHJcbiAgZGVzY2VuZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIG5vUGFnaW5hOiBudW1iZXIgPSAxO1xyXG4gIHRhbWFub1BhZ2luYTogbnVtYmVyID0gMTA7XHJcbiAgYWN0aXZvczogYm9vbGVhbiA9IHRydWU7XHJcbiAgZmlsdHJvc0luaWNpYWxlczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xyXG4gIGZpbHRyb3NQb3JDb2x1bW5hOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XHJcblxyXG4gIHJhbmdvRmVjaGFzOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgbXVsdGlJZHM6IHN0cmluZyA9ICcnO1xyXG4gIGFjdGlvbk11bHRpOiBzdHJpbmcgPSAnJztcclxuICBpZENvbXBhbmlhOiBudW1iZXIgPSAwO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxJUGFyYW1ldHJvc0dlbmVyYWxlcz4pIHtcclxuICAgIGlmIChpbml0KSB7XHJcbiAgICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29uZmlndXJhY2lvblBhcmFtZXRyb3Mge1xyXG4gIGNvbmZpZ3VyYXIoXHJcbiAgICBwYXJhbWV0cm9zOiBQYXJhbWV0cm9zR2VuZXJhbGVzLFxyXG4gICAgZXh0cmFQYXJhbXM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+XHJcbiAgKTogSHR0cFBhcmFtcyB7XHJcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcclxuICAgIHBhcmFtZXRyb3MuaWRDb21wYW5pYSA9IE51bWJlcihsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnQ29tcGFuaWFTZWxlY3QnKSkgfHwgMDtcclxuXHJcbiAgICAvLyBBZ3JlZ2FyIHZhbG9yZXMgYsOhc2ljb3MgZGVsIG9iamV0byBkZSBwYXLDoW1ldHJvc1xyXG4gICAgT2JqZWN0LmVudHJpZXMocGFyYW1ldHJvcykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XHJcbiAgICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkICYmIHZhbHVlICE9PSBudWxsKSB7XHJcbiAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldChrZXksIHZhbHVlLnRvU3RyaW5nKCkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBBZ3JlZ2FyIGZpbHRyb3MgaW5pY2lhbGVzXHJcbiAgICBwYXJhbXMgPSB0aGlzLmFncmVnYXJGaWx0cm9zKFxyXG4gICAgICBwYXJhbXMsXHJcbiAgICAgICdmaWx0cm9zSW5pY2lhbGVzJyxcclxuICAgICAgcGFyYW1ldHJvcy5maWx0cm9zSW5pY2lhbGVzXHJcbiAgICApO1xyXG5cclxuICAgIC8vIEFncmVnYXIgZmlsdHJvcyBwb3IgY29sdW1uYVxyXG4gICAgcGFyYW1zID0gdGhpcy5hZ3JlZ2FyRmlsdHJvcyhcclxuICAgICAgcGFyYW1zLFxyXG4gICAgICAnZmlsdHJvc1BvckNvbHVtbmEnLFxyXG4gICAgICBwYXJhbWV0cm9zLmZpbHRyb3NQb3JDb2x1bW5hXHJcbiAgICApO1xyXG5cclxuICAgIC8vIEFncmVnYXIgcGFyw6FtZXRyb3MgYWRpY2lvbmFsZXNcclxuICAgIGlmIChleHRyYVBhcmFtcykge1xyXG4gICAgICBPYmplY3QuZW50cmllcyhleHRyYVBhcmFtcykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XHJcbiAgICAgICAgaWYgKHZhbHVlICE9PSB1bmRlZmluZWQgJiYgdmFsdWUgIT09IG51bGwpIHtcclxuICAgICAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoa2V5LCB2YWx1ZS50b1N0cmluZygpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBwYXJhbXM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFncmVnYXJGaWx0cm9zKFxyXG4gICAgcGFyYW1zOiBIdHRwUGFyYW1zLFxyXG4gICAgcHJlZml4OiBzdHJpbmcsXHJcbiAgICBmaWx0cm9zPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPlxyXG4gICk6IEh0dHBQYXJhbXMge1xyXG4gICAgLy8gQcOxYWRpciBmaWx0cm9zIHNpIGV4aXN0ZW5cclxuICAgIGlmIChmaWx0cm9zKSB7XHJcbiAgICAgIE9iamVjdC5rZXlzKGZpbHRyb3MpLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGZpbHRybyA9IGZpbHRyb3MhW2tleV07XHJcbiAgICAgICAgaWYgKGZpbHRybykge1xyXG4gICAgICAgICAgcGFyYW1zID0gcGFyYW1zLnNldChgJHtwcmVmaXh9WyR7a2V5fV1gLCBmaWx0cm8pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHBhcmFtcztcclxuICB9XHJcbn1cclxuIl19