general-library-union 3.1.39 → 3.1.40
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/esm2022/general-library-union.mjs +5 -0
- package/esm2022/public-api.mjs +181 -0
- package/esm2022/src/app/core/componentes/breadcrumb/breadcrumb.component.mjs +40 -0
- package/esm2022/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.mjs +28 -0
- package/esm2022/src/app/core/componentes/filtro-general/filtro-general.component.mjs +196 -0
- package/esm2022/src/app/core/componentes/footer/footer.component.mjs +16 -0
- package/esm2022/src/app/core/componentes/formulariodinamico/formulariodinamico.component.mjs +272 -0
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/Cambio.mjs +11 -0
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.mjs +124 -0
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.mjs +73 -0
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.mjs +59 -0
- package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.mjs +21 -0
- package/esm2022/src/app/core/componentes/inicio-component/inicio-component.component.mjs +72 -0
- package/esm2022/src/app/core/componentes/menu/menu.component.mjs +37 -0
- package/esm2022/src/app/core/componentes/tabla-general/tabla-general.component.mjs +93 -0
- package/esm2022/src/app/core/core.module.mjs +23 -0
- package/esm2022/src/app/core/errores/authentication.error.mjs +7 -0
- package/esm2022/src/app/core/modelos/error-response.model.mjs +2 -0
- package/esm2022/src/app/core/modelos/table-column.model.mjs +2 -0
- package/esm2022/src/app/core/modelos/user.model.mjs +7 -0
- package/esm2022/src/app/core/plantilla-general/plantilla-general.template.mjs +230 -0
- package/esm2022/src/app/core/servicios/auth.service.mjs +185 -0
- package/esm2022/src/app/core/servicios/cargar-control-funcionalidad.service.mjs +54 -0
- package/esm2022/src/app/core/servicios/data-exporter-table.utils.mjs +64 -0
- package/esm2022/src/app/core/servicios/error-interceptor.service.mjs +214 -0
- package/esm2022/src/app/core/servicios/guardias/auth.guard.mjs +66 -0
- package/esm2022/src/app/core/servicios/guardias/publico.guard.mjs +35 -0
- package/esm2022/src/app/core/servicios/interceptores/loading-interceptor.mjs +37 -0
- package/esm2022/src/app/core/servicios/interceptores/token-interceptor.service.mjs +180 -0
- package/esm2022/src/app/core/servicios/loading.service.mjs +43 -0
- package/esm2022/src/app/core/servicios/menu.service.mjs +146 -0
- package/esm2022/src/app/core/servicios/spinner-service.mjs +22 -0
- package/esm2022/src/app/core/servicios/storage.service.mjs +68 -0
- package/esm2022/src/app/core/servicios/template.service.mjs +99 -0
- package/esm2022/src/app/core/servicios/toast.service.mjs +120 -0
- package/esm2022/src/app/core/servicios/utils.service.mjs +338 -0
- package/esm2022/src/app/core/sharedlib.module.mjs +16 -0
- package/esm2022/src/app/core/utilidades/color.util.mjs +177 -0
- package/esm2022/src/app/layout/api/menuchangeevent.mjs +2 -0
- package/esm2022/src/app/layout/app.breadcrumb.component.mjs +71 -0
- package/esm2022/src/app/layout/app.footer.component.mjs +18 -0
- package/esm2022/src/app/layout/app.layout.component.mjs +188 -0
- package/esm2022/src/app/layout/app.layout.module.mjs +15 -0
- package/esm2022/src/app/layout/app.menu.component.mjs +51 -0
- package/esm2022/src/app/layout/app.menu.service.mjs +24 -0
- package/esm2022/src/app/layout/app.menuitem.component.mjs +296 -0
- package/esm2022/src/app/layout/app.menuprofile.component.mjs +78 -0
- package/esm2022/src/app/layout/app.rightmenu.component.mjs +24 -0
- package/esm2022/src/app/layout/app.sidebar.component.mjs +92 -0
- package/esm2022/src/app/layout/app.topbar.component.mjs +346 -0
- package/esm2022/src/app/layout/service/app.layout.service.mjs +134 -0
- package/esm2022/src/app/publico/pages/login/login.page.mjs +132 -0
- package/esm2022/src/app/publico/pages/not-found/not-found.page.mjs +51 -0
- package/esm2022/src/app/publico/pages/seleccion-rol/seleccion-rol.component.mjs +167 -0
- package/esm2022/src/app/publico/pages/timeout/timeout.page.mjs +20 -0
- package/esm2022/src/app/seguridad/constantes/ConstantesGenerales.mjs +30 -0
- package/esm2022/src/app/seguridad/constantes/ReporteEntradaConstantes.mjs +19 -0
- package/esm2022/src/app/seguridad/modelos/AplicacionModel.mjs +8 -0
- package/esm2022/src/app/seguridad/modelos/ArchivoPortalModel.mjs +14 -0
- package/esm2022/src/app/seguridad/modelos/AtributoPuntoModel.mjs +9 -0
- package/esm2022/src/app/seguridad/modelos/AtributoSSOportalModel.mjs +17 -0
- package/esm2022/src/app/seguridad/modelos/AuditoriaArchivoModel.mjs +11 -0
- package/esm2022/src/app/seguridad/modelos/CargueLineaModel.mjs +13 -0
- package/esm2022/src/app/seguridad/modelos/ColoresRGB.mjs +18 -0
- package/esm2022/src/app/seguridad/modelos/ColumnaFuenteModel.mjs +9 -0
- package/esm2022/src/app/seguridad/modelos/ColumnaWraperModel.mjs +6 -0
- package/esm2022/src/app/seguridad/modelos/ComplementoModel.mjs +7 -0
- package/esm2022/src/app/seguridad/modelos/ComponentePaginaModel.mjs +21 -0
- package/esm2022/src/app/seguridad/modelos/ConexionModel.mjs +14 -0
- package/esm2022/src/app/seguridad/modelos/ContenidoHtmlPortalModel.mjs +21 -0
- package/esm2022/src/app/seguridad/modelos/ControlFuncionModel.mjs +8 -0
- package/esm2022/src/app/seguridad/modelos/CorreoModel.mjs +35 -0
- package/esm2022/src/app/seguridad/modelos/CorreoWSModel.mjs +37 -0
- package/esm2022/src/app/seguridad/modelos/CruceRecursoPuntoModel.mjs +14 -0
- package/esm2022/src/app/seguridad/modelos/DatoInicioModel.mjs +6 -0
- package/esm2022/src/app/seguridad/modelos/EjecucionReporteDataModel.mjs +14 -0
- package/esm2022/src/app/seguridad/modelos/EmpresaModel.mjs +25 -0
- package/esm2022/src/app/seguridad/modelos/EmpresaSeguridadModel.mjs +19 -0
- package/esm2022/src/app/seguridad/modelos/EntradaComplementoModel.mjs +7 -0
- package/esm2022/src/app/seguridad/modelos/EtiquetaModel.mjs +5 -0
- package/esm2022/src/app/seguridad/modelos/Etiquetas.mjs +12 -0
- package/esm2022/src/app/seguridad/modelos/ForeingWraperModel.mjs +6 -0
- package/esm2022/src/app/seguridad/modelos/FuenteCampoAtributoModel.mjs +16 -0
- package/esm2022/src/app/seguridad/modelos/FuenteCampoModel.mjs +17 -0
- package/esm2022/src/app/seguridad/modelos/FuenteDato.mjs +19 -0
- package/esm2022/src/app/seguridad/modelos/FuenteEntradaModel.mjs +9 -0
- package/esm2022/src/app/seguridad/modelos/FuenteGeneralModel.mjs +37 -0
- package/esm2022/src/app/seguridad/modelos/FuenteLineaServicioModel.mjs +16 -0
- package/esm2022/src/app/seguridad/modelos/FuenteProcesoGeneralModel.mjs +11 -0
- package/esm2022/src/app/seguridad/modelos/FuenteServicioModel.mjs +51 -0
- package/esm2022/src/app/seguridad/modelos/FuncionalidadModel.mjs +10 -0
- package/esm2022/src/app/seguridad/modelos/GeneralModel.mjs +15 -0
- package/esm2022/src/app/seguridad/modelos/GrupoAccesoModel.mjs +7 -0
- package/esm2022/src/app/seguridad/modelos/GrupoControlFuncionModel.mjs +10 -0
- package/esm2022/src/app/seguridad/modelos/GrupoFuenteModel.mjs +13 -0
- package/esm2022/src/app/seguridad/modelos/GrupoPermisoModel.mjs +14 -0
- package/esm2022/src/app/seguridad/modelos/JoinFromModel.mjs +5 -0
- package/esm2022/src/app/seguridad/modelos/ListaServicioModel.mjs +17 -0
- package/esm2022/src/app/seguridad/modelos/LlaveForaneaModel.mjs +7 -0
- package/esm2022/src/app/seguridad/modelos/LoginModel.mjs +15 -0
- package/esm2022/src/app/seguridad/modelos/MensajeSistemaModel.mjs +8 -0
- package/esm2022/src/app/seguridad/modelos/MenuPortalModel.mjs +5 -0
- package/esm2022/src/app/seguridad/modelos/ModulosModel.mjs +18 -0
- package/esm2022/src/app/seguridad/modelos/ObjetoReporteModel.mjs +6 -0
- package/esm2022/src/app/seguridad/modelos/PaginaPortalModel.mjs +20 -0
- package/esm2022/src/app/seguridad/modelos/ParametroComponenteModel.mjs +9 -0
- package/esm2022/src/app/seguridad/modelos/ParametrosGeneralModel.mjs +15 -0
- package/esm2022/src/app/seguridad/modelos/PermisoFuncionModel.mjs +9 -0
- package/esm2022/src/app/seguridad/modelos/PermisocontenidoModel.mjs +20 -0
- package/esm2022/src/app/seguridad/modelos/PeticionModel.mjs +16 -0
- package/esm2022/src/app/seguridad/modelos/PreguntaSeguridadModel.mjs +7 -0
- package/esm2022/src/app/seguridad/modelos/PropiedadModel.mjs +10 -0
- package/esm2022/src/app/seguridad/modelos/PublicacionWebModel.mjs +27 -0
- package/esm2022/src/app/seguridad/modelos/PuntoProcesoModel.mjs +7 -0
- package/esm2022/src/app/seguridad/modelos/RecursoPunto.mjs +13 -0
- package/esm2022/src/app/seguridad/modelos/RecursoPuntoModel.mjs +13 -0
- package/esm2022/src/app/seguridad/modelos/ReporteBanda.mjs +8 -0
- package/esm2022/src/app/seguridad/modelos/ReporteColumna.mjs +33 -0
- package/esm2022/src/app/seguridad/modelos/ReporteColumnario.mjs +69 -0
- package/esm2022/src/app/seguridad/modelos/ReporteColumnarioMarcador.mjs +24 -0
- package/esm2022/src/app/seguridad/modelos/ReporteEntradaModel.mjs +20 -0
- package/esm2022/src/app/seguridad/modelos/ReporteFuenteModel.mjs +124 -0
- package/esm2022/src/app/seguridad/modelos/ReporteMarcador.mjs +40 -0
- package/esm2022/src/app/seguridad/modelos/ReporteSoporte.mjs +10 -0
- package/esm2022/src/app/seguridad/modelos/ReporteTabla.mjs +13 -0
- package/esm2022/src/app/seguridad/modelos/RespuestaModel.mjs +9 -0
- package/esm2022/src/app/seguridad/modelos/RolModel.mjs +39 -0
- package/esm2022/src/app/seguridad/modelos/ServidorCorreoModel.mjs +28 -0
- package/esm2022/src/app/seguridad/modelos/SistemaMensajeModel.mjs +9 -0
- package/esm2022/src/app/seguridad/modelos/SitioPortalModel.mjs +25 -0
- package/esm2022/src/app/seguridad/modelos/TablaFromModel.mjs +5 -0
- package/esm2022/src/app/seguridad/modelos/TareasModel.mjs +54 -0
- package/esm2022/src/app/seguridad/modelos/TextoModel.mjs +9 -0
- package/esm2022/src/app/seguridad/modelos/TipoEtiqueta.mjs +8 -0
- package/esm2022/src/app/seguridad/modelos/UnionModel.mjs +12 -0
- package/esm2022/src/app/seguridad/modelos/UsuarioModel.mjs +53 -0
- package/esm2022/src/app/seguridad/modelos/UsuariogrupoModel.mjs +24 -0
- package/esm2022/src/app/seguridad/modelos/aplicacion-propiedad-model.mjs +15 -0
- package/esm2022/src/app/seguridad/modelos/contenidoCorreoModel.mjs +10 -0
- package/esm2022/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.mjs +154 -0
- package/esm2022/src/app/shared/servicios/cargar-archivos.service.mjs +54 -0
- package/esm2022/src/app/shared/servicios/cargar-mapas.service.mjs +46 -0
- package/esm2022/src/app/shared/servicios/encriptado-basico.service.mjs +53 -0
- package/esm2022/src/app/shared/servicios/general.service.mjs +104 -0
- package/esm2022/src/app/shared/servicios/parametros-navegacion.service.mjs +21 -0
- package/esm2022/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.mjs +378 -0
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.mjs +187 -0
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.mjs +85 -0
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.mjs +347 -0
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.mjs +206 -0
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.mjs +329 -0
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.mjs +1583 -0
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.mjs +105 -0
- package/esm2022/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.mjs +114 -0
- package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.mjs +588 -0
- package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.mjs +177 -0
- package/esm2022/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.mjs +769 -0
- package/esm2022/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.mjs +331 -0
- package/esm2022/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.mjs +95 -0
- package/esm2022/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.mjs +675 -0
- package/esm2022/src/app/webcommon/pipes/dashboard.pipe.mjs +86 -0
- package/esm2022/src/app/webcommon/pipes/fuente.pipe.mjs +201 -0
- package/esm2022/src/app/webcommon/pipes/general.pipe.mjs +918 -0
- package/esm2022/src/app/webcommon/pipes/reporte-columnario.pipe.mjs +115 -0
- package/esm2022/src/app/webcommon/pipes/reporte-fuente.pipe.mjs +301 -0
- package/esm2022/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.mjs +267 -0
- package/esm2022/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.mjs +128 -0
- package/esm2022/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.mjs +73 -0
- package/esm2022/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.mjs +293 -0
- package/esm2022/src/app/webcommon/popups/popup-recurso/popup-recurso.component.mjs +269 -0
- package/esm2022/src/app/webcommon/popups/popup-reporte/popup-reporte.component.mjs +555 -0
- package/esm2022/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.mjs +64 -0
- package/esm2022/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.mjs +162 -0
- package/esm2022/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.mjs +89 -0
- package/esm2022/src/app/webcommon/services/carguelinea.service.mjs +69 -0
- package/esm2022/src/app/webcommon/services/dashboard.service.mjs +253 -0
- package/esm2022/src/app/webcommon/services/ejecucionreporte.service.mjs +114 -0
- package/esm2022/src/app/webcommon/services/fechaUtils.service.mjs +97 -0
- package/esm2022/src/app/webcommon/services/fuentegeneral.service.mjs +68 -0
- package/esm2022/src/app/webcommon/services/homologacion.service.mjs +50 -0
- package/esm2022/src/app/webcommon/services/plantillas.service.mjs +129 -0
- package/esm2022/src/app/webcommon/services/reportes.service.mjs +95 -0
- package/esm2022/src/app/webcommon/webcommon.module.mjs +15 -0
- package/esm2022/src/environments/environment.mjs +24 -0
- package/fesm2022/general-library-union.mjs +16039 -0
- package/fesm2022/general-library-union.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/package.json +62 -73
- package/{public-api.ts → public-api.d.ts} +162 -203
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.d.ts +18 -0
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.d.ts +14 -0
- package/src/app/core/componentes/filtro-general/filtro-general.component.d.ts +34 -0
- package/src/app/core/componentes/footer/footer.component.d.ts +9 -0
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.d.ts +46 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/{Cambio.ts → Cambio.d.ts} +7 -13
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.d.ts +44 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.d.ts +45 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.d.ts +33 -0
- package/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.d.ts +9 -0
- package/src/app/core/componentes/inicio-component/inicio-component.component.d.ts +26 -0
- package/src/app/core/componentes/menu/menu.component.d.ts +16 -0
- package/src/app/core/componentes/tabla-general/tabla-general.component.d.ts +32 -0
- package/src/app/core/core.module.d.ts +8 -0
- package/src/app/core/errores/authentication.error.d.ts +3 -0
- package/src/app/core/modelos/error-response.model.d.ts +9 -0
- package/src/app/core/modelos/table-column.model.d.ts +12 -0
- package/src/app/core/modelos/user.model.d.ts +6 -0
- package/src/app/core/plantilla-general/plantilla-general.template.d.ts +89 -0
- package/src/app/core/servicios/auth.service.d.ts +52 -0
- package/src/app/core/servicios/cargar-control-funcionalidad.service.d.ts +19 -0
- package/src/app/core/servicios/data-exporter-table.utils.d.ts +11 -0
- package/src/app/core/servicios/error-interceptor.service.d.ts +41 -0
- package/src/app/core/servicios/guardias/auth.guard.d.ts +17 -0
- package/src/app/core/servicios/guardias/publico.guard.d.ts +13 -0
- package/src/app/core/servicios/interceptores/loading-interceptor.d.ts +11 -0
- package/src/app/core/servicios/interceptores/token-interceptor.service.d.ts +26 -0
- package/src/app/core/servicios/loading.service.d.ts +22 -0
- package/src/app/core/servicios/menu.service.d.ts +35 -0
- package/src/app/core/servicios/spinner-service.d.ts +9 -0
- package/src/app/core/servicios/storage.service.d.ts +37 -0
- package/src/app/core/servicios/template.service.d.ts +20 -0
- package/src/app/core/servicios/toast.service.d.ts +48 -0
- package/src/app/core/servicios/utils.service.d.ts +43 -0
- package/src/app/core/sharedlib.module.d.ts +6 -0
- package/src/app/core/utilidades/color.util.d.ts +70 -0
- package/src/app/layout/api/{menuchangeevent.ts → menuchangeevent.d.ts} +4 -4
- package/src/app/layout/app.breadcrumb.component.d.ts +28 -0
- package/src/app/layout/app.footer.component.d.ts +8 -0
- package/src/app/layout/app.layout.component.d.ts +39 -0
- package/src/app/layout/app.layout.module.d.ts +6 -0
- package/src/app/layout/app.menu.component.d.ts +19 -0
- package/src/app/layout/app.menu.service.d.ts +12 -0
- package/src/app/layout/app.menuitem.component.d.ts +41 -0
- package/src/app/layout/app.menuprofile.component.d.ts +18 -0
- package/src/app/layout/app.rightmenu.component.d.ts +10 -0
- package/src/app/layout/app.sidebar.component.d.ts +34 -0
- package/src/app/layout/app.topbar.component.d.ts +79 -0
- package/src/app/layout/service/app.layout.service.d.ts +57 -0
- package/src/app/publico/pages/login/login.page.d.ts +40 -0
- package/src/app/publico/pages/not-found/not-found.page.d.ts +17 -0
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.d.ts +41 -0
- package/src/app/publico/pages/timeout/timeout.page.d.ts +10 -0
- package/src/app/seguridad/constantes/ConstantesGenerales.d.ts +25 -0
- package/src/app/seguridad/constantes/ReporteEntradaConstantes.d.ts +7 -0
- package/src/app/seguridad/modelos/AplicacionModel.d.ts +7 -0
- package/src/app/seguridad/modelos/ArchivoPortalModel.d.ts +13 -0
- package/src/app/seguridad/modelos/AtributoPuntoModel.d.ts +8 -0
- package/src/app/seguridad/modelos/AtributoSSOportalModel.d.ts +16 -0
- package/src/app/seguridad/modelos/{AuditoriaArchivoModel.ts → AuditoriaArchivoModel.d.ts} +10 -13
- package/src/app/seguridad/modelos/CargueLineaModel.d.ts +12 -0
- package/src/app/seguridad/modelos/ColoresRGB.d.ts +17 -0
- package/src/app/seguridad/modelos/ColumnaFuenteModel.d.ts +8 -0
- package/src/app/seguridad/modelos/{ColumnaWraperModel.ts → ColumnaWraperModel.d.ts} +6 -7
- package/src/app/seguridad/modelos/ComplementoModel.d.ts +6 -0
- package/src/app/seguridad/modelos/ComponentePaginaModel.d.ts +20 -0
- package/src/app/seguridad/modelos/ConexionModel.d.ts +13 -0
- package/src/app/seguridad/modelos/{ContenidoHtmlPortalModel.ts → ContenidoHtmlPortalModel.d.ts} +20 -25
- package/src/app/seguridad/modelos/ControlFuncionModel.d.ts +7 -0
- package/src/app/seguridad/modelos/CorreoModel.d.ts +31 -0
- package/src/app/seguridad/modelos/CorreoWSModel.d.ts +33 -0
- package/src/app/seguridad/modelos/CruceRecursoPuntoModel.d.ts +13 -0
- package/src/app/seguridad/modelos/{DatoInicioModel.ts → DatoInicioModel.d.ts} +6 -7
- package/src/app/seguridad/modelos/{EjecucionReporteDataModel.ts → EjecucionReporteDataModel.d.ts} +20 -21
- package/src/app/seguridad/modelos/EmpresaModel.d.ts +23 -0
- package/src/app/seguridad/modelos/EmpresaSeguridadModel.d.ts +18 -0
- package/src/app/seguridad/modelos/{EntradaComplementoModel.ts → EntradaComplementoModel.d.ts} +6 -9
- package/src/app/seguridad/modelos/EtiquetaModel.d.ts +4 -0
- package/src/app/seguridad/modelos/Etiquetas.d.ts +10 -0
- package/src/app/seguridad/modelos/{ForeingWraperModel.ts → ForeingWraperModel.d.ts} +6 -9
- package/src/app/seguridad/modelos/FuenteCampoAtributoModel.d.ts +15 -0
- package/src/app/seguridad/modelos/{FuenteCampoModel.ts → FuenteCampoModel.d.ts} +16 -20
- package/src/app/seguridad/modelos/FuenteDato.d.ts +18 -0
- package/src/app/seguridad/modelos/FuenteEntradaModel.d.ts +8 -0
- package/src/app/seguridad/modelos/{FuenteGeneralModel.ts → FuenteGeneralModel.d.ts} +36 -55
- package/src/app/seguridad/modelos/FuenteLineaServicioModel.d.ts +16 -0
- package/src/app/seguridad/modelos/FuenteProcesoGeneralModel.d.ts +10 -0
- package/src/app/seguridad/modelos/{FuenteServicioModel.ts → FuenteServicioModel.d.ts} +47 -61
- package/src/app/seguridad/modelos/FuncionalidadModel.d.ts +8 -0
- package/src/app/seguridad/modelos/GeneralModel.d.ts +8 -0
- package/src/app/seguridad/modelos/{GrupoAccesoModel.ts → GrupoAccesoModel.d.ts} +6 -9
- package/src/app/seguridad/modelos/GrupoControlFuncionModel.d.ts +9 -0
- package/src/app/seguridad/modelos/GrupoFuenteModel.d.ts +13 -0
- package/src/app/seguridad/modelos/GrupoPermisoModel.d.ts +13 -0
- package/src/app/seguridad/modelos/{JoinFromModel.ts → JoinFromModel.d.ts} +4 -4
- package/src/app/seguridad/modelos/ListaServicioModel.d.ts +16 -0
- package/src/app/seguridad/modelos/LlaveForaneaModel.d.ts +6 -0
- package/src/app/seguridad/modelos/LoginModel.d.ts +17 -0
- package/src/app/seguridad/modelos/MensajeSistemaModel.d.ts +7 -0
- package/src/app/seguridad/modelos/{MenuPortalModel.ts → MenuPortalModel.d.ts} +4 -5
- package/src/app/seguridad/modelos/ModulosModel.d.ts +14 -0
- package/src/app/seguridad/modelos/{ObjetoReporteModel.ts → ObjetoReporteModel.d.ts} +5 -6
- package/src/app/seguridad/modelos/PaginaPortalModel.d.ts +19 -0
- package/src/app/seguridad/modelos/ParametroComponenteModel.d.ts +8 -0
- package/src/app/seguridad/modelos/ParametrosGeneralModel.d.ts +8 -0
- package/src/app/seguridad/modelos/PermisoFuncionModel.d.ts +8 -0
- package/src/app/seguridad/modelos/PermisocontenidoModel.d.ts +18 -0
- package/src/app/seguridad/modelos/{PeticionModel.ts → PeticionModel.d.ts} +15 -20
- package/src/app/seguridad/modelos/PreguntaSeguridadModel.d.ts +6 -0
- package/src/app/seguridad/modelos/PropiedadModel.d.ts +9 -0
- package/src/app/seguridad/modelos/PublicacionWebModel.d.ts +25 -0
- package/src/app/seguridad/modelos/PuntoProcesoModel.d.ts +6 -0
- package/src/app/seguridad/modelos/RecursoPunto.d.ts +12 -0
- package/src/app/seguridad/modelos/RecursoPuntoModel.d.ts +12 -0
- package/src/app/seguridad/modelos/ReporteBanda.d.ts +7 -0
- package/src/app/seguridad/modelos/ReporteColumna.d.ts +32 -0
- package/src/app/seguridad/modelos/ReporteColumnario.d.ts +68 -0
- package/src/app/seguridad/modelos/ReporteColumnarioMarcador.d.ts +23 -0
- package/src/app/seguridad/modelos/{ReporteEntradaModel.ts → ReporteEntradaModel.d.ts} +19 -21
- package/src/app/seguridad/modelos/{ReporteFuenteModel.ts → ReporteFuenteModel.d.ts} +87 -141
- package/src/app/seguridad/modelos/ReporteMarcador.d.ts +39 -0
- package/src/app/seguridad/modelos/ReporteSoporte.d.ts +9 -0
- package/src/app/seguridad/modelos/ReporteTabla.d.ts +12 -0
- package/src/app/seguridad/modelos/RespuestaModel.d.ts +8 -0
- package/src/app/seguridad/modelos/{RolModel.ts → RolModel.d.ts} +37 -41
- package/src/app/seguridad/modelos/ServidorCorreoModel.d.ts +25 -0
- package/src/app/seguridad/modelos/SistemaMensajeModel.d.ts +8 -0
- package/src/app/seguridad/modelos/SitioPortalModel.d.ts +24 -0
- package/src/app/seguridad/modelos/TablaFromModel.d.ts +4 -0
- package/src/app/seguridad/modelos/TareasModel.d.ts +49 -0
- package/src/app/seguridad/modelos/TextoModel.d.ts +8 -0
- package/src/app/seguridad/modelos/TipoEtiqueta.d.ts +7 -0
- package/src/app/seguridad/modelos/UnionModel.d.ts +11 -0
- package/src/app/seguridad/modelos/{UsuarioModel.ts → UsuarioModel.d.ts} +49 -60
- package/src/app/seguridad/modelos/UsuariogrupoModel.d.ts +22 -0
- package/src/app/seguridad/modelos/aplicacion-propiedad-model.d.ts +13 -0
- package/src/app/seguridad/modelos/contenidoCorreoModel.d.ts +9 -0
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.d.ts +47 -0
- package/src/app/shared/servicios/cargar-archivos.service.d.ts +15 -0
- package/src/app/shared/servicios/cargar-mapas.service.d.ts +18 -0
- package/src/app/shared/servicios/encriptado-basico.service.d.ts +10 -0
- package/src/app/shared/servicios/general.service.d.ts +24 -0
- package/src/app/shared/servicios/parametros-navegacion.service.d.ts +9 -0
- package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.d.ts +79 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.d.ts +79 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.d.ts +29 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.d.ts +69 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.d.ts +51 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.d.ts +77 -0
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.d.ts +278 -0
- package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.d.ts +42 -0
- package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.d.ts +35 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.d.ts +143 -0
- package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.d.ts +49 -0
- package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.d.ts +132 -0
- package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.d.ts +64 -0
- package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.d.ts +33 -0
- package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.d.ts +149 -0
- package/src/app/webcommon/pipes/dashboard.pipe.d.ts +48 -0
- package/src/app/webcommon/pipes/fuente.pipe.d.ts +136 -0
- package/src/app/webcommon/pipes/general.pipe.d.ts +647 -0
- package/src/app/webcommon/pipes/reporte-columnario.pipe.d.ts +59 -0
- package/src/app/webcommon/pipes/reporte-fuente.pipe.d.ts +193 -0
- package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.d.ts +59 -0
- package/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.d.ts +27 -0
- package/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.d.ts +21 -0
- package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.d.ts +64 -0
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.d.ts +63 -0
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.d.ts +105 -0
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.d.ts +21 -0
- package/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.d.ts +42 -0
- package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.d.ts +30 -0
- package/src/app/webcommon/services/carguelinea.service.d.ts +19 -0
- package/src/app/webcommon/services/dashboard.service.d.ts +27 -0
- package/src/app/webcommon/services/ejecucionreporte.service.d.ts +34 -0
- package/src/app/webcommon/services/fechaUtils.service.d.ts +30 -0
- package/src/app/webcommon/services/fuentegeneral.service.d.ts +24 -0
- package/src/app/webcommon/services/homologacion.service.d.ts +17 -0
- package/src/app/webcommon/services/plantillas.service.d.ts +26 -0
- package/src/app/webcommon/services/reportes.service.d.ts +35 -0
- package/src/app/webcommon/webcommon.module.d.ts +6 -0
- package/src/environments/environment.d.ts +7 -0
- package/.browserslistrc +0 -15
- package/.editorconfig +0 -16
- package/.vscode/extensions.json +0 -4
- package/.vscode/launch.json +0 -20
- package/.vscode/tasks.json +0 -42
- package/angular.json +0 -143
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -21
- package/src/app/app.component.html +0 -12
- package/src/app/app.component.scss +0 -0
- package/src/app/app.component.spec.ts +0 -29
- package/src/app/app.component.ts +0 -34
- package/src/app/app.config.ts +0 -43
- package/src/app/app.module.ts +0 -10
- package/src/app/app.routes.ts +0 -88
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.html +0 -6
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.scss +0 -0
- package/src/app/core/componentes/breadcrumb/breadcrumb.component.ts +0 -39
- package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.html +0 -1
- package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.scss +0 -0
- package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.ts +0 -31
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.html +0 -9
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.scss +0 -28
- package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.ts +0 -32
- package/src/app/core/componentes/filtro-general/filtro-general.component.html +0 -36
- package/src/app/core/componentes/filtro-general/filtro-general.component.scss +0 -3
- package/src/app/core/componentes/filtro-general/filtro-general.component.ts +0 -203
- package/src/app/core/componentes/footer/footer.component.html +0 -13
- package/src/app/core/componentes/footer/footer.component.scss +0 -3
- package/src/app/core/componentes/footer/footer.component.ts +0 -20
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.html +0 -267
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.scss +0 -21
- package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.ts +0 -275
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.ts +0 -118
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.ts +0 -76
- package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.ts +0 -67
- package/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.ts +0 -11
- package/src/app/core/componentes/inicio-component/inicio-component.component.html +0 -29
- package/src/app/core/componentes/inicio-component/inicio-component.component.scss +0 -69
- package/src/app/core/componentes/inicio-component/inicio-component.component.ts +0 -70
- package/src/app/core/componentes/menu/menu.component.html +0 -13
- package/src/app/core/componentes/menu/menu.component.scss +0 -36
- package/src/app/core/componentes/menu/menu.component.ts +0 -35
- package/src/app/core/componentes/tabla-general/tabla-general.component.html +0 -90
- package/src/app/core/componentes/tabla-general/tabla-general.component.scss +0 -0
- package/src/app/core/componentes/tabla-general/tabla-general.component.ts +0 -96
- package/src/app/core/core.module.ts +0 -22
- package/src/app/core/errores/authentication.error.ts +0 -6
- package/src/app/core/modelos/error-response.model.ts +0 -9
- package/src/app/core/modelos/table-column.model.ts +0 -10
- package/src/app/core/modelos/user.model.ts +0 -6
- package/src/app/core/plantilla-general/plantilla-general.template.html +0 -139
- package/src/app/core/plantilla-general/plantilla-general.template.scss +0 -37
- package/src/app/core/plantilla-general/plantilla-general.template.ts +0 -233
- package/src/app/core/servicios/auth.service.ts +0 -189
- package/src/app/core/servicios/cargar-control-funcionalidad.service.ts +0 -48
- package/src/app/core/servicios/data-exporter-table.utils.ts +0 -78
- package/src/app/core/servicios/error-interceptor.service.ts +0 -208
- package/src/app/core/servicios/guardias/auth.guard.ts +0 -51
- package/src/app/core/servicios/guardias/publico.guard.ts +0 -26
- package/src/app/core/servicios/interceptores/loading-interceptor.ts +0 -37
- package/src/app/core/servicios/interceptores/token-interceptor.service.ts +0 -177
- package/src/app/core/servicios/loading.service.ts +0 -48
- package/src/app/core/servicios/menu.service.ts +0 -153
- package/src/app/core/servicios/spinner-service.ts +0 -18
- package/src/app/core/servicios/storage.service.ts +0 -68
- package/src/app/core/servicios/template.service.ts +0 -91
- package/src/app/core/servicios/toast.service.ts +0 -114
- package/src/app/core/servicios/utils.service.ts +0 -367
- package/src/app/core/sharedlib.module.ts +0 -11
- package/src/app/core/utilidades/color.util.ts +0 -197
- package/src/app/layout/app.breadcrumb.component.html +0 -20
- package/src/app/layout/app.breadcrumb.component.ts +0 -78
- package/src/app/layout/app.footer.component.html +0 -18
- package/src/app/layout/app.footer.component.ts +0 -15
- package/src/app/layout/app.layout.component.html +0 -20
- package/src/app/layout/app.layout.component.ts +0 -201
- package/src/app/layout/app.layout.module.ts +0 -9
- package/src/app/layout/app.menu.component.html +0 -6
- package/src/app/layout/app.menu.component.ts +0 -51
- package/src/app/layout/app.menu.service.ts +0 -23
- package/src/app/layout/app.menuitem.component.ts +0 -252
- package/src/app/layout/app.menuprofile.component.html +0 -35
- package/src/app/layout/app.menuprofile.component.ts +0 -60
- package/src/app/layout/app.rightmenu.component.html +0 -72
- package/src/app/layout/app.rightmenu.component.ts +0 -24
- package/src/app/layout/app.sidebar.component.html +0 -40
- package/src/app/layout/app.sidebar.component.ts +0 -81
- package/src/app/layout/app.topbar.component.html +0 -214
- package/src/app/layout/app.topbar.component.ts +0 -336
- package/src/app/layout/config/app.config.component.html +0 -125
- package/src/app/layout/config/app.config.component.ts +0 -206
- package/src/app/layout/config/app.config.module.ts +0 -11
- package/src/app/layout/service/app.layout.service.ts +0 -191
- package/src/app/publico/pages/login/login.page.html +0 -53
- package/src/app/publico/pages/login/login.page.scss +0 -210
- package/src/app/publico/pages/login/login.page.ts +0 -130
- package/src/app/publico/pages/not-found/not-found.page.html +0 -35
- package/src/app/publico/pages/not-found/not-found.page.scss +0 -2
- package/src/app/publico/pages/not-found/not-found.page.ts +0 -46
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.html +0 -58
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.scss +0 -49
- package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.ts +0 -176
- package/src/app/publico/pages/timeout/timeout.page.html +0 -24
- package/src/app/publico/pages/timeout/timeout.page.scss +0 -2
- package/src/app/publico/pages/timeout/timeout.page.ts +0 -18
- package/src/app/seguridad/constantes/ConstantesGenerales.ts +0 -30
- package/src/app/seguridad/constantes/ReporteEntradaConstantes.ts +0 -18
- package/src/app/seguridad/constantes/ReporteFuenteConstantes.ts +0 -13
- package/src/app/seguridad/modelos/AplicacionModel.ts +0 -11
- package/src/app/seguridad/modelos/ArchivoPortalModel.ts +0 -16
- package/src/app/seguridad/modelos/AtributoPuntoModel.ts +0 -9
- package/src/app/seguridad/modelos/AtributoSSOportalModel.ts +0 -22
- package/src/app/seguridad/modelos/CargueLineaModel.ts +0 -17
- package/src/app/seguridad/modelos/ColoresRGB.ts +0 -17
- package/src/app/seguridad/modelos/ColumnaFuenteModel.ts +0 -9
- package/src/app/seguridad/modelos/ComplementoModel.ts +0 -10
- package/src/app/seguridad/modelos/ComponentePaginaModel.ts +0 -22
- package/src/app/seguridad/modelos/ConexionModel.ts +0 -15
- package/src/app/seguridad/modelos/ControlFuncionModel.ts +0 -10
- package/src/app/seguridad/modelos/CorreoModel.ts +0 -45
- package/src/app/seguridad/modelos/CorreoWSModel.ts +0 -49
- package/src/app/seguridad/modelos/CruceRecursoPuntoModel.ts +0 -14
- package/src/app/seguridad/modelos/EmpresaModel.ts +0 -25
- package/src/app/seguridad/modelos/EmpresaSeguridadModel.ts +0 -19
- package/src/app/seguridad/modelos/EtiquetaModel.ts +0 -4
- package/src/app/seguridad/modelos/Etiquetas.ts +0 -14
- package/src/app/seguridad/modelos/FuenteCampoAtributoModel.ts +0 -21
- package/src/app/seguridad/modelos/FuenteDato.ts +0 -19
- package/src/app/seguridad/modelos/FuenteEntradaModel.ts +0 -9
- package/src/app/seguridad/modelos/FuenteLineaServicioModel.ts +0 -19
- package/src/app/seguridad/modelos/FuenteProcesoGeneralModel.ts +0 -14
- package/src/app/seguridad/modelos/FuncionalidadModel.ts +0 -12
- package/src/app/seguridad/modelos/GeneralModel.ts +0 -16
- package/src/app/seguridad/modelos/GrupoControlFuncionModel.ts +0 -12
- package/src/app/seguridad/modelos/GrupoFuenteModel.ts +0 -17
- package/src/app/seguridad/modelos/GrupoPermisoModel.ts +0 -16
- package/src/app/seguridad/modelos/ListaServicioModel.ts +0 -18
- package/src/app/seguridad/modelos/LlaveForaneaModel.ts +0 -6
- package/src/app/seguridad/modelos/LoginModel.ts +0 -19
- package/src/app/seguridad/modelos/MensajeSistemaModel.ts +0 -10
- package/src/app/seguridad/modelos/ModulosModel.ts +0 -17
- package/src/app/seguridad/modelos/PaginaPortalModel.ts +0 -23
- package/src/app/seguridad/modelos/ParametroComponenteModel.ts +0 -9
- package/src/app/seguridad/modelos/ParametrosGeneralModel.ts +0 -16
- package/src/app/seguridad/modelos/PermisoFuncionModel.ts +0 -11
- package/src/app/seguridad/modelos/PermisocontenidoModel.ts +0 -20
- package/src/app/seguridad/modelos/PreguntaSeguridadModel.ts +0 -9
- package/src/app/seguridad/modelos/PropiedadModel.ts +0 -12
- package/src/app/seguridad/modelos/PublicacionWebModel.ts +0 -29
- package/src/app/seguridad/modelos/PuntoProcesoModel.ts +0 -7
- package/src/app/seguridad/modelos/RecursoPunto.ts +0 -13
- package/src/app/seguridad/modelos/RecursoPuntoModel.ts +0 -13
- package/src/app/seguridad/modelos/ReporteBanda.ts +0 -9
- package/src/app/seguridad/modelos/ReporteColumna.ts +0 -33
- package/src/app/seguridad/modelos/ReporteColumnario.ts +0 -82
- package/src/app/seguridad/modelos/ReporteColumnarioMarcador.ts +0 -31
- package/src/app/seguridad/modelos/ReporteMarcador.ts +0 -40
- package/src/app/seguridad/modelos/ReporteSoporte.ts +0 -10
- package/src/app/seguridad/modelos/ReporteTabla.ts +0 -14
- package/src/app/seguridad/modelos/RespuestaModel.ts +0 -10
- package/src/app/seguridad/modelos/ServidorCorreoModel.ts +0 -31
- package/src/app/seguridad/modelos/SistemaMensajeModel.ts +0 -11
- package/src/app/seguridad/modelos/SitioPortalModel.ts +0 -29
- package/src/app/seguridad/modelos/TablaFromModel.ts +0 -5
- package/src/app/seguridad/modelos/TareasModel.ts +0 -54
- package/src/app/seguridad/modelos/TextoModel.ts +0 -11
- package/src/app/seguridad/modelos/TipoEtiqueta.ts +0 -8
- package/src/app/seguridad/modelos/UnionModel.ts +0 -14
- package/src/app/seguridad/modelos/UsuariogrupoModel.ts +0 -27
- package/src/app/seguridad/modelos/aplicacion-propiedad-model.ts +0 -16
- package/src/app/seguridad/modelos/contenidoCorreoModel.ts +0 -13
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.html +0 -47
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.scss +0 -8
- package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.ts +0 -144
- package/src/app/shared/servicios/cargar-archivos.service.ts +0 -51
- package/src/app/shared/servicios/cargar-mapas.service.ts +0 -43
- package/src/app/shared/servicios/encriptado-basico.service.ts +0 -54
- package/src/app/shared/servicios/encriptador-simetrico.service.ts +0 -29
- package/src/app/shared/servicios/general.service.ts +0 -124
- package/src/app/shared/servicios/parametros-navegacion.service.ts +0 -20
- package/src/app/shared/servicios/plantillas.service.ts +0 -22
- package/src/app/shared/servicios/tarea.service.ts +0 -71
- package/src/app/shared/utilidades/translate-loader.util.ts +0 -44
- package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.html +0 -175
- package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.scss +0 -78
- package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.ts +0 -438
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.html +0 -87
- 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 +0 -189
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.html +0 -117
- 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 +0 -87
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.html +0 -158
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.scss +0 -6
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.ts +0 -345
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.html +0 -131
- 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 +0 -198
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.html +0 -206
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.scss +0 -3
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.ts +0 -330
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.html +0 -2121
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.scss +0 -241
- package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.ts +0 -1694
- package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.html +0 -33
- 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 +0 -96
- package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.html +0 -54
- 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 +0 -111
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.html +0 -394
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.scss +0 -10
- package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.ts +0 -599
- package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.html +0 -130
- 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 +0 -172
- package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.html +0 -404
- package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.scss +0 -5
- package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.ts +0 -763
- package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.html +0 -145
- 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 +0 -302
- package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.html +0 -19
- 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 +0 -88
- package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.html +0 -714
- 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 +0 -688
- package/src/app/webcommon/pipes/dashboard.pipe.ts +0 -79
- package/src/app/webcommon/pipes/fuente.pipe.ts +0 -207
- package/src/app/webcommon/pipes/general.pipe.ts +0 -1046
- package/src/app/webcommon/pipes/reporte-columnario.pipe.ts +0 -101
- package/src/app/webcommon/pipes/reporte-fuente.pipe.ts +0 -306
- package/src/app/webcommon/pipes/sara-general.pipe.ts +0 -289
- package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.html +0 -90
- 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 +0 -262
- package/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.html +0 -50
- 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 +0 -135
- package/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.html +0 -44
- package/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.scss +0 -0
- package/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.ts +0 -66
- package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.html +0 -41
- 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 +0 -283
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.html +0 -179
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.scss +0 -3
- package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.ts +0 -266
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.html +0 -273
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.scss +0 -13
- package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.ts +0 -557
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.html +0 -10
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.scss +0 -5
- package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.ts +0 -58
- package/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.html +0 -71
- 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 +0 -154
- package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.html +0 -11
- 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 +0 -82
- package/src/app/webcommon/services/carguelinea.service.ts +0 -74
- package/src/app/webcommon/services/dashboard.service.ts +0 -258
- package/src/app/webcommon/services/ejecucionreporte.service.ts +0 -160
- package/src/app/webcommon/services/fechaUtils.service.ts +0 -127
- package/src/app/webcommon/services/fuentegeneral.service.ts +0 -74
- package/src/app/webcommon/services/homologacion.service.ts +0 -49
- package/src/app/webcommon/services/plantillas.service.ts +0 -165
- package/src/app/webcommon/services/reportes.service.ts +0 -133
- package/src/app/webcommon/webcommon.module.ts +0 -11
- package/src/environments/environment.prod.ts +0 -3
- package/src/environments/environment.ts +0 -25
- package/src/favicon.ico +0 -0
- package/src/index.html +0 -14
- package/src/main.ts +0 -12
- package/src/polyfills.ts +0 -53
- package/src/test.ts +0 -14
- package/tsconfig.app.json +0 -15
- package/tsconfig.json +0 -35
- package/tsconfig.spec.json +0 -18
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
import { Component, Input, ViewChild, ViewContainerRef, ViewChildren } from '@angular/core';
|
|
2
|
+
import { HashDirective } from './objetosformulario/HashDirective';
|
|
3
|
+
import { Cambio } from './objetosformulario/Cambio';
|
|
4
|
+
import { FormsModule } from '@angular/forms';
|
|
5
|
+
import { CalendarModule } from 'primeng/calendar';
|
|
6
|
+
import { CheckboxModule } from 'primeng/checkbox';
|
|
7
|
+
import { InputTextareaModule } from 'primeng/inputtextarea';
|
|
8
|
+
import { InputTextModule } from 'primeng/inputtext';
|
|
9
|
+
import { RadioButtonModule } from 'primeng/radiobutton';
|
|
10
|
+
import { TooltipModule } from 'primeng/tooltip';
|
|
11
|
+
import { DropdownModule } from 'primeng/dropdown';
|
|
12
|
+
import { PasswordModule } from 'primeng/password';
|
|
13
|
+
import { CommonModule } from '@angular/common';
|
|
14
|
+
import { InputNumberModule } from 'primeng/inputnumber';
|
|
15
|
+
import { AutoCompleteModule } from 'primeng/autocomplete';
|
|
16
|
+
import { TableModule } from 'primeng/table';
|
|
17
|
+
import * as i0 from "@angular/core";
|
|
18
|
+
import * as i1 from "../../../core/servicios/utils.service";
|
|
19
|
+
import * as i2 from "../../../shared/servicios/general.service";
|
|
20
|
+
import * as i3 from "../../servicios/auth.service";
|
|
21
|
+
import * as i4 from "@angular/forms";
|
|
22
|
+
import * as i5 from "primeng/calendar";
|
|
23
|
+
import * as i6 from "primeng/api";
|
|
24
|
+
import * as i7 from "primeng/checkbox";
|
|
25
|
+
import * as i8 from "primeng/inputtextarea";
|
|
26
|
+
import * as i9 from "primeng/inputtext";
|
|
27
|
+
import * as i10 from "primeng/radiobutton";
|
|
28
|
+
import * as i11 from "primeng/tooltip";
|
|
29
|
+
import * as i12 from "primeng/dropdown";
|
|
30
|
+
import * as i13 from "primeng/password";
|
|
31
|
+
import * as i14 from "@angular/common";
|
|
32
|
+
import * as i15 from "primeng/inputnumber";
|
|
33
|
+
import * as i16 from "primeng/autocomplete";
|
|
34
|
+
import * as i17 from "primeng/table";
|
|
35
|
+
export class FormulariodinamicoComponent {
|
|
36
|
+
utilsService;
|
|
37
|
+
generalService;
|
|
38
|
+
authService;
|
|
39
|
+
campos;
|
|
40
|
+
listaSiNoRadioButton = [{ name: 'Si', key: 'S' }, { name: 'No', key: 'N' }];
|
|
41
|
+
vcr;
|
|
42
|
+
hashes;
|
|
43
|
+
editable;
|
|
44
|
+
objeto;
|
|
45
|
+
isMensaje = false;
|
|
46
|
+
validando = false;
|
|
47
|
+
verMensajeFuncion = false;
|
|
48
|
+
autoZIndex = 'true';
|
|
49
|
+
constructor(utilsService, generalService, authService) {
|
|
50
|
+
this.utilsService = utilsService;
|
|
51
|
+
this.generalService = generalService;
|
|
52
|
+
this.authService = authService;
|
|
53
|
+
}
|
|
54
|
+
ngOnChanges() {
|
|
55
|
+
}
|
|
56
|
+
ngAfterViewInit() {
|
|
57
|
+
this.verMensajeFuncion = false;
|
|
58
|
+
this.campos.forEach(campo => {
|
|
59
|
+
if (campo.mensajeFuncion) {
|
|
60
|
+
this.verMensajeFuncion = true;
|
|
61
|
+
}
|
|
62
|
+
if (campo.tipo == 'P') {
|
|
63
|
+
if (campo.popupComponent) {
|
|
64
|
+
this.mostrarPopupFormulario(campo).then(data => { });
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
this.campos.sort((a, b) => a.orden - b.orden);
|
|
69
|
+
}
|
|
70
|
+
ngOnInit() {
|
|
71
|
+
}
|
|
72
|
+
modificar(objeto, editable) {
|
|
73
|
+
this.limpiar();
|
|
74
|
+
this.objeto = objeto;
|
|
75
|
+
this.editable = editable;
|
|
76
|
+
this.campos.forEach(campo => {
|
|
77
|
+
if (!campo.caracteristica) {
|
|
78
|
+
for (let atributo in objeto) {
|
|
79
|
+
let valor = objeto[atributo];
|
|
80
|
+
if (atributo == campo.campo) {
|
|
81
|
+
this.cargarValor(campo.campo, valor, null);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
if (campo.campoDepende != null) {
|
|
86
|
+
this.campos.forEach(campo2 => {
|
|
87
|
+
if (campo2.campo == campo.campoDepende) {
|
|
88
|
+
campo2.campoReferencia = campo.valor;
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
this.campos.sort((a, b) => a.orden - b.orden);
|
|
94
|
+
}
|
|
95
|
+
modificarValorCamposAdicionales(objeto, idGrupo) {
|
|
96
|
+
this.objeto = objeto;
|
|
97
|
+
this.campos.forEach(campo => {
|
|
98
|
+
if (idGrupo == campo.idGrupoPertenece) {
|
|
99
|
+
if (!campo.caracteristica) {
|
|
100
|
+
for (let atributo in objeto) {
|
|
101
|
+
let valor = objeto[atributo];
|
|
102
|
+
if (atributo == campo.campo) {
|
|
103
|
+
this.cargarValor(campo.campo, valor, null);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
if (campo.campoDepende != null) {
|
|
108
|
+
this.campos.forEach(campo2 => {
|
|
109
|
+
if (campo2.campo == campo.campoDepende) {
|
|
110
|
+
campo2.campoReferencia = campo.valor;
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
this.campos.sort((a, b) => a.orden - b.orden);
|
|
117
|
+
}
|
|
118
|
+
guardar() {
|
|
119
|
+
this.campos.forEach(data => {
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
setValorPopup(objeto) {
|
|
123
|
+
}
|
|
124
|
+
async loadComponentDynamic(campo, component, props) {
|
|
125
|
+
var container = this.getContainerFor(campo.popup);
|
|
126
|
+
container.clear();
|
|
127
|
+
const hasProps = !!Object.keys(props).length;
|
|
128
|
+
const compRef = container.createComponent(component); //Angular 13
|
|
129
|
+
if (hasProps) {
|
|
130
|
+
for (let key of Object.keys(props)) {
|
|
131
|
+
compRef.instance[key] = props[key];
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
const componente = new campo.popupComponent();
|
|
135
|
+
if ('getDescripcionLlave' in componente) {
|
|
136
|
+
compRef.instance['label'] = await componente.getDescripcionLlave(this.generalService, this.authService, campo.valor, campo);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
getContainerFor(name) {
|
|
140
|
+
return this.hashes.find(x => x.hash === name).vcRef;
|
|
141
|
+
}
|
|
142
|
+
async mostrarPopupFormulario(campo) {
|
|
143
|
+
await this.loadComponentDynamic(campo, campo.popupComponent, campo.propiedadesPopupComponent);
|
|
144
|
+
}
|
|
145
|
+
validar() {
|
|
146
|
+
this.validando = true;
|
|
147
|
+
var validador = true;
|
|
148
|
+
this.campos.forEach(campo => {
|
|
149
|
+
if (campo.obligatorio && !this.utilsService.validarCampoObligatorio(campo.valor)) {
|
|
150
|
+
if (campo.tipo == 'P') {
|
|
151
|
+
var container = this.getContainerFor(campo.popup);
|
|
152
|
+
container.clear();
|
|
153
|
+
let props = campo.propiedadesPopupComponent;
|
|
154
|
+
const hasProps = !!Object.keys(props).length;
|
|
155
|
+
const compRef = container.createComponent(campo.popupComponent); //Angular 13
|
|
156
|
+
if (hasProps) {
|
|
157
|
+
for (let key of Object.keys(props)) {
|
|
158
|
+
compRef.instance[key] = props[key];
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
compRef.instance['booleano'] = true;
|
|
162
|
+
}
|
|
163
|
+
validador = validador && false;
|
|
164
|
+
}
|
|
165
|
+
});
|
|
166
|
+
return validador;
|
|
167
|
+
}
|
|
168
|
+
getObjecto() {
|
|
169
|
+
var campos2 = this.campos.filter(data => !data.caracteristica);
|
|
170
|
+
campos2.forEach(campo => {
|
|
171
|
+
this.objeto[campo.campo] = campo.valor;
|
|
172
|
+
});
|
|
173
|
+
return this.objeto;
|
|
174
|
+
}
|
|
175
|
+
camposCaracteristicaClear() {
|
|
176
|
+
for (let i = 0; i < this.campos.length; i++) {
|
|
177
|
+
if (this.campos[i].caracteristica) {
|
|
178
|
+
this.campos.splice(i, 1);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
cargarValor(campo, valor, dato) {
|
|
183
|
+
this.campos.forEach(campoF => {
|
|
184
|
+
if (campoF.campo == campo) {
|
|
185
|
+
//campoF.cargar(valor);
|
|
186
|
+
campoF.valor = valor;
|
|
187
|
+
campoF.dato = dato;
|
|
188
|
+
}
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
getCamposCaracteristica() {
|
|
192
|
+
var camposReturn = [];
|
|
193
|
+
this.campos.forEach(campo => {
|
|
194
|
+
if (campo.caracteristica) {
|
|
195
|
+
camposReturn.push(campo);
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
return camposReturn;
|
|
199
|
+
}
|
|
200
|
+
obtenerCampo(campo) {
|
|
201
|
+
var retorno = null;
|
|
202
|
+
this.campos.forEach(cam => {
|
|
203
|
+
if (cam.campo != null && cam.campo == campo) {
|
|
204
|
+
retorno = cam;
|
|
205
|
+
}
|
|
206
|
+
});
|
|
207
|
+
return retorno;
|
|
208
|
+
}
|
|
209
|
+
limpiar() {
|
|
210
|
+
if (this.campos != null && this.campos.length > 0) {
|
|
211
|
+
this.campos.forEach(campo => {
|
|
212
|
+
campo.valor = null;
|
|
213
|
+
campo.resaltado = false;
|
|
214
|
+
campo.mensajeFuncion = null;
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
validarVisibilidadCampos(campo) {
|
|
219
|
+
if ((campo.tipo == 'N' && campo.editable == 'N')) {
|
|
220
|
+
return false;
|
|
221
|
+
}
|
|
222
|
+
return true;
|
|
223
|
+
}
|
|
224
|
+
editarPermisoCamposPorIdGrupo(idGrupo, permisoCampo) {
|
|
225
|
+
this.campos.forEach(campo => {
|
|
226
|
+
if (idGrupo != campo.idGrupoPertenece || campo.editable == 'L') {
|
|
227
|
+
return;
|
|
228
|
+
}
|
|
229
|
+
campo.editable = permisoCampo;
|
|
230
|
+
});
|
|
231
|
+
}
|
|
232
|
+
getCambios() {
|
|
233
|
+
const cambios = [];
|
|
234
|
+
for (const campo of this.campos) {
|
|
235
|
+
if (campo.isCambio()) {
|
|
236
|
+
cambios.push(new Cambio(campo.original, campo.valor, campo));
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
return cambios;
|
|
240
|
+
}
|
|
241
|
+
removerCamposIdGrupo(idGrupo) {
|
|
242
|
+
var camposRemover = [];
|
|
243
|
+
this.campos.forEach(campo => {
|
|
244
|
+
if (idGrupo != campo.idGrupoPertenece) {
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
camposRemover.push(campo);
|
|
248
|
+
});
|
|
249
|
+
this.campos = this.campos.filter(obj => !camposRemover.some(objEliminar => objEliminar.campo === obj.campo));
|
|
250
|
+
}
|
|
251
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: FormulariodinamicoComponent, deps: [{ token: i1.UtilsService }, { token: i2.GeneralService }, { token: i3.AuthService }], target: i0.ɵɵFactoryTarget.Component });
|
|
252
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.4", type: FormulariodinamicoComponent, isStandalone: true, selector: "formulario-dinamico", inputs: { campos: "campos", editable: "editable", objeto: "objeto", isMensaje: "isMensaje" }, viewQueries: [{ propertyName: "vcr", first: true, predicate: ["popup"], descendants: true, read: ViewContainerRef }, { propertyName: "hashes", predicate: HashDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<p-table [value]=\"campos\">\r\n <ng-template pTemplate=\"body\" let-campo>\r\n <tr *ngIf=\"validarVisibilidadCampos(campo)\">\r\n <td style=\"width: 20%;\">\r\n <label *ngIf=\"campo.editable != 'N'\" [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [class]=\"campo.tipo == 'I' ? 'font-bold color-400 mt-7' : ''\">\r\n {{ campo.descripcion }} \r\n <ng-container *ngIf=\"campo.editable != 'N' && campo.obligatorio\">*</ng-container>\r\n </label>\r\n </td>\r\n <td style=\"width: 80%\">\r\n <div class=\"p-fluid p-formgrid grid\">\r\n <div [ngClass]=\"campo.ayuda && campo.editable != 'N' ? 'col-11' : 'col-12'\">\r\n <!--campo tipo FECHA-->\r\n <p-calendar\r\n class=\"w-full\"\r\n appendTo=\"body\" \r\n type=\"text\"\r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n dateFormat=\"dd/mm/yy\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n *ngIf=\"campo.tipo == 'F' && campo.editable != 'N'\"\r\n [showIcon]=\"true\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n \r\n ></p-calendar>\r\n\r\n <!--campo tipo HORA-->\r\n <p-calendar\r\n class=\"w-full\"\r\n appendTo=\"body\" \r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n *ngIf=\"campo.tipo == 'X' && campo.editable != 'N'\"\r\n [showTime]=\"true\"\r\n [showSeconds]=\"true\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n ></p-calendar>\r\n\r\n <!--campo tipo HORA VALOR-->\r\n <input\r\n pInputText\r\n type=\"time\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n *ngIf=\"campo.tipo == 'Z' && campo.editable != 'N'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n />\r\n\r\n <!--campo tipo TEXTO-->\r\n <input\r\n pInputText\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n *ngIf=\"campo.tipo == 'T' && campo.editable != 'N'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n />\r\n\r\n <!--campo tipo AREA TEXTO-->\r\n <textarea\r\n pInputTextarea\r\n [(ngModel)]=\"campo.valor\"\r\n rows=\"5\"\r\n cols=\"5\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n *ngIf=\"campo.tipo == 'A' && campo.editable != 'N'\"\r\n class=\"w-full p-inputtextarea p-inputtext p-component p-element min-h-100 max-h-250\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n >\r\n </textarea>\r\n\r\n <!--campo tipo NUMERO-->\r\n <p-inputNumber\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n [maxlength]=\"campo.longitud\"\r\n *ngIf=\"campo.tipo == 'N' && campo.editable != 'N'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n >\r\n </p-inputNumber>\r\n\r\n <!--campo tipo DECIMAL-->\r\n <p-inputNumber\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n mode=\"decimal\"\r\n [minFractionDigits]=\"2\"\r\n *ngIf=\"campo.tipo == 'D' && campo.editable != 'N'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n >\r\n </p-inputNumber>\r\n\r\n <!--campo tipo SECRET-->\r\n <p-password\r\n [feedback]=\"false\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n *ngIf=\"campo.tipo == 'S' && campo.editable != 'N'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n ></p-password>\r\n\r\n <!--campo tipo COMBO-->\r\n <p-dropdown\r\n class=\"w-full\"\r\n appendTo=\"body\"\r\n [options]=\"campo.lista\"\r\n [autoDisplayFirst]=\"false\"\r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n *ngIf=\"campo.tipo == 'C' && campo.editable != 'N'\"\r\n [showClear]=\"!campo.obligatorio\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n >\r\n </p-dropdown>\r\n\r\n <!--campo tipo LOGICO-->\r\n <div *ngIf=\"campo.tipo == 'L' && campo.editable != 'N'\">\r\n <div class=\"col-md-12\">\r\n <div class=\"p-fluid p-formgrid grid\">\r\n <div *ngFor=\"let valor of listaSiNoRadioButton\" class=\"mt-4 col-12 md:col-2 field-checkbox\">\r\n <p-radioButton\r\n [inputId]=\"valor.key\"\r\n name=\"valor\"\r\n [value]=\"valor.key\"\r\n [label]=\"valor.name\"\r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n ></p-radioButton>\r\n <label> </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!--campo tipo RADIO-->\r\n <div *ngIf=\"campo.tipo == 'R' && campo.editable != 'N'\">\r\n <div class=\"col-md-12\">\r\n <div class=\"p-fluid p-formgrid grid\">\r\n <div *ngFor=\"let valor of campo.lista\" class=\"mt-4 col-12 md:col-2 field-checkbox\">\r\n <p-radioButton\r\n [inputId]=\"valor.value\"\r\n name=\"valor\"\r\n [value]=\"valor.value\"\r\n [label]=\"valor.label\"\r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n ></p-radioButton>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!--campo tipo CHECKBOX-->\r\n <div *ngIf=\"campo.tipo == 'H' && campo.editable != 'N'\">\r\n <div class=\"col-md-12\">\r\n <div class=\"p-fluid p-formgrid grid\">\r\n <div *ngFor=\"let valor of campo.lista\" class=\"col-12 md:col-3 field-checkbox\">\r\n <p-checkbox\r\n [inputId]=\"valor.value\"\r\n name=\"valor\"\r\n [value]=\"valor\"\r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n ></p-checkbox>\r\n <label [for]=\"valor.value\">{{ valor.label }}</label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!--campo tipo AUTOCOMPLETAR-->\r\n <p-autoComplete\r\n *ngIf=\"\r\n (campo.tipo == 'O' || campo.tipo == 'Y') && campo.editable != 'N'\r\n \"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n [suggestions]=\"campo.listaAutocompleteFiltrada\"\r\n (completeMethod)=\"campo.filtrarAutocomplete($event)\"\r\n field=\"label\"\r\n [dropdown]=\"true\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n >\r\n <ng-template let-valor pTemplate=\"item\">\r\n <div>\r\n <div>{{ valor.label }}</div>\r\n </div>\r\n </ng-template>\r\n </p-autoComplete>\r\n\r\n <!--campo tipo POPUP-->\r\n <div class=\"field\" *ngIf=\"campo.tipo == 'P' && campo.editable != 'N'\" >\r\n <ng-container *ngFor=\"let item of campo.listaPopups\" [hash]=\"item\"></ng-container>\r\n </div>\r\n <div *ngIf=\"verMensajeFuncion\" class=\"text-center w-1\">\r\n <label>{{ campo.mensajeFuncion }}</label>\r\n </div>\r\n <div *ngIf=\"isMensaje\">\r\n <label *ngIf=\"campo.mensaje\">{{ campo.mensaje }}</label>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"campo.ayuda && campo.editable != 'N'\" class=\"col-1 contenedor\" >\r\n <span\r\n class=\"w-1rem\"\r\n style=\"color: var(--color-400)\"\r\n tooltipStyleClass=\"tw-250\"\r\n [hideDelay]=\"1800\"\r\n pTooltip=\"{{ campo.ayuda }}\"\r\n tooltipPosition=\"top\"\r\n *ngIf=\"campo.ayuda && campo.editable != 'N'\"\r\n ><i class=\"pi pi-question-circle\"></i\r\n ></span>\r\n </div>\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n</p-table>", styles: [".contenedor{display:flex;justify-content:center;align-items:center}:host ::ng-deep .subtitulo{display:table;margin-top:12px;margin-bottom:30px}:host ::ng-deep .subtitulo label{position:absolute;font-weight:600;color:#232323}:host ::ng-deep .p-datatable table{background:#fafafa}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CalendarModule }, { kind: "component", type: i5.Calendar, selector: "p-calendar", inputs: ["iconDisplay", "style", "styleClass", "inputStyle", "inputId", "name", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "disabled", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "appendTo", "readonlyInput", "shortYearCutoff", "monthNavigator", "yearNavigator", "hourFormat", "timeOnly", "stepYearPicker", "stepHour", "stepMinute", "stepSecond", "showSeconds", "required", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "variant", "minDate", "maxDate", "disabledDates", "disabledDays", "yearRange", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "locale", "view", "defaultDate"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "directive", type: i6.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i7.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "autofocus", "trueValue", "falseValue", "variant"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "ngmodule", type: InputTextareaModule }, { kind: "directive", type: i8.InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize", "variant"], outputs: ["onResize"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i9.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "ngmodule", type: RadioButtonModule }, { kind: "component", type: i10.RadioButton, selector: "p-radioButton", inputs: ["value", "formControlName", "name", "disabled", "label", "variant", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "style", "styleClass", "labelStyleClass", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i11.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i12.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: PasswordModule }, { kind: "component", type: i13.Password, selector: "p-password", inputs: ["ariaLabel", "ariaLabelledBy", "label", "disabled", "promptLabel", "mediumRegex", "strongRegex", "weakLabel", "mediumLabel", "maxLength", "strongLabel", "inputId", "feedback", "appendTo", "toggleMask", "inputStyleClass", "styleClass", "style", "inputStyle", "showTransitionOptions", "hideTransitionOptions", "autocomplete", "placeholder", "showClear", "autofocus", "variant"], outputs: ["onFocus", "onBlur", "onClear"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i14.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i14.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i14.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: InputNumberModule }, { kind: "component", type: i15.InputNumber, selector: "p-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "ngmodule", type: AutoCompleteModule }, { kind: "component", type: i16.AutoComplete, selector: "p-autoComplete", inputs: ["minLength", "delay", "style", "panelStyle", "styleClass", "panelStyleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "readonly", "disabled", "scrollHeight", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "maxlength", "name", "required", "size", "appendTo", "autoHighlight", "forceSelection", "type", "autoZIndex", "baseZIndex", "ariaLabel", "dropdownAriaLabel", "ariaLabelledBy", "dropdownIcon", "unique", "group", "completeOnFocus", "showClear", "field", "dropdown", "showEmptyMessage", "dropdownMode", "multiple", "tabindex", "dataKey", "emptyMessage", "showTransitionOptions", "hideTransitionOptions", "autofocus", "autocomplete", "optionGroupChildren", "optionGroupLabel", "overlayOptions", "suggestions", "itemSize", "optionLabel", "optionValue", "id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "selectOnFocus", "searchLocale", "optionDisabled", "focusOnHover", "variant"], outputs: ["completeMethod", "onSelect", "onUnselect", "onFocus", "onBlur", "onDropdownClick", "onClear", "onKeyUp", "onShow", "onHide", "onLazyLoad"] }, { kind: "directive", type: HashDirective, selector: "[hash]", inputs: ["hash"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i17.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }] });
|
|
253
|
+
}
|
|
254
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: FormulariodinamicoComponent, decorators: [{
|
|
255
|
+
type: Component,
|
|
256
|
+
args: [{ selector: 'formulario-dinamico', imports: [FormsModule, CalendarModule, CheckboxModule, InputTextareaModule, InputTextModule, RadioButtonModule, TooltipModule, DropdownModule, PasswordModule, CommonModule, InputNumberModule, AutoCompleteModule, HashDirective, TableModule], standalone: true, template: "<p-table [value]=\"campos\">\r\n <ng-template pTemplate=\"body\" let-campo>\r\n <tr *ngIf=\"validarVisibilidadCampos(campo)\">\r\n <td style=\"width: 20%;\">\r\n <label *ngIf=\"campo.editable != 'N'\" [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [class]=\"campo.tipo == 'I' ? 'font-bold color-400 mt-7' : ''\">\r\n {{ campo.descripcion }} \r\n <ng-container *ngIf=\"campo.editable != 'N' && campo.obligatorio\">*</ng-container>\r\n </label>\r\n </td>\r\n <td style=\"width: 80%\">\r\n <div class=\"p-fluid p-formgrid grid\">\r\n <div [ngClass]=\"campo.ayuda && campo.editable != 'N' ? 'col-11' : 'col-12'\">\r\n <!--campo tipo FECHA-->\r\n <p-calendar\r\n class=\"w-full\"\r\n appendTo=\"body\" \r\n type=\"text\"\r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n dateFormat=\"dd/mm/yy\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n *ngIf=\"campo.tipo == 'F' && campo.editable != 'N'\"\r\n [showIcon]=\"true\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n \r\n ></p-calendar>\r\n\r\n <!--campo tipo HORA-->\r\n <p-calendar\r\n class=\"w-full\"\r\n appendTo=\"body\" \r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n *ngIf=\"campo.tipo == 'X' && campo.editable != 'N'\"\r\n [showTime]=\"true\"\r\n [showSeconds]=\"true\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n ></p-calendar>\r\n\r\n <!--campo tipo HORA VALOR-->\r\n <input\r\n pInputText\r\n type=\"time\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n *ngIf=\"campo.tipo == 'Z' && campo.editable != 'N'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n />\r\n\r\n <!--campo tipo TEXTO-->\r\n <input\r\n pInputText\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n *ngIf=\"campo.tipo == 'T' && campo.editable != 'N'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n />\r\n\r\n <!--campo tipo AREA TEXTO-->\r\n <textarea\r\n pInputTextarea\r\n [(ngModel)]=\"campo.valor\"\r\n rows=\"5\"\r\n cols=\"5\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n *ngIf=\"campo.tipo == 'A' && campo.editable != 'N'\"\r\n class=\"w-full p-inputtextarea p-inputtext p-component p-element min-h-100 max-h-250\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n >\r\n </textarea>\r\n\r\n <!--campo tipo NUMERO-->\r\n <p-inputNumber\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n [maxlength]=\"campo.longitud\"\r\n *ngIf=\"campo.tipo == 'N' && campo.editable != 'N'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n >\r\n </p-inputNumber>\r\n\r\n <!--campo tipo DECIMAL-->\r\n <p-inputNumber\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n mode=\"decimal\"\r\n [minFractionDigits]=\"2\"\r\n *ngIf=\"campo.tipo == 'D' && campo.editable != 'N'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n >\r\n </p-inputNumber>\r\n\r\n <!--campo tipo SECRET-->\r\n <p-password\r\n [feedback]=\"false\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n [tabIndex]=\"campo.orden + 1\"\r\n *ngIf=\"campo.tipo == 'S' && campo.editable != 'N'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n ></p-password>\r\n\r\n <!--campo tipo COMBO-->\r\n <p-dropdown\r\n class=\"w-full\"\r\n appendTo=\"body\"\r\n [options]=\"campo.lista\"\r\n [autoDisplayFirst]=\"false\"\r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n *ngIf=\"campo.tipo == 'C' && campo.editable != 'N'\"\r\n [showClear]=\"!campo.obligatorio\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n >\r\n </p-dropdown>\r\n\r\n <!--campo tipo LOGICO-->\r\n <div *ngIf=\"campo.tipo == 'L' && campo.editable != 'N'\">\r\n <div class=\"col-md-12\">\r\n <div class=\"p-fluid p-formgrid grid\">\r\n <div *ngFor=\"let valor of listaSiNoRadioButton\" class=\"mt-4 col-12 md:col-2 field-checkbox\">\r\n <p-radioButton\r\n [inputId]=\"valor.key\"\r\n name=\"valor\"\r\n [value]=\"valor.key\"\r\n [label]=\"valor.name\"\r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n ></p-radioButton>\r\n <label> </label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <!--campo tipo RADIO-->\r\n <div *ngIf=\"campo.tipo == 'R' && campo.editable != 'N'\">\r\n <div class=\"col-md-12\">\r\n <div class=\"p-fluid p-formgrid grid\">\r\n <div *ngFor=\"let valor of campo.lista\" class=\"mt-4 col-12 md:col-2 field-checkbox\">\r\n <p-radioButton\r\n [inputId]=\"valor.value\"\r\n name=\"valor\"\r\n [value]=\"valor.value\"\r\n [label]=\"valor.label\"\r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n ></p-radioButton>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!--campo tipo CHECKBOX-->\r\n <div *ngIf=\"campo.tipo == 'H' && campo.editable != 'N'\">\r\n <div class=\"col-md-12\">\r\n <div class=\"p-fluid p-formgrid grid\">\r\n <div *ngFor=\"let valor of campo.lista\" class=\"col-12 md:col-3 field-checkbox\">\r\n <p-checkbox\r\n [inputId]=\"valor.value\"\r\n name=\"valor\"\r\n [value]=\"valor\"\r\n [(ngModel)]=\"campo.valor\"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n ></p-checkbox>\r\n <label [for]=\"valor.value\">{{ valor.label }}</label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!--campo tipo AUTOCOMPLETAR-->\r\n <p-autoComplete\r\n *ngIf=\"\r\n (campo.tipo == 'O' || campo.tipo == 'Y') && campo.editable != 'N'\r\n \"\r\n [disabled]=\"!editable || campo.editable == 'L'\"\r\n [(ngModel)]=\"campo.valor\"\r\n [suggestions]=\"campo.listaAutocompleteFiltrada\"\r\n (completeMethod)=\"campo.filtrarAutocomplete($event)\"\r\n field=\"label\"\r\n [dropdown]=\"true\"\r\n [style.color]=\"campo.resaltado ? 'var(--color-500) !important' : ''\"\r\n [pTooltip]=\"campo.novedad ? campo.novedad : null\" tooltipPosition=\"top\"\r\n [class.ng-dirty]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n [class.ng-invalid]=\"campo.obligatorio ? (!utilsService.validarCampoObligatorio(campo.valor) && validando) : false\"\r\n >\r\n <ng-template let-valor pTemplate=\"item\">\r\n <div>\r\n <div>{{ valor.label }}</div>\r\n </div>\r\n </ng-template>\r\n </p-autoComplete>\r\n\r\n <!--campo tipo POPUP-->\r\n <div class=\"field\" *ngIf=\"campo.tipo == 'P' && campo.editable != 'N'\" >\r\n <ng-container *ngFor=\"let item of campo.listaPopups\" [hash]=\"item\"></ng-container>\r\n </div>\r\n <div *ngIf=\"verMensajeFuncion\" class=\"text-center w-1\">\r\n <label>{{ campo.mensajeFuncion }}</label>\r\n </div>\r\n <div *ngIf=\"isMensaje\">\r\n <label *ngIf=\"campo.mensaje\">{{ campo.mensaje }}</label>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"campo.ayuda && campo.editable != 'N'\" class=\"col-1 contenedor\" >\r\n <span\r\n class=\"w-1rem\"\r\n style=\"color: var(--color-400)\"\r\n tooltipStyleClass=\"tw-250\"\r\n [hideDelay]=\"1800\"\r\n pTooltip=\"{{ campo.ayuda }}\"\r\n tooltipPosition=\"top\"\r\n *ngIf=\"campo.ayuda && campo.editable != 'N'\"\r\n ><i class=\"pi pi-question-circle\"></i\r\n ></span>\r\n </div>\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n</p-table>", styles: [".contenedor{display:flex;justify-content:center;align-items:center}:host ::ng-deep .subtitulo{display:table;margin-top:12px;margin-bottom:30px}:host ::ng-deep .subtitulo label{position:absolute;font-weight:600;color:#232323}:host ::ng-deep .p-datatable table{background:#fafafa}\n"] }]
|
|
257
|
+
}], ctorParameters: () => [{ type: i1.UtilsService }, { type: i2.GeneralService }, { type: i3.AuthService }], propDecorators: { campos: [{
|
|
258
|
+
type: Input
|
|
259
|
+
}], vcr: [{
|
|
260
|
+
type: ViewChild,
|
|
261
|
+
args: ['popup', { read: ViewContainerRef }]
|
|
262
|
+
}], hashes: [{
|
|
263
|
+
type: ViewChildren,
|
|
264
|
+
args: [HashDirective]
|
|
265
|
+
}], editable: [{
|
|
266
|
+
type: Input
|
|
267
|
+
}], objeto: [{
|
|
268
|
+
type: Input
|
|
269
|
+
}], isMensaje: [{
|
|
270
|
+
type: Input
|
|
271
|
+
}] } });
|
|
272
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXVsYXJpb2RpbmFtaWNvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9jb21wb25lbnRlcy9mb3JtdWxhcmlvZGluYW1pY28vZm9ybXVsYXJpb2RpbmFtaWNvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9jb21wb25lbnRlcy9mb3JtdWxhcmlvZGluYW1pY28vZm9ybXVsYXJpb2RpbmFtaWNvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWEsS0FBSyxFQUE4QixTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxFQUF3QyxNQUFNLGVBQWUsQ0FBQztBQUV6SyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFJbEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzVELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJB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QUUsYUFBYSxFQUFFLFdBQVcsQ0FBQyxjQUNuTyxJQUFJO3dJQU1ULE1BQU07c0JBQWQsS0FBSztnQkFFMkMsR0FBRztzQkFBbkQsU0FBUzt1QkFBRSxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQ1YsTUFBTTtzQkFBMUMsWUFBWTt1QkFBQyxhQUFhO2dCQUNsQixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkNoYW5nZXMsIElucHV0LCBPbkluaXQsIENvbXBvbmVudFJlZiwgVHlwZSwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmLCBWaWV3Q2hpbGRyZW4sIFF1ZXJ5TGlzdCwgQWZ0ZXJWaWV3SW5pdCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDYW1wb0Zvcm11bGFyaW9Nb2RlbCB9IGZyb20gJy4vb2JqZXRvc2Zvcm11bGFyaW8vQ2FtcG9Gb3JtdWxhcmlvJztcclxuaW1wb3J0IHsgSGFzaERpcmVjdGl2ZSB9IGZyb20gJy4vb2JqZXRvc2Zvcm11bGFyaW8vSGFzaERpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFV0aWxzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljaW9zL3V0aWxzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBHZW5lcmFsU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9zZXJ2aWNpb3MvZ2VuZXJhbC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNpb3MvYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ2FtYmlvIH0gZnJvbSAnLi9vYmpldG9zZm9ybXVsYXJpby9DYW1iaW8nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQ2FsZW5kYXJNb2R1bGUgfSBmcm9tICdwcmltZW5nL2NhbGVuZGFyJztcclxuaW1wb3J0IHsgQ2hlY2tib3hNb2R1bGUgfSBmcm9tICdwcmltZW5nL2NoZWNrYm94JztcclxuaW1wb3J0IHsgSW5wdXRUZXh0YXJlYU1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvaW5wdXR0ZXh0YXJlYSc7XHJcbmltcG9ydCB7IElucHV0VGV4dE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvaW5wdXR0ZXh0JztcclxuaW1wb3J0IHsgUmFkaW9CdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL3JhZGlvYnV0dG9uJztcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9vbHRpcCc7XHJcbmltcG9ydCB7IERyb3Bkb3duTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9kcm9wZG93bic7XHJcbmltcG9ydCB7IFBhc3N3b3JkTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9wYXNzd29yZCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IElucHV0TnVtYmVyTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dG51bWJlcic7XHJcbmltcG9ydCB7IEF1dG9Db21wbGV0ZU1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYXV0b2NvbXBsZXRlJztcclxuaW1wb3J0IHsgVGFibGVNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RhYmxlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZm9ybXVsYXJpby1kaW5hbWljbycsXHJcbiAgICBpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIENhbGVuZGFyTW9kdWxlLCBDaGVja2JveE1vZHVsZSwgSW5wdXRUZXh0YXJlYU1vZHVsZSwgSW5wdXRUZXh0TW9kdWxlLCBSYWRpb0J1dHRvbk1vZHVsZSwgVG9vbHRpcE1vZHVsZSwgRHJvcGRvd25Nb2R1bGUsIFBhc3N3b3JkTW9kdWxlLCBDb21tb25Nb2R1bGUsIElucHV0TnVtYmVyTW9kdWxlLCBBdXRvQ29tcGxldGVNb2R1bGUsIEhhc2hEaXJlY3RpdmUsIFRhYmxlTW9kdWxlXSxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9ybXVsYXJpb2RpbmFtaWNvLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9mb3JtdWxhcmlvZGluYW1pY28uY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybXVsYXJpb2RpbmFtaWNvQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xyXG5cclxuICBASW5wdXQoKSBjYW1wb3M6IENhbXBvRm9ybXVsYXJpb01vZGVsW107XHJcbiAgbGlzdGFTaU5vUmFkaW9CdXR0b246IGFueVtdID0gW3sgbmFtZTogJ1NpJywga2V5OiAnUycgfSwgeyBuYW1lOiAnTm8nLCBrZXk6ICdOJyB9XTtcclxuICBAVmlld0NoaWxkICgncG9wdXAnLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSkgdmNyOiBWaWV3Q29udGFpbmVyUmVmO1xyXG4gIEBWaWV3Q2hpbGRyZW4oSGFzaERpcmVjdGl2ZSkgcHJpdmF0ZSBoYXNoZXM6IFF1ZXJ5TGlzdDxIYXNoRGlyZWN0aXZlPjtcclxuICBASW5wdXQoKSBlZGl0YWJsZTogYm9vbGVhbjtcclxuICBASW5wdXQoKSBvYmpldG86IGFueTtcclxuICBASW5wdXQoKSBpc01lbnNhamU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgdmFsaWRhbmRvOiBib29sZWFuID0gZmFsc2U7ICBcclxuICB2ZXJNZW5zYWplRnVuY2lvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBhdXRvWkluZGV4OiBzdHJpbmcgPSAndHJ1ZSc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB1dGlsc1NlcnZpY2U6IFV0aWxzU2VydmljZSwgcHJpdmF0ZSBnZW5lcmFsU2VydmljZTogR2VuZXJhbFNlcnZpY2UsIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlKSB7IH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoKXtcclxuICAgXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBcclxuICAgIHRoaXMudmVyTWVuc2FqZUZ1bmNpb24gPSBmYWxzZTtcclxuXHJcbiAgICB0aGlzLmNhbXBvcy5mb3JFYWNoKGNhbXBvID0+IHtcclxuICAgICAgaWYoY2FtcG8ubWVuc2FqZUZ1bmNpb24pe1xyXG4gICAgICAgIHRoaXMudmVyTWVuc2FqZUZ1bmNpb24gPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChjYW1wby50aXBvID09ICdQJyl7XHJcbiAgICAgICAgaWYgKGNhbXBvLnBvcHVwQ29tcG9uZW50KXtcclxuICAgICAgICAgIHRoaXMubW9zdHJhclBvcHVwRm9ybXVsYXJpbyhjYW1wbykudGhlbihkYXRhID0+IHt9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgICB0aGlzLmNhbXBvcy5zb3J0KChhLCBiKSA9PiBhLm9yZGVuIC0gYi5vcmRlbik7XHJcblxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBtb2RpZmljYXIob2JqZXRvOiBhbnksIGVkaXRhYmxlOiBib29sZWFuKSB7XHJcblx0XHR0aGlzLmxpbXBpYXIoKTtcclxuXHRcdHRoaXMub2JqZXRvID0gb2JqZXRvO1xyXG5cdFx0dGhpcy5lZGl0YWJsZSA9IGVkaXRhYmxlO1xyXG4gICAgdGhpcy5jYW1wb3MuZm9yRWFjaChjYW1wbyA9PiB7XHJcbiAgICAgIGlmICghY2FtcG8uY2FyYWN0ZXJpc3RpY2Epe1xyXG4gICAgICAgIGZvciAobGV0IGF0cmlidXRvIGluIG9iamV0bykge1xyXG4gICAgICAgICAgbGV0IHZhbG9yID0gb2JqZXRvW2F0cmlidXRvXTtcclxuICAgICAgICAgIGlmIChhdHJpYnV0byA9PSBjYW1wby5jYW1wbyl7XHJcbiAgICAgICAgICAgIHRoaXMuY2FyZ2FyVmFsb3IoY2FtcG8uY2FtcG8sIHZhbG9yLCBudWxsKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYoY2FtcG8uY2FtcG9EZXBlbmRlIT0gbnVsbCl7XHJcblx0XHRcdFx0dGhpcy5jYW1wb3MuZm9yRWFjaChjYW1wbzIgPT4ge1xyXG5cdFx0XHRcdFx0aWYoY2FtcG8yLmNhbXBvID09IGNhbXBvLmNhbXBvRGVwZW5kZSl7XHJcblx0XHRcdFx0XHRcdGNhbXBvMi5jYW1wb1JlZmVyZW5jaWEgPSBjYW1wby52YWxvcjtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9KVxyXG5cdFx0XHR9XHJcbiAgICB9KVxyXG4gICAgXHJcbiAgICB0aGlzLmNhbXBvcy5zb3J0KChhLCBiKSA9PiBhLm9yZGVuIC0gYi5vcmRlbik7XHJcblx0fVxyXG5cclxuICBtb2RpZmljYXJWYWxvckNhbXBvc0FkaWNpb25hbGVzKG9iamV0bzogYW55LCBpZEdydXBvOiBzdHJpbmcpIHtcclxuXHRcdHRoaXMub2JqZXRvID0gb2JqZXRvO1xyXG4gICAgdGhpcy5jYW1wb3MuZm9yRWFjaChjYW1wbyA9PiB7XHJcbiAgICAgIGlmKGlkR3J1cG8gPT0gY2FtcG8uaWRHcnVwb1BlcnRlbmVjZSkge1xyXG4gICAgICAgIGlmICghY2FtcG8uY2FyYWN0ZXJpc3RpY2Epe1xyXG4gICAgICAgICAgZm9yIChsZXQgYXRyaWJ1dG8gaW4gb2JqZXRvKSB7XHJcbiAgICAgICAgICAgIGxldCB2YWxvciA9IG9iamV0b1thdHJpYnV0b107XHJcbiAgICAgICAgICAgIGlmIChhdHJpYnV0byA9PSBjYW1wby5jYW1wbyl7XHJcbiAgICAgICAgICAgICAgdGhpcy5jYXJnYXJWYWxvcihjYW1wby5jYW1wbywgdmFsb3IsIG51bGwpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmKGNhbXBvLmNhbXBvRGVwZW5kZSE9IG51bGwpe1xyXG4gICAgICAgICAgdGhpcy5jYW1wb3MuZm9yRWFjaChjYW1wbzIgPT4ge1xyXG4gICAgICAgICAgICBpZihjYW1wbzIuY2FtcG8gPT0gY2FtcG8uY2FtcG9EZXBlbmRlKXtcclxuICAgICAgICAgICAgICBjYW1wbzIuY2FtcG9SZWZlcmVuY2lhID0gY2FtcG8udmFsb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgfSlcclxuICAgIFxyXG4gICAgdGhpcy5jYW1wb3Muc29ydCgoYSwgYikgPT4gYS5vcmRlbiAtIGIub3JkZW4pO1xyXG4gIH1cclxuXHJcbiAgZ3VhcmRhcigpe1xyXG4gICAgdGhpcy5jYW1wb3MuZm9yRWFjaChkYXRhID0+IHtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBzZXRWYWxvclBvcHVwKG9iamV0byl7XHJcbiAgfVxyXG5cclxuICBhc3luYyBsb2FkQ29tcG9uZW50RHluYW1pYzxUPihjYW1wbzogQ2FtcG9Gb3JtdWxhcmlvTW9kZWwsIGNvbXBvbmVudDogVHlwZTxUPiwgcHJvcHM6IFBhcnRpYWw8VD4pIHtcclxuICAgIHZhciBjb250YWluZXIgPSAgIHRoaXMuZ2V0Q29udGFpbmVyRm9yKGNhbXBvLnBvcHVwKVxyXG4gICAgY29udGFpbmVyLmNsZWFyKCk7XHJcbiAgICBjb25zdCBoYXNQcm9wczogYm9vbGVhbiA9ICEhT2JqZWN0LmtleXMocHJvcHMpLmxlbmd0aDtcclxuICAgIGNvbnN0IGNvbXBSZWY6IENvbXBvbmVudFJlZjxhbnk+ID0gY29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudCggY29tcG9uZW50ICk7IC8vQW5ndWxhciAxM1xyXG4gICAgXHJcbiAgICBpZiAoaGFzUHJvcHMpIHtcclxuICAgICAgZm9yIChsZXQga2V5IG9mIE9iamVjdC5rZXlzKHByb3BzKSkge1xyXG4gICAgICAgIGNvbXBSZWYuaW5zdGFuY2Vba2V5XSA9IHByb3BzW2tleV07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGNvbnN0IGNvbXBvbmVudGUgPSBuZXcgY2FtcG8ucG9wdXBDb21wb25lbnQoKTtcclxuICAgIGlmKCdnZXREZXNjcmlwY2lvbkxsYXZlJyBpbiBjb21wb25lbnRlICl7XHJcbiAgICAgIGNvbXBSZWYuaW5zdGFuY2VbJ2xhYmVsJ10gPSBhd2FpdCBjb21wb25lbnRlLmdldERlc2NyaXBjaW9uTGxhdmUodGhpcy5nZW5lcmFsU2VydmljZSwgdGhpcy5hdXRoU2VydmljZSwgY2FtcG8udmFsb3IsIGNhbXBvKVxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGdldENvbnRhaW5lckZvcihuYW1lOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmhhc2hlcy5maW5kKHggPT4geC5oYXNoID09PSBuYW1lKS52Y1JlZjtcclxuICB9XHJcblxyXG4gIGFzeW5jIG1vc3RyYXJQb3B1cEZvcm11bGFyaW8oY2FtcG86IENhbXBvRm9ybXVsYXJpb01vZGVsKXtcclxuICAgIGF3YWl0IHRoaXMubG9hZENvbXBvbmVudER5bmFtaWMoY2FtcG8sIGNhbXBvLnBvcHVwQ29tcG9uZW50LCBjYW1wby5wcm9waWVkYWRlc1BvcHVwQ29tcG9uZW50KVxyXG4gICAgICBcclxuICB9XHJcblxyXG4gIHZhbGlkYXIoKTogYm9vbGVhbntcclxuICAgIHRoaXMudmFsaWRhbmRvID0gdHJ1ZTtcclxuICAgIHZhciB2YWxpZGFkb3IgPSB0cnVlO1xyXG4gICAgdGhpcy5jYW1wb3MuZm9yRWFjaChjYW1wbyA9PiB7XHJcbiAgICAgIGlmIChjYW1wby5vYmxpZ2F0b3JpbyAmJiAhdGhpcy51dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICApe1xyXG4gICAgICAgIGlmIChjYW1wby50aXBvID09ICdQJykge1xyXG4gICAgICAgICAgdmFyIGNvbnRhaW5lciA9ICAgdGhpcy5nZXRDb250YWluZXJGb3IoY2FtcG8ucG9wdXApXHJcbiAgICAgICAgICBjb250YWluZXIuY2xlYXIoKVxyXG4gICAgICAgICAgbGV0IHByb3BzID0gY2FtcG8ucHJvcGllZGFkZXNQb3B1cENvbXBvbmVudDtcclxuICAgICAgICAgIGNvbnN0IGhhc1Byb3BzOiBib29sZWFuID0gISFPYmplY3Qua2V5cyhwcm9wcykubGVuZ3RoO1xyXG4gICAgICAgICAgY29uc3QgY29tcFJlZjogQ29tcG9uZW50UmVmPGFueT4gPSBjb250YWluZXIuY3JlYXRlQ29tcG9uZW50KCBjYW1wby5wb3B1cENvbXBvbmVudCApOyAvL0FuZ3VsYXIgMTNcclxuICAgICAgICAgIGlmIChoYXNQcm9wcykge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBrZXkgb2YgT2JqZWN0LmtleXMocHJvcHMpKSB7XHJcbiAgICAgICAgICAgICAgY29tcFJlZi5pbnN0YW5jZVtrZXldID0gcHJvcHNba2V5XTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgY29tcFJlZi5pbnN0YW5jZVsnYm9vbGVhbm8nXSA9IHRydWU7IFxyXG4gICAgICAgIH1cclxuICAgICAgICB2YWxpZGFkb3IgPSB2YWxpZGFkb3IgJiYgZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgICByZXR1cm4gdmFsaWRhZG9yO1xyXG4gIH1cclxuXHJcbiAgZ2V0T2JqZWN0bygpOiBhbnl7XHJcbiAgICB2YXIgY2FtcG9zMiA9IHRoaXMuY2FtcG9zLmZpbHRlcihkYXRhID0+ICFkYXRhLmNhcmFjdGVyaXN0aWNhKTtcclxuICAgIGNhbXBvczIuZm9yRWFjaChjYW1wbyA9PiB7XHJcbiAgICAgIHRoaXMub2JqZXRvW2NhbXBvLmNhbXBvXSA9IGNhbXBvLnZhbG9yO1xyXG4gICAgfSlcclxuICAgIHJldHVybiB0aGlzLm9iamV0bztcclxuICB9XHJcblxyXG4gIGNhbXBvc0NhcmFjdGVyaXN0aWNhQ2xlYXIoKXtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5jYW1wb3MubGVuZ3RoOyBpKyspe1xyXG4gICAgICBpZiAodGhpcy5jYW1wb3NbaV0uY2FyYWN0ZXJpc3RpY2Epe1xyXG4gICAgICAgIHRoaXMuY2FtcG9zLnNwbGljZShpLCAxKVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjYXJnYXJWYWxvcihjYW1wbzogc3RyaW5nLCB2YWxvcjogYW55LCBkYXRvOiBhbnkpIHtcclxuICAgIHRoaXMuY2FtcG9zLmZvckVhY2goY2FtcG9GID0+IHtcclxuICAgICAgaWYgKGNhbXBvRi5jYW1wbyA9PSBjYW1wbykge1xyXG4gICAgICAgIC8vY2FtcG9GLmNhcmdhcih2YWxvcik7XHJcbiAgICAgICAgY2FtcG9GLnZhbG9yID0gdmFsb3I7XHJcbiAgICAgICAgY2FtcG9GLmRhdG8gPSBkYXRvO1xyXG4gICAgICB9XHJcblx0XHR9KVxyXG5cdH1cclxuICBcclxuICBnZXRDYW1wb3NDYXJhY3RlcmlzdGljYSgpIHtcclxuXHRcdHZhciBjYW1wb3NSZXR1cm46IENhbXBvRm9ybXVsYXJpb01vZGVsW10gPSBbXTtcclxuXHRcdHRoaXMuY2FtcG9zLmZvckVhY2goY2FtcG8gPT4ge1xyXG4gICAgICBpZiAoY2FtcG8uY2FyYWN0ZXJpc3RpY2EpIHtcclxuICAgICAgICBjYW1wb3NSZXR1cm4ucHVzaChjYW1wbyk7XHJcbiAgICAgIH1cclxuXHRcdH0pXHJcblx0XHRyZXR1cm4gY2FtcG9zUmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgb2J0ZW5lckNhbXBvKGNhbXBvOiBzdHJpbmcpe1xyXG4gICAgdmFyIHJldG9ybm8gPSBudWxsXHJcbiAgICB0aGlzLmNhbXBvcy5mb3JFYWNoKGNhbSA9PiB7XHJcbiAgICAgIGlmKGNhbS5jYW1wbyAhPSBudWxsICYmIGNhbS5jYW1wbyA9PSBjYW1wbyl7XHJcbiAgICAgICAgICByZXRvcm5vID0gY2FtO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cdFx0cmV0dXJuIHJldG9ybm87XHJcblx0fVxyXG5cclxuICBsaW1waWFyKCkge1xyXG4gICAgaWYgKHRoaXMuY2FtcG9zICE9IG51bGwgJiYgdGhpcy5jYW1wb3MubGVuZ3RoID4gMCl7XHJcbiAgICAgIHRoaXMuY2FtcG9zLmZvckVhY2goY2FtcG8gPT4ge1xyXG4gICAgICAgIGNhbXBvLnZhbG9yID0gbnVsbDtcclxuICAgICAgICBjYW1wby5yZXNhbHRhZG8gPSBmYWxzZTtcclxuICAgICAgICBjYW1wby5tZW5zYWplRnVuY2lvbiA9IG51bGw7XHJcbiAgICAgIH0pXHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4gIHZhbGlkYXJWaXNpYmlsaWRhZENhbXBvcyhjYW1wbzogQ2FtcG9Gb3JtdWxhcmlvTW9kZWwpOiBib29sZWFuIHtcclxuXHJcbiAgICBpZiAoKGNhbXBvLnRpcG8gPT0gJ04nICYmIGNhbXBvLmVkaXRhYmxlID09ICdOJykpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgZWRpdGFyUGVybWlzb0NhbXBvc1BvcklkR3J1cG8oaWRHcnVwbzogc3RyaW5nLCBwZXJtaXNvQ2FtcG86IHN0cmluZykge1xyXG4gICAgdGhpcy5jYW1wb3MuZm9yRWFjaChjYW1wbyA9PiB7XHJcbiAgICAgIGlmIChpZEdydXBvICE9IGNhbXBvLmlkR3J1cG9QZXJ0ZW5lY2UgfHwgY2FtcG8uZWRpdGFibGUgPT0gJ0wnKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGNhbXBvLmVkaXRhYmxlID0gcGVybWlzb0NhbXBvO1xyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGdldENhbWJpb3MoKTogQ2FtYmlvW10ge1xyXG4gICAgY29uc3QgY2FtYmlvczogQ2FtYmlvW10gPSBbXTtcclxuICAgIGZvciAoY29uc3QgY2FtcG8gb2YgdGhpcy5jYW1wb3MpIHtcclxuICAgICAgaWYgKGNhbXBvLmlzQ2FtYmlvKCkpIHtcclxuICAgICAgICBjYW1iaW9zLnB1c2gobmV3IENhbWJpbyhjYW1wby5vcmlnaW5hbCwgY2FtcG8udmFsb3IsIGNhbXBvKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBjYW1iaW9zO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlckNhbXBvc0lkR3J1cG8oaWRHcnVwbzogc3RyaW5nKSB7XHJcbiAgICB2YXIgY2FtcG9zUmVtb3ZlcjogQ2FtcG9Gb3JtdWxhcmlvTW9kZWxbXSA9IFtdO1xyXG4gICAgdGhpcy5jYW1wb3MuZm9yRWFjaChjYW1wbyA9PiB7XHJcbiAgICAgIGlmIChpZEdydXBvICE9IGNhbXBvLmlkR3J1cG9QZXJ0ZW5lY2UpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgY2FtcG9zUmVtb3Zlci5wdXNoKGNhbXBvKTtcclxuICAgIH0pXHJcbiAgICB0aGlzLmNhbXBvcyA9IHRoaXMuY2FtcG9zLmZpbHRlcihvYmogPT4gIWNhbXBvc1JlbW92ZXIuc29tZShvYmpFbGltaW5hciA9PiBvYmpFbGltaW5hci5jYW1wbyA9PT0gb2JqLmNhbXBvKSk7XHJcblxyXG4gIH1cclxuXHJcbn1cclxuIiwiPHAtdGFibGUgW3ZhbHVlXT1cImNhbXBvc1wiPlxyXG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJib2R5XCIgbGV0LWNhbXBvPlxyXG4gICAgPHRyICpuZ0lmPVwidmFsaWRhclZpc2liaWxpZGFkQ2FtcG9zKGNhbXBvKVwiPlxyXG4gICAgICA8dGQgc3R5bGU9XCJ3aWR0aDogMjAlO1wiPlxyXG4gICAgICAgIDxsYWJlbCAqbmdJZj1cImNhbXBvLmVkaXRhYmxlICE9ICdOJ1wiIFtzdHlsZS5jb2xvcl09XCJjYW1wby5yZXNhbHRhZG8gPyAndmFyKC0tY29sb3ItNTAwKSAhaW1wb3J0YW50JyA6ICcnXCJcclxuICAgICAgICAgIFtjbGFzc109XCJjYW1wby50aXBvICA9PSAnSScgPyAnZm9udC1ib2xkIGNvbG9yLTQwMCBtdC03JyA6ICcnXCI+XHJcbiAgICAgICAgICAgIHt7IGNhbXBvLmRlc2NyaXBjaW9uIH19IFxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2FtcG8uZWRpdGFibGUgIT0gJ04nICYmIGNhbXBvLm9ibGlnYXRvcmlvXCI+KjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvbGFiZWw+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICAgIDx0ZCBzdHlsZT1cIndpZHRoOiA4MCVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicC1mbHVpZCBwLWZvcm1ncmlkIGdyaWRcIj5cclxuICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cImNhbXBvLmF5dWRhICYmIGNhbXBvLmVkaXRhYmxlICE9ICdOJyA/ICdjb2wtMTEnIDogJ2NvbC0xMidcIj5cclxuICAgICAgICA8IS0tY2FtcG8gdGlwbyBGRUNIQS0tPlxyXG4gICAgICAgIDxwLWNhbGVuZGFyXHJcbiAgICAgICAgICBjbGFzcz1cInctZnVsbFwiXHJcbiAgICAgICAgICBhcHBlbmRUbz1cImJvZHlcIiBcclxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwiY2FtcG8udmFsb3JcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBjYW1wby5lZGl0YWJsZSA9PSAnTCdcIlxyXG4gICAgICAgICAgZGF0ZUZvcm1hdD1cImRkL21tL3l5XCJcclxuICAgICAgICAgIFt0YWJJbmRleF09XCJjYW1wby5vcmRlbiArIDFcIlxyXG4gICAgICAgICAgKm5nSWY9XCJjYW1wby50aXBvID09ICdGJyAmJiBjYW1wby5lZGl0YWJsZSAhPSAnTidcIlxyXG4gICAgICAgICAgW3Nob3dJY29uXT1cInRydWVcIlxyXG4gICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNhbXBvLnJlc2FsdGFkbyA/ICd2YXIoLS1jb2xvci01MDApICFpbXBvcnRhbnQnIDogJydcIlxyXG4gICAgICAgICAgW3BUb29sdGlwXT1cImNhbXBvLm5vdmVkYWQgPyBjYW1wby5ub3ZlZGFkIDogbnVsbFwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICBbY2xhc3MubmctZGlydHldPVwiY2FtcG8ub2JsaWdhdG9yaW8gPyAoIXV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhjYW1wby52YWxvcikgJiYgdmFsaWRhbmRvKSA6IGZhbHNlXCJcclxuICAgICAgICAgIFtjbGFzcy5uZy1pbnZhbGlkXT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgID48L3AtY2FsZW5kYXI+XHJcblxyXG4gICAgICAgIDwhLS1jYW1wbyB0aXBvIEhPUkEtLT5cclxuICAgICAgICA8cC1jYWxlbmRhclxyXG4gICAgICAgICAgY2xhc3M9XCJ3LWZ1bGxcIlxyXG4gICAgICAgICAgYXBwZW5kVG89XCJib2R5XCIgXHJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cImNhbXBvLnZhbG9yXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgY2FtcG8uZWRpdGFibGUgPT0gJ0wnXCJcclxuICAgICAgICAgIFt0YWJJbmRleF09XCJjYW1wby5vcmRlbiArIDFcIlxyXG4gICAgICAgICAgKm5nSWY9XCJjYW1wby50aXBvID09ICdYJyAmJiBjYW1wby5lZGl0YWJsZSAhPSAnTidcIlxyXG4gICAgICAgICAgW3Nob3dUaW1lXT1cInRydWVcIlxyXG4gICAgICAgICAgW3Nob3dTZWNvbmRzXT1cInRydWVcIlxyXG4gICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNhbXBvLnJlc2FsdGFkbyA/ICd2YXIoLS1jb2xvci01MDApICFpbXBvcnRhbnQnIDogJydcIlxyXG4gICAgICAgICAgW3BUb29sdGlwXT1cImNhbXBvLm5vdmVkYWQgPyBjYW1wby5ub3ZlZGFkIDogbnVsbFwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICBbY2xhc3MubmctZGlydHldPVwiY2FtcG8ub2JsaWdhdG9yaW8gPyAoIXV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhjYW1wby52YWxvcikgJiYgdmFsaWRhbmRvKSA6IGZhbHNlXCJcclxuICAgICAgICAgIFtjbGFzcy5uZy1pbnZhbGlkXT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgPjwvcC1jYWxlbmRhcj5cclxuXHJcbiAgICAgICAgPCEtLWNhbXBvIHRpcG8gSE9SQSBWQUxPUi0tPlxyXG4gICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgcElucHV0VGV4dFxyXG4gICAgICAgICAgdHlwZT1cInRpbWVcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBjYW1wby5lZGl0YWJsZSA9PSAnTCdcIlxyXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJjYW1wby52YWxvclwiXHJcbiAgICAgICAgICBbdGFiSW5kZXhdPVwiY2FtcG8ub3JkZW4gKyAxXCJcclxuICAgICAgICAgICpuZ0lmPVwiY2FtcG8udGlwbyA9PSAnWicgJiYgY2FtcG8uZWRpdGFibGUgIT0gJ04nXCJcclxuICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJjYW1wby5yZXNhbHRhZG8gPyAndmFyKC0tY29sb3ItNTAwKSAhaW1wb3J0YW50JyA6ICcnXCJcclxuICAgICAgICAgIFtwVG9vbHRpcF09XCJjYW1wby5ub3ZlZGFkID8gY2FtcG8ubm92ZWRhZCA6IG51bGxcIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG4gICAgICAgICAgW2NsYXNzLm5nLWRpcnR5XT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgICBbY2xhc3MubmctaW52YWxpZF09XCJjYW1wby5vYmxpZ2F0b3JpbyA/ICghdXRpbHNTZXJ2aWNlLnZhbGlkYXJDYW1wb09ibGlnYXRvcmlvKGNhbXBvLnZhbG9yKSAmJiB2YWxpZGFuZG8pIDogZmFsc2VcIlxyXG4gICAgICAgIC8+XHJcblxyXG4gICAgICAgIDwhLS1jYW1wbyB0aXBvIFRFWFRPLS0+XHJcbiAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICBwSW5wdXRUZXh0XHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGNhbXBvLmVkaXRhYmxlID09ICdMJ1wiXHJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cImNhbXBvLnZhbG9yXCJcclxuICAgICAgICAgIFt0YWJJbmRleF09XCJjYW1wby5vcmRlbiArIDFcIlxyXG4gICAgICAgICAgKm5nSWY9XCJjYW1wby50aXBvID09ICdUJyAmJiBjYW1wby5lZGl0YWJsZSAhPSAnTidcIlxyXG4gICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNhbXBvLnJlc2FsdGFkbyA/ICd2YXIoLS1jb2xvci01MDApICFpbXBvcnRhbnQnIDogJydcIlxyXG4gICAgICAgICAgW3BUb29sdGlwXT1cImNhbXBvLm5vdmVkYWQgPyBjYW1wby5ub3ZlZGFkIDogbnVsbFwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICBbY2xhc3MubmctZGlydHldPVwiY2FtcG8ub2JsaWdhdG9yaW8gPyAoIXV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhjYW1wby52YWxvcikgJiYgdmFsaWRhbmRvKSA6IGZhbHNlXCJcclxuICAgICAgICAgIFtjbGFzcy5uZy1pbnZhbGlkXT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgLz5cclxuXHJcbiAgICAgICAgPCEtLWNhbXBvIHRpcG8gQVJFQSBURVhUTy0tPlxyXG4gICAgICAgIDx0ZXh0YXJlYVxyXG4gICAgICAgICAgcElucHV0VGV4dGFyZWFcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwiY2FtcG8udmFsb3JcIlxyXG4gICAgICAgICAgcm93cz1cIjVcIlxyXG4gICAgICAgICAgY29scz1cIjVcIlxyXG4gICAgICAgICAgW3RhYkluZGV4XT1cImNhbXBvLm9yZGVuICsgMVwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGNhbXBvLmVkaXRhYmxlID09ICdMJ1wiXHJcbiAgICAgICAgICAqbmdJZj1cImNhbXBvLnRpcG8gPT0gJ0EnICYmIGNhbXBvLmVkaXRhYmxlICE9ICdOJ1wiXHJcbiAgICAgICAgICBjbGFzcz1cInctZnVsbCBwLWlucHV0dGV4dGFyZWEgcC1pbnB1dHRleHQgcC1jb21wb25lbnQgcC1lbGVtZW50IG1pbi1oLTEwMCBtYXgtaC0yNTBcIlxyXG4gICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNhbXBvLnJlc2FsdGFkbyA/ICd2YXIoLS1jb2xvci01MDApICFpbXBvcnRhbnQnIDogJydcIlxyXG4gICAgICAgICAgW3BUb29sdGlwXT1cImNhbXBvLm5vdmVkYWQgPyBjYW1wby5ub3ZlZGFkIDogbnVsbFwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICBbY2xhc3MubmctZGlydHldPVwiY2FtcG8ub2JsaWdhdG9yaW8gPyAoIXV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhjYW1wby52YWxvcikgJiYgdmFsaWRhbmRvKSA6IGZhbHNlXCJcclxuICAgICAgICAgIFtjbGFzcy5uZy1pbnZhbGlkXT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvdGV4dGFyZWE+XHJcblxyXG4gICAgICAgIDwhLS1jYW1wbyB0aXBvIE5VTUVSTy0tPlxyXG4gICAgICAgIDxwLWlucHV0TnVtYmVyXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGNhbXBvLmVkaXRhYmxlID09ICdMJ1wiXHJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cImNhbXBvLnZhbG9yXCJcclxuICAgICAgICAgIFt0YWJJbmRleF09XCJjYW1wby5vcmRlbiArIDFcIlxyXG4gICAgICAgICAgW21heGxlbmd0aF09XCJjYW1wby5sb25naXR1ZFwiXHJcbiAgICAgICAgICAqbmdJZj1cImNhbXBvLnRpcG8gPT0gJ04nICYmIGNhbXBvLmVkaXRhYmxlICE9ICdOJ1wiXHJcbiAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiY2FtcG8ucmVzYWx0YWRvID8gJ3ZhcigtLWNvbG9yLTUwMCkgIWltcG9ydGFudCcgOiAnJ1wiXHJcbiAgICAgICAgICBbcFRvb2x0aXBdPVwiY2FtcG8ubm92ZWRhZCA/IGNhbXBvLm5vdmVkYWQgOiBudWxsXCIgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcclxuICAgICAgICAgIFtjbGFzcy5uZy1kaXJ0eV09XCJjYW1wby5vYmxpZ2F0b3JpbyA/ICghdXRpbHNTZXJ2aWNlLnZhbGlkYXJDYW1wb09ibGlnYXRvcmlvKGNhbXBvLnZhbG9yKSAmJiB2YWxpZGFuZG8pIDogZmFsc2VcIlxyXG4gICAgICAgICAgW2NsYXNzLm5nLWludmFsaWRdPVwiY2FtcG8ub2JsaWdhdG9yaW8gPyAoIXV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhjYW1wby52YWxvcikgJiYgdmFsaWRhbmRvKSA6IGZhbHNlXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9wLWlucHV0TnVtYmVyPlxyXG5cclxuICAgICAgICA8IS0tY2FtcG8gdGlwbyBERUNJTUFMLS0+XHJcbiAgICAgICAgPHAtaW5wdXROdW1iZXJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgY2FtcG8uZWRpdGFibGUgPT0gJ0wnXCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwiY2FtcG8udmFsb3JcIlxyXG4gICAgICAgICAgbW9kZT1cImRlY2ltYWxcIlxyXG4gICAgICAgICAgW21pbkZyYWN0aW9uRGlnaXRzXT1cIjJcIlxyXG4gICAgICAgICAgKm5nSWY9XCJjYW1wby50aXBvID09ICdEJyAmJiBjYW1wby5lZGl0YWJsZSAhPSAnTidcIlxyXG4gICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNhbXBvLnJlc2FsdGFkbyA/ICd2YXIoLS1jb2xvci01MDApICFpbXBvcnRhbnQnIDogJydcIlxyXG4gICAgICAgICAgW3BUb29sdGlwXT1cImNhbXBvLm5vdmVkYWQgPyBjYW1wby5ub3ZlZGFkIDogbnVsbFwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICBbY2xhc3MubmctZGlydHldPVwiY2FtcG8ub2JsaWdhdG9yaW8gPyAoIXV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhjYW1wby52YWxvcikgJiYgdmFsaWRhbmRvKSA6IGZhbHNlXCJcclxuICAgICAgICAgIFtjbGFzcy5uZy1pbnZhbGlkXT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvcC1pbnB1dE51bWJlcj5cclxuXHJcbiAgICAgICAgPCEtLWNhbXBvIHRpcG8gU0VDUkVULS0+XHJcbiAgICAgICAgPHAtcGFzc3dvcmRcclxuICAgICAgICAgIFtmZWVkYmFja109XCJmYWxzZVwiXHJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGNhbXBvLmVkaXRhYmxlID09ICdMJ1wiXHJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cImNhbXBvLnZhbG9yXCJcclxuICAgICAgICAgIFt0YWJJbmRleF09XCJjYW1wby5vcmRlbiArIDFcIlxyXG4gICAgICAgICAgKm5nSWY9XCJjYW1wby50aXBvID09ICdTJyAmJiBjYW1wby5lZGl0YWJsZSAhPSAnTidcIlxyXG4gICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNhbXBvLnJlc2FsdGFkbyA/ICd2YXIoLS1jb2xvci01MDApICFpbXBvcnRhbnQnIDogJydcIlxyXG4gICAgICAgICAgW3BUb29sdGlwXT1cImNhbXBvLm5vdmVkYWQgPyBjYW1wby5ub3ZlZGFkIDogbnVsbFwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICBbY2xhc3MubmctZGlydHldPVwiY2FtcG8ub2JsaWdhdG9yaW8gPyAoIXV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhjYW1wby52YWxvcikgJiYgdmFsaWRhbmRvKSA6IGZhbHNlXCJcclxuICAgICAgICAgIFtjbGFzcy5uZy1pbnZhbGlkXT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgPjwvcC1wYXNzd29yZD5cclxuXHJcbiAgICAgICAgPCEtLWNhbXBvIHRpcG8gQ09NQk8tLT5cclxuICAgICAgICA8cC1kcm9wZG93blxyXG4gICAgICAgICAgY2xhc3M9XCJ3LWZ1bGxcIlxyXG4gICAgICAgICAgYXBwZW5kVG89XCJib2R5XCJcclxuICAgICAgICAgIFtvcHRpb25zXT1cImNhbXBvLmxpc3RhXCJcclxuICAgICAgICAgIFthdXRvRGlzcGxheUZpcnN0XT1cImZhbHNlXCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwiY2FtcG8udmFsb3JcIlxyXG4gICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0YWJsZSB8fCBjYW1wby5lZGl0YWJsZSA9PSAnTCdcIlxyXG4gICAgICAgICAgKm5nSWY9XCJjYW1wby50aXBvID09ICdDJyAmJiBjYW1wby5lZGl0YWJsZSAhPSAnTidcIlxyXG4gICAgICAgICAgW3Nob3dDbGVhcl09XCIhY2FtcG8ub2JsaWdhdG9yaW9cIlxyXG4gICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNhbXBvLnJlc2FsdGFkbyA/ICd2YXIoLS1jb2xvci01MDApICFpbXBvcnRhbnQnIDogJydcIlxyXG4gICAgICAgICAgW3BUb29sdGlwXT1cImNhbXBvLm5vdmVkYWQgPyBjYW1wby5ub3ZlZGFkIDogbnVsbFwiIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICBbY2xhc3MubmctZGlydHldPVwiY2FtcG8ub2JsaWdhdG9yaW8gPyAoIXV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhjYW1wby52YWxvcikgJiYgdmFsaWRhbmRvKSA6IGZhbHNlXCJcclxuICAgICAgICAgIFtjbGFzcy5uZy1pbnZhbGlkXT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvcC1kcm9wZG93bj5cclxuXHJcbiAgICAgICAgPCEtLWNhbXBvIHRpcG8gTE9HSUNPLS0+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImNhbXBvLnRpcG8gPT0gJ0wnICYmIGNhbXBvLmVkaXRhYmxlICE9ICdOJ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1mbHVpZCBwLWZvcm1ncmlkIGdyaWRcIj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB2YWxvciBvZiBsaXN0YVNpTm9SYWRpb0J1dHRvblwiIGNsYXNzPVwibXQtNCBjb2wtMTIgbWQ6Y29sLTIgZmllbGQtY2hlY2tib3hcIj5cclxuICAgICAgICAgICAgICAgIDxwLXJhZGlvQnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgIFtpbnB1dElkXT1cInZhbG9yLmtleVwiXHJcbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJ2YWxvclwiXHJcbiAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWxvci5rZXlcIlxyXG4gICAgICAgICAgICAgICAgICBbbGFiZWxdPVwidmFsb3IubmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiY2FtcG8udmFsb3JcIlxyXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGNhbXBvLmVkaXRhYmxlID09ICdMJ1wiXHJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJjYW1wby5yZXNhbHRhZG8gPyAndmFyKC0tY29sb3ItNTAwKSAhaW1wb3J0YW50JyA6ICcnXCJcclxuICAgICAgICAgIFtwVG9vbHRpcF09XCJjYW1wby5ub3ZlZGFkID8gY2FtcG8ubm92ZWRhZCA6IG51bGxcIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG4gICAgICAgICAgW2NsYXNzLm5nLWRpcnR5XT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtjbGFzcy5uZy1pbnZhbGlkXT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICA+PC9wLXJhZGlvQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsPiAgICA8L2xhYmVsPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwhLS1jYW1wbyB0aXBvIFJBRElPLS0+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImNhbXBvLnRpcG8gPT0gJ1InICYmIGNhbXBvLmVkaXRhYmxlICE9ICdOJ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicC1mbHVpZCBwLWZvcm1ncmlkIGdyaWRcIj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB2YWxvciBvZiBjYW1wby5saXN0YVwiIGNsYXNzPVwibXQtNCBjb2wtMTIgbWQ6Y29sLTIgZmllbGQtY2hlY2tib3hcIj5cclxuICAgICAgICAgICAgICA8cC1yYWRpb0J1dHRvblxyXG4gICAgICAgICAgICAgICAgW2lucHV0SWRdPVwidmFsb3IudmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgbmFtZT1cInZhbG9yXCJcclxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWxvci52YWx1ZVwiXHJcbiAgICAgICAgICAgICAgICBbbGFiZWxdPVwidmFsb3IubGFiZWxcIlxyXG4gICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJjYW1wby52YWxvclwiXHJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRhYmxlIHx8IGNhbXBvLmVkaXRhYmxlID09ICdMJ1wiXHJcbiAgICAgICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiY2FtcG8ucmVzYWx0YWRvID8gJ3ZhcigtLWNvbG9yLTUwMCkgIWltcG9ydGFudCcgOiAnJ1wiXHJcbiAgICAgICAgICBbcFRvb2x0aXBdPVwiY2FtcG8ubm92ZWRhZCA/IGNhbXBvLm5vdmVkYWQgOiBudWxsXCIgdG9vbHRpcFBvc2l0aW9uPVwidG9wXCJcclxuICAgICAgICAgIFtjbGFzcy5uZy1kaXJ0eV09XCJjYW1wby5vYmxpZ2F0b3JpbyA/ICghdXRpbHNTZXJ2aWNlLnZhbGlkYXJDYW1wb09ibGlnYXRvcmlvKGNhbXBvLnZhbG9yKSAmJiB2YWxpZGFuZG8pIDogZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgW2NsYXNzLm5nLWludmFsaWRdPVwiY2FtcG8ub2JsaWdhdG9yaW8gPyAoIXV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhjYW1wby52YWxvcikgJiYgdmFsaWRhbmRvKSA6IGZhbHNlXCJcclxuICAgICAgICAgICAgICA+PC9wLXJhZGlvQnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPCEtLWNhbXBvIHRpcG8gQ0hFQ0tCT1gtLT5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY2FtcG8udGlwbyA9PSAnSCcgJiYgY2FtcG8uZWRpdGFibGUgIT0gJ04nXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwLWZsdWlkIHAtZm9ybWdyaWQgZ3JpZFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IHZhbG9yIG9mIGNhbXBvLmxpc3RhXCIgY2xhc3M9XCJjb2wtMTIgbWQ6Y29sLTMgZmllbGQtY2hlY2tib3hcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cC1jaGVja2JveFxyXG4gICAgICAgICAgICAgICAgICAgICAgW2lucHV0SWRdPVwidmFsb3IudmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInZhbG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWxvclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNhbXBvLnZhbG9yXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgY2FtcG8uZWRpdGFibGUgPT0gJ0wnXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJjYW1wby5yZXNhbHRhZG8gPyAndmFyKC0tY29sb3ItNTAwKSAhaW1wb3J0YW50JyA6ICcnXCJcclxuICAgICAgICAgIFtwVG9vbHRpcF09XCJjYW1wby5ub3ZlZGFkID8gY2FtcG8ubm92ZWRhZCA6IG51bGxcIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG4gICAgICAgICAgW2NsYXNzLm5nLWRpcnR5XT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MubmctaW52YWxpZF09XCJjYW1wby5vYmxpZ2F0b3JpbyA/ICghdXRpbHNTZXJ2aWNlLnZhbGlkYXJDYW1wb09ibGlnYXRvcmlvKGNhbXBvLnZhbG9yKSAmJiB2YWxpZGFuZG8pIDogZmFsc2VcIlxyXG4gICAgICAgICAgICAgICAgICAgID48L3AtY2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIFtmb3JdPVwidmFsb3IudmFsdWVcIj57eyB2YWxvci5sYWJlbCB9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8IS0tY2FtcG8gdGlwbyBBVVRPQ09NUExFVEFSLS0+XHJcbiAgICAgICAgPHAtYXV0b0NvbXBsZXRlXHJcbiAgICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgICAoY2FtcG8udGlwbyA9PSAnTycgfHwgY2FtcG8udGlwbyA9PSAnWScpICYmIGNhbXBvLmVkaXRhYmxlICE9ICdOJ1xyXG4gICAgICAgICAgXCJcclxuICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdGFibGUgfHwgY2FtcG8uZWRpdGFibGUgPT0gJ0wnXCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwiY2FtcG8udmFsb3JcIlxyXG4gICAgICAgICAgW3N1Z2dlc3Rpb25zXT1cImNhbXBvLmxpc3RhQXV0b2NvbXBsZXRlRmlsdHJhZGFcIlxyXG4gICAgICAgICAgKGNvbXBsZXRlTWV0aG9kKT1cImNhbXBvLmZpbHRyYXJBdXRvY29tcGxldGUoJGV2ZW50KVwiXHJcbiAgICAgICAgICBmaWVsZD1cImxhYmVsXCJcclxuICAgICAgICAgIFtkcm9wZG93bl09XCJ0cnVlXCJcclxuICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJjYW1wby5yZXNhbHRhZG8gPyAndmFyKC0tY29sb3ItNTAwKSAhaW1wb3J0YW50JyA6ICcnXCJcclxuICAgICAgICAgIFtwVG9vbHRpcF09XCJjYW1wby5ub3ZlZGFkID8gY2FtcG8ubm92ZWRhZCA6IG51bGxcIiB0b29sdGlwUG9zaXRpb249XCJ0b3BcIlxyXG4gICAgICAgICAgW2NsYXNzLm5nLWRpcnR5XT1cImNhbXBvLm9ibGlnYXRvcmlvID8gKCF1dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2FtcG8udmFsb3IpICYmIHZhbGlkYW5kbykgOiBmYWxzZVwiXHJcbiAgICAgICAgICBbY2xhc3MubmctaW52YWxpZF09XCJjYW1wby5vYmxpZ2F0b3JpbyA/ICghdXRpbHNTZXJ2aWNlLnZhbGlkYXJDYW1wb09ibGlnYXRvcmlvKGNhbXBvLnZhbG9yKSAmJiB2YWxpZGFuZG8pIDogZmFsc2VcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBsZXQtdmFsb3IgcFRlbXBsYXRlPVwiaXRlbVwiPlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXY+e3sgdmFsb3IubGFiZWwgfX08L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDwvcC1hdXRvQ29tcGxldGU+XHJcblxyXG4gICAgICAgIDwhLS1jYW1wbyB0aXBvIFBPUFVQLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCIgKm5nSWY9XCJjYW1wby50aXBvID09ICdQJyAmJiBjYW1wby5lZGl0YWJsZSAhPSAnTidcIiA+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY2FtcG8ubGlzdGFQb3B1cHNcIiBbaGFzaF09XCJpdGVtXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cInZlck1lbnNhamVGdW5jaW9uXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlciB3LTFcIj5cclxuICAgICAgICAgIDxsYWJlbD57eyBjYW1wby5tZW5zYWplRnVuY2lvbiB9fTwvbGFiZWw+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImlzTWVuc2FqZVwiPlxyXG4gICAgICAgICAgPGxhYmVsICpuZ0lmPVwiY2FtcG8ubWVuc2FqZVwiPnt7IGNhbXBvLm1lbnNhamUgfX08L2xhYmVsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY2FtcG8uYXl1ZGEgJiYgY2FtcG8uZWRpdGFibGUgIT0gJ04nXCIgY2xhc3M9XCJjb2wtMSBjb250ZW5lZG9yXCIgID5cclxuICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICBjbGFzcz1cInctMXJlbVwiXHJcbiAgICAgICAgICBzdHlsZT1cImNvbG9yOiB2YXIoLS1jb2xvci00MDApXCJcclxuICAgICAgICAgIHRvb2x0aXBTdHlsZUNsYXNzPVwidHctMjUwXCJcclxuICAgICAgICAgIFtoaWRlRGVsYXldPVwiMTgwMFwiXHJcbiAgICAgICAgICBwVG9vbHRpcD1cInt7IGNhbXBvLmF5dWRhIH19XCJcclxuICAgICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cInRvcFwiXHJcbiAgICAgICAgICAqbmdJZj1cImNhbXBvLmF5dWRhICYmIGNhbXBvLmVkaXRhYmxlICE9ICdOJ1wiXHJcbiAgICAgICAgICA+PGkgY2xhc3M9XCJwaSBwaS1xdWVzdGlvbi1jaXJjbGVcIj48L2lcclxuICAgICAgICA+PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L3RkPlxyXG4gICAgPC90cj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG48L3AtdGFibGU+Il19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export class Cambio {
|
|
2
|
+
viejo;
|
|
3
|
+
nuevo;
|
|
4
|
+
campo;
|
|
5
|
+
constructor(viejo, nuevo, campo) {
|
|
6
|
+
this.viejo = viejo;
|
|
7
|
+
this.nuevo = nuevo;
|
|
8
|
+
this.campo = campo;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FtYmlvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb3JlL2NvbXBvbmVudGVzL2Zvcm11bGFyaW9kaW5hbWljby9vYmpldG9zZm9ybXVsYXJpby9DYW1iaW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLE1BQU07SUFDZixLQUFLLENBQU07SUFDWCxLQUFLLENBQU07SUFDWCxLQUFLLENBQXVCO0lBRTVCLFlBQVksS0FBVSxFQUFFLEtBQVUsRUFBRSxLQUEyQjtRQUM3RCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDYW1wb0Zvcm11bGFyaW9Nb2RlbCB9IGZyb20gXCIuL0NhbXBvRm9ybXVsYXJpb1wiO1xyXG5cclxuZXhwb3J0IGNsYXNzIENhbWJpbyB7XHJcbiAgICB2aWVqbzogYW55O1xyXG4gICAgbnVldm86IGFueTtcclxuICAgIGNhbXBvOiBDYW1wb0Zvcm11bGFyaW9Nb2RlbDtcclxuICBcclxuICAgIGNvbnN0cnVjdG9yKHZpZWpvOiBhbnksIG51ZXZvOiBhbnksIGNhbXBvOiBDYW1wb0Zvcm11bGFyaW9Nb2RlbCkge1xyXG4gICAgICB0aGlzLnZpZWpvID0gdmllam87XHJcbiAgICAgIHRoaXMubnVldm8gPSBudWV2bztcclxuICAgICAgdGhpcy5jYW1wbyA9IGNhbXBvO1xyXG4gICAgfVxyXG4gIH0iXX0=
|
package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.mjs
ADDED
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { CampoFormularioCons } from './CampoFormularioCons';
|
|
2
|
+
export class CampoFormularioModel {
|
|
3
|
+
caracteristica;
|
|
4
|
+
tipo;
|
|
5
|
+
descripcion;
|
|
6
|
+
descripcionAdicional;
|
|
7
|
+
valor;
|
|
8
|
+
longitud;
|
|
9
|
+
decimales;
|
|
10
|
+
campo;
|
|
11
|
+
obligatorio;
|
|
12
|
+
lista;
|
|
13
|
+
listaRespuesta;
|
|
14
|
+
mensaje;
|
|
15
|
+
popup;
|
|
16
|
+
titulo;
|
|
17
|
+
textoPopup;
|
|
18
|
+
original;
|
|
19
|
+
dato;
|
|
20
|
+
orden;
|
|
21
|
+
resaltado;
|
|
22
|
+
editable;
|
|
23
|
+
novedad;
|
|
24
|
+
campoTabla;
|
|
25
|
+
funcion;
|
|
26
|
+
mensajeFuncion;
|
|
27
|
+
campoDepende;
|
|
28
|
+
campoReferencia;
|
|
29
|
+
campoReferenciaDos;
|
|
30
|
+
limpiarPopup;
|
|
31
|
+
idGrupoPertenece;
|
|
32
|
+
ayuda;
|
|
33
|
+
validarEspecial;
|
|
34
|
+
popupComponent;
|
|
35
|
+
propiedadesPopupComponent;
|
|
36
|
+
listaPopups;
|
|
37
|
+
//campos creados por primeng
|
|
38
|
+
listaAutocompleteFiltrada;
|
|
39
|
+
constructor(tipo, descripcion, longitud, decimales, campo, obligatorio, lista, popup, editable) {
|
|
40
|
+
this.tipo = this.ajustar(tipo);
|
|
41
|
+
this.descripcion = descripcion;
|
|
42
|
+
this.longitud = longitud;
|
|
43
|
+
this.decimales = decimales;
|
|
44
|
+
this.campo = campo;
|
|
45
|
+
this.obligatorio = obligatorio;
|
|
46
|
+
this.lista = lista;
|
|
47
|
+
this.listaRespuesta = [];
|
|
48
|
+
this.popup = popup;
|
|
49
|
+
this.editable = editable;
|
|
50
|
+
}
|
|
51
|
+
ajustar(tipo2) {
|
|
52
|
+
let tipo = tipo2;
|
|
53
|
+
if (tipo2 == ('1'))
|
|
54
|
+
tipo = CampoFormularioCons.CHECK;
|
|
55
|
+
if (tipo2 == ('2'))
|
|
56
|
+
tipo = CampoFormularioCons.RADIO;
|
|
57
|
+
if (tipo2 == ('3'))
|
|
58
|
+
tipo = CampoFormularioCons.COMBO;
|
|
59
|
+
if (tipo2 == ('4'))
|
|
60
|
+
tipo = CampoFormularioCons.TEXTO;
|
|
61
|
+
if (tipo2 == ('5'))
|
|
62
|
+
tipo = CampoFormularioCons.NUMERO;
|
|
63
|
+
if (tipo2 == ('6'))
|
|
64
|
+
tipo = CampoFormularioCons.POPUP;
|
|
65
|
+
if (tipo2 == ('7'))
|
|
66
|
+
tipo = CampoFormularioCons.POPUP;
|
|
67
|
+
if (tipo2 == ('8'))
|
|
68
|
+
tipo = CampoFormularioCons.FECHA;
|
|
69
|
+
if (tipo2 == ('9'))
|
|
70
|
+
tipo = CampoFormularioCons.TEXTOAREA;
|
|
71
|
+
if (tipo2 == ('11'))
|
|
72
|
+
tipo = CampoFormularioCons.POPUP;
|
|
73
|
+
if (tipo2 == ('12'))
|
|
74
|
+
tipo = CampoFormularioCons.POPUP;
|
|
75
|
+
if (tipo2 == ('13'))
|
|
76
|
+
tipo = CampoFormularioCons.LOGICO;
|
|
77
|
+
if (tipo2 == ('14'))
|
|
78
|
+
tipo = CampoFormularioCons.POPUP;
|
|
79
|
+
if (tipo2 == ('15'))
|
|
80
|
+
tipo = CampoFormularioCons.POPUP;
|
|
81
|
+
if (tipo2 == ('16')) {
|
|
82
|
+
tipo = CampoFormularioCons.TITULO;
|
|
83
|
+
this.titulo = true;
|
|
84
|
+
}
|
|
85
|
+
if (tipo2 == ('17'))
|
|
86
|
+
tipo = CampoFormularioCons.DECIMAL;
|
|
87
|
+
if (tipo2 == ('18'))
|
|
88
|
+
tipo = CampoFormularioCons.SECRET;
|
|
89
|
+
if (tipo2 == ('19'))
|
|
90
|
+
tipo = CampoFormularioCons.HORA;
|
|
91
|
+
return tipo;
|
|
92
|
+
}
|
|
93
|
+
filtrarAutocomplete(event) {
|
|
94
|
+
let filtered = [];
|
|
95
|
+
let query = event.query;
|
|
96
|
+
for (let i = 0; i < this.lista.length; i++) {
|
|
97
|
+
let objeto = this.lista[i];
|
|
98
|
+
console.log(objeto);
|
|
99
|
+
if (objeto.label.toLowerCase().indexOf(query.toLowerCase()) == 0) {
|
|
100
|
+
filtered.push(objeto);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
this.listaAutocompleteFiltrada = filtered;
|
|
104
|
+
}
|
|
105
|
+
isCambio() {
|
|
106
|
+
if (this.tipo === CampoFormularioCons.TEXTO || this.tipo === CampoFormularioCons.TEXTOAREA || this.tipo === CampoFormularioCons.SECRET) {
|
|
107
|
+
return (this.original == null ? '' : '' + this.original.toString().trim()) != (this.valor == null ? '' : '' + this.valor.toString().trim());
|
|
108
|
+
}
|
|
109
|
+
if (this.tipo === CampoFormularioCons.CHECK) {
|
|
110
|
+
let respuestas = '';
|
|
111
|
+
for (const item of this.listaRespuesta) {
|
|
112
|
+
respuestas += item + ';';
|
|
113
|
+
}
|
|
114
|
+
return (this.original == null ? '' : '' + this.original) != (respuestas == null ? '' : '' + respuestas);
|
|
115
|
+
}
|
|
116
|
+
return (this.original == null ? '' : '' + this.original) != (this.valor == null ? '' : '' + this.valor);
|
|
117
|
+
}
|
|
118
|
+
cargarValorPopup(event) {
|
|
119
|
+
console.log('cargarValorPopup');
|
|
120
|
+
console.log(event);
|
|
121
|
+
this.valor = event;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FtcG9Gb3JtdWxhcmlvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb3JlL2NvbXBvbmVudGVzL2Zvcm11bGFyaW9kaW5hbWljby9vYmpldG9zZm9ybXVsYXJpby9DYW1wb0Zvcm11bGFyaW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFNUQsTUFBTSxPQUFPLG9CQUFvQjtJQUVoQyxjQUFjLENBQVU7SUFDeEIsSUFBSSxDQUFTO0lBQ2IsV0FBVyxDQUFTO0lBQ3BCLG9CQUFvQixDQUFTO0lBQzdCLEtBQUssQ0FBTTtJQUNYLFFBQVEsQ0FBUztJQUNqQixTQUFTLENBQVM7SUFDbEIsS0FBSyxDQUFTO0lBQ2QsV0FBVyxDQUFVO0lBQ3JCLEtBQUssQ0FBZTtJQUNwQixjQUFjLENBQVc7SUFDekIsT0FBTyxDQUFTO0lBQ2hCLEtBQUssQ0FBUztJQUNkLE1BQU0sQ0FBVTtJQUNoQixVQUFVLENBQVM7SUFDbkIsUUFBUSxDQUFNO0lBQ2QsSUFBSSxDQUFNO0lBQ1YsS0FBSyxDQUFTO0lBQ2QsU0FBUyxDQUFVO0lBQ25CLFFBQVEsQ0FBUztJQUNqQixPQUFPLENBQU07SUFDYixVQUFVLENBQVM7SUFDbkIsT0FBTyxDQUFTO0lBQ2hCLGNBQWMsQ0FBUztJQUN2QixZQUFZLENBQVM7SUFDckIsZUFBZSxDQUFNO0lBQ3JCLGtCQUFrQixDQUFNO0lBQ3hCLFlBQVksQ0FBVTtJQUN0QixnQkFBZ0IsQ0FBUztJQUN6QixLQUFLLENBQVM7SUFDZCxlQUFlLENBQVM7SUFDeEIsY0FBYyxDQUFZO0lBQzFCLHlCQUF5QixDQUFjO0lBQ3ZDLFdBQVcsQ0FBTztJQUVsQiw0QkFBNEI7SUFDNUIseUJBQXlCLENBQWU7SUFFeEMsWUFBWSxJQUFZLEVBQUUsV0FBbUIsRUFBRSxRQUFnQixFQUFFLFNBQWlCLEVBQ2pGLEtBQWEsRUFBRSxXQUFvQixFQUFFLEtBQW1CLEVBQUUsS0FBYSxFQUFFLFFBQWdCO1FBQ3pGLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsUUFBUSxHQUFFLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRU8sT0FBTyxDQUFDLEtBQUs7UUFDcEIsSUFBSSxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLElBQUksS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDO1lBQUUsSUFBSSxHQUFHLG1CQUFtQixDQUFDLEtBQUssQ0FBQztRQUNyRCxJQUFJLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUFFLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7UUFDckQsSUFBSSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUM7WUFBRSxJQUFJLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDO1FBQ3JELElBQUksS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDO1lBQUUsSUFBSSxHQUFHLG1CQUFtQixDQUFDLEtBQUssQ0FBQztRQUNyRCxJQUFJLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUFFLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUM7UUFDdEQsSUFBSSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUM7WUFBRSxJQUFJLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDO1FBQ3JELElBQUksS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDO1lBQUUsSUFBSSxHQUFHLG1CQUFtQixDQUFDLEtBQUssQ0FBQztRQUNyRCxJQUFJLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUFFLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7UUFDckQsSUFBSSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUM7WUFBRSxJQUFJLEdBQUcsbUJBQW1CLENBQUMsU0FBUyxDQUFDO1FBQ3pELElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQUUsSUFBSSxHQUFHLG1CQUFtQixDQUFDLEtBQUssQ0FBQztRQUN0RCxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQztZQUFFLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7UUFDdEQsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUM7WUFBRSxJQUFJLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDO1FBQ3ZELElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQUUsSUFBSSxHQUFHLG1CQUFtQixDQUFDLEtBQUssQ0FBQztRQUN0RCxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQztZQUFFLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUM7UUFDdEQsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBQyxDQUFDO1lBQ3BCLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUM7WUFDbEMsSUFBSSxDQUFDLE1BQU0sR0FBQyxJQUFJLENBQUM7UUFDbEIsQ0FBQztRQUNELElBQUksS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQUUsSUFBSSxHQUFHLG1CQUFtQixDQUFDLE9BQU8sQ0FBQztRQUN4RCxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQztZQUFFLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUM7UUFDdkQsSUFBSSxL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b250ZW50IjpbImltcG9ydCB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2VsZWN0SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgQ2FtcG9Gb3JtdWxhcmlvQ29ucyB9IGZyb20gJy4vQ2FtcG9Gb3JtdWxhcmlvQ29ucyc7XHJcblxyXG5leHBvcnQgY2xhc3MgQ2FtcG9Gb3JtdWxhcmlvTW9kZWwge1xyXG5cclxuXHRjYXJhY3RlcmlzdGljYTogYm9vbGVhbjtcclxuXHR0aXBvOiBzdHJpbmc7XHJcblx0ZGVzY3JpcGNpb246IHN0cmluZztcclxuXHRkZXNjcmlwY2lvbkFkaWNpb25hbDogc3RyaW5nO1xyXG5cdHZhbG9yOiBhbnk7XHJcblx0bG9uZ2l0dWQ6IG51bWJlcjtcclxuXHRkZWNpbWFsZXM6IG51bWJlcjtcclxuXHRjYW1wbzogc3RyaW5nO1xyXG5cdG9ibGlnYXRvcmlvOiBib29sZWFuO1xyXG5cdGxpc3RhOiBTZWxlY3RJdGVtW107XHJcblx0bGlzdGFSZXNwdWVzdGE6IHN0cmluZ1tdO1xyXG5cdG1lbnNhamU6IHN0cmluZztcclxuXHRwb3B1cDogc3RyaW5nO1xyXG5cdHRpdHVsbzogYm9vbGVhbjtcclxuXHR0ZXh0b1BvcHVwOiBzdHJpbmc7XHJcblx0b3JpZ2luYWw6IGFueTtcclxuXHRkYXRvOiBhbnk7XHJcblx0b3JkZW46IG51bWJlcjtcclxuXHRyZXNhbHRhZG86IGJvb2xlYW47XHJcblx0ZWRpdGFibGU6IHN0cmluZztcclxuXHRub3ZlZGFkOiBhbnk7XHJcblx0Y2FtcG9UYWJsYTogc3RyaW5nO1xyXG5cdGZ1bmNpb246IHN0cmluZztcclxuXHRtZW5zYWplRnVuY2lvbjogc3RyaW5nO1xyXG5cdGNhbXBvRGVwZW5kZTogc3RyaW5nO1xyXG5cdGNhbXBvUmVmZXJlbmNpYTogYW55O1xyXG5cdGNhbXBvUmVmZXJlbmNpYURvczogYW55O1xyXG5cdGxpbXBpYXJQb3B1cDogYm9vbGVhbjtcclxuXHRpZEdydXBvUGVydGVuZWNlOiBzdHJpbmc7XHJcblx0YXl1ZGE6IHN0cmluZztcclxuXHR2YWxpZGFyRXNwZWNpYWw6IHN0cmluZztcclxuXHRwb3B1cENvbXBvbmVudDogVHlwZTxhbnk+O1xyXG5cdHByb3BpZWRhZGVzUG9wdXBDb21wb25lbnQ6IFBhcnRpYWw8YW55PlxyXG5cdGxpc3RhUG9wdXBzOiBhbnlbXVxyXG5cclxuXHQvL2NhbXBvcyBjcmVhZG9zIHBvciBwcmltZW5nXHJcblx0bGlzdGFBdXRvY29tcGxldGVGaWx0cmFkYTogU2VsZWN0SXRlbVtdO1xyXG5cclxuXHRjb25zdHJ1Y3Rvcih0aXBvOiBzdHJpbmcsIGRlc2NyaXBjaW9uOiBzdHJpbmcsIGxvbmdpdHVkOiBudW1iZXIsIGRlY2ltYWxlczogbnVtYmVyLFxyXG5cdFx0Y2FtcG86IHN0cmluZywgb2JsaWdhdG9yaW86IGJvb2xlYW4sIGxpc3RhOiBTZWxlY3RJdGVtW10sIHBvcHVwOiBzdHJpbmcsIGVkaXRhYmxlOiBzdHJpbmcpIHtcclxuXHRcdHRoaXMudGlwbyA9IHRoaXMuYWp1c3Rhcih0aXBvKTtcclxuXHRcdHRoaXMuZGVzY3JpcGNpb24gPSBkZXNjcmlwY2lvbjtcclxuXHRcdHRoaXMubG9uZ2l0dWQgPSBsb25naXR1ZDtcclxuXHRcdHRoaXMuZGVjaW1hbGVzID0gZGVjaW1hbGVzO1xyXG5cdFx0dGhpcy5jYW1wbyA9IGNhbXBvO1xyXG5cdFx0dGhpcy5vYmxpZ2F0b3JpbyA9IG9ibGlnYXRvcmlvO1xyXG5cdFx0dGhpcy5saXN0YSA9IGxpc3RhO1xyXG5cdFx0dGhpcy5saXN0YVJlc3B1ZXN0YSA9IFtdO1xyXG5cdFx0dGhpcy5wb3B1cCA9IHBvcHVwO1xyXG5cdFx0dGhpcy5lZGl0YWJsZT0gZWRpdGFibGU7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGFqdXN0YXIodGlwbzIpe1xyXG5cdFx0bGV0IHRpcG8gPSB0aXBvMjtcclxuXHRcdGlmICh0aXBvMiA9PSAoJzEnKSkgdGlwbyA9IENhbXBvRm9ybXVsYXJpb0NvbnMuQ0hFQ0s7XHJcblx0XHRpZiAodGlwbzIgPT0gKCcyJykpIHRpcG8gPSBDYW1wb0Zvcm11bGFyaW9Db25zLlJBRElPO1xyXG5cdFx0aWYgKHRpcG8yID09ICgnMycpKSB0aXBvID0gQ2FtcG9Gb3JtdWxhcmlvQ29ucy5DT01CTztcclxuXHRcdGlmICh0aXBvMiA9PSAoJzQnKSkgdGlwbyA9IENhbXBvRm9ybXVsYXJpb0NvbnMuVEVYVE87XHJcblx0XHRpZiAodGlwbzIgPT0gKCc1JykpIHRpcG8gPSBDYW1wb0Zvcm11bGFyaW9Db25zLk5VTUVSTztcclxuXHRcdGlmICh0aXBvMiA9PSAoJzYnKSkgdGlwbyA9IENhbXBvRm9ybXVsYXJpb0NvbnMuUE9QVVA7XHJcblx0XHRpZiAodGlwbzIgPT0gKCc3JykpIHRpcG8gPSBDYW1wb0Zvcm11bGFyaW9Db25zLlBPUFVQO1xyXG5cdFx0aWYgKHRpcG8yID09ICgnOCcpKSB0aXBvID0gQ2FtcG9Gb3JtdWxhcmlvQ29ucy5GRUNIQTtcclxuXHRcdGlmICh0aXBvMiA9PSAoJzknKSkgdGlwbyA9IENhbXBvRm9ybXVsYXJpb0NvbnMuVEVYVE9BUkVBO1xyXG5cdFx0aWYgKHRpcG8yID09ICgnMTEnKSkgdGlwbyA9IENhbXBvRm9ybXVsYXJpb0NvbnMuUE9QVVA7XHJcblx0XHRpZiAodGlwbzIgPT0gKCcxMicpKSB0aXBvID0gQ2FtcG9Gb3JtdWxhcmlvQ29ucy5QT1BVUDtcclxuXHRcdGlmICh0aXBvMiA9PSAoJzEzJykpIHRpcG8gPSBDYW1wb0Zvcm11bGFyaW9Db25zLkxPR0lDTztcclxuXHRcdGlmICh0aXBvMiA9PSAoJzE0JykpIHRpcG8gPSBDYW1wb0Zvcm11bGFyaW9Db25zLlBPUFVQO1xyXG5cdFx0aWYgKHRpcG8yID09ICgnMTUnKSkgdGlwbyA9IENhbXBvRm9ybXVsYXJpb0NvbnMuUE9QVVA7XHJcblx0XHRpZiAodGlwbzIgPT0gKCcxNicpKXtcclxuXHRcdFx0dGlwbyA9IENhbXBvRm9ybXVsYXJpb0NvbnMuVElUVUxPO1xyXG5cdFx0XHR0aGlzLnRpdHVsbz10cnVlO1xyXG5cdFx0fVxyXG5cdFx0aWYgKHRpcG8yID09ICgnMTcnKSkgdGlwbyA9IENhbXBvRm9ybXVsYXJpb0NvbnMuREVDSU1BTDtcclxuXHRcdGlmICh0aXBvMiA9PSAoJzE4JykpIHRpcG8gPSBDYW1wb0Zvcm11bGFyaW9Db25zLlNFQ1JFVDtcclxuXHRcdGlmICh0aXBvMiA9PSAoJzE5JykpIHRpcG8gPSBDYW1wb0Zvcm11bGFyaW9Db25zLkhPUkE7XHJcblx0XHRyZXR1cm4gdGlwb1xyXG5cdH1cclxuXHJcblx0ZmlsdHJhckF1dG9jb21wbGV0ZShldmVudCkge1xyXG5cdFx0bGV0IGZpbHRlcmVkIDogYW55W10gPSBbXTtcclxuICAgICAgICBsZXQgcXVlcnkgPSBldmVudC5xdWVyeTtcclxuICAgICAgICBmb3IobGV0IGkgPSAwOyBpIDwgdGhpcy5saXN0YS5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBsZXQgb2JqZXRvID0gdGhpcy5saXN0YVtpXTtcclxuXHRcdFx0Y29uc29sZS5sb2cob2JqZXRvKVxyXG4gICAgICAgICAgICBpZiAob2JqZXRvLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihxdWVyeS50b0xvd2VyQ2FzZSgpKSA9PSAwKSB7XHJcbiAgICAgICAgICAgICAgICBmaWx0ZXJlZC5wdXNoKG9iamV0byk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMubGlzdGFBdXRvY29tcGxldGVGaWx0cmFkYSA9IGZpbHRlcmVkO1xyXG4gICAgfVxyXG5cclxuXHRpc0NhbWJpbygpOiBib29sZWFuIHtcclxuXHRcdGlmICh0aGlzLnRpcG8gPT09IENhbXBvRm9ybXVsYXJpb0NvbnMuVEVYVE8gfHwgdGhpcy50aXBvID09PSBDYW1wb0Zvcm11bGFyaW9Db25zLlRFWFRPQVJFQSB8fCB0aGlzLnRpcG8gPT09IENhbXBvRm9ybXVsYXJpb0NvbnMuU0VDUkVUKSB7XHJcblx0XHQgIHJldHVybiAodGhpcy5vcmlnaW5hbCA9PSBudWxsID8gJycgOiAnJyArIHRoaXMub3JpZ2luYWwudG9TdHJpbmcoKS50cmltKCkpICE9ICh0aGlzLnZhbG9yID09IG51bGwgPyAnJyA6ICcnICsgdGhpcy52YWxvci50b1N0cmluZygpLnRyaW0oKSk7XHJcblx0XHR9XHJcblx0XHRpZiAodGhpcy50aXBvID09PSBDYW1wb0Zvcm11bGFyaW9Db25zLkNIRUNLKSB7XHJcblx0XHQgIGxldCByZXNwdWVzdGFzID0gJyc7XHJcblx0XHQgIGZvciAoY29uc3QgaXRlbSBvZiB0aGlzLmxpc3RhUmVzcHVlc3RhKSB7XHJcblx0XHRcdHJlc3B1ZXN0YXMgKz0gaXRlbSArICc7JztcclxuXHRcdCAgfVxyXG5cdFx0ICByZXR1cm4gKHRoaXMub3JpZ2luYWwgPT0gbnVsbCA/ICcnIDogJycgKyB0aGlzLm9yaWdpbmFsKSAhPSAocmVzcHVlc3RhcyA9PSBudWxsID8gJycgOiAnJyArIHJlc3B1ZXN0YXMpO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuICh0aGlzLm9yaWdpbmFsID09IG51bGwgPyAnJyA6ICcnICsgdGhpcy5vcmlnaW5hbCkgIT0gKHRoaXMudmFsb3IgPT0gbnVsbCA/ICcnIDogJycgKyB0aGlzLnZhbG9yKTtcclxuXHQgIH1cclxuXHJcblx0Y2FyZ2FyVmFsb3JQb3B1cChldmVudCl7XHJcblx0XHRjb25zb2xlLmxvZygnY2FyZ2FyVmFsb3JQb3B1cCcpXHJcblx0XHRjb25zb2xlLmxvZyhldmVudClcclxuXHRcdHRoaXMudmFsb3IgPSBldmVudDtcclxuXHR9XHJcbn0iXX0=
|