general-library-union 3.2.97 → 3.2.99

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.
Files changed (657) hide show
  1. package/esm2022/general-library-union.mjs +5 -0
  2. package/esm2022/public-api.mjs +183 -0
  3. package/esm2022/src/app/core/componentes/breadcrumb/breadcrumb.component.mjs +40 -0
  4. package/esm2022/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.mjs +28 -0
  5. package/esm2022/src/app/core/componentes/filtro-general/filtro-general.component.mjs +214 -0
  6. package/esm2022/src/app/core/componentes/footer/footer.component.mjs +16 -0
  7. package/esm2022/src/app/core/componentes/formulariodinamico/formulariodinamico.component.mjs +276 -0
  8. package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/Cambio.mjs +11 -0
  9. package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.mjs +124 -0
  10. package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.mjs +73 -0
  11. package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.mjs +59 -0
  12. package/esm2022/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.mjs +21 -0
  13. package/esm2022/src/app/core/componentes/inicio-component/inicio-component.component.mjs +70 -0
  14. package/esm2022/src/app/core/componentes/menu/menu.component.mjs +37 -0
  15. package/esm2022/src/app/core/componentes/tabla-general/tabla-general.component.mjs +93 -0
  16. package/esm2022/src/app/core/core.module.mjs +23 -0
  17. package/esm2022/src/app/core/errores/authentication.error.mjs +7 -0
  18. package/esm2022/src/app/core/modelos/error-response.model.mjs +2 -0
  19. package/esm2022/src/app/core/modelos/table-column.model.mjs +2 -0
  20. package/esm2022/src/app/core/modelos/user.model.mjs +7 -0
  21. package/esm2022/src/app/core/plantilla-general/plantilla-general.template.mjs +230 -0
  22. package/esm2022/src/app/core/servicios/auth.service.mjs +185 -0
  23. package/esm2022/src/app/core/servicios/cargar-control-funcionalidad.service.mjs +54 -0
  24. package/esm2022/src/app/core/servicios/click-posicion.service.mjs +20 -0
  25. package/esm2022/src/app/core/servicios/data-exporter-table.utils.mjs +64 -0
  26. package/esm2022/src/app/core/servicios/error-interceptor.service.mjs +214 -0
  27. package/esm2022/src/app/core/servicios/guardias/auth.guard.mjs +66 -0
  28. package/esm2022/src/app/core/servicios/guardias/publico.guard.mjs +35 -0
  29. package/esm2022/src/app/core/servicios/interceptores/loading-interceptor.mjs +37 -0
  30. package/esm2022/src/app/core/servicios/interceptores/token-interceptor.service.mjs +180 -0
  31. package/esm2022/src/app/core/servicios/loading.service.mjs +43 -0
  32. package/esm2022/src/app/core/servicios/menu.service.mjs +146 -0
  33. package/esm2022/src/app/core/servicios/spinner-service.mjs +22 -0
  34. package/esm2022/src/app/core/servicios/storage.service.mjs +68 -0
  35. package/esm2022/src/app/core/servicios/template.service.mjs +99 -0
  36. package/esm2022/src/app/core/servicios/toast.service.mjs +120 -0
  37. package/esm2022/src/app/core/servicios/utils.service.mjs +360 -0
  38. package/esm2022/src/app/core/sharedlib.module.mjs +16 -0
  39. package/esm2022/src/app/core/utilidades/color.util.mjs +177 -0
  40. package/esm2022/src/app/layout/api/menuchangeevent.mjs +2 -0
  41. package/esm2022/src/app/layout/app.breadcrumb.component.mjs +71 -0
  42. package/esm2022/src/app/layout/app.footer.component.mjs +18 -0
  43. package/esm2022/src/app/layout/app.layout.component.mjs +188 -0
  44. package/esm2022/src/app/layout/app.layout.module.mjs +15 -0
  45. package/esm2022/src/app/layout/app.menu.component.mjs +51 -0
  46. package/esm2022/src/app/layout/app.menu.service.mjs +24 -0
  47. package/esm2022/src/app/layout/app.menuitem.component.mjs +296 -0
  48. package/esm2022/src/app/layout/app.menuprofile.component.mjs +78 -0
  49. package/esm2022/src/app/layout/app.rightmenu.component.mjs +24 -0
  50. package/esm2022/src/app/layout/app.sidebar.component.mjs +92 -0
  51. package/esm2022/src/app/layout/app.topbar.component.mjs +352 -0
  52. package/esm2022/src/app/layout/service/app.layout.service.mjs +134 -0
  53. package/esm2022/src/app/publico/pages/login/login.page.mjs +132 -0
  54. package/esm2022/src/app/publico/pages/not-found/not-found.page.mjs +51 -0
  55. package/esm2022/src/app/publico/pages/seleccion-rol/seleccion-rol.component.mjs +167 -0
  56. package/esm2022/src/app/publico/pages/timeout/timeout.page.mjs +20 -0
  57. package/esm2022/src/app/seguridad/constantes/ConstantesGenerales.mjs +30 -0
  58. package/esm2022/src/app/seguridad/constantes/ReporteEntradaConstantes.mjs +19 -0
  59. package/esm2022/src/app/seguridad/modelos/AplicacionModel.mjs +8 -0
  60. package/esm2022/src/app/seguridad/modelos/ArchivoPortalModel.mjs +14 -0
  61. package/esm2022/src/app/seguridad/modelos/AtributoPuntoModel.mjs +9 -0
  62. package/esm2022/src/app/seguridad/modelos/AtributoSSOportalModel.mjs +17 -0
  63. package/esm2022/src/app/seguridad/modelos/AuditoriaArchivoModel.mjs +11 -0
  64. package/esm2022/src/app/seguridad/modelos/CargueLineaModel.mjs +13 -0
  65. package/esm2022/src/app/seguridad/modelos/ColoresRGB.mjs +18 -0
  66. package/esm2022/src/app/seguridad/modelos/ColumnaFuenteModel.mjs +9 -0
  67. package/esm2022/src/app/seguridad/modelos/ColumnaWraperModel.mjs +6 -0
  68. package/esm2022/src/app/seguridad/modelos/ComplementoModel.mjs +7 -0
  69. package/esm2022/src/app/seguridad/modelos/ComponentePaginaModel.mjs +21 -0
  70. package/esm2022/src/app/seguridad/modelos/ConexionModel.mjs +14 -0
  71. package/esm2022/src/app/seguridad/modelos/ContenidoHtmlPortalModel.mjs +21 -0
  72. package/esm2022/src/app/seguridad/modelos/ControlFuncionModel.mjs +8 -0
  73. package/esm2022/src/app/seguridad/modelos/CorreoModel.mjs +35 -0
  74. package/esm2022/src/app/seguridad/modelos/CorreoOrgEmpModModel.mjs +9 -0
  75. package/esm2022/src/app/seguridad/modelos/CorreoWSModel.mjs +37 -0
  76. package/esm2022/src/app/seguridad/modelos/CruceRecursoPuntoModel.mjs +14 -0
  77. package/esm2022/src/app/seguridad/modelos/DatoInicioModel.mjs +6 -0
  78. package/esm2022/src/app/seguridad/modelos/EjecucionReporteDataModel.mjs +14 -0
  79. package/esm2022/src/app/seguridad/modelos/EmpresaModel.mjs +25 -0
  80. package/esm2022/src/app/seguridad/modelos/EmpresaSeguridadModel.mjs +19 -0
  81. package/esm2022/src/app/seguridad/modelos/EntradaComplementoModel.mjs +7 -0
  82. package/esm2022/src/app/seguridad/modelos/EtiquetaModel.mjs +5 -0
  83. package/esm2022/src/app/seguridad/modelos/Etiquetas.mjs +12 -0
  84. package/esm2022/src/app/seguridad/modelos/ForeingWraperModel.mjs +6 -0
  85. package/esm2022/src/app/seguridad/modelos/FuenteCampoAtributoModel.mjs +16 -0
  86. package/esm2022/src/app/seguridad/modelos/FuenteCampoModel.mjs +17 -0
  87. package/esm2022/src/app/seguridad/modelos/FuenteDato.mjs +19 -0
  88. package/esm2022/src/app/seguridad/modelos/FuenteEntradaModel.mjs +9 -0
  89. package/esm2022/src/app/seguridad/modelos/FuenteGeneralModel.mjs +37 -0
  90. package/esm2022/src/app/seguridad/modelos/FuenteLineaServicioModel.mjs +16 -0
  91. package/esm2022/src/app/seguridad/modelos/FuenteProcesoGeneralModel.mjs +11 -0
  92. package/esm2022/src/app/seguridad/modelos/FuenteServicioModel.mjs +51 -0
  93. package/esm2022/src/app/seguridad/modelos/FuncionalidadModel.mjs +10 -0
  94. package/esm2022/src/app/seguridad/modelos/GeneralModel.mjs +15 -0
  95. package/esm2022/src/app/seguridad/modelos/GrupoAccesoModel.mjs +7 -0
  96. package/esm2022/src/app/seguridad/modelos/GrupoControlFuncionModel.mjs +10 -0
  97. package/esm2022/src/app/seguridad/modelos/GrupoFuenteModel.mjs +13 -0
  98. package/esm2022/src/app/seguridad/modelos/GrupoPermisoModel.mjs +14 -0
  99. package/esm2022/src/app/seguridad/modelos/JoinFromModel.mjs +5 -0
  100. package/esm2022/src/app/seguridad/modelos/ListaServicioModel.mjs +17 -0
  101. package/esm2022/src/app/seguridad/modelos/LlaveForaneaModel.mjs +7 -0
  102. package/esm2022/src/app/seguridad/modelos/LoginModel.mjs +15 -0
  103. package/esm2022/src/app/seguridad/modelos/MensajeSistemaModel.mjs +8 -0
  104. package/esm2022/src/app/seguridad/modelos/MenuPortalModel.mjs +5 -0
  105. package/esm2022/src/app/seguridad/modelos/ModulosModel.mjs +18 -0
  106. package/esm2022/src/app/seguridad/modelos/ObjetoReporteModel.mjs +6 -0
  107. package/esm2022/src/app/seguridad/modelos/PaginaPortalModel.mjs +20 -0
  108. package/esm2022/src/app/seguridad/modelos/ParametroComponenteModel.mjs +9 -0
  109. package/esm2022/src/app/seguridad/modelos/ParametrosGeneralModel.mjs +15 -0
  110. package/esm2022/src/app/seguridad/modelos/PermisoFuncionModel.mjs +9 -0
  111. package/esm2022/src/app/seguridad/modelos/PermisocontenidoModel.mjs +20 -0
  112. package/esm2022/src/app/seguridad/modelos/PeticionModel.mjs +16 -0
  113. package/esm2022/src/app/seguridad/modelos/PreguntaSeguridadModel.mjs +7 -0
  114. package/esm2022/src/app/seguridad/modelos/PropiedadModel.mjs +10 -0
  115. package/esm2022/src/app/seguridad/modelos/PublicacionWebModel.mjs +27 -0
  116. package/esm2022/src/app/seguridad/modelos/PuntoProcesoModel.mjs +7 -0
  117. package/esm2022/src/app/seguridad/modelos/RecursoPunto.mjs +13 -0
  118. package/esm2022/src/app/seguridad/modelos/RecursoPuntoModel.mjs +13 -0
  119. package/esm2022/src/app/seguridad/modelos/ReporteBanda.mjs +8 -0
  120. package/esm2022/src/app/seguridad/modelos/ReporteColumna.mjs +33 -0
  121. package/esm2022/src/app/seguridad/modelos/ReporteColumnario.mjs +69 -0
  122. package/esm2022/src/app/seguridad/modelos/ReporteColumnarioMarcador.mjs +24 -0
  123. package/esm2022/src/app/seguridad/modelos/ReporteEntradaModel.mjs +20 -0
  124. package/esm2022/src/app/seguridad/modelos/ReporteFuenteModel.mjs +124 -0
  125. package/esm2022/src/app/seguridad/modelos/ReporteMarcador.mjs +40 -0
  126. package/esm2022/src/app/seguridad/modelos/ReporteSoporte.mjs +10 -0
  127. package/esm2022/src/app/seguridad/modelos/ReporteTabla.mjs +13 -0
  128. package/esm2022/src/app/seguridad/modelos/RespuestaModel.mjs +9 -0
  129. package/esm2022/src/app/seguridad/modelos/RolModel.mjs +39 -0
  130. package/esm2022/src/app/seguridad/modelos/ServidorCorreoModel.mjs +28 -0
  131. package/esm2022/src/app/seguridad/modelos/SistemaMensajeModel.mjs +9 -0
  132. package/esm2022/src/app/seguridad/modelos/SitioPortalModel.mjs +25 -0
  133. package/esm2022/src/app/seguridad/modelos/TablaFromModel.mjs +5 -0
  134. package/esm2022/src/app/seguridad/modelos/TareasModel.mjs +55 -0
  135. package/esm2022/src/app/seguridad/modelos/TextoModel.mjs +9 -0
  136. package/esm2022/src/app/seguridad/modelos/TipoEtiqueta.mjs +8 -0
  137. package/esm2022/src/app/seguridad/modelos/UnionModel.mjs +12 -0
  138. package/esm2022/src/app/seguridad/modelos/UsuarioModel.mjs +53 -0
  139. package/esm2022/src/app/seguridad/modelos/UsuariogrupoModel.mjs +24 -0
  140. package/esm2022/src/app/seguridad/modelos/aplicacion-propiedad-model.mjs +15 -0
  141. package/esm2022/src/app/seguridad/modelos/contenidoCorreoModel.mjs +10 -0
  142. package/esm2022/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.mjs +154 -0
  143. package/esm2022/src/app/shared/servicios/cargar-archivos.service.mjs +54 -0
  144. package/esm2022/src/app/shared/servicios/cargar-mapas.service.mjs +46 -0
  145. package/esm2022/src/app/shared/servicios/encriptado-basico.service.mjs +53 -0
  146. package/esm2022/src/app/shared/servicios/general.service.mjs +104 -0
  147. package/esm2022/src/app/shared/servicios/parametros-navegacion.service.mjs +21 -0
  148. package/esm2022/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.mjs +378 -0
  149. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.mjs +187 -0
  150. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.mjs +85 -0
  151. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.mjs +347 -0
  152. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.mjs +206 -0
  153. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.mjs +327 -0
  154. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.mjs +1590 -0
  155. package/esm2022/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.mjs +105 -0
  156. package/esm2022/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.mjs +114 -0
  157. package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.mjs +597 -0
  158. package/esm2022/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.mjs +177 -0
  159. package/esm2022/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.mjs +769 -0
  160. package/esm2022/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.mjs +331 -0
  161. package/esm2022/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.mjs +95 -0
  162. package/esm2022/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.mjs +675 -0
  163. package/esm2022/src/app/webcommon/pipes/dashboard.pipe.mjs +86 -0
  164. package/esm2022/src/app/webcommon/pipes/fuente.pipe.mjs +201 -0
  165. package/esm2022/src/app/webcommon/pipes/general.pipe.mjs +918 -0
  166. package/esm2022/src/app/webcommon/pipes/reporte-columnario.pipe.mjs +115 -0
  167. package/esm2022/src/app/webcommon/pipes/reporte-fuente.pipe.mjs +301 -0
  168. package/esm2022/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.mjs +267 -0
  169. package/esm2022/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.mjs +128 -0
  170. package/esm2022/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.mjs +73 -0
  171. package/esm2022/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.mjs +293 -0
  172. package/esm2022/src/app/webcommon/popups/popup-recurso/popup-recurso.component.mjs +269 -0
  173. package/esm2022/src/app/webcommon/popups/popup-reporte/popup-reporte.component.mjs +563 -0
  174. package/esm2022/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.mjs +64 -0
  175. package/esm2022/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.mjs +162 -0
  176. package/esm2022/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.mjs +89 -0
  177. package/esm2022/src/app/webcommon/services/carguelinea.service.mjs +69 -0
  178. package/esm2022/src/app/webcommon/services/dashboard.service.mjs +253 -0
  179. package/esm2022/src/app/webcommon/services/ejecucionreporte.service.mjs +114 -0
  180. package/esm2022/src/app/webcommon/services/fechaUtils.service.mjs +102 -0
  181. package/esm2022/src/app/webcommon/services/fuentegeneral.service.mjs +68 -0
  182. package/esm2022/src/app/webcommon/services/homologacion.service.mjs +50 -0
  183. package/esm2022/src/app/webcommon/services/plantillas.service.mjs +129 -0
  184. package/esm2022/src/app/webcommon/services/reportes.service.mjs +95 -0
  185. package/esm2022/src/app/webcommon/webcommon.module.mjs +15 -0
  186. package/esm2022/src/environments/environment.mjs +24 -0
  187. package/fesm2022/general-library-union.mjs +16137 -0
  188. package/fesm2022/general-library-union.mjs.map +1 -0
  189. package/index.d.ts +5 -0
  190. package/package.json +62 -73
  191. package/{public-api.ts → public-api.d.ts} +164 -206
  192. package/src/app/core/componentes/breadcrumb/breadcrumb.component.d.ts +18 -0
  193. package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.d.ts +14 -0
  194. package/src/app/core/componentes/filtro-general/filtro-general.component.d.ts +36 -0
  195. package/src/app/core/componentes/footer/footer.component.d.ts +9 -0
  196. package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.d.ts +50 -0
  197. package/src/app/core/componentes/formulariodinamico/objetosformulario/{Cambio.ts → Cambio.d.ts} +7 -13
  198. package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.d.ts +44 -0
  199. package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.d.ts +45 -0
  200. package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.d.ts +33 -0
  201. package/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.d.ts +9 -0
  202. package/src/app/core/componentes/inicio-component/inicio-component.component.d.ts +26 -0
  203. package/src/app/core/componentes/menu/menu.component.d.ts +16 -0
  204. package/src/app/core/componentes/tabla-general/tabla-general.component.d.ts +32 -0
  205. package/src/app/core/core.module.d.ts +8 -0
  206. package/src/app/core/errores/authentication.error.d.ts +3 -0
  207. package/src/app/core/modelos/error-response.model.d.ts +9 -0
  208. package/src/app/core/modelos/table-column.model.d.ts +12 -0
  209. package/src/app/core/modelos/user.model.d.ts +6 -0
  210. package/src/app/core/plantilla-general/plantilla-general.template.d.ts +89 -0
  211. package/src/app/core/servicios/auth.service.d.ts +52 -0
  212. package/src/app/core/servicios/cargar-control-funcionalidad.service.d.ts +19 -0
  213. package/src/app/core/servicios/click-posicion.service.d.ts +11 -0
  214. package/src/app/core/servicios/data-exporter-table.utils.d.ts +11 -0
  215. package/src/app/core/servicios/error-interceptor.service.d.ts +41 -0
  216. package/src/app/core/servicios/guardias/auth.guard.d.ts +17 -0
  217. package/src/app/core/servicios/guardias/publico.guard.d.ts +13 -0
  218. package/src/app/core/servicios/interceptores/loading-interceptor.d.ts +11 -0
  219. package/src/app/core/servicios/interceptores/token-interceptor.service.d.ts +26 -0
  220. package/src/app/core/servicios/loading.service.d.ts +22 -0
  221. package/src/app/core/servicios/menu.service.d.ts +35 -0
  222. package/src/app/core/servicios/spinner-service.d.ts +9 -0
  223. package/src/app/core/servicios/storage.service.d.ts +37 -0
  224. package/src/app/core/servicios/template.service.d.ts +20 -0
  225. package/src/app/core/servicios/toast.service.d.ts +48 -0
  226. package/src/app/core/servicios/utils.service.d.ts +46 -0
  227. package/src/app/core/sharedlib.module.d.ts +6 -0
  228. package/src/app/core/utilidades/color.util.d.ts +70 -0
  229. package/src/app/layout/api/{menuchangeevent.ts → menuchangeevent.d.ts} +4 -4
  230. package/src/app/layout/app.breadcrumb.component.d.ts +28 -0
  231. package/src/app/layout/app.footer.component.d.ts +8 -0
  232. package/src/app/layout/app.layout.component.d.ts +39 -0
  233. package/src/app/layout/app.layout.module.d.ts +6 -0
  234. package/src/app/layout/app.menu.component.d.ts +19 -0
  235. package/src/app/layout/app.menu.service.d.ts +12 -0
  236. package/src/app/layout/app.menuitem.component.d.ts +41 -0
  237. package/src/app/layout/app.menuprofile.component.d.ts +18 -0
  238. package/src/app/layout/app.rightmenu.component.d.ts +10 -0
  239. package/src/app/layout/app.sidebar.component.d.ts +34 -0
  240. package/src/app/layout/app.topbar.component.d.ts +81 -0
  241. package/src/app/layout/service/app.layout.service.d.ts +57 -0
  242. package/src/app/publico/pages/login/login.page.d.ts +40 -0
  243. package/src/app/publico/pages/not-found/not-found.page.d.ts +17 -0
  244. package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.d.ts +41 -0
  245. package/src/app/publico/pages/timeout/timeout.page.d.ts +10 -0
  246. package/src/app/seguridad/constantes/ConstantesGenerales.d.ts +25 -0
  247. package/src/app/seguridad/constantes/ReporteEntradaConstantes.d.ts +7 -0
  248. package/src/app/seguridad/modelos/AplicacionModel.d.ts +7 -0
  249. package/src/app/seguridad/modelos/ArchivoPortalModel.d.ts +13 -0
  250. package/src/app/seguridad/modelos/AtributoPuntoModel.d.ts +8 -0
  251. package/src/app/seguridad/modelos/AtributoSSOportalModel.d.ts +16 -0
  252. package/src/app/seguridad/modelos/{AuditoriaArchivoModel.ts → AuditoriaArchivoModel.d.ts} +10 -13
  253. package/src/app/seguridad/modelos/CargueLineaModel.d.ts +12 -0
  254. package/src/app/seguridad/modelos/ColoresRGB.d.ts +17 -0
  255. package/src/app/seguridad/modelos/ColumnaFuenteModel.d.ts +8 -0
  256. package/src/app/seguridad/modelos/{ColumnaWraperModel.ts → ColumnaWraperModel.d.ts} +6 -7
  257. package/src/app/seguridad/modelos/ComplementoModel.d.ts +6 -0
  258. package/src/app/seguridad/modelos/ComponentePaginaModel.d.ts +20 -0
  259. package/src/app/seguridad/modelos/ConexionModel.d.ts +13 -0
  260. package/src/app/seguridad/modelos/{ContenidoHtmlPortalModel.ts → ContenidoHtmlPortalModel.d.ts} +20 -25
  261. package/src/app/seguridad/modelos/ControlFuncionModel.d.ts +7 -0
  262. package/src/app/seguridad/modelos/CorreoModel.d.ts +31 -0
  263. package/src/app/seguridad/modelos/{CorreoOrgEmpModModel.ts → CorreoOrgEmpModModel.d.ts} +8 -11
  264. package/src/app/seguridad/modelos/CorreoWSModel.d.ts +33 -0
  265. package/src/app/seguridad/modelos/CruceRecursoPuntoModel.d.ts +13 -0
  266. package/src/app/seguridad/modelos/{DatoInicioModel.ts → DatoInicioModel.d.ts} +6 -7
  267. package/src/app/seguridad/modelos/{EjecucionReporteDataModel.ts → EjecucionReporteDataModel.d.ts} +20 -21
  268. package/src/app/seguridad/modelos/EmpresaModel.d.ts +23 -0
  269. package/src/app/seguridad/modelos/EmpresaSeguridadModel.d.ts +18 -0
  270. package/src/app/seguridad/modelos/{EntradaComplementoModel.ts → EntradaComplementoModel.d.ts} +6 -9
  271. package/src/app/seguridad/modelos/EtiquetaModel.d.ts +4 -0
  272. package/src/app/seguridad/modelos/Etiquetas.d.ts +10 -0
  273. package/src/app/seguridad/modelos/{ForeingWraperModel.ts → ForeingWraperModel.d.ts} +6 -9
  274. package/src/app/seguridad/modelos/FuenteCampoAtributoModel.d.ts +15 -0
  275. package/src/app/seguridad/modelos/{FuenteCampoModel.ts → FuenteCampoModel.d.ts} +16 -20
  276. package/src/app/seguridad/modelos/FuenteDato.d.ts +18 -0
  277. package/src/app/seguridad/modelos/FuenteEntradaModel.d.ts +8 -0
  278. package/src/app/seguridad/modelos/{FuenteGeneralModel.ts → FuenteGeneralModel.d.ts} +36 -55
  279. package/src/app/seguridad/modelos/FuenteLineaServicioModel.d.ts +16 -0
  280. package/src/app/seguridad/modelos/FuenteProcesoGeneralModel.d.ts +10 -0
  281. package/src/app/seguridad/modelos/{FuenteServicioModel.ts → FuenteServicioModel.d.ts} +47 -61
  282. package/src/app/seguridad/modelos/FuncionalidadModel.d.ts +8 -0
  283. package/src/app/seguridad/modelos/GeneralModel.d.ts +8 -0
  284. package/src/app/seguridad/modelos/{GrupoAccesoModel.ts → GrupoAccesoModel.d.ts} +6 -9
  285. package/src/app/seguridad/modelos/GrupoControlFuncionModel.d.ts +9 -0
  286. package/src/app/seguridad/modelos/GrupoFuenteModel.d.ts +13 -0
  287. package/src/app/seguridad/modelos/GrupoPermisoModel.d.ts +13 -0
  288. package/src/app/seguridad/modelos/{JoinFromModel.ts → JoinFromModel.d.ts} +4 -4
  289. package/src/app/seguridad/modelos/ListaServicioModel.d.ts +16 -0
  290. package/src/app/seguridad/modelos/LlaveForaneaModel.d.ts +6 -0
  291. package/src/app/seguridad/modelos/LoginModel.d.ts +17 -0
  292. package/src/app/seguridad/modelos/MensajeSistemaModel.d.ts +7 -0
  293. package/src/app/seguridad/modelos/{MenuPortalModel.ts → MenuPortalModel.d.ts} +4 -5
  294. package/src/app/seguridad/modelos/ModulosModel.d.ts +14 -0
  295. package/src/app/seguridad/modelos/{ObjetoReporteModel.ts → ObjetoReporteModel.d.ts} +5 -6
  296. package/src/app/seguridad/modelos/PaginaPortalModel.d.ts +19 -0
  297. package/src/app/seguridad/modelos/ParametroComponenteModel.d.ts +8 -0
  298. package/src/app/seguridad/modelos/ParametrosGeneralModel.d.ts +8 -0
  299. package/src/app/seguridad/modelos/PermisoFuncionModel.d.ts +8 -0
  300. package/src/app/seguridad/modelos/PermisocontenidoModel.d.ts +18 -0
  301. package/src/app/seguridad/modelos/{PeticionModel.ts → PeticionModel.d.ts} +15 -20
  302. package/src/app/seguridad/modelos/PreguntaSeguridadModel.d.ts +6 -0
  303. package/src/app/seguridad/modelos/PropiedadModel.d.ts +9 -0
  304. package/src/app/seguridad/modelos/PublicacionWebModel.d.ts +25 -0
  305. package/src/app/seguridad/modelos/PuntoProcesoModel.d.ts +6 -0
  306. package/src/app/seguridad/modelos/RecursoPunto.d.ts +12 -0
  307. package/src/app/seguridad/modelos/RecursoPuntoModel.d.ts +12 -0
  308. package/src/app/seguridad/modelos/ReporteBanda.d.ts +7 -0
  309. package/src/app/seguridad/modelos/ReporteColumna.d.ts +32 -0
  310. package/src/app/seguridad/modelos/ReporteColumnario.d.ts +68 -0
  311. package/src/app/seguridad/modelos/ReporteColumnarioMarcador.d.ts +23 -0
  312. package/src/app/seguridad/modelos/{ReporteEntradaModel.ts → ReporteEntradaModel.d.ts} +19 -21
  313. package/src/app/seguridad/modelos/{ReporteFuenteModel.ts → ReporteFuenteModel.d.ts} +87 -141
  314. package/src/app/seguridad/modelos/ReporteMarcador.d.ts +39 -0
  315. package/src/app/seguridad/modelos/ReporteSoporte.d.ts +9 -0
  316. package/src/app/seguridad/modelos/ReporteTabla.d.ts +12 -0
  317. package/src/app/seguridad/modelos/RespuestaModel.d.ts +8 -0
  318. package/src/app/seguridad/modelos/{RolModel.ts → RolModel.d.ts} +37 -41
  319. package/src/app/seguridad/modelos/ServidorCorreoModel.d.ts +25 -0
  320. package/src/app/seguridad/modelos/SistemaMensajeModel.d.ts +8 -0
  321. package/src/app/seguridad/modelos/SitioPortalModel.d.ts +24 -0
  322. package/src/app/seguridad/modelos/TablaFromModel.d.ts +4 -0
  323. package/src/app/seguridad/modelos/TareasModel.d.ts +50 -0
  324. package/src/app/seguridad/modelos/TextoModel.d.ts +8 -0
  325. package/src/app/seguridad/modelos/TipoEtiqueta.d.ts +7 -0
  326. package/src/app/seguridad/modelos/UnionModel.d.ts +11 -0
  327. package/src/app/seguridad/modelos/{UsuarioModel.ts → UsuarioModel.d.ts} +49 -60
  328. package/src/app/seguridad/modelos/UsuariogrupoModel.d.ts +22 -0
  329. package/src/app/seguridad/modelos/aplicacion-propiedad-model.d.ts +13 -0
  330. package/src/app/seguridad/modelos/contenidoCorreoModel.d.ts +9 -0
  331. package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.d.ts +47 -0
  332. package/src/app/shared/servicios/cargar-archivos.service.d.ts +15 -0
  333. package/src/app/shared/servicios/cargar-mapas.service.d.ts +18 -0
  334. package/src/app/shared/servicios/encriptado-basico.service.d.ts +10 -0
  335. package/src/app/shared/servicios/general.service.d.ts +24 -0
  336. package/src/app/shared/servicios/parametros-navegacion.service.d.ts +9 -0
  337. package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.d.ts +79 -0
  338. package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.d.ts +79 -0
  339. package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.d.ts +29 -0
  340. package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.d.ts +69 -0
  341. package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.d.ts +51 -0
  342. package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.d.ts +77 -0
  343. package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.d.ts +279 -0
  344. package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.d.ts +42 -0
  345. package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.d.ts +35 -0
  346. package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.d.ts +146 -0
  347. package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.d.ts +49 -0
  348. package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.d.ts +132 -0
  349. package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.d.ts +64 -0
  350. package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.d.ts +33 -0
  351. package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.d.ts +149 -0
  352. package/src/app/webcommon/pipes/dashboard.pipe.d.ts +48 -0
  353. package/src/app/webcommon/pipes/fuente.pipe.d.ts +136 -0
  354. package/src/app/webcommon/pipes/general.pipe.d.ts +647 -0
  355. package/src/app/webcommon/pipes/reporte-columnario.pipe.d.ts +59 -0
  356. package/src/app/webcommon/pipes/reporte-fuente.pipe.d.ts +193 -0
  357. package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.d.ts +59 -0
  358. package/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.d.ts +27 -0
  359. package/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.d.ts +21 -0
  360. package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.d.ts +64 -0
  361. package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.d.ts +63 -0
  362. package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.d.ts +105 -0
  363. package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.d.ts +21 -0
  364. package/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.d.ts +42 -0
  365. package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.d.ts +30 -0
  366. package/src/app/webcommon/services/carguelinea.service.d.ts +19 -0
  367. package/src/app/webcommon/services/dashboard.service.d.ts +27 -0
  368. package/src/app/webcommon/services/ejecucionreporte.service.d.ts +34 -0
  369. package/src/app/webcommon/services/fechaUtils.service.d.ts +31 -0
  370. package/src/app/webcommon/services/fuentegeneral.service.d.ts +24 -0
  371. package/src/app/webcommon/services/homologacion.service.d.ts +17 -0
  372. package/src/app/webcommon/services/plantillas.service.d.ts +26 -0
  373. package/src/app/webcommon/services/reportes.service.d.ts +35 -0
  374. package/src/app/webcommon/webcommon.module.d.ts +6 -0
  375. package/src/environments/environment.d.ts +7 -0
  376. package/.browserslistrc +0 -15
  377. package/.editorconfig +0 -16
  378. package/.vscode/extensions.json +0 -4
  379. package/.vscode/launch.json +0 -20
  380. package/.vscode/tasks.json +0 -42
  381. package/angular.json +0 -143
  382. package/karma.conf.js +0 -44
  383. package/ng-package.json +0 -21
  384. package/src/app/app.component.html +0 -12
  385. package/src/app/app.component.scss +0 -0
  386. package/src/app/app.component.spec.ts +0 -29
  387. package/src/app/app.component.ts +0 -34
  388. package/src/app/app.config.ts +0 -43
  389. package/src/app/app.module.ts +0 -10
  390. package/src/app/app.routes.ts +0 -88
  391. package/src/app/core/componentes/breadcrumb/breadcrumb.component.html +0 -6
  392. package/src/app/core/componentes/breadcrumb/breadcrumb.component.scss +0 -0
  393. package/src/app/core/componentes/breadcrumb/breadcrumb.component.ts +0 -39
  394. package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.html +0 -1
  395. package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.scss +0 -0
  396. package/src/app/core/componentes/carga-breadcrumb/carga-breadcrumb.component.ts +0 -31
  397. package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.html +0 -9
  398. package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.scss +0 -28
  399. package/src/app/core/componentes/carga-pantalla-completa/carga-pantalla-completa.component.ts +0 -32
  400. package/src/app/core/componentes/filtro-general/filtro-general.component.html +0 -36
  401. package/src/app/core/componentes/filtro-general/filtro-general.component.scss +0 -3
  402. package/src/app/core/componentes/filtro-general/filtro-general.component.ts +0 -218
  403. package/src/app/core/componentes/footer/footer.component.html +0 -13
  404. package/src/app/core/componentes/footer/footer.component.scss +0 -3
  405. package/src/app/core/componentes/footer/footer.component.ts +0 -20
  406. package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.html +0 -267
  407. package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.scss +0 -21
  408. package/src/app/core/componentes/formulariodinamico/formulariodinamico.component.ts +0 -278
  409. package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormulario.ts +0 -118
  410. package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioCons.ts +0 -76
  411. package/src/app/core/componentes/formulariodinamico/objetosformulario/CampoFormularioNuevo.ts +0 -67
  412. package/src/app/core/componentes/formulariodinamico/objetosformulario/HashDirective.ts +0 -11
  413. package/src/app/core/componentes/inicio-component/inicio-component.component.html +0 -29
  414. package/src/app/core/componentes/inicio-component/inicio-component.component.scss +0 -63
  415. package/src/app/core/componentes/inicio-component/inicio-component.component.ts +0 -68
  416. package/src/app/core/componentes/menu/menu.component.html +0 -13
  417. package/src/app/core/componentes/menu/menu.component.scss +0 -36
  418. package/src/app/core/componentes/menu/menu.component.ts +0 -35
  419. package/src/app/core/componentes/tabla-general/tabla-general.component.html +0 -90
  420. package/src/app/core/componentes/tabla-general/tabla-general.component.scss +0 -0
  421. package/src/app/core/componentes/tabla-general/tabla-general.component.ts +0 -96
  422. package/src/app/core/core.module.ts +0 -22
  423. package/src/app/core/errores/authentication.error.ts +0 -6
  424. package/src/app/core/modelos/error-response.model.ts +0 -9
  425. package/src/app/core/modelos/table-column.model.ts +0 -10
  426. package/src/app/core/modelos/user.model.ts +0 -6
  427. package/src/app/core/plantilla-general/plantilla-general.template.html +0 -139
  428. package/src/app/core/plantilla-general/plantilla-general.template.scss +0 -37
  429. package/src/app/core/plantilla-general/plantilla-general.template.ts +0 -233
  430. package/src/app/core/servicios/auth.service.ts +0 -189
  431. package/src/app/core/servicios/cargar-control-funcionalidad.service.ts +0 -48
  432. package/src/app/core/servicios/click-posicion.service.ts +0 -16
  433. package/src/app/core/servicios/data-exporter-table.utils.ts +0 -78
  434. package/src/app/core/servicios/error-interceptor.service.ts +0 -208
  435. package/src/app/core/servicios/guardias/auth.guard.ts +0 -51
  436. package/src/app/core/servicios/guardias/publico.guard.ts +0 -26
  437. package/src/app/core/servicios/interceptores/loading-interceptor.ts +0 -37
  438. package/src/app/core/servicios/interceptores/token-interceptor.service.ts +0 -177
  439. package/src/app/core/servicios/loading.service.ts +0 -48
  440. package/src/app/core/servicios/menu.service.ts +0 -153
  441. package/src/app/core/servicios/spinner-service.ts +0 -18
  442. package/src/app/core/servicios/storage.service.ts +0 -68
  443. package/src/app/core/servicios/template.service.ts +0 -91
  444. package/src/app/core/servicios/toast.service.ts +0 -114
  445. package/src/app/core/servicios/utils.service.ts +0 -393
  446. package/src/app/core/sharedlib.module.ts +0 -11
  447. package/src/app/core/utilidades/color.util.ts +0 -197
  448. package/src/app/layout/app.breadcrumb.component.html +0 -20
  449. package/src/app/layout/app.breadcrumb.component.ts +0 -78
  450. package/src/app/layout/app.footer.component.html +0 -18
  451. package/src/app/layout/app.footer.component.ts +0 -15
  452. package/src/app/layout/app.layout.component.html +0 -20
  453. package/src/app/layout/app.layout.component.ts +0 -201
  454. package/src/app/layout/app.layout.module.ts +0 -9
  455. package/src/app/layout/app.menu.component.html +0 -6
  456. package/src/app/layout/app.menu.component.ts +0 -51
  457. package/src/app/layout/app.menu.service.ts +0 -23
  458. package/src/app/layout/app.menuitem.component.ts +0 -252
  459. package/src/app/layout/app.menuprofile.component.html +0 -35
  460. package/src/app/layout/app.menuprofile.component.ts +0 -60
  461. package/src/app/layout/app.rightmenu.component.html +0 -72
  462. package/src/app/layout/app.rightmenu.component.ts +0 -24
  463. package/src/app/layout/app.sidebar.component.html +0 -40
  464. package/src/app/layout/app.sidebar.component.ts +0 -81
  465. package/src/app/layout/app.topbar.component.html +0 -195
  466. package/src/app/layout/app.topbar.component.ts +0 -363
  467. package/src/app/layout/config/app.config.component.html +0 -125
  468. package/src/app/layout/config/app.config.component.ts +0 -206
  469. package/src/app/layout/config/app.config.module.ts +0 -11
  470. package/src/app/layout/service/app.layout.service.ts +0 -191
  471. package/src/app/publico/pages/login/login.page.html +0 -53
  472. package/src/app/publico/pages/login/login.page.scss +0 -210
  473. package/src/app/publico/pages/login/login.page.ts +0 -130
  474. package/src/app/publico/pages/not-found/not-found.page.html +0 -36
  475. package/src/app/publico/pages/not-found/not-found.page.scss +0 -2
  476. package/src/app/publico/pages/not-found/not-found.page.ts +0 -46
  477. package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.html +0 -58
  478. package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.scss +0 -46
  479. package/src/app/publico/pages/seleccion-rol/seleccion-rol.component.ts +0 -176
  480. package/src/app/publico/pages/timeout/timeout.page.html +0 -24
  481. package/src/app/publico/pages/timeout/timeout.page.scss +0 -2
  482. package/src/app/publico/pages/timeout/timeout.page.ts +0 -18
  483. package/src/app/seguridad/constantes/ConstantesGenerales.ts +0 -30
  484. package/src/app/seguridad/constantes/ReporteEntradaConstantes.ts +0 -18
  485. package/src/app/seguridad/constantes/ReporteFuenteConstantes.ts +0 -13
  486. package/src/app/seguridad/modelos/AplicacionModel.ts +0 -11
  487. package/src/app/seguridad/modelos/ArchivoPortalModel.ts +0 -16
  488. package/src/app/seguridad/modelos/AtributoPuntoModel.ts +0 -9
  489. package/src/app/seguridad/modelos/AtributoSSOportalModel.ts +0 -22
  490. package/src/app/seguridad/modelos/CargueLineaModel.ts +0 -17
  491. package/src/app/seguridad/modelos/ColoresRGB.ts +0 -17
  492. package/src/app/seguridad/modelos/ColumnaFuenteModel.ts +0 -9
  493. package/src/app/seguridad/modelos/ComplementoModel.ts +0 -10
  494. package/src/app/seguridad/modelos/ComponentePaginaModel.ts +0 -22
  495. package/src/app/seguridad/modelos/ConexionModel.ts +0 -15
  496. package/src/app/seguridad/modelos/ControlFuncionModel.ts +0 -10
  497. package/src/app/seguridad/modelos/CorreoModel.ts +0 -45
  498. package/src/app/seguridad/modelos/CorreoWSModel.ts +0 -49
  499. package/src/app/seguridad/modelos/CruceRecursoPuntoModel.ts +0 -14
  500. package/src/app/seguridad/modelos/EmpresaModel.ts +0 -25
  501. package/src/app/seguridad/modelos/EmpresaSeguridadModel.ts +0 -19
  502. package/src/app/seguridad/modelos/EtiquetaModel.ts +0 -4
  503. package/src/app/seguridad/modelos/Etiquetas.ts +0 -14
  504. package/src/app/seguridad/modelos/FuenteCampoAtributoModel.ts +0 -21
  505. package/src/app/seguridad/modelos/FuenteDato.ts +0 -19
  506. package/src/app/seguridad/modelos/FuenteEntradaModel.ts +0 -9
  507. package/src/app/seguridad/modelos/FuenteLineaServicioModel.ts +0 -19
  508. package/src/app/seguridad/modelos/FuenteProcesoGeneralModel.ts +0 -14
  509. package/src/app/seguridad/modelos/FuncionalidadModel.ts +0 -12
  510. package/src/app/seguridad/modelos/GeneralModel.ts +0 -16
  511. package/src/app/seguridad/modelos/GrupoControlFuncionModel.ts +0 -12
  512. package/src/app/seguridad/modelos/GrupoFuenteModel.ts +0 -17
  513. package/src/app/seguridad/modelos/GrupoPermisoModel.ts +0 -16
  514. package/src/app/seguridad/modelos/ListaServicioModel.ts +0 -18
  515. package/src/app/seguridad/modelos/LlaveForaneaModel.ts +0 -6
  516. package/src/app/seguridad/modelos/LoginModel.ts +0 -19
  517. package/src/app/seguridad/modelos/MensajeSistemaModel.ts +0 -10
  518. package/src/app/seguridad/modelos/ModulosModel.ts +0 -17
  519. package/src/app/seguridad/modelos/PaginaPortalModel.ts +0 -23
  520. package/src/app/seguridad/modelos/ParametroComponenteModel.ts +0 -9
  521. package/src/app/seguridad/modelos/ParametrosGeneralModel.ts +0 -16
  522. package/src/app/seguridad/modelos/PermisoFuncionModel.ts +0 -11
  523. package/src/app/seguridad/modelos/PermisocontenidoModel.ts +0 -20
  524. package/src/app/seguridad/modelos/PreguntaSeguridadModel.ts +0 -9
  525. package/src/app/seguridad/modelos/PropiedadModel.ts +0 -12
  526. package/src/app/seguridad/modelos/PublicacionWebModel.ts +0 -29
  527. package/src/app/seguridad/modelos/PuntoProcesoModel.ts +0 -7
  528. package/src/app/seguridad/modelos/RecursoPunto.ts +0 -13
  529. package/src/app/seguridad/modelos/RecursoPuntoModel.ts +0 -13
  530. package/src/app/seguridad/modelos/ReporteBanda.ts +0 -9
  531. package/src/app/seguridad/modelos/ReporteColumna.ts +0 -33
  532. package/src/app/seguridad/modelos/ReporteColumnario.ts +0 -82
  533. package/src/app/seguridad/modelos/ReporteColumnarioMarcador.ts +0 -31
  534. package/src/app/seguridad/modelos/ReporteMarcador.ts +0 -40
  535. package/src/app/seguridad/modelos/ReporteSoporte.ts +0 -10
  536. package/src/app/seguridad/modelos/ReporteTabla.ts +0 -14
  537. package/src/app/seguridad/modelos/RespuestaModel.ts +0 -9
  538. package/src/app/seguridad/modelos/ServidorCorreoModel.ts +0 -31
  539. package/src/app/seguridad/modelos/SistemaMensajeModel.ts +0 -11
  540. package/src/app/seguridad/modelos/SitioPortalModel.ts +0 -29
  541. package/src/app/seguridad/modelos/TablaFromModel.ts +0 -5
  542. package/src/app/seguridad/modelos/TareasModel.ts +0 -54
  543. package/src/app/seguridad/modelos/TextoModel.ts +0 -11
  544. package/src/app/seguridad/modelos/TipoEtiqueta.ts +0 -8
  545. package/src/app/seguridad/modelos/UnionModel.ts +0 -14
  546. package/src/app/seguridad/modelos/UsuariogrupoModel.ts +0 -27
  547. package/src/app/seguridad/modelos/aplicacion-propiedad-model.ts +0 -16
  548. package/src/app/seguridad/modelos/contenidoCorreoModel.ts +0 -13
  549. package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.html +0 -47
  550. package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.scss +0 -8
  551. package/src/app/shared/componentes/input-helper-seleccion-plantilla/input-helper-seleccion-plantilla.component.ts +0 -144
  552. package/src/app/shared/servicios/cargar-archivos.service.ts +0 -51
  553. package/src/app/shared/servicios/cargar-mapas.service.ts +0 -43
  554. package/src/app/shared/servicios/encriptado-basico.service.ts +0 -54
  555. package/src/app/shared/servicios/encriptador-simetrico.service.ts +0 -29
  556. package/src/app/shared/servicios/general.service.ts +0 -124
  557. package/src/app/shared/servicios/parametros-navegacion.service.ts +0 -20
  558. package/src/app/shared/servicios/plantillas.service.ts +0 -22
  559. package/src/app/shared/servicios/tarea.service.ts +0 -71
  560. package/src/app/shared/utilidades/translate-loader.util.ts +0 -44
  561. package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.html +0 -175
  562. package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.scss +0 -78
  563. package/src/app/webcommon/pages/cargue-plantilla/cargue-plantilla-general/cargue-plantilla-general.component.ts +0 -438
  564. package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.html +0 -87
  565. package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.scss +0 -0
  566. package/src/app/webcommon/pages/ejecucion-reporte/detalle-campo-reporte/detalle-campo-reporte.component.ts +0 -189
  567. package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.html +0 -117
  568. package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.scss +0 -0
  569. package/src/app/webcommon/pages/ejecucion-reporte/detalle-distribucion-reporte/detalle-distribucion-reporte.component.ts +0 -87
  570. package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.html +0 -158
  571. package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.scss +0 -6
  572. package/src/app/webcommon/pages/ejecucion-reporte/detalle-ejecucion-reporte/detalle-ejecucion-reporte.page.ts +0 -345
  573. package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.html +0 -131
  574. package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.scss +0 -0
  575. package/src/app/webcommon/pages/ejecucion-reporte/detalle-entrada-reporte/detalle-entrada-reporte.component.ts +0 -198
  576. package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.html +0 -206
  577. package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.scss +0 -3
  578. package/src/app/webcommon/pages/ejecucion-reporte/detalle-punto-proceso-reporte/detalle-punto-proceso-reporte.component.ts +0 -328
  579. package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.html +0 -2121
  580. package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.scss +0 -241
  581. package/src/app/webcommon/pages/ejecucion-reporte/detalle-tipo-reporte/detalle-tipo-reporte.component.ts +0 -1698
  582. package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.html +0 -33
  583. package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.scss +0 -0
  584. package/src/app/webcommon/pages/ejecucion-reporte/listado-ejecucion-reporte/listado-ejecucion-reporte.page.ts +0 -96
  585. package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.html +0 -54
  586. package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.scss +0 -0
  587. package/src/app/webcommon/pages/ejecucion-reporte-externo/listado-ejecucion-reporte-externo/listado-ejecucion-reporte-externo.component.ts +0 -111
  588. package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.html +0 -394
  589. package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.scss +0 -10
  590. package/src/app/webcommon/pages/fuente/importar-fuente-con/importar-fuente-con.component.ts +0 -610
  591. package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.html +0 -130
  592. package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.scss +0 -0
  593. package/src/app/webcommon/pages/fuente/importar-fuente-general/importar-fuente-general.component.ts +0 -172
  594. package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.html +0 -404
  595. package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.scss +0 -5
  596. package/src/app/webcommon/pages/fuente-reporte/fuente-reporte.component.ts +0 -763
  597. package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.html +0 -145
  598. package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.scss +0 -0
  599. package/src/app/webcommon/pages/fuenteGeneral/fuente-general-servicio/fuente-general-servicio.component.ts +0 -302
  600. package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.html +0 -19
  601. package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.scss +0 -0
  602. package/src/app/webcommon/pages/fuenteGeneral/listado-fuente-general/listado-fuente-general.page.ts +0 -88
  603. package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.html +0 -714
  604. package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.scss +0 -0
  605. package/src/app/webcommon/pages/fuenteGeneral/mantenimiento-fuente-general/mantenimiento-fuente-general.page.ts +0 -688
  606. package/src/app/webcommon/pipes/dashboard.pipe.ts +0 -79
  607. package/src/app/webcommon/pipes/fuente.pipe.ts +0 -207
  608. package/src/app/webcommon/pipes/general.pipe.ts +0 -1046
  609. package/src/app/webcommon/pipes/reporte-columnario.pipe.ts +0 -101
  610. package/src/app/webcommon/pipes/reporte-fuente.pipe.ts +0 -306
  611. package/src/app/webcommon/pipes/sara-general.pipe.ts +0 -289
  612. package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.html +0 -90
  613. package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.scss +0 -0
  614. package/src/app/webcommon/popups/popup-campos-fuente-general/popup-campos-fuente-general.component.ts +0 -262
  615. package/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.html +0 -50
  616. package/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.scss +0 -0
  617. package/src/app/webcommon/popups/popup-convertir-plantillas/popup-convertir-plantillas.component.ts +0 -135
  618. package/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.html +0 -44
  619. package/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.scss +0 -0
  620. package/src/app/webcommon/popups/popup-editor-formula/popup-editor-formula.component.ts +0 -66
  621. package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.html +0 -41
  622. package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.scss +0 -0
  623. package/src/app/webcommon/popups/popup-punto-proceso/popup-punto-proceso.component.ts +0 -283
  624. package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.html +0 -179
  625. package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.scss +0 -3
  626. package/src/app/webcommon/popups/popup-recurso/popup-recurso.component.ts +0 -266
  627. package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.html +0 -273
  628. package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.scss +0 -13
  629. package/src/app/webcommon/popups/popup-reporte/popup-reporte.component.ts +0 -564
  630. package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.html +0 -10
  631. package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.scss +0 -5
  632. package/src/app/webcommon/popups/popup-sentencia/popup-sentencia.component.ts +0 -58
  633. package/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.html +0 -71
  634. package/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.scss +0 -0
  635. package/src/app/webcommon/popups/popup-tablas-fuente/popup-tablas-fuente.component.ts +0 -154
  636. package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.html +0 -11
  637. package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.scss +0 -0
  638. package/src/app/webcommon/popups/punto-proceso-comp/punto-proceso-comp.component.ts +0 -82
  639. package/src/app/webcommon/services/carguelinea.service.ts +0 -74
  640. package/src/app/webcommon/services/dashboard.service.ts +0 -258
  641. package/src/app/webcommon/services/ejecucionreporte.service.ts +0 -160
  642. package/src/app/webcommon/services/fechaUtils.service.ts +0 -133
  643. package/src/app/webcommon/services/fuentegeneral.service.ts +0 -74
  644. package/src/app/webcommon/services/homologacion.service.ts +0 -49
  645. package/src/app/webcommon/services/plantillas.service.ts +0 -165
  646. package/src/app/webcommon/services/reportes.service.ts +0 -133
  647. package/src/app/webcommon/webcommon.module.ts +0 -11
  648. package/src/environments/environment.prod.ts +0 -3
  649. package/src/environments/environment.ts +0 -25
  650. package/src/favicon.ico +0 -0
  651. package/src/index.html +0 -14
  652. package/src/main.ts +0 -12
  653. package/src/polyfills.ts +0 -53
  654. package/src/test.ts +0 -14
  655. package/tsconfig.app.json +0 -15
  656. package/tsconfig.json +0 -35
  657. package/tsconfig.spec.json +0 -18
@@ -0,0 +1,360 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { DOCUMENT } from '@angular/common';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "ngx-cookie-service";
5
+ import * as i2 from "./click-posicion.service";
6
+ export class UtilsService {
7
+ cookieService;
8
+ document;
9
+ clickPositionService;
10
+ RESERVADAS_SQL_NOPUEDECONTENER = [';'];
11
+ reservadas = ['ALTER', 'DELETE', 'DROP', 'MODIFY', 'CREATE', 'DATABASE', 'TABLE', 'UPDATE', 'TRIGGER', 'GRANT', 'REVOKE', 'CALL', 'INSERT', 'TRUNCATE', 'USE', '--'];
12
+ constructor(cookieService, document, clickPositionService) {
13
+ this.cookieService = cookieService;
14
+ this.document = document;
15
+ this.clickPositionService = clickPositionService;
16
+ }
17
+ generarLlave() {
18
+ let result = '';
19
+ const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
20
+ const charactersLength = 32;
21
+ for (let i = 0; i < charactersLength; i++) {
22
+ result += characters.charAt(Math.floor(Math.random() * charactersLength));
23
+ }
24
+ return result.toLowerCase();
25
+ }
26
+ generarPin(cantidad) {
27
+ let result = '';
28
+ const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
29
+ for (let i = 0; i < cantidad; i++) {
30
+ result += characters.charAt(Math.floor(Math.random() * cantidad));
31
+ }
32
+ return result.toLowerCase();
33
+ }
34
+ rightpad(str, length, char) {
35
+ if (str === undefined) {
36
+ return null;
37
+ }
38
+ if (typeof str !== 'string' || typeof length !== 'number') {
39
+ throw new TypeError('Los argumentos deben ser una cadena y un número.');
40
+ }
41
+ if (str.length >= length) {
42
+ return str;
43
+ }
44
+ char = char || ' '; // Utiliza un espacio como carácter de relleno si no se proporciona uno
45
+ var padLength = length - str.length;
46
+ var padding = char.repeat(padLength);
47
+ return str + padding;
48
+ }
49
+ validarCampoNumerico(event) {
50
+ const input = event.target;
51
+ const regex = /[^0-9]/gi;
52
+ input.value = input.value.replace(regex, '');
53
+ }
54
+ isNotBlank(str) {
55
+ return str != null && str.trim().length > 0;
56
+ }
57
+ isBlank(str) {
58
+ return str == null || str?.trim() === '';
59
+ }
60
+ validarCampoObligatorio(valor) {
61
+ // Verificar si el valor no es null ni undefined
62
+ if (valor !== null && valor !== undefined) {
63
+ // Verificar si el valor no es una cadena vacía (en caso de ser una cadena)
64
+ if (typeof valor === 'string' && valor.trim() === '') {
65
+ return false;
66
+ }
67
+ // Verificar si el valor no es un arreglo vacío (en caso de ser un arreglo)
68
+ if (Array.isArray(valor) && valor.length === 0) {
69
+ return false;
70
+ }
71
+ /*if (typeof valor === 'object' && Object.keys(valor).length === 0) {
72
+ return false;
73
+ }*/
74
+ return true;
75
+ }
76
+ return false;
77
+ }
78
+ capitalizeFully(inputString) {
79
+ if (!inputString) {
80
+ return '';
81
+ }
82
+ const words = inputString.split(' ');
83
+ const capitalizedWords = words.map(word => {
84
+ if (word.length > 0) {
85
+ return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();
86
+ }
87
+ return '';
88
+ });
89
+ const result = capitalizedWords.join(' ');
90
+ return result;
91
+ }
92
+ ordenarSelectItemsAlfabeticamente(arrayDeObjetos) {
93
+ arrayDeObjetos.sort((a, b) => {
94
+ const nombreA = a.label.toLowerCase();
95
+ const nombreB = b.label.toLowerCase();
96
+ if (nombreA < nombreB) {
97
+ return -1;
98
+ }
99
+ if (nombreA > nombreB) {
100
+ return 1;
101
+ }
102
+ return 0;
103
+ });
104
+ return arrayDeObjetos;
105
+ }
106
+ obtenerParametroDeURL(urlString, parametro) {
107
+ const url = new URL(urlString);
108
+ const searchParams = new URLSearchParams(url.search);
109
+ return searchParams.get(parametro);
110
+ }
111
+ validarEmail(email) {
112
+ const patronEmail = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
113
+ return patronEmail.test(email);
114
+ }
115
+ obtenerBase() {
116
+ var basePortal = null;
117
+ var paginaActual = window.location.href;
118
+ var url = new URL(paginaActual);
119
+ var params = new URLSearchParams(url.search);
120
+ if (paginaActual.toString().includes('PortalSara')) {
121
+ for (var match of paginaActual.matchAll(/(?<inicio>.*)\/(?<seguridad>.*)\/(?<sitio>.*)\/(?<pagina>.*)/g)) {
122
+ basePortal = match.groups?.seguridad;
123
+ }
124
+ }
125
+ else if (params?.get('us_id')) {
126
+ paginaActual = window.parent.location.href;
127
+ for (var match of paginaActual.matchAll(/(?<inicio>.*)\/(?<seguridad>.*)\/(?<sitio>.*)\/(?<pagina>.*)/g)) {
128
+ basePortal = match.groups?.seguridad;
129
+ }
130
+ }
131
+ else {
132
+ const regex = /^.*?\/\/.*?\/(.*?)\//g; // Expresión regular para obtener la primera parte de la URL
133
+ const match = Array.from(paginaActual.matchAll(regex));
134
+ if (match && match[0] && match[0][1]) {
135
+ basePortal = match[0][1];
136
+ }
137
+ }
138
+ return basePortal;
139
+ }
140
+ validarEspacio(caracter) {
141
+ const regex = /\s/; // La expresión regular para espacios en blanco
142
+ return regex.test(caracter); // Devuelve true si el carácter es un espacio en blanco
143
+ }
144
+ validarTextoSQL(valor, obligatorio, select, longitud, validarSentencia) {
145
+ // Verifica obligatoriedad
146
+ if (obligatorio && (valor == null || valor.trim().length == 0 || valor == '--')) {
147
+ return 'Obligatorio';
148
+ }
149
+ // Verifica longitud máxima
150
+ if (longitud > 0) {
151
+ if (valor != null && valor != '--' && valor.length > longitud) {
152
+ return 'Longitud maxima de ' + longitud;
153
+ }
154
+ }
155
+ // Realiza las demás validacion solo en el caso de que la cadena SQL/valor no sea vacia
156
+ if (valor == null || valor.trim().length == 0 || valor == '--')
157
+ return null;
158
+ if (validarSentencia) {
159
+ if (select) {
160
+ if (!valor.toUpperCase().startsWith('SELECT')) {
161
+ return 'El texto debe iniciar con la palabra Select';
162
+ }
163
+ }
164
+ else {
165
+ if (valor.toUpperCase().includes('SELECT')) {
166
+ return 'No puede contener la palabra Select';
167
+ }
168
+ }
169
+ }
170
+ var indice;
171
+ var mensaje;
172
+ this.RESERVADAS_SQL_NOPUEDECONTENER.forEach(item => {
173
+ if (valor.includes(item)) {
174
+ mensaje = 'No puede contener ' + item;
175
+ }
176
+ });
177
+ this.reservadas.forEach(item => {
178
+ if (valor.toUpperCase().includes(item.toUpperCase())) {
179
+ indice = (valor.toUpperCase().indexOf(item.toUpperCase()));
180
+ if (indice == 0 || (this.validarEspacio(valor.charAt(indice - 1)) && this.validarEspacio(valor.charAt(item.length + indice)))) {
181
+ mensaje = 'No puede contener ' + item;
182
+ }
183
+ }
184
+ });
185
+ return mensaje;
186
+ }
187
+ sleep(ms) {
188
+ return new Promise((resolve) => setTimeout(resolve, ms));
189
+ }
190
+ validarTextoArchivoJasper(texto) {
191
+ if (texto.trim() == '' || texto == null) {
192
+ return "El campo no puede estar vacio";
193
+ }
194
+ if (texto.match("^[^\\D].*")) {
195
+ return "El campo no puede iniciar con numeros";
196
+ }
197
+ if (texto.match("^[^\\S].*")) {
198
+ return "El campo no puede iniciar con caracteres en blanco";
199
+ }
200
+ if (!texto.match("^[^\\W].*")) {
201
+ return "El campo no puede iniciar con caracteres especiales";
202
+ }
203
+ return null;
204
+ }
205
+ resizeWindowIFrame() {
206
+ if (window.frameElement != null) {
207
+ this.resizeIframeKeepPosition(window.frameElement);
208
+ }
209
+ }
210
+ /**
211
+ * Funcion para mantener la posición actual en el iframe.
212
+ * @param obj es un "FrameElement"
213
+ */
214
+ resizeIframeKeepPosition(obj) {
215
+ var ifrm = obj;
216
+ var doc = ifrm.contentDocument ? ifrm.contentDocument : ifrm.contentWindow.document;
217
+ var tamanio = this.getDocHeight(doc) + 40;
218
+ ifrm.style.height = tamanio + "px";
219
+ }
220
+ getDocHeight(doc) {
221
+ console.log('getDocHeight');
222
+ let navegador = this.obtenerNavegador().toLowerCase();
223
+ var height = 0;
224
+ doc = doc || document;
225
+ const appRoot = doc.querySelector('app-root');
226
+ const swalPopup = doc.querySelector('.swal2-popup');
227
+ if (swalPopup) {
228
+ return swalPopup.offsetHeight + 40;
229
+ }
230
+ // Si encuentra el elemento <app-root>, retorna su altura
231
+ if (appRoot) {
232
+ return appRoot.offsetHeight;
233
+ }
234
+ //var body = doc.body, html = doc.documentElement;
235
+ //height = Math.max( body.scrollHeight, body.offsetHeight,
236
+ //html.clientHeight, html.scrollHeight, html.offsetHeight );
237
+ if (navegador.indexOf('firefox') !== -1) {
238
+ if (doc.formDetalleConvocatoria) {
239
+ let cantidadMiles = height / 1000;
240
+ height = height + 600 + (cantidadMiles * 40);
241
+ }
242
+ }
243
+ // console.warn('FCO : llama a getDocHeight');
244
+ return height;
245
+ }
246
+ obtenerNavegador() {
247
+ var ua = navigator.userAgent, tem, M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || [];
248
+ if (/trident/i.test(M[1])) {
249
+ tem = /\brv[ :]+(\d+)/g.exec(ua) || [];
250
+ return 'IE ' + (tem[1] || '');
251
+ }
252
+ if (M[1] === 'Chrome') {
253
+ tem = ua.match(/\b(OPR|Edge)\/(\d+)/);
254
+ if (tem != null)
255
+ return tem.slice(1).join(' ').replace('OPR', 'Opera');
256
+ }
257
+ M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];
258
+ if ((tem = ua.match(/version\/(\d+)/i)) != null)
259
+ M.splice(1, 1, tem[1]);
260
+ return M.join(' ');
261
+ }
262
+ obtenerUrlApi(urlapi) {
263
+ if (urlapi) {
264
+ return urlapi;
265
+ }
266
+ switch (this.getTokenKey('aplicacion')) {
267
+ case '1':
268
+ return window['env']['urlapisara'] ? window['env']['urlapisara'] : this.cookieService.get('urlnucleo');
269
+ case '13':
270
+ return window['env']['urlapimana'] ? window['env']['urlapimana'] : this.cookieService.get('urlnucleo');
271
+ case '10':
272
+ return window['env']['urlapisara'] ? window['env']['urlapisara'] : this.cookieService.get('urlnucleo');
273
+ //return window['env']['urlapi'] ? window['env']['urlapi'] : this.cookieService.get('urlnucleo');
274
+ case '77':
275
+ return window['env']['urlapimanaaps'] ? window['env']['urlapimanaaps'] : this.cookieService.get('urlnucleo');
276
+ default:
277
+ return this.cookieService.get('urlnucleo');
278
+ }
279
+ }
280
+ getTokenKey(key) {
281
+ try {
282
+ const data = this._decodeToken();
283
+ return data[key].toString();
284
+ }
285
+ catch (error) {
286
+ return undefined;
287
+ }
288
+ }
289
+ _decodeToken() {
290
+ try {
291
+ const token = this.getItem('token', '');
292
+ const data = token.split('.')[1];
293
+ return JSON.parse(atob(data));
294
+ }
295
+ catch (error) {
296
+ throw error;
297
+ }
298
+ }
299
+ getItem(key, defaultValue) {
300
+ return localStorage.getItem(this.obtenerBase() + '_' + key) ?? defaultValue;
301
+ }
302
+ cambiarTema(tema) {
303
+ localStorage.setItem(this.obtenerBase() + '_' + 'tema', tema);
304
+ let linkTema = this.document.getElementById('temaApp');
305
+ linkTema.href = `${tema}.css`;
306
+ }
307
+ calcularPosicionDialog() {
308
+ const { x, y } = this.clickPositionService.getClickPosition();
309
+ console.log('lastClickPosition');
310
+ console.log(x);
311
+ console.log(y);
312
+ //const elemento = event.target as HTMLElement;
313
+ //const elementoCoordenada = elemento.getBoundingClientRect();
314
+ //const iframe = window.frameElement;
315
+ var ifrm = window.frameElement;
316
+ var doc = ifrm.contentDocument ? ifrm.contentDocument : ifrm.contentWindow.document;
317
+ var tamanio = this.getDocHeight(doc) + 40;
318
+ const iframeOffsetTop = tamanio ? -(tamanio / 2) : 0;
319
+ const dialog = document.querySelector('.p-dialog');
320
+ if (dialog) {
321
+ var topPosition = iframeOffsetTop + y;
322
+ const calculoPosicionPopup = y + (dialog.offsetHeight / 2);
323
+ if (calculoPosicionPopup > tamanio) {
324
+ var diferencia = calculoPosicionPopup - tamanio;
325
+ topPosition = topPosition - diferencia - 10;
326
+ }
327
+ dialog.style.top = `${topPosition}px`;
328
+ }
329
+ }
330
+ validarPalabra(texto) {
331
+ const pletras = /^[a-zA-Z][0-9a-zA-Z]*$/;
332
+ return pletras.test(texto);
333
+ }
334
+ isNumeric(value) {
335
+ return !isNaN(Number(value));
336
+ }
337
+ validarEntero(valor, obligatorio, longitud, campo) {
338
+ if (obligatorio && valor == null) {
339
+ return (campo == null ? "" : "El campo \"" + campo + "\" es ") + "Obligatorio ";
340
+ }
341
+ if (valor != null) {
342
+ if (Math.trunc(valor).toString().length > longitud) {
343
+ return "Longitud maxima de " + longitud + (campo == null ? "" : (" para el campo (" + campo + ") "));
344
+ }
345
+ }
346
+ return null;
347
+ }
348
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UtilsService, deps: [{ token: i1.CookieService }, { token: DOCUMENT }, { token: i2.ClickPosicionService }], target: i0.ɵɵFactoryTarget.Injectable });
349
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UtilsService, providedIn: 'root' });
350
+ }
351
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UtilsService, decorators: [{
352
+ type: Injectable,
353
+ args: [{
354
+ providedIn: 'root'
355
+ }]
356
+ }], ctorParameters: () => [{ type: i1.CookieService }, { type: Document, decorators: [{
357
+ type: Inject,
358
+ args: [DOCUMENT]
359
+ }] }, { type: i2.ClickPosicionService }] });
360
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zZXJ2aWNpb3MvdXRpbHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFNM0MsTUFBTSxPQUFPLFlBQVk7SUFLSDtJQUF3RDtJQUE0QjtJQUhoRyw4QkFBOEIsR0FBVSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzdDLFVBQVUsR0FBVSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFBO0lBRW5MLFlBQW9CLGFBQTRCLEVBQTRCLFFBQWtCLEVBQVUsb0JBQTBDO1FBQTlILGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQTRCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFBVSx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBQ2xKLENBQUM7SUFFTSxZQUFZO1FBQ2pCLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixNQUFNLFVBQVUsR0FBRyxnRUFBZ0UsQ0FBQztRQUNwRixNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUM1QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMxQyxNQUFNLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFN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QUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDdEcsQ0FBQztRQUNGLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNiLENBQUM7dUdBOVhXLFlBQVksK0NBS21DLFFBQVE7MkdBTHZELFlBQVksY0FGWCxNQUFNOzsyRkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBTW9ELE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnbmd4LWNvb2tpZS1zZXJ2aWNlJztcclxuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDbGlja1Bvc2ljaW9uU2VydmljZSB9IGZyb20gJy4vY2xpY2stcG9zaWNpb24uc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVdGlsc1NlcnZpY2Uge1xyXG5cclxuICBwcml2YXRlIFJFU0VSVkFEQVNfU1FMX05PUFVFREVDT05URU5FUjogYW55W10gPSBbJzsnXVxyXG4gIHByaXZhdGUgcmVzZXJ2YWRhczogYW55W10gPSBbJ0FMVEVSJywgJ0RFTEVURScsICdEUk9QJywgJ01PRElGWScsICdDUkVBVEUnLCAnREFUQUJBU0UnLCAnVEFCTEUnLCAnVVBEQVRFJywgJ1RSSUdHRVInLCAnR1JBTlQnLCAnUkVWT0tFJywgJ0NBTEwnLCAnSU5TRVJUJywgJ1RSVU5DQVRFJywgJ1VTRScsICctLSddXHJcbiAgXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb29raWVTZXJ2aWNlOiBDb29raWVTZXJ2aWNlLCBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudCwgcHJpdmF0ZSBjbGlja1Bvc2l0aW9uU2VydmljZTogQ2xpY2tQb3NpY2lvblNlcnZpY2Upe1xyXG4gIH1cclxuICBcclxuICBwdWJsaWMgZ2VuZXJhckxsYXZlKCkge1xyXG4gICAgbGV0IHJlc3VsdCA9ICcnO1xyXG4gICAgY29uc3QgY2hhcmFjdGVycyA9ICdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSc7XHJcbiAgICBjb25zdCBjaGFyYWN0ZXJzTGVuZ3RoID0gMzI7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNoYXJhY3RlcnNMZW5ndGg7IGkrKykge1xyXG4gICAgICByZXN1bHQgKz0gY2hhcmFjdGVycy5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogY2hhcmFjdGVyc0xlbmd0aCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByZXN1bHQudG9Mb3dlckNhc2UoKTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgcHVibGljIGdlbmVyYXJQaW4oY2FudGlkYWQ6IG51bWJlcikge1xyXG4gICAgbGV0IHJlc3VsdCA9ICcnO1xyXG4gICAgY29uc3QgY2hhcmFjdGVycyA9ICdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSc7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhbnRpZGFkOyBpKyspIHtcclxuICAgICAgcmVzdWx0ICs9IGNoYXJhY3RlcnMuY2hhckF0KE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGNhbnRpZGFkKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlc3VsdC50b0xvd2VyQ2FzZSgpO1xyXG4gIH1cclxuXHJcbiAgcmlnaHRwYWQoc3RyLCBsZW5ndGgsIGNoYXIpIHtcclxuICAgIGlmIChzdHIgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIGlmICh0eXBlb2Ygc3RyICE9PSAnc3RyaW5nJyB8fCB0eXBlb2YgbGVuZ3RoICE9PSAnbnVtYmVyJykge1xyXG4gICAgICB0aHJvdyBuZXcgVHlwZUVycm9yKCdMb3MgYXJndW1lbnRvcyBkZWJlbiBzZXIgdW5hIGNhZGVuYSB5IHVuIG7Dum1lcm8uJyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHN0ci5sZW5ndGggPj0gbGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiBzdHI7XHJcbiAgICB9XHJcblxyXG4gICAgY2hhciA9IGNoYXIgfHwgJyAnOyAvLyBVdGlsaXphIHVuIGVzcGFjaW8gY29tbyBjYXLDoWN0ZXIgZGUgcmVsbGVubyBzaSBubyBzZSBwcm9wb3JjaW9uYSB1bm9cclxuXHJcbiAgICB2YXIgcGFkTGVuZ3RoID0gbGVuZ3RoIC0gc3RyLmxlbmd0aDtcclxuICAgIHZhciBwYWRkaW5nID0gY2hhci5yZXBlYXQocGFkTGVuZ3RoKTtcclxuXHJcbiAgICByZXR1cm4gc3RyICsgcGFkZGluZztcclxuICB9XHJcblxyXG4gIHZhbGlkYXJDYW1wb051bWVyaWNvKGV2ZW50OiBhbnkpIHtcclxuICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0O1xyXG4gICAgY29uc3QgcmVnZXggPSAvW14wLTldL2dpO1xyXG4gICAgaW5wdXQudmFsdWUgPSBpbnB1dC52YWx1ZS5yZXBsYWNlKHJlZ2V4LCAnJyk7XHJcbiAgfVxyXG5cclxuICBpc05vdEJsYW5rKHN0cjogc3RyaW5nIHwgU3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHN0ciAhPSBudWxsICYmIHN0ci50cmltKCkubGVuZ3RoID4gMDtcclxuICB9XHJcblxyXG4gIGlzQmxhbmsoc3RyOiBzdHJpbmcgfCBTdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gc3RyID09IG51bGwgfHwgc3RyPy50cmltKCkgPT09ICcnO1xyXG4gIH1cclxuXHJcbiAgdmFsaWRhckNhbXBvT2JsaWdhdG9yaW8odmFsb3IpOiBib29sZWFuIHtcclxuICAgIC8vIFZlcmlmaWNhciBzaSBlbCB2YWxvciBubyBlcyBudWxsIG5pIHVuZGVmaW5lZFxyXG4gICAgaWYgKHZhbG9yICE9PSBudWxsICYmIHZhbG9yICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgLy8gVmVyaWZpY2FyIHNpIGVsIHZhbG9yIG5vIGVzIHVuYSBjYWRlbmEgdmFjw61hIChlbiBjYXNvIGRlIHNlciB1bmEgY2FkZW5hKVxyXG4gICAgICBpZiAodHlwZW9mIHZhbG9yID09PSAnc3RyaW5nJyAmJiB2YWxvci50cmltKCkgPT09ICcnKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIFZlcmlmaWNhciBzaSBlbCB2YWxvciBubyBlcyB1biBhcnJlZ2xvIHZhY8OtbyAoZW4gY2FzbyBkZSBzZXIgdW4gYXJyZWdsbylcclxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsb3IpICYmIHZhbG9yLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICAvKmlmICh0eXBlb2YgdmFsb3IgPT09ICdvYmplY3QnICYmIE9iamVjdC5rZXlzKHZhbG9yKS5sZW5ndGggPT09IDApIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH0qL1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGNhcGl0YWxpemVGdWxseShpbnB1dFN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICghaW5wdXRTdHJpbmcpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gICAgY29uc3Qgd29yZHMgPSBpbnB1dFN0cmluZy5zcGxpdCgnICcpO1xyXG4gICAgY29uc3QgY2FwaXRhbGl6ZWRXb3JkcyA9IHdvcmRzLm1hcCh3b3JkID0+IHtcclxuICAgICAgaWYgKHdvcmQubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHJldHVybiB3b3JkLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgd29yZC5zbGljZSgxKS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH0pO1xyXG4gICAgY29uc3QgcmVzdWx0ID0gY2FwaXRhbGl6ZWRXb3Jkcy5qb2luKCcgJyk7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxuXHJcbiAgb3JkZW5hclNlbGVjdEl0ZW1zQWxmYWJldGljYW1lbnRlKGFycmF5RGVPYmpldG9zOiBhbnlbXSk6IGFueVtdIHtcclxuICAgIGFycmF5RGVPYmpldG9zLnNvcnQoKGEsIGIpID0+IHtcclxuICAgICAgY29uc3Qgbm9tYnJlQSA9IGEubGFiZWwudG9Mb3dlckNhc2UoKTtcclxuICAgICAgY29uc3Qgbm9tYnJlQiA9IGIubGFiZWwudG9Mb3dlckNhc2UoKTtcclxuXHJcbiAgICAgIGlmIChub21icmVBIDwgbm9tYnJlQikge1xyXG4gICAgICAgIHJldHVybiAtMTtcclxuICAgICAgfVxyXG4gICAgICBpZiAobm9tYnJlQSA+IG5vbWJyZUIpIHtcclxuICAgICAgICByZXR1cm4gMTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gMDtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGFycmF5RGVPYmpldG9zO1xyXG4gIH1cclxuXHJcbiAgb2J0ZW5lclBhcmFtZXRyb0RlVVJMKHVybFN0cmluZzogc3RyaW5nLCBwYXJhbWV0cm86IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgY29uc3QgdXJsID0gbmV3IFVSTCh1cmxTdHJpbmcpO1xyXG4gICAgY29uc3Qgc2VhcmNoUGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh1cmwuc2VhcmNoKTtcclxuICAgIHJldHVybiBzZWFyY2hQYXJhbXMuZ2V0KHBhcmFtZXRybyk7XHJcbiAgfVxyXG5cclxuICB2YWxpZGFyRW1haWwoZW1haWw6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgcGF0cm9uRW1haWwgPSAvXlthLXpBLVowLTkuXyUrLV0rQFthLXpBLVowLTkuLV0rXFwuW2EtekEtWl17Mix9JC87XHJcbiAgICByZXR1cm4gcGF0cm9uRW1haWwudGVzdChlbWFpbCk7XHJcbiAgfVxyXG5cclxuICBvYnRlbmVyQmFzZSgpOiAoc3RyaW5nIHwgbnVsbCkge1xyXG5cclxuICAgIHZhciBiYXNlUG9ydGFsOiBzdHJpbmcgPSBudWxsO1xyXG4gICAgdmFyIHBhZ2luYUFjdHVhbDogYW55ID0gd2luZG93LmxvY2F0aW9uLmhyZWZcclxuICAgIHZhciB1cmwgPSBuZXcgVVJMKHBhZ2luYUFjdHVhbCk7XHJcbiAgICB2YXIgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh1cmwuc2VhcmNoKTtcclxuICAgIGlmIChwYWdpbmFBY3R1YWwudG9TdHJpbmcoKS5pbmNsdWRlcygnUG9ydGFsU2FyYScpKSB7XHJcbiAgICAgIGZvciAodmFyIG1hdGNoIG9mIHBhZ2luYUFjdHVhbC5tYXRjaEFsbCgvKD88aW5pY2lvPi4qKVxcLyg/PHNlZ3VyaWRhZD4uKilcXC8oPzxzaXRpbz4uKilcXC8oPzxwYWdpbmE+LiopL2cpKSB7XHJcbiAgICAgICAgYmFzZVBvcnRhbCA9IG1hdGNoLmdyb3Vwcz8uc2VndXJpZGFkO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHBhcmFtcz8uZ2V0KCd1c19pZCcpKSB7XHJcbiAgICAgIHBhZ2luYUFjdHVhbCA9IHdpbmRvdy5wYXJlbnQubG9jYXRpb24uaHJlZjtcclxuICAgICAgZm9yICh2YXIgbWF0Y2ggb2YgcGFnaW5hQWN0dWFsLm1hdGNoQWxsKC8oPzxpbmljaW8+LiopXFwvKD88c2VndXJpZGFkPi4qKVxcLyg/PHNpdGlvPi4qKVxcLyg/PHBhZ2luYT4uKikvZykpIHtcclxuICAgICAgICBiYXNlUG9ydGFsID0gbWF0Y2guZ3JvdXBzPy5zZWd1cmlkYWQ7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IHJlZ2V4ID0gL14uKj9cXC9cXC8uKj9cXC8oLio/KVxcLy9nOyAvLyBFeHByZXNpw7NuIHJlZ3VsYXIgcGFyYSBvYnRlbmVyIGxhIHByaW1lcmEgcGFydGUgZGUgbGEgVVJMXHJcbiAgICAgIGNvbnN0IG1hdGNoID0gQXJyYXkuZnJvbShwYWdpbmFBY3R1YWwubWF0Y2hBbGwocmVnZXgpKTtcclxuXHJcbiAgICAgIGlmIChtYXRjaCAmJiBtYXRjaFswXSAmJiBtYXRjaFswXVsxXSkge1xyXG4gICAgICAgIGJhc2VQb3J0YWwgPSBtYXRjaFswXVsxXTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGJhc2VQb3J0YWw7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHZhbGlkYXJFc3BhY2lvKGNhcmFjdGVyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IHJlZ2V4ID0gL1xccy87IC8vIExhIGV4cHJlc2nDs24gcmVndWxhciBwYXJhIGVzcGFjaW9zIGVuIGJsYW5jb1xyXG4gICAgcmV0dXJuIHJlZ2V4LnRlc3QoY2FyYWN0ZXIpOyAvLyBEZXZ1ZWx2ZSB0cnVlIHNpIGVsIGNhcsOhY3RlciBlcyB1biBlc3BhY2lvIGVuIGJsYW5jb1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHZhbGlkYXJUZXh0b1NRTCh2YWxvcjogc3RyaW5nLCBvYmxpZ2F0b3JpbzogYm9vbGVhbiwgc2VsZWN0OiBib29sZWFuLCBsb25naXR1ZDogbnVtYmVyLCB2YWxpZGFyU2VudGVuY2lhOiBib29sZWFuKTogKHN0cmluZyB8IG51bGwpIHtcclxuICAgIC8vIFZlcmlmaWNhIG9ibGlnYXRvcmllZGFkXHJcbiAgICBpZiAob2JsaWdhdG9yaW8gJiYgKHZhbG9yID09IG51bGwgfHwgdmFsb3IudHJpbSgpLmxlbmd0aCA9PSAwIHx8IHZhbG9yID09ICctLScpKSB7XHJcbiAgICAgIHJldHVybiAnT2JsaWdhdG9yaW8nO1xyXG4gICAgfVxyXG4gICAgLy8gVmVyaWZpY2EgbG9uZ2l0dWQgbcOheGltYVxyXG4gICAgaWYgKGxvbmdpdHVkID4gMCkge1xyXG4gICAgICBpZiAodmFsb3IgIT0gbnVsbCAmJiB2YWxvciAhPSAnLS0nICYmIHZhbG9yLmxlbmd0aCA+IGxvbmdpdHVkKSB7XHJcbiAgICAgICAgcmV0dXJuICdMb25naXR1ZCBtYXhpbWEgZGUgJyArIGxvbmdpdHVkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBSZWFsaXphIGxhcyBkZW3DoXMgdmFsaWRhY2lvbiBzb2xvIGVuIGVsIGNhc28gZGUgcXVlIGxhIGNhZGVuYSBTUUwvdmFsb3Igbm8gc2VhIHZhY2lhXHJcbiAgICBpZiAodmFsb3IgPT0gbnVsbCB8fCB2YWxvci50cmltKCkubGVuZ3RoID09IDAgfHwgdmFsb3IgPT0gJy0tJylcclxuICAgICAgcmV0dXJuIG51bGw7XHJcblxyXG4gICAgaWYgKHZhbGlkYXJTZW50ZW5jaWEpIHtcclxuICAgICAgaWYgKHNlbGVjdCkge1xyXG4gICAgICAgIGlmICghdmFsb3IudG9VcHBlckNhc2UoKS5zdGFydHNXaXRoKCdTRUxFQ1QnKSkge1xyXG4gICAgICAgICAgcmV0dXJuICdFbCB0ZXh0byBkZWJlIGluaWNpYXIgY29uIGxhIHBhbGFicmEgU2VsZWN0JztcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHZhbG9yLnRvVXBwZXJDYXNlKCkuaW5jbHVkZXMoJ1NFTEVDVCcpKSB7XHJcbiAgICAgICAgICByZXR1cm4gJ05vIHB1ZWRlIGNvbnRlbmVyIGxhIHBhbGFicmEgU2VsZWN0JztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHZhciBpbmRpY2U6IG51bWJlcjtcclxuICAgIHZhciBtZW5zYWplOiBzdHJpbmc7XHJcbiAgICB0aGlzLlJFU0VSVkFEQVNfU1FMX05PUFVFREVDT05URU5FUi5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBpZiAodmFsb3IuaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICBtZW5zYWplID0gJ05vIHB1ZWRlIGNvbnRlbmVyICcgKyBpdGVtO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gICAgdGhpcy5yZXNlcnZhZGFzLmZvckVhY2goaXRlbSA9PiB7XHJcbiAgICAgIGlmICh2YWxvci50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKGl0ZW0udG9VcHBlckNhc2UoKSkpIHtcclxuICAgICAgICBpbmRpY2UgPSAodmFsb3IudG9VcHBlckNhc2UoKS5pbmRleE9mKGl0ZW0udG9VcHBlckNhc2UoKSkpO1xyXG4gICAgICAgIGlmIChpbmRpY2UgPT0gMCB8fCAodGhpcy52YWxpZGFyRXNwYWNpbyh2YWxvci5jaGFyQXQoaW5kaWNlIC0gMSkpICYmIHRoaXMudmFsaWRhckVzcGFjaW8odmFsb3IuY2hhckF0KGl0ZW0ubGVuZ3RoICsgaW5kaWNlKSkpKSB7XHJcbiAgICAgICAgICBtZW5zYWplID0gJ05vIHB1ZWRlIGNvbnRlbmVyICcgKyBpdGVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSlcclxuICAgIHJldHVybiBtZW5zYWplO1xyXG4gIH1cclxuXHJcbiAgc2xlZXAobXM6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIG1zKSk7XHJcbiAgfVxyXG5cclxuICB2YWxpZGFyVGV4dG9BcmNoaXZvSmFzcGVyKHRleHRvOiBzdHJpbmcpOiAoc3RyaW5nIHwgbnVsbCkge1xyXG4gICAgaWYgKHRleHRvLnRyaW0oKSA9PSAnJyB8fCB0ZXh0byA9PSBudWxsKSB7XHJcbiAgICAgIHJldHVybiBcIkVsIGNhbXBvIG5vIHB1ZWRlIGVzdGFyIHZhY2lvXCI7XHJcbiAgICB9XHJcbiAgICBpZiAodGV4dG8ubWF0Y2goXCJeW15cXFxcRF0uKlwiKSkge1xyXG4gICAgICByZXR1cm4gXCJFbCBjYW1wbyBubyBwdWVkZSBpbmljaWFyIGNvbiBudW1lcm9zXCI7XHJcbiAgICB9XHJcbiAgICBpZiAodGV4dG8ubWF0Y2goXCJeW15cXFxcU10uKlwiKSkge1xyXG4gICAgICByZXR1cm4gXCJFbCBjYW1wbyBubyBwdWVkZSBpbmljaWFyIGNvbiBjYXJhY3RlcmVzIGVuIGJsYW5jb1wiO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0ZXh0by5tYXRjaChcIl5bXlxcXFxXXS4qXCIpKSB7XHJcbiAgICAgIHJldHVybiBcIkVsIGNhbXBvIG5vIHB1ZWRlIGluaWNpYXIgY29uIGNhcmFjdGVyZXMgZXNwZWNpYWxlc1wiO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICByZXNpemVXaW5kb3dJRnJhbWUoKSB7XHJcblx0XHRpZiAoIHdpbmRvdy5mcmFtZUVsZW1lbnQgIT0gbnVsbCkge1xyXG5cdFx0XHR0aGlzLnJlc2l6ZUlmcmFtZUtlZXBQb3NpdGlvbih3aW5kb3cuZnJhbWVFbGVtZW50KTtcclxuXHRcdH1cclxuXHR9XHJcblx0XHJcblx0LyoqXHJcblx0ICogRnVuY2lvbiBwYXJhIG1hbnRlbmVyIGxhIHBvc2ljacOzbiBhY3R1YWwgZW4gZWwgaWZyYW1lLlxyXG5cdCAqIEBwYXJhbSBvYmogZXMgdW4gXCJGcmFtZUVsZW1lbnRcIlxyXG5cdCAqL1xyXG5cdHByaXZhdGUgcmVzaXplSWZyYW1lS2VlcFBvc2l0aW9uKG9iaikge1xyXG5cdFx0XHJcblx0XHR2YXIgaWZybSA9IG9iajtcclxuXHRcdHZhciBkb2MgPSBpZnJtLmNvbnRlbnREb2N1bWVudCA/IGlmcm0uY29udGVudERvY3VtZW50OiBpZnJtLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ7XHJcbiAgICB2YXIgdGFtYW5pbzogbnVtYmVyPSAgdGhpcy5nZXREb2NIZWlnaHQoIGRvYyApICArIDQwXHJcblx0XHRpZnJtLnN0eWxlLmhlaWdodCA9IHRhbWFuaW8gKyBcInB4XCI7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGdldERvY0hlaWdodChkb2Mpe1xyXG4gICAgY29uc29sZS5sb2coJ2dldERvY0hlaWdodCcpXHJcblx0XHRsZXQgbmF2ZWdhZG9yID0gdGhpcy5vYnRlbmVyTmF2ZWdhZG9yKCkudG9Mb3dlckNhc2UoKTtcclxuXHRcdHZhciBoZWlnaHQgPSAwO1xyXG5cdFx0ZG9jID0gZG9jIHx8IGRvY3VtZW50O1xyXG4gICAgY29uc3QgYXBwUm9vdCA9IGRvYy5xdWVyeVNlbGVjdG9yKCdhcHAtcm9vdCcpO1xyXG5cclxuICAgIGNvbnN0IHN3YWxQb3B1cCA9IGRvYy5xdWVyeVNlbGVjdG9yKCcuc3dhbDItcG9wdXAnKTtcclxuICAgIGlmIChzd2FsUG9wdXApIHtcclxuICAgICAgICByZXR1cm4gc3dhbFBvcHVwLm9mZnNldEhlaWdodCArIDQwO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFNpIGVuY3VlbnRyYSBlbCBlbGVtZW50byA8YXBwLXJvb3Q+LCByZXRvcm5hIHN1IGFsdHVyYVxyXG4gICAgaWYgKGFwcFJvb3QpIHtcclxuICAgICAgICByZXR1cm4gYXBwUm9vdC5vZmZzZXRIZWlnaHQ7XHJcbiAgICB9XHJcblx0XHQvL3ZhciBib2R5ID0gZG9jLmJvZHksIGh0bWwgPSBkb2MuZG9jdW1lbnRFbGVtZW50O1xyXG5cdFx0Ly9oZWlnaHQgPSBNYXRoLm1heCggYm9keS5zY3JvbGxIZWlnaHQsIGJvZHkub2Zmc2V0SGVpZ2h0LCBcclxuXHRcdC8vaHRtbC5jbGllbnRIZWlnaHQsIGh0bWwuc2Nyb2xsSGVpZ2h0LCBodG1sLm9mZnNldEhlaWdodCApO1xyXG5cdFx0XHJcblx0XHRpZiAobmF2ZWdhZG9yLmluZGV4T2YoJ2ZpcmVmb3gnKSAhPT0gLTEpe1xyXG5cdFx0XHRpZihkb2MuZm9ybURldGFsbGVDb252b2NhdG9yaWEpe1xyXG5cdFx0XHRcdGxldCBjYW50aWRhZE1pbGVzID0gaGVpZ2h0IC8gMTAwMDtcclxuXHRcdFx0XHRoZWlnaHQgPSBoZWlnaHQgKyA2MDAgKyAoY2FudGlkYWRNaWxlcyo0MClcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0Ly9cdGNvbnNvbGUud2FybignRkNPIDogbGxhbWEgYSBnZXREb2NIZWlnaHQnKTtcclxuXHRcclxuXHRcdHJldHVybiBoZWlnaHQ7XHJcblx0fVxyXG5cclxuXHRvYnRlbmVyTmF2ZWdhZG9yKCl7XHJcblx0XHR2YXIgdWE9IG5hdmlnYXRvci51c2VyQWdlbnQsIHRlbSwgXHJcblx0XHRNPSB1YS5tYXRjaCgvKG9wZXJhfGNocm9tZXxzYWZhcml8ZmlyZWZveHxtc2llfHRyaWRlbnQoPz1cXC8pKVxcLz9cXHMqKFxcZCspL2kpIHx8IFtdO1xyXG5cdFx0aWYoL3RyaWRlbnQvaS50ZXN0KE1bMV0pKXtcclxuXHRcdFx0dGVtPSAgL1xcYnJ2WyA6XSsoXFxkKykvZy5leGVjKHVhKSB8fCBbXTtcclxuXHRcdFx0cmV0dXJuICdJRSAnKyh0ZW1bMV0gfHwgJycpO1xyXG5cdFx0fVxyXG5cdFx0aWYoTVsxXT09PSAnQ2hyb21lJyl7XHJcblx0XHRcdHRlbT0gdWEubWF0Y2goL1xcYihPUFJ8RWRnZSlcXC8oXFxkKykvKTtcclxuXHRcdFx0aWYodGVtIT0gbnVsbCkgcmV0dXJuIHRlbS5zbGljZSgxKS5qb2luKCcgJykucmVwbGFjZSgnT1BSJywgJ09wZXJhJyk7XHJcblx0XHR9XHJcblx0XHRNPSBNWzJdPyBbTVsxXSwgTVsyXV06IFtuYXZpZ2F0b3IuYXBwTmFtZSwgbmF2aWdhdG9yLmFwcFZlcnNpb24sICctPyddO1xyXG5cdFx0aWYoKHRlbT0gdWEubWF0Y2goL3ZlcnNpb25cXC8oXFxkKykvaSkpIT0gbnVsbCkgTS5zcGxpY2UoMSwgMSwgdGVtWzFdKTtcclxuXHRcdHJldHVybiBNLmpvaW4oJyAnKTtcclxuXHR9XHJcblxyXG4gIG9idGVuZXJVcmxBcGkodXJsYXBpPzogc3RyaW5nICk6IHN0cmluZyB7XHJcbiAgICBpZiAodXJsYXBpKXtcclxuICAgICAgcmV0dXJuIHVybGFwaTtcclxuICAgIH1cclxuICAgIHN3aXRjaCAodGhpcy5nZXRUb2tlbktleSgnYXBsaWNhY2lvbicpKSB7XHJcbiAgICAgIGNhc2UgJzEnOlxyXG4gICAgICAgIHJldHVybiB3aW5kb3dbJ2VudiddWyd1cmxhcGlzYXJhJ10gPyB3aW5kb3dbJ2VudiddWyd1cmxhcGlzYXJhJ10gOiB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KCd1cmxudWNsZW8nKTtcclxuICAgICAgY2FzZSAnMTMnOlxyXG4gICAgICAgIHJldHVybiB3aW5kb3dbJ2VudiddWyd1cmxhcGltYW5hJ10gPyB3aW5kb3dbJ2VudiddWyd1cmxhcGltYW5hJ10gOiB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KCd1cmxudWNsZW8nKTtcclxuICAgICAgY2FzZSAnMTAnOlxyXG4gICAgICAgIHJldHVybiB3aW5kb3dbJ2VudiddWyd1cmxhcGlzYXJhJ10gPyB3aW5kb3dbJ2VudiddWyd1cmxhcGlzYXJhJ10gOiB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KCd1cmxudWNsZW8nKTtcclxuICAgICAgICAvL3JldHVybiB3aW5kb3dbJ2VudiddWyd1cmxhcGknXSA/IHdpbmRvd1snZW52J11bJ3VybGFwaSddIDogdGhpcy5jb29raWVTZXJ2aWNlLmdldCgndXJsbnVjbGVvJyk7XHJcbiAgICAgIGNhc2UgJzc3JzpcclxuICAgICAgICByZXR1cm4gd2luZG93WydlbnYnXVsndXJsYXBpbWFuYWFwcyddID8gd2luZG93WydlbnYnXVsndXJsYXBpbWFuYWFwcyddIDogdGhpcy5jb29raWVTZXJ2aWNlLmdldCgndXJsbnVjbGVvJyk7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuICB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KCd1cmxudWNsZW8nKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0VG9rZW5LZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgdHJ5IHtcclxuICAgICAgY29uc3QgZGF0YSA9IHRoaXMuX2RlY29kZVRva2VuKCk7XHJcbiAgICAgIHJldHVybiBkYXRhW2tleV0udG9TdHJpbmcoKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9kZWNvZGVUb2tlbigpOiBhbnkge1xyXG4gICAgdHJ5IHtcclxuICAgICAgY29uc3QgdG9rZW4gPSB0aGlzLmdldEl0ZW0oJ3Rva2VuJywgJycpO1xyXG4gICAgICBjb25zdCBkYXRhID0gdG9rZW4uc3BsaXQoJy4nKVsxXTtcclxuICAgICAgcmV0dXJuIEpTT04ucGFyc2UoYXRvYihkYXRhKSk7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICB0aHJvdyBlcnJvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldEl0ZW0oa2V5OiBzdHJpbmcsIGRlZmF1bHRWYWx1ZT86IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XHJcbiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5vYnRlbmVyQmFzZSgpICsgJ18nICsgIGtleSkgPz8gZGVmYXVsdFZhbHVlO1xyXG4gIH1cclxuXHJcbiAgY2FtYmlhclRlbWEodGVtYSA6ICgndGVtYUNsYXJvJyB8ICd0ZW1hT3NjdXJvJykpe1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5vYnRlbmVyQmFzZSgpICsgJ18nICsndGVtYScsIHRlbWEpO1xyXG4gICAgbGV0IGxpbmtUZW1hID0gdGhpcy5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVtYUFwcCcpIGFzIEhUTUxMaW5rRWxlbWVudDtcclxuICAgIGxpbmtUZW1hLmhyZWYgPSBgJHt0ZW1hfS5jc3NgXHJcbiAgfVxyXG5cclxuICBjYWxjdWxhclBvc2ljaW9uRGlhbG9nKCkge1xyXG4gICAgY29uc3QgeyB4LCB5IH0gPSB0aGlzLmNsaWNrUG9zaXRpb25TZXJ2aWNlLmdldENsaWNrUG9zaXRpb24oKTtcclxuXHJcbiAgICBjb25zb2xlLmxvZygnbGFzdENsaWNrUG9zaXRpb24nKVxyXG4gICAgY29uc29sZS5sb2coeClcclxuICAgIGNvbnNvbGUubG9nKHkpXHJcbiAgICAvL2NvbnN0IGVsZW1lbnRvID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgLy9jb25zdCBlbGVtZW50b0Nvb3JkZW5hZGEgPSBlbGVtZW50by5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuXHJcbiAgICAvL2NvbnN0IGlmcmFtZSA9ICB3aW5kb3cuZnJhbWVFbGVtZW50O1xyXG4gICAgdmFyIGlmcm06IGFueSA9IHdpbmRvdy5mcmFtZUVsZW1lbnQ7XHJcblx0XHR2YXIgZG9jID0gaWZybS5jb250ZW50RG9jdW1lbnQgPyBpZnJtLmNvbnRlbnREb2N1bWVudDogaWZybS5jb250ZW50V2luZG93LmRvY3VtZW50O1xyXG4gICAgdmFyIHRhbWFuaW86IG51bWJlcj0gIHRoaXMuZ2V0RG9jSGVpZ2h0KCBkb2MgKSAgKyA0MFxyXG4gICAgY29uc3QgaWZyYW1lT2Zmc2V0VG9wID0gdGFtYW5pbyA/IC0odGFtYW5pby8yKSA6IDA7XHJcblxyXG4gICAgY29uc3QgZGlhbG9nID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnAtZGlhbG9nJykgYXMgSFRNTEVsZW1lbnQ7XHJcblxyXG4gICAgaWYgKGRpYWxvZykge1xyXG4gICAgICB2YXIgdG9wUG9zaXRpb24gPSBpZnJhbWVPZmZzZXRUb3AgKyB5O1xyXG4gICAgICBjb25zdCBjYWxjdWxvUG9zaWNpb25Qb3B1cCA9IHkgKyAoZGlhbG9nLm9mZnNldEhlaWdodC8yKVxyXG4gICAgICBpZiAoY2FsY3Vsb1Bvc2ljaW9uUG9wdXAgPiB0YW1hbmlvKSB7XHJcbiAgICAgICAgdmFyIGRpZmVyZW5jaWEgPSBjYWxjdWxvUG9zaWNpb25Qb3B1cCAtIHRhbWFuaW87XHJcbiAgICAgICAgdG9wUG9zaXRpb24gPSB0b3BQb3NpdGlvbiAtIGRpZmVyZW5jaWEgLSAxMDtcclxuICAgICAgfVxyXG4gICAgICBkaWFsb2cuc3R5bGUudG9wID0gYCR7dG9wUG9zaXRpb259cHhgO1xyXG4gICAgfVxyXG4gIH1cclxuICBcclxuICB2YWxpZGFyUGFsYWJyYSh0ZXh0bzogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBwbGV0cmFzID0gL15bYS16QS1aXVswLTlhLXpBLVpdKiQvO1xyXG4gICAgcmV0dXJuIHBsZXRyYXMudGVzdCh0ZXh0byk7XHJcbiAgfVxyXG5cclxuICBpc051bWVyaWModmFsdWU6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICFpc05hTihOdW1iZXIodmFsdWUpKTtcclxuICB9XHJcblxyXG4gIHZhbGlkYXJFbnRlcm8odmFsb3I6IG51bWJlciwgb2JsaWdhdG9yaW86IGJvb2xlYW4sIGxvbmdpdHVkOiBudW1iZXIsIGNhbXBvOiBzdHJpbmcpOiBzdHJpbmcge1xyXG5cdFx0aWYgKG9ibGlnYXRvcmlvICYmIHZhbG9yID09IG51bGwpIHtcclxuXHRcdFx0cmV0dXJuIChjYW1wbyA9PSBudWxsID8gXCJcIiA6IFwiRWwgY2FtcG8gIFxcXCJcIiArIGNhbXBvICsgXCJcXFwiIGVzIFwiKSArIFwiT2JsaWdhdG9yaW8gXCI7XHRcdFx0XHJcblx0XHR9XHJcblx0XHRpZiAodmFsb3IgIT0gbnVsbCkge1xyXG5cdFx0XHRpZiAoTWF0aC50cnVuYyh2YWxvcikudG9TdHJpbmcoKS5sZW5ndGggPiBsb25naXR1ZCkge1xyXG5cdFx0XHRcdHJldHVybiBcIkxvbmdpdHVkIG1heGltYSBkZSBcIiArIGxvbmdpdHVkICsgKGNhbXBvID09IG51bGwgPyBcIlwiIDogKFwiIHBhcmEgZWwgY2FtcG8gKFwiICsgY2FtcG8gKyBcIikgXCIpKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIG51bGw7XHJcblx0fVxyXG4gIFxyXG59Il19
@@ -0,0 +1,16 @@
1
+ import { NgModule } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class SharedLibModule {
4
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SharedLibModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
5
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.4", ngImport: i0, type: SharedLibModule });
6
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SharedLibModule });
7
+ }
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SharedLibModule, decorators: [{
9
+ type: NgModule,
10
+ args: [{
11
+ declarations: [],
12
+ imports: [],
13
+ exports: []
14
+ }]
15
+ }] });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkbGliLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zaGFyZWRsaWIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVXpDLE1BQU0sT0FBTyxlQUFlO3VHQUFmLGVBQWU7d0dBQWYsZUFBZTt3R0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQVIzQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUNiO29CQUNELE9BQU8sRUFBRSxFQUNOO29CQUNILE9BQU8sRUFBRSxFQUNSO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaGFyZWRMaWJNb2R1bGUge31cclxuIl19