general-library-union 2.7.3 → 2.7.4
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/angular.json +143 -0
- package/karma.conf.js +44 -0
- package/ng-package.json +21 -0
- package/package.json +73 -62
- package/{public-api.d.ts → public-api.ts} +201 -159
- 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 +200 -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} +13 -7
- 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 +78 -0
- package/src/app/core/servicios/error-interceptor.service.ts +208 -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/loading-interceptor.ts +37 -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/spinner-service.ts +18 -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 +114 -0
- package/src/app/core/servicios/utils.service.ts +362 -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} +4 -4
- 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} +13 -10
- 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} +7 -6
- 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} +25 -20
- 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} +7 -6
- package/src/app/seguridad/modelos/{EjecucionReporteDataModel.d.ts → EjecucionReporteDataModel.ts} +21 -20
- 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} +9 -6
- 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} +9 -6
- package/src/app/seguridad/modelos/FuenteCampoAtributoModel.ts +21 -0
- package/src/app/seguridad/modelos/{FuenteCampoModel.d.ts → FuenteCampoModel.ts} +20 -16
- 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} +55 -36
- 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} +61 -47
- 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} +9 -6
- 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} +4 -4
- 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} +5 -4
- package/src/app/seguridad/modelos/ModulosModel.ts +17 -0
- package/src/app/seguridad/modelos/{ObjetoReporteModel.d.ts → ObjetoReporteModel.ts} +6 -5
- 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} +20 -15
- 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} +21 -19
- package/src/app/seguridad/modelos/{ReporteFuenteModel.d.ts → ReporteFuenteModel.ts} +141 -87
- 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} +41 -37
- 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} +60 -49
- 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/servicios/tarea.service.ts +71 -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 +101 -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 +714 -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 +519 -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/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 +12 -0
- package/src/polyfills.ts +53 -0
- package/src/styles/primeng/sass/overrides/_theme_styles_dark.scss +0 -4
- 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 -192
- 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 -64
- package/esm2022/src/app/core/servicios/error-interceptor.service.mjs +0 -214
- 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 -120
- package/esm2022/src/app/core/servicios/utils.service.mjs +0 -335
- 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 -103
- 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 -515
- 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 -15760
- 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 -34
- 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 -11
- 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 -48
- 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 -35
- 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,64 +0,0 @@
|
|
|
1
|
-
import jsPDF from "jspdf";
|
|
2
|
-
import "jspdf-autotable";
|
|
3
|
-
import * as FileSaver from 'file-saver';
|
|
4
|
-
import { Workbook } from 'exceljs';
|
|
5
|
-
export class DataExporter {
|
|
6
|
-
constructor() { }
|
|
7
|
-
exportPdf(lista, exportColumns, nombreArchivo) {
|
|
8
|
-
console.log(lista);
|
|
9
|
-
const doc = new jsPDF('p', 'pt');
|
|
10
|
-
doc['autoTable'](exportColumns, lista);
|
|
11
|
-
doc.save(nombreArchivo + ".pdf");
|
|
12
|
-
}
|
|
13
|
-
async exportExcel(lista, nombreArchivo) {
|
|
14
|
-
const workbook = new Workbook();
|
|
15
|
-
const worksheet = workbook.addWorksheet('data');
|
|
16
|
-
worksheet.columns = Object.keys(lista[0]).map(key => ({ header: key, key }));
|
|
17
|
-
lista.forEach(item => {
|
|
18
|
-
worksheet.addRow(item);
|
|
19
|
-
});
|
|
20
|
-
const buffer = await workbook.xlsx.writeBuffer();
|
|
21
|
-
this.saveAsExcelFile(buffer, nombreArchivo);
|
|
22
|
-
}
|
|
23
|
-
async exportExcelColumnas(lista, nombreArchivo, columnas) {
|
|
24
|
-
const workbook = new Workbook();
|
|
25
|
-
const worksheet = workbook.addWorksheet('data');
|
|
26
|
-
worksheet.columns = columnas.map(col => ({ header: col, key: col }));
|
|
27
|
-
lista.forEach(item => {
|
|
28
|
-
const filteredItem = {};
|
|
29
|
-
columnas.forEach(col => {
|
|
30
|
-
filteredItem[col] = item[col];
|
|
31
|
-
});
|
|
32
|
-
worksheet.addRow(filteredItem);
|
|
33
|
-
});
|
|
34
|
-
const buffer = await workbook.xlsx.writeBuffer();
|
|
35
|
-
this.saveAsExcelFile(buffer, nombreArchivo);
|
|
36
|
-
}
|
|
37
|
-
saveAsExcelFile(buffer, fileName) {
|
|
38
|
-
const EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';
|
|
39
|
-
const EXCEL_EXTENSION = '.xlsx';
|
|
40
|
-
const data = new Blob([buffer], { type: EXCEL_TYPE });
|
|
41
|
-
FileSaver.saveAs(data, `${fileName}_export_${new Date().getTime()}${EXCEL_EXTENSION}`);
|
|
42
|
-
}
|
|
43
|
-
exportCSV(lista, columnas, nombreArchivo) {
|
|
44
|
-
const listaParaExportar = lista;
|
|
45
|
-
const csvContent = this.convertirAFormatoCSV(listaParaExportar, columnas);
|
|
46
|
-
this.descargarArchivoCSV(csvContent, nombreArchivo);
|
|
47
|
-
}
|
|
48
|
-
convertirAFormatoCSV(data, columns) {
|
|
49
|
-
const csvHeader = columns.join(',') + '\n';
|
|
50
|
-
const csvRows = data.map(item => columns.map(col => item[col]).join(',')).join('\n');
|
|
51
|
-
return csvHeader + csvRows + '\n';
|
|
52
|
-
}
|
|
53
|
-
descargarArchivoCSV(csvContent, nombreArchivo) {
|
|
54
|
-
const blob = new Blob([csvContent], { type: 'text/csv;charset=utf-8;' });
|
|
55
|
-
const url = window.URL.createObjectURL(blob);
|
|
56
|
-
const link = document.createElement('a');
|
|
57
|
-
link.href = url;
|
|
58
|
-
link.setAttribute('download', `${nombreArchivo}.csv`);
|
|
59
|
-
document.body.appendChild(link);
|
|
60
|
-
link.click();
|
|
61
|
-
document.body.removeChild(link);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1leHBvcnRlci10YWJsZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zZXJ2aWNpb3MvZGF0YS1leHBvcnRlci10YWJsZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDMUIsT0FBTyxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEtBQUssU0FBUyxNQUFNLFlBQVksQ0FBQztBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRW5DLE1BQU0sT0FBTyxZQUFZO0lBRXJCLGdCQUFnQixDQUFDO0lBRWpCLFNBQVMsQ0FBQyxLQUFZLEVBQUUsYUFBb0IsRUFBRSxhQUFxQjtRQUMvRCxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25CLE1BQU0sR0FBRyxHQUFHLElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNqQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQVksRUFBRSxhQUFxQjtRQUNqRCxNQUFNLFFBQVEsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFaEQsU0FBUyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU3RSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pCLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLE1BQU0sR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDakQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxLQUFZLEVBQUUsYUFBcUIsRUFBRSxRQUFrQjtRQUM3RSxNQUFNLFFBQVEsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFaEQsU0FBUyxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUVyRSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pCLE1BQU0sWUFBWSxHQUFRLEVBQUUsQ0FBQztZQUM3QixRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNuQixZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xDLENBQUMsQ0FBQyxDQUFDO1lBQ0gsU0FBUyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNuQyxDQUFDLENBQUMsQ0FBQztRQUVILE1BQU0sTUFBTSxHQUFHLE1BQU0sUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqRCxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsZUFBZSxDQUFDLE1BQVcsRUFBRSxRQUFnQjtRQUN6QyxNQUFNLFVBQVUsR0FBRyxpRkFBaUYsQ0FBQztRQUNyRyxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUM7UUFDaEMsTUFBTSxJQUFJLEdBQVMsSUFBSSxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQzVELFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsUUFBUSxXQUFXLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUcsZUFBZSxFQUFFLENBQUMsQ0FBQztJQUMzRixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQVksRUFBRSxRQUFrQixFQUFFLGFBQXFCO1FBQzdELE1BQU0saUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxpQkFBaUIsRUFBRSxRQUFRLENBQUUsQ0FBQztRQUMzRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxJQUFXLEVBQUUsT0FBaUI7UUFDL0MsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDM0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckYsT0FBTyxTQUFTLEdBQUcsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QyxDQUFDO0lBRUQsbUJBQW1CLENBQUMsVUFBZSxFQUFFLGFBQXFCO1FBQ3RELE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUseUJBQXlCLEVBQUUsQ0FBQyxDQUFDO1FBQ3pFLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdDLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7UUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsR0FBRyxhQUFhLE1BQU0sQ0FBQyxDQUFDO1FBQ3RELFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNiLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBqc1BERiBmcm9tIFwianNwZGZcIjtcclxuaW1wb3J0IFwianNwZGYtYXV0b3RhYmxlXCI7XHJcbmltcG9ydCAqIGFzIEZpbGVTYXZlciBmcm9tICdmaWxlLXNhdmVyJztcclxuaW1wb3J0IHsgV29ya2Jvb2sgfSBmcm9tICdleGNlbGpzJztcclxuXHJcbmV4cG9ydCBjbGFzcyBEYXRhRXhwb3J0ZXIge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gICAgZXhwb3J0UGRmKGxpc3RhOiBhbnlbXSwgZXhwb3J0Q29sdW1uczogYW55W10sIG5vbWJyZUFyY2hpdm86IHN0cmluZykge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKGxpc3RhKTtcclxuICAgICAgICBjb25zdCBkb2MgPSBuZXcganNQREYoJ3AnLCAncHQnKTtcclxuICAgICAgICBkb2NbJ2F1dG9UYWJsZSddKGV4cG9ydENvbHVtbnMsIGxpc3RhKTtcclxuICAgICAgICBkb2Muc2F2ZShub21icmVBcmNoaXZvICsgXCIucGRmXCIpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGV4cG9ydEV4Y2VsKGxpc3RhOiBhbnlbXSwgbm9tYnJlQXJjaGl2bzogc3RyaW5nKSB7XHJcbiAgICAgICAgY29uc3Qgd29ya2Jvb2sgPSBuZXcgV29ya2Jvb2soKTtcclxuICAgICAgICBjb25zdCB3b3Jrc2hlZXQgPSB3b3JrYm9vay5hZGRXb3Jrc2hlZXQoJ2RhdGEnKTtcclxuXHJcbiAgICAgICAgd29ya3NoZWV0LmNvbHVtbnMgPSBPYmplY3Qua2V5cyhsaXN0YVswXSkubWFwKGtleSA9PiAoeyBoZWFkZXI6IGtleSwga2V5IH0pKTtcclxuXHJcbiAgICAgICAgbGlzdGEuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgICAgICAgd29ya3NoZWV0LmFkZFJvdyhpdGVtKTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgY29uc3QgYnVmZmVyID0gYXdhaXQgd29ya2Jvb2sueGxzeC53cml0ZUJ1ZmZlcigpO1xyXG4gICAgICAgIHRoaXMuc2F2ZUFzRXhjZWxGaWxlKGJ1ZmZlciwgbm9tYnJlQXJjaGl2byk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgZXhwb3J0RXhjZWxDb2x1bW5hcyhsaXN0YTogYW55W10sIG5vbWJyZUFyY2hpdm86IHN0cmluZywgY29sdW1uYXM6IHN0cmluZ1tdKSB7XHJcbiAgICAgICAgY29uc3Qgd29ya2Jvb2sgPSBuZXcgV29ya2Jvb2soKTtcclxuICAgICAgICBjb25zdCB3b3Jrc2hlZXQgPSB3b3JrYm9vay5hZGRXb3Jrc2hlZXQoJ2RhdGEnKTtcclxuXHJcbiAgICAgICAgd29ya3NoZWV0LmNvbHVtbnMgPSBjb2x1bW5hcy5tYXAoY29sID0+ICh7IGhlYWRlcjogY29sLCBrZXk6IGNvbCB9KSk7XHJcblxyXG4gICAgICAgIGxpc3RhLmZvckVhY2goaXRlbSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZpbHRlcmVkSXRlbTogYW55ID0ge307XHJcbiAgICAgICAgICAgIGNvbHVtbmFzLmZvckVhY2goY29sID0+IHtcclxuICAgICAgICAgICAgICAgIGZpbHRlcmVkSXRlbVtjb2xdID0gaXRlbVtjb2xdO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgd29ya3NoZWV0LmFkZFJvdyhmaWx0ZXJlZEl0ZW0pO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBjb25zdCBidWZmZXIgPSBhd2FpdCB3b3JrYm9vay54bHN4LndyaXRlQnVmZmVyKCk7XHJcbiAgICAgICAgdGhpcy5zYXZlQXNFeGNlbEZpbGUoYnVmZmVyLCBub21icmVBcmNoaXZvKTtcclxuICAgIH1cclxuXHJcbiAgICBzYXZlQXNFeGNlbEZpbGUoYnVmZmVyOiBhbnksIGZpbGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBFWENFTF9UWVBFID0gJ2FwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0O2NoYXJzZXQ9VVRGLTgnO1xyXG4gICAgICAgIGNvbnN0IEVYQ0VMX0VYVEVOU0lPTiA9ICcueGxzeCc7XHJcbiAgICAgICAgY29uc3QgZGF0YTogQmxvYiA9IG5ldyBCbG9iKFtidWZmZXJdLCB7IHR5cGU6IEVYQ0VMX1RZUEUgfSk7XHJcbiAgICAgICAgRmlsZVNhdmVyLnNhdmVBcyhkYXRhLCBgJHtmaWxlTmFtZX1fZXhwb3J0XyR7bmV3IERhdGUoKS5nZXRUaW1lKCl9JHtFWENFTF9FWFRFTlNJT059YCk7XHJcbiAgICB9XHJcblxyXG4gICAgZXhwb3J0Q1NWKGxpc3RhOiBhbnlbXSwgY29sdW1uYXM6IHN0cmluZ1tdLCBub21icmVBcmNoaXZvOiBzdHJpbmcpIHtcclxuICAgICAgICBjb25zdCBsaXN0YVBhcmFFeHBvcnRhciA9IGxpc3RhO1xyXG4gICAgICAgIGNvbnN0IGNzdkNvbnRlbnQgPSB0aGlzLmNvbnZlcnRpckFGb3JtYXRvQ1NWKGxpc3RhUGFyYUV4cG9ydGFyLCBjb2x1bW5hcyApO1xyXG4gICAgICAgIHRoaXMuZGVzY2FyZ2FyQXJjaGl2b0NTVihjc3ZDb250ZW50LCBub21icmVBcmNoaXZvKTtcclxuICAgIH1cclxuXHJcbiAgICBjb252ZXJ0aXJBRm9ybWF0b0NTVihkYXRhOiBhbnlbXSwgY29sdW1uczogc3RyaW5nW10pIHtcclxuICAgICAgICBjb25zdCBjc3ZIZWFkZXIgPSBjb2x1bW5zLmpvaW4oJywnKSArICdcXG4nO1xyXG4gICAgICAgIGNvbnN0IGNzdlJvd3MgPSBkYXRhLm1hcChpdGVtID0+IGNvbHVtbnMubWFwKGNvbCA9PiBpdGVtW2NvbF0pLmpvaW4oJywnKSkuam9pbignXFxuJyk7XHJcbiAgICAgICAgcmV0dXJuIGNzdkhlYWRlciArIGNzdlJvd3MgKyAnXFxuJztcclxuICAgIH1cclxuXHJcbiAgICBkZXNjYXJnYXJBcmNoaXZvQ1NWKGNzdkNvbnRlbnQ6IGFueSwgbm9tYnJlQXJjaGl2bzogc3RyaW5nKSB7XHJcbiAgICAgICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtjc3ZDb250ZW50XSwgeyB0eXBlOiAndGV4dC9jc3Y7Y2hhcnNldD11dGYtODsnIH0pO1xyXG4gICAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xyXG4gICAgICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcbiAgICAgICAgbGluay5ocmVmID0gdXJsO1xyXG4gICAgICAgIGxpbmsuc2V0QXR0cmlidXRlKCdkb3dubG9hZCcsIGAke25vbWJyZUFyY2hpdm99LmNzdmApO1xyXG4gICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobGluayk7XHJcbiAgICAgICAgbGluay5jbGljaygpO1xyXG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQobGluayk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,214 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import Swal from 'sweetalert2';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./utils.service";
|
|
5
|
-
import * as i2 from "@angular/router";
|
|
6
|
-
import * as i3 from "./auth.service";
|
|
7
|
-
import * as i4 from "./storage.service";
|
|
8
|
-
export class ErrorIntecertorService {
|
|
9
|
-
utilsService;
|
|
10
|
-
route;
|
|
11
|
-
authService;
|
|
12
|
-
storageService;
|
|
13
|
-
constructor(utilsService, route, authService, storageService) {
|
|
14
|
-
this.utilsService = utilsService;
|
|
15
|
-
this.route = route;
|
|
16
|
-
this.authService = authService;
|
|
17
|
-
this.storageService = storageService;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Muestra un mensaje de error según el tipo de error proporcionado.
|
|
21
|
-
* @param errorJson El objeto JSON que representa el error.
|
|
22
|
-
*/
|
|
23
|
-
showError(errorJson) {
|
|
24
|
-
const error = JSON.parse(errorJson);
|
|
25
|
-
if (error.codigo == 'UNI-DB-002' || error.codigo == 'UNI-DB-003'
|
|
26
|
-
|| error.mensaje?.includes('Se produjo un error de red') || error.mensaje?.includes('El servicio no está disponible')
|
|
27
|
-
|| error.mensaje?.includes('Conexion no valida')) {
|
|
28
|
-
this.storageService.setItem('mensaje_notfound', error.mensaje);
|
|
29
|
-
this.storageService.setItem('url_regresar', window.location.href);
|
|
30
|
-
window.location.href = window.location.origin + '/' + this.utilsService.obtenerBase() + '/not-found';
|
|
31
|
-
//this.route.navigate([this.utilsService.obtenerBase()+'/not-found']);
|
|
32
|
-
return;
|
|
33
|
-
}
|
|
34
|
-
if (error.tipo === 'INF') {
|
|
35
|
-
this.showInfo(error.mensaje, error.codigo);
|
|
36
|
-
}
|
|
37
|
-
else if (error.tipo === 'WAR') {
|
|
38
|
-
this.showWarning(error.mensaje, error.codigo, error.causa, error.accion, error.traza);
|
|
39
|
-
}
|
|
40
|
-
else if (error.tipo === 'ERR') {
|
|
41
|
-
this.showErrorDetails(error.mensaje ? error.mensaje : '', error.codigo, error.traza, error.causa);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Muestra un mensaje de información con el código.
|
|
46
|
-
* @param mensaje El mensaje a mostrar.
|
|
47
|
-
* @param codigo El código asociado al mensaje.
|
|
48
|
-
*/
|
|
49
|
-
showInfo(mensaje, codigo) {
|
|
50
|
-
Swal.fire({
|
|
51
|
-
background: '#f7bfbf',
|
|
52
|
-
position: 'top-end',
|
|
53
|
-
html: '<div style="text-align: left;">' +
|
|
54
|
-
'<p style="text-align: left;"><b>Código:</b> ' + codigo + '</p>' +
|
|
55
|
-
'<p style="text-align: left; font-size:12px">' + mensaje + '</p>' +
|
|
56
|
-
'</div>',
|
|
57
|
-
showConfirmButton: false,
|
|
58
|
-
timer: 5500,
|
|
59
|
-
color: '#ff0000'
|
|
60
|
-
}).then((result) => {
|
|
61
|
-
if (result.isConfirmed) {
|
|
62
|
-
this.utilsService.sleep(500).then(data => {
|
|
63
|
-
this.utilsService.resizeWindowIFrame();
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
else if (result.dismiss === Swal.DismissReason.cancel) {
|
|
67
|
-
this.utilsService.sleep(500).then(data => {
|
|
68
|
-
this.utilsService.resizeWindowIFrame();
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
else if (result.dismiss === Swal.DismissReason.close) {
|
|
72
|
-
this.utilsService.sleep(500).then(data => {
|
|
73
|
-
this.utilsService.resizeWindowIFrame();
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
this.utilsService.sleep(500).then(data => {
|
|
78
|
-
this.utilsService.resizeWindowIFrame();
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Muestra una advertencia con detalles adicionales como causa, acción y traza.
|
|
83
|
-
* @param mensaje El mensaje a mostrar.
|
|
84
|
-
* @param codigo El código asociado al mensaje.
|
|
85
|
-
* @param causa La causa del error.
|
|
86
|
-
* @param accion La acción recomendada.
|
|
87
|
-
* @param traza La traza del error.
|
|
88
|
-
*/
|
|
89
|
-
showWarning(mensaje, codigo, causa, accion, traza) {
|
|
90
|
-
let contenidoHtml = `<p class="msjError">${mensaje}</p>`;
|
|
91
|
-
contenidoHtml = contenidoHtml + (this.utilsService.validarCampoObligatorio(codigo) ? `<p class="cauError"><b>Código:</b> ${codigo}</p>` : ' ');
|
|
92
|
-
contenidoHtml = contenidoHtml + (this.utilsService.validarCampoObligatorio(causa) ? `<p class="cauError"><b>Causa:</b> ${causa}</p>` : ' ');
|
|
93
|
-
contenidoHtml = contenidoHtml + (this.utilsService.validarCampoObligatorio(accion) ? `<p class="cauError"><b>Acción Recomendada:</b> ${accion}</p>` : ' ');
|
|
94
|
-
let contenidoPlusHtml = `<p class="msjError">${mensaje.slice(0, 100)}</p><button id="verMasButton">Ver más</button> <button id="Ok">OK</button>`;
|
|
95
|
-
Swal.fire({
|
|
96
|
-
title: '<span style="color: var(--color-700);">' + 'Advertencia' + '</span>',
|
|
97
|
-
html: contenidoHtml,
|
|
98
|
-
icon: 'warning',
|
|
99
|
-
showCancelButton: false,
|
|
100
|
-
showCloseButton: true,
|
|
101
|
-
showConfirmButton: true,
|
|
102
|
-
didOpen: () => {
|
|
103
|
-
const OkButton = document.getElementById('Ok');
|
|
104
|
-
OkButton.classList.add('swal2-styled', 'swal2-cancel', 'btn-ok');
|
|
105
|
-
OkButton.addEventListener('click', () => {
|
|
106
|
-
Swal.close();
|
|
107
|
-
this.utilsService.sleep(500).then(data => {
|
|
108
|
-
this.utilsService.resizeWindowIFrame();
|
|
109
|
-
});
|
|
110
|
-
});
|
|
111
|
-
},
|
|
112
|
-
}).then((result) => {
|
|
113
|
-
if (result.isConfirmed) {
|
|
114
|
-
this.utilsService.sleep(500).then(data => {
|
|
115
|
-
this.utilsService.resizeWindowIFrame();
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
else if (result.dismiss === Swal.DismissReason.cancel) {
|
|
119
|
-
this.utilsService.sleep(500).then(data => {
|
|
120
|
-
this.utilsService.resizeWindowIFrame();
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
else if (result.dismiss === Swal.DismissReason.close) {
|
|
124
|
-
this.utilsService.sleep(500).then(data => {
|
|
125
|
-
this.utilsService.resizeWindowIFrame();
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
|
-
this.utilsService.sleep(500).then(data => {
|
|
130
|
-
this.utilsService.resizeWindowIFrame();
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Muestra un mensaje de error con detalles adicionales como el código de error y la traza.
|
|
135
|
-
* @param mensaje El mensaje a mostrar.
|
|
136
|
-
* @param errorCode El código de error asociado al mensaje.
|
|
137
|
-
* @param traza La traza del error.
|
|
138
|
-
*/
|
|
139
|
-
showErrorDetails(mensaje, codigo, traza, causa) {
|
|
140
|
-
let contenidoHtml = `<p class="msjError">${mensaje}</p><p class="codError"><b>Código:</b> ${codigo}</p><p class="traError"><b>Traza:</b> ${traza}</p><p class="cauError">`;
|
|
141
|
-
if (causa != null && causa != undefined) {
|
|
142
|
-
contenidoHtml = `<p class="msjError">${mensaje}</p><p class="codError"><b>Código:</b> ${codigo}</p><p class="traError"><b>Traza:</b> ${traza}</p><p class="cauError"><b>Causa:</b> ${causa}</p>`;
|
|
143
|
-
}
|
|
144
|
-
let contenidoPlusHtml = `<p class="msjError">${mensaje.slice(0, 100)}</p><button id="verMasButton">Ver más</button> <button class="btn-ok" id="Ok">OK</button>`;
|
|
145
|
-
Swal.fire({
|
|
146
|
-
title: '<span style="color: var(--color-700);">' + 'Error' + '</span>',
|
|
147
|
-
html: (mensaje.length + traza.length) > 100 ? contenidoPlusHtml : contenidoHtml,
|
|
148
|
-
icon: 'error',
|
|
149
|
-
showCancelButton: false,
|
|
150
|
-
showCloseButton: true,
|
|
151
|
-
showConfirmButton: false,
|
|
152
|
-
customClass: 'my-swal',
|
|
153
|
-
didOpen: () => {
|
|
154
|
-
if ((mensaje.length + traza.length) > 100) {
|
|
155
|
-
// Agregar estilos al botón "Ver más"
|
|
156
|
-
const verMasButton = document.getElementById('verMasButton');
|
|
157
|
-
verMasButton.classList.add('swal2-styled', 'swal2-cancel', 'btn-vermas');
|
|
158
|
-
const OkButton = document.getElementById('Ok');
|
|
159
|
-
OkButton.classList.add('swal2-styled', 'swal2-cancel', 'btn-ok');
|
|
160
|
-
// Agregar un evento al botón "Ver más" para mostrar todo el contenido cuando se hace clic
|
|
161
|
-
verMasButton.addEventListener('click', () => {
|
|
162
|
-
Swal.update({
|
|
163
|
-
html: contenidoHtml,
|
|
164
|
-
showConfirmButton: true,
|
|
165
|
-
});
|
|
166
|
-
this.utilsService.sleep(500).then(data => {
|
|
167
|
-
this.utilsService.resizeWindowIFrame();
|
|
168
|
-
});
|
|
169
|
-
});
|
|
170
|
-
OkButton.addEventListener('click', () => {
|
|
171
|
-
Swal.close();
|
|
172
|
-
this.utilsService.sleep(500).then(data => {
|
|
173
|
-
this.utilsService.resizeWindowIFrame();
|
|
174
|
-
});
|
|
175
|
-
});
|
|
176
|
-
}
|
|
177
|
-
else {
|
|
178
|
-
Swal.update({
|
|
179
|
-
html: contenidoHtml,
|
|
180
|
-
showConfirmButton: true,
|
|
181
|
-
});
|
|
182
|
-
}
|
|
183
|
-
},
|
|
184
|
-
}).then((result) => {
|
|
185
|
-
if (result.isConfirmed) {
|
|
186
|
-
this.utilsService.sleep(500).then(data => {
|
|
187
|
-
this.utilsService.resizeWindowIFrame();
|
|
188
|
-
});
|
|
189
|
-
}
|
|
190
|
-
else if (result.dismiss === Swal.DismissReason.cancel) {
|
|
191
|
-
this.utilsService.sleep(500).then(data => {
|
|
192
|
-
this.utilsService.resizeWindowIFrame();
|
|
193
|
-
});
|
|
194
|
-
}
|
|
195
|
-
else if (result.dismiss === Swal.DismissReason.close) {
|
|
196
|
-
this.utilsService.sleep(500).then(data => {
|
|
197
|
-
this.utilsService.resizeWindowIFrame();
|
|
198
|
-
});
|
|
199
|
-
}
|
|
200
|
-
});
|
|
201
|
-
this.utilsService.sleep(500).then(data => {
|
|
202
|
-
this.utilsService.resizeWindowIFrame();
|
|
203
|
-
});
|
|
204
|
-
}
|
|
205
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: ErrorIntecertorService, deps: [{ token: i1.UtilsService }, { token: i2.Router }, { token: i3.AuthService }, { token: i4.StorageService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
206
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: ErrorIntecertorService, providedIn: 'root' });
|
|
207
|
-
}
|
|
208
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: ErrorIntecertorService, decorators: [{
|
|
209
|
-
type: Injectable,
|
|
210
|
-
args: [{
|
|
211
|
-
providedIn: 'root'
|
|
212
|
-
}]
|
|
213
|
-
}], ctorParameters: () => [{ type: i1.UtilsService }, { type: i2.Router }, { type: i3.AuthService }, { type: i4.StorageService }] });
|
|
214
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaW50ZXJjZXB0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zZXJ2aWNpb3MvZXJyb3ItaW50ZXJjZXB0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQzs7Ozs7O0FBVS9CLE1BQU0sT0FBTyxzQkFBc0I7SUFFYjtJQUNBO0lBQ0E7SUFDQTtJQUhwQixZQUFvQixZQUEwQixFQUMxQixLQUFhLEVBQ2IsV0FBd0IsRUFDeEIsY0FBOEI7UUFIOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUM5QyxDQUFDO0lBRUo7OztNQUdFO0lBQ0gsU0FBUyxDQUFDLFNBQWlCO1FBQ3pCLE1BQU0sS0FBSyxHQUF1QixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxZQUFZLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxZQUFZO2VBQzNELEtBQUssQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLDRCQUE0QixDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsZ0NBQWdDLENBQUM7ZUFDbEgsS0FBSyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsb0JBQW9CLENBQUMsRUFBRyxDQUFDO1lBQ3BELElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMvRCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFD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QUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7dUdBbk1VLHNCQUFzQjsyR0FBdEIsc0JBQXNCLGNBRnJCLE1BQU07OzJGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBTd2FsIGZyb20gJ3N3ZWV0YWxlcnQyJztcclxuaW1wb3J0IHsgRXJyb3JSZXNwb25zZU1vZGVsIH0gZnJvbSAnLi4vbW9kZWxvcy9lcnJvci1yZXNwb25zZS5tb2RlbCc7XHJcbmltcG9ydCB7IFV0aWxzU2VydmljZSB9IGZyb20gJy4vdXRpbHMuc2VydmljZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vc3RvcmFnZS5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEVycm9ySW50ZWNlcnRvclNlcnZpY2Uge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHV0aWxzU2VydmljZTogVXRpbHNTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgcm91dGU6IFJvdXRlcixcclxuICAgICAgICAgICAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgICAgICAgICAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSxcclxuICApIHsgfVxyXG5cclxuICAgLyoqXHJcbiAgICogTXVlc3RyYSB1biBtZW5zYWplIGRlIGVycm9yIHNlZ8O6biBlbCB0aXBvIGRlIGVycm9yIHByb3BvcmNpb25hZG8uXHJcbiAgICogQHBhcmFtIGVycm9ySnNvbiBFbCBvYmpldG8gSlNPTiBxdWUgcmVwcmVzZW50YSBlbCBlcnJvci5cclxuICAgKi9cclxuICBzaG93RXJyb3IoZXJyb3JKc29uOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IGVycm9yOiBFcnJvclJlc3BvbnNlTW9kZWwgPSBKU09OLnBhcnNlKGVycm9ySnNvbik7XHJcbiAgICBpZiAoZXJyb3IuY29kaWdvID09ICdVTkktREItMDAyJyB8fCBlcnJvci5jb2RpZ28gPT0gJ1VOSS1EQi0wMDMnIFxyXG4gICAgICB8fCBlcnJvci5tZW5zYWplPy5pbmNsdWRlcygnU2UgcHJvZHVqbyB1biBlcnJvciBkZSByZWQnKSB8fCBlcnJvci5tZW5zYWplPy5pbmNsdWRlcygnRWwgc2VydmljaW8gbm8gZXN0w6EgZGlzcG9uaWJsZScpIFxyXG4gICAgICB8fCBlcnJvci5tZW5zYWplPy5pbmNsdWRlcygnQ29uZXhpb24gbm8gdmFsaWRhJykpICB7XHJcbiAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgnbWVuc2FqZV9ub3Rmb3VuZCcsIGVycm9yLm1lbnNhamUpO1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldEl0ZW0oJ3VybF9yZWdyZXNhcicsIHdpbmRvdy5sb2NhdGlvbi5ocmVmKTtcclxuICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgJy8nICsgdGhpcy51dGlsc1NlcnZpY2Uub2J0ZW5lckJhc2UoKSArICcvbm90LWZvdW5kJ1xyXG4gICAgICAvL3RoaXMucm91dGUubmF2aWdhdGUoW3RoaXMudXRpbHNTZXJ2aWNlLm9idGVuZXJCYXNlKCkrJy9ub3QtZm91bmQnXSk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChlcnJvci50aXBvID09PSAnSU5GJykge1xyXG4gICAgICB0aGlzLnNob3dJbmZvKGVycm9yLm1lbnNhamUsIGVycm9yLmNvZGlnbyk7XHJcbiAgICB9IGVsc2UgaWYgKGVycm9yLnRpcG8gPT09ICdXQVInKSB7XHJcbiAgICAgIHRoaXMuc2hvd1dhcm5pbmcoZXJyb3IubWVuc2FqZSwgZXJyb3IuY29kaWdvLCBlcnJvci5jYXVzYSwgZXJyb3IuYWNjaW9uLCBlcnJvci50cmF6YSk7XHJcbiAgICB9IGVsc2UgaWYgKGVycm9yLnRpcG8gPT09ICdFUlInKSB7XHJcbiAgICAgIHRoaXMuc2hvd0Vycm9yRGV0YWlscyhlcnJvci5tZW5zYWplID8gZXJyb3IubWVuc2FqZSA6ICcnLCBlcnJvci5jb2RpZ28sIGVycm9yLnRyYXphLCBlcnJvci5jYXVzYSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNdWVzdHJhIHVuIG1lbnNhamUgZGUgaW5mb3JtYWNpw7NuIGNvbiBlbCBjw7NkaWdvLlxyXG4gICAqIEBwYXJhbSBtZW5zYWplIEVsIG1lbnNhamUgYSBtb3N0cmFyLlxyXG4gICAqIEBwYXJhbSBjb2RpZ28gRWwgY8OzZGlnbyBhc29jaWFkbyBhbCBtZW5zYWplLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2hvd0luZm8obWVuc2FqZTogc3RyaW5nLCBjb2RpZ286IHN0cmluZyk6IHZvaWQge1xyXG4gICAgU3dhbC5maXJlKHtcclxuICAgICAgYmFja2dyb3VuZDogJyNmN2JmYmYnLFxyXG4gICAgICBwb3NpdGlvbjogJ3RvcC1lbmQnLFxyXG4gICAgICBodG1sOiAnPGRpdiBzdHlsZT1cInRleHQtYWxpZ246IGxlZnQ7XCI+JyArXHJcbiAgICAgICAgICAgICAgJzxwIHN0eWxlPVwidGV4dC1hbGlnbjogbGVmdDtcIj48Yj5Dw7NkaWdvOjwvYj4gJyArIGNvZGlnbyArICc8L3A+JyArXHJcbiAgICAgICAgICAgICAgJzxwIHN0eWxlPVwidGV4dC1hbGlnbjogbGVmdDsgZm9udC1zaXplOjEycHhcIj4nICsgbWVuc2FqZSArICc8L3A+JyArXHJcbiAgICAgICAgICAgICc8L2Rpdj4nLFxyXG4gICAgICBzaG93Q29uZmlybUJ1dHRvbjogZmFsc2UsXHJcbiAgICAgIHRpbWVyOiA1NTAwLFxyXG4gICAgICBjb2xvcjogJyNmZjAwMDAnXHJcbiAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgaWYgKHJlc3VsdC5pc0NvbmZpcm1lZCkge1xyXG4gICAgICAgIHRoaXMudXRpbHNTZXJ2aWNlLnNsZWVwKDUwMCkudGhlbihkYXRhID0+IHtcclxuICAgICAgICAgIHRoaXMudXRpbHNTZXJ2aWNlLnJlc2l6ZVdpbmRvd0lGcmFtZSgpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgIH0gZWxzZSBpZiAocmVzdWx0LmRpc21pc3MgPT09IFN3YWwuRGlzbWlzc1JlYXNvbi5jYW5jZWwpIHtcclxuICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5zbGVlcCg1MDApLnRoZW4oZGF0YSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5yZXNpemVXaW5kb3dJRnJhbWUoKTtcclxuICAgICAgICB9KVxyXG4gICAgICB9IGVsc2UgaWYgKHJlc3VsdC5kaXNtaXNzID09PSBTd2FsLkRpc21pc3NSZWFzb24uY2xvc2UpIHtcclxuICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5zbGVlcCg1MDApLnRoZW4oZGF0YSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5yZXNpemVXaW5kb3dJRnJhbWUoKTtcclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMudXRpbHNTZXJ2aWNlLnNsZWVwKDUwMCkudGhlbihkYXRhID0+IHtcclxuICAgICAgdGhpcy51dGlsc1NlcnZpY2UucmVzaXplV2luZG93SUZyYW1lKCk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTXVlc3RyYSB1bmEgYWR2ZXJ0ZW5jaWEgY29uIGRldGFsbGVzIGFkaWNpb25hbGVzIGNvbW8gY2F1c2EsIGFjY2nDs24geSB0cmF6YS5cclxuICAgKiBAcGFyYW0gbWVuc2FqZSBFbCBtZW5zYWplIGEgbW9zdHJhci5cclxuICAgKiBAcGFyYW0gY29kaWdvIEVsIGPDs2RpZ28gYXNvY2lhZG8gYWwgbWVuc2FqZS5cclxuICAgKiBAcGFyYW0gY2F1c2EgTGEgY2F1c2EgZGVsIGVycm9yLlxyXG4gICAqIEBwYXJhbSBhY2Npb24gTGEgYWNjacOzbiByZWNvbWVuZGFkYS5cclxuICAgKiBAcGFyYW0gdHJhemEgTGEgdHJhemEgZGVsIGVycm9yLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2hvd1dhcm5pbmcobWVuc2FqZTogc3RyaW5nLCBjb2RpZ286IHN0cmluZywgY2F1c2E6IHN0cmluZywgYWNjaW9uOiBzdHJpbmcsIHRyYXphOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGxldCBjb250ZW5pZG9IdG1sID0gYDxwIGNsYXNzPVwibXNqRXJyb3JcIj4ke21lbnNhamV9PC9wPmBcclxuICAgIGNvbnRlbmlkb0h0bWwgPSBjb250ZW5pZG9IdG1sICsgKHRoaXMudXRpbHNTZXJ2aWNlLnZhbGlkYXJDYW1wb09ibGlnYXRvcmlvKGNvZGlnbykgPyBgPHAgY2xhc3M9XCJjYXVFcnJvclwiPjxiPkPDs2RpZ286PC9iPiAke2NvZGlnb308L3A+YCA6ICcgJyk7XHJcbiAgICBjb250ZW5pZG9IdG1sID0gY29udGVuaWRvSHRtbCArICh0aGlzLnV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhjYXVzYSkgPyBgPHAgY2xhc3M9XCJjYXVFcnJvclwiPjxiPkNhdXNhOjwvYj4gJHtjYXVzYX08L3A+YCA6ICcgJyk7XHJcbiAgICBjb250ZW5pZG9IdG1sID0gY29udGVuaWRvSHRtbCArICh0aGlzLnV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhhY2Npb24pID8gYDxwIGNsYXNzPVwiY2F1RXJyb3JcIj48Yj5BY2Npw7NuIFJlY29tZW5kYWRhOjwvYj4gJHthY2Npb259PC9wPmAgOiAnICcpO1xyXG4gICAgbGV0IGNvbnRlbmlkb1BsdXNIdG1sID0gYDxwIGNsYXNzPVwibXNqRXJyb3JcIj4ke21lbnNhamUuc2xpY2UoMCwgMTAwKX08L3A+PGJ1dHRvbiBpZD1cInZlck1hc0J1dHRvblwiPlZlciBtw6FzPC9idXR0b24+IDxidXR0b24gaWQ9XCJPa1wiPk9LPC9idXR0b24+YDtcclxuXHJcbiAgICBTd2FsLmZpcmUoe1xyXG4gICAgICB0aXRsZTogJzxzcGFuIHN0eWxlPVwiY29sb3I6IHZhcigtLWNvbG9yLTcwMCk7XCI+JyArICdBZHZlcnRlbmNpYScgKyAnPC9zcGFuPicsXHJcbiAgICAgIGh0bWw6IGNvbnRlbmlkb0h0bWwsXHJcbiAgICAgIGljb246ICd3YXJuaW5nJyxcclxuICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogZmFsc2UsXHJcbiAgICAgIHNob3dDbG9zZUJ1dHRvbjogdHJ1ZSxcclxuICAgICAgc2hvd0NvbmZpcm1CdXR0b246IHRydWUsXHJcbiAgICAgIGRpZE9wZW46ICgpID0+IHtcclxuICAgICAgICAgIGNvbnN0IE9rQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ09rJyk7XHJcbiAgICAgICAgICBPa0J1dHRvbi5jbGFzc0xpc3QuYWRkKCdzd2FsMi1zdHlsZWQnLCAnc3dhbDItY2FuY2VsJywgJ2J0bi1vaycpO1xyXG4gICAgICAgICAgT2tCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIFN3YWwuY2xvc2UoKTtcclxuICAgICAgICAgICAgdGhpcy51dGlsc1NlcnZpY2Uuc2xlZXAoNTAwKS50aGVuKGRhdGEgPT4ge1xyXG4gICAgICAgICAgICAgIHRoaXMudXRpbHNTZXJ2aWNlLnJlc2l6ZVdpbmRvd0lGcmFtZSgpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH0sXHJcbiAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgaWYgKHJlc3VsdC5pc0NvbmZpcm1lZCkge1xyXG4gICAgICAgIHRoaXMudXRpbHNTZXJ2aWNlLnNsZWVwKDUwMCkudGhlbihkYXRhID0+IHtcclxuICAgICAgICAgIHRoaXMudXRpbHNTZXJ2aWNlLnJlc2l6ZVdpbmRvd0lGcmFtZSgpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgIH0gZWxzZSBpZiAocmVzdWx0LmRpc21pc3MgPT09IFN3YWwuRGlzbWlzc1JlYXNvbi5jYW5jZWwpIHtcclxuICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5zbGVlcCg1MDApLnRoZW4oZGF0YSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5yZXNpemVXaW5kb3dJRnJhbWUoKTtcclxuICAgICAgICB9KVxyXG4gICAgICB9IGVsc2UgaWYgKHJlc3VsdC5kaXNtaXNzID09PSBTd2FsLkRpc21pc3NSZWFzb24uY2xvc2UpIHtcclxuICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5zbGVlcCg1MDApLnRoZW4oZGF0YSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5yZXNpemVXaW5kb3dJRnJhbWUoKTtcclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIFxyXG4gICAgdGhpcy51dGlsc1NlcnZpY2Uuc2xlZXAoNTAwKS50aGVuKGRhdGEgPT4ge1xyXG4gICAgICB0aGlzLnV0aWxzU2VydmljZS5yZXNpemVXaW5kb3dJRnJhbWUoKTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNdWVzdHJhIHVuIG1lbnNhamUgZGUgZXJyb3IgY29uIGRldGFsbGVzIGFkaWNpb25hbGVzIGNvbW8gZWwgY8OzZGlnbyBkZSBlcnJvciB5IGxhIHRyYXphLlxyXG4gICAqIEBwYXJhbSBtZW5zYWplIEVsIG1lbnNhamUgYSBtb3N0cmFyLlxyXG4gICAqIEBwYXJhbSBlcnJvckNvZGUgRWwgY8OzZGlnbyBkZSBlcnJvciBhc29jaWFkbyBhbCBtZW5zYWplLlxyXG4gICAqIEBwYXJhbSB0cmF6YSBMYSB0cmF6YSBkZWwgZXJyb3IuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzaG93RXJyb3JEZXRhaWxzKG1lbnNhamU6IHN0cmluZywgY29kaWdvOiBzdHJpbmcsIHRyYXphOiBzdHJpbmcsIGNhdXNhPyA6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICBsZXQgY29udGVuaWRvSHRtbCA9IGA8cCBjbGFzcz1cIm1zakVycm9yXCI+JHttZW5zYWplfTwvcD48cCBjbGFzcz1cImNvZEVycm9yXCI+PGI+Q8OzZGlnbzo8L2I+ICR7Y29kaWdvfTwvcD48cCBjbGFzcz1cInRyYUVycm9yXCI+PGI+VHJhemE6PC9iPiAke3RyYXphfTwvcD48cCBjbGFzcz1cImNhdUVycm9yXCI+YDtcclxuICAgICAgaWYgKGNhdXNhIT0gbnVsbCAmJiBjYXVzYSAhPSB1bmRlZmluZWQpIHtcclxuICAgICAgICBjb250ZW5pZG9IdG1sID0gYDxwIGNsYXNzPVwibXNqRXJyb3JcIj4ke21lbnNhamV9PC9wPjxwIGNsYXNzPVwiY29kRXJyb3JcIj48Yj5Dw7NkaWdvOjwvYj4gJHtjb2RpZ299PC9wPjxwIGNsYXNzPVwidHJhRXJyb3JcIj48Yj5UcmF6YTo8L2I+ICR7dHJhemF9PC9wPjxwIGNsYXNzPVwiY2F1RXJyb3JcIj48Yj5DYXVzYTo8L2I+ICR7Y2F1c2F9PC9wPmA7XHJcbiAgICAgIH1cclxuICAgICAgbGV0IGNvbnRlbmlkb1BsdXNIdG1sID0gYDxwIGNsYXNzPVwibXNqRXJyb3JcIj4ke21lbnNhamUuc2xpY2UoMCwgMTAwKX08L3A+PGJ1dHRvbiBpZD1cInZlck1hc0J1dHRvblwiPlZlciBtw6FzPC9idXR0b24+IDxidXR0b24gY2xhc3M9XCJidG4tb2tcIiBpZD1cIk9rXCI+T0s8L2J1dHRvbj5gO1xyXG5cclxuICAgICAgU3dhbC5maXJlKHtcclxuICAgICAgICB0aXRsZTogJzxzcGFuIHN0eWxlPVwiY29sb3I6IHZhcigtLWNvbG9yLTcwMCk7XCI+JyArICdFcnJvcicgKyAnPC9zcGFuPicsXHJcbiAgICAgICAgaHRtbDogKG1lbnNhamUubGVuZ3RoICsgdHJhemEubGVuZ3RoKSA+IDEwMCA/IGNvbnRlbmlkb1BsdXNIdG1sIDogY29udGVuaWRvSHRtbCxcclxuICAgICAgICBpY29uOiAnZXJyb3InLFxyXG4gICAgICAgIHNob3dDYW5jZWxCdXR0b246IGZhbHNlLFxyXG4gICAgICAgIHNob3dDbG9zZUJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICBzaG93Q29uZmlybUJ1dHRvbjogZmFsc2UsXHJcbiAgICAgICAgY3VzdG9tQ2xhc3M6ICdteS1zd2FsJyxcclxuICAgICAgICBkaWRPcGVuOiAoKSA9PiB7XHJcbiAgICAgICAgICBpZiAoKG1lbnNhamUubGVuZ3RoICsgdHJhemEubGVuZ3RoKSA+IDEwMCkge1xyXG4gICAgICAgICAgICAvLyBBZ3JlZ2FyIGVzdGlsb3MgYWwgYm90w7NuIFwiVmVyIG3DoXNcIlxyXG4gICAgICAgICAgICBjb25zdCB2ZXJNYXNCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndmVyTWFzQnV0dG9uJyk7XHJcbiAgICAgICAgICAgIHZlck1hc0J1dHRvbi5jbGFzc0xpc3QuYWRkKCdzd2FsMi1zdHlsZWQnLCAnc3dhbDItY2FuY2VsJywgJ2J0bi12ZXJtYXMnICk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBPa0J1dHRvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdPaycpO1xyXG4gICAgICAgICAgICBPa0J1dHRvbi5jbGFzc0xpc3QuYWRkKCdzd2FsMi1zdHlsZWQnLCAnc3dhbDItY2FuY2VsJyAsICdidG4tb2snKTtcclxuXHJcbiAgICAgICAgICAgIC8vIEFncmVnYXIgdW4gZXZlbnRvIGFsIGJvdMOzbiBcIlZlciBtw6FzXCIgcGFyYSBtb3N0cmFyIHRvZG8gZWwgY29udGVuaWRvIGN1YW5kbyBzZSBoYWNlIGNsaWNcclxuICAgICAgICAgICAgdmVyTWFzQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4ge1xyXG4gICAgICAgICAgICAgIFN3YWwudXBkYXRlKHtcclxuICAgICAgICAgICAgICAgIGh0bWw6IGNvbnRlbmlkb0h0bWwsXHJcbiAgICAgICAgICAgICAgICBzaG93Q29uZmlybUJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5zbGVlcCg1MDApLnRoZW4oZGF0YSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5yZXNpemVXaW5kb3dJRnJhbWUoKTtcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgIE9rQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4ge1xyXG4gICAgICAgICAgICAgIFN3YWwuY2xvc2UoKTtcclxuICAgICAgICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5zbGVlcCg1MDApLnRoZW4oZGF0YSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5yZXNpemVXaW5kb3dJRnJhbWUoKTtcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2V7XHJcbiAgICAgICAgICAgIFN3YWwudXBkYXRlKHtcclxuICAgICAgICAgICAgICBodG1sOiBjb250ZW5pZG9IdG1sLFxyXG4gICAgICAgICAgICAgIHNob3dDb25maXJtQnV0dG9uOiB0cnVlLFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICB9KS50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LmlzQ29uZmlybWVkKSB7XHJcbiAgICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5zbGVlcCg1MDApLnRoZW4oZGF0YSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudXRpbHNTZXJ2aWNlLnJlc2l6ZVdpbmRvd0lGcmFtZSgpO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdC5kaXNtaXNzID09PSBTd2FsLkRpc21pc3NSZWFzb24uY2FuY2VsKSB7XHJcbiAgICAgICAgICB0aGlzLnV0aWxzU2VydmljZS5zbGVlcCg1MDApLnRoZW4oZGF0YSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMudXRpbHNTZXJ2aWNlLnJlc2l6ZVdpbmRvd0lGcmFtZSgpO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdC5kaXNtaXNzID09PSBTd2FsLkRpc21pc3NSZWFzb24uY2xvc2UpIHtcclxuICAgICAgICAgIHRoaXMudXRpbHNTZXJ2aWNlLnNsZWVwKDUwMCkudGhlbihkYXRhID0+IHtcclxuICAgICAgICAgICAgdGhpcy51dGlsc1NlcnZpY2UucmVzaXplV2luZG93SUZyYW1lKCk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIFxyXG4gICAgdGhpcy51dGlsc1NlcnZpY2Uuc2xlZXAoNTAwKS50aGVuKGRhdGEgPT4ge1xyXG4gICAgICB0aGlzLnV0aWxzU2VydmljZS5yZXNpemVXaW5kb3dJRnJhbWUoKTtcclxuICAgIH0pXHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../../../core/servicios/auth.service";
|
|
4
|
-
import * as i2 from "../utils.service";
|
|
5
|
-
import * as i3 from "@angular/router";
|
|
6
|
-
import * as i4 from "../../../core/servicios/toast.service";
|
|
7
|
-
import * as i5 from "../storage.service";
|
|
8
|
-
export class AuthGuard {
|
|
9
|
-
authService;
|
|
10
|
-
utilsService;
|
|
11
|
-
route;
|
|
12
|
-
toastService;
|
|
13
|
-
storageService;
|
|
14
|
-
constructor(authService, utilsService, route, toastService, storageService) {
|
|
15
|
-
this.authService = authService;
|
|
16
|
-
this.utilsService = utilsService;
|
|
17
|
-
this.route = route;
|
|
18
|
-
this.toastService = toastService;
|
|
19
|
-
this.storageService = storageService;
|
|
20
|
-
}
|
|
21
|
-
canLoad(route, segments) {
|
|
22
|
-
if (!this.authService.isTokenValid()) {
|
|
23
|
-
this.authService.deleteToken();
|
|
24
|
-
this.toastService.showError('Tu sesión no es válida. Primero debes autenticarte con tu usuario y contraseña.', 'Acceso Denegado');
|
|
25
|
-
return this.route.createUrlTree(['/' + this.utilsService.obtenerBase() + '/login']);
|
|
26
|
-
}
|
|
27
|
-
let aplicacion = this.authService.getTokenKey('aplicacion');
|
|
28
|
-
console.log('aplicacion:' + aplicacion);
|
|
29
|
-
if (aplicacion.trim() == '10') {
|
|
30
|
-
return true;
|
|
31
|
-
}
|
|
32
|
-
let tareasss = JSON.parse(this.storageService.getItem('__tareas'));
|
|
33
|
-
let ruta = '';
|
|
34
|
-
let continuar = true;
|
|
35
|
-
segments.forEach(data => {
|
|
36
|
-
if (continuar) {
|
|
37
|
-
if (data.path !== 'US_editar') {
|
|
38
|
-
ruta = ruta + '/' + data.path;
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
continuar = false;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
let respuesta = false;
|
|
46
|
-
console.log(ruta);
|
|
47
|
-
tareasss.forEach(element => {
|
|
48
|
-
if (element.urlprincipal.replace(/.jsf/, '') === ruta) {
|
|
49
|
-
respuesta = true;
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
if (!respuesta) {
|
|
53
|
-
return this.route.createUrlTree(['/' + this.utilsService.obtenerBase() + '/not-found']);
|
|
54
|
-
}
|
|
55
|
-
return respuesta;
|
|
56
|
-
}
|
|
57
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: AuthGuard, deps: [{ token: i1.AuthService }, { token: i2.UtilsService }, { token: i3.Router }, { token: i4.ToastService }, { token: i5.StorageService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
58
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: AuthGuard, providedIn: 'root' });
|
|
59
|
-
}
|
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: AuthGuard, decorators: [{
|
|
61
|
-
type: Injectable,
|
|
62
|
-
args: [{
|
|
63
|
-
providedIn: 'root',
|
|
64
|
-
}]
|
|
65
|
-
}], ctorParameters: () => [{ type: i1.AuthService }, { type: i2.UtilsService }, { type: i3.Router }, { type: i4.ToastService }, { type: i5.StorageService }] });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zZXJ2aWNpb3MvZ3VhcmRpYXMvYXV0aC5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBVzNDLE1BQU0sT0FBTyxTQUFTO0lBQ0E7SUFBa0M7SUFBb0M7SUFBdUI7SUFBb0M7SUFBckosWUFBb0IsV0FBd0IsRUFBVSxZQUEwQixFQUFVLEtBQWEsRUFBVSxZQUEwQixFQUFVLGNBQThCO1FBQS9KLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQWM7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQWM7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFBRyxDQUFDO0lBRXZMLE9BQU8sQ0FBQyxLQUFZLEVBQUUsUUFBc0I7UUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLGlGQUFpRixFQUFFLGlCQUFpQixDQUFDLENBQUM7WUFDbEksT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxHQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDckYsQ0FBQztRQUNELElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzVELE9BQU8sQ0FBQyxHQUFHLENBQUMsYUFBYSxHQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3JDLElBQUksVUFBVSxDQUFDLElBQUksRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzlCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUNuRSxJQUFJLElBQUksR0FBRyxFQUFFLENBQUM7UUFDZCxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDckIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNwQixJQUFJLFNBQVMsRUFBQyxDQUFDO2dCQUNYLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxXQUFXLEVBQUMsQ0FBQztvQkFDM0IsSUFBSSxHQUFHLElBQUksR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQTtnQkFDakMsQ0FBQztxQkFBTSxDQUFDO29CQUNKLFNBQVMsR0FBRyxLQUFLLENBQUM7Z0JBQ3RCLENBQUM7WUFDTCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUE7UUFDSCxJQUFJLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUNqQixRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3ZCLElBQU0sT0FBTyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxLQUFLLElBQUksRUFBQyxDQUFDO2dCQUNyRCxTQUFTLEdBQUcsSUFBSSxDQUFDO1lBQ3JCLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxTQUFTLEVBQUMsQ0FBQztZQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLEdBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsR0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQ3hGLENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO3VHQXRDVSxTQUFTOzJHQUFULFNBQVMsY0FGUixNQUFNOzsyRkFFUCxTQUFTO2tCQUhyQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2FuTG9hZCwgUm91dGUsIFJvdXRlciwgVXJsU2VnbWVudCwgVXJsVHJlZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2lvcy9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3NlcnZpY2lvcy90b2FzdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2UgfSBmcm9tICcuLi9zdG9yYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVdGlsc1NlcnZpY2UgfSBmcm9tICcuLi91dGlscy5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRoR3VhcmQgaW1wbGVtZW50cyBDYW5Mb2FkIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSwgcHJpdmF0ZSB1dGlsc1NlcnZpY2U6IFV0aWxzU2VydmljZSwgcHJpdmF0ZSByb3V0ZTogUm91dGVyLCBwcml2YXRlIHRvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlLCBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSkge31cclxuXHJcbiAgY2FuTG9hZChyb3V0ZTogUm91dGUsIHNlZ21lbnRzOiBVcmxTZWdtZW50W10pOiBhbnkgey8vT2JzZXJ2YWJsZTxib29sZWFuIHwgVXJsVHJlZT4gfCBQcm9taXNlPGJvb2xlYW4gfCBVcmxUcmVlPiB8IGJvb2xlYW4gfCBVcmxUcmVlIHtcclxuICAgIGlmICghdGhpcy5hdXRoU2VydmljZS5pc1Rva2VuVmFsaWQoKSkge1xyXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmRlbGV0ZVRva2VuKCk7XHJcbiAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLnNob3dFcnJvcignVHUgc2VzacOzbiBubyBlcyB2w6FsaWRhLiBQcmltZXJvIGRlYmVzIGF1dGVudGljYXJ0ZSBjb24gdHUgdXN1YXJpbyB5IGNvbnRyYXNlw7FhLicsICdBY2Nlc28gRGVuZWdhZG8nKTtcclxuICAgICAgcmV0dXJuIHRoaXMucm91dGUuY3JlYXRlVXJsVHJlZShbJy8nICsgdGhpcy51dGlsc1NlcnZpY2Uub2J0ZW5lckJhc2UoKSArJy9sb2dpbiddKTtcclxuICAgIH1cclxuICAgIGxldCBhcGxpY2FjaW9uID0gdGhpcy5hdXRoU2VydmljZS5nZXRUb2tlbktleSgnYXBsaWNhY2lvbicpO1xyXG4gICAgY29uc29sZS5sb2coJ2FwbGljYWNpb246JythcGxpY2FjaW9uKVxyXG4gICAgaWYgKGFwbGljYWNpb24udHJpbSgpID09ICcxMCcpIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICBsZXQgdGFyZWFzc3MgPSBKU09OLnBhcnNlKHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSgnX190YXJlYXMnKSk7XHJcbiAgICBsZXQgcnV0YSA9ICcnO1xyXG4gICAgbGV0IGNvbnRpbnVhciA9IHRydWU7XHJcbiAgICBzZWdtZW50cy5mb3JFYWNoKGRhdGEgPT4ge1xyXG4gICAgICAgIGlmIChjb250aW51YXIpe1xyXG4gICAgICAgICAgICBpZiAoZGF0YS5wYXRoICE9PSAnVVNfZWRpdGFyJyl7XHJcbiAgICAgICAgICAgICAgICBydXRhID0gcnV0YSArICcvJyArIGRhdGEucGF0aFxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgY29udGludWFyID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgfSkgXHJcbiAgICBsZXQgcmVzcHVlc3RhID0gZmFsc2U7XHJcbiAgICBjb25zb2xlLmxvZyhydXRhKVxyXG4gICAgdGFyZWFzc3MuZm9yRWFjaChlbGVtZW50ID0+IHtcclxuICAgICAgICBpZiAoICBlbGVtZW50LnVybHByaW5jaXBhbC5yZXBsYWNlKC8uanNmLywgJycpID09PSBydXRhKXtcclxuICAgICAgICAgICAgcmVzcHVlc3RhID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICAgIFxyXG4gICAgaWYgKCFyZXNwdWVzdGEpe1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlLmNyZWF0ZVVybFRyZWUoWycvJyt0aGlzLnV0aWxzU2VydmljZS5vYnRlbmVyQmFzZSgpKycvbm90LWZvdW5kJ10pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3B1ZXN0YTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../../../core/servicios/auth.service";
|
|
4
|
-
import * as i2 from "@angular/router";
|
|
5
|
-
import * as i3 from "../utils.service";
|
|
6
|
-
export class PublicoGuard {
|
|
7
|
-
authService;
|
|
8
|
-
route;
|
|
9
|
-
utilsService;
|
|
10
|
-
constructor(authService, route, utilsService) {
|
|
11
|
-
this.authService = authService;
|
|
12
|
-
this.route = route;
|
|
13
|
-
this.utilsService = utilsService;
|
|
14
|
-
}
|
|
15
|
-
canActivate(route, state) {
|
|
16
|
-
if (this.authService.isTokenValid()) {
|
|
17
|
-
if (window.location.href.toString().includes('admonPortal')) {
|
|
18
|
-
return this.route.createUrlTree(['/' + this.utilsService.obtenerBase() + '/admonPortal/inicio']);
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
return this.route.createUrlTree(['/' + this.utilsService.obtenerBase() + '/inicio']);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
return true;
|
|
25
|
-
}
|
|
26
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: PublicoGuard, deps: [{ token: i1.AuthService }, { token: i2.Router }, { token: i3.UtilsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
27
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: PublicoGuard, providedIn: 'root' });
|
|
28
|
-
}
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: PublicoGuard, decorators: [{
|
|
30
|
-
type: Injectable,
|
|
31
|
-
args: [{
|
|
32
|
-
providedIn: 'root',
|
|
33
|
-
}]
|
|
34
|
-
}], ctorParameters: () => [{ type: i1.AuthService }, { type: i2.Router }, { type: i3.UtilsService }] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljby5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zZXJ2aWNpb3MvZ3VhcmRpYXMvcHVibGljby5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVMzQyxNQUFNLE9BQU8sWUFBWTtJQUNIO0lBQWtDO0lBQXVCO0lBQTdFLFlBQW9CLFdBQXdCLEVBQVUsS0FBYSxFQUFVLFlBQTBCO1FBQW5GLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFjO0lBQUcsQ0FBQztJQUUzRyxXQUFXLENBQ1QsS0FBNkIsRUFDN0IsS0FBMEI7UUFFMUIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUM7WUFDcEMsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztnQkFDNUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxHQUFFLHFCQUFxQixDQUFDLENBQUMsQ0FBQztZQUNsRyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxHQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDdEYsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7dUdBZlUsWUFBWTsyR0FBWixZQUFZLGNBRlgsTUFBTTs7MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIENhbkFjdGl2YXRlLCBSb3V0ZXIsIFJvdXRlclN0YXRlU25hcHNob3QsIFVybFRyZWUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9zZXJ2aWNpb3MvYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXRpbHNTZXJ2aWNlIH0gZnJvbSAnLi4vdXRpbHMuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUHVibGljb0d1YXJkIGltcGxlbWVudHMgQ2FuQWN0aXZhdGUge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLCBwcml2YXRlIHJvdXRlOiBSb3V0ZXIsIHByaXZhdGUgdXRpbHNTZXJ2aWNlOiBVdGlsc1NlcnZpY2UpIHt9XHJcblxyXG4gIGNhbkFjdGl2YXRlKFxyXG4gICAgcm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXHJcbiAgICBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdFxyXG4gICk6IGFueXsvL09ic2VydmFibGU8Ym9vbGVhbiB8IFVybFRyZWU+IHwgUHJvbWlzZTxib29sZWFuIHwgVXJsVHJlZT4gfCBib29sZWFuIHwgVXJsVHJlZSB7XHJcbiAgICBpZiAodGhpcy5hdXRoU2VydmljZS5pc1Rva2VuVmFsaWQoKSkge1xyXG4gICAgICBpZiAod2luZG93LmxvY2F0aW9uLmhyZWYudG9TdHJpbmcoKS5pbmNsdWRlcygnYWRtb25Qb3J0YWwnKSkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlLmNyZWF0ZVVybFRyZWUoWycvJyArIHRoaXMudXRpbHNTZXJ2aWNlLm9idGVuZXJCYXNlKCkrICcvYWRtb25Qb3J0YWwvaW5pY2lvJ10pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlLmNyZWF0ZVVybFRyZWUoWycvJyArIHRoaXMudXRpbHNTZXJ2aWNlLm9idGVuZXJCYXNlKCkrICcvaW5pY2lvJ10pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { HttpErrorResponse } from '@angular/common/http';
|
|
3
|
-
import { catchError, EMPTY, from, throwError, TimeoutError } from 'rxjs';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/router";
|
|
6
|
-
import * as i2 from "../auth.service";
|
|
7
|
-
import * as i3 from "../../servicios/storage.service";
|
|
8
|
-
import * as i4 from "../error-interceptor.service";
|
|
9
|
-
import * as i5 from "../utils.service";
|
|
10
|
-
export class TokenInterceptorService {
|
|
11
|
-
router;
|
|
12
|
-
authService;
|
|
13
|
-
storage;
|
|
14
|
-
errorInterceptor;
|
|
15
|
-
utilsService;
|
|
16
|
-
constructor(router, authService, storage, errorInterceptor, utilsService) {
|
|
17
|
-
this.router = router;
|
|
18
|
-
this.authService = authService;
|
|
19
|
-
this.storage = storage;
|
|
20
|
-
this.errorInterceptor = errorInterceptor;
|
|
21
|
-
this.utilsService = utilsService;
|
|
22
|
-
}
|
|
23
|
-
intercept(request, next) {
|
|
24
|
-
return from(this.interceptDetalle(request, next)).pipe(catchError((error) => {
|
|
25
|
-
if (error instanceof TimeoutError) {
|
|
26
|
-
this.errorInterceptor.showError(JSON.stringify({ tipo: 'ERR', traza: '.', mensaje: 'El servicio no está disponible. Por favor, inténtelo más tarde.' }).toString());
|
|
27
|
-
}
|
|
28
|
-
else if (error instanceof HttpErrorResponse) {
|
|
29
|
-
if (error.error instanceof ErrorEvent) {
|
|
30
|
-
// A client-side or network error occurred
|
|
31
|
-
if (error.error.message.includes('ERR_CONNECTION_REFUSED')) {
|
|
32
|
-
this.errorInterceptor.showError(JSON.stringify({ tipo: 'ERR', traza: '.', mensaje: 'El servicio no está disponible. Por favor, inténtelo más tarde.' }).toString());
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
this.errorInterceptor.showError(JSON.stringify({ tipo: 'ERR', traza: '.', mensaje: 'Se produjo un error de red. Por favor, inténtelo más tarde.' }).toString());
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
if (error.status == 0) {
|
|
40
|
-
this.errorInterceptor.showError(JSON.stringify({ tipo: 'ERR', traza: '.', mensaje: 'Se produjo un error de red. Por favor, inténtelo más tarde.' }).toString());
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
console.error(`Error HTTP: ${error.status} - ${error.message}`);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return throwError(error);
|
|
48
|
-
}));
|
|
49
|
-
}
|
|
50
|
-
async interceptDetalle(request, next) {
|
|
51
|
-
if (request.url.includes('/requieretoken') && !request.url.includes('/portalPublico')) {
|
|
52
|
-
let token = this.authService.getToken();
|
|
53
|
-
if (token) {
|
|
54
|
-
let fechaActual = new Date();
|
|
55
|
-
let fechaExpTokenIni = new Date(this.storage.getDecodedJWT().exp * 1000);
|
|
56
|
-
let fechaExpTokenFin = new Date(this.storage.getDecodedJWT().exp * 1000);
|
|
57
|
-
fechaExpTokenIni.setMinutes(fechaExpTokenIni.getMinutes() - 10);
|
|
58
|
-
if (fechaActual >= fechaExpTokenIni && fechaActual <= fechaExpTokenFin) {
|
|
59
|
-
var tokenPublico = await this.authService.generarTokenPublico().toPromise();
|
|
60
|
-
var tokenRefrescar = await this.authService.refrescarToken({ token: token }, tokenPublico?.token).toPromise();
|
|
61
|
-
token = tokenRefrescar?.token;
|
|
62
|
-
this.authService.deleteToken();
|
|
63
|
-
this.storage.setItem('token', token);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
return await this.setearTokenRequest(request, next).toPromise();
|
|
68
|
-
}
|
|
69
|
-
setearTokenRequest(request, next) {
|
|
70
|
-
var basePortal = this.utilsService.obtenerBase();
|
|
71
|
-
let token = this.authService.getToken();
|
|
72
|
-
if (request.url.includes('/requieretoken') && !request.url.includes('/portalPublico')) {
|
|
73
|
-
request = request.clone({
|
|
74
|
-
headers: request.headers.set('Authorization', `Bearer ${token}`),
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
request = request.clone({
|
|
78
|
-
headers: request.headers.set('Base', basePortal),
|
|
79
|
-
});
|
|
80
|
-
return next.handle(request).pipe(catchError((error) => {
|
|
81
|
-
if (error.status === 401) {
|
|
82
|
-
this.authService.deleteToken();
|
|
83
|
-
this.router.navigateByUrl(this.utilsService.obtenerBase() + '/login');
|
|
84
|
-
return EMPTY;
|
|
85
|
-
}
|
|
86
|
-
if (error instanceof TimeoutError) {
|
|
87
|
-
this.errorInterceptor.showError(JSON.stringify({ tipo: 'ERR', traza: '.', mensaje: 'El servicio no está disponible. Por favor, inténtelo más tarde.' }).toString());
|
|
88
|
-
}
|
|
89
|
-
else if (error instanceof HttpErrorResponse) {
|
|
90
|
-
if (error.error instanceof ErrorEvent) {
|
|
91
|
-
// A client-side or network error occurred
|
|
92
|
-
if (error.error.message.includes('ERR_CONNECTION_REFUSED')) {
|
|
93
|
-
this.errorInterceptor.showError(JSON.stringify({ tipo: 'ERR', traza: '.', mensaje: 'El servicio no está disponible. Por favor, inténtelo más tarde.' }).toString());
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
this.errorInterceptor.showError(JSON.stringify({ tipo: 'ERR', traza: '.', mensaje: 'Se produjo un error de red. Por favor, inténtelo más tarde.' }).toString());
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
if (error.status == 0) {
|
|
101
|
-
this.errorInterceptor.showError(JSON.stringify({ tipo: 'ERR', traza: '.', mensaje: 'Se produjo un error de red. Por favor, inténtelo más tarde.' }).toString());
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
console.error(`Error HTTP: ${error.status} - ${error.message}`);
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
return throwError(() => error);
|
|
109
|
-
}));
|
|
110
|
-
}
|
|
111
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: TokenInterceptorService, deps: [{ token: i1.Router }, { token: i2.AuthService }, { token: i3.StorageService }, { token: i4.ErrorIntecertorService }, { token: i5.UtilsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
112
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: TokenInterceptorService, providedIn: 'root' });
|
|
113
|
-
}
|
|
114
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: TokenInterceptorService, decorators: [{
|
|
115
|
-
type: Injectable,
|
|
116
|
-
args: [{
|
|
117
|
-
providedIn: 'root',
|
|
118
|
-
}]
|
|
119
|
-
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.AuthService }, { type: i3.StorageService }, { type: i4.ErrorIntecertorService }, { type: i5.UtilsService }] });
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4taW50ZXJjZXB0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zZXJ2aWNpb3MvaW50ZXJjZXB0b3Jlcy90b2tlbi1pbnRlcmNlcHRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUF3RCxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9HLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBYyxVQUFVLEVBQVcsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBVzlGLE1BQU0sT0FBTyx1QkFBdUI7SUFDZDtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBSnBCLFlBQW9CLE1BQWMsRUFDZCxXQUF3QixFQUN4QixPQUF1QixFQUN2QixnQkFBd0MsRUFDeEMsWUFBMEI7UUFKMUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBd0I7UUFDeEMsaUJBQVksR0FBWixZQUFZLENBQWM7SUFBRyxDQUFDO0lBRWxELFNBQVMsQ0FBQyxPQUF5QixFQUFFLElBQWlCO1FBQ3BELE9BQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3JELFVBQVUsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ3hCLElBQUksS0FBSyxZQUFZLFlBQVksRUFBRSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFB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LENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztvQkFDaEssQ0FBQztnQkFDSCxDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO3dCQUN0QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLDZEQUE2RCxFQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO29CQUNoSyxDQUFDO3lCQUFNLENBQUM7d0JBQ04sT0FBTyxDQUFDLEtBQUssQ0FBQyxlQUFlLEtBQUssQ0FBQyxNQUFNLE1BQU0sS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7b0JBQ2xFLENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7WUFDRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzt1R0E5RlUsdUJBQXVCOzJHQUF2Qix1QkFBdUIsY0FGdEIsTUFBTTs7MkZBRVAsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgSHR0cFJlcXVlc3QsIEh0dHBIYW5kbGVyLCBIdHRwRXZlbnQsIEh0dHBJbnRlcmNlcHRvciwgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIEVNUFRZLCBmcm9tLCBPYnNlcnZhYmxlLCB0aHJvd0Vycm9yLCB0aW1lb3V0LCBUaW1lb3V0RXJyb3IgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2lvcy9zdG9yYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBVdGlsc1NlcnZpY2UgfSBmcm9tICcuLi91dGlscy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vdG9hc3Quc2VydmljZSc7XHJcbmltcG9ydCB7IEVycm9ySW50ZWNlcnRvclNlcnZpY2UgfSBmcm9tICcuLi9lcnJvci1pbnRlcmNlcHRvci5zZXJ2aWNlJztcclxuXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9rZW5JbnRlcmNlcHRvclNlcnZpY2UgaW1wbGVtZW50cyBIdHRwSW50ZXJjZXB0b3Ige1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLCBcclxuICAgICAgICAgICAgICBwcml2YXRlIHN0b3JhZ2U6IFN0b3JhZ2VTZXJ2aWNlLCBcclxuICAgICAgICAgICAgICBwcml2YXRlIGVycm9ySW50ZXJjZXB0b3I6IEVycm9ySW50ZWNlcnRvclNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSB1dGlsc1NlcnZpY2U6IFV0aWxzU2VydmljZSkge31cclxuICBcclxuICBpbnRlcmNlcHQocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PntcclxuICAgIHJldHVybiAgZnJvbSh0aGlzLmludGVyY2VwdERldGFsbGUocmVxdWVzdCwgbmV4dCkpLnBpcGUoXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBUaW1lb3V0RXJyb3IpIHtcclxuICAgICAgICAgIHRoaXMuZXJyb3JJbnRlcmNlcHRvci5zaG93RXJyb3IoSlNPTi5zdHJpbmdpZnkoe3RpcG86ICdFUlInLCB0cmF6YTogJy4nLCBtZW5zYWplOiAnRWwgc2VydmljaW8gbm8gZXN0w6EgZGlzcG9uaWJsZS4gUG9yIGZhdm9yLCBpbnTDqW50ZWxvIG3DoXMgdGFyZGUuJ30pLnRvU3RyaW5nKCkpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoZXJyb3IgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSkge1xyXG4gICAgICAgICAgaWYgKGVycm9yLmVycm9yIGluc3RhbmNlb2YgRXJyb3JFdmVudCkge1xyXG4gICAgICAgICAgICAvLyBBIGNsaWVudC1zaWRlIG9yIG5ldHdvcmsgZXJyb3Igb2NjdXJyZWRcclxuICAgICAgICAgICAgaWYgKGVycm9yLmVycm9yLm1lc3NhZ2UuaW5jbHVkZXMoJ0VSUl9DT05ORUNUSU9OX1JFRlVTRUQnKSkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZXJyb3JJbnRlcmNlcHRvci5zaG93RXJyb3IoSlNPTi5zdHJpbmdpZnkoe3RpcG86ICdFUlInLCB0cmF6YTogJy4nLCBtZW5zYWplOiAnRWwgc2VydmljaW8gbm8gZXN0w6EgZGlzcG9uaWJsZS4gUG9yIGZhdm9yLCBpbnTDqW50ZWxvIG3DoXMgdGFyZGUuJ30pLnRvU3RyaW5nKCkpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuZXJyb3JJbnRlcmNlcHRvci5zaG93RXJyb3IoSlNPTi5zdHJpbmdpZnkoe3RpcG86ICdFUlInLCB0cmF6YTogJy4nLCBtZW5zYWplOiAnU2UgcHJvZHVqbyB1biBlcnJvciBkZSByZWQuIFBvciBmYXZvciwgaW50w6ludGVsbyBtw6FzIHRhcmRlLid9KS50b1N0cmluZygpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PSAwKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5lcnJvckludGVyY2VwdG9yLnNob3dFcnJvcihKU09OLnN0cmluZ2lmeSh7dGlwbzogJ0VSUicsIHRyYXphOiAnLicsIG1lbnNhamU6ICdTZSBwcm9kdWpvIHVuIGVycm9yIGRlIHJlZC4gUG9yIGZhdm9yLCBpbnTDqW50ZWxvIG3DoXMgdGFyZGUuJ30pLnRvU3RyaW5nKCkpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEVycm9yIEhUVFA6ICR7ZXJyb3Iuc3RhdHVzfSAtICR7ZXJyb3IubWVzc2FnZX1gKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgaW50ZXJjZXB0RGV0YWxsZShyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IFByb21pc2U8SHR0cEV2ZW50PGFueT4+ICB7XHJcbiAgICBpZiAocmVxdWVzdC51cmwuaW5jbHVkZXMoJy9yZXF1aWVyZXRva2VuJykgJiYgIXJlcXVlc3QudXJsLmluY2x1ZGVzKCcvcG9ydGFsUHVibGljbycpKSB7XHJcbiAgICAgIGxldCB0b2tlbiA9IHRoaXMuYXV0aFNlcnZpY2UuZ2V0VG9rZW4oKTtcclxuICAgICAgaWYgKHRva2VuKXtcclxuICAgICAgICBsZXQgZmVjaGFBY3R1YWwgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgIGxldCBmZWNoYUV4cFRva2VuSW5pID0gbmV3IERhdGUodGhpcy5zdG9yYWdlLmdldERlY29kZWRKV1QoKS5leHAgKiAxMDAwKVxyXG4gICAgICAgIGxldCBmZWNoYUV4cFRva2VuRmluID0gbmV3IERhdGUodGhpcy5zdG9yYWdlLmdldERlY29kZWRKV1QoKS5leHAgKiAxMDAwKVxyXG4gICAgICAgIGZlY2hhRXhwVG9rZW5Jbmkuc2V0TWludXRlcyhmZWNoYUV4cFRva2VuSW5pLmdldE1pbnV0ZXMoKSAtIDEwKTtcclxuICAgICAgICBpZiAoZmVjaGFBY3R1YWwgPj0gZmVjaGFFeHBUb2tlbkluaSAmJiBmZWNoYUFjdHVhbDw9ZmVjaGFFeHBUb2tlbkZpbil7XHJcbiAgICAgICAgICB2YXIgdG9rZW5QdWJsaWNvID0gYXdhaXQgdGhpcy5hdXRoU2VydmljZS5nZW5lcmFyVG9rZW5QdWJsaWNvKCkudG9Qcm9taXNlKClcclxuICAgICAgICAgIHZhciB0b2tlblJlZnJlc2NhciA9IGF3YWl0IHRoaXMuYXV0aFNlcnZpY2UucmVmcmVzY2FyVG9rZW4oe3Rva2VuOiB0b2tlbiB9LCAodG9rZW5QdWJsaWNvIGFzIGFueSk/LnRva2VuIGFzIHN0cmluZykudG9Qcm9taXNlKCk7XHJcbiAgICAgICAgICB0b2tlbiA9ICh0b2tlblJlZnJlc2NhciBhcyBhbnkpPy50b2tlbiBhcyBzdHJpbmc7XHJcbiAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmRlbGV0ZVRva2VuKClcclxuICAgICAgICAgIHRoaXMuc3RvcmFnZS5zZXRJdGVtKCd0b2tlbicsIHRva2VuKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBhd2FpdCB0aGlzLnNldGVhclRva2VuUmVxdWVzdChyZXF1ZXN0LCBuZXh0KS50b1Byb21pc2UoKTtcclxuICB9IFxyXG5cclxuICBzZXRlYXJUb2tlblJlcXVlc3QocmVxdWVzdDogSHR0cFJlcXVlc3Q8YW55PiwgbmV4dDogSHR0cEhhbmRsZXIpOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxhbnk+PntcclxuICAgIHZhciBiYXNlUG9ydGFsOiBzdHJpbmcgPSB0aGlzLnV0aWxzU2VydmljZS5vYnRlbmVyQmFzZSgpO1xyXG4gICAgbGV0IHRva2VuID0gdGhpcy5hdXRoU2VydmljZS5nZXRUb2tlbigpO1xyXG4gICAgaWYgKHJlcXVlc3QudXJsLmluY2x1ZGVzKCcvcmVxdWllcmV0b2tlbicpICYmICFyZXF1ZXN0LnVybC5pbmNsdWRlcygnL3BvcnRhbFB1YmxpY28nKSkge1xyXG4gICAgICByZXF1ZXN0ID0gcmVxdWVzdC5jbG9uZSh7XHJcbiAgICAgICAgaGVhZGVyczogcmVxdWVzdC5oZWFkZXJzLnNldCgnQXV0aG9yaXphdGlvbicsIGBCZWFyZXIgJHt0b2tlbn1gKSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVxdWVzdCA9IHJlcXVlc3QuY2xvbmUoe1xyXG4gICAgICBoZWFkZXJzOiByZXF1ZXN0LmhlYWRlcnMuc2V0KCdCYXNlJywgYmFzZVBvcnRhbCksXHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCkucGlwZShcclxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcclxuICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA0MDEpIHtcclxuICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZGVsZXRlVG9rZW4oKTtcclxuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwodGhpcy51dGlsc1NlcnZpY2Uub2J0ZW5lckJhc2UoKSArICcvbG9naW4nKTtcclxuICAgICAgICAgIHJldHVybiBFTVBUWTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgVGltZW91dEVycm9yKSB7XHJcbiAgICAgICAgICB0aGlzLmVycm9ySW50ZXJjZXB0b3Iuc2hvd0Vycm9yKEpTT04uc3RyaW5naWZ5KHt0aXBvOiAnRVJSJywgdHJhemE6ICcuJywgbWVuc2FqZTogJ0VsIHNlcnZpY2lvIG5vIGVzdMOhIGRpc3BvbmlibGUuIFBvciBmYXZvciwgaW50w6ludGVsbyBtw6FzIHRhcmRlLid9KS50b1N0cmluZygpKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGVycm9yIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2UpIHtcclxuICAgICAgICAgIGlmIChlcnJvci5lcnJvciBpbnN0YW5jZW9mIEVycm9yRXZlbnQpIHtcclxuICAgICAgICAgICAgLy8gQSBjbGllbnQtc2lkZSBvciBuZXR3b3JrIGVycm9yIG9jY3VycmVkXHJcbiAgICAgICAgICAgIGlmIChlcnJvci5lcnJvci5tZXNzYWdlLmluY2x1ZGVzKCdFUlJfQ09OTkVDVElPTl9SRUZVU0VEJykpIHtcclxuICAgICAgICAgICAgICB0aGlzLmVycm9ySW50ZXJjZXB0b3Iuc2hvd0Vycm9yKEpTT04uc3RyaW5naWZ5KHt0aXBvOiAnRVJSJywgdHJhemE6ICcuJywgbWVuc2FqZTogJ0VsIHNlcnZpY2lvIG5vIGVzdMOhIGRpc3BvbmlibGUuIFBvciBmYXZvciwgaW50w6ludGVsbyBtw6FzIHRhcmRlLid9KS50b1N0cmluZygpKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLmVycm9ySW50ZXJjZXB0b3Iuc2hvd0Vycm9yKEpTT04uc3RyaW5naWZ5KHt0aXBvOiAnRVJSJywgdHJhemE6ICcuJywgbWVuc2FqZTogJ1NlIHByb2R1am8gdW4gZXJyb3IgZGUgcmVkLiBQb3IgZmF2b3IsIGludMOpbnRlbG8gbcOhcyB0YXJkZS4nfSkudG9TdHJpbmcoKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGlmIChlcnJvci5zdGF0dXMgPT0gMCkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZXJyb3JJbnRlcmNlcHRvci5zaG93RXJyb3IoSlNPTi5zdHJpbmdpZnkoe3RpcG86ICdFUlInLCB0cmF6YTogJy4nLCBtZW5zYWplOiAnU2UgcHJvZHVqbyB1biBlcnJvciBkZSByZWQuIFBvciBmYXZvciwgaW50w6ludGVsbyBtw6FzIHRhcmRlLid9KS50b1N0cmluZygpKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBFcnJvciBIVFRQOiAke2Vycm9yLnN0YXR1c30gLSAke2Vycm9yLm1lc3NhZ2V9YCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19
|