general-library-union 2.5.13 → 2.5.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.browserslistrc +15 -0
- package/.editorconfig +16 -0
- package/.vscode/extensions.json +4 -0
- package/.vscode/launch.json +20 -0
- package/.vscode/tasks.json +42 -0
- package/README.md +27 -27
- package/angular.json +143 -0
- package/karma.conf.js +44 -0
- package/ng-package.json +21 -0
- package/package.json +28 -17
- package/{public-api.d.ts → public-api.ts} +73 -35
- package/src/app/app.component.html +12 -0
- package/src/app/app.component.scss +0 -0
- package/src/app/app.component.spec.ts +29 -0
- package/src/app/app.component.ts +34 -0
- package/src/app/app.config.ts +43 -0
- package/src/app/app.module.ts +10 -0
- package/src/app/app.routes.ts +88 -0
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.html +6 -0
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.scss +0 -0
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.ts +39 -0
- package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.html +1 -0
- package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.scss +0 -0
- package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.ts +31 -0
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.html +9 -0
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.scss +28 -0
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.ts +32 -0
- package/src/app/core/componentes/filtro-general/filtro-general.component.html +34 -0
- package/src/app/core/componentes/filtro-general/filtro-general.component.scss +3 -0
- package/src/app/core/componentes/filtro-general/filtro-general.component.ts +154 -0
- package/src/app/core/componentes/footer/footer.component.html +13 -0
- package/src/app/core/componentes/footer/footer.component.scss +3 -0
- package/src/app/core/componentes/footer/footer.component.ts +20 -0
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.html +267 -0
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.scss +21 -0
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.ts +275 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/{Cambio.d.ts → Cambio.ts} +9 -3
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.ts +118 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.ts +76 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.ts +67 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.ts +11 -0
- package/src/app/core/componentes/inicio-component/inicio-component.component.html +29 -0
- package/src/app/core/componentes/inicio-component/inicio-component.component.scss +69 -0
- package/src/app/core/componentes/inicio-component/inicio-component.component.ts +65 -0
- package/src/app/core/componentes/menu/menu.component.html +13 -0
- package/src/app/core/componentes/menu/menu.component.scss +36 -0
- package/src/app/core/componentes/menu/menu.component.ts +35 -0
- package/src/app/core/componentes/tabla-general/tabla-general.component.html +90 -0
- package/src/app/core/componentes/tabla-general/tabla-general.component.scss +0 -0
- package/src/app/core/componentes/tabla-general/tabla-general.component.ts +96 -0
- package/src/app/core/core.module.ts +22 -0
- package/src/app/core/errores/authentication.error.ts +6 -0
- package/src/app/core/modelos/error-response.model.ts +9 -0
- package/src/app/core/modelos/table-column.model.ts +10 -0
- package/src/app/core/modelos/user.model.ts +6 -0
- package/src/app/core/plantilla-general/plantilla-general.template.html +139 -0
- package/src/app/core/plantilla-general/plantilla-general.template.scss +37 -0
- package/src/app/core/plantilla-general/plantilla-general.template.ts +233 -0
- package/src/app/core/servicios/auth.service.ts +189 -0
- package/src/app/core/servicios/cargar-control-funcionalidad.service.ts +49 -0
- package/src/app/core/servicios/data-exporter-table.utils.ts +55 -0
- package/src/app/core/servicios/error-interceptor.service.ts +146 -0
- package/src/app/core/servicios/guardias/auth.guard.ts +51 -0
- package/src/app/core/servicios/guardias/publico.guard.ts +26 -0
- package/src/app/core/servicios/interceptores/token-interceptor.service.ts +110 -0
- package/src/app/core/servicios/loading.service.ts +48 -0
- package/src/app/core/servicios/menu.service.ts +153 -0
- package/src/app/core/servicios/storage.service.ts +68 -0
- package/src/app/core/servicios/template.service.ts +91 -0
- package/src/app/core/servicios/toast.service.ts +89 -0
- package/src/app/core/servicios/utils.service.ts +351 -0
- package/src/app/core/sharedlib.module.ts +11 -0
- package/src/app/core/utilidades/color.util.ts +197 -0
- package/src/app/layout/api/{menuchangeevent.d.ts → menuchangeevent.ts} +1 -1
- package/src/app/layout/app.breadcrumb.component.html +20 -0
- package/src/app/layout/app.breadcrumb.component.ts +78 -0
- package/src/app/layout/app.footer.component.html +18 -0
- package/src/app/layout/app.footer.component.ts +15 -0
- package/src/app/layout/app.layout.component.html +20 -0
- package/src/app/layout/app.layout.component.ts +201 -0
- package/src/app/layout/app.layout.module.ts +9 -0
- package/src/app/layout/app.menu.component.html +6 -0
- package/src/app/layout/app.menu.component.ts +51 -0
- package/src/app/layout/app.menu.service.ts +23 -0
- package/src/app/layout/app.menuitem.component.ts +252 -0
- package/src/app/layout/app.menuprofile.component.html +35 -0
- package/src/app/layout/app.menuprofile.component.ts +60 -0
- package/src/app/layout/app.rightmenu.component.html +72 -0
- package/src/app/layout/app.rightmenu.component.ts +24 -0
- package/src/app/layout/app.sidebar.component.html +40 -0
- package/src/app/layout/app.sidebar.component.ts +81 -0
- package/src/app/layout/app.topbar.component.html +214 -0
- package/src/app/layout/app.topbar.component.ts +335 -0
- package/src/app/layout/config/app.config.component.html +125 -0
- package/src/app/layout/config/app.config.component.ts +206 -0
- package/src/app/layout/config/app.config.module.ts +11 -0
- package/src/app/layout/service/app.layout.service.ts +191 -0
- package/src/app/publico/pages/login/login.page.html +53 -0
- package/src/app/publico/pages/login/login.page.scss +166 -0
- package/src/app/publico/pages/login/login.page.ts +128 -0
- package/src/app/publico/pages/not-found/not-found.page.html +35 -0
- package/src/app/publico/pages/not-found/not-found.page.scss +2 -0
- package/src/app/publico/pages/not-found/not-found.page.ts +46 -0
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.html +58 -0
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.scss +49 -0
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.ts +176 -0
- package/src/app/publico/pages/timeout/timeout.page.html +24 -0
- package/src/app/publico/pages/timeout/timeout.page.scss +2 -0
- package/src/app/publico/pages/timeout/timeout.page.ts +18 -0
- package/src/app/seguridad/constantes/ConstantesGenerales.ts +30 -0
- package/src/app/seguridad/constantes/ReporteEntradaConstantes.ts +18 -0
- package/src/app/seguridad/constantes/ReporteFuenteConstantes.ts +13 -0
- package/src/app/seguridad/modelos/AplicacionModel.ts +11 -0
- package/src/app/seguridad/modelos/ArchivoPortalModel.ts +16 -0
- package/src/app/seguridad/modelos/AtributoPuntoModel.ts +9 -0
- package/src/app/seguridad/modelos/AtributoSSOportalModel.ts +22 -0
- package/src/app/seguridad/modelos/{AuditoriaArchivoModel.d.ts → AuditoriaArchivoModel.ts} +5 -2
- package/src/app/seguridad/modelos/CargueLineaModel.ts +17 -0
- package/src/app/seguridad/modelos/ColoresRGB.ts +17 -0
- package/src/app/seguridad/modelos/ColumnaFuenteModel.ts +9 -0
- package/src/app/seguridad/modelos/{ColumnaWraperModel.d.ts → ColumnaWraperModel.ts} +5 -4
- package/src/app/seguridad/modelos/ComplementoModel.ts +10 -0
- package/src/app/seguridad/modelos/ComponentePaginaModel.ts +22 -0
- package/src/app/seguridad/modelos/ConexionModel.ts +15 -0
- package/src/app/seguridad/modelos/{ContenidoHtmlPortalModel.d.ts → ContenidoHtmlPortalModel.ts} +7 -2
- package/src/app/seguridad/modelos/ControlFuncionModel.ts +10 -0
- package/src/app/seguridad/modelos/CorreoModel.ts +45 -0
- package/src/app/seguridad/modelos/CorreoWSModel.ts +49 -0
- package/src/app/seguridad/modelos/CruceRecursoPuntoModel.ts +14 -0
- package/src/app/seguridad/modelos/{DatoInicioModel.d.ts → DatoInicioModel.ts} +4 -3
- package/src/app/seguridad/modelos/{EjecucionReporteDataModel.d.ts → EjecucionReporteDataModel.ts} +3 -2
- package/src/app/seguridad/modelos/EmpresaModel.ts +25 -0
- package/src/app/seguridad/modelos/EmpresaSeguridadModel.ts +19 -0
- package/src/app/seguridad/modelos/{EntradaComplementoModel.d.ts → EntradaComplementoModel.ts} +5 -2
- package/src/app/seguridad/modelos/EtiquetaModel.ts +4 -0
- package/src/app/seguridad/modelos/Etiquetas.ts +14 -0
- package/src/app/seguridad/modelos/{ForeingWraperModel.d.ts → ForeingWraperModel.ts} +5 -2
- package/src/app/seguridad/modelos/FuenteCampoAtributoModel.ts +21 -0
- package/src/app/seguridad/modelos/{FuenteCampoModel.d.ts → FuenteCampoModel.ts} +6 -2
- package/src/app/seguridad/modelos/FuenteDato.ts +19 -0
- package/src/app/seguridad/modelos/FuenteEntradaModel.ts +9 -0
- package/src/app/seguridad/modelos/{FuenteGeneralModel.d.ts → FuenteGeneralModel.ts} +21 -2
- package/src/app/seguridad/modelos/FuenteLineaServicioModel.ts +19 -0
- package/src/app/seguridad/modelos/FuenteProcesoGeneralModel.ts +14 -0
- package/src/app/seguridad/modelos/{FuenteServicioModel.d.ts → FuenteServicioModel.ts} +16 -2
- package/src/app/seguridad/modelos/FuncionalidadModel.ts +12 -0
- package/src/app/seguridad/modelos/GeneralModel.ts +16 -0
- package/src/app/seguridad/modelos/{GrupoAccesoModel.d.ts → GrupoAccesoModel.ts} +5 -2
- package/src/app/seguridad/modelos/GrupoControlFuncionModel.ts +12 -0
- package/src/app/seguridad/modelos/GrupoFuenteModel.ts +17 -0
- package/src/app/seguridad/modelos/GrupoPermisoModel.ts +16 -0
- package/src/app/seguridad/modelos/{JoinFromModel.d.ts → JoinFromModel.ts} +2 -2
- package/src/app/seguridad/modelos/ListaServicioModel.ts +18 -0
- package/src/app/seguridad/modelos/LlaveForaneaModel.ts +6 -0
- package/src/app/seguridad/modelos/LoginModel.ts +19 -0
- package/src/app/seguridad/modelos/MensajeSistemaModel.ts +10 -0
- package/src/app/seguridad/modelos/{MenuPortalModel.d.ts → MenuPortalModel.ts} +2 -1
- package/src/app/seguridad/modelos/ModulosModel.ts +17 -0
- package/src/app/seguridad/modelos/{ObjetoReporteModel.d.ts → ObjetoReporteModel.ts} +3 -2
- package/src/app/seguridad/modelos/PaginaPortalModel.ts +23 -0
- package/src/app/seguridad/modelos/ParametroComponenteModel.ts +9 -0
- package/src/app/seguridad/modelos/ParametrosGeneralModel.ts +16 -0
- package/src/app/seguridad/modelos/PermisoFuncionModel.ts +11 -0
- package/src/app/seguridad/modelos/PermisocontenidoModel.ts +20 -0
- package/src/app/seguridad/modelos/{PeticionModel.d.ts → PeticionModel.ts} +6 -1
- package/src/app/seguridad/modelos/PreguntaSeguridadModel.ts +9 -0
- package/src/app/seguridad/modelos/PropiedadModel.ts +12 -0
- package/src/app/seguridad/modelos/PublicacionWebModel.ts +29 -0
- package/src/app/seguridad/modelos/PuntoProcesoModel.ts +7 -0
- package/src/app/seguridad/modelos/RecursoPunto.ts +13 -0
- package/src/app/seguridad/modelos/RecursoPuntoModel.ts +13 -0
- package/src/app/seguridad/modelos/ReporteBanda.ts +9 -0
- package/src/app/seguridad/modelos/ReporteColumna.ts +33 -0
- package/src/app/seguridad/modelos/ReporteColumnario.ts +82 -0
- package/src/app/seguridad/modelos/ReporteColumnarioMarcador.ts +31 -0
- package/src/app/seguridad/modelos/{ReporteEntradaModel.d.ts → ReporteEntradaModel.ts} +4 -2
- package/src/app/seguridad/modelos/{ReporteFuenteModel.d.ts → ReporteFuenteModel.ts} +70 -16
- package/src/app/seguridad/modelos/ReporteMarcador.ts +40 -0
- package/src/app/seguridad/modelos/ReporteSoporte.ts +10 -0
- package/src/app/seguridad/modelos/ReporteTabla.ts +14 -0
- package/src/app/seguridad/modelos/RespuestaModel.ts +10 -0
- package/src/app/seguridad/modelos/{RolModel.d.ts → RolModel.ts} +8 -4
- package/src/app/seguridad/modelos/ServidorCorreoModel.ts +31 -0
- package/src/app/seguridad/modelos/SistemaMensajeModel.ts +11 -0
- package/src/app/seguridad/modelos/SitioPortalModel.ts +29 -0
- package/src/app/seguridad/modelos/TablaFromModel.ts +5 -0
- package/src/app/seguridad/modelos/TareasModel.ts +54 -0
- package/src/app/seguridad/modelos/TextoModel.ts +11 -0
- package/src/app/seguridad/modelos/TipoEtiqueta.ts +8 -0
- package/src/app/seguridad/modelos/UnionModel.ts +14 -0
- package/src/app/seguridad/modelos/{UsuarioModel.d.ts → UsuarioModel.ts} +16 -5
- package/src/app/seguridad/modelos/UsuariogrupoModel.ts +27 -0
- package/src/app/seguridad/modelos/aplicacion-propiedad-model.ts +16 -0
- package/src/app/seguridad/modelos/contenidoCorreoModel.ts +13 -0
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.html +47 -0
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.scss +8 -0
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.ts +141 -0
- package/src/app/shared/servicios/cargar-archivos.service.ts +51 -0
- package/src/app/shared/servicios/cargar-mapas.service.ts +43 -0
- package/src/app/shared/servicios/encriptado-basico.service.ts +54 -0
- package/src/app/shared/servicios/encriptador-simetrico.service.ts +29 -0
- package/src/app/shared/servicios/general.service.ts +124 -0
- package/src/app/shared/servicios/parametros-navegacion.service.ts +20 -0
- package/src/app/shared/servicios/plantillas.service.ts +22 -0
- package/src/app/shared/utilidades/translate-loader.util.ts +44 -0
- package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.html +167 -0
- package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.scss +11 -0
- package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.ts +425 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.html +87 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.scss +0 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.ts +189 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.html +117 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.scss +0 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.ts +87 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.html +158 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.scss +6 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.ts +345 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.html +131 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.scss +0 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.ts +198 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.html +206 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.scss +3 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.ts +329 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.html +2114 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.scss +241 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.ts +1677 -0
- package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.html +33 -0
- package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.scss +0 -0
- package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.ts +96 -0
- package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.html +47 -0
- package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.scss +0 -0
- package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.ts +95 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.html +394 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.scss +10 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.ts +599 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.html +130 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.scss +0 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.ts +172 -0
- package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.html +376 -0
- package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.scss +5 -0
- package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.ts +749 -0
- package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.html +145 -0
- package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.scss +0 -0
- package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.ts +302 -0
- package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.html +19 -0
- package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.scss +0 -0
- package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.ts +89 -0
- package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.html +713 -0
- package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.scss +0 -0
- package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.ts +688 -0
- package/src/app/webcommon/pipes/dashboard.pipe.ts +79 -0
- package/src/app/webcommon/pipes/fuente.pipe.ts +207 -0
- package/src/app/webcommon/pipes/general.pipe.ts +1043 -0
- package/src/app/webcommon/pipes/reporte-columnario.pipe.ts +101 -0
- package/src/app/webcommon/pipes/reporte-fuente.pipe.ts +306 -0
- package/src/app/webcommon/pipes/sara-general.pipe.ts +289 -0
- package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.html +90 -0
- package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.scss +0 -0
- package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.ts +262 -0
- package/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.html +50 -0
- package/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.scss +0 -0
- package/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.ts +135 -0
- package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.html +41 -0
- package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.scss +0 -0
- package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.ts +283 -0
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.html +179 -0
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.scss +3 -0
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.ts +266 -0
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.html +261 -0
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.scss +13 -0
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.ts +513 -0
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.html +10 -0
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.scss +5 -0
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.ts +58 -0
- package/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.html +71 -0
- package/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.scss +0 -0
- package/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.ts +151 -0
- package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.html +11 -0
- package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.scss +0 -0
- package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.ts +82 -0
- package/src/app/webcommon/services/carguelinea.service.ts +72 -0
- package/src/app/webcommon/services/dashboard.service.ts +258 -0
- package/src/app/webcommon/services/ejecucionreporte.service.ts +160 -0
- package/src/app/webcommon/services/fechaUtils.service.ts +117 -0
- package/src/app/webcommon/services/fuentegeneral.service.ts +74 -0
- package/src/app/webcommon/services/homologacion.service.ts +49 -0
- package/src/app/webcommon/services/plantillas.service.ts +165 -0
- package/src/app/webcommon/services/reportes.service.ts +133 -0
- package/src/app/webcommon/webcommon.module.ts +11 -0
- package/src/assets/demo/customers-large.json +3604 -3604
- package/src/assets/demo/data/chat.json +123 -123
- package/src/assets/demo/data/countries.json +246 -246
- package/src/assets/demo/data/customers-large.json +3604 -3604
- package/src/assets/demo/data/customers-medium.json +904 -904
- package/src/assets/demo/data/customers-small.json +164 -164
- package/src/assets/demo/data/file-management.json +200 -200
- package/src/assets/demo/data/files-lazy.json +25 -25
- package/src/assets/demo/data/files.json +54 -54
- package/src/assets/demo/data/filesystem-lazy.json +20 -20
- package/src/assets/demo/data/filesystem.json +312 -312
- package/src/assets/demo/data/kanban.json +195 -195
- package/src/assets/demo/data/mail.json +364 -364
- package/src/assets/demo/data/members.json +49 -49
- package/src/assets/demo/data/photos.json +94 -94
- package/src/assets/demo/data/products-mixed.json +364 -364
- package/src/assets/demo/data/products-orders-small.json +340 -340
- package/src/assets/demo/data/products-orders.json +833 -833
- package/src/assets/demo/data/products-small.json +123 -123
- package/src/assets/demo/data/products.json +394 -394
- package/src/assets/demo/data/scheduleevents.json +64 -64
- package/src/assets/demo/data/tasks.json +204 -204
- package/src/assets/demo/images/blocks/ad/icon-blocks.svg +18 -18
- package/src/assets/demo/images/blocks/logos/hyper.svg +2 -2
- package/src/assets/demo/images/contact/map-dark.svg +9 -9
- package/src/assets/demo/images/contact/map-light.svg +9 -9
- package/src/assets/demo/images/landing/icon-accessibility.svg +3 -3
- package/src/assets/demo/images/landing/icon-community.svg +3 -3
- package/src/assets/demo/images/landing/icon-components.svg +4 -4
- package/src/assets/demo/images/landing/icon-mobile.svg +3 -3
- package/src/assets/demo/images/landing/icon-productivity.svg +3 -3
- package/src/assets/demo/images/landing/icon-support.svg +3 -3
- package/src/assets/demo/images/landing/icon-theme.svg +3 -3
- package/src/assets/demo/images/landing/icon-ts.svg +11 -11
- package/src/assets/demo/images/product/product-placeholder.svg +9 -9
- package/src/assets/demo/styles/badges.css +93 -93
- package/src/assets/demo/styles/badges.scss +109 -109
- package/src/assets/demo/styles/code.css +14 -14
- package/src/assets/demo/styles/code.scss +14 -14
- package/src/assets/demo/styles/flags/flags.css +1 -1
- package/src/assets/glyphicons/css/boton-icon.css +547 -547
- package/src/assets/glyphicons/css/glyphicons-basic.css +3317 -3317
- package/src/assets/glyphicons/css/glyphicons-filetypes.css +649 -649
- package/src/assets/glyphicons/css/glyphicons-halflings.css +101 -101
- package/src/assets/glyphicons/css/glyphicons-social.css +88 -88
- package/src/assets/glyphicons/css/glyphicons.css +4 -4
- package/src/assets/glyphicons/fonts/filetypes/glyphicons-filetypes-regular.svg +167 -167
- package/src/assets/glyphicons/fonts/halflings/glyphicons-halflings-regular.svg +327 -327
- package/src/assets/glyphicons/fonts/regular/glyphicons-regular.svg +827 -827
- package/src/assets/glyphicons/fonts/social/glyphicons-social-regular.svg +97 -97
- package/src/assets/layout/images/401.svg +11 -11
- package/src/assets/layout/images/extensions/asset-amex.svg +22 -22
- package/src/assets/layout/images/extensions/asset-mastercard.svg +16 -16
- package/src/assets/layout/images/extensions/asset-paypal.svg +17 -17
- package/src/assets/layout/images/extensions/asset-visa.svg +16 -16
- package/src/assets/layout/images/extensions/prime-logo.svg +17 -17
- package/src/assets/layout/images/footer-ultima-dark.svg +4 -4
- package/src/assets/layout/images/footer-ultima.svg +4 -4
- package/src/assets/layout/images/logo-ultima.svg +13 -13
- package/src/assets/layout/images/widgets/feature-faq.svg +59 -59
- package/src/assets/layout/images/widgets/feature-onboarding.svg +36 -36
- package/src/assets/layout/images/widgets/feature-security.svg +47 -47
- package/src/assets/layout/styles/layout/_animation.scss +52 -52
- package/src/assets/layout/styles/layout/_breadcrumb.scss +43 -43
- package/src/assets/layout/styles/layout/_config.scss +12 -12
- package/src/assets/layout/styles/layout/_content.scss +9 -9
- package/src/assets/layout/styles/layout/_fonts.scss +29 -29
- package/src/assets/layout/styles/layout/_footer.scss +15 -15
- package/src/assets/layout/styles/layout/_invoice.scss +19 -19
- package/src/assets/layout/styles/layout/_landing.scss +10 -10
- package/src/assets/layout/styles/layout/_main.scss +27 -27
- package/src/assets/layout/styles/layout/_megamenu.scss +6 -6
- package/src/assets/layout/styles/layout/_menuprofile.scss +75 -75
- package/src/assets/layout/styles/layout/_responsive.scss +243 -243
- package/src/assets/layout/styles/layout/_rightmenu.scss +57 -57
- package/src/assets/layout/styles/layout/_typography.scss +90 -90
- package/src/assets/layout/styles/layout/_utils.scss +77 -77
- package/src/assets/layout/styles/layout/layout.css +1802 -1802
- package/src/assets/layout/styles/layout/layout.scss +18 -18
- package/src/assets/layout/styles/layout/preloading.css +65 -65
- package/src/assets/layout/styles/layout/preloading.scss +59 -59
- package/src/assets/layout/styles/layout/sidebar/_sidebar.scss +17 -17
- package/src/assets/layout/styles/layout/sidebar/_sidebar_drawer.scss +282 -282
- package/src/assets/layout/styles/layout/sidebar/_sidebar_horizontal.scss +210 -210
- package/src/assets/layout/styles/layout/sidebar/_sidebar_reveal.scss +186 -186
- package/src/assets/layout/styles/layout/sidebar/_sidebar_slim.scss +201 -201
- package/src/assets/layout/styles/layout/sidebar/_sidebar_slim_plus.scss +215 -215
- package/src/assets/layout/styles/layout/sidebar/_sidebar_vertical.scss +183 -183
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_bluegrey.scss +10 -10
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_brown.scss +9 -9
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_cyan.scss +9 -9
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_dark.scss +8 -8
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_deeporange.scss +9 -9
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_deeppurple.scss +9 -9
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_green.scss +9 -9
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_indigo.scss +9 -9
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_light.scss +8 -8
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_pink.scss +9 -9
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_purple.scss +9 -9
- package/src/assets/layout/styles/layout/sidebar/themes/_menu_teal.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/_topbar.scss +21 -21
- package/src/assets/layout/styles/layout/topbar/_topbar_main.scss +235 -235
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_amber.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_blue.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_bluegrey.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_brown.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_cyan.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_dark.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_deeporange.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_deeppurple.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_green.scss +8 -8
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_grey.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_indigo.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_lightblue.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_lightgreen.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_lime.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_orange.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_pink.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_purple.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_teal.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_white.scss +9 -9
- package/src/assets/layout/styles/layout/topbar/themes/_topbar_yellow.scss +9 -9
- package/src/assets/layout/styles/theme/_compact.scss +88 -88
- package/src/assets/layout/styles/theme/designer/_colors.scss +18 -18
- package/src/assets/layout/styles/theme/designer/_common.scss +74 -74
- package/src/assets/layout/styles/theme/designer/_components.scss +102 -102
- package/src/assets/layout/styles/theme/designer/_mixins.scss +203 -203
- package/src/assets/layout/styles/theme/designer/components/button/_button.scss +604 -604
- package/src/assets/layout/styles/theme/designer/components/button/_speeddial.scss +80 -80
- package/src/assets/layout/styles/theme/designer/components/button/_splitbutton.scss +381 -381
- package/src/assets/layout/styles/theme/designer/components/data/_carousel.scss +37 -37
- package/src/assets/layout/styles/theme/designer/components/data/_datatable.scss +340 -340
- package/src/assets/layout/styles/theme/designer/components/data/_dataview.scss +55 -55
- package/src/assets/layout/styles/theme/designer/components/data/_filter.scss +137 -137
- package/src/assets/layout/styles/theme/designer/components/data/_fullcalendar.scss +329 -329
- package/src/assets/layout/styles/theme/designer/components/data/_orderlist.scss +102 -102
- package/src/assets/layout/styles/theme/designer/components/data/_organizationchart.scss +59 -59
- package/src/assets/layout/styles/theme/designer/components/data/_paginator.scss +120 -120
- package/src/assets/layout/styles/theme/designer/components/data/_picklist.scss +102 -102
- package/src/assets/layout/styles/theme/designer/components/data/_timeline.scss +38 -38
- package/src/assets/layout/styles/theme/designer/components/data/_tree.scss +148 -148
- package/src/assets/layout/styles/theme/designer/components/data/_treetable.scss +250 -250
- package/src/assets/layout/styles/theme/designer/components/data/_virtualscroller.scss +28 -28
- package/src/assets/layout/styles/theme/designer/components/file/_fileupload.scss +58 -58
- package/src/assets/layout/styles/theme/designer/components/input/_autocomplete.scss +117 -117
- package/src/assets/layout/styles/theme/designer/components/input/_calendar.scss +271 -271
- package/src/assets/layout/styles/theme/designer/components/input/_cascadeselect.scss +125 -125
- package/src/assets/layout/styles/theme/designer/components/input/_checkbox.scss +85 -85
- package/src/assets/layout/styles/theme/designer/components/input/_chips.scss +54 -54
- package/src/assets/layout/styles/theme/designer/components/input/_colorpicker.scss +19 -19
- package/src/assets/layout/styles/theme/designer/components/input/_dropdown.scss +149 -149
- package/src/assets/layout/styles/theme/designer/components/input/_editor.scss +122 -122
- package/src/assets/layout/styles/theme/designer/components/input/_inputgroup.scss +77 -77
- package/src/assets/layout/styles/theme/designer/components/input/_inputmask.scss +15 -15
- package/src/assets/layout/styles/theme/designer/components/input/_inputnumber.scss +27 -27
- package/src/assets/layout/styles/theme/designer/components/input/_inputswitch.scss +59 -59
- package/src/assets/layout/styles/theme/designer/components/input/_inputtext.scss +116 -116
- package/src/assets/layout/styles/theme/designer/components/input/_listbox.scss +81 -81
- package/src/assets/layout/styles/theme/designer/components/input/_multiselect.scss +173 -173
- package/src/assets/layout/styles/theme/designer/components/input/_password.scss +51 -51
- package/src/assets/layout/styles/theme/designer/components/input/_radiobutton.scss +77 -77
- package/src/assets/layout/styles/theme/designer/components/input/_rating.scss +48 -48
- package/src/assets/layout/styles/theme/designer/components/input/_selectbutton.scss +49 -49
- package/src/assets/layout/styles/theme/designer/components/input/_slider.scss +71 -71
- package/src/assets/layout/styles/theme/designer/components/input/_togglebutton.scss +47 -47
- package/src/assets/layout/styles/theme/designer/components/input/_treeselect.scss +138 -138
- package/src/assets/layout/styles/theme/designer/components/menu/_breadcrumb.scss +42 -42
- package/src/assets/layout/styles/theme/designer/components/menu/_contextmenu.scss +56 -56
- package/src/assets/layout/styles/theme/designer/components/menu/_dock.scss +86 -86
- package/src/assets/layout/styles/theme/designer/components/menu/_megamenu.scss +106 -106
- package/src/assets/layout/styles/theme/designer/components/menu/_menu.scss +45 -45
- package/src/assets/layout/styles/theme/designer/components/menu/_menubar.scss +183 -183
- package/src/assets/layout/styles/theme/designer/components/menu/_panelmenu.scss +142 -142
- package/src/assets/layout/styles/theme/designer/components/menu/_slidemenu.scss +59 -59
- package/src/assets/layout/styles/theme/designer/components/menu/_steps.scss +56 -56
- package/src/assets/layout/styles/theme/designer/components/menu/_tabmenu.scss +76 -76
- package/src/assets/layout/styles/theme/designer/components/menu/_tieredmenu.scss +82 -82
- package/src/assets/layout/styles/theme/designer/components/messages/_inlinemessage.scss +64 -64
- package/src/assets/layout/styles/theme/designer/components/messages/_message.scss +102 -102
- package/src/assets/layout/styles/theme/designer/components/messages/_toast.scss +102 -102
- package/src/assets/layout/styles/theme/designer/components/misc/_avatar.scss +29 -29
- package/src/assets/layout/styles/theme/designer/components/misc/_badge.scss +47 -47
- package/src/assets/layout/styles/theme/designer/components/misc/_chip.scss +37 -37
- package/src/assets/layout/styles/theme/designer/components/misc/_inplace.scss +17 -17
- package/src/assets/layout/styles/theme/designer/components/misc/_progressbar.scss +17 -17
- package/src/assets/layout/styles/theme/designer/components/misc/_scrolltop.scss +19 -19
- package/src/assets/layout/styles/theme/designer/components/misc/_skeleton.scss +7 -7
- package/src/assets/layout/styles/theme/designer/components/misc/_tag.scss +34 -34
- package/src/assets/layout/styles/theme/designer/components/misc/_terminal.scss +11 -11
- package/src/assets/layout/styles/theme/designer/components/multimedia/_galleria.scss +139 -139
- package/src/assets/layout/styles/theme/designer/components/multimedia/_image.scss +44 -44
- package/src/assets/layout/styles/theme/designer/components/overlay/_confirmpopup.scss +67 -67
- package/src/assets/layout/styles/theme/designer/components/overlay/_dialog.scss +89 -89
- package/src/assets/layout/styles/theme/designer/components/overlay/_overlaypanel.scss +84 -84
- package/src/assets/layout/styles/theme/designer/components/overlay/_sidebar.scss +27 -27
- package/src/assets/layout/styles/theme/designer/components/overlay/_tooltip.scss +37 -37
- package/src/assets/layout/styles/theme/designer/components/panel/_accordion.scss +146 -146
- package/src/assets/layout/styles/theme/designer/components/panel/_card.scss +30 -30
- package/src/assets/layout/styles/theme/designer/components/panel/_divider.scss +31 -31
- package/src/assets/layout/styles/theme/designer/components/panel/_fieldset.scss +52 -52
- package/src/assets/layout/styles/theme/designer/components/panel/_panel.scss +59 -59
- package/src/assets/layout/styles/theme/designer/components/panel/_scrollpanel.scss +5 -5
- package/src/assets/layout/styles/theme/designer/components/panel/_splitter.scss +18 -18
- package/src/assets/layout/styles/theme/designer/components/panel/_toolbar.scss +11 -11
- package/src/assets/layout/styles/theme/extensions/_accordion.scss +55 -55
- package/src/assets/layout/styles/theme/extensions/_autocomplete.scss +67 -67
- package/src/assets/layout/styles/theme/extensions/_breadcrumb.scss +9 -9
- package/src/assets/layout/styles/theme/extensions/_button.scss +217 -217
- package/src/assets/layout/styles/theme/extensions/_calendar.scss +154 -154
- package/src/assets/layout/styles/theme/extensions/_carousel.scss +13 -13
- package/src/assets/layout/styles/theme/extensions/_cascadeselect.scss +73 -73
- package/src/assets/layout/styles/theme/extensions/_checkbox.scss +85 -85
- package/src/assets/layout/styles/theme/extensions/_chips.scss +55 -55
- package/src/assets/layout/styles/theme/extensions/_datatable.scss +38 -38
- package/src/assets/layout/styles/theme/extensions/_dropdown.scss +48 -48
- package/src/assets/layout/styles/theme/extensions/_fieldset.scss +15 -15
- package/src/assets/layout/styles/theme/extensions/_float_label.scss +51 -51
- package/src/assets/layout/styles/theme/extensions/_fullcalendar.scss +84 -84
- package/src/assets/layout/styles/theme/extensions/_galleria.scss +26 -26
- package/src/assets/layout/styles/theme/extensions/_input.scss +14 -14
- package/src/assets/layout/styles/theme/extensions/_inputgroup.scss +32 -32
- package/src/assets/layout/styles/theme/extensions/_inputmask.scss +14 -14
- package/src/assets/layout/styles/theme/extensions/_inputnumber.scss +14 -14
- package/src/assets/layout/styles/theme/extensions/_inputswitch.scss +32 -32
- package/src/assets/layout/styles/theme/extensions/_listbox.scss +17 -17
- package/src/assets/layout/styles/theme/extensions/_megamenu.scss +9 -9
- package/src/assets/layout/styles/theme/extensions/_menu.scss +9 -9
- package/src/assets/layout/styles/theme/extensions/_menubar.scss +9 -9
- package/src/assets/layout/styles/theme/extensions/_mixins.scss +108 -108
- package/src/assets/layout/styles/theme/extensions/_multiselect.scss +104 -104
- package/src/assets/layout/styles/theme/extensions/_orderlist.scss +13 -13
- package/src/assets/layout/styles/theme/extensions/_overlaypanel.scss +20 -20
- package/src/assets/layout/styles/theme/extensions/_paginator.scss +20 -20
- package/src/assets/layout/styles/theme/extensions/_panel.scss +28 -28
- package/src/assets/layout/styles/theme/extensions/_panelmenu.scss +49 -49
- package/src/assets/layout/styles/theme/extensions/_picklist.scss +13 -13
- package/src/assets/layout/styles/theme/extensions/_progressbar.scss +6 -6
- package/src/assets/layout/styles/theme/extensions/_radiobutton.scss +49 -49
- package/src/assets/layout/styles/theme/extensions/_rating.scss +35 -35
- package/src/assets/layout/styles/theme/extensions/_selectbutton.scss +12 -12
- package/src/assets/layout/styles/theme/extensions/_slidemenu.scss +7 -7
- package/src/assets/layout/styles/theme/extensions/_slider.scss +15 -15
- package/src/assets/layout/styles/theme/extensions/_steps.scss +65 -65
- package/src/assets/layout/styles/theme/extensions/_tabmenu.scss +37 -37
- package/src/assets/layout/styles/theme/extensions/_tabview.scss +31 -31
- package/src/assets/layout/styles/theme/extensions/_tieredmenu.scss +7 -7
- package/src/assets/layout/styles/theme/extensions/_timeline.scss +8 -8
- package/src/assets/layout/styles/theme/extensions/_togglebutton.scss +10 -10
- package/src/assets/layout/styles/theme/extensions/_toolbar.scss +2 -2
- package/src/assets/layout/styles/theme/extensions/_tooltip.scss +9 -9
- package/src/assets/layout/styles/theme/extensions/_tree.scss +15 -15
- package/src/assets/layout/styles/theme/extensions/_treeselect.scss +84 -84
- package/src/assets/layout/styles/theme/extensions/_treetable.scss +18 -18
- package/src/assets/layout/styles/theme/extensions/_vendor_extensions.scss +50 -50
- package/src/assets/layout/styles/theme/theme-dark/_variables.scss +869 -869
- package/src/assets/layout/styles/theme/theme-dark/amber/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/amber/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-dark/blue/theme.css +7724 -7724
- package/src/assets/layout/styles/theme/theme-dark/blue/theme.scss +9 -9
- package/src/assets/layout/styles/theme/theme-dark/bluegrey/theme.css +7723 -7723
- package/src/assets/layout/styles/theme/theme-dark/bluegrey/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-dark/brown/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/brown/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-dark/cyan/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/cyan/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-dark/deeporange/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/deeporange/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-dark/deeppurple/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/deeppurple/theme.scss +9 -9
- package/src/assets/layout/styles/theme/theme-dark/green/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/green/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-dark/indigo/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/indigo/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-dark/lightblue/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/lightblue/theme.scss +9 -9
- package/src/assets/layout/styles/theme/theme-dark/lightgreen/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/lightgreen/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-dark/lime/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/lime/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-dark/orange/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/orange/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-dark/pink/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/pink/theme.scss +9 -9
- package/src/assets/layout/styles/theme/theme-dark/purple/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/purple/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-dark/teal/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/teal/theme.scss +9 -9
- package/src/assets/layout/styles/theme/theme-dark/yellow/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-dark/yellow/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-light/_variables.scss +868 -868
- package/src/assets/layout/styles/theme/theme-light/amber/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/amber/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/blue/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/blue/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-light/bluegrey/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/bluegrey/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/brown/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/brown/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/cyan/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/cyan/theme.scss +12 -12
- package/src/assets/layout/styles/theme/theme-light/deeporange/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/deeporange/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/deeppurple/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/deeppurple/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/green/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/green/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/indigo/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/indigo/theme.scss +10 -10
- package/src/assets/layout/styles/theme/theme-light/lightblue/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/lightblue/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/lightgreen/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/lightgreen/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/lime/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/lime/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/orange/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/orange/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/pink/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/pink/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/purple/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/purple/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/teal/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/teal/theme.scss +11 -11
- package/src/assets/layout/styles/theme/theme-light/yellow/theme.css +7731 -7731
- package/src/assets/layout/styles/theme/theme-light/yellow/theme.scss +11 -11
- package/src/assets/theme/uniondinamic/layout-light.css +4923 -4923
- package/src/assets/theme/uniondinamic/theme-light.css +8137 -8137
- package/src/environments/environment.prod.ts +3 -0
- package/src/environments/environment.ts +25 -0
- package/src/favicon.ico +0 -0
- package/src/index.html +14 -0
- package/src/main.ts +11 -0
- package/src/polyfills.ts +53 -0
- package/src/styles/primeflex/primeflex.scss +47 -47
- package/src/styles/primeng/layout/layout-dark.scss +1 -1
- package/src/styles/primeng/layout/layout-light.scss +1 -1
- package/src/styles/primeng/sass/_fonts.scss +45 -45
- package/src/styles/primeng/sass/layout/_animation.scss +70 -70
- package/src/styles/primeng/sass/layout/_breadcrumb.scss +23 -23
- package/src/styles/primeng/sass/layout/_config.scss +73 -73
- package/src/styles/primeng/sass/layout/_dashboard.scss +51 -51
- package/src/styles/primeng/sass/layout/_footer.scss +3 -3
- package/src/styles/primeng/sass/layout/_help.scss +25 -25
- package/src/styles/primeng/sass/layout/_invoice.scss +19 -19
- package/src/styles/primeng/sass/layout/_landing.scss +163 -163
- package/src/styles/primeng/sass/layout/_loader.scss +72 -72
- package/src/styles/primeng/sass/layout/_main.scss +220 -220
- package/src/styles/primeng/sass/layout/_megamenu.scss +6 -6
- package/src/styles/primeng/sass/layout/_mixins.scss +55 -55
- package/src/styles/primeng/sass/layout/_pages.scss +206 -206
- package/src/styles/primeng/sass/layout/_rightmenu.scss +43 -43
- package/src/styles/primeng/sass/layout/_rtl.scss +50 -50
- package/src/styles/primeng/sass/layout/_typography.scss +21 -21
- package/src/styles/primeng/sass/layout/_utils.scss +352 -352
- package/src/styles/primeng/sass/layout/_widgets.scss +466 -466
- package/src/styles/primeng/sass/layout/_wizard.scss +414 -414
- package/src/styles/primeng/sass/layout/core/_layout.scss +24 -24
- package/src/styles/primeng/sass/layout/core/_layout_dark.scss +2 -2
- package/src/styles/primeng/sass/layout/core/_layout_light.scss +2 -2
- package/src/styles/primeng/sass/layout/menu/_inline_menu.scss +44 -44
- package/src/styles/primeng/sass/layout/menu/_menu.scss +20 -20
- package/src/styles/primeng/sass/layout/menu/_menu_common.scss +116 -116
- package/src/styles/primeng/sass/layout/menu/_menu_exports.scss +4 -4
- package/src/styles/primeng/sass/layout/menu/_menu_horizontal.scss +75 -75
- package/src/styles/primeng/sass/layout/menu/_menu_overlay.scss +30 -30
- package/src/styles/primeng/sass/layout/menu/_menu_responsive.scss +35 -35
- package/src/styles/primeng/sass/layout/menu/_menu_slim.scss +76 -76
- package/src/styles/primeng/sass/layout/menu/_menu_static.scss +26 -26
- package/src/styles/primeng/sass/layout/menu/_menu_theme.scss +105 -105
- package/src/styles/primeng/sass/layout/menu/_rtl_menu.scss +155 -155
- package/src/styles/primeng/sass/layout/menu/themes/_menu_bluegrey.scss +16 -16
- package/src/styles/primeng/sass/layout/menu/themes/_menu_brown.scss +15 -15
- package/src/styles/primeng/sass/layout/menu/themes/_menu_cyan.scss +15 -15
- package/src/styles/primeng/sass/layout/menu/themes/_menu_dark.scss +15 -15
- package/src/styles/primeng/sass/layout/menu/themes/_menu_deeporange.scss +15 -15
- package/src/styles/primeng/sass/layout/menu/themes/_menu_deeppurple.scss +15 -15
- package/src/styles/primeng/sass/layout/menu/themes/_menu_green.scss +15 -15
- package/src/styles/primeng/sass/layout/menu/themes/_menu_indigo.scss +15 -15
- package/src/styles/primeng/sass/layout/menu/themes/_menu_light.scss +15 -15
- package/src/styles/primeng/sass/layout/menu/themes/_menu_pink.scss +16 -16
- package/src/styles/primeng/sass/layout/menu/themes/_menu_purple.scss +16 -16
- package/src/styles/primeng/sass/layout/menu/themes/_menu_teal.scss +16 -16
- package/src/styles/primeng/sass/layout/topbar/_rtl_topbar.scss +92 -92
- package/src/styles/primeng/sass/layout/topbar/_topbar.scss +24 -24
- package/src/styles/primeng/sass/layout/topbar/_topbar_common.scss +161 -161
- package/src/styles/primeng/sass/layout/topbar/_topbar_exports.scss +4 -4
- package/src/styles/primeng/sass/layout/topbar/_topbar_responsive.scss +90 -90
- package/src/styles/primeng/sass/layout/topbar/_topbar_theme.scss +115 -115
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_amber.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_blue.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_bluegrey.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_brown.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_custom.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_cyan.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_dark.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_deeporange.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_deeppurple.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_green.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_grey.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_indigo.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_lightblue.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_lightgreen.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_lime.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_orange.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_pink.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_purple.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_teal.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_white.scss +13 -13
- package/src/styles/primeng/sass/layout/topbar/themes/_topbar_yellow.scss +13 -13
- package/src/styles/primeng/sass/overrides/_layout_styles.scss +30 -30
- package/src/styles/primeng/sass/overrides/_layout_variables.scss +3 -3
- package/src/styles/primeng/sass/overrides/_theme_styles.scss +4289 -4278
- package/src/styles/primeng/sass/overrides/_theme_styles_dark.scss +5409 -5409
- package/src/styles/primeng/sass/overrides/_theme_variables.scss +135 -135
- package/src/styles/primeng/sass/theme/_compact.scss +88 -88
- package/src/styles/primeng/sass/theme/_theme_dark.scss +6 -6
- package/src/styles/primeng/sass/theme/_theme_light.scss +5 -5
- package/src/styles/primeng/sass/theme/designer/_colors.scss +18 -18
- package/src/styles/primeng/sass/theme/designer/_common.scss +75 -75
- package/src/styles/primeng/sass/theme/designer/_components.scss +102 -102
- package/src/styles/primeng/sass/theme/designer/_mixins.scss +203 -203
- package/src/styles/primeng/sass/theme/designer/components/button/_button.scss +621 -621
- package/src/styles/primeng/sass/theme/designer/components/button/_speeddial.scss +80 -80
- package/src/styles/primeng/sass/theme/designer/components/button/_splitbutton.scss +381 -381
- package/src/styles/primeng/sass/theme/designer/components/data/_carousel.scss +37 -37
- package/src/styles/primeng/sass/theme/designer/components/data/_datatable.scss +357 -357
- package/src/styles/primeng/sass/theme/designer/components/data/_dataview.scss +55 -55
- package/src/styles/primeng/sass/theme/designer/components/data/_filter.scss +137 -137
- package/src/styles/primeng/sass/theme/designer/components/data/_fullcalendar.scss +329 -329
- package/src/styles/primeng/sass/theme/designer/components/data/_orderlist.scss +102 -102
- package/src/styles/primeng/sass/theme/designer/components/data/_organizationchart.scss +58 -58
- package/src/styles/primeng/sass/theme/designer/components/data/_paginator.scss +126 -126
- package/src/styles/primeng/sass/theme/designer/components/data/_picklist.scss +102 -102
- package/src/styles/primeng/sass/theme/designer/components/data/_timeline.scss +38 -38
- package/src/styles/primeng/sass/theme/designer/components/data/_tree.scss +154 -154
- package/src/styles/primeng/sass/theme/designer/components/data/_treetable.scss +246 -246
- package/src/styles/primeng/sass/theme/designer/components/data/_virtualscroller.scss +28 -28
- package/src/styles/primeng/sass/theme/designer/components/file/_fileupload.scss +58 -58
- package/src/styles/primeng/sass/theme/designer/components/input/_autocomplete.scss +117 -117
- package/src/styles/primeng/sass/theme/designer/components/input/_calendar.scss +271 -271
- package/src/styles/primeng/sass/theme/designer/components/input/_cascadeselect.scss +125 -125
- package/src/styles/primeng/sass/theme/designer/components/input/_checkbox.scss +92 -92
- package/src/styles/primeng/sass/theme/designer/components/input/_chips.scss +54 -54
- package/src/styles/primeng/sass/theme/designer/components/input/_colorpicker.scss +19 -19
- package/src/styles/primeng/sass/theme/designer/components/input/_dropdown.scss +173 -173
- package/src/styles/primeng/sass/theme/designer/components/input/_editor.scss +122 -122
- package/src/styles/primeng/sass/theme/designer/components/input/_inputgroup.scss +75 -75
- package/src/styles/primeng/sass/theme/designer/components/input/_inputmask.scss +15 -15
- package/src/styles/primeng/sass/theme/designer/components/input/_inputnumber.scss +27 -27
- package/src/styles/primeng/sass/theme/designer/components/input/_inputswitch.scss +59 -59
- package/src/styles/primeng/sass/theme/designer/components/input/_inputtext.scss +134 -134
- package/src/styles/primeng/sass/theme/designer/components/input/_listbox.scss +81 -81
- package/src/styles/primeng/sass/theme/designer/components/input/_multiselect.scss +173 -173
- package/src/styles/primeng/sass/theme/designer/components/input/_password.scss +51 -51
- package/src/styles/primeng/sass/theme/designer/components/input/_radiobutton.scss +77 -77
- package/src/styles/primeng/sass/theme/designer/components/input/_rating.scss +48 -48
- package/src/styles/primeng/sass/theme/designer/components/input/_selectbutton.scss +49 -49
- package/src/styles/primeng/sass/theme/designer/components/input/_slider.scss +71 -71
- package/src/styles/primeng/sass/theme/designer/components/input/_togglebutton.scss +47 -47
- package/src/styles/primeng/sass/theme/designer/components/input/_treeselect.scss +138 -138
- package/src/styles/primeng/sass/theme/designer/components/menu/_breadcrumb.scss +42 -42
- package/src/styles/primeng/sass/theme/designer/components/menu/_contextmenu.scss +56 -56
- package/src/styles/primeng/sass/theme/designer/components/menu/_dock.scss +86 -86
- package/src/styles/primeng/sass/theme/designer/components/menu/_megamenu.scss +106 -106
- package/src/styles/primeng/sass/theme/designer/components/menu/_menu.scss +45 -45
- package/src/styles/primeng/sass/theme/designer/components/menu/_menubar.scss +208 -208
- package/src/styles/primeng/sass/theme/designer/components/menu/_panelmenu.scss +142 -142
- package/src/styles/primeng/sass/theme/designer/components/menu/_slidemenu.scss +59 -59
- package/src/styles/primeng/sass/theme/designer/components/menu/_steps.scss +56 -56
- package/src/styles/primeng/sass/theme/designer/components/menu/_tabmenu.scss +77 -77
- package/src/styles/primeng/sass/theme/designer/components/menu/_tieredmenu.scss +91 -91
- package/src/styles/primeng/sass/theme/designer/components/messages/_inlinemessage.scss +64 -64
- package/src/styles/primeng/sass/theme/designer/components/messages/_message.scss +102 -102
- package/src/styles/primeng/sass/theme/designer/components/messages/_toast.scss +102 -102
- package/src/styles/primeng/sass/theme/designer/components/misc/_avatar.scss +29 -29
- package/src/styles/primeng/sass/theme/designer/components/misc/_badge.scss +47 -47
- package/src/styles/primeng/sass/theme/designer/components/misc/_chip.scss +37 -37
- package/src/styles/primeng/sass/theme/designer/components/misc/_inplace.scss +17 -17
- package/src/styles/primeng/sass/theme/designer/components/misc/_progressbar.scss +17 -17
- package/src/styles/primeng/sass/theme/designer/components/misc/_scrolltop.scss +19 -19
- package/src/styles/primeng/sass/theme/designer/components/misc/_skeleton.scss +7 -7
- package/src/styles/primeng/sass/theme/designer/components/misc/_tag.scss +34 -34
- package/src/styles/primeng/sass/theme/designer/components/misc/_terminal.scss +11 -11
- package/src/styles/primeng/sass/theme/designer/components/multimedia/_galleria.scss +139 -139
- package/src/styles/primeng/sass/theme/designer/components/multimedia/_image.scss +44 -44
- package/src/styles/primeng/sass/theme/designer/components/overlay/_confirmpopup.scss +76 -76
- package/src/styles/primeng/sass/theme/designer/components/overlay/_dialog.scss +91 -91
- package/src/styles/primeng/sass/theme/designer/components/overlay/_overlaypanel.scss +79 -79
- package/src/styles/primeng/sass/theme/designer/components/overlay/_sidebar.scss +27 -27
- package/src/styles/primeng/sass/theme/designer/components/overlay/_tooltip.scss +37 -37
- package/src/styles/primeng/sass/theme/designer/components/panel/_accordion.scss +180 -180
- package/src/styles/primeng/sass/theme/designer/components/panel/_card.scss +48 -48
- package/src/styles/primeng/sass/theme/designer/components/panel/_divider.scss +31 -31
- package/src/styles/primeng/sass/theme/designer/components/panel/_fieldset.scss +50 -50
- package/src/styles/primeng/sass/theme/designer/components/panel/_panel.scss +59 -59
- package/src/styles/primeng/sass/theme/designer/components/panel/_scrollpanel.scss +5 -5
- package/src/styles/primeng/sass/theme/designer/components/panel/_splitter.scss +18 -18
- package/src/styles/primeng/sass/theme/designer/components/panel/_tabview.scss +92 -92
- package/src/styles/primeng/sass/theme/designer/components/panel/_toolbar.scss +11 -11
- package/src/styles/primeng/sass/theme/extensions/_accordion.scss +73 -73
- package/src/styles/primeng/sass/theme/extensions/_autocomplete.scss +67 -67
- package/src/styles/primeng/sass/theme/extensions/_breadcrumb.scss +9 -9
- package/src/styles/primeng/sass/theme/extensions/_button.scss +243 -243
- package/src/styles/primeng/sass/theme/extensions/_calendar.scss +154 -154
- package/src/styles/primeng/sass/theme/extensions/_carousel.scss +13 -13
- package/src/styles/primeng/sass/theme/extensions/_cascadeselect.scss +73 -73
- package/src/styles/primeng/sass/theme/extensions/_checkbox.scss +85 -85
- package/src/styles/primeng/sass/theme/extensions/_chips.scss +55 -55
- package/src/styles/primeng/sass/theme/extensions/_datatable.scss +40 -40
- package/src/styles/primeng/sass/theme/extensions/_dropdown.scss +50 -50
- package/src/styles/primeng/sass/theme/extensions/_fieldset.scss +15 -15
- package/src/styles/primeng/sass/theme/extensions/_float_label.scss +51 -51
- package/src/styles/primeng/sass/theme/extensions/_fullcalendar.scss +84 -84
- package/src/styles/primeng/sass/theme/extensions/_galleria.scss +26 -26
- package/src/styles/primeng/sass/theme/extensions/_input.scss +17 -17
- package/src/styles/primeng/sass/theme/extensions/_inputgroup.scss +128 -128
- package/src/styles/primeng/sass/theme/extensions/_inputmask.scss +14 -14
- package/src/styles/primeng/sass/theme/extensions/_inputnumber.scss +14 -14
- package/src/styles/primeng/sass/theme/extensions/_inputswitch.scss +32 -32
- package/src/styles/primeng/sass/theme/extensions/_listbox.scss +17 -17
- package/src/styles/primeng/sass/theme/extensions/_megamenu.scss +9 -9
- package/src/styles/primeng/sass/theme/extensions/_menu.scss +9 -9
- package/src/styles/primeng/sass/theme/extensions/_menubar.scss +9 -9
- package/src/styles/primeng/sass/theme/extensions/_mixins.scss +110 -110
- package/src/styles/primeng/sass/theme/extensions/_multiselect.scss +104 -104
- package/src/styles/primeng/sass/theme/extensions/_orderlist.scss +13 -13
- package/src/styles/primeng/sass/theme/extensions/_overlaypanel.scss +24 -24
- package/src/styles/primeng/sass/theme/extensions/_paginator.scss +22 -22
- package/src/styles/primeng/sass/theme/extensions/_panel.scss +38 -38
- package/src/styles/primeng/sass/theme/extensions/_panelmenu.scss +49 -49
- package/src/styles/primeng/sass/theme/extensions/_picklist.scss +13 -13
- package/src/styles/primeng/sass/theme/extensions/_progressbar.scss +6 -6
- package/src/styles/primeng/sass/theme/extensions/_radiobutton.scss +49 -49
- package/src/styles/primeng/sass/theme/extensions/_rating.scss +35 -35
- package/src/styles/primeng/sass/theme/extensions/_selectbutton.scss +12 -12
- package/src/styles/primeng/sass/theme/extensions/_slidemenu.scss +7 -7
- package/src/styles/primeng/sass/theme/extensions/_slider.scss +15 -15
- package/src/styles/primeng/sass/theme/extensions/_steps.scss +67 -67
- package/src/styles/primeng/sass/theme/extensions/_tabmenu.scss +38 -38
- package/src/styles/primeng/sass/theme/extensions/_tabview.scss +31 -31
- package/src/styles/primeng/sass/theme/extensions/_tieredmenu.scss +7 -7
- package/src/styles/primeng/sass/theme/extensions/_timeline.scss +8 -8
- package/src/styles/primeng/sass/theme/extensions/_togglebutton.scss +10 -10
- package/src/styles/primeng/sass/theme/extensions/_toolbar.scss +2 -2
- package/src/styles/primeng/sass/theme/extensions/_tooltip.scss +9 -9
- package/src/styles/primeng/sass/theme/extensions/_tree.scss +15 -15
- package/src/styles/primeng/sass/theme/extensions/_treeselect.scss +84 -84
- package/src/styles/primeng/sass/theme/extensions/_treetable.scss +18 -18
- package/src/styles/primeng/sass/theme/extensions/_vendor_extensions.scss +50 -50
- package/src/styles/primeng/sass/variables/layout/_layout_common.scss +9 -9
- package/src/styles/primeng/sass/variables/layout/_layout_dark.scss +38 -38
- package/src/styles/primeng/sass/variables/layout/_layout_light.scss +38 -38
- package/src/styles/primeng/sass/variables/theme/_theme_dark.scss +871 -871
- package/src/styles/primeng/sass/variables/theme/_theme_light.scss +878 -878
- package/src/styles/primeng/theme/theme-dark.scss +8 -8
- package/src/styles/primeng/theme/theme-light.scss +11 -11
- package/src/styles/sass/_mixins.scss +2 -2
- package/src/styles/sass/_variables.scss +20 -20
- package/src/styles/sass/mixins/_breakpoints.scss +16 -16
- package/src/styles/sass/mixins/_colors.scss +34 -34
- package/src/styles/sass/pages/_general.scss +57 -57
- package/src/styles/sass/pages/_listado.scss +98 -98
- package/src/styles-dark.scss +32 -32
- package/src/styles.scss +32 -32
- package/src/test.ts +14 -0
- package/tsconfig.app.json +15 -0
- package/tsconfig.json +35 -0
- package/tsconfig.spec.json +18 -0
- package/esm2022/general-library-union.mjs +0 -5
- package/esm2022/public-api.mjs +0 -177
- package/esm2022/src/app/core/componentes/breadcrumb/breadcrumb.component.mjs +0 -40
- package/esm2022/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.mjs +0 -28
- package/esm2022/src/app/core/componentes/filtro-general/filtro-general.component.mjs +0 -153
- package/esm2022/src/app/core/componentes/footer/footer.component.mjs +0 -16
- package/esm2022/src/app/core/componentes/formulariodinamico/formulariodinamico.component.mjs +0 -272
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/Cambio.mjs +0 -11
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.mjs +0 -124
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.mjs +0 -73
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.mjs +0 -59
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.mjs +0 -21
- package/esm2022/src/app/core/componentes/inicio-component/inicio-component.component.mjs +0 -67
- package/esm2022/src/app/core/componentes/menu/menu.component.mjs +0 -37
- package/esm2022/src/app/core/componentes/tabla-general/tabla-general.component.mjs +0 -93
- package/esm2022/src/app/core/core.module.mjs +0 -23
- package/esm2022/src/app/core/errores/authentication.error.mjs +0 -7
- package/esm2022/src/app/core/modelos/error-response.model.mjs +0 -2
- package/esm2022/src/app/core/modelos/table-column.model.mjs +0 -2
- package/esm2022/src/app/core/modelos/user.model.mjs +0 -7
- package/esm2022/src/app/core/plantilla-general/plantilla-general.template.mjs +0 -230
- package/esm2022/src/app/core/servicios/auth.service.mjs +0 -185
- package/esm2022/src/app/core/servicios/cargar-control-funcionalidad.service.mjs +0 -57
- package/esm2022/src/app/core/servicios/data-exporter-table.utils.mjs +0 -44
- package/esm2022/src/app/core/servicios/error-interceptor.service.mjs +0 -148
- package/esm2022/src/app/core/servicios/guardias/auth.guard.mjs +0 -66
- package/esm2022/src/app/core/servicios/guardias/publico.guard.mjs +0 -35
- package/esm2022/src/app/core/servicios/interceptores/token-interceptor.service.mjs +0 -120
- package/esm2022/src/app/core/servicios/loading.service.mjs +0 -43
- package/esm2022/src/app/core/servicios/menu.service.mjs +0 -146
- package/esm2022/src/app/core/servicios/storage.service.mjs +0 -68
- package/esm2022/src/app/core/servicios/template.service.mjs +0 -99
- package/esm2022/src/app/core/servicios/toast.service.mjs +0 -91
- package/esm2022/src/app/core/servicios/utils.service.mjs +0 -324
- package/esm2022/src/app/core/sharedlib.module.mjs +0 -16
- package/esm2022/src/app/core/utilidades/color.util.mjs +0 -177
- package/esm2022/src/app/layout/api/menuchangeevent.mjs +0 -2
- package/esm2022/src/app/layout/app.breadcrumb.component.mjs +0 -71
- package/esm2022/src/app/layout/app.footer.component.mjs +0 -18
- package/esm2022/src/app/layout/app.layout.component.mjs +0 -188
- package/esm2022/src/app/layout/app.layout.module.mjs +0 -15
- package/esm2022/src/app/layout/app.menu.component.mjs +0 -51
- package/esm2022/src/app/layout/app.menu.service.mjs +0 -24
- package/esm2022/src/app/layout/app.menuitem.component.mjs +0 -296
- package/esm2022/src/app/layout/app.menuprofile.component.mjs +0 -78
- package/esm2022/src/app/layout/app.rightmenu.component.mjs +0 -24
- package/esm2022/src/app/layout/app.sidebar.component.mjs +0 -92
- package/esm2022/src/app/layout/app.topbar.component.mjs +0 -345
- package/esm2022/src/app/layout/service/app.layout.service.mjs +0 -134
- package/esm2022/src/app/publico/pages/login/login.page.mjs +0 -129
- package/esm2022/src/app/publico/pages/not-found/not-found.page.mjs +0 -51
- package/esm2022/src/app/publico/pages/seleccion-rol/seleccion-rol.component.mjs +0 -167
- package/esm2022/src/app/publico/pages/timeout/timeout.page.mjs +0 -20
- package/esm2022/src/app/seguridad/constantes/ConstantesGenerales.mjs +0 -30
- package/esm2022/src/app/seguridad/constantes/ReporteEntradaConstantes.mjs +0 -19
- package/esm2022/src/app/seguridad/modelos/AplicacionModel.mjs +0 -8
- package/esm2022/src/app/seguridad/modelos/ArchivoPortalModel.mjs +0 -14
- package/esm2022/src/app/seguridad/modelos/AtributoPuntoModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/AtributoSSOportalModel.mjs +0 -17
- package/esm2022/src/app/seguridad/modelos/AuditoriaArchivoModel.mjs +0 -11
- package/esm2022/src/app/seguridad/modelos/CargueLineaModel.mjs +0 -13
- package/esm2022/src/app/seguridad/modelos/ColoresRGB.mjs +0 -18
- package/esm2022/src/app/seguridad/modelos/ColumnaFuenteModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/ColumnaWraperModel.mjs +0 -6
- package/esm2022/src/app/seguridad/modelos/ComplementoModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/ComponentePaginaModel.mjs +0 -21
- package/esm2022/src/app/seguridad/modelos/ConexionModel.mjs +0 -14
- package/esm2022/src/app/seguridad/modelos/ContenidoHtmlPortalModel.mjs +0 -21
- package/esm2022/src/app/seguridad/modelos/ControlFuncionModel.mjs +0 -8
- package/esm2022/src/app/seguridad/modelos/CorreoModel.mjs +0 -35
- package/esm2022/src/app/seguridad/modelos/CorreoWSModel.mjs +0 -37
- package/esm2022/src/app/seguridad/modelos/CruceRecursoPuntoModel.mjs +0 -14
- package/esm2022/src/app/seguridad/modelos/DatoInicioModel.mjs +0 -6
- package/esm2022/src/app/seguridad/modelos/EjecucionReporteDataModel.mjs +0 -14
- package/esm2022/src/app/seguridad/modelos/EmpresaModel.mjs +0 -25
- package/esm2022/src/app/seguridad/modelos/EmpresaSeguridadModel.mjs +0 -19
- package/esm2022/src/app/seguridad/modelos/EntradaComplementoModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/EtiquetaModel.mjs +0 -5
- package/esm2022/src/app/seguridad/modelos/Etiquetas.mjs +0 -12
- package/esm2022/src/app/seguridad/modelos/ForeingWraperModel.mjs +0 -6
- package/esm2022/src/app/seguridad/modelos/FuenteCampoAtributoModel.mjs +0 -16
- package/esm2022/src/app/seguridad/modelos/FuenteCampoModel.mjs +0 -17
- package/esm2022/src/app/seguridad/modelos/FuenteDato.mjs +0 -19
- package/esm2022/src/app/seguridad/modelos/FuenteEntradaModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/FuenteGeneralModel.mjs +0 -37
- package/esm2022/src/app/seguridad/modelos/FuenteLineaServicioModel.mjs +0 -16
- package/esm2022/src/app/seguridad/modelos/FuenteProcesoGeneralModel.mjs +0 -11
- package/esm2022/src/app/seguridad/modelos/FuenteServicioModel.mjs +0 -51
- package/esm2022/src/app/seguridad/modelos/FuncionalidadModel.mjs +0 -10
- package/esm2022/src/app/seguridad/modelos/GeneralModel.mjs +0 -15
- package/esm2022/src/app/seguridad/modelos/GrupoAccesoModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/GrupoControlFuncionModel.mjs +0 -10
- package/esm2022/src/app/seguridad/modelos/GrupoFuenteModel.mjs +0 -13
- package/esm2022/src/app/seguridad/modelos/GrupoPermisoModel.mjs +0 -14
- package/esm2022/src/app/seguridad/modelos/JoinFromModel.mjs +0 -5
- package/esm2022/src/app/seguridad/modelos/ListaServicioModel.mjs +0 -17
- package/esm2022/src/app/seguridad/modelos/LlaveForaneaModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/LoginModel.mjs +0 -15
- package/esm2022/src/app/seguridad/modelos/MensajeSistemaModel.mjs +0 -8
- package/esm2022/src/app/seguridad/modelos/MenuPortalModel.mjs +0 -5
- package/esm2022/src/app/seguridad/modelos/ModulosModel.mjs +0 -18
- package/esm2022/src/app/seguridad/modelos/ObjetoReporteModel.mjs +0 -6
- package/esm2022/src/app/seguridad/modelos/PaginaPortalModel.mjs +0 -20
- package/esm2022/src/app/seguridad/modelos/ParametroComponenteModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/ParametrosGeneralModel.mjs +0 -15
- package/esm2022/src/app/seguridad/modelos/PermisoFuncionModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/PermisocontenidoModel.mjs +0 -20
- package/esm2022/src/app/seguridad/modelos/PeticionModel.mjs +0 -16
- package/esm2022/src/app/seguridad/modelos/PreguntaSeguridadModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/PropiedadModel.mjs +0 -10
- package/esm2022/src/app/seguridad/modelos/PublicacionWebModel.mjs +0 -27
- package/esm2022/src/app/seguridad/modelos/PuntoProcesoModel.mjs +0 -7
- package/esm2022/src/app/seguridad/modelos/RecursoPunto.mjs +0 -13
- package/esm2022/src/app/seguridad/modelos/RecursoPuntoModel.mjs +0 -13
- package/esm2022/src/app/seguridad/modelos/ReporteBanda.mjs +0 -8
- package/esm2022/src/app/seguridad/modelos/ReporteColumna.mjs +0 -33
- package/esm2022/src/app/seguridad/modelos/ReporteColumnario.mjs +0 -69
- package/esm2022/src/app/seguridad/modelos/ReporteColumnarioMarcador.mjs +0 -24
- package/esm2022/src/app/seguridad/modelos/ReporteEntradaModel.mjs +0 -20
- package/esm2022/src/app/seguridad/modelos/ReporteFuenteModel.mjs +0 -124
- package/esm2022/src/app/seguridad/modelos/ReporteMarcador.mjs +0 -40
- package/esm2022/src/app/seguridad/modelos/ReporteSoporte.mjs +0 -10
- package/esm2022/src/app/seguridad/modelos/ReporteTabla.mjs +0 -13
- package/esm2022/src/app/seguridad/modelos/RespuestaModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/RolModel.mjs +0 -39
- package/esm2022/src/app/seguridad/modelos/ServidorCorreoModel.mjs +0 -28
- package/esm2022/src/app/seguridad/modelos/SistemaMensajeModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/SitioPortalModel.mjs +0 -25
- package/esm2022/src/app/seguridad/modelos/TablaFromModel.mjs +0 -5
- package/esm2022/src/app/seguridad/modelos/TareasModel.mjs +0 -54
- package/esm2022/src/app/seguridad/modelos/TextoModel.mjs +0 -9
- package/esm2022/src/app/seguridad/modelos/TipoEtiqueta.mjs +0 -8
- package/esm2022/src/app/seguridad/modelos/UnionModel.mjs +0 -12
- package/esm2022/src/app/seguridad/modelos/UsuarioModel.mjs +0 -53
- package/esm2022/src/app/seguridad/modelos/UsuariogrupoModel.mjs +0 -24
- package/esm2022/src/app/seguridad/modelos/aplicacion-propiedad-model.mjs +0 -15
- package/esm2022/src/app/seguridad/modelos/contenidoCorreoModel.mjs +0 -10
- package/esm2022/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.mjs +0 -151
- package/esm2022/src/app/shared/servicios/cargar-archivos.service.mjs +0 -54
- package/esm2022/src/app/shared/servicios/cargar-mapas.service.mjs +0 -46
- package/esm2022/src/app/shared/servicios/encriptado-basico.service.mjs +0 -53
- package/esm2022/src/app/shared/servicios/general.service.mjs +0 -104
- package/esm2022/src/app/shared/servicios/parametros-navegacion.service.mjs +0 -21
- package/esm2022/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.mjs +0 -370
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.mjs +0 -187
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.mjs +0 -85
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.mjs +0 -347
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.mjs +0 -206
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.mjs +0 -328
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.mjs +0 -1569
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.mjs +0 -105
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.mjs +0 -95
- package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.mjs +0 -588
- package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.mjs +0 -177
- package/esm2022/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.mjs +0 -749
- package/esm2022/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.mjs +0 -331
- package/esm2022/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.mjs +0 -96
- package/esm2022/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.mjs +0 -675
- package/esm2022/src/app/webcommon/pipes/dashboard.pipe.mjs +0 -86
- package/esm2022/src/app/webcommon/pipes/fuente.pipe.mjs +0 -201
- package/esm2022/src/app/webcommon/pipes/general.pipe.mjs +0 -916
- package/esm2022/src/app/webcommon/pipes/reporte-columnario.pipe.mjs +0 -115
- package/esm2022/src/app/webcommon/pipes/reporte-fuente.pipe.mjs +0 -301
- package/esm2022/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.mjs +0 -267
- package/esm2022/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.mjs +0 -128
- package/esm2022/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.mjs +0 -293
- package/esm2022/src/app/webcommon/popups/popup-recurso/popup-recurso.component.mjs +0 -269
- package/esm2022/src/app/webcommon/popups/popup-reporte/popup-reporte.component.mjs +0 -509
- package/esm2022/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.mjs +0 -64
- package/esm2022/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.mjs +0 -159
- package/esm2022/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.mjs +0 -89
- package/esm2022/src/app/webcommon/services/carguelinea.service.mjs +0 -69
- package/esm2022/src/app/webcommon/services/dashboard.service.mjs +0 -253
- package/esm2022/src/app/webcommon/services/ejecucionreporte.service.mjs +0 -114
- package/esm2022/src/app/webcommon/services/fechaUtils.service.mjs +0 -88
- package/esm2022/src/app/webcommon/services/fuentegeneral.service.mjs +0 -68
- package/esm2022/src/app/webcommon/services/homologacion.service.mjs +0 -50
- package/esm2022/src/app/webcommon/services/plantillas.service.mjs +0 -129
- package/esm2022/src/app/webcommon/services/reportes.service.mjs +0 -95
- package/esm2022/src/app/webcommon/webcommon.module.mjs +0 -15
- package/esm2022/src/environments/environment.mjs +0 -24
- package/fesm2022/general-library-union.mjs +0 -15584
- package/fesm2022/general-library-union.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.d.ts +0 -18
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.d.ts +0 -14
- package/src/app/core/componentes/filtro-general/filtro-general.component.d.ts +0 -26
- package/src/app/core/componentes/footer/footer.component.d.ts +0 -9
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.d.ts +0 -46
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.d.ts +0 -44
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.d.ts +0 -45
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.d.ts +0 -33
- package/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.d.ts +0 -9
- package/src/app/core/componentes/inicio-component/inicio-component.component.d.ts +0 -24
- package/src/app/core/componentes/menu/menu.component.d.ts +0 -16
- package/src/app/core/componentes/tabla-general/tabla-general.component.d.ts +0 -32
- package/src/app/core/core.module.d.ts +0 -8
- package/src/app/core/errores/authentication.error.d.ts +0 -3
- package/src/app/core/modelos/error-response.model.d.ts +0 -9
- package/src/app/core/modelos/table-column.model.d.ts +0 -12
- package/src/app/core/modelos/user.model.d.ts +0 -6
- package/src/app/core/plantilla-general/plantilla-general.template.d.ts +0 -89
- package/src/app/core/servicios/auth.service.d.ts +0 -52
- package/src/app/core/servicios/cargar-control-funcionalidad.service.d.ts +0 -19
- package/src/app/core/servicios/data-exporter-table.utils.d.ts +0 -8
- package/src/app/core/servicios/error-interceptor.service.d.ts +0 -41
- package/src/app/core/servicios/guardias/auth.guard.d.ts +0 -17
- package/src/app/core/servicios/guardias/publico.guard.d.ts +0 -13
- package/src/app/core/servicios/interceptores/token-interceptor.service.d.ts +0 -21
- package/src/app/core/servicios/loading.service.d.ts +0 -22
- package/src/app/core/servicios/menu.service.d.ts +0 -35
- package/src/app/core/servicios/storage.service.d.ts +0 -37
- package/src/app/core/servicios/template.service.d.ts +0 -20
- package/src/app/core/servicios/toast.service.d.ts +0 -46
- package/src/app/core/servicios/utils.service.d.ts +0 -42
- package/src/app/core/sharedlib.module.d.ts +0 -6
- package/src/app/core/utilidades/color.util.d.ts +0 -70
- package/src/app/layout/app.breadcrumb.component.d.ts +0 -28
- package/src/app/layout/app.footer.component.d.ts +0 -8
- package/src/app/layout/app.layout.component.d.ts +0 -39
- package/src/app/layout/app.layout.module.d.ts +0 -6
- package/src/app/layout/app.menu.component.d.ts +0 -19
- package/src/app/layout/app.menu.service.d.ts +0 -12
- package/src/app/layout/app.menuitem.component.d.ts +0 -41
- package/src/app/layout/app.menuprofile.component.d.ts +0 -18
- package/src/app/layout/app.rightmenu.component.d.ts +0 -10
- package/src/app/layout/app.sidebar.component.d.ts +0 -34
- package/src/app/layout/app.topbar.component.d.ts +0 -79
- package/src/app/layout/service/app.layout.service.d.ts +0 -57
- package/src/app/publico/pages/login/login.page.d.ts +0 -40
- package/src/app/publico/pages/not-found/not-found.page.d.ts +0 -17
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.d.ts +0 -41
- package/src/app/publico/pages/timeout/timeout.page.d.ts +0 -10
- package/src/app/seguridad/constantes/ConstantesGenerales.d.ts +0 -25
- package/src/app/seguridad/constantes/ReporteEntradaConstantes.d.ts +0 -7
- package/src/app/seguridad/modelos/AplicacionModel.d.ts +0 -7
- package/src/app/seguridad/modelos/ArchivoPortalModel.d.ts +0 -13
- package/src/app/seguridad/modelos/AtributoPuntoModel.d.ts +0 -8
- package/src/app/seguridad/modelos/AtributoSSOportalModel.d.ts +0 -16
- package/src/app/seguridad/modelos/CargueLineaModel.d.ts +0 -12
- package/src/app/seguridad/modelos/ColoresRGB.d.ts +0 -17
- package/src/app/seguridad/modelos/ColumnaFuenteModel.d.ts +0 -8
- package/src/app/seguridad/modelos/ComplementoModel.d.ts +0 -6
- package/src/app/seguridad/modelos/ComponentePaginaModel.d.ts +0 -20
- package/src/app/seguridad/modelos/ConexionModel.d.ts +0 -13
- package/src/app/seguridad/modelos/ControlFuncionModel.d.ts +0 -7
- package/src/app/seguridad/modelos/CorreoModel.d.ts +0 -31
- package/src/app/seguridad/modelos/CorreoWSModel.d.ts +0 -33
- package/src/app/seguridad/modelos/CruceRecursoPuntoModel.d.ts +0 -13
- package/src/app/seguridad/modelos/EmpresaModel.d.ts +0 -23
- package/src/app/seguridad/modelos/EmpresaSeguridadModel.d.ts +0 -18
- package/src/app/seguridad/modelos/EtiquetaModel.d.ts +0 -4
- package/src/app/seguridad/modelos/Etiquetas.d.ts +0 -10
- package/src/app/seguridad/modelos/FuenteCampoAtributoModel.d.ts +0 -15
- package/src/app/seguridad/modelos/FuenteDato.d.ts +0 -18
- package/src/app/seguridad/modelos/FuenteEntradaModel.d.ts +0 -8
- package/src/app/seguridad/modelos/FuenteLineaServicioModel.d.ts +0 -16
- package/src/app/seguridad/modelos/FuenteProcesoGeneralModel.d.ts +0 -10
- package/src/app/seguridad/modelos/FuncionalidadModel.d.ts +0 -8
- package/src/app/seguridad/modelos/GeneralModel.d.ts +0 -8
- package/src/app/seguridad/modelos/GrupoControlFuncionModel.d.ts +0 -9
- package/src/app/seguridad/modelos/GrupoFuenteModel.d.ts +0 -13
- package/src/app/seguridad/modelos/GrupoPermisoModel.d.ts +0 -13
- package/src/app/seguridad/modelos/ListaServicioModel.d.ts +0 -16
- package/src/app/seguridad/modelos/LlaveForaneaModel.d.ts +0 -6
- package/src/app/seguridad/modelos/LoginModel.d.ts +0 -17
- package/src/app/seguridad/modelos/MensajeSistemaModel.d.ts +0 -7
- package/src/app/seguridad/modelos/ModulosModel.d.ts +0 -14
- package/src/app/seguridad/modelos/PaginaPortalModel.d.ts +0 -19
- package/src/app/seguridad/modelos/ParametroComponenteModel.d.ts +0 -8
- package/src/app/seguridad/modelos/ParametrosGeneralModel.d.ts +0 -8
- package/src/app/seguridad/modelos/PermisoFuncionModel.d.ts +0 -8
- package/src/app/seguridad/modelos/PermisocontenidoModel.d.ts +0 -18
- package/src/app/seguridad/modelos/PreguntaSeguridadModel.d.ts +0 -6
- package/src/app/seguridad/modelos/PropiedadModel.d.ts +0 -9
- package/src/app/seguridad/modelos/PublicacionWebModel.d.ts +0 -25
- package/src/app/seguridad/modelos/PuntoProcesoModel.d.ts +0 -6
- package/src/app/seguridad/modelos/RecursoPunto.d.ts +0 -12
- package/src/app/seguridad/modelos/RecursoPuntoModel.d.ts +0 -12
- package/src/app/seguridad/modelos/ReporteBanda.d.ts +0 -7
- package/src/app/seguridad/modelos/ReporteColumna.d.ts +0 -32
- package/src/app/seguridad/modelos/ReporteColumnario.d.ts +0 -68
- package/src/app/seguridad/modelos/ReporteColumnarioMarcador.d.ts +0 -23
- package/src/app/seguridad/modelos/ReporteMarcador.d.ts +0 -39
- package/src/app/seguridad/modelos/ReporteSoporte.d.ts +0 -9
- package/src/app/seguridad/modelos/ReporteTabla.d.ts +0 -12
- package/src/app/seguridad/modelos/RespuestaModel.d.ts +0 -8
- package/src/app/seguridad/modelos/ServidorCorreoModel.d.ts +0 -25
- package/src/app/seguridad/modelos/SistemaMensajeModel.d.ts +0 -8
- package/src/app/seguridad/modelos/SitioPortalModel.d.ts +0 -24
- package/src/app/seguridad/modelos/TablaFromModel.d.ts +0 -4
- package/src/app/seguridad/modelos/TareasModel.d.ts +0 -49
- package/src/app/seguridad/modelos/TextoModel.d.ts +0 -8
- package/src/app/seguridad/modelos/TipoEtiqueta.d.ts +0 -7
- package/src/app/seguridad/modelos/UnionModel.d.ts +0 -11
- package/src/app/seguridad/modelos/UsuariogrupoModel.d.ts +0 -22
- package/src/app/seguridad/modelos/aplicacion-propiedad-model.d.ts +0 -13
- package/src/app/seguridad/modelos/contenidoCorreoModel.d.ts +0 -9
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.d.ts +0 -47
- package/src/app/shared/servicios/cargar-archivos.service.d.ts +0 -15
- package/src/app/shared/servicios/cargar-mapas.service.d.ts +0 -18
- package/src/app/shared/servicios/encriptado-basico.service.d.ts +0 -10
- package/src/app/shared/servicios/general.service.d.ts +0 -24
- package/src/app/shared/servicios/parametros-navegacion.service.d.ts +0 -9
- package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.d.ts +0 -78
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.d.ts +0 -79
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.d.ts +0 -29
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.d.ts +0 -69
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.d.ts +0 -51
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.d.ts +0 -77
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.d.ts +0 -275
- package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.d.ts +0 -42
- package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.d.ts +0 -33
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.d.ts +0 -143
- package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.d.ts +0 -49
- package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.d.ts +0 -128
- package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.d.ts +0 -64
- package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.d.ts +0 -33
- package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.d.ts +0 -149
- package/src/app/webcommon/pipes/dashboard.pipe.d.ts +0 -48
- package/src/app/webcommon/pipes/fuente.pipe.d.ts +0 -136
- package/src/app/webcommon/pipes/general.pipe.d.ts +0 -646
- package/src/app/webcommon/pipes/reporte-columnario.pipe.d.ts +0 -59
- package/src/app/webcommon/pipes/reporte-fuente.pipe.d.ts +0 -193
- package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.d.ts +0 -59
- package/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.d.ts +0 -27
- package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.d.ts +0 -64
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.d.ts +0 -63
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.d.ts +0 -97
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.d.ts +0 -21
- package/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.d.ts +0 -42
- package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.d.ts +0 -30
- package/src/app/webcommon/services/carguelinea.service.d.ts +0 -19
- package/src/app/webcommon/services/dashboard.service.d.ts +0 -27
- package/src/app/webcommon/services/ejecucionreporte.service.d.ts +0 -34
- package/src/app/webcommon/services/fechaUtils.service.d.ts +0 -29
- package/src/app/webcommon/services/fuentegeneral.service.d.ts +0 -24
- package/src/app/webcommon/services/homologacion.service.d.ts +0 -17
- package/src/app/webcommon/services/plantillas.service.d.ts +0 -26
- package/src/app/webcommon/services/reportes.service.d.ts +0 -35
- package/src/app/webcommon/webcommon.module.d.ts +0 -6
- package/src/environments/environment.d.ts +0 -7
|
@@ -1,324 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { DOCUMENT } from '@angular/common';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "ngx-cookie-service";
|
|
5
|
-
export class UtilsService {
|
|
6
|
-
cookieService;
|
|
7
|
-
document;
|
|
8
|
-
RESERVADAS_SQL_NOPUEDECONTENER = [';'];
|
|
9
|
-
reservadas = ['ALTER', 'DELETE', 'DROP', 'MODIFY', 'CREATE', 'DATABASE', 'TABLE', 'UPDATE', 'TRIGGER', 'GRANT', 'REVOKE', 'CALL', 'INSERT', 'TRUNCATE', 'USE', '--'];
|
|
10
|
-
constructor(cookieService, document) {
|
|
11
|
-
this.cookieService = cookieService;
|
|
12
|
-
this.document = document;
|
|
13
|
-
}
|
|
14
|
-
generarLlave() {
|
|
15
|
-
let result = '';
|
|
16
|
-
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
|
|
17
|
-
const charactersLength = 32;
|
|
18
|
-
for (let i = 0; i < charactersLength; i++) {
|
|
19
|
-
result += characters.charAt(Math.floor(Math.random() * charactersLength));
|
|
20
|
-
}
|
|
21
|
-
return result.toLowerCase();
|
|
22
|
-
}
|
|
23
|
-
generarPin(cantidad) {
|
|
24
|
-
let result = '';
|
|
25
|
-
const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
|
|
26
|
-
for (let i = 0; i < cantidad; i++) {
|
|
27
|
-
result += characters.charAt(Math.floor(Math.random() * cantidad));
|
|
28
|
-
}
|
|
29
|
-
return result.toLowerCase();
|
|
30
|
-
}
|
|
31
|
-
rightpad(str, length, char) {
|
|
32
|
-
if (str === undefined) {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
if (typeof str !== 'string' || typeof length !== 'number') {
|
|
36
|
-
throw new TypeError('Los argumentos deben ser una cadena y un número.');
|
|
37
|
-
}
|
|
38
|
-
if (str.length >= length) {
|
|
39
|
-
return str;
|
|
40
|
-
}
|
|
41
|
-
char = char || ' '; // Utiliza un espacio como carácter de relleno si no se proporciona uno
|
|
42
|
-
var padLength = length - str.length;
|
|
43
|
-
var padding = char.repeat(padLength);
|
|
44
|
-
return str + padding;
|
|
45
|
-
}
|
|
46
|
-
validarCampoNumerico(event) {
|
|
47
|
-
const input = event.target;
|
|
48
|
-
const regex = /[^0-9]/gi;
|
|
49
|
-
input.value = input.value.replace(regex, '');
|
|
50
|
-
}
|
|
51
|
-
isNotBlank(str) {
|
|
52
|
-
return str != null && str.trim().length > 0;
|
|
53
|
-
}
|
|
54
|
-
isBlank(str) {
|
|
55
|
-
return str == null || str?.trim() === '';
|
|
56
|
-
}
|
|
57
|
-
validarCampoObligatorio(valor) {
|
|
58
|
-
// Verificar si el valor no es null ni undefined
|
|
59
|
-
if (valor !== null && valor !== undefined) {
|
|
60
|
-
// Verificar si el valor no es una cadena vacía (en caso de ser una cadena)
|
|
61
|
-
if (typeof valor === 'string' && valor.trim() === '') {
|
|
62
|
-
return false;
|
|
63
|
-
}
|
|
64
|
-
// Verificar si el valor no es un arreglo vacío (en caso de ser un arreglo)
|
|
65
|
-
if (Array.isArray(valor) && valor.length === 0) {
|
|
66
|
-
return false;
|
|
67
|
-
}
|
|
68
|
-
/*if (typeof valor === 'object' && Object.keys(valor).length === 0) {
|
|
69
|
-
return false;
|
|
70
|
-
}*/
|
|
71
|
-
return true;
|
|
72
|
-
}
|
|
73
|
-
return false;
|
|
74
|
-
}
|
|
75
|
-
capitalizeFully(inputString) {
|
|
76
|
-
if (!inputString) {
|
|
77
|
-
return '';
|
|
78
|
-
}
|
|
79
|
-
const words = inputString.split(' ');
|
|
80
|
-
const capitalizedWords = words.map(word => {
|
|
81
|
-
if (word.length > 0) {
|
|
82
|
-
return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();
|
|
83
|
-
}
|
|
84
|
-
return '';
|
|
85
|
-
});
|
|
86
|
-
const result = capitalizedWords.join(' ');
|
|
87
|
-
return result;
|
|
88
|
-
}
|
|
89
|
-
ordenarSelectItemsAlfabeticamente(arrayDeObjetos) {
|
|
90
|
-
arrayDeObjetos.sort((a, b) => {
|
|
91
|
-
const nombreA = a.label.toLowerCase();
|
|
92
|
-
const nombreB = b.label.toLowerCase();
|
|
93
|
-
if (nombreA < nombreB) {
|
|
94
|
-
return -1;
|
|
95
|
-
}
|
|
96
|
-
if (nombreA > nombreB) {
|
|
97
|
-
return 1;
|
|
98
|
-
}
|
|
99
|
-
return 0;
|
|
100
|
-
});
|
|
101
|
-
return arrayDeObjetos;
|
|
102
|
-
}
|
|
103
|
-
obtenerParametroDeURL(urlString, parametro) {
|
|
104
|
-
const url = new URL(urlString);
|
|
105
|
-
const searchParams = new URLSearchParams(url.search);
|
|
106
|
-
return searchParams.get(parametro);
|
|
107
|
-
}
|
|
108
|
-
validarEmail(email) {
|
|
109
|
-
const patronEmail = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
|
|
110
|
-
return patronEmail.test(email);
|
|
111
|
-
}
|
|
112
|
-
obtenerBase() {
|
|
113
|
-
var basePortal = null;
|
|
114
|
-
var paginaActual = window.location.href;
|
|
115
|
-
var url = new URL(paginaActual);
|
|
116
|
-
var params = new URLSearchParams(url.search);
|
|
117
|
-
if (paginaActual.toString().includes('PortalSara')) {
|
|
118
|
-
for (var match of paginaActual.matchAll(/(?<inicio>.*)\/(?<seguridad>.*)\/(?<sitio>.*)\/(?<pagina>.*)/g)) {
|
|
119
|
-
basePortal = match.groups?.seguridad;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
else if (params?.get('us_id')) {
|
|
123
|
-
paginaActual = window.parent.location.href;
|
|
124
|
-
for (var match of paginaActual.matchAll(/(?<inicio>.*)\/(?<seguridad>.*)\/(?<sitio>.*)\/(?<pagina>.*)/g)) {
|
|
125
|
-
basePortal = match.groups?.seguridad;
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
const regex = /^.*?\/\/.*?\/(.*?)\//g; // Expresión regular para obtener la primera parte de la URL
|
|
130
|
-
const match = Array.from(paginaActual.matchAll(regex));
|
|
131
|
-
if (match && match[0] && match[0][1]) {
|
|
132
|
-
basePortal = match[0][1];
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
return basePortal;
|
|
136
|
-
}
|
|
137
|
-
validarEspacio(caracter) {
|
|
138
|
-
const regex = /\s/; // La expresión regular para espacios en blanco
|
|
139
|
-
return regex.test(caracter); // Devuelve true si el carácter es un espacio en blanco
|
|
140
|
-
}
|
|
141
|
-
validarTextoSQL(valor, obligatorio, select, longitud, validarSentencia) {
|
|
142
|
-
// Verifica obligatoriedad
|
|
143
|
-
if (obligatorio && (valor == null || valor.trim().length == 0 || valor == '--')) {
|
|
144
|
-
return 'Obligatorio';
|
|
145
|
-
}
|
|
146
|
-
// Verifica longitud máxima
|
|
147
|
-
if (longitud > 0) {
|
|
148
|
-
if (valor != null && valor != '--' && valor.length > longitud) {
|
|
149
|
-
return 'Longitud maxima de ' + longitud;
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
// Realiza las demás validacion solo en el caso de que la cadena SQL/valor no sea vacia
|
|
153
|
-
if (valor == null || valor.trim().length == 0 || valor == '--')
|
|
154
|
-
return null;
|
|
155
|
-
if (validarSentencia) {
|
|
156
|
-
if (select) {
|
|
157
|
-
if (!valor.toUpperCase().startsWith('SELECT')) {
|
|
158
|
-
return 'El texto debe iniciar con la palabra Select';
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
else {
|
|
162
|
-
if (valor.toUpperCase().includes('SELECT')) {
|
|
163
|
-
return 'No puede contener la palabra Select';
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
var indice;
|
|
168
|
-
var mensaje;
|
|
169
|
-
this.RESERVADAS_SQL_NOPUEDECONTENER.forEach(item => {
|
|
170
|
-
if (valor.includes(item)) {
|
|
171
|
-
mensaje = 'No puede contener ' + item;
|
|
172
|
-
}
|
|
173
|
-
});
|
|
174
|
-
this.reservadas.forEach(item => {
|
|
175
|
-
if (valor.toUpperCase().includes(item.toUpperCase())) {
|
|
176
|
-
indice = (valor.toUpperCase().indexOf(item.toUpperCase()));
|
|
177
|
-
if (indice == 0 || (this.validarEspacio(valor.charAt(indice - 1)) && this.validarEspacio(valor.charAt(item.length + indice)))) {
|
|
178
|
-
mensaje = 'No puede contener ' + item;
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
});
|
|
182
|
-
return mensaje;
|
|
183
|
-
}
|
|
184
|
-
sleep(ms) {
|
|
185
|
-
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
186
|
-
}
|
|
187
|
-
validarTextoArchivoJasper(texto) {
|
|
188
|
-
if (texto.trim() == '' || texto == null) {
|
|
189
|
-
return "El campo no puede estar vacio";
|
|
190
|
-
}
|
|
191
|
-
if (texto.match("^[^\\D].*")) {
|
|
192
|
-
return "El campo no puede iniciar con numeros";
|
|
193
|
-
}
|
|
194
|
-
if (texto.match("^[^\\S].*")) {
|
|
195
|
-
return "El campo no puede iniciar con caracteres en blanco";
|
|
196
|
-
}
|
|
197
|
-
if (!texto.match("^[^\\W].*")) {
|
|
198
|
-
return "El campo no puede iniciar con caracteres especiales";
|
|
199
|
-
}
|
|
200
|
-
return null;
|
|
201
|
-
}
|
|
202
|
-
resizeWindowIFrame() {
|
|
203
|
-
if (window.frameElement != null) {
|
|
204
|
-
this.resizeIframeKeepPosition(window.frameElement);
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
/**
|
|
208
|
-
* Funcion para mantener la posición actual en el iframe.
|
|
209
|
-
* @param obj es un "FrameElement"
|
|
210
|
-
*/
|
|
211
|
-
resizeIframeKeepPosition(obj) {
|
|
212
|
-
var ifrm = obj;
|
|
213
|
-
var doc = ifrm.contentDocument ? ifrm.contentDocument : ifrm.contentWindow.document;
|
|
214
|
-
var tamanio = this.getDocHeight(doc) + 40;
|
|
215
|
-
ifrm.style.height = tamanio + "px";
|
|
216
|
-
}
|
|
217
|
-
getDocHeight(doc) {
|
|
218
|
-
let navegador = this.obtenerNavegador().toLowerCase();
|
|
219
|
-
var height = 0;
|
|
220
|
-
doc = doc || document;
|
|
221
|
-
var body = doc.body, html = doc.documentElement;
|
|
222
|
-
height = Math.max(body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight);
|
|
223
|
-
if (navegador.indexOf('firefox') !== -1) {
|
|
224
|
-
if (doc.formDetalleConvocatoria) {
|
|
225
|
-
let cantidadMiles = height / 1000;
|
|
226
|
-
height = height + 600 + (cantidadMiles * 40);
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
// console.warn('FCO : llama a getDocHeight');
|
|
230
|
-
return height;
|
|
231
|
-
}
|
|
232
|
-
obtenerNavegador() {
|
|
233
|
-
var ua = navigator.userAgent, tem, M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || [];
|
|
234
|
-
if (/trident/i.test(M[1])) {
|
|
235
|
-
tem = /\brv[ :]+(\d+)/g.exec(ua) || [];
|
|
236
|
-
return 'IE ' + (tem[1] || '');
|
|
237
|
-
}
|
|
238
|
-
if (M[1] === 'Chrome') {
|
|
239
|
-
tem = ua.match(/\b(OPR|Edge)\/(\d+)/);
|
|
240
|
-
if (tem != null)
|
|
241
|
-
return tem.slice(1).join(' ').replace('OPR', 'Opera');
|
|
242
|
-
}
|
|
243
|
-
M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];
|
|
244
|
-
if ((tem = ua.match(/version\/(\d+)/i)) != null)
|
|
245
|
-
M.splice(1, 1, tem[1]);
|
|
246
|
-
return M.join(' ');
|
|
247
|
-
}
|
|
248
|
-
obtenerUrlApi(urlapi) {
|
|
249
|
-
if (urlapi) {
|
|
250
|
-
return urlapi;
|
|
251
|
-
}
|
|
252
|
-
switch (this.getTokenKey('aplicacion')) {
|
|
253
|
-
case '1':
|
|
254
|
-
return window['env']['urlapisara'] ? window['env']['urlapisara'] : this.cookieService.get('urlnucleo');
|
|
255
|
-
case '13':
|
|
256
|
-
return window['env']['urlapimana'] ? window['env']['urlapimana'] : this.cookieService.get('urlnucleo');
|
|
257
|
-
case '10':
|
|
258
|
-
return window['env']['urlapisara'] ? window['env']['urlapisara'] : this.cookieService.get('urlnucleo');
|
|
259
|
-
//return window['env']['urlapi'] ? window['env']['urlapi'] : this.cookieService.get('urlnucleo');
|
|
260
|
-
case '77':
|
|
261
|
-
return window['env']['urlapimanaaps'] ? window['env']['urlapimanaaps'] : this.cookieService.get('urlnucleo');
|
|
262
|
-
default:
|
|
263
|
-
return this.cookieService.get('urlnucleo');
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
getTokenKey(key) {
|
|
267
|
-
try {
|
|
268
|
-
const data = this._decodeToken();
|
|
269
|
-
return data[key].toString();
|
|
270
|
-
}
|
|
271
|
-
catch (error) {
|
|
272
|
-
return undefined;
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
_decodeToken() {
|
|
276
|
-
try {
|
|
277
|
-
const token = this.getItem('token', '');
|
|
278
|
-
const data = token.split('.')[1];
|
|
279
|
-
return JSON.parse(atob(data));
|
|
280
|
-
}
|
|
281
|
-
catch (error) {
|
|
282
|
-
throw error;
|
|
283
|
-
}
|
|
284
|
-
}
|
|
285
|
-
getItem(key, defaultValue) {
|
|
286
|
-
return localStorage.getItem(this.obtenerBase() + '_' + key) ?? defaultValue;
|
|
287
|
-
}
|
|
288
|
-
cambiarTema(tema) {
|
|
289
|
-
localStorage.setItem(this.obtenerBase() + '_' + 'tema', tema);
|
|
290
|
-
let linkTema = this.document.getElementById('temaApp');
|
|
291
|
-
linkTema.href = `${tema}.css`;
|
|
292
|
-
}
|
|
293
|
-
calcularPosicionDialog() {
|
|
294
|
-
var parentWindow = window.parent;
|
|
295
|
-
var obj = window.frameElement;
|
|
296
|
-
var ifrm = obj;
|
|
297
|
-
if (ifrm) {
|
|
298
|
-
const scrollTop = parentWindow.pageYOffset || parentWindow.document.documentElement.scrollTop || parentWindow.document.body.scrollTop || 0;
|
|
299
|
-
const dialog = document.querySelector('.p-dialog');
|
|
300
|
-
if (dialog) {
|
|
301
|
-
const scrollHeight = parentWindow.document.documentElement.scrollHeight;
|
|
302
|
-
const mitadScrollHeight = scrollHeight / 2;
|
|
303
|
-
const inicio = -mitadScrollHeight;
|
|
304
|
-
dialog.style.top = `${inicio + 50 + (scrollTop)}px`;
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
}
|
|
308
|
-
validarPalabra(texto) {
|
|
309
|
-
const pletras = /^[a-zA-Z][0-9a-zA-Z]*$/;
|
|
310
|
-
return pletras.test(texto);
|
|
311
|
-
}
|
|
312
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UtilsService, deps: [{ token: i1.CookieService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
313
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UtilsService, providedIn: 'root' });
|
|
314
|
-
}
|
|
315
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UtilsService, decorators: [{
|
|
316
|
-
type: Injectable,
|
|
317
|
-
args: [{
|
|
318
|
-
providedIn: 'root'
|
|
319
|
-
}]
|
|
320
|
-
}], ctorParameters: () => [{ type: i1.CookieService }, { type: Document, decorators: [{
|
|
321
|
-
type: Inject,
|
|
322
|
-
args: [DOCUMENT]
|
|
323
|
-
}] }] });
|
|
324
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zZXJ2aWNpb3MvdXRpbHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUszQyxNQUFNLE9BQU8sWUFBWTtJQUtIO0lBQXdEO0lBSHBFLDhCQUE4QixHQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDN0MsVUFBVSxHQUFVLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFFbkwsWUFBb0IsYUFBNEIsRUFBNEIsUUFBa0I7UUFBMUUsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFBNEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUM5RixDQUFDO0lBRU0sWUFBWTtRQUNqQixJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDaEIsTUFBTSxVQUFVLEdBQUcsZ0VBQWdFLENBQUM7UUFDcEYsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDNUIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGdCQUFnQixFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDMUMsTUFBTSxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1FBQzVFLENBQUM7UUFFRCxP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Q29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJ25neC1jb29raWUtc2VydmljZSc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFV0aWxzU2VydmljZSB7XHJcblxyXG4gIHByaXZhdGUgUkVTRVJWQURBU19TUUxfTk9QVUVERUNPTlRFTkVSOiBhbnlbXSA9IFsnOyddXHJcbiAgcHJpdmF0ZSByZXNlcnZhZGFzOiBhbnlbXSA9IFsnQUxURVInLCAnREVMRVRFJywgJ0RST1AnLCAnTU9ESUZZJywgJ0NSRUFURScsICdEQVRBQkFTRScsICdUQUJMRScsICdVUERBVEUnLCAnVFJJR0dFUicsICdHUkFOVCcsICdSRVZPS0UnLCAnQ0FMTCcsICdJTlNFUlQnLCAnVFJVTkNBVEUnLCAnVVNFJywgJy0tJ11cclxuICBcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvb2tpZVNlcnZpY2U6IENvb2tpZVNlcnZpY2UsIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50LCl7XHJcbiAgfVxyXG4gIFxyXG4gIHB1YmxpYyBnZW5lcmFyTGxhdmUoKSB7XHJcbiAgICBsZXQgcmVzdWx0ID0gJyc7XHJcbiAgICBjb25zdCBjaGFyYWN0ZXJzID0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5JztcclxuICAgIGNvbnN0IGNoYXJhY3RlcnNMZW5ndGggPSAzMjtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2hhcmFjdGVyc0xlbmd0aDsgaSsrKSB7XHJcbiAgICAgIHJlc3VsdCArPSBjaGFyYWN0ZXJzLmNoYXJBdChNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaGFyYWN0ZXJzTGVuZ3RoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlc3VsdC50b0xvd2VyQ2FzZSgpO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICBwdWJsaWMgZ2VuZXJhclBpbihjYW50aWRhZDogbnVtYmVyKSB7XHJcbiAgICBsZXQgcmVzdWx0ID0gJyc7XHJcbiAgICBjb25zdCBjaGFyYWN0ZXJzID0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5JztcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2FudGlkYWQ7IGkrKykge1xyXG4gICAgICByZXN1bHQgKz0gY2hhcmFjdGVycy5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogY2FudGlkYWQpKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gcmVzdWx0LnRvTG93ZXJDYXNlKCk7XHJcbiAgfVxyXG5cclxuICByaWdodHBhZChzdHIsIGxlbmd0aCwgY2hhcikge1xyXG4gICAgaWYgKHN0ciA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZiBzdHIgIT09ICdzdHJpbmcnIHx8IHR5cGVvZiBsZW5ndGggIT09ICdudW1iZXInKSB7XHJcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0xvcyBhcmd1bWVudG9zIGRlYmVuIHNlciB1bmEgY2FkZW5hIHkgdW4gbsO6bWVyby4nKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoc3RyLmxlbmd0aCA+PSBsZW5ndGgpIHtcclxuICAgICAgcmV0dXJuIHN0cjtcclxuICAgIH1cclxuXHJcbiAgICBjaGFyID0gY2hhciB8fCAnICc7IC8vIFV0aWxpemEgdW4gZXNwYWNpbyBjb21vIGNhcsOhY3RlciBkZSByZWxsZW5vIHNpIG5vIHNlIHByb3BvcmNpb25hIHVub1xyXG5cclxuICAgIHZhciBwYWRMZW5ndGggPSBsZW5ndGggLSBzdHIubGVuZ3RoO1xyXG4gICAgdmFyIHBhZGRpbmcgPSBjaGFyLnJlcGVhdChwYWRMZW5ndGgpO1xyXG5cclxuICAgIHJldHVybiBzdHIgKyBwYWRkaW5nO1xyXG4gIH1cclxuXHJcbiAgdmFsaWRhckNhbXBvTnVtZXJpY28oZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc3QgaW5wdXQgPSBldmVudC50YXJnZXQ7XHJcbiAgICBjb25zdCByZWdleCA9IC9bXjAtOV0vZ2k7XHJcbiAgICBpbnB1dC52YWx1ZSA9IGlucHV0LnZhbHVlLnJlcGxhY2UocmVnZXgsICcnKTtcclxuICB9XHJcblxyXG4gIGlzTm90Qmxhbmsoc3RyOiBzdHJpbmcgfCBTdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gc3RyICE9IG51bGwgJiYgc3RyLnRyaW0oKS5sZW5ndGggPiAwO1xyXG4gIH1cclxuXHJcbiAgaXNCbGFuayhzdHI6IHN0cmluZyB8IFN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBzdHIgPT0gbnVsbCB8fCBzdHI/LnRyaW0oKSA9PT0gJyc7XHJcbiAgfVxyXG5cclxuICB2YWxpZGFyQ2FtcG9PYmxpZ2F0b3Jpbyh2YWxvcik6IGJvb2xlYW4ge1xyXG4gICAgLy8gVmVyaWZpY2FyIHNpIGVsIHZhbG9yIG5vIGVzIG51bGwgbmkgdW5kZWZpbmVkXHJcbiAgICBpZiAodmFsb3IgIT09IG51bGwgJiYgdmFsb3IgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAvLyBWZXJpZmljYXIgc2kgZWwgdmFsb3Igbm8gZXMgdW5hIGNhZGVuYSB2YWPDrWEgKGVuIGNhc28gZGUgc2VyIHVuYSBjYWRlbmEpXHJcbiAgICAgIGlmICh0eXBlb2YgdmFsb3IgPT09ICdzdHJpbmcnICYmIHZhbG9yLnRyaW0oKSA9PT0gJycpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgLy8gVmVyaWZpY2FyIHNpIGVsIHZhbG9yIG5vIGVzIHVuIGFycmVnbG8gdmFjw61vIChlbiBjYXNvIGRlIHNlciB1biBhcnJlZ2xvKVxyXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWxvcikgJiYgdmFsb3IubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIC8qaWYgKHR5cGVvZiB2YWxvciA9PT0gJ29iamVjdCcgJiYgT2JqZWN0LmtleXModmFsb3IpLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfSovXHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgY2FwaXRhbGl6ZUZ1bGx5KGlucHV0U3RyaW5nOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKCFpbnB1dFN0cmluZykge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgICBjb25zdCB3b3JkcyA9IGlucHV0U3RyaW5nLnNwbGl0KCcgJyk7XHJcbiAgICBjb25zdCBjYXBpdGFsaXplZFdvcmRzID0gd29yZHMubWFwKHdvcmQgPT4ge1xyXG4gICAgICBpZiAod29yZC5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgcmV0dXJuIHdvcmQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3b3JkLnNsaWNlKDEpLnRvTG93ZXJDYXNlKCk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfSk7XHJcbiAgICBjb25zdCByZXN1bHQgPSBjYXBpdGFsaXplZFdvcmRzLmpvaW4oJyAnKTtcclxuICAgIHJldHVybiByZXN1bHQ7XHJcbiAgfVxyXG5cclxuICBvcmRlbmFyU2VsZWN0SXRlbXNBbGZhYmV0aWNhbWVudGUoYXJyYXlEZU9iamV0b3M6IGFueVtdKTogYW55W10ge1xyXG4gICAgYXJyYXlEZU9iamV0b3Muc29ydCgoYSwgYikgPT4ge1xyXG4gICAgICBjb25zdCBub21icmVBID0gYS5sYWJlbC50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICBjb25zdCBub21icmVCID0gYi5sYWJlbC50b0xvd2VyQ2FzZSgpO1xyXG5cclxuICAgICAgaWYgKG5vbWJyZUEgPCBub21icmVCKSB7XHJcbiAgICAgICAgcmV0dXJuIC0xO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChub21icmVBID4gbm9tYnJlQikge1xyXG4gICAgICAgIHJldHVybiAxO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiAwO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gYXJyYXlEZU9iamV0b3M7XHJcbiAgfVxyXG5cclxuICBvYnRlbmVyUGFyYW1ldHJvRGVVUkwodXJsU3RyaW5nOiBzdHJpbmcsIHBhcmFtZXRybzogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHVybFN0cmluZyk7XHJcbiAgICBjb25zdCBzZWFyY2hQYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHVybC5zZWFyY2gpO1xyXG4gICAgcmV0dXJuIHNlYXJjaFBhcmFtcy5nZXQocGFyYW1ldHJvKTtcclxuICB9XHJcblxyXG4gIHZhbGlkYXJFbWFpbChlbWFpbDogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBwYXRyb25FbWFpbCA9IC9eW2EtekEtWjAtOS5fJSstXStAW2EtekEtWjAtOS4tXStcXC5bYS16QS1aXXsyLH0kLztcclxuICAgIHJldHVybiBwYXRyb25FbWFpbC50ZXN0KGVtYWlsKTtcclxuICB9XHJcblxyXG4gIG9idGVuZXJCYXNlKCk6IChzdHJpbmcgfCBudWxsKSB7XHJcblxyXG4gICAgdmFyIGJhc2VQb3J0YWw6IHN0cmluZyA9IG51bGw7XHJcbiAgICB2YXIgcGFnaW5hQWN0dWFsOiBhbnkgPSB3aW5kb3cubG9jYXRpb24uaHJlZlxyXG4gICAgdmFyIHVybCA9IG5ldyBVUkwocGFnaW5hQWN0dWFsKTtcclxuICAgIHZhciBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHVybC5zZWFyY2gpO1xyXG4gICAgaWYgKHBhZ2luYUFjdHVhbC50b1N0cmluZygpLmluY2x1ZGVzKCdQb3J0YWxTYXJhJykpIHtcclxuICAgICAgZm9yICh2YXIgbWF0Y2ggb2YgcGFnaW5hQWN0dWFsLm1hdGNoQWxsKC8oPzxpbmljaW8+LiopXFwvKD88c2VndXJpZGFkPi4qKVxcLyg/PHNpdGlvPi4qKVxcLyg/PHBhZ2luYT4uKikvZykpIHtcclxuICAgICAgICBiYXNlUG9ydGFsID0gbWF0Y2guZ3JvdXBzPy5zZWd1cmlkYWQ7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAocGFyYW1zPy5nZXQoJ3VzX2lkJykpIHtcclxuICAgICAgcGFnaW5hQWN0dWFsID0gd2luZG93LnBhcmVudC5sb2NhdGlvbi5ocmVmO1xyXG4gICAgICBmb3IgKHZhciBtYXRjaCBvZiBwYWdpbmFBY3R1YWwubWF0Y2hBbGwoLyg/PGluaWNpbz4uKilcXC8oPzxzZWd1cmlkYWQ+LiopXFwvKD88c2l0aW8+LiopXFwvKD88cGFnaW5hPi4qKS9nKSkge1xyXG4gICAgICAgIGJhc2VQb3J0YWwgPSBtYXRjaC5ncm91cHM/LnNlZ3VyaWRhZDtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgcmVnZXggPSAvXi4qP1xcL1xcLy4qP1xcLyguKj8pXFwvL2c7IC8vIEV4cHJlc2nDs24gcmVndWxhciBwYXJhIG9idGVuZXIgbGEgcHJpbWVyYSBwYXJ0ZSBkZSBsYSBVUkxcclxuICAgICAgY29uc3QgbWF0Y2ggPSBBcnJheS5mcm9tKHBhZ2luYUFjdHVhbC5tYXRjaEFsbChyZWdleCkpO1xyXG5cclxuICAgICAgaWYgKG1hdGNoICYmIG1hdGNoWzBdICYmIG1hdGNoWzBdWzFdKSB7XHJcbiAgICAgICAgYmFzZVBvcnRhbCA9IG1hdGNoWzBdWzFdO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYmFzZVBvcnRhbDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdmFsaWRhckVzcGFjaW8oY2FyYWN0ZXI6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgcmVnZXggPSAvXFxzLzsgLy8gTGEgZXhwcmVzacOzbiByZWd1bGFyIHBhcmEgZXNwYWNpb3MgZW4gYmxhbmNvXHJcbiAgICByZXR1cm4gcmVnZXgudGVzdChjYXJhY3Rlcik7IC8vIERldnVlbHZlIHRydWUgc2kgZWwgY2Fyw6FjdGVyIGVzIHVuIGVzcGFjaW8gZW4gYmxhbmNvXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdmFsaWRhclRleHRvU1FMKHZhbG9yOiBzdHJpbmcsIG9ibGlnYXRvcmlvOiBib29sZWFuLCBzZWxlY3Q6IGJvb2xlYW4sIGxvbmdpdHVkOiBudW1iZXIsIHZhbGlkYXJTZW50ZW5jaWE6IGJvb2xlYW4pOiAoc3RyaW5nIHwgbnVsbCkge1xyXG4gICAgLy8gVmVyaWZpY2Egb2JsaWdhdG9yaWVkYWRcclxuICAgIGlmIChvYmxpZ2F0b3JpbyAmJiAodmFsb3IgPT0gbnVsbCB8fCB2YWxvci50cmltKCkubGVuZ3RoID09IDAgfHwgdmFsb3IgPT0gJy0tJykpIHtcclxuICAgICAgcmV0dXJuICdPYmxpZ2F0b3Jpbyc7XHJcbiAgICB9XHJcbiAgICAvLyBWZXJpZmljYSBsb25naXR1ZCBtw6F4aW1hXHJcbiAgICBpZiAobG9uZ2l0dWQgPiAwKSB7XHJcbiAgICAgIGlmICh2YWxvciAhPSBudWxsICYmIHZhbG9yICE9ICctLScgJiYgdmFsb3IubGVuZ3RoID4gbG9uZ2l0dWQpIHtcclxuICAgICAgICByZXR1cm4gJ0xvbmdpdHVkIG1heGltYSBkZSAnICsgbG9uZ2l0dWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIFJlYWxpemEgbGFzIGRlbcOhcyB2YWxpZGFjaW9uIHNvbG8gZW4gZWwgY2FzbyBkZSBxdWUgbGEgY2FkZW5hIFNRTC92YWxvciBubyBzZWEgdmFjaWFcclxuICAgIGlmICh2YWxvciA9PSBudWxsIHx8IHZhbG9yLnRyaW0oKS5sZW5ndGggPT0gMCB8fCB2YWxvciA9PSAnLS0nKVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuXHJcbiAgICBpZiAodmFsaWRhclNlbnRlbmNpYSkge1xyXG4gICAgICBpZiAoc2VsZWN0KSB7XHJcbiAgICAgICAgaWYgKCF2YWxvci50b1VwcGVyQ2FzZSgpLnN0YXJ0c1dpdGgoJ1NFTEVDVCcpKSB7XHJcbiAgICAgICAgICByZXR1cm4gJ0VsIHRleHRvIGRlYmUgaW5pY2lhciBjb24gbGEgcGFsYWJyYSBTZWxlY3QnO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAodmFsb3IudG9VcHBlckNhc2UoKS5pbmNsdWRlcygnU0VMRUNUJykpIHtcclxuICAgICAgICAgIHJldHVybiAnTm8gcHVlZGUgY29udGVuZXIgbGEgcGFsYWJyYSBTZWxlY3QnO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdmFyIGluZGljZTogbnVtYmVyO1xyXG4gICAgdmFyIG1lbnNhamU6IHN0cmluZztcclxuICAgIHRoaXMuUkVTRVJWQURBU19TUUxfTk9QVUVERUNPTlRFTkVSLmZvckVhY2goaXRlbSA9PiB7XHJcbiAgICAgIGlmICh2YWxvci5pbmNsdWRlcyhpdGVtKSkge1xyXG4gICAgICAgIG1lbnNhamUgPSAnTm8gcHVlZGUgY29udGVuZXIgJyArIGl0ZW07XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgICB0aGlzLnJlc2VydmFkYXMuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgaWYgKHZhbG9yLnRvVXBwZXJDYXNlKCkuaW5jbHVkZXMoaXRlbS50b1VwcGVyQ2FzZSgpKSkge1xyXG4gICAgICAgIGluZGljZSA9ICh2YWxvci50b1VwcGVyQ2FzZSgpLmluZGV4T2YoaXRlbS50b1VwcGVyQ2FzZSgpKSk7XHJcbiAgICAgICAgaWYgKGluZGljZSA9PSAwIHx8ICh0aGlzLnZhbGlkYXJFc3BhY2lvKHZhbG9yLmNoYXJBdChpbmRpY2UgLSAxKSkgJiYgdGhpcy52YWxpZGFyRXNwYWNpbyh2YWxvci5jaGFyQXQoaXRlbS5sZW5ndGggKyBpbmRpY2UpKSkpIHtcclxuICAgICAgICAgIG1lbnNhamUgPSAnTm8gcHVlZGUgY29udGVuZXIgJyArIGl0ZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gICAgcmV0dXJuIG1lbnNhamU7XHJcbiAgfVxyXG5cclxuICBzbGVlcChtczogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgbXMpKTtcclxuICB9XHJcblxyXG4gIHZhbGlkYXJUZXh0b0FyY2hpdm9KYXNwZXIodGV4dG86IHN0cmluZyk6IChzdHJpbmcgfCBudWxsKSB7XHJcbiAgICBpZiAodGV4dG8udHJpbSgpID09ICcnIHx8IHRleHRvID09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIFwiRWwgY2FtcG8gbm8gcHVlZGUgZXN0YXIgdmFjaW9cIjtcclxuICAgIH1cclxuICAgIGlmICh0ZXh0by5tYXRjaChcIl5bXlxcXFxEXS4qXCIpKSB7XHJcbiAgICAgIHJldHVybiBcIkVsIGNhbXBvIG5vIHB1ZWRlIGluaWNpYXIgY29uIG51bWVyb3NcIjtcclxuICAgIH1cclxuICAgIGlmICh0ZXh0by5tYXRjaChcIl5bXlxcXFxTXS4qXCIpKSB7XHJcbiAgICAgIHJldHVybiBcIkVsIGNhbXBvIG5vIHB1ZWRlIGluaWNpYXIgY29uIGNhcmFjdGVyZXMgZW4gYmxhbmNvXCI7XHJcbiAgICB9XHJcbiAgICBpZiAoIXRleHRvLm1hdGNoKFwiXlteXFxcXFddLipcIikpIHtcclxuICAgICAgcmV0dXJuIFwiRWwgY2FtcG8gbm8gcHVlZGUgaW5pY2lhciBjb24gY2FyYWN0ZXJlcyBlc3BlY2lhbGVzXCI7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHJlc2l6ZVdpbmRvd0lGcmFtZSgpIHtcclxuXHRcdGlmICggd2luZG93LmZyYW1lRWxlbWVudCAhPSBudWxsKSB7XHJcblx0XHRcdHRoaXMucmVzaXplSWZyYW1lS2VlcFBvc2l0aW9uKHdpbmRvdy5mcmFtZUVsZW1lbnQpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHQvKipcclxuXHQgKiBGdW5jaW9uIHBhcmEgbWFudGVuZXIgbGEgcG9zaWNpw7NuIGFjdHVhbCBlbiBlbCBpZnJhbWUuXHJcblx0ICogQHBhcmFtIG9iaiBlcyB1biBcIkZyYW1lRWxlbWVudFwiXHJcblx0ICovXHJcblx0cHJpdmF0ZSByZXNpemVJZnJhbWVLZWVwUG9zaXRpb24ob2JqKSB7XHJcblx0XHRcclxuXHRcdHZhciBpZnJtID0gb2JqO1xyXG5cdFx0dmFyIGRvYyA9IGlmcm0uY29udGVudERvY3VtZW50ID8gaWZybS5jb250ZW50RG9jdW1lbnQ6IGlmcm0uY29udGVudFdpbmRvdy5kb2N1bWVudDtcclxuICAgIHZhciB0YW1hbmlvOiBudW1iZXI9ICB0aGlzLmdldERvY0hlaWdodCggZG9jICkgICsgNDBcclxuXHRcdGlmcm0uc3R5bGUuaGVpZ2h0ID0gdGFtYW5pbyArIFwicHhcIjtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgZ2V0RG9jSGVpZ2h0KGRvYyl7XHJcblx0XHJcblx0XHRsZXQgbmF2ZWdhZG9yID0gdGhpcy5vYnRlbmVyTmF2ZWdhZG9yKCkudG9Mb3dlckNhc2UoKTtcclxuXHRcdHZhciBoZWlnaHQgPSAwO1xyXG5cdFx0ZG9jID0gZG9jIHx8IGRvY3VtZW50O1xyXG5cdFx0dmFyIGJvZHkgPSBkb2MuYm9keSwgaHRtbCA9IGRvYy5kb2N1bWVudEVsZW1lbnQ7XHJcblx0XHRoZWlnaHQgPSBNYXRoLm1heCggYm9keS5zY3JvbGxIZWlnaHQsIGJvZHkub2Zmc2V0SGVpZ2h0LCBcclxuXHRcdGh0bWwuY2xpZW50SGVpZ2h0LCBodG1sLnNjcm9sbEhlaWdodCwgaHRtbC5vZmZzZXRIZWlnaHQgKTtcclxuXHRcdFxyXG5cdFx0aWYgKG5hdmVnYWRvci5pbmRleE9mKCdmaXJlZm94JykgIT09IC0xKXtcclxuXHRcdFx0aWYoZG9jLmZvcm1EZXRhbGxlQ29udm9jYXRvcmlhKXtcclxuXHRcdFx0XHRsZXQgY2FudGlkYWRNaWxlcyA9IGhlaWdodCAvIDEwMDA7XHJcblx0XHRcdFx0aGVpZ2h0ID0gaGVpZ2h0ICsgNjAwICsgKGNhbnRpZGFkTWlsZXMqNDApXHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdFxyXG5cdC8vXHRjb25zb2xlLndhcm4oJ0ZDTyA6IGxsYW1hIGEgZ2V0RG9jSGVpZ2h0Jyk7XHJcblx0XHJcblx0XHRyZXR1cm4gaGVpZ2h0O1xyXG5cdH1cclxuXHJcblx0b2J0ZW5lck5hdmVnYWRvcigpe1xyXG5cdFx0dmFyIHVhPSBuYXZpZ2F0b3IudXNlckFnZW50LCB0ZW0sIFxyXG5cdFx0TT0gdWEubWF0Y2goLyhvcGVyYXxjaHJvbWV8c2FmYXJpfGZpcmVmb3h8bXNpZXx0cmlkZW50KD89XFwvKSlcXC8/XFxzKihcXGQrKS9pKSB8fCBbXTtcclxuXHRcdGlmKC90cmlkZW50L2kudGVzdChNWzFdKSl7XHJcblx0XHRcdHRlbT0gIC9cXGJydlsgOl0rKFxcZCspL2cuZXhlYyh1YSkgfHwgW107XHJcblx0XHRcdHJldHVybiAnSUUgJysodGVtWzFdIHx8ICcnKTtcclxuXHRcdH1cclxuXHRcdGlmKE1bMV09PT0gJ0Nocm9tZScpe1xyXG5cdFx0XHR0ZW09IHVhLm1hdGNoKC9cXGIoT1BSfEVkZ2UpXFwvKFxcZCspLyk7XHJcblx0XHRcdGlmKHRlbSE9IG51bGwpIHJldHVybiB0ZW0uc2xpY2UoMSkuam9pbignICcpLnJlcGxhY2UoJ09QUicsICdPcGVyYScpO1xyXG5cdFx0fVxyXG5cdFx0TT0gTVsyXT8gW01bMV0sIE1bMl1dOiBbbmF2aWdhdG9yLmFwcE5hbWUsIG5hdmlnYXRvci5hcHBWZXJzaW9uLCAnLT8nXTtcclxuXHRcdGlmKCh0ZW09IHVhLm1hdGNoKC92ZXJzaW9uXFwvKFxcZCspL2kpKSE9IG51bGwpIE0uc3BsaWNlKDEsIDEsIHRlbVsxXSk7XHJcblx0XHRyZXR1cm4gTS5qb2luKCcgJyk7XHJcblx0fVxyXG5cclxuICBvYnRlbmVyVXJsQXBpKHVybGFwaT86IHN0cmluZyApOiBzdHJpbmcge1xyXG4gICAgaWYgKHVybGFwaSl7XHJcbiAgICAgIHJldHVybiB1cmxhcGk7XHJcbiAgICB9XHJcbiAgICBzd2l0Y2ggKHRoaXMuZ2V0VG9rZW5LZXkoJ2FwbGljYWNpb24nKSkge1xyXG4gICAgICBjYXNlICcxJzpcclxuICAgICAgICByZXR1cm4gd2luZG93WydlbnYnXVsndXJsYXBpc2FyYSddID8gd2luZG93WydlbnYnXVsndXJsYXBpc2FyYSddIDogdGhpcy5jb29raWVTZXJ2aWNlLmdldCgndXJsbnVjbGVvJyk7XHJcbiAgICAgIGNhc2UgJzEzJzpcclxuICAgICAgICByZXR1cm4gd2luZG93WydlbnYnXVsndXJsYXBpbWFuYSddID8gd2luZG93WydlbnYnXVsndXJsYXBpbWFuYSddIDogdGhpcy5jb29raWVTZXJ2aWNlLmdldCgndXJsbnVjbGVvJyk7XHJcbiAgICAgIGNhc2UgJzEwJzpcclxuICAgICAgICByZXR1cm4gd2luZG93WydlbnYnXVsndXJsYXBpc2FyYSddID8gd2luZG93WydlbnYnXVsndXJsYXBpc2FyYSddIDogdGhpcy5jb29raWVTZXJ2aWNlLmdldCgndXJsbnVjbGVvJyk7XHJcbiAgICAgICAgLy9yZXR1cm4gd2luZG93WydlbnYnXVsndXJsYXBpJ10gPyB3aW5kb3dbJ2VudiddWyd1cmxhcGknXSA6IHRoaXMuY29va2llU2VydmljZS5nZXQoJ3VybG51Y2xlbycpO1xyXG4gICAgICBjYXNlICc3Nyc6XHJcbiAgICAgICAgcmV0dXJuIHdpbmRvd1snZW52J11bJ3VybGFwaW1hbmFhcHMnXSA/IHdpbmRvd1snZW52J11bJ3VybGFwaW1hbmFhcHMnXSA6IHRoaXMuY29va2llU2VydmljZS5nZXQoJ3VybG51Y2xlbycpO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAgdGhpcy5jb29raWVTZXJ2aWNlLmdldCgndXJsbnVjbGVvJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFRva2VuS2V5KGtleTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLl9kZWNvZGVUb2tlbigpO1xyXG4gICAgICByZXR1cm4gZGF0YVtrZXldLnRvU3RyaW5nKCk7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZGVjb2RlVG9rZW4oKTogYW55IHtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IHRva2VuID0gdGhpcy5nZXRJdGVtKCd0b2tlbicsICcnKTtcclxuICAgICAgY29uc3QgZGF0YSA9IHRva2VuLnNwbGl0KCcuJylbMV07XHJcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKGF0b2IoZGF0YSkpO1xyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgdGhyb3cgZXJyb3I7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtKGtleTogc3RyaW5nLCBkZWZhdWx0VmFsdWU/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMub2J0ZW5lckJhc2UoKSArICdfJyArICBrZXkpID8/IGRlZmF1bHRWYWx1ZTtcclxuICB9XHJcblxyXG4gIGNhbWJpYXJUZW1hKHRlbWEgOiAoJ3RlbWFDbGFybycgfCAndGVtYU9zY3VybycpKXtcclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMub2J0ZW5lckJhc2UoKSArICdfJyArJ3RlbWEnLCB0ZW1hKTtcclxuICAgIGxldCBsaW5rVGVtYSA9IHRoaXMuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RlbWFBcHAnKSBhcyBIVE1MTGlua0VsZW1lbnQ7XHJcbiAgICBsaW5rVGVtYS5ocmVmID0gYCR7dGVtYX0uY3NzYFxyXG4gIH1cclxuXHJcbiAgY2FsY3VsYXJQb3NpY2lvbkRpYWxvZygpIHtcclxuICAgIHZhciBwYXJlbnRXaW5kb3c6IFdpbmRvdyA9IHdpbmRvdy5wYXJlbnQ7XHJcbiAgICB2YXIgb2JqOiBhbnkgPSB3aW5kb3cuZnJhbWVFbGVtZW50IDtcclxuICAgIHZhciBpZnJtID0gb2JqO1xyXG4gICAgaWYgKGlmcm0pIHtcclxuICAgICAgY29uc3Qgc2Nyb2xsVG9wID0gcGFyZW50V2luZG93LnBhZ2VZT2Zmc2V0IHx8IHBhcmVudFdpbmRvdy5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIHx8IHBhcmVudFdpbmRvdy5kb2N1bWVudC5ib2R5LnNjcm9sbFRvcCB8fCAwO1xyXG4gICAgICBjb25zdCBkaWFsb2cgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcucC1kaWFsb2cnKSBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgaWYgKGRpYWxvZykge1xyXG4gICAgICAgIGNvbnN0IHNjcm9sbEhlaWdodCA9IHBhcmVudFdpbmRvdy5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsSGVpZ2h0XHJcbiAgICAgICAgY29uc3QgbWl0YWRTY3JvbGxIZWlnaHQgPSBzY3JvbGxIZWlnaHQgLyAyO1xyXG4gICAgICAgIGNvbnN0IGluaWNpbyA9IC1taXRhZFNjcm9sbEhlaWdodDtcclxuICAgICAgICBkaWFsb2cuc3R5bGUudG9wID0gYCR7aW5pY2lvICsgNTAgKyAoc2Nyb2xsVG9wICkgfXB4YDsgICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB2YWxpZGFyUGFsYWJyYSh0ZXh0bzogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBwbGV0cmFzID0gL15bYS16QS1aXVswLTlhLXpBLVpdKiQvO1xyXG4gICAgcmV0dXJuIHBsZXRyYXMudGVzdCh0ZXh0byk7XHJcbiAgfVxyXG59Il19
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class SharedLibModule {
|
|
4
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SharedLibModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
5
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.4", ngImport: i0, type: SharedLibModule });
|
|
6
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SharedLibModule });
|
|
7
|
-
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SharedLibModule, decorators: [{
|
|
9
|
-
type: NgModule,
|
|
10
|
-
args: [{
|
|
11
|
-
declarations: [],
|
|
12
|
-
imports: [],
|
|
13
|
-
exports: []
|
|
14
|
-
}]
|
|
15
|
-
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkbGliLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zaGFyZWRsaWIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVXpDLE1BQU0sT0FBTyxlQUFlO3VHQUFmLGVBQWU7d0dBQWYsZUFBZTt3R0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQVIzQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUNiO29CQUNELE9BQU8sRUFBRSxFQUNOO29CQUNILE9BQU8sRUFBRSxFQUNSO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaGFyZWRMaWJNb2R1bGUge31cclxuIl19
|
|
@@ -1,177 +0,0 @@
|
|
|
1
|
-
export class ColorUtil {
|
|
2
|
-
/**
|
|
3
|
-
* Define las variables CSS del tema y las agrega al documento.
|
|
4
|
-
* Se definene 9 colores alternativos más el color principal.
|
|
5
|
-
* Adicional se agregan las componentes HSL del color para hacer
|
|
6
|
-
* variaciones personalizadas y ajustar la opacidad.
|
|
7
|
-
* @param color Color principal del tema
|
|
8
|
-
*/
|
|
9
|
-
static addPalleteToRoot(color) {
|
|
10
|
-
const head = (document.head || document.getElementsByTagName('head')[0]);
|
|
11
|
-
const style = document.createElement('style');
|
|
12
|
-
const { hue, saturation, lightness } = this.RGB2HSL(color);
|
|
13
|
-
const contrast = this.contrastColor(color) === 1 ? '--color-50' : '--color-900';
|
|
14
|
-
const intermediateColors = [50, 75, 85];
|
|
15
|
-
let index = 0;
|
|
16
|
-
const css = ':root { ' +
|
|
17
|
-
this._generatePalette(color)
|
|
18
|
-
.map((color, position) => {
|
|
19
|
-
if (index < 100) {
|
|
20
|
-
index = intermediateColors[position] ? intermediateColors[position] : 100;
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
index += 100;
|
|
24
|
-
}
|
|
25
|
-
return `--color-${index}: ${color};`;
|
|
26
|
-
})
|
|
27
|
-
.join('') +
|
|
28
|
-
`--color-h: ${hue};` +
|
|
29
|
-
`--color-s: ${saturation}%;` +
|
|
30
|
-
`--color-l: ${lightness}%;` +
|
|
31
|
-
`--color-contrast: var(${contrast});` +
|
|
32
|
-
'}';
|
|
33
|
-
style.type = 'text/css';
|
|
34
|
-
style.appendChild(document.createTextNode(css));
|
|
35
|
-
head.appendChild(style);
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Mezcla dos colores en proporción a un porcentaje para obtener un
|
|
39
|
-
* nuevo color.
|
|
40
|
-
* @param baseColor Color base para mezclar
|
|
41
|
-
* @param color Color que se quiere mezclar
|
|
42
|
-
* @param weight Porcentaje que se quiere mezclar. Entre 0 y 1
|
|
43
|
-
* @returns Color resultante en formato RGB (#AABBCC)
|
|
44
|
-
*/
|
|
45
|
-
static mix(baseColor, color, weight) {
|
|
46
|
-
const newColor = [];
|
|
47
|
-
baseColor = this._normalizeColor(baseColor);
|
|
48
|
-
color = this._normalizeColor(color);
|
|
49
|
-
const rgbColorBase = this._getRGBValues(baseColor);
|
|
50
|
-
const rgbColorAdjust = this._getRGBValues(color);
|
|
51
|
-
['red', 'green', 'blue'].forEach((part) => {
|
|
52
|
-
newColor.push(Math.round(rgbColorAdjust[part] + (rgbColorBase[part] - rgbColorAdjust[part]) * weight)
|
|
53
|
-
.toString(16)
|
|
54
|
-
.padStart(2, '0'));
|
|
55
|
-
});
|
|
56
|
-
return '#' + newColor.join('');
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Aclara un color proporcionalmente.
|
|
60
|
-
* @param color Color base para modificar
|
|
61
|
-
* @param percent Porcentaje de blanco que se agrega
|
|
62
|
-
* @returns Nuevo color más claro
|
|
63
|
-
*/
|
|
64
|
-
static tint(color, percent) {
|
|
65
|
-
return this.mix('#fff', color, percent);
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Oscurece un color proporcionalmente.
|
|
69
|
-
* @param color Color base para modificar
|
|
70
|
-
* @param percent Porcentaje de negro que se agrega
|
|
71
|
-
* @returns Nuevo color más oscuro
|
|
72
|
-
*/
|
|
73
|
-
static shade(color, percent) {
|
|
74
|
-
return this.mix('#000', color, percent);
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Transforma un color en RGB a su equivalente en formato HSL
|
|
78
|
-
* @param color Color en formato RGB
|
|
79
|
-
* @returns Arreglo de componentes HSL
|
|
80
|
-
*/
|
|
81
|
-
static RGB2HSL(color) {
|
|
82
|
-
color = this._normalizeColor(color);
|
|
83
|
-
let { red, green, blue } = this._getRGBValues(color);
|
|
84
|
-
red /= 255;
|
|
85
|
-
green /= 255;
|
|
86
|
-
blue /= 255;
|
|
87
|
-
const max = Math.max(red, green, blue);
|
|
88
|
-
const min = Math.min(red, green, blue);
|
|
89
|
-
let hue = 0;
|
|
90
|
-
let saturation = 0;
|
|
91
|
-
let lightness = (max + min) / 2;
|
|
92
|
-
if (max != min) {
|
|
93
|
-
const delta = max - min;
|
|
94
|
-
saturation = lightness > 0.5 ? delta / (2 - max - min) : delta / (max + min);
|
|
95
|
-
switch (max) {
|
|
96
|
-
case red:
|
|
97
|
-
hue = (green - blue) / delta + (green < blue ? 6 : 0);
|
|
98
|
-
break;
|
|
99
|
-
case green:
|
|
100
|
-
hue = (blue - red) / delta + 2;
|
|
101
|
-
break;
|
|
102
|
-
case blue:
|
|
103
|
-
hue = (red - green) / delta + 4;
|
|
104
|
-
break;
|
|
105
|
-
}
|
|
106
|
-
hue /= 6;
|
|
107
|
-
}
|
|
108
|
-
hue = Math.round(hue * 360);
|
|
109
|
-
saturation = Math.round(saturation * 100);
|
|
110
|
-
lightness = Math.round(lightness * 100);
|
|
111
|
-
return { hue, saturation, lightness };
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Retorna 1 (blanco) o 0 (negro) para contrastar el color enviado.
|
|
115
|
-
* @param color Color del cual se quiere buscar el contraste
|
|
116
|
-
* @returns Blanco o Negro en RGB
|
|
117
|
-
*/
|
|
118
|
-
static contrastColor(color) {
|
|
119
|
-
color = this._normalizeColor(color);
|
|
120
|
-
const { red, green, blue } = this._getRGBValues(color);
|
|
121
|
-
return red * 0.299 + green * 0.587 + blue * 0.114 > 186 ? 0 : 1;
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* Valida que la cadena de texto represente un color RGB válido y
|
|
125
|
-
* retorna las componentes del color en formato de seis caracteres.
|
|
126
|
-
* @param color Color en formato RGB. Ejemplo: (#000)
|
|
127
|
-
* @returns String del color sin el simbolo #
|
|
128
|
-
*/
|
|
129
|
-
static _normalizeColor(color) {
|
|
130
|
-
const rgbColor = color.match(/^#([0-9A-F]{3}|[0-9A-F]{6})$/i);
|
|
131
|
-
if (!rgbColor) {
|
|
132
|
-
throw new Error(`${color} is not a RGB color.`);
|
|
133
|
-
}
|
|
134
|
-
const colorParts = rgbColor[1].toLowerCase();
|
|
135
|
-
if (colorParts.length === 3) {
|
|
136
|
-
return colorParts.replace(/(.)/g, '$1$1');
|
|
137
|
-
}
|
|
138
|
-
return colorParts;
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Transforma un color Hexadecimal a Decimal en sus respectivas
|
|
142
|
-
* comopnenetes.
|
|
143
|
-
* @param color Color en Hecadecimal para descomponer
|
|
144
|
-
* @returns Un objeto {red, green, blue} en decimal
|
|
145
|
-
*/
|
|
146
|
-
static _getRGBValues(color) {
|
|
147
|
-
const red = parseInt(color.slice(0, 2), 16);
|
|
148
|
-
const green = parseInt(color.slice(2, 4), 16);
|
|
149
|
-
const blue = parseInt(color.slice(4, 6), 16);
|
|
150
|
-
return { red, green, blue };
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* Define una paleta de 10 colores, 5 más claros y 4 más oscuros basados
|
|
154
|
-
* en el color principal. El color principal será el color medio de la paleta
|
|
155
|
-
* @param color Color base para definir los demás colores
|
|
156
|
-
* @returns Arreglo de todos los colores de la paleta
|
|
157
|
-
*/
|
|
158
|
-
static _generatePalette(color) {
|
|
159
|
-
const palette = [];
|
|
160
|
-
for (let i = 0; i < 5; i++) {
|
|
161
|
-
if (i === 0) {
|
|
162
|
-
palette.push(this.tint(color, (5 - i) * 0.19));
|
|
163
|
-
palette.push(this.tint(color, (4.8 - i) * 0.19));
|
|
164
|
-
palette.push(this.tint(color, (4.55 - i) * 0.19));
|
|
165
|
-
}
|
|
166
|
-
else {
|
|
167
|
-
palette.push(this.tint(color, (5 - i) * 0.19));
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
palette.push(color);
|
|
171
|
-
for (let i = 1; i < 5; i++) {
|
|
172
|
-
palette.push(this.shade(color, i * 0.15));
|
|
173
|
-
}
|
|
174
|
-
return palette;
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS91dGlsaWRhZGVzL2NvbG9yLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFNBQVM7SUFDcEI7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEtBQWE7UUFDbkMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBb0IsQ0FBQztRQUM1RixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBcUIsQ0FBQztRQUNsRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztRQUVoRixNQUFNLGtCQUFrQixHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUN2QyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZCxNQUFNLEdBQUcsR0FDUCxVQUFVO1lBQ1YsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQztpQkFDekIsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxFQUFFO2dCQUN2QixJQUFHLEtBQUssR0FBRyxHQUFHLEVBQUMsQ0FBQztvQkFDZCxLQUFLLEdBQUcsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFH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O1FBQ0gsQ0FBQztRQUNELE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzNCLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBDb2xvclV0aWwge1xyXG4gIC8qKlxyXG4gICAqIERlZmluZSBsYXMgdmFyaWFibGVzIENTUyBkZWwgdGVtYSB5IGxhcyBhZ3JlZ2EgYWwgZG9jdW1lbnRvLlxyXG4gICAqIFNlIGRlZmluZW5lIDkgY29sb3JlcyBhbHRlcm5hdGl2b3MgbcOhcyBlbCBjb2xvciBwcmluY2lwYWwuXHJcbiAgICogQWRpY2lvbmFsIHNlIGFncmVnYW4gbGFzIGNvbXBvbmVudGVzIEhTTCBkZWwgY29sb3IgcGFyYSBoYWNlclxyXG4gICAqIHZhcmlhY2lvbmVzIHBlcnNvbmFsaXphZGFzIHkgYWp1c3RhciBsYSBvcGFjaWRhZC5cclxuICAgKiBAcGFyYW0gY29sb3IgQ29sb3IgcHJpbmNpcGFsIGRlbCB0ZW1hXHJcbiAgICovXHJcbiAgc3RhdGljIGFkZFBhbGxldGVUb1Jvb3QoY29sb3I6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgY29uc3QgaGVhZCA9IChkb2N1bWVudC5oZWFkIHx8IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF0pIGFzIEhUTUxIZWFkRWxlbWVudDtcclxuICAgIGNvbnN0IHN0eWxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKSBhcyBIVE1MU3R5bGVFbGVtZW50O1xyXG4gICAgY29uc3QgeyBodWUsIHNhdHVyYXRpb24sIGxpZ2h0bmVzcyB9ID0gdGhpcy5SR0IySFNMKGNvbG9yKTtcclxuICAgIGNvbnN0IGNvbnRyYXN0ID0gdGhpcy5jb250cmFzdENvbG9yKGNvbG9yKSA9PT0gMSA/ICctLWNvbG9yLTUwJyA6ICctLWNvbG9yLTkwMCc7XHJcblxyXG4gICAgY29uc3QgaW50ZXJtZWRpYXRlQ29sb3JzID0gWzUwLCA3NSwgODVdXHJcbiAgICBsZXQgaW5kZXggPSAwO1xyXG4gICAgY29uc3QgY3NzID1cclxuICAgICAgJzpyb290IHsgJyArXHJcbiAgICAgIHRoaXMuX2dlbmVyYXRlUGFsZXR0ZShjb2xvcilcclxuICAgICAgICAubWFwKChjb2xvciwgcG9zaXRpb24pID0+IHtcclxuICAgICAgICAgIGlmKGluZGV4IDwgMTAwKXtcclxuICAgICAgICAgICAgaW5kZXggPSBpbnRlcm1lZGlhdGVDb2xvcnNbcG9zaXRpb25dID8gaW50ZXJtZWRpYXRlQ29sb3JzW3Bvc2l0aW9uXSA6IDEwMDtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGluZGV4ICs9IDEwMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiBgLS1jb2xvci0ke2luZGV4fTogJHtjb2xvcn07YDtcclxuICAgICAgICB9KVxyXG4gICAgICAgIC5qb2luKCcnKSArXHJcbiAgICAgIGAtLWNvbG9yLWg6ICR7aHVlfTtgICtcclxuICAgICAgYC0tY29sb3ItczogJHtzYXR1cmF0aW9ufSU7YCArXHJcbiAgICAgIGAtLWNvbG9yLWw6ICR7bGlnaHRuZXNzfSU7YCArXHJcbiAgICAgIGAtLWNvbG9yLWNvbnRyYXN0OiB2YXIoJHtjb250cmFzdH0pO2AgK1xyXG4gICAgICAnfSc7XHJcbiAgICBzdHlsZS50eXBlID0gJ3RleHQvY3NzJztcclxuICAgIHN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzcykpO1xyXG4gICAgaGVhZC5hcHBlbmRDaGlsZChzdHlsZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXpjbGEgZG9zIGNvbG9yZXMgZW4gcHJvcG9yY2nDs24gYSB1biBwb3JjZW50YWplIHBhcmEgb2J0ZW5lciB1blxyXG4gICAqIG51ZXZvIGNvbG9yLlxyXG4gICAqIEBwYXJhbSBiYXNlQ29sb3IgQ29sb3IgYmFzZSBwYXJhIG1lemNsYXJcclxuICAgKiBAcGFyYW0gY29sb3IgQ29sb3IgcXVlIHNlIHF1aWVyZSBtZXpjbGFyXHJcbiAgICogQHBhcmFtIHdlaWdodCBQb3JjZW50YWplIHF1ZSBzZSBxdWllcmUgbWV6Y2xhci4gRW50cmUgMCB5IDFcclxuICAgKiBAcmV0dXJucyBDb2xvciByZXN1bHRhbnRlIGVuIGZvcm1hdG8gUkdCICgjQUFCQkNDKVxyXG4gICAqL1xyXG4gIHN0YXRpYyBtaXgoYmFzZUNvbG9yOiBzdHJpbmcsIGNvbG9yOiBzdHJpbmcsIHdlaWdodDogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IG5ld0NvbG9yID0gW107XHJcbiAgICBiYXNlQ29sb3IgPSB0aGlzLl9ub3JtYWxpemVDb2xvcihiYXNlQ29sb3IpO1xyXG4gICAgY29sb3IgPSB0aGlzLl9ub3JtYWxpemVDb2xvcihjb2xvcik7XHJcblxyXG4gICAgY29uc3QgcmdiQ29sb3JCYXNlID0gdGhpcy5fZ2V0UkdCVmFsdWVzKGJhc2VDb2xvcik7XHJcbiAgICBjb25zdCByZ2JDb2xvckFkanVzdCA9IHRoaXMuX2dldFJHQlZhbHVlcyhjb2xvcik7XHJcblxyXG4gICAgWydyZWQnLCAnZ3JlZW4nLCAnYmx1ZSddLmZvckVhY2goKHBhcnQpID0+IHtcclxuICAgICAgbmV3Q29sb3IucHVzaChcclxuICAgICAgICBNYXRoLnJvdW5kKHJnYkNvbG9yQWRqdXN0W3BhcnRdICsgKHJnYkNvbG9yQmFzZVtwYXJ0XSAtIHJnYkNvbG9yQWRqdXN0W3BhcnRdKSAqIHdlaWdodClcclxuICAgICAgICAgIC50b1N0cmluZygxNilcclxuICAgICAgICAgIC5wYWRTdGFydCgyLCAnMCcpXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gJyMnICsgbmV3Q29sb3Iuam9pbignJyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBY2xhcmEgdW4gY29sb3IgcHJvcG9yY2lvbmFsbWVudGUuXHJcbiAgICogQHBhcmFtIGNvbG9yIENvbG9yIGJhc2UgcGFyYSBtb2RpZmljYXJcclxuICAgKiBAcGFyYW0gcGVyY2VudCBQb3JjZW50YWplIGRlIGJsYW5jbyBxdWUgc2UgYWdyZWdhXHJcbiAgICogQHJldHVybnMgTnVldm8gY29sb3IgbcOhcyBjbGFyb1xyXG4gICAqL1xyXG4gIHN0YXRpYyB0aW50KGNvbG9yOiBzdHJpbmcsIHBlcmNlbnQ6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5taXgoJyNmZmYnLCBjb2xvciwgcGVyY2VudCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPc2N1cmVjZSB1biBjb2xvciBwcm9wb3JjaW9uYWxtZW50ZS5cclxuICAgKiBAcGFyYW0gY29sb3IgQ29sb3IgYmFzZSBwYXJhIG1vZGlmaWNhclxyXG4gICAqIEBwYXJhbSBwZXJjZW50ICBQb3JjZW50YWplIGRlIG5lZ3JvIHF1ZSBzZSBhZ3JlZ2FcclxuICAgKiBAcmV0dXJucyBOdWV2byBjb2xvciBtw6FzIG9zY3Vyb1xyXG4gICAqL1xyXG4gIHN0YXRpYyBzaGFkZShjb2xvcjogc3RyaW5nLCBwZXJjZW50OiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMubWl4KCcjMDAwJywgY29sb3IsIHBlcmNlbnQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVHJhbnNmb3JtYSB1biBjb2xvciBlbiBSR0IgYSBzdSBlcXVpdmFsZW50ZSBlbiBmb3JtYXRvIEhTTFxyXG4gICAqIEBwYXJhbSBjb2xvciBDb2xvciBlbiBmb3JtYXRvIFJHQlxyXG4gICAqIEByZXR1cm5zIEFycmVnbG8gZGUgY29tcG9uZW50ZXMgSFNMXHJcbiAgICovXHJcbiAgc3RhdGljIFJHQjJIU0woY29sb3I6IHN0cmluZyk6IHsgaHVlOiBudW1iZXI7IHNhdHVyYXRpb246IG51bWJlcjsgbGlnaHRuZXNzOiBudW1iZXIgfSB7XHJcbiAgICBjb2xvciA9IHRoaXMuX25vcm1hbGl6ZUNvbG9yKGNvbG9yKTtcclxuXHJcbiAgICBsZXQgeyByZWQsIGdyZWVuLCBibHVlIH0gPSB0aGlzLl9nZXRSR0JWYWx1ZXMoY29sb3IpO1xyXG4gICAgcmVkIC89IDI1NTtcclxuICAgIGdyZWVuIC89IDI1NTtcclxuICAgIGJsdWUgLz0gMjU1O1xyXG5cclxuICAgIGNvbnN0IG1heCA9IE1hdGgubWF4KHJlZCwgZ3JlZW4sIGJsdWUpO1xyXG4gICAgY29uc3QgbWluID0gTWF0aC5taW4ocmVkLCBncmVlbiwgYmx1ZSk7XHJcblxyXG4gICAgbGV0IGh1ZSA9IDA7XHJcbiAgICBsZXQgc2F0dXJhdGlvbiA9IDA7XHJcbiAgICBsZXQgbGlnaHRuZXNzID0gKG1heCArIG1pbikgLyAyO1xyXG5cclxuICAgIGlmIChtYXggIT0gbWluKSB7XHJcbiAgICAgIGNvbnN0IGRlbHRhID0gbWF4IC0gbWluO1xyXG4gICAgICBzYXR1cmF0aW9uID0gbGlnaHRuZXNzID4gMC41ID8gZGVsdGEgLyAoMiAtIG1heCAtIG1pbikgOiBkZWx0YSAvIChtYXggKyBtaW4pO1xyXG4gICAgICBzd2l0Y2ggKG1heCkge1xyXG4gICAgICAgIGNhc2UgcmVkOlxyXG4gICAgICAgICAgaHVlID0gKGdyZWVuIC0gYmx1ZSkgLyBkZWx0YSArIChncmVlbiA8IGJsdWUgPyA2IDogMCk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIGdyZWVuOlxyXG4gICAgICAgICAgaHVlID0gKGJsdWUgLSByZWQpIC8gZGVsdGEgKyAyO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBibHVlOlxyXG4gICAgICAgICAgaHVlID0gKHJlZCAtIGdyZWVuKSAvIGRlbHRhICsgNDtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICAgIGh1ZSAvPSA2O1xyXG4gICAgfVxyXG5cclxuICAgIGh1ZSA9IE1hdGgucm91bmQoaHVlICogMzYwKTtcclxuICAgIHNhdHVyYXRpb24gPSBNYXRoLnJvdW5kKHNhdHVyYXRpb24gKiAxMDApO1xyXG4gICAgbGlnaHRuZXNzID0gTWF0aC5yb3VuZChsaWdodG5lc3MgKiAxMDApO1xyXG5cclxuICAgIHJldHVybiB7IGh1ZSwgc2F0dXJhdGlvbiwgbGlnaHRuZXNzIH07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXRvcm5hIDEgKGJsYW5jbykgbyAwIChuZWdybykgcGFyYSBjb250cmFzdGFyIGVsIGNvbG9yIGVudmlhZG8uXHJcbiAgICogQHBhcmFtIGNvbG9yIENvbG9yIGRlbCBjdWFsIHNlIHF1aWVyZSBidXNjYXIgZWwgY29udHJhc3RlXHJcbiAgICogQHJldHVybnMgQmxhbmNvIG8gTmVncm8gZW4gUkdCXHJcbiAgICovXHJcbiAgc3RhdGljIGNvbnRyYXN0Q29sb3IoY29sb3I6IHN0cmluZyk6IG51bWJlciB7XHJcbiAgICBjb2xvciA9IHRoaXMuX25vcm1hbGl6ZUNvbG9yKGNvbG9yKTtcclxuICAgIGNvbnN0IHsgcmVkLCBncmVlbiwgYmx1ZSB9ID0gdGhpcy5fZ2V0UkdCVmFsdWVzKGNvbG9yKTtcclxuICAgIHJldHVybiByZWQgKiAwLjI5OSArIGdyZWVuICogMC41ODcgKyBibHVlICogMC4xMTQgPiAxODYgPyAwIDogMTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFZhbGlkYSBxdWUgbGEgY2FkZW5hIGRlIHRleHRvIHJlcHJlc2VudGUgdW4gY29sb3IgUkdCIHbDoWxpZG8geVxyXG4gICAqIHJldG9ybmEgbGFzIGNvbXBvbmVudGVzIGRlbCBjb2xvciBlbiBmb3JtYXRvIGRlIHNlaXMgY2FyYWN0ZXJlcy5cclxuICAgKiBAcGFyYW0gY29sb3IgQ29sb3IgZW4gZm9ybWF0byBSR0IuIEVqZW1wbG86ICgjMDAwKVxyXG4gICAqIEByZXR1cm5zIFN0cmluZyBkZWwgY29sb3Igc2luIGVsIHNpbWJvbG8gI1xyXG4gICAqL1xyXG4gIHByaXZhdGUgc3RhdGljIF9ub3JtYWxpemVDb2xvcihjb2xvcjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHJnYkNvbG9yID0gY29sb3IubWF0Y2goL14jKFswLTlBLUZdezN9fFswLTlBLUZdezZ9KSQvaSk7XHJcbiAgICBpZiAoIXJnYkNvbG9yKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHtjb2xvcn0gaXMgbm90IGEgUkdCIGNvbG9yLmApO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGNvbG9yUGFydHMgPSByZ2JDb2xvclsxXS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgaWYgKGNvbG9yUGFydHMubGVuZ3RoID09PSAzKSB7XHJcbiAgICAgIHJldHVybiBjb2xvclBhcnRzLnJlcGxhY2UoLyguKS9nLCAnJDEkMScpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjb2xvclBhcnRzO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVHJhbnNmb3JtYSB1biBjb2xvciBIZXhhZGVjaW1hbCBhIERlY2ltYWwgZW4gc3VzIHJlc3BlY3RpdmFzXHJcbiAgICogY29tb3BuZW5ldGVzLlxyXG4gICAqIEBwYXJhbSBjb2xvciBDb2xvciBlbiBIZWNhZGVjaW1hbCBwYXJhIGRlc2NvbXBvbmVyXHJcbiAgICogQHJldHVybnMgVW4gb2JqZXRvIHtyZWQsIGdyZWVuLCBibHVlfSBlbiBkZWNpbWFsXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzdGF0aWMgX2dldFJHQlZhbHVlcyhjb2xvcjogc3RyaW5nKTogeyByZWQ6IG51bWJlcjsgZ3JlZW46IG51bWJlcjsgYmx1ZTogbnVtYmVyIH0ge1xyXG4gICAgY29uc3QgcmVkID0gcGFyc2VJbnQoY29sb3Iuc2xpY2UoMCwgMiksIDE2KTtcclxuICAgIGNvbnN0IGdyZWVuID0gcGFyc2VJbnQoY29sb3Iuc2xpY2UoMiwgNCksIDE2KTtcclxuICAgIGNvbnN0IGJsdWUgPSBwYXJzZUludChjb2xvci5zbGljZSg0LCA2KSwgMTYpO1xyXG4gICAgcmV0dXJuIHsgcmVkLCBncmVlbiwgYmx1ZSB9O1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVmaW5lIHVuYSBwYWxldGEgZGUgMTAgY29sb3JlcywgNSBtw6FzIGNsYXJvcyB5IDQgbcOhcyBvc2N1cm9zIGJhc2Fkb3NcclxuICAgKiBlbiBlbCBjb2xvciBwcmluY2lwYWwuIEVsIGNvbG9yIHByaW5jaXBhbCBzZXLDoSBlbCBjb2xvciBtZWRpbyBkZSBsYSBwYWxldGFcclxuICAgKiBAcGFyYW0gY29sb3IgQ29sb3IgYmFzZSBwYXJhIGRlZmluaXIgbG9zIGRlbcOhcyBjb2xvcmVzXHJcbiAgICogQHJldHVybnMgQXJyZWdsbyBkZSB0b2RvcyBsb3MgY29sb3JlcyBkZSBsYSBwYWxldGFcclxuICAgKi9cclxuICBwcml2YXRlIHN0YXRpYyBfZ2VuZXJhdGVQYWxldHRlKGNvbG9yOiBzdHJpbmcpOiBzdHJpbmdbXSB7XHJcbiAgICBjb25zdCBwYWxldHRlID0gW107XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IDU7IGkrKykge1xyXG4gICAgICBpZihpID09PSAwKSB7XHJcbiAgICAgICAgcGFsZXR0ZS5wdXNoKHRoaXMudGludChjb2xvciwgKDUgLSBpKSAqIDAuMTkpKTtcclxuICAgICAgICBwYWxldHRlLnB1c2godGhpcy50aW50KGNvbG9yLCAoNC44IC0gaSkgKiAwLjE5KSk7XHJcbiAgICAgICAgcGFsZXR0ZS5wdXNoKHRoaXMudGludChjb2xvciwgKDQuNTUgLSBpKSAqIDAuMTkpKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBwYWxldHRlLnB1c2godGhpcy50aW50KGNvbG9yLCAoNSAtIGkpICogMC4xOSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBwYWxldHRlLnB1c2goY29sb3IpO1xyXG4gICAgZm9yIChsZXQgaSA9IDE7IGkgPCA1OyBpKyspIHtcclxuICAgICAgcGFsZXR0ZS5wdXNoKHRoaXMuc2hhZGUoY29sb3IsIGkgKiAwLjE1KSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcGFsZXR0ZTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudWNoYW5nZWV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9sYXlvdXQvYXBpL21lbnVjaGFuZ2VldmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBNZW51Q2hhbmdlRXZlbnQge1xyXG4gICAga2V5OiBzdHJpbmc7XHJcbiAgICByb3V0ZUV2ZW50PzogYm9vbGVhbjtcclxufSJdfQ==
|