general-library-union 3.3.47 → 3.3.48

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 +364 -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 +383 -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 +115 -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 +565 -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 +16176 -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 +86 -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 +36 -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 -398
  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 -194
  466. package/src/app/layout/app.topbar.component.ts +0 -378
  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 -56
  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 -113
  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 -566
  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,364 @@
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
+ let navegador = this.obtenerNavegador().toLowerCase();
222
+ var height = 0;
223
+ doc = doc || document;
224
+ const appRoot = doc.querySelector('app-root');
225
+ const swalPopup = doc.querySelector('.swal2-popup');
226
+ if (swalPopup) {
227
+ return swalPopup.offsetHeight + 40;
228
+ }
229
+ //Si existe un dialog desplegado y el tamaño es mayor al iframe, se hace
230
+ //resize con estas medidas
231
+ const dialog = document.querySelector('.p-dialog-content');
232
+ const dialog2 = document.querySelector('.p-dialog-header');
233
+ if (dialog && dialog2) {
234
+ const alturaPopupContent = dialog.scrollHeight;
235
+ const alturaPopupHeader = dialog.offsetHeight;
236
+ const sumatoriaPopup = alturaPopupContent + alturaPopupHeader;
237
+ height = appRoot.offsetHeight;
238
+ if (height < sumatoriaPopup) {
239
+ height = sumatoriaPopup + 100;
240
+ return height;
241
+ }
242
+ }
243
+ // Si encuentra el elemento <app-root>, retorna su altura
244
+ if (appRoot) {
245
+ return appRoot.offsetHeight;
246
+ }
247
+ if (navegador.indexOf('firefox') !== -1) {
248
+ if (doc.formDetalleConvocatoria) {
249
+ let cantidadMiles = height / 1000;
250
+ height = height + 600 + (cantidadMiles * 40);
251
+ }
252
+ }
253
+ // console.warn('FCO : llama a getDocHeight');
254
+ return height;
255
+ }
256
+ obtenerNavegador() {
257
+ var ua = navigator.userAgent, tem, M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || [];
258
+ if (/trident/i.test(M[1])) {
259
+ tem = /\brv[ :]+(\d+)/g.exec(ua) || [];
260
+ return 'IE ' + (tem[1] || '');
261
+ }
262
+ if (M[1] === 'Chrome') {
263
+ tem = ua.match(/\b(OPR|Edge)\/(\d+)/);
264
+ if (tem != null)
265
+ return tem.slice(1).join(' ').replace('OPR', 'Opera');
266
+ }
267
+ M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, '-?'];
268
+ if ((tem = ua.match(/version\/(\d+)/i)) != null)
269
+ M.splice(1, 1, tem[1]);
270
+ return M.join(' ');
271
+ }
272
+ obtenerUrlApi(urlapi) {
273
+ if (urlapi) {
274
+ return urlapi;
275
+ }
276
+ switch (this.getTokenKey('aplicacion')) {
277
+ case '1':
278
+ return window['env']['urlapisara'] ? window['env']['urlapisara'] : this.cookieService.get('urlnucleo');
279
+ case '13':
280
+ return window['env']['urlapimana'] ? window['env']['urlapimana'] : this.cookieService.get('urlnucleo');
281
+ case '10':
282
+ return window['env']['urlapisara'] ? window['env']['urlapisara'] : this.cookieService.get('urlnucleo');
283
+ //return window['env']['urlapi'] ? window['env']['urlapi'] : this.cookieService.get('urlnucleo');
284
+ case '77':
285
+ return window['env']['urlapimanaaps'] ? window['env']['urlapimanaaps'] : this.cookieService.get('urlnucleo');
286
+ default:
287
+ return this.cookieService.get('urlnucleo');
288
+ }
289
+ }
290
+ getTokenKey(key) {
291
+ try {
292
+ const data = this._decodeToken();
293
+ return data[key].toString();
294
+ }
295
+ catch (error) {
296
+ return undefined;
297
+ }
298
+ }
299
+ _decodeToken() {
300
+ try {
301
+ const token = this.getItem('token', '');
302
+ const data = token.split('.')[1];
303
+ return JSON.parse(atob(data));
304
+ }
305
+ catch (error) {
306
+ throw error;
307
+ }
308
+ }
309
+ getItem(key, defaultValue) {
310
+ return localStorage.getItem(this.obtenerBase() + '_' + key) ?? defaultValue;
311
+ }
312
+ cambiarTema(tema) {
313
+ localStorage.setItem(this.obtenerBase() + '_' + 'tema', tema);
314
+ let linkTema = this.document.getElementById('temaApp');
315
+ linkTema.href = `${tema}.css`;
316
+ }
317
+ calcularPosicionDialog() {
318
+ const { x, y } = this.clickPositionService.getClickPosition();
319
+ var ifrm = window.frameElement;
320
+ var doc = ifrm.contentDocument ? ifrm.contentDocument : ifrm.contentWindow.document;
321
+ var tamanio = this.getDocHeight(doc) + 40;
322
+ const iframeOffsetTop = tamanio ? -(tamanio / 2) : 0;
323
+ const dialog = document.querySelector('.p-dialog');
324
+ if (dialog) {
325
+ var topPosition = iframeOffsetTop + y;
326
+ const calculoPosicionPopup = y + (dialog.offsetHeight / 2);
327
+ if (calculoPosicionPopup > tamanio) {
328
+ var diferencia = calculoPosicionPopup - tamanio;
329
+ topPosition = topPosition - diferencia - 10;
330
+ }
331
+ dialog.style.top = `${topPosition}px`;
332
+ }
333
+ }
334
+ validarPalabra(texto) {
335
+ const pletras = /^[a-zA-Z][0-9a-zA-Z]*$/;
336
+ return pletras.test(texto);
337
+ }
338
+ isNumeric(value) {
339
+ return !isNaN(Number(value));
340
+ }
341
+ validarEntero(valor, obligatorio, longitud, campo) {
342
+ if (obligatorio && valor == null) {
343
+ return (campo == null ? "" : "El campo \"" + campo + "\" es ") + "Obligatorio ";
344
+ }
345
+ if (valor != null) {
346
+ if (Math.trunc(valor).toString().length > longitud) {
347
+ return "Longitud maxima de " + longitud + (campo == null ? "" : (" para el campo (" + campo + ") "));
348
+ }
349
+ }
350
+ return null;
351
+ }
352
+ 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 });
353
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UtilsService, providedIn: 'root' });
354
+ }
355
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UtilsService, decorators: [{
356
+ type: Injectable,
357
+ args: [{
358
+ providedIn: 'root'
359
+ }]
360
+ }], ctorParameters: () => [{ type: i1.CookieService }, { type: Document, decorators: [{
361
+ type: Inject,
362
+ args: [DOCUMENT]
363
+ }] }, { type: i2.ClickPosicionService }] });
364
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zZXJ2aWNpb3MvdXRpbHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFNM0MsTUFBTSxPQUFPLFlBQVk7SUFLSDtJQUF3RDtJQUE0QjtJQUhoRyw4QkFBOEIsR0FBVSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQzdDLFVBQVUsR0FBVSxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFBO0lBRW5MLFlBQW9CLGFBQTRCLEVBQTRCLFFBQWtCLEVBQVUsb0JBQTBDO1FBQTlILGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQTRCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFBVSx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBQ2xKLENBQUM7SUFFTSxZQUFZO1FBQ2pCLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixNQUFNLFVBQVUsR0FBRyxnRUFBZ0UsQ0FBQztRQUNwRixNQUFNLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUM1QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMxQyxNQUFNLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFN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QUMsR0FBRyxjQUFjLENBQUM7UUFDbEYsQ0FBQztRQUNELElBQUksS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ25CLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLEdBQUcsUUFBUSxFQUFFLENBQUM7Z0JBQ3BELE9BQU8scUJBQXFCLEdBQUcsUUFBUSxHQUFHLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQ3RHLENBQUM7UUFDRixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDYixDQUFDO3VHQW5ZVyxZQUFZLCtDQUttQyxRQUFROzJHQUx2RCxZQUFZLGNBRlgsTUFBTTs7MkZBRVAsWUFBWTtrQkFIeEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU1vRCxNQUFNOzJCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJ25neC1jb29raWUtc2VydmljZSc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ2xpY2tQb3NpY2lvblNlcnZpY2UgfSBmcm9tICcuL2NsaWNrLXBvc2ljaW9uLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVXRpbHNTZXJ2aWNlIHtcclxuXHJcbiAgcHJpdmF0ZSBSRVNFUlZBREFTX1NRTF9OT1BVRURFQ09OVEVORVI6IGFueVtdID0gWyc7J11cclxuICBwcml2YXRlIHJlc2VydmFkYXM6IGFueVtdID0gWydBTFRFUicsICdERUxFVEUnLCAnRFJPUCcsICdNT0RJRlknLCAnQ1JFQVRFJywgJ0RBVEFCQVNFJywgJ1RBQkxFJywgJ1VQREFURScsICdUUklHR0VSJywgJ0dSQU5UJywgJ1JFVk9LRScsICdDQUxMJywgJ0lOU0VSVCcsICdUUlVOQ0FURScsICdVU0UnLCAnLS0nXVxyXG4gIFxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29va2llU2VydmljZTogQ29va2llU2VydmljZSwgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnQsIHByaXZhdGUgY2xpY2tQb3NpdGlvblNlcnZpY2U6IENsaWNrUG9zaWNpb25TZXJ2aWNlKXtcclxuICB9XHJcbiAgXHJcbiAgcHVibGljIGdlbmVyYXJMbGF2ZSgpIHtcclxuICAgIGxldCByZXN1bHQgPSAnJztcclxuICAgIGNvbnN0IGNoYXJhY3RlcnMgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODknO1xyXG4gICAgY29uc3QgY2hhcmFjdGVyc0xlbmd0aCA9IDMyO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFyYWN0ZXJzTGVuZ3RoOyBpKyspIHtcclxuICAgICAgcmVzdWx0ICs9IGNoYXJhY3RlcnMuY2hhckF0KE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGNoYXJhY3RlcnNMZW5ndGgpKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gcmVzdWx0LnRvTG93ZXJDYXNlKCk7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHB1YmxpYyBnZW5lcmFyUGluKGNhbnRpZGFkOiBudW1iZXIpIHtcclxuICAgIGxldCByZXN1bHQgPSAnJztcclxuICAgIGNvbnN0IGNoYXJhY3RlcnMgPSAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODknO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjYW50aWRhZDsgaSsrKSB7XHJcbiAgICAgIHJlc3VsdCArPSBjaGFyYWN0ZXJzLmNoYXJBdChNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjYW50aWRhZCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiByZXN1bHQudG9Mb3dlckNhc2UoKTtcclxuICB9XHJcblxyXG4gIHJpZ2h0cGFkKHN0ciwgbGVuZ3RoLCBjaGFyKSB7XHJcbiAgICBpZiAoc3RyID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mIHN0ciAhPT0gJ3N0cmluZycgfHwgdHlwZW9mIGxlbmd0aCAhPT0gJ251bWJlcicpIHtcclxuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignTG9zIGFyZ3VtZW50b3MgZGViZW4gc2VyIHVuYSBjYWRlbmEgeSB1biBuw7ptZXJvLicpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChzdHIubGVuZ3RoID49IGxlbmd0aCkge1xyXG4gICAgICByZXR1cm4gc3RyO1xyXG4gICAgfVxyXG5cclxuICAgIGNoYXIgPSBjaGFyIHx8ICcgJzsgLy8gVXRpbGl6YSB1biBlc3BhY2lvIGNvbW8gY2Fyw6FjdGVyIGRlIHJlbGxlbm8gc2kgbm8gc2UgcHJvcG9yY2lvbmEgdW5vXHJcblxyXG4gICAgdmFyIHBhZExlbmd0aCA9IGxlbmd0aCAtIHN0ci5sZW5ndGg7XHJcbiAgICB2YXIgcGFkZGluZyA9IGNoYXIucmVwZWF0KHBhZExlbmd0aCk7XHJcblxyXG4gICAgcmV0dXJuIHN0ciArIHBhZGRpbmc7XHJcbiAgfVxyXG5cclxuICB2YWxpZGFyQ2FtcG9OdW1lcmljbyhldmVudDogYW55KSB7XHJcbiAgICBjb25zdCBpbnB1dCA9IGV2ZW50LnRhcmdldDtcclxuICAgIGNvbnN0IHJlZ2V4ID0gL1teMC05XS9naTtcclxuICAgIGlucHV0LnZhbHVlID0gaW5wdXQudmFsdWUucmVwbGFjZShyZWdleCwgJycpO1xyXG4gIH1cclxuXHJcbiAgaXNOb3RCbGFuayhzdHI6IHN0cmluZyB8IFN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBzdHIgIT0gbnVsbCAmJiBzdHIudHJpbSgpLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG5cclxuICBpc0JsYW5rKHN0cjogc3RyaW5nIHwgU3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHN0ciA9PSBudWxsIHx8IHN0cj8udHJpbSgpID09PSAnJztcclxuICB9XHJcblxyXG4gIHZhbGlkYXJDYW1wb09ibGlnYXRvcmlvKHZhbG9yKTogYm9vbGVhbiB7XHJcbiAgICAvLyBWZXJpZmljYXIgc2kgZWwgdmFsb3Igbm8gZXMgbnVsbCBuaSB1bmRlZmluZWRcclxuICAgIGlmICh2YWxvciAhPT0gbnVsbCAmJiB2YWxvciAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIC8vIFZlcmlmaWNhciBzaSBlbCB2YWxvciBubyBlcyB1bmEgY2FkZW5hIHZhY8OtYSAoZW4gY2FzbyBkZSBzZXIgdW5hIGNhZGVuYSlcclxuICAgICAgaWYgKHR5cGVvZiB2YWxvciA9PT0gJ3N0cmluZycgJiYgdmFsb3IudHJpbSgpID09PSAnJykge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICAvLyBWZXJpZmljYXIgc2kgZWwgdmFsb3Igbm8gZXMgdW4gYXJyZWdsbyB2YWPDrW8gKGVuIGNhc28gZGUgc2VyIHVuIGFycmVnbG8pXHJcbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbG9yKSAmJiB2YWxvci5sZW5ndGggPT09IDApIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgLyppZiAodHlwZW9mIHZhbG9yID09PSAnb2JqZWN0JyAmJiBPYmplY3Qua2V5cyh2YWxvcikubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9Ki9cclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBjYXBpdGFsaXplRnVsbHkoaW5wdXRTdHJpbmc6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAoIWlucHV0U3RyaW5nKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICAgIGNvbnN0IHdvcmRzID0gaW5wdXRTdHJpbmcuc3BsaXQoJyAnKTtcclxuICAgIGNvbnN0IGNhcGl0YWxpemVkV29yZHMgPSB3b3Jkcy5tYXAod29yZCA9PiB7XHJcbiAgICAgIGlmICh3b3JkLmxlbmd0aCA+IDApIHtcclxuICAgICAgICByZXR1cm4gd29yZC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHdvcmQuc2xpY2UoMSkudG9Mb3dlckNhc2UoKTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHJlc3VsdCA9IGNhcGl0YWxpemVkV29yZHMuam9pbignICcpO1xyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIG9yZGVuYXJTZWxlY3RJdGVtc0FsZmFiZXRpY2FtZW50ZShhcnJheURlT2JqZXRvczogYW55W10pOiBhbnlbXSB7XHJcbiAgICBhcnJheURlT2JqZXRvcy5zb3J0KChhLCBiKSA9PiB7XHJcbiAgICAgIGNvbnN0IG5vbWJyZUEgPSBhLmxhYmVsLnRvTG93ZXJDYXNlKCk7XHJcbiAgICAgIGNvbnN0IG5vbWJyZUIgPSBiLmxhYmVsLnRvTG93ZXJDYXNlKCk7XHJcblxyXG4gICAgICBpZiAobm9tYnJlQSA8IG5vbWJyZUIpIHtcclxuICAgICAgICByZXR1cm4gLTE7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKG5vbWJyZUEgPiBub21icmVCKSB7XHJcbiAgICAgICAgcmV0dXJuIDE7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIDA7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBhcnJheURlT2JqZXRvcztcclxuICB9XHJcblxyXG4gIG9idGVuZXJQYXJhbWV0cm9EZVVSTCh1cmxTdHJpbmc6IHN0cmluZywgcGFyYW1ldHJvOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgIGNvbnN0IHVybCA9IG5ldyBVUkwodXJsU3RyaW5nKTtcclxuICAgIGNvbnN0IHNlYXJjaFBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXModXJsLnNlYXJjaCk7XHJcbiAgICByZXR1cm4gc2VhcmNoUGFyYW1zLmdldChwYXJhbWV0cm8pO1xyXG4gIH1cclxuXHJcbiAgdmFsaWRhckVtYWlsKGVtYWlsOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IHBhdHJvbkVtYWlsID0gL15bYS16QS1aMC05Ll8lKy1dK0BbYS16QS1aMC05Li1dK1xcLlthLXpBLVpdezIsfSQvO1xyXG4gICAgcmV0dXJuIHBhdHJvbkVtYWlsLnRlc3QoZW1haWwpO1xyXG4gIH1cclxuXHJcbiAgb2J0ZW5lckJhc2UoKTogKHN0cmluZyB8IG51bGwpIHtcclxuXHJcbiAgICB2YXIgYmFzZVBvcnRhbDogc3RyaW5nID0gbnVsbDtcclxuICAgIHZhciBwYWdpbmFBY3R1YWw6IGFueSA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmXHJcbiAgICB2YXIgdXJsID0gbmV3IFVSTChwYWdpbmFBY3R1YWwpO1xyXG4gICAgdmFyIHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXModXJsLnNlYXJjaCk7XHJcbiAgICBpZiAocGFnaW5hQWN0dWFsLnRvU3RyaW5nKCkuaW5jbHVkZXMoJ1BvcnRhbFNhcmEnKSkge1xyXG4gICAgICBmb3IgKHZhciBtYXRjaCBvZiBwYWdpbmFBY3R1YWwubWF0Y2hBbGwoLyg/PGluaWNpbz4uKilcXC8oPzxzZWd1cmlkYWQ+LiopXFwvKD88c2l0aW8+LiopXFwvKD88cGFnaW5hPi4qKS9nKSkge1xyXG4gICAgICAgIGJhc2VQb3J0YWwgPSBtYXRjaC5ncm91cHM/LnNlZ3VyaWRhZDtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmIChwYXJhbXM/LmdldCgndXNfaWQnKSkge1xyXG4gICAgICBwYWdpbmFBY3R1YWwgPSB3aW5kb3cucGFyZW50LmxvY2F0aW9uLmhyZWY7XHJcbiAgICAgIGZvciAodmFyIG1hdGNoIG9mIHBhZ2luYUFjdHVhbC5tYXRjaEFsbCgvKD88aW5pY2lvPi4qKVxcLyg/PHNlZ3VyaWRhZD4uKilcXC8oPzxzaXRpbz4uKilcXC8oPzxwYWdpbmE+LiopL2cpKSB7XHJcbiAgICAgICAgYmFzZVBvcnRhbCA9IG1hdGNoLmdyb3Vwcz8uc2VndXJpZGFkO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCByZWdleCA9IC9eLio/XFwvXFwvLio/XFwvKC4qPylcXC8vZzsgLy8gRXhwcmVzacOzbiByZWd1bGFyIHBhcmEgb2J0ZW5lciBsYSBwcmltZXJhIHBhcnRlIGRlIGxhIFVSTFxyXG4gICAgICBjb25zdCBtYXRjaCA9IEFycmF5LmZyb20ocGFnaW5hQWN0dWFsLm1hdGNoQWxsKHJlZ2V4KSk7XHJcblxyXG4gICAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMF0gJiYgbWF0Y2hbMF1bMV0pIHtcclxuICAgICAgICBiYXNlUG9ydGFsID0gbWF0Y2hbMF1bMV07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBiYXNlUG9ydGFsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB2YWxpZGFyRXNwYWNpbyhjYXJhY3Rlcjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCByZWdleCA9IC9cXHMvOyAvLyBMYSBleHByZXNpw7NuIHJlZ3VsYXIgcGFyYSBlc3BhY2lvcyBlbiBibGFuY29cclxuICAgIHJldHVybiByZWdleC50ZXN0KGNhcmFjdGVyKTsgLy8gRGV2dWVsdmUgdHJ1ZSBzaSBlbCBjYXLDoWN0ZXIgZXMgdW4gZXNwYWNpbyBlbiBibGFuY29cclxuICB9XHJcblxyXG4gIHB1YmxpYyB2YWxpZGFyVGV4dG9TUUwodmFsb3I6IHN0cmluZywgb2JsaWdhdG9yaW86IGJvb2xlYW4sIHNlbGVjdDogYm9vbGVhbiwgbG9uZ2l0dWQ6IG51bWJlciwgdmFsaWRhclNlbnRlbmNpYTogYm9vbGVhbik6IChzdHJpbmcgfCBudWxsKSB7XHJcbiAgICAvLyBWZXJpZmljYSBvYmxpZ2F0b3JpZWRhZFxyXG4gICAgaWYgKG9ibGlnYXRvcmlvICYmICh2YWxvciA9PSBudWxsIHx8IHZhbG9yLnRyaW0oKS5sZW5ndGggPT0gMCB8fCB2YWxvciA9PSAnLS0nKSkge1xyXG4gICAgICByZXR1cm4gJ09ibGlnYXRvcmlvJztcclxuICAgIH1cclxuICAgIC8vIFZlcmlmaWNhIGxvbmdpdHVkIG3DoXhpbWFcclxuICAgIGlmIChsb25naXR1ZCA+IDApIHtcclxuICAgICAgaWYgKHZhbG9yICE9IG51bGwgJiYgdmFsb3IgIT0gJy0tJyAmJiB2YWxvci5sZW5ndGggPiBsb25naXR1ZCkge1xyXG4gICAgICAgIHJldHVybiAnTG9uZ2l0dWQgbWF4aW1hIGRlICcgKyBsb25naXR1ZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gUmVhbGl6YSBsYXMgZGVtw6FzIHZhbGlkYWNpb24gc29sbyBlbiBlbCBjYXNvIGRlIHF1ZSBsYSBjYWRlbmEgU1FML3ZhbG9yIG5vIHNlYSB2YWNpYVxyXG4gICAgaWYgKHZhbG9yID09IG51bGwgfHwgdmFsb3IudHJpbSgpLmxlbmd0aCA9PSAwIHx8IHZhbG9yID09ICctLScpXHJcbiAgICAgIHJldHVybiBudWxsO1xyXG5cclxuICAgIGlmICh2YWxpZGFyU2VudGVuY2lhKSB7XHJcbiAgICAgIGlmIChzZWxlY3QpIHtcclxuICAgICAgICBpZiAoIXZhbG9yLnRvVXBwZXJDYXNlKCkuc3RhcnRzV2l0aCgnU0VMRUNUJykpIHtcclxuICAgICAgICAgIHJldHVybiAnRWwgdGV4dG8gZGViZSBpbmljaWFyIGNvbiBsYSBwYWxhYnJhIFNlbGVjdCc7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICh2YWxvci50b1VwcGVyQ2FzZSgpLmluY2x1ZGVzKCdTRUxFQ1QnKSkge1xyXG4gICAgICAgICAgcmV0dXJuICdObyBwdWVkZSBjb250ZW5lciBsYSBwYWxhYnJhIFNlbGVjdCc7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB2YXIgaW5kaWNlOiBudW1iZXI7XHJcbiAgICB2YXIgbWVuc2FqZTogc3RyaW5nO1xyXG4gICAgdGhpcy5SRVNFUlZBREFTX1NRTF9OT1BVRURFQ09OVEVORVIuZm9yRWFjaChpdGVtID0+IHtcclxuICAgICAgaWYgKHZhbG9yLmluY2x1ZGVzKGl0ZW0pKSB7XHJcbiAgICAgICAgbWVuc2FqZSA9ICdObyBwdWVkZSBjb250ZW5lciAnICsgaXRlbTtcclxuICAgICAgfVxyXG4gICAgfSlcclxuICAgIHRoaXMucmVzZXJ2YWRhcy5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICBpZiAodmFsb3IudG9VcHBlckNhc2UoKS5pbmNsdWRlcyhpdGVtLnRvVXBwZXJDYXNlKCkpKSB7XHJcbiAgICAgICAgaW5kaWNlID0gKHZhbG9yLnRvVXBwZXJDYXNlKCkuaW5kZXhPZihpdGVtLnRvVXBwZXJDYXNlKCkpKTtcclxuICAgICAgICBpZiAoaW5kaWNlID09IDAgfHwgKHRoaXMudmFsaWRhckVzcGFjaW8odmFsb3IuY2hhckF0KGluZGljZSAtIDEpKSAmJiB0aGlzLnZhbGlkYXJFc3BhY2lvKHZhbG9yLmNoYXJBdChpdGVtLmxlbmd0aCArIGluZGljZSkpKSkge1xyXG4gICAgICAgICAgbWVuc2FqZSA9ICdObyBwdWVkZSBjb250ZW5lciAnICsgaXRlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgICByZXR1cm4gbWVuc2FqZTtcclxuICB9XHJcblxyXG4gIHNsZWVwKG1zOiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCBtcykpO1xyXG4gIH1cclxuXHJcbiAgdmFsaWRhclRleHRvQXJjaGl2b0phc3Blcih0ZXh0bzogc3RyaW5nKTogKHN0cmluZyB8IG51bGwpIHtcclxuICAgIGlmICh0ZXh0by50cmltKCkgPT0gJycgfHwgdGV4dG8gPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gXCJFbCBjYW1wbyBubyBwdWVkZSBlc3RhciB2YWNpb1wiO1xyXG4gICAgfVxyXG4gICAgaWYgKHRleHRvLm1hdGNoKFwiXlteXFxcXERdLipcIikpIHtcclxuICAgICAgcmV0dXJuIFwiRWwgY2FtcG8gbm8gcHVlZGUgaW5pY2lhciBjb24gbnVtZXJvc1wiO1xyXG4gICAgfVxyXG4gICAgaWYgKHRleHRvLm1hdGNoKFwiXlteXFxcXFNdLipcIikpIHtcclxuICAgICAgcmV0dXJuIFwiRWwgY2FtcG8gbm8gcHVlZGUgaW5pY2lhciBjb24gY2FyYWN0ZXJlcyBlbiBibGFuY29cIjtcclxuICAgIH1cclxuICAgIGlmICghdGV4dG8ubWF0Y2goXCJeW15cXFxcV10uKlwiKSkge1xyXG4gICAgICByZXR1cm4gXCJFbCBjYW1wbyBubyBwdWVkZSBpbmljaWFyIGNvbiBjYXJhY3RlcmVzIGVzcGVjaWFsZXNcIjtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmVzaXplV2luZG93SUZyYW1lKCkge1xyXG5cdFx0aWYgKCB3aW5kb3cuZnJhbWVFbGVtZW50ICE9IG51bGwpIHtcclxuXHRcdFx0dGhpcy5yZXNpemVJZnJhbWVLZWVwUG9zaXRpb24od2luZG93LmZyYW1lRWxlbWVudCk7XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdC8qKlxyXG5cdCAqIEZ1bmNpb24gcGFyYSBtYW50ZW5lciBsYSBwb3NpY2nDs24gYWN0dWFsIGVuIGVsIGlmcmFtZS5cclxuXHQgKiBAcGFyYW0gb2JqIGVzIHVuIFwiRnJhbWVFbGVtZW50XCJcclxuXHQgKi9cclxuXHRwcml2YXRlIHJlc2l6ZUlmcmFtZUtlZXBQb3NpdGlvbihvYmopIHtcclxuXHRcdFxyXG5cdFx0dmFyIGlmcm0gPSBvYmo7XHJcblx0XHR2YXIgZG9jID0gaWZybS5jb250ZW50RG9jdW1lbnQgPyBpZnJtLmNvbnRlbnREb2N1bWVudDogaWZybS5jb250ZW50V2luZG93LmRvY3VtZW50O1xyXG4gICAgdmFyIHRhbWFuaW86IG51bWJlcj0gIHRoaXMuZ2V0RG9jSGVpZ2h0KCBkb2MgKSAgKyA0MFxyXG5cdFx0aWZybS5zdHlsZS5oZWlnaHQgPSB0YW1hbmlvICsgXCJweFwiO1xyXG5cdH1cclxuXHJcbiAgcHJpdmF0ZSBnZXREb2NIZWlnaHQoZG9jKXtcclxuXHRcdGxldCBuYXZlZ2Fkb3IgPSB0aGlzLm9idGVuZXJOYXZlZ2Fkb3IoKS50b0xvd2VyQ2FzZSgpO1xyXG5cdFx0dmFyIGhlaWdodCA9IDA7XHJcblx0XHRkb2MgPSBkb2MgfHwgZG9jdW1lbnQ7XHJcbiAgICBjb25zdCBhcHBSb290ID0gZG9jLnF1ZXJ5U2VsZWN0b3IoJ2FwcC1yb290Jyk7XHJcblxyXG4gICAgY29uc3Qgc3dhbFBvcHVwID0gZG9jLnF1ZXJ5U2VsZWN0b3IoJy5zd2FsMi1wb3B1cCcpO1xyXG4gICAgaWYgKHN3YWxQb3B1cCkge1xyXG4gICAgICAgIHJldHVybiBzd2FsUG9wdXAub2Zmc2V0SGVpZ2h0ICsgNDA7XHJcbiAgICB9XHJcblxyXG4gICAgLy9TaSBleGlzdGUgdW4gZGlhbG9nIGRlc3BsZWdhZG8geSBlbCB0YW1hw7FvIGVzIG1heW9yIGFsIGlmcmFtZSwgc2UgaGFjZVxyXG4gICAgLy9yZXNpemUgY29uIGVzdGFzIG1lZGlkYXNcclxuICAgIGNvbnN0IGRpYWxvZyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5wLWRpYWxvZy1jb250ZW50JykgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjb25zdCBkaWFsb2cyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnAtZGlhbG9nLWhlYWRlcicpIGFzIEhUTUxFbGVtZW50O1xyXG5cclxuICAgIGlmIChkaWFsb2cgJiYgZGlhbG9nMikge1xyXG4gICAgICBjb25zdCBhbHR1cmFQb3B1cENvbnRlbnQgPSBkaWFsb2cuc2Nyb2xsSGVpZ2h0O1xyXG4gICAgICBjb25zdCBhbHR1cmFQb3B1cEhlYWRlciA9IGRpYWxvZy5vZmZzZXRIZWlnaHQ7XHJcbiAgICAgIGNvbnN0IHN1bWF0b3JpYVBvcHVwID0gYWx0dXJhUG9wdXBDb250ZW50ICsgYWx0dXJhUG9wdXBIZWFkZXI7XHJcbiAgICAgIGhlaWdodCA9IGFwcFJvb3Qub2Zmc2V0SGVpZ2h0O1xyXG4gICAgICBpZiAoaGVpZ2h0IDwgc3VtYXRvcmlhUG9wdXApIHtcclxuICAgICAgICBoZWlnaHQgPSBzdW1hdG9yaWFQb3B1cCArIDEwMDtcclxuICAgICAgICByZXR1cm4gaGVpZ2h0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gU2kgZW5jdWVudHJhIGVsIGVsZW1lbnRvIDxhcHAtcm9vdD4sIHJldG9ybmEgc3UgYWx0dXJhXHJcbiAgICBpZiAoYXBwUm9vdCkge1xyXG4gICAgICAgIHJldHVybiBhcHBSb290Lm9mZnNldEhlaWdodDtcclxuICAgIH0gXHJcblx0XHRcclxuXHRcdGlmIChuYXZlZ2Fkb3IuaW5kZXhPZignZmlyZWZveCcpICE9PSAtMSl7XHJcblx0XHRcdGlmKGRvYy5mb3JtRGV0YWxsZUNvbnZvY2F0b3JpYSl7XHJcblx0XHRcdFx0bGV0IGNhbnRpZGFkTWlsZXMgPSBoZWlnaHQgLyAxMDAwO1xyXG5cdFx0XHRcdGhlaWdodCA9IGhlaWdodCArIDYwMCArIChjYW50aWRhZE1pbGVzKjQwKVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcbiAgICAgIFxyXG4gICBcclxuXHQvL1x0Y29uc29sZS53YXJuKCdGQ08gOiBsbGFtYSBhIGdldERvY0hlaWdodCcpO1xyXG5cdFxyXG5cdFx0cmV0dXJuIGhlaWdodDtcclxuXHR9XHJcblxyXG5cdG9idGVuZXJOYXZlZ2Fkb3IoKXtcclxuXHRcdHZhciB1YT0gbmF2aWdhdG9yLnVzZXJBZ2VudCwgdGVtLCBcclxuXHRcdE09IHVhLm1hdGNoKC8ob3BlcmF8Y2hyb21lfHNhZmFyaXxmaXJlZm94fG1zaWV8dHJpZGVudCg/PVxcLykpXFwvP1xccyooXFxkKykvaSkgfHwgW107XHJcblx0XHRpZigvdHJpZGVudC9pLnRlc3QoTVsxXSkpe1xyXG5cdFx0XHR0ZW09ICAvXFxicnZbIDpdKyhcXGQrKS9nLmV4ZWModWEpIHx8IFtdO1xyXG5cdFx0XHRyZXR1cm4gJ0lFICcrKHRlbVsxXSB8fCAnJyk7XHJcblx0XHR9XHJcblx0XHRpZihNWzFdPT09ICdDaHJvbWUnKXtcclxuXHRcdFx0dGVtPSB1YS5tYXRjaCgvXFxiKE9QUnxFZGdlKVxcLyhcXGQrKS8pO1xyXG5cdFx0XHRpZih0ZW0hPSBudWxsKSByZXR1cm4gdGVtLnNsaWNlKDEpLmpvaW4oJyAnKS5yZXBsYWNlKCdPUFInLCAnT3BlcmEnKTtcclxuXHRcdH1cclxuXHRcdE09IE1bMl0/IFtNWzFdLCBNWzJdXTogW25hdmlnYXRvci5hcHBOYW1lLCBuYXZpZ2F0b3IuYXBwVmVyc2lvbiwgJy0/J107XHJcblx0XHRpZigodGVtPSB1YS5tYXRjaCgvdmVyc2lvblxcLyhcXGQrKS9pKSkhPSBudWxsKSBNLnNwbGljZSgxLCAxLCB0ZW1bMV0pO1xyXG5cdFx0cmV0dXJuIE0uam9pbignICcpO1xyXG5cdH1cclxuXHJcbiAgb2J0ZW5lclVybEFwaSh1cmxhcGk/OiBzdHJpbmcgKTogc3RyaW5nIHtcclxuICAgIGlmICh1cmxhcGkpe1xyXG4gICAgICByZXR1cm4gdXJsYXBpO1xyXG4gICAgfVxyXG4gICAgc3dpdGNoICh0aGlzLmdldFRva2VuS2V5KCdhcGxpY2FjaW9uJykpIHtcclxuICAgICAgY2FzZSAnMSc6XHJcbiAgICAgICAgcmV0dXJuIHdpbmRvd1snZW52J11bJ3VybGFwaXNhcmEnXSA/IHdpbmRvd1snZW52J11bJ3VybGFwaXNhcmEnXSA6IHRoaXMuY29va2llU2VydmljZS5nZXQoJ3VybG51Y2xlbycpO1xyXG4gICAgICBjYXNlICcxMyc6XHJcbiAgICAgICAgcmV0dXJuIHdpbmRvd1snZW52J11bJ3VybGFwaW1hbmEnXSA/IHdpbmRvd1snZW52J11bJ3VybGFwaW1hbmEnXSA6IHRoaXMuY29va2llU2VydmljZS5nZXQoJ3VybG51Y2xlbycpO1xyXG4gICAgICBjYXNlICcxMCc6XHJcbiAgICAgICAgcmV0dXJuIHdpbmRvd1snZW52J11bJ3VybGFwaXNhcmEnXSA/IHdpbmRvd1snZW52J11bJ3VybGFwaXNhcmEnXSA6IHRoaXMuY29va2llU2VydmljZS5nZXQoJ3VybG51Y2xlbycpO1xyXG4gICAgICAgIC8vcmV0dXJuIHdpbmRvd1snZW52J11bJ3VybGFwaSddID8gd2luZG93WydlbnYnXVsndXJsYXBpJ10gOiB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KCd1cmxudWNsZW8nKTtcclxuICAgICAgY2FzZSAnNzcnOlxyXG4gICAgICAgIHJldHVybiB3aW5kb3dbJ2VudiddWyd1cmxhcGltYW5hYXBzJ10gPyB3aW5kb3dbJ2VudiddWyd1cmxhcGltYW5hYXBzJ10gOiB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KCd1cmxudWNsZW8nKTtcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gIHRoaXMuY29va2llU2VydmljZS5nZXQoJ3VybG51Y2xlbycpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRUb2tlbktleShrZXk6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICB0cnkge1xyXG4gICAgICBjb25zdCBkYXRhID0gdGhpcy5fZGVjb2RlVG9rZW4oKTtcclxuICAgICAgcmV0dXJuIGRhdGFba2V5XS50b1N0cmluZygpO1xyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2RlY29kZVRva2VuKCk6IGFueSB7XHJcbiAgICB0cnkge1xyXG4gICAgICBjb25zdCB0b2tlbiA9IHRoaXMuZ2V0SXRlbSgndG9rZW4nLCAnJyk7XHJcbiAgICAgIGNvbnN0IGRhdGEgPSB0b2tlbi5zcGxpdCgnLicpWzFdO1xyXG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShhdG9iKGRhdGEpKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIHRocm93IGVycm9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0SXRlbShrZXk6IHN0cmluZywgZGVmYXVsdFZhbHVlPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcclxuICAgIHJldHVybiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLm9idGVuZXJCYXNlKCkgKyAnXycgKyAga2V5KSA/PyBkZWZhdWx0VmFsdWU7XHJcbiAgfVxyXG5cclxuICBjYW1iaWFyVGVtYSh0ZW1hIDogKCd0ZW1hQ2xhcm8nIHwgJ3RlbWFPc2N1cm8nKSl7XHJcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLm9idGVuZXJCYXNlKCkgKyAnXycgKyd0ZW1hJywgdGVtYSk7XHJcbiAgICBsZXQgbGlua1RlbWEgPSB0aGlzLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZW1hQXBwJykgYXMgSFRNTExpbmtFbGVtZW50O1xyXG4gICAgbGlua1RlbWEuaHJlZiA9IGAke3RlbWF9LmNzc2BcclxuICB9XHJcblxyXG4gIGNhbGN1bGFyUG9zaWNpb25EaWFsb2coKSB7XHJcbiAgICBjb25zdCB7IHgsIHkgfSA9IHRoaXMuY2xpY2tQb3NpdGlvblNlcnZpY2UuZ2V0Q2xpY2tQb3NpdGlvbigpO1xyXG4gICAgdmFyIGlmcm06IGFueSA9IHdpbmRvdy5mcmFtZUVsZW1lbnQ7XHJcblx0XHR2YXIgZG9jID0gaWZybS5jb250ZW50RG9jdW1lbnQgPyBpZnJtLmNvbnRlbnREb2N1bWVudDogaWZybS5jb250ZW50V2luZG93LmRvY3VtZW50O1xyXG4gICAgdmFyIHRhbWFuaW86IG51bWJlcj0gIHRoaXMuZ2V0RG9jSGVpZ2h0KCBkb2MgKSAgKyA0MFxyXG4gICAgY29uc3QgaWZyYW1lT2Zmc2V0VG9wID0gdGFtYW5pbyA/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