{"version":3,"sources":["./src/app/services/auth.guard.ts","./src/app/components/modules/shared/material/material.module.ts","./src/app/pages/lider-proyecto/lider-proyecto.component.scss","./src/app/components/administracion/tabla-iniciativas/tabla-iniciativas.component.scss","./src/app/components/dialog-asigna-enlace/dialog-asigna-enlace.component.html","./src/app/components/shared/navbar/navbar.component.scss","./src/app/components/costeo-proceso/costeo-proceso.component.css","./src/app/components/shared/confirm-listado-iniciativas-admin/confirm-listado-iniciativas-admin.component.ts","./src/app/components/cambios-funcionalidades/cambios-funcionalidades.component.ts","./src/app/components/modal-usuario/modal-usuario.component.html","./src/app/components/administracion/estructura/estructura.component.html","./src/app/components/administracion/tabla-iniciativas/tabla-iniciativas.component.ts","./src/app/components/shared/navbar/navbar.component.ts","./src/app/components/nuevo-sistema/nuevo-sistema.component.ts","./src/app/components/modal-usuario-edicion/modal-usuario-edicion.component.ts","./src/app/components/administracion/priorizacion-iniciativas/priorizacion-iniciativas.component.css","./src/app/components/shared/loading/loading.component.scss","./src/app/components/confirmacion/confirm.component.ts","./src/app/components/modal-procedimiento-asis/modal-procedimiento.component.html","./src/app/components/confirmacion/confirmacion.component.html","./src/app/components/modal-usuario-edicion/modal-usuario-edicion.component.scss","./src/app/components/administracion/formatos-apoyo/formatos.component.ts","./src/app/components/shared/loading/loading.component.ts","./src/app/components/administracion/enlaces/enlaces.component.html","./src/app/components/confirmacion/confirmacion.component.ts","./src/app/components/administracion/priorizacion-iniciativas/priorizacion-iniciativas.component.ts","./src/app/components/administracion/reportes/reportes.component.css","./src/app/components/shared/confirm-listado-tabla-iniciativas/confirm-listado-tabla-iniciativas.component.css","./src/app/components/costeo-proceso/costeo-proceso.component.ts","./src/app/components/modal-calendario/modal-calendario.component.scss","./src/app/components/administracion/control-usuarios/control-usuarios.component.html","./src/app/components/administracion/formatos-apoyo/formatos.component.html","./src/app/components/administracion/control-usuarios/control-usuarios.component.scss","./src/app/components/modal-iniciativa/modal-iniciativa.component.scss","./src/environments/environment.ts","./src/app/pages/administracion/administracion.component.ts","./src/app/pages/usuarios/add-usuarios/add-usuarios.component.html","./src/app/pages/mis-iniciativas/mis-iniciativas.component.scss","./src/app/pages/login/login.component.ts","./src/app/components/administracion/calendario-visual/calendario-visual.component.html","./src/app/components/shared/confirm-listado-tabla-iniciativas/confirm-listado-tabla-iniciativas.component.html","./src/app/services/data.service.ts","./src/app/components/shared/footer/footer.component.ts","./src/app/components/administracion/enlaces/enlaces.component.ts","./src/app/pages/portal/portal.component.ts","./src/app/components/confirmacion/confirmacion.component.scss","./src/app/components/administracion/control-usuarios/control-usuarios.component.ts","./src/app/pages/lider-proyecto/lider-proyecto.component.ts","./src/app/services/session.service.ts","./src/app/components/equipo-trabajo/equipo-trabajo.component.html","./src/app/components/modal-consulta-iniciativa/modal-consulta-iniciativa.component.html","./src/app/pages/login/login.component.scss","./src/app/components/administracion/motivos-iniciativa/motivos-iniciativa.component.ts","./src/app/components/administracion/motivos-iniciativa/motivos-iniciativa.component.html","./src/app/components/shared/confirm/confirm.component.html","./src/app/components/modal-priorizacion/modal-priorizacion.component.ts","./src/app/components/modal-usuario/modal-usuario.component.ts","./src/app/components/modal-procedimiento-asis/modal-procedimiento.component.ts","./src/app/components/shared/footer/footer.component.html","./src/app/components/shared/confirm-listado-iniciativas/confirm-listado-iniciativas.component.css","./src/app/components/administracion/aplicaciones/aplicaciones.component.css","./src/app/components/administracion/aplicaciones/aplicaciones.component.html","./src/app/components/administracion/reportes/reportes.component.html","./src/app/components/correccion-funcionalidades/correccion-funcionalidades.component.html","./src/app/pages/lider-proyecto/lider-proyecto.component.html","./src/app/components/administracion/priorizacion-iniciativas/priorizacion-iniciativas.component.html","./src/app/components/modal-priorizacion/modal-priorizacion.component.html","./node_modules/moment/locale sync ^\\.\\/.*$","./src/app/validators/validadores.validator.ts","./src/app/components/administracion/periodos-envio/periodos-envio.component.css","./src/app/app.component.ts","./src/app/components/modal-consulta-iniciativa/modal-consulta-iniciativa.component.css","./src/app/components/modal-calendario/modal-calendario.component.html","./src/app/components/modal-costeo-consulta/modal-costeo-consulta.component.ts","./src/app/components/shared/confirm-listado-iniciativas/confirm-listado-iniciativas.component.ts","./src/app/components/shared/loading/loading.component.html","./src/app/app.component.html","./src/app/components/modal-costeo-consulta/modal-costeo-consulta.component.css","./src/app/components/modal-iniciativa/modal-iniciativa.component.html","./src/app/components/modal-usuario/modal-usuario.component.scss","./src/app/components/shared/confirm/confirm.component.ts","./src/app/components/shared/confirm-listado-tabla-iniciativas/confirm-listado-tabla-iniciativas.component.ts","./src/app/components/modal-busqueda/modal-busqueda.component.html","./src/app/components/nuevo-sistema/nuevo-sistema.component.scss","./src/app/app.module.ts","./src/app/pages/seleccion-rol/seleccion-rol.component.ts","./src/app/components/modal-busqueda/modal-busqueda.component.ts","./src/app/pages/administracion/administracion.component.html","./src/app/components/modal-consulta-iniciativa/modal-consulta-iniciativa.component.ts","./src/app/pages/administracion/administracion.component.scss","./src/environments/environment.prod.ts","./src/app/components/modal-calendario/modal-calendario.component.ts","./src/app/components/equipo-trabajo/equipo-trabajo.component.ts","./src/app/pages/usuarios/add-usuarios/add-usuarios.component.scss","./src/app/components/administracion/calendario-visual/calendario-visual.component.css","./src/app/components/confirmacion/confirm.component.html","./src/app/components/shared/confirm-listado-iniciativas/confirm-listado-iniciativas.component.html","./src/app/services/auth-interceptor.service.ts","./src/app/components/administracion/motivos-iniciativa/motivos-iniciativa.component.css","./src/app/components/dialog-cambio-tipo-iniciativa/dialog-cambio-tipo-iniciativa.component.css","./src/app/components/modal-usuario-edicion/modal-usuario-edicion.component.html","./src/app/components/cambios-funcionalidades/cambios-funcionalidades.component.html","./src/app/components/shared/confirm/confirm.component.css","./src/app/components/dialog-asigna-enlace/dialog-asigna-enlace.component.ts","./src/app/components/shared/confirm-listado-iniciativas-admin/confirm-listado-iniciativas-admin.component.css","./src/app/components/modal-costeo-consulta/modal-costeo-consulta.component.html","./src/app/pages/mis-iniciativas/mis-iniciativas.component.html","./src/app/services/auth.service.ts","./src/app/pages/mis-iniciativas/mis-iniciativas.component.ts","./src/app/components/dialog-cambio-tipo-iniciativa/dialog-cambio-tipo-iniciativa.component.ts","./src/app/components/correccion-funcionalidades/correccion-funcionalidades.component.scss","./src/app/components/administracion/periodos-envio/periodos-envio.component.ts","./src/app/models/paginado.ts","./src/app/pages/portal/portal.component.html","./src/app/components/administracion/calendario-visual/calendario-visual.component.ts","./src/app/components/administracion/tabla-iniciativas/tabla-iniciativas.component.html","./src/app/components/shared/navbar/navbar.component.html","./src/app/components/modal-procedimiento-asis/modal-procedimiento.component.css","./src/app/components/shared/confirm-listado-iniciativas-admin/confirm-listado-iniciativas-admin.component.html","./src/app/components/costeo-proceso/costeo-proceso.component.html","./src/app/components/shared/footer/footer.component.scss","./src/app/components/cambios-funcionalidades/cambios-funcionalidades.component.scss","./src/app/pages/seleccion-rol/seleccion-rol.component.html","./src/app/components/modules/shared/shared.module.ts","./src/app/components/nuevo-sistema/nuevo-sistema.component.html","./src/app/components/equipo-trabajo/equipo-trabajo.component.css","./src/app/components/dialog-asigna-enlace/dialog-asigna-enlace.component.css","./src/app/components/dialog-cambio-tipo-iniciativa/dialog-cambio-tipo-iniciativa.component.html","./src/app/components/administracion/reportes/reportes.component.ts","./src/app/components/administracion/aplicaciones/aplicaciones.component.ts","./src/app/components/administracion/estructura/estructura.component.css","./src/app/pages/portal/portal.component.scss","./src/app/components/administracion/estructura/estructura.component.ts","./src/app/app-routing.module.ts","./src/app/components/modal-busqueda/modal-busqueda.component.scss","./src/app/components/administracion/enlaces/enlaces.component.css","./src/app/pages/seleccion-rol/seleccion-rol.component.css","./src/app/components/administracion/formatos-apoyo/formatos.component.css","./src/app/components/modal-iniciativa/modal-iniciativa.component.ts","./src/app/pages/usuarios/add-usuarios/add-usuarios.component.ts","./src/app/components/correccion-funcionalidades/correccion-funcionalidades.component.ts","./src/app/components/modal-priorizacion/modal-priorizacion.component.css","./src/app/components/administracion/periodos-envio/periodos-envio.component.html","./src/app/app.component.scss","./src/app/pages/login/login.component.html","./src/main.ts","./$_lazy_route_resource lazy namespace object"],"names":[],"mappings":"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BAAqB,qCAAqC,0RAA0R,E;;;;;;;;;;;ACAxiU;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2B;;;;;;;;;;;;ACjSA;AAAA;AAAA;AAAA;AAAA;AAAO,SAAS,yBAAyB;IACrC,OAAO,SAAS,QAAQ,CAAC,SAAoB;QACzC,IAAI,QAAQ,GAAG,CAAC,CAAC;QAEjB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,aAAG;YACvC,IAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAExC,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,EAAE;gBAChD,QAAQ,EAAE,CAAC;aACd;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,GAAG,CAAC,EAAE;YACd,OAAO;gBACH,gBAAgB,EAAE,IAAI;aACzB,CAAC;SACL;QAED,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;AACN,CAAC;AAGM,SAAS,yBAAyB,CAAC,GAAO;IAAP,6BAAO;IAC7C,IAAM,SAAS,GAAgB,UAAC,SAAoB;QAChD,IAAM,kBAAkB,GAAG,SAAS,CAAC,QAAQ;YAC7C,gCAAgC;aAC/B,GAAG,CAAC,iBAAO,IAAI,cAAO,CAAC,KAAK,EAAb,CAAa,CAAC;YAC9B,kCAAkC;aACjC,MAAM,CAAC,UAAC,IAAI,EAAE,IAAI,IAAK,WAAI,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAzB,CAAyB,EAAE,CAAC,CAAC,CAAC;QAEtD,gDAAgD;QAChD,OAAO,kBAAkB,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACtC,QAAQ,EAAE,IAAI;SACjB,CAAC;IACN,CAAC,CAAC;IAEF,OAAO,SAAS,CAAC;AACrB,CAAC;AAGM,SAAS,6BAA6B;IACzC,OAAO,SAAS,QAAQ,CAAC,SAAoB;QACzC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,aAAG;YACvC,IAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAExC,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,EAAE;gBAChD,KAAK,EAAE,CAAC;aACX;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,KAAK,GAAG,CAAC,EAAE;YACX,OAAO;gBACH,oBAAoB,EAAE,IAAI;aAC7B,CAAC;SACL;QAED,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;AACN,CAAC;AAGM,SAAS,uBAAuB;IACnC,OAAO,SAAS,QAAQ,CAAC,SAAoB;QACzC,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,aAAG;YACvC,IAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,EAAE;gBAChD,MAAM,EAAE,CAAC;aACZ;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,MAAM,GAAG,CAAC,EAAE;YACZ,OAAO;gBACH,cAAc,EAAE,IAAI;aACvB,CAAC;SACL;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;AACN,CAAC;;;;;;;;;;;;;AClFD;AAAe,wEAAS,mBAAmB,4BAA4B,KAAK,mBAAmB,2BAA2B,KAAK,yBAAyB,wBAAwB,mBAAmB,KAAK,kKAAkK,oBAAoB,KAAK,uCAAuC,4BAA4B,4BAA4B,KAAK,yBAAyB,4BAA4B,4BAA4B,KAAK,8BAA8B,4BAA4B,4BAA4B,KAAK,gBAAgB,4BAA4B,4BAA4B,KAAK,oCAAoC,2BAA2B,4BAA4B,KAAK,gBAAgB,sBAAsB,0BAA0B,2CAA2C,KAAK,gBAAgB,oBAAoB,qBAAqB,KAAK,0BAA0B,sBAAsB,0BAA0B,uCAAuC,sBAAsB,KAAK,oBAAoB,wBAAwB,KAAK,eAAe,sBAAsB,KAAK,+CAA+C,m8EAAm8E,E;;;;;;;;;;;;;;;;;;;;;ACAlqH;;;QAQxC,UAAK,GAAG,mBAAmB,CAAC;IAC9B,CAAC;IAFY,YAAY;QALxB,+DAAS,CAAC;YACT,QAAQ,EAAE,UAAU;YACpB,gFAAmC;;SAEpC,CAAC;OACW,YAAY,CAExB;IAAD,mBAAC;CAAA;AAFwB;;;;;;;;;;;;;ACPzB;AAAe,oFAAqB,mCAAmC,oFAAoF,KAAK,qBAAqB,2CAA2C,mBAAmB,KAAK,qBAAqB,2CAA2C,mBAAmB,KAAK,qBAAqB,oCAAoC,mBAAmB,KAAK,kGAAkG,ugCAAugC,E;;;;;;;;;;;;ACA1gD;AAAe,spBAAulB,6YAA6Y,4DAA4D,y9DAAy9D,sIAAsI,0BAA0B,kLAAkL,mBAAmB,aAAa,UAAU,kGAAkG,uLAAuL,ofAAof,yGAAyG,YAAY,mUAAmU,E;;;;;;;;;;;;;;;;;;;;;;;;ACAzgJ;AACqB;AAEzB;AACL;;IAuBrD,sCAAoB,WAAwB,EACnC,MAAgB,EAAiC,KAAS;QAD/C,gBAAW,GAAX,WAAW,CAAa;QACnC,WAAM,GAAN,MAAM,CAAU;QAAiC,UAAK,GAAL,KAAK,CAAI;QAbrE,wBAAmB,GAAkB,EAAE,CAAC;QACxC,4BAAuB,GAAkB,EAAE,CAAC;QAC5C,UAAK,GAAkB,EAAE,CAAC;QAI1B,SAAI,GAAG,CAAC,eAAe,CAAC,CAAC;QACzB,iBAAY,GAAG,IAAI,0DAAW,CAAC,CAAC,CAAC,CAAC;QAClC,oBAAe,GAAQ,CAAC,CAAC;QACzB,gBAAW,GAAQ,EAAE,CAAC;IAKnB,CAAC;IAEF,+CAAQ,GAAR;QACE,IAAI,CAAC,YAAY,GAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACxC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAC,CAAC,CAAC,CAAC;QAGvD,IAAI,CAAC,YAAY,GAAE,IAAI,wDAAS,CAAC;YAC/B,UAAU,EAAC,IAAI,0DAAW,CAAC,EAAE,CAAC;YAC9B,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAClC,cAAc,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YACnC,qBAAqB,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAC1C,cAAc,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YACnC,4BAA4B,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YACjD,4BAA4B,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YACjD,4BAA4B,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YACjD,4BAA4B,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YACjD,yBAAyB,EAAG,IAAI,0DAAW,CAAC,EAAE,CAAC;YAC/C,yBAAyB,EAAG,IAAI,0DAAW,CAAC,EAAE,CAAC;YAC/C,wBAAwB,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAC7C,wBAAwB,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;SAE9C,CAAC;IAEJ,CAAC;IAGH,4CAA4C;IAC5C,yDAAkB,GAAlB,UAAmB,aAAoB,EAAE,UAAiB;QAA1D,iBAuDC;QArDC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,aAAa,EAAC,UAAU,CAAC,CAAC,SAAS,CAAC,cAAI;YACtE,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,EAC9B;gBACE,IAAI,WAAW,GAAY,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;gBACtD,KAAI,CAAC,YAAY,CAAC,UAAU,CAAC;oBAC3B,UAAU,EAAC,WAAW,CAAC,UAAU;oBACjC,cAAc,EAAC,WAAW,CAAC,cAAc;oBACzC,qBAAqB,EAAC,WAAW,CAAC,qBAAqB;oBACvD,cAAc,EAAC,WAAW,CAAC,cAAc;oBACzC,4BAA4B,EAAC,WAAW,CAAC,4BAA4B;oBACrE,4BAA4B,EAAC,WAAW,CAAC,4BAA4B;oBACrE,4BAA4B,EAAC,WAAW,CAAC,4BAA4B;oBACrE,4BAA4B,EAAC,WAAW,CAAC,4BAA4B;oBACrE,yBAAyB,EAAC,WAAW,CAAC,yBAAyB;oBAC/D,yBAAyB,EAAC,WAAW,CAAC,yBAAyB;oBAC/D,wBAAwB,EAAC,WAAW,CAAC,wBAAwB;oBAC7D,wBAAwB,EAAC,WAAW,CAAC,wBAAwB;iBAC9D,CAAC;aACH;YACD,KAAI,CAAC,KAAK,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;YAClD,6BAA6B;YAC7B,IAAG,IAAI,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,EACzC;gBACE,KAAkB,UAAU,EAAV,UAAI,CAAC,KAAK,EAAV,cAAU,EAAV,IAAU,EAC5B;oBADI,IAAI,MAAM;oBAEZ,IAAG,MAAM,CAAC,0BAA0B,IAAE,CAAC,EACvC;wBACI,KAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBAC7C;yBACG;wBACF,KAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBACvC;iBACF;aAEF;YACD,KAAI,CAAC,WAAW,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;YAClD;;iBAEK;YACL,sCAAsC;YACtC,KAAkB,UAAgB,EAAhB,UAAI,CAAC,WAAW,EAAhB,cAAgB,EAAhB,IAAgB,EAClC;gBADI,IAAI,MAAM;gBAEZ,KAAI,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAiB,KAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,CAAC;aACzD;YAED,8DAA8D;YAC9D,IAAG,KAAI,CAAC,WAAW,CAAC,MAAM,IAAE,CAAC,EAC7B;gBACE,KAAI,CAAC,SAAS,CAAC,KAAI,CAAC,IAAI,CAAC,MAAM,GAAC,CAAC,CAAC,CAAC;aACpC;YACD,yBAAyB;YACzB,qCAAqC;QACzC,CAAC,CAAC,CAAC;IACH,CAAC;IAEC,eAAe;IACf,gDAAS,GAAT,UAAU,KAAa;QAErB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED,2CAA2C;IAC3C,iDAAU,GAAV,UAAW,IAAW;QAAtB,iBAqDC;QAnDC,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC;QAC1B,6CAA6C;QAC7C,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,GAAC,EAAE,CAAC;QACd,IAAI,CAAC,uBAAuB,GAAC,EAAE,CAAC;QAChC,IAAI,CAAC,mBAAmB,GAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAC,OAAO,EAAE,KAAK;YACvC,IAAG,IAAI,IAAE,KAAK,EACd;gBACC,KAAI,CAAC,WAAW,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAI,CAAC,YAAY,CAAC,EAAC,OAAO,CAAC,CAAC,SAAS,CAAC,cAAI;oBACjF,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,EAC9B;wBACE,IAAI,WAAW,GAAY,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;wBACtD,KAAI,CAAC,YAAY,CAAC,UAAU,CAAC;4BAC3B,UAAU,EAAC,WAAW,CAAC,UAAU;4BACjC,cAAc,EAAC,WAAW,CAAC,cAAc;4BACzC,qBAAqB,EAAC,WAAW,CAAC,qBAAqB;4BACvD,cAAc,EAAC,WAAW,CAAC,cAAc;4BACzC,4BAA4B,EAAC,WAAW,CAAC,4BAA4B;4BACrE,4BAA4B,EAAC,WAAW,CAAC,4BAA4B;4BACrE,4BAA4B,EAAC,WAAW,CAAC,4BAA4B;4BACrE,4BAA4B,EAAC,WAAW,CAAC,4BAA4B;4BACrE,yBAAyB,EAAC,WAAW,CAAC,yBAAyB;4BAC/D,yBAAyB,EAAC,WAAW,CAAC,yBAAyB;4BAC/D,wBAAwB,EAAC,WAAW,CAAC,wBAAwB;4BAC7D,wBAAwB,EAAC,WAAW,CAAC,wBAAwB;yBAC9D,CAAC;qBACH;oBAED,KAAI,CAAC,KAAK,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;oBAClD,6BAA6B;oBAC7B,IAAG,IAAI,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,EACzC;wBACE,KAAkB,UAAU,EAAV,UAAI,CAAC,KAAK,EAAV,cAAU,EAAV,IAAU,EAC5B;4BADI,IAAI,MAAM;4BAEZ,IAAG,MAAM,CAAC,0BAA0B,IAAE,CAAC,EACvC;gCACI,KAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;6BAC7C;iCACG;gCACF,KAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;6BACvC;yBACF;qBAEF;gBAEH,CAAC,CAAC,CAAC;aACH;QAEF,CAAC,CAAC,CAAC;IAEP,CAAC;;gBA5KM,yEAAW;gBAFM,kEAAS;gDA2BN,oDAAM,SAAC,wEAAe;;IAdtC,4BAA4B;QALxC,+DAAS,CAAC;YACT,QAAQ,EAAE,2BAA2B;YACrC,kGAAqD;;SAEtD,CAAC;uFAciC,yEAAW;YAC5B,kEAAS;OAdd,4BAA4B,CAmKxC;IAAD,mCAAC;CAAA;AAnKwC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACd8C;AAClB;AACT;AACT;AACV;AAC0B;AACvB;;IAiE1C,4CAAmB,MAAgB,EACzB,WAAwB,EACxB,QAAyB,EACzB,IAAY,EACZ,MAAc,EACd,EAAe,EAEN,IAAY;QAPZ,WAAM,GAAN,MAAM,CAAU;QACzB,gBAAW,GAAX,WAAW,CAAa;QACxB,aAAQ,GAAR,QAAQ,CAAiB;QACzB,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QACd,OAAE,GAAF,EAAE,CAAa;QAEN,SAAI,GAAJ,IAAI,CAAQ;QA7D/B,4BAAuB,GAAS,KAAK,CAAC;QACtC,wBAAmB,GAAS,KAAK,CAAC;QAClC,8BAAyB,GAAS,KAAK,CAAC;QACxC,8BAAyB,GAAS,KAAK,CAAC;QACxC,uBAAkB,GAAS,KAAK,CAAC;QACjC,+BAA0B,GAAS,KAAK,CAAC;QACzC,qBAAgB,GAAS,KAAK,CAAC;QAC/B,uBAAkB,GAAS,KAAK,CAAC;QAKjC,mBAAc,GAAO,EAAE,CAAC;QACxB,wBAAmB,GAAO,EAAE,CAAC;QAE7B,mBAAc,GAAO,EAAE,CAAC;QAcxB,qBAAgB,GAAO,EAAE,CAAC;QAC1B,6BAAwB,GAAO,EAAE,CAAC;QAClC,8BAAyB,GAAO,EAAE,CAAC;QACnC,gBAAW,GAAO,EAAE,CAAC;QACrB,oBAAe,GAAO,EAAE,CAAC;QACzB,QAAG,GAAS,KAAK,CAAC;QAKlB,mBAAc,GAAS,KAAK,CAAC;QAC7B,qDAAqD;QACrD,sBAAiB,GAA2D,EAAE,CAAC;QAC/E,sBAAiB,GAAS,KAAK,CAAC;QAGhC,qBAAqB;QACrB,oBAAe,GAAc,IAAI,wDAAS,CAAC,EAAE,CAAC,CAAC;QAC/C,wCAAwC;QACxC,eAAU,GAAG,IAAI,0DAAW,EAAE,CAAC;QAC/B,eAAU,GAAG,IAAI,0DAAW,EAAE,CAAC;QAc3B,kBAAkB;QACpB,IAAI,CAAC,eAAe,GAAC,EAAE,CAAC,KAAK,CAAC;YAC5B,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACvC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SACxC,CAAC;IAEJ,CAAC;IAID,qDAAQ,GAAR;QACE,sBAAsB;QACtB,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YAAC,IAAI,CAAC,0BAA0B,GAAC,IAAI,CAAC;YACpC,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;SACzD;QACD,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YAAC,IAAI,CAAC,uBAAuB,GAAC,IAAI,CAAC;SAAC;QACpC,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YAAC,IAAI,CAAC,mBAAmB,GAAC,IAAI,CAAC;YAC7B,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAClC,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,GAAC,EAAE,CAAC;SACd;QACD,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YAAC,IAAI,CAAC,yBAAyB,GAAC,IAAI,CAAC;YACnC,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACzC;QACD,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YAAC,IAAI,CAAC,kBAAkB,GAAC,IAAI,CAAC;YAC5B,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACzC;QACD,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YAAC,IAAI,CAAC,yBAAyB,GAAC,IAAI,CAAC;YACnC,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACzC;QACD,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YAAC,IAAI,CAAC,gBAAgB,GAAC,IAAI,CAAC;YAC1B,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;SACzD;QACD,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,EAAE,EAC1B;YACE,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,kBAAkB,GAAC,IAAI,CAAC;YAC7B,IAAI,CAAC,IAAI,GAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAChC,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,OAAO,GAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,EAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtF,IAAI,CAAC,IAAI,GAAC,EAAE,CAAC;SACd;IACH,CAAC;IAED,6BAA6B;IAC7B,wDAAW,GAAX;QAEE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED,yDAAY,GAAZ,UAAa,KAAU;QAErB,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE;YAC5C,QAAI,GAAI,KAAK,CAAC,MAAM,CAAC,KAAK,GAAtB,CAAuB;YAClC,IAAI,CAAC,OAAO,GAAC,IAAI,CAAC;YAClB,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC;YAC1D,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC;SAC9B;IACH,CAAC;IAED,yDAAY,GAAZ,UAAa,KAAS;QAAtB,iBAWD;QAVG,IAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,IAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAChC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC;QAC1D,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC;QAC7B,MAAM,CAAC,MAAM,GAAG;YACZ,KAAI,CAAC,WAAW,GAAC,MAAM,CAAC,MAAM,CAAC;YAC/B,IAAI,IAAI,GAAC,KAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACrC,KAAI,CAAC,WAAW,GAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC,CAAC;IACN,CAAC;IAGC,mDAAmD;IACnD,6DAAgB,GAAhB;QAAA,iBAYC;QAVC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,cAAI;YAClE,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,KAAI,CAAC,eAAe,CAAC,OAAO,CAAC,iBAAO;gBAClC,IAAG,OAAO,CAAC,uBAAuB,CAAC,IAAE,IAAI,IAAI,OAAO,CAAC,4BAA4B,CAAC,IAAE,IAAI,EACxF;oBACE,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBAEhC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAGD,oEAAoE;IACpE,uEAA0B,GAA1B;QAAA,iBAoBC;QAlBC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,cAAI;YAClE,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,KAAI,CAAC,eAAe,CAAC,OAAO,CAAC,iBAAO;gBAClC,IAAG,OAAO,CAAC,uBAAuB,CAAC,IAAE,IAAI,IAAI,OAAO,CAAC,4BAA4B,CAAC,IAAE,IAAI,EACxF;oBACE,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,KAAI,CAAC,GAAG,IAAI,OAAO,CAAC,eAAe,CAAC,IAAE,KAAI,CAAC,KAAK,EACtE;wBACI,yBAAyB;qBAC5B;yBACG;wBACF,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBAChC;iBACF;YAEH,CAAC,CAAC,CAAC;QAEL,CAAC,CAAC,CAAC;IAEL,CAAC;IAGD,mEAAsB,GAAtB,UAAuB,EAAS;QAAhC,iBAmCC;QAjCC,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,SAAS,CAChD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAChB;gBACE,KAAI,CAAC,mBAAmB,GAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACtC,KAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,iBAAO;oBACtC,IAAG,OAAO,CAAC,WAAW,CAAC,IAAE,CAAC,IAAI,OAAO,CAAC,WAAW,CAAC,IAAE,CAAC,IAAI,OAAO,CAAC,WAAW,CAAC,IAAE,EAAE,EACjF;qBAEC;yBAAI;wBACH,KAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBAEnC;gBAEH,CAAC,CAEA,CAAC;gBAGF,2CAA2C;aAC5C;iBACG;aACH;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,mGAAmG,CACpG,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,sCAAsC;IACtC,0DAAa,GAAb;QACE,IAAI,CAAC,iBAAiB,GAAC,IAAI,CAAC;IAC9B,CAAC;IAGD,mEAAsB,GAAtB,UAAuB,EAAS;QAAhC,iBAoBC;QAlBC,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,SAAS,CAChD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAChB;gBACE,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAClC;iBACG;aACH;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,oGAAoG,CACrG,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,qEAAwB,GAAxB,UAAyB,EAAS,EAAE,KAAY,EAAC,GAAU;QAA3D,iBAyCC;QAvCC,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,EAAE,KAAK,EAAC,GAAG,CAAC,CAAC,SAAS,CAC7D,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAChB;gBACE,KAAI,CAAC,gBAAgB,GAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnC,uBAAuB;gBACvB,IAAG,KAAI,CAAC,gBAAgB,CAAC,MAAM,IAAE,CAAC,EAClC;oBACE,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;iBAC1B;gBACD,oBAAoB;qBAChB;oBACA,KAAa,UAAqB,EAArB,UAAI,CAAC,gBAAgB,EAArB,cAAqB,EAArB,IAAqB,EAClC;wBADI,IAAI,CAAC;wBAEP,QAAQ;wBACR,IAAG,CAAC,CAAC,yBAAyB,CAAC,IAAE,KAAK,EACtC;4BACE,KAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBACvC,YAAW;6BACR;4BACF,KAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBACxC;qBAEF;iBAEJ;aACF;iBACG;aACH;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,sGAAsG,CACvG,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAGD,qCAAqC;IACrC,8DAAiB,GAAjB;QAAA,iBAuEC;QApEC,IAAI,YAAY,GAAC,EAAE,CAAC;QACpB,IAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EACvD;YACE,KAAgB,UAAoD,EAApD,SAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAApD,cAAoD,EAApD,IAAoD,EACpE;gBADK,IAAI,GAAG;gBAEV,IAAI,KAAK,GAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC/B,IAAI,GAAG,GAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACtB,IAAI,OAAO,GACX;oBACE,2BAA2B,EAAC,KAAK;oBACjC,QAAQ,EAAC,GAAG;iBACb;gBACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACtC;YACA,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SACxD;QAGD,IAAI,KAAK,GAAC;YACR,eAAe,EAAC,IAAI,CAAC,aAAa;YAClC,wBAAwB,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,KAAK;YAC3E,yBAAyB,EAAC,IAAI,CAAC,KAAK;YACpC,mBAAmB,EAAC,YAAY;YAChC,QAAQ,EAAC,IAAI,CAAC,GAAG;YACjB,0BAA0B,EAAE,IAAI,CAAC,aAAa;SAC/C;QAED,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,SAAS,CAClD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,aAAa,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;gBACpD,IAAG,KAAI,CAAC,aAAa,EACrB;oBACE,oBAAoB;oBACpB,KAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,KAAI,CAAC,OAAO,EAAC,KAAI,CAAC,aAAa,EAAC,KAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CACpG,cAAI;wBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;4BACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,mCAAmC,CACpC,CAAC;yBAAC;oBACP,CAAC,EACD,eAAK;wBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,kHAAkH,CACnH,CAAC;oBACJ,CAAC,CACF;iBAAC;qBACA;oBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,mCAAmC,CACpC,CAAC;iBACH;aACF;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,kHAAkH,CACnH,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAED,4DAAe,GAAf;QAAA,iBAkDC;QA/CD,IAAI,KAAK,GAAC;YACN,eAAe,EAAC,IAAI,CAAC,aAAa;YAClC,WAAW,EAAC,IAAI,CAAC,KAAK;YACtB,eAAe,EAAC,IAAI,CAAC,IAAI;YACzB,cAAc,EAAC,IAAI,CAAC,GAAG;SACxB;QAED,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC,SAAS,CAC1D,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,IAAG,KAAI,CAAC,aAAa,EACrB;oBACE,oBAAoB;oBACpB,KAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,KAAI,CAAC,WAAW,EAAC,KAAI,CAAC,aAAa,EAAC,KAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CAC3G,cAAI;wBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;4BACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,kCAAkC,CACnC,CAAC;4BACF,KAAI,CAAC,QAAQ,GAAC,IAAI,CAAC;4BACnB,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAA1C,CAA0C,CAAC,CAAC;yBACjE;oBACH,CAAC,EACD,eAAK;wBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,+GAA+G,CAChH,CAAC;oBACJ,CAAC,CACF;iBACF,2BAA0B;aAG5B,iBAAgB;QACnB,CAAC,EAAC,aAAa;QACf,UADE,aAAa;QACf,KAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,8GAA8G,CAC/G,CAAC;QACJ,CAAC,CACF,CAAC,kBAAiB;IACrB,CAAC,kBAAgB;IAKjB,6DAAgB,GAAhB,UAAiB,OAAc,EAAC,aAAoB;QAApD,iBA0BC;QAxBC,IAAI,CAAC,WAAW,CAAC,2BAA2B,CAAC,IAAI,CAAC,aAAa,EAAC,OAAO,EAAC,aAAa,CAAC,CAAC,SAAS,CAAC,aAAG;YAClG,qEAAqE;YACrE,8EAA8E;YAC9E,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,KAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1E,yEAAyE;YACzE,4CAA4C;YAC5C,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBACzD,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC3C,OAAO;aACR;YACD,IAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;YACxB,oGAAoG;YACpG,IAAI,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAE/F,UAAU,CAAC;gBACT,wEAAwE;gBACxE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBACjC,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,CAAC,EAAE,GAAG,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;IAEL,CAAC;IAEO,+DAAkB,GAA1B,UAA2B,OAAe;QACxC,IAAI,WAAmB,CAAC;QACxB,IAAI,SAAS,GAAW,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QAEjD,QAAQ,SAAS,EAAE;YACjB,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,0BAA0B,CAAC;gBACzC,MAAM;YACR,KAAK,MAAM;gBACT,WAAW,GAAG,mEAAmE,CAAC;gBAClF,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,8BAA8B,CAAC;gBAC7C,MAAM;YAER;gBACE,WAAW,GAAG,YAAY,CAAC;gBAC3B,MAAM;SACT;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAGD,4CAA4C;IAC5C,4DAAe,GAAf;QAAA,iBAWC;QATC,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,SAAS,CACjD,cAAI;YACF,KAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YAClC,KAAI,CAAC,WAAW,CAAC,KAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,uCAAuC;IACvC,wDAAW,GAAX,UAAY,GAAG;QAEd,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAC1C;YACE,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAChC;gBACE,IAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,IAAE,GAAG,EACpC;oBACE,IAAI,CAAC,SAAS,GAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;iBACpD;aAEF;SACF;aAAM,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;SAChD;IACJ,CAAC;;gBAvhByB,kEAAS;gBAC1B,yEAAW;gBACX,gEAAe;gBAHY,oDAAM;gBAIjC,sDAAM;gBACgB,0DAAW;6CAwE3B,oDAAM,SAAC,wEAAe;;;mCA3ClC,uDAAS,SAAC,kBAAkB,EAAC,EAAC,MAAM,EAAC,KAAK,EAAC;;IAlBjC,kCAAkC;QAL9C,+DAAS,CAAC;YACT,QAAQ,EAAE,iCAAiC;YAC3C,wGAA2D;;SAE5D,CAAC;uFAwD0B,kEAAS;YACZ,yEAAW;YACd,gEAAe;YACnB,oDAAM;YACJ,sDAAM;YACV,0DAAW;OA5Dd,kCAAkC,CA0gB9C;IAAD,yCAAC;CAAA;AA1gB8C;;;;;;;;;;;;;AChB/C;AAAe,+LAAgI,8CAA8C,iRAAiR,E;;;;;;;;;;;;ACA9c;AAAe,6aAA8W,E;;;;;;;;;;;;ACA7X;AAAe,+GAAgD,mBAAmB,gBAAgB,kBAAkB,KAAK,uDAAuD,yBAAyB,sBAAsB,mBAAmB,gBAAgB,kBAAkB,KAAK,qBAAqB,iCAAiC,KAAK,2BAA2B,gCAAgC,KAAK,iBAAiB,uBAAuB,uBAAuB,sDAAsD,KAAK,kBAAkB,yBAAyB,wBAAwB,uBAAuB,sDAAsD,KAAK,gBAAgB,oBAAoB,OAAO,oBAAoB,iCAAiC,qBAAqB,WAAW,mBAAmB,iCAAiC,qBAAqB,yBAAyB,wDAAwD,OAAO,mCAAmC,kCAAkC,wBAAwB,OAAO,WAAW,sBAAsB,OAAO,+CAA+C,mtEAAmtE,E;;;;;;;;;;;;ACAl1G;AAAe,wqBAAymB,0DAA0D,yJAAyJ,uDAAuD,sJAAsJ,oDAAoD,yJAAyJ,uDAAuD,uJAAuJ,sDAAsD,6JAA6J,uDAAuD,6JAA6J,uDAAuD,6JAA6J,sDAAsD,wJAAwJ,uDAAuD,gKAAgK,wDAAwD,4JAA4J,0DAA0D,0JAA0J,yDAAyD,4JAA4J,yDAAyD,gaAAga,67DAA67D,6BAA6B,mYAAmY,uBAAuB,4XAA4X,8BAA8B,sTAAsT,+BAA+B,uXAAuX,8BAA8B,kTAAkT,sCAAsC,yVAAyV,iCAAiC,gRAAgR,kCAAkC,8PAA8P,oCAAoC,yQAAyQ,6DAA6D,8TAA8T,wDAAwD,4TAA4T,0CAA0C,4KAA4K,mEAAmE,mVAAmV,2CAA2C,m2CAAm2C,sCAAsC,8BAA8B,qQAAqQ,yCAAyC,gPAAgP,kEAAkE,sUAAsU,6CAA6C,4QAA4Q,mDAAmD,sUAAsU,qCAAqC,iaAAia,yJAAyJ,sBAAsB,8BAA8B,wTAAwT,kVAAkV,yMAAyM,gKAAgK,sBAAsB,6BAA6B,0TAA0T,8pBAA8pB,iKAAiK,sBAAsB,6BAA6B,sTAAsT,6gBAA6gB,gOAAgO,0bAA0b,iNAAiN,E;;;;;;;;;;;;ACAx+iB;AAAe,uFAAwB,mBAAmB,mBAAmB,GAAG,6CAA6C,2WAA2W,E;;;;;;;;;;;;;;;;;;;;;;ACA/a;AACY;;IAUnE,0BAAmB,MAAgB,EAEhB,OAAe;QAFf,WAAM,GAAN,MAAM,CAAU;QAEhB,YAAO,GAAP,OAAO,CAAQ;QAJpC,4BAAuB,GAAS,KAAK,CAAC;IAKvB,CAAC;IAEd,mCAAQ,GAAR;IACA,CAAC;IAED,6BAA6B;IAC7B,sCAAW,GAAX;QAEE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;;gBAtBuB,kEAAS;6CAWpB,oDAAM,SAAC,wEAAe;;IAJxB,gBAAgB;QAL5B,+DAAS,CAAC;YACT,QAAQ,EAAE,aAAa;YACvB,oFAAuC;;SAExC,CAAC;uFAI0B,kEAAS;OAHxB,gBAAgB,CAiB5B;IAAD,uBAAC;CAAA;AAjB4B;;;;;;;;;;;;;;;;;;;;;;;;;;ACRwD;AAChB;AACF;AACP;AACT;AACP;;IAsG1C,iDACO,IAAY,EAEX,WAAwB,EACxB,QAAyB,EAAU,EAAe,EAAS,EAAe;QAH3E,SAAI,GAAJ,IAAI,CAAQ;QAEX,gBAAW,GAAX,WAAW,CAAa;QACxB,aAAQ,GAAR,QAAQ,CAAiB;QAAU,OAAE,GAAF,EAAE,CAAa;QAAS,OAAE,GAAF,EAAE,CAAa;QAjGlF,uBAAkB,GAAS,KAAK,CAAC;QAOjC,sBAAiB,GAAS,KAAK,CAAC;QAEhC,yBAAyB;QACzB,yBAAoB,GAAS,KAAK,CAAC;QACnC,0BAAqB,GAAS,KAAK,CAAC;QACpC,yBAAoB,GAAS,KAAK,CAAC;QAMnC,gBAAW,GAAO,EAAE,CAAC;QACrB,oBAAe,GAAO,EAAE,CAAC;QACzB,4BAAuB,GAAO,EAAE;QAChC,aAAQ,GAAO,EAAE;QACjB,UAAK,GAAO,EAAE;QACd,kBAAa,GAAO,EAAE;QAEtB,qBAAgB,GAAO,EAAE,CAAC;QAC1B,uBAAkB,GAAO,EAAE,CAAC;QAC5B,6BAAwB,GAAO,EAAE,CAAC;QAClC,8BAAyB,GAAO,EAAE,CAAC;QAInC,+BAA0B,GAAS,KAAK,CAAC;QACzC,mBAAc,GAAO,EAAE,CAAC;QAGxB,yBAAoB,GAAS,KAAK,CAAC;QAEnC,mBAAmB;QACnB,oBAAe,GAAO,EAAE,CAAC;QACzB,iBAAY,GAAO,EAAE,CAAC;QAEtB,4BAAuB,GAAO,EAAE,CAAC;QACjC,2BAAsB,GAAO,EAAE,CAAC;QAChC,wBAAmB,GAAO,EAAE,CAAC;QAE7B,iBAAY,GAAS,KAAK,CAAC;QAC3B,gBAAW,GAAS,KAAK,CAAC;QAC1B,eAAU,GAAS,KAAK,CAAC;QACzB,YAAO,GAAS,KAAK,CAAC;QAKtB,gCAA2B,GAAS,KAAK,CAAC;QAC1C,kCAA6B,GAAS,KAAK,CAAC;QAC5C,iCAA4B,GAAS,KAAK,CAAC;QAC3C,2BAAsB,GAAS,KAAK,CAAC;QAErC,0BAAqB,GAAS,KAAK,CAAC;QAapC,qDAAqD;QACrD,sBAAiB,GAA2D,EAAE,CAAC;QAG/E,cAAS,GAAQ,CAAC,CAAC;QACnB,oBAAe,GAAQ,CAAC,CAAC;QACzB,mBAAc,GAAS,KAAK,CAAC;QAC7B,eAAU,GAAS,KAAK,CAAC;QAGzB,qBAAqB;QACrB,oBAAe,GAAc,IAAI,wDAAS,CAAC,EAAE,CAAC,CAAC;QAC/C,wCAAwC;QACxC,eAAU,GAAG,IAAI,0DAAW,EAAE,CAAC;QAC/B,eAAU,GAAG,IAAI,0DAAW,EAAE,CAAC;QAG/B,SAAI,GAAc,IAAI,wDAAS,CAAC,EAAE,CAAC,CAAC;QAUlC,IAAM,GAAG,GAAG,mEAAmE,CAAC;QAChF,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC;YACnB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;SAC1D,CAAC;QAEF,kBAAkB;QAClB,IAAI,CAAC,eAAe,GAAC,EAAE,CAAC,KAAK,CAAC;YAC5B,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACvC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SACxC,CAAC;IACJ,CAAC;IAED,sBAAI,sDAAC;aAAL;YACE,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC5B,CAAC;;;OAAA;IAKD,0DAAQ,GAAR;QACE,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,EAAE,EAC1B;YAAE,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,kBAAkB,GAAC,IAAI,CAAC;YAC7B,IAAI,CAAC,IAAI,GAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAChC,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5B,IAAI,CAAC,UAAU,GAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACxC,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,mCAAmC;YACnC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,aAAa,EAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;YACvE,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,GAAC,EAAE,CAAC;SACd;QAED,4CAA4C;QAC5C,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YACE,IAAI,CAAC,oBAAoB,GAAC,IAAI,CAAC;YAC/B,IAAI,CAAC,IAAI,GAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAChC,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,IAAI,GAAC,EAAE,CAAC;SACd;QAED,0DAA0D;QAC1D,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YAAC,IAAI,CAAC,qBAAqB,GAAC,IAAI,CAAC;YAC/B,IAAI,CAAC,gBAAgB,GAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACpD,IAAI,CAAC,IAAI,GAAC,EAAE,CAAC;SACd;QAED,oBAAoB;QACpB,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YAAC,IAAI,CAAC,0BAA0B,GAAC,IAAI,CAAC;YACpC,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;SACzD;QAED,8CAA8C;QAC9C,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YACE,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,eAAe,GAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,oBAAoB,GAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC5D,IAAI,CAAC,cAAc,GAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAChD,mCAAmC;YACnC,IAAG,IAAI,CAAC,oBAAoB,EAC5B;gBACE,IAAI,CAAC,2BAA2B,GAAC,IAAI,CAAC;gBACtC,wBAAwB;gBACxB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;aACzD;iBACG;gBACF,IAAI,CAAC,oBAAoB,GAAC,IAAI,CAAC;gBAC/B,IAAI,CAAC,iBAAiB,EAAE,CAAC;aAC1B;SACF;QAGD,6CAA6C;QAC7C,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YACE,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,eAAe,GAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,oBAAoB,GAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC5D,IAAI,CAAC,6BAA6B,GAAC,IAAI,CAAC;YACxC,IAAI,CAAC,sBAAsB,EAAE,CAAC;SAC/B;QAED,2CAA2C;QAC3C,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YACE,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,eAAe,GAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,oBAAoB,GAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC5D,IAAI,CAAC,4BAA4B,GAAC,IAAI,CAAC;YACvC,IAAI,CAAC,sBAAsB,EAAE,CAAC;SAC/B;QAGD,6BAA6B;QAC7B,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YACE,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,eAAe,GAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,cAAc,GAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAChD,mCAAmC;YACnC,IAAG,IAAI,CAAC,cAAc,EACtB;gBACE,IAAI,CAAC,qBAAqB,GAAC,IAAI,CAAC;gBAChC,wBAAwB;gBACxB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aACnD;SAEF;QAGD,qCAAqC;QACrC,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YACE,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9B,IAAI,CAAC,eAAe,GAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,cAAc,GAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAChD,IAAI,CAAC,sBAAsB,GAAC,IAAI,CAAC;SAClC;QAED,gDAAgD;QAChD,IAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAE,CAAC,EACzB;YACE,IAAI,CAAC,oBAAoB,GAAC,IAAI,CAAC;YAC/B,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,eAAe,GAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,CAAC,4BAA4B,EAAE,CAAC;YACpC,IAAI,CAAC,IAAI,GAAC,EAAE,CAAC;SACd;IAEH,CAAC;IAID,sCAAsC;IACtC,+DAAa,GAAb;QACE,IAAI,CAAC,iBAAiB,GAAC,IAAI,CAAC;IAC9B,CAAC;IAED,qCAAqC;IACrC,mEAAiB,GAAjB;QAAA,iBAkEC;QAhEC,IAAI,YAAY,GAAC,EAAE,CAAC;QACpB,IAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EACvD;YACE,KAAgB,UAAoD,EAApD,SAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,EAApD,cAAoD,EAApD,IAAoD,EACpE;gBADK,IAAI,GAAG;gBAEV,IAAI,KAAK,GAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC/B,IAAI,GAAG,GAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACtB,IAAI,OAAO,GACX;oBACE,2BAA2B,EAAC,KAAK;oBACjC,QAAQ,EAAC,GAAG;iBACb;gBACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACtC;YACA,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SACxD;QAED,IAAI,KAAK,GAAC;YACR,eAAe,EAAC,IAAI,CAAC,aAAa;YAClC,wBAAwB,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,KAAK;YAC3E,yBAAyB,EAAC,IAAI,CAAC,KAAK;YACpC,mBAAmB,EAAC,YAAY;YAChC,QAAQ,EAAC,IAAI,CAAC,GAAG;YACjB,0BAA0B,EAAE,IAAI,CAAC,aAAa;SAC/C;QACF,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,SAAS,CACjD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,aAAa,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;gBACpD,IAAG,KAAI,CAAC,aAAa,EACrB;oBACE,oBAAoB;oBACpB,KAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,KAAI,CAAC,OAAO,EAAC,KAAI,CAAC,aAAa,EAAC,KAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CACpG,cAAI;wBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;4BACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,mCAAmC,CACpC,CAAC;yBAAC;oBACP,CAAC,EACD,eAAK;wBACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,kHAAkH,CACnH,CAAC;oBACJ,CAAC,CACF;iBAAC;qBACA;oBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,mCAAmC,CACpC,CAAC;iBACH;aACF;QACH,CAAC,EACD,eAAK;YACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,kHAAkH,CACnH,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAED,2BAA2B;IAC3B,0EAAwB,GAAxB,UAAyB,EAAS,EAAE,KAAY,EAAC,GAAU;QAA3D,iBAwCC;QAtCC,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,EAAE,EAAE,KAAK,EAAC,GAAG,CAAC,CAAC,SAAS,CAC7D,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAChB;gBACE,KAAI,CAAC,gBAAgB,GAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnC,uBAAuB;gBACvB,IAAG,KAAI,CAAC,gBAAgB,CAAC,MAAM,IAAE,CAAC,EAClC;oBACE,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;iBAC1B;gBACD,oBAAoB;qBAChB;oBACA,KAAa,UAAqB,EAArB,UAAI,CAAC,gBAAgB,EAArB,cAAqB,EAArB,IAAqB,EAClC;wBADI,IAAI,CAAC;wBAEP,QAAQ;wBACR,IAAG,CAAC,CAAC,yBAAyB,CAAC,IAAE,KAAK,EACtC;4BACE,KAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBACvC,YAAW;6BACR;4BACF,KAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;yBACxC;qBAEF;iBAEJ;aACF;iBACG;aACH;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,sGAAsG,CACvG,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAED,8DAA8D;IAC9D,yEAAuB,GAAvB,UAAwB,EAAS;QAAjC,iBA2CC;QAzCC,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,SAAS,CACpD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBAEE,8BAA8B;gBAC9B,KAAI,CAAC,WAAW,CAAC,8BAA8B,CAAC,KAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CAC3E,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBAEE,KAAI,CAAC,sBAAsB,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;wBAC7D,KAAI,CAAC,WAAW,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;qBAC/C;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,kHAAkH,CACnH,CAAC;gBACJ,CAAC,CACF,CAAC;gBACF,KAAI,CAAC,sBAAsB,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,mCAAmC,CAAC,CAAC;aAClF;iBACG;aAEH;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,oGAAoG,CACrG,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,oDAAoD;IACpD,gFAA8B,GAA9B;QAAA,iBAiCC;QA9BC,IAAI,OAAO,GAAC;YACV,eAAe,EAAC,IAAI,CAAC,aAAa;YAClC,wBAAwB,EAAG,IAAI,CAAC,oBAAoB;YACpD,+BAA+B,EAAC,IAAI,CAAC,kBAAkB;YACvD,WAAW,EAAC,IAAI,CAAC,2BAA2B;YAC5C,WAAW,EAAC,IAAI,CAAC,KAAK;YACtB,QAAQ,EAAC,IAAI,CAAC,eAAe;SAC9B;QACD,IAAI,CAAC,WAAW,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,SAAS,CAClE,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,qCAAqC,CACtC,CAAC;aACH;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;aACpD;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,oHAAoH,CACrH,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,2EAAyB,GAAzB;QAAA,iBA8BC;QA5BC,IAAI,OAAO,GAAC;YACV,eAAe,EAAC,IAAI,CAAC,aAAa;YAClC,wBAAwB,EAAG,IAAI,CAAC,oBAAoB;YACpD,+BAA+B,EAAC,IAAI,CAAC,kBAAkB;YACvD,WAAW,EAAC,IAAI,CAAC,KAAK;YACtB,QAAQ,EAAC,IAAI,CAAC,eAAe;SAC9B;QACD,IAAI,CAAC,WAAW,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC,SAAS,CAC7D,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,oCAAoC,CACrC,CAAC;aACH;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;aACpD;QACH,CAAC,EACD,eAAK;YACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,mHAAmH,CACpH,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,2DAA2D;IAC3D,uEAAqB,GAArB;QAAA,iBA+BC;QA7BC,IAAI,OAAO,GAAC;YACV,eAAe,EAAC,IAAI,CAAC,aAAa;YAClC,wBAAwB,EAAG,IAAI,CAAC,cAAc;YAC9C,WAAW,EAAC,IAAI,CAAC,KAAK;YACtB,QAAQ,EAAC,IAAI,CAAC,eAAe;SAE9B;QACD,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,SAAS,CAC5D,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,qCAAqC,CACtC,CAAC;aACH;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;aACpD;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,oHAAoH,CACrH,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,sDAAsD;IACtD,qEAAmB,GAAnB;QAAA,iBA8BC;QA5BC,IAAI,OAAO,GAAC;YACV,eAAe,EAAC,IAAI,CAAC,aAAa;YAClC,wBAAwB,EAAG,IAAI,CAAC,cAAc;YAC9C,+BAA+B,EAAC,IAAI,CAAC,kBAAkB;YACvD,WAAW,EAAC,IAAI,CAAC,KAAK;YACtB,QAAQ,EAAC,IAAI,CAAC,eAAe;SAC9B;QACD,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,SAAS,CACvD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,oCAAoC,CACrC,CAAC;aACH;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;aACpD;QACH,CAAC,EACD,eAAK;YACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,mHAAmH,CACpH,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,mEAAiB,GAAjB;QAAA,iBAuBC;QApBC,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,SAAS,CAC/C,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAChB;gBACE,KAAI,CAAC,eAAe,GAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAClC,KAAI,CAAC,iBAAiB,CAAC,KAAI,CAAC,eAAe,CAAC,CAAC;aAC9C;iBACG;aAEH;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,2FAA2F,CAC5F,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAGD,mEAAiB,GAAjB,UAAkB,GAAU;QAA5B,iBA2KC;QAzKC,qCAAqC;QACrC,QAAQ,GAAG,EACX;YACE,6BAA6B;YAC7B,KAAK,CAAC;gBACJ,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;oBAEzC,eAAe;oBACf,IAAG,KAAI,CAAC,cAAc,KAAG,CAAC,EAC1B;wBACE,IACE,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE,EAErC;4BACE,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBACjC;qBACF;oBACD,SAAS;yBACL;wBACF,IACE,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE,EAErC;4BACG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAClC;qBAEF;gBAEH,CAAC,CAAC,CAAC;gBACH,MAAM;YACN,gBAAgB;YAClB,KAAK,CAAC;gBACJ,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;oBAGrC,iBAAiB;oBACjB,IAAG,KAAI,CAAC,cAAc,KAAG,CAAC,EAC1B;wBACE,IACA,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE,EAErC;4BACG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAClC;qBAEA;oBACD,mBAAmB;yBACf;wBACF,IACA,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE,EAErC;4BACG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAClC;qBAEA;gBACP,CAAC,CAAC,CAAC;gBACH,MAAM;YACN,mBAAmB;YACnB,KAAK,CAAC;gBACN,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;oBAEzC,IAAG,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;wBACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;wBACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;wBACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;wBACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE,EAErC;wBACG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBAClC;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM;YACN,WAAW;YACX,KAAK,CAAC;gBACN,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;oBAEzC,eAAe;oBACf,IAAG,KAAI,CAAC,cAAc,KAAG,CAAC,EAC1B;wBACE,IAAG,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BACrC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE,EACnC;4BACE,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAClC;qBACD;oBACD,SAAS;yBACL;wBACF,IACA,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE,EACrC;4BACG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAClC;qBACA;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM;YACN,cAAc;YACd,KAAK,CAAC;gBACN,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;oBAEzC,eAAe;oBACf,IAAG,KAAI,CAAC,cAAc,KAAG,CAAC,EAC1B;wBACE,IACE,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE,EAErC;4BACG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAClC;qBAEF;oBACD,QAAQ;yBACJ;wBACF,IACE,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,CAAC;4BAClC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE;4BACnC,OAAO,CAAC,sBAAsB,CAAC,IAAE,EAAE,EACrC;4BACG,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAClC;qBACF;gBACH,CAAC,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,EAAE;gBACL,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAC9B,MAAM;SACT;IAEH,CAAC;IAID,wEAAsB,GAAtB;QAAA,iBAqBC;QAlBC,IAAI,CAAC,WAAW,CAAC,yBAAyB,EAAE,CAAC,SAAS,CACpD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAChB;gBACE,KAAI,CAAC,uBAAuB,GAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC3C;iBACG;aAEH;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,gGAAgG,CACjG,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAGD,uEAAqB,GAArB;QAAA,iBAqBC;QAlBC,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,CAAC,SAAS,CACnD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAChB;gBACE,KAAI,CAAC,sBAAsB,GAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC1C;iBACG;aAEH;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,+FAA+F,CAChG,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAID,oEAAkB,GAAlB;QAAA,iBAqBC;QAlBC,IAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAChD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAChB;gBACE,KAAI,CAAC,mBAAmB,GAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACvC;iBACG;aAEH;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,4FAA4F,CAC7F,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAGD,+DAAa,GAAb,UAAc,UAAiB;QAE7B,IAAI,CAAC,2BAA2B,GAAC,CAAC,CAAC;QACnC,IAAI,CAAC,SAAS,GAAC,UAAU,CAAC;QAC1B,IAAI,CAAC,kBAAkB,GAAC,EAAE,CAAC;QAE3B,QAAQ,UAAU,EAClB;YACE,KAAK,EAAE;gBACL,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC1B,MAAM;YACR,KAAK,EAAE;gBACL,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC7B,MAAM;YACR,KAAK,EAAE;gBACL,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAC9B,MAAM;SACT;IAGH,CAAC;IAID,gCAAgC;IAChC,kFAAgC,GAAhC,UAAiC,IAAQ;QAAzC,iBAiCC;QA/BC,IAAI,OAAO,GAAC;YACV,eAAe,EAAC,IAAI,CAAC,aAAa;YAClC,eAAe,EAAC,IAAI,CAAC,KAAK;YAC1B,aAAa,EAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK;YACxC,YAAY,EAAC,IAAI,CAAC,SAAS;YAC3B,WAAW,EAAC,IAAI,CAAC,2BAA2B;YAC5C,QAAQ,EAAC,IAAI,CAAC,eAAe;SAC9B;QAED,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,SAAS,CACtD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,qCAAqC,CACtC,CAAC;aACH;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;aACpD;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,gHAAgH,CACjH,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,gCAAgC;IAChC,sEAAoB,GAApB;QAAA,iBA2BC;QA1BC,IAAI,OAAO,GAAG;YACZ,eAAe,EAAE,IAAI,CAAC,aAAa;YACnC,eAAe,EAAE,IAAI,CAAC,KAAK;YAC3B,aAAa,EAAE,IAAI,CAAC,kBAAkB;YACtC,YAAY,EAAE,IAAI,CAAC,SAAS;YAC5B,WAAW,EAAE,IAAI,CAAC,2BAA2B;YAC7C,QAAQ,EAAE,IAAI,CAAC,eAAe;SAC/B,CAAC;QAEF,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,SAAS,CACtD,cAAI;YACF,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC,CAAE,kBAAkB;YACjE,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE;gBACnB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,qCAAqC,CAAC,CAAC;aACxE;iBAAM;gBACL,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;aACrD;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,gHAAgH,CACjH,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAGD,mDAAmD;IACnD,kEAAgB,GAAhB;QAAA,iBAeC;QAbC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,cAAI;YAClE,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,KAAI,CAAC,eAAe,CAAC,OAAO,CAAC,iBAAO;gBAClC,IAAG,OAAO,CAAC,uBAAuB,CAAC,IAAE,IAAI,IAAI,OAAO,CAAC,4BAA4B,CAAC,IAAE,IAAI,EACxF;oBACE,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBAEhC;YAEH,CAAC,CAAC,CAAC;QAEL,CAAC,CAAC,CAAC;IAEL,CAAC;IAID,oEAAoE;IACpE,4EAA0B,GAA1B;QAAA,iBAoBC;QAlBC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,cAAI;YAClE,KAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,KAAI,CAAC,eAAe,CAAC,OAAO,CAAC,iBAAO;gBAClC,IAAG,OAAO,CAAC,uBAAuB,CAAC,IAAE,IAAI,IAAI,OAAO,CAAC,4BAA4B,CAAC,IAAE,IAAI,EACxF;oBACE,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,KAAI,CAAC,GAAG,IAAI,OAAO,CAAC,eAAe,CAAC,IAAE,KAAI,CAAC,KAAK,EACtE;wBACI,yBAAyB;qBAC5B;yBACG;wBACF,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBAChC;iBACF;YAEH,CAAC,CAAC,CAAC;QAEL,CAAC,CAAC,CAAC;IAEL,CAAC;IAGD,qEAAqE;IACrE,8EAA4B,GAA5B;QAAA,iBAsFC;QApFC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,cAAI;YAClE,KAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YAChC,4BAA4B;YAC5B,QAAQ,KAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,EACvC;gBACE,mBAAmB;gBACnB,KAAK,GAAG;oBACN,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;wBAErC,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EAC/C;4BACE,KAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAC5C;wBACD,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EACvB;4BACE,KAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAC5C;oBACH,CAAC,CAAC,CAAC;oBACH,MAAM;gBACN,gBAAgB;gBAClB,KAAK,GAAG;oBACN,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;wBACrC,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EACvB;4BACE,KAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAC5C;oBACH,CAAC,CAAC,CAAC;oBACH,MAAM;gBACN,6BAA6B;gBAC/B,KAAK,GAAG;oBACN,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;wBACrC,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EACvB;4BACE,KAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAC5C;wBACD,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EACvB;4BACE,KAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAC5C;oBACH,CAAC,CAAC,CAAC;oBACL,MAAM;gBACN,mBAAmB;gBACnB,KAAK,IAAI;oBACP,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;wBACrC,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EAC/C;4BACE,KAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAC5C;wBACD,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EACvB;4BACE,KAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;yBAC5C;oBACH,CAAC,CAAC,CAAC;oBACL,MAAM;gBACN;oBACE,MAAM;aACT;YAIF;;;;;;;;;;;;;;;;;;;;kBAoBM;QAEP,CAAC,CAAC,CAAC;IAEL,CAAC;IAGD,mDAAmD;IACnD,wEAAsB,GAAtB,UAAuB,EAAS;QAAhC,iBAmBC;QAjBC,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,SAAS,CAChD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAChB;gBACE,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAClC;iBACG;aACH;QACH,CAAC,EACD,eAAK;YACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,mGAAmG,CACpG,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,4CAA4C;IAC5C,iEAAe,GAAf;QAAA,iBAWC;QATC,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,SAAS,CACjD,cAAI;YACF,KAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YAClC,KAAI,CAAC,WAAW,CAAC,KAAI,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,uCAAuC;IACvC,6DAAW,GAAX,UAAY,GAAG;QAEd,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAC1C;YACE,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAChC;gBACE,IAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,IAAE,GAAG,EACpC;oBACE,IAAI,CAAC,SAAS,GAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;iBACpD;aAEF;SACF;aAAM,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;SAChD;IACJ,CAAC;IAID,8DAAY,GAAZ,UAAa,KAAU;QAErB,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE;YAC5C,QAAI,GAAI,KAAK,CAAC,MAAM,CAAC,KAAK,GAAtB,CAAuB;YAClC,IAAI,CAAC,OAAO,GAAC,IAAI,CAAC;YAClB,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC;YAC1D,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,IAAI,CAAC;SAC9B;IACH,CAAC;IAGD;;;;;;;;;;;;;;;;;;;;;;OAsBG;IAEH,qEAAmB,GAAnB;QAEE,IAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAC;YACvD,qBAAqB;YACrB,IAAI,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACtC,IAAI,SAAS,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC3C,KAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAC;gBACtC,SAAS,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;aACvC;YACD,IAAI,SAAS,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC;YAC1C,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAC,IAAI,EAAG,iBAAiB,EAAC,CAAC,CAAC;YAC7D,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAK,IAAI,CAAC,sBAAsB,SAAM,CAAC,CAAC;SAC/E;aAAM;YACL,8BAA8B;YAC9B,IAAM,MAAM,GAAG,iCAA+B,IAAI,CAAC,WAAa,CAAC;YACjE,IAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,KAAG,IAAI,CAAC,sBAAwB;YAChD,IAAI,CAAC,KAAK,EAAE,CAAC;SACd;IAEH,CAAC;IAMD,kEAAgB,GAAhB,UAAiB,OAAc,EAAC,aAAoB;QAApD,iBA2BC;QAzBC,IAAI,CAAC,WAAW,CAAC,2BAA2B,CAAC,IAAI,CAAC,aAAa,EAAC,OAAO,EAAC,aAAa,CAAC,CAAC,SAAS,CAAC,aAAG;YAClG,qEAAqE;YACrE,8EAA8E;YAC9E,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,KAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1E,yEAAyE;YACzE,4CAA4C;YAC5C,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBACzD,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC3C,OAAO;aACR;YACD,IAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;YACxB,oGAAoG;YACpG,IAAI,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAE/F,UAAU,CAAC;gBACT,wEAAwE;gBACxE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBACjC,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,CAAC,EAAE,GAAG,CAAC,CAAC;QAEV,CAAC,CAAC,CAAC;IAEL,CAAC;IAEO,oEAAkB,GAA1B,UAA2B,OAAe;QACxC,IAAI,WAAmB,CAAC;QACxB,IAAI,SAAS,GAAW,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QAEjD,QAAQ,SAAS,EAAE;YACjB,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,0BAA0B,CAAC;gBACzC,MAAM;YACR,KAAK,MAAM;gBACT,WAAW,GAAG,mEAAmE,CAAC;gBAClF,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,8BAA8B,CAAC;gBAC7C,MAAM;YAER;gBACE,WAAW,GAAG,YAAY,CAAC;gBAC3B,MAAM;SACT;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;;6CA3mCe,oDAAM,SAAC,wEAAe;gBAxG7B,yEAAW;gBACX,gEAAe;gBAFO,0DAAW;gBAAX,0DAAW;;;mCA2EvC,uDAAS,SAAC,kBAAkB,EAAC,EAAC,MAAM,EAAC,KAAK,EAAC;;IAhEjC,uCAAuC;QALnD,+DAAS,CAAC;YACT,QAAQ,EAAE,uCAAuC;YACjD,8GAAiE;;SAElE,CAAC;+FAkGqB,yEAAW;YACd,gEAAe,EAAc,0DAAW,EAAa,0DAAW;OAlGvE,uCAAuC,CA4sCnD;IAAD,8CAAC;CAAA;AA5sCmD;;;;;;;;;;;;;ACbpD;AAAe,woBAAykB,E;;;;;;;;;;;;ACAxlB;AAAe,iFAAkB,8BAA8B,iBAAiB,iBAAiB,GAAG,cAAc,qBAAqB,uBAAuB,qDAAqD,GAAG,cAAc,uBAAuB,uBAAuB,qBAAqB,qDAAqD,GAAG,YAAY,gBAAgB,GAAG,iBAAiB,8BAA8B,iBAAiB,GAAG,gBAAgB,8BAA8B,iBAAiB,qBAAqB,qDAAqD,GAAG,+BAA+B,8BAA8B,oBAAoB,GAAG,yBAAyB,gBAAgB,GAAG,oBAAoB,iBAAiB,GAAG,qBAAqB,uBAAuB,sBAAsB,mIAAmI,GAAG,6BAA6B,uBAAuB,sBAAsB,mIAAmI,GAAG,yBAAyB,eAAe,GAAG,6CAA6C,mkFAAmkF,E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACA9uH;AACjB;AACI;AACgC;AACvB;AAEtD,UAAU;AAC8C;AACP;AACS;AACiB;AACtB;AACH;AAElD,aAAa;AACkC;AACgB;AACA;AACe;AACZ;AACY;AACgB;AACH;AAC8B;AACS;AACjD;AACW;AACQ;AACV;AAC4B;AACH;AAC1B;AACW;AACR;AAClB;AACnB;AACwB;AACxB;AACM;AAC8B;AACuB;AACjC;AACtB;AACmC;AACoB;AACA;AACyB;AACjC;AACoB;AACxE;AACK;AAC2B;AACjC;AACuG;AACnG;AACoD;AACY;AACpE;AAC6C;AACnC;AACV;AACU;AACR;AACF;AACS;AAC6E;AACiB;AAC9D;AAC1B;AACrB;AACQ;AACU;AACN;AACJ;AACE;AACJ;AACI;AACgC;AACe;AACD;AACX;AACH;AACgD;AAC1B;AACO;AACjC,CAAC,sCAAsC;;;IA6GnG,CAAC;IAAb,SAAS;QA3GrB,8DAAQ,CAAC;YACR,YAAY,EAAE;gBACZ,4DAAY;gBACZ,4EAAc;gBACd,2FAAe;gBACf,+EAAe;gBACf,2FAAe;gBACf,2GAAsB;gBACtB,wGAAqB;gBACrB,sIAA+B;gBAC/B,+IAAkC;gBAClC,8FAAgB;gBAChB,yGAAuB;gBACvB,iHAAwB;gBACxB,uGAAuB;gBACvB,mIAAyB;gBACzB,gIAAwB;gBACxB,sGAAsB;gBACtB,iHAAwB;gBACxB,yGAAoB;gBACpB,wGAAqB;gBACrB,+HAA4B;gBAC5B,8FAAgB;gBAChB,2GAAsB;gBACtB,+HAA2B;gBAC3B,+HAA4B;gBAC5B,wJAAkC;gBAClC,uHAA0B;gBAC1B,2IAAgC;gBAChC,mGAAqB;gBACrB,yKAAuC;gBACvC,0HAAsB;gBACtB,sIAA0B;gBAC1B,+GAAmB;gBACnB,wJAAgC;gBAChC,yKAAuC;gBACvC,2GAAsB;gBACtB,sGAAgB;gBAChB,qHAAqB;gBACrB,oHAAsB;gBACtB,yGAAiB;gBACjB,sGAAqB;gBACrB,kGAAsB;gBACtB,sJAAmC;gBACnC,4HAA2B;gBAC3B,mIAAyB;aACxB;YAEH,eAAe,EAAC,CAAC,8FAAgB,CAAC;YAClC,OAAO,EAAE;gBACP,6DAAY;gBACZ,uEAAa;gBACb,qEAAgB;gBAChB,kEAAmB;gBACnB,oEAAgB;gBAChB,sFAAY;gBACZ,uEAAc;gBACd,2EAAgB;gBAChB,sEAAc;gBACd,6FAAuB;gBACvB,uEAAc;gBACd,8EAAiB;gBACjB,qEAAa;gBACb,qEAAa;gBACb,qEAAa;gBACb,6EAAiB;gBACjB,+EAAkB;gBAClB,yEAAe;gBACf,uEAAqB;gBACrB,0DAAW;gBACX,uEAAc;gBACd,+EAAkB;gBAClB,yEAAe;gBACf,qEAAa;gBACb,oFAAoB;gBACpB,qEAAa;gBACb,iFAAmB;gBACnB,yEAAe;gBACf,2EAAmB;gBACnB,qEAAa;gBACb,8DAAiB,CAAC,aAAa,CAAC,2EAAW,CAAC,QAAQ,CAAC;gBACrD,gEAAc,CAAC,UAAU,CAAC;oBACxB,QAAQ,EAAE;wBACR,UAAU,EAAE;4BACV,QAAQ,EAAE,QAAQ;4BAClB,QAAQ,EAAE,EAAE;yBACb;wBACD,QAAQ,EAAE;4BACR,QAAQ,EAAE,QAAQ;4BAClB,QAAQ,EAAE,EAAE;4BACZ,GAAG,EAAE,EAAE;yBACR;qBACF;iBACF,CAAC;gBACF,qEAAS;aACV;YACD,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,uEAAe,EAAE,QAAQ,EAAE,OAAO,EAAE;gBAC/C,kEAAW;gBACX;oBACE,OAAO,EAAE,sEAAiB;oBAC1B,QAAQ,EAAE,yFAAsB;oBAChC,KAAK,EAAE,IAAI;iBACZ;aACF;YACD,SAAS,EAAE,CAAC,4DAAY,CAAC;SAC1B,CAAC;OACW,SAAS,CAAI;IAAD,gBAAC;CAAA;AAAJ;;;;;;;;;;;;;;;;;;;;;;;;AClM4B;AACU;AACnB;AACH;;IAsBpC,+BAAoB,WAAwB,EAClC,MAAc,EACd,IAAY;QAFF,gBAAW,GAAX,WAAW,CAAa;QAClC,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAQ;QAXtB,iBAAY,GAAa,CAAC,CAAC,CAAC,CAAC;QAC7B,UAAK,GAAU,EAAE,CAAC;QAGlB,gBAAW,GAAS,KAAK,CAAC;QAE1B,cAAS,GAAS,KAAK,CAAC;IAKE,CAAC;IAE3B,wCAAQ,GAAR;QACE,IAAI,CAAC,KAAK,GAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;IACpC,CAAC;IAED,wCAAQ,GAAR;QAEE,2DAA2D;QAC3D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC;IAC9C,CAAC;IAGD,8CAAc,GAAd;QAEE,IAAI,CAAC,SAAS,GAAC,IAAI,CAAC;QACnB,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACpD,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,GAAC,KAAK,CAAC;IAExB,CAAC;;gBA9CM,yEAAW;gBACX,sDAAM;gBACN,oDAAM;;IAYF,qBAAqB;QALjC,+DAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,0FAA6C;;SAE9C,CAAC;uFAWiC,yEAAW;YAC1B,sDAAM;YACR,oDAAM;OAZX,qBAAqB,CAkCjC;IAAD,4BAAC;CAAA;AAlCiC;;;;;;;;;;;;;;;;;;;;;;ACfgB;;IAShD;IAAgB,CAAC;IAEjB,yCAAQ,GAAR;IACA,CAAC;IAED,yCAAQ,GAAR,UAAS,OAAe;QACtB,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,+DAA+D,GAAG,OAAO,CAAC;IACnG,CAAC;;IATU,sBAAsB;QALlC,+DAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,2FAA8C;;SAE/C,CAAC;;OACW,sBAAsB,CAWlC;IAAD,6BAAC;CAAA;AAXkC;;;;;;;;;;;;;ACPnC;AAAe,oHAAqD,kBAAkB,qCAAqC,aAAa,uiKAAuiK,E;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAhnK;AACM;AACX;AAE8D;AAC/E;AACmB;AACT;;IA0CjD,0CAAoB,WAAwB,EAClC,WAAwB,EACzB,MAAgB,EAAU,MAAc,EACvC,QAAyB;QAHf,gBAAW,GAAX,WAAW,CAAa;QAClC,gBAAW,GAAX,WAAW,CAAa;QACzB,WAAM,GAAN,MAAM,CAAU;QAAU,WAAM,GAAN,MAAM,CAAQ;QACvC,aAAQ,GAAR,QAAQ,CAAiB;QAhCpC,0BAAqB,GAAa,EAAE,CAAC;QACrC,8BAAyB,GAAS,KAAK,CAAC;QACvC,8BAAyB,GAAS,KAAK,CAAC;QACxC,8BAAyB,GAAS,KAAK,CAAC;QAYxC,qBAAgB,GAAS,KAAK,CAAC;QAE/B,YAAO,GAAS,KAAK,CAAC;QAEtB,gBAAW,GAAO,EAAE,CAAC;QACrB,oBAAe,GAAO,EAAE,CAAC;QACzB,kBAAa,GAAO,EAAE,CAAC;IAYtB,CAAC;IAEF,mDAAQ,GAAR;QAAA,iBAUC;QATC,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,UAAC,GAAG;YACtD,KAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,UAAC,IAAY;YAC3C;gBAAC,KAAI,CAAC,SAAS,GAAG,IAAI;aAAC;QACzB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC/D,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IACrD,CAAC;IAGD,mDAAmD;IACnD,2DAAgB,GAAhB,UAAiB,aAAoB;QAArC,iBAgBC;QAdC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,cAAI;YAC7D,KAAI,CAAC,eAAe,GAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAClC,KAAI,CAAC,eAAe,CAAC,OAAO,CAAC,iBAAO;gBAClC,IAAG,OAAO,CAAC,uBAAuB,CAAC,IAAE,IAAI,IAAI,OAAO,CAAC,4BAA4B,CAAC,IAAE,IAAI,EACxF;oBACE,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBAEhC;YAEH,CAAC,CAAC,CAAC;QAGL,CAAC,CAAC,CAAC;IAEL,CAAC;IAED,gEAAqB,GAArB,UAAsB,EAAU;QAAhC,iBA4DC;QA1DC,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,cAAI;YACnD,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,wDAAwD;gBACxD,KAAI,CAAC,SAAS,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;gBAC7C,KAAI,CAAC,UAAU,GAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBACjC,KAAI,CAAC,SAAS,GAAC,KAAI,CAAC,SAAS,CAAC;gBAC9B,0DAA0D;gBAC1D,IAAG,KAAI,CAAC,UAAU,CAAC,iBAAiB,IAAE,CAAC,IAAI,KAAI,CAAC,UAAU,CAAC,iBAAiB,IAAE,CAAC,EAC/E;oBACE,KAAI,CAAC,UAAU,CAAC,gBAAgB,GAAC,KAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;oBACnE,KAAI,CAAC,UAAU,CAAC,UAAU,GAAC,KAAI,CAAC,UAAU,CAAC,WAAW,CAAC;oBAEvD,kCAAkC;oBAClC,KAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAAC,cAAI;wBACrD,KAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;wBAErC,4CAA4C;wBAC5C,KAAa,UAAsB,EAAtB,UAAI,CAAC,iBAAiB,EAAtB,cAAsB,EAAtB,IAAsB,EACnC;4BADI,IAAI,CAAC;4BAEP,IAAG,CAAC,CAAC,OAAO,IAAE,KAAI,CAAC,UAAU,CAAC,OAAO,EAAC;gCACpC,KAAI,CAAC,UAAU,CAAC,UAAU,GAAC,CAAC,CAAC,WAAW,CAAC;6BAC1C;yBACF;oBACJ,CAAC,CAAC,CAAC;oBAGD,4BAA4B;oBAC5B,KAAI,CAAC,gBAAgB,CAAC,KAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;iBAClD;gBACD,gDAAgD;gBAChD,IAAG,KAAI,CAAC,UAAU,CAAC,iBAAiB,EACpC;oBACE,KAAI,CAAC,yBAAyB,GAAC,IAAI,CAAC;oBACpC,KAAI,CAAC,eAAe,GAAC,KAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;iBACxD;gBACD,IAAG,KAAI,CAAC,UAAU,CAAC,oBAAoB,EACvC;oBACE,KAAI,CAAC,yBAAyB,GAAC,IAAI,CAAC;oBACpC,KAAI,CAAC,eAAe,GAAC,KAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC;iBAC3D;gBACD,IAAG,KAAI,CAAC,UAAU,CAAC,qBAAqB,EACxC;oBACE,KAAI,CAAC,yBAAyB,GAAC,IAAI,CAAC;oBACpC,KAAI,CAAC,eAAe,GAAC,KAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;iBAC5D;gBACD,IAAM,YAAY,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC;gBACzD,4CAA4C;gBAC5C,IAAI,YAAY,EAChB;oBACE,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,OAAO;wBACtC,IAAI,CAAC,GAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;wBACpC,KAAI,CAAC,UAAU,CAAC,qBAAqB,GAAC,CAAC,CAAC;oBAC1C,CAAC,CAAC,CAAC;iBACJ;aAEF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,2DAAgB,GAAhB;QAGE,IAAI,CAAC,gBAAgB,GAAC,IAAI,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACxC,IAAI,CAAC,aAAa,GAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QACpD,0BAA0B;QAC1B,iDAAiD;IACnD,CAAC;IAED,4DAAiB,GAAjB;QAAA,iBA4BC;QA1BC,IAAI,CAAC,OAAO,GAAC,IAAI,CAAC;QAClB,IAAI,OAAO,GAAC;YACV,eAAe,EAAC,IAAI,CAAC,UAAU,CAAC,aAAa;YAC7C,eAAe,EAAC,IAAI,CAAC,aAAa;YAClC,SAAS,EAAC,IAAI,CAAC,OAAO;YACtB,WAAW,EAAC,IAAI,CAAC,SAAS;YAC1B,cAAc,EAAC,IAAI,CAAC,iBAAiB;SACtC;QACD,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,SAAS,CAC5D,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,OAAO,GAAC,KAAK,CAAC;gBACnB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,mCAAmC,CAAC,CAAC;gBACrE,KAAI,CAAC,qBAAqB,CAAC,KAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;gBAC1D,KAAI,CAAC,gBAAgB,GAAC,KAAK,CAAC;aAC7B;QACH,CAAC,EACD,eAAK;YACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,kHAAkH,CACnH,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC,qBAAmB;IAGpB,2DAAgB,GAAhB,UAAiB,OAAe;QAAhC,iBAkBC;QAhBC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,SAAS,CACpD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;gBAChB,KAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpC,4CAA4C;gBAC7C,KAAa,UAAqB,EAArB,UAAI,CAAC,gBAAgB,EAArB,cAAqB,EAArB,IAAqB,EAClC;oBADI,IAAI,CAAC;oBAEP,IAAG,CAAC,CAAC,aAAa,IAAE,KAAI,CAAC,UAAU,CAAC,aAAa,EAAC;wBAChD,KAAI,CAAC,UAAU,CAAC,gBAAgB,GAAC,CAAC,CAAC,iBAAiB,CAAC;qBACtD;iBACF;aACF;QACH,CAAC,EACD,eAAK;QACL,CAAC,CACF,CAAC;IACJ,CAAC;IAED,wDAAa,GAAb,UAAc,MAAc;QAA5B,iBAcC;QAZC,IAAI,CAAC,aAAa,GAAC,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CACnD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;gBAChB,KAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;aACtC;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,2DAAgB,GAAhB,UAAiB,OAAc;QAA/B,iBA2BC;QAzBC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAG;YACpF,qEAAqE;YACrE,8EAA8E;YAC9E,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,KAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1E,yEAAyE;YACzE,4CAA4C;YAC5C,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBACzD,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC3C,OAAO;aACR;YACD,IAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;YACxB,oGAAoG;YACpG,IAAI,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAE/F,UAAU,CAAC;gBACT,wEAAwE;gBACxE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBACjC,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,CAAC,EAAE,GAAG,CAAC,CAAC;QAEV,CAAC,CAAC,CAAC;IAEL,CAAC;IAEO,6DAAkB,GAA1B,UAA2B,OAAe;QACxC,IAAI,WAAmB,CAAC;QACxB,IAAI,SAAS,GAAW,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QAEjD,QAAQ,SAAS,EAAE;YACjB,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,0BAA0B,CAAC;gBACzC,MAAM;YACR,KAAK,MAAM;gBACT,WAAW,GAAG,mEAAmE,CAAC;gBAClF,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,8BAA8B,CAAC;gBAC7C,MAAM;YAER;gBACE,WAAW,GAAG,YAAY,CAAC;gBAC3B,MAAM;SACT;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAEC,8DAA8D;IACjE,mEAAwB,GAAxB;QAEE,IAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qIAA4B,EAAC,EAAC,IAAI,EAAC,EAAC,aAAa,EAAC,IAAI,CAAC,YAAY,EAAC,UAAU,EAAC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAC,EAAC,YAAY,EAAC,KAAK,EAAC,CAAC,CAAC;QACnK,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,cAAI;YACpC,IAAG,IAAI,IAAE,KAAK,EACd;aAEC;iBACG;aACH,iBAAgB;YACnB,sBAAsB;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,6DAAkB,GAAlB,UAAmB,SAAiB;QAClC,IAAM,MAAM,GAA8B;YACxC,CAAC,EAAE,oBAAoB;YACvB,CAAC,EAAE,oBAAoB;YACvB,CAAC,EAAE,aAAa;YAChB,CAAC,EAAE,mBAAmB;YACtB,CAAC,EAAE,kBAAkB;YACrB,CAAC,EAAE,gBAAgB;YACnB,EAAE,EAAE,iBAAiB;YACrB,EAAE,EAAE,gBAAgB;YACpB,EAAE,EAAE,iBAAiB;YACrB,EAAE,EAAE,cAAc;YAClB,EAAE,EAAE,oBAAoB;YACxB,EAAE,EAAE,kBAAkB;SACvB,CAAC;QACF,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,CAAC,UAAU;IACvD,CAAC;IAED,uDAAY,GAAZ,UAAa,SAAiB;QAC5B,IAAM,UAAU,GAA8B;YAC5C,CAAC,EAAE,OAAO;YACV,CAAC,EAAE,OAAO;YACV,EAAE,EAAE,OAAO;YACX,EAAE,EAAE,OAAO;YACX,EAAE,EAAE,OAAO;YACX,EAAE,EAAE,OAAO;YACX,EAAE,EAAE,OAAO;SACZ,CAAC;QACF,OAAO,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,CAAC,UAAU;IACrD,CAAC;IAGD,mDAAQ,GAAR;QAEE,IAAG,IAAI,CAAC,iBAAiB,IAAE,CAAC,IAAI,IAAI,CAAC,iBAAiB,IAAE,EAAE,IAAG,IAAI,CAAC,iBAAiB,IAAE,EAAE;eACnF,IAAI,CAAC,iBAAiB,IAAE,CAAC,IAAG,IAAI,CAAC,iBAAiB,IAAE,CAAC,IAAG,IAAI,CAAC,iBAAiB,IAAE,CAAC;eACjF,IAAI,CAAC,iBAAiB,IAAE,EAAE,IAAG,IAAI,CAAC,iBAAiB,IAAE,CAAC,IAAG,IAAI,CAAC,iBAAiB,IAAE,CAAC,IAAG,IAAI,CAAC,iBAAiB,IAAE,CAAC,EAClH;YACE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC;SACxC;aACG;YACF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,mBAAmB,CAAC,CAAC;SAC5C;IACH,CAAC;IACD,qIAAqI;IACrI;;MAEE;IACF,0DAAe,GAAf;;QACE,oBAAoB;QACpB,IAAI,IAAI,CAAC,iBAAiB,IAAE,CAAC,IAAI,IAAI,CAAC,iBAAiB,IAAE,CAAC,EAAE;YAC1D,wBAAwB;YACxB,UAAI,IAAI,CAAC,UAAU,0CAAE,6BAA6B,EAAE;gBAClD,OAAO,IAAI,CAAC,UAAU,CAAC,uBAAuB,IAAI,EAAE,CAAC;aACtD;SACF;aAAM;YACL,4BAA4B;YAC5B,UAAI,IAAI,CAAC,UAAU,0CAAE,oBAAoB,EAAE;gBACzC,OAAO,IAAI,CAAC,UAAU,CAAC,wBAAwB,IAAI,EAAE,CAAC;aACvD;SACF;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;;gBAzWQ,kEAAW;gBAIX,yEAAW;gBALM,kEAAS;gBAI1B,sDAAM;gBAEN,gEAAe;;IASX,gCAAgC;QAL5C,+DAAS,CAAC;YACT,QAAQ,EAAE,+BAA+B;YACzC,sGAAyD;;SAE1D,CAAC;uFAkCiC,kEAAW;YACrB,yEAAW;YAClB,kEAAS,EAAkB,sDAAM;YAC7B,gEAAe;OApCxB,gCAAgC,CA4V5C;IAAD,uCAAC;CAAA,sBAAiB;AA5V2B;;;;;;;;;;;;;AChB7C;AAAe,6GAA8C,mIAAmI,E;;;;;;;;;;;;ACChM;AAAA;AAAO,IAAM,WAAW,GAAG;IACzB,UAAU,EAAE,IAAI;IAChB,QAAQ,EAAE;QACR,0BAA0B;QAC1B;;;;;;;uCAO+B;QAE/B,kCAAkC;QAClC,MAAM,EAAE,yCAAyC;QACjD,UAAU,EAAE,iCAAiC;QAC7C,SAAS,EAAE,iBAAiB;QAC5B,aAAa,EAAE,6BAA6B;QAC5C,iBAAiB,EAAE,cAAc;QACjC,KAAK,EAAE,2CAA2C;QAClD,aAAa,EAAE,cAAc;KAC9B;IAED,SAAS,EAAE,sCAAsC;IACjD,UAAU,EAAE,UAAU;IACtB,YAAY,EAAC,CAAC;IACd,kEAAkE;IAClE,QAAQ,EAAE,+DAA+D;IAEzE,qEAAqE;IACrE,QAAQ,EAAE,kEAAkE;CAE7E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;ACjC8F;AACpC;AACmD;;IA8C7G,kCAAY,QAAqB,EACxB,IAAuB,EACtB,WAAwB;QAGhC;;qEAE6D;QANtD,SAAI,GAAJ,IAAI,CAAmB;QACtB,gBAAW,GAAX,WAAW,CAAa;QAlBlC,gBAAW,GAAmB,IAAI,CAAC;QAEnC,WAAM,GAAmB,IAAI,CAAC;QAK9B,gBAAW,GAAQ,EAAE,CAAC;QACtB,aAAQ,GAAQ,EAAE,CAAC;QACnB,uBAAkB,GAAQ,EAAE,CAAC;QAC7B,eAAU,GAAQ,EAAE,CAAC;QACrB,YAAO,GAAQ,EAAE,CAAC;QAClB,UAAK,GAAmB,IAAI,CAAC;QAE7B,iBAAY,GAAa,EAAE,CAAC;IAW5B,CAAC;IAED,2CAAQ,GAAR;QAAA,iBASC;QARE,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,SAAS,CAChD,UAAO,IAAI;;gBACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;;;aAClC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;;gBAlEc,sEAAW;gBAAgB,4EAAiB;gBADpD,yEAAW;;;6BA2BjB,uDAAS,SAAC,wEAAa,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC;sBASvC,mDAAK;;IAVK,wBAAwB;QANpC,+DAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,6FAAgD;YAChD,aAAa,EAAE,+DAAiB,CAAC,IAAI;;SAEtC,CAAC;uFAsBsB,sEAAW;YAClB,4EAAiB;YACT,yEAAW;OAvBvB,wBAAwB,CA2CpC;IAAD,+BAAC;CAAA;AA3CoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC3Ba;AACU;AACA;AACT;AACC;AACX;AAEuH;;IAoE9J,gCAAoB,WAAwB,EAClC,MAAc,EACd,WAAwB,EACxB,QAAyB,EAC1B,MAAgB;QAJzB,iBASC;QATmB,gBAAW,GAAX,WAAW,CAAa;QAClC,WAAM,GAAN,MAAM,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAa;QACxB,aAAQ,GAAR,QAAQ,CAAiB;QAC1B,WAAM,GAAN,MAAM,CAAU;QAnDzB,gBAAW,GAAO,EAAE,CAAC;QAErB,QAAQ;QACR,yBAAoB,GAAqB,EAAE,CAAC;QAC5C,eAAU,GAAqB,EAAE,CAAC;QAClC,kBAAa,GAAqB,EAAE,CAAC;QACrC,gBAAW,GAAqB,EAAE,CAAC;QAMnC,YAAO,GAAS,KAAK,CAAC;QAUtB,aAAQ,GAAqB,EAAE;QAC/B,WAAM,GAAqB,EAAE;QAC7B,UAAK,GAAqB,EAAE;QAC5B,kBAAa,GAAqB,EAAE;QASpC,gBAAW,GAAS,KAAK,CAAC;QAC1B,eAAU,GAAS,KAAK,CAAC;QACzB,eAAU,GAAS,KAAK,CAAC;QACzB,gBAAW,GAAS,KAAK,CAAC;QAI1B,mBAAc,GAAY,KAAK,CAAC;QAW9B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,UAAC,IAAY;YAC3C;gBAAC,KAAI,CAAC,SAAS,GAAG,IAAI;aAAC;YACvB,wBAAwB;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,yCAAQ,GAAR;QAAA,iBAQC;QAPC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC/D,qDAAqD;QACrD,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,UAAC,GAAG;YACtD,KAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,4CAA4C;QAC5C,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,wCAAwC;IACxC,iDAAgB,GAAhB;QAAA,iBAmCC;QAjCC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,cAAI;YAC3E,KAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YAEhC,KAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,KAAI,CAAC,YAAY,CAAC,CAAC,CAAC;YACxD,KAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;gBACrC,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EAC/C;oBACE,KAAI,CAAC,YAAY,GAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;iBAC7C;gBACD,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EACvB;oBACE,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;oBACtB,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBAC7B;gBACD,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EACvB;oBACE,KAAI,CAAC,WAAW,GAAC,KAAK,CAAC;oBACvB,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBAC3B;gBACD,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EAC/C;oBACE,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;oBACtB,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBAC1B;gBACD,IAAG,OAAO,CAAC,QAAQ,CAAC,IAAE,CAAC,EACvB;oBACE,KAAI,CAAC,WAAW,GAAC,KAAK,CAAC;oBACvB,KAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBAClC;YACH,CAAC,CAAC,CAAC;QAEL,CAAC,CAAC,CAAC;IAEL,CAAC;IAED,2BAA2B;IAE3B,sDAAqB,GAArB,UAAsB,EAAU;QAAhC,iBAQC;QANC,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,cAAI;YACnD,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,UAAU,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;aACrD;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAKD,wCAAwC;IACxC,+CAAc,GAAd;QAAA,iBAIC;QAHC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC,cAAI;YAC9C,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAGD,0CAA0C;IAC1C,iDAAgB,GAAhB;QAAA,iBAKC;QAJC,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAC,SAAS,CAAC,cAAI;YAClD,KAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IAEL,CAAC;IAED,4CAAW,GAAX;QAAA,iBAIC;QAHC,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC,cAAI;YACjD,KAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;IAGD,gDAAgD;IAChD,uDAAsB,GAAtB;QAAA,iBAKC;QAJC,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,cAAI;YACtD,KAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IAEL,CAAC;IAED,uDAAsB,GAAtB;QACE,IAAI,CAAC,oBAAoB,GAAC,EAAE,CAAC;QAC7B,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAC,IAAI,CAAC;IAGxB,CAAC;IACA,6CAAY,GAAZ;QACC,IAAI,CAAC,cAAc,EAAE,CAAC;QACrB,IAAI,CAAC,UAAU,GAAC,IAAI,CAAC;IACvB,CAAC;IAED,gDAAe,GAAf;QACC,IAAI,CAAC,aAAa,GAAC,EAAE,CAAC;QACvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,GAAC,IAAI,CAAC;IACvB,CAAC;IAED,8CAAa,GAAb;QACE,IAAI,CAAC,WAAW,GAAC,EAAE,CAAC;QACpB,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW,GAAC,IAAI,CAAC;IACxB,CAAC;IAEA,oDAAoD;IACpD,gDAAe,GAAf,UAAgB,aAAoB;QAApC,iBA0EC;QAxEA,IAAI,CAAC,OAAO,GAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,cAAc,GAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,GAAC,CAAC,EAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAChF,IAAI,CAAC,aAAa,GAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE3D,IAAI,OAAO,GAAC;YACV,eAAe,EAAC,IAAI,CAAC,YAAY;YACjC,eAAe,EAAC,IAAI,CAAC,aAAa;YAClC,QAAQ,EAAC,CAAC;YACV,YAAY,EAAC,IAAI,CAAC,kBAAkB;YACpC,oBAAoB,EAAC,IAAI,CAAC,SAAS;YACnC,oBAAoB,EAAC,IAAI,CAAC,iBAAiB;SAC5C;QACD,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,SAAS,CAC1D,cAAI;YACF,IAAI,IAAI,CAAC,cAAc,CAAC,EACxB;gBACE,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;gBACtB,KAAI,CAAC,KAAK,GAAC,EAAE,CAAC;gBACd,KAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;gBACjB,KAAI,CAAC,MAAM,GAAC,EAAE,CAAC;gBACf,KAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAE;aACpD;iBACG;gBACF,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;gBACtB,KAAI,CAAC,KAAK,GAAC,EAAE,CAAC;gBACd,KAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;gBACjB,KAAI,CAAC,MAAM,GAAC,EAAE,CAAC;gBACf,KAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,wCAAwC,CAAC,CAAC;aAC3E;QACH,CAAC,CACF,CAAC;QAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAgCI;IAIJ,CAAC;IAED,8CAAa,GAAb,UAAc,aAAoB;QAAlC,iBAoCC;QAlCA,IAAI,CAAC,OAAO,GAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,cAAc,GAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,GAAC,CAAC,EAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAChF,IAAI,CAAC,WAAW,GAAC,aAAa,CAAC,SAAS,CAAC,CAAC,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEzD,IAAI,OAAO,GAAC;YACV,eAAe,EAAC,IAAI,CAAC,YAAY;YACjC,eAAe,EAAC,IAAI,CAAC,WAAW;YAChC,QAAQ,EAAC,CAAC;YACV,YAAY,EAAC,IAAI,CAAC,gBAAgB;YAClC,oBAAoB,EAAC,IAAI,CAAC,SAAS;YACnC,oBAAoB,EAAC,IAAI,CAAC,iBAAiB;SAC5C;QAED,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,SAAS,CAC1D,cAAI;YACF,IAAI,IAAI,CAAC,cAAc,CAAC,EACxB;gBACE,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;gBACtB,KAAI,CAAC,KAAK,GAAC,EAAE,CAAC;gBACd,KAAI,CAAC,MAAM,GAAC,EAAE,CAAC;gBACf,KAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;gBACjB,KAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAE;aACpD;iBACG;gBACF,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;gBACtB,KAAI,CAAC,KAAK,GAAC,EAAE,CAAC;gBACd,KAAI,CAAC,MAAM,GAAC,EAAE,CAAC;gBACf,KAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;gBACjB,KAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,2CAA2C,CAAC,CAAC;aAC9E;QACH,CAAC,CACF,CAAC;IACD,CAAC;IAED,gDAAgD;IAChD,6CAAY,GAAZ,UAAa,YAAmB;QAAhC,iBAyEF;QAvEI,IAAI,CAAC,OAAO,GAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,GAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,GAAC,CAAC,EAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QAClF,IAAI,CAAC,UAAU,GAAC,YAAY,CAAC,SAAS,CAAC,CAAC,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,WAAW,GAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,GAAC,CAAC,EAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAE3E,IAAI,OAAO,GAAC;YACX,eAAe,EAAC,IAAI,CAAC,YAAY;YACjC,eAAe,EAAE,IAAI,CAAC,UAAU;YAChC,QAAQ,EAAC,IAAI,CAAC,OAAO;YACrB,YAAY,EAAC,IAAI,CAAC,eAAe;YACjC,oBAAoB,EAAC,IAAI,CAAC,SAAS;YACnC,oBAAoB,EAAC,IAAI,CAAC,iBAAiB;SAC5C;QACF,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,SAAS,CACxD,cAAI;YACF,IAAI,IAAI,CAAC,cAAc,CAAC,EACxB;gBACC,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;gBACtB,KAAI,CAAC,KAAK,GAAC,EAAE,CAAC;gBACd,KAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;gBACjB,KAAI,CAAC,aAAa,GAAC,EAAE,CAAC;gBACtB,KAAI,CAAC,gBAAgB,EAAE,CAAC;gBACvB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAE;aACpD;iBACG;gBACF,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;gBACtB,KAAI,CAAC,KAAK,GAAC,EAAE,CAAC;gBACd,KAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;gBACjB,KAAI,CAAC,aAAa,GAAC,EAAE,CAAC;gBACtB,KAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,2CAA2C,CAAC,CAAC;aAC9E;QACH,CAAC,CACF,CAAC;QAEA,iCAAiC;QAClC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA+BC;IAIL,CAAC;IAGC,wDAAwD;IACxD,qDAAoB,GAApB,UAAqB,oBAA2B;QAAhD,iBA0ED;QAxEG,IAAI,CAAC,OAAO,GAAC,oBAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,kBAAkB,GAAC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,GAAC,CAAC,EAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7G,IAAI,CAAC,kBAAkB,GAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvE,IAAI,mBAAmB,GAAC,oBAAoB,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,GAAC,CAAC,EAAC,oBAAoB,CAAC,MAAM,CAAC;QAElG,IAAI,OAAO,GAAC;YACV,eAAe,EAAC,IAAI,CAAC,YAAY;YACjC,eAAe,EAAE,IAAI,CAAC,kBAAkB;YACxC,QAAQ,EAAE,IAAI,CAAC,kBAAkB;YACjC,YAAY,EAAC,IAAI,CAAC,eAAe;YACjC,oBAAoB,EAAC,IAAI,CAAC,SAAS;YACnC,oBAAoB,EAAC,IAAI,CAAC,iBAAiB;SAC5C;QACH,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,SAAS,CACxD,cAAI;YACF,IAAI,IAAI,CAAC,cAAc,CAAC,EACxB;gBACE,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;gBACtB,KAAI,CAAC,KAAK,GAAC,EAAE,CAAC;gBACd,KAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;gBACjB,KAAI,CAAC,aAAa,GAAC,EAAE,CAAC;gBACtB,KAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAE;aACpD;iBACG;gBACF,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;gBACtB,KAAI,CAAC,KAAK,GAAC,EAAE,CAAC;gBACd,KAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;gBACjB,KAAI,CAAC,aAAa,GAAC,EAAE,CAAC;gBACtB,KAAI,CAAC,gBAAgB,EAAE,CAAC;gBACxB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,qCAAqC,CAAC,CAAC;aACxE;QACH,CAAC,CACF,CAAC;QAEA,iCAAiC;QACjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAkCG;IAEP,CAAC;IAGD,mDAAkB,GAAlB,UAAmB,cAAqB,EAAE,iBAAwB,EAAE,KAAY,EAAE,YAAoB;QAAtG,iBAgGC;QA9FE,sDAAsD;QACtD,IAAG,YAAY,IAAE,KAAK,EACtB;YAEC,IAAI,OAAO,GAAC;gBACV,eAAe,EAAC,IAAI,CAAC,YAAY;gBACjC,YAAY,EAAC,iBAAiB;gBAC9B,QAAQ,EAAC,KAAK;gBACd,YAAY,EAAC,EAAE;gBACf,oBAAoB,EAAC,IAAI,CAAC,SAAS;gBACnC,oBAAoB,EAAC,IAAI,CAAC,iBAAiB;aAC5C;YAED,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,SAAS,CAChD,cAAI;gBACF,IAAI,IAAI,CAAC,cAAc,CAAC,EACxB;oBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAE;iBACpD;qBACG;oBAEF,KAAI,CAAC,KAAK,GAAC,EAAE,CAAC;oBACd,KAAI,CAAC,eAAe,GAAC,EAAE,CAAC;oBACxB,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;oBAEtB,KAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;oBACjB,KAAI,CAAC,kBAAkB,GAAC,EAAE,CAAC;oBAE3B,KAAI,CAAC,aAAa,GAAC,EAAE,CAAC;oBACtB,KAAI,CAAC,uBAAuB,GAAC,EAAE,CAAC;oBAEhC,KAAI,CAAC,MAAM,GAAC,EAAE,CAAC;oBACf,KAAI,CAAC,gBAAgB,GAAC,EAAE,CAAC;oBAEzB,KAAI,CAAC,gBAAgB,EAAE,CAAC;oBACxB,KAAI,CAAC,gBAAgB,EAAE,CAAC;oBACxB,KAAI,CAAC,cAAc,EAAE,CAAC;oBACtB,KAAI,CAAC,WAAW,EAAE,CAAC;oBACnB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,mCAAmC,CAAC,CAAC;iBACtE;YACH,CAAC,CACF,CAAC;SAGF;QACD,oBAAoB;aAChB;YACH,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+KAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,MAAM,EAAC,CAAC,EAAC,gBAAgB,EAAC,cAAc,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;YAC7J,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;gBACtC,IAAG,MAAM,IAAE,KAAK,EAChB;iBAEC;qBACG;oBACF,IAAI,OAAO,GAAC;wBACV,eAAe,EAAC,KAAI,CAAC,YAAY;wBACjC,YAAY,EAAC,iBAAiB;wBAC9B,QAAQ,EAAC,KAAK;wBACd,YAAY,EAAC,MAAM;wBACnB,oBAAoB,EAAC,KAAI,CAAC,SAAS;wBACnC,oBAAoB,EAAC,KAAI,CAAC,iBAAiB;qBAC5C;oBACD,KAAI,CAAC,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,SAAS,CAChD,cAAI;wBACF,IAAI,IAAI,CAAC,cAAc,CAAC,EACxB;4BACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAE;yBACpD;6BACG;4BAEF,KAAI,CAAC,KAAK,GAAC,EAAE,CAAC;4BACd,KAAI,CAAC,eAAe,GAAC,EAAE,CAAC;4BACxB,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;4BAEtB,KAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;4BACjB,KAAI,CAAC,kBAAkB,GAAC,EAAE,CAAC;4BAE3B,KAAI,CAAC,aAAa,GAAC,EAAE,CAAC;4BACtB,KAAI,CAAC,uBAAuB,GAAC,EAAE,CAAC;4BAEhC,KAAI,CAAC,MAAM,GAAC,EAAE,CAAC;4BACf,KAAI,CAAC,gBAAgB,GAAC,EAAE,CAAC;4BAEzB,KAAI,CAAC,gBAAgB,EAAE,CAAC;4BACxB,KAAI,CAAC,gBAAgB,EAAE,CAAC;4BACxB,KAAI,CAAC,cAAc,EAAE,CAAC;4BACtB,KAAI,CAAC,WAAW,EAAE,CAAC;4BACnB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,mCAAmC,CAAC,CAAC;yBACtE;oBACH,CAAC,CACF,CAAC;iBACH;YACL,CAAC,CAAC,CAAC;SACJ;IACD,CAAC;IAGD,2CAA2C;IACzC,yCAAQ,GAAR;QACE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC;IAEzC,CAAC;IAED,mCAAmC;IACnC,gDAAe,GAAf;QAAA,iBAkEC;QAhEC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+KAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,MAAM,EAAC,CAAC,EAAC,aAAa,EAAC,IAAI,CAAC,YAAY,EAAC,QAAQ,EAAC,IAAI,CAAC,iBAAiB,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;QAC7L,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aAEC;iBACG;gBACF,sBAAsB;gBACtB,2BAA2B;gBACvB,IAAI,OAAO,GAAC;oBACV,eAAe,EAAC,KAAI,CAAC,YAAY;oBACjC,oBAAoB,EAAC,KAAI,CAAC,SAAS;oBACnC,oBAAoB,EAAC,KAAI,CAAC,iBAAiB;iBAC5C;gBACH,KAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,SAAS,CACxD,cAAI;oBACF,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,IAAE,2CAA2C,EAC7F;wBACE;;;;8CAIsB;wBACtB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,kCAAkC,CAAC,CAAC;wBACpE,uDAAuD;wBACvD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;wBAC1B,KAAI,CAAC,QAAQ,EAAE,CAAC;qBACjB;yBACG;wBACF,IAAG,IAAI,CAAC,cAAc,CAAC,EACvB;4BACE;;;;gDAIoB;4BACtB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC;4BAClD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;4BAC1B,KAAI,CAAC,QAAQ,EAAE,CAAC;yBAEf;6BAAI;4BAEH;;;;kDAIsB;4BACtB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,kCAAkC,CAAC,CAAC;4BACpE,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;4BAC1B,KAAI,CAAC,QAAQ,EAAE,CAAC;yBAGjB;wBAGD,wBAAwB;qBAEzB;gBACH,CAAC,CACF,CAAC;aAEL;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAID,6CAAY,GAAZ;QACE,IAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YACrC,IAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC;YAC/B,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,uBAAuB;aACtD;iBAAM;gBACL,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;aACnC;QACH,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;;gBAlpBM,yEAAW;gBAIX,sDAAM;gBAHN,yEAAW;gBACX,gEAAe;gBACf,kEAAS;;IAoBL,sBAAsB;QALlC,+DAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,2FAA8C;;SAE/C,CAAC;uFAoDiC,yEAAW;YAC1B,sDAAM;YACD,yEAAW;YACd,gEAAe;YACnB,kEAAS;OAvDd,sBAAsB,CA6nBlC;IAAD,6BAAC;CAAA;AA7nBkC;;;;;;;;;;;;;ACxBnC;AAAe,4EAAa,qBAAqB,GAAG,6CAA6C,uTAAuT,E;;;;;;;;;;;;ACAxZ;AAAe,+FAAgC,4BAA4B,4BAA4B,KAAK,yBAAyB,4BAA4B,4BAA4B,KAAK,8BAA8B,4BAA4B,4BAA4B,KAAK,oCAAoC,2BAA2B,4BAA4B,KAAK,gBAAgB,4BAA4B,4BAA4B,KAAK,+CAA+C,+hCAA+hC,E;;;;;;;;;;;;ACAxhD;AAAe,6GAA8C,+BAA+B,qCAAqC,8BAA8B,iBAAiB,kBAAkB,yCAAyC,2CAA2C,gBAAgB,4RAA4R,gBAAgB,kVAAkV,E;;;;;;;;;;;;ACAp6B;AAAe,8RAA+N,6FAA6F,uHAAuH,sLAAsL,oXAAoX,qHAAqH,8nBAA8nB,sLAAsL,8WAA8W,WAAW,aAAa,qNAAqN,6FAA6F,wDAAwD,sBAAsB,4FAA4F,6TAA6T,WAAW,aAAa,qNAAqN,6FAA6F,wDAAwD,sBAAsB,4FAA4F,oTAAoT,WAAW,aAAa,2KAA2K,0DAA0D,sBAAsB,uEAAuE,ipBAAipB,WAAW,aAAa,0LAA0L,sBAAsB,sZAAsZ,uOAAuO,yCAAyC,+BAA+B,6BAA6B,2BAA2B,GAAG,0BAA0B,2CAA2C,4DAA4D,kHAAkH,qCAAqC,oCAAoC,8CAA8C,uBAAuB,8CAA8C,4GAA4G,8CAA8C,gGAAgG,qCAAqC,mCAAmC,8CAA8C,kKAAkK,8CAA8C,0IAA0I,8CAA8C,uBAAuB,8CAA8C,ixBAAixB,WAAW,aAAa,2LAA2L,sBAAsB,0ZAA0Z,qBAAqB,yDAAyD,yBAAyB,6CAA6C,wBAAwB,sOAAsO,mrBAAmrB,yCAAyC,uBAAuB,6BAA6B,2BAA2B,6BAA6B,0BAA0B,8BAA8B,8BAA8B,6BAA6B,8BAA8B,2wBAA2wB,WAAW,aAAa,8LAA8L,sBAAsB,kGAAkG,4BAA4B,0zBAA0zB,qCAAqC,2CAA2C,uBAAuB,2DAA2D,mCAAmC,sFAAsF,iCAAiC,mCAAmC,uBAAuB,mCAAmC,+WAA+W,qCAAqC,iVAAiV,oBAAoB,mBAAmB,6UAA6U,mBAAmB,GAAG,eAAe,mIAAmI,WAAW,4DAA4D,gBAAgB,urCAAurC,cAAc,oBAAoB,weAAwe,yCAAyC,qCAAqC,6BAA6B,uBAAuB,6BAA6B,kDAAkD,kHAAkH,mCAAmC,6IAA6I,mCAAmC,uBAAuB,mCAAmC,sLAAsL,gGAAgG,qCAAqC,kRAAkR,kCAAkC,iCAAiC,2CAA2C,iBAAiB,iiBAAiiB,E;;;;;;;;;;;;;;;;;;;;;;ACA/yhB;AAC9F;AACsC;AACoC;AAElE;AACN;;IAmB3C,gCACS,KAAkB,EAClB,QAAwB,EACxB,IAAgB;QAHzB,iBAKC;QAJQ,UAAK,GAAL,KAAK,CAAa;QAClB,aAAQ,GAAR,QAAQ,CAAgB;QACxB,SAAI,GAAJ,IAAI,CAAY;QAbjB,oBAAe,GAAY,KAAK,CAAC;QAClC,kBAAa,GAAyB,IAAI,oDAAe,CAAM,IAAI,CAAC,CAAC;QAC3D,mBAAc,GAAa;YAC1C,OAAO;YACP,QAAQ;YACR,OAAO;SACR,CAAC;QAEF,wBAAmB,GAAyB,IAAI,oDAAe,CAAM,IAAI,CAAC;QA+BlE,yBAAoB,GAAG,UAAC,GAAW;YACzC,YAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAI,IAAI,UAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAlB,CAAkB,CAAC;QAApD,CAAoD;IAzBtD,CAAC;IAGD,0CAAS,GAAT,UAAU,GAAqB,EAAE,IAAiB;QAAlD,iBAiBC;QAhBC,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK;QACjC,uCAAuC;QACvC,IAAI,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACtC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3B;QAED,6CAA6C;QAC7C,IAAI,KAAK;YAAE,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC3C,uBAAuB;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iEAAU,CAAC,eAAK;YAC3C,IAAI,KAAK,YAAY,sEAAiB,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE;gBAC9D,OAAO,KAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;aACvC;;gBACI,OAAO,uDAAU,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC,CAAC;IAEN,CAAC,qBAAmB;IASZ,+CAAc,GAAtB,UAAuB,OAAyB,EAAE,IAAiB;QAAnE,iBAqBC;QApBC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;YAE/B,IAAI,CAAC,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC;YAClC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEpC,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,IAAI,CACnC,gEAAS,CAAC,UAAC,KAAU;gBACnB,KAAI,CAAC,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC;gBACnC,KAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;gBACrD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YACpE,CAAC,CAAC,CAAC,CAAC;SACP;aACI;YACH,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAClC,6DAAM,CAAC,eAAK,IAAI,YAAK,IAAI,IAAI,EAAb,CAAa,CAAC,EAC9B,2DAAI,CAAC,CAAC,CAAC,EACP,gEAAS,CAAC,aAAG;gBACX,OAAO,IAAI,CAAC,MAAM,CAAC,KAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;YAClD,CAAC,CAAC,CAAC,CAAC;SACP;IACH,CAAC;IAGO,yCAAQ,GAAhB,UAAiB,OAAyB,EAAE,KAAa;QACvD,OAAO,OAAO,CAAC,KAAK,CAAC;YACnB,UAAU,EAAE;gBACV,eAAe,EAAE,YAAU,KAAO;aACnC;SACF,CAAC,CAAC;IACL,CAAC;;gBAnFM,yDAAW;gBADX,+DAAc;gBALyE,+DAAU;;IAY7F,sBAAsB;QAHlC,gEAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;uFAegB,yDAAW;YACR,+DAAc;YAClB,+DAAU;OAhBd,sBAAsB,CAsFlC;IAAD,6BAAC;CAAA;AAtFkC;;;;;;;;;;;;;ACZnC;AAAe,6FAA8B,wBAAwB,mBAAmB,OAAO,mJAAmJ,oBAAoB,QAAQ,+CAA+C,+mBAA+mB,E;;;;;;;;;;;;ACA56B;AAAe,uHAAwD,0BAA0B,KAAK,6BAA6B,qCAAqC,KAAK,+BAA+B,sCAAsC,KAAK,+CAA+C,moBAAmoB,E;;;;;;;;;;;;ACAz6B;AAAe,2rBAA4nB,kBAAkB,uQAAuQ,gFAAgF,0XAA0X,YAAY,uGAAuG,YAAY,KAAK,gBAAgB,iRAAiR,sEAAsE,ybAAyb,gEAAgE,wcAAwc,oFAAoF,w+DAAw+D,E;;;;;;;;;;;;ACAt1J;AAAe,25IAA41I,uDAAuD,iKAAiK,iBAAiB,+BAA+B,qBAAqB,ihBAAihB,4BAA4B,+BAA+B,gCAAgC,keAAke,gCAAgC,0gBAA0gB,kBAAkB,kNAAkN,yEAAyE,kKAAkK,mBAAmB,+BAA+B,yBAAyB,8UAA8U,kBAAkB,oIAAoI,yEAAyE,oNAAoN,yBAAyB,ycAAyc,sEAAsE,oFAAoF,mBAAmB,+BAA+B,uBAAuB,2XAA2X,uEAAuE,kIAAkI,uBAAuB,udAAud,4FAA4F,ioBAAioB,oGAAoG,8rBAA8rB,wFAAwF,gkBAAgkB,4IAA4I,0ZAA0Z,+FAA+F,ilCAAilC,gDAAgD,uvBAAuvB,kDAAkD,iyBAAiyB,gDAAgD,ovBAAovB,gGAAgG,uhEAAuhE,2jBAA2jB,yhBAAyhB,2UAA2U,w9BAAw9B,uDAAuD,iKAAiK,iBAAiB,+BAA+B,qBAAqB,ihBAAihB,4BAA4B,+BAA+B,gCAAgC,keAAke,gCAAgC,shBAAshB,kBAAkB,8MAA8M,yEAAyE,kKAAkK,mBAAmB,+BAA+B,yBAAyB,8UAA8U,kBAAkB,6MAA6M,yEAAyE,wIAAwI,yBAAyB,6gBAA6gB,mBAAmB,+BAA+B,uBAAuB,6eAA6e,uBAAuB,+dAA+d,4FAA4F,ioBAAioB,oGAAoG,8qBAA8qB,wFAAwF,0nBAA0nB,+FAA+F,ilCAAilC,gDAAgD,svBAAsvB,kDAAkD,iyBAAiyB,gDAAgD,iwBAAiwB,gGAAgG,ovBAAovB,uFAAuF,kjBAAkjB,mEAAmE,uiEAAuiE,syEAAsyE,wgEAAwgE,2jBAA2jB,yiBAAyiB,2QAA2Q,u4BAAu4B,uJAAuJ,w6CAAw6C,oFAAoF,qBAAqB,mRAAmR,qBAAqB,wrBAAwrB,weAAwe,8UAA8U,6oGAA6oG,6eAA6e,uGAAuG,yKAAyK,yNAAyN,oHAAoH,kCAAkC,2BAA2B,qCAAqC,2BAA2B,8CAA8C,2BAA2B,2CAA2C,2BAA2B,2CAA2C,2BAA2B,+CAA+C,gGAAgG,gKAAgK,+zBAA+zB,6fAA6f,uGAAuG,yKAAyK,6NAA6N,qDAAqD,kCAAkC,2BAA2B,qCAAqC,2BAA2B,8CAA8C,2BAA2B,2CAA2C,2BAA2B,2CAA2C,2BAA2B,+CAA+C,gGAAgG,gKAAgK,ynBAAynB,+YAA+Y,oNAAoN,20BAA20B,ifAAif,0UAA0U,8aAA8a,E;;;;;;;;;;;;ACA7ptD;AAAe,kFAAmB,oBAAoB,kCAAkC,8BAA8B,oBAAoB,KAAK,qBAAqB,oBAAoB,QAAQ,4BAA4B,qBAAqB,4BAA4B,KAAK,4BAA4B,yBAAyB,KAAK,+CAA+C,+wBAA+wB,E;;;;;;;;;;;;;;;;;;;;;;;;ACAhlC;AACU;AACK;AACb;;IAW1D,qCACS,WAAwB,EACvB,GAAgB,EACjB,iBAAsD,EAC7B,IAAS;QAHlC,gBAAW,GAAX,WAAW,CAAa;QACvB,QAAG,GAAH,GAAG,CAAa;QACjB,sBAAiB,GAAjB,iBAAiB,CAAqC;QAC7B,SAAI,GAAJ,IAAI,CAAK;IAAI,CAAC;IAEhD,8CAAQ,GAAR;QACE,IAAI,IAAI,GAAC;YACP,WAAW,EAAC,EAAE,GAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;YACrC,cAAc,EAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;SAC5C;QACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IACD,+CAAS,GAAT;QACE,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED,+CAAS,GAAT;QACE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAC/B,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SAClC,CAAC;IACJ,CAAC;IAED,0CAAI,GAAJ;QACE,IAAI,IAAI,GAAE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,IAAI,GAAE;YACR,eAAe,EAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;YAC1C,mBAAmB,EAAC,EAAE,GAAC,IAAI,CAAC,MAAM,CAAC;YACnC,eAAe,EAAC,kBAAkB;YAClC,WAAW,EAAC,EAAE,GAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;SACtC;QACD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAGD,kDAAY,GAAZ,UAAa,GAAG;QAAhB,iBAUC;QARC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,SAAS,CAC5C,cAAI;YACF,KAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;;gBAzDM,yEAAW;gBAFX,0DAAW;gBACX,qEAAY;gDAgBhB,oDAAM,SAAC,wEAAe;;IAPd,2BAA2B;QALvC,+DAAS,CAAC;YACT,QAAQ,EAAE,0BAA0B;YACpC,iGAAoD;;SAErD,CAAC;uFAKsB,yEAAW;YAClB,0DAAW;YACE,qEAAY;OAN7B,2BAA2B,CAmDvC;IAAD,kCAAC;CAAA;AAnDuC;;;;;;;;;;;;;ACXxC;AAAe,oFAAqB,qBAAqB,KAAK,gCAAgC,qBAAqB,4BAA4B,KAAK,gCAAgC,yBAAyB,KAAK,gCAAgC,mCAAmC,sFAAsF,OAAO,yBAAyB,mCAAmC,sFAAsF,OAAO,+CAA+C,2mCAA2mC,E;;;;;;;;;;;;ACArqD;AAAe,4FAA6B,WAAW,aAAa,ydAAyd,2gBAA2gB,iBAAiB,iEAAiE,oDAAoD,mSAAmS,uEAAuE,2DAA2D,kHAAkH,+DAA+D,oDAAoD,+0BAA+0B,kEAAkE,2EAA2E,kEAAkE,gMAAgM,kEAAkE,2EAA2E,kEAAkE,+KAA+K,+DAA+D,2EAA2E,+DAA+D,iLAAiL,8DAA8D,2EAA2E,8DAA8D,0cAA0c,6SAA6S,4GAA4G,mLAAmL,qKAAqK,4HAA4H,kCAAkC,+BAA+B,qCAAqC,+BAA+B,8CAA8C,+BAA+B,2CAA2C,+BAA+B,2CAA2C,+BAA+B,+CAA+C,mvBAAmvB,wRAAwR,wGAAwG,yKAAyK,6JAA6J,qDAAqD,kCAAkC,2BAA2B,qCAAqC,2BAA2B,8CAA8C,2BAA2B,2CAA2C,2BAA2B,2CAA2C,2BAA2B,+CAA+C,mbAAmb,E;;;;;;;;;;;;ACAn8P;AAAe,oHAAqD,iBAAiB,uCAAuC,YAAY,omDAAomD,8MAA8M,wFAAwF,wMAAwM,oFAAoF,ueAAue,mkBAAmkB,8lBAA8lB,iBAAiB,0JAA0J,sBAAsB,qBAAqB,62BAA62B,qJAAqJ,8BAA8B,uBAAuB,gCAAgC,uBAAuB,+BAA+B,uBAAuB,yDAAyD,qDAAqD,uCAAuC,gHAAgH,qCAAqC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,0IAA0I,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,qHAAqH,qCAAqC,KAAK,sCAAsC,sHAAsH,sCAAsC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,mCAAmC,KAAK,qCAAqC,2DAA2D,KAAK,yCAAyC,gDAAgD,KAAK,yCAAyC,gDAAgD,KAAK,2CAA2C,+XAA+X,qLAAqL,8EAA8E,sLAAsL,mRAAmR,kLAAkL,gNAAgN,gVAAgV,+UAA+U,0QAA0Q,wIAAwI,sCAAsC,8CAA8C,oYAAoY,oiCAAoiC,ijBAAijB,mhBAAmhB,siBAAsiB,qQAAqQ,sCAAsC,8CAA8C,2gBAA2gB,kPAAkP,+UAA+U,+PAA+P,yWAAyW,2TAA2T,oUAAoU,wNAAwN,sCAAsC,8CAA8C,wWAAwW,kPAAkP,+UAA+U,+PAA+P,yWAAyW,2TAA2T,oUAAoU,wNAAwN,sCAAsC,8CAA8C,+VAA+V,kPAAkP,+UAA+U,8PAA8P,uWAAuW,2TAA2T,oUAAoU,wNAAwN,sCAAsC,8CAA8C,iWAAiW,kPAAkP,+UAA+U,+PAA+P,yWAAyW,2TAA2T,oUAAoU,wNAAwN,sCAAsC,8CAA8C,qWAAqW,kPAAkP,+UAA+U,+PAA+P,yWAAyW,2TAA2T,oUAAoU,wNAAwN,sCAAsC,8CAA8C,qWAAqW,kPAAkP,+UAA+U,+PAA+P,yWAAyW,2TAA2T,oUAAoU,wNAAwN,sCAAsC,8CAA8C,gWAAgW,kPAAkP,+UAA+U,+PAA+P,uWAAuW,2TAA2T,oUAAoU,wNAAwN,sCAAsC,8CAA8C,uWAAuW,kPAAkP,+UAA+U,8PAA8P,yWAAyW,2TAA2T,oUAAoU,wNAAwN,sCAAsC,8CAA8C,oWAAoW,kPAAkP,0OAA0O,gcAAgc,kPAAkP,+UAA+U,8PAA8P,uLAAuL,4OAA4O,8TAA8T,6aAA6a,usBAAusB,oBAAoB,omBAAomB,sCAAsC,qSAAqS,+nBAA+nB,2TAA2T,oUAAoU,wNAAwN,sCAAsC,8CAA8C,kiBAAkiB,uYAAuY,8ZAA8Z,kPAAkP,+UAA+U,+PAA+P,mxBAAmxB,oPAAoP,4VAA4V,iZAAiZ,8LAA8L,sCAAsC,8CAA8C,mtCAAmtC,E;;;;;;;;;;;;;;;;;;;;;;;;;;ACA5w7C;AACoC;AACjC;AACZ;AACL;AACwB;AACM;AACtB;AACiB;AAEV;;IAiEjD,qBACU,MAAuB,EACvB,MAAc,EACd,IAAgB,EAChB,IAAY,EACb,QAAwB;QALjC,iBAeC;QAdS,WAAM,GAAN,MAAM,CAAiB;QACvB,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAY;QAChB,SAAI,GAAJ,IAAI,CAAQ;QACb,aAAQ,GAAR,QAAQ,CAAgB;QA5D1B,YAAO,GAAG,IAAI,4CAAO,EAAW,CAAC;QACjC,UAAK,GAAG,IAAI,oDAAe,CAAU,KAAK,CAAC,CAAC;QAC5C,QAAG,GAAG,IAAI,oDAAe,CAAS,CAAC,CAAC,CAAC;QACrC,UAAK,GAAG,IAAI,oDAAe,CAAS,EAAE,CAAC,CAAC;QAG/C,iBAAY,GAAa,CAAC,CAAC,CAAC,CAAC;QAC7B,UAAK,GAAU,EAAE,CAAC;QAClB,YAAO,GAAS,KAAK,CAAC,CAAC,wHAAwH;QAC/I,cAAS,GAAQ,CAAC,CAAC;QACZ,aAAQ,GAAG,IAAI,oDAAe,CAAU,EAAE,CAAC,CAAC;QAKnD,SAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAC/B,0DAAG,CAAC,mBAAS;YACX,IAAI,CAAC,SAAS,EAAE;gBACd,IAAG,KAAI,CAAC,OAAO,EAAC;oBACd,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;oBAChD,OAAO,8BAA8B,CAAC;iBACvC;qBAAI;oBACH,OAAO,IAAI;iBACZ;aACF;iBAAM;gBACL,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACjC,OAAO,SAAS,CAAC,KAAK,CAAC;aACxB;QACH,CAAC,CAAC,CACH,CAAC;QACF,aAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CACnC,0DAAG,CAAC,mBAAS;YACX,IAAI,CAAC,SAAS,EAAE;gBACd,IAAG,KAAI,CAAC,OAAO,EAAC;oBACd,OAAO,gBAAgB,CAAC;iBACzB;qBAAI;oBACH,OAAO,IAAI,CAAC;iBACb;aACF;iBAAM;gBACL,OAAO,SAAS,CAAC,WAAW,CAAC;aAC9B;QACH,CAAC,CAAC,CACH,CAAC;QAUF,wCAAwC;QACxC,eAAU,GAAC,IAAI,0DAAY,EAAU,CAAC;QAuKtC,uDAAuD;QACvD,gBAAW,GAAC,UAAC,OAAY;YACvB,OAAO,KAAI,CAAC,IAAI,CAAC,IAAI,CAAI,KAAI,CAAC,OAAO,yBAAsB,EAAC,OAAO,CAAC,CAAC;QACvE,CAAC;QAhKC,iDAAiD;QACjD,IAAI,CAAC,QAAQ,GAAC,qEAAW,CAAC,QAAQ,CAAC;QACnC,IAAI,CAAC,OAAO,GAAC,qEAAW,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,IAAI,oDAAe,CAAM,YAAY,CAAC,OAAO,CAAE,cAAc,CAAC,CAAC,CAAC;QACjF,IAAI,CAAC,UAAU,GAAG,IAAI,oDAAe,CAAM,IAAI,CAAC,CAAC;IACnD,CAAC;IA1BD,kCAAY,GAAZ;QACE,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAEM,sCAAgB,GAAvB;QACE,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IACnC,CAAC;IAsBD,uDAAuD;IAChD,4CAAsB,GAA7B;QACE,IAAG,IAAI,CAAC,OAAO,EAAC;YAChB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC7B;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;IACjC,CAAC;IAGM,sCAAgB,GAAvB;QACE,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IACtC,CAAC;IAEM,0CAAoB,GAA3B;QACE,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;IACvC,CAAC;IAEM,iCAAW,GAAlB;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IAGD,wCAAwC;IACjC,0CAAoB,GAA3B,UAA4B,EAAS;QAArC,iBAiBA;QAhBE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClB,IAAG,EAAE,IAAE,CAAC,IAAI,EAAE,IAAE,EAAE,IAAI,EAAE,IAAE,EAAE,IAAI,EAAE,IAAE,CAAC,IAAI,EAAE,IAAE,CAAC,IAAI,EAAE,IAAE,CAAC,IAAI,EAAE,IAAE,EAAE,IAAI,EAAE,IAAE,CAAC,IAAI,EAAE,IAAE,CAAC,IAAI,EAAE,IAAE,CAAC,EAC5F;YAEE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,CAAC,EAAtC,CAAsC,CAAC,CAAC;SAC7D;aACG;YACF,IAAG,EAAE,IAAE,EAAE,EACT;gBACE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAzC,CAAyC,CAAC,CAAC;aAChE;iBACD;gBACE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAA1C,CAA0C,CAAC,CAAC;aAEjE;SACF;IACJ,CAAC;IAEC,wCAAkB,GAAlB;QAAA,iBAkFA;QAjFC,OAAO,IAAI,+CAAU,CAAC,kBAAQ;YAC5B,KAAI,CAAC,MAAM,CAAC,IAAI;iBACb,eAAe,CAAC,IAAI,iDAAI,CAAC,kBAAkB,EAAE,CAAC;iBAC9C,IAAI,CAAC,UAAM,MAAM;;;;;;4BACV,IAAI,GAAG;gCACX,MAAM,EAAE,CAAC;gCACT,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK;6BACjC,CAAC;4BAEI,UAAU,GAChB;gCACE,MAAM,EAAE,qEAAW,CAAC,YAAY;gCAChC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK;gCAC3B,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC;gCAC1C,UAAU,EAAE,qEAAW,CAAC,UAAU;gCAClC,SAAS,EAAE,qEAAW,CAAC,SAAS;6BACjC;4BAEc,qBAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAS,MAAM;oCACtE,OAAO,MAAM,CAAC;gCAChB,CAAC,CAAC;;4BAFE,QAAQ,GAAG,SAEb;4BACF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,SAAS,CAC9B,aAAG;gCACD,IAAI,GAAG,CAAC,cAAc,CAAC,EAAE;oCACvB,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;oCAC7E,KAAI,CAAC,MAAM,EAAE,CAAC;oCACd,QAAQ,CAAC,IAAI,CAAC,wDAAwD;wCACtE,8EAA8E,CAAC,CAAC;oCAChF,QAAQ,CAAC,QAAQ,EAAE,CAAC;iCACrB;qCAAM;oCACL,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,KAAI,GAAG,EACxE;wCACE,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,IAAI,EAC1B;4CACE,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAC,CAAS,IAAK,QAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,EAA7D,CAA6D,CAAC,EAAE;gDACtH,KAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;6CACzB;4CACD,KAAI,CAAC,YAAY,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4CAChE,YAAY,CAAC,OAAO,CAAE,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,KAAI,CAAC,YAAY,CAAC,CAAC,CAAC;4CACzE,IAAG,KAAI,CAAC,OAAO,EAAC;gDACd,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;6CACtD;iDAAI;gDACH,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;6CACzC;4CACD,KAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAI,CAAC,YAAY,CAAC,CAAC,CAAC;4CACvD,sCAAsC;4CACtC,IAAI,CAAC,GAAC,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC;4CAChC,IAAI,MAAM,GAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;4CAC1B,yCAAyC;4CACxC,KAAI,CAAC,KAAK,GAAC,MAAM,CAAC;4CAClB,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;4CAE3B,iCAAiC;4CACjC,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,WAAW,KAAK,IAAI,EAAE;gDACvC,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;6CACvB;iDAAM;gDACL,KAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;6CACxB;4CACD,oCAAoC;4CACpC,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,CAAC,EAAxC,CAAwC,CAAC,CAAC;yCAE/D;6CAAM;4CACL,KAAI,CAAC,MAAM,EAAE,CAAC;4CACd,QAAQ,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;4CAC9D,QAAQ,CAAC,QAAQ,EAAE,CAAC;yCACrB;qCACF;yCAAM,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE;wCAC7C,KAAI,CAAC,MAAM,EAAE,CAAC;wCACd,QAAQ,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;wCACnF,QAAQ,CAAC,QAAQ,EAAE,CAAC;qCACrB;iCACF;4BACH,CAAC,CACF,CAAC;;;;iBACH,CAAC;iBACD,KAAK,CAAC,UAAC,MAAW;gBACjB,QAAQ,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;gBAC/F,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACpB,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACtB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;IAID,4BAAM,GAAN;QAAA,iBAkBC;QAjBC,IAAG,IAAI,CAAC,GAAG,CAAC,KAAK,IAAE,CAAC,EAAC;YACnB,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YAC9B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;SAC1B;QACF,IAAI,CAAC,MAAM,CAAC,IAAI;aACZ,OAAO,EAAE;aACT,IAAI,CAAC;YACJ,IAAG,CAAC,KAAI,CAAC,OAAO,EAAC;gBACf,YAAY,CAAC,KAAK,EAAE,CAAC;gBACrB,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAhC,CAAgC,CAAC,CAAC;aACvD;QACH,CAAC,CAAC;aACD,KAAK,CAAC,UAAC,GAAQ;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,CAAC;IAE3C,CAAC;IAQD,qCAAe,GAAf;QAAA,iBAcC;QAbC,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAC/B,0DAAG,CAAC,mBAAS;YACX,IAAI,CAAC,SAAS,EAAE;gBACd,IAAG,KAAI,CAAC,OAAO,EAAC;oBACd,OAAO,IAAI,CAAC;iBACb;qBAAI;oBACH,OAAO,KAAK,CAAC;iBACd;aACF;iBAAM;gBACL,OAAO,IAAI,CAAC;aACb;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,8BAAQ,GAAR,UAAS,GAAW;QAClB,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAC,CAAS,IAAK,QAAC,KAAK,GAAG,EAAT,CAAS,CAAC,KAAK,SAAS,EAAE;YAClE,OAAO,IAAI,CAAC;SACb;aAAM;YACL,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED,2EAA2E;IAC3E,8BAAQ,GAAR;QAAA,iBAEC;QADC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAA1C,CAA0C,CAAC,CAAC;IAClE,CAAC;IAGD,iCAAW,GAAX;QACE,IAAI,CAAC,QAAQ,CAAC,sBAAsB,EAAE,CAAC;QACvC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC;IAGA,mCAAa,GAAb,UAAc,UAAe;QAA7B,iBAoBA;QAnBC,IAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;QACnC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAC,UAAU,CAAC,MAAM,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;QAE5C,OAAO,IAAI,CAAC,IAAI;aACb,IAAI,CACA,IAAI,CAAC,QAAQ,UAAO,EACvB,IAAI,CAAC,QAAQ,EAAE,EACf,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE,EAAE,CACrE;aACA,SAAS,EAAE;aACX,IAAI,CAAC,eAAK;YACT,KAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,cAAc,CAAC;YAC3C,KAAI,CAAC,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC,eAAe,CAAC;YACnD,KAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC;QAC/C,CAAC,CAAC;IACN,CAAC;IAID,kCAAY,GAAZ;QAAA,iBAuBC;QAtBC,IAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;QACnC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;QACxC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,qEAAW,CAAC,SAAS,CAAC,CAAC;QAE7C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAChB,IAAI,CAAC,QAAQ,UAAO,EACvB,IAAI,CAAC,QAAQ,EAAE,EACf,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE,EAAE,CACrE,CAAC,IAAI,CACJ,0DAAG,CAAC,eAAK;YACP,KAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC,cAAc,CAAC;YAC3C,KAAI,CAAC,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC,eAAe,CAAC;YACnD,KAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC;QAC/C,CAAC,CAAC,EACF,4DAAK,CAAC,CAAC,CAAC,EACR,iEAAU,CAAC,UAAC,CAAM;YAChB,KAAI,CAAC,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC;YACnC,KAAI,CAAC,MAAM,EAAE;YACb,OAAO,CAAC;QACV,CAAC,CAAC,CACH;IACH,CAAC;;gBAvUM,kEAAe;gBACf,sDAAM;gBAHN,+DAAU;gBACgB,oDAAM;gBAShC,+DAAc;;IAOV,WAAW;QAHvB,gEAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;uFA4DkB,kEAAe;YACf,sDAAM;YACR,+DAAU;YACV,oDAAM;YACH,+DAAc;OA/DtB,WAAW,CA2TvB;IAAD,kBAAC;CAAA;AA3TuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACjB8D;AACnC;AAC8B;AAEhC;AACW;AACF;AACjB;AACsG;AACb;AAC9E;AAG2F;AAC1B;;IAoEnH,iCACU,WAAwB,EACxB,WAAwB,EACxB,QAAyB,EACzB,IAAY,EACZ,MAAc,EACf,MAAgB,EACf,YAAyB;QAPnC,iBAoCC;QAnCS,gBAAW,GAAX,WAAW,CAAa;QACxB,gBAAW,GAAX,WAAW,CAAa;QACxB,aAAQ,GAAR,QAAQ,CAAiB;QACzB,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QACf,WAAM,GAAN,MAAM,CAAU;QACf,iBAAY,GAAZ,YAAY,CAAa;QA1DnC,qBAAgB,GAA0B,EAAE,CAAC;QAC7C,0BAAqB,GAAa,EAAE,CAAC;QACrC,iBAAY,GAAW,IAAI,yDAAQ,EAAE,CAAC;QAGtC,mBAAc,GAAS,KAAK,CAAC;QAC7B,oBAAe,GAAS,KAAK,CAAC;QAC9B,iBAAY,GAAU,IAAI,CAAC;QAG3B,0BAAqB,GAAG,KAAK,CAAC;QAC9B,uBAAkB,GAAG,KAAK,CAAC;QAK3B,mBAAc,GAAY,IAAI,CAAC;QAC/B,mBAAc,GAAO,EAAE,CAAC;QACxB,8BAAyB,GAAS,KAAK,CAAC;QACxC,8BAAyB,GAAS,KAAK,CAAC;QACxC,8BAAyB,GAAS,KAAK,CAAC;QASxC,wBAAmB,GAAS,KAAK,CAAC;QAClC,4BAAuB,GAAS,KAAK,CAAC;QACtC,uBAAkB,GAAY,KAAK,CAAC;QAGpC,iBAAY,GAAQ,EAAE,CAAC;QACvB,qBAAgB,GAAQ,EAAE,CAAC;QAC3B,cAAS,GAAS,KAAK,CAAC;QAOxB,oBAAe,GAAS,KAAK,CAAC;QAC9B,uBAAkB,GAAS,KAAK,CAAC;QAiSjC,aAAQ,GAAG,UAAC,GAAG,EAAC,KAAK,IAAK,QAAC,GAAG,CAAC,CAAC,MAAM,CAAC,iBAAO,IAAI,QAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,EAA5B,CAA4B,CAAC,EAArD,CAAqD;QA/Q7E,0BAA0B;QAC1B,IAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAAC,cAAI;YACrD,KAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,UAAC,IAAY;YAC3C;gBAAC,KAAI,CAAC,SAAS,GAAG,IAAI;aAAC;YACvB,wBAAwB;QAC1B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAC,QAAgB;YACnD;gBAAC,KAAI,CAAC,QAAQ,GAAG,QAAQ;aAAC;YAC1B,wBAAwB;QAC1B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,UAAC,GAAG;YAClD,KAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,qBAAqB,GAAG,mBAAmB,CAAC;QACjD,IAAI,CAAC,SAAS,GAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,SAAS,CAAC,UAAO,IAAI;;;;;wBAC1E,SAAI;wBAAY,qBAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;;wBAAtC,GAAK,QAAQ,GAAG,SAAsB;;;;aACvC,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,GAAC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,UAAO,IAAI;;;;;wBACjE,SAAI;wBAAU,qBAAM,IAAI;;wBAAxB,GAAK,MAAM,GAAG,SAAU,CAAC;;;;aAC1B,CAAC,CAAC;IACL,CAAC;IAEK,0CAAQ,GAAd;;;;gBACE,gCAAgC;gBAChC,gCAAgC;gBAChC,oBAAoB;gBACpB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAC1C,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAC1C,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,IAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,IAAE,CAAC,CAAE,EAAC,KAAI,CAAC,eAAe,GAAC,IAAI,EAAC,KAAI,CAAC,eAAe,GAAC,KAAK,CAAC;gBAC/F,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,IAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,MAAM,IAAE,CAAC,CAAE,EAAC,KAAI,CAAC,kBAAkB,GAAC,IAAI,EAAC,KAAI,CAAC,kBAAkB,GAAC,KAAK,CAAC;gBAErG,IAAG,IAAI,CAAC,YAAY,CAAC,MAAM,IAAE,CAAC,EAC9B;oBACE,IAAI,CAAC,mBAAmB,EAAE,CAAC;iBAC5B;gBACD,qDAAqD;gBACrD,IAAI,CAAC,SAAS,GAAC,IAAI,CAAC;gBACpB,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,UAAC,GAAG;oBACtD,KAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC;oBAC7B,IAAG,KAAI,CAAC,MAAM,IAAI,KAAI,CAAC,iBAAiB,IAAE,EAAE,EAC5C;wBACE,KAAI,CAAC,SAAS,GAAC,IAAI,CAAC;wBACpB,KAAI,CAAC,YAAY,GAAE,IAAI,yDAAQ,EAAE,CAAC;wBAClC,KAAI,CAAC,YAAY,CAAC,YAAY,GAAG,CAAC,CAAC;wBACnC,KAAI,CAAC,YAAY,CAAC,KAAK,GAAC,KAAI,CAAC,MAAM,CAAC;wBACpC,KAAI,CAAC,YAAY,CAAC,WAAW,GAAC,EAAE,CAAC;wBACjC,KAAI,CAAC,YAAY,CAAC,QAAQ,GAAC,EAAE,CAAC;wBAC9B,KAAI,CAAC,YAAY,CAAC,OAAO,GAAC,EAAE,CAAC;wBAC7B,KAAI,CAAC,YAAY,CAAC,YAAY,GAAC,KAAI,CAAC,iBAAiB,CAAC;wBACtD,KAAI,CAAC,YAAY,EAAE,CAAC;qBACrB;gBACH,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,YAAY,GAAG,IAAI,yDAAQ,EAAE,CAAC;gBACnC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,CAAC,CAAC;gBACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,UAAC,IAAY;oBAC3C;wBAAC,KAAI,CAAC,MAAM,GAAG,IAAI;qBAAC;oBACnB,KAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC,SAAS,CAC3C,cAAI;wBACF,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACtC,CAAC,CACF,CAAC;oBACF,KAAI,CAAC,YAAY,CAAC,KAAK,GAAC,KAAI,CAAC,MAAM,CAAC;oBACpC,KAAI,CAAC,YAAY,CAAC,WAAW,GAAC,EAAE,CAAC;oBACjC,KAAI,CAAC,YAAY,CAAC,QAAQ,GAAC,EAAE,CAAC;oBAC9B,KAAI,CAAC,YAAY,CAAC,OAAO,GAAC,EAAE,CAAC;oBAC7B,KAAI,CAAC,YAAY,CAAC,WAAW,GAAC,KAAK,CAAC;oBACpC,KAAI,CAAC,YAAY,CAAC,YAAY,GAAC,KAAI,CAAC,iBAAiB,CAAC;oBAEtD,IAAG,KAAI,CAAC,MAAM,EACd;wBAEA,yBAAyB;wBACzB,IAAI,aAAa,GAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;wBAChE,IAAG,aAAa,EAChB;4BACE,KAAI,CAAC,YAAY,GAAC,aAAa,CAAC;4BAChC,KAAI,CAAC,WAAW,GAAC,KAAI,CAAC,YAAY,CAAC,WAAW,CAAC;4BAC/C,KAAI,CAAC,QAAQ,GAAC,KAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;4BACzC,KAAI,CAAC,KAAK,GAAC,KAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC;4BAC9C,KAAI,CAAC,MAAM,GAAC,KAAI,CAAC,YAAY,CAAC,OAAO,CAAC;4BACtC,KAAI,CAAC,YAAY,CAAC,WAAW,GAAC,IAAI,CAAC;yBACpC;wBACC,KAAI,CAAC,iBAAiB,EAAE,CAAC;qBAC1B;oBACH,yBAAyB;oBACzB,KAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,CAAC,CAAC,CAAC;;;;KACJ;IAED,8CAAY,GAAZ,UAAa,MAAM,EAAE,GAAG;QAAxB,iBAcC;QAbC,IAAI,CAAC,eAAe,GAAC,EAAE,CAAC;QACxB,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;QACpB,GAAG,CAAC,eAAe,GAAC,IAAI,CAAC,iBAAiB,CAAC;QAC3C,GAAG,CAAC,SAAS,GAAC,IAAI,CAAC,MAAM,CAAC;QAC1B,GAAG,CAAC,OAAO,GAAC,mFAAmF;QAC/F,IAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6JAAmC,EAAE;YAC9E,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,GAAG;SACV,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YAC/B,KAAI,CAAC,eAAe,GAAC,IAAI,CAAC;YAC1B,KAAI,CAAC,YAAY,CAAC,MAAM,EAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAGD,8CAAY,GAAZ,UAAa,MAAM,EAAE,GAAG;QAAxB,iBAcC;QAbC,IAAI,CAAC,eAAe,GAAC,EAAE,CAAC;QACxB,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;QACpB,GAAG,CAAC,eAAe,GAAC,IAAI,CAAC,iBAAiB,CAAC;QAC3C,GAAG,CAAC,SAAS,GAAC,IAAI,CAAC,MAAM,CAAC;QAC1B,GAAG,CAAC,OAAO,GAAC,EAAE;QACd,IAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mIAA2B,EAAE;YACtE,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,OAAO;YACf,IAAI,EAAE,GAAG;SACV,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YAC/B,KAAI,CAAC,eAAe,GAAC,IAAI,CAAC;YAC1B,KAAI,CAAC,YAAY,CAAC,MAAM,EAAC,GAAG,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC;IAGD,8CAAY,GAAZ,UAAa,IAAI,EAAC,GAAG;QAArB,iBAyCC;QAxCC,IAAI,CAAC,CAAC;QACN,IAAG,IAAI,CAAC,iBAAiB,IAAE,CAAC,EAC5B;YACE,CAAC,GAAC;gBACA,eAAe,EAAC,IAAI,CAAC,aAAa;gBAClC,WAAW,EAAC,IAAI,CAAC,SAAS;gBAC1B,cAAc,EAAC,IAAI,CAAC,iBAAiB;gBACrC,mBAAmB,EAAC,CAAC;gBACrB,sBAAsB,EAAC,GAAG,CAAC,iBAAiB;aAC7C;SACF;aAAK,IAAG,IAAI,CAAC,iBAAiB,IAAE,CAAC,EAAC;YACjC,CAAC,GAAC;gBACA,eAAe,EAAC,IAAI,CAAC,aAAa;gBAClC,WAAW,EAAC,IAAI,CAAC,SAAS;gBAC1B,cAAc,EAAC,IAAI,CAAC,iBAAiB;gBACrC,mBAAmB,EAAC,CAAC;gBACrB,sBAAsB,EAAC,GAAG,CAAC,iBAAiB;aAC7C;SACF;QACD,IAAI,CAAC,aAAa,GAAC,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,aAAG;YACzD,IAAG,GAAG,CAAC,QAAQ,CAAC,IAAE,IAAI,EAAC;gBACrB,KAAI,CAAC,YAAY,CAAC,CAAC,EAAC,KAAK,CAAC,CAAC;gBAC3B,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,EAAE,GAAC,GAAG,CAAC,gBAAgB,CAAC,CACzB,CAAC;aACH;iBAAI;gBACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,iFAAiF,CAClF,CAAC;aACH;YACD,KAAI,CAAC,iBAAiB,EAAE;QAC1B,CAAC,EAAC,aAAG;YACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,iFAAiF,CAClF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;IAED,8CAAY,GAAZ,UAAa,IAAI,EAAC,IAAI;QAAtB,iBAsBC;QArBC,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,aAAG;YACvD,IAAG,IAAI,EAAC;gBACN,IAAG,GAAG,CAAC,QAAQ,CAAC,IAAE,IAAI,EAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,EAAE,GAAC,GAAG,CAAC,gBAAgB,CAAC,CACzB,CAAC;iBACH;qBAAI;oBACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,iFAAiF,CAClF,CAAC;iBACH;aACF;YACC,KAAI,CAAC,iBAAiB,EAAE;QAC5B,CAAC,EAAC,aAAG;YACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,iFAAiF,CAClF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;IAED,gEAAgE;IAChE,kDAAgB,GAAhB,UAAiB,KAAY,EAAE,aAAoB,EAAE,KAAa,EAAC,OAAe;QAEhF,IAAI,CAAC,eAAe,GAAC,KAAK,CAAC;QAC3B,0CAA0C;QAC1C,MAAM,CAAC,YAAY,CAAC,UAAU,CAAE,aAAa,CAAC,CAAC;QAC/C,MAAM,CAAC,YAAY,CAAC,OAAO,CAAE,aAAa,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QAE9D,8BAA8B;QAC9B,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,IAAI,IAAI,CAAC,eAAe,IAAE,CAAC,EACrD;YACE,YAAY,CAAC,UAAU,CAAE,oBAAoB,CAAC,CAAC;YAC/C,YAAY,CAAC,OAAO,CAAE,oBAAoB,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;YACtE,8BAA8B;YAC9B,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;SACxC;QACD,qBAAqB;QACrB,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,EAC1B;YACG,IAAI,CAAC,mBAAmB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;SACjD;QACD,6BAA6B;QAC7B,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,EAC1B;YACG,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;SACvC;QACD,oDAAoD;QACpD,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,EAC1B;YACG,IAAI,CAAC,wBAAwB,CAAC,aAAa,EAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SACvE;QAED,+BAA+B;QAC/B,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,EAC1B;YACG,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SACzE;QACD,kCAAkC;QAClC,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,EAC1B;YACG,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SAC5E;QACD,+BAA+B;QAC/B,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,EAC1B;YACG,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,KAAK,EAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SACxE;QACD,gCAAgC;QAChC,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,EAC1B;YACG,IAAI,CAAC,mBAAmB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;SACjD;QAED,kCAAkC;QAClC,IAAG,IAAI,CAAC,eAAe,IAAE,EAAE,EAC3B;YACG,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,KAAK,EAAC,OAAO,CAAC,CAAC;SAC3D;IAEH,CAAC;IAED,kDAAgB,GAAhB;QAEE,IAAI,CAAC,mBAAmB,GAAC,IAAI,CAAC;QAC9B,IAAI,CAAC,uBAAuB,GAAC,KAAK,CAAC;IAErC,CAAC;IAED,uDAAqB,GAArB;QAEE,IAAI,CAAC,uBAAuB,GAAC,IAAI,CAAC;QAClC,IAAI,CAAC,mBAAmB,GAAC,KAAK,CAAC;IAEjC,CAAC;IAID,qDAAmB,GAAnB;QAAA,iBAuBC;QArBG,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,SAAS,CAC/C,cAAI;YACF,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,iBAAO;gBAC1B,IAAI,oBAAoB,GAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACzE,IAAI,OAAO,GAAC;oBACV,MAAM,EAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;iBACzC;gBACD,IAAG,OAAO,CAAC,IAAI,IAAE,IAAI,EACrB;oBACE,KAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBACjC;qBACG;oBACF,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBACrC;YACH,CAAC,CAAC,CAAC;QAEL,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACN,CAAC;IAED,0CAA0C;IAC1C,gDAAc,GAAd;QAEE,IAAI,CAAC,YAAY,CAAC,cAAc,GAAC,KAAK,CAAC;QACvC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAC,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAC,IAAI,CAAC;QACnC,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,0CAA0C;IAC1C,gDAAc,GAAd;QAEE,IAAI,CAAC,YAAY,CAAC,YAAY,GAAC,KAAK,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAC,KAAK,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAC,IAAI,CAAC;QACtC,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,0CAA0C;IAC1C,sDAAoB,GAApB;QAEE,IAAI,CAAC,YAAY,CAAC,YAAY,GAAC,IAAI,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAC,KAAK,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,cAAc,GAAC,KAAK,CAAC;QACvC,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,0CAAQ,GAAR;QAEE,IAAI,CAAC,cAAc,GAAC,KAAK,CAAC;QAC1B,IAAI,CAAC,YAAY,GAAC,IAAI,CAAC;QACvB,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAGD,iCAAiC;IACjC,8CAAY,GAAZ;QAEE,IAAI,OAAO,CAAC;QACZ,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,GAAC,EAAE,CAAC;QACf,IAAG,IAAI,CAAC,YAAY,CAAC,OAAO,EAC5B;YACG,OAAO,GAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;SACrC;QACD,IAAI,CAAC,YAAY,GAAE,IAAI,yDAAQ,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;QACjB,IAAI,CAAC,WAAW,GAAC,EAAE,CAAC;QACpB,IAAI,CAAC,KAAK,GAAC,EAAE,CAAC;QACd,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,CAAC,CAAC;QACnC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAC,IAAI,CAAC,MAAM,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAC,EAAE,CAAC;QACjC,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAC,EAAE,CAAC;QAC9B,oCAAoC;QACpC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAC,KAAK,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAC,IAAI,CAAC,iBAAiB,CAAC;QACtD,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,gCAAgC;IAChC,gDAAc,GAAd;QAEE,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,0CAAQ,GAAR;QAAA,iBA0BC;QAxBC,2BAA2B;QAC3B,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,SAAS,CACnE,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,4CAA4C,CAC7C,CAAC;gBACF,KAAI,CAAC,cAAc,GAAC,KAAK;oBACzB,KAAI,CAAC,YAAY,GAAC,IAAI,CAAC;gBACvB,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAA1C,CAA0C,CAAC,CAAC;aACjE;iBACG;aACH;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,qHAAqH,CACtH,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAED,mDAAiB,GAAjB;QAAA,iBAuBC;QAtBC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CACrE,cAAI;YACF,IAAI,IAAI,CAAC,cAAc,CAAC,EACxB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,qGAAqG,CAAC;aACrI;iBACG;gBACF,KAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrC,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAC5C,IAAG,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAC1B;oBACE,KAAI,CAAC,SAAS,GAAC,KAAK,CAAC;oBACrB,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;iBAC7B;qBAAI;oBACH,KAAI,CAAC,SAAS,GAAC,KAAK,CAAC;oBACrB,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;iBAC7B;aAEF;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,kDAAkD;IAClD,kDAAgB,GAAhB;QAAA,iBAoBC;QAnBC,IAAI,CAAC,cAAc,GAAC,IAAI,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QACjC,mCAAmC;QACnC,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CACrE,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAC3B;gBACE,KAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;aACtC;YACD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;QAE5B,CAAC,EACD,eAAK;YACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,kGAAkG,CACnG,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAID,kDAAgB,GAAhB;QAAA,iBAwBC;QAtBC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QACjC,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CACrE,cAAI;YACF,IAAI,IAAI,CAAC,cAAc,CAAC,EACxB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,oGAAoG,CAAC;aACpI;iBACG;gBACF,KAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrC,IAAG,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAC1B;oBACE,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;oBAC5B,KAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;iBAClC;qBAAI;oBACH,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;oBAC5B,mCAAmC;iBACpC;aAEF;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,0DAAwB,GAAxB,UAAyB,MAAc;QAAvC,iBAiBC;QAhBC,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CACrE,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3C,KAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;aACtC;iBAAM;gBACL,KAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;aAClC;YACD,KAAI,CAAC,mBAAmB,EAAE,CAAC;QAC7B,CAAC,EACD,eAAK;YACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,qFAAqF,CACtF,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,qDAAmB,GAA3B;QACE,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC;QAChC,IAAI,CAAC,qBAAqB,GAAG,gBAAgB,CAAC;IAChD,CAAC;IAED,8CAAY,GAAZ;QACE,IAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YACrC,IAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC;YAC/B,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,iCAAiC;aAChE;iBAAM;gBACL,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;aACnC;QACH,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;IAGD,2BAA2B;IAC3B,oDAAkB,GAAlB,UAAmB,EAAS;QAA5B,iBAuBC;QArBC,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,cAAI;YACnD,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC;gBACzD,6CAA6C;gBAC7C,IAAI,KAAI,CAAC,cAAc,IAAE,CAAC,EAC1B;oBACE,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAzC,CAAyC,CAAC,CAAC;oBAC/D,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;iBACxB;qBACG;oBACF,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,2BAA2B,CAAC,CAAC,EAAnD,CAAmD,CAAC,CAAC;oBACzE,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;iBAExB;aAEF;iBACG;gBACF,KAAI,CAAC,cAAc,GAAC,CAAC,CAAC;aACvB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,wDAAsB,GAAtB,UAAuB,EAAS,EAAE,iBAAwB;QAA1D,iBAUC;QARC,IAAI,CAAC,SAAS,GAAC,IAAI,CAAC;QACpB,YAAY,CAAC,UAAU,CAAE,oBAAoB,CAAC,CAAC;QAC/C,YAAY,CAAC,OAAO,CAAE,oBAAoB,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3D,IAAG,CAAC,IAAI,CAAC,eAAe,EACxB;YACE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAA/C,CAA+C,CAAC,CAAC;SACtE;IAEH,CAAC;IAGD,kDAAgB,GAAhB,UAAiB,OAAe;QAAhC,iBAmBC;QAjBC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,SAAS,CACpD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;gBAChB,KAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpC,4CAA4C;gBAC7C,KAAa,UAAqB,EAArB,UAAI,CAAC,gBAAgB,EAArB,cAAqB,EAArB,IAAqB,EAClC;oBADI,IAAI,CAAC;oBAEP,IAAG,CAAC,CAAC,aAAa,IAAE,KAAI,CAAC,sBAAsB,CAAC,aAAa,EAAC;wBAC5D,KAAI,CAAC,sBAAsB,CAAC,gBAAgB,GAAC,CAAC,CAAC,iBAAiB,CAAC;qBAClE;iBACF;aACF;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,kCAAkC;IAClC,kDAAgB,GAAhB,UAAiB,EAAS;QAA1B,iBA+BC;QA7BC,sCAAsC;QACpC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+JAAkC,EAAC,EAAC,IAAI,EAAE,EAAC,MAAM,EAAC,CAAC,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;QACzH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;gBACE,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACxB;iBACG;gBACF,KAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,EAAC,KAAI,CAAC,MAAM,EAAC,KAAI,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAChF,cAAI;oBACF,IAAI,IAAI,CAAC,OAAO,CAAC,IAAE,CAAC,EACpB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,yCAAyC,GAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;wBAC5F,kEAAkE;wBAClE,KAAI,CAAC,gBAAgB,EAAE,CAAC;wBAExB,6GAA6G;qBAC9G;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACvB,CAAC,CACF,CAAC;gBACF,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACxB;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,2CAA2C;IAC3C,0DAAwB,GAAxB,UAAyB,EAAS,EAAC,KAAY;QAA/C,iBAoEC;QAlEC,+FAA+F;QAC/F,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,cAAI;YACnD,IAAI,cAAc,GAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACnC,KAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,iBAAiB,EAAC,cAAc,CAAC,CAAC;YAC7E,IAAG,KAAI,CAAC,WAAW,CAAC,KAAK,EACzB;gBAEA,IAAI,SAAS,GAAG,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+JAAkC,EAAC,EAAC,IAAI,EAAE,EAAC,aAAa,EAAC,EAAE,EAAC,SAAS,EAAC,KAAK,EAAC,YAAY,EAAC,KAAI,CAAC,iBAAiB,EAAC,MAAM,EAAC,CAAC,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;gBAC/K,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;oBACtC,IAAG,MAAM,IAAE,KAAK,EAChB;wBACE,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;qBACxB;yBACG;wBAEF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,kCAAkC,CACnC,CAAC;wBACJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BA+BM;wBACJ,KAAI,CAAC,gBAAgB,EAAE,CAAC;wBACxB,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;qBACxB;gBACF,CAAC,CAAC,CAAC;aAEL,gBAAe;iBACV;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,qHAAqH,CACtH,CAAC;gBACF,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACxB;QACF,CAAC,CAAC,CAAC;IAEN,CAAC;IAID,uBAAuB;IACf,uDAAqB,GAA7B,UAA8B,cAAqB,EAAE,IAAQ;QAE3D,QAAQ,cAAc,EACtB;YACE,eAAe;YACf,KAAK,CAAC;gBACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;oBACzC,aAAa,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC;oBACnC,UAAU,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC;oBAC7B,gBAAgB,EAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;oBACxC,qBAAqB,EAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;oBAClD,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC;oBAC3C,OAAO,EAAG,CAAC,IAAI,CAAC,OAAO,CAAC;oBACxB,aAAa,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC;oBACnC,oBAAoB,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC;oBACjD,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAChE,kBAAkB,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAClE,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAChE,oBAAoB,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACtE,qBAAqB,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC;oBACnD,uBAAuB,EAAE,CAAC,IAAI,CAAC,uBAAuB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC5E,6BAA6B,EAAE,CAAC,IAAI,CAAC,6BAA6B,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACxF,8BAA8B,EAAE,CAAC,IAAI,CAAC,8BAA8B,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC1F,4BAA4B,EAAE,CAAC,IAAI,CAAC,4BAA4B,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACtF,gCAAgC,EAAE,CAAC,IAAI,CAAC,gCAAgC,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC9F,sCAAsC,EAAC,CAAC,IAAI,CAAC,sCAAsC,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACzG,wBAAwB,EAAE,CAAC,IAAI,CAAC,wBAAwB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC9E,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAChE,oBAAoB,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACtE,qBAAqB,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC;oBACnD,uBAAuB,EAAE,CAAC,IAAI,CAAC,uBAAuB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC5E,wBAAwB,EAAC,CAAC,IAAI,CAAC,wBAAwB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC7E,qBAAqB,EAAC,CAAC,IAAI,CAAC,qBAAqB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACvE,qBAAqB,EAAC,CAAC,IAAI,CAAC,qBAAqB,EAAE,yDAAU,CAAC,QAAQ,CAAC;iBAExE,CAAC,CAAC;gBACH,MAAM;YACZ,8BAA8B;YAC5B,KAAK,CAAC;gBACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;oBACzC,aAAa,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC;oBACnC,UAAU,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC;oBAC7B,qCAAqC;oBACrC,qBAAqB,EAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;oBAClD,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC;oBAC3C,OAAO,EAAG,CAAC,IAAI,CAAC,OAAO,EAAC,yDAAU,CAAC,QAAQ,CAAC;oBAC5C,aAAa,EAAC,CAAC,IAAI,CAAC,aAAa,EAAC,yDAAU,CAAC,QAAQ,CAAC;oBACtD,oBAAoB,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC;oBACjD,cAAc,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC;oBACrC,SAAS,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;oBACxB,YAAY,EAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;oBACrC,wBAAwB,EAAE,CAAC,IAAI,CAAC,wBAAwB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC9E,qBAAqB,EAAE,CAAC,IAAI,CAAC,qBAAqB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACxE,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAChE,kBAAkB,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAClE,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAChE,oBAAoB,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACtE,qBAAqB,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC;oBACnD,uBAAuB,EAAE,CAAC,IAAI,CAAC,uBAAuB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC5E,6BAA6B,EAAE,CAAC,IAAI,CAAC,6BAA6B,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACxF,iGAAiG;oBACjG,4BAA4B,EAAE,CAAC,IAAI,CAAC,4BAA4B,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACtF,wBAAwB,EAAE,CAAC,IAAI,CAAC,wBAAwB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC9E,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAChE,oBAAoB,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACtE,qBAAqB,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC;oBACnD,uBAAuB,EAAE,CAAC,IAAI,CAAC,uBAAuB,EAAE,yDAAU,CAAC,QAAQ,CAAC;iBAG7E,CAAC;gBAEF,MAAM;YACZ,8BAA8B;YAC9B,KAAK,CAAC;gBACA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;oBACzC,aAAa,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC;oBACnC,OAAO,EAAG,CAAC,IAAI,CAAC,OAAO,EAAC,yDAAU,CAAC,QAAQ,CAAC;oBAC5C,aAAa,EAAC,CAAC,IAAI,CAAC,aAAa,EAAC,yDAAU,CAAC,QAAQ,CAAC;oBACtD,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC;oBAC3C,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAChE,kBAAkB,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAClE,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAChE,oBAAoB,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACtE,qBAAqB,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC;oBACnD,uBAAuB,EAAE,CAAC,IAAI,CAAC,uBAAuB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC5E,6BAA6B,EAAE,CAAC,IAAI,CAAC,6BAA6B,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACxF,uBAAuB,EAAE,CAAC,IAAI,CAAC,uBAAuB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC5E,wBAAwB,EAAE,CAAC,IAAI,CAAC,wBAAwB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBAC9E,qBAAqB,EAAE,CAAC,IAAI,CAAC,qBAAqB,EAAE,yDAAU,CAAC,QAAQ,CAAC;oBACxE,qBAAqB,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC;oBACnD,cAAc,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC;oBACrC,iBAAiB,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC;oBAC3C,oBAAoB,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC;oBAClD,SAAS,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;oBACxB,YAAY,EAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;iBACrC,CAAC;gBACF,MAAM;SACX;IAEH,CAAC;IAGD,kCAAkC;IAClC,oDAAkB,GAAlB,UAAmB,EAAS,EAAE,KAAY,EAAE,KAAY;QAAxD,iBAyCC;QAvCC,sCAAsC;QACpC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+JAAkC,EAAC,EAAC,IAAI,EAAC,EAAC,aAAa,EAAC,EAAE,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,CAAC,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;QACrJ,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aAEC;iBACG;gBACF,KAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,EAAE,EAAC,KAAK,EAAC,KAAI,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAC5E,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,iBAAiB,EAAE,CAAC;wBACzB,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;wBACvB,kEAAkE;qBACnE;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,IAAI,CAAC,gBAAgB,CAAC,CACvB,CAAC;qBAEH;gBACH,CAAC,EACD,eAAK;oBACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,oHAAoH,CACrH,CAAC;gBACJ,CAAC,CACF,CAAC;gBACF,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACxB;QACL,CAAC,CAAC,CAAC;IAEL,CAAC;IAEA,oCAAoC;IACpC,oDAAkB,GAAlB,UAAmB,EAAS,EAAE,KAAY,EAAE,KAAY;QAAxD,iBAwCC;QAtCC,sCAAsC;QACpC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+JAAkC,EAAC,EAAC,IAAI,EAAC,EAAC,aAAa,EAAC,EAAE,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,CAAC,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QACtI,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;gBACC,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aAEvB;iBACG;gBACH,KAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,EAAC,KAAK,EAAC,KAAI,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAC1E,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,iBAAiB,EAAE,CAAC;wBACzB,kEAAkE;qBACnE;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBAEpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,oHAAoH,CACrH,CAAC;gBACJ,CAAC,CACF,CAAC;gBAEF,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aAEvB;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,uCAAuC;IACxC,uDAAqB,GAArB,UAAsB,EAAS,EAAC,KAAY,EAAE,KAAY;QAA1D,iBA8CC;QA5CG,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+JAAkC,EAAC,EAAC,IAAI,EAAC,EAAC,MAAM,EAAC,CAAC,EAAE,KAAK,EAAC,KAAK,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;QACrI,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;gBACE,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACxB;iBACG;gBACF,IAAI,KAAK,GAAC;oBACR,eAAe,EAAC,EAAE;oBAClB,WAAW,EAAC,KAAK;oBACjB,eAAe,EAAC,MAAM;oBACtB,cAAc,EAAC,KAAI,CAAC,iBAAiB;iBACtC;gBAED,KAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,SAAS,CACpD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,kCAAkC,CACnC,CAAC;wBACF,KAAI,CAAC,iBAAiB,EAAE,CAAC;qBAC1B;yBACG;wBAEF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,IAAI,CAAC,cAAc,CAAC,CACrB,CAAC;qBACH;gBACH,CAAC,EACD,eAAK;oBACH,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,8GAA8G,CAC/G,CAAC;gBACJ,CAAC,CACF,CAAC;gBACF,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aAExB;QACL,CAAC,CAAC,CAAC;IAEL,CAAC;IAED,+CAA+C;IAC/C,qDAAmB,GAAnB,UAAoB,EAAS,EAAE,KAAY;QAA3C,iBAaC;QAXC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+JAAkC,EAAC,EAAC,IAAI,EAAC,EAAC,aAAa,EAAC,EAAE,EAAC,MAAM,EAAC,CAAC,EAAC,KAAK,EAAC,KAAK,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC;QACpJ,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;gBACE,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aAExB;iBACG;gBACF,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACxB;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,4CAA4C;IAC5C,qDAAmB,GAAnB,UAAoB,EAAS,EAAE,KAAY;QAA3C,iBAaC;QAXC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+JAAkC,EAAC,EAAC,IAAI,EAAC,EAAC,aAAa,EAAC,EAAE,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,CAAC,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;QACpK,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;gBACE,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACxB;iBACG;gBACF,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACxB;QACL,CAAC,CAAC,CAAC;IAEL,CAAC;IAGD,4CAA4C;IAC5C,uDAAqB,GAArB,UAAsB,EAAS,EAAE,KAAY,EAAE,OAAe;QAA9D,iBAmDC;QAjDC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+JAAkC,EAAC,EAAC,IAAI,EAAC,EAAC,aAAa,EAAC,EAAE,EAAC,KAAK,EAAC,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,QAAQ,EAAC,IAAI,CAAC,QAAQ,EAAC,KAAK,EAAC,IAAI,CAAC,MAAM,EAAC,KAAK,EAAC,IAAI,CAAC,iBAAiB,EAAC,MAAM,EAAC,EAAE,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,KAAK,EAAC,OAAO,EAAC,CAAC,CAAC;QACzO,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;gBAEE,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;gBACxB,sCAAsC;gBACtC,IAAI,OAAO,GAAC;oBACV,eAAe,EAAC,EAAE;oBAClB,yBAAyB,EAAC,KAAI,CAAC,MAAM;oBACrC,QAAQ,EAAC,KAAI,CAAC,iBAAiB;iBAChC;gBACA,KAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,SAAS,CACxD,cAAI;gBACJ,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,kDAAkD,CACnD,CAAC;gBACJ,CAAC,CACF,CAAC;gBACF,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;gBAC1B,KAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzB,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aAC1B;iBACG;gBACF,IAAI,OAAO,GAAC;oBACV,eAAe,EAAC,EAAE;oBAClB,yBAAyB,EAAC,KAAI,CAAC,MAAM;oBACrC,QAAQ,EAAC,KAAI,CAAC,iBAAiB;iBAChC;gBACA,KAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,SAAS,CACxD,cAAI;gBACJ,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,kDAAkD,CACnD,CAAC;gBACJ,CAAC,CACF,CAAC;gBACH,KAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzB,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aAExB;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,sBAAI,qDAAgB;aAApB;YACE,IAAI,IAAI,CAAC,UAAU,CAAC,oBAAoB,KAAK,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,6BAA6B,KAAK,EAAE,EAAE;gBACvG,OAAO,UAAU,CAAC;aACnB;YACD,OAAO,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC;QAClD,CAAC;;;OAAA;IAGD,gCAAgC;IAChC,6CAAW,GAAX,UAAY,KAAY;QAEtB,IAAM,WAAW,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;QAC7D,IAAI,CAAC,YAAY,CAAC,YAAY,GAAC,CAAC,CAAC;QACjC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,EAAC,IAAI,CAAC,WAAW,EAAC,IAAI,CAAC,QAAQ,EAAC,WAAW,CAAC,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC7H,4DAA4D;IAC9D,CAAC;IAED,mDAAiB,GAAjB,UAAkB,MAAa,EAAE,WAAkB,EAAE,QAAe,EAAE,KAAa,EAAE,KAAa;QAAlG,iBA4BC;QA1BC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,YAAY,CAAC,YAAY,GAAC,MAAM,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,OAAO,GAAC,KAAK,CAAC;QAChC,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,YAAY,CAAC,WAAW,GAAC,WAAW,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,WAAW,GAAC,IAAI,CAAC;QACnC,IAAG,KAAK,EACR;YACE,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAC,KAAK,CAAC;SAC1C;QACA,UAAU;QACV,MAAM,CAAC,YAAY,CAAC,OAAO,CAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QAC7E,6BAA6B;QAC7B,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,aAAG;YACzE,IAAI,GAAG,CAAC,cAAc,CAAC,EACvB;gBACE,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAC5B,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,oGAAoG,CAAC,CAAC;aAErI;iBACD;gBACE,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAC5B,KAAI,CAAC,gBAAgB,GAAE,GAAG,CAAC,MAAM,CAAC,CAAC;gBACnC,KAAI,CAAC,cAAc,GAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;aAE9C;QAAA,CAAC,CAAC,CAAC;IACN,CAAC;IAED,8DAA4B,GAA5B,UAA6B,YAAmB;QAE/C,IAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kJAAgC,EAAC,EAAC,IAAI,EAAC,EAAC,aAAa,EAAC,YAAY,EAAC,EAAC,YAAY,EAAC,KAAK,EAAE,MAAM,EAAE,OAAO;YAC1I,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;QACjB,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,cAAI;YACpC,IAAG,IAAI,IAAE,KAAK,EACd;aACC;iBACG;gBACF,8BAA8B;aAC/B,iBAAgB;YACnB,sBAAsB;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qCAAqC;IACrC,kEAAgC,GAAhC;QAEI,IAAI,CAAC,WAAW,CAAC,2BAA2B,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,aAAG;YACzE,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,mEAAmE,EAAE,CAAC,CAAC;YAC7G,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBACzD,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC3C,OAAO;aACR;YACD,IAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAElD,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAE/F,UAAU,CAAC;gBACT,wEAAwE;gBACxE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBACjC,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,CAAC,EAAE,GAAG,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;IAEP,CAAC;IACD,oGAAoG;IACpG,gDAAc,GAAd,UAAe,OAAe;QAC5B,IAAI,OAAO,KAAK,UAAU,EAAE;YAC1B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC,6CAA6C;SAC9E;aAAM;YACL,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,CAAC,qDAAqD;SACvF;IACH,CAAC;;gBAxpCQ,kEAAW;gBADX,yEAAW;gBAJX,gEAAe;gBADsB,oDAAM;gBAO3C,sDAAM;gBAGN,mEAAS;gBAR2B,0DAAW;;IAmB3C,uBAAuB;QALnC,+DAAS,CAAC;YACT,QAAQ,EAAE,qBAAqB;YAC/B,4FAA+C;;SAEhD,CAAC;uFA+DuB,kEAAW;YACX,yEAAW;YACd,gEAAe;YACnB,oDAAM;YACJ,sDAAM;YACR,mEAAS;YACD,0DAAW;OApExB,uBAAuB,CA4oCnC;IAAD,8BAAC;CAAA,mBAAc;AA5oCqB;;;;;;;;;;;;;;;;;;;;;;;;;ACrBsB;AACU;AACK;AACb;;IAmB1D,6CACS,WAAwB,EACvB,GAAgB,EACjB,iBAAsD,EAC7B,IAAS;QAHlC,gBAAW,GAAX,WAAW,CAAa;QACvB,QAAG,GAAH,GAAG,CAAa;QACjB,sBAAiB,GAAjB,iBAAiB,CAAqC;QAC7B,SAAI,GAAJ,IAAI,CAAK;QAP3C,wBAAmB,GAAkB,EAAE,CAAC;IAOO,CAAC;IAEhD,sDAAQ,GAAR;QACE,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAGD,uDAAS,GAAT;QACE,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED,kDAAI,GAAJ;QACE,IAAI,IAAI,GAAE,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,IAAI,GAAE;YACR,eAAe,EAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;YAC1C,WAAW,EAAC,EAAE,GAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;YACrC,cAAc,EAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;YAC3C,mBAAmB,EAAC,IAAI,CAAC,MAAM,CAAC;YAChC,sBAAsB,EAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC;SACtD;QACD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,uDAAS,GAAT;QACE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAC/B,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SAClC,CAAC;IACJ,CAAC;IAGD,mEAAqB,GAArB;QAAA,iBA6BC;QA3BC,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,SAAS,CACjD,cAAI;YACF,KAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACvC,qBAAqB;YACrB,IAAG,KAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAE,CAAC,EAClC;gBACE,KAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;oBAC5C,IAAG,OAAO,CAAC,mBAAmB,CAAC,IAAE,CAAC,IAAI,OAAO,CAAC,mBAAmB,CAAC,IAAE,CAAC,EACrE;wBACE,KAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBACxC;gBACH,CAAC,CAAC,CAAC;aACJ;iBAAI;gBACH,KAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAC,OAAO,EAAC,KAAK;oBAC5C,IAAG,OAAO,CAAC,mBAAmB,CAAC,IAAE,CAAC,EAClC;wBACE,KAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBACxC;gBACH,CAAC,CAAC,CAAC;aAEJ;QAEH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;;gBAnFM,yEAAW;gBAFX,0DAAW;gBACX,qEAAY;gDAwBhB,oDAAM,SAAC,wEAAe;;IARd,mCAAmC;QAL/C,+DAAS,CAAC;YACT,QAAQ,EAAE,mCAAmC;YAC7C,0GAA6D;;SAE9D,CAAC;uFAMsB,yEAAW;YAClB,0DAAW;YACE,qEAAY;OAP7B,mCAAmC,CAsE/C;IAAD,0CAAC;CAAA;AAtE+C;;;;;;;;;;;;;AClBhD;AAAe,6GAA8C,mJAAmJ,E;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAjI;AACnB;AACD;AACR;AACC;AACK;AACuG;AAC5F;;IAwClE,gCAAoB,WAAwB,EACnC,MAAgB,EACf,GAAgB,EAChB,QAAyB;QAHf,gBAAW,GAAX,WAAW,CAAa;QACnC,WAAM,GAAN,MAAM,CAAU;QACf,QAAG,GAAH,GAAG,CAAa;QAChB,aAAQ,GAAR,QAAQ,CAAiB;QAtBnC,kCAAkC;QAClC,iBAAY,GAAa,EAAE,CAAC;QAE5B,qBAAgB,GAAa,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QAG3D,mBAAc,GAAY,IAAI,CAAC;QAC/B,oBAAe,GAAG,EAAE,CAAC;QACrB,YAAO,GAAS,IAAI,IAAI,EAAE,CAAC;QAevB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC5B,CAAC;IAEJ,yCAAQ,GAAR;QACE,mCAAmC;QACnC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YACpC,GAAG,EAAE,CAAC,EAAE,EAAE,0DAAU,CAAC,QAAQ,CAAC;SAC/B,CAAC,CAAC;IACL,CAAC;IAED,gCAAgC;IACjC,4CAAW,GAAX,UAAY,KAAY;QACvB,IAAM,WAAW,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;QAC7D,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5D,CAAC;IAEC,oDAAmB,GAAnB;QAAA,iBAeC;QAbC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC,SAAS,CAC/C,UAAO,IAAI;;gBACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBAEjC,IAAI,CAAC,UAAU,GAAG,IAAI,0EAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC5D,IAAI,CAAC,UAAU,CAAC,SAAS,GAAC,IAAI,CAAC,SAAS,CAAC;gBACzC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;;;aAC7B,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,kDAAkD;IAClD,iDAAgB,GAAhB,UAAiB,KAAY,EAAE,UAAiB;QAC9C,IAAI,CAAC,eAAe,GAAC,KAAK,CAAC;QAE3B,mBAAmB;QACnB,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,EAC1B;YACG,IAAI,CAAC,cAAc,EAAE,CAAC;SACxB;QAED,kBAAkB;QAClB,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,EAC1B;YACG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;SACjC;QAED,oBAAoB;QACpB,IAAG,IAAI,CAAC,eAAe,IAAE,CAAC,EAC1B;YACG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;SACnC;IAGH,CAAC;IAIH;;;;;;;;;UASM;IAOJ,6CAAY,GAAZ,UAAa,IAAI;QACf,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,GAAG,GAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACb,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,EAAE,GAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACZ,IAAI,EAAE,GAAC,CAAC,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC;QACd,IAAI,IAAI,GAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACf,IAAI,OAAO,GAAC,IAAI,IAAI,CAAC,IAAI,EAAC,EAAE,EAAC,EAAE,CAAC,CAAC;QACjC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,oCAAoC;IACpC,gDAAe,GAAf,UAAgB,UAAiB;QAAjC,iBAqCC;QAnCC,sCAAsC;QACpC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+KAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,EAAE,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QACrI,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;gBACC,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACvB;iBACG;gBACH,KAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,SAAS,CACvD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,mBAAmB,EAAE,CAAC;qBAC5B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBAEpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,iHAAiH,CAClH,CAAC;gBACJ,CAAC,CACF,CAAC;gBAEF,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACvB;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB;IACjB,+CAAc,GAAd;QAAA,iBAmCD;QAjCG,sCAAsC;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+KAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,MAAM,EAAC,EAAE,EAAE,MAAM,EAAC,iBAAiB,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QACzI,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;gBACC,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACvB;iBACG;gBACH,KAAI,CAAC,WAAW,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,SAAS,CAChD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,0BAA0B,CAC3B,CAAC;wBACF,KAAI,CAAC,mBAAmB,EAAE;qBAC3B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,gHAAgH,CACjH,CAAC;gBACJ,CAAC,CACF,CAAC;gBACF,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACvB;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,4BAA4B;IAC5B,8CAAa,GAAb,UAAc,UAAiB;QAA/B,iBAsCC;QApCG,sCAAsC;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,+KAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,UAAU,EAAC,UAAU,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,EAAC,gBAAgB,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QAC7J,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;gBACC,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACvB;iBACG;gBACH,KAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,UAAU,EAAC,MAAM,CAAC,CAAC,SAAS,CAC9D,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,yBAAyB,CAC1B,CAAC;wBACF,KAAI,CAAC,mBAAmB,EAAE,CAAC;qBAC5B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBAEpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,+GAA+G,CAChH,CAAC;gBACJ,CAAC,CACF,CAAC;gBAEF,KAAI,CAAC,eAAe,GAAC,CAAC,CAAC;aACvB;QACL,CAAC,CAAC,CAAC;IAEL,CAAC;;gBA9PQ,yEAAW;gBAGX,kEAAS;gBAGT,2DAAW;gBAJX,gEAAe;;;4BAwCrB,uDAAS,SAAC,cAAc,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;;IAhB/B,sBAAsB;QAPlC,+DAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,2FAA8C;YAE9C,aAAa,EAAE,+DAAiB,CAAC,IAAI;;SACtC,CAAC;uFAsBiC,yEAAW;YAC5B,kEAAS;YACV,2DAAW;YACN,gEAAe;OAvBxB,sBAAsB,CAsOlC;IAAD,6BAAC;CAAA;AAtOkC;;;;;;;;;;;;;AC3BnC;AAAA;AAAA;AAAA;AAAA;AAAA;IAAA;IAwBA,CAAC;IAAD,eAAC;AAAD,CAAC;;AAED;IAAA;IAgBA,CAAC;IAAD,4BAAC;AAAD,CAAC;;AACD;IAAA;IASA,CAAC;IAAD,oBAAC;AAAD,CAAC;;AAGD;IAAA;IAKA,CAAC;IAAD,uBAAC;AAAD,CAAC;;;;;;;;;;;;;;AC5DD;AAAe,m0DAAowD,E;;;;;;;;;;;;;;;;;;;;;;;ACA1tD;AAExB;;IAiB/B;QAAA,iBAAiB;QAPjB,iBAAY,GAAa,EAAE,CAAC;QAK5B,wBAAmB,GAAC,IAAI;QAexB,cAAS,GAAuC,UAAC,QAAQ,EAAE,IAAI;YAC7D,IAAI,IAAI,KAAK,OAAO,EAAE;gBAClB,IAAG,QAAQ,CAAC,MAAM,EAAE,IAAG,CAAC,EAAC,EAAE,aAAa;oBACtC,IAAG,QAAQ,CAAC,MAAM,EAAE,IAAG,CAAC,EAAC,EAAE,YAAY;wBACrC,IAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;wBAChC,IAAG,CAAC,mCAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAE,mCAAM,CAAC,KAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,mCAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAE,mCAAM,CAAC,KAAI,CAAC,EAAE,CAAC,CAAC,EAAC;4BAChF,OAAO,OAAO,CAAC;yBAChB;wBACD,IAAG,CAAC,mCAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAC,mCAAM,CAAC,KAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,mCAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAE,mCAAM,CAAC,KAAI,CAAC,cAAc,CAAC,CAAC,EAAC;4BAC3F,OAAO,gBAAgB,CAAC;yBACzB;wBACD,IAAG,CAAC,mCAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAC,mCAAM,CAAC,KAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,mCAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAE,mCAAM,CAAC,KAAI,CAAC,mBAAmB,CAAC,CAAC,EAAC;4BAC5G,OAAO,qBAAqB,CAAC;yBAC9B;qBACA;iBACF;aACN;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;IA/Be,CAAC;IAEjB,4CAAQ,GAAR;QACE,IAAI,CAAC,YAAY,GAAC,IAAI,CAAC,KAAK,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAE,IAAI,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAAC;QAC9D,IAAI,CAAC,EAAE,GAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,EAAE,GAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAC1E,IAAI,YAAY,GAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACnF,IAAI,CAAC,cAAc,GAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAC,CAAC,CAAC,CAAC;QACjD,IAAI,CAAC,mBAAmB,GAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAC,CAAC,CAAC;IACvD,CAAC;IAuBD,gDAAY,GAAZ,UAAa,IAAI;QACf,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,GAAG,GAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACb,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,EAAE,GAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE;QACvB,IAAI,EAAE,GAAC,CAAC,CAAC,CAAC,CAAC,GAAC,CAAC,CAAC;QACd,IAAI,IAAI,GAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACf,IAAI,OAAO,GAAC,IAAI,IAAI,CAAC,IAAI,EAAC,EAAE,EAAC,EAAE,CAAC,CAAC;QACjC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,2CAAO,GAAP,UAAQ,IAAI,EAAC,IAAI;QACf,IAAI,CAAC,GAAC,CAAC,CAAC;QACN,OAAO,CAAC,GAAC,IAAI,EAAE;YACb,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAC,EAAE,GAAC,EAAE,GAAC,EAAE,GAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB;YAC7D,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC;gBAC5C,CAAC,EAAE,CAAC;SACL;QACH,IAAI,QAAQ,GAAC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACnF,OAAO,QAAQ,CAAC;IAClB,CAAC;;;wBA3DA,mDAAK;;IAHK,yBAAyB;QALrC,+DAAS,CAAC;YACT,QAAQ,EAAE,uBAAuB;YACjC,8FAAiD;;SAElD,CAAC;;OACW,yBAAyB,CAgErC;IAAD,gCAAC;CAAA;AAhEqC;;;;;;;;;;;;;ACVtC;AAAe,oHAAqD,iBAAiB,uCAAuC,YAAY,qtDAAqtD,glBAAglB,qJAAqJ,iRAAiR,sUAAsU,6JAA6J,ssBAAssB,0BAA0B,isCAAisC,yBAAyB,40CAA40C,uBAAuB,ysBAAysB,+hCAA+hC,6BAA6B,8OAA8O,+bAA+b,oBAAoB,8OAA8O,icAAic,mBAAmB,6PAA6P,sbAAsb,sBAAsB,g2DAAg2D,0BAA0B,moBAAmoB,6BAA6B,qMAAqM,wTAAwT,oBAAoB,KAAK,gBAAgB,iMAAiM,2TAA2T,mBAAmB,KAAK,eAAe,qMAAqM,+SAA+S,sBAAsB,isBAAisB,+OAA+O,qbAAqb,oBAAoB,4BAA4B,qQAAqQ,iBAAiB,+WAA+W,sBAAsB,qBAAqB,yNAAyN,sBAAsB,qBAAqB,2aAA2a,gNAAgN,cAAc,oLAAoL,eAAe,oBAAoB,4GAA4G,sBAAsB,6wBAA6wB,0JAA0J,sBAAsB,wlBAAwlB,cAAc,+HAA+H,6eAA6e,0MAA0M,cAAc,oHAAoH,eAAe,oBAAoB,mHAAmH,8BAA8B,wtBAAwtB,sYAAsY,4vBAA4vB,stBAAstB,uDAAuD,mvBAAmvB,qJAAqJ,8BAA8B,uBAAuB,gCAAgC,uBAAuB,0CAA0C,qCAAqC,wDAAwD,oEAAoE,qCAAqC,8GAA8G,sCAAsC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,2EAA2E,sCAAsC,sIAAsI,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,qHAAqH,qCAAqC,KAAK,sCAAsC,sHAAsH,sCAAsC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,mCAAmC,KAAK,sCAAsC,2DAA2D,KAAK,yCAAyC,gDAAgD,KAAK,yCAAyC,gDAAgD,KAAK,2CAA2C,uNAAuN,iBAAiB,iVAAiV,iBAAiB,iTAAiT,iBAAiB,mXAAmX,iBAAiB,uLAAuL,8IAA8I,iBAAiB,oTAAoT,iBAAiB,2RAA2R,iBAAiB,ydAAyd,iBAAiB,wVAAwV,iBAAiB,4QAA4Q,0LAA0L,iBAAiB,4QAA4Q,iBAAiB,gKAAgK,sCAAsC,8CAA8C,8aAA8a,mMAAmM,wFAAwF,oYAAoY,unBAAunB,8NAA8N,iBAAiB,qXAAqX,iBAAiB,wQAAwQ,iBAAiB,4SAA4S,iBAAiB,6SAA6S,iBAAiB,wRAAwR,iBAAiB,ydAAyd,iBAAiB,yMAAyM,kBAAkB,wLAAwL,iBAAiB,4QAA4Q,iBAAiB,gKAAgK,sCAAsC,8CAA8C,8aAA8a,mMAAmM,wFAAwF,oYAAoY,goBAAgoB,kOAAkO,iBAAiB,4XAA4X,iBAAiB,0NAA0N,iBAAiB,mRAAmR,iBAAiB,ydAAyd,iBAAiB,+XAA+X,iBAAiB,4QAA4Q,iBAAiB,gKAAgK,sCAAsC,8CAA8C,8MAA8M,iBAAiB,gkBAAgkB,mMAAmM,wFAAwF,oYAAoY,wTAAwT,2iBAA2iB,YAAY,6HAA6H,aAAa,kQAAkQ,iBAAiB,6NAA6N,iBAAiB,mRAAmR,iBAAiB,ydAAyd,iBAAiB,+XAA+X,iBAAiB,4QAA4Q,iBAAiB,gKAAgK,sCAAsC,8CAA8C,2PAA2P,wbAAwb,6LAA6L,wFAAwF,2XAA2X,2QAA2Q,iBAAiB,8NAA8N,iBAAiB,mRAAmR,iBAAiB,0dAA0d,iBAAiB,+XAA+X,iBAAiB,4QAA4Q,iBAAiB,gKAAgK,sCAAsC,8CAA8C,yPAAyP,wbAAwb,4dAA4d,wFAAwF,4XAA4X,mWAAmW,iBAAiB,oTAAoT,iBAAiB,4QAA4Q,iBAAiB,gKAAgK,sCAAsC,8CAA8C,8aAA8a,uQAAuQ,iBAAiB,oTAAoT,iBAAiB,4QAA4Q,iBAAiB,gKAAgK,sCAAsC,8CAA8C,8aAA8a,kQAAkQ,iBAAiB,6SAA6S,iBAAiB,4QAA4Q,iBAAiB,wIAAwI,sCAAsC,8CAA8C,mQAAmQ,iBAAiB,6SAA6S,iBAAiB,4QAA4Q,iBAAiB,wIAAwI,sCAAsC,8CAA8C,oXAAoX,iBAAiB,6QAA6Q,iBAAiB,gKAAgK,sCAAsC,8CAA8C,mGAAmG,iBAAiB,gjBAAgjB,iUAAiU,qJAAqJ,8BAA8B,uBAAuB,gCAAgC,uBAAuB,gCAAgC,sDAAsD,KAAK,wDAAwD,oEAAoE,qCAAqC,8GAA8G,sCAAsC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,2EAA2E,sCAAsC,sIAAsI,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,qHAAqH,qCAAqC,KAAK,sCAAsC,sHAAsH,sCAAsC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,uDAAuD,KAAK,yCAAyC,gDAAgD,KAAK,yCAAyC,gDAAgD,KAAK,2CAA2C,mHAAmH,iBAAiB,wQAAwQ,iBAAiB,4JAA4J,sCAAsC,8CAA8C,mRAAmR,qJAAqJ,8BAA8B,uBAAuB,gCAAgC,uBAAuB,uCAAuC,qCAAqC,wDAAwD,oEAAoE,qCAAqC,8GAA8G,sCAAsC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,2EAA2E,sCAAsC,sIAAsI,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,qHAAqH,qCAAqC,KAAK,sCAAsC,sHAAsH,sCAAsC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,uDAAuD,KAAK,yCAAyC,gDAAgD,KAAK,yCAAyC,gDAAgD,KAAK,2CAA2C,mHAAmH,iBAAiB,wQAAwQ,iBAAiB,4JAA4J,sCAAsC,8CAA8C,uRAAuR,qJAAqJ,8BAA8B,uBAAuB,gCAAgC,uBAAuB,0CAA0C,qCAAqC,wDAAwD,oEAAoE,qCAAqC,8GAA8G,sCAAsC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,qHAAqH,sCAAsC,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,2EAA2E,sCAAsC,sIAAsI,KAAK,sCAAsC,6IAA6I,KAAK,sCAAsC,qHAAqH,qCAAqC,KAAK,sCAAsC,sHAAsH,sCAAsC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,sHAAsH,qCAAqC,KAAK,sCAAsC,uDAAuD,KAAK,yCAAyC,gDAAgD,KAAK,2CAA2C,mHAAmH,iBAAiB,wQAAwQ,iBAAiB,4JAA4J,sCAAsC,8CAA8C,miBAAmiB,2kBAA2kB,oBAAoB,u5BAAu5B,E;;;;;;;;;;;;ACA/8tE;AAAe,k6BAAm2B,mGAAmG,cAAc,mCAAmC,WAAW,8hIAA8hI,2SAA2S,4EAA4E,gBAAgB,gKAAgK,E;;;;;;;;;;;;ACAtlL;AAAe,kFAAmB,mCAAmC,qBAAqB,qBAAqB,6BAA6B,OAAO,8BAA8B,gCAAgC,WAAW,8BAA8B,4BAA4B,OAAO,+CAA+C,2qBAA2qB,E;;;;;;;;;;;;ACAv/B;AAAe,uSAAwO,+FAA+F,4HAA4H,4JAA4J,qUAAqU,gBAAgB,4DAA4D,mPAAmP,kGAAkG,iEAAiE,gdAAgd,mGAAmG,kEAAkE,6ZAA6Z,0KAA0K,8WAA8W,mBAAmB,4DAA4D,8TAA8T,iEAAiE,uBAAuB,gdAAgd,mGAAmG,kEAAkE,6ZAA6Z,0KAA0K,kVAAkV,uBAAuB,4DAA4D,yOAAyO,2GAA2G,0DAA0D,ggBAAggB,qDAAqD,uBAAuB,+IAA+I,uBAAuB,uBAAuB,2BAA2B,oaAAoa,0KAA0K,2ZAA2Z,6FAA6F,uJAAuJ,0JAA0J,6TAA6T,yBAAyB,4DAA4D,wOAAwO,2GAA2G,0DAA0D,6cAA6c,0EAA0E,qDAAqD,+IAA+I,uBAAuB,uBAAuB,2BAA2B,oaAAoa,0KAA0K,wZAAwZ,6FAA6F,uHAAuH,0JAA0J,yUAAyU,6BAA6B,4DAA4D,+IAA+I,qBAAqB,gPAAgP,0KAA0K,iVAAiV,6BAA6B,4DAA4D,6bAA6b,mOAAmO,6BAA6B,sLAAsL,MAAM,qGAAqG,0KAA0K,2VAA2V,6BAA6B,4DAA4D,ycAAyc,6NAA6N,uBAAuB,sLAAsL,MAAM,qGAAqG,0KAA0K,yYAAyY,6FAA6F,oHAAoH,0JAA0J,iUAAiU,uBAAuB,4DAA4D,+IAA+I,qBAAqB,gPAAgP,0KAA0K,qYAAqY,6FAA6F,uHAAuH,0JAA0J,iUAAiU,sBAAsB,4DAA4D,+IAA+I,qBAAqB,gPAAgP,0KAA0K,sUAAsU,6BAA6B,4DAA4D,uaAAua,iNAAiN,kBAAkB,+KAA+K,MAAM,qGAAqG,0KAA0K,+KAA+K,E;;;;;;;;;;;;ACAzjnB;AAAe,o5CAAq1C,uJAAuJ,k+DAAk+D,8XAA8X,oPAAoP,koFAAkoF,gcAAgc,sFAAsF,uIAAuI,wMAAwM,oHAAoH,kCAAkC,2BAA2B,qCAAqC,2BAA2B,8CAA8C,2BAA2B,2CAA2C,2BAA2B,2CAA2C,2BAA2B,+CAA+C,qGAAqG,+NAA+N,63BAA63B,idAAid,sFAAsF,uIAAuI,4MAA4M,qDAAqD,kCAAkC,2BAA2B,qCAAqC,2BAA2B,8CAA8C,2BAA2B,2CAA2C,2BAA2B,2CAA2C,2BAA2B,+CAA+C,qGAAqG,+NAA+N,yqBAAyqB,+KAA+K,iKAAiK,kKAAkK,E;;;;;;;;;;;;ACA3/X;AAAe,wEAAS,8BAA8B,GAAG,uBAAuB,8BAA8B,wBAAwB,0BAA0B,sBAAsB,iBAAiB,oBAAoB,oBAAoB,GAAG,6CAA6C,+rBAA+rB,E;;;;;;;;;;;;ACA99B;AAAe,iFAAkB,8BAA8B,iBAAiB,iBAAiB,GAAG,cAAc,qBAAqB,uBAAuB,qDAAqD,GAAG,cAAc,uBAAuB,uBAAuB,qBAAqB,qDAAqD,GAAG,YAAY,gBAAgB,GAAG,iBAAiB,8BAA8B,iBAAiB,GAAG,gBAAgB,8BAA8B,iBAAiB,qBAAqB,qDAAqD,GAAG,+BAA+B,8BAA8B,oBAAoB,GAAG,eAAe,wBAAwB,kBAAkB,GAAG,6CAA6C,+yDAA+yD,E;;;;;;;;;;;;ACAzjF;AAAe,orBAAqnB,gBAAgB,mcAAmc,E;;;;;;;;;;;;;;;;;;;ACC9iC;AACM;AAC6C;;;IAUhE,CAAC;IAAhB,YAAY;QAPxB,8DAAQ,CAAC;YACR,YAAY,EAAE,EAAE;YAChB,OAAO,EAAE;gBACP,4DAAY;gBACZ,yGAAc;aACf;SACF,CAAC;OACW,YAAY,CAAI;IAAD,mBAAC;CAAA;AAAJ;;;;;;;;;;;;;ACbzB;AAAe,qbAAsX,mBAAmB,4OAA4O,2BAA2B,mBAAmB,gRAAgR,2BAA2B,mBAAmB,mQAAmQ,4BAA4B,mBAAmB,+QAA+Q,2BAA2B,mBAAmB,sRAAsR,0BAA0B,mBAAmB,iRAAiR,2BAA2B,mBAAmB,2QAA2Q,2BAA2B,mBAAmB,wQAAwQ,2BAA2B,mBAAmB,iQAAiQ,2BAA2B,mBAAmB,yQAAyQ,2BAA2B,mBAAmB,qQAAqQ,0BAA0B,mBAAmB,wQAAwQ,2BAA2B,mBAAmB,sQAAsQ,0BAA0B,mBAAmB,28CAA28C,2DAA2D,8fAA8f,wEAAwE,skBAAskB,kBAAkB,sMAAsM,+EAA+E,6IAA6I,mBAAmB,uBAAuB,yBAAyB,8VAA8V,4EAA4E,4EAA4E,kBAAkB,uBAAuB,uBAAuB,sXAAsX,6DAA6D,46BAA46B,sEAAsE,wgBAAwgB,gEAAgE,kiBAAkiB,kEAAkE,ylBAAylB,iEAAiE,wuBAAwuB,oBAAoB,mBAAmB,gBAAgB,4CAA4C,swLAAswL,+DAA+D,otBAAotB,yEAAyE,y7BAAy7B,+EAA+E,0jBAA0jB,6DAA6D,6+DAA6+D,gmEAAgmE,88DAA88D,2jBAA2jB,4RAA4R,mQAAmQ,iNAAiN,krBAAkrB,4EAA4E,4jBAA4jB,iGAAiG,wSAAwS,4EAA4E,oiBAAoiB,kBAAkB,yMAAyM,+EAA+E,6IAA6I,mBAAmB,uBAAuB,yBAAyB,8VAA8V,4EAA4E,kHAAkH,uBAAuB,qXAAqX,+EAA+E,6uBAA6uB,0EAA0E,iUAAiU,kFAAkF,mUAAmU,gFAAgF,iXAAiX,oEAAoE,ygBAAygB,oBAAoB,mBAAmB,gBAAgB,4CAA4C,y8LAAy8L,uDAAuD,qtBAAqtB,wGAAwG,qsBAAqsB,8GAA8G,uTAAuT,+DAA+D,ulDAAulD,o3CAAo3C,iJAAiJ,ymBAAymB,2xDAA2xD,+gBAA+gB,0QAA0Q,qNAAqN,qnCAAqnC,iKAAiK,09CAA09C,sFAAsF,qBAAqB,yRAAyR,qBAAqB,stBAAstB,wfAAwf,0VAA0V,6wGAA6wG,+fAA+f,yGAAyG,6KAA6K,iOAAiO,wHAAwH,kCAAkC,6BAA6B,qCAAqC,6BAA6B,8CAA8C,6BAA6B,2CAA2C,6BAA6B,2CAA2C,6BAA6B,+CAA+C,sGAAsG,kKAAkK,62BAA62B,+gBAA+gB,yGAAyG,6KAA6K,qOAAqO,yDAAyD,kCAAkC,6BAA6B,qCAAqC,6BAA6B,8CAA8C,6BAA6B,2CAA2C,6BAA6B,2CAA2C,6BAA6B,+CAA+C,sGAAsG,kKAAkK,2pBAA2pB,2WAA2W,wPAAwP,k/BAAk/B,iKAAiK,g+CAAg+C,sFAAsF,qBAAqB,0RAA0R,qBAAqB,4qBAA4qB,8cAA8c,gTAAgT,qxGAAqxG,8fAA8f,yGAAyG,6KAA6K,iOAAiO,wHAAwH,kCAAkC,6BAA6B,qCAAqC,6BAA6B,8CAA8C,6BAA6B,2CAA2C,6BAA6B,2CAA2C,6BAA6B,+CAA+C,sGAAsG,kKAAkK,63BAA63B,8gBAA8gB,0GAA0G,8KAA8K,sOAAsO,yDAAyD,kCAAkC,6BAA6B,qCAAqC,6BAA6B,8CAA8C,6BAA6B,2CAA2C,6BAA6B,2CAA2C,6BAA6B,+CAA+C,sGAAsG,kKAAkK,ipBAAipB,gWAAgW,6OAA6O,wVAAwV,E;;;;;;;;;;;;ACA1h3E;AAAe,+EAAgB,kBAAkB,MAAM,+CAA+C,uRAAuR,E;;;;;;;;;;;;ACA7X;AAAe,uHAAwD,0BAA0B,KAAK,6BAA6B,qCAAqC,KAAK,+BAA+B,sCAAsC,KAAK,+CAA+C,2mBAA2mB,E;;;;;;;;;;;;ACAj5B;AAAe,6GAA8C,+BAA+B,qCAAqC,8BAA8B,iBAAiB,kBAAkB,yCAAyC,2CAA2C,gBAAgB,kBAAkB,+GAA+G,qBAAqB,SAAS,aAAa,iGAAiG,aAAa,OAAO,aAAa,2GAA2G,oHAAoH,eAAe,8GAA8G,4PAA4P,4BAA4B,ifAAif,aAAa,wGAAwG,E;;;;;;;;;;;;;;;;;;;;;;;;;ACA5vD;AACC;AACU;AACV;AAEU;;IAsB3D,2BAAoB,WAAwB,EACxB,QAAyB,EACzB,WAAwB;QAFxB,gBAAW,GAAX,WAAW,CAAa;QACxB,aAAQ,GAAR,QAAQ,CAAiB;QACzB,gBAAW,GAAX,WAAW,CAAa;QAb5C,mBAAc,GAAY,IAAI,CAAC;QAC/B,qBAAgB,GAAY,IAAI,yDAAQ,EAAE,CAAC;QAC3C,qBAAgB,GAAoB,EAAE,CAAC;QAKvC,gBAAW,GAAQ,qBAAqB,CAAC;IAOvC,CAAC;IAbwC,CAAC;IAe5C,oCAAQ,GAAR;QAAA,iBAkBC;QAjBC,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,UAAC,GAAG;YACtD,KAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC;QAAC,CAAC,CAAC,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,UAAC,IAAY;YAC3C;gBAAC,KAAI,CAAC,SAAS,GAAG,IAAI;aAAC;YACvB,IAAG,KAAI,CAAC,SAAS,EACjB;gBAEA,0CAA0C;gBAC1C,KAAI,CAAC,gBAAgB,CAAC,YAAY,GAAG,CAAC,CAAC;gBACvC,KAAI,CAAC,gBAAgB,CAAC,KAAK,GAAC,KAAI,CAAC,SAAS,CAAC;gBAC3C,KAAI,CAAC,gBAAgB,CAAC,WAAW,GAAC,EAAE,CAAC;gBACrC,KAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAC,EAAE,CAAC;gBAClC,KAAI,CAAC,gBAAgB,CAAC,YAAY,GAAC,KAAI,CAAC,iBAAiB,CAAC;gBAC1D,8BAA8B;gBAC7B,KAAI,CAAC,iBAAiB,EAAE,CAAC;aACzB;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAGD,4BAA4B;IAC5B,6CAAiB,GAAjB;QAAA,iBAmBC;QAjBC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,gBAAgB,CAAC,YAAY,GAAC,CAAC,CAAC;QACrC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAC,IAAI,CAAC,QAAQ,CAAC;QAC7C,IAAI,CAAC,gBAAgB,CAAC,WAAW,GAAC,IAAI,CAAC,WAAW,CAAC;QACnD,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,aAAG;YAC7E,IAAI,GAAG,CAAC,OAAO,CAAC,IAAE,CAAC,EACnB;gBACE,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAC5B,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,oGAAoG,CAAC,CAAC;aACrI;iBAED;gBACE,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAC5B,KAAI,CAAC,cAAc,GAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;gBAC3C,KAAI,CAAC,gBAAgB,GAAE,GAAG,CAAC,MAAM,CAAC,CAAC;aACtC;QAAA,CAAC,CAAC,CAAC;IAEN,CAAC;IAID,6CAAiB,GAAjB;QAAA,iBAuBC;QArBC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,SAAS,CACzE,cAAI;YACF,IAAI,IAAI,CAAC,cAAc,CAAC,EACxB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,oGAAoG,CAAC;aACpI;iBACG;gBACF,KAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrC,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAC5C,IAAG,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAC1B;oBACE,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;iBAC7B;qBAAI;oBACH,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;iBAE7B;aAEF;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED,4CAAgB,GAAhB;QAAA,iBAeC;QAbC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACrC,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAC,IAAI,CAAC,SAAS,CAAC;QACzC,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,aAAG;YAC7E,IAAI,GAAG,CAAC,OAAO,CAAC,IAAE,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,oGAAoG,CAAC,CAAC;aACrI;iBAAM;gBAEH,KAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;aACvC;YACD,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC9B,CAAC,CAAC,CAAC;IACP,CAAC;IAED,4CAAgB,GAAhB;QAAA,iBAcC;QAZC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;QACrC,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAC,IAAI,CAAC,SAAS,CAAC;QACzC,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,aAAG;YAC7E,IAAI,GAAG,CAAC,OAAO,CAAC,IAAE,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,oGAAoG,CAAC,CAAC;aACrI;iBAAM;gBACH,KAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;aACvC;YACD,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC9B,CAAC,CAAC,CAAC;IACP,CAAC;IAID,4CAAgB,GAAhB;QAEE,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,aAAG;YAE3E,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,mEAAmE,EAAE,CAAC,CAAC;YAC7G,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBACzD,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC3C,OAAO;aACR;YACD,IAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAElD,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,iCAAiC,CAAC;YAClD,IAAI,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAEhG,UAAU,CAAC;gBACT,wEAAwE;gBACxE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBACjC,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,CAAC,EAAE,GAAG,CAAC,CAAC;QACR,CAAC,CAAC,CAAC;IAEP,CAAC;IAID;;;;;;;;;;;;;;;;;;;;;;OAsBG;IAMD,gBAAgB;IAChB,wCAAY,GAAZ;QACE,IAAI,CAAC,gBAAgB,GAAE,IAAI,yDAAQ,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAC,EAAE,CAAC;QACjB,IAAI,CAAC,WAAW,GAAC,EAAE,CAAC;QACpB,IAAI,CAAC,gBAAgB,CAAC,YAAY,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,gBAAgB,CAAC,KAAK,GAAC,IAAI,CAAC,SAAS,CAAC;QAC3C,IAAI,CAAC,gBAAgB,CAAC,WAAW,GAAC,EAAE,CAAC;QACrC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,GAAC,EAAE,CAAC;QAClC,IAAI,CAAC,gBAAgB,CAAC,WAAW,GAAC,KAAK,CAAC;QACxC,IAAI,CAAC,gBAAgB,CAAC,YAAY,GAAC,IAAI,CAAC,iBAAiB,CAAC;QAC1D,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;;gBA1MM,kEAAW;gBADX,gEAAe;gBAIf,kEAAW;;IAQP,iBAAiB;QAL7B,+DAAS,CAAC;YACT,QAAQ,EAAE,cAAc;YACxB,qFAAwC;;SAEzC,CAAC;uFAeiC,kEAAW;YACd,gEAAe;YACZ,kEAAW;OAhBjC,iBAAiB,CAmM7B;IAAD,wBAAC;CAAA;AAnM6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACb+B;AACJ;AACR;AACW;AACT;AACC;AACO;AACqG;;IA6D9J,+BACU,WAAwB,EACzB,MAAgB,EACf,QAAyB;QAFzB,gBAAW,GAAX,WAAW,CAAa;QACzB,WAAM,GAAN,MAAM,CAAU;QACf,aAAQ,GAAR,QAAQ,CAAiB;QAxCnC,qBAAgB,GAAa,CAAC,QAAQ,EAAC,UAAU,CAAC,CAAC;QAgBnD,gBAAgB;QAChB,eAAU,GAAQ,EAAE,CAAC;QACrB,kBAAa,GAAQ,EAAE,CAAC;QAExB,gBAAW,GAAS,KAAK,CAAC;QAG1B,sBAAiB,GAAgB,EAAE,CAAC;QACpC,wBAAmB,GAAgB,EAAE,CAAC;QACtC,0BAAqB,GAAgB,EAAE,CAAC;QAGxC,eAAU,GAAS,KAAK,CAAC;QAKzB,mBAAc,GAAS,KAAK,CAAC;QAC7B,YAAO,GAAS,KAAK,CAAC;QAOpB,IAAI,CAAC,UAAU,GAAE,IAAI,0EAAkB,CAAC;QACxC,IAAI,CAAC,aAAa,GAAE,IAAI,0EAAkB,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAE,IAAI,0EAAkB,CAAC;IACjD,CAAC;IAED,wCAAQ,GAAR;QACE,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,IAAI,CAAC,yBAAyB,EAAE,CAAC;IACnC,CAAC;IAED,+CAAe,GAAf;IACA,CAAC;IAGD,qCAAqC;IACrC,2CAAW,GAAX;QAAA,iBAcC;QAZC,IAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAChD,cAAI;YACF,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/B,KAAI,CAAC,aAAa,GAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACjC,KAAI,CAAC,UAAU,CAAC,IAAI,GAAG,KAAI,CAAC,UAAU,CAAC;YACvC,KAAI,CAAC,UAAU,CAAC,SAAS,GAAC,KAAI,CAAC,aAAa,CAAC;QAC/C,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,8BAA8B;IAC9B,+CAAe,GAAf,UAAgB,WAAmB;QACjC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5D,CAAC;IAED,gCAAgC;IAChC,2CAAW,GAAX;QAAA,iBA6BC;QA3BC,IAAI,CAAC,WAAW,GAAC,IAAI,CAAC;QACtB,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,SAAS,CACpD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,0BAA0B,CAC3B,CAAC;gBACF,KAAI,CAAC,UAAU,GAAC,EAAE,CAAC;gBACnB,KAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,KAAI,CAAC,WAAW,GAAC,KAAK,CAAC;aACxB;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBACnD,KAAI,CAAC,WAAW,GAAC,KAAK,CAAC;aACxB;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,6GAA6G,CAC9G,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,iCAAiC;IACjC,4CAAY,GAAZ,UAAa,EAAS;QAAtB,iBAuCC;QApCC,sCAAsC;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,MAAM,EAAC,EAAE,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QAC/G,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,WAAW,GAAC,IAAI,CAAC;gBACxB,KAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,SAAS,CACtC,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,WAAW,EAAE,CAAC;wBAClB,KAAI,CAAC,WAAW,GAAC,KAAK,CAAC;qBAEzB;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,8GAA8G,CAC/G,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAED,yBAAyB;IACzB,0CAAU,GAAV,UAAW,OAAc;QAAzB,iBAwCC;QAtCC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,OAAO,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,EAAC,mBAAmB,EAAC,QAAQ,EAAC,aAAa,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QAC5K,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,WAAW,GAAC,IAAI,CAAC;gBACtB,IAAI,OAAO,GAAC;oBACV,SAAS,EAAC,OAAO;oBACjB,aAAa,EAAC,MAAM;iBACrB;gBACF,KAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,CAC5C,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,yBAAyB,CAC1B,CAAC;wBACF,KAAI,CAAC,WAAW,EAAE,CAAC;wBACnB,KAAI,CAAC,WAAW,GAAC,KAAK,CAAC;qBACxB;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,4GAA4G,CAC7G,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAGD,yEAAyE;IACzE,qCAAqC;IACrC,kDAAkB,GAAlB;QAAA,iBAaC;QAXC,IAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC,SAAS,CAC9C,cAAI;YACF,KAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,KAAI,CAAC,aAAa,CAAC,IAAI,GAAG,KAAI,CAAC,iBAAiB,CAAC;YAChD,KAAI,CAAC,aAAa,CAAC,SAAS,GAAC,KAAI,CAAC,YAAY,CAAC;QAClD,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,sCAAsC;IACtC,qDAAqB,GAArB,UAAsB,WAAmB;QACvC,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE/D,CAAC;IAED,0CAAU,GAAV;QAAA,iBA8BC;QA5BC,IAAI,CAAC,UAAU,GAAC,IAAI,CAAC;QACrB,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,CAClD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,0BAA0B,CAC3B,CAAC;gBACF,KAAI,CAAC,SAAS,GAAC,EAAE,CAAC;gBAClB,KAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC1B,KAAI,CAAC,yBAAyB,EAAE,CAAC;gBACjC,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;aACvB;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBACnD,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;aACvB;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,mHAAmH,CACpH,CAAC;QACJ,CAAC,CACF,CAAC;IAEJ,CAAC;IAGD,iCAAiC;IACjC,2CAAW,GAAX,UAAY,EAAS;QAArB,iBAqCC;QAnCC,sCAAsC;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,MAAM,EAAC,EAAE,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QAC/G,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,UAAU,GAAC,IAAI,CAAC;gBACvB,KAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,CACrC,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,kBAAkB,EAAE,CAAC;wBACzB,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;qBACxB;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,oHAAoH,CACrH,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAED,+BAA+B;IAC/B,4CAAY,GAAZ,UAAa,EAAS;QAAtB,iBAwCC;QAtCC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,EAAC,mBAAmB,EAAC,QAAQ,EAAC,mBAAmB,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QAC7K,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,UAAU,GAAC,IAAI,CAAC;gBACrB,IAAI,OAAO,GAAC;oBACV,eAAe,EAAC,EAAE;oBAClB,mBAAmB,EAAC,MAAM;iBAC3B;gBACF,KAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,SAAS,CAClD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,yBAAyB,CAC1B,CAAC;wBACF,KAAI,CAAC,kBAAkB,EAAE,CAAC;wBAC1B,KAAI,CAAC,UAAU,GAAC,KAAK,CAAC;qBACvB;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,4GAA4G,CAC7G,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAGD,yEAAyE;IACzE,wCAAQ,GAAR,UAAS,MAAc;QAAvB,iBAeC;QAbC,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,SAAS,CACtD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAChB;gBACE,KAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC1C,KAAI,CAAC,iBAAiB,CAAC,IAAI,GAAC,KAAI,CAAC,qBAAqB,CAAC;gBACvD,KAAI,CAAC,iBAAiB,CAAC,SAAS,GAAC,KAAI,CAAC,gBAAgB,CAAC;aACxD;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC;IAEA,qCAAqC;IACrC,yDAAyB,GAAzB;QAAA,iBAWC;QATC,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,CAAC,SAAS,CACnD,cAAI;YACF,KAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IAEJ,CAAC;IAED,mCAAmC;IACnC,8CAAc,GAAd,UAAe,GAAU,EAAC,IAAW;QAArC,iBA+BC;QA5BA,IAAI,CAAC,cAAc,GAAC,IAAI,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,GAAG,EAAC,IAAI,CAAC,CAAC,SAAS,CACtD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,0BAA0B,CAC3B,CAAC;gBACF,KAAI,CAAC,gBAAgB,GAAC,IAAI,CAAC;gBAC3B,KAAI,CAAC,iBAAiB,GAAC,IAAI,CAAC;gBAC5B,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACpB,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;aAC3B;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBACnD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;aAC3B;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,mHAAmH,CACpH,CAAC;QACJ,CAAC,CACF,CAAC;IAEH,CAAC;IAGD,6BAA6B;IAC7B,6CAAa,GAAb,UAAc,GAAU,EAAC,IAAW;QAApC,iBAqCC;QAnCA,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,GAAG,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,EAAC,IAAI,CAAC,iBAAiB,EAAC,MAAM,EAAC,wBAAwB,EAAC,QAAQ,EAAC,mBAAmB,EAAC,EAAC,YAAY,EAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;QACjO,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACH,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;gBACzB,KAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,GAAG,EAAC,MAAM,CAAC,CAAC,SAAS,CACxD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,yBAAyB,CAC1B,CAAC;wBACF,KAAI,CAAC,QAAQ,CAAC,KAAI,CAAC,iBAAiB,CAAC,CAAC;wBACtC,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;qBAC3B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;wBACnD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;qBAC3B;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,4GAA4G,CAC7G,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEF,CAAC;IAED,4BAA4B;IAC5B,+CAAe,GAAf,UAAgB,KAAY;QAA5B,iBAsCC;QArCC,sCAAsC;QACvC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,MAAM,EAAC,EAAE,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QAC/G,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;gBAC1B,KAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,SAAS,CAC7C,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,QAAQ,CAAC,KAAI,CAAC,iBAAiB,CAAC,CAAC;wBACtC,KAAI,CAAC,kBAAkB,EAAE,CAAC;wBAC1B,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;qBAC3B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,oHAAoH,CACrH,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAGF,CAAC;IAED,4CAAY,GAAZ;QACE,IAAI,CAAC,gBAAgB,GAAC,IAAI,CAAC;QAC3B,IAAI,CAAC,iBAAiB,GAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAC,EAAE,CAAC;IACjC,CAAC;;gBApgBK,yEAAW;gBAEX,kEAAS;gBADT,gEAAe;;;gCA6BrB,uDAAS,SAAC,YAAY,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;0BACvC,uDAAS,SAAC,eAAe,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;mCAI1C,uDAAS,SAAC,cAAc,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;8BACzC,uDAAS,SAAC,kBAAkB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;+BAG7C,uDAAS,SAAC,iBAAiB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;0BAC5C,uDAAS,SAAC,qBAAqB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;;IAdtC,qBAAqB;QALjC,+DAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,yFAA4C;;SAE7C,CAAC;uFAyCuB,yEAAW;YAClB,kEAAS;YACL,gEAAe;OA1CxB,qBAAqB,CA4ejC;IAAD,4BAAC;CAAA;AA5eiC;;;;;;;;;;;;;AC7BlC;AAAe,4FAA6B,qBAAqB,uBAAuB,KAAK,eAAe,kBAAkB,KAAK,wBAAwB,qBAAqB,yBAAyB,iBAAiB,mBAAmB,mBAAmB,KAAK,kIAAkI,kBAAkB,MAAM,+CAA+C,+4BAA+4B,E;;;;;;;;;;;;ACA71C;AAAe,6GAA8C,2HAA2H,E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAhG;AAC/B;AACN;AACC;AACQ;AACD;AACF;AACR;AAC+G;;IAwG9J,6BAAoB,WAAwB,EACnC,MAAgB,EACf,QAAyB;QAFf,gBAAW,GAAX,WAAW,CAAa;QACnC,WAAM,GAAN,MAAM,CAAU;QACf,aAAQ,GAAR,QAAQ,CAAiB;QAhDnC,uBAAkB,GAAiB,EAAE,CAAC;QACtC,qBAAgB,GAAa,CAAC,QAAQ,EAAC,UAAU,CAAC,CAAC;QAGnD,mBAAc,GAAY,KAAK,CAAC;QAEhC,sBAAiB,GAAY,KAAK,CAAC;QACnC,0BAAqB,GAAY,KAAK,CAAC;QACvC,0BAAqB,GAAY,KAAK,CAAC;QAKvC,kBAAkB;QAClB,iBAAY,GAAqB,EAAE,CAAC;QAKpC,oCAAoC;QACpC,uBAAkB,GAAqB,EAAE,CAAC;QAC1C,2BAAsB,GAAqB,EAAE,CAAC;QAG9C,mBAAmB;QACnB,iBAAY,GAAc,EAAE,CAAC;QAK7B,+BAA+B;QAC/B,iBAAY,GAAc,EAAE,CAAC;QAG7B,qBAAqB;QACrB,kBAAa,GAAc,EAAE,CAAC;QAK9B,4BAA4B;QAC5B,wBAAmB,GAAqB,EAAE,CAAC;QAC3C,4BAAuB,GAAqB,EAAE,CAAC;QAQ3C,IAAI,CAAC,YAAY,GAAC,IAAI,0EAAkB,CAAC;QACzC,IAAI,CAAC,UAAU,GAAE,IAAI,0EAAkB,CAAC;QACxC,IAAI,CAAC,YAAY,GAAE,IAAI,0EAAkB,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAE,IAAI,0EAAkB,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAE,IAAI,0EAAkB,CAAC;IAC7C,CAAC;IAEH,sCAAQ,GAAR;QACE,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACjC,IAAI,CAAC,0BAA0B,EAAE,CAAC;IACpC,CAAC;IAED,6CAAe,GAAf;IACA,CAAC;IAED,2CAAa,GAAb,UAAc,eAAuB;QAArC,iBAeC;QAbC,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,eAAe,CAAC,CAAC,SAAS,CACnE,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;gBAChB,KAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3C,KAAI,CAAC,aAAa,CAAC,IAAI,GAAC,KAAI,CAAC,sBAAsB,CAAC;gBACpD,KAAI,CAAC,aAAa,CAAC,SAAS,GAAC,KAAI,CAAC,YAAY,CAAC;aAChD;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,iDAAiD;IACjD,+CAAiB,GAAjB,UAAkB,gBAAuB,EAAE,UAAiB;QAA5D,iBA2BC;QAzBC,IAAI,CAAC,cAAc,GAAC,IAAI,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,UAAU,EAAC,gBAAgB,CAAC,CAAC,SAAS,CAC7E,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,0BAA0B,CAC3B,CAAC;gBACF,KAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;gBACrC,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;aAC3B;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBACnD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;aAC3B;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,sHAAsH,CACvH,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAED,sCAAsC;IACtC,gDAAkB,GAAlB,UAAmB,SAAgB;QAAnC,iBAuCC;QApCC,sCAAsC;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,SAAS,EAAC,MAAM,EAAC,EAAE,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QAC5H,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;gBAC1B,KAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,SAAS,CACrD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,aAAa,CAAC,KAAI,CAAC,gBAAgB,CAAC,CAAC;wBAC1C,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;qBAE3B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,uHAAuH,CACxH,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAED,0DAA0D;IAC1D,8CAAgB,GAAhB,UAAiB,UAAiB;QAAlC,iBAuCC;QArCC,IAAI,gBAAgB,GAAC,IAAI,CAAC,gBAAgB,CAAC;QAC3C,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,UAAU,EAAC,MAAM,EAAC,EAAE,EAAC,eAAe,EAAC,IAAI,CAAC,gBAAgB,EAAC,MAAM,EAAC,sCAAsC,EAAC,QAAQ,EAAC,mBAAmB,EAAC,EAAC,YAAY,EAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;QAC9P,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACH,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;gBACzB,KAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,UAAU,EAAC,MAAM,CAAC,CAAC,SAAS,CACnE,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,yBAAyB,CAC1B,CAAC;wBACF,KAAI,CAAC,aAAa,CAAC,KAAI,CAAC,gBAAgB,CAAC,CAAC;wBAC1C,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;qBAC3B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;wBACnD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;qBAC3B;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,sHAAsH,CACvH,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAGH,CAAC;IAKD,0DAA0D;IAC1D,wDAA0B,GAA1B;QAAA,iBAWC;QATC,IAAI,CAAC,WAAW,CAAC,2BAA2B,EAAE,CAAC,SAAS,CACtD,cAAI;YACF,KAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACxC,kDAAkD;QACpD,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,4CAA4C;IAC5C,6CAAe,GAAf,UAAgB,SAAiB;QAAjC,iBAeC;QAbC,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;QACtC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,SAAS,CACpD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;gBAChB,KAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC5C,KAAI,CAAC,aAAa,CAAC,IAAI,GAAC,KAAI,CAAC,uBAAuB,CAAC;gBACrD,KAAI,CAAC,aAAa,CAAC,SAAS,GAAC,KAAI,CAAC,aAAa,CAAC;aACjD;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,iDAAiD;IACjD,gDAAkB,GAAlB,UAAmB,UAAiB,EAAE,UAAiB;QAAvD,iBA2BC;QAzBC,IAAI,CAAC,cAAc,GAAC,IAAI,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,UAAU,EAAC,UAAU,CAAC,CAAC,SAAS,CACvE,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,0BAA0B,CAC3B,CAAC;gBACF,KAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;gBACjC,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;aAC3B;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;gBACnD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;aAC3B;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,0HAA0H,CAC3H,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAID,sCAAsC;IACtC,iDAAmB,GAAnB,UAAoB,SAAgB;QAApC,iBAuCC;QApCC,sCAAsC;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,SAAS,EAAC,MAAM,EAAC,EAAE,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QAC5H,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;gBAC1B,KAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,SAAS,CACrD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,eAAe,CAAC,KAAI,CAAC,oBAAoB,CAAC,CAAC;wBAChD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;qBAE3B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,uHAAuH,CACxH,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAED,0DAA0D;IAC1D,+CAAiB,GAAjB,UAAkB,UAAiB;QAAnC,iBAsCC;QApCC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,UAAU,EAAC,MAAM,EAAC,EAAE,EAAC,SAAS,EAAC,IAAI,CAAC,oBAAoB,EAAC,MAAM,EAAC,4CAA4C,EAAC,QAAQ,EAAC,mBAAmB,EAAC,EAAC,YAAY,EAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;QAClQ,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACH,KAAI,CAAC,cAAc,GAAC,IAAI,CAAC;gBACzB,KAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,SAAS,CACpE,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,yBAAyB,CAC1B,CAAC;wBACF,KAAI,CAAC,eAAe,CAAC,KAAI,CAAC,oBAAoB,CAAC,CAAC;wBAChD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;qBAC3B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;wBACnD,KAAI,CAAC,cAAc,GAAC,KAAK,CAAC;qBAC3B;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,sHAAsH,CACvH,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAGH,CAAC;IAED,gCAAgC;IAChC,sDAAwB,GAAxB,UAAyB,WAAmB;QAC1C,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5D,CAAC;IAED,uCAAuC;IACvC,kDAAoB,GAApB;QAAA,iBAcC;QAXC,IAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAChD,cAAI;YACF,KAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACvC,KAAI,CAAC,UAAU,CAAC,IAAI,GAAG,KAAI,CAAC,kBAAkB,CAAC;YAC/C,KAAI,CAAC,UAAU,CAAC,SAAS,GAAC,KAAI,CAAC,YAAY,CAAC;QAE9C,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,kDAAoB,GAApB,UAAqB,MAAa;QAAlC,iBA4BC;QA1BK,IAAI,CAAC,iBAAiB,GAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,SAAS,CACjD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,0BAA0B,CAC3B,CAAC;gBACF,KAAI,CAAC,WAAW,GAAC,EAAE,CAAC;gBACpB,KAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC5B,KAAI,CAAC,iBAAiB,GAAC,KAAK,CAAC;aAC9B;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;aACpD;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,sHAAsH,CACvH,CAAC;QACJ,CAAC,CACF,CAAC;IAER,CAAC;IAED,mDAAqB,GAArB,UAAsB,EAAS;QAA/B,iBAsCC;QApCC,sCAAsC;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QACrH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,iBAAiB,GAAC,IAAI,CAAC;gBAC7B,KAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,SAAS,CAChD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,oBAAoB,EAAE,CAAC;wBAC5B,KAAI,CAAC,iBAAiB,GAAC,KAAK,CAAC;qBAE9B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,uHAAuH,CACxH,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAED,oDAAsB,GAAtB,UAAuB,EAAS;QAAhC,iBAoCC;QAlCC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,EAAC,sBAAsB,EAAC,QAAQ,EAAC,eAAe,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QAC5K,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,iBAAiB,GAAC,IAAI,CAAC;gBAC7B,KAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,EAAC,MAAM,CAAC,CAAC,SAAS,CACvD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,yBAAyB,CAC1B,CAAC;wBACF,KAAI,CAAC,oBAAoB,EAAE,CAAC;wBAC5B,KAAI,CAAC,iBAAiB,GAAC,KAAK,CAAC;qBAC9B;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,qHAAqH,CACtH,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAED,qDAAqD;IAErD,gCAAgC;IAChC,gDAAkB,GAAlB,UAAmB,WAAmB;QACpC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9D,CAAC;IAED,uCAAuC;IACvC,iDAAmB,GAAnB;QAAA,iBAcC;QAZC,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,SAAS,CACjD,cAAI;YACF,KAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACjC,KAAI,CAAC,YAAY,CAAC,IAAI,GAAG,KAAI,CAAC,YAAY,CAAC;YAC3C,KAAI,CAAC,YAAY,CAAC,SAAS,GAAC,KAAI,CAAC,WAAW,CAAC;YAC9C,6EAA6E;YAC3E,iDAAiD;QACpD,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;IAED,0DAA0D;IAC1D,uDAAyB,GAAzB;QAAA,iBAWC;QATC,IAAI,CAAC,WAAW,CAAC,4BAA4B,EAAE,CAAC,SAAS,CACvD,cAAI;YACF,KAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACvC,kDAAkD;QACpD,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;IAGD,uCAAuC;IACvC,8CAAgB,GAAhB,UAAiB,EAAS;QAA1B,iBAoCC;QAlCC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,EAAC,wBAAwB,EAAC,QAAQ,EAAC,mBAAmB,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QAClL,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,qBAAqB,GAAC,IAAI,CAAC;gBACjC,KAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,EAAC,MAAM,CAAC,CAAC,SAAS,CACvD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,yBAAyB,CAC1B,CAAC;wBACF,KAAI,CAAC,mBAAmB,EAAE,CAAC;wBAC3B,KAAI,CAAC,qBAAqB,GAAC,KAAK,CAAC;qBAClC;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,sHAAsH,CACvH,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAED,6CAAe,GAAf,UAAgB,EAAS;QAAzB,iBAqCC;QAnCC,sCAAsC;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QACrH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,qBAAqB,GAAC,IAAI,CAAC;gBACjC,KAAI,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,SAAS,CAC1C,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,mBAAmB,EAAE,CAAC;wBAC3B,KAAI,CAAC,qBAAqB,GAAC,KAAK,CAAC;qBAClC;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,wHAAwH,CACzH,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAGD,2CAA2C;IAC3C,4CAAc,GAAd,UAAe,MAAa;QAA5B,iBA4BC;QA3BC,IAAI,CAAC,qBAAqB,GAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,SAAS,CACjD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,0BAA0B,CAC3B,CAAC;gBACF,KAAI,CAAC,aAAa,GAAC,EAAE,CAAC;gBACtB,KAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC3B,KAAI,CAAC,qBAAqB,GAAC,KAAK,CAAC;aAClC;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;aACpD;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,uHAAuH,CACxH,CAAC;QACJ,CAAC,CACF,CAAC;IAGR,CAAC;IAED,6CAA6C;IAE7C,kCAAkC;IAClC,gDAAkB,GAAlB,UAAmB,WAAmB;QACpC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9D,CAAC;IAED,4CAA4C;IAC5C,iDAAmB,GAAnB;QAAA,iBAaC;QAXC,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC,SAAS,CACjD,cAAI;YACF,KAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;YACjC,KAAI,CAAC,YAAY,CAAC,IAAI,GAAE,KAAI,CAAC,YAAY,CAAC;YAC1C,KAAI,CAAC,YAAY,CAAC,SAAS,GAAC,KAAI,CAAC,WAAW,CAAC;QAE/C,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CACF,CAAC;IACJ,CAAC;IAGH,4CAA4C;IAC1C,8CAAgB,GAAhB,UAAiB,EAAS;QAA1B,iBAoCC;QAlCC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,EAAC,0BAA0B,EAAC,QAAQ,EAAC,mBAAmB,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QACpL,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,qBAAqB,GAAC,IAAI,CAAC;gBACjC,KAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAAE,EAAC,MAAM,CAAC,CAAC,SAAS,CACvD,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,yBAAyB,CAC1B,CAAC;wBACF,KAAI,CAAC,mBAAmB,EAAE,CAAC;wBAC3B,KAAI,CAAC,qBAAqB,GAAC,KAAK,CAAC;qBAClC;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,yHAAyH,CAC1H,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAGD,6CAAe,GAAf,UAAgB,EAAS;QAAzB,iBAqCC;QAnCC,sCAAsC;QACtC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gLAAuC,EAAC,EAAC,IAAI,EAAC,EAAC,EAAE,EAAC,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,EAAC,YAAY,EAAC,IAAI,EAAC,CAAC,CAAC;QACrH,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,gBAAM;YACtC,IAAG,MAAM,IAAE,KAAK,EAChB;aACC;iBACG;gBACF,KAAI,CAAC,qBAAqB,GAAC,IAAI,CAAC;gBACjC,KAAI,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,SAAS,CAC1C,cAAI;oBACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;wBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,2BAA2B,CAC5B,CAAC;wBACF,KAAI,CAAC,mBAAmB,EAAE,CAAC;wBAC3B,KAAI,CAAC,qBAAqB,GAAC,KAAK,CAAC;qBAClC;yBACG;wBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;qBACpD;gBACH,CAAC,EACD,eAAK;oBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,2HAA2H,CAC5H,CAAC;gBACJ,CAAC,CACF,CAAC;aAEF;QACL,CAAC,CAAC,CAAC;IAEH,CAAC;IAGD,uCAAuC;IACvC,4CAAc,GAAd,UAAe,MAAa;QAA5B,iBA4BC;QA3BC,IAAI,CAAC,qBAAqB,GAAC,IAAI,CAAC;QAC5B,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,SAAS,CACjD,cAAI;YACF,IAAI,IAAI,CAAC,SAAS,CAAC,EACnB;gBACE,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,0BAA0B,CAC3B,CAAC;gBACF,KAAI,CAAC,aAAa,GAAC,EAAE,CAAC;gBACtB,KAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC3B,KAAI,CAAC,qBAAqB,GAAC,KAAK,CAAC;aAClC;iBACG;gBACF,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;aACpD;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,0HAA0H,CAC3H,CAAC;QACJ,CAAC,CACF,CAAC;IAGR,CAAC;;gBAvzBM,yEAAW;gBADX,kEAAS;gBADT,gEAAe;;;4BA6CrB,uDAAS,SAAC,wEAAY;+BACtB,uDAAS,SAAC,qBAAqB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;0BAChD,uDAAS,SAAC,cAAc,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;8BAGzC,uDAAS,SAAC,oBAAoB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;yBAC/C,uDAAS,SAAC,mBAAmB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;8BAE9C,uDAAS,SAAC,oBAAoB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;yBAC/C,uDAAS,SAAC,mBAAmB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;+BAG9C,uDAAS,SAAC,iBAAiB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;0BAC5C,uDAAS,SAAC,qBAAqB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;gCAGhD,uDAAS,SAAC,kBAAkB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;2BAC7C,uDAAS,SAAC,sBAAsB,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC;;IAtBvC,mBAAmB;QAL/B,+DAAS,CAAC;YACT,QAAQ,EAAE,gBAAgB;YAC1B,uFAA0C;;SAE3C,CAAC;uFAuEiC,yEAAW;YAC5B,kEAAS;YACL,gEAAe;OAxExB,mBAAmB,CAmxB/B;IAAD,0BAAC;CAAA;AAnxB+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1CS;AACc;AACQ;AACG;AAC0B;AACF;AACxC;AACuC;AACC;AACyB;AACD;AACpB;AACL;AAC8B;AACK;AACtC;AACqC;AACd;AACZ;AACP;AAI1F,IAAM,MAAM,GAAW;IACrB,EAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,2EAAc,EAAC;IAC1C,EAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,8EAAe,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IACtE,EAAC,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,wGAAuB,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IACvF,EAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,0IAAyB,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IACrF,EAAC,IAAI,EAAE,0BAA0B,EAAE,SAAS,EAAE,8HAA0B,EAAC;IACzE,EAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,mGAAqB,EAAC;IAEzD,EAAC,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,sGAAuB,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IACtF,EAAC,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,qGAAsB,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IACrF,EAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAG,uGAAqB,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IAClF,EAAC,IAAI,EAAE,+BAA+B,EAAE,SAAS,EAAG,+HAA4B,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IAC3G,EAAC,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAG,gIAAwB,EAAC;IAChE,EAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAG,2GAAsB,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IAC9E,EAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,wGAAqB,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IACnF,EAAC,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,2IAAgC,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IACpG,EAAC,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,kHAAsB,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IACrF,EAAC,IAAI,EAAE,yBAAyB,EAAE,SAAS,EAAC,sIAA+B,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IACtG,EAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,yGAAiB,EAAE,WAAW,EAAE,CAAC,8DAAS,CAAC,EAAC;IAC1E,EAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAC;IAClD,EAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAC;CAGrD,CAAC;;;IAM8B,CAAC;IAApB,gBAAgB;QAJ5B,8DAAQ,CAAC;YACR,OAAO,EAAE,CAAC,4DAAY,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC5F,OAAO,EAAE,CAAC,4DAAY,CAAC;SACxB,CAAC;OACW,gBAAgB,CAAI;IAAD,uBAAC;CAAA;AAAJ;;;;;;;;;;;;;ACpD7B;AAAe,8EAAe,qBAAqB,GAAG,oBAAoB,qBAAqB,iBAAiB,GAAG,sBAAsB,iBAAiB,mCAAmC,GAAG,6CAA6C,+mBAA+mB,E;;;;;;;;;;;;ACA51B;AAAe,oHAAqD,2HAA2H,E;;;;;;;;;;;;ACA/L;AAAe,6GAA8C,mIAAmI,E;;;;;;;;;;;;ACAhM;AAAe,+EAAgB,kBAAkB,uBAAuB,qBAAqB,qCAAqC,KAAK,YAAY,yBAAyB,qBAAqB,0BAA0B,KAAK,uBAAuB,oBAAoB,0BAA0B,0BAA0B,KAAK,qBAAqB,cAAc,wBAAwB,yBAAyB,wBAAwB,KAAK,uBAAuB,oBAAoB,cAAc,0BAA0B,KAAK,oBAAoB,mBAAmB,mBAAmB,6BAA6B,yBAAyB,wBAAwB,KAAK,6DAA6D,wBAAwB,mBAAmB,yBAAyB,sBAAsB,wBAAwB,KAAK,yBAAyB,6BAA6B,kBAAkB,KAAK,sBAAsB,gCAAgC,mBAAmB,KAAK,wBAAwB,gCAAgC,mBAAmB,KAAK,6CAA6C,wBAAwB,KAAK,mDAAmD,m2EAAm2E,E;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACAn7G;AACjB;AAClC;AAES;AACA;AACR;AACiC;AACmC;;IAkFtH,kCAAoB,WAAwB,EAAQ,MAAgB,EAC1D,QAAyB,EACzB,WAAwB;QAFlC,iBAcC;QAdmB,gBAAW,GAAX,WAAW,CAAa;QAAQ,WAAM,GAAN,MAAM,CAAU;QAC1D,aAAQ,GAAR,QAAQ,CAAiB;QACzB,gBAAW,GAAX,WAAW,CAAa;QAzEnC,0BAAqB,GAAa,EAAE,CAAC;QAOpC,QAAG,GAAY,KAAK,CAAC;QAYrB,gDAAgD;QAChD,0BAAqB,GAAG,KAAK,CAAC;QAC9B,6BAAwB,GAAG,KAAK,CAAC;QACjC,mBAAc,GAAG,KAAK,CAAC;QACvB,0BAAqB,GAAG,KAAK,CAAC;QAC9B,uBAAkB,GAAG,KAAK,CAAC;QAC3B,0BAAqB,GAAG,KAAK,CAAC;QAC9B,gBAAW,GAAG,KAAK,CAAC;QACpB,uBAAkB,GAAG,KAAK,CAAC;QAC3B,wBAAwB;QACxB,iBAAY,GAAwB,EAAE,CAAC;QA8BvC,yBAAoB,GAAS,KAAK,CAAC;QAejC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,IAAI,0DAAY,EAAE,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,cAAI;YAClC,KAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,UAAC,GAAG;YAClD,KAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,yDAAyD;IAC3D,CAAC;IAtBD,sBAAI,wCAAE;aAAN;YACE,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAClC,CAAC;;;OAAA;IAED,sBAAI,yCAAG;aAAP;YACE,OAAO,IAAI,CAAC,eAAe,CAAC;QAC9B,CAAC;;;OAAA;IAkBD,2CAAQ,GAAR;QAEE;;;;;;;;;;;;;;aAcK;QAEL,IAAI,CAAC,UAAU,GAAG,IAAI,wDAAS,CAAC;YAC9B,YAAY,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YACjC,MAAM,EAAE,IAAI,0DAAW,CAAC,IAAI,CAAC,YAAY,CAAC;YAC1C,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACzD,YAAY,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACxD,sBAAsB,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YAClE,YAAY,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACxD,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACzD,QAAQ,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACpD,qBAAqB,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACjE,2BAA2B,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACvE,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACzD,gBAAgB,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YAC5D,MAAM,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YAClD,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAClC,QAAQ,EAAE,IAAI,wDAAS,CAAC;gBACtB,wBAAwB,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBAC7C,yBAAyB,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBAC9C,eAAe,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBACpC,cAAc,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBACnC,eAAe,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBACpC,yBAAyB,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;aAC/C,EAAE,0GAAyB,EAAE,CAAC;SAChC,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,GAAG,IAAI,wDAAS,CAAC;YACnC,YAAY,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YACjC,MAAM,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAC3B,cAAc,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YACnC,cAAc,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YAC1D,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SAC1D,CAAC,CAAC;IACL,CAAC;IAGD,+CAAY,GAAZ;QACE,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED,2CAAQ,GAAR,cAAW,CAAC;IAEZ,mDAAgB,GAAhB,UAAiB,OAAc;QAA/B,iBA2BC;QAzBC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAG;YAC9F,qEAAqE;YACrE,8EAA8E;YAC9E,IAAI,OAAO,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,KAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1E,yEAAyE;YACzE,4CAA4C;YAC5C,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE;gBACzD,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAC3C,OAAO;aACR;YACD,IAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACtC,oGAAoG;YACpG,IAAI,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAE/F,UAAU,CAAC;gBACT,wEAAwE;gBACxE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBACjC,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,CAAC,EAAE,GAAG,CAAC,CAAC;QAEV,CAAC,CAAC,CAAC;IAEL,CAAC;IAEO,qDAAkB,GAA1B,UAA2B,OAAe;QACxC,IAAI,WAAmB,CAAC;QACxB,IAAI,SAAS,GAAW,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QAEjD,QAAQ,SAAS,EAAE;YACjB,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,0BAA0B,CAAC;gBACzC,MAAM;YACR,KAAK,MAAM;gBACT,WAAW,GAAG,mEAAmE,CAAC;gBAClF,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM;YACR,KAAK,KAAK;gBACR,WAAW,GAAG,8BAA8B,CAAC;gBAC7C,MAAM;YAER;gBACE,WAAW,GAAG,YAAY,CAAC;gBAC3B,MAAM;SACT;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAEC,8DAA8D;IACjE,2DAAwB,GAAxB;QAGE,IAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sIAA4B,EAAC,EAAC,IAAI,EAAC,EAAC,aAAa,EAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAC,UAAU,EAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAC,EAAC,YAAY,EAAC,KAAK,EAAE,MAAM,EAAE,OAAO;YAC5L,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC;QACjB,SAAS,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,cAAI;YACpC,IAAG,IAAI,IAAE,KAAK,EACd;aACC;iBACG;aACH,iBAAgB;YACnB,sBAAsB;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;;gBA5OQ,yEAAW;gBACX,kEAAS;gBAJT,gEAAe;gBAEf,yEAAW;;;6BAcjB,mDAAK;qCAGL,mDAAK;6BACL,mDAAK;mCACL,oDAAM;qCA2BN,uDAAS,SAAC,eAAe;wCAEzB,uDAAS,SAAC,kBAAkB;8BAE5B,uDAAS,SAAC,QAAQ;qCAElB,uDAAS,SAAC,eAAe;qCAEzB,uDAAS,SAAC,oBAAoB;yCAE9B,uDAAS,SAAC,wBAAwB;8BAElC,uDAAS,SAAC,aAAa;qCAEvB,uDAAS,SAAC,oBAAoB;mCAE9B,uDAAS,SAAC,kBAAkB;;IAjDlB,wBAAwB;QALpC,+DAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,6FAAgD;;SAEjD,CAAC;uFA0EiC,yEAAW,EAAe,kEAAS;YAChD,gEAAe;YACZ,yEAAW;OA3EvB,wBAAwB,CAkOpC;IAAD,+BAAC;CAAA;AAlOoC;;;;;;;;;;;;;;;;;;;;;;;;ACjBmB;AACS;AACuB;;IA0BtF;QAbA,gBAAW,GAAU,CAAC,uBAAuB,EAAC,qBAAqB;YAC/C,0BAA0B,EAAE,wBAAwB;YACpD,aAAa,EAAC,aAAa,EAAC,mBAAmB,EAAC,eAAe,CAAC;QACrF,sCAAsC;QACrC,0BAAqB,GAAG,KAAK,CAAC;QAC9B,yBAAoB,GAAG,KAAK,CAAC;QAC7B,8BAAyB,GAAG,KAAK,CAAC;QAClC,4BAAuB,GAAG,KAAK,CAAC;QAChC,iBAAY,GAAG,KAAK,CAAC;QACrB,iBAAY,GAAG,KAAK,CAAC;QACrB,oBAAe,GAAG,KAAK,CAAC;QACxB,mBAAc,GAAE,KAAK,CAAC;IAEN,CAAC;IAEjB,uCAAQ,GAAR;QAEE,qCAAqC;QACrC,IAAI,CAAC,YAAY,GAAE,IAAI,wDAAS,CAAC;YAC/B,cAAc,EAAC,IAAI,0DAAW,CAAC,EAAE,EAAC,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,KAAK,CAAC,CAAC;YAC1E,sEAAsE;YACtE,cAAc,EAAC,IAAI,0DAAW,CAAC,EAAE,EAAC,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACxD,cAAc,EAAC,IAAI,0DAAW,CAAC,EAAE,EAAC,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACxD,mBAAmB,EAAC,IAAI,0DAAW,CAAC,EAAE,EAAC,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YAC7D,qBAAqB,EAAC,IAAI,0DAAW,CAAC,EAAE,EAAC,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YAC/D,YAAY,EAAE,IAAI,wDAAS,CACzB;gBACE,CAAC,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBACtB,CAAC,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBACtB,CAAC,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBACtB,CAAC,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBACtB,CAAC,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBACtB,CAAC,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBACtB,CAAC,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;gBACtB,CAAC,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;aAEvB,EACD,8GAA6B,EAAE,CAE9B;SACJ,CAAC,CAAC;IACL,CAAC;IAED,sBAAI,mCAAC;aAAL,cAAU,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;;;OAAA;IAG9C,uCAAQ,GAAR;QAEE,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAC7B;YACE,OAAO;SACR;aACG;SAEH;IAGH,CAAC;IAIA,kBAAkB;IAClB,uDAAwB,GAAxB,UAAyB,KAAa;QACrC,QAAQ,KAAK,EAAE;YACb,KAAK,CAAC;gBACJ,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC;gBAChD,MAAM;YACR,KAAK,CAAC;gBACJ,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC;gBAChD,MAAM;YACR,KAAK,CAAC;gBACF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC;gBAClD,MAAM;YACR,KAAK,CAAC;gBACA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC;gBAChD,MAAM;YACZ,KAAK,CAAC;gBACA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC;gBAChD,MAAM;YACZ,KAAK,CAAC;gBACA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC;gBAChD,MAAM;YACZ,KAAK,CAAC;gBACE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC;gBAChD,MAAM;YACZ,KAAK,CAAC;gBACF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC;gBAChD,MAAM;SACb;IACH,CAAC;;;uCA5FA,mDAAK;;IAFK,oBAAoB;QALhC,+DAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,yFAA4C;;SAE7C,CAAC;;OACW,oBAAoB,CA+FhC;IAAD,2BAAC;CAAA;AA/FgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACDV;AAC6C;AACV;AAEL;AACZ;AACU;;IA2BjD,4CACU,WAAwB,EACxB,IAAY,EACZ,MAAc,EACd,QAAyB;QAJnC,iBAYC;QAXS,gBAAW,GAAX,WAAW,CAAa;QACxB,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QACd,aAAQ,GAAR,QAAQ,CAAiB;QAVnC,gDAAgD;QAChD,0BAAqB,GAAG,KAAK,CAAC;QAC9B,uBAAkB,GAAG,KAAK,CAAC;QAUzB,0BAA0B;QAC1B,IAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE,CAAC,SAAS,CAAC,cAAI;YACrD,KAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,0BAA0B;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAChC,CAAC;IAED,qDAAQ,GAAR;QACE,sCAAsC;QACtC,2DAAiB,CAAC,IAAI,EAAE,CAAC;QACzB,aAAa;QACb,IAAI,CAAC,mBAAmB,GAAG,IAAI,wDAAS,CAAC;YACvC,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAClC,YAAY,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACxD,iBAAiB,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YAC7D,QAAQ,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE;gBAC5B,yDAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxB,yDAAU,CAAC,QAAQ;aACpB,CAAC;YACF,SAAS,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACzD,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACzD,YAAY,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACxD,QAAQ,EAAE,IAAI,wDAAS,CAAC,EAAE,CAAC;YAC3B,QAAQ,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAC7B,qBAAqB,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAC1C,2BAA2B,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAChD,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAClC,gBAAgB,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YACrC,MAAM,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAC3B,aAAa,EAAE,IAAI,0DAAW,CAAC,EAAE,CAAC;YAClC,cAAc,EAAE,IAAI,0DAAW,CAAC,GAAG,CAAC;YACpC,eAAe,EAAE,IAAI,0DAAW,CAAC,IAAI,CAAC,SAAS,CAAC;YAChD,gBAAgB,EAAE,IAAI,0DAAW,CAAC,IAAI,CAAC,UAAU,CAAC;YAClD,uBAAuB,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;YACnE,iBAAiB,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,EAAE,yDAAU,CAAC,KAAK,CAAC,CAAC;YAC/E,sBAAsB,EAAE,IAAI,0DAAW,CAAC,EAAE,EAAE,CAAC,yDAAU,CAAC,QAAQ,CAAC,CAAC;SACnE,CAAC,CAAC;IACL,CAAC;IAED,sBAAI,kDAAE;aAAN;YACE,OAAO,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC;QAC3C,CAAC;;;OAAA;IACD,sBAAI,iDAAC;aAAL;YACE,OAAO,IAAI,CAAC,mBAAmB,CAAC;QAClC,CAAC;;;OAAA;IAED,qDAAQ,GAAR;QAAA,iBAqBC;QApBC,IAAI,CAAC,WAAW;aACb,yBAAyB,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC;aACzD,SAAS,CACR,cAAI;YACF,IAAI,IAAI,CAAC,cAAc,CAAC,EAAE;gBACxB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,SAAS,EACT,8EAA8E,CAC/E,CAAC;gBACF,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAM,YAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAA1C,CAA0C,CAAC,CAAC;aACjE;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,KAAI,CAAC,QAAQ,CAAC,MAAM,CAClB,OAAO,EACP,qHAAqH,CACtH,CAAC;QACJ,CAAC,CACF,CAAC;IACN,CAAC;IAED,yDAAY,GAAZ,UAAa,KAAU;QAAvB,iBAuBC;QAtBC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE;YAC5C,QAAI,GAAI,KAAK,CAAC,MAAM,CAAC,KAAK,GAAtB,CAAuB;YAElC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;YAClC,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;YAChC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,EAAC,EAAE,EAAC,CAAC,CAAC,CAAC,SAAS,CACjD,UAAC,IAAY;gBACX,IAAI,IAAI,EAAE;oBACR,KAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC;wBAClC,aAAa,EAAE,IAAI;qBACpB,CAAC,CAAC;iBACJ;gBACD,KAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;YACrC,CAAC,EACD,eAAK;gBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACrB,KAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAC/B,KAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;gBACjD,KAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;YACrC,CAAC,CACF,CAAC;SACH;IACH,CAAC;IAED,0DAAa,GAAb,UAAc,OAAe;QAA7B,iBAYC;QAXC,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;QACnC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,SAAS,CACpD,cAAI;YACF,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE;gBAChB,KAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;aACtC;QACH,CAAC,EACD,eAAK;YACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CACF,CAAC;IACJ,CAAC;;gBAhJM,kEAAW;gBAHlB,oDAAM;gBAMC,sDAAM;gBACN,gEAAe;;;4BASrB,mDAAK;6BACL,mDAAK;qCAEL,uDAAS,SAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;;IALjC,kCAAkC;QAL9C,+DAAS,CAAC;YACT,QAAQ,EAAE,gCAAgC;YAC1C,uGAA0D;;SAE3D,CAAC;uFAsBuB,kEAAW;YAClB,oDAAM;YACJ,sDAAM;YACJ,gEAAe;OAxBxB,kCAAkC,CAsI9C;IAAD,yCAAC;CAAA;AAtI8C;;;;;;;;;;;;;ACtB/C;AAAe,+EAAgB,oBAAoB,OAAO,yBAAyB,+BAA+B,2BAA2B,oKAAoK,OAAO,mCAAmC,mBAAmB,OAAO,iCAAiC,+DAA+D,OAAO,qCAAqC,qBAAqB,OAAO,0FAA0F,+DAA+D,OAAO,6BAA6B,qBAAqB,wBAAwB,+BAA+B,yBAAyB,uBAAuB,0BAA0B,2BAA2B,yBAAyB,OAAO,uBAAuB,2BAA2B,+BAA+B,0BAA0B,wBAAwB,sBAAsB,4BAA4B,4BAA4B,uCAAuC,OAAO,qBAAqB,sCAAsC,mCAAmC,qBAAqB,WAAW,yBAAyB,iCAAiC,6BAA6B,oKAAoK,OAAO,6BAA6B,mBAAmB,OAAO,2BAA2B,+DAA+D,OAAO,+BAA+B,qBAAqB,OAAO,oFAAoF,+DAA+D,OAAO,yDAAyD,uuGAAuuG,E;;;;;;;;;;;;ACAvrK;AAAe,+iBAAgf,qBAAqB,8VAA8V,iBAAiB,4PAA4P,mHAAmH,wDAAwD,4LAA4L,+GAA+G,yDAAyD,mMAAmM,2JAA2J,8JAA8J,gTAAgT,2BAA2B,8VAA8V,wgCAAwgC,E;;;;;;;;;;;;ACA3zH;AAAe,uEAAQ,gBAAgB,uBAAuB,wBAAwB,GAAG,6CAA6C,uXAAuX,E;;;;;;;;;;;;ACA7f;AAAe,m4BAAo0B,E;;;;;;;;;;;;ACAn1B;AAAA;AAAA;AAAA;AAAA;AAA+C;AAC4B;AAE9B;AACY;AAEzD,IAAI,qEAAW,CAAC,UAAU,EAAE;IAC1B,oEAAc,EAAE,CAAC;CAClB;AAED,gGAAsB,EAAE,CAAC,eAAe,CAAC,yDAAS,CAAC;KAChD,KAAK,CAAC,aAAG,IAAI,cAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAlB,CAAkB,CAAC,CAAC;;;;;;;;;;;;ACXpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA,4CAA4C,WAAW;AACvD;AACA;AACA,qC","file":"main.js","sourcesContent":["import { Injectable } from '@angular/core';\r\nimport {\r\n CanActivate,\r\n ActivatedRouteSnapshot,\r\n RouterStateSnapshot\r\n} from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from './auth.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuard implements CanActivate {\r\n constructor(private authService: AuthService) {}\r\n\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable | Promise | boolean {\r\n return this.authService.isAuthenticated();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport {MatTableModule} from '@angular/material/table';\r\n//import {MatInputModule} from '@angular/material/input';\r\nimport {MatFormFieldModule} from '@angular/material/form-field';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\n//import {FormsModule} from '@angular/forms';\r\nimport {DragDropModule} from '@angular/cdk/drag-drop';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [\r\n CommonModule\r\n ],\r\n exports:[\r\n MatTableModule,\r\n //MatInputModule,\r\n MatFormFieldModule,\r\n MatDialogModule,\r\n //FormsModule\r\n DragDropModule\r\n \r\n ]\r\n})\r\nexport class MaterialModule { }","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJsaWRlci1wcm95ZWN0by5jb21wb25lbnQuc2NzcyJ9 */\";","export default \"#tabFiltros li a {\\n color: #00a985;\\n}\\n#tabFiltros li a:hover {\\n color: #00d3a6;\\n}\\n#tabFiltros li a.active {\\n color: #ffffff;\\n}\\n.mat-form-field {\\n font-size: 12px;\\n width: 100%;\\n}\\n.fa-edit,\\n.fa-history,\\n.fa-arrows-h .fa-check,\\n.fa-check-circle,\\n.fa-clone,\\n.fa-times-circle,\\n.fa-trash,\\n.fa-users,\\n.fa-comments {\\n color: gray;\\n}\\n.asig {\\n color: green !important;\\n}\\n.mat-label {\\n font-size: medium;\\n}\\nth,\\ntd {\\n word-wrap: break-word;\\n font-size: 14px;\\n font-family: Verdana, Geneva, Tahoma, sans-serif;\\n}\\nspan {\\n width: 103px;\\n}\\n.mat-list-option {\\n font-size: small;\\n text-align: left;\\n}\\n.red {\\n color: red;\\n}\\n.blue {\\n color: gray;\\n}\\n.gray {\\n color: gray;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFwuLlxcdGFibGEtaW5pY2lhdGl2YXMuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0k7RUFDSSxjQUFBO0FBQVI7QUFDUTtFQUNJLGNBQUE7QUFDWjtBQUNRO0VBQ0ksY0FBQTtBQUNaO0FBSUE7RUFDSSxlQUFBO0VBQ0EsV0FBQTtBQURKO0FBSUE7Ozs7Ozs7OztFQVNJLFdBQUE7QUFESjtBQUlBO0VBQ0ksdUJBQUE7QUFESjtBQUlBO0VBQ0ksaUJBQUE7QUFESjtBQUlBOztFQUVJLHFCQUFBO0VBQ0EsZUFBQTtFQUNBLGdEQUFBO0FBREo7QUFJQTtFQUNJLFlBQUE7QUFESjtBQUlBO0VBQ0ksZ0JBQUE7RUFDQSxnQkFBQTtBQURKO0FBSUM7RUFDRyxVQUFBO0FBREo7QUFHQTtFQUNJLFdBQUE7QUFBSjtBQUVBO0VBQ0ksV0FBQTtBQUNKIiwiZmlsZSI6InRhYmxhLWluaWNpYXRpdmFzLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiI3RhYkZpbHRyb3Mge1xyXG4gICAgbGkgYSB7XHJcbiAgICAgICAgY29sb3I6ICMwMGE5ODU7XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMDBkM2E2O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm1hdC1mb3JtLWZpZWxkIHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZmEtZWRpdCxcclxuLmZhLWhpc3RvcnksXHJcbi5mYS1hcnJvd3MtaCAuZmEtY2hlY2ssXHJcbi5mYS1jaGVjay1jaXJjbGUsXHJcbi5mYS1jbG9uZSxcclxuLmZhLXRpbWVzLWNpcmNsZSxcclxuLmZhLXRyYXNoLFxyXG4uZmEtdXNlcnMsXHJcbi5mYS1jb21tZW50cyB7XHJcbiAgICBjb2xvcjogZ3JheTtcclxufVxyXG5cclxuLmFzaWcge1xyXG4gICAgY29sb3I6IGdyZWVuICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tYXQtbGFiZWwge1xyXG4gICAgZm9udC1zaXplOiBtZWRpdW07XHJcbn1cclxuXHJcbnRoLFxyXG50ZCB7XHJcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LWZhbWlseTogVmVyZGFuYSwgR2VuZXZhLCBUYWhvbWEsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbnNwYW4ge1xyXG4gICAgd2lkdGg6IDEwM3B4O1xyXG59XHJcblxyXG4ubWF0LWxpc3Qtb3B0aW9uIHtcclxuICAgIGZvbnQtc2l6ZTogc21hbGw7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcbiAgXHJcbiAucmVkIHtcclxuICAgIGNvbG9yOiByZWQ7XHJcbn1cclxuLmJsdWUge1xyXG4gICAgY29sb3I6IGdyYXk7XHJcbn1cclxuLmdyYXkge1xyXG4gICAgY29sb3I6IGdyYXk7XHJcbn1cclxuXHJcbiAgIl19 */\";","export default \"\";","export default \"header #superior {\\n background-color: #0159bc;\\n color: #ffffff;\\n}\\nheader #medio {\\n background-color: #0262c9;\\n padding-right: 0px;\\n}\\nheader #medio div:first-child {\\n background: linear-gradient(90deg, #c6c6a9 45%, #0262c9 55%);\\n}\\nheader #inferior div:first-child {\\n background-color: #4455ac;\\n}\\nheader #inferior div:last-child {\\n background-color: #7a429e;\\n}\\n#navSocial a {\\n transition: 0.8s;\\n}\\n#navSocial a:hover {\\n background-color: #e8c204;\\n}\\n#navEnlaces li.nav-item {\\n transition: 0.5s;\\n}\\n#navEnlaces li.nav-item:hover {\\n border-bottom: 1px inset #e8c204;\\n}\\n#navEnlaces li.active {\\n font-size: 1.1rem;\\n border-bottom: 1px inset #e8c204;\\n}\\n#navEnlaces li.nav-item:last-child:hover {\\n border-bottom: none;\\n cursor: pointer;\\n}\\n.navbar-toggler {\\n border: none;\\n color: #ffffff;\\n}\\nul, ol {\\n list-style: none;\\n}\\n@media (min-width: 576px) {\\n .logoResponsive {\\n flex-wrap: wrap;\\n align-content: stretch;\\n }\\n}\\n.img-fluid {\\n height: 70px;\\n width: 180px;\\n}\\noption, select {\\n color: #797D7F;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFwuLlxcbmF2YmFyLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNFO0VBQ0UseUJBQUE7RUFDQSxjQUFBO0FBQUo7QUFJRTtFQUNFLHlCQUFBO0VBQ0Esa0JBQUE7QUFGSjtBQUlJO0VBQ0UsNERBQUE7QUFGTjtBQU1JO0VBQ0UseUJBQUE7QUFKTjtBQU1JO0VBQ0UseUJBQUE7QUFKTjtBQVVFO0VBQ0UsZ0JBQUE7QUFQSjtBQVVFO0VBQ0UseUJBQUE7QUFSSjtBQWFFO0VBQ0UsZ0JBQUE7QUFWSjtBQWNFO0VBQ0UsZ0NBQUE7QUFaSjtBQWVFO0VBQ0UsaUJBQUE7RUFDQSxnQ0FBQTtBQWJKO0FBZ0JFO0VBQ0UsbUJBQUE7RUFDQSxlQUFBO0FBZEo7QUFrQkE7RUFDRSxZQUFBO0VBQ0EsY0FBQTtBQWZGO0FBa0JBO0VBQ0UsZ0JBQUE7QUFmRjtBQW9CQTtFQUNFO0lBQ0UsZUFBQTtJQUNBLHNCQUFBO0VBakJGO0FBQ0Y7QUFvQkE7RUFFRSxZQUFBO0VBQ0EsWUFBQTtBQW5CRjtBQXNCQTtFQUNFLGNBQUE7QUFuQkYiLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiaGVhZGVyIHtcclxuICAjc3VwZXJpb3Ige1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAxNTliYztcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgLy9oZWlnaHQ6IDQzcHg7XHJcbiAgICAvL3BhZGRpbmctYm90dG9tOiA0JTtcclxuICB9XHJcbiAgI21lZGlvIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMjYyYzk7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XHJcbiAgIFxyXG4gICAgJiBkaXY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMTk4LDE5OCwxNjksMSkgNDUlLCByZ2JhKDIsOTgsMjAxLDEpIDU1JSk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICNpbmZlcmlvciB7XHJcbiAgICAmIGRpdjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0NDU1YWM7XHJcbiAgICB9XHJcbiAgICAmIGRpdjpsYXN0LWNoaWxkIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzdhNDI5ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNuYXZTb2NpYWwge1xyXG4gIGEge1xyXG4gICAgdHJhbnNpdGlvbjogMC44cztcclxuICB9XHJcblxyXG4gIGE6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U4YzIwNDtcclxuICB9XHJcbn1cclxuXHJcbiNuYXZFbmxhY2VzIHtcclxuICBsaS5uYXYtaXRlbSB7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjVzO1xyXG4gICBcclxuICB9XHJcblxyXG4gIGxpLm5hdi1pdGVtOmhvdmVyIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBpbnNldCAjZThjMjA0O1xyXG4gIH1cclxuXHJcbiAgbGkuYWN0aXZle1xyXG4gICAgZm9udC1zaXplOiAxLjFyZW07XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggaW5zZXQgI2U4YzIwNDtcclxuICB9XHJcblxyXG4gICYgbGkubmF2LWl0ZW06bGFzdC1jaGlsZDpob3ZlcntcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4ubmF2YmFyLXRvZ2dsZXIge1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBjb2xvcjogI2ZmZmZmZjtcclxufVxyXG5cclxudWwsb2x7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuXHJcbn1cclxuXHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcclxuICAubG9nb1Jlc3BvbnNpdmUge1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaDtcclxuICB9XHJcbn1cclxuXHJcbi5pbWctZmx1aWQge1xyXG4gIC8vcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGhlaWdodDogNzBweDtcclxuICB3aWR0aDogMTgwcHg7XHJcbn1cclxuXHJcbm9wdGlvbixzZWxlY3R7XHJcbiAgY29sb3I6ICM3OTdEN0Y7XHJcbn1cclxuIl19 */\";","export default \"\\r\\ntable td{\\r\\n font-size: small\\r\\n}\\r\\n\\r\\ntable th {\\r\\n background-color:#C0C0C0;\\r\\n color: black;\\r\\n font-style:normal;\\r\\n font-size: small;\\r\\n }\\r\\n\\r\\n.table {\\r\\n width: 100%;\\r\\n }\\r\\n\\r\\n#encabezado{\\r\\n background-color:#117BB8;\\r\\n color: white;\\r\\n\\r\\n }\\r\\n\\r\\n#datosGral{\\r\\n background-color:#800080;\\r\\n color: white;\\r\\n font-style: normal;\\r\\n \\r\\n }\\r\\n\\r\\n.table > tbody > tr:hover {\\r\\n background-color: #F2F2F2;\\r\\n cursor: pointer;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvc3Rlby1wcm9jZXNvLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBO0lBQ0k7QUFDSjs7QUFFQTtJQUNJLHdCQUF3QjtJQUN4QixZQUFZO0lBQ1osaUJBQWlCO0lBQ2pCLGdCQUFnQjtFQUNsQjs7QUFFQTtJQUNFLFdBQVc7RUFDYjs7QUFFQTtJQUNFLHdCQUF3QjtJQUN4QixZQUFZOztFQUVkOztBQUVBO0lBQ0Usd0JBQXdCO0lBQ3hCLFlBQVk7SUFDWixrQkFBa0I7O0VBRXBCOztBQUVBO0lBQ0UseUJBQXlCO0lBQ3pCLGVBQWU7RUFDakIiLCJmaWxlIjoiY29zdGVvLXByb2Nlc28uY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG50YWJsZSB0ZHtcclxuICAgIGZvbnQtc2l6ZTogc21hbGxcclxufVxyXG5cclxudGFibGUgdGgge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjojQzBDMEMwO1xyXG4gICAgY29sb3I6IGJsYWNrO1xyXG4gICAgZm9udC1zdHlsZTpub3JtYWw7XHJcbiAgICBmb250LXNpemU6IHNtYWxsO1xyXG4gIH1cclxuXHJcbiAgLnRhYmxlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICBcclxuICAjZW5jYWJlemFkb3tcclxuICAgIGJhY2tncm91bmQtY29sb3I6IzExN0JCODtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuXHJcbiAgfVxyXG5cclxuICAjZGF0b3NHcmFse1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjojODAwMDgwO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgXHJcbiAgfVxyXG5cclxuICAudGFibGUgPiB0Ym9keSA+IHRyOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfSJdfQ== */\";","import { Component, OnInit, Inject, NgZone,ViewChild,ElementRef } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog} from '@angular/material/dialog';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { FormGroup, FormControl, Validators,FormArray,FormBuilder } from '@angular/forms';\r\nimport * as moment from 'moment';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-confirm-listado-iniciativas-admin',\r\n templateUrl: './confirm-listado-iniciativas-admin.component.html',\r\n styleUrls: ['./confirm-listado-iniciativas-admin.component.css']\r\n})\r\nexport class ConfirmListadoIniciativasAdminComponent implements OnInit {\r\n confirmComentarios:boolean=false;\r\n name:string;\r\n email:string;\r\n id_iniciativa:number;\r\n id_periodo:number;\r\n folioIniciativa:number;\r\n agregarComentario:boolean=false;\r\n confirmEliminarPeriodo:boolean=false;\r\n confirmAddPeriodo:boolean=false;\r\n confirmAUpdatePeriodo:boolean=false;\r\n tituloAdd:string;\r\n tituloUpdate:string;\r\n formNuevoPeriodo: FormGroup;\r\n formEditarPeriodo: FormGroup;\r\n //Motivos\r\n id_motivo:number;\r\n tituloAddMotivos:string;\r\n confirmAddMotivo:boolean=false;\r\n formMotivos: FormGroup;\r\n listTipoMotivos:any[];\r\n confirmEliminarMotivo:boolean=false;\r\n tituloUpdateMotivo:string;\r\n confirmAUpdateMotivo:boolean=false;\r\n //Estructura\r\n confirmEliminarEstructura:boolean=false;\r\n confirmAUpdateEstructura:boolean=false;\r\n id:number;\r\n tituloUpdateEstructura:string;\r\n nombreEtiqueta:string;\r\n\r\n //Relaciones\r\n confirmAUpdateRelacion:boolean=false;\r\n confirmAUpdateRelacionGralArea:boolean=false;\r\n listaDirGralSinSub:any[]=[];\r\n listaSubsecretaria:any[]=[];\r\n listaDirGral:any[]=[];\r\n listaAreas:any[]=[];\r\n idSub:number;\r\n idDirGral:number;\r\n\r\n //Nuevo enlace\r\n confirmNuevoEnlace:boolean=false;\r\n\r\n //Area dueña\r\n confirmEliminarArea:boolean=false;\r\n confirmAUpdateaArea:boolean=false;\r\n idArea:number;\r\n tituloUpdateArea:string;\r\n nombreEtiquetaArea:string;\r\n\r\n //Aplicaciones\r\n tituloUpdateApp:string;\r\n confirmAUpdateaApp:boolean=false;\r\n confirmAUpdateRelacionAreaApp:boolean=false;\r\n\r\n\r\n\r\n\r\n\r\n constructor(private dataService: DataService,\r\n private notifier: NotifierService,\r\n @Inject(MAT_DIALOG_DATA) \r\n public data: string) { }\r\n\r\n ngOnInit(): void {\r\n //Inicializamos el form para agregar periodos de envio\r\n this.formNuevoPeriodo = new FormGroup({\r\n fechaInicio_periodoEnvio: new FormControl('', [Validators.required]),\r\n fechaTermino_periodoEnvio: new FormControl('', [Validators.required])\r\n });\r\n\r\n //Inicializamos el form para agregar periodos de envio\r\n this.formMotivos = new FormGroup({\r\n descripcion_motivo: new FormControl('', [Validators.required]),\r\n id_tipoMotivo: new FormControl('', [Validators.required])\r\n });\r\n \r\n if(this.data['opcion']==10)\r\n {this.confirmComentarios=true;\r\n this.name=this.data['userName'];\r\n this.email=this.data['email'];\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.data=\"\";\r\n this.folioIniciativa=this.data['folio'];\r\n }\r\n //Opcion para eliminar los periodos de envio\r\n if(this.data['opcion']==12)\r\n {\r\n this.confirmEliminarPeriodo=true;\r\n this.id_periodo=this.data['id_periodo'];\r\n }\r\n //Opcion para agregar los periodos de envio\r\n if(this.data['opcion']==13)\r\n {\r\n this.tituloAdd=this.data['titulo'];\r\n this.confirmAddPeriodo=true;\r\n }\r\n //Opcion para editar los periodos de envio\r\n if(this.data['opcion']==14)\r\n {\r\n this.tituloUpdate=this.data['titulo'];\r\n this.confirmAUpdatePeriodo=true;\r\n let idPeriodo=this.data['id_periodo'];\r\n this.infoUpdatePeriodo(idPeriodo);\r\n }\r\n //Opcion para agregar motivos\r\n if(this.data['opcion']==15)\r\n {\r\n //Agregar tipo de motivos\r\n this.dataService.getTipoMotivos().subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.listTipoMotivos = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n\r\n this.tituloAddMotivos=this.data['titulo'];\r\n this.confirmAddMotivo=true;\r\n }\r\n //Opcion para eliminar los periodos de envio\r\n if(this.data['opcion']==16)\r\n {\r\n this.confirmEliminarMotivo=true;\r\n this.id_motivo=this.data['id_motivo'];\r\n }\r\n //Opcion para editar los motivos\r\n if(this.data['opcion']==17)\r\n {\r\n //Agregar tipo de motivos\r\n this.dataService.getTipoMotivos().subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.listTipoMotivos = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n this.tituloUpdateMotivo=this.data['titulo'];\r\n this.confirmAUpdateMotivo=true;\r\n let idMotivo=this.data['id_motivo'];\r\n this.infoUpdateMotivo(idMotivo);\r\n }\r\n //Opcion para eliminar la subsecretaria\r\n if(this.data['opcion']==18)\r\n {\r\n this.confirmEliminarEstructura=true;\r\n this.id=this.data['id'];\r\n }\r\n //Opcion para editar las subsecretarias\r\n if(this.data['opcion']==19)\r\n {\r\n this.nombreEtiqueta=this.data['etiqueta']\r\n this.tituloUpdateEstructura=this.data['titulo'];\r\n this.confirmAUpdateEstructura=true;\r\n let id=this.data['id'];\r\n this.infoUpdateSubse(id);\r\n }\r\n //Opcion para editar las direcciones generales\r\n if(this.data['opcion']==20)\r\n {\r\n this.nombreEtiqueta=this.data['etiqueta']\r\n this.tituloUpdateEstructura=this.data['titulo'];\r\n this.confirmAUpdateEstructura=true;\r\n let id=this.data['id'];\r\n this.infoUpdateDirGral(id);\r\n }\r\n //Opcion para eliminar la dirección gral.\r\n if(this.data['opcion']==21)\r\n {\r\n this.confirmEliminarEstructura=true;\r\n this.id=this.data['id'];\r\n }\r\n //Opcion para editar las direcciones de area\r\n if(this.data['opcion']==22)\r\n {\r\n this.nombreEtiqueta=this.data['etiqueta']\r\n this.tituloUpdateEstructura=this.data['titulo'];\r\n this.confirmAUpdateEstructura=true;\r\n let id=this.data['id'];\r\n this.infoUpdateDirArea(id);\r\n }\r\n\r\n //Opcion para editar la direccion general de una subsecretaria\r\n if(this.data['opcion']==23)\r\n {\r\n this.nombreEtiqueta=this.data['etiqueta']\r\n this.tituloUpdateEstructura=this.data['titulo'];\r\n this.confirmAUpdateRelacion=true;\r\n //this.data=this.data['id'];\r\n this.id=this.data['id'];\r\n this.idSub=this.data['idSubsecretaria'];\r\n //Cargamos el combo de direccion gral\r\n this.cargarSubsecretarias();\r\n this.infoUpdateDirGral(this.id);\r\n }\r\n\r\n //Opcion para editar la direccion general de una direccion de area\r\n if(this.data['opcion']==24)\r\n {\r\n this.nombreEtiqueta=this.data['etiqueta']\r\n this.tituloUpdateEstructura=this.data['titulo'];\r\n this.confirmAUpdateRelacionGralArea=true;\r\n //this.data=this.data['id'];\r\n this.id=this.data['id'];\r\n this.idDirGral=this.data['idDirGral'];\r\n //Cargamos el combo de direccion gral\r\n this.cargarDireccionGral();\r\n this.infoUpdateDirArea(this.id);\r\n }\r\n\r\n //Opcion para guardar nuevo enlace\r\n if(this.data['opcion']==25)\r\n {\r\n this.confirmNuevoEnlace=true;\r\n //his.id=this.data['id'];\r\n }\r\n\r\n //Opcion para editar las areas dueñas\r\n if(this.data['opcion']==26)\r\n {\r\n this.nombreEtiqueta=this.data['etiqueta']\r\n this.tituloUpdateArea=this.data['titulo'];\r\n this.confirmAUpdateaArea=true;\r\n let id=this.data['id'];\r\n this.infoUpdateArea(id);\r\n }\r\n\r\n //Opcion para eliminar areas/aplicaciones\r\n if(this.data['opcion']==27)\r\n {\r\n this.confirmEliminarArea=true;\r\n //this.id=this.data['id'];\r\n }\r\n\r\n //Opcion para editar las areas dueñas\r\n if(this.data['opcion']==28)\r\n {\r\n this.nombreEtiqueta=this.data['etiqueta']\r\n this.tituloUpdateApp=this.data['titulo'];\r\n this.confirmAUpdateaApp=true;\r\n let id=this.data['id'];\r\n this.infoUpdateApp(id);\r\n }\r\n\r\n \r\n //Opcion para editar la direccion general de una subsecretaria\r\n if(this.data['opcion']==29)\r\n {\r\n this.nombreEtiqueta=this.data['etiqueta']\r\n this.tituloUpdateEstructura=this.data['titulo'];\r\n this.confirmAUpdateRelacionAreaApp=true;\r\n this.id=this.data['id'];\r\n this.idArea=this.data['idArea'];\r\n //Cargamos el combo de areas\r\n this.cargarAreas();\r\n this.infoUpdateApp(this.id);\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n get fc() {\r\n return this.formNuevoPeriodo.controls;\r\n }\r\n get f() {\r\n return this.formNuevoPeriodo;\r\n }\r\n\r\n //Form de motivos\r\n get fm() {\r\n return this.formMotivos.controls;\r\n }\r\n get m() {\r\n return this.formMotivos;\r\n }\r\n\r\n \r\n //Método para cargar las subsecretarias\r\n cargarSubsecretarias()\r\n {\r\n \r\n this.dataService.getListSubsecretarias().subscribe(\r\n data => {\r\n this.listaSubsecretaria = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Método para cargar las direcciones generales\r\n cargarDireccionGralSinSub()\r\n {\r\n this.dataService.getListDireccionesGral().subscribe(\r\n data => {\r\n this.listaDirGralSinSub = data['data'];\r\n //this.dataSourceDGS.data=this.listaDirGralSinSub;\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Método para cargar las subsecretarias\r\n //Método para cargar las subsecretarias\r\n cargarDireccionGral()\r\n {\r\n this.dataService.getListDireccionesGral().subscribe(\r\n data => {\r\n this.listaDirGral = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Método para editar periodo de envio\r\n infoUpdatePeriodo(id:number)\r\n {\r\n //Mapeamos los valores del form\r\n this.dataService.getPeriodoEnviobyId(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n let infoPeriodo:any=data['objData'];\r\n this.formNuevoPeriodo.patchValue({\r\n fechaInicio_periodoEnvio:moment(infoPeriodo.fechaInicio_periodoEnvio).format('YYYY-MM-DD'),\r\n fechaTermino_periodoEnvio:moment(infoPeriodo.fechaTermino_periodoEnvio).format('YYYY-MM-DD')\r\n });\r\n }\r\n });\r\n }\r\n\r\n //Método para obtener la informacion del motivo\r\n infoUpdateMotivo(id:number)\r\n {\r\n //Mapeamos los valores del form\r\n this.dataService.getMotivobyId(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n let infoMotivos:any=data['objData'];\r\n this.formMotivos.patchValue({\r\n descripcion_motivo:infoMotivos.descripcion_motivo,\r\n id_tipoMotivo:infoMotivos.id_tipoMotivo,\r\n });\r\n }\r\n });\r\n }\r\n\r\n //Método para obtener la informacion de la subsecretaria\r\n infoUpdateSubse(id:number)\r\n {\r\n //Mapeamos los valores del form\r\n this.dataService.getSubsecretariabyId(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n this.data=data['objData']['nombre_subsecretariaSap'];\r\n }\r\n });\r\n }\r\n\r\n //Método para obtener la informacion de la dirección gral.\r\n infoUpdateDirGral(id:number)\r\n {\r\n //Mapeamos los valores del form\r\n this.dataService.getDirGralById(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n this.data=data['objData']['nombre_dirgralSap'];\r\n }\r\n });\r\n }\r\n\r\n //Método para obtener la informacion de la dirección de area.\r\n infoUpdateDirArea(id:number)\r\n {\r\n //Mapeamos los valores del form\r\n this.dataService.getDirAreaById(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n this.data=data['objData']['nombre_areaSap'];\r\n }\r\n });\r\n }\r\n\r\n\r\n \r\n //Método para obtener la informacion del area\r\n infoUpdateArea(id:number)\r\n {\r\n //Mapeamos los valores del form\r\n this.dataService.getAreaById(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n this.data=data['objData']['nombre_area'];\r\n }\r\n });\r\n }\r\n\r\n \r\n //Método para obtener la informacion de la app\r\n infoUpdateApp(id:number)\r\n {\r\n //Mapeamos los valores del form\r\n this.dataService.getAppById(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n this.data=data['objData']['nombre_aplicacion'];\r\n }\r\n });\r\n }\r\n\r\n //Método para cargar las áreas dueñas\r\n cargarAreas()\r\n {\r\n this.dataService.obtenerGruposSistemas().subscribe(\r\n data => {\r\n this.listaAreas = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Component, ElementRef, Input, NgZone, OnInit, QueryList, ViewChild, ViewChildren,Output,EventEmitter } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators,FormBuilder } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport bsCustomFileInput from 'bs-custom-file-input';\r\nimport { Iniciativa } from 'src/app/interfaces/interfaces';\r\nimport { Aplicativos, GrupoAplicativo,DireccionGral,DireccionArea } from '../../interfaces/interfaces';\r\nimport { DataService } from '../../services/data.service';\r\nimport * as moment from 'moment';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ModalCosteoConsultaComponent } from 'src/app/components/modal-costeo-consulta/modal-costeo-consulta.component';\r\nimport {STEPPER_GLOBAL_OPTIONS} from '@angular/cdk/stepper';\r\nimport { Proceso, Procedimiento } from 'src/app/interfaces/interfaces';\r\nimport{ ConfirmComponent} from 'src/app/components/shared/confirm/confirm.component';\r\nimport { ModalProcedimientoComponent } from 'src/app/components/modal-procedimiento-asis/modal-procedimiento.component';\r\n\r\n\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-cambios-funcionalidades',\r\n templateUrl: './cambios-funcionalidades.component.html',\r\n styleUrls: ['./cambios-funcionalidades.component.scss'],\r\n providers: [{\r\n provide: STEPPER_GLOBAL_OPTIONS, useValue: {showError: true}\r\n }]\r\n})\r\nexport class CambiosFuncionalidadesComponent implements OnInit {\r\n // Usuario Autenticado\r\n @Input() emailUser: string;\r\n @Input() nombreUser: string;\r\n //Evento de salida para el boton de siguiente\r\n @Output() botonSiguiente = new EventEmitter();\r\n // Fomr para almacienar los datos\r\n cambiosFormDatos: FormGroup;\r\n cambiosFormDatosEditar: FormGroup;\r\n formArchivos: FormGroup;\r\n\r\n \r\n // Control para mostrar form\r\n opcionImplicaCambios: string = null;\r\n // Tipos de aplicativo y grupos de aplicativos\r\n gruposAplicativos: GrupoAplicativo[];\r\n tiposAplicativos: Aplicativos[];\r\n idGrupoSeleccionado: number;\r\n areaGralSeleccionada: string;\r\n idAplicativoSeleccionado: number;\r\n minFechaTermino: string;\r\n\r\n // Control visivilidad de los componentes del form\r\n inContibucionGobierno = false;\r\n inContibucionOperativo = false;\r\n inImpactoProcesos = false;\r\n inMejorarServicioCiudadania = false;\r\n inCumplimientoLey = false;\r\n inModernizacionDependencia = false;\r\n // Visivilidad de los uploadings de los archivos\r\n subiendoProcesoActual = false;\r\n subiendoProcesoPropuesto = false;\r\n subiendoCosteo = false;\r\n subiendoOtrosArchivos = false;\r\n procesoActualError = false;\r\n procesoPropuestoError = false;\r\n costeoError = false;\r\n otrosArchivosError = false;\r\n \r\n // Acceso a controles de Input Files\r\n @ViewChild('otrosArchivos')\r\n otrosArchivosInput: ElementRef;\r\n @ViewChild('procesoActual')\r\n procesoActualInput: ElementRef;\r\n @ViewChild('procesoPropuesto')\r\n procesoPropuestoInput: ElementRef;\r\n @ViewChild('costeo', { static: false })\r\n costeoInput: ElementRef;\r\n // Acceso a las labels de los input para solucionar bug de Bootstrap\r\n @ViewChild('labelProcesoActualNo',{static:false})\r\n labelProcesoActualNo: ElementRef;\r\n @ViewChild('labelProcesoActualSi',{static:false})\r\n labelProcesoActualSi: ElementRef;\r\n @ViewChild('labelProcesoPropuesto',{static:false})\r\n labelProcesoPropuesto: ElementRef;\r\n @ViewChild('labelCosteo',{static:false})\r\n labelCosteo: ElementRef;\r\n @ViewChild('labelOtrosArchivos',{static:false})\r\n labelOtrosArchivos: ElementRef;\r\n // Checkboxes\r\n @ViewChildren('checkboxes') checkboxes: QueryList;\r\n @ViewChild(ModalCosteoConsultaComponent) consultaCosteo: ModalCosteoConsultaComponent;\r\n @ViewChild(ModalProcedimientoComponent) editUserComponent: ModalProcedimientoComponent;\r\n // Limite fecha actual\r\n fechaActual: number;\r\n archivoAnexo:File;\r\n archivoPropuesto:File;\r\n archivoActual:File;\r\n idIniciativa:string;\r\n idProceso:number;\r\n labelNoCambio:boolean=false;\r\n labelSiCambio:boolean=false;\r\n mostrarFormEdicion:boolean=false;\r\n noCambioProceso:boolean=false;\r\n editarIniciativa:boolean=false;\r\n mostrardescargarArchivoAN:boolean=false;\r\n mostrardescargarArchivoPA:boolean=false;\r\n mostrardescargarArchivoPP:boolean=false;\r\n nombreArchivoPP:string;\r\n nombreArchivoPA:string;\r\n nombreArchivoAN:string;\r\n mostrarCosteo:boolean=false;\r\n botonCosteo:boolean=false;\r\n botonEnvio:boolean=false;\r\n mostrarFormConsultar:boolean=false;\r\n mostrarFormNuevo:boolean=true;\r\n mostrarFormEditar:boolean=false;\r\n opcion:string;\r\n id_iniciativa:number;\r\n direccionesGral: DireccionGral[];\r\n direccionesArea: DireccionArea[];\r\n formProcesos: FormGroup;\r\n costeo:boolean;\r\n tablaProcedimientos: Procedimiento[]=[];\r\ntablaProcedimientosToBe: Procedimiento[]=[];\r\ntabla: Procedimiento[]=[];\r\narchivoProcesoActualRequerido:boolean=false;\r\narchivoProcesoPropuesto:boolean=false;\r\nfechaTermino: string;\r\nbotonEnviar:boolean=false;\r\ntabs = ['Procedimiento'];\r\nselectedTabs = new FormControl(0);\r\ntabSeleccionado:number=0;\r\ntabuladores: any[]=[];\r\nesPeriodoEnvio:boolean=false;\r\nidRolSeleccionado:number;\r\nvalorTaps:number=0;\r\nloadingGeneral:boolean=false;\r\ncambioTipo:number;\r\nidDirGral:number;\r\nnameDirGral:string;\r\n\r\n constructor(\r\n private dataService: DataService,\r\n private zone: NgZone,\r\n private router: Router,\r\n private notifier: NotifierService,\r\n public dialog:MatDialog,\r\n private authService: AuthService,\r\n private _formBuilder: FormBuilder\r\n\r\n ) {\r\n // Obtener los aplicativos\r\n this.dataService.obtenerGruposSistemas().subscribe(data => {\r\n this.gruposAplicativos = data['data'];\r\n });\r\n //Verificamos que sea periodo de envio\r\n this.dataService.esPeriodoEnvios().subscribe(\r\n data=>{\r\n this.esPeriodoEnvio=data['objData'];\r\n }\r\n );\r\n /*this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n });*/\r\n // Establecer fecha actual\r\n this.fechaActual = Date.now();\r\n }\r\n\r\n ngOnInit() \r\n {\r\n // Calculamos la fecha actual y añadimos 7 días\r\n const today = new Date();\r\n const nextWeek = new Date(today.setDate(today.getDate() + 7));\r\n \r\n // Formato de la fecha mínima como YYYY-MM-DD\r\n this.minFechaTermino = nextWeek.toISOString().split('T')[0];\r\n \r\n //Nos subscribimos al método para el rol seleccionado\r\n this.authService.escuchaRolSeleccionado().subscribe((res) => {\r\n this.idRolSeleccionado = res;\r\n });\r\n this.authService.obtenerEmailUser().subscribe((res) => {\r\n this.emailUser = res;\r\n });\r\n\r\n this.idIniciativa = localStorage.getItem (\"editarIniciativaId\");\r\n this.opcion = window.localStorage.getItem (\"opcionTabla\");\r\n\r\n\r\n if (!this.idIniciativa) \r\n {\r\n }\r\n else{\r\n //Opcion para editar\r\n if(parseInt(this.opcion)==1)\r\n {\r\n this.editarIniciativa=true;\r\n this.mostrarFormEditar=true;\r\n this.mostrarFormNuevo=false;\r\n this.botonCosteo=true;\r\n this.verDetallesIniciativa(parseInt(this.idIniciativa));\r\n }\r\n //Opcion para consultar\r\n if(parseInt(this.opcion)==2)\r\n {\r\n this.mostrarFormConsultar=true;\r\n this.mostrarFormNuevo=false;\r\n this.mostrarCosteo=false;\r\n this.mostrarFormEditar=false;\r\n this.verDetallesIniciativa(parseInt(this.idIniciativa));\r\n //this.verDetallesIniciativa(parseInt(this.idIniciativa));\r\n }\r\n\r\n }\r\n\r\n // Activar el FileChooser de bootstrap\r\n bsCustomFileInput.init();\r\n // Crear form\r\n this.cambiosFormDatos = this._formBuilder.group({\r\n id_iniciativa: new FormControl(''),\r\n nombre_iniciativa: new FormControl(''),\r\n fechaTermino_iniciativa: new FormControl(''),\r\n nombre_solicitante: new FormControl(''),\r\n telefono_solicitante: new FormControl('', [Validators.maxLength(10)]),\r\n extencion_solicitante: new FormControl('', [Validators.maxLength(5)]),\r\n justificacionFecha_iniciativa: new FormControl(''),\r\n problematica_iniciativa: new FormControl(''),\r\n impactos: new FormGroup({\r\n contribucionProgGobierno: new FormControl(''),\r\n contribucionProgOperativo: new FormControl(''),\r\n impactoProcesos: new FormControl(''),\r\n mejoraServicio: new FormControl(''),\r\n cumplimientoLey: new FormControl(''),\r\n contribucionModernizacion: new FormControl('')\r\n }),\r\n solucionPropuesta_iniciativa: new FormControl(''),\r\n beneficiariosDirectos_iniciativa: new FormControl(''),\r\n beneficiariosImplementacion_iniciativa: new FormControl(''),\r\n doc_procesoActual: new FormControl(''),\r\n doc_procesoPropuesto: new FormControl(''),\r\n costeo: new FormControl(''),\r\n docAnexos_iniciativas: new FormControl(''),\r\n //tipoIniciativa: new FormControl('2'),\r\n userlogin: new FormControl(this.emailUser),\r\n rolUserlogin: new FormControl(this.idRolSeleccionado),\r\n\r\n //nombreCapturista: new FormControl(this.nombreUser.trim()),\r\n //aplicativosIdAplicativo: new FormControl(''),\r\n implicaCambios: new FormControl(''),\r\n email_solicitante: new FormControl('', [Validators.email]),\r\n direccionArea_solicitante: new FormControl(''),\r\n //nombreCambioCorreccion: new FormControl(''),\r\n id_area: new FormControl(''),\r\n id_aplicacion: new FormControl(''),\r\n id_estatusIniciativa : new FormControl(''),\r\n id_proceso : new FormControl(''),\r\n id_tipoIniciativa: new FormControl(''),\r\n fechaEnvio_iniciativa: new FormControl(''),\r\n nombreProceso_iniciativa: new FormControl(''),\r\n dirGral_solicitante: new FormControl(''),\r\n id_dirgralSapSolicitante:new FormControl(''),\r\n id_areaSapSolicitante:new FormControl(''),\r\n });\r\n\r\n this.cambiosFormDatosEditar = this._formBuilder.group({\r\n doc_procesoActual: new FormControl(''),\r\n doc_procesoPropuesto: new FormControl(''),\r\n docAnexos_iniciativas: new FormControl(''),\r\n });\r\n\r\n\r\n this.formProcesos= this._formBuilder.group({\r\n id_proceso:new FormControl(''),\r\n id_iniciativa: new FormControl(''),\r\n nombre_proceso: new FormControl(''),\r\n procedimiento_proceso: new FormControl(''),\r\n duenio_proceso: new FormControl(''),\r\n tramitesExternosASIS_proceso: new FormControl(''),\r\n tramitesInternosASIS_proceso: new FormControl(''),\r\n tramitesExternosTOBE_proceso: new FormControl(''),\r\n tramitesInternosTOBE_proceso: new FormControl(''),\r\n hojasImpresasASIS_proceso : new FormControl(''),\r\n hojasImpresasTOBE_proceso : new FormControl(''),\r\n kmRecorridosASIS_Proceso: new FormControl(''),\r\n kmRecorridosTOBE_Proceso: new FormControl('')\r\n })\r\n\r\n //Form para guardar la info de los archivos\r\n this.formArchivos=this._formBuilder.group({\r\n doc_procesoActual: new FormControl(''),\r\n doc_procesoPropuesto: new FormControl(''),\r\n docAnexos_iniciativas: new FormControl('')\r\n\r\n });\r\n\r\n //Obtener las direcciones generales\r\n this.dataService.obtenerDireccionGral(parseInt(this.idIniciativa),this.emailUser).subscribe(data => {\r\n this.direccionesGral = data['data'];\r\n });\r\n\r\n \r\n //Obtenemos la informacion de usuario logueado\r\n this.dataService.obtenerInfoUsuario(this.emailUser).subscribe(data => {\r\n if(data['objData'])\r\n {\r\n this.idDirGral=data['objData']['id_dirgralSap'];\r\n this.nameDirGral=data['objData']['nombre_dirgralSap'];\r\n\r\n //Hacemos el patchValue para la direccion gral\r\n this.cambiosFormDatos.patchValue({\r\n id_dirgralSapSolicitante:this.idDirGral\r\n })\r\n this.dataService.obtenerAreaSolicitante(this.idDirGral).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.direccionesArea = data['data'];\r\n }\r\n },\r\n error => {\r\n }\r\n );\r\n }\r\n });\r\n\r\n\r\n\r\n }\r\n\r\n get fc() {\r\n return this.cambiosFormDatos.controls;\r\n }\r\n get f() {\r\n return this.cambiosFormDatos;\r\n }\r\n\r\n cambioOpcion(opcion: string) \r\n {\r\n // Limpiar campos por posible cambio de opcion repentina\r\n this.cambiosFormDatos.patchValue({\r\n docAnexos_iniciativas: '',\r\n doc_procesoActual: '',\r\n doc_procesoPropuesto: '',\r\n \r\n });\r\n this.opcionImplicaCambios = opcion;\r\n // Aplicar validaciones dependiendo de la opcion seleccionada\r\n //this.validacionCondicional(opcion);\r\n // Agregar valor de la opcion al form\r\n if (opcion === 'no') \r\n {\r\n this.cambiosFormDatos.patchValue({\r\n implicaCambios: false,\r\n id_tipoIniciativa:3\r\n });\r\n } else if (opcion === 'si') {\r\n this.cambiosFormDatos.patchValue({\r\n implicaCambios: true,\r\n id_tipoIniciativa:2\r\n });\r\n }\r\n\r\n }\r\n\r\n //Método para abrir el componente del costeo\r\n abrirCosteo()\r\n{\r\n this.mostrarCosteo=true;\r\n //this.botonSiguiente.emit(true);\r\n //this.router.navigate(['./costeo'])\r\n }\r\n\r\n cancelar()\r\n {\r\n this.mostrarFormConsultar==false;\r\n //this.nuevoSisFormDatos.reset();\r\n this.router.navigate(['./mis-iniciativas'])\r\n }\r\n\r\n //Método para enviar iniciativa sin cambio al proceso\r\n enviarIniciativa(id_iniciativa:number, opcion:string, form:any)\r\n {\r\n this.dataService.enviarIniciativa(id_iniciativa,this.emailUser, this.idRolSeleccionado).subscribe( \r\n data => {\r\n if (data['objData'])\r\n {\r\n this.notifier.notify('success', 'Iniciativa enviada correctamente Folio:'+ data['objData']);\r\n this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n //this.notifier.notify('success', 'Nueva iniciativa para cambios en funcionalidades editada correctamente.');\r\n }\r\n else{\r\n this.validacionCondicional(opcion, form, this.emailUser, this.idRolSeleccionado, id_iniciativa);\r\n if(data['errorMessage']=='El dato id_iniciativa es obligatorio')\r\n {\r\n this.notifier.notify('error','Es necesario que guarde sus cambios para poder enviar la iniciativa');\r\n }else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n }\r\n );\r\n\r\n }\r\n\r\n\r\n onFileChange(event: any, nombreArchivo: string) \r\n {\r\n if (event.target.files && event.target.files.length) {\r\n const [file] = event.target.files;\r\n switch (nombreArchivo) \r\n {\r\n case 'procesoActual':\r\n if (this.opcionImplicaCambios === 'no') {\r\n this.labelProcesoActualNo.nativeElement.innerText = file.name;\r\n } else {\r\n this.labelProcesoActualSi.nativeElement.innerText = file.name;\r\n }\r\n\r\n let extensionActual;\r\n //this.subiendoProcesoActual = true;\r\n this.procesoActualError = false;\r\n this.archivoActual=file;\r\n //Si es documento\r\n if(file.type.indexOf(\"pdf\")!==-1)\r\n {\r\n extensionActual = file.type.split('/');\r\n if(extensionActual[1]===\"pdf\")\r\n {\r\n //this.subiendoProcesoActual = true;\r\n this.formArchivos.patchValue({\r\n doc_procesoActual: nombreArchivo+'.'+extensionActual[1]\r\n });\r\n }\r\n //Si no es PDF\r\n else{\r\n this.subiendoProcesoActual = false;\r\n this.labelProcesoActualSi.nativeElement.innerText = \"\";\r\n this.notifier.notify('error','Formato de archivo no permitido');\r\n }\r\n }\r\n //Si no es archivo\r\n else{\r\n this.subiendoProcesoActual=false;\r\n this.labelProcesoActualSi.nativeElement.innerText = \"\";\r\n this.notifier.notify('error','Formato de archivo no permitido');\r\n\r\n }\r\n break;\r\n\r\n case 'procesoPropuesto':\r\n let extensionPropuesto;\r\n this.labelProcesoPropuesto.nativeElement.innerText = file.name;\r\n //this.subiendoProcesoPropuesto = true;\r\n this.procesoPropuestoError = false;\r\n this.archivoPropuesto=file;\r\n //Si es documento\r\n if(file.type.indexOf(\"pdf\")!==-1)\r\n {\r\n extensionPropuesto= file.type.split('/');\r\n if(extensionPropuesto[1]===\"pdf\")\r\n {\r\n //this.subiendoProcesoPropuesto = true;\r\n \r\n this.formArchivos.patchValue({\r\n doc_procesoPropuesto: nombreArchivo+'.'+extensionPropuesto[1],\r\n });\r\n\r\n\r\n }\r\n //Si no es PDF\r\n else{\r\n this.subiendoProcesoPropuesto = false;\r\n this.labelProcesoPropuesto.nativeElement.innerText=\"\";\r\n this.notifier.notify('error','Formato de archivo no permitido');\r\n }\r\n\r\n }\r\n //Si no es archivo\r\n else{\r\n this.subiendoProcesoPropuesto=false;\r\n this.labelProcesoPropuesto.nativeElement.innerText=\"\";\r\n this.notifier.notify('error','Formato de archivo no permitido');\r\n\r\n }\r\n\r\n /* this.cambiosFormDatos.patchValue({\r\n doc_procesoPropuesto: nombreArchivo+'.'+extensionPropuesto[1],\r\n });*/\r\n \r\n break;\r\n case 'anexos':\r\n let extensionAnexo=[];\r\n this.labelOtrosArchivos.nativeElement.innerText = file.name;\r\n //this.subiendoOtrosArchivos = true;\r\n this.otrosArchivosError = false;\r\n this.archivoAnexo=file;\r\n //Si es archivo\r\n if(file.type)\r\n {\r\n extensionAnexo= file.type.split('/');\r\n switch (file.type)\r\n {\r\n case \"application/zip\":\r\n //this.subiendoOtrosArchivos=true;\r\n extensionAnexo[1]=\"zip\";\r\n break;\r\n case \"application/pdf\":\r\n //this.subiendoOtrosArchivos=true;\r\n break;\r\n case \"application/x-zip-compressed\":\r\n //this.subiendoOtrosArchivos=true;\r\n extensionAnexo[1]=\"zip\";\r\n break;\r\n case \"application/octet-stream\":\r\n //this.subiendoOtrosArchivos=true;\r\n extensionAnexo[1]=\"zip\";\r\n break;\r\n case \"application/x-rar-compressed\":\r\n //this.subiendoOtrosArchivos=true;\r\n extensionAnexo[1]=\"rar\";\r\n break;\r\n default:\r\n //this.subiendoOtrosArchivos=false;\r\n this.labelOtrosArchivos.nativeElement.innerText=\"\";\r\n this.notifier.notify('error','Formato de archivo no permitido');\r\n break;\r\n }\r\n\r\n /*\r\n let type=\"application/x- zip -compressed\";\r\n let an=type.split('/');\r\n console.log(\"an\", an);\r\n if(an[1].indexOf(\"zip\")===0)\r\n {\r\n console.log(\"entre al tipo de zip\");\r\n\r\n }\r\n\r\n\r\n extensionAnexo= file.type.split('/');\r\n console.log(extensionAnexo);\r\n //this.subiendoOtrosArchivos = true;\r\n if(extensionAnexo[1]===\"pdf\" || extensionAnexo[1].indexOf(\"zip\")===0) //&& extensionAnexo[1]!==\"zip\" && extensionAnexo[1].indexOf(\"zip\")==-1)\r\n {\r\n this.subiendoOtrosArchivos=true;\r\n if(extensionAnexo[1].indexOf(\"zip\")==0)\r\n {\r\n extensionAnexo[1]==\"zip\";\r\n }\r\n //this.subiendoOtrosArchivos=false;\r\n //this.labelOtrosArchivos.nativeElement.innerText=\"\";\r\n //this.notifier.notify('error','Formato de archivo no permitido');\r\n }\r\n /*Si es ZIP\r\n if(extensionAnexo[1].indexOf(\"zip\")==0)\r\n {\r\n this.subiendoOtrosArchivos=true;\r\n extensionAnexo[1]==\"zip\";\r\n }\r\n else{\r\n //this.subiendoOtrosArchivos=true;\r\n this.subiendoOtrosArchivos=false;\r\n this.labelOtrosArchivos.nativeElement.innerText=\"\";\r\n this.notifier.notify('error','Formato de archivo no permitido');\r\n }*/\r\n }\r\n\r\n else{\r\n //Si es carpeta\r\n extensionAnexo = file.name.split('.');\r\n if(extensionAnexo[extensionAnexo.length-1]===\"rar\")\r\n {\r\n //this.subiendoOtrosArchivos = true;\r\n }\r\n else{\r\n this.subiendoOtrosArchivos=false;\r\n this.labelOtrosArchivos.nativeElement.innerText=\"\";\r\n this.notifier.notify('error','Formato de archivo no permitido');\r\n }\r\n }\r\n this.formArchivos.patchValue({\r\n docAnexos_iniciativas: nombreArchivo+'.'+extensionAnexo[extensionAnexo.length-1],\r\n });\r\n //this.subiendoOtrosArchivos = true;\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n //Método para guardar los archivos en el repositorio\r\n subirArchivosRepositorios(nombreArchivo:string,id:number,)\r\n {\r\n switch (nombreArchivo) \r\n {\r\n case 'procesoActual':\r\n this.subiendoProcesoActual = false;\r\n this.procesoActualError = false;\r\n this.dataService.subirArchivos(this.archivoActual, nombreArchivo,parseInt(this.idIniciativa)).subscribe( \r\n (data: string) => {\r\n if (data['alert']==0) \r\n {\r\n //Modificamos el nombre del archivo\r\n let valores={\r\n id_iniciativa:this.idIniciativa,\r\n doc_procesoActual:data['objData']\r\n }\r\n this.dataService.updateArchivoProcesoActual(valores).subscribe(\r\n data =>{\r\n this.subiendoProcesoActual = true;\r\n this.archivoProcesoActualRequerido=false;\r\n }\r\n );\r\n }\r\n else{\r\n this.procesoActualError = true;\r\n }\r\n \r\n },\r\n error => {\r\n console.error(error);\r\n this.procesoActualError = true;\r\n this.procesoActualInput.nativeElement.value = '';\r\n this.subiendoProcesoActual = false;\r\n }\r\n );\r\n break;\r\n case 'procesoPropuesto':\r\n this.subiendoProcesoPropuesto = false;\r\n this.procesoPropuestoError = false;\r\n this.dataService.subirArchivos(this.archivoPropuesto, nombreArchivo,parseInt(this.idIniciativa)).subscribe(\r\n (data: string) => {\r\n if (data['alert']==0) \r\n {\r\n //Modificamos el nombre del archivo\r\n let valores={\r\n id_iniciativa:this.idIniciativa,\r\n doc_procesoPropuesto:data['objData']\r\n }\r\n this.dataService.updateArchivoProcesoPropuesto(valores).subscribe(\r\n data =>{\r\n this.subiendoProcesoPropuesto = true;\r\n this.archivoProcesoPropuesto=false;\r\n }\r\n );\r\n\r\n }\r\n else{\r\n this.procesoPropuestoError = true;\r\n } \r\n \r\n },\r\n error => {\r\n console.error(error);\r\n this.procesoPropuestoError = true;\r\n this.procesoPropuestoInput.nativeElement.value = '';\r\n this.subiendoProcesoPropuesto = false;\r\n }\r\n );\r\n break;\r\n case 'anexos':\r\n this.subiendoOtrosArchivos = false;\r\n this.otrosArchivosError = false;\r\n this.dataService.subirArchivos(this.archivoAnexo, nombreArchivo,parseInt(this.idIniciativa)).subscribe(\r\n (data: string) => {\r\n if (data['alert']==0) \r\n {\r\n let valores={\r\n id_iniciativa:this.idIniciativa,\r\n docAnexos_iniciativas:data['objData']\r\n }\r\n this.dataService.updateArchivoAnexos(valores).subscribe(\r\n data =>{\r\n this.subiendoOtrosArchivos = true;\r\n }\r\n );\r\n \r\n }\r\n else{\r\n this.otrosArchivosError = true;\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.otrosArchivosError = true;\r\n this.otrosArchivosInput.nativeElement.value = '';\r\n this.subiendoOtrosArchivos = false;\r\n }\r\n );\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n onSubmit() \r\n {\r\n //Asignamos la fecha actual\r\n this.cambiosFormDatos.patchValue({\r\n fechaEnvio_iniciativa:moment(this.fechaActual).format('YYYY-MM-DD'),\r\n id_estatusIniciativa:1,\r\n id_iniciativa: this.idIniciativa\r\n })\r\n\r\n this.dataService\r\n .cambiosFuncionalidades(this.cambiosFormDatos.value)\r\n .subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n //Asigno el id de iniciativa\r\n this.idIniciativa=data['objData']['id_iniciativa'];\r\n //Verificamos si se agregaron archivos\r\n if(this.formArchivos.controls['docAnexos_iniciativas'].value)\r\n {\r\n this.subirArchivosRepositorios(\"anexos\",parseInt(this.idIniciativa));\r\n }\r\n if(this.formArchivos.controls['doc_procesoPropuesto'].value){\r\n this.subirArchivosRepositorios(\"procesoPropuesto\",parseInt(this.idIniciativa));\r\n }\r\n if(this.formArchivos.controls['doc_procesoActual'].value){\r\n this.subirArchivosRepositorios(\"procesoActual\",parseInt(this.idIniciativa));\r\n }\r\n this.notifier.notify('success', 'Nueva iniciativa para cambios en funcionalidades registrada correctamente.');\r\n if(this.cambiosFormDatos.controls['implicaCambios'].value==true)\r\n {\r\n this.botonCosteo=true;\r\n }\r\n else{\r\n this.botonEnvio=true;\r\n this.id_iniciativa=data['objData']['id_iniciativa'];\r\n this.cambiosFormDatos.patchValue({\r\n id_iniciativa:this.idIniciativa\r\n })\r\n this.formProcesos.patchValue({\r\n id_iniciativa:this.idIniciativa\r\n })\r\n \r\n }\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar registrar la iniciativa. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n //Método para los combos de aplicaciones y areas\r\n onChangeGrupo(idGrupo: number) \r\n {\r\n this.idGrupoSeleccionado = idGrupo;\r\n this.dataService.obtenerAplicativos(idGrupo).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.tiposAplicativos = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n //Método para los combos de areas del solicitante\r\n onChangeArea(areaGral: string, id:number) \r\n {\r\n this.areaGralSeleccionada = areaGral;\r\n this.dataService.obtenerAreaSolicitante(parseInt(areaGral)).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.direccionesArea = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n //Método para recuperar la información de la iniciativa\r\n verDetallesIniciativa(id: number) \r\n {\r\n this.dataService.detalleIniciativa(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n this.idProceso=data['objData']['id_proceso'];\r\n //this.iniciativaSeleccionada = data['objData'];\r\n let infoiniciativa: Iniciativa = data['objData'];\r\n this.cambioTipo=infoiniciativa.id_tipoIniciativa;\r\n this.nameDirGral=data['objData']['nombre_dirgralSapSolicitante'];\r\n if(infoiniciativa.doc_procesoActual)\r\n {\r\n this.mostrardescargarArchivoPA=true;\r\n this.nombreArchivoPA=infoiniciativa.doc_procesoActual;\r\n }\r\n if(infoiniciativa.doc_procesoPropuesto)\r\n {\r\n this.mostrardescargarArchivoPP=true;\r\n this.nombreArchivoPP=infoiniciativa.doc_procesoPropuesto;\r\n }\r\n if(infoiniciativa.docAnexos_iniciativas)\r\n {\r\n this.mostrardescargarArchivoAN=true;\r\n this.nombreArchivoAN=infoiniciativa.docAnexos_iniciativas;\r\n\r\n }\r\n if(infoiniciativa.fechaTermino_iniciativa){\r\n this.fechaTermino=moment(infoiniciativa.fechaTermino_iniciativa).format('YYYY-MM-DD');\r\n }\r\n \r\n this.cambiosFormDatosEditar.patchValue({\r\n doc_procesoActual:infoiniciativa.doc_procesoActual,\r\n doc_procesoPropuesto:infoiniciativa.doc_procesoPropuesto,\r\n docAnexos_iniciativas:infoiniciativa.docAnexos_iniciativas,\r\n });\r\n\r\n\r\n this.cambiosFormDatos.patchValue({\r\n doc_procesoActual:infoiniciativa.doc_procesoActual,\r\n doc_procesoPropuesto:infoiniciativa.doc_procesoPropuesto,\r\n docAnexos_iniciativas:infoiniciativa.docAnexos_iniciativas,\r\n id_iniciativa:infoiniciativa.id_iniciativa,\r\n nombre_iniciativa:infoiniciativa.nombre_iniciativa,\r\n nombre_solicitante:infoiniciativa.nombre_solicitante,\r\n email_solicitante:infoiniciativa.email_solicitante,\r\n direccionArea_solicitante:infoiniciativa.direccionArea_solicitante,\r\n telefono_solicitante:infoiniciativa.telefono_solicitante,\r\n extencion_solicitante:infoiniciativa.extencion_solicitante,\r\n problematica_iniciativa:infoiniciativa.problematica_iniciativa,\r\n fechaTermino_iniciativa:this.fechaTermino,\r\n //fechaTermino_iniciativa:moment(infoiniciativa.fechaTermino_iniciativa).format('YYYY-MM-DD'),\r\n justificacionFecha_iniciativa:infoiniciativa.justificacionFecha_iniciativa,\r\n numeroTransacciones_iniciativa:infoiniciativa.numeroTransacciones_Iniciativa,\r\n solucionPropuesta_iniciativa:infoiniciativa.solucionPropuesta_iniciativa,\r\n beneficiariosDirectos_iniciativa:infoiniciativa.beneficiariosDirectos_iniciativa,\r\n beneficiariosImplementacion_iniciativa:infoiniciativa.beneficiariosImplementacion_iniciativa,\r\n id_proceso:infoiniciativa.id_proceso,\r\n id_area:infoiniciativa.id_area,\r\n id_aplicacion:infoiniciativa.id_aplicacion,\r\n id_tipoIniciativa:infoiniciativa.id_tipoIniciativa,\r\n id_estatusIniciativa:infoiniciativa.id_estatusIniciativa,\r\n userlogin:this.emailUser,\r\n fechaEnvio_iniciativa:infoiniciativa.fechaEnvio_iniciativa,\r\n nombreProceso_iniciativa:infoiniciativa.nombreProceso_iniciativa,\r\n dirGral_solicitante: infoiniciativa.dirGral_solicitante,\r\n id_dirgralSapSolicitante: infoiniciativa.id_dirgralSapSolicitante,\r\n id_areaSapSolicitante: infoiniciativa.id_areaSapSolicitante,\r\n });\r\n\r\n //Volvemos a cargar las aplicaciones \r\n if(infoiniciativa.id_area>0)\r\n {\r\n this.dataService.obtenerAplicativos(infoiniciativa.id_area).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.tiposAplicativos = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n //Volvemos a cargar las areas \r\n if(infoiniciativa.id_dirgralSapSolicitante)\r\n {\r\n this.dataService.obtenerAreaSolicitante(infoiniciativa.id_dirgralSapSolicitante).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.direccionesArea = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n if(this.cambiosFormDatos.controls['id_tipoIniciativa'].value==3)\r\n {\r\n this.labelNoCambio=true;\r\n this.cambioOpcion('no');\r\n }\r\n else{\r\n this.labelSiCambio=true;\r\n this.cambioOpcion('si');\r\n }\r\n\r\n /* if(this.cambiosFormDatos.controls['id_proceso'].value)\r\n {\r\n this.botonEnviar=true;\r\n //Obtenemos los datos del costeo\r\n this.verDetallesProceso(id,0);\r\n //this.verDetallesProceso(this.cambiosFormDatos.controls.id_proceso.value);\r\n //this.recargarTabla(this.cambiosFormDatos.controls.id_proceso.value);\r\n }*/\r\n //this.iniciativaSeleccionada.tipoIniciativa = tipoIniciativa;\r\n const tempImpactos = data['objData'].impactos;\r\n //this.iniciativaSeleccionada.impactos = [];\r\n if (tempImpactos) {\r\n tempImpactos.split('|').forEach((element: string) => {\r\n //this.iniciativaSeleccionada.impactos.push(this.formarImpacto(element));\r\n });\r\n }\r\n this.botonEnviar=true;\r\n //Obtenemos los datos del costeo\r\n this.verDetallesProceso(id,0);\r\n\r\n }\r\n });\r\n }\r\n\r\n //Método para recuperar los datos del costeo\r\n verDetallesProceso(id_iniciativa:number, id_proceso:number)\r\n {\r\n this.dataService.detalleProceso(id_iniciativa,id_proceso).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n let infoProceso: Proceso = data['objData']['proceso'];\r\n this.formProcesos.patchValue({\r\n id_proceso:infoProceso.id_proceso,\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso\r\n })\r\n }//Cierre del if\r\n\r\n this.tabla=data['objData']['listDetalleProcesos'];\r\n //Llenamos los procedimientos\r\n if(data['objData']['listDetalleProcesos'])\r\n {\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n\r\n }\r\n this.tabuladores=data['objData']['listIdProceso'];\r\n /*this.tabuladores.forEach((element, index) => {\r\n this.tabs.push(`Procedimiento ${this.tabs.length + 1}`);\r\n });*/\r\n //Generamos los tabuladores necesarios\r\n for(let numero of this.tabuladores)\r\n {\r\n this.tabs.push(`Procedimiento ${this.tabs.length + 1}`); \r\n }\r\n //Eliminamos el ultimo tap cuando la iniciativa trae procesos \r\n if(this.tabuladores.length!=0)\r\n {\r\n this.removeTab(this.tabs.length-1);\r\n }\r\n //Eliminamos el ultmo tap\r\n //this.removeTab(this.tabs.length-1);\r\n });\r\n}\r\n\r\n\r\n\r\n \r\n editarIniciativaCambio(form:any)\r\n {\r\n form.doc_procesoActual=this.cambiosFormDatosEditar.controls['doc_procesoActual'].value;\r\n form.doc_procesoPropuesto=this.cambiosFormDatosEditar.controls['doc_procesoPropuesto'].value;\r\n form.docAnexos_iniciativas=this.cambiosFormDatosEditar.controls['docAnexos_iniciativas'].value;\r\n form.userlogin=this.emailUser;\r\n //Asignamos la fecha actual\r\n this.cambiosFormDatos.patchValue({\r\n fechaEnvio_iniciativa:moment(this.fechaActual).format('YYYY-MM-DD'),\r\n //id_estatusIniciativa:1,\r\n id_iniciativa: this.idIniciativa,\r\n userlogin:this.emailUser,\r\n rolUserlogin:this.idRolSeleccionado\r\n })\r\n\r\n form.id_iniciativa=this.idIniciativa;\r\n form.userlogin=this.emailUser;\r\n form.rolUserlogin=this.idRolSeleccionado;\r\n\r\n if(this.opcionImplicaCambios=='no')\r\n {\r\n if(this.formArchivos.controls['docAnexos_iniciativas'].value)\r\n {\r\n form.docAnexos_iniciativas=this.formArchivos.controls['docAnexos_iniciativas'].value;\r\n }\r\n }\r\n else\r\n {\r\n if(this.formArchivos.controls['doc_procesoPropuesto'].value)\r\n {\r\n form.doc_procesoPropuesto=this.formArchivos.controls['doc_procesoPropuesto'].value;\r\n }\r\n if(this.formArchivos.controls['doc_procesoActual'].value)\r\n {\r\n form.doc_procesoActual=this.formArchivos.controls['doc_procesoActual'].value;\r\n }\r\n if(this.formArchivos.controls['docAnexos_iniciativas'].value)\r\n {\r\n form.docAnexos_iniciativas=this.formArchivos.controls['docAnexos_iniciativas'].value;\r\n }\r\n }\r\n\r\n this.dataService\r\n .editarNuevoSistema(form)\r\n .subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n //Asigno el id de iniciativa\r\n this.idIniciativa=data['objData']['id_iniciativa'];\r\n //Verificamos si se agregaron archivos\r\n if(this.opcionImplicaCambios=='no')\r\n {\r\n\r\n if(this.formArchivos.controls['docAnexos_iniciativas'].value)\r\n {\r\n this.subirArchivosRepositorios(\"anexos\",parseInt(this.idIniciativa));\r\n }\r\n }\r\n else{\r\n if(this.formArchivos.controls['docAnexos_iniciativas'].value)\r\n {\r\n this.subirArchivosRepositorios(\"anexos\",parseInt(this.idIniciativa));\r\n }\r\n if(this.formArchivos.controls['doc_procesoPropuesto'].value){\r\n this.subirArchivosRepositorios(\"procesoPropuesto\",parseInt(this.idIniciativa));\r\n }\r\n if(this.formArchivos.controls['doc_procesoActual'].value){\r\n this.subirArchivosRepositorios(\"procesoActual\",parseInt(this.idIniciativa));\r\n }\r\n }\r\n \r\n this.notifier.notify('success', 'Nueva iniciativa para cambios en funcionalidades editada correctamente.');\r\n if(this.cambiosFormDatos.controls['implicaCambios'].value==true && this.opcionImplicaCambios=='si')\r\n {\r\n this.formProcesos.patchValue({\r\n id_iniciativa:form.id_iniciativa,\r\n id_proceso:form.id_proceso\r\n })\r\n this.botonCosteo=true;\r\n }\r\n else{\r\n this.botonEnvio=true;\r\n //this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar registrar la iniciativa. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n //Método para agregar tabs\r\n addTab(selectAfterAdding: boolean) {\r\n this.tabs.push(`Procedimiento ${this.tabs.length + 1}`);\r\n let nuevoTab=this.tabs.length + 1;\r\n this.selectedTabs.setValue(nuevoTab);\r\n this.formProcesos.reset();\r\n \r\n }\r\n\r\n //Eliminar tabs\r\n removeTab(index: number) {\r\n this.tabs.splice(index, 1);\r\n }\r\n\r\n //Eliminar procesos del costeo\r\n deleteProcesos(index:number, tab:number)\r\n {\r\n this.tabs.splice(index, 1);\r\n this.tabuladores.forEach((element, index) => {\r\n if(tab==index)\r\n {\r\n //Eliminamos el proceso\r\n this.dataService.deleteProcesoCosteo(element).subscribe(\r\n data => {\r\n if (data['objData']) {\r\n this.notifier.notify(\r\n 'success',\r\n 'Proceso eliminado correctamente.'\r\n );\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar el proceso. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }//If de los tabuladores\r\n });\r\n //Eliminar el tabulador\r\n //this.tabuladores.splice(tab,1);\r\n this.tabuladores=[];\r\n this.tabla=[];\r\n this.tablaProcedimientosToBe=[];\r\n this.tablaProcedimientos=[];\r\n this.tabs=['Procedimiento'];\r\n this.verDetallesProceso(parseInt(this.idIniciativa),0);\r\n }\r\n\r\n \r\n //Metodo para navegar entre los tabuladores\r\n navegarTab(form:number)\r\n {\r\n this.tabSeleccionado=form;\r\n //Limpiamos la tabla de procedimientos/arrays\r\n this.formProcesos.reset();\r\n this.tabla=[];\r\n this.tablaProcedimientosToBe=[];\r\n this.tablaProcedimientos=[];\r\n this.tabuladores.forEach((element, index) => {\r\n if(form==index)\r\n {\r\n this.dataService.detalleProceso(parseInt(this.idIniciativa),element).subscribe(data => {\r\n if (data['objData']['proceso']) \r\n {\r\n let infoProceso: Proceso = data['objData']['proceso'];\r\n this.formProcesos.patchValue({\r\n id_proceso:infoProceso.id_proceso,\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso\r\n })\r\n }\r\n \r\n this.tabla=data['objData']['listDetalleProcesos'];\r\n //Llenamos los procedimientos\r\n if(data['objData']['listDetalleProcesos'])\r\n {\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n \r\n }\r\n \r\n });\r\n }\r\n \r\n });\r\n \r\n }\r\n\r\n\r\n\r\n private validacionCondicional(opcion: string, form:any, email:string, idRol:number,idIniciativa:number) \r\n {\r\n if (opcion === 'no') \r\n {\r\n this.cambiosFormDatos = this._formBuilder.group({\r\n id_iniciativa: [form.id_iniciativa],\r\n id_area : [form.id_area],\r\n id_aplicativo: [form.id_aplicativo],\r\n id_estatusIniciativa: [form.id_estatusIniciativa],\r\n id_aplicacion:[form.id_aplicacion],\r\n id_tipoIniciativa: [form.id_tipoIniciativa],\r\n nombre_iniciativa: [form.nombre_iniciativa, Validators.required],\r\n nombre_solicitante: [form.nombre_solicitante, Validators.required],\r\n email_solicitante: [form.email_solicitante, Validators.required],\r\n telefono_solicitante: [form.telefono_solicitante, Validators.required],\r\n extencion_solicitante: [form.extencion_solicitante, Validators.required],\r\n fechaTermino_iniciativa: [form.fechaTermino_iniciativa, Validators.required],\r\n justificacionFecha_iniciativa: [form.justificacionFecha_iniciativa, Validators.required],\r\n problematica_iniciativa: [form.problematica_iniciativa, Validators.required],\r\n id_dirgralSapSolicitante: [form.id_dirgralSapSolicitante, Validators.required],\r\n id_areaSapSolicitante: [form.id_areaSapSolicitante, Validators.required],\r\n docAnexos_iniciativas: [form.docAnexos_iniciativas, Validators.required],\r\n implicaCambios: [form.implicaCambios],\r\n doc_procesoActual: [form.doc_procesoActual],\r\n doc_procesoPropuesto: [form.doc_procesoPropuesto],\r\n userlogin: [email],\r\n rolUserlogin:[idRol]\r\n })\r\n } else if (opcion === 'si') \r\n {\r\n this.cambiosFormDatos = this._formBuilder.group({\r\n id_iniciativa: [form.id_iniciativa],\r\n id_proceso: [form.id_proceso],\r\n //folio_iniciativa:[form.id_proceso],\r\n fechaEnvio_iniciativa:[form.fechaEnvio_iniciativa],\r\n id_tipoIniciativa: [form.id_tipoIniciativa],\r\n id_area : [form.id_area],\r\n id_aplicativo: [form.id_aplicativo],\r\n id_aplicacion:[form.id_aplicacion],\r\n id_estatusIniciativa: [form.id_estatusIniciativa],\r\n implicaCambios: [form.implicaCambios],\r\n userlogin: [email],\r\n rolUserlogin:[idRol],\r\n id_dirgralSapSolicitante: [form.id_dirgralSapSolicitante, Validators.required],\r\n id_areaSapSolicitante: [form.id_areaSapSolicitante, Validators.required],\r\n nombre_iniciativa: [form.nombre_iniciativa, Validators.required],\r\n nombre_solicitante: [form.nombre_solicitante, Validators.required],\r\n email_solicitante: [form.email_solicitante, Validators.required],\r\n telefono_solicitante: [form.telefono_solicitante, Validators.required],\r\n extencion_solicitante: [form.extencion_solicitante],\r\n fechaTermino_iniciativa: [form.fechaTermino_iniciativa, Validators.required],\r\n justificacionFecha_iniciativa: [form.justificacionFecha_iniciativa, Validators.required],\r\n numeroTransacciones_iniciativa: [form.numeroTransacciones_iniciativa, Validators.required], \r\n solucionPropuesta_iniciativa: [form.solucionPropuesta_iniciativa, Validators.required],\r\n nombreProceso_iniciativa: [form.nombreProceso_iniciativa, Validators.required],\r\n doc_procesoActual: [form.doc_procesoActual, Validators.required],\r\n doc_procesoPropuesto: [form.doc_procesoPropuesto, Validators.required],\r\n docAnexos_iniciativas: [form.docAnexos_iniciativas, Validators.required],\r\n problematica_iniciativa: [form.problematica_iniciativa, Validators.required],\r\n dirGral_solicitante:[form.dirGral_solicitante, Validators.required],\r\n direccionArea_solicitante: [form.direccionArea_solicitante, Validators.required]\r\n })\r\n\r\n //Si esta agregando iniciativa verificar el formArchivos this.opcion\r\n //Editando\r\n if(!this.formArchivos.controls['doc_procesoActual'].value)\r\n {\r\n this.archivoProcesoActualRequerido = true;\r\n }\r\n if(!this.formArchivos.controls['doc_procesoPropuesto'].value)\r\n {\r\n this.archivoProcesoPropuesto = true;\r\n } \r\n\r\n\r\n /* if(idIniciativa && parseInt(this.opcion)==1)\r\n {\r\n console.log(\"entre al if\");\r\n if(!form.doc_procesoActual)\r\n {\r\n this.archivoProcesoActualRequerido = true;\r\n }\r\n if(!form.doc_procesoPropuesto)\r\n {\r\n this.archivoProcesoPropuesto = true;\r\n }\r\n\r\n }\r\n else{\r\n console.log(\"no entre al if\");\r\n\r\n //Esta agregando\r\n if(!this.formArchivos.controls['doc_procesoActual'].value)\r\n {\r\n this.archivoProcesoActualRequerido = true;\r\n }\r\n if(!this.formArchivos.controls['doc_procesoPropuesto'].value)\r\n {\r\n this.archivoProcesoPropuesto = true;\r\n } \r\n }*/\r\n }\r\n\r\n }\r\n\r\n limpiarCampoImpacto(impacto: number) {\r\n switch (impacto) {\r\n case 1:\r\n this.cambiosFormDatos.get('impactos.contribucionProgGobierno').reset();\r\n break;\r\n case 2:\r\n this.cambiosFormDatos.get('impactos.contribucionProgOperativo').reset();\r\n break;\r\n case 3:\r\n this.cambiosFormDatos.get('impactos.impactoProcesos').reset();\r\n break;\r\n case 4:\r\n this.cambiosFormDatos.get('impactos.mejoraServicio').reset();\r\n break;\r\n case 5:\r\n this.cambiosFormDatos.get('impactos.cumplimientoLey').reset();\r\n break;\r\n case 6:\r\n this.cambiosFormDatos.get('impactos.contribucionModernizacion').reset();\r\n break;\r\n }\r\n }\r\n\r\n \r\n //Método para descargar archivos\r\n descargarArchivo(archivo:string)\r\n {\r\n this.dataService.descargarArchivo(parseInt(this.idIniciativa),archivo).subscribe(res => {\r\n // Este es necesario para crear un objeto blob con el tipo de archivo\r\n // puesto explicitamente, de lo contrario solo Chrome funcionara correctamente\r\n let newBlob = new Blob([res], { type: this.obtenerTipoArchivo(archivo) });\r\n // IE no permite objetos blob directamente en el atributo href de un link\r\n // en su lugar hay que usar msSaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = archivo;\r\n // Esta linea es necesaria desde que link.click() ya no funciona en las ultimas versiones de firefox\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n\r\n });\r\n\r\n }\r\n\r\n\r\n //Abrir modal para agregar los procedimientos del proceso ASIS\r\n abrirModalCosteoConsulta()\r\n { \r\n const dialogRef = this.dialog.open(ModalCosteoConsultaComponent,{data:{id_iniciativa:this.idIniciativa,id_proceso:this.idProceso},disableClose:false, height: '580px',\r\n width: '800px'});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n \r\n private obtenerTipoArchivo(archivo: string): string {\r\n let tipoArchivo: string;\r\n let extencion: string = archivo.split('.').pop();\r\n\r\n switch (extencion) {\r\n case 'pdf':\r\n tipoArchivo = 'application/pdf';\r\n break;\r\n case 'xls':\r\n tipoArchivo = 'application/vnd.ms-excel';\r\n break;\r\n case 'xlsx':\r\n tipoArchivo = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';\r\n break;\r\n case 'csv':\r\n tipoArchivo = 'application/csv';\r\n break;\r\n case 'zip':\r\n tipoArchivo = 'application/zip';\r\n break;\r\n case 'rar':\r\n tipoArchivo = 'application/x-rar-compressed';\r\n break;\r\n\r\n default:\r\n tipoArchivo = 'text/plain';\r\n break;\r\n }\r\n return tipoArchivo;\r\n }\r\n\r\nguardarCosteo(form:any)\r\n{\r\n //Mapeamos el id de la iniciativa\r\n form.id_iniciativa=this.idIniciativa;\r\n //Agregamos los valores de la lista de procedimientosToBe a la lista de procedimientos\r\n if(this.tablaProcedimientosToBe.length >= 1)\r\n {\r\n for(let numero of this.tablaProcedimientosToBe)\r\n {\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n this.dataService.insertarUpdateProceso(this.formProcesos.value,this.tablaProcedimientos).subscribe(res=>{\r\n if (res['errorMessage']) \r\n {\r\n this.notifier.notify('error',\r\n 'Ha ocurrido un error al intentar guardar el costeo. Revisa tu conexión de red en inténtalo de nuevo más tarde.');\r\n } \r\n else{\r\n //Mapeamos el proceso\r\n this.idProceso=res['objData']['proceso']['id_proceso'];\r\n this.notifier.notify('success', 'Costeo de iniciativa registrado correctamente.');\r\n this.tabuladores=res['objData']['listIdProceso'];\r\n //Recargamos el tab modificado\r\n this.navegarTab(this.tabSeleccionado);\r\n this.botonEnviar=true;\r\n //this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n });\r\n \r\n}\r\n\r\n //Abrir modal para agregar los procedimientos del proceso ASIS\r\n abrirModalProcedimientoAsIs()\r\n { \r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{titulo:`Procedimiento Actual (As-Is)`},disableClose:true, height: '580px',\r\n width: '800px'});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.formProcesos.controls.id_proceso.value;\r\n data['tipoProceso_procesoDetalle']=0;\r\n this.tablaProcedimientos.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n\r\n //Abrir modal para agregar los procedimientos del proceso ASIS\r\n abrirModalProcedimientoToBe()\r\n { \r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{titulo:`Procedimiento Propuesto (To-Be)`},disableClose:true, height: '580px',\r\n width: '800px'});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.formProcesos.controls.id_proceso.value;\r\n data['tipoProceso_procesoDetalle']=1;\r\n this.tablaProcedimientosToBe.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n//Método para editar el modal del proceso AsIs\r\neditarProcedimientoAsIs(id:number)\r\n{\r\n //Convertimos el valor de la tabla en una cadena JSON y la enviamos al modal\r\n let cadena=JSON.stringify(this.tablaProcedimientos[id]);\r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{data:`${cadena}`, titulo:`Procedimiento Actual (As-Is)`},disableClose:true, height: '580px',\r\n width: '800px'},);\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n this.tablaProcedimientos[id]=data;\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.formProcesos.controls.id_proceso.value;\r\n data['tipoProceso_procesoDetalle']=0;\r\n //this.tablaProcedimientos.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n\r\n//Método para editar el modal del proceso AsIs\r\neditarProcedimientoToBe(id:number)\r\n{\r\n //Convertimos el valor de la tabla en una cadena JSON y la enviamos al modal\r\n let cadena=JSON.stringify(this.tablaProcedimientosToBe[id]);\r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{data:`${cadena}`, titulo:`Procedimiento Propuesto (To-Be)`},disableClose:true, height: '580px',\r\n width: '800px'},);\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n this.tablaProcedimientosToBe[id]=data;\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.formProcesos.controls.id_proceso.value;\r\n data['tipoProceso_procesoDetalle']=1;\r\n //this.tablaProcedimientos.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n //Eliminar los registros del proceso\r\n eliminarProcedimientoAsIs(id:number)\r\n {\r\n this.tablaProcedimientos.splice(id,1);\r\n }\r\n\r\n eliminarProcedimientoToBe(id:number)\r\n {\r\n this.tablaProcedimientosToBe.splice(id,1);\r\n }\r\n\r\n //Método para abrir el cuadro de confirmación al eliminar un registro\r\nopenDialogConfirmaAsIs(id:number)\r\n{\r\n let dialogRef = this.dialog.open(ConfirmComponent,{data: `¿Desea eliminar el registro?`,disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n //Eliminamos el registro de la tabla\r\n this.eliminarProcedimientoAsIs(id);\r\n }\r\n });\r\n}\r\n\r\n\r\n//Método para abrir el cuadro de confirmación al eliminar un registro\r\nopenDialogConfirmaToBe(id:number)\r\n{\r\n let dialogRef = this.dialog.open(ConfirmComponent,{data: `¿Desea eliminar el registro?`,disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n //Eliminamos el registro de la tabla\r\n this.eliminarProcedimientoToBe(id);\r\n }\r\n });\r\n}\r\n\r\ndescargarArchivoEjemplo()\r\n{\r\n this.dataService.descargarArchivoCosteo().subscribe(res => {\r\n // Este es necesario para crear un objeto blob con el tipo de archivo\r\n // puesto explicitamente, de lo contrario solo Chrome funcionara correctamente\r\n let newBlob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n // IE no permite objetos blob directamente en el atributo href de un link\r\n // en su lugar hay que usar msSaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = \"ejemploCosteo\";\r\n //link.download = archivo.substring(36);\r\n // Esta linea es necesaria desde que link.click() ya no funciona en las ultimas versiones de firefox\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n });\r\n}\r\n\r\n\r\nonFileChangeCosteo(event: any, nombreArchivo: string) \r\n{\r\n this.loadingGeneral=true;\r\n if (event.target.files && event.target.files.length) \r\n {\r\n const [file] = event.target.files;\r\n this.dataService.subirArchivoCosteo(file,parseInt(this.idIniciativa),0).subscribe( \r\n (data: string) => {\r\n if (data['objData']['proceso']) \r\n {\r\n let infoProceso:Proceso=data['objData']['proceso']\r\n this.formProcesos.patchValue({\r\n // id_proceso:infoProceso.id_proceso,\r\n id_proceso:data['objData']['listIdProceso'][0],\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso\r\n })\r\n \r\n //this.tabuladores=data['objData']['listIdProceso'];\r\n //Si ya tengo procesos guardados, agrego los nuevos\r\n if(this.tabuladores.length > 0)\r\n {\r\n this.valorTaps=this.tabs.length;\r\n for(let t of data['objData']['listIdProceso'])\r\n {\r\n this.tabuladores.push(t);\r\n \r\n if(data['objData']['listDetalleProcesos'] && data['objData']['listDetalleProcesos']['id_proceso']==t)\r\n {\r\n //Agregamos en la lista los procedimientos\r\n this.tabla= data['objData']['listDetalleProcesos'];\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n else{\r\n this.tabuladores=data['objData']['listIdProceso'];\r\n \r\n if(data['objData']['listDetalleProcesos'])\r\n {\r\n //Agregamos en la lista los procedimientos\r\n this.tabla= data['objData']['listDetalleProcesos'];\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n }\r\n }//Cierre del if de la lista\r\n\r\n for(let numero of this.tabuladores)\r\n {\r\n this.tabs.push(`Procedimiento ${this.tabs.length + 1}`); \r\n }\r\n if(this.valorTaps!=0)\r\n {\r\n this.tabs.splice(this.tabs.length-this.valorTaps, this.valorTaps);\r\n\r\n }\r\n else{\r\n //Eliminamos el ultmo tap\r\n this.removeTab(this.tabs.length-1);\r\n }\r\n\r\n //this.idProceso=data['objData']['proceso']['id_proceso'];\r\n this.loadingGeneral=false;\r\n //Se manda mensaje de guardado\r\n this.notifier.notify('success', 'Costeo de iniciativa registrado correctamente.');\r\n\r\n }\r\n else{\r\n let mensaje=data['errorMessage'];\r\n this.notifier.notify('error',mensaje);\r\n }\r\n },\r\n error => {\r\n console.error(error); \r\n });\r\n \r\n }//cierre del if\r\n\r\n}\r\n}\r\n","export default \"\\r\\n
\\r\\n
\\r\\n

Agregar usuario

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
La cuenta es requerida
\\r\\n
La cuenta no cumple con el formato de email valido. Ejempo:\\r\\n usuario@dependencia.gob.mx
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
La cuenta es requerida
\\r\\n
La cuenta no cumple con el formato de email valido. Ejempo:\\r\\n usuario@dependencia.gob.mx
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n El usuario debe desempeñar al menos un rol\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
El nombre de usuario es requerido
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
El puesto de usuario es requerido
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
La dependencia a la que pertenece el usuario es requerida
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n La Subsecretaria a la que pertenece el usuario es requerida\\r\\n
\\r\\n\\r\\n
\\r\\n
0 \\\">\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
La Dirección Gral. a la que pertenece el usuario es requerida
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
La Dirección Gral. a la que pertenece el usuario es requerida
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
'0' \\\">\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
La Dirección de área a la que pertenece el usuario es requerida
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
La jefatura a la que pertenece el usuario es requerida
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Los campos marcados con * son obligatorios\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Subsecretaria\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Subsecretaria {{element.nombre_subsecretariaSap}} Acciones\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Dirección general\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Dirección general {{element.nombre_dirgralSap}} Acciones\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Dirección de área\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Dirección de área {{element.nombre_areaSap}} Acciones\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Subsecretaria-Dirección General\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Subsecretaría\\r\\n \\r\\n \\r\\n {{sub.nombre_subsecretariaSap}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n Dirección Gral.\\r\\n \\r\\n \\r\\n {{dir.nombre_dirgralSap}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Dirección General {{element.nombre_dirgralSap}} Acciones\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Dirección General-Dirección de área\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Dirección General\\r\\n \\r\\n \\r\\n {{sub.nombre_dirgralSap}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n Dirección de área\\r\\n \\r\\n \\r\\n {{dir.nombre_areaSap}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Dirección de área {{element.nombre_areaSap}} Acciones\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","import { Component, EventEmitter, Input, OnInit, Output,NgZone, ChangeDetectorRef } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { Estatus, IniciativaDetalle, TablaMisIniciativas, UsuarioAutorizado, PriorizacionArea } from '../../../interfaces/interfaces';\r\nimport { PaginadoAdiminstrador, PaginadoLider, Paginado } from '../../../models/paginado';\r\nimport { DataService } from '../../../services/data.service';\r\nimport { AuthService } from '../../../services/auth.service';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport{ ConfirmListadoTablaIniciativasComponent} from 'src/app/components/shared/confirm-listado-tabla-iniciativas/confirm-listado-tabla-iniciativas.component';\r\nimport { Router } from '@angular/router';\r\nimport { ConfirmacionComponent } from '../../confirmacion/confirmacion.component';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ConfirmDialogComponent } from '../../confirmacion/confirm.component';\r\n\r\n\r\n//Interface para el filtro de subsecretaria \r\nexport interface EstructuraSub {\r\n nombre_subsecretariaSap: string;\r\n id_subsecretariaSap:number;\r\n estatus_subsecretariaSap:boolean;\r\n}\r\n\r\n\r\n//Interface para el filtro de tipo de iniciativa \r\nexport interface TipoIniciativa {\r\n id_tipoIniciativa: number;\r\n nombre_tipoIniciativa:string;\r\n estatus_tipoIniciativa:boolean;\r\n}\r\n\r\n\r\n//Interface para el filtro de aplicaciones\r\nexport interface Aplicaciones{\r\n id_aplicacion: number;\r\n nombre_aplicacion:string;\r\n estatus_aplicacion:boolean;\r\n id_area:number;\r\n}\r\n\r\n//Interface para el filtro de enlaces\r\nexport interface Enlaces{\r\n id_usuario: number;\r\n nombre_usuario:string;\r\n email_usuario:string;\r\n id_rol:number;\r\n nombre_rol:string;\r\n}\r\n\r\n\r\n//Interface para el filtro de lideres\r\nexport interface Lideres{\r\n id_usuario: number;\r\n nombre_usuario:string;\r\n email_usuario:string;\r\n id_rol:number;\r\n}\r\n\r\n//Interface para el filtro de Gestor de Cambios\r\nexport interface GestorCambios{\r\n email_usuario:string;\r\n id_rol:number;\r\n idGestorCambios : number;\r\n}\r\n\r\n//Interface para el filtro de Analista de TI\r\nexport interface AnalistaTI{\r\n email_usuario:string;\r\n id_rol:number;\r\n idAnalistaTI : number;\r\n}\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-tabla-iniciativas',\r\n templateUrl: './tabla-iniciativas.component.html',\r\n styleUrls: ['./tabla-iniciativas.component.scss']\r\n})\r\nexport class TablaIniciativasComponent implements OnInit {\r\n [x: string]: any;\r\n // Loading\r\n loadingFiltro: boolean = true;\r\n loadingGeneral: boolean = true;\r\n // Animacion tabla\r\n pulseAnimacion: string;\r\n // Cuenta usuario\r\n @Input() emailUser: string;\r\n @Input() modoLider: boolean;\r\n @Input() modoAdmin: boolean;\r\n @Output() enviarIniciativaModal: EventEmitter;\r\n tablaIniciativas: TablaMisIniciativas[] = [];\r\n tablaArea:PriorizacionArea[]=[];\r\n filtrado = false;\r\n paginaActual: PaginadoAdiminstrador;\r\n paginaActualFiltros: PaginadoAdiminstrador;\r\n paginaActualLider: PaginadoLider;\r\n iniciativaSeleccionada: IniciativaDetalle;\r\n // Forms para busqueda y validacion\r\n formBuscarFecha: FormGroup;\r\n formBuscarFolio: FormGroup;\r\n formBuscarUsuario: FormGroup;\r\n formBuscarEstatus: FormGroup;\r\n formGestoresCambio: FormGroup;\r\n formAnalistaTi: FormGroup;\r\n // Usuarios para busqueda\r\n usuariosBusqueda: UsuarioAutorizado[];\r\n // Estatus para busqueda\r\n estatusBusqueda: Estatus;\r\n // Estatus para inavilitar botons 'Anteriores'\r\n botonAnteriores: boolean = false;\r\n priorizar:boolean=false;\r\n botonPresionado:number;\r\n userName: string;\r\n idRolSeleccionado:number;\r\n fechaInicio:string;\r\n fechaFin:string;\r\n consultar: boolean;\r\n termino:string;\r\n totalRegistros:number;\r\n folio:string;\r\n colorDescriptionButton: string = 'warn'; // Valor inicial del color\r\n loadingCambioRol:boolean=false;\r\n varMostraCalendario2021:boolean=false;\r\n\r\n\r\n paginaActualPaginado: Paginado;\r\n accion: string; // Nueva variable para almacenar la acción\r\n\r\n\r\n //Usuarios especiales\r\n jefeAreaDIDS:boolean=false;\r\n directorDIDS:boolean=false;\r\n directorDGTIT:boolean=false;\r\n isLoading:boolean=false;\r\n\r\n //Listado de subsecretaria\r\n listaSubsecretaria:EstructuraSub[]=[];\r\n listaTipoIniciativa:TipoIniciativa[]=[];\r\n listaAplicaciones:Aplicaciones[]=[];\r\n listaEnlaces:Enlaces[]=[];\r\n listaLideres:Lideres[]=[];\r\n listaUR:any[]=[];\r\n listaEstatus:any[]=[];\r\n selectedEstatus: number[];\r\n listFiltroEstatus: any[]=[];\r\n listaGestoresCambio: GestorCambios[]=[]; //listaGestoresCambio como un array en tu componente.\r\n listaAnalistaTI: AnalistaTI[]=[]; //Lista de Analista de TI como un array en el componente.\r\n \r\n\r\n //Variables para filtrado\r\n selectedValueSub: number;\r\n selectedValueLider: number;\r\n selectedValueEnlace: number;\r\n selectedValueTipo:number;\r\n selectedValueAplic:number;\r\n selectedGestorCambio: number;\r\n selectedAnalistaTI: number | null = null;\r\n filter:string;\r\n list:boolean=false;\r\n listEstatus:boolean=false;\r\n fechaInicioF:boolean=false;\r\n fechaEnvio:string;\r\n ur:number;\r\n\r\n constructor(\r\n private zone: NgZone,\r\n private router: Router,\r\n private dataService: DataService,\r\n private notifier: NotifierService,\r\n public dialog:MatDialog,\r\n private authService: AuthService,\r\n private http: HttpClient,\r\n private cdr: ChangeDetectorRef) {\r\n this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n //return this.emailUser;\r\n });\r\n this.authService.userName.subscribe((userName: string) => {\r\n {this.userName = userName}\r\n //return this.emailUser;\r\n });\r\n this.enviarIniciativaModal = new EventEmitter();\r\n \r\n }\r\n\r\n ngOnInit() {\r\n this.cargarSubsecretarias();\r\n this.cargarTipoIniciativas();\r\n this.cargarAplicaciones();\r\n this.cargarEnlaces();\r\n this.cargarLideres();\r\n this.cargarUR();\r\n this.cargarEstatus();\r\n this.cargarGestoresCambio();\r\n this.cargarAnalistaTI();\r\n\r\n this.isLoading=true;\r\n this.authService.escuchaRolSeleccionado().subscribe((res) => {\r\n this.idRolSeleccionado = res;\r\n \r\n if(this.emailUser && this.idRolSeleccionado!=13 && this.idRolSeleccionado!=1 && this.idRolSeleccionado!=2)\r\n {\r\n this.isLoading=true;\r\n this.paginaActualPaginado = new Paginado();\r\n this.paginaActualPaginado.numeroPagina = 1;\r\n this.paginaActualPaginado.email=this.emailUser;\r\n this.paginaActualPaginado.fechaInicio=\"\";\r\n this.paginaActualPaginado.fechaFin=\"\";\r\n this.paginaActualPaginado.termino=\"\";\r\n this.paginaActualPaginado.rolUserlogin=this.idRolSeleccionado;\r\n this.quitarFiltro();\r\n }\r\n });\r\n\r\n this.formBuscarFecha = new FormGroup({\r\n fechaInicial: new FormControl(''),\r\n fechaFinal: new FormControl('')\r\n });\r\n this.formBuscarFolio = new FormGroup({\r\n folio: new FormControl('', [Validators.required, Validators.min(1)])\r\n });\r\n this.formBuscarUsuario = new FormGroup({\r\n idUsuario: new FormControl('', [Validators.required])\r\n });\r\n this.formBuscarEstatus = new FormGroup({\r\n idEstatus: new FormControl('', [Validators.required])\r\n });\r\n this.formGestoresCambio = new FormGroup({\r\n idGestorCambio: new FormControl('', [Validators.required])\r\n });\r\n this.formAnalistaTI = new FormGroup({\r\n idAnalistaTI: new FormControl('', [Validators.required])\r\n });\r\n\r\n\r\n this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n \r\n this.paginaActualPaginado = new Paginado();\r\n this.paginaActualPaginado.botonBuscar=false;\r\n this.paginaActualPaginado.numeroPagina = 1;\r\n this.paginaActualPaginado.email=this.emailUser;\r\n this.paginaActualPaginado.fechaInicio=\"\";\r\n this.paginaActualPaginado.fechaFin=\"\";\r\n this.paginaActualPaginado.termino=\"\";\r\n this.paginaActualPaginado.rolUserlogin=this.idRolSeleccionado;\r\n if(this.emailUser)\r\n {\r\n //Recuperamos el paginado\r\n let paginadoLocal= JSON.parse(localStorage.getItem('paginado'));\r\n \r\n if(paginadoLocal)\r\n {\r\n this.paginaActualPaginado=paginadoLocal;\r\n this.selectedValueTipo=this.paginaActualPaginado.idTipoSolicitud;\r\n this.selectedValueAplic=this.paginaActualPaginado.idAplicacion;\r\n //this.selectedValueEnlace=this.paginaActualPaginado.idEnlace;\r\n //this.selectedValueLider=this.paginaActualPaginado.idLider;\r\n this.selectedValueSub=this.paginaActualPaginado.idSubsecretariaSap;\r\n this.fechaInicio=this.paginaActualPaginado.fechaInicio;\r\n this.fechaFin=this.paginaActualPaginado.fechaFin;\r\n this.folio=this.paginaActualPaginado.folio_iniciativa;\r\n this.filter=this.paginaActualPaginado.termino;\r\n this.selectedGestorCambio=this.paginaActualPaginado.idGestorCambios;\r\n //this.selectedGestorCambio=this.paginaActualPaginado.idAnalistaTI;\r\n this.paginaActualPaginado.idAnalistaTI = this.selectedAnalistaTI ? +this.selectedAnalistaTI : null;\r\n this.paginaActualPaginado.botonBuscar=true;\r\n }\r\n if(this.paginaActualPaginado.idLider)\r\n {\r\n //Recuperamos las opciones del lider\r\n let paginadoLider= JSON.parse(localStorage.getItem('lider'));\r\n this.selectedValueLider=paginadoLider;\r\n }\r\n if(this.paginaActualPaginado.idEnlace)\r\n {\r\n //Recuperamos las opciones del enlace\r\n let paginadoEnlace= JSON.parse(localStorage.getItem('enlace'));\r\n this.selectedValueEnlace=paginadoEnlace;\r\n }\r\n\r\n this.cargarIniciativas();\r\n this.usuariosEspeciales(this.idRolSeleccionado);\r\n }\r\n });\r\n \r\n }\r\n\r\n atenciopRapidaAction(){\r\n\r\n }\r\n\r\n changeStatus(accion, obj) {\r\n if(this.idRolSeleccionado==12 || this.idRolSeleccionado==8)\r\n {\r\n this.botonPresionado=null;\r\n }\r\n else{\r\n this.botonPresionado=11;\r\n obj.action = accion;\r\n const dialogRefEliminar = this.dialog.open(ConfirmacionComponent, {\r\n width: '420px',\r\n height: '240px',\r\n data: obj\r\n }).afterClosed().subscribe(result => {\r\n this.botonPresionado=null;\r\n if (result == true) {\r\n this.modificarAtencionRapida(obj);\r\n }\r\n });\r\n }\r\n }\r\n\r\n modificarAtencionRapida(obj){\r\n let data={\r\n \"id_iniciativa\":obj.id_iniciativa,\r\n \"userLogin\":this.emailUser,\r\n \"rolUserlogin\":this.idRolSeleccionado,\r\n \"Rapida_atencion\":(obj.rapida_atencion==0)?1:0\r\n }\r\n this.dataService.cambiarAtencion(data).subscribe(res=>{\r\n this.notifier.notify(\r\n 'success',\r\n 'Se modifico el tipo de atención correctamente.'\r\n );\r\n this.cargarIniciativas();\r\n },err=>{\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Contacta al administrador.'\r\n );\r\n });\r\n }\r\n\r\n/*********************************************************************************************/\r\nchangeStatuss(accion, obj) {\r\n this.accion = accion; // Almacena la acción en una variable de clase\r\n\r\n if (this.idRolSeleccionado == 12 || this.idRolSeleccionado == 8) {\r\n this.botonPresionado = null;\r\n } else {\r\n this.botonPresionado = 11;\r\n obj.action = accion;\r\n \r\n const dialogRef = this.dialog.open(ConfirmDialogComponent, {\r\n width: '420px',\r\n height: '240px',\r\n data: obj\r\n }).afterClosed().subscribe(result => {\r\n this.botonPresionado = null;\r\n\r\n if (result === true) {\r\n this.modificarNormativa(obj);\r\n\r\n // Cambiar el color del botón basado en la acción seleccionada\r\n if (accion === 'Cambiar a atención normativo') {\r\n this.colorDescriptionButton = 'warn'; // Cambia a rojo\r\n } else {\r\n this.colorDescriptionButton = 'primary'; // Cambia al color original o deseado\r\n }\r\n\r\n this.cdr.detectChanges(); // Forzar detección de cambios\r\n }\r\n });\r\n }\r\n}\r\n/*********************************************************************************************/\r\n\r\n// Método para modificar Normativas\r\nmodificarNormativa(obj) {\r\n let dataa = {\r\n \"id_iniciativa\": obj.id_iniciativa,\r\n \"userLogin\": this.emailUser,\r\n \"rolUserlogin\": this.idRolSeleccionado,\r\n \"Atencion_normativa\": (obj.atencion_normativa == 0) ? 1 : 0\r\n };\r\n\r\n this.dataService.cambiarNormativa(dataa).subscribe(\r\n res => {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se modificó el tema normativo correctamente.'\r\n );\r\n this.cargarIniciativas(); // Recargar las iniciativas para reflejar el cambio\r\n },\r\n err => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n}\r\n\r\n/*********************************************************************************************/\r\n\r\n openConfirmEvaluacionTecnica(accion, obj){\r\n this.botonPresionado=12;\r\n obj.action = accion;\r\n const dialogRefEliminar = this.dialog.open(ConfirmacionComponent, {\r\n width: '420px',\r\n height: '240px',\r\n data: obj\r\n }).afterClosed().subscribe(result => {\r\n this.botonPresionado=null;\r\n if (result == true) {\r\n this.onEvaluacionTecnica(obj);\r\n }\r\n });\r\n }\r\n\r\n onEvaluacionTecnica(obj){\r\n let body={\r\n \"id_iniciativa\":obj['id_iniciativa'],\r\n \"userLogin\":this.emailUser,\r\n \"rolUserlogin\":this.idRolSeleccionado,\r\n \"Evaluacion_Tecnica\":(obj['evaluacion_tecnica']==0)?1:0,\r\n }\r\n this.dataService.evaluacionTecnica(body).subscribe(resp=>{\r\n if(resp[\"status\"]=\"OK\"){\r\n this.notifier.notify(\r\n 'success',\r\n ''+resp['notificaciones']\r\n );\r\n this.cargarIniciativas();\r\n }else{\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Contacta al administrador.'\r\n );\r\n }\r\n },err=>{\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Contacta al administrador.'\r\n );\r\n });\r\n }\r\n \r\n \r\n openDesing(accion, obj){\r\n this.botonPresionado=13;\r\n obj.action = accion;\r\n const dialogRefEliminar = this.dialog.open(ConfirmacionComponent, {\r\n width: '520px',\r\n height: '240px',\r\n data: obj\r\n }).afterClosed().subscribe(result => {\r\n this.botonPresionado=null;\r\n if (result == true) {\r\n this.onOpenDesing(obj);\r\n \r\n }\r\n });\r\n }\r\n\r\n onOpenDesing(obj){\r\n let body={\r\n \"id_iniciativa\":obj['id_iniciativa'],\r\n \"userLogin\":this.emailUser,\r\n \"rolUserlogin\":this.idRolSeleccionado,\r\n \"Diseno_Finalizado\":(obj['diseno_finalizado']==0)?1:0,\r\n }\r\n this.dataService.disenoFinalizada(body).subscribe(resp=>{\r\n if(resp[\"status\"]=\"OK\"){\r\n this.notifier.notify(\r\n 'success',\r\n ''+resp['notificaciones']\r\n );\r\n this.cargarIniciativas();\r\n }else{\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Contacta al administrador.'\r\n );\r\n }\r\n },err=>{\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Contacta al administrador.'\r\n );\r\n });\r\n }\r\n\r\n compareEnlace(o1: any, o2: any) {\r\n if(o1.id_usuario == o2.id_usuario && o1.id_rol == o2.id_rol )\r\n return true;\r\n else return false\r\n }\r\n\r\n compareLider(o1: any, o2: any) {\r\n if(o1.id_usuario == o2.id_usuario && o1.id_rol == o2.id_rol )\r\n return true;\r\n else return false\r\n }\r\n\r\n\r\n get ffc() {\r\n return this.formBuscarFecha.controls;\r\n }\r\n get ffoc() {\r\n return this.formBuscarFolio.controls;\r\n }\r\n get fuc() {\r\n return this.formBuscarUsuario.controls;\r\n }\r\n get fec() {\r\n return this.formBuscarEstatus.controls;\r\n }\r\n get fgc() {\r\n return this.formGestoresCambio.controls;\r\n }\r\n get fgcc() {\r\n return this.formAnalistaTI.controls;\r\n }\r\n\r\n mostrarList(bandera:boolean)\r\n {\r\n this.list=bandera;\r\n }\r\n mostrarListEstatus(bandera:boolean)\r\n {\r\n this.listEstatus=bandera;\r\n }\r\n mostrarFecha(bandera:boolean){\r\n this.fechaInicioF=bandera;\r\n }\r\n \r\n //Método para cargar las subsecretarias\r\n cargarSubsecretarias()\r\n {\r\n this.dataService.getListSubsecretarias().subscribe(\r\n data => {\r\n this.listaSubsecretaria = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n \r\n //Método para cargar las tipos de iniciativas\r\n cargarTipoIniciativas()\r\n {\r\n this.dataService.getListTipoIniciativas().subscribe(\r\n data => {\r\n this.listaTipoIniciativa = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n \r\n //Método para cargar las aplicaciones\r\n cargarAplicaciones()\r\n {\r\n \r\n this.dataService.getListAplicaciones().subscribe(\r\n data => {\r\n this.listaAplicaciones = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n\r\n \r\n //Método para cargar los enlaces\r\n cargarEnlaces()\r\n {\r\n \r\n this.dataService.getListEnlaces().subscribe(\r\n data => {\r\n this.listaEnlaces = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n \r\n //Método para cargar los lideres\r\n cargarLideres()\r\n {\r\n this.dataService.getListLideres().subscribe(\r\n data => {\r\n this.listaLideres = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Método para cargar los lideres\r\n cargarUR()\r\n {\r\n this.dataService.getListDireccionesGral().subscribe(\r\n data => {\r\n this.listaUR = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Metodo para carga estatus\r\n cargarEstatus()\r\n {\r\n this.dataService.getListCambioEstatus().subscribe(\r\n data => {\r\n this.listaEstatus = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n/*******************************************************************************************************/\r\n //Esto lo que hará es llamar al endpoint, obtener la lista de gestores de cambio, \r\n //y poblar tu con los nombres e IDs de los gestores.\r\n //Así cuando el usuario seleccione un Gestor de cambio se mandará ese \r\n //valor en la función buscarIniciativas.\r\n cargarGestoresCambio() {\r\n this.dataService.getListGestorCambios().subscribe(\r\n (data: any) => {\r\n if (data && data['data'] && data['data'].length > 0) {\r\n this.listaGestoresCambio = data['data'];\r\n } else {\r\n console.error(\"Sin información para realizar petición\");\r\n // Notificación de error o mensaje de advertencia\r\n }\r\n },\r\n (error) => {\r\n console.error(\"Error al cargar los gestores de cambios\", error);\r\n // Manejo de la notificación de error\r\n }\r\n );\r\n } \r\n/*******************************************************************************************************/\r\n//Esto lo que hará es llamar al endpoint, obtener la lista de gestores de cambio, \r\n //y poblar tu con los nombres e IDs de los gestores.\r\n //Así cuando el usuario seleccione un Gestor de cambio se mandará ese \r\n //valor en la función buscarIniciativas.\r\n cargarAnalistaTI() {\r\n this.dataService.getListAnalistasTI().subscribe(\r\n (data: any) => {\r\n if (data && data['data'] && data['data'].length > 0) {\r\n this.listaAnalistaTI = data['data'];\r\n } else {\r\n console.error(\"Sin información para realizar petición\");\r\n // Notificación de error o mensaje de advertencia\r\n }\r\n },\r\n (error) => {\r\n console.error(\"Error al cargar los gestores de cambios\", error);\r\n // Manejo de la notificación de error\r\n }\r\n );\r\n } \r\n/*******************************************************************************************************/ \r\n //Método para filtrar por la columna estatus\r\n filtroColumna()\r\n {\r\n if(this.ur)\r\n {\r\n this.paginaActualPaginado.id_dirgralSap=this.ur[0];\r\n }\r\n //Lista filtro estatus\r\n if(this.listFiltroEstatus.length > 0)\r\n {\r\n this.listFiltroEstatus.splice(0);\r\n }\r\n\r\n if(this.selectedEstatus)\r\n {\r\n this.selectedEstatus.forEach((element)=>{\r\n let filtroEstatus={\r\n 'id_estatusIniciativa':element,\r\n }\r\n this.listFiltroEstatus.push(filtroEstatus);\r\n });\r\n this.paginaActualPaginado.listEstatus=this.listFiltroEstatus;\r\n }\r\n if(this.fechaEnvio)\r\n {\r\n this.paginaActualPaginado.fechaEnvio_iniciativa=this.fechaEnvio;\r\n }\r\n this.cargarIniciativas();\r\n\r\n }\r\n\r\n //Método para cancelar el filtro de las columnas\r\n cancelarFiltroColumna(filtro:number)\r\n {\r\n if(filtro==1)\r\n {\r\n this.ur=null;\r\n this.paginaActualPaginado.id_dirgralSap=this.ur;\r\n }\r\n if(filtro==3){\r\n this.selectedEstatus=null;\r\n this.paginaActualPaginado.listEstatus=this.selectedEstatus;\r\n }\r\n if(filtro==2){\r\n this.fechaEnvio=null;\r\n this.paginaActualPaginado.fechaEnvio_iniciativa=this.fechaEnvio;\r\n }\r\n if(filtro==4){\r\n this.selectedGestorCambio=null;\r\n this.paginaActualPaginado.idGestorCambios=this.selectedGestorCambio;\r\n }\r\n this.cargarIniciativas();\r\n\r\n if(filtro==5){\r\n this.selectedAnalistaTI=null;\r\n this.paginaActualPaginado.idAnalistaTI=this.selectedAnalistaTI;\r\n }\r\n this.cargarIniciativas();\r\n }\r\n\r\n\r\n //Método para redirigir a la pantalla según el boton presionado \r\n onSubmitReactive(btnId:number, id_iniciativa:number, folio:number,tipoIniciativa?:number,solicitudCancelacion?:number,idGestorCambios?:number, idAnalistaTI?:number)\r\n {\r\n this.botonPresionado=btnId;\r\n //window.localStorage.removeItem (\"opcionTabla\");\r\n //window.localStorage.setItem (\"opcionTabla\", btnId.toString());\r\n //Opcion de equipo de trabajo iniciativa\r\n if(this.botonPresionado==1)\r\n {\r\n this.equipoTrabajoIniciativa(id_iniciativa, folio);\r\n }\r\n\r\n \r\n //Opcion de equipo de trabajo iniciativa\r\n if(this.botonPresionado==3)\r\n {\r\n this.historialIniciativa(id_iniciativa, folio);\r\n }\r\n\r\n //Opcion de cambio de estatus\r\n if(this.botonPresionado==4)\r\n {\r\n //this.openBottomSheet();\r\n this.cambioEstatusIniciativa(id_iniciativa, folio, tipoIniciativa, solicitudCancelacion);\r\n }\r\n\r\n \r\n //Opcion de cambio de solicitud envio fuera de periodo\r\n if(this.botonPresionado==5)\r\n {\r\n //this.openBottomSheet();\r\n this.solicitudEnvioPeriodo(id_iniciativa, folio, tipoIniciativa,solicitudCancelacion);\r\n }\r\n\r\n //Opcion de comentarios iniciativa\r\n if(this.botonPresionado==10)\r\n {\r\n this.comentariosIniciativa(id_iniciativa, folio);\r\n }\r\n }\r\n\r\n /*Metodo para mostra la lista de estatus\r\n openBottomSheet(): void {\r\n this._bottomSheet.open(CambioEstatus);\r\n }*/\r\n\r\n //Método para los contactos de la iniciativa\r\n comentariosIniciativa(id:number, folio:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,{data:{id_iniciativa:id,folio:folio,userName:this.userName,email:this.emailUser,idRol:this.idRolSeleccionado,opcion:10,usuarioVip:this.directorDIDS},disableClose:true,width: '900%'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.loadingGeneral=true;\r\n //Marcamos como vistos los comentarios\r\n let valores={\r\n 'id_iniciativa':id,\r\n 'email_usuarioComentario':this.emailUser,\r\n 'id_rol':this.idRolSeleccionado\r\n }\r\n this.dataService.marcarVistoComentarios(valores).subscribe(\r\n data => {\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n this.loadingGeneral=false;\r\n this.cargarIniciativas();\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n //Marcamos como vistos los comentarios\r\n let valores={\r\n 'id_iniciativa':id,\r\n 'email_usuarioComentario':this.emailUser,\r\n 'id_rol':this.idRolSeleccionado\r\n }\r\n this.dataService.marcarVistoComentarios(valores).subscribe(\r\n data => {\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n\r\n this.cargarAnteriores();\r\n this.botonPresionado=0;\r\n \r\n }\r\n });\r\n }\r\n\r\n \r\n mostrarCalendario2021()\r\n {\r\n this.varMostraCalendario2021=true; \r\n }\r\n\r\n\r\n //Verificamos si es Jefe de Área DIDS\r\n esJefeArea()\r\n {\r\n this.dataService.obtenerInfoUsuario(this.paginaActualPaginado.email).subscribe(\r\n data => {\r\n if (data['objData']['jefeAreaDIDS']==true) \r\n {\r\n //Es jefe de area DIDS\r\n this.jefeAreaDIDS=true;\r\n }\r\n else{\r\n //No es jefe de area DIDS\r\n this.jefeAreaDIDS=false;\r\n }\r\n }\r\n );\r\n }\r\n\r\n\r\n //Metodo para ordenar por director de area\r\n sortingDirArea()\r\n {\r\n this.paginaActualPaginado.orderByGeneral=false;\r\n this.paginaActualPaginado.orderBySubse=true;\r\n this.paginaActualPaginado.orderByArea=true;\r\n this.cargarIniciativas();\r\n\r\n }\r\n\r\n //Metodo para ordenar por director de area\r\n sortingDirGral()\r\n {\r\n this.paginaActualPaginado.orderBySubse=false;\r\n this.paginaActualPaginado.orderByArea=false;\r\n this.paginaActualPaginado.orderByGeneral=true;\r\n this.cargarIniciativas();\r\n }\r\n\r\n //Metodo para ordenar por director de area\r\n sortingSubsecretario()\r\n {\r\n this.paginaActualPaginado.orderBySubse=true;\r\n this.paginaActualPaginado.orderByArea=false;\r\n this.paginaActualPaginado.orderByGeneral=false;\r\n this.cargarIniciativas();\r\n }\r\n\r\n \r\n //Verificamos si director de DIDS\r\n esDirectorDIDS()\r\n {\r\n this.dataService.obtenerInfoUsuario(this.paginaActualPaginado.email).subscribe(\r\n data => {\r\n if (data['objData']['directorDIDS']==true) \r\n {\r\n //Es director de DIDS\r\n this.directorDIDS=true;\r\n }\r\n else{\r\n //No es director de DIDS\r\n this.directorDIDS=false;\r\n }\r\n }\r\n );\r\n }\r\n\r\n\r\n \r\n //Verificamos si es director gral. de DGTIT\r\n esDirectorDGTIT()\r\n {\r\n this.dataService.obtenerInfoUsuario(this.paginaActualPaginado.email).subscribe(\r\n data => {\r\n if (data['objData']['directorDGTIT']==true) \r\n {\r\n //Es DIRECTOR GRAL. DGTIT\r\n this.directorDGTIT=true;\r\n }\r\n else{\r\n //Es DIRECTOR GRAL. DGTIT\r\n this.directorDGTIT=false;\r\n }\r\n }\r\n );\r\n }\r\n\r\n usuariosEspeciales(id_rol:number)\r\n {\r\n this.jefeAreaDIDS=false;\r\n this.directorDGTIT=false;\r\n this.directorDIDS=false;\r\n //Jefe de area\r\n if(id_rol==12)\r\n {\r\n this.esJefeArea();\r\n }\r\n //Director DGTITI\r\n if(id_rol==10)\r\n {\r\n this.esDirectorDGTIT();\r\n }\r\n\r\n //Director DIDS\r\n if(id_rol==9)\r\n {\r\n this.esDirectorDIDS();\r\n }\r\n }\r\n\r\n\r\n //Metodo de cambio de estatus iniciativa\r\n cambioEstatusIniciativa(id_iniciativa:number, folio:number, tipoIniciativa:number,solicitudCancelacion?:number)\r\n {\r\n //Verificamos si tiene solicitud de cancelacion\r\n if(solicitudCancelacion && (this.idRolSeleccionado==3 || this.idRolSeleccionado==4 ||this.idRolSeleccionado==5))\r\n {\r\n \r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,\r\n {data:{id_iniciativa:id_iniciativa,opcion:4,folio:folio,tipoIniciativa:tipoIniciativa,email:this.emailUser,\r\n rol:this.idRolSeleccionado,solicitudCancelacion:solicitudCancelacion},disableClose:true, width: '600px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n //Si autoriza, mostramos otro modal\r\n if(result==true)\r\n {\r\n\r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,\r\n {data:{id_iniciativa:id_iniciativa,opcion:5,folio:folio,tipoIniciativa:tipoIniciativa,email:this.emailUser,\r\n rol:this.idRolSeleccionado,solicitudCancelacion:solicitudCancelacion},disableClose:true, width: '600px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==true)\r\n {\r\n\r\n this.botonPresionado=0;\r\n this.cargarIniciativas();\r\n \r\n }\r\n else{\r\n this.botonPresionado=0;\r\n\r\n }\r\n });\r\n\r\n }\r\n //Si rechazo\r\n else{\r\n if(result==false)\r\n {\r\n \r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,\r\n {data:{id_iniciativa:id_iniciativa,opcion:6,folio:folio,tipoIniciativa:tipoIniciativa,email:this.emailUser,\r\n rol:this.idRolSeleccionado,solicitudCancelacion:solicitudCancelacion},disableClose:true, width: '600px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==true)\r\n {\r\n this.botonPresionado=0;\r\n this.cargarIniciativas();\r\n }\r\n else{\r\n this.botonPresionado=0;\r\n }\r\n });\r\n\r\n }//cerrar el if\r\n else{\r\n this.botonPresionado=0;\r\n\r\n }\r\n \r\n }//cerrar el else\r\n });\r\n\r\n }//Si no tiene solicitud de cancelacion\r\n else\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,\r\n {data:{id_iniciativa:id_iniciativa,opcion:4,folio:folio,tipoIniciativa:tipoIniciativa,email:this.emailUser,\r\n rol:this.idRolSeleccionado,solicitudCancelacion:solicitudCancelacion},disableClose:true, width: '600px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n\r\n }\r\n else{\r\n this.botonPresionado=0;\r\n this.cargarIniciativas();\r\n }\r\n });\r\n }\r\n\r\n}//cierre de método\r\n\r\n\r\n\r\n\r\n //Metodo de solicitud de envio fuera de periodo de iniciativa\r\n solicitudEnvioPeriodo(id_iniciativa:number, folio:number, tipoIniciativa:number,solicitudEnvio?:number)\r\n {\r\n //Verificamos si tiene solicitud de cancelacion\r\n if(solicitudEnvio && this.idRolSeleccionado==3)\r\n { \r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,\r\n {data:{id_iniciativa:id_iniciativa,opcion:7,folio:folio,email:this.emailUser,\r\n rol:this.idRolSeleccionado,solicitudEnvio:solicitudEnvio},disableClose:true, width: '600px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n //Si autoriza\r\n if(result==true)\r\n {\r\n this.botonPresionado=0;\r\n this.cargarIniciativas();\r\n }\r\n //Si rechazo,mostramos otro modal\r\n else{\r\n\r\n if(result==\"close\")\r\n {\r\n this.botonPresionado=0;\r\n\r\n }\r\n else{\r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,\r\n {data:{id_iniciativa:id_iniciativa,opcion:8,folio:folio,email:this.emailUser,\r\n rol:this.idRolSeleccionado,solicitudEnvio:solicitudEnvio},disableClose:true, width: '600px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==true)\r\n {\r\n this.botonPresionado=0;\r\n this.cargarIniciativas();\r\n }\r\n else{\r\n this.botonPresionado=0;\r\n }\r\n });\r\n }\r\n }\r\n });\r\n }\r\n\r\n}//cierre de método\r\n \r\n //Metodo de historial de iniciativa\r\n historialIniciativa(id_iniciativa:number, folio:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,{data:{id_iniciativa:id_iniciativa,opcion:3,folio:folio},disableClose:true, width: '1200px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.botonPresionado=0;\r\n }\r\n });\r\n\r\n }\r\n \r\n //Método para los contactos de la iniciativa\r\n equipoTrabajoIniciativa(id:number, folio:number)\r\n {\r\n //Si el Gestor de Análisis y Diseño o Gestor de Cambios y Jefe de Área DIDS\r\n if(this.idRolSeleccionado==3||this.idRolSeleccionado==4 || this.idRolSeleccionado==5 || (this.idRolSeleccionado==12 && this.jefeAreaDIDS==true))\r\n {\r\n this.zone.run(() => this.router.navigate(['./equipo-trabajo']));\r\n }\r\n else\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,{data:{id_iniciativa:id,folio:folio,userName:this.userName,email:this.emailUser,opcion:1},disableClose:true,width: '800px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.cargarAnteriores();\r\n this.botonPresionado=0;\r\n \r\n }\r\n });\r\n\r\n }\r\n}//cierre clase\r\n\r\n\r\n verDetallesIniciativa(id: number, tipoIniciativa: string) \r\n {\r\n this.dataService.detalleIniciativa(id).subscribe(\r\n data => {\r\n this.iniciativaSeleccionada = data['objData'];\r\n this.iniciativaSeleccionada.tipoIniciativa = tipoIniciativa;\r\n this.iniciativaSeleccionada.folio=this.folio;\r\n const tempImpactos = data['objData'].impactos;\r\n this.iniciativaSeleccionada.impactos = [];\r\n this.iniciativaSeleccionada.estatusId=data['objData'].estatusId;\r\n if (tempImpactos) {\r\n tempImpactos.split('|').forEach((element: string) => {\r\n this.iniciativaSeleccionada.impactos.push(this.formarImpacto(element));\r\n });\r\n }\r\n\r\n this.enviarIniciativaModal.emit(this.iniciativaSeleccionada);\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Error al intentar obtener la información de la iniciativa. Verifica tu conexión de red.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n formarImpacto(impacto: string): { nombreImpacto: string; detalleImpacto: string } {\r\n const listImpacto: string[] = impacto.trim().split('%');\r\n return {\r\n nombreImpacto: listImpacto[0],\r\n detalleImpacto: listImpacto[1]\r\n };\r\n }\r\n \r\n cargarIniciativas() \r\n {\r\n this.loadingGeneral = true;\r\n /*if((this.paginaActualPaginado.termino=='' || !this.paginaActualPaginado.termino) \r\n && (this.paginaActualPaginado.fechaInicio=='' || !this.paginaActualPaginado.fechaInicio)\r\n && (this.paginaActualPaginado.fechaFin=='' || !this.paginaActualPaginado.fechaFin))\r\n {\r\n this.paginaActualPaginado.botonBuscar=false;\r\n }else{\r\n this.paginaActualPaginado.botonBuscar=true;\r\n }*/\r\n this.dataService.obtenerIniciativasUsuario(this.paginaActualPaginado).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.notifier.notify('error', 'No se han podido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.')\r\n }\r\n else{\r\n this.tablaIniciativas = data['data'];\r\n this.totalRegistros=data['total_registros'];\r\n if(data['data'].length < 1)\r\n {\r\n this.loadingGeneral = false;\r\n this.isLoading=false;\r\n }else{\r\n this.loadingGeneral = false;\r\n this.isLoading=false;\r\n\r\n }\r\n\r\n }\r\n }\r\n );\r\n }\r\n\r\n cargarAnteriores() \r\n {\r\n this.loadingGeneral = true;\r\n this.paginaActualPaginado.numeroPagina--;\r\n this.paginaActualPaginado.email=this.emailUser;\r\n this.dataService.obtenerIniciativasUsuario(this.paginaActualPaginado).subscribe(res => {\r\n if (res['alert']==1) \r\n {\r\n this.notifier.notify('error', 'No se han podido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.');\r\n } else {\r\n this.tablaIniciativas = res['data'];\r\n //this.paginaActual.numeroPagina--;\r\n }\r\n this.loadingGeneral = false;\r\n });\r\n }\r\n\r\n cargarSiguientes() \r\n {\r\n this.loadingGeneral = true;\r\n this.loadingGeneral = true;\r\n this.paginaActualPaginado.numeroPagina++;\r\n this.paginaActualPaginado.email=this.emailUser;\r\n this.dataService.obtenerIniciativasUsuario(this.paginaActualPaginado).subscribe(res => {\r\n if (res['alert']==1) \r\n {\r\n this.notifier.notify('error', 'No se han podido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.');\r\n } else {\r\n \r\n this.tablaIniciativas = res['data'];\r\n //this.paginaActual.numeroPagina--;\r\n }\r\n this.loadingGeneral = false;\r\n });\r\n\r\n\r\n }\r\n\r\n recargarTabla(recarga: number) {\r\n this.loadingGeneral = true;\r\n\r\n this.dataService.obtenerTodasIniciativas(this.filtrado ? this.paginaActualFiltros : this.paginaActual).subscribe(\r\n res => {\r\n this.tablaIniciativas = res['data'];\r\n this.loadingGeneral = false;\r\n\r\n if (res['errorMessage']) {\r\n this.notifier.notify('error', 'No se han podido cargar tus iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.')\r\n } else {\r\n this.animarTablaRecargar();\r\n }\r\n }\r\n );\r\n }\r\n\r\n //Método para limpiar los filtros\r\n quitarFiltro() {\r\n localStorage.removeItem('paginado');\r\n localStorage.removeItem('enlace');\r\n localStorage.removeItem('lider');\r\n\r\n this.fechaEnvio=\"\";\r\n this.selectedValueSub=null;\r\n this.selectedValueEnlace=null;\r\n this.selectedValueAplic=null;\r\n this.selectedValueLider=null;\r\n this.selectedValueTipo=null;\r\n this.selectedGestorCambio=null;\r\n this.ur=null;\r\n this.filter='';\r\n this.ur=null;\r\n this.fechaEnvio=null;\r\n this.selectedEstatus=null;\r\n this.selectedAnalistaTI=null;\r\n let termino;\r\n if(this.paginaActualPaginado.termino)\r\n {\r\n termino= this.paginaActualPaginado.termino;\r\n }\r\n this.paginaActualPaginado= new Paginado;\r\n\r\n this.fechaFin=\"\";\r\n this.fechaInicio=\"\";\r\n this.folio=\"\";\r\n this.paginaActualPaginado.numeroPagina = 1;\r\n this.paginaActualPaginado.email=this.emailUser;\r\n this.paginaActualPaginado.fechaInicio=\"\";\r\n this.paginaActualPaginado.fechaFin=\"\";\r\n this.paginaActualPaginado.botonBuscar=false;\r\n //this.paginaActualPaginado.termino=\"\";\r\n this.paginaActualPaginado.rolUserlogin=this.idRolSeleccionado;\r\n \r\n this.cargarIniciativas();\r\n this.usuariosEspeciales(this.idRolSeleccionado);\r\n }\r\n\r\n //Metodo para actualizar el grid\r\n actualizarGrid()\r\n {\r\n this.paginaActualPaginado.numeroPagina = 1;\r\n this.cargarIniciativas();\r\n }\r\n\r\n\r\n private animarTablaRecargar() {\r\n this.pulseAnimacion = '';\r\n this.pulseAnimacion = 'animated pulse';\r\n }\r\n\r\n //Método para aplicar el filtro \r\n applyFilter(event: Event) \r\n {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.paginaActualPaginado.numeroPagina=1;\r\n if(filterValue=='')\r\n {\r\n this.paginaActualPaginado.termino='';\r\n this.actualizarGrid();\r\n }else{\r\n this.buscarIniciativas(this.paginaActualPaginado.numeroPagina,this.fechaInicio,this.fechaFin,filterValue.trim().toLocaleLowerCase());\r\n }\r\n }\r\n\r\n \r\n detalleIniciativaModal(id:number, id_tipoIniciativa:number)\r\n {\r\n this.consultar=true;\r\n localStorage.removeItem (\"editarIniciativaId\");\r\n localStorage.setItem (\"editarIniciativaId\", id.toString());\r\n if(!this.botonPresionado)\r\n {\r\n this.zone.run(() => this.router.navigate(['./consulta-iniciativa']));\r\n }\r\n \r\n }\r\n \r\n buscarIniciativas(pagina: number, fechaInicio: string, fechaFin: string, valor?: string, folio?: string) {\r\n this.loadingGeneral = true;\r\n this.paginaActualPaginado.numeroPagina = pagina;\r\n this.paginaActualPaginado.termino = valor;\r\n this.paginaActualPaginado.fechaFin = this.fechaFin;\r\n this.paginaActualPaginado.fechaInicio = this.fechaInicio;\r\n \r\n // Nuevos filtros\r\n this.paginaActualPaginado.idSubsecretariaSap = this.selectedValueSub;\r\n this.paginaActualPaginado.idTipoSolicitud = this.selectedValueTipo;\r\n this.paginaActualPaginado.idGestorCambios = this.selectedGestorCambio;\r\n this.paginaActualPaginado.idAnalistaTI = this.selectedAnalistaTI ? +this.selectedAnalistaTI : null; // Ajuste aquí\r\n \r\n // Enlace\r\n if (this.selectedValueEnlace) {\r\n this.paginaActualPaginado.idEnlace = this.selectedValueEnlace['id_usuario'];\r\n this.paginaActualPaginado.idRol_enlace = this.selectedValueEnlace['id_rol'];\r\n window.localStorage.setItem(\"enlace\", JSON.stringify(this.selectedValueEnlace));\r\n }\r\n \r\n // Líder\r\n if (this.selectedValueLider) {\r\n this.paginaActualPaginado.idLider = this.selectedValueLider['id_usuario'];\r\n this.paginaActualPaginado.idRol_lider = this.selectedValueLider['id_rol'];\r\n window.localStorage.setItem(\"lider\", JSON.stringify(this.selectedValueLider));\r\n }\r\n \r\n this.paginaActualPaginado.idAplicacion = this.selectedValueAplic;\r\n this.paginaActualPaginado.termino = this.filter;\r\n this.paginaActualPaginado.botonBuscar = true;\r\n \r\n if (this.folio) {\r\n this.paginaActualPaginado.folio_iniciativa = this.folio;\r\n }\r\n \r\n // Paginado\r\n window.localStorage.setItem(\"paginado\", JSON.stringify(this.paginaActualPaginado));\r\n \r\n this.dataService.obtenerIniciativasUsuario(this.paginaActualPaginado).subscribe(res => {\r\n this.loadingGeneral = false;\r\n if (res['alert'] == 1) {\r\n this.notifier.notify('error', 'No se han podido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.');\r\n } else {\r\n this.totalRegistros = res['total_registros'];\r\n this.tablaIniciativas = res['data'];\r\n }\r\n });\r\n }\r\n \r\n//Método para descargar archivo excel\r\ndescargarArchivoExcelIniciativas()\r\n{\r\n this.dataService.descargarArchivoIniciativas(this.paginaActualPaginado).subscribe(res => {\r\n let newBlob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = \"Iniciativas_registradas\";\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n });\r\n\r\n}\r\n \r\n}\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { AuthService } from '../../../services/auth.service';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { Roles } from 'src/app/interfaces/interfaces';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { of } from 'rxjs';\r\n\r\n\r\n@Component({\r\n selector: 'app-navbar',\r\n templateUrl: './navbar.component.html',\r\n styleUrls: ['./navbar.component.scss']\r\n})\r\nexport class NavbarComponent implements OnInit {\r\n\r\n emailUser: string;\r\n nombreUser: string;\r\n clasesUser: string;\r\n isAdmin: boolean;\r\n rolesUsuario: number[] = [0];\r\n seleccionRol:number;\r\n nombreRol:string;\r\n mostrarMenu:boolean=false;\r\n rolesCatalogo: { id_rol: number; nombre_rol: string; }[];\r\n roles: Roles[]=[];\r\n seleccionado=2;\r\n\r\n constructor(private authService: AuthService,private dataService: DataService) {\r\n //this.rolesCatalogoMe();\r\n }\r\n\r\n ngOnInit() {\r\n // Observar los cambios y obtener los estados del usuario\r\n this.authService.user.subscribe(email => this.emailUser = email);\r\n this.authService.userName.subscribe(nombre => this.nombreUser = nombre);\r\n this.authService.escuchaRolesUser().subscribe((res) => {this.roles = res;});\r\n //Rol seleccionado \r\n this.authService.nombreRol$.subscribe(rolId => {\r\n if(rolId!=0){\r\n this.seleccionRol = rolId;\r\n this.mostrarMenu=true;\r\n this.rolesCatalogoMe();\r\n }\r\n else{\r\n this.seleccionRol = 0;\r\n this.mostrarMenu=false;\r\n this.roles=[];\r\n }\r\n },\r\n );\r\n\r\n if(this.seleccionRol)\r\n {\r\n this.mostrarMenu=true;\r\n this.rolesCatalogoMe();\r\n //this.nombreRoles(this.seleccionRol);\r\n }\r\n \r\n this.authService.isAdmin.subscribe(admin => this.isAdmin = admin);\r\n // Verificar si el usuario esta logeado pero no ha pasado por el proceso de autenticacion\r\n if (this.emailUser !== '') {\r\n this.authService.logOut();\r\n }\r\n // Administrar las calses del lugar donde se mostrará el usuario\r\n if (this.emailUser !== '') {\r\n this.clasesUser = 'col-9 p-1 pl-md-3 p-md-2 text-white';\r\n } else {\r\n this.clasesUser = 'col-9 p-2 p-md-4 text-white';\r\n }\r\n } \r\n\r\n isInRole(rol: number): boolean {\r\n return this.authService.isInRole(rol);\r\n }\r\n\r\n logOut() {\r\n //this.nombreRolSubscrition.unsubscribe();\r\n this.mostrarMenu=false;\r\n this.nombreRol=\"\";\r\n this.seleccionRol=0;\r\n this.roles=[];\r\n this.authService.logOut();\r\n }\r\n\r\n \r\n\r\n //Método para cargar los roles activos de BD\r\n rolesCatalogoMe()\r\n {\r\n this.dataService.obtenerTiposUsuariosv2().subscribe(\r\n data => {\r\n if(data['alert']==0 && data['data'].length > 0)\r\n {\r\n this.rolesCatalogo = data['data'];\r\n this.nombreRoles(this.seleccionRol);\r\n }\r\n \r\n },\r\n error => {\r\n //console.error(error); \r\n }\r\n );\r\n \r\n }\r\n\r\n //Metodo para obtener el nombre del rol\r\n nombreRoles(rol) \r\n { \r\n if(this.rolesCatalogo.length > 0)\r\n {\r\n if (this.rolesCatalogo.indexOf(rol) === -1) \r\n {\r\n for (var i in this.rolesCatalogo) \r\n {\r\n if(this.rolesCatalogo[i].id_rol==rol)\r\n {\r\n this.nombreRol=this.rolesCatalogo[i]['nombre_rol'];\r\n }\r\n }\r\n } else if (this.rolesCatalogo.indexOf(rol) > -1) {}\r\n\r\n }\r\n \r\n}\r\n\r\nonChangeRol(idRol:number)\r\n{\r\n this.authService.emiteRolSeleccionado(idRol);\r\n this.nombreRoles(idRol);\r\n \r\n}\r\n\r\nngOnDestroy() {\r\n this.seleccionRol=0;\r\n this.roles=[];\r\n this.nombreRol=\"\";\r\n this.mostrarMenu=false;\r\n this.authService.nombreRol$.unsubscribe();\r\n window.location.reload();\r\n}\r\n\r\n}//Cierre de clase\r\n","import {\r\n Component,\r\n OnInit,\r\n ViewChild,\r\n ElementRef,\r\n Input,\r\n Output,\r\n ViewChildren,\r\n QueryList,\r\n NgZone,\r\n ɵConsole,\r\n EventEmitter\r\n} from '@angular/core';\r\nimport { FormGroup, FormControl, Validators,FormArray,FormBuilder, Form } from '@angular/forms';\r\nimport { DataService } from '../../services/data.service';\r\nimport bsCustomFileInput from 'bs-custom-file-input';\r\nimport { almenosUnImpactoValidator } from '../../validators/validadores.validator';\r\nimport { ModalProcedimientoComponent } from 'src/app/components/modal-procedimiento-asis/modal-procedimiento.component';\r\nimport { Router } from '@angular/router';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { Iniciativa, Impactos,DireccionGral,DireccionArea} from 'src/app/interfaces/interfaces';\r\nimport * as moment from 'moment';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { ModalCosteoConsultaComponent } from 'src/app/components/modal-costeo-consulta/modal-costeo-consulta.component';\r\nimport {STEPPER_GLOBAL_OPTIONS} from '@angular/cdk/stepper';\r\nimport { Proceso, Procedimiento } from 'src/app/interfaces/interfaces';\r\nimport{ ConfirmComponent} from 'src/app/components/shared/confirm/confirm.component';\r\nimport { THIS_EXPR } from '@angular/compiler/src/output/output_ast';\r\n\r\n\r\n@Component({\r\n selector: 'app-nuevo-sistema',\r\n templateUrl: './nuevo-sistema.component.html',\r\n styleUrls: ['./nuevo-sistema.component.scss'],\r\n providers: [{\r\n provide: STEPPER_GLOBAL_OPTIONS, useValue: {showError: true}\r\n }]\r\n})\r\nexport class NuevoSistemaComponent implements OnInit {\r\n // Usuario autenticado\r\n @Input() emailUser: string;\r\n @Input() nombreUser: string;\r\n //Evento de salida para el boton de siguiente, ventana costeo\r\n @Output() botonSiguiente = new EventEmitter();\r\n @Output() id:number;\r\n\r\n // control de visibilidad de los componentes del form\r\n inContibucionGobierno = false;\r\n inContibucionOperativo = false;\r\n inImpactoProcesos = false;\r\n inMejorarServicioCiudadania = false;\r\n inCumplimientoLey = false;\r\n inModernizacionDependencia = false;\r\n // Objeto de los forms\r\n nuevoSisFormDatos: FormGroup;\r\n editarSisFormDatos: FormGroup;\r\n json_impactoimp: FormGroup;\r\n formArchivos: FormGroup;\r\n\r\n // Visivilidad de los uploadings de los archivos\r\n subiendoProcesoActual = false;\r\n subiendoProcesoPropuesto = false;\r\n subiendoCosteo = false;\r\n subiendoOtrosArchivos = false;\r\n procesoActualError = false;\r\n procesoPropuestoError = false;\r\n costeoError = false;\r\n otrosArchivosError = false;\r\n // Valores de los input Files\r\n @ViewChild('procesoActual', { static: true })\r\n procesoActualInput: ElementRef;\r\n @ViewChild('procesoPropuesto', { static: true })\r\n procesoPropuestoInput: ElementRef;\r\n @ViewChild('costeo', { static: true })\r\n costeoInput: ElementRef;\r\n @ViewChild('otrosArchivos', { static: true })\r\n otrosArchivosInput: ElementRef;\r\n // Checkboxes\r\n @ViewChildren('checkboxes') checkboxes: QueryList;\r\n\r\n @ViewChild('labelProcesoPropuesto',{static:false})\r\n labelProcesoPropuesto: ElementRef;\r\n @ViewChild('labelProcesoActual',{static:false})\r\n labelProcesoActual: ElementRef;\r\n @ViewChild('labelAnexos',{static:false})\r\n labelAnexos: ElementRef;\r\n\r\n // limite para campo fecha\r\n fechaActual: number;\r\n mostrardescargarArchivoPA:boolean=false;\r\n mostrardescargarArchivoPP:boolean=false;\r\n mostrardescargarArchivoAN:boolean=false;\r\n nombreArchivoPP:string;\r\n nombreArchivoPA:string;\r\n nombreArchivoAN:string;\r\n idIniciativa:string;\r\n opcion:string;\r\n idProceso:number;\r\n botonCosteo:boolean=false;\r\n mostrarCosteo:boolean=false;\r\n mostrarFormNuevo:boolean=true;\r\n mostrarFormConsultar:boolean=false;\r\n mostrarFormEditar:boolean=false;\r\n checkSeleccionado:boolean=false;\r\n selected: any = [];\r\n arrayImpactos: Impactos[]=[];\r\n arrayImpactosConsulta: Impactos[]=[];\r\n archivoAnexo:File;\r\n archivoPropuesto:File;\r\n archivoActual:File;\r\n direccionesGral: DireccionGral[];\r\n direccionesArea: DireccionArea[];\r\n areaGralSeleccionada: string;\r\n @ViewChild(ModalCosteoConsultaComponent) consultaCosteo: ModalCosteoConsultaComponent;\r\n @ViewChild(ModalProcedimientoComponent) editUserComponent: ModalProcedimientoComponent;\r\n\r\nformProcesos: FormGroup;\r\ncosteo:boolean;\r\ntablaProcedimientos: Procedimiento[]=[];\r\ntablaProcedimientosToBe: Procedimiento[]=[];\r\ntabla: Procedimiento[]=[];\r\ntabuladores: any[]=[];\r\narchivoProcesoActualRequerido:boolean=false;\r\narchivoProcesoPropuesto:boolean=false;\r\nbotonEnviar:boolean=false;\r\nfechaTermino: string;\r\ntabs = ['Procedimiento'];\r\nselectedTabs = new FormControl(0);\r\ntabSeleccionado:number=0;\r\nloadingGeneral:boolean=false;\r\nesPeriodoEnvio:boolean=false;\r\nidRolSeleccionado:number;\r\nvalorTaps:number=0;\r\nloading:boolean=false;\r\nidDirGral:number;\r\nnameDirGral:string;\r\n\r\n constructor(\r\n public dialog:MatDialog,\r\n private dataService: DataService,\r\n private zone: NgZone,\r\n private router: Router,\r\n private notifier: NotifierService,\r\n private authService: AuthService,\r\n private _formBuilder: FormBuilder\r\n ) {\r\n this.fechaActual = Date.now();\r\n /*this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n //return this.emailUser;\r\n });*/\r\n //Verificamos que sea periodo de envio\r\n this.dataService.esPeriodoEnvios().subscribe(\r\n data=>{\r\n this.esPeriodoEnvio=data['objData'];\r\n }\r\n );\r\n }\r\n\r\n ngOnInit() \r\n {\r\n //Nos subscribimos al método para el rol seleccionado\r\n this.authService.escuchaRolSeleccionado().subscribe((res) => {\r\n this.idRolSeleccionado = res;\r\n });\r\n this.authService.obtenerEmailUser().subscribe((res) => {\r\n this.emailUser = res;\r\n });\r\n this.idIniciativa = localStorage.getItem (\"editarIniciativaId\");\r\n this.opcion = window.localStorage.getItem (\"opcionTabla\");\r\n if (!this.idIniciativa) \r\n {\r\n }\r\n else{\r\n //Opcion para consultar\r\n if(parseInt(this.opcion)==2)\r\n {\r\n this.verDetallesIniciativa(parseInt(this.idIniciativa));\r\n this.mostrarFormConsultar=true;\r\n this.mostrarFormNuevo=false;\r\n }\r\n //Opcion para editar\r\n if(parseInt(this.opcion)==1)\r\n {\r\n this.botonCosteo=true;\r\n this.mostrarFormNuevo=false;\r\n this.mostrarFormEditar=true;\r\n this.verDetallesIniciativa(parseInt(this.idIniciativa));\r\n }\r\n\r\n }\r\n \r\n // Activar el FileChooser de bootstrap\r\n bsCustomFileInput.init();\r\n // Crear form\r\n this.nuevoSisFormDatos = this._formBuilder.group({\r\n id_proceso: new FormControl(''),\r\n id_iniciativa: new FormControl(''),\r\n nombre_iniciativa: new FormControl(''),\r\n nombre_solicitante: new FormControl(''),\r\n email_solicitante: new FormControl('', [Validators.email]),\r\n direccionArea_solicitante: new FormControl(''),\r\n telefono_solicitante: new FormControl('', [Validators.maxLength(10)]),\r\n extencion_solicitante: new FormControl(''),\r\n problematica_iniciativa: new FormControl(''),\r\n fechaTermino_iniciativa: new FormControl(''),\r\n justificacionFecha_iniciativa: new FormControl(''),\r\n numeroTransacciones_iniciativa:new FormControl(''),\r\n folio_iniciativa:new FormControl(''),\r\n fechaEnvio_iniciativa: new FormControl(''),\r\n id_tipoIniciativa: new FormControl(''),\r\n id_area : new FormControl(''),\r\n id_aplicativo: new FormControl(''),\r\n id_estatusIniciativa: new FormControl(''),\r\n userLogin: new FormControl(this.emailUser),\r\n rolUserlogin:new FormControl(this.idRolSeleccionado),\r\n contribucionProgGobierno: new FormControl(''),\r\n contribucionProgOperativo: new FormControl(''),\r\n impactoProcesos: new FormControl(''),\r\n mejoraServicio: new FormControl(''),\r\n cumplimientoLey: new FormControl(''),\r\n contribucionModernizacion: new FormControl(''),\r\n json_impacto:new FormControl(''),\r\n dirGral_solicitante:new FormControl(''),\r\n id_dirgralSapSolicitante:new FormControl(''),\r\n id_areaSapSolicitante:new FormControl(''),\r\n\r\n //FormGroup para los impactos\r\n json_impactoimp: new FormGroup(\r\n {\r\n contribucionProgGobierno: new FormControl(''),\r\n contribucionProgOperativo: new FormControl(''),\r\n impactoProcesos: new FormControl(''),\r\n mejoraServicio: new FormControl(''),\r\n cumplimientoLey: new FormControl(''),\r\n contribucionModernizacion: new FormControl('')\r\n },\r\n //almenosUnImpactoValidator()\r\n ),\r\n solucionPropuesta_iniciativa: new FormControl(''),\r\n beneficiariosDirectos_iniciativa: new FormControl(''),\r\n beneficiariosImplementacion_iniciativa: new FormControl(''),\r\n nombreProceso_iniciativa: new FormControl(''),\r\n //Documentos\r\n doc_procesoActual: new FormControl(''),\r\n doc_procesoPropuesto: new FormControl(''),\r\n docAnexos_iniciativas: new FormControl(''),\r\n });\r\n\r\n //Form para guardar la info de los archivos\r\n this.formArchivos=this._formBuilder.group({\r\n doc_procesoActual: new FormControl(''),\r\n doc_procesoPropuesto: new FormControl(''),\r\n docAnexos_iniciativas: new FormControl('')\r\n\r\n });\r\n\r\n\r\n this.formProcesos= this._formBuilder.group({\r\n id_proceso:new FormControl(''),\r\n id_iniciativa: new FormControl(''),\r\n nombre_proceso: new FormControl(''),\r\n procedimiento_proceso: new FormControl(''),\r\n duenio_proceso: new FormControl(''),\r\n tramitesExternosASIS_proceso: new FormControl(''),\r\n tramitesInternosASIS_proceso: new FormControl(''),\r\n tramitesExternosTOBE_proceso: new FormControl(''),\r\n tramitesInternosTOBE_proceso: new FormControl(''),\r\n hojasImpresasASIS_proceso : new FormControl(''),\r\n hojasImpresasTOBE_proceso : new FormControl(''),\r\n kmRecorridosASIS_Proceso: new FormControl(''),\r\n kmRecorridosTOBE_Proceso: new FormControl(''),\r\n archivo_costeo:new FormControl('')\r\n })\r\n\r\n\r\n // Crear form\r\n this.editarSisFormDatos = new FormGroup({\r\n id_proceso: new FormControl(''),\r\n id_iniciativa: new FormControl(''),\r\n nombre_iniciativa: new FormControl(''),\r\n nombre_solicitante: new FormControl(''),\r\n email_solicitante: new FormControl('', [Validators.email]),\r\n direccionArea_solicitante: new FormControl(''),\r\n telefono_solicitante: new FormControl('', [Validators.maxLength(10)]),\r\n extencion_solicitante: new FormControl('', [Validators.maxLength(5)]),\r\n problematica_iniciativa: new FormControl(''),\r\n fechaTermino_iniciativa: new FormControl(''),\r\n justificacionFecha_iniciativa: new FormControl(''),\r\n numeroTransacciones_iniciativa:new FormControl(''),\r\n folio_iniciativa:new FormControl(''),\r\n fechaEnvio_iniciativa: new FormControl(''),\r\n id_tipoIniciativa: new FormControl(''),\r\n id_area : new FormControl(''),\r\n id_aplicativo: new FormControl(''),\r\n id_estatusIniciativa: new FormControl(''),\r\n impactosArray: new FormArray([]),\r\n userLogin: new FormControl(this.emailUser),\r\n solucionPropuesta_iniciativa: new FormControl(''),\r\n beneficiariosDirectos_iniciativa: new FormControl(''),\r\n beneficiariosImplementacion_iniciativa: new FormControl(''),\r\n nombreProceso_iniciativa: new FormControl(''),\r\n json_impacto:new FormControl(''),\r\n dirGral_solicitante:new FormControl(''),\r\n id_dirgralSapSolicitante:new FormControl(''),\r\n id_areaSapSolicitante:new FormControl(''),\r\n json_impactoimp: new FormGroup(\r\n {\r\n contribucionProgGobierno: new FormControl(''),\r\n contribucionProgOperativo: new FormControl(''),\r\n impactoProcesos: new FormControl(''),\r\n mejoraServicio: new FormControl(''),\r\n cumplimientoLey: new FormControl(''),\r\n contribucionModernizacion: new FormControl('')\r\n },\r\n almenosUnImpactoValidator()\r\n ),\r\n //Impactos\r\n contribucionProgGobierno: new FormControl(''),\r\n contribucionProgOperativo: new FormControl(''),\r\n impactoProcesos: new FormControl(''),\r\n mejoraServicio: new FormControl(''),\r\n cumplimientoLey: new FormControl(''),\r\n contribucionModernizacion: new FormControl(''),\r\n //Documentos\r\n doc_procesoActual: new FormControl(''),\r\n doc_procesoPropuesto: new FormControl(''),\r\n docAnexos_iniciativas: new FormControl('')\r\n });\r\n\r\n //Obtener las direcciones generales\r\n this.dataService.obtenerDireccionGral(parseInt(this.idIniciativa),this.emailUser).subscribe(data => {\r\n this.direccionesGral = data['data'];\r\n });\r\n //Obtenemos la informacion de usuario logueado\r\n this.dataService.obtenerInfoUsuario(this.emailUser).subscribe(data => {\r\n if(data['objData'])\r\n {\r\n this.idDirGral=data['objData']['id_dirgralSap'];\r\n this.nameDirGral=data['objData']['nombre_dirgralSap'];\r\n\r\n //Hacemos el patchValue para la direccion gral\r\n this.nuevoSisFormDatos.patchValue({\r\n id_dirgralSapSolicitante:this.idDirGral\r\n })\r\n this.dataService.obtenerAreaSolicitante(this.idDirGral).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.direccionesArea = data['data'];\r\n }\r\n },\r\n error => {\r\n }\r\n );\r\n }\r\n });\r\n \r\n }\r\n\r\n get fc() {\r\n return this.nuevoSisFormDatos.controls;\r\n }\r\n get f() {\r\n return this.nuevoSisFormDatos;\r\n }\r\n\r\n //Método para agregar tabs\r\n addTab(selectAfterAdding: boolean) {\r\n this.tabs.push(`Procedimiento ${this.tabs.length + 1}`); \r\n let nuevoTab=this.tabs.length + 1;\r\n this.selectedTabs.setValue(nuevoTab);\r\n this.formProcesos.reset();\r\n }\r\n\r\n //Eliminar procesos del costeo\r\n deleteProcesos(index:number, tab:number)\r\n {\r\n this.loadingGeneral=true;\r\n this.tabs.splice(index, 1);\r\n this.tabuladores.forEach((element, index) => {\r\n if(tab==index)\r\n {\r\n //Eliminamos el proceso\r\n this.dataService.deleteProcesoCosteo(element).subscribe(\r\n data => {\r\n if (data['objData']) {\r\n this.notifier.notify(\r\n 'success',\r\n 'Proceso eliminado correctamente.'\r\n );\r\n }\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar el proceso. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }//If de los tabuladores\r\n });\r\n //Eliminar el tabulador\r\n //this.tabuladores.splice(tab,1);\r\n this.tabuladores=[];\r\n this.tabla=[];\r\n this.tablaProcedimientosToBe=[];\r\n this.tablaProcedimientos=[];\r\n this.tabs=['Procedimiento'];\r\n this.loadingGeneral=false;\r\n this.verDetallesProceso(parseInt(this.idIniciativa),0);\r\n }\r\n\r\n //Eliminar tabs\r\n removeTab(index: number) \r\n {\r\n this.tabs.splice(index, 1);\r\n\r\n }//Cierre del método\r\n\r\n \r\n //Metodo para navegar entre los tabuladores\r\n navegarTab(form:number)\r\n {\r\n this.tabSeleccionado=form;\r\n //Limpiamos la tabla de procedimientos/arrays\r\n this.formProcesos.reset();\r\n this.tabla=[];\r\n this.tablaProcedimientosToBe=[];\r\n this.tablaProcedimientos=[];\r\n this.tabuladores.forEach((element, index) => {\r\n if(form==index)\r\n {\r\n this.dataService.detalleProceso(parseInt(this.idIniciativa),element).subscribe(data => {\r\n if (data['objData']['proceso']) \r\n {\r\n let infoProceso: Proceso = data['objData']['proceso'];\r\n this.formProcesos.patchValue({\r\n id_proceso:infoProceso.id_proceso,\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso\r\n })\r\n }\r\n \r\n this.tabla=data['objData']['listDetalleProcesos'];\r\n //Llenamos los procedimientos\r\n if(data['objData']['listDetalleProcesos'])\r\n {\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n \r\n }\r\n \r\n });\r\n }\r\n \r\n });\r\n \r\n }\r\n\r\n procesaPropagar(iniciativa) \r\n {\r\n this.mostrarFormNuevo=true;\r\n }\r\n\r\n //Método para agregar iniciativa\r\n onSubmit() \r\n {\r\n this.formarArrayImpacto();\r\n var myJSON = JSON.stringify(this.arrayImpactos);\r\n if(this.nuevoSisFormDatos.value==null)\r\n {\r\n }\r\n\r\n this.nuevoSisFormDatos.patchValue({\r\n fechaEnvio_iniciativa:moment(this.fechaActual).format('YYYY-MM-DD'),\r\n id_tipoIniciativa:1,\r\n id_estatusIniciativa:1,\r\n json_impacto:myJSON\r\n })\r\n //Enviar la data al service\r\n this.dataService.nuevoSistema(this.nuevoSisFormDatos.value).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n //Asigno el id de iniciativa\r\n this.idIniciativa=data['objData']['id_iniciativa'];\r\n //Verificamos si se agregaron archivos\r\n if(this.formArchivos.controls['docAnexos_iniciativas'].value)\r\n {\r\n this.subirArchivosRepositorios(\"anexos\",parseInt(this.idIniciativa));\r\n }\r\n if(this.formArchivos.controls['doc_procesoPropuesto'].value){\r\n this.subirArchivosRepositorios(\"procesoPropuesto\",parseInt(this.idIniciativa));\r\n }\r\n if(this.formArchivos.controls['doc_procesoActual'].value){\r\n this.subirArchivosRepositorios(\"procesoActual\",parseInt(this.idIniciativa));\r\n }\r\n\r\n this.notifier.notify(\r\n 'success',\r\n 'Nueva iniciativa registrada correctamente.'\r\n );\r\n this.botonCosteo=true;\r\n this.nuevoSisFormDatos.patchValue({\r\n id_iniciativa:this.idIniciativa\r\n })\r\n\r\n this.formProcesos.patchValue({\r\n id_iniciativa:this.idIniciativa\r\n })\r\n //this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n else{\r\n }\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar registrar la iniciativa. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n formarArrayImpacto()\r\n {\r\n if(this.inContibucionGobierno==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['contribucionProgGobierno'].value;\r\n let contribucionProgGobierno={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':1,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(contribucionProgGobierno);\r\n }\r\n\r\n if(this.inContibucionOperativo==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['contribucionProgOperativo'].value;\r\n let contribucionProgOperativo={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':2,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(contribucionProgOperativo);\r\n }\r\n\r\n if(this.inImpactoProcesos==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['impactoProcesos'].value;\r\n\r\n let impactoProcesos={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':3,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(impactoProcesos);\r\n }\r\n\r\n if(this.inMejorarServicioCiudadania==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['mejoraServicio'].value;\r\n\r\n let mejoraServicio={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':4,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(mejoraServicio);\r\n }\r\n\r\n if(this.inCumplimientoLey==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['cumplimientoLey'].value;\r\n let cumplimientoLey={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':5,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(cumplimientoLey);\r\n }\r\n\r\n if(this.inModernizacionDependencia==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['contribucionModernizacion'].value;\r\n let contribucionModernizacion={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':6,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(contribucionModernizacion);\r\n }\r\n\r\n }\r\n \r\n\r\n formarArrayImpactoEdit()\r\n {\r\n if(this.inContibucionGobierno==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['contribucionProgGobierno'].value;\r\n let contribucionProgGobierno={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':1,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(contribucionProgGobierno);\r\n }\r\n\r\n if(this.inContibucionOperativo==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['contribucionProgOperativo'].value;\r\n let contribucionProgOperativo={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':2,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(contribucionProgOperativo);\r\n }\r\n\r\n if(this.inImpactoProcesos==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['impactoProcesos'].value;\r\n let impactoProcesos={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':3,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(impactoProcesos);\r\n }\r\n\r\n if(this.inMejorarServicioCiudadania==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['mejoraServicio'].value;\r\n let mejoraServicio={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':4,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(mejoraServicio);\r\n }\r\n\r\n if(this.inCumplimientoLey==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['cumplimientoLey'].value;\r\n let cumplimientoLey={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':5,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(cumplimientoLey);\r\n }\r\n\r\n if(this.inModernizacionDependencia==true)\r\n {\r\n let val=this.nuevoSisFormDatos.controls['contribucionModernizacion'].value;\r\n let contribucionModernizacion={\r\n 'id_iniciativa':this.nuevoSisFormDatos.controls['id_iniciativa'].value,\r\n 'id_impacto':6,\r\n 'detalle_iniciativaImpacto':val\r\n }\r\n this.arrayImpactos.push(contribucionModernizacion);\r\n }\r\n\r\n }\r\n\r\n onFileChange(event: any, nombreArchivo: string) \r\n {\r\n if (event.target.files && event.target.files.length) \r\n {\r\n const [file] = event.target.files;\r\n\r\n switch (nombreArchivo) \r\n {\r\n case 'procesoActual':\r\n this.procesoActualError = false;\r\n this.archivoActual=file;\r\n this.labelProcesoActual.nativeElement.innerText = file.name;\r\n let extensionActual;\r\n //Si es documento\r\n if(file.type.indexOf(\"pdf\")!==-1)\r\n {\r\n extensionActual = file.type.split('/');\r\n if(extensionActual[1]===\"pdf\")\r\n {\r\n // this.subiendoProcesoActual = true;\r\n this.formArchivos.patchValue({\r\n doc_procesoActual: nombreArchivo+'.'+extensionActual[1]\r\n });\r\n }\r\n //Si no es PDF\r\n else{\r\n this.procesoActualError = false;\r\n this.labelProcesoActual.nativeElement.innerText = \"\";\r\n this.notifier.notify('error','Formato de archivo no permitido.');\r\n }\r\n }\r\n //Si no es archivo\r\n else{\r\n this.subiendoProcesoActual=false;\r\n this.labelProcesoActual.nativeElement.innerText = \"\";\r\n this.notifier.notify('error','Formato de archivo no permitido.');\r\n\r\n }\r\n\r\n\r\n\r\n \r\n /*this.dataService.subirArchivos(file, nombreArchivo,parseInt(this.idIniciativa)).subscribe( \r\n (data: string) => {\r\n if (data) {\r\n this.nuevoSisFormDatos.patchValue({\r\n procesoActual: data,\r\n doc_procesoActual:data['objData']\r\n });\r\n }\r\n this.subiendoProcesoActual = false;\r\n },\r\n error => {\r\n console.error(error);\r\n this.procesoActualError = true;\r\n this.procesoActualInput.nativeElement.value = '';\r\n this.subiendoProcesoActual = false;\r\n }\r\n );*/\r\n break;\r\n case 'procesoPropuesto':\r\n this.procesoPropuestoError = false;\r\n this.archivoPropuesto=file;\r\n this.labelProcesoPropuesto.nativeElement.innerText = file.name;\r\n let extensionPropuesto;\r\n\r\n //Si es documento\r\n if(file.type.indexOf(\"pdf\")!==-1)\r\n {\r\n extensionPropuesto= file.type.split('/');\r\n if(extensionPropuesto[1]===\"pdf\")\r\n {\r\n //this.subiendoProcesoPropuesto = true;\r\n this.formArchivos.patchValue({\r\n doc_procesoPropuesto: nombreArchivo+'.'+extensionPropuesto[1],\r\n });\r\n\r\n }\r\n //Si no es PDF\r\n else{\r\n this.subiendoProcesoPropuesto = false;\r\n this.labelProcesoPropuesto.nativeElement.innerText=\"\";\r\n this.notifier.notify('error','Formato de archivo no permitido.');\r\n }\r\n\r\n }\r\n //Si no es archivo\r\n else{\r\n this.subiendoProcesoPropuesto=false;\r\n this.labelProcesoPropuesto.nativeElement.innerText=\"\";\r\n this.notifier.notify('error','Formato de archivo no permitido.');\r\n }\r\n /*this.dataService.subirArchivos(file, nombreArchivo,parseInt(this.idIniciativa)).subscribe(\r\n (data: string) => {\r\n if (data) {\r\n this.nuevoSisFormDatos.patchValue({\r\n procesoPropuesto: data,\r\n doc_procesoPropuesto:data['objData']\r\n });\r\n }\r\n this.subiendoProcesoPropuesto = false;\r\n },\r\n error => {\r\n console.error(error);\r\n this.procesoPropuestoError = true;\r\n this.procesoPropuestoInput.nativeElement.value = '';\r\n this.subiendoProcesoPropuesto = false;\r\n }\r\n );*/\r\n break;\r\n case 'anexos':\r\n this.otrosArchivosError = false;\r\n this.archivoAnexo=file;\r\n this.labelAnexos.nativeElement.innerText = file.name;\r\n let extensionAnexo=[];\r\n //Si es archivo\r\n if(file.type)\r\n {\r\n extensionAnexo= file.type.split('/');\r\n switch (file.type)\r\n {\r\n case \"application/zip\":\r\n //this.subiendoOtrosArchivos=true;\r\n extensionAnexo[1]=\"zip\";\r\n break;\r\n case \"application/pdf\":\r\n //this.subiendoOtrosArchivos=true;\r\n break;\r\n case \"application/x-zip-compressed\":\r\n //this.subiendoOtrosArchivos=true;\r\n extensionAnexo[1]=\"zip\";\r\n break;\r\n case \"application/octet-stream\":\r\n //this.subiendoOtrosArchivos=true;\r\n extensionAnexo[1]=\"zip\";\r\n break;\r\n case \"application/x-rar-compressed\":\r\n //this.subiendoOtrosArchivos=true;\r\n extensionAnexo[1]=\"rar\";\r\n break;\r\n default:\r\n //this.subiendoOtrosArchivos=false;\r\n this.labelAnexos.nativeElement.innerText=\"\";\r\n this.notifier.notify('error','Formato de archivo no permitido.');\r\n break;\r\n }\r\n\r\n\r\n\r\n /*\r\n extensionAnexo= file.type.split('/');\r\n //this.subiendoOtrosArchivos = true;\r\n if(extensionAnexo[1]===\"pdf\" || extensionAnexo[1].indexOf(\"zip\")===0)\r\n {\r\n this.subiendoOtrosArchivos=true;\r\n if(extensionAnexo[1].indexOf(\"zip\")==0)\r\n {\r\n extensionAnexo[1]==\"zip\";\r\n }\r\n \r\n }\r\n else{\r\n //this.otrosArchivosError=true;\r\n this.subiendoOtrosArchivos=false;\r\n this.labelAnexos.nativeElement.innerText=\"\";\r\n this.notifier.notify('error','Formato de archivo no permitido');\r\n }*/\r\n }\r\n else{\r\n //Si es carpeta\r\n extensionAnexo = file.name.split('.');\r\n if(extensionAnexo[extensionAnexo.length-1]===\"rar\")\r\n {\r\n //this.subiendoOtrosArchivos = true;\r\n \r\n }\r\n else{\r\n //this.subiendoOtrosArchivos=false;\r\n this.labelAnexos.nativeElement.innerText=\"\";\r\n this.notifier.notify('error','Formato de archivo no permitido');\r\n }\r\n }\r\n this.formArchivos.patchValue({\r\n docAnexos_iniciativas: nombreArchivo+'.'+extensionAnexo[extensionAnexo.length-1],\r\n });\r\n \r\n /*this.dataService.subirArchivos(file, nombreArchivo,parseInt(this.idIniciativa)).subscribe(\r\n (data: string) => {\r\n if (data) {\r\n this.nuevoSisFormDatos.patchValue({\r\n otrosArchivos: data,\r\n docAnexos_iniciativas:data['objData']\r\n \r\n });\r\n }\r\n this.subiendoOtrosArchivos = false;\r\n },\r\n error => {\r\n console.error(error);\r\n this.otrosArchivosError = true;\r\n this.otrosArchivosInput.nativeElement.value = '';\r\n this.subiendoOtrosArchivos = false;\r\n }\r\n );*/\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n /*Método para los combos de areas del solicitante\r\n onChangeArea(areaGral: string) \r\n {\r\n this.areaGralSeleccionada = areaGral;\r\n this.dataService.obtenerAreaSolicitante(areaGral).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.direccionesArea = data['data'];\r\n }\r\n },\r\n error => {\r\n }\r\n );\r\n }*/\r\n\r\n \r\n //Método para guardar los acrhivos en el repositorio\r\n subirArchivosRepositorios(nombreArchivo:string,id:number,)\r\n {\r\n switch (nombreArchivo) \r\n {\r\n case 'procesoActual':\r\n this.subiendoProcesoActual = false;\r\n this.procesoActualError = false;\r\n this.dataService.subirArchivos(this.archivoActual, nombreArchivo,parseInt(this.idIniciativa)).subscribe( \r\n (data: string) => {\r\n if (data['alert']==0) \r\n {\r\n //Modificamos el nombre del archivo\r\n let valores={\r\n id_iniciativa:this.idIniciativa,\r\n doc_procesoActual:data['objData']\r\n }\r\n this.dataService.updateArchivoProcesoActual(valores).subscribe(\r\n data =>{\r\n this.subiendoProcesoActual = true;\r\n this.archivoProcesoActualRequerido=false;\r\n }\r\n );\r\n\r\n }\r\n else{\r\n this.procesoActualError=true;\r\n this.subiendoProcesoActual = false;\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.procesoActualError = true;\r\n this.procesoActualInput.nativeElement.value = '';\r\n this.subiendoProcesoActual = false;\r\n }\r\n );\r\n break;\r\n case 'procesoPropuesto':\r\n this.subiendoProcesoPropuesto = false;\r\n this.procesoPropuestoError = false;\r\n this.dataService.subirArchivos(this.archivoPropuesto, nombreArchivo,parseInt(this.idIniciativa)).subscribe(\r\n (data: string) => {\r\n if (data['alert']==0) \r\n {\r\n //Modificamos el nombre del archivo\r\n let valores={\r\n id_iniciativa:this.idIniciativa,\r\n doc_procesoPropuesto:data['objData']\r\n }\r\n this.dataService.updateArchivoProcesoPropuesto(valores).subscribe(\r\n data =>{\r\n this.archivoProcesoPropuesto=false;\r\n this.subiendoProcesoPropuesto = true;\r\n }\r\n );\r\n\r\n } \r\n else{\r\n this.procesoPropuestoError=true;\r\n this.subiendoProcesoPropuesto = false;\r\n } \r\n //this.subiendoProcesoPropuesto = false;\r\n },\r\n error => {\r\n console.error(error);\r\n this.procesoPropuestoError = true;\r\n this.procesoPropuestoInput.nativeElement.value = '';\r\n this.subiendoProcesoPropuesto = false;\r\n }\r\n );\r\n break;\r\n case 'anexos':\r\n //this.subiendoOtrosArchivos = true;\r\n //this.otrosArchivosError = false;\r\n this.dataService.subirArchivos(this.archivoAnexo, nombreArchivo,parseInt(this.idIniciativa)).subscribe(\r\n (data: string) => {\r\n if (data['alert']==0) \r\n {\r\n let valores={\r\n id_iniciativa:this.idIniciativa,\r\n docAnexos_iniciativas:data['objData']\r\n }\r\n this.dataService.updateArchivoAnexos(valores).subscribe(\r\n data =>{\r\n this.subiendoOtrosArchivos = true;\r\n }\r\n );\r\n }\r\n else{\r\n this.otrosArchivosError = true;\r\n this.subiendoOtrosArchivos = false;\r\n\r\n }\r\n \r\n },\r\n error => {\r\n console.error(error);\r\n this.otrosArchivosError = true;\r\n this.otrosArchivosInput.nativeElement.value = '';\r\n this.subiendoOtrosArchivos = false;\r\n }\r\n );\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n\r\n limpiarCampoImpacto(impacto: number) \r\n {\r\n switch (impacto) {\r\n case 1:\r\n this.nuevoSisFormDatos.get('contribucionProgGobierno').reset();\r\n break;\r\n case 2:\r\n this.nuevoSisFormDatos.get('contribucionProgOperativo').reset();\r\n break;\r\n case 3:\r\n this.nuevoSisFormDatos.get('impactoProcesos').reset();\r\n break;\r\n case 4:\r\n this.nuevoSisFormDatos.get('mejoraServicio').reset();\r\n break;\r\n case 5:\r\n this.nuevoSisFormDatos.get('cumplimientoLey').reset();\r\n break;\r\n case 6:\r\n this.nuevoSisFormDatos.get('contribucionModernizacion').reset();\r\n break;\r\n }\r\n }\r\n\r\n checar(id): boolean {\r\n return this.selected.includes(id);\r\n }\r\n\r\n activarInsertar()\r\n {\r\n if(this.nuevoSisFormDatos.controls.doc_procesoActual.value)\r\n {\r\n this.mostrardescargarArchivoPA=true;\r\n this.nombreArchivoPA=this.nuevoSisFormDatos.controls.doc_procesoActual.value;\r\n }\r\n if(this.nuevoSisFormDatos.controls.doc_procesoPropuesto.value)\r\n {\r\n this.mostrardescargarArchivoPP=true;\r\n this.nombreArchivoPP=this.nuevoSisFormDatos.controls.doc_procesoPropuesto.value;\r\n\r\n }\r\n if(this.nuevoSisFormDatos.controls.docAnexos_iniciativas.value)\r\n {\r\n this.mostrardescargarArchivoAN=true;\r\n this.nombreArchivoAN=this.nuevoSisFormDatos.controls.docAnexos_iniciativas.value;\r\n }\r\n this.mostrarFormNuevo=true;\r\n \r\n }\r\n\r\n\r\n activarModificar()\r\n {\r\n if(this.nuevoSisFormDatos.controls.doc_procesoActual.value)\r\n {\r\n this.mostrardescargarArchivoPA=true;\r\n this.nombreArchivoPA=this.nuevoSisFormDatos.controls.doc_procesoActual.value;\r\n }\r\n if(this.nuevoSisFormDatos.controls.doc_procesoPropuesto.value)\r\n {\r\n this.mostrardescargarArchivoPP=true;\r\n this.nombreArchivoPP=this.nuevoSisFormDatos.controls.doc_procesoPropuesto.value;\r\n\r\n }\r\n if(this.nuevoSisFormDatos.controls.docAnexos_iniciativas.value)\r\n {\r\n this.mostrardescargarArchivoAN=true;\r\n this.nombreArchivoAN=this.nuevoSisFormDatos.controls.docAnexos_iniciativas.value;\r\n }\r\n this.mostrarFormEditar=true;\r\n \r\n }\r\n\r\n //Método para recuperar los datos del costeo\r\n verDetallesProceso(id_iniciativa:number, id_proceso:number)\r\n {\r\n this.dataService.detalleProceso(id_iniciativa,id_proceso).subscribe(data => {\r\n if (data['objData']['proceso']) \r\n {\r\n let infoProceso: Proceso = data['objData']['proceso'];\r\n this.formProcesos.patchValue({\r\n id_proceso:infoProceso.id_proceso,\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso\r\n })\r\n } \r\n this.tabla=data['objData']['listDetalleProcesos'];\r\n //Llenamos los procedimientos\r\n if(data['objData']['listDetalleProcesos'])\r\n {\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n\r\n }\r\n \r\n this.tabuladores=data['objData']['listIdProceso'];\r\n /*this.tabuladores.forEach((element, index) => {\r\n this.tabs.push(`Procedimiento ${this.tabs.length + 1}`);\r\n });*/\r\n //Generamos los tabuladores necesarios\r\n for(let numero of this.tabuladores)\r\n {\r\n this.tabs.push(`Procedimiento ${this.tabs.length + 1}`); \r\n }\r\n //Eliminamos el ultimo tap cuando la iniciativa trae procesos \r\n if(this.tabuladores.length!=0)\r\n {\r\n this.removeTab(this.tabs.length-1);\r\n }\r\n });\r\n}\r\n\r\n\r\n //Método para abrir el componente del costeo\r\n abrirCosteo()\r\n {\r\n this.mostrarFormNuevo=false;\r\n this.mostrarFormEditar=false;\r\n this.mostrarCosteo=true;\r\n //this.botonSiguiente.emit(parseInt(this.idIniciativa));\r\n //this.router.navigate(['./costeo'])\r\n }\r\n\r\n verDetallesIniciativa(id: number) \r\n {\r\n this.dataService.detalleIniciativa(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n this.idProceso=data['objData']['id_proceso'];\r\n //this.iniciativaSeleccionada = data['objData'];\r\n let infoiniciativa: Iniciativa = data['objData'];\r\n this.nameDirGral=data['objData']['nombre_dirgralSapSolicitante'];\r\n if(infoiniciativa.doc_procesoActual)\r\n {\r\n this.mostrardescargarArchivoPA=true;\r\n this.nombreArchivoPA=infoiniciativa.doc_procesoActual;\r\n }\r\n if(infoiniciativa.doc_procesoPropuesto)\r\n {\r\n this.mostrardescargarArchivoPP=true;\r\n this.nombreArchivoPP=infoiniciativa.doc_procesoPropuesto;\r\n }\r\n if(infoiniciativa.docAnexos_iniciativas)\r\n {\r\n this.mostrardescargarArchivoAN=true;\r\n this.nombreArchivoAN=infoiniciativa.docAnexos_iniciativas;\r\n }\r\n\r\n if(infoiniciativa.fechaTermino_iniciativa){\r\n this.fechaTermino=moment(infoiniciativa.fechaTermino_iniciativa).format('YYYY-MM-DD');\r\n }\r\n\r\n this.nuevoSisFormDatos.patchValue({\r\n id_iniciativa:infoiniciativa.id_iniciativa,\r\n nombre_iniciativa:infoiniciativa.nombre_iniciativa,\r\n nombre_solicitante:infoiniciativa.nombre_solicitante,\r\n email_solicitante:infoiniciativa.email_solicitante,\r\n direccionArea_solicitante:infoiniciativa.direccionArea_solicitante,\r\n telefono_solicitante:infoiniciativa.telefono_solicitante,\r\n extencion_solicitante:infoiniciativa.extencion_solicitante,\r\n problematica_iniciativa:infoiniciativa.problematica_iniciativa,\r\n fechaTermino_iniciativa:this.fechaTermino,\r\n //fechaTermino_iniciativa:moment(infoiniciativa.fechaTermino_iniciativa).format('YYYY-MM-DD'),\r\n justificacionFecha_iniciativa:infoiniciativa.justificacionFecha_iniciativa,\r\n numeroTransacciones_iniciativa:infoiniciativa.numeroTransacciones_Iniciativa,\r\n solucionPropuesta_iniciativa:infoiniciativa.solucionPropuesta_iniciativa,\r\n beneficiariosDirectos_iniciativa:infoiniciativa.beneficiariosDirectos_iniciativa,\r\n beneficiariosImplementacion_iniciativa:infoiniciativa.beneficiariosImplementacion_iniciativa,\r\n doc_procesoActual:infoiniciativa.doc_procesoActual,\r\n doc_procesoPropuesto:infoiniciativa.doc_procesoPropuesto,\r\n docAnexos_iniciativas:infoiniciativa.docAnexos_iniciativas,\r\n id_proceso:infoiniciativa.id_proceso,\r\n id_estatusIniciativa:infoiniciativa.id_estatusIniciativa,\r\n id_tipoIniciativa:infoiniciativa.id_tipoIniciativa,\r\n fechaEnvio_iniciativa:infoiniciativa.fechaEnvio_iniciativa,\r\n dirGral_solicitante: infoiniciativa.dirGral_solicitante,\r\n nombreProceso_iniciativa:infoiniciativa.nombreProceso_iniciativa,\r\n id_dirgralSapSolicitante: infoiniciativa.id_dirgralSapSolicitante,\r\n id_areaSapSolicitante: infoiniciativa.id_areaSapSolicitante,\r\n });\r\n\r\n //Volvemos a cargar las areas \r\n if(infoiniciativa.id_dirgralSapSolicitante)\r\n {\r\n this.dataService.obtenerAreaSolicitante(infoiniciativa.id_dirgralSapSolicitante).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.direccionesArea = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n //this.iniciativaSeleccionada.tipoIniciativa = tipoIniciativa;\r\n const tempImpactos = data['objData'].jsonIniciativaImpacto;\r\n //this.iniciativaSeleccionada.impactos = [];\r\n if (tempImpactos) \r\n {\r\n tempImpactos.split('|').forEach((element) => {\r\n let j:Impactos[]=JSON.parse(element)\r\n this.arrayImpactosConsulta=j;\r\n this.formarImpactos(j);\r\n });\r\n }\r\n\r\n //if(this.nuevoSisFormDatos.controls.id_proceso.value)\r\n //{\r\n this.botonEnviar=true;\r\n //Obtenemos los datos del costeo\r\n this.verDetallesProceso(id,0);\r\n //this.recargarTabla(this.nuevoSisFormDatos.controls.id_proceso.value);\r\n //}\r\n \r\n }\r\n });\r\n }\r\n\r\n editarIniciativa(form:any)\r\n {\r\n //Limpiamos el array de impactos\r\n this.arrayImpactos=[];\r\n this.formarArrayImpactoEdit();\r\n var myJSON = JSON.stringify(this.arrayImpactos);\r\n form.userlogin=this.emailUser;\r\n form.rolUserlogin=this.idRolSeleccionado;\r\n form.json_impacto=myJSON;\r\n \r\n if(this.formArchivos.controls['docAnexos_iniciativas'].value)\r\n {\r\n form.docAnexos_iniciativas=this.formArchivos.controls['docAnexos_iniciativas'].value;\r\n }\r\n if(this.formArchivos.controls['doc_procesoPropuesto'].value){\r\n form.doc_procesoPropuesto=this.formArchivos.controls['doc_procesoPropuesto'].value;\r\n }\r\n if(this.formArchivos.controls['doc_procesoActual'].value){\r\n form.doc_procesoActual=this.formArchivos.controls['doc_procesoActual'].value;\r\n }\r\n\r\n this.dataService.editarNuevoSistema(form).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n //Asigno el id de iniciativa\r\n this.idIniciativa=form.id_iniciativa;\r\n //this.idIniciativa=data['objData']['id_iniciativa'];\r\n //Verificamos si se agregaron archivos\r\n /*if(this.nuevoSisFormDatos.controls['docAnexos_iniciativas'].value && this.archivoAnexo)\r\n {\r\n this.subirArchivosRepositorios(\"anexos\",parseInt(this.idIniciativa));\r\n }\r\n if(this.nuevoSisFormDatos.controls['doc_procesoPropuesto'].value && this.archivoPropuesto)\r\n {\r\n this.subirArchivosRepositorios(\"procesoPropuesto\",parseInt(this.idIniciativa));\r\n }\r\n if(this.nuevoSisFormDatos.controls['doc_procesoActual'].value && this.archivoActual)\r\n {\r\n this.subirArchivosRepositorios(\"procesoActual\",parseInt(this.idIniciativa));\r\n }*/\r\n\r\n\r\n if(this.formArchivos.controls['docAnexos_iniciativas'].value)\r\n {\r\n this.subirArchivosRepositorios(\"anexos\",parseInt(this.idIniciativa));\r\n }\r\n if(this.formArchivos.controls['doc_procesoPropuesto'].value){\r\n this.subirArchivosRepositorios(\"procesoPropuesto\",parseInt(this.idIniciativa));\r\n }\r\n if(this.formArchivos.controls['doc_procesoActual'].value){\r\n this.subirArchivosRepositorios(\"procesoActual\",parseInt(this.idIniciativa));\r\n }\r\n this.notifier.notify(\r\n 'success',\r\n 'Iniciativa editada correctamente.'\r\n );\r\n this.botonCosteo=true;\r\n this.formProcesos.patchValue({\r\n id_iniciativa:form.id_iniciativa,\r\n id_proceso:form.id_proceso\r\n })\r\n //this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n else{\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar registrar la iniciativa. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n\r\n formarImpactos(impactosArray:Impactos[]) \r\n {\r\n for(let i in impactosArray)\r\n {\r\n let impacto=impactosArray[i].id_impacto;\r\n switch (impacto) \r\n {\r\n case 1:\r\n //this.checkSeleccionado=true;\r\n this.inContibucionGobierno=true;\r\n this.nuevoSisFormDatos.patchValue({\r\n contribucionProgGobierno:impactosArray[i].detalle_iniciativaImpacto\r\n })\r\n break;\r\n case 2:\r\n this.inContibucionOperativo=true;\r\n this.nuevoSisFormDatos.patchValue({\r\n contribucionProgOperativo:impactosArray[i].detalle_iniciativaImpacto\r\n })\r\n break;\r\n case 3:\r\n this.checkSeleccionado=true;\r\n this.inImpactoProcesos=true;\r\n this.nuevoSisFormDatos.patchValue({\r\n impactoProcesos:impactosArray[i].detalle_iniciativaImpacto\r\n })\r\n break;\r\n case 4:\r\n //this.checkSeleccionado=true;\r\n this.inMejorarServicioCiudadania=true;\r\n this.nuevoSisFormDatos.patchValue({\r\n mejoraServicio:impactosArray[i].detalle_iniciativaImpacto\r\n })\r\n break;\r\n case 5:\r\n //this.checkSeleccionado=true;\r\n this.inCumplimientoLey=true;\r\n this.nuevoSisFormDatos.patchValue({\r\n cumplimientoLey:impactosArray[i].detalle_iniciativaImpacto\r\n })\r\n break;\r\n case 6:\r\n //this.checkSeleccionado=true;\r\n this.inModernizacionDependencia=true;\r\n this.nuevoSisFormDatos.patchValue({\r\n contribucionModernizacion:impactosArray[i].detalle_iniciativaImpacto\r\n })\r\n break;\r\n }\r\n }\r\n}\r\n\r\n\r\n //Método para descargar archivos\r\n descargarArchivo(archivo:string)\r\n {\r\n this.dataService.descargarArchivo(parseInt(this.idIniciativa),archivo).subscribe(res => {\r\n // Este es necesario para crear un objeto blob con el tipo de archivo\r\n // puesto explicitamente, de lo contrario solo Chrome funcionara correctamente\r\n let newBlob = new Blob([res], { type: this.obtenerTipoArchivo(archivo) });\r\n // IE no permite objetos blob directamente en el atributo href de un link\r\n // en su lugar hay que usar msSaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = archivo;\r\n // Esta linea es necesaria desde que link.click() ya no funciona en las ultimas versiones de firefox\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n\r\n });\r\n\r\n }\r\n\r\n\r\n private obtenerTipoArchivo(archivo: string): string {\r\n let tipoArchivo: string;\r\n let extencion: string = archivo.split('.').pop();\r\n\r\n switch (extencion) {\r\n case 'pdf':\r\n tipoArchivo = 'application/pdf';\r\n break;\r\n case 'xls':\r\n tipoArchivo = 'application/vnd.ms-excel';\r\n break;\r\n case 'xlsx':\r\n tipoArchivo = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';\r\n break;\r\n case 'csv':\r\n tipoArchivo = 'application/csv';\r\n break;\r\n case 'zip':\r\n tipoArchivo = 'application/zip';\r\n break;\r\n case 'rar':\r\n tipoArchivo = 'application/x-rar-compressed';\r\n break;\r\n\r\n default:\r\n tipoArchivo = 'text/plain';\r\n break;\r\n }\r\n return tipoArchivo;\r\n }\r\n\r\n\r\n cancelar()\r\n {\r\n this.mostrarFormConsultar==false;\r\n //this.nuevoSisFormDatos.reset();\r\n this.router.navigate(['./mis-iniciativas'])\r\n }\r\n\r\n //Abrir modal para agregar los procedimientos del proceso ASIS\r\n abrirModalCosteoConsulta()\r\n { \r\n const dialogRef = this.dialog.open(ModalCosteoConsultaComponent,{data:{id_iniciativa:this.idIniciativa,id_proceso:this.idProceso},disableClose:false, height: '580px',\r\n width: '800px'});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n console.log(\"Error\");\r\n }\r\n else{\r\n //Mapeamos el idProceso y tipo\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\nenviarIniciativa(form:any)\r\n{\r\n this.dataService.enviarIniciativa(form.id_iniciativa,this.emailUser,this.idRolSeleccionado).subscribe( \r\n data => {\r\n if (data['alert']==0)\r\n {\r\n this.notifier.notify('success', 'Iniciativa enviada correctamente Folio:'+ data['objData']);\r\n this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n //this.notifier.notify('success', 'Nueva iniciativa para cambios en funcionalidades editada correctamente.');\r\n }\r\n else{\r\n this.validacionCondicional(form);\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n }\r\n );\r\n}\r\n\r\nprivate validacionCondicional(form:any) \r\n{\r\n this.archivoProcesoActualRequerido = false;\r\n this.archivoProcesoPropuesto = false;\r\n this.nuevoSisFormDatos = this._formBuilder.group({\r\n id_iniciativa: [form.id_iniciativa],\r\n id_proceso: [form.id_proceso],\r\n folio_iniciativa:[form.folio_iniciativa],\r\n fechaEnvio_iniciativa:[form.fechaEnvio_iniciativa],\r\n id_tipoIniciativa: [form.id_tipoIniciativa],\r\n id_area : [form.id_area],\r\n id_aplicativo: [form.id_aplicativo],\r\n id_estatusIniciativa: [form.id_estatusIniciativa],\r\n\r\n nombre_iniciativa: [form.nombre_iniciativa, Validators.required],\r\n nombre_solicitante: [form.nombre_solicitante, Validators.required],\r\n email_solicitante: [form.email_solicitante, Validators.required],\r\n telefono_solicitante: [form.telefono_solicitante, Validators.required],\r\n extencion_solicitante: [form.extencion_solicitante],\r\n fechaTermino_iniciativa: [form.fechaTermino_iniciativa, Validators.required],\r\n justificacionFecha_iniciativa: [form.justificacionFecha_iniciativa, Validators.required],\r\n numeroTransacciones_iniciativa: [form.numeroTransacciones_iniciativa, Validators.required], \r\n solucionPropuesta_iniciativa: [form.solucionPropuesta_iniciativa, Validators.required],\r\n beneficiariosDirectos_iniciativa: [form.beneficiariosDirectos_iniciativa, Validators.required],\r\n beneficiariosImplementacion_iniciativa:[form.beneficiariosImplementacion_iniciativa, Validators.required],\r\n nombreProceso_iniciativa: [form.nombreProceso_iniciativa, Validators.required],\r\n doc_procesoActual: [form.doc_procesoActual, Validators.required],\r\n doc_procesoPropuesto: [form.doc_procesoPropuesto, Validators.required],\r\n docAnexos_iniciativas: [form.docAnexos_iniciativas, Validators.required],\r\n problematica_iniciativa: [form.problematica_iniciativa, Validators.required],\r\n id_dirgralSapSolicitante:[form.id_dirgralSapSolicitante, Validators.required],\r\n id_areaSapSolicitante:[form.id_areaSapSolicitante, Validators.required],\r\n //dirGral_solicitante:[form.dirGral_solicitante, Validators.required],\r\n //direccionArea_solicitante: [form.direccionArea_solicitante, Validators.required],\r\n\r\n json_impactoimp: new FormGroup(\r\n {},\r\n almenosUnImpactoValidator()\r\n ),\r\n \r\n //Impactos\r\n contribucionProgGobierno: [form.contribucionProgGobierno],\r\n contribucionProgOperativo: [form.contribucionProgOperativo],\r\n impactoProcesos: [form.impactoProcesos],\r\n mejoraServicio: [form.mejoraServicio],\r\n cumplimientoLey:[form.cumplimientoLey],\r\n contribucionModernizacion: [form.contribucionModernizacion],\r\n });\r\n const tempImpactos = form.json_impacto;\r\n if (tempImpactos) \r\n {\r\n tempImpactos.split('|').forEach((element) => {\r\n let j:Impactos[]=JSON.parse(element)\r\n this.arrayImpactosConsulta=j;\r\n this.formarImpactos(j);\r\n });\r\n }\r\n else{}\r\n\r\n\r\n if(!this.formArchivos.controls['doc_procesoActual'].value)\r\n {\r\n this.archivoProcesoActualRequerido = true;\r\n }\r\n if(!this.formArchivos.controls['doc_procesoPropuesto'].value)\r\n {\r\n this.archivoProcesoPropuesto = true;\r\n } \r\n\r\n /*Si se edita\r\n if(this.mostrarFormEditar)\r\n {\r\n if(!form.doc_procesoPropuesto)\r\n {\r\n this.archivoProcesoActualRequerido = true;\r\n }\r\n if(!form.doc_procesoPropuesto)\r\n {\r\n this.archivoProcesoPropuesto = true;\r\n }\r\n\r\n }\r\n //Agregar\r\n else\r\n {\r\n if(!this.formArchivos.controls['doc_procesoActual'].value)\r\n {\r\n this.archivoProcesoActualRequerido = true;\r\n }\r\n if(!this.formArchivos.controls['doc_procesoPropuesto'].value)\r\n {\r\n this.archivoProcesoPropuesto = true;\r\n } \r\n\r\n }*/\r\n \r\n}\r\n\r\n//Método para guardar/modificar proceso\r\nguardarCosteo(form:any)\r\n{\r\n //Mapeamos el id de la iniciativa\r\n form.id_iniciativa=this.idIniciativa;\r\n //Agregamos los valores de la lista de procedimientosToBe a la lista de procedimientos\r\n if(this.tablaProcedimientosToBe.length >= 1)\r\n {\r\n for(let numero of this.tablaProcedimientosToBe)\r\n {\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n this.dataService.insertarUpdateProceso(this.formProcesos.value,this.tablaProcedimientos).subscribe(res=>{\r\n if (res['errorMessage']) \r\n {\r\n this.notifier.notify('error',\r\n 'Ha ocurrido un error al intentar guardar el costeo. Revisa tu conexión de red en inténtalo de nuevo más tarde.');\r\n } \r\n else{\r\n //Mapeamos el proceso\r\n this.idProceso=res['objData']['proceso']['id_proceso'];\r\n this.notifier.notify('success', 'Costeo de iniciativa registrado correctamente.');\r\n this.tabuladores=res['objData']['listIdProceso'];\r\n //Recargamos el tab modificado\r\n this.navegarTab(this.tabSeleccionado);\r\n this.botonEnviar=true;\r\n //this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n });\r\n}\r\n\r\n //Abrir modal para agregar los procedimientos del proceso ASIS\r\n abrirModalProcedimientoAsIs()\r\n { \r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{titulo:`Procedimiento Actual (As-Is)`},disableClose:true, height: '580px',\r\n width: '800px'});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.formProcesos.controls.id_proceso.value;\r\n data['tipoProceso_procesoDetalle']=0;\r\n this.tablaProcedimientos.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n\r\n //Abrir modal para agregar los procedimientos del proceso ASIS\r\n abrirModalProcedimientoToBe()\r\n { \r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{titulo:`Procedimiento Propuesto (To-Be)`},disableClose:true, height: '580px',\r\n width: '800px'});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.formProcesos.controls.id_proceso.value;\r\n data['tipoProceso_procesoDetalle']=1;\r\n this.tablaProcedimientosToBe.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n//Método para editar el modal del proceso AsIs\r\neditarProcedimientoAsIs(id:number)\r\n{\r\n //Convertimos el valor de la tabla en una cadena JSON y la enviamos al modal\r\n let cadena=JSON.stringify(this.tablaProcedimientos[id]);\r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{data:`${cadena}`, titulo:`Procedimiento Actual (As-Is)`},disableClose:true, height: '580px',\r\n width: '800px'},);\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n this.tablaProcedimientos[id]=data;\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.formProcesos.controls.id_proceso.value;\r\n data['tipoProceso_procesoDetalle']=0;\r\n //this.tablaProcedimientos.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n\r\n//Método para editar el modal del proceso AsIs\r\neditarProcedimientoToBe(id:number)\r\n{\r\n //Convertimos el valor de la tabla en una cadena JSON y la enviamos al modal\r\n let cadena=JSON.stringify(this.tablaProcedimientosToBe[id]);\r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{data:`${cadena}`, titulo:`Procedimiento Propuesto (To-Be)`},disableClose:true, height: '580px',\r\n width: '800px'},);\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n this.tablaProcedimientosToBe[id]=data;\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.formProcesos.controls.id_proceso.value;\r\n data['tipoProceso_procesoDetalle']=1;\r\n //this.tablaProcedimientos.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n //Eliminar los registros del proceso\r\n eliminarProcedimientoAsIs(id:number)\r\n {\r\n this.tablaProcedimientos.splice(id,1);\r\n }\r\n\r\n eliminarProcedimientoToBe(id:number)\r\n {\r\n this.tablaProcedimientosToBe.splice(id,1);\r\n }\r\n\r\n //Método para abrir el cuadro de confirmación al eliminar un registro\r\nopenDialogConfirmaAsIs(id:number)\r\n{\r\n let dialogRef = this.dialog.open(ConfirmComponent,{data: `¿Desea eliminar el registro?`,disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n //Eliminamos el registro de la tabla\r\n this.eliminarProcedimientoAsIs(id);\r\n }\r\n });\r\n}\r\n\r\n\r\n//Método para abrir el cuadro de confirmación al eliminar un registro\r\nopenDialogConfirmaToBe(id:number)\r\n{\r\n let dialogRef = this.dialog.open(ConfirmComponent,{data: `¿Desea eliminar el registro?`,disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n //Eliminamos el registro de la tabla\r\n this.eliminarProcedimientoToBe(id);\r\n }\r\n });\r\n}\r\n\r\ndescargarArchivoEjemplo()\r\n{\r\n \r\n this.dataService.descargarArchivoCosteo().subscribe(res => {\r\n // Este es necesario para crear un objeto blob con el tipo de archivo\r\n // puesto explicitamente, de lo contrario solo Chrome funcionara correctamente\r\n let newBlob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n // IE no permite objetos blob directamente en el atributo href de un link\r\n // en su lugar hay que usar msSaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = \"ejemploCosteo\";\r\n // Esta linea es necesaria desde que link.click() ya no funciona en las ultimas versiones de firefox\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n });\r\n\r\n}\r\n\r\n\r\n//Método para leer y mapear el archivo del costeo\r\nonFileChangeCosteo(event: any) \r\n{\r\n this.loadingGeneral=true;\r\n if (event.target.files && event.target.files.length) \r\n {\r\n const [file] = event.target.files;\r\n this.dataService.subirArchivoCosteo(file,parseInt(this.idIniciativa),0).subscribe( \r\n (data: string) => {\r\n if (data['objData']['proceso']) \r\n {\r\n let infoProceso:Proceso=data['objData']['proceso'];\r\n this.formProcesos.patchValue({\r\n id_proceso:data['objData']['listIdProceso'][0],\r\n // id_proceso:infoProceso.id_proceso,\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso\r\n })\r\n \r\n //Si ya tengo procesos guardados, agrego los nuevos\r\n if(this.tabuladores.length > 0)\r\n {\r\n this.valorTaps=this.tabs.length;\r\n // this.tabSeleccionado=data['objData']['listIdProceso'].length;\r\n for(let t of data['objData']['listIdProceso'])\r\n {\r\n this.tabuladores.push(t);\r\n //Agregamos los detalles del proceso \r\n if(data['objData']['listDetalleProcesos'] && data['objData']['listDetalleProcesos']['id_proceso']==t)\r\n {\r\n //Agregamos en la lista los procedimientos\r\n this.tabla= data['objData']['listDetalleProcesos'];\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n else{\r\n this.tabuladores=data['objData']['listIdProceso'];\r\n if(data['objData']['listDetalleProcesos'])\r\n {\r\n //Agregamos en la lista los procedimientos\r\n this.tabla= data['objData']['listDetalleProcesos'];\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n }\r\n }\r\n \r\n /* if(data['objData']['listDetalleProcesos'])\r\n {\r\n //Agregamos en la lista los procedimientos\r\n this.tabla= data['objData']['listDetalleProcesos'];\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n }*/\r\n\r\n //Cierre del if de la lista\r\n for(let numero of this.tabuladores)\r\n {\r\n this.tabs.push(`Procedimiento ${this.tabs.length + 1}`); \r\n }\r\n if(this.valorTaps!=0)\r\n {\r\n this.tabs.splice(this.tabs.length-this.valorTaps, this.valorTaps);\r\n\r\n }\r\n else{\r\n //Eliminamos el ultmo tap\r\n this.removeTab(this.tabs.length-1);\r\n }\r\n //this.idProceso=data['objData']['proceso']['id_proceso'];\r\n //Se manda mensaje de guardado\r\n this.loadingGeneral=false;\r\n this.notifier.notify('success', 'Costeo de iniciativa registrado correctamente.');\r\n\r\n }\r\n else{\r\n let mensaje=data['errorMessage'];\r\n this.notifier.notify('error',mensaje);\r\n }\r\n },\r\n error => {\r\n console.error(error); \r\n });\r\n\r\n //Resetear el formcontrol\r\n this.formProcesos.controls['archivo_costeo'].reset();\r\n\r\n\r\n }//Cierre del if\r\n\r\n}//cierre del método para subir archivo\r\n\r\n}//Cierre de la clase\r\n\r\n\r\n","\r\nimport { Component, OnInit,Input,ElementRef,ViewChild } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators,NgForm } from '@angular/forms';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { Usuario } from 'src/app/interfaces/interfaces';\r\nimport {Router} from '@angular/router';\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-usuario-edicion',\r\n templateUrl: './modal-usuario-edicion.component.html',\r\n styleUrls: ['./modal-usuario-edicion.component.scss']\r\n})\r\nexport class ModalUsuarioEdicionComponent implements OnInit {\r\n formUsuariosEditar: FormGroup;\r\n rolesUsuario: { id_Rol: number; nombre_rol: string; }[];\r\n rolesSeleccionados: string[] = [];\r\n @Input() emailUsuario: string;\r\n //Variable que el usuario vendra de afuera\r\n @Input() usuario: Usuario;\r\n @Input() email_usuario: string;\r\n mostrarFormularioEditar: boolean = false;\r\n\r\n\r\n @ViewChild('contenedorRoles', { static: true }) checks: ElementRef;\r\n usuarios:any;\r\n\r\n get fce() { // acceso a los controles de las form para editar usuarios\r\n return this.formUsuariosEditar.controls;\r\n }\r\n\r\n get fe() { // acceso a la form para editar usuarios\r\n return this.formUsuariosEditar;\r\n }\r\n\r\n constructor(\r\n private dataService: DataService,\r\n private notifier: NotifierService,\r\n private router:Router\r\n ) { }\r\n\r\n ngOnInit() {\r\n this.formUsuariosEditar = new FormGroup({\r\n email_usuario: new FormControl(''),\r\n Roles: new FormControl('', [Validators.required]),\r\n nombre_usuario: new FormControl('', [Validators.required]),\r\n dep_usuario: new FormControl('', [Validators.required]),\r\n direccion_areaUsuario: new FormControl('', [Validators.required]),\r\n vip_usuario: new FormControl(0, [Validators.required]),\r\n puesto_usuario: new FormControl('', [Validators.required]),\r\n estatus_usuario: new FormControl(1, [Validators.required]),\r\n telefono_usuario: new FormControl(''),\r\n extension_usuario: new FormControl(''),\r\n usuarioModifica: new FormControl(this.emailUsuario)\r\n });\r\n\r\n this.cargarInfoUsuarios();\r\n }\r\n\r\n\r\n ngAfterViewInit()\r\n {\r\n let usr = Array.from(this.checks.nativeElement.children);\r\n usr.forEach((rol: any) => {\r\n if (rol.children[0].checked) {\r\n rol.children[0].click();\r\n }\r\n }); \r\n this.usuarios=usr;\r\n }\r\n\r\n\r\n verUsuario()\r\n {\r\n this.mostrarFormularioEditar=true;\r\n this.router.navigate(['./update-usuario', this.emailUsuario])\r\n // this.cargarInfoUsuarios();\r\n\r\n }\r\n\r\n agregarQuitarRol(rol: string) {\r\n let index = this.rolesSeleccionados.indexOf(rol);\r\n if (index !== -1) {\r\n this.rolesSeleccionados = this.rolesSeleccionados.filter(el => el !== rol);\r\n } else {\r\n this.rolesSeleccionados.push(rol);\r\n }\r\n this.formUsuariosEditar.patchValue({\r\n Roles: this.rolesSeleccionados.toString()\r\n });\r\n }\r\n\r\n\r\n //Funcion para cargar la informacion del usuario\r\n cargarInfoUsuarios() \r\n {\r\n let cuenta=this.email_usuario;\r\n\r\n if (cuenta !== '') {\r\n this.dataService.obtenerInfoUsuario(cuenta).subscribe(res => {\r\n if (res['errorMessage']) {\r\n this.notifier.notify('error', 'Ha ocurrido un error al intentar obtener la información del usuario. Revisa tu conexión de red e inténtalo nuevamente más tarde.');\r\n } else {\r\n let infoUser: Usuario = res['objData'];\r\n \r\n this.formUsuariosEditar.patchValue({\r\n Roles: infoUser.roles,\r\n nombre_usuario: infoUser.nombre_usuario,\r\n puesto_usuario: infoUser.puesto_usuario,\r\n dep_usuario: infoUser.dep_usuario,\r\n vip_usuario: infoUser.vip_usuario,\r\n estatus_usuario: infoUser.estatus_usuario,\r\n direccion_areaUsuario:infoUser.direccion_areaUsuario\r\n });\r\n /*let usr = Array.from(this.checks.nativeElement.children);\r\n usr.forEach((rol: any) => {\r\n if (rol.children[0].checked) {\r\n rol.children[0].click();\r\n }\r\n }); */\r\n\r\n this.usuarios.forEach((rol: any) => {\r\n if (infoUser.roles.split(',').findIndex(x => x === rol.children[0].id) !== -1) {\r\n rol.children[0].click();\r\n }\r\n });\r\n\r\n }\r\n });\r\n } else {\r\n this.notifier.notify('error', 'Selecciona una cuenta valida.');\r\n }\r\n }\r\n\r\n\r\n editarUsuario() {\r\n this.dataService.editarUsuario(this.formUsuariosEditar.value).subscribe(res => {\r\n if (res['errorMessage']) {\r\n this.notifier.notify('error',\r\n 'Ha ocurrido un error al intentar editar el usuario. Revisa tu conexión de red en inténtalo de nuevo más tarde.');\r\n } else {\r\n this.notifier.notify('success', 'Usuario editado correctamente.');\r\n this.formUsuariosEditar.reset({ opcion: 2, vip: 0, estatus: 1 });\r\n //this.cargarUsuarios();\r\n //this.cargarSiguientes();\r\n }\r\n });\r\n }\r\n\r\n}\r\n","export default \"\\r\\n\\r\\ntable {\\r\\n width: 100%;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInByaW9yaXphY2lvbi1pbmljaWF0aXZhcy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUE7RUFDRSxXQUFXO0FBQ2IiLCJmaWxlIjoicHJpb3JpemFjaW9uLWluaWNpYXRpdmFzLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuXHJcbnRhYmxlIHtcclxuICB3aWR0aDogMTAwJTtcclxufSJdfQ== */\";","export default \".loading {\\n -webkit-animation: color-change 5s infinite;\\n animation: color-change 5s infinite;\\n}\\n\\n@-webkit-keyframes color-change {\\n 0% {\\n color: #c6c6a9;\\n }\\n 10% {\\n color: #0159bc;\\n }\\n 80% {\\n color: #00a985;\\n }\\n 100% {\\n color: #c6c6a9;\\n }\\n}\\n\\n@keyframes color-change {\\n 0% {\\n color: #c6c6a9;\\n }\\n 20% {\\n color: #0159bc;\\n }\\n 80% {\\n color: #00a985;\\n }\\n 100% {\\n color: #c6c6a9;\\n }\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFwuLlxcbG9hZGluZy5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLDJDQUFBO0VBSUEsbUNBQUE7QUFDSjs7QUFHQTtFQUNJO0lBQUssY0FBQTtFQUNQO0VBQUU7SUFBTSxjQUFBO0VBR1I7RUFGRTtJQUFNLGNBQUE7RUFLUjtFQUpFO0lBQU8sY0FBQTtFQU9UO0FBQ0Y7O0FBWUE7RUFDSTtJQUFLLGNBQUE7RUFpQ1A7RUFoQ0U7SUFBTSxjQUFBO0VBbUNSO0VBbENFO0lBQU0sY0FBQTtFQXFDUjtFQXBDRTtJQUFPLGNBQUE7RUF1Q1Q7QUFDRiIsImZpbGUiOiJsb2FkaW5nLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmxvYWRpbmd7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogY29sb3ItY2hhbmdlIDVzIGluZmluaXRlO1xyXG4gICAgLW1vei1hbmltYXRpb246IGNvbG9yLWNoYW5nZSA1cyBpbmZpbml0ZTtcclxuICAgIC1vLWFuaW1hdGlvbjogY29sb3ItY2hhbmdlIDVzIGluZmluaXRlO1xyXG4gICAgLW1zLWFuaW1hdGlvbjogY29sb3ItY2hhbmdlIDVzIGluZmluaXRlO1xyXG4gICAgYW5pbWF0aW9uOiBjb2xvci1jaGFuZ2UgNXMgaW5maW5pdGU7XHJcbn1cclxuXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgY29sb3ItY2hhbmdlIHtcclxuICAgIDAlIHsgY29sb3I6ICNjNmM2YTk7IH1cclxuICAgIDEwJSB7IGNvbG9yOiAjMDE1OWJjOyB9XHJcbiAgICA4MCUgeyBjb2xvcjogIzAwYTk4NTsgfVxyXG4gICAgMTAwJSB7IGNvbG9yOiAjYzZjNmE5OyB9XHJcbn1cclxuQC1tb3ota2V5ZnJhbWVzIGNvbG9yLWNoYW5nZSB7XHJcbiAgICAwJSB7IGNvbG9yOiAjYzZjNmE5OyB9XHJcbiAgICAyMCUgeyBjb2xvcjogIzAxNTliYzsgfVxyXG4gICAgODAlIHsgY29sb3I6ICMwMGE5ODU7IH1cclxuICAgIDEwMCUgeyBjb2xvcjogI2M2YzZhOTsgfVxyXG59XHJcbkAtbXMta2V5ZnJhbWVzIGNvbG9yLWNoYW5nZSB7XHJcbiAgICAwJSB7IGNvbG9yOiAjYzZjNmE5OyB9XHJcbiAgICAyMCUgeyBjb2xvcjogIzAxNTliYzsgfVxyXG4gICAgODAlIHsgY29sb3I6ICMwMGE5ODU7IH1cclxuICAgIDEwMCUgeyBjb2xvcjogI2M2YzZhOTsgfVxyXG59XHJcbkAtby1rZXlmcmFtZXMgY29sb3ItY2hhbmdlIHtcclxuICAgIDAlIHsgY29sb3I6ICNjNmM2YTk7IH1cclxuICAgIDIwJSB7IGNvbG9yOiAjMDE1OWJjOyB9XHJcbiAgICA4MCUgeyBjb2xvcjogIzAwYTk4NTsgfVxyXG4gICAgMTAwJSB7IGNvbG9yOiAjYzZjNmE5OyB9XHJcbn1cclxuQGtleWZyYW1lcyBjb2xvci1jaGFuZ2Uge1xyXG4gICAgMCUgeyBjb2xvcjogI2M2YzZhOTsgfVxyXG4gICAgMjAlIHsgY29sb3I6ICMwMTU5YmM7IH1cclxuICAgIDgwJSB7IGNvbG9yOiAjMDBhOTg1OyB9XHJcbiAgICAxMDAlIHsgY29sb3I6ICNjNmM2YTk7IH1cclxufSJdfQ== */\";","import { Component, OnInit, Inject, Optional, ViewChild, ElementRef, SimpleChanges, ɵConsole } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-confirm-dialog',\r\n templateUrl: 'confirm.component.html',\r\n styleUrls: [ 'confirmacion.component.scss']\r\n})\r\nexport class ConfirmDialogComponent implements OnInit {\r\ndataa: any;\r\nisButtonPressed: boolean = false;\r\n\r\n constructor(public dialogRef: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any) { }\r\n\r\n\r\n ngOnInit() {\r\n }\r\n onNoClick(): void {\r\n this.dialogRef.close(); // Devuelve true si confirma\r\n }\r\n}\r\n","export default \"\\r\\n

\\r\\n close\\r\\n {{datos['titulo']}}

\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n Rol\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Puesto funcional\\r\\n \\r\\n
\\r\\n
\\r\\n Tiempo de operación (min)\\r\\n \\r\\n
\\r\\n
\\r\\n Tiempo de espera\\r\\n \\r\\n
\\r\\n
\\r\\n Nivel tabular\\r\\n \\r\\n
\\r\\n
\\r\\n Número de participantes\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\";","export default \"\";","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJtb2RhbC11c3VhcmlvLWVkaWNpb24uY29tcG9uZW50LnNjc3MifQ== */\";","import { Component, ViewChildren, QueryList, ElementRef, OnInit } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\ninterface Formato {\r\n label: string;\r\n archivo: File | null;\r\n tipoIniciativa: number | null; // Asociar el tipo de iniciativa\r\n}\r\n\r\n@Component({\r\n selector: 'app-formatos-apoyo',\r\n templateUrl: './formatos.component.html',\r\n styleUrls: ['./formatos.component.css']\r\n})\r\nexport class FormatosApoyoComponent implements OnInit {\r\n formatos: Formato[] = [\r\n { label: 'Nuevo sistema', archivo: null, tipoIniciativa: 1 },\r\n { label: 'Cambio con cambio a proceso', archivo: null, tipoIniciativa: 2 },\r\n { label: 'Cambio sin cambio a proceso', archivo: null, tipoIniciativa: 3 }\r\n ];\r\n\r\n emailUsuario: string; // Email del usuario logueado\r\n loading: boolean = false;\r\n\r\n urlAPI2: string = environment.UrlApiV2;\r\n\r\n @ViewChildren('fileInputs') fileInputs!: QueryList;\r\n\r\n constructor(private http: HttpClient, private autService: AuthService) {\r\n this.autService.user.subscribe((user: string) => {\r\n this.emailUsuario = user;\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n onFileSelected(event: any, index: number) {\r\n const file = event.target.files[0];\r\n this.formatos[index].archivo = file;\r\n }\r\n\r\n abrirSelectorArchivo(index: number) {\r\n const fileInput = this.fileInputs.toArray()[index];\r\n fileInput.nativeElement.click();\r\n }\r\n\r\n guardarArchivo(index: number) {\r\n const archivo = this.formatos[index].archivo;\r\n const tipoIniciativa = this.formatos[index].tipoIniciativa;\r\n\r\n if (archivo) {\r\n const formData = new FormData();\r\n formData.append('contenido', archivo);\r\n formData.append('email', this.emailUsuario);\r\n formData.append('tipoIniciativa', tipoIniciativa?.toString() || '');\r\n\r\n this.loading = true; // Empieza el indicador de carga\r\n\r\n this.http.post(`${this.urlAPI2}Archivo/subirFormatoAyuda`, formData).subscribe(\r\n res => {\r\n alert('Archivo guardado correctamente.');\r\n this.formatos[index].archivo = null; // Limpia el archivo después de guardarlo\r\n },\r\n err => {\r\n console.error(err);\r\n alert('Error al subir el archivo. Por favor, intenta nuevamente.');\r\n },\r\n () => {\r\n this.loading = false; // Detiene el indicador de carga después de completar\r\n }\r\n );\r\n } else {\r\n alert('No se ha seleccionado ningún archivo.');\r\n }\r\n }\r\n\r\n cancelarArchivo(index: number) {\r\n this.formatos[index].archivo = null;\r\n const fileInput = this.fileInputs.toArray()[index];\r\n fileInput.nativeElement.value = ''; // Limpia el campo de entrada de archivo\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-loading',\r\n templateUrl: './loading.component.html',\r\n styleUrls: ['./loading.component.scss']\r\n})\r\nexport class LoadingComponent implements OnInit {\r\n retrasoDeCarga: boolean;\r\n @Input() tamano: number = 1; // 1 = regular | 2 = pequeño\r\n constructor() {\r\n this.retrasoDeCarga = false;\r\n }\r\n\r\n ngOnInit() {\r\n setTimeout(() => {\r\n this.retrasoDeCarga = true;\r\n }, 20000);\r\n }\r\n\r\n}\r\n","export default \"\\r\\n
\\r\\n
\\r\\n

Enlaces

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Seleccione\\r\\n \\r\\n {{enl.nombre_usuario}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\";","import { Component, OnInit, Inject, Optional, ViewChild, ElementRef, SimpleChanges, ɵConsole } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-confirmacion',\r\n templateUrl: './confirmacion.component.html',\r\n styleUrls: ['./confirmacion.component.scss']\r\n})\r\nexport class ConfirmacionComponent implements OnInit {\r\n\r\n constructor(public dialogRefEliminar: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any) { }\r\n\r\n ngOnInit() {\r\n }\r\n onNoClick(): void {\r\n this.dialogRefEliminar.close();\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { Paginado } from 'src/app/models/paginado';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport {CdkDragDrop, moveItemInArray,CdkDropList} from '@angular/cdk/drag-drop';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\n\r\n\r\n@Component({\r\n selector: 'app-priorizacion-iniciativas',\r\n templateUrl: './priorizacion-iniciativas.component.html',\r\n styleUrls: ['./priorizacion-iniciativas.component.css']\r\n})\r\n\r\n\r\nexport class PriorizacionIniciativasComponent implements OnInit {\r\n \r\n\r\n emailUser: string;\r\n paginado: Paginado;\r\n\r\n displayedColumns: string[] = ['position', 'Folio', 'Sistema', 'Tipo','Solicitante','Fecha','Estatus'];\r\n dataSource:any;\r\n\r\n\r\n constructor(private dataService: DataService,\r\n private authService: AuthService,\r\n private notifier: NotifierService) { }\r\n\r\n ngOnInit(): void {\r\n\r\n this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n //return this.emailUser;\r\n\r\n this.paginado = new Paginado();\r\n this.paginado.numeroPagina = 1;\r\n this.paginado.email=this.emailUser;\r\n this.paginado.fechaInicio=\"\";\r\n this.paginado.fechaFin=\"\";\r\n this.paginado.termino=\"\";\r\n //Cargamos las iniciativas \r\n this.verDetallesIniciativa(this.paginado);\r\n });\r\n }\r\n\r\n verDetallesIniciativa(paginado:Paginado) \r\n {\r\n this.dataService.obtenerIniciativasPriorizacion(paginado.email,paginado.rolUserlogin).subscribe(\r\n data => {\r\n this.dataSource = new MatTableDataSource(data['data']) ;\r\n //this.dataSource = data['data'];\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Error al intentar obtener la información de la iniciativa. Verifica tu conexión de red.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n drop(event: CdkDragDrop) {\r\n moveItemInArray(this.dataSource, event.previousIndex, event.currentIndex);\r\n }\r\n\r\n}//Cierre de clase\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJyZXBvcnRlcy5jb21wb25lbnQuY3NzIn0= */\";","export default \"\\r\\n.table{\\r\\n table-layout: fixed;\\r\\n width: 100%;\\r\\n}\\r\\n\\r\\nth, td {\\r\\n word-wrap: break-word;\\r\\n}\\r\\n\\r\\n.mat-grid-tile{\\r\\n width: 200px;\\r\\n font-size: medium;\\r\\n}\\r\\n\\r\\n.form-control{\\r\\n display: initial;\\r\\n width: 100%;\\r\\n \\r\\n}\\r\\n\\r\\n.textArea{\\r\\n display: initial;\\r\\n width: 100%;\\r\\n}\\r\\n\\r\\n.mat-form-field{\\r\\n width: 100%;\\r\\n}\\r\\n\\r\\n#url-type-styled-input:invalid {\\r\\n border-color: rgba(203,0,2,.8);\\r\\n box-shadow: inset 0 0.0625em 0.125em rgba(0,0,0,.2), 0 0 0.125em rgba(203,0,2,.8);\\r\\n }\\r\\n\\r\\n.mat-dialog-content{\\r\\n font-size: 14pt !important;\\r\\n font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;\\r\\n }\\r\\n\\r\\n.btn-success{\\r\\n font-size: 12pt !important;\\r\\n font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbmZpcm0tbGlzdGFkby10YWJsYS1pbmljaWF0aXZhcy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQTtJQUNJLG1CQUFtQjtJQUNuQixXQUFXO0FBQ2Y7O0FBRUE7SUFDSSxxQkFBcUI7QUFDekI7O0FBRUE7SUFDSSxZQUFZO0lBQ1osaUJBQWlCO0FBQ3JCOztBQUVBO0lBQ0ksZ0JBQWdCO0lBQ2hCLFdBQVc7O0FBRWY7O0FBRUE7SUFDSSxnQkFBZ0I7SUFDaEIsV0FBVztBQUNmOztBQUVBO0lBQ0ksV0FBVztBQUNmOztBQUVBO0lBQ0ksOEJBQThCO0lBQzlCLGlGQUFpRjtDQUNwRjs7QUFJRDtJQUNJLDBCQUEwQjtJQUMxQiw2RUFBNkU7RUFDL0U7O0FBRUE7SUFDRSwwQkFBMEI7SUFDMUIsNkVBQTZFO0VBQy9FIiwiZmlsZSI6ImNvbmZpcm0tbGlzdGFkby10YWJsYS1pbmljaWF0aXZhcy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbi50YWJsZXtcclxuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxudGgsIHRkIHtcclxuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxufVxyXG5cclxuLm1hdC1ncmlkLXRpbGV7XHJcbiAgICB3aWR0aDogMjAwcHg7XHJcbiAgICBmb250LXNpemU6IG1lZGl1bTtcclxufVxyXG5cclxuLmZvcm0tY29udHJvbHtcclxuICAgIGRpc3BsYXk6IGluaXRpYWw7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIFxyXG59XHJcblxyXG4udGV4dEFyZWF7XHJcbiAgICBkaXNwbGF5OiBpbml0aWFsO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5tYXQtZm9ybS1maWVsZHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4jdXJsLXR5cGUtc3R5bGVkLWlucHV0OmludmFsaWQge1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDIwMywwLDIsLjgpO1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwLjA2MjVlbSAwLjEyNWVtIHJnYmEoMCwwLDAsLjIpLCAwIDAgMC4xMjVlbSByZ2JhKDIwMywwLDIsLjgpO1xyXG4gfVxyXG5cclxuIFxyXG4gXHJcbi5tYXQtZGlhbG9nLWNvbnRlbnR7XHJcbiAgICBmb250LXNpemU6IDE0cHQgIWltcG9ydGFudDtcclxuICAgIGZvbnQtZmFtaWx5OiAnR2lsbCBTYW5zJywgJ0dpbGwgU2FucyBNVCcsIENhbGlicmksICdUcmVidWNoZXQgTVMnLCBzYW5zLXNlcmlmO1xyXG4gIH1cclxuICBcclxuICAuYnRuLXN1Y2Nlc3N7XHJcbiAgICBmb250LXNpemU6IDEycHQgIWltcG9ydGFudDtcclxuICAgIGZvbnQtZmFtaWx5OiAnR2lsbCBTYW5zJywgJ0dpbGwgU2FucyBNVCcsIENhbGlicmksICdUcmVidWNoZXQgTVMnLCBzYW5zLXNlcmlmO1xyXG4gIH0iXX0= */\";","import { Component, OnInit, Output, EventEmitter, Input,ViewChild,NgZone} from '@angular/core';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport { FormGroup, FormControl, Validators,FormArray } from '@angular/forms';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport { ModalProcedimientoComponent } from 'src/app/components/modal-procedimiento-asis/modal-procedimiento.component';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { Proceso, Procedimiento } from 'src/app/interfaces/interfaces';\r\nimport{ ConfirmComponent} from 'src/app/components/shared/confirm/confirm.component';\r\nimport { Router } from '@angular/router';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { NgIf } from '@angular/common';\r\n\r\n\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-costeo-proceso',\r\n templateUrl: './costeo-proceso.component.html',\r\n styleUrls: ['./costeo-proceso.component.css']\r\n})\r\nexport class CosteoProcesoComponent implements OnInit {\r\n costeoError = false;\r\n subiendoCosteo = false;\r\n formProcesos: FormGroup;\r\n formEdita:FormGroup;\r\n abrirModal= false;\r\n//Evento de salida para el boton de siguiente, ventana costeo\r\n@Output() botonAgregarProcedimiento = new EventEmitter();\r\n@Input('id_iniciatva') id_iniciativa:string;\r\n@Input('id_proceso') id_proceso:number;\r\n//Variable para cargar la tabla de procedimientos\r\ntablaProcedimientos: Procedimiento[]=[];\r\ntablaProcedimientosToBe: Procedimiento[]=[];\r\ntabla: Procedimiento[]=[];\r\n@ViewChild(ModalProcedimientoComponent) editUserComponent: ModalProcedimientoComponent;\r\n@Output() propagar = new EventEmitter();\r\n\r\n\r\n constructor(public dialog:MatDialog, \r\n private dataService: DataService,\r\n private notifier: NotifierService,\r\n private zone: NgZone,\r\n private router: Router,\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n if(this.id_proceso)\r\n {\r\n this.verDetallesProceso(this.id_proceso);\r\n this.recargarTabla(this.id_proceso);\r\n }\r\n\r\n this.formProcesos= new FormGroup({\r\n id_proceso:new FormControl(''),\r\n id_iniciativa: new FormControl(''),\r\n nombre_proceso: new FormControl(''),\r\n procedimiento_proceso: new FormControl(''),\r\n duenio_proceso: new FormControl(''),\r\n tramitesExternosASIS_proceso: new FormControl(''),\r\n tramitesInternosASIS_proceso: new FormControl(''),\r\n tramitesExternosTOBE_proceso: new FormControl(''),\r\n tramitesInternosTOBE_proceso: new FormControl(''),\r\n hojasImpresasASIS_proceso : new FormControl(''),\r\n hojasImpresasTOBE_proceso : new FormControl(''),\r\n kmRecorridosASIS_Proceso: new FormControl(''),\r\n kmRecorridosTOBE_Proceso: new FormControl('')\r\n\r\n })\r\n\r\n this.formEdita= new FormGroup({\r\n rol_procesoDetalle: new FormControl(''),\r\n puesto_procesoDetalle: new FormControl(''),\r\n tiempoOperacion_procesoDetalle: new FormControl(''),\r\n tiempoEspera_procesoDetalle: new FormControl(''),\r\n nivelTabular_procesoDetalle: new FormControl(''),\r\n numParticipantes_procesoDetalle: new FormControl(''),\r\n tipoProceso_procesoDetalle: new FormControl(''),\r\n id_proceso : new FormControl(''),\r\n })\r\n\r\n //Agregamos el valor de la iniciativa\r\n this.formProcesos.patchValue({\r\n id_iniciativa:this.id_iniciativa\r\n })\r\n\r\n }\r\n\r\n onSubmit()\r\n {\r\n //Verificar si las listas no vienen vacias\r\n if(this.tablaProcedimientos.length > 0 || this.tablaProcedimientosToBe.length > 0)\r\n {\r\n //Mandamos el proceso por si hubo modificaciones\r\n this.dataService.insertarUpdateProceso(this.formProcesos.value,[]).subscribe(res=>{\r\n if (res['errorMessage']) \r\n {\r\n this.notifier.notify('error',\r\n 'Ha ocurrido un error al intentar guardar la iniciativa. Revisa tu conexión de red en inténtalo de nuevo más tarde.');\r\n } \r\n else\r\n {\r\n //Mapeamos el proceso\r\n this.id_proceso=res['objData']['id_proceso'];\r\n //Agregamos los valores de la lista de procedimientosToBe a la lista de procedimientos\r\n if(this.tablaProcedimientosToBe.length >= 1)\r\n {\r\n for(let numero of this.tablaProcedimientosToBe)\r\n {\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n //Le agrego el nuevo id de proceso a la lista\r\n for(var i = 0; i < this.tablaProcedimientos.length; i++)\r\n {\r\n this.tablaProcedimientos[i].id_proceso=this.id_proceso;\r\n }\r\n //Enviamos a la base de datos la lista\r\n this.dataService.insertarUpdateListDetalleProceso(this.tablaProcedimientos).subscribe(res => {\r\n if (res['errorMessage']) {\r\n this.notifier.notify('error',\r\n 'Ha ocurrido un error al intentar guardar la iniciativa. Revisa tu conexión de red en inténtalo de nuevo más tarde.');\r\n } else {\r\n this.notifier.notify('success', 'Iniciativa registrada correctamente.');\r\n this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n });\r\n }\r\n });\r\n }\r\n //Si vienen vacias, solo enviamos el form\r\n else\r\n {\r\n this.dataService.insertarUpdateProceso(this.formProcesos.value,[]).subscribe(res=>{\r\n if (res['errorMessage']) \r\n {\r\n this.notifier.notify('error',\r\n 'Ha ocurrido un error al intentar guardar la iniciativa. Revisa tu conexión de red en inténtalo de nuevo más tarde.');\r\n } \r\n else{\r\n //Si la lista inicial si trae elementos lo borramos de la base\r\n if(this.tabla.length >=1 )\r\n {\r\n //Borramos de base\r\n this.dataService.deleteDetalleProcesoByProceso(this.id_proceso).subscribe(res=>{\r\n if(res['errorMessage']){\r\n this.notifier.notify('error','Ha ocurrido un error al intentar guardar la iniciativa. Revisa tu conexión de red en inténtalo de nuevo más tarde.'); \r\n }\r\n\r\n });\r\n\r\n }\r\n\r\n this.notifier.notify('success', 'Iniciativa registrada correctamente.');\r\n this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n });\r\n }//cierre del else \r\n\r\n\r\n\r\n \r\n }//cierre del método\r\n\r\n //Método para editar el modal del proceso AsIs\r\n editarProcedimientoAsIs(id:number)\r\n {\r\n //Convertimos el valor de la tabla en una cadena JSON y la enviamos al modal\r\n let cadena=JSON.stringify(this.tablaProcedimientos[id]);\r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{data:`${cadena}`, titulo:`Procedimiento Actual (As-Is)`},disableClose:true, height: '580px',\r\n width: '800px'},);\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n this.tablaProcedimientos[id]=data;\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.id_proceso;\r\n data['tipoProceso_procesoDetalle']=0;\r\n //this.tablaProcedimientos.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n }\r\n\r\n\r\n //Método para editar el modal del proceso AsIs\r\n editarProcedimientoToBe(id:number)\r\n {\r\n //Convertimos el valor de la tabla en una cadena JSON y la enviamos al modal\r\n let cadena=JSON.stringify(this.tablaProcedimientosToBe[id]);\r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{data:`${cadena}`, titulo:`Procedimiento Propuesto (To-Be)`},disableClose:true, height: '580px',\r\n width: '800px'},);\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n this.tablaProcedimientosToBe[id]=data;\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.id_proceso;\r\n data['tipoProceso_procesoDetalle']=1;\r\n //this.tablaProcedimientos.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n }\r\n\r\n //Eliminar los registros del proceso\r\n eliminarProcedimientoAsIs(id:number)\r\n {\r\n this.tablaProcedimientos.splice(id,1);\r\n }\r\n\r\n eliminarProcedimientoToBe(id:number)\r\n {\r\n this.tablaProcedimientosToBe.splice(id,1);\r\n }\r\n\r\n //Abrir modal para agregar los procedimientos del proceso ASIS\r\n abrirModalProcedimientoAsIs()\r\n { \r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{titulo:`Procedimiento Actual (As-Is)`},disableClose:true, height: '580px',\r\n width: '800px'});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.id_proceso;\r\n data['tipoProceso_procesoDetalle']=0;\r\n this.tablaProcedimientos.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n }\r\n\r\n\r\n //Abrir modal para agregar los procedimientos del proceso ASIS\r\n abrirModalProcedimientoToBe()\r\n { \r\n const dialogRef = this.dialog.open(ModalProcedimientoComponent,{data:{titulo:`Procedimiento Propuesto (To-Be)`},disableClose:true, height: '580px',\r\n width: '800px'});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n //Mapeamos el idProceso y tipo\r\n data['id_proceso']=this.id_proceso;\r\n data['tipoProceso_procesoDetalle']=1;\r\n this.tablaProcedimientosToBe.push(data);\r\n //Recargamos la tabla\r\n //this.recargarTabla(this.id_proceso);\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n descargarArchivoEjemplo(archivo:string)\r\n {\r\n this.dataService.descargarArchivoCosteo().subscribe(res => {\r\n // Este es necesario para crear un objeto blob con el tipo de archivo\r\n // puesto explicitamente, de lo contrario solo Chrome funcionara correctamente\r\n let newBlob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n // IE no permite objetos blob directamente en el atributo href de un link\r\n // en su lugar hay que usar msSaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n\r\n let link = document.createElement('a');\r\n \r\n link.download = archivo;\r\n // Esta linea es necesaria desde que link.click() ya no funciona en las ultimas versiones de firefox\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n });\r\n\r\n\r\n\r\n }\r\n\r\n onFileChange(event: any, nombreArchivo: string) \r\n {\r\n if (event.target.files && event.target.files.length) \r\n {\r\n const [file] = event.target.files;\r\n\r\n //Verificamos que ya exista un proceso\r\n if(this.id_proceso)\r\n {\r\n this.dataService.subirArchivoCosteo(file,parseInt(this.id_iniciativa),this.id_proceso).subscribe( \r\n (data: string) => {\r\n if (data['objData']) \r\n {\r\n let infoProceso:Proceso=data['objData']['oProcesos']\r\n this.formProcesos.patchValue({\r\n id_proceso:this.id_proceso,\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso,\r\n id_iniciativa:parseInt(this.id_iniciativa)\r\n })\r\n \r\n if(data['objData']['listDetalleProcesos'])\r\n {\r\n //Agregamos en la lista los procedimientos\r\n this.tabla= data['objData']['listDetalleProcesos'];\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n }//Cierre del if de la lista\r\n }\r\n else{\r\n let mensaje=data['errorMessage'];\r\n this.notifier.notify('error',mensaje);\r\n }\r\n \r\n },\r\n error => {\r\n console.error(error); \r\n });\r\n }//Cierre del if\r\n else{\r\n //Obtenemos el proceso\r\n this.dataService.insertarUpdateProceso(this.formProcesos.value,[]).subscribe(res=>{\r\n if(res['objData'])\r\n {\r\n this.id_proceso=res['objData']['id_proceso'];\r\n this.dataService.subirArchivoCosteo(file,parseInt(this.id_iniciativa),this.id_proceso).subscribe( \r\n (data: string) => {\r\n if (data['objData']) \r\n {\r\n let infoProceso:Proceso=data['objData']['oProcesos']\r\n this.formProcesos.patchValue({\r\n id_proceso:this.id_proceso,\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso,\r\n id_iniciativa:parseInt(this.id_iniciativa)\r\n })\r\n\r\n\r\n if(data['objData']['listDetalleProcesos'])\r\n {\r\n //Agregamos en la lista los procedimientos\r\n this.tabla= data['objData']['listDetalleProcesos'];\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n }//Cierre del if de la lista\r\n \r\n }else{\r\n let mensaje=data['errorMessage'];\r\n this.notifier.notify('error',mensaje);\r\n }\r\n },\r\n error => {\r\n console.error(error); \r\n });\r\n }\r\n });\r\n\r\n }\r\n\r\n \r\n }\r\n\r\n }\r\n\r\n verDetallesProceso(id_proceso:number)\r\n {\r\n this.dataService.detalleProceso(id_proceso,0).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n let infoProceso: Proceso = data['objData'];\r\n this.formProcesos.patchValue({\r\n id_proceso:this.id_proceso,\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso\r\n })\r\n }\r\n });\r\n}\r\n\r\n//Método para recargar la tabla de procedimientos\r\nrecargarTabla(id:number)\r\n{\r\n \r\n}\r\n\r\n//Método para abrir el cuadro de confirmación al eliminar un registro\r\nopenDialogConfirmaAsIs(id:number)\r\n{\r\n let dialogRef = this.dialog.open(ConfirmComponent,{data: `¿Desea eliminar el registro?`,disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n //Eliminamos el registro de la tabla\r\n this.eliminarProcedimientoAsIs(id);\r\n }\r\n });\r\n}\r\n\r\n\r\n//Método para abrir el cuadro de confirmación al eliminar un registro\r\nopenDialogConfirmaToBe(id:number)\r\n{\r\n let dialogRef = this.dialog.open(ConfirmComponent,{data: `¿Desea eliminar el registro?`,disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n //Eliminamos el registro de la tabla\r\n this.eliminarProcedimientoToBe(id);\r\n }\r\n });\r\n}\r\n\r\n\r\n\r\n}//Cierre de la clase","export default \".custom-day {\\n text-align: center;\\n padding: 0.185rem 0.25rem;\\n display: inline-block;\\n height: 2rem;\\n width: 2rem;\\n}\\n\\n.custom-day.focused {\\n background-color: #e6e6e6;\\n}\\n\\n.custom-day.range,\\n.custom-day:hover {\\n background-color: orange;\\n color: white;\\n}\\n\\n.custom-day.faded {\\n background-color: orange;\\n}\\n\\n.custom-day.range,\\n.custom-day:hover {\\n background-color: orange;\\n color: white;\\n}\\n\\n.custom-datepicker .ngb-dp-header {\\n padding: 0;\\n}\\n\\n.custom-datepicker .ngb-dp-content {\\n display: grid;\\n grid-template-columns: auto auto;\\n grid-column-gap: 1rem;\\n grid-row-gap: 0.5rem;\\n}\\n\\n/* calendario */\\n\\n.nada {\\n background: #dedede;\\n border-radius: 100%;\\n}\\n\\n.directoresArea {\\n background: #b6ffff;\\n border-radius: 100%;\\n}\\n\\n.directoresGenerales {\\n background: #f3ceff;\\n border-radius: 100%;\\n}\\n\\n.envio {\\n background: #ffd277;\\n border-radius: 100%;\\n}\\n\\n.example-custom-date-class {\\n background: orange;\\n border-radius: 100%;\\n}\\n\\n.cols3 {\\n display: grid;\\n display: -ms-grid;\\n grid-template-columns: 1fr 1fr 1fr;\\n}\\n\\n.color {\\n width: 30px;\\n height: 30px;\\n}\\n\\n.contAreaDetalle {\\n display: grid;\\n display: -ms-grid;\\n grid-template-columns: 1fr 7fr;\\n padding: 10px;\\n}\\n\\n.descColor {\\n margin-top: 2px;\\n}\\n\\n.area {\\n padding: 20px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxtb2RhbC1jYWxlbmRhcmlvLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0ksa0JBQUE7RUFDQSx5QkFBQTtFQUNBLHFCQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7QUFESjs7QUFHRTtFQUNFLHlCQUFBO0FBQUo7O0FBRUU7O0VBR0Usd0JBQUE7RUFFQSxZQUFBO0FBREo7O0FBR0U7RUFDSSx3QkFBQTtBQUFOOztBQUlFOztFQUdFLHdCQUFBO0VBRUEsWUFBQTtBQUhKOztBQUtFO0VBQ0UsVUFBQTtBQUZKOztBQUlFO0VBQ0UsYUFBQTtFQUNBLGdDQUFBO0VBQ0EscUJBQUE7RUFDQSxvQkFBQTtBQURKOztBQU1BLGVBQUE7O0FBRUE7RUFDRSxtQkFBQTtFQUNBLG1CQUFBO0FBSkY7O0FBT0E7RUFDRSxtQkFBQTtFQUNBLG1CQUFBO0FBSkY7O0FBT0E7RUFDRSxtQkFBQTtFQUNBLG1CQUFBO0FBSkY7O0FBT0E7RUFDRSxtQkFBQTtFQUNBLG1CQUFBO0FBSkY7O0FBT0E7RUFDRSxrQkFBQTtFQUNBLG1CQUFBO0FBSkY7O0FBT0E7RUFDRSxhQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQ0FBQTtBQUpGOztBQU9BO0VBQ0UsV0FBQTtFQUNBLFlBQUE7QUFKRjs7QUFPQTtFQUNFLGFBQUE7RUFDQSxpQkFBQTtFQUNBLDhCQUFBO0VBQ0EsYUFBQTtBQUpGOztBQU9BO0VBQ0UsZUFBQTtBQUpGOztBQU9BO0VBQ0UsYUFBQTtBQUpGIiwiZmlsZSI6Im1vZGFsLWNhbGVuZGFyaW8uY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuXHJcbi5jdXN0b20tZGF5IHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDAuMTg1cmVtIDAuMjVyZW07XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDJyZW07XHJcbiAgICB3aWR0aDogMnJlbTtcclxuICB9XHJcbiAgLmN1c3RvbS1kYXkuZm9jdXNlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xyXG4gIH1cclxuICAuY3VzdG9tLWRheS5yYW5nZSxcclxuICAuY3VzdG9tLWRheTpob3ZlciB7XHJcbiAgICAvL2JhY2tncm91bmQtY29sb3I6IHJnYigyLCAxMTcsIDIxNik7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2U7XHJcblxyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gIH1cclxuICAuY3VzdG9tLWRheS5mYWRlZCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTtcclxuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyLCAxMTcsIDIxNiwgMC41KTtcclxuICB9XHJcblxyXG4gIC5jdXN0b20tZGF5LnJhbmdlLFxyXG4gIC5jdXN0b20tZGF5OmhvdmVyIHtcclxuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogcmdiKDIsIDExNywgMjE2KTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTtcclxuXHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgfVxyXG4gIC5jdXN0b20tZGF0ZXBpY2tlciAubmdiLWRwLWhlYWRlciB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxuICAuY3VzdG9tLWRhdGVwaWNrZXIgLm5nYi1kcC1jb250ZW50IHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcclxuICAgIGdyaWQtY29sdW1uLWdhcDogMXJlbTtcclxuICAgIGdyaWQtcm93LWdhcDogMC41cmVtO1xyXG4gIH1cclxuXHJcblxyXG4gIFxyXG4vKiBjYWxlbmRhcmlvICovXHJcblxyXG4ubmFkYSB7XHJcbiAgYmFja2dyb3VuZDogI2RlZGVkZTtcclxuICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG59XHJcblxyXG4uZGlyZWN0b3Jlc0FyZWEge1xyXG4gIGJhY2tncm91bmQ6ICNiNmZmZmY7XHJcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG5cclxuLmRpcmVjdG9yZXNHZW5lcmFsZXMge1xyXG4gIGJhY2tncm91bmQ6ICNmM2NlZmY7XHJcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG5cclxuLmVudmlvIHtcclxuICBiYWNrZ3JvdW5kOiAjZmZkMjc3O1xyXG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbn1cclxuXHJcbi5leGFtcGxlLWN1c3RvbS1kYXRlLWNsYXNzIHtcclxuICBiYWNrZ3JvdW5kOiBvcmFuZ2U7XHJcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG5cclxuLmNvbHMzIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGRpc3BsYXk6IC1tcy1ncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XHJcbn1cclxuXHJcbi5jb2xvciB7XHJcbiAgd2lkdGg6IDMwcHg7XHJcbiAgaGVpZ2h0OiAzMHB4O1xyXG59XHJcblxyXG4uY29udEFyZWFEZXRhbGxlIHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIGRpc3BsYXk6IC1tcy1ncmlkO1xyXG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDdmcjtcclxuICBwYWRkaW5nOiAxMHB4O1xyXG59XHJcblxyXG4uZGVzY0NvbG9yIHtcclxuICBtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi5hcmVhIHtcclxuICBwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG4gICJdfQ== */\";","export default \"\\r\\n
\\r\\n
\\r\\n

Usuarios registrados

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Buscar\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Total de usuarios: {{this.totalUsuarios}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n (click)=\\\"selection.toggle(row)\\\">\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Usuario {{element.nombre_usuario}} Dependencia {{element.dep_usuario}} Dirección de Área {{element.nombre_areaSap}} Estado \\r\\n \\r\\n \\r\\n VIP \\r\\n \\r\\n \\r\\n Acciones \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n No se encontraron usuarios registrados\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

Editar usuario

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n {{this.cuenta}}\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{this.nombreUsuario}}\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n El usuario debe desempeñar al menos un rol\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n {{this.puesto}}\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{this.dependencia}}\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{this.direccionGral}}\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{this.direccionArea}}\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n {{this.nombreSubsecretaria}}\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n Los campos marcados con * son obligatorios\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"
\\r\\n

Formatos de Apoyo

\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \".usuarioOpciones {\\n transition: transform 1s, color 1s;\\n text-decoration: none !important;\\n}\\n.usuarioOpciones:hover {\\n transform: scale(1.1);\\n color: #00d3a6;\\n}\\n.usuarioOpciones.active {\\n font-weight: bold;\\n border-bottom: 1px inset #e8c204;\\n color: #ffffff;\\n}\\n.usuarioOpciones.active:hover {\\n transform: scale(1);\\n}\\n.invalidFeedbackRoles {\\n font-size: 80%;\\n color: #dc3545;\\n}\\n.table {\\n width: 100%;\\n margin-bottom: 0rem;\\n}\\ntable th {\\n font-style: normal;\\n}\\n#check {\\n padding-top: 15px;\\n}\\n/*.mat-checkbox{\\n color: white;\\n size: 100px;\\n}*/\\n/*.ng-container{\\n text-align: center;\\n}*/\\n.table thead th {\\n height: 49px;\\n}\\n.mat-form-field {\\n font-size: 12px;\\n width: 34.3%;\\n}\\n.mat-header-cell {\\n font-size: 16px;\\n font-weight: 500;\\n}\\n.mat-cell {\\n font-size: 14px;\\n font-weight: 500;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFwuLlxcY29udHJvbC11c3Vhcmlvcy5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGtDQUFBO0VBQ0EsZ0NBQUE7QUFDRjtBQUNFO0VBQ0UscUJBQUE7RUFDQSxjQUFBO0FBQ0o7QUFFRTtFQUNFLGlCQUFBO0VBQ0EsZ0NBQUE7RUFDQSxjQUFBO0FBQUo7QUFFRTtFQUNFLG1CQUFBO0FBQUo7QUFJQTtFQUNFLGNBQUE7RUFDQSxjQUFBO0FBREY7QUFJQTtFQUNFLFdBQUE7RUFDQSxtQkFBQTtBQURGO0FBSUE7RUFJRSxrQkFBQTtBQUpGO0FBUUE7RUFDRSxpQkFBQTtBQUxGO0FBUUE7OztFQUFBO0FBTUE7O0VBQUE7QUFJQTtFQUNFLFlBQUE7QUFSRjtBQVdBO0VBQ0UsZUFBQTtFQUNBLFlBQUE7QUFSRjtBQVdBO0VBQ0UsZUFBQTtFQUNBLGdCQUFBO0FBUkY7QUFVQTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtBQVBGIiwiZmlsZSI6ImNvbnRyb2wtdXN1YXJpb3MuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyIudXN1YXJpb09wY2lvbmVzIHtcclxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMsIGNvbG9yIDFzO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgIGNvbG9yOiAjMDBkM2E2O1xyXG4gIH1cclxuXHJcbiAgJi5hY3RpdmUge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggaW5zZXQgI2U4YzIwNDtcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gIH1cclxuICAmLmFjdGl2ZTpob3ZlciB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gIH1cclxufVxyXG5cclxuLmludmFsaWRGZWVkYmFja1JvbGVzIHtcclxuICBmb250LXNpemU6IDgwJTtcclxuICBjb2xvcjogI2RjMzU0NTtcclxufVxyXG5cclxuLnRhYmxlIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW4tYm90dG9tOiAwcmVtO1xyXG59XHJcblxyXG50YWJsZSB0aCB7XHJcbiAgLy90ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhOTg1OztcclxuICAvL2NvbG9yOiB3aGl0ZTtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcblxyXG4jY2hlY2t7XHJcbiAgcGFkZGluZy10b3A6IDE1cHg7XHJcbn1cclxuXHJcbi8qLm1hdC1jaGVja2JveHtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgc2l6ZTogMTAwcHg7XHJcbn0qL1xyXG5cclxuXHJcbi8qLm5nLWNvbnRhaW5lcntcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn0qL1xyXG5cclxuLnRhYmxlIHRoZWFkIHRoe1xyXG4gIGhlaWdodDogNDlweDtcclxufVxyXG5cclxuLm1hdC1mb3JtLWZpZWxkIHtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgd2lkdGg6IDM0LjMlO1xyXG59XHJcblxyXG4ubWF0LWhlYWRlci1jZWxsIHtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG4ubWF0LWNlbGx7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbiJdfQ== */\";","export default \".campo-info-modal:hover {\\n cursor: default;\\n font-weight: bold;\\n}\\n.campo-info-modal:hover hr {\\n border-top: 1px solid #0277bd;\\n}\\n.campo-info-modal:hover strong {\\n color: #6c757d;\\n font-weight: lighter;\\n}\\n.campo-info-modal div:first-child {\\n word-wrap: break-word;\\n}\\n.campo-rechazado-modal strong {\\n color: #ff0000;\\n font-weight: bold;\\n}\\n.campo-rechazado-modal hr {\\n border-top: 1px solid #ff0000;\\n}\\n.campo-rechazado-modal:hover strong {\\n font-weight: lighter;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxtb2RhbC1pbmljaWF0aXZhLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNFO0VBQ0UsZUFBQTtFQUNBLGlCQUFBO0FBQUo7QUFDSTtFQUNFLDZCQUFBO0FBQ047QUFDSTtFQUNFLGNBQUE7RUFDQSxvQkFBQTtBQUNOO0FBRUU7RUFDRSxxQkFBQTtBQUFKO0FBS0U7RUFDRSxjQUFBO0VBQ0EsaUJBQUE7QUFGSjtBQUtFO0VBQ0UsNkJBQUE7QUFISjtBQU9JO0VBQ0Usb0JBQUE7QUFMTiIsImZpbGUiOiJtb2RhbC1pbmljaWF0aXZhLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmNhbXBvLWluZm8tbW9kYWwge1xyXG4gICY6aG92ZXIge1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBociB7XHJcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDI3N2JkO1xyXG4gICAgfVxyXG4gICAgc3Ryb25nIHtcclxuICAgICAgY29sb3I6ICM2Yzc1N2Q7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG4gICAgfVxyXG4gIH1cclxuICBkaXY6Zmlyc3QtY2hpbGQge1xyXG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xyXG4gIH1cclxufVxyXG5cclxuLmNhbXBvLXJlY2hhemFkby1tb2RhbCB7XHJcbiAgc3Ryb25nIHtcclxuICAgIGNvbG9yOiAjZmYwMDAwO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgfVxyXG5cclxuICBociB7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmMDAwMDtcclxuICB9XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgc3Ryb25nIHtcclxuICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuIl19 */\";","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\n\r\n/*apiKey: 'AIzaSyA5RcDolbWoXaD5e5hconKiLliLGauro7U',\r\n authDomain:'iniciactivav2.firebaseapp.com',\r\n projectId:'iniciactivav2'*/\r\n export const environment = {\r\n production: true,\r\n firebase: {\r\n /* apiKey: 'AIzaSyA5RcDolbWoXaD5e5hconKiLliLGauro7U',\r\n authDomain:'iniciactivav2.firebaseapp.com',\r\n projectId:'iniciactivav2'*/\r\n \r\n \r\n //Credenciales QA nuevas\r\n /*apiKey: \"AIzaSyBFYf4qV75WVVjnp22vaAM9EzrRVOcYERg\",\r\n authDomain: \"iniciativasv2-8992f.firebaseapp.com\",\r\n databaseURL: \"https://iniciativasv2-8992f.firebaseio.com\",\r\n projectId: \"iniciativasv2-8992f\",\r\n storageBucket: \"iniciativasv2-8992f.appspot.com\",\r\n messagingSenderId: \"25569820465\",\r\n appId: \"1:25569820465:web:0015c62821f4a3d461ba10\",\r\n measurementId: \"G-84R71Z2YFH\"*/\r\n \r\n \r\n //Credenciales firebase producción\r\n apiKey: \"AIzaSyDpHsFVdhlHglIwHggNirak6wYlV_MtFRQ\",\r\n authDomain: \"iniciativaprodd.firebaseapp.com\",\r\n projectId: \"iniciativaprodd\",\r\n storageBucket: \"iniciativaprodd.appspot.com\",\r\n messagingSenderId: \"417631319762\",\r\n appId: \"1:417631319762:web:69f14115523519c7101f0b\",\r\n measurementId: \"G-N8SQQGBQ0V\"\r\n },\r\n \r\n //Token\r\n CLIENT_ID: '407d674a-47ac-469f-8845-8becdfa0dc95',\r\n GRANT_TYPE: 'password',\r\n GOOGLE_LOGIN:1,\r\n //urlToken: 'https://didsqa.guanajuato.gob.mx/API.IniciativasV2/',\r\n urlToken: 'https://dgtitiniciativas.guanajuato.gob.mx/API.IniciativasV2/',\r\n \r\n \r\n //Url apis\r\n //UrlApiV2: 'https://didsqa.guanajuato.gob.mx/API.IniciativasV2/v2/',\r\n UrlApiV2: 'https://dgtitiniciativas.guanajuato.gob.mx/API.IniciativasV2/v2/'\r\n };\r\n \r\n \r\n \r\n \r\n /*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n // import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n ","import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { IniciativaDetalle } from 'src/app/interfaces/interfaces';\r\n\r\nimport { AuthService } from '../../services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-administracion',\r\n templateUrl: './administracion.component.html',\r\n styleUrls: ['./administracion.component.scss']\r\n})\r\nexport class AdministracionComponent implements OnInit {\r\n emailUser: string;\r\n rolesUsuario: number[];\r\n opcionSeleccionada: number;\r\n iniciativaSeleccionada: IniciativaDetalle;\r\n @ViewChild('tabIniciativas', { static: true })\r\n tabInciativa: ElementRef;\r\n @ViewChild('tablaIniciativasComponent')\r\n tablaIniciativaComponent: ElementRef;\r\n idRolSeleccionado:number;\r\n isLoading:boolean=false;\r\n\r\n constructor(private authService: AuthService) {\r\n this.authService.user.subscribe(user => {this.emailUser = user});\r\n //this.rolesUsuario = this.authService.obtenerRoles();\r\n this.opcionSeleccionada = 2;\r\n }\r\n\r\n isInRole(rol: number): boolean {\r\n return this.authService.isInRole(rol);\r\n }\r\n\r\n ngOnInit() {\r\n //Nos subscribimos al método para el rol seleccionado\r\n this.authService.escuchaRolSeleccionado().subscribe((res) => {\r\n this.idRolSeleccionado = res;\r\n });\r\n // Subir a tope de pagina\r\n this.scrollInicio();\r\n }\r\n\r\n\r\n cambiarIniciativa(iniciativa: IniciativaDetalle) {\r\n this.iniciativaSeleccionada = iniciativa;\r\n }\r\n\r\n scrollInicio() {\r\n const scrollToTop = window.setInterval(() => {\r\n const pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20);\r\n // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 16);\r\n }\r\n}\r\n","export default \"\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
El campo 'Cuenta' es requerido.
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
El campo 'Nombre del usuario' es requerido.
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
El campo 'Puesto' es requerido.
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
El campo 'Dependencia' es requerido.
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
El campo 'Dirección de área' es requerido.
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n Los campos marcados con * son obligatorios\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \";","export default \"/*.table{\\n //table-layout: fixed;\\n //left: -1rem;\\n}*/\\n.mat-form-field {\\n font-size: 12px;\\n width: 100%;\\n}\\nth, td {\\n word-wrap: break-word;\\n font-size: 14px;\\n font-family: Verdana, Geneva, Tahoma, sans-serif;\\n}\\n.fa-edit, .fa-history,\\n.fa-check, .fa-check-circle,\\n.fa-clone, .fa-times-circle, .fa-trash, .fa-users, .fa-comments {\\n color: gray;\\n}\\n/*.container {\\n max-width: 80%;\\n position: relative;\\n left: -6rem;\\n overflow:auto;\\n\\n}*/\\n.acciones .not-active {\\n cursor: not-allowed;\\n}\\nspan {\\n width: 103px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxtaXMtaW5pY2lhdGl2YXMuY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0E7OztFQUFBO0FBS0E7RUFDRSxlQUFBO0VBQ0EsV0FBQTtBQURGO0FBSUE7RUFFRSxxQkFBQTtFQUNBLGVBQUE7RUFDQSxnREFBQTtBQUZGO0FBS0E7OztFQUdFLFdBQUE7QUFGRjtBQUtBOzs7Ozs7RUFBQTtBQVNFO0VBQ0UsbUJBQUE7QUFKSjtBQVFBO0VBQ0UsWUFBQTtBQUxGIiwiZmlsZSI6Im1pcy1pbmljaWF0aXZhcy5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4vKi50YWJsZXtcclxuIC8vdGFibGUtbGF5b3V0OiBmaXhlZDtcclxuICAvL2xlZnQ6IC0xcmVtO1xyXG59Ki9cclxuXHJcbi5tYXQtZm9ybS1maWVsZCB7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG50aCwgdGQge1xyXG4gIC8vd2lkdGg6IDE1MHB4O1xyXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC1mYW1pbHk6VmVyZGFuYSwgR2VuZXZhLCBUYWhvbWEsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbi5mYS1lZGl0LC5mYS1oaXN0b3J5LFxyXG4uZmEtY2hlY2ssIC5mYS1jaGVjay1jaXJjbGUsIFxyXG4uZmEtY2xvbmUsIC5mYS10aW1lcy1jaXJjbGUsIC5mYS10cmFzaCwgLmZhLXVzZXJzLCAuZmEtY29tbWVudHN7XHJcbiAgY29sb3I6IGdyYXk7IFxyXG59XHJcblxyXG4vKi5jb250YWluZXIge1xyXG4gIG1heC13aWR0aDogODAlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBsZWZ0OiAtNnJlbTtcclxuICBvdmVyZmxvdzphdXRvO1xyXG4gIFxyXG59Ki9cclxuXHJcbi5hY2Npb25lc3tcclxuICAubm90LWFjdGl2ZSB7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gfVxyXG59XHJcblxyXG5zcGFue1xyXG4gIHdpZHRoOiAxMDNweDtcclxufVxyXG4iXX0= */\";","import { Component, OnInit } from '@angular/core';\r\nimport { NotifierService } from 'angular-notifier';\r\n\r\nimport { AuthService } from '../../services/auth.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: ['./login.component.scss']\r\n})\r\nexport class LoginComponent implements OnInit {\r\n\r\n logueando = false;\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private notifier: NotifierService) { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n signIn() {\r\n this.logueando = true;\r\n this.authService.signInWithProvider().subscribe(res => {\r\n this.notifier.notify( 'error', res );\r\n this.logueando = false;\r\n }, error => {\r\n console.log(error);\r\n this.logueando = false;\r\n });\r\n }\r\n\r\n noSignin() {\r\n }\r\n}\r\n","export default \"
\\r\\n \\r\\n \\r\\n \\r\\n
\";","export default \"\\r\\n\\r\\n
\\r\\n close\\r\\n

Comentarios para iniciativa folio: {{this.folioIniciativa}}

\\r\\n
\\r\\n
\\r\\n \\r\\n La iniciativa aún no cuenta con registro de comentarios\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n Seleccionar al menos un destinatario\\r\\n \\r\\n Seleccionar Destinatario(s)\\r\\n \\r\\n {{eq.nombre_usuario}}-{{eq.nombre_rol}}\\r\\n \\r\\n \\r\\n
\\r\\n Nombre: {{this.name}}\\r\\n
\\r\\n Rol: {{this.nombreRol}}\\r\\n \\r\\n
\\r\\n Adjuntar archivo\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
UsuarioRolFechaComentarioArchivo adjuntoDestinatarios
{{iniciativa.nombre_UsuarioComentario}}{{iniciativa.nombre_rol}}{{iniciativa.fecha_comentario | date: 'yyyy-MM-dd'}}{{iniciativa.descripcion_comentario}}\\r\\n {{iniciativa.descripcion_comentario}}\\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
  • \\r\\n {{dest.nombre_usuarioDestinatario}}
    \\r\\n {{dest.nombre_rol}} \\r\\n
  • \\r\\n
\\r\\n
\\r\\n No se encontraron comentarios para la iniciativa especificada\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Miembros del equipo de trabajo iniciativa folio: {{this.folioIniciativa}}

\\r\\n
\\r\\n
    \\r\\n
  • \\r\\n {{integrante.nombre_rol}}
    \\r\\n Nombre: {{integrante.nombre_usuario}}
    \\r\\n Email: {{integrante.email_usuario}}\\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Eliminar

\\r\\n
\\r\\n ¿Desea eliminar al integrante: {{this.nombreIntegrante}}?\\r\\n
\\r\\n Observaciones\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Confirmación

\\r\\n
\\r\\n ¿Desea agregar/eliminar a las siguentes personas como miembros del equipo de trabajo?\\r\\n
    \\r\\n
  • \\r\\n {{integrante.nombre_rol}}
    \\r\\n Nombre: {{integrante.nombre_usuario}}
    \\r\\n Email: {{integrante.email_usuario}}\\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Historial de iniciativa folio: {{this.folioIniciativa}}

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
AcciónUsuarioFechaObservaciones
{{iniciativa.descripcion_accion}}{{iniciativa.nombre_usuario}} {{iniciativa.email_usuario}}{{iniciativa.fecha_historialIniciativa | date: 'yyyy-MM-dd' }}\\r\\n Estatus: {{iniciativa.nombre_estatusIniciativa}}
\\r\\n {{iniciativa.observaciones_historialIniciativa}}\\r\\n
{{iniciativa.observaciones_historialIniciativa}} Estatus: {{iniciativa.nombre_estatusIniciativa}}
\\r\\n {{iniciativa.observaciones_historialIniciativa}}\\r\\n
\\r\\n No se encontro historial de la iniciativa especificada\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Cambio de estatus iniciativa folio: {{this.folioIniciativa}}

\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n {{estatus.nombre_estatusIniciativa}} \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}}\\r\\n a Priorización, de click en el boton 'Cambiar estatus'.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}}\\r\\n a Priorización, es necesario agregar el link del documento de diseño.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
Link de documento inválido.
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Motivo de cancelación\\r\\n \\r\\n \\r\\n {{mot.descripcion_motivo}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Motivo de suspensión\\r\\n \\r\\n \\r\\n {{mot.descripcion_motivo}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Motivo de rechazo\\r\\n \\r\\n \\r\\n {{mot.descripcion_motivo}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}}\\r\\n a Construcción, de click en el boton 'Cambiar estatus'.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}}\\r\\n a Pruebas, de click en el boton 'Cambiar estatus'.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}}\\r\\n a Implementación, de click en el boton 'Cambiar estatus'.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}}\\r\\n a Finalización, de click en el boton 'Cambiar estatus'.\\r\\n
\\r\\n
\\r\\n \\r\\n Verifique que se cuenta con el total de las etapas concluidas antes de proceder con el cambio de estatus.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}} \\r\\n ,de click en el boton 'Cambiar estatus'.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}}\\r\\n a Pruebas DGTIT, de click en el boton 'Cambiar estatus'.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}}\\r\\n a Análisis, de click en el boton 'Cambiar estatus'.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}}\\r\\n a Diseño, de click en el boton 'Cambiar estatus'.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Para cambiar el estatus de la iniciativa con folio {{this.folioIniciativa}}\\r\\n a Evaluación, de click en el boton 'Cambiar estatus'.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Cambio estatus cancelado iniciativa folio {{this.folioIniciativa}}

\\r\\n
\\r\\n Justificación\\r\\n
\\r\\n

\\r\\n {{this.justificacionSolicitud}}\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Autorización de cambio a estatus cancelado Iniciativa-Folio {{this.folioIniciativa}}

\\r\\n
\\r\\n \\r\\n Motivo de cancelación\\r\\n \\r\\n \\r\\n {{mot.descripcion_motivo}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n\\r\\n

Rechazo de cambio a estatus cancelado Iniciativa-Folio {{this.folioIniciativa}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Solicitud de autorización para envío fuera de periodo Iniciativa-Folio {{this.folioIniciativa}}

\\r\\n
\\r\\n Justificación\\r\\n
\\r\\n

\\r\\n {{this.justificacionSolicitud}}\\r\\n

\\r\\n Archivo adjunto\\r\\n
\\r\\n {{this.nombreArchivoSolicitud}}\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n

Rechazo solicitud para envío fuera de periodo Iniciativa-Folio {{this.folioIniciativa}}

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\";","import { OVERLAY_CONTAINER_PROVIDER_FACTORY } from '@angular/cdk/overlay/overlay-container';\r\nimport { HttpClient, HttpErrorResponse, HttpHeaders } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { StringDecoder } from 'string_decoder';\r\nimport { environment } from '../../environments/environment';\r\nimport { AsignacionProyecto,Estatus, Iniciativa, UsuarioAutorizado, Usuario,UsuarioEstatus, Proceso, Procedimiento, PriorizacionArea } from '../interfaces/interfaces';\r\nimport { IniciativaDetalle } from '../models/iniciativa';\r\nimport { Paginado, PaginadoAdiminstrador, PaginadoLider } from '../models/paginado';\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, retry } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DataService {\r\n urlAPI: string;\r\n private HEADERSjson: HttpHeaders;\r\n //Url de la API creada por Osva\r\n urlAPI2:string;\r\n\r\n constructor(private http: HttpClient) {\r\n // Dependiendo del tipo de deploy apuntar a productivo o a calidad\r\n //this.urlAPI = environment.UrlApi;\r\n //URL de la API v2\r\n this.urlAPI2=environment.UrlApiV2;\r\n }\r\n\r\n // Método para cambiar la normativa\r\n cambiarNormativa(obj: any): Observable {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/atencionNormativa`, obj);\r\n }\r\n\r\n\r\n //Insertar usuario V2 API \r\n insertarUsuarioV2(user:Usuario)\r\n {\r\n let addUser = JSON.stringify(user); \r\n return this.http.post(`${this.urlAPI2}users/insertUser`, user);\r\n }\r\n\r\n //Método para obtener las jefaturas\r\n obtenerJefaturas(area:number)\r\n {\r\n \r\n return this.http.post(`${this.urlAPI2}jefatura/getJefaturasByDireccion/${area}`,'');\r\n }\r\n\r\n //Método para obtener los tipos de usuarios\r\n obtenerTiposUsuariosv2() \r\n {\r\n return this.http.post(`${this.urlAPI2}roles/getActiveRoles`,'');\r\n }\r\n\r\n\r\n //Método para obtener los usuario\r\n cargarUsuariosAutorizados(pagina:number, user?:string)\r\n {\r\n let emailUser={\r\n email_usuario:user\r\n }\r\n return this.http.post(`${this.urlAPI2}users/getUsers/${pagina}`,emailUser);\r\n }\r\n\r\n cargarUsuariosFiltro(pagina:number, user?:Usuario, filtro?:string)\r\n {\r\n user.nombre_usuario=filtro;\r\n user.email_usuario=filtro;\r\n user.dep_usuario=filtro;\r\n user.direccion_areaUsuario=filtro;\r\n user.puesto_usuario=filtro;\r\n user.telefono_usuario=filtro;\r\n user.extension_usuario=filtro;\r\n return this.http.post(`${this.urlAPI2}users/getUsers/${pagina}`,user);\r\n }\r\n //Método para cambiar estatus de usuarios\r\n cambioEstatus(user:Usuario[])\r\n {\r\n //recorremos el arreglo y cambiamos el estatus\r\n user.forEach(function(item){\r\n let estatus= item.estatus_usuario== 1 ? 0: 1\r\n item.estatus_usuario = estatus;\r\n })\r\n\r\n let addUser = JSON.stringify(user,['email_usuario', 'estatus_usuario']); \r\n let json=JSON.parse(addUser);\r\n return this.http.post(`${this.urlAPI2}users/toggleActiveMultipleUsers`,json);\r\n }\r\n\r\n\r\n //Método para cambiar estatus vip de usuarios\r\n cambiarEstatusVIP(user:Usuario[])\r\n {\r\n //recorremos el arreglo y cambiamos el estatus\r\n user.forEach(function(item){\r\n let vip= item.vip_usuario== 1 ? 0: 1\r\n item.vip_usuario = vip;\r\n })\r\n let addUser = JSON.stringify(user,['email_usuario', 'vip_usuario']); \r\n let json=JSON.parse(addUser);\r\n return this.http.post(`${this.urlAPI2}users/toggleVIPMultipleUsers`,json);\r\n }\r\n\r\n // Periodo de envios\r\n esPeriodoEnvios(){\r\n return this.http.post(`${this.urlAPI2}Periodo/periodoEnvio`,'');\r\n }\r\n\r\n // Iniciativas Datos\r\n obtenerIniciativasUsuario(paginado: Paginado) \r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/getIniciativas`,paginado);\r\n }\r\n\r\n // Usuarios V1\r\n obtenerTiposUsuarios() {\r\n //return this.http.get(`${this.urlAPI}Roles/getAllRoles`);\r\n return this.http.post(`${this.urlAPI2}roles/getActiveRoles`,'');\r\n\r\n }\r\n \r\n //Tabla usuarios\r\n obtenerInfoUsuario(cuentaUsr: string) \r\n {\r\n let user={\r\n email_usuario: cuentaUsr\r\n }\r\n return this.http.post(`${this.urlAPI2}users/getUserByEmail`,user, { headers: this.HEADERSjson });\r\n }\r\n\r\n //Tabla usuariosSAP\r\n buscarPorUsuario(cuentaUsr: string)\r\n {\r\n return this.http.post(`${this.urlAPI2}users/getSAPUserByEmail`,cuentaUsr);\r\n\r\n }\r\n\r\n editarUsuario(user: Usuario) \r\n {\r\n return this.http.post(`${this.urlAPI2}users/updateUser`, user);\r\n }\r\n\r\n /////////////////////////////// Modulo de iniciativas //////////////////////////////////////////\r\n // Iniciativas Inserciones para la opcion \"Nuevo Sistema\"\r\n//Método para obtener los tipos de usuarios\r\nobtenerImpactos() \r\n{\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/GetImpatos`,'');\r\n}\r\n\r\n nuevoSistema(data: Iniciativa) \r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/insertIniciativa`,data);\r\n }\r\n\r\n editarNuevoSistema(data: Iniciativa) \r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/updateIniciativa`,data);\r\n }\r\n\r\n //Obtiene la información de una iniciativa por id\r\n detalleIniciativa(id: number)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/getIniciativaById/${id}`,'');\r\n }\r\n\r\n //Método para recuperar el form del proceso\r\n detalleProceso(id_iniciativa: number,id_proceso:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}costeo/getCosteo/${id_iniciativa}/${id_proceso}`,'');\r\n }\r\n\r\n /*Lista para obtener la lista de procesos\r\n listaProcedimientos(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/getListDetalleProcesos/${id}`,'');\r\n }*/\r\n\r\n\r\n // Iniciativas Administrador\r\n obtenerTodasIniciativas(paginado: PaginadoAdiminstrador) \r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/getIniciativas`,paginado);\r\n }\r\n \r\n //Método para descargar el archivo excel de la tabla de iniciativas\r\n descargarArchivoIniciativas(paginado: Paginado)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/descargarExcelIniciativas`,paginado,{ responseType: 'blob' });\r\n }\r\n\r\n //Iniciativas para priorizar\r\n obtenerIniciativasPriorizacion(email:string,rol:number,order?:boolean)\r\n {\r\n let data={\r\n 'email':email,\r\n 'rolUserlogin':rol,\r\n 'orderByGeneral':order\r\n }\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/getIniciativasPriorizacion`,data);\r\n }\r\n //Método para agregar procedimientos\r\n insertarUpdateListDetalleProceso(detalles:Procedimiento[])\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/insertUpdateListDetalleProceso`,detalles);\r\n }\r\n\r\n //Método para agregar procedimiento\r\n insertarUpdateProceso(data:Proceso,detalles:Procedimiento[])\r\n {\r\n let proceso={\r\n 'proceso':data,\r\n 'listDetalleProcesos':detalles\r\n }\r\n return this.http.post(`${this.urlAPI2}costeo/insertUpdateCosteo`,proceso);\r\n }\r\n\r\n //Método para mostrar el historial de las iniciativas\r\n historialIniciativa(id_iniciativa:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}Historial/getHistorialByIniciativa/${id_iniciativa}`,'');\r\n }\r\n //Método para borrar los detalles proceso de la base\r\n deleteDetalleProcesoByProceso(id_proceso:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/deleteDetalleProcesoByProceso/${id_proceso}`,'');\r\n }\r\n\r\n deleteIniciativa(id_iniciativa:number, email:string,rol:number)\r\n {\r\n let data={\r\n 'id_iniciativa':id_iniciativa,\r\n 'email':email,\r\n 'rolUserlogin':rol\r\n }\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/deleteIniciativaById`,data);\r\n }\r\n\r\n duplicarIniciativa(id_iniciativa:number, email:string, rol:number)\r\n {\r\n let data={\r\n 'id_iniciativa':id_iniciativa,\r\n 'email':email,\r\n 'rolUserlogin':rol\r\n }\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/duplicarIniciativa`,data);\r\n }\r\n\r\n cambiosFuncionalidades(data: Iniciativa) \r\n {\r\n return this.http.post(\r\n `${this.urlAPI2}IniciativaNueva/insertIniciativa`,data);\r\n }\r\n\r\n correccionFuncionalidades(data: Iniciativa) {\r\n return this.http.post(\r\n `${this.urlAPI}IniciativaNueva/insertIniciativaNueva`,\r\n data\r\n );\r\n }\r\n\r\n //Método para subir archivos\r\n subirArchivos(archivo: File, nombreArchivo: string, idIniciativa:number) \r\n {\r\n let extencion;\r\n let ext;\r\n //Si es archivo\r\n if(archivo.type)\r\n {\r\n ext = archivo.type.split('/');\r\n switch (archivo.type)\r\n {\r\n case \"application/zip\":\r\n ext[1]=\"zip\";\r\n break;\r\n case \"application/pdf\": \r\n ext[1]=\"pdf\";\r\n break;\r\n case \"application/x-zip-compressed\":\r\n ext[1]=\"zip\";\r\n break;\r\n case \"application/octet-stream\":\r\n ext[1]=\"zip\";\r\n break;\r\n case \"application/x-rar-compressed\":\r\n ext[1]=\"rar\";\r\n break;\r\n default:\r\n break;\r\n }\r\n extencion=ext[1];\r\n }\r\n //Si es carpeta\r\n else{\r\n ext = archivo.name.split('.');\r\n extencion=ext[ext.length-1];\r\n }\r\n const formData: FormData = new FormData();\r\n formData.append('file', archivo, nombreArchivo+'.'+extencion);\r\n return this.http.post(`${this.urlAPI2}Archivo/SubirArchivoIniciativa/${idIniciativa}`,formData);\r\n }\r\n\r\n //Obtener areas\r\n obtenerGruposSistemas() {\r\n return this.http.post(\r\n `${this.urlAPI2}IniciativaNueva/getAreas`,'');\r\n }\r\n\r\n obtenerAplicativos(idGrupo: number) {\r\n return this.http.post(\r\n `${this.urlAPI2}IniciativaNueva/getAplicacionesByArea/${idGrupo}`,'');\r\n }\r\n\r\n obtenerAreaSolicitante(areaGral: number) {\r\n /*let valores={\r\n 'nombre_dirgralSap':areaGral\r\n }*/\r\n // let valores=parseInt(areaGral);\r\n return this.http.post(\r\n `${this.urlAPI2}dirAreaSAP/getListDirAreaByIdDirGeneral/${areaGral}`,'');\r\n }\r\n\r\n //Método para obtener la direccion general\r\n obtenerDireccionGral(id_iniciativa:number,user:string) \r\n {\r\n let valores={\r\n 'id_iniciativa':id_iniciativa,\r\n 'userlogin':user\r\n }\r\n return this.http.post(`${this.urlAPI2}dirGeneralSAP/getListDireccionGeneralSAP`,valores);\r\n }\r\n\r\n //Método para descargar el archivo de ejemplo del costeo\r\n descargarArchivoCosteo()\r\n {\r\n return this.http.get(`${this.urlAPI2}Archivo/descargarExcelCosteo`,{ responseType: 'blob' });\r\n }\r\n\r\n //Método para subir el archivo de costeo\r\n subirArchivoCosteo(archivo: File,id_iniciativa:number, id_proceso:number)\r\n {\r\n const formData: FormData = new FormData();\r\n formData.append('file', archivo, archivo['name']);\r\n return this.http.post(`${this.urlAPI2}costeo/cargarExcelCosteo/${id_iniciativa}`,formData)\r\n }\r\n\r\n //Método para subir el archivo de costeo\r\n subirArchivoComentarios(archivo: File,id_iniciativa:number, id_comentario:number)\r\n {\r\n const formData: FormData = new FormData();\r\n formData.append('file', archivo, archivo['name']);\r\n return this.http.post(`${this.urlAPI2}Archivo/subirArchivoComentario/${id_iniciativa}/${id_comentario}`,formData)\r\n }\r\n\r\n // Descarga de archivos\r\n descargarArchivo(id:number,archivo: string) \r\n {\r\n let nombre = archivo.split('.')[0];\r\n let extencion = archivo.split('.').pop();\r\n let json={\r\n 'idIniciativa':id,\r\n 'nombreArchivo':nombre,\r\n 'extensionArchivo':extencion\r\n }\r\n return this.http.post(`${this.urlAPI2}Archivo/descargarArchivoIniciativa`,json,{responseType: 'blob' });\r\n }\r\n\r\n descargarArchivoComentarios(id:number,archivo: string, id_comentario:number) \r\n {\r\n let json={\r\n 'id_iniciativa':id,\r\n 'id_comentario':id_comentario,\r\n 'nombre_archivoComentario':archivo\r\n }\r\n return this.http.post(`${this.urlAPI2}Archivo/descargarArchivoComentario`,json,{responseType: 'blob' });\r\n //return this.http.get(`${this.urlAPI2}Archivo/descargarArchivo/${id}/${nombre}/${extencion}`,{ responseType: 'blob' });\r\n }\r\n\r\n // Envio de iniciativas\r\n enviarIniciativa(id:number, email:string,rol:number) \r\n {\r\n let valores={\r\n 'id_iniciativa':id,\r\n 'email': email,\r\n 'rolUserlogin':rol\r\n }\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/enviarIniciativa`, valores);\r\n }\r\n\r\n //Método para la priorizacion de área\r\n envioPriorizacionArea(valores:any)\r\n {\r\n /*var myJSON = JSON.stringify(priorizar);\r\n let valores={\r\n userlogin: datos,\r\n json_priorización:myJSON\r\n }*/\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/priorizacionDirectorArea`, valores);\r\n }\r\n\r\n //Método para la priorizacion de área\r\n envioPriorizacionGral(valores:any)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/priorizacionDirectorGeneral`, valores);\r\n }\r\n\r\n \r\n //Método para la priorizacion subsecretario\r\n envioPriorizacionSubsecretario(valores:any)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/priorizacionSubsecretario`, valores);\r\n }\r\n\r\n solicitudEnvioFueraPeriodo(datos:any)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/solicitarAutorizacionEnvio`, datos);\r\n }\r\n\r\n //Método para solicitar cancelacion de iniciativa\r\n solicitudCancelacion(datos:any)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/solicitarCancelacion`, datos);\r\n }\r\n\r\n //Método para mostrar el historial de las iniciativas\r\n contactosIniciativa(id_iniciativa:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}EquipoTrabajo/GetContactos/${id_iniciativa}`,'');\r\n }\r\n\r\n //Método para solicitar cancelacion de iniciativa\r\n agregarComentarios(datos:any)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/agregarComentario`, datos);\r\n }\r\n\r\n //Método para mostrar el historial de las iniciativas\r\n comentariosIniciativa(id_iniciativa:number, email:string,idRol:number)\r\n {\r\n let valores={\r\n id_iniciativa:id_iniciativa,\r\n email_usuarioComentario: email,\r\n id_rol:idRol\r\n }\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/getComentarios`,valores);\r\n }\r\n\r\n //Método para mostrar el historial de las iniciativas\r\n getListSubsecretarias()\r\n {\r\n return this.http.post(`${this.urlAPI2}/subsecretaria/getListSubsecretarias`,'');\r\n }\r\n\r\n //Método para mostrar los periodos de envio\r\n getListPeriodosEnvio()\r\n {\r\n return this.http.post(`${this.urlAPI2}/Periodo/getListPeriodoEnvio`,'');\r\n }\r\n\r\n //Método para eliminar el periodo de envio\r\n deletePeriodoEnvio(id_periodo:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}Periodo/deletePeriodoEnvio/${id_periodo}`,'');\r\n }\r\n\r\n //Método para agregar el periodo de envio\r\n addPeriodoEnvio(form:any)\r\n {\r\n let valores={\r\n fechaInicio_periodoEnvio:form.controls['fechaInicio_periodoEnvio'].value,\r\n fechaTermino_periodoEnvio:form.controls['fechaTermino_periodoEnvio'].value\r\n }\r\n return this.http.post(`${this.urlAPI2}Periodo/insertPeriodoEnvio`,valores);\r\n }\r\n\r\n //Método para editar el periodo de envio\r\n updatePeriodoEnvio(id_periodo:number,form:any)\r\n {\r\n let valores={\r\n id_periodoEnvio:id_periodo,\r\n fechaInicio_periodoEnvio:form.controls['fechaInicio_periodoEnvio'].value,\r\n fechaTermino_periodoEnvio:form.controls['fechaTermino_periodoEnvio'].value\r\n }\r\n return this.http.post(`${this.urlAPI2}Periodo/updatePeriodoEnvio`,valores);\r\n }\r\n\r\n //Método para obtener un periodo de envio por id\r\n getPeriodoEnviobyId(id_periodo:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}Periodo/getPeriodoEnvioById/${id_periodo}`,'');\r\n }\r\n\r\n //Método para mostrar los motivos\r\n getListMotivos()\r\n {\r\n return this.http.post(`${this.urlAPI2}/motivos/getListMotivos`,'');\r\n }\r\n\r\n //Método para agregar los motivos\r\n addMotivos(form:any)\r\n {\r\n let valores={\r\n descripcion_motivo:form.controls['descripcion_motivo'].value,\r\n id_tipoMotivo:form.controls['id_tipoMotivo'].value\r\n }\r\n return this.http.post(`${this.urlAPI2}motivos/insertMotivos`,valores);\r\n }\r\n\r\n //Método para eliminar el motivos\r\n deleteMotivo(id_motivo:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}motivos/deleteMotivos/${id_motivo}`,'');\r\n }\r\n\r\n //Método para obtener los tipos de motivos\r\n getTipoMotivos()\r\n {\r\n return this.http.post(`${this.urlAPI2}/motivos/getListTipoMotivo`,'');\r\n\r\n }\r\n\r\n //Método para editar el motivos\r\n updateMotivo(id_motivo:number,form:any)\r\n {\r\n let valores={\r\n id_motivo:id_motivo,\r\n descripcion_motivo:form.controls['descripcion_motivo'].value,\r\n id_tipoMotivo:form.controls['id_tipoMotivo'].value\r\n }\r\n return this.http.post(`${this.urlAPI2}motivos/updateMotivos`,valores);\r\n }\r\n\r\n //Método para obtener un motivo de envio por id\r\n getMotivobyId(id_motivo:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}motivos/getMotivoById/${id_motivo}`,'');\r\n }\r\n\r\n //Método para agregar el nombre de la subsecretaria\r\n addSubsecretaria(nombre:string)\r\n {\r\n let valores={\r\n nombre_subsecretariaSap:nombre,\r\n }\r\n return this.http.post(`${this.urlAPI2}subsecretaria/InsertSubsecretaria`,valores);\r\n }\r\n\r\n //Método para eliminar la subsecretaria\r\n deleteSubsecretaria(id_subsecretaria:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}subsecretaria/deleteSubsecretaria/${id_subsecretaria}`,'');\r\n }\r\n\r\n //Método para editar subsecretaria\r\n updateSubsecretaria(id:number,nombre:string)\r\n {\r\n let valores={\r\n id_subsecretariaSap:id,\r\n nombre_subsecretariaSap:nombre\r\n }\r\n return this.http.post(`${this.urlAPI2}subsecretaria/updateSubsecretaria`,valores);\r\n }\r\n\r\n //Método para obtener un motivo de envio por id\r\n getSubsecretariabyId(id_subsecretaria:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}subsecretaria/getSubsecretariaById/${id_subsecretaria}`,'');\r\n }\r\n\r\n \r\n //Método para mostrar las direcciones generales con subsecretarias\r\n getListDireccionesGral()\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirGeneralSAP/getListDireccionGeneralSAP`,'');\r\n }\r\n\r\n //Método para mostrar las direcciones generales sin subsecretarias\r\n getListDireccionesGralSinSub()\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirGeneralSAP/getDirGeneralSinSubsecretaria`,'');\r\n }\r\n\r\n\r\n //Método para agregar una nueva direccion gral\r\n addDireccionGral(nombre:string)\r\n {\r\n let valores={\r\n nombre_dirgralSap:nombre,\r\n }\r\n return this.http.post(`${this.urlAPI2}dirGeneralSAP/insertDireccionGeneralSAP`,valores);\r\n }\r\n\r\n //Método para modificar la direccion gral.\r\n updateDireccionGral(id:number,nombre:string)\r\n {\r\n let valores={\r\n id_dirgralSap:id,\r\n nombre_dirgralSap:nombre\r\n }\r\n return this.http.post(`${this.urlAPI2}dirGeneralSAP/updateDireccionGeneralSAP`,valores);\r\n }\r\n\r\n //Método para obtener una direccion gral por id\r\n getDirGralById(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}dirGeneralSAP/getDireccionGeneralById/${id}`,'');\r\n }\r\n\r\n \r\n //Método para eliminar la subsecretaria\r\n deleteDirGral(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirGeneralSAP/deleteDireccionGeneralSAP/${id}`,'');\r\n }\r\n\r\n \r\n //Método para mostrar las direcciones de area\r\n getListDireccionesArea()\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirAreaSAP/getListDireccioAreaSAP`,'');\r\n }\r\n\r\n //Método para agregar una nueva direccion gral\r\n addDireccionArea(nombre:string)\r\n {\r\n let valores={\r\n nombre_areaSap:nombre,\r\n }\r\n return this.http.post(`${this.urlAPI2}/dirAreaSAP/InsertDireccionAreaSAP`,valores);\r\n }\r\n\r\n //Método para modificar la direccion gral.\r\n updateDireccionArea(id:number,nombre:string)\r\n {\r\n let valores={\r\n id_areaSap:id,\r\n nombre_areaSap:nombre\r\n }\r\n return this.http.post(`${this.urlAPI2}/dirAreaSAP/updateDireccionAreaSAP`,valores);\r\n }\r\n\r\n\r\n //Método para obtener una direccion de area por id\r\n getDirAreaById(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirAreaSAP/getDireccioAreaSAPById/${id}`,'');\r\n }\r\n\r\n //Método para eliminar la subsecretaria\r\n deleteDirArea(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirAreaSAP/deleteDireccionAreaSAP/${id}`,'');\r\n }\r\n\r\n\r\n //Método para eliminar el proceso\r\n deleteProcesoCosteo(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}/costeo/deleteCosteoByProceso/${id}`,'');\r\n }\r\n \r\n //Método para obtener las direccion gral. por subsecretaria\r\n getDirGralBySubsecretaria(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirGeneralSAP/getListDirGralBySubsecretaria/${id}`,'');\r\n }\r\n\r\n //Metodo para guardar/modificar subsecretaria con dir.gral\r\n insertUpdateSubsDirGral(idDirGral:number, idSubse:number){\r\n return this.http.post(`${this.urlAPI2}/dirGeneralSAP/updateSubsecretariaDirGeneral/${idDirGral}/${idSubse}`,'');\r\n }\r\n\r\n //Método para eliminar la relacion subse-dirGral\r\n deleteSubsDirGral(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirGeneralSAP/deleteRelacionSubsecretaria/${id}`,'');\r\n }\r\n\r\n //Método para mostrar las direcciones de area sin gral.\r\n getListDireccionAreaSinGral()\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirAreaSAP/getListDirAreaSinDirGeneral`,'');\r\n }\r\n\r\n //Método para obtener las direccion area. por gral.\r\n getDirAreaByGral(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirAreaSAP/getListDirAreaByIdDirGeneral/${id}`,'');\r\n }\r\n\r\n //Metodo para guardar/modificar dir gral. con dir. area\r\n insertUpdateDirGralArea(idDirGral:number, idDirArea:number){\r\n return this.http.post(`${this.urlAPI2}/dirAreaSAP/updateDirGeneralDirArea/${idDirArea}/${idDirGral}`,'');\r\n }\r\n\r\n //Método para eliminar la relacion dirGral-Area\r\n deleteDirGralArea(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}/dirAreaSAP/deleteRelacionDirGeneral/${id}`,'');\r\n }\r\n \r\n \r\n //Método para agregar procedimiento\r\n UpdateAplicacionIniciativa(data:any)\r\n {\r\n return this.http.post(`${this.urlAPI2}/IniciativaNueva/updateAreaAplicacion`,data);\r\n }\r\n\r\n //Método para cargar la lista de anlista de TI\r\n getListAnalistasTI(){\r\n return this.http.post(`${this.urlAPI2}/users/getListAnalistasTi`,'');\r\n }\r\n\r\n //Método para cargar la lista de gestores de cambios\r\n getGestoresCambio(){\r\n return this.http.get(`${this.urlAPI2}/users/getListGestorCambios`);\r\n }\r\n\r\n z\r\n //Método para cargar la lista de lideres\r\n getListLideres(){\r\n return this.http.post(`${this.urlAPI2}/users/getListLideres`,'');\r\n }\r\n\r\n //Método para cargar la lista de Gestor de Cambios y Analista TI\r\n /*getListGestorAnaliTI(valores: any) {\r\n return this.http.post(`${this.urlAPI2}v2/users/getListAnalistasTi`, valores).pipe(\r\n catchError((error: HttpErrorResponse) => {\r\n console.error('Error en la petición:', error);\r\n return throwError(error);\r\n })\r\n );\r\n }*/\r\n //Lista de gestor de cambios\r\n getListGestorCambios(){\r\n return this.http.get(`${this.urlAPI2}/users/getListGestorCambios`);\r\n }\r\n\r\n //Lista de analista de TI\r\n getListAnalistaTI(){\r\n return this.http.get(`${this.urlAPI2}/users/getListAnalistasTi`);\r\n }\r\n //Método para cargar la lista de desarrolladores\r\n getListDesarrolladores(){\r\n return this.http.post(`${this.urlAPI2}/users/getListDesarrolladores`,'');\r\n }\r\n\r\n \r\n insertIntegranteEquipo(valores:any){\r\n return this.http.post(`${this.urlAPI2}/EquipoTrabajo/InsertIntegranteEquipo/`,valores);\r\n }\r\n\r\n insertIntegranteEquipov2(valores:any){\r\n return this.http.post(`${this.urlAPI2}/EquipoTrabajo/InsertIntegranteEquipo/`,valores);\r\n }\r\n\r\n confirmarEquipoTrabajo(valores:any){\r\n return this.http.post(`${this.urlAPI2}/EquipoTrabajo/ConfirmarEquipoTrabajo/`,valores);\r\n }\r\n\r\n \r\n \r\n deleteAnalista(valores:any){\r\n return this.http.post(`${this.urlAPI2}/EquipoTrabajo/deleteIntegranteEquipo/`,valores);\r\n }\r\n\r\n \r\n //Método para cargar la lista de lideres\r\n getEquipoTrabajo(id:number){\r\n return this.http.post(`${this.urlAPI2}EquipoTrabajo/getEquipoTrabajo/${id}`,'');\r\n }\r\n\r\n //Metodo para listar los estatus de iniciativa\r\n getListCambioEstatus(){\r\n return this.http.post(`${this.urlAPI2}Estatus/getCambioEstatus/`,'');\r\n }\r\n\r\n \r\n //Metodo para guardar el tipo de estatus de iniciativa\r\n guardarCambioEstatus(valores:any){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/cambiarEstatus/`,valores);\r\n }\r\n\r\n //Metodo lista motivos cancelacion\r\n getListMotivosCancelacion(){\r\n return this.http.post(`${this.urlAPI2}motivos/getMotivosCancelacion/`,'');\r\n }\r\n\r\n //Metodo lista motivos suspencion\r\n getListMotivosSuspencion(){\r\n return this.http.post(`${this.urlAPI2}motivos/getMotivosSuspension/`,'');\r\n }\r\n\r\n //Metodo lista motivos Rechazo\r\n getListMotivosRechazo(){\r\n return this.http.post(`${this.urlAPI2}motivos/getMotivosRechazo/`,'');\r\n }\r\n\r\n //Método para obtener solicitudes de cancelacion\r\n getSolicitudCancelacion(id:number){\r\n return this.http.post(`${this.urlAPI2}/IniciativaNueva/GetSolicitudById/${id}`,'');\r\n }\r\n\r\n //Metodo para rechazar solicitud de cancelacion\r\n rechazoSolicitudCancelacion(valores:any){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/rechazarSolicitudCancelacion/`,valores);\r\n\r\n }\r\n\r\n \r\n //Metodo para autorizar solicitud de cancelacion\r\n autorizacionSolicitudCancelacion(valores:any){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/autorizarSolicitudCancelacion/`,valores);\r\n }\r\n\r\n \r\n //Metodo para autorizar solicitud de envio\r\n autorizacionSolicitudEnvio(valores:any){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/autorizarSolicitudEnvio/`,valores);\r\n }\r\n\r\n \r\n //Metodo para rechazar solicitud de envio\r\n rechazoSolicitudEnvio(valores:any){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/rechazarSolicitudEnvio/`,valores);\r\n }\r\n\r\n \r\n //Metodo para visualizar los comentarios\r\n marcarVistoComentarios(valores:any){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/marcarVistoComentarios/`,valores);\r\n }\r\n\r\n //Metodo para obtener la subsecretaaria dependiendo a la dir. gral.\r\n getSubsecretariaByIdGeneral(id:number){\r\n return this.http.post(`${this.urlAPI2}subsecretaria/getSubsecretariaByIdGeneral/${id}`,'');\r\n }\r\n\r\n //Método para validar si es periodo de priorizacion o no\r\n getPeriodoPriorizacion(id:number){\r\n return this.http.post(`${this.urlAPI2}Periodo/getAccionPriorizacion/${id}`,'');\r\n }\r\n\r\n \r\n updateArchivoProcesoActual(valores:any){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/updateArchivoProcesoActual`,valores);\r\n }\r\n\r\n \r\n updateArchivoProcesoPropuesto(valores:any){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/updateArchivoProcesoPropuesto`,valores);\r\n }\r\n\r\n \r\n updateArchivoAnexos(valores:any){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/updateArchivoAnexos`,valores);\r\n }\r\n\r\n descargarExcelPriorizacion(json:any){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/descargarExcelPriorizacion`,json,{responseType: 'blob' });\r\n }\r\n\r\n \r\n //Método para mostrar el tipo de iniciativas\r\n getListTipoIniciativas()\r\n {\r\n return this.http.get(`${this.urlAPI2}tipoIniciativa/getListTipoIniciativas`);\r\n }\r\n\r\n //get enlaces\r\n getEnlacesList(body)\r\n {\r\n return this.http.post(`${this.urlAPI2}cambioEnlace/getProyectosCambios`,body);\r\n }\r\n\r\n cambioRequerimientos(body)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/cambioRequerimiento`,body);\r\n }\r\n\r\n \r\n //Método para mostrar todas las aplicaciones\r\n getListAplicaciones()\r\n {\r\n return this.http.get(`${this.urlAPI2}IniciativaNueva/getAplicaciones`);\r\n }\r\n\r\n \r\n //Método para mostrar todos los enlaces de iniciativas\r\n getListEnlaces()\r\n {\r\n return this.http.get(`${this.urlAPI2}users/getEnlaces`);\r\n }\r\n\r\n //Iniciativa por folio\r\n getEnlaceByFolio(folio:number)\r\n {\r\n return this.http.get(`${this.urlAPI2}cambioEnlace/getEnlaceByFolio?folio=${folio}`);\r\n }\r\n\r\n\r\n //Combo de enlaces nuevos\r\n getEnlacesReemplazo(idDirGral:number, idTipoIniciativa:number)\r\n {\r\n return this.http.get(`${this.urlAPI2}cambioEnlace/getEnlacesReemplazo?direccionGeneral=${idDirGral}&tipoIniciativa=${idTipoIniciativa}`);\r\n }\r\n\r\n updateEnlaceIniciativa(valores:any){\r\n return this.http.put(`${this.urlAPI2}cambioEnlace/updateEnlaceIniciativa`,valores);\r\n }\r\n\r\n insertArea(area:string)\r\n {\r\n let valores={\r\n 'nombre_area':area\r\n }\r\n return this.http.post(`${this.urlAPI2}area/insertArea`,valores);\r\n }\r\n\r\n //Metodo para eliminar las areas \r\n deleteArea(id:number)\r\n {\r\n return this.http.delete(`${this.urlAPI2}area/deleteArea?id_area=${id}`);\r\n }\r\n\r\n \r\n updateArea(valores:any){\r\n return this.http.put(`${this.urlAPI2}area/updateArea`,valores);\r\n }\r\n\r\n //Area por id\r\n getAreaById(id:number)\r\n {\r\n return this.http.get(`${this.urlAPI2}area/getAreaById?id_area=${id}`);\r\n }\r\n\r\n insertApp(app:string)\r\n {\r\n let valores={\r\n 'nombre_aplicacion':app\r\n }\r\n return this.http.post(`${this.urlAPI2}aplicacion/insertAplicacion`,valores);\r\n }\r\n\r\n //Metodo para eliminar las aplicaciones\r\n deleteApp(id:number)\r\n {\r\n return this.http.delete(`${this.urlAPI2}aplicacion/deleteAplicacion?id_aplicacion=${id}`);\r\n }\r\n\r\n updateAplicacion(valores:any){\r\n return this.http.put(`${this.urlAPI2}aplicacion/updateAplicacion`,valores);\r\n }\r\n\r\n //Area por id\r\n getAppById(id:number)\r\n {\r\n return this.http.get(`${this.urlAPI2}aplicacion/getAplicacionById?id_aplicacion=${id}`);\r\n }\r\n\r\n //Método de list aplicación sin area \r\n getListAplicacionSinArea()\r\n {\r\n return this.http.get(`${this.urlAPI2}aplicacion/getListAplicacionSinArea`);\r\n }\r\n\r\n //Método de list aplicación sin area \r\n getAplicacionesByArea(id:number)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/getAplicacionesByArea/${id}`,'');\r\n }\r\n\r\n //Metodo para guardar/modificar area-app\r\n insertUpdateAreaApp(app:number, area:number){\r\n return this.http.put(`${this.urlAPI2}aplicacion/updateAreaAplicacion?id_aplicacion=${app}&id_area=${area}`,'');\r\n }\r\n\r\n //Método para eliminar la relacion subse-dirGral\r\n deleteAreaApp(id:number)\r\n {\r\n return this.http.delete(`${this.urlAPI2}aplicacion/deleteRelacionAplicacion?id_aplicacion=${id}`);\r\n }\r\n\r\n //Método para subir el archivo de solicitud fuera de envio de periodo\r\n subirArchivoSolicitudEnvio(archivo: any,nombre:string,id_iniciativa:number)\r\n {\r\n let extencion;\r\n let ext;\r\n ext = nombre.split('.');\r\n extencion=ext[ext.length-1];\r\n\r\n let datosArchivo={\r\n idIniciativa:id_iniciativa,\r\n nombreArchivo:nombre,\r\n extensionArchivo:'.'+extencion,\r\n contenido:archivo\r\n }\r\n return this.http.post(`${this.urlAPI2}Archivo/subirEvidenciaJustifiar`,datosArchivo)\r\n }\r\n\r\n\r\n //Método para descargar archivo de solicitud de envio\r\n descargarArchivoSolicitudEnvio(id:number) \r\n {\r\n let json={\r\n 'idIniciativa':id\r\n }\r\n return this.http.post(`${this.urlAPI2}Archivo/obtenerEvidenciaJustificar`,json);\r\n }\r\n\r\n cambiarAtencion(obj)\r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/rapidaAtencion`,obj);\r\n }\r\n\r\n evaluacionTecnica(body){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/evaluacionTecnica`,body);\r\n }\r\n\r\n disenoFinalizada(body){\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/disenoFinalizado`,body);\r\n }\r\n\r\n //Reportes\r\n obtenerIniciativasReporte(paginado: Paginado) \r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/getReporteGrid`,paginado);\r\n }\r\n\r\n //Método para descargar archivo de reporte\r\n descargarArchivoReporte(paginado: Paginado) \r\n {\r\n return this.http.post(`${this.urlAPI2}IniciativaNueva/getReporte`,paginado,{responseType: 'blob' });\r\n } \r\n\r\n /**Servicio portal por tipo de modulo*/ \r\n getDocumentoFormatoAyuda(id_tipoIniciativa:number): Observable {\r\n return this.http.post(\r\n `${this.urlAPI2}Archivo/descargarFormatoAyuda`,\r\n {id_tipoIniciativa:id_tipoIniciativa},\r\n {responseType:'blob'}\r\n ).pipe(retry(3));\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n styleUrls: ['./footer.component.scss']\r\n})\r\nexport class FooterComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport{ ConfirmListadoIniciativasAdminComponent} from 'src/app/components/shared/confirm-listado-iniciativas-admin/confirm-listado-iniciativas-admin.component';\r\n\r\n\r\ninterface Enlaces {\r\n email_usuario: string;\r\n id_rol: number;\r\n id_usuario:number;\r\n nombre_rol:string;\r\n nombre_usuario:string;\r\n}\r\n\r\n@Component({\r\n selector: 'app-enlaces',\r\n templateUrl: './enlaces.component.html',\r\n styleUrls: ['./enlaces.component.css']\r\n})\r\n\r\n\r\n\r\nexport class EnlacesComponent implements OnInit {\r\n\r\n folio:number;\r\n justificacion:string;\r\n enlaceAnterior:string;\r\n emailEnlaceAnterior:string;\r\n idIniciativa:number;\r\n idDirGral:number;\r\n idTipoIniciativa:number;\r\n nuevosEnlaces:Enlaces[]=[];\r\n enlace:string;\r\n emailUser:string;\r\n loadingGeneral:boolean=false;\r\n\r\n\r\n constructor( \r\n public dialog:MatDialog,\r\n private notifier: NotifierService,\r\n private dataService: DataService,\r\n private authService: AuthService) { }\r\n\r\n ngOnInit(): void {\r\n this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n });\r\n }\r\n\r\n buscarFolio()\r\n {\r\n this.loadingGeneral=true;\r\n this.dataService.getEnlaceByFolio(this.folio).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.enlaceAnterior=data['objData']['nombre_enlace'];\r\n this.emailEnlaceAnterior=data['objData']['email_enlace'];\r\n this.idIniciativa=data['objData']['id_iniciativa'];\r\n //Obtenemos el detalle de la iniciativa\r\n this.dataService.detalleIniciativa(this.idIniciativa).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.idDirGral=data['objData']['id_dirgralSapSolicitante'];\r\n this.idTipoIniciativa=data['objData']['id_tipoIniciativa'];\r\n this.cargarComboEnlaces();\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n\r\n }\r\n\r\n\r\n cargarComboEnlaces()\r\n {\r\n this.enlace='seleccione';\r\n this.dataService.getEnlacesReemplazo(this.idDirGral,this.idTipoIniciativa).subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.nuevosEnlaces=data['data']; \r\n this.loadingGeneral=false; \r\n }\r\n },\r\n error => {\r\n this.loadingGeneral=false;\r\n console.log(error);\r\n }\r\n );\r\n\r\n }\r\n\r\n\r\n\r\n cancelar()\r\n {\r\n this.enlace=null;\r\n this.folio=null;\r\n this.justificacion=null;\r\n this.emailEnlaceAnterior=null;\r\n this.enlaceAnterior=null;\r\n }\r\n\r\n\r\n \r\n //Eliminar subsecretaria con dir. gral\r\n guardar()\r\n {\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{opcion:25},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneral=true;\r\n let valores={\r\n id_iniciativa:this.idIniciativa,\r\n email_nuevoEnlace:this.enlace,\r\n justificacion:this.justificacion,\r\n userlogin:this.emailUser\r\n }\r\n this.dataService.updateEnlaceIniciativa(valores).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se cambio el enlace correctamente.'\r\n );\r\n this.cancelar();\r\n this.loadingGeneral=false;\r\n }\r\n else{\r\n this.loadingGeneral=false;\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.loadingGeneral=false;\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cambiar el enlace. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n\r\n }\r\n\r\n}\r\n","import { Component, OnInit, OnDestroy } from '@angular/core';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { TipoIniciativa } from '../../interfaces/interfaces';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { environment } from 'src/environments/environment';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Block } from 'typescript';\r\nimport { DataService } from 'src/app/services/data.service';\r\n\r\n@Component({\r\n selector: 'app-portal',\r\n templateUrl: './portal.component.html',\r\n styleUrls: ['./portal.component.scss']\r\n})\r\nexport class PortalComponent implements OnInit, OnDestroy {\r\n emailUser: string;\r\n nombreUser: string;\r\n opcionSeleccionada: number;\r\n public listaTiposIniciativa: TipoIniciativa[] = [];\r\n costeo: boolean = false;\r\n idRolSeleccionado: number;\r\n private apiUrl = `${environment.UrlApiV2}Archivo/descargarFormatoAyuda`;\r\n private destroy$ = new Subject();\r\n\r\n constructor(private autService: AuthService, private http: HttpClient, private dataService: DataService) {\r\n this.autService.user.subscribe((user: string) => {\r\n this.emailUser = user;\r\n });\r\n this.autService.userName.subscribe((nombre: string) => {\r\n this.nombreUser = nombre;\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n this.autService.escuchaRolSeleccionado().pipe(takeUntil(this.destroy$)).subscribe((res) => {\r\n this.idRolSeleccionado = res;\r\n });\r\n\r\n window.localStorage.removeItem(\"editarIniciativaId\");\r\n }\r\n\r\n ngOnDestroy() {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n }\r\n\r\n descargarFormatoApoyo() {\r\n this.descargarFormato('proyecto');\r\n }\r\n\r\n descargarFormatoApoyoConCambio() {\r\n this.descargarFormato('cambio_con_proceso');\r\n }\r\n\r\n descargarFormatoApoyoSinCambio() {\r\n this.descargarFormato('cambio_sin_proceso');\r\n }\r\n\r\n private descargarFormato(tipoIniciativa: string) {\r\n const idTipoIniciativa = this.obtenerIdTipoIniciativa(tipoIniciativa);\r\n \r\n if (idTipoIniciativa === null) {\r\n this.mostrarAlerta('Tipo de iniciativa no válido.');\r\n return;\r\n }\r\n\r\n /**return this.http.post(\r\n `${environment.urlAPI}Archivos/descargaGestor`,\r\n {uIdArchivo:uuid},\r\n {responseType:'blob'}\r\n ).pipe(retry(3)); */\r\n \r\n /*const payload = { id_tipoIniciativa: idTipoIniciativa };\r\n this.http.post(this.apiUrl, payload, { responseType: 'json' }).subscribe(\r\n (response: 'blob') => {\r\n console.log(response); // Verifica la estructura de la respuesta\r\n /*if (!response || !response.objData?.ruta_archivo) {\r\n this.mostrarAlerta('El archivo no está disponible.');\r\n return;\r\n }\r\n //const { ruta_archivo, nombre_archivo } = response.objData;\r\n //this.descargarArchivo(ruta_archivo, nombre_archivo);\r\n },\r\n error => {\r\n console.error('Error al descargar el archivo:', error);\r\n this.mostrarAlerta('No se pudo descargar el archivo. Verifica tu conexión o contacta al administrador.');\r\n }\r\n );\r\n }*/\r\n this.dataService.getDocumentoFormatoAyuda(idTipoIniciativa).subscribe({\r\n next: (blob) => {\r\n // Crear una URL para el Blob\r\n const url = window.URL.createObjectURL(blob);\r\n\r\n // Crear un enlace de descarga dinámico\r\n const a = document.createElement('a');\r\n a.href = url;\r\n a.download = 'archivo.pdf'; // Nombre sugerido para el archivo\r\n document.body.appendChild(a);\r\n\r\n // Simular clic para descargar\r\n a.click();\r\n\r\n // Limpiar el enlace\r\n window.URL.revokeObjectURL(url);\r\n document.body.removeChild(a);\r\n\r\n console.log('Archivo descargado con éxito');\r\n },\r\n error: (err) => {\r\n console.error('Error al descargar el archivo:', err);\r\n },\r\n });\r\n }\r\n \r\n private obtenerIdTipoIniciativa(tipoIniciativa: string): number | null {\r\n const mapaTiposIniciativa = {\r\n proyecto: 1,\r\n cambio_con_proceso: 2,\r\n cambio_sin_proceso: 3,\r\n };\r\n return mapaTiposIniciativa[tipoIniciativa] || null;\r\n }\r\n\r\n private descargarArchivo(ruta: string, nombreArchivo: string) {\r\n if (!ruta || !nombreArchivo) {\r\n this.mostrarAlerta('Información del archivo incompleta. Contacta al administrador.');\r\n return;\r\n }\r\n \r\n this.http.get(ruta, { responseType: 'blob' }).subscribe(\r\n (archivo: Blob) => {\r\n if (archivo.size === 0) {\r\n this.mostrarAlerta('El archivo descargado está vacío.');\r\n return;\r\n }\r\n \r\n // Verificamos si el archivo es un PDF\r\n if (archivo.type === 'application/pdf') {\r\n const fileURL = URL.createObjectURL(archivo);\r\n window.open(fileURL, '_blank'); // Abre el PDF en una nueva pestaña\r\n } else {\r\n // Si no es un PDF, descargamos el archivo normalmente\r\n const newBlob = new Blob([archivo], { type: archivo.type });\r\n const data = window.URL.createObjectURL(newBlob);\r\n const link = document.createElement('a');\r\n link.href = data;\r\n link.download = nombreArchivo; // Asigna el nombre del archivo\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n \r\n setTimeout(() => {\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n }\r\n \r\n this.mostrarAlerta(`El archivo \"${nombreArchivo}\" ha sido descargado correctamente.`);\r\n },\r\n error => {\r\n console.error('Error al descargar el archivo desde la ruta:', error);\r\n this.mostrarAlerta('No se pudo descargar el archivo. Contacta al administrador.');\r\n }\r\n );\r\n }\r\n \r\n private mostrarAlerta(mensaje: string) {\r\n alert(mensaje);\r\n }\r\n\r\n scrollInicio() {\r\n const scrollToTop = window.setInterval(() => {\r\n const pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 30); // Cuánto avanzar en cada paso\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 16);\r\n }\r\n}\r\n","export default \".mat-dialog-actions .mat-button-base + .mat-button-base {\\n margin-left: 50px;\\n}\\n\\n.mat-dialog-actions {\\n display: contents !important;\\n}\\n\\n.mat-dialog-container {\\n overflow-x: hidden !important;\\n}\\n\\n.red {\\n background-color: #f44336;\\n /* Rojo personalizado */\\n color: white;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxjb25maXJtYWNpb24uY29tcG9uZW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUk7RUFDSSxpQkFBQTtBQUNSOztBQUVJO0VBQ0ksNEJBQUE7QUFDUjs7QUFFSTtFQUNJLDZCQUFBO0FBQ1I7O0FBRUk7RUFDSSx5QkFBQTtFQUEyQix1QkFBQTtFQUMzQixZQUFBO0FBRVIiLCJmaWxlIjoiY29uZmlybWFjaW9uLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiICAgIC5tYXQtZGlhbG9nLWFjdGlvbnMgLm1hdC1idXR0b24tYmFzZSsubWF0LWJ1dHRvbi1iYXNlIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNTBweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLm1hdC1kaWFsb2ctYWN0aW9ucyB7XHJcbiAgICAgICAgZGlzcGxheTogY29udGVudHMgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLm1hdC1kaWFsb2ctY29udGFpbmVyIHtcclxuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAucmVkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjQ0MzM2OyAvKiBSb2pvIHBlcnNvbmFsaXphZG8gKi9cclxuICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICAgICJdfQ== */\";","import { Component, ElementRef, Input, Output,EventEmitter,OnInit, ViewChild,AfterViewInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators,NgForm } from '@angular/forms';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { Usuario,DireccionArea,DireccionGral } from 'src/app/interfaces/interfaces';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\nimport {SelectionModel} from '@angular/cdk/collections' ;\r\nimport { Paginado } from '../../../models/paginado';\r\nimport {Router} from '@angular/router';\r\n\r\n\r\n@Component({\r\n selector: 'app-control-usuarios',\r\n templateUrl: './control-usuarios.component.html',\r\n styleUrls: ['./control-usuarios.component.scss']\r\n})\r\n\r\n\r\nexport class ControlUsuariosComponent implements OnInit\r\n{\r\n @Input() emailUsuario: string;\r\n @Input() modoLider: boolean;\r\n @Output() formuluarioEditar: EventEmitter;\r\n @Output() recargartabla: EventEmitter;\r\n @Output() botonSiguiente = new EventEmitter();\r\n @ViewChild('contenedorRoles',{static:false}) checks: ElementRef;\r\n usuarios:any;\r\n loadingGeneral: boolean = true;\r\n loadingEstatus: boolean = false;\r\n mostrarFormularioEditar: boolean = false;\r\n mostrarFormAgregar:boolean=false;\r\n mostrarlista:boolean=true;\r\n opcionAdministracion: number = 1;\r\n indexCambioEstatus: number = -1;\r\n listaUsuarios: Usuario[] = [];\r\n formUsuarios: FormGroup;\r\n formUsuariosAgregar: FormGroup;\r\n formUsuariosEditar: FormGroup;\r\n formBuscarUsuario: FormGroup;\r\n rolesUsuario: { id_rol: number; nombre_rol: string; }[];\r\n rolesSeleccionados: string[] = [];\r\n //Lista de jefaturas \r\n listaJefaturas:{id_jefatura:number; nombre_jefatura:string}[]=[];\r\n //Lista subsecretarias\r\n listaSubsecretarias:{id_subsecretariaSap:number; nombre_subsecretariaSap:string, estatus_subsecretariaSap:boolean}[]=[];\r\n\r\n botonPresionado :number;\r\n //Variable para mostrar o no el combo de jefatura\r\n mostrarJefatura : boolean=false;\r\n mostrarSubsecretaria:boolean=false;\r\n //Paginación\r\n paginaActual: Paginado;\r\n //Total de usuarios\r\n totalUsuarios:number;\r\n dependencia:string;\r\n direccion:string;\r\n nombre:string;\r\n email:string;\r\n //Variables para consulta\r\n cuenta:string;\r\n nombreUsuario:string;\r\n puesto:string;\r\n direccionGral:string;\r\n direccionArea:string;\r\n jefatura:string;\r\n idDirGral:number;\r\n nombreSubsecretaria:string;\r\n \r\n\r\n //Variables para la tabla con filtro\r\n displayedColumns: string[] = ['Seleccion','Usuario', 'Dependencia', 'Dirección de área', 'Estado', 'VIP',\"Acciones\"];\r\n dataSource:any;\r\n //seleccion: any;\r\n seleccion= new SelectionModel (true , []);\r\n direccionesGral: DireccionGral[];\r\n direccionesArea: DireccionArea[];\r\n valorFiltro:string;\r\n \r\n //dataSource= new MatTableDataSource(this.listaUsuarios);\r\n\r\n get fc() { // acceso a los controles de la form para insertar usuarios\r\n return this.formUsuarios.controls;\r\n }\r\n\r\n get f() { // acceso a la form para insertar usuarios\r\n return this.formUsuarios;\r\n }\r\n\r\n\r\n get fce() { // acceso a los controles de las form para editar usuarios\r\n return this.formUsuariosEditar.controls;\r\n }\r\n\r\n get fe() { // acceso a la form para editar usuarios\r\n return this.formUsuariosEditar;\r\n }\r\n\r\n get fuc() {\r\n return this.formBuscarUsuario.controls;\r\n }\r\n\r\n constructor(\r\n private dataService: DataService,\r\n private notifier: NotifierService,\r\n private router:Router) {\r\n }\r\n\r\n ngOnInit() {\r\n this.formBuscarUsuario = new FormGroup({\r\n idUsuario: new FormControl('', [Validators.required])\r\n });\r\n\r\n this.formUsuariosEditar = new FormGroup({\r\n nombre_usuario: new FormControl({value:'', disabled:false}, [Validators.required]),\r\n email_usuario: new FormControl(''),\r\n estatus_usuario: new FormControl(1, [Validators.required]),\r\n dep_usuario: new FormControl({value:'', disabled:false}, [Validators.required]),\r\n vip_usuario: new FormControl(0, [Validators.required]),\r\n puesto_usuario: new FormControl({value:'', disabled:false}, [Validators.required]),\r\n telefono_usuario: new FormControl(''),\r\n extension_usuario: new FormControl(''),\r\n id_jefatura: new FormControl(''),\r\n id_subsecretariaSap: new FormControl(''),\r\n id_dirGralSap: new FormControl('',[Validators.required]),\r\n id_areaSap:new FormControl('',[Validators.required]),\r\n Roles: new FormControl('',[Validators.required]),\r\n email_usuarioLogin: new FormControl(this.emailUsuario, [Validators.required, Validators.email]),\r\n nombre_subsecretariaSap: new FormControl(''),\r\n nuevoEmailUsuario:new FormControl('')\r\n \r\n });\r\n\r\n\r\n this.paginaActual = new Paginado();\r\n this.paginaActual.numeroPagina = 1;\r\n this.cargarUsuarios();\r\n this.obtenerSubsecretarias();\r\n \r\n //Obtener las direcciones generales\r\n this.dataService.obtenerDireccionGral(0,this.emailUsuario).subscribe(data => {\r\n this.direccionesGral = data['data'];\r\n });\r\n }\r\n \r\n cancelar()\r\n {\r\n this.mostrarFormularioEditar=false;\r\n this.mostrarJefatura=false;\r\n this.mostrarlista=true;\r\n this.formUsuariosEditar.reset();\r\n this.listaJefaturas=[];\r\n //this.formUsuarios.reset();\r\n while(this.rolesSeleccionados.length) {\r\n this.rolesSeleccionados.pop();\r\n }\r\n this.paginaActual.numeroPagina = 1;\r\n this.buscarUsuarios(1,'');\r\n }\r\n\r\n funcionCancelar(e)\r\n {\r\n this.botonSiguiente.emit(true);\r\n\r\n this.mostrarFormAgregar=false;\r\n this.mostrarFormularioEditar=false;\r\n this.paginaActual.numeroPagina = 1;\r\n this.buscarUsuarios(1,'');\r\n this.mostrarlista=true;\r\n }\r\n\r\n onSubmitReactive(btnId:number, cuenta?:string)\r\n {\r\n this.botonPresionado=btnId;\r\n if(this.botonPresionado==1)\r\n {\r\n this.activarBloquear();\r\n }\r\n if(this.botonPresionado==2)\r\n {\r\n this.cambiarEstatusVIP();\r\n }\r\n //Boton de agregar\r\n if(this.botonPresionado==3)\r\n {\r\n this.mostrarFormAgregar=true;\r\n this.mostrarlista=false;\r\n //this.router.navigate(['./add-usuario'])\r\n }\r\n\r\n if(this.botonPresionado==4)\r\n {\r\n this.mostrarlista=false;\r\n this.mostrarFormAgregar=false;\r\n this.dataService.obtenerTiposUsuariosv2().subscribe(\r\n data => {\r\n this.rolesUsuario = data['data'];\r\n this.mostrarFormularioEditar=true;\r\n this.cargarInfoUsuarios(cuenta,data['data']);\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n\r\n }\r\n\r\n }\r\n\r\n /*obtenerJefaturas(user:Usuario)\r\n {\r\n this.dataService.obtenerJefaturas(user).subscribe(\r\n data => {\r\n this.listaJefaturas = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }*/\r\n\r\n //Método para obtener la subsecretaria segun la dir gral.\r\n subsecretariaByDirGral(idGral:number)\r\n {\r\n this.dataService.getSubsecretariaByIdGeneral(idGral).subscribe(\r\n data => {\r\n this.listaSubsecretarias = data['data'];\r\n this.nombreSubsecretaria=data['objData']['nombre_subsecretariaSap'];\r\n //Formulario editar\r\n this.formUsuariosEditar.patchValue({\r\n id_subsecretariaSap:data['objData']['id_subsecretariaSap']\r\n });\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n\r\n //Método para obtener las subsecretarias \r\n obtenerSubsecretarias()\r\n {\r\n this.dataService.getListSubsecretarias().subscribe(\r\n data => {\r\n this.listaSubsecretarias = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n\r\n\r\n agregarQuitarRol(rol: string) \r\n {\r\n let index = this.rolesSeleccionados.indexOf(rol);\r\n if (index !== -1) \r\n {\r\n this.rolesSeleccionados = this.rolesSeleccionados.filter(el => el !== rol);\r\n } else {\r\n this.rolesSeleccionados.push(rol);\r\n }\r\n\r\n if (this.mostrarFormularioEditar) \r\n {\r\n this.formUsuariosEditar.patchValue({\r\n Roles: this.rolesSeleccionados.toString() \r\n });\r\n }\r\n\r\n let subse=this.formUsuariosEditar.controls['Roles'].value;\r\n let posicion=subse.indexOf(\"11\");\r\n //Verificamos si el rol es de tipo subsecretario\r\n if(posicion!== -1)\r\n {\r\n\r\n this.mostrarSubsecretaria=true;\r\n this.subsecretariaByDirGral(this.idDirGral);\r\n }\r\n else{\r\n this.mostrarSubsecretaria=false;\r\n this.formUsuariosEditar.patchValue({\r\n id_subsecretariaSap:0\r\n });\r\n //this.formUsuariosEditar.controls['id_subsecretaria'].reset();\r\n } \r\n \r\n }\r\n\r\n cargarUsuarios() \r\n {\r\n this.loadingGeneral = true;\r\n this.dataService.cargarUsuariosAutorizados(this.paginaActual.numeroPagina,\"\").subscribe(res => {\r\n if (res['alert']==1) \r\n {\r\n this.notifier.notify('error', 'No se han podido cargar los usuarios. Revisa tu conexión de red e inténtalo nuevamente más tarde.')\r\n }else{\r\n this.totalUsuarios=res['total_registros'];\r\n this.listaUsuarios = res['data'];\r\n this.dataSource = new MatTableDataSource(this.listaUsuarios);\r\n }\r\n //this.seleccion= new SelectionModel (true , []);\r\n this.loadingGeneral = false;\r\n });\r\n }\r\n\r\n \r\n\r\n ngAfterViewInit()\r\n {\r\n //console.log(\"vista afterview\", this.checks);\r\n }\r\n\r\n cargarInfoUsuarios(cuenta: string, listaRoles:any) \r\n {\r\n \r\n if (cuenta !== '') \r\n {\r\n this.dataService.obtenerInfoUsuario(cuenta).subscribe(res => {\r\n if (res['errorMessage']) { \r\n this.notifier.notify('error', 'Ha ocurrido un error al intentar obtener la información del usuario. Revisa tu conexión de red e inténtalo nuevamente más tarde.');\r\n } else {\r\n let infoUser: Usuario = res['objData'];\r\n this.cuenta=infoUser.email_usuario;\r\n this.nombreUsuario=infoUser.nombre_usuario;\r\n this.puesto=infoUser.puesto_usuario;\r\n this.dependencia=infoUser.dep_usuario;\r\n this.direccionGral=infoUser.nombre_dirgralSap;\r\n this.direccionArea=infoUser.nombre_areaSap;\r\n this.jefatura=infoUser.nombre_jefatura;\r\n this.idDirGral=infoUser.id_dirgralSap;\r\n\r\n this.formUsuariosEditar.patchValue({\r\n nombre_usuario: infoUser.nombre_usuario,\r\n email_usuario:infoUser.email_usuario,\r\n estatus_usuario: infoUser.estatus_usuario,\r\n dep_usuario: infoUser.dep_usuario,\r\n vip_usuario: infoUser.vip_usuario,\r\n puesto_usuario: infoUser.puesto_usuario,\r\n id_jefatura: infoUser.id_jefatura,\r\n id_subsecretariaSap:infoUser.id_subsecretariaSap,\r\n id_dirGralSap: infoUser.id_dirgralSap,\r\n id_areaSap:infoUser.id_areaSap,\r\n Roles: infoUser.roles,\r\n nombre_subsecretariaSap:infoUser.nombre_subsecretariaSap,\r\n email_usuarioLogin:this.emailUsuario\r\n\r\n });\r\n //Id's produccion gral:331, areaSap:3001,3005,3002\r\n //Id's QA gral: 231, areaSAP: 1753, 1754, 1755\r\n if(res['objData']['id_dirgralSap']==331 && (infoUser.id_areaSap==3001 || infoUser.id_areaSap==3005 || infoUser.id_areaSap==3002))\r\n {\r\n this.mostrarJefatura=true; \r\n //Cargamos las jefaturas \r\n this.dataService.obtenerJefaturas(infoUser.id_areaSap).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.listaJefaturas = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n\r\n }\r\n /* if(res['objData']['nombre_dirgralSap'].toUpperCase()==\"DIRECCION GENERAL DE TECNOLOGIAS DE LA INFORMACION Y TELECOMUNICACIONES\" ||\r\n res['objData']['nombre_dirgralSap'].toUpperCase()==\"DIR. GRAL. DE TEC. DE INFORM. Y TELECOM.\")\r\n {\r\n this.mostrarJefatura=true; \r\n }*/\r\n if(res['objData']['id_subsecretariaSap'])\r\n {\r\n //this.obtenerSubsecretarias();\r\n this.mostrarSubsecretaria=true;\r\n }\r\n else{\r\n this.mostrarSubsecretaria=false;\r\n }\r\n this.mostrarFormularioEditar = true;\r\n let usr = Array.from(this.checks.nativeElement.children);\r\n usr.forEach((rol: any) => {\r\n if (rol.children[0].checked) \r\n {\r\n rol.children[0].click();\r\n }\r\n }); \r\n usr.forEach((rol: any) => {\r\n if (infoUser.roles.split(',').findIndex(x => x === rol.children[0].id) !== -1) {\r\n rol.children[0].click();\r\n }\r\n });\r\n }\r\n });\r\n } else {\r\n this.notifier.notify('error', 'Ha ocurrido un error al intentar cargar la información del usuario.');\r\n this.mostrarFormularioEditar = false;\r\n this.mostrarlista=true;\r\n //this.paginaActual.pageNumber = 1;\r\n this.buscarUsuarios(this.paginaActual.numeroPagina,'');\r\n }\r\n }\r\n\r\n editarUsuario() \r\n {\r\n if(this.mostrarSubsecretaria==false)\r\n {\r\n this.formUsuariosEditar.controls['id_subsecretariaSap'].reset();\r\n }\r\n this.dataService.editarUsuario(this.formUsuariosEditar.value).subscribe(res => {\r\n if (res['errorMessage']) \r\n {\r\n this.notifier.notify('error','Ha ocurrido un error al intentar editar el usuario. Revisa tu conexión de red en inténtalo de nuevo más tarde.');\r\n } else {\r\n this.formUsuariosEditar.reset({ opcion: 2, vip: 0, estatus: 1 });\r\n this.mostrarFormularioEditar = false;\r\n this.mostrarJefatura=false;\r\n this.notifier.notify('success', 'Usuario editado correctamente.');\r\n this.mostrarlista=true;\r\n while(this.rolesSeleccionados.length) {\r\n this.rolesSeleccionados.pop();\r\n }\r\n while(this.listaJefaturas.length) {\r\n this.listaJefaturas.pop();\r\n }\r\n if(this.listaSubsecretarias){\r\n while(this.listaSubsecretarias.length) {\r\n this.listaSubsecretarias.pop();\r\n }\r\n }\r\n \r\n this.paginaActual.numeroPagina = 1;\r\n this.buscarUsuarios(1,'');\r\n }\r\n });\r\n }\r\n\r\n\r\n\r\n scrollInicio() {\r\n const scrollToTop = window.setInterval(() => {\r\n const pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // pasos cada intervalo\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 16);\r\n }\r\n\r\n cambioTab(opcion: number) {\r\n this.opcionAdministracion = opcion;\r\n this.formUsuarios.reset({ opcion: 1, vip: 0, estatus: 1 });\r\n this.formUsuariosEditar.reset({ opcion: 2, vip: 0, estatus: 1 });\r\n this.mostrarFormularioEditar = false;\r\n if (opcion !== 1) {\r\n this.cargarUsuarios();\r\n //this.cargarSiguientes();\r\n }\r\n }\r\n\r\n/* Angular Material*/\r\n//Método que retorna el número de columnas que estan seleccionadas\r\n isAllSelected () \r\n {\r\n const numSelected = this.seleccion.selected.length;\r\n const numRows = this.dataSource.data.length;\r\n return numSelected === numRows;\r\n }\r\n\r\n masterToggle () {\r\n this.isAllSelected ()?\r\n this.seleccion.clear ():\r\n this.dataSource.data.forEach ( row =>this.seleccion.select (row));\r\n }\r\n\r\n\r\n checkboxLabel (row ?:Usuario):string \r\n {\r\n if (!row ) {\r\n return ` $ {this.isAllSelected ()? 'select': 'deselect'} all` ;\r\n }\r\n return `${this.seleccion.isSelected (row)? 'deseleccionar': 'seleccionar'} fila $ {row.position + 1}` ;\r\n }\r\n\r\n\r\n//Método para aplicar el filtro \r\n applyFilter(event: Event) \r\n {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.paginaActual.numeroPagina=1;\r\n this.buscarUsuarios(this.paginaActual.numeroPagina, filterValue.trim().toLocaleLowerCase());\r\n //this.dataSource.filter = filterValue.trim().toLowerCase();\r\n }\r\n\r\n buscarUsuarios(pagina:number, valor:string)\r\n {\r\n this.valorFiltro=valor;\r\n this.loadingGeneral = true;\r\n this.dataService.cargarUsuariosFiltro(pagina,this.formUsuariosEditar.value,valor).subscribe(res => {\r\n if (res['errorMessage']) \r\n {\r\n } else \r\n {\r\n this.loadingGeneral = false;\r\n this.totalUsuarios=res['total_registros'];\r\n this.listaUsuarios= res['data'];\r\n this.dataSource = new MatTableDataSource(this.listaUsuarios); \r\n }});\r\n }\r\n\r\n\r\n //Método para activar/bloquear los usuarios selecionados\r\n activarBloquear()\r\n {\r\n let valores = this.seleccion.selected;\r\n \r\n if(valores.length > 0 )\r\n {\r\n this.dataService.cambioEstatus(this.seleccion.selected).subscribe(res => {\r\n if (res['errorMessage']) {\r\n this.notifier.notify('error',\r\n 'Ha ocurrido un error al intentar cambiar el estatus del usuario(s). Revisa tu conexión de red en inténtalo de nuevo más tarde.');\r\n } else {\r\n this.notifier.notify('success', 'Usuario(s) editado(s) correctamente.');\r\n this.seleccion.clear();\r\n this.paginaActual.numeroPagina=1;\r\n this.buscarUsuarios(1,'');\r\n //this.cargarUsuarios();\r\n }\r\n });\r\n }\r\n else{\r\n this.notifier.notify('error', 'Seleccione un usuario.');\r\n this.paginaActual.numeroPagina=1;\r\n //this.cargarUsuarios();\r\n this.buscarUsuarios(1,'');\r\n }\r\n}\r\n\r\n\r\n //Método para activar/bloquear los usuarios selecionados\r\n cambiarEstatusVIP()\r\n {\r\n let valores = this.seleccion.selected;\r\n if(valores.length > 0 )\r\n {\r\n this.dataService.cambiarEstatusVIP(this.seleccion.selected).subscribe(res => {\r\n if (res['errorMessage']) \r\n {\r\n this.notifier.notify('error',\r\n 'Ha ocurrido un error al intentar cambiar el estatus del usuario(s). Revisa tu conexión de red en inténtalo de nuevo más tarde.');\r\n } else {\r\n this.notifier.notify('success', 'Usuario(s) editado(s) correctamente.');\r\n this.seleccion.clear();\r\n this.paginaActual.numeroPagina=1;\r\n this.buscarUsuarios(1,'');\r\n //this.cargarUsuarios();\r\n }\r\n });\r\n }\r\n else{\r\n this.notifier.notify('error', 'Seleccione un usuario.');\r\n this.paginaActual.numeroPagina=1;\r\n this.buscarUsuarios(1,'');\r\n //this.cargarUsuarios();\r\n }\r\n \r\n }\r\n\r\n //Método de paginación\r\n cargarSiguientes() \r\n {\r\n this.loadingGeneral = true;\r\n this.seleccion.clear();\r\n this.paginaActual.numeroPagina++;\r\n this.paginaActual.email = this.emailUsuario;\r\n this.dataService.cargarUsuariosFiltro(this.paginaActual.numeroPagina++, this.formUsuariosEditar.value, this.valorFiltro).subscribe(res => {\r\n if (res['alert']==1) \r\n {\r\n this.notifier.notify('error', 'No se han podido cargar los usuarios. Revisa tu conexión de red e inténtalo de nuevo más tarde.');\r\n } else {\r\n \r\n this.listaUsuarios= res['data'];\r\n this.dataSource = new MatTableDataSource(this.listaUsuarios);\r\n this.paginaActual.numeroPagina--;\r\n }\r\n this.loadingGeneral = false;\r\n });\r\n }\r\n\r\n\r\n //Método de paginación\r\n cargarAnteriores() \r\n {\r\n this.loadingGeneral = true;\r\n this.seleccion.clear();\r\n //this.paginaActual.pageNumber--;\r\n this.paginaActual.email = this.emailUsuario;\r\n \r\n this.dataService.cargarUsuariosFiltro(this.paginaActual.numeroPagina-1,this.formUsuariosEditar.value,this.valorFiltro).subscribe(res => {\r\n if (res['alert']==1) \r\n {\r\n this.notifier.notify('error', 'No se han podido cargar los usuarios. Revisa tu conexión de red e inténtalo de nuevo más tarde.');\r\n } else {\r\n this.listaUsuarios= res['data'];\r\n this.dataSource = new MatTableDataSource(this.listaUsuarios);\r\n this.paginaActual.numeroPagina--;\r\n }\r\n this.loadingGeneral = false;\r\n });\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { IniciativaDetalle, TablaMisIniciativas } from 'src/app/interfaces/interfaces';\r\nimport { Paginado } from 'src/app/models/paginado';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\n\r\n@Component({\r\n selector: 'app-lider-proyecto',\r\n templateUrl: './lider-proyecto.component.html',\r\n styleUrls: ['./lider-proyecto.component.scss']\r\n})\r\nexport class LiderProyectoComponent implements OnInit {\r\n animacionRecargaTabla: string;\r\n emailUser: string;\r\n tablaIniciativas: TablaMisIniciativas[] = [];\r\n paginaActual: Paginado;\r\n iniciativaSeleccionada: IniciativaDetalle;\r\n\r\n constructor(private authService: AuthService) {\r\n this.authService.user.subscribe((user: string) => {\r\n this.emailUser = user;\r\n });\r\n this.animacionRecargaTabla = 'animated fadeIn';\r\n }\r\n\r\n ngOnInit() {\r\n this.paginaActual = new Paginado();\r\n this.paginaActual.email = this.emailUser;\r\n this.paginaActual.numeroPagina = 0;\r\n this.cargarSiguientes();\r\n\r\n // Subir a tope de pagina\r\n this.scrollInicio();\r\n }\r\n\r\n verDetallesIniciativa(idIniciativa: number, tipo: number) { }\r\n\r\n cargarAnteriores() { }\r\n\r\n cargarSiguientes() { }\r\n\r\n formarImpacto(impacto: string): { nombreImpacto: string; detalleImpacto: string } {\r\n const listImpacto: string[] = impacto.trim().split('%');\r\n return { nombreImpacto: listImpacto[0], detalleImpacto: listImpacto[1] };\r\n }\r\n\r\n private animarTablaRecargar() {\r\n this.animacionRecargaTabla = '';\r\n this.animacionRecargaTabla = 'animated pulse';\r\n }\r\n\r\n recargarTablaIniciativas(act: number){\r\n \r\n }\r\n\r\n cambiarIniciativa(iniciativa: IniciativaDetalle) {\r\n this.iniciativaSeleccionada = iniciativa;\r\n }\r\n\r\n scrollInicio() {\r\n const scrollToTop = window.setInterval(() => {\r\n const posicion = window.pageYOffset;\r\n if (posicion > 0) {\r\n window.scrollTo(0, posicion - 20);\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 16);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport * as SecureLS from 'secure-ls';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SessionService {\r\n token: any;\r\n refreshToken: any;\r\n secureLs: SecureLS;\r\n isRefreshing = false\r\n\r\n\r\n constructor() { \r\n this.secureLs= new SecureLS({encodingType: 'aes', encryptionSecret: 'my-secret-key-2'});\r\n this.getToken();\r\n }\r\n\r\n async getToken() {\r\n await this.getItem('authorization')\r\n .then(authorization => {\r\n if (authorization) {\r\n this.token = authorization['access_token']\r\n this.refreshToken = authorization['refresh_token']\r\n }\r\n })\r\n .catch(err => {\r\n this.token = null\r\n })\r\n }\r\n\r\n getItem(key: string): Promise {\r\n let sessionData = this.secureLs.get(key);\r\n\r\n if (sessionData !== '') return Promise.resolve(sessionData)\r\n else return Promise.resolve(false)\r\n }\r\n\r\n setItem(key, value) {\r\n this.secureLs.set(key, value);\r\n }\r\n\r\n removeSessionOnStorage() {\r\n this.token = null;\r\n this.removeItem('session')\r\n this.removeItem('authorization')\r\n }\r\n\r\n removeItem(key) {\r\n this.secureLs.remove(key)\r\n this.secureLs.removeAll()\r\n }\r\n\r\n}\r\n","export default \"
\\r\\n
\\r\\n
\\r\\n Miembros del equipo de trabajo iniciativa folio {{this.iniciativa}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n ENLACE DE PROYECTOS / CAMBIOS\\r\\n
\\r\\n {{this.nombreEnlace}}\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
ANALISTA DE TI\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n Nombre: {{ analista.nombre_usuario }}Nombre: {{ analista.nombre_usuario }}Agregado sin confirmaciónNombre: {{ analista.nombre_usuario }}Eliminado sin confirmaciónNombre: {{ analista.nombre_usuario }}
\\r\\n No se ha asignado analista de TI\\r\\n
\\r\\n\\r\\n
\\r\\n Analista de TI\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n Comentarios\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
GESTOR DE CAMBIOS\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n Nombre: {{ gestor.nombre_usuario }}Nombre: {{ gestor.nombre_usuario }}Agregado sin confirmaciónNombre: {{ gestor.nombre_usuario }}Eliminado sin confirmaciónNombre: {{ gestor.nombre_usuario }}
\\r\\n No se ha asignado gestor de cambios\\r\\n
\\r\\n\\r\\n
\\r\\n Gestor de cambios\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n Comentarios\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
LÍDER DE PROYECTO\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n Nombre: {{ lider.nombre_usuario }}Nombre: {{ lider.nombre_usuario }}Nombre: {{ lider.nombre_usuario }}Eliminado sin confirmaciónAgregado sin confirmaciónNombre: {{ lider.nombre_usuario }}Nombre: {{ lider.nombre_usuario }}
\\r\\n No se ha asignado líder de proyecto\\r\\n
\\r\\n\\r\\n
\\r\\n Líder\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n Comentarios\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
COLABORADORES\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n Nombre: {{ desarrollador.nombre_usuario }}Nombre: {{ desarrollador.nombre_usuario }}Nombre: {{ desarrollador.nombre_usuario }}Agregado sin confirmaciónEliminado sin confirmaciónNombre: {{ desarrollador.nombre_usuario }}
\\r\\n No se han asignado colaboradores al proyecto\\r\\n
\\r\\n\\r\\n
\\r\\n Colaborador\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Comentarios\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\";","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Estatus:\\r\\n \\r\\n {{ getEstatusBadge() }}\\r\\n \\r\\n
\\r\\n
\\r\\n Cargando...\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

Folio: {{iniciativa.folio_iniciativa}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Datos generales

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Tipo de solicitud:
\\r\\n Con cambio al proceso\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Nombre del cambio: \\r\\n
\\r\\n {{iniciativa['nombre_iniciativa']}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Tipo de solicitud:
\\r\\n Nuevo sistema\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Nombre del nuevo sistema: \\r\\n
\\r\\n {{iniciativa['nombre_iniciativa']}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Tipo de solicitud:
\\r\\n Sin cambio al proceso\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Nombre del cambio: \\r\\n
\\r\\n {{iniciativa['nombre_iniciativa']}}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n Área dueña/Aplicación:
\\r\\n {{iniciativa.nombreArea}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Aplicación\\r\\n
\\r\\n {{iniciativa.nombreAplicacion}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Área dueña/Aplicación:
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Aplicación\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Aplicación\\r\\n
\\r\\n {{iniciativa.nombreAplicacion}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Área dueña/Aplicación:
\\r\\n {{iniciativa.nombreArea}}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Nombre del solicitante:
\\r\\n {{iniciativa['nombre_solicitante']}}\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n Email del solicitante:
\\r\\n {{iniciativa['email_solicitante']}}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Dirección Gral. solicitante:
\\r\\n {{iniciativa['nombre_dirgralSapSolicitante']}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Dirección de área solicitante:
\\r\\n {{iniciativa['nombre_areaSapSolicitante']}}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Teléfono:
\\r\\n {{iniciativa['telefono_solicitante']}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Extensión:
\\r\\n {{iniciativa['extencion_solicitante']}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Problemática a resolver:
\\r\\n {{iniciativa['problematica_iniciativa']}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Fecha de término propuesta:
\\r\\n {{iniciativa['fechaTermino_iniciativa'] | date:'yyyy-MM-dd'}} \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Justificación de la fecha propuesta:
\\r\\n {{iniciativa['justificacionFecha_iniciativa']}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n

Transacciones por mes

\\r\\n Número de trámites en sistema esperados por mes:
\\r\\n {{iniciativa['numeroTransacciones_Iniciativa']}}\\r\\n
\\r\\n

Impacto al negocio

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n Contribución al Programa de Gobierno\\r\\n \\r\\n Dependencia o Entidad Solicitante\\r\\n \\r\\n Impacto en la eficiencia de los procesos internos\\r\\n \\r\\n Mejorar el servicio a la ciudadanía\\r\\n \\r\\n Cumplimiento a Ley o Normatividad\\r\\n \\r\\n Contribución a la modernización de la Dependencia o Entidad solicitante\\r\\n \\r\\n {{im.detalle_iniciativaImpacto}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Solución propuesta

\\r\\n {{iniciativa['solucionPropuesta_iniciativa']}}\\r\\n
\\r\\n
\\r\\n
\\r\\n

Beneficiarios

\\r\\n
\\r\\n
\\r\\n Usuarios directos:
\\r\\n {{iniciativa['beneficiariosDirectos_iniciativa']}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Beneficiarios:
\\r\\n {{iniciativa['beneficiariosImplementacion_iniciativa']}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Procesos

\\r\\n
\\r\\n
\\r\\n Nombre del proceso:
\\r\\n {{iniciativa['nombreProceso_iniciativa']}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n No hay archivo adjunto\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n No hay archivo adjunto\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Anexos

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n No hay archivo adjunto\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Costeo

\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

1\\\" class=\\\"text-info\\\">Equipo de trabajo

\\r\\n
1\\\">\\r\\n
    \\r\\n
  • \\r\\n {{integrante.nombre_rol}}
    \\r\\n Nombre: {{integrante.nombre_usuario}}
    \\r\\n Email: {{integrante.email_usuario}}\\r\\n
  • \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \";","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJsb2dpbi5jb21wb25lbnQuc2NzcyJ9 */\";","import { Component, OnInit,ViewChild } from '@angular/core';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\nimport {MatPaginator} from '@angular/material/paginator';\r\nimport{ ConfirmListadoIniciativasAdminComponent} from 'src/app/components/shared/confirm-listado-iniciativas-admin/confirm-listado-iniciativas-admin.component';\r\n\r\n\r\n\r\nexport interface Motivos {\r\n id_motivo: number;\r\n id_tipoMotivo:number;\r\n nombre_tipoMotivo: string;\r\n descripcion_motivo: string\r\n}\r\n\r\n@Component({\r\n selector: 'app-motivos-iniciativa',\r\n templateUrl: './motivos-iniciativa.component.html',\r\n styleUrls: ['./motivos-iniciativa.component.css']\r\n})\r\nexport class MotivosIniciativaComponent implements OnInit {\r\n listaMotivos:Motivos[]=[];\r\n displayedColumns: string[] = ['Motivo', 'Tipo', 'Acciones'];\r\n dataSource:any;\r\n botonPresionado:number;\r\n loadingGeneral: boolean = true;\r\n @ViewChild('TablaMotivos', {static: false}) paginator: MatPaginator;\r\n\r\n\r\n\r\n constructor(private dataService: DataService,\r\n public dialog:MatDialog,\r\n private notifier: NotifierService) { }\r\n\r\n ngOnInit(): void {\r\n //Cargamos la lista de los motivos\r\n this.cargarMotivos();\r\n }\r\n\r\n cargarMotivos()\r\n {\r\n this.loadingGeneral = true;\r\n this.dataService.getListMotivos().subscribe(\r\n data => {\r\n this.listaMotivos = data['data'];\r\n this.dataSource = new MatTableDataSource(this.listaMotivos);\r\n this.dataSource.paginator=this.paginator;\r\n this.loadingGeneral = false;\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n\r\n //Método para las acciones de la tabla de periodos\r\n onSubmitReactive(btnId:number, id_motivo:number,){\r\n this.botonPresionado=btnId;\r\n //Opcion de Agregar\r\n if(this.botonPresionado==1)\r\n {\r\n this.agregarMotivo();\r\n }\r\n \r\n //Opcion de Editar\r\n if(this.botonPresionado==2)\r\n {\r\n this.editarMotivo(id_motivo);\r\n }\r\n \r\n //Opcion de Eliminar\r\n if(this.botonPresionado==3)\r\n {\r\n this.eliminarMotivo(id_motivo);\r\n }\r\n \r\n }\r\n \r\n //Método para eliminar el motivo\r\n eliminarMotivo(id_motivo:number)\r\n {\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id_periodo:id_motivo,opcion:16},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.dataService.deleteMotivo(id_motivo).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.cargarMotivos();\r\n //this.cargarAnteriores();\r\n //this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar el motivo. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n this.botonPresionado=0;\r\n }\r\n }); \r\n }\r\n\r\n //Agregar motivo\r\n agregarMotivo()\r\n { \r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{opcion:15, titulo:\"Agregar motivo de rechazo/suspención/cancelación\"},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.dataService.addMotivos(result).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se agrego correctamente.'\r\n );\r\n this.cargarMotivos();\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar agregar el motivo. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n this.botonPresionado=0;\r\n }\r\n }); \r\n}\r\n\r\n//Método para editar motivo\r\neditarMotivo(id__motivo:number)\r\n{\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id_motivo:id__motivo,opcion:17,titulo:\"Editar motivo\"},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.dataService.updateMotivo(id__motivo,result).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se edito correctamente.'\r\n );\r\n this.cargarMotivos();\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar el motivo. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n this.botonPresionado=0;\r\n }\r\n }); \r\n\r\n}\r\n\r\n //Método para aplicar el filtro \r\n applyFilter(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n}\r\n\r\n}\r\n","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n

Motivos registrados

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Buscar\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Motivo {{element.descripcion_motivo}} Tipo{{element.nombre_tipoMotivo}} Acciones\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\";","export default \"\\r\\n\\r\\n

Confirmación

\\r\\n
\\r\\n {{mensaje}}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\";","import { Component, OnInit, Input, NgZone,ViewChild } from '@angular/core';\r\nimport { TablaMisIniciativas, Iniciativa, PriorizacionArea,PriorizacionGral, PriorizacionSubsecretario } from 'src/app/interfaces/interfaces';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { PaginadoAdiminstrador, Paginado} from 'src/app/models/paginado';\r\nimport {CdkDragDrop, moveItemInArray,CdkDropList, transferArrayItem} from '@angular/cdk/drag-drop';\r\nimport {MatTable} from '@angular/material/table';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { Router } from '@angular/router';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-priorizacion',\r\n templateUrl: './modal-priorizacion.component.html',\r\n styleUrls: ['./modal-priorizacion.component.css']\r\n})\r\n\r\nexport class ModalPriorizacionComponent implements OnInit {\r\n @ViewChild('table1') table1: MatTable;\r\n @ViewChild('table2') table2: MatTable;\r\n @ViewChild('list1') list1: CdkDropList;\r\n \r\n tablaPriorizacion: TablaMisIniciativas[] = [];\r\n tablaOrdenada:PriorizacionArea[]=[];\r\n tabla:PriorizacionArea[]=[];\r\n tablaGral:PriorizacionGral[]=[];\r\n tablaSubse:PriorizacionSubsecretario[]=[];\r\n idRolSeleccionado:number;\r\n // Loading\r\n loadingFiltro: boolean = true;\r\n loadingGeneral: boolean = true;\r\n // Animacion tabla\r\n pulseAnimacion: string;\r\n // Cuenta usuario\r\n @Input() emailUser: string;\r\n @Input() modoLider: boolean;\r\n @Input() modoAdmin: boolean;\r\n filtrado = false;\r\n \r\n @ViewChild('table') table: MatTable;\r\n @ViewChild('list') list: CdkDropList;\r\n displayedColumns: string[] = ['position', 'Folio', 'Sistema', 'Tipo','Solicitante','Fecha','Estatus'];\r\n dataSource:any;\r\n paginado: PaginadoAdiminstrador;\r\n loading:boolean=false;\r\n esPeriodo: boolean;\r\n paginaActualPaginado: Paginado;\r\n\r\n\r\n constructor(private dataService: DataService,\r\n private notifier: NotifierService,\r\n private zone: NgZone,\r\n private router: Router,\r\n private authService: AuthService) \r\n {\r\n //this.emailUser=datos['tabla'];\r\n }\r\n\r\n ngOnInit(): void {\r\n \r\n //Nos subscribimos al método para el rol seleccionado\r\n this.authService.escuchaRolSeleccionado().subscribe((res) => {\r\n this.idRolSeleccionado = res;\r\n });\r\n //Verificamos si es periodo de priorizacion\r\n this.dataService.getPeriodoPriorizacion(this.idRolSeleccionado).subscribe(\r\n data=>{\r\n this.esPeriodo=data['objData'];\r\n }\r\n );\r\n\r\n this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n //return this.emailUser;\r\n\r\n this.paginado = new PaginadoAdiminstrador();\r\n this.paginado.orderByGeneral=false;\r\n this.paginado.numeroPagina = 1;\r\n this.paginado.opcion = 1;\r\n this.paginado.email=this.emailUser;\r\n this.verDetallesIniciativa(this.paginado)\r\n });\r\n\r\n }\r\n \r\n dropTable(event: CdkDragDrop) \r\n {\r\n const prevIndex = this.tablaPriorizacion.findIndex((d) => d === event.item.data);\r\n moveItemInArray(this.tablaPriorizacion, event.previousIndex, event.currentIndex);\r\n //prevIndex\r\n //this.table.renderRows();\r\n this.tablaOrdenada=event.container.data;\r\n /*this.dataSource.forEach((value, index) => {\r\n let v={\r\n 'id_iniciativa':value['id_iniciativa'],\r\n 'priorizacion_gralIniciativa':value['priorizacion_gralIniciativa'],\r\n 'priorizacion_subSecIniciativa':value['priorizacion_subSecIniciativa'],\r\n 'priorizacion_areaIniciativa':index+1\r\n }\r\n this.tabla.push(v);\r\n });*/\r\n }\r\n \r\n \r\n verDetallesIniciativa(paginado:PaginadoAdiminstrador) \r\n {\r\n this.dataService.obtenerIniciativasPriorizacion(paginado.email,this.idRolSeleccionado,paginado.orderByGeneral).subscribe(\r\n data => {\r\n this.tablaPriorizacion=data['data'];\r\n this.dataSource = data['data'];\r\n this.loading=false;\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Error al intentar obtener la información de la iniciativa. Verifica tu conexión de red.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n //Método para guardar la priorización del direcctor de área\r\n guardarPriorizacionArea()\r\n {\r\n //this.loading=true;\r\n this.tablaOrdenada.forEach((value, index) => {\r\n let json={\r\n 'id_iniciativa':value['id_iniciativa'],\r\n 'priorizacion_areaIniciativa':index+1,\r\n 'id_estatusIniciativa':value['id_estatusIniciativa']\r\n\r\n }\r\n this.tabla.push(json);\r\n });\r\n \r\n var myJSON = JSON.stringify(this.tabla);\r\n\r\n let valores={\r\n 'userlogin':this.emailUser,\r\n 'json_priorización':myJSON,\r\n }\r\n //Enviamos los valores para priorizar\r\n this.dataService.envioPriorizacionArea(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.loading=false\r\n this.notifier.notify('error',data['errorMessage']);\r\n //this.zone.run(() => this.router.navigate(['/iniciativas']));\r\n //this.notifier.notify('error', 'No se han podido priorizar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.')\r\n } else {\r\n this.notifier.notify('success', 'Priorización registrada correctamente.');\r\n this.zone.run(() => this.router.navigate(['/iniciativas']));\r\n //this.verDetallesIniciativa(this.paginado);\r\n //this.loading=false\r\n }\r\n }\r\n );\r\n }\r\n\r\n //Método para guardar la priorización del direcctor gral.\r\n guardarPriorizacionGral()\r\n {\r\n //this.loading=true;\r\n this.tablaOrdenada.forEach((value, index) => {\r\n let json={\r\n 'id_iniciativa':value['id_iniciativa'],\r\n 'priorizacion_gralIniciativa':index+1,\r\n 'id_estatusIniciativa':value['id_estatusIniciativa']\r\n }\r\n this.tablaGral.push(json);\r\n });\r\n \r\n var myJSON = JSON.stringify(this.tablaGral);\r\n\r\n let valores={\r\n 'userlogin':this.emailUser,\r\n 'json_priorización':myJSON\r\n }\r\n //Enviamos los valores para priorizar\r\n this.dataService.envioPriorizacionGral(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.loading=false\r\n this.notifier.notify('error',data['errorMessage']);\r\n //this.notifier.notify('error', 'No se han podido priorizar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.')\r\n } else {\r\n this.notifier.notify('success', 'Priorización registrada correctamente.');\r\n this.zone.run(() => this.router.navigate(['/iniciativas']));\r\n //this.verDetallesIniciativa(this.paginado);\r\n //this.loading=false\r\n }\r\n }\r\n );\r\n }\r\n\r\n //Método para guardar la priorización del direcctor de área\r\n guardarPriorizacionSubse()\r\n {\r\n\r\n if(this.tablaOrdenada.length > 0 )\r\n {\r\n this.tablaOrdenada.forEach((value, index) => {\r\n let json={\r\n 'id_iniciativa':value['id_iniciativa'],\r\n 'priorizacion_subSecIniciativa':index+1,\r\n 'id_estatusIniciativa':value['id_estatusIniciativa']\r\n }\r\n this.tablaSubse.push(json);\r\n });\r\n var myJSON = JSON.stringify(this.tablaSubse);\r\n\r\n }\r\n else{\r\n //si se ordeno respecto a la UR\r\n if(this.paginado.orderByGeneral==true)\r\n {\r\n this.tablaPriorizacion.forEach((value, index) => {\r\n let json={\r\n 'id_iniciativa':value['id_iniciativa'],\r\n 'priorizacion_subSecIniciativa':value['priorizacion_gralIniciativa'],\r\n 'id_estatusIniciativa':value['id_estatusIniciativa']\r\n }\r\n this.tablaSubse.push(json);\r\n });\r\n var myJSON = JSON.stringify(this.tablaSubse);\r\n }else{\r\n this.tablaOrdenada.forEach((value, index) => {\r\n let json={\r\n 'id_iniciativa':value['id_iniciativa'],\r\n 'priorizacion_subSecIniciativa':index+1,\r\n 'id_estatusIniciativa':value['id_estatusIniciativa']\r\n }\r\n this.tablaSubse.push(json);\r\n });\r\n var myJSON = JSON.stringify(this.tablaSubse);\r\n }\r\n }\r\n \r\n //this.loading=true;\r\n let valores={\r\n 'userlogin':this.emailUser,\r\n 'json_priorización':myJSON\r\n }\r\n //Enviamos los valores para priorizar\r\n this.dataService.envioPriorizacionSubsecretario(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.loading=false\r\n this.notifier.notify('error',data['errorMessage']);\r\n //this.notifier.notify('error', 'No se han podido priorizar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.')\r\n } else {\r\n this.notifier.notify('success', 'Priorización registrada correctamente.');\r\n this.zone.run(() => this.router.navigate(['/iniciativas']));\r\n //this.verDetallesIniciativa(this.paginado);\r\n //this.loading=false\r\n }\r\n }\r\n );\r\n }\r\n\r\n \r\ncerrar(){\r\n this.zone.run(() => this.router.navigate(['/iniciativas']));\r\n}\r\n\r\ndescargarExcelPriorizacion(){\r\n let valores={\r\n 'email':this.emailUser,\r\n 'rolUserlogin':this.idRolSeleccionado\r\n }\r\n this.dataService.descargarExcelPriorizacion(valores).subscribe(res => {\r\n let newBlob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = \"Iniciativas para priorización\";\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n});\r\n\r\n\r\n}\r\n\r\n//Metodo para ordenar por director de area\r\nsortingDirGral()\r\n{\r\n this.loading=true;\r\n if(this.paginado.orderByGeneral==false){\r\n this.paginado.orderByGeneral=true;\r\n }\r\n else{\r\n this.paginado.orderByGeneral=false;\r\n }\r\n this.verDetallesIniciativa(this.paginado);\r\n //this.loading=false;\r\n\r\n}\r\n\r\n\r\n}\r\n","import { Component, OnInit, Output,EventEmitter,Input } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators,FormBuilder } from '@angular/forms';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport {Router} from '@angular/router';\r\nimport {Usuario,DireccionArea,DireccionGral} from 'src/app/interfaces/interfaces';\r\nimport{ ConfirmComponent} from 'src/app/components/shared/confirm/confirm.component';\r\nimport {MatDialogModule, MatDialog} from '@angular/material/dialog';\r\nimport { AuthService } from '../../services/auth.service';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-usuario',\r\n templateUrl: './modal-usuario.component.html',\r\n styleUrls: ['./modal-usuario.component.scss']\r\n})\r\n\r\n\r\nexport class ModalUsuarioComponent implements OnInit {\r\n formUsuariosAgregar: FormGroup;\r\n formUsuarioBuscar:FormGroup;\r\n rolesUsuario: { id_rol: number; nombre_rol: string; }[];\r\n rolesSeleccionados: string[] = [];\r\n opcionAdministracion: number = 1;\r\n mostrarFormularioAgregar: boolean = false;\r\n //Lista de jefaturas \r\n listaJefaturas:{id_jefatura:number; nombre_jefatura:string}[];\r\n listaSubsecretarias:{id_subsecretariaSap:number; nombre_subsecretariaSap:string}[];\r\n\r\n //Variable para mostrar o no el combo de jefatura\r\n mostrarJefatura : boolean=false;\r\n //Variable para mostrar el combo de subsecretaria\r\n mostrarSubsecretaria:boolean=false;\r\n //Mostrar boton de búsqueda\r\n mostrarBtnBusqueda:boolean=true;\r\n mostrarFormBusqueda:boolean=true;\r\n //Variable de salida \r\n @Output()botonCancelar = new EventEmitter();\r\n cadena:string;\r\n direccionesGral: DireccionGral[];\r\n direccionesGralbySubse: DireccionGral[];\r\n direccionesArea: DireccionArea[];\r\n areaGralSeleccionada: string;\r\n emailUser:string;\r\n subsecretaria:number;\r\n loadingGeneral: boolean = false;\r\n\r\n \r\n get fa() { // acceso a la form para insertar usuarios\r\n return this.formUsuariosAgregar.controls;\r\n }\r\n get fag() { // acceso a la form para insertar usuarios\r\n return this.formUsuariosAgregar;\r\n }\r\n\r\n get fb() { // acceso a la form para insertar usuarios\r\n return this.formUsuarioBuscar.controls;\r\n }\r\n get fab() { // acceso a la form para insertar usuarios\r\n return this.formUsuarioBuscar;\r\n }\r\n\r\n constructor(\r\n private dataService: DataService,\r\n private notifier: NotifierService,\r\n private router:Router,\r\n public dialog:MatDialog,\r\n private authService: AuthService\r\n ) { \r\n\r\n //Obtener los roles\r\n this.dataService.obtenerTiposUsuariosv2().subscribe(\r\n data => {\r\n this.rolesUsuario = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n\r\n }\r\n\r\n ngOnInit() {\r\n\r\n \r\n\r\n this.formUsuariosAgregar = new FormGroup({\r\n nombre_usuario: new FormControl('', [Validators.required]),\r\n email_usuario: new FormControl('', [Validators.required, Validators.email]),\r\n estatus_usuario: new FormControl(1, [Validators.required]),\r\n dep_usuario: new FormControl('', [Validators.required]),\r\n vip_usuario: new FormControl(0, [Validators.required]),\r\n puesto_usuario: new FormControl('', [Validators.required]),\r\n telefono_usuario: new FormControl(''),\r\n extension_usuario: new FormControl(''),\r\n id_jefatura: new FormControl(''),\r\n id_subsecretariaSap: new FormControl(''),\r\n id_dirgralSap: new FormControl('',[Validators.required]),\r\n id_areaSap:new FormControl('',[Validators.required]),\r\n Roles: new FormControl('', [Validators.required]),\r\n email_usuarioLogin: new FormControl('', [Validators.required, Validators.email]),\r\n //opcion: new FormControl(1),\r\n //direccion_areaUsuario: new FormControl('', [Validators.required]),\r\n //dirGral: new FormControl('', [Validators.required]),\r\n });\r\n this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n this.formUsuariosAgregar.patchValue({\r\n email_usuarioLogin:user\r\n })\r\n //return this.emailUser;\r\n });\r\n\r\n this.formUsuarioBuscar=new FormGroup({\r\n email_usuario: new FormControl('', [Validators.required, Validators.email])\r\n });\r\n this.obtenerSubsecretarias();\r\n \r\n //Obtener las direcciones generales\r\n this.dataService.obtenerDireccionGral(0,this.emailUser).subscribe(data => {\r\n this.direccionesGral = data['data'];\r\n });\r\n \r\n\r\n }\r\n\r\n cancelar()\r\n {\r\n this.botonCancelar.emit(true);\r\n this.mostrarFormularioAgregar=false;\r\n //this.router.navigate(['./control-usuarios'])\r\n //this.router.navigate(['./administracion']);\r\n }\r\n\r\n //Abrir cuadro de dialogo\r\n openDialog ()\r\n {\r\n let dialogRef = this.dialog.open(ConfirmComponent,{data:`Correo no existente en registros SAP ¿Desea agregarlo?`,disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.cancelar();\r\n }\r\n else{\r\n this.formUsuariosAgregar.patchValue({\r\n email_usuario:this.cadena,\r\n email_usuarioLogin:this.emailUser,\r\n estatus_usuario:true\r\n });\r\n this.mostrarBtnBusqueda=false;\r\n }\r\n });\r\n \r\n }\r\n\r\n limpiar()\r\n {\r\n this.formUsuarioBuscar.reset({email_usuario:\"\"});\r\n this.formUsuariosAgregar.reset({ opcion: 1, vip_usuario: 0, estatus_usuario: 1, \r\n nombre_usuario:\"\",email_usuario:\"\", dep_usuario:\"\",\r\n direccion_areaUsuario:\"\",puesto_usuario:\"\",Rol:\"\"});\r\n while(!this.listaJefaturas.length) {this.listaJefaturas.pop();}\r\n this.dataService.obtenerTiposUsuariosv2().subscribe(data => {\r\n this.rolesUsuario = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n ); \r\n\r\n }\r\n\r\n agregarQuitarRol(rol: string) \r\n {\r\n let index = this.rolesSeleccionados.indexOf(rol);\r\n\r\n if (index !== -1) {\r\n this.rolesSeleccionados = this.rolesSeleccionados.filter(el => el !== rol);\r\n } else {\r\n this.rolesSeleccionados.push(rol);\r\n }\r\n this.formUsuariosAgregar.patchValue({\r\n Roles: this.rolesSeleccionados.toString()\r\n });\r\n let subse=this.formUsuariosAgregar.controls['Roles'].value;\r\n let posicion=subse.indexOf(\"11\");\r\n //Verificamos si el rol es de tipo subsecretario\r\n if(posicion!== -1)\r\n {\r\n\r\n this.mostrarSubsecretaria=true;\r\n }\r\n else{\r\n this.mostrarSubsecretaria=false;\r\n this.formUsuariosAgregar.controls['id_subsecretariaSap'].reset();\r\n while(this.listaSubsecretarias.length) {\r\n this.listaSubsecretarias.pop();\r\n }\r\n } \r\n }\r\n\r\n /*Método para obtener las jefaturas \r\n obtenerJefaturas(user:Usuario)\r\n {\r\n this.dataService.obtenerJefaturas(user).subscribe(\r\n data => {\r\n this.listaJefaturas = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }*/\r\n\r\n //Método para obtener las subsecretarias \r\n obtenerSubsecretarias()\r\n {\r\n this.dataService.getListSubsecretarias().subscribe(\r\n data => {\r\n this.listaSubsecretarias = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Método para obtener usuarios de base de datos SAP\r\n buscarPorUsuario()\r\n {\r\n this.dataService.buscarPorUsuario(this.formUsuarioBuscar.value).subscribe(res => {\r\n if (res['errorMessage']) \r\n {\r\n this.notifier.notify('error','Ha ocurrido un error al intentar conectar con el server. Inténtalo nuevamente más tarde.');\r\n } else {\r\n\r\n switch (res['alert'].toString()) \r\n {\r\n case '0':\r\n this.cadena=this.formUsuarioBuscar.value['email_usuario'].toString();\r\n //res['objData']['response']==0 ||\r\n if(this.cadena.split(\"@\")[1] !=\"guanajuato.gob.mx\")//Si la cuenta no es @guanajauto\r\n {\r\n //console.log(this.cadena.split(\"@\")[1]);\r\n this.scrollInicio();\r\n this.openDialog();\r\n //this.notifier.notify('error', 'No existe usuario registrado en SAP con la cuenta especificada.');\r\n }else\r\n {\r\n if(res['objData']['response']==1)//Si existe en SAP\r\n {\r\n let infoUser: Usuario = res['objData'];\r\n //Llenar el combo de jefaturas\r\n //this.obtenerJefaturas(infoUser);\r\n this.mostrarFormularioAgregar=true;\r\n this.mostrarFormBusqueda=false;\r\n this.formUsuariosAgregar.patchValue({\r\n Roles: infoUser.roles,\r\n nombre_usuario: infoUser.nombre_usuario,\r\n puesto_usuario: infoUser.puesto_usuario,\r\n dep_usuario: infoUser.dep_usuario,\r\n vip_usuario: infoUser.vip_usuario,\r\n estatus_usuario: infoUser.estatus_usuario,\r\n //direccion_areaUsuario:infoUser.direccion_areaUsuario,\r\n id_areaSap:infoUser.id_areaSap,\r\n email_usuario:infoUser.email_usuario,\r\n id_dirgralSap:infoUser.id_dirgralSap\r\n });\r\n\r\n\r\n\r\n \r\n\r\n /* if(res['objData']['dirGral'].toUpperCase()==\"DIRECCION GENERAL DE TECNOLOGIAS DE LA INFORMACION Y TELECOMUNICACIONES\" ||\r\n res['objData']['dirGral'].toUpperCase()==\"DIR. GRAL. DE TEC. DE INFORM. Y TELECOM.\")\r\n {\r\n this.mostrarJefatura=true; \r\n }*/\r\n }\r\n else{\r\n this.openDialog();\r\n //this.notifier.notify('error', 'No existe usuario registrado en SAP con la cuenta especificada.');\r\n }\r\n \r\n }\r\n }\r\n }\r\n });\r\n\r\n }\r\n\r\n //Método para hacer la validación de la subsecretaria\r\n validacionSubsecretaria()\r\n {\r\n \r\n let valorControl=this.formUsuariosAgregar.get('id_subsecretariaSap');\r\n let variableRetorno;\r\n if(valorControl===null){\r\n variableRetorno=false;\r\n }\r\n else{\r\n variableRetorno=true;\r\n }\r\n return variableRetorno;\r\n }\r\n\r\n\r\n \r\n //Método para los combos de areas del solicitante\r\n onChangeArea(areaGral: string) \r\n {\r\n this.areaGralSeleccionada = areaGral;\r\n this.dataService.obtenerAreaSolicitante(parseInt(areaGral)).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.direccionesArea = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n\r\n //Método para obtener las jefaturas\r\n onChangeJefatura(dirArea:string)\r\n {\r\n let area=parseInt(dirArea);\r\n if(area==3001 || area==3005 || area==3002)\r\n {\r\n this.mostrarJefatura=true;\r\n this.dataService.obtenerJefaturas(area).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.listaJefaturas = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n\r\n\r\n }\r\n else{\r\n this.mostrarJefatura=false;\r\n }\r\n\r\n }\r\n\r\n\r\n //Método para cargar las direcciones gral. dependiendo a la subsecretaria\r\n onChangeSubsecretaria(idSubse:number){\r\n this.subsecretaria = idSubse;\r\n this.dataService.getDirGralBySubsecretaria(this.subsecretaria).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.direccionesGralbySubse = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n\r\n\r\n }\r\n\r\n \r\n insertUsuario()\r\n {\r\n this.loadingGeneral=true;\r\n this.dataService.insertarUsuarioV2(this.formUsuariosAgregar.value).subscribe(res => {\r\n if (res['errorMessage']) \r\n {\r\n this.notifier.notify('error', 'Ha ocurrido un error al intentar conectar con el server. Inténtalo nuevamente más tarde.');\r\n } else {\r\n //this.notifier.notify('success', 'Usuario guardado correctamente.');\r\n switch (res['alert'].toString()) {\r\n case '0':\r\n if(res['objData']['response']==1)\r\n {\r\n this.mostrarFormBusqueda=true;\r\n this.mostrarFormularioAgregar=false;\r\n this.areaGralSeleccionada=\"0\";\r\n this.mostrarBtnBusqueda=true;\r\n this.scrollInicio();\r\n this.notifier.notify('error', 'Ya existe un usuario registrado con la cuenta especificada.');\r\n this.rolesSeleccionados=[];\r\n this.direccionesArea=[];\r\n this.loadingGeneral=false;\r\n this.formUsuariosAgregar.reset();\r\n this.formUsuarioBuscar.reset();\r\n \r\n this.formUsuariosAgregar.patchValue({\r\n email_usuarioLogin: this.emailUser\r\n });\r\n\r\n /*this.formUsuarioBuscar.reset({email_usuario:\"\"});\r\n this.formUsuariosAgregar.reset({ opcion: 1,vip_usuario: 0, estatus_usuario: 1, \r\n nombre_usuario:\"\",email_usuario:\"\", dep_usuario:\"\",\r\n direccion_areaUsuario:\"\",puesto_usuario:\"\",Roles:\"\"});\r\n /* while(this.listaJefaturas.length) {\r\n this.listaJefaturas.pop();\r\n }*/\r\n this.dataService.obtenerTiposUsuariosv2().subscribe(\r\n data => {\r\n this.rolesUsuario = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n ); \r\n break;\r\n }else{\r\n this.mostrarFormBusqueda=true;\r\n this.mostrarFormularioAgregar=false;\r\n this.mostrarBtnBusqueda=true;\r\n this.areaGralSeleccionada=\"0\";\r\n this.scrollInicio();\r\n this.notifier.notify('success', 'Usuario registrado correctamente.');\r\n this.rolesSeleccionados=[];\r\n this.direccionesArea=[];\r\n this.loadingGeneral=false;\r\n this.formUsuariosAgregar.reset();\r\n this.formUsuarioBuscar.reset();\r\n\r\n \r\n this.formUsuariosAgregar.patchValue({\r\n email_usuarioLogin: this.emailUser\r\n });\r\n\r\n /*this.formUsuarioBuscar.reset({email_usuario:\"\"});\r\n this.formUsuariosAgregar.reset({ opcion: 1,vip_usuario: 0, estatus_usuario: 1, \r\n nombre_usuario:\"\",email_usuario:\"\", dep_usuario:\"\",\r\n direccion_areaUsuario:\"\",puesto_usuario:\"\",Rol:\"\"});*/\r\n /*while(this.listaJefaturas.length) {\r\n this.listaJefaturas.pop();\r\n }*/\r\n \r\n this.dataService.obtenerTiposUsuariosv2().subscribe(\r\n data => {\r\n this.rolesUsuario = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n ); \r\n }\r\n break;\r\n case '1': \r\n this.mostrarFormBusqueda=true;\r\n this.mostrarFormularioAgregar=false;\r\n this.mostrarBtnBusqueda=true;\r\n this.areaGralSeleccionada=\"0\";\r\n this.scrollInicio();\r\n this.notifier.notify('error', res['notificaciones']);\r\n this.rolesSeleccionados=[];\r\n this.direccionesArea=[];\r\n this.loadingGeneral=false;\r\n this.formUsuariosAgregar.reset();\r\n this.formUsuarioBuscar.reset();\r\n\r\n \r\n this.formUsuariosAgregar.patchValue({\r\n email_usuarioLogin: this.emailUser\r\n });\r\n\r\n break;\r\n }\r\n \r\n }\r\n }, error => {\r\n console.error(error);\r\n this.notifier.notify('error', 'No se ha podido guardar el usuario. Revisa tu conexión de red.');\r\n });\r\n }\r\n\r\n\r\n scrollInicio() {\r\n const scrollToTop = window.setInterval(() => {\r\n const pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // pasos cada intervalo\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 16);\r\n }\r\n}\r\n","import { Component, OnInit,Input, NgModule,Inject} from '@angular/core';\r\nimport { Proceso, Procedimiento } from 'src/app/interfaces/interfaces';\r\nimport { FormGroup, FormControl, Validators,FormArray } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogTitle} from '@angular/material/dialog';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-procedimiento',\r\n templateUrl: './modal-procedimiento.component.html',\r\n styleUrls: ['./modal-procedimiento.component.css']\r\n})\r\nexport class ModalProcedimientoComponent implements OnInit {\r\n\r\n //Sección de variables\r\n proceso:Proceso;\r\n rol: string;\r\n formProcedimiento: FormGroup;\r\n\r\n \r\n constructor(public dialog:MatDialog,@Inject(MAT_DIALOG_DATA) public datos:any) \r\n {}\r\n\r\n ngOnInit(): void {\r\n this.formProcedimiento= new FormGroup({\r\n rol_procesoDetalle: new FormControl(''),\r\n puesto_procesoDetalle: new FormControl(''),\r\n tiempoOperacion_procesoDetalle: new FormControl(''),\r\n tiempoEspera_procesoDetalle: new FormControl(''),\r\n nivelTabular_procesoDetalle: new FormControl(''),\r\n numParticipantes_procesoDetalle: new FormControl(''),\r\n tipoProceso_procesoDetalle: new FormControl(''),\r\n id_proceso : new FormControl(''),\r\n id_procesoDetalle: new FormControl('')\r\n })\r\n\r\n if(this.datos['data'])\r\n {\r\n let json=JSON.parse(this.datos['data']);\r\n this.formProcedimiento.patchValue({\r\n rol_procesoDetalle:json['rol_procesoDetalle'],\r\n puesto_procesoDetalle:json['puesto_procesoDetalle'],\r\n tiempoOperacion_procesoDetalle:json['tiempoOperacion_procesoDetalle'],\r\n tiempoEspera_procesoDetalle:json['tiempoEspera_procesoDetalle'],\r\n nivelTabular_procesoDetalle:json['nivelTabular_procesoDetalle'],\r\n numParticipantes_procesoDetalle:json['numParticipantes_procesoDetalle'],\r\n tipoProceso_procesoDetalle:json['tipoProceso_procesoDetalle'],\r\n id_proceso:json['id_proceso'],\r\n id_procesoDetalle:json['id_procesoDetalle']\r\n })\r\n\r\n }\r\n }\r\n\r\n}\r\n","export default \"
\\r\\n
\\r\\n
\\r\\n

\\r\\n Secretaría de Finanzas, Inversión y Administración\\r\\n

\\r\\n Carretera Guanajuato-Juventino Rosas km 9.5 Colonia Yerbabuena,
\\r\\n Guanajuato, GTO., C.P. 36094
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n © 2019 Gobierno del Estado de Guanajuato, Derechos Reservados\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\";","export default \"\\r\\n::ng-deep .icon-outside .close-button{\\r\\n float: right;\\r\\n top:-52px;\\r\\n right:-52px;\\r\\n }\\r\\n \\r\\n ::ng-deep .icon-outside .mat-dialog-container {\\r\\n overflow: unset\\r\\n }\\r\\n \\r\\n .close-button{\\r\\n float: right;\\r\\n top:-24px;\\r\\n right:-24px;\\r\\n }\\r\\n \\r\\n .close-icon {\\r\\n transition: 1s ease-in-out;\\r\\n }\\r\\n \\r\\n .close-icon:hover {\\r\\n transform: rotate(180deg);\\r\\n }\\r\\n \\r\\n .comentarios{\\r\\n overflow: hidden;\\r\\n }\\r\\n \\r\\n .acciones{\\r\\n padding-left: 0%;\\r\\n}\\r\\n \\r\\n .mat-form-field{\\r\\n width: 100%;\\r\\n}\\r\\n \\r\\n #combo{\\r\\n display: block;\\r\\n position: relative;\\r\\n flex: auto;\\r\\n min-width: 0;\\r\\n width: 500px;\\r\\n }\\r\\n \\r\\n .table{\\r\\n table-layout: fixed;\\r\\n width: 100%;\\r\\n}\\r\\n \\r\\n th, td {\\r\\n word-wrap: break-word;\\r\\n}\\r\\n \\r\\n .mat-dialog-content{\\r\\n font-size: 14pt !important;\\r\\n font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;\\r\\n}\\r\\n \\r\\n .btn-success{\\r\\n font-size: 12pt !important;\\r\\n font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbmZpcm0tbGlzdGFkby1pbmljaWF0aXZhcy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQTtJQUNJLFlBQVk7SUFDWixTQUFTO0lBQ1QsV0FBVztFQUNiOztFQUVBO0dBQ0M7RUFDRDs7RUFFRjtJQUNJLFlBQVk7SUFDWixTQUFTO0lBQ1QsV0FBVztFQUNiOztFQUVBO0lBQ0UsMEJBQTBCO0VBQzVCOztFQUVBO0lBQ0UseUJBQXlCO0VBQzNCOztFQUdBO01BQ0ksZ0JBQWdCO0VBQ3BCOztFQUVBO0tBQ0csZ0JBQWdCO0FBQ3JCOztFQUdBO0VBQ0UsV0FBVztBQUNiOztFQUVBO0lBQ0ksY0FBYztJQUNkLGtCQUFrQjtJQUNsQixVQUFVO0lBQ1YsWUFBWTtJQUNaLFlBQVk7RUFDZDs7RUFHRjtFQUNFLG1CQUFtQjtFQUNuQixXQUFXO0FBQ2I7O0VBRUE7RUFDRSxxQkFBcUI7QUFDdkI7O0VBRUE7RUFDRSwwQkFBMEI7RUFDMUIsNkVBQTZFO0FBQy9FOztFQUVBO0VBQ0UsMEJBQTBCO0VBQzFCLDZFQUE2RTtBQUMvRSIsImZpbGUiOiJjb25maXJtLWxpc3RhZG8taW5pY2lhdGl2YXMuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG46Om5nLWRlZXAgLmljb24tb3V0c2lkZSAuY2xvc2UtYnV0dG9ue1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgdG9wOi01MnB4O1xyXG4gICAgcmlnaHQ6LTUycHg7XHJcbiAgfVxyXG4gIFxyXG4gIDo6bmctZGVlcCAuaWNvbi1vdXRzaWRlIC5tYXQtZGlhbG9nLWNvbnRhaW5lciB7XHJcbiAgIG92ZXJmbG93OiB1bnNldFxyXG4gIH1cclxuXHJcbi5jbG9zZS1idXR0b257XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB0b3A6LTI0cHg7XHJcbiAgICByaWdodDotMjRweDtcclxuICB9XHJcbiAgXHJcbiAgLmNsb3NlLWljb24ge1xyXG4gICAgdHJhbnNpdGlvbjogMXMgZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG4gIFxyXG4gIC5jbG9zZS1pY29uOmhvdmVyIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgfVxyXG5cclxuICBcclxuICAuY29tZW50YXJpb3N7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICAuYWNjaW9uZXN7XHJcbiAgICAgcGFkZGluZy1sZWZ0OiAwJTtcclxufVxyXG5cclxuXHJcbi5tYXQtZm9ybS1maWVsZHtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuI2NvbWJve1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmbGV4OiBhdXRvO1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG4gICAgd2lkdGg6IDUwMHB4O1xyXG4gIH1cclxuXHJcbiAgXHJcbi50YWJsZXtcclxuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG50aCwgdGQge1xyXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxufVxyXG5cclxuLm1hdC1kaWFsb2ctY29udGVudHtcclxuICBmb250LXNpemU6IDE0cHQgIWltcG9ydGFudDtcclxuICBmb250LWZhbWlseTogJ0dpbGwgU2FucycsICdHaWxsIFNhbnMgTVQnLCBDYWxpYnJpLCAnVHJlYnVjaGV0IE1TJywgc2Fucy1zZXJpZjtcclxufVxyXG5cclxuLmJ0bi1zdWNjZXNze1xyXG4gIGZvbnQtc2l6ZTogMTJwdCAhaW1wb3J0YW50O1xyXG4gIGZvbnQtZmFtaWx5OiAnR2lsbCBTYW5zJywgJ0dpbGwgU2FucyBNVCcsIENhbGlicmksICdUcmVidWNoZXQgTVMnLCBzYW5zLXNlcmlmO1xyXG59Il19 */\";","export default \"\\r\\n\\r\\ntable {\\r\\n width: 100%;\\r\\n }\\r\\n\\r\\n .mat-form-field{\\r\\n display: block;\\r\\n position: relative;\\r\\n flex: auto;\\r\\n min-width: 0;\\r\\n width: 500px;\\r\\n }\\r\\n\\r\\n .fa-edit, .fa-trash{\\r\\n color: gray; \\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwbGljYWNpb25lcy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUE7SUFDSSxXQUFXO0VBQ2I7O0VBRUE7SUFDRSxjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLFVBQVU7SUFDVixZQUFZO0lBQ1osWUFBWTtFQUNkOztFQUdGO0VBQ0UsV0FBVztBQUNiIiwiZmlsZSI6ImFwbGljYWNpb25lcy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcblxyXG50YWJsZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIC5tYXQtZm9ybS1maWVsZHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZmxleDogYXV0bztcclxuICAgIG1pbi13aWR0aDogMDtcclxuICAgIHdpZHRoOiA1MDBweDtcclxuICB9XHJcblxyXG4gIFxyXG4uZmEtZWRpdCwgLmZhLXRyYXNoe1xyXG4gIGNvbG9yOiBncmF5OyBcclxufSJdfQ== */\";","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n

Aplicaciones

\\r\\n
\\r\\n
\\r\\n

\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Área dueña\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Área dueña {{element.nombre_area}} Acciones\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Aplicación\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Aplicación {{element.nombre_aplicacion}} Acciones\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Área dueña- Aplicación\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Área dueña\\r\\n \\r\\n \\r\\n {{area.nombre_area}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n Aplicación\\r\\n \\r\\n \\r\\n {{appSA.nombre_aplicacion}}\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Aplicación {{element.nombre_aplicacion}} Acciones\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\";","export default \"\\r\\n
\\r\\n
\\r\\n

Iniciativas Registradas

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Fecha Inicio\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Fecha Final\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Total registros {{this.totalRegistros}}
FolioFecha de envíoFecha de término propuestaPeriodoTrimestrePlaneado/UrgenteURDirección de áreaAplicaciónCambio/Nuevo sistemaProblemática a resolverJustificación
{{ iniciativa.folio_iniciativa}}{{ iniciativa.fechaEnvio_iniciativa | date: 'yyyy-MM-dd' }}{{ iniciativa.fechaTermino_iniciativa | date: 'yyyy-MM-dd' }}{{ iniciativa.periodo}}{{ iniciativa.trimestre}}{{ iniciativa.planeado_urgente}}{{ iniciativa.nombre_dirgralSapSolicitante}}{{ iniciativa.nombre_areaSapSolicitante}}{{ iniciativa.nombre_aplicacion}}{{ iniciativa.nombre_tipoiniciativa}}{{ iniciativa.problematica_iniciativa}}{{ iniciativa.justificacionFecha_iniciativa}}
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n \";","export default \"
\\r\\n
\\r\\n

Ingrese las especificaciones del requerimiento

\\r\\n
\\r\\n

Datos generales

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
0\\\">\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n El Email del solicitante no es una dirección de email válido.\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n Describa la situación que desea resolver a través de su solicitud\\r\\n

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

Anexos

\\r\\n
\\r\\n
\\r\\n Otros Archivos\\r\\n

\\r\\n Adjunte los documentos que considere necesarios para completar su\\r\\n solicitud, por ejemplo, pantallas de sistemas, manuales, formatos,\\r\\n etc. Si es más de un archivo genere una carpeta comprimida en formato\\r\\n ZIP o RAR.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\";","export default \"
\\r\\n
\\r\\n

Mis iniciativas lideradas

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\";","export default \"

Priorización

\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n No. \\r\\n \\r\\n {{i+1}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n Folio \\r\\n {{element.folio_iniciativa}} \\r\\n \\r\\n \\r\\n \\r\\n Sistema \\r\\n {{element.nombre_iniciativa}}\\r\\n \\r\\n \\r\\n \\r\\n Tipo de solicitud \\r\\n {{element.id_tipoIniciativa}} \\r\\n \\r\\n \\r\\n \\r\\n Solicitante \\r\\n {{element.nombre_solicitante}} \\r\\n \\r\\n \\r\\n \\r\\n Fecha \\r\\n {{element.fechaEnvio_iniciativa | date: 'yyyy-MM-dd' }} \\r\\n \\r\\n \\r\\n \\r\\n Estatus\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \";","export default \"\\r\\n

Priorización

\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n Para priorizar sus iniciativas posiciónese en el registro, \\r\\n arrastre hasta colocarlo en el orden deseado y guarde sus cambios.\\r\\n
\\r\\n\\r\\n
\\r\\n No se encuentra en periodo de priorización\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
PrioridadFolioSolicitudTipoSolicitanteDirección de áreaURPriorización UR Fecha de envíoEstatus
{{iniciativa.priorizacion_areaIniciativa}}{{iniciativa.priorizacion_gralIniciativa}}{{iniciativa.priorizacion_subSecIniciativa}}{{ iniciativa.folio_iniciativa}}{{ iniciativa.nombre_iniciativa}}{{ iniciativa.nombre_tipoIniciativa}}{{ iniciativa.nombre_solicitante}}{{ iniciativa.nombre_areaSapSolicitante}}{{ iniciativa.nombre_dirgralSapSolicitante}}{{ iniciativa.priorizacion_gralIniciativa}}{{ iniciativa.fechaEnvio_iniciativa | date: 'yyyy-MM-dd'}}{{iniciativa.nombre_estatusIniciativa}}
\\r\\n No se encontraron iniciativas para priorizar\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
PrioridadFolioSolicitudTipoSolicitanteDirección de áreaURPriorización UR Fecha de envíoEstatus
{{iniciativa.priorizacion_areaIniciativa}}{{iniciativa.priorizacion_gralIniciativa}}{{iniciativa.priorizacion_subSecIniciativa}}{{ iniciativa.folio_iniciativa}}{{ iniciativa.nombre_iniciativa}}{{ iniciativa.nombre_tipoIniciativa}}{{ iniciativa.nombre_solicitante}}{{ iniciativa.nombre_areaSapSolicitante}}{{ iniciativa.nombre_dirgralSapSolicitante}}{{iniciativa.priorizacion_gralIniciativa}}{{ iniciativa.fechaEnvio_iniciativa | date: 'yyyy-MM-dd'}}{{iniciativa.nombre_estatusIniciativa}}
\\r\\n No se encontraron iniciativas para priorizar\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\";","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn-bd\": \"loYQ\",\n\t\"./bn-bd.js\": \"loYQ\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-mx\": \"tbfe\",\n\t\"./es-mx.js\": \"tbfe\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","import { FormArray, FormGroup, ValidatorFn } from '@angular/forms';\r\n\r\nexport function almenosUnImpactoValidator(): ValidatorFn {\r\n return function validate(formGroup: FormGroup) {\r\n let impactos = 0;\r\n\r\n Object.keys(formGroup.controls).forEach(key => {\r\n const control = formGroup.controls[key];\r\n\r\n if (control.value !== '' && control.value !== null) {\r\n impactos++;\r\n }\r\n });\r\n\r\n if (impactos < 1) {\r\n return {\r\n almenosUnImpacto: true\r\n };\r\n }\r\n\r\n return null;\r\n };\r\n}\r\n\r\n\r\nexport function minSeleccionadoCheckboxes(min = 1) {\r\n const validator: ValidatorFn = (formArray: FormArray) => {\r\n const totalSeleccionados = formArray.controls\r\n // obtener el valor del checkbox\r\n .map(control => control.value)\r\n // total de checkbox seleccionados\r\n .reduce((prev, next) => next ? prev + next : prev, 0);\r\n\r\n // si el total es menor al minimo regresar error\r\n return totalSeleccionados >= min ? null : {\r\n required: true\r\n };\r\n };\r\n\r\n return validator;\r\n}\r\n\r\n\r\nexport function almenosUnTipoUsuarioValidator(): ValidatorFn {\r\n return function validate(formGroup: FormGroup) {\r\n let users = 0;\r\n Object.keys(formGroup.controls).forEach(key => {\r\n const control = formGroup.controls[key];\r\n\r\n if (control.value !== '' && control.value !== null) {\r\n users++;\r\n }\r\n });\r\n\r\n if (users < 1) {\r\n return {\r\n almenosUnTipoUsuario: true\r\n };\r\n }\r\n\r\n return null;\r\n };\r\n}\r\n\r\n\r\nexport function almenosUnCampoValidator(): ValidatorFn {\r\n return function validate(formGroup: FormGroup) {\r\n let campos = 0;\r\n Object.keys(formGroup.controls).forEach(key => {\r\n const control = formGroup.controls[key];\r\n if (control.value !== '' && control.value !== null) {\r\n campos++;\r\n }\r\n });\r\n\r\n if (campos < 1) {\r\n return {\r\n almenosUnCampo: true\r\n };\r\n }\r\n return null;\r\n };\r\n}\r\n\r\n","export default \".table {\\r\\n width: 80%;\\r\\n margin-bottom: 0rem;\\r\\n}\\r\\n\\r\\n.table th {\\r\\n font-style: normal;\\r\\n}\\r\\n\\r\\n.mat-form-field {\\r\\n font-size: 14px;\\r\\n width: 50%;\\r\\n}\\r\\n\\r\\n.fa-edit,\\r\\n.fa-history,\\r\\n.fa-arrows-h .fa-check,\\r\\n.fa-check-circle,\\r\\n.fa-clone,\\r\\n.fa-times-circle,\\r\\n.fa-trash,\\r\\n.fa-users,\\r\\n.fa-comments {\\r\\n color: gray;\\r\\n}\\r\\n\\r\\n/* calendario */\\r\\n\\r\\n.nada {\\r\\n background: #dedede;\\r\\n border-radius: 100%;\\r\\n}\\r\\n\\r\\n.directoresArea {\\r\\n background: #b6ffff;\\r\\n border-radius: 100%;\\r\\n}\\r\\n\\r\\n.directoresGenerales {\\r\\n background: #f3ceff;\\r\\n border-radius: 100%;\\r\\n}\\r\\n\\r\\n.envio {\\r\\n background: #ffd277;\\r\\n border-radius: 100%;\\r\\n}\\r\\n\\r\\n.example-custom-date-class {\\r\\n background: orange;\\r\\n border-radius: 100%;\\r\\n}\\r\\n\\r\\n.cols3 {\\r\\n display: grid;\\r\\n display: -ms-grid;\\r\\n grid-template-columns: 1fr 1fr 1fr;\\r\\n}\\r\\n\\r\\n.color {\\r\\n width: 30px;\\r\\n height: 30px;\\r\\n}\\r\\n\\r\\n.contAreaDetalle {\\r\\n display: grid;\\r\\n display: -ms-grid;\\r\\n grid-template-columns: 1fr 7fr;\\r\\n padding: 10px;\\r\\n}\\r\\n\\r\\n.descColor {\\r\\n margin-top: 2px;\\r\\n}\\r\\n\\r\\n.area {\\r\\n padding: 20px;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBlcmlvZG9zLWVudmlvLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxVQUFVO0lBQ1YsbUJBQW1CO0FBQ3ZCOztBQUVBO0lBQ0ksa0JBQWtCO0FBQ3RCOztBQUVBO0lBQ0ksZUFBZTtJQUNmLFVBQVU7QUFDZDs7QUFFQTs7Ozs7Ozs7O0lBU0ksV0FBVztBQUNmOztBQUdBLGVBQWU7O0FBRWY7SUFDSSxtQkFBbUI7SUFDbkIsbUJBQW1CO0FBQ3ZCOztBQUVBO0lBQ0ksbUJBQW1CO0lBQ25CLG1CQUFtQjtBQUN2Qjs7QUFFQTtJQUNJLG1CQUFtQjtJQUNuQixtQkFBbUI7QUFDdkI7O0FBRUE7SUFDSSxtQkFBbUI7SUFDbkIsbUJBQW1CO0FBQ3ZCOztBQUVBO0lBQ0ksa0JBQWtCO0lBQ2xCLG1CQUFtQjtBQUN2Qjs7QUFFQTtJQUNJLGFBQWE7SUFDYixpQkFBaUI7SUFDakIsa0NBQWtDO0FBQ3RDOztBQUVBO0lBQ0ksV0FBVztJQUNYLFlBQVk7QUFDaEI7O0FBRUE7SUFDSSxhQUFhO0lBQ2IsaUJBQWlCO0lBQ2pCLDhCQUE4QjtJQUM5QixhQUFhO0FBQ2pCOztBQUVBO0lBQ0ksZUFBZTtBQUNuQjs7QUFFQTtJQUNJLGFBQWE7QUFDakIiLCJmaWxlIjoicGVyaW9kb3MtZW52aW8uY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi50YWJsZSB7XHJcbiAgICB3aWR0aDogODAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcclxufVxyXG5cclxuLnRhYmxlIHRoIHtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuLm1hdC1mb3JtLWZpZWxkIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHdpZHRoOiA1MCU7XHJcbn1cclxuXHJcbi5mYS1lZGl0LFxyXG4uZmEtaGlzdG9yeSxcclxuLmZhLWFycm93cy1oIC5mYS1jaGVjayxcclxuLmZhLWNoZWNrLWNpcmNsZSxcclxuLmZhLWNsb25lLFxyXG4uZmEtdGltZXMtY2lyY2xlLFxyXG4uZmEtdHJhc2gsXHJcbi5mYS11c2VycyxcclxuLmZhLWNvbW1lbnRzIHtcclxuICAgIGNvbG9yOiBncmF5O1xyXG59XHJcblxyXG5cclxuLyogY2FsZW5kYXJpbyAqL1xyXG5cclxuLm5hZGEge1xyXG4gICAgYmFja2dyb3VuZDogI2RlZGVkZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbn1cclxuXHJcbi5kaXJlY3RvcmVzQXJlYSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjYjZmZmZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG5cclxuLmRpcmVjdG9yZXNHZW5lcmFsZXMge1xyXG4gICAgYmFja2dyb3VuZDogI2YzY2VmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbn1cclxuXHJcbi5lbnZpbyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZkMjc3O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG5cclxuLmV4YW1wbGUtY3VzdG9tLWRhdGUtY2xhc3Mge1xyXG4gICAgYmFja2dyb3VuZDogb3JhbmdlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG5cclxuLmNvbHMzIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBkaXNwbGF5OiAtbXMtZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XHJcbn1cclxuXHJcbi5jb2xvciB7XHJcbiAgICB3aWR0aDogMzBweDtcclxuICAgIGhlaWdodDogMzBweDtcclxufVxyXG5cclxuLmNvbnRBcmVhRGV0YWxsZSB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZGlzcGxheTogLW1zLWdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA3ZnI7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG59XHJcblxyXG4uZGVzY0NvbG9yIHtcclxuICAgIG1hcmdpbi10b3A6IDJweDtcclxufVxyXG5cclxuLmFyZWEge1xyXG4gICAgcGFkZGluZzogMjBweDtcclxufSJdfQ== */\";","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.scss']\r\n})\r\nexport class AppComponent {\r\n title = 'PortalIniciativas';\r\n}\r\n","export default \"\\r\\n\\r\\n.form-group{\\r\\n font-size: 14pt !important;\\r\\n font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;\\r\\n}\\r\\n.badge-status-4 {\\r\\n background-color: rgb(230, 136, 138);\\r\\n color: white;\\r\\n}\\r\\n.badge-status-5 {\\r\\n background-color: rgb(140, 200, 189);\\r\\n color: white;\\r\\n}\\r\\n.badge-status-6 {\\r\\n background-color: transparent;\\r\\n color: black;\\r\\n}\\r\\n/* Agrega más clases según sea necesario */\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1vZGFsLWNvbnN1bHRhLWluaWNpYXRpdmEuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBO0lBQ0ksMEJBQTBCO0VBQzVCLDZFQUE2RTtBQUMvRTtBQUNBO0VBQ0Usb0NBQW9DO0VBQ3BDLFlBQVk7QUFDZDtBQUNBO0VBQ0Usb0NBQW9DO0VBQ3BDLFlBQVk7QUFDZDtBQUNBO0VBQ0UsNkJBQTZCO0VBQzdCLFlBQVk7QUFDZDtBQUNBLDBDQUEwQyIsImZpbGUiOiJtb2RhbC1jb25zdWx0YS1pbmljaWF0aXZhLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuXHJcbi5mb3JtLWdyb3Vwe1xyXG4gICAgZm9udC1zaXplOiAxNHB0ICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1mYW1pbHk6ICdHaWxsIFNhbnMnLCAnR2lsbCBTYW5zIE1UJywgQ2FsaWJyaSwgJ1RyZWJ1Y2hldCBNUycsIHNhbnMtc2VyaWY7XHJcbn1cclxuLmJhZGdlLXN0YXR1cy00IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjMwLCAxMzYsIDEzOCk7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcbi5iYWRnZS1zdGF0dXMtNSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE0MCwgMjAwLCAxODkpO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG4uYmFkZ2Utc3RhdHVzLTYge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGNvbG9yOiBibGFjaztcclxufVxyXG4vKiBBZ3JlZ2EgbcOhcyBjbGFzZXMgc2Vnw7puIHNlYSBuZWNlc2FyaW8gKi9cclxuIl19 */\";","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Calendario de periodos de envío de Iniciativas
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n

CALENDARIO de iniciativas

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Envío
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Priorización directores de área
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Priorización directores generales
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\";","import { Component, OnInit, Input,Inject } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogTitle} from '@angular/material/dialog';\r\nimport { Proceso, Procedimiento } from 'src/app/interfaces/interfaces';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { FormGroup, FormControl} from '@angular/forms';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-costeo-consulta',\r\n templateUrl: './modal-costeo-consulta.component.html',\r\n styleUrls: ['./modal-costeo-consulta.component.css']\r\n})\r\nexport class ModalCosteoConsultaComponent implements OnInit {\r\ntablaProcedimientos: Procedimiento[]=[];\r\ntablaProcedimientosToBe: Procedimiento[]=[];\r\ntabla: Procedimiento[]=[];\r\nidProceso: string;\r\nidIniciativa:string;\r\nformProcesos: FormGroup;\r\ntabs = ['Procedimiento'];\r\nselectedTabs = new FormControl(0);\r\ntabSeleccionado:number=0;\r\ntabuladores: any[]=[];\r\n\r\n\r\n constructor(private dataService: DataService,\r\n public dialog:MatDialog,@Inject(MAT_DIALOG_DATA) public datos:any) {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.idIniciativa=this.datos['id_iniciativa'];\r\n this.idProceso=this.datos['id_proceso'];\r\n this.verDetallesProceso(parseInt(this.idIniciativa),0);\r\n \r\n\r\n this.formProcesos= new FormGroup({\r\n id_proceso:new FormControl(''),\r\n id_iniciativa: new FormControl(''),\r\n nombre_proceso: new FormControl(''),\r\n procedimiento_proceso: new FormControl(''),\r\n duenio_proceso: new FormControl(''),\r\n tramitesExternosASIS_proceso: new FormControl(''),\r\n tramitesInternosASIS_proceso: new FormControl(''),\r\n tramitesExternosTOBE_proceso: new FormControl(''),\r\n tramitesInternosTOBE_proceso: new FormControl(''),\r\n hojasImpresasASIS_proceso : new FormControl(''),\r\n hojasImpresasTOBE_proceso : new FormControl(''),\r\n kmRecorridosASIS_Proceso: new FormControl(''),\r\n kmRecorridosTOBE_Proceso: new FormControl('')\r\n\r\n })\r\n \r\n }\r\n\r\n\r\n//Método para recuperar los datos del costeo\r\nverDetallesProceso(id_iniciativa:number, id_proceso:number)\r\n{\r\n this.dataService.detalleProceso(id_iniciativa,id_proceso).subscribe(data => {\r\n if (data['objData']['proceso']) \r\n {\r\n let infoProceso: Proceso = data['objData']['proceso'];\r\n this.formProcesos.patchValue({\r\n id_proceso:infoProceso.id_proceso,\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso\r\n })\r\n }\r\n this.tabla=data['objData']['listDetalleProcesos'];\r\n //Llenamos los procedimientos\r\n if(data['objData']['listDetalleProcesos'])\r\n {\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n\r\n }\r\n this.tabuladores=data['objData']['listIdProceso'];\r\n /*this.tabuladores.forEach((element, index) => {\r\n this.tabs.push(`Procedimiento ${this.tabs.length + 1}`);\r\n });*/\r\n //Generamos los tabuladores necesarios\r\n for(let numero of this.tabuladores)\r\n {\r\n this.tabs.push(`Procedimiento ${this.tabs.length + 1}`); \r\n }\r\n\r\n //Eliminamos el ultimo tap cuando la iniciativa trae procesos \r\n if(this.tabuladores.length!=0)\r\n {\r\n this.removeTab(this.tabs.length-1);\r\n }\r\n //Eliminamos el ultmo tap\r\n //this.removeTab(this.tabs.length-1);\r\n});\r\n}\r\n\r\n //Eliminar tabs\r\n removeTab(index: number) \r\n {\r\n this.tabs.splice(index, 1);\r\n }\r\n \r\n //Metodo para navegar entre los tabuladores\r\n navegarTab(form:number)\r\n {\r\n this.tabSeleccionado=form;\r\n //Limpiamos la tabla de procedimientos/arrays\r\n this.formProcesos.reset();\r\n this.tabla=[];\r\n this.tablaProcedimientosToBe=[];\r\n this.tablaProcedimientos=[];\r\n this.tabuladores.forEach((element, index) => {\r\n if(form==index)\r\n {\r\n this.dataService.detalleProceso(parseInt(this.idIniciativa),element).subscribe(data => {\r\n if (data['objData']['proceso']) \r\n {\r\n let infoProceso: Proceso = data['objData']['proceso'];\r\n this.formProcesos.patchValue({\r\n id_proceso:infoProceso.id_proceso,\r\n nombre_proceso:infoProceso.nombre_proceso,\r\n procedimiento_proceso:infoProceso.procedimiento_proceso,\r\n duenio_proceso:infoProceso.duenio_proceso,\r\n tramitesExternosASIS_proceso:infoProceso.tramitesExternosASIS_proceso,\r\n tramitesExternosTOBE_proceso:infoProceso.tramitesExternosTOBE_proceso,\r\n tramitesInternosASIS_proceso:infoProceso.tramitesInternosASIS_proceso,\r\n tramitesInternosTOBE_proceso:infoProceso.tramitesInternosTOBE_proceso,\r\n hojasImpresasASIS_proceso:infoProceso.hojasImpresasASIS_proceso,\r\n hojasImpresasTOBE_proceso:infoProceso.hojasImpresasTOBE_proceso,\r\n kmRecorridosASIS_Proceso:infoProceso.kmRecorridosASIS_Proceso,\r\n kmRecorridosTOBE_Proceso:infoProceso.kmRecorridosTOBE_Proceso\r\n })\r\n }\r\n \r\n this.tabla=data['objData']['listDetalleProcesos'];\r\n //Llenamos los procedimientos\r\n if(data['objData']['listDetalleProcesos'])\r\n {\r\n for(let numero of this.tabla)\r\n {\r\n if(numero.tipoProceso_procesoDetalle==1)\r\n { \r\n this.tablaProcedimientosToBe.push(numero);\r\n }\r\n else{\r\n this.tablaProcedimientos.push(numero);\r\n }\r\n }\r\n \r\n }\r\n \r\n });\r\n }\r\n \r\n });\r\n \r\n }\r\n\r\n}\r\n","import { Component, OnInit, Inject, NgZone,ViewChild,ElementRef } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog} from '@angular/material/dialog';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { Router } from '@angular/router';\r\nimport { FormControl,FormGroup,FormBuilder } from '@angular/forms';\r\nimport { Validators } from '@angular/forms';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-confirm-listado-iniciativas',\r\n templateUrl: './confirm-listado-iniciativas.component.html',\r\n styleUrls: ['./confirm-listado-iniciativas.component.css']\r\n})\r\nexport class ConfirmListadoIniciativasComponent implements OnInit {\r\n confirmEnviarIniciativa:boolean=false;\r\n confirmFueraPeriodo:boolean=false;\r\n confirmDuplicarIniciativa:boolean=false;\r\n confirmEliminarIniciativa:boolean=false;\r\n confirmCancelacion:boolean=false;\r\n confirmHistorialIniciativa:boolean=false;\r\n confirmContactos:boolean=false;\r\n confirmComentarios:boolean=false;\r\n folioIniciativa:number;\r\n id_iniciativa:number;\r\n name:string;\r\n email:string;\r\n tablaHistorial:any[]=[];\r\n tablaHistorialCopia:any[]=[];\r\n\r\n tablaContactos:any[]=[];\r\n archivo:File;\r\n @ViewChild('labelComentarios',{static:false})\r\n labelComentarios: ElementRef;\r\n nombreArchivo:string;\r\n extencion:string;\r\n id_comentario:number;\r\n observacionesCancelacion:string;\r\n nombreRol:string;\r\n rol:number;\r\n estatus:number;\r\n rolesCatalogo: { id_rol: number; nombre_rol: string; }[];\r\n\r\n \r\n tablaComentarios:any[]=[];\r\n tablaComentariosNoVistos:any[]=[];\r\n tablaComentariosHistorial:any[]=[];\r\n listaEquipo:any[]=[];\r\n listaEquipoData:any[]=[];\r\n adv:boolean=false;\r\n response:any;\r\n\r\n\r\n\r\n sinComentarios:boolean=false;\r\n //Array para guardar los destinatarios de comentarios\r\n jsonDestinatarios: { id_rol: number; email_usuarioDestinatario: string; }[]=[];\r\n agregarComentario:boolean=false;\r\n\r\n \r\n //Form de comentarios\r\n formComentarios: FormGroup = new FormGroup({});\r\n //Varibles para asignar los comentarios \r\n integrante = new FormControl();\r\n comentario = new FormControl();\r\n archivoBase:any;\r\n\r\n\r\n\r\n constructor(public dialog:MatDialog, \r\n private dataService: DataService,\r\n private notifier: NotifierService,\r\n private zone: NgZone, \r\n private router: Router,\r\n private fc: FormBuilder,\r\n @Inject(MAT_DIALOG_DATA) \r\n public data: string) {\r\n\r\n //Form comentarios\r\n this.formComentarios=fc.group({\r\n integrante: ['', [Validators.required]],\r\n comentario: ['', [Validators.required]]\r\n })\r\n \r\n }\r\n\r\n\r\n \r\n ngOnInit(): void {\r\n //Envio de iniciatiava\r\n if(this.data['opcion']==3)\r\n {this.confirmHistorialIniciativa=true;\r\n this.folioIniciativa=this.data['folio'];\r\n this.getHistorialIniciativa(this.data['id_iniciativa']);\r\n }\r\n if(this.data['opcion']==4)\r\n {this.confirmEnviarIniciativa=true;}\r\n if(this.data['opcion']==5)\r\n {this.confirmFueraPeriodo=true;\r\n this.email=this.data['userLogin'];\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.rol=this.data['rolUserLogin'];\r\n this.data=\"\";\r\n }\r\n if(this.data['opcion']==6)\r\n {this.confirmDuplicarIniciativa=true;\r\n this.folioIniciativa=this.data['folio'];\r\n }\r\n if(this.data['opcion']==7)\r\n {this.confirmCancelacion=true;\r\n this.folioIniciativa=this.data['folio'];\r\n }\r\n if(this.data['opcion']==8)\r\n {this.confirmEliminarIniciativa=true;\r\n this.folioIniciativa=this.data['folio'];\r\n }\r\n if(this.data['opcion']==9)\r\n {this.confirmContactos=true;\r\n this.folioIniciativa=this.data['folio'];\r\n this.getContactosIniciativa(this.data['id_iniciativa']);\r\n }\r\n if(this.data['opcion']==10)\r\n {\r\n this.rolesCatalogoMe();\r\n this.confirmComentarios=true;\r\n this.name=this.data['userName'];\r\n this.email=this.data['email'];\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.rol=this.data['idRol'];\r\n this.folioIniciativa=this.data['folio'];\r\n this.estatus=this.data['estatus'];\r\n this.getEquipoTrabajoComentario(); \r\n this.getComentariosIniciativa(this.data['id_iniciativa'],this.data['email'],this.rol);\r\n this.data=\"\";\r\n }\r\n }\r\n\r\n //Cerrar el cuadro de dialogo\r\n closeDialog()\r\n {\r\n this.dialog.closeAll();\r\n }\r\n\r\n onFileChange(event: any) \r\n {\r\n if (event.target.files && event.target.files.length) {\r\n const [file] = event.target.files;\r\n this.archivo=file;\r\n this.labelComentarios.nativeElement.innerText = file.name;\r\n this.nombreArchivo=file.name;\r\n }\r\n }\r\n\r\n handleUpload(event:any) {\r\n const file = event.target.files[0];\r\n const reader = new FileReader();\r\n reader.readAsDataURL(file);\r\n this.labelComentarios.nativeElement.innerText = file.name;\r\n this.nombreArchivo=file.name;\r\n reader.onload = () => {\r\n this.archivoBase=reader.result;\r\n let cont=this.archivoBase.split(',');\r\n this.archivoBase=cont[1];\r\n };\r\n}\r\n\r\n \r\n //Método para cargar la lista de miembros de equipo\r\n getEquipoTrabajo()\r\n {\r\n this.dataService.getEquipoTrabajo(this.id_iniciativa).subscribe(data => {\r\n this.listaEquipoData = data['data'];\r\n this.listaEquipoData.forEach(element => {\r\n if(element['estatus_equipoTrabajo']==true && element['confirmacion_equipoTrabajo']==true)\r\n {\r\n this.listaEquipo.push(element);\r\n\r\n }\r\n }); \r\n });\r\n }\r\n\r\n \r\n //Método para cargar la lista de miembros de equipo para comentarios\r\n getEquipoTrabajoComentario()\r\n {\r\n this.dataService.getEquipoTrabajo(this.id_iniciativa).subscribe(data => {\r\n this.listaEquipoData = data['data'];\r\n this.listaEquipoData.forEach(element => {\r\n if(element['estatus_equipoTrabajo']==true && element['confirmacion_equipoTrabajo']==true)\r\n {\r\n if(element['id_rol']==this.rol && element['email_usuario']==this.email)\r\n {\r\n //no se agrega a la lista\r\n }\r\n else{\r\n this.listaEquipo.push(element);\r\n }\r\n }\r\n \r\n }); \r\n \r\n });\r\n\r\n }\r\n\r\n\r\n getHistorialIniciativa(id:number)\r\n {\r\n this.dataService.historialIniciativa(id).subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.tablaHistorialCopia=data['data'];\r\n this.tablaHistorialCopia.forEach(element=>{\r\n if(element['id_accion']==5 || element['id_accion']==6 || element['id_accion']==13 )\r\n {\r\n\r\n }else{\r\n this.tablaHistorial.push(element);\r\n\r\n }\r\n\r\n }\r\n\r\n );\r\n\r\n \r\n //this.tablaHistorial=data['data']; \r\n }\r\n else{\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar el historial de la iniciativa. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n //Metodo para agregar periodo de envio\r\n addComentario(){\r\n this.agregarComentario=true;\r\n }\r\n\r\n\r\n getContactosIniciativa(id:number)\r\n {\r\n this.dataService.contactosIniciativa(id).subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.tablaContactos=data['data'];\r\n }\r\n else{\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar los contactos de la iniciativa. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n getComentariosIniciativa(id:number, email:string,rol:number)\r\n {\r\n this.dataService.comentariosIniciativa(id, email,rol).subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.tablaComentarios=data['data'];\r\n //Si no hay comentarios\r\n if(this.tablaComentarios.length==0)\r\n {\r\n this.sinComentarios=true;\r\n }\r\n //Si hay comentarios\r\n else{\r\n for(let i of this.tablaComentarios)\r\n {\r\n //vistos\r\n if(i['estatus_comentarioVisto']==false)\r\n {\r\n this.tablaComentariosNoVistos.push(i);\r\n }//no vistos\r\n else{\r\n this.tablaComentariosHistorial.push(i);\r\n }\r\n\r\n }\r\n\r\n }\r\n }\r\n else{\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar los comentarios de la iniciativa. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n\r\n //Método para guardar los comentarios\r\n guardarComentario()\r\n {\r\n\r\n var myJsonString=\"\";\r\n if(this.formComentarios.controls['integrante']['value'])\r\n {\r\n for (let num of this.formComentarios.controls['integrante']['value'])\r\n {\r\n let email=num['email_usuario'];\r\n let rol=num['id_rol'];\r\n let valores=\r\n {\r\n 'email_usuarioDestinatario':email,\r\n 'id_rol':rol\r\n }\r\n this.jsonDestinatarios.push(valores);\r\n }\r\n myJsonString = JSON.stringify(this.jsonDestinatarios);\r\n }\r\n \r\n \r\n let datos={\r\n 'id_iniciativa':this.id_iniciativa,\r\n 'descripcion_comentario': this.formComentarios.controls['comentario'].value,\r\n 'email_usuarioComentario':this.email,\r\n 'jsonDestinatarios':myJsonString,\r\n 'id_rol':this.rol,\r\n 'nombre_archivoComentario': this.nombreArchivo\r\n }\r\n \r\n this.dataService.agregarComentarios(datos).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.id_comentario=data['objData']['id_comentario'];\r\n if(this.nombreArchivo)\r\n {\r\n //Subimos el archivo\r\n this.dataService.subirArchivoComentarios(this.archivo,this.id_iniciativa,this.id_comentario).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Comentario enviado correctamente.'\r\n );}\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar enviar su comentario. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n )}\r\n else{\r\n this.notifier.notify(\r\n 'success',\r\n 'Comentario enviado correctamente.'\r\n );\r\n }\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar enviar su comentario. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n enviarSolicitud()\r\n {\r\n\r\n let datos={\r\n 'id_iniciativa':this.id_iniciativa,\r\n 'userlogin':this.email,\r\n 'justificacion':this.data,\r\n 'rolUserlogin':this.rol\r\n }\r\n\r\n this.dataService.solicitudEnvioFueraPeriodo(datos).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n if(this.nombreArchivo)\r\n {\r\n //Subimos el archivo\r\n this.dataService.subirArchivoSolicitudEnvio(this.archivoBase,this.nombreArchivo,this.id_iniciativa).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Solicitud enviada correctamente.'\r\n );\r\n this.response=data;\r\n this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar su archivo. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n )\r\n }//cierre if nombre archivo\r\n\r\n\r\n }//cierre if data\r\n },//cierre data\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar enviar solicitud. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );//cierre endpoint\r\n }//cierre cambio \r\n\r\n\r\n\r\n\r\n descargarArchivo(archivo:string,id_comentario:number)\r\n {\r\n this.dataService.descargarArchivoComentarios(this.id_iniciativa,archivo,id_comentario).subscribe(res => {\r\n // Este es necesario para crear un objeto blob con el tipo de archivo\r\n // puesto explicitamente, de lo contrario solo Chrome funcionara correctamente\r\n let newBlob = new Blob([res], { type: this.obtenerTipoArchivo(archivo) });\r\n // IE no permite objetos blob directamente en el atributo href de un link\r\n // en su lugar hay que usar msSaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = archivo;\r\n // Esta linea es necesaria desde que link.click() ya no funciona en las ultimas versiones de firefox\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n });\r\n\r\n }\r\n\r\n private obtenerTipoArchivo(archivo: string): string {\r\n let tipoArchivo: string;\r\n let extencion: string = archivo.split('.').pop();\r\n\r\n switch (extencion) {\r\n case 'pdf':\r\n tipoArchivo = 'application/pdf';\r\n break;\r\n case 'xls':\r\n tipoArchivo = 'application/vnd.ms-excel';\r\n break;\r\n case 'xlsx':\r\n tipoArchivo = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';\r\n break;\r\n case 'csv':\r\n tipoArchivo = 'application/csv';\r\n break;\r\n case 'zip':\r\n tipoArchivo = 'application/zip';\r\n break;\r\n case 'rar':\r\n tipoArchivo = 'application/x-rar-compressed';\r\n break;\r\n\r\n default:\r\n tipoArchivo = 'text/plain';\r\n break;\r\n }\r\n return tipoArchivo;\r\n }\r\n\r\n\r\n //Método para cargar los roles activos de BD\r\n rolesCatalogoMe()\r\n {\r\n this.dataService.obtenerTiposUsuariosv2().subscribe(\r\n data => {\r\n this.rolesCatalogo = data['data'];\r\n this.nombreRoles(this.rol);\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Metodo para obtener el nombre del rol\r\n nombreRoles(rol) \r\n {\r\n if (this.rolesCatalogo.indexOf(rol) === -1) \r\n {\r\n for (var i in this.rolesCatalogo) \r\n {\r\n if(this.rolesCatalogo[i].id_rol==rol)\r\n {\r\n this.nombreRol=this.rolesCatalogo[i]['nombre_rol'];\r\n }\r\n \r\n }\r\n } else if (this.rolesCatalogo.indexOf(rol) > -1) { \r\n }\r\n}\r\n\r\n}\r\n","export default \"

\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Está tardando más de lo normal. Verifica tu conexión de red.\\r\\n \\r\\n

\\r\\n\";","export default \"\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\";","export default \" \\r\\n\\r\\n::ng-deep .icon-outside .close-button{\\r\\n float: right;\\r\\n top:-52px;\\r\\n right:-52px;\\r\\n}\\r\\n\\r\\n::ng-deep .icon-outside .mat-dialog-container {\\r\\n overflow: unset\\r\\n}\\r\\n\\r\\n.close-button{\\r\\n float: right;\\r\\n top:-24px;\\r\\n right:-24px;\\r\\n}\\r\\n\\r\\n.close-icon {\\r\\n transition: 1s ease-in-out;\\r\\n}\\r\\n\\r\\n.close-icon:hover {\\r\\n transform: rotate(180deg);\\r\\n}\\r\\n\\r\\ntable td{\\r\\n font-size: small;\\r\\n text-align: left;\\r\\n font-family:Verdana, Geneva, Tahoma, sans-serif;\\r\\n}\\r\\n\\r\\ntable th {\\r\\n text-align: center;\\r\\n font-style:normal;\\r\\n font-size: small;\\r\\n font-family:Verdana, Geneva, Tahoma, sans-serif;\\r\\n}\\r\\n\\r\\n.table {\\r\\n width: 100%;\\r\\n }\\r\\n\\r\\n#encabezado{\\r\\n background-color:#117BB8;\\r\\n color: white;\\r\\n\\r\\n }\\r\\n\\r\\n#datosGral{\\r\\n background-color:#85C1E9;\\r\\n color: white;\\r\\n font-size: small;\\r\\n font-family:Verdana, Geneva, Tahoma, sans-serif;\\r\\n }\\r\\n\\r\\n.table > tbody > tr:hover {\\r\\n background-color: #F2F2F2;\\r\\n cursor: pointer;\\r\\n }\\r\\n\\r\\n.z{\\r\\n z-index: 2000;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1vZGFsLWNvc3Rlby1jb25zdWx0YS5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osU0FBUztFQUNULFdBQVc7QUFDYjs7QUFFQTtDQUNDO0FBQ0Q7O0FBRUE7RUFDRSxZQUFZO0VBQ1osU0FBUztFQUNULFdBQVc7QUFDYjs7QUFFQTtFQUNFLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsK0NBQStDO0FBQ2pEOztBQUVBO0VBQ0Usa0JBQWtCO0VBQ2xCLGlCQUFpQjtFQUNqQixnQkFBZ0I7RUFDaEIsK0NBQStDO0FBQ2pEOztBQUVFO0lBQ0UsV0FBVztFQUNiOztBQUVBO0lBQ0Usd0JBQXdCO0lBQ3hCLFlBQVk7O0VBRWQ7O0FBRUE7SUFDRSx3QkFBd0I7SUFDeEIsWUFBWTtJQUNaLGdCQUFnQjtJQUNoQiwrQ0FBK0M7RUFDakQ7O0FBRUE7SUFDRSx5QkFBeUI7SUFDekIsZUFBZTtFQUNqQjs7QUFFQTtJQUNFLGFBQWE7RUFDZiIsImZpbGUiOiJtb2RhbC1jb3N0ZW8tY29uc3VsdGEuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIiBcclxuXHJcbjo6bmctZGVlcCAuaWNvbi1vdXRzaWRlIC5jbG9zZS1idXR0b257XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIHRvcDotNTJweDtcclxuICByaWdodDotNTJweDtcclxufVxyXG5cclxuOjpuZy1kZWVwIC5pY29uLW91dHNpZGUgLm1hdC1kaWFsb2ctY29udGFpbmVyIHtcclxuIG92ZXJmbG93OiB1bnNldFxyXG59XHJcblxyXG4uY2xvc2UtYnV0dG9ue1xyXG4gIGZsb2F0OiByaWdodDtcclxuICB0b3A6LTI0cHg7XHJcbiAgcmlnaHQ6LTI0cHg7XHJcbn1cclxuXHJcbi5jbG9zZS1pY29uIHtcclxuICB0cmFuc2l0aW9uOiAxcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLmNsb3NlLWljb246aG92ZXIge1xyXG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbn1cclxuXHJcbnRhYmxlIHRke1xyXG4gIGZvbnQtc2l6ZTogc21hbGw7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBmb250LWZhbWlseTpWZXJkYW5hLCBHZW5ldmEsIFRhaG9tYSwgc2Fucy1zZXJpZjtcclxufVxyXG5cclxudGFibGUgdGgge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LXN0eWxlOm5vcm1hbDtcclxuICBmb250LXNpemU6IHNtYWxsO1xyXG4gIGZvbnQtZmFtaWx5OlZlcmRhbmEsIEdlbmV2YSwgVGFob21hLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG4gIC50YWJsZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbiAgXHJcbiAgI2VuY2FiZXphZG97XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiMxMTdCQjg7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcblxyXG4gIH1cclxuXHJcbiAgI2RhdG9zR3JhbHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6Izg1QzFFOTtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogc21hbGw7XHJcbiAgICBmb250LWZhbWlseTpWZXJkYW5hLCBHZW5ldmEsIFRhaG9tYSwgc2Fucy1zZXJpZjtcclxuICB9XHJcblxyXG4gIC50YWJsZSA+IHRib2R5ID4gdHI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcblxyXG4gIC56e1xyXG4gICAgei1pbmRleDogMjAwMDtcclxuICB9Il19 */\";","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Estatus:\\r\\n \\r\\n Registro\\r\\n \\r\\n \\r\\n Envío\\r\\n \\r\\n \\r\\n Análisis\\r\\n \\r\\n \\r\\n Diseño\\r\\n \\r\\n \\r\\n Priorización\\r\\n \\r\\n \\r\\n Programación\\r\\n \\r\\n \\r\\n Construcción\\r\\n \\r\\n \\r\\n Pruebas\\r\\n \\r\\n \\r\\n Implementación\\r\\n \\r\\n \\r\\n Finalizado\\r\\n \\r\\n \\r\\n Corregir\\r\\n \\r\\n \\r\\n Suspendido\\r\\n \\r\\n \\r\\n Cancelado\\r\\n \\r\\n
\\r\\n
\\r\\n Cargando...\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

Datos generales

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Tipo de solicitud:
\\r\\n Con cambio al proceso\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Tipo de solicitud:
\\r\\n Nuevo sistema\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Tipo de solicitud:
\\r\\n Sin cambio al proceso\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Aplicación\\r\\n
\\r\\n {{iniciativa.nombreAplicacion}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Área dueña/Aplicación:
\\r\\n {{iniciativa.nombreArea}}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Nombre del nuevo sistema: \\r\\n
\\r\\n {{iniciativa.nombre_iniciativa}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Nombre del solicitante:
\\r\\n {{iniciativa.nombre_solicitante}}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n Email del solicitante:
\\r\\n {{iniciativa.email_solicitante}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Dirección de área solicitante:
\\r\\n {{iniciativa.direccionArea_solicitante}}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Teléfono:
\\r\\n {{iniciativa.telefono_solicitante}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Extensión:
\\r\\n {{iniciativa.extencion_solicitante}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Problemática a resolver:
\\r\\n {{iniciativa.problematica_iniciativa}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Fecha de término requerida:
\\r\\n {{iniciativa.fechaTermino_iniciativa | date:'yyyy-MM-dd'}} \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Justificación de la fecha requerida:
\\r\\n {{iniciativa.justificacionFecha_iniciativa}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n

Transacciones por mes

\\r\\n Número de transacciones en sistema esperadas por mes:
\\r\\n {{iniciativa.numeroTransacciones_iniciativa}}\\r\\n
\\r\\n

Impacto al negocio

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Solución propuesta

\\r\\n {{iniciativa.solucionPropuesta_iniciativa}}\\r\\n \\r\\n
\\r\\n

Beneficiarios

\\r\\n
\\r\\n
\\r\\n Usuarios directos:
\\r\\n {{iniciativa.beneficiariosDirectos_iniciativa}}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Beneficiarios:
\\r\\n {{iniciativa.beneficiariosImplementacion_iniciativa}}\\r\\n
\\r\\n
\\r\\n

Procesos

\\r\\n
\\r\\n
\\r\\n Nombre del proceso:
\\r\\n {{iniciativa.nombreProceso_iniciativa}}\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n No hay archivo adjunto\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n No hay archivo adjunto\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Anexos

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\";","export default \".invalidFeedbackRoles {\\n font-size: 80%;\\n color: #dc3545;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxtb2RhbC11c3VhcmlvLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0ksY0FBQTtFQUNBLGNBQUE7QUFDSiIsImZpbGUiOiJtb2RhbC11c3VhcmlvLmNvbXBvbmVudC5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmludmFsaWRGZWVkYmFja1JvbGVzIHtcclxuICAgIGZvbnQtc2l6ZTogODAlO1xyXG4gICAgY29sb3I6ICNkYzM1NDU7XHJcbiAgfSJdfQ== */\";","import { Component, OnInit,Inject } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog} from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'app-confirm',\r\n templateUrl: './confirm.component.html',\r\n styleUrls: ['./confirm.component.css']\r\n})\r\nexport class ConfirmComponent implements OnInit {\r\nconfirmEnviarIniciativa:boolean=false;\r\n\r\n constructor(public dialog:MatDialog, \r\n @Inject(MAT_DIALOG_DATA) \r\n public mensaje: string) \r\n {}\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n //Cerrar el cuadro de dialogo\r\n closeDialog()\r\n {\r\n this.dialog.closeAll();\r\n }\r\n\r\n}\r\n","import { Component, OnInit,Inject,NgZone,ElementRef,ViewChild } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog} from '@angular/material/dialog';\r\nimport { FormControl,FormGroup,FormBuilder } from '@angular/forms';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { Validators } from '@angular/forms';\r\nimport { element } from 'protractor';\r\n\r\n@Component({\r\n selector: 'app-confirm-listado-tabla-iniciativas',\r\n templateUrl: './confirm-listado-tabla-iniciativas.component.html',\r\n styleUrls: ['./confirm-listado-tabla-iniciativas.component.css']\r\n})\r\nexport class ConfirmListadoTablaIniciativasComponent implements OnInit {\r\n confirmComentarios:boolean=false;\r\n name:string;\r\n email:string;\r\n id_iniciativa:number;\r\n tipoIniciativa:number;\r\n id_periodo:number;\r\n folioIniciativa:number;\r\n agregarComentario:boolean=false;\r\n \r\n //Modal equipo de trabajo\r\n confirmEquipoTrabajo:boolean=false;\r\n eliminarEquipoTrabajo:boolean=false;\r\n agregarEquipoTrabajo:boolean=false;\r\n etiqueta:string;\r\n\r\n nombreIntegrante:string;\r\n comentarioEliminacion:string;\r\n nombreEnlace:string;\r\n listaEquipo:any[]=[];\r\n listaEquipoData:any[]=[];\r\n listaEquipoConfirmacion:any[]=[]\r\n analista:any[]=[]\r\n lider:any[]=[]\r\n desarrollador:any[]=[]\r\n\r\n tablaComentarios:any[]=[];\r\n listaDestinatarios:any[]=[];\r\n tablaComentariosNoVistos:any[]=[];\r\n tablaComentariosHistorial:any[]=[];\r\n\r\n nombreAnalista:string;\r\n nombreLider:string;\r\n confirmHistorialIniciativa:boolean=false;\r\n tablaHistorial:any[]=[];\r\n \r\n\r\n confirmCambioEstatus:boolean=false;\r\n \r\n //Listas de motivos\r\n listaEstatusAll:any[]=[];\r\n listaEstatus:any[]=[];\r\n\r\n listaMotivosCancelacion:any[]=[];\r\n listaMotivosSuspencion:any[]=[];\r\n listaMotivosRechazo:any[]=[];\r\n\r\n programacion:boolean=false;\r\n cancelacion:boolean=false;\r\n suspencion:boolean=false;\r\n rechazo:boolean=false;\r\n\r\n selectedValueMotCancelacion: number;\r\n solicitudCancelacion:number;\r\n solicitudEnvio:number;\r\n mostrarSolicitudCancelacion:boolean=false;\r\n solicitudCancelacionAutorizar:boolean=false;\r\n solicitudCancelacionRechazar:boolean=false;\r\n solicitudEnvioRechazar:boolean=false;\r\n\r\n mostrarSolicitudEnvio:boolean=false;\r\n justificacionSolicitud:string;\r\n\r\n archivo:File;\r\n @ViewChild('labelComentarios',{static:false})\r\n labelComentarios: ElementRef;\r\n nombreArchivo:string;\r\n id_comentario:number;\r\n\r\n nombreRol:string;\r\n rol:number;\r\n rolesCatalogo: { id_rol: number; nombre_rol: string; }[];\r\n\r\n //Array para guardar los destinatarios de comentarios\r\n jsonDestinatarios: { id_rol: number; email_usuarioDestinatario: string; }[]=[];\r\n\r\n observacionEstatus:string;\r\n idEstatus:number=0;\r\n rolSeleccionado:number=0;\r\n sinComentarios:boolean=false;\r\n usuarioVip:boolean=false;\r\n\r\n \r\n //Form de comentarios\r\n formComentarios: FormGroup = new FormGroup({});\r\n //Varibles para asignar los comentarios \r\n integrante = new FormControl();\r\n comentario = new FormControl();\r\n\r\n url:FormControl;\r\n form: FormGroup = new FormGroup({});\r\n nombreArchivoSolicitud:string;\r\n contentFile:string;\r\n \r\n constructor( @Inject(MAT_DIALOG_DATA) \r\n public data: string,\r\n\r\n private dataService: DataService,\r\n private notifier: NotifierService, private fb: FormBuilder,private fc: FormBuilder) { \r\n\r\n const reg = '(https?://)?([\\\\da-z./-]+)\\\\.([a-z.]{2,6})[/-\\\\w .-=#&%!?@$:;]*/?';\r\n this.form = fb.group({\r\n url: ['', [Validators.required, Validators.pattern(reg)]]\r\n })\r\n\r\n //Form comentarios\r\n this.formComentarios=fc.group({\r\n integrante: ['', [Validators.required]],\r\n comentario: ['', [Validators.required]]\r\n })\r\n }\r\n\r\n get f(){\r\n return this.form.controls;\r\n }\r\n\r\n \r\n \r\n\r\n ngOnInit(): void {\r\n if(this.data['opcion']==10)\r\n { this.rolesCatalogoMe(); \r\n this.confirmComentarios=true;\r\n this.name=this.data['userName'];\r\n this.email=this.data['email'];\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.rol=this.data['idRol'];\r\n this.usuarioVip=this.data['usuarioVip'];\r\n this.getEquipoTrabajoComentario(); \r\n //verificamos si ya hay comentarios\r\n this.getComentariosIniciativa(this.id_iniciativa,this.email, this.rol);\r\n this.folioIniciativa=this.data['folio'];\r\n this.data=\"\";\r\n }\r\n \r\n //Modal de consulta de integrantes de equipo\r\n if(this.data['opcion']==1)\r\n {\r\n this.confirmEquipoTrabajo=true;\r\n this.name=this.data['userName'];\r\n this.email=this.data['email'];\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.folioIniciativa=this.data['folio'];\r\n this.getEquipoTrabajo();\r\n this.data=\"\";\r\n }\r\n \r\n //Abrir modal de confirmación de eliminacion de integrante\r\n if(this.data['opcion']==2)\r\n {this.eliminarEquipoTrabajo=true;\r\n this.nombreIntegrante=this.data['nombreIntegrante'];\r\n this.data=\"\";\r\n }\r\n\r\n //Modal de historial\r\n if(this.data['opcion']==3)\r\n {this.confirmHistorialIniciativa=true;\r\n this.folioIniciativa=this.data['folio'];\r\n this.getHistorialIniciativa(this.data['id_iniciativa']);\r\n }\r\n\r\n //Modal de cambio de estatus/mostrar solicitud\r\n if(this.data['opcion']==4)\r\n {\r\n this.folioIniciativa=this.data['folio'];\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.email=this.data['email'];\r\n this.rolSeleccionado=parseInt(this.data['rol']);\r\n this.solicitudCancelacion=this.data['solicitudCancelacion'];\r\n this.tipoIniciativa=this.data['tipoIniciativa'];\r\n //Si tiene solicitud de cancelación\r\n if(this.solicitudCancelacion)\r\n {\r\n this.mostrarSolicitudCancelacion=true;\r\n //Mostramos los detalles\r\n this.getSolicitudCancelacion(this.solicitudCancelacion);\r\n }\r\n else{\r\n this.confirmCambioEstatus=true;\r\n this.listCambioEstatus();\r\n }\r\n }\r\n\r\n \r\n //Modal de autorizacion solicitud cancelacion\r\n if(this.data['opcion']==5)\r\n {\r\n this.folioIniciativa=this.data['folio'];\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.email=this.data['email'];\r\n this.rolSeleccionado=parseInt(this.data['rol']);\r\n this.solicitudCancelacion=this.data['solicitudCancelacion'];\r\n this.solicitudCancelacionAutorizar=true;\r\n this.listMotivosCancelacion();\r\n }\r\n\r\n //Modal de rechazo de solicitud cancelacion\r\n if(this.data['opcion']==6)\r\n {\r\n this.folioIniciativa=this.data['folio'];\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.email=this.data['email'];\r\n this.rolSeleccionado=parseInt(this.data['rol']);\r\n this.solicitudCancelacion=this.data['solicitudCancelacion'];\r\n this.solicitudCancelacionRechazar=true;\r\n this.listMotivosCancelacion();\r\n }\r\n\r\n \r\n //Modal de solicitud de envio\r\n if(this.data['opcion']==7)\r\n {\r\n this.folioIniciativa=this.data['folio'];\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.email=this.data['email'];\r\n this.rolSeleccionado=parseInt(this.data['rol']);\r\n this.solicitudEnvio=this.data['solicitudEnvio'];\r\n //Si tiene solicitud de cancelación\r\n if(this.solicitudEnvio)\r\n {\r\n this.mostrarSolicitudEnvio=true;\r\n //Mostramos los detalles\r\n this.getSolicitudCancelacion(this.solicitudEnvio);\r\n }\r\n \r\n }\r\n\r\n \r\n //Modal de rechazo de solicitud envio\r\n if(this.data['opcion']==8)\r\n {\r\n this.folioIniciativa=this.data['folio'];\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.email=this.data['email'];\r\n this.rolSeleccionado=parseInt(this.data['rol']);\r\n this.solicitudEnvio=this.data['solicitudEnvio'];\r\n this.solicitudEnvioRechazar=true;\r\n }\r\n\r\n //Abrir modal de confirmación agregar integrante\r\n if(this.data['opcion']==9)\r\n {\r\n this.agregarEquipoTrabajo=true;\r\n this.id_iniciativa=this.data['id_iniciativa'];\r\n this.rolSeleccionado=this.data['rolLogin'];\r\n this.getEquipoTrabajoConfirmacion();\r\n this.data=\"\";\r\n }\r\n \r\n }\r\n\r\n \r\n\r\n //Metodo para agregar periodo de envio\r\n addComentario(){\r\n this.agregarComentario=true;\r\n }\r\n \r\n //Método para guardar los comentarios\r\n guardarComentario()\r\n {\r\n var myJsonString=\"\";\r\n if(this.formComentarios.controls['integrante']['value'])\r\n {\r\n for (let num of this.formComentarios.controls['integrante']['value'])\r\n {\r\n let email=num['email_usuario'];\r\n let rol=num['id_rol'];\r\n let valores=\r\n {\r\n 'email_usuarioDestinatario':email,\r\n 'id_rol':rol\r\n }\r\n this.jsonDestinatarios.push(valores);\r\n }\r\n myJsonString = JSON.stringify(this.jsonDestinatarios);\r\n }\r\n \r\n let datos={\r\n 'id_iniciativa':this.id_iniciativa,\r\n 'descripcion_comentario': this.formComentarios.controls['comentario'].value,\r\n 'email_usuarioComentario':this.email,\r\n 'jsonDestinatarios':myJsonString,\r\n 'id_rol':this.rol,\r\n 'nombre_archivoComentario': this.nombreArchivo\r\n } \r\n this.dataService.agregarComentarios(datos).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.id_comentario=data['objData']['id_comentario'];\r\n if(this.nombreArchivo)\r\n {\r\n //Subimos el archivo\r\n this.dataService.subirArchivoComentarios(this.archivo,this.id_iniciativa,this.id_comentario).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Comentario enviado correctamente.'\r\n );}\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar enviar su comentario. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n )}\r\n else{\r\n this.notifier.notify(\r\n 'success',\r\n 'Comentario enviado correctamente.'\r\n );\r\n }\r\n }\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar enviar su comentario. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n //Comentarios de iniciativa\r\n getComentariosIniciativa(id:number, email:string,rol:number)\r\n {\r\n this.dataService.comentariosIniciativa(id, email,rol).subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.tablaComentarios=data['data'];\r\n //Si no hay comentarios\r\n if(this.tablaComentarios.length==0)\r\n {\r\n this.sinComentarios=true;\r\n }\r\n //Si hay comentarios\r\n else{\r\n for(let i of this.tablaComentarios)\r\n {\r\n //vistos\r\n if(i['estatus_comentarioVisto']==false)\r\n {\r\n this.tablaComentariosNoVistos.push(i);\r\n }//no vistos\r\n else{\r\n this.tablaComentariosHistorial.push(i);\r\n }\r\n\r\n }\r\n\r\n }\r\n }\r\n else{\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar los comentarios de la iniciativa. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n //Método para obtener los datos de la solicitud de cancelacion\r\n getSolicitudCancelacion(id:number)\r\n {\r\n this.dataService.getSolicitudCancelacion(id).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n\r\n //Verificamos si tiene archivo\r\n this.dataService.descargarArchivoSolicitudEnvio(this.id_iniciativa).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n \r\n this.nombreArchivoSolicitud=data['objData']['nombreArchivo'];\r\n this.contentFile=data['objData']['contenido'];\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar descargar su archivo. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n this.justificacionSolicitud=data['objData']['justificacion_solicitudIniciativa'];\r\n }\r\n else{\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar la información de la solicitud. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n //Metodo para guardar la autorizacion de cancelacion\r\n guardarAutorizacionCancelacion()\r\n {\r\n \r\n let valores={\r\n 'id_iniciativa':this.id_iniciativa,\r\n 'id_solicitudIniciativa' : this.solicitudCancelacion,\r\n 'respuesta_solicitudIniciativa':this.observacionEstatus,\r\n 'id_motivo':this.selectedValueMotCancelacion,\r\n 'userlogin':this.email,\r\n 'id_rol':this.rolSeleccionado\r\n }\r\n this.dataService.autorizacionSolicitudCancelacion(valores).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Solicitud autorizada correctamente.'\r\n );\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar autorizar la solicitud. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n guardarRechazoCancelacion()\r\n {\r\n let valores={\r\n 'id_iniciativa':this.id_iniciativa,\r\n 'id_solicitudIniciativa' : this.solicitudCancelacion,\r\n 'respuesta_solicitudIniciativa':this.observacionEstatus,\r\n 'userlogin':this.email,\r\n 'id_rol':this.rolSeleccionado\r\n }\r\n this.dataService.rechazoSolicitudCancelacion(valores).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Solicitud rechazada correctamente.'\r\n );\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar rechazar la solicitud. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n //Método para guardar la autorizacion de solicitud de envio\r\n guardarAutorizarEnvio(){\r\n \r\n let valores={\r\n 'id_iniciativa':this.id_iniciativa,\r\n 'id_solicitudIniciativa' : this.solicitudEnvio,\r\n 'userlogin':this.email,\r\n 'id_rol':this.rolSeleccionado\r\n\r\n }\r\n this.dataService.autorizacionSolicitudEnvio(valores).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Solicitud autorizada correctamente.'\r\n );\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar autorizar la solicitud. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n //Metodo para guardar el rechazo de solicitud de envio\r\n guardarRechazoEnvio()\r\n {\r\n let valores={\r\n 'id_iniciativa':this.id_iniciativa,\r\n 'id_solicitudIniciativa' : this.solicitudEnvio,\r\n 'respuesta_solicitudIniciativa':this.observacionEstatus,\r\n 'userlogin':this.email,\r\n 'id_rol':this.rolSeleccionado\r\n }\r\n this.dataService.rechazoSolicitudEnvio(valores).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Solicitud rechazada correctamente.'\r\n );\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar rechazar la solicitud. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n listCambioEstatus()\r\n {\r\n \r\n this.dataService.getListCambioEstatus().subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.listaEstatusAll=data['data']; \r\n this.filtrarEstatusRol(this.rolSeleccionado);\r\n }\r\n else{\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar los estatus de cambio. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n\r\n filtrarEstatusRol(rol:number)\r\n {\r\n //Eliminamos los valores segun el rol\r\n switch (rol) \r\n {\r\n //Gestor de analisis y diseño\r\n case 3:\r\n this.listaEstatusAll.forEach((element,index) => \r\n {\r\n //Nuevo sistema\r\n if(this.tipoIniciativa===1)\r\n {\r\n if(\r\n element['id_estatusIniciativa']==3 || \r\n element['id_estatusIniciativa']==4 || \r\n element['id_estatusIniciativa']==5 ||\r\n element['id_estatusIniciativa']==11 ||\r\n element['id_estatusIniciativa']==12 ||\r\n element['id_estatusIniciativa']==13 ||\r\n element['id_estatusIniciativa']==15 ||\r\n element['id_estatusIniciativa']==16 \r\n )\r\n {\r\n this.listaEstatus.push(element);\r\n }\r\n }\r\n //Cambio \r\n else{\r\n if(\r\n element['id_estatusIniciativa']==4 || \r\n element['id_estatusIniciativa']==5 ||\r\n element['id_estatusIniciativa']==11 ||\r\n element['id_estatusIniciativa']==12 ||\r\n element['id_estatusIniciativa']==13 ||\r\n element['id_estatusIniciativa']==15 ||\r\n element['id_estatusIniciativa']==16\r\n ) \r\n {\r\n this.listaEstatus.push(element);\r\n }\r\n\r\n }\r\n \r\n });\r\n break;\r\n //Analista de TI\r\n case 4:\r\n this.listaEstatusAll.forEach((element,index) => \r\n {\r\n\r\n //Nuevos sistemas\r\n if(this.tipoIniciativa===1)\r\n {\r\n if(\r\n element['id_estatusIniciativa']==3 || \r\n element['id_estatusIniciativa']==4 || \r\n element['id_estatusIniciativa']==5 ||\r\n element['id_estatusIniciativa']==11 ||\r\n element['id_estatusIniciativa']==12 ||\r\n element['id_estatusIniciativa']==13 ||\r\n element['id_estatusIniciativa']==15 ||\r\n element['id_estatusIniciativa']==16\r\n ) \r\n {\r\n this.listaEstatus.push(element);\r\n }\r\n\r\n }\r\n //Cambios proyectos\r\n else{\r\n if(\r\n element['id_estatusIniciativa']==4 || \r\n element['id_estatusIniciativa']==5 ||\r\n element['id_estatusIniciativa']==11 ||\r\n element['id_estatusIniciativa']==12 ||\r\n element['id_estatusIniciativa']==13 ||\r\n element['id_estatusIniciativa']==15 ||\r\n element['id_estatusIniciativa']==16\r\n ) \r\n {\r\n this.listaEstatus.push(element);\r\n }\r\n\r\n } \r\n });\r\n break;\r\n //Gestor de cambios\r\n case 5:\r\n this.listaEstatusAll.forEach((element,index) => \r\n {\r\n if(element['id_estatusIniciativa']==5 ||\r\n element['id_estatusIniciativa']==11 ||\r\n element['id_estatusIniciativa']==12 ||\r\n element['id_estatusIniciativa']==13 ||\r\n element['id_estatusIniciativa']==16\r\n )\r\n {\r\n this.listaEstatus.push(element);\r\n }\r\n });\r\n break;\r\n //Lider SAP\r\n case 6:\r\n this.listaEstatusAll.forEach((element,index) => \r\n {\r\n //Nuevo sistema\r\n if(this.tipoIniciativa===1)\r\n {\r\n if(element['id_estatusIniciativa']==3 || \r\n element['id_estatusIniciativa']==7 ||\r\n element['id_estatusIniciativa']==8 ||\r\n element['id_estatusIniciativa']==9 ||\r\n element['id_estatusIniciativa']==10 ||\r\n element['id_estatusIniciativa']==16 )\r\n {\r\n this.listaEstatus.push(element);\r\n }\r\n }\r\n //Cambios\r\n else{\r\n if(\r\n element['id_estatusIniciativa']==7 ||\r\n element['id_estatusIniciativa']==8 ||\r\n element['id_estatusIniciativa']==9 ||\r\n element['id_estatusIniciativa']==10 ||\r\n element['id_estatusIniciativa']==16 )\r\n {\r\n this.listaEstatus.push(element);\r\n }\r\n }\r\n });\r\n break;\r\n //Lider no SAP\r\n case 7:\r\n this.listaEstatusAll.forEach((element,index) => \r\n {\r\n //Nuevo sistema\r\n if(this.tipoIniciativa===1)\r\n {\r\n if(\r\n element['id_estatusIniciativa']==3 || \r\n element['id_estatusIniciativa']==7 ||\r\n element['id_estatusIniciativa']==8 ||\r\n element['id_estatusIniciativa']==9 ||\r\n element['id_estatusIniciativa']==10 ||\r\n element['id_estatusIniciativa']==16 )\r\n\r\n {\r\n this.listaEstatus.push(element);\r\n }\r\n\r\n }\r\n //Cambio\r\n else{\r\n if(\r\n element['id_estatusIniciativa']==7 ||\r\n element['id_estatusIniciativa']==8 ||\r\n element['id_estatusIniciativa']==9 ||\r\n element['id_estatusIniciativa']==10 ||\r\n element['id_estatusIniciativa']==16 )\r\n {\r\n this.listaEstatus.push(element);\r\n }\r\n }\r\n });\r\n break;\r\n case 13:\r\n this.listMotivosCancelacion();\r\n break;\r\n }\r\n\r\n }\r\n\r\n\r\n \r\n listMotivosCancelacion()\r\n {\r\n \r\n this.dataService.getListMotivosCancelacion().subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.listaMotivosCancelacion=data['data']; \r\n }\r\n else{\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar los motivos de cancelacion. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n \r\n listMotivosSuspencion()\r\n {\r\n \r\n this.dataService.getListMotivosSuspencion().subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.listaMotivosSuspencion=data['data']; \r\n }\r\n else{\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar los motivos de suspención. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n\r\n \r\n listMotivosRechazo()\r\n {\r\n \r\n this.dataService.getListMotivosRechazo().subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.listaMotivosRechazo=data['data']; \r\n }\r\n else{\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar los motivos de rechazo. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n\r\n cambioEstatus(id_estatus:number)\r\n {\r\n this.selectedValueMotCancelacion=0;\r\n this.idEstatus=id_estatus;\r\n this.observacionEstatus=\"\";\r\n\r\n switch (id_estatus) \r\n {\r\n case 11:\r\n this.listMotivosRechazo();\r\n break;\r\n case 12:\r\n this.listMotivosSuspencion();\r\n break;\r\n case 13:\r\n this.listMotivosCancelacion();\r\n break;\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n \r\n //Método para cambiar el estatus\r\n guardarCambioEstatusProgramacion(form:any)\r\n {\r\n let valores={\r\n 'id_iniciativa':this.id_iniciativa,\r\n 'email_usuario':this.email,\r\n 'observacion':form.controls['url'].value,\r\n 'id_estatus':this.idEstatus,\r\n 'id_motivo':this.selectedValueMotCancelacion,\r\n 'id_rol':this.rolSeleccionado\r\n }\r\n\r\n this.dataService.guardarCambioEstatus(valores).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se cambio el estatus correctamente.'\r\n );\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cambiar el estatus. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n \r\n }\r\n\r\n //Método para cambiar el estatus\r\n guardarCambioEstatus() {\r\n let valores = {\r\n 'id_iniciativa': this.id_iniciativa,\r\n 'email_usuario': this.email,\r\n 'observacion': this.observacionEstatus,\r\n 'id_estatus': this.idEstatus,\r\n 'id_motivo': this.selectedValueMotCancelacion,\r\n 'id_rol': this.rolSeleccionado\r\n };\r\n \r\n this.dataService.guardarCambioEstatus(valores).subscribe(\r\n data => {\r\n console.log('Respuesta del servidor:', data); // Agrega este log\r\n if (data['objData']) {\r\n this.notifier.notify('success', 'Se cambio el estatus correctamente.');\r\n } else {\r\n this.notifier.notify('error', data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cambiar el estatus. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n \r\n\r\n //Método para cargar la lista de miembros de equipo\r\n getEquipoTrabajo()\r\n {\r\n this.dataService.getEquipoTrabajo(this.id_iniciativa).subscribe(data => {\r\n this.listaEquipoData = data['data'];\r\n this.listaEquipoData.forEach(element => {\r\n if(element['estatus_equipoTrabajo']==true && element['confirmacion_equipoTrabajo']==true)\r\n {\r\n this.listaEquipo.push(element);\r\n\r\n }\r\n \r\n }); \r\n \r\n });\r\n\r\n }\r\n\r\n\r\n \r\n //Método para cargar la lista de miembros de equipo para comentarios\r\n getEquipoTrabajoComentario()\r\n {\r\n this.dataService.getEquipoTrabajo(this.id_iniciativa).subscribe(data => {\r\n this.listaEquipoData = data['data'];\r\n this.listaEquipoData.forEach(element => {\r\n if(element['estatus_equipoTrabajo']==true && element['confirmacion_equipoTrabajo']==true)\r\n {\r\n if(element['id_rol']==this.rol && element['email_usuario']==this.email)\r\n {\r\n //no se agrega a la lista\r\n }\r\n else{\r\n this.listaEquipo.push(element);\r\n }\r\n }\r\n \r\n }); \r\n \r\n });\r\n\r\n }\r\n\r\n\r\n //Método para cargar la lista de miembros de equipo para confirmacion\r\n getEquipoTrabajoConfirmacion()\r\n {\r\n this.dataService.getEquipoTrabajo(this.id_iniciativa).subscribe(data => {\r\n this.listaEquipo = data['data'];\r\n //Validamos el rol del login\r\n switch (this.rolSeleccionado.toString()) \r\n {\r\n //Gestor de cambios\r\n case '5':\r\n this.listaEquipo.forEach((element,index )=> {\r\n\r\n if(element['id_rol']==6 || element['id_rol']==7 )\r\n {\r\n this.listaEquipoConfirmacion.push(element);\r\n }\r\n if(element['id_rol']==8)\r\n {\r\n this.listaEquipoConfirmacion.push(element);\r\n }\r\n });\r\n break;\r\n //Analista de TI\r\n case '4':\r\n this.listaEquipo.forEach((element,index )=> {\r\n if(element['id_rol']==5)\r\n {\r\n this.listaEquipoConfirmacion.push(element);\r\n }\r\n });\r\n break;\r\n //Gestor de analisis y diseño\r\n case '3':\r\n this.listaEquipo.forEach((element,index )=> {\r\n if(element['id_rol']==4)\r\n {\r\n this.listaEquipoConfirmacion.push(element);\r\n }\r\n if(element['id_rol']==5)\r\n {\r\n this.listaEquipoConfirmacion.push(element);\r\n }\r\n });\r\n break;\r\n //Jefe de area DIDS\r\n case '12':\r\n this.listaEquipo.forEach((element,index )=> {\r\n if(element['id_rol']==6 || element['id_rol']==7 )\r\n {\r\n this.listaEquipoConfirmacion.push(element);\r\n }\r\n if(element['id_rol']==8)\r\n {\r\n this.listaEquipoConfirmacion.push(element);\r\n }\r\n });\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n\r\n \r\n /* this.listaEquipo.forEach((element,index )=> {\r\n if(element['id_rol']==1 || element['id_rol']==2)\r\n {\r\n this.nombreEnlace=element['nombre_usuario'];\r\n }\r\n if(element['id_rol']==4)\r\n {\r\n this.nombreAnalista=element.nombre_usuario;\r\n //this.analista.push(element);\r\n\r\n }\r\n if(element['id_rol']==6 || element['id_rol']==7 )\r\n {\r\n this.nombreLider=element.nombre_usuario;\r\n //this.lider.push(element);\r\n }\r\n if(element['id_rol']==8)\r\n {\r\n this.desarrollador.push(element);\r\n }\r\n });*/\r\n \r\n });\r\n\r\n }\r\n\r\n \r\n //Metodo para obtener el historial de la iniciativa\r\n getHistorialIniciativa(id:number)\r\n {\r\n this.dataService.historialIniciativa(id).subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.tablaHistorial=data['data']; \r\n }\r\n else{\r\n }\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar el historial de la iniciativa. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n //Método para cargar los roles activos de BD\r\n rolesCatalogoMe()\r\n {\r\n this.dataService.obtenerTiposUsuariosv2().subscribe(\r\n data => {\r\n this.rolesCatalogo = data['data'];\r\n this.nombreRoles(this.rol);\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Metodo para obtener el nombre del rol\r\n nombreRoles(rol) \r\n {\r\n if (this.rolesCatalogo.indexOf(rol) === -1) \r\n {\r\n for (var i in this.rolesCatalogo) \r\n {\r\n if(this.rolesCatalogo[i].id_rol==rol)\r\n {\r\n this.nombreRol=this.rolesCatalogo[i]['nombre_rol'];\r\n }\r\n \r\n }\r\n } else if (this.rolesCatalogo.indexOf(rol) > -1) { \r\n }\r\n}\r\n\r\n\r\n\r\nonFileChange(event: any) \r\n{\r\n if (event.target.files && event.target.files.length) {\r\n const [file] = event.target.files;\r\n this.archivo=file;\r\n this.labelComentarios.nativeElement.innerText = file.name;\r\n this.nombreArchivo=file.name;\r\n }\r\n}\r\n\r\n\r\n/*private convertBase64ToBlob() {\r\n const typeDoc = this.nombreArchivoSolicitud.split('.')[1];\r\n const decodedData = encodeURIComponent (this.contentFile);\r\n let newBlob = new Blob([decodedData], { type: typeDoc });\r\n // IE no permite objetos blob directamente en el atributo href de un link\r\n // en su lugar hay que usar msSaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = this.nombreArchivoSolicitud;\r\n // Esta linea es necesaria desde que link.click() ya no funciona en las ultimas versiones de firefox\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n}*/\r\n\r\nconvertBase64ToBlob()\r\n{\r\n if(window.navigator && window.navigator.msSaveOrOpenBlob){ \r\n // download PDF in IE\r\n let byteChar = atob(this.contentFile);\r\n let byteArray = new Array(byteChar.length);\r\n for(let i = 0; i < byteChar.length; i++){\r\n byteArray[i] = byteChar.charCodeAt(i);\r\n }\r\n let uIntArray = new Uint8Array(byteArray);\r\n let blob = new Blob([uIntArray], {type : 'application/pdf'});\r\n window.navigator.msSaveOrOpenBlob(blob, `${this.nombreArchivoSolicitud}.pdf`);\r\n } else {\r\n // Download PDF in Chrome etc.\r\n const source = `data:application/pdf;base64,${this.contentFile}`;\r\n const link = document.createElement(\"a\");\r\n link.href = source;\r\n link.download = `${this.nombreArchivoSolicitud}`\r\n link.click();\r\n }\r\n \r\n}\r\n\r\n\r\n\r\n\r\n\r\ndescargarArchivo(archivo:string,id_comentario:number)\r\n{\r\n this.dataService.descargarArchivoComentarios(this.id_iniciativa,archivo,id_comentario).subscribe(res => {\r\n // Este es necesario para crear un objeto blob con el tipo de archivo\r\n // puesto explicitamente, de lo contrario solo Chrome funcionara correctamente\r\n let newBlob = new Blob([res], { type: this.obtenerTipoArchivo(archivo) });\r\n // IE no permite objetos blob directamente en el atributo href de un link\r\n // en su lugar hay que usar msSaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = archivo;\r\n // Esta linea es necesaria desde que link.click() ya no funciona en las ultimas versiones de firefox\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n\r\n });\r\n\r\n}\r\n\r\nprivate obtenerTipoArchivo(archivo: string): string {\r\n let tipoArchivo: string;\r\n let extencion: string = archivo.split('.').pop();\r\n\r\n switch (extencion) {\r\n case 'pdf':\r\n tipoArchivo = 'application/pdf';\r\n break;\r\n case 'xls':\r\n tipoArchivo = 'application/vnd.ms-excel';\r\n break;\r\n case 'xlsx':\r\n tipoArchivo = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';\r\n break;\r\n case 'csv':\r\n tipoArchivo = 'application/csv';\r\n break;\r\n case 'zip':\r\n tipoArchivo = 'application/zip';\r\n break;\r\n case 'rar':\r\n tipoArchivo = 'application/x-rar-compressed';\r\n break;\r\n\r\n default:\r\n tipoArchivo = 'text/plain';\r\n break;\r\n }\r\n return tipoArchivo;\r\n}\r\n\r\n\r\n}\r\n","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \".modal-subtitle {\\n background-color: #b4b7b9;\\n padding: 5px;\\n color: white;\\n}\\n\\ntable td {\\n font-size: small;\\n text-align: center;\\n font-family: Verdana, Geneva, Tahoma, sans-serif;\\n}\\n\\ntable th {\\n text-align: center;\\n font-style: normal;\\n font-size: small;\\n font-family: Verdana, Geneva, Tahoma, sans-serif;\\n}\\n\\n.table {\\n width: 100%;\\n}\\n\\n#encabezado {\\n background-color: #b4b7b9;\\n color: white;\\n}\\n\\n#datosGral {\\n background-color: #85C1E9;\\n color: white;\\n font-size: small;\\n font-family: Verdana, Geneva, Tahoma, sans-serif;\\n}\\n\\n.table > tbody > tr:hover {\\n background-color: #F2F2F2;\\n cursor: pointer;\\n}\\n\\n.fa-edit, .fa-trash {\\n color: gray;\\n}\\n\\n#iconoEliminar {\\n color: white;\\n}\\n\\n.mat-tab-labels {\\n background: silver;\\n font-size: medium;\\n font-family: \\\"Lucida Sans\\\", \\\"Lucida Sans Regular\\\", \\\"Lucida Grande\\\", \\\"Lucida Sans Unicode\\\", Geneva, Verdana, sans-serif;\\n}\\n\\n.mat-tab-label-containe {\\n background: silver;\\n font-size: medium;\\n font-family: \\\"Lucida Sans\\\", \\\"Lucida Sans Regular\\\", \\\"Lucida Grande\\\", \\\"Lucida Sans Unicode\\\", Geneva, Verdana, sans-serif;\\n}\\n\\n.div.mat-tab-labels {\\n width: 580;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxudWV2by1zaXN0ZW1hLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNFO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtBQUFKOztBQUlBO0VBQ0UsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdEQUFBO0FBREY7O0FBSUE7RUFHRSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnREFBQTtBQUhGOztBQU1BO0VBQ0UsV0FBQTtBQUhGOztBQU1BO0VBQ0MseUJBQUE7RUFDQyxZQUFBO0FBSEY7O0FBTUE7RUFDRSx5QkFBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLGdEQUFBO0FBSEY7O0FBTUE7RUFDRSx5QkFBQTtFQUNBLGVBQUE7QUFIRjs7QUFNQTtFQUNFLFdBQUE7QUFIRjs7QUFNQTtFQUNFLFlBQUE7QUFIRjs7QUFNQTtFQUNFLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxzSEFBQTtBQUhGOztBQU9BO0VBQ0Usa0JBQUE7RUFDQSxpQkFBQTtFQUNBLHNIQUFBO0FBSkY7O0FBU0E7RUFDRSxVQUFBO0FBTkYiLCJmaWxlIjoibnVldm8tc2lzdGVtYS5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4gIC5tb2RhbC1zdWJ0aXRsZXtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiNGI3Yjk7XHJcbiAgICBwYWRkaW5nOjVweDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICB9XHJcblxyXG4gIFxyXG50YWJsZSB0ZHtcclxuICBmb250LXNpemU6IHNtYWxsO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LWZhbWlseTpWZXJkYW5hLCBHZW5ldmEsIFRhaG9tYSwgc2Fucy1zZXJpZjtcclxufVxyXG5cclxudGFibGUgdGgge1xyXG4gIC8vYmFja2dyb3VuZC1jb2xvcjojQzBDMEMwO1xyXG4gIC8vY29sb3I6IGJsYWNrO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LXN0eWxlOm5vcm1hbDtcclxuICBmb250LXNpemU6IHNtYWxsO1xyXG4gIGZvbnQtZmFtaWx5OlZlcmRhbmEsIEdlbmV2YSwgVGFob21hLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG4udGFibGUge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4jZW5jYWJlemFkb3tcclxuIGJhY2tncm91bmQtY29sb3I6I2I0YjdiOTtcclxuICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbiNkYXRvc0dyYWx7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjojODVDMUU5O1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxuICBmb250LXNpemU6IHNtYWxsO1xyXG4gIGZvbnQtZmFtaWx5OlZlcmRhbmEsIEdlbmV2YSwgVGFob21hLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG4udGFibGUgPiB0Ym9keSA+IHRyOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJGMkYyO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmZhLWVkaXQsLmZhLXRyYXNoe1xyXG4gIGNvbG9yOiBncmF5OyBcclxufVxyXG5cclxuI2ljb25vRWxpbWluYXJ7XHJcbiAgY29sb3I6IHdoaXRlOyBcclxufVxyXG5cclxuLm1hdC10YWItbGFiZWxzIHtcclxuICBiYWNrZ3JvdW5kOiBzaWx2ZXI7XHJcbiAgZm9udC1zaXplOiBtZWRpdW07XHJcbiAgZm9udC1mYW1pbHk6ICdMdWNpZGEgU2FucycsICdMdWNpZGEgU2FucyBSZWd1bGFyJywgJ0x1Y2lkYSBHcmFuZGUnLCAnTHVjaWRhIFNhbnMgVW5pY29kZScsIEdlbmV2YSwgVmVyZGFuYSwgc2Fucy1zZXJpZjtcclxuXHJcbn1cclxuXHJcbi5tYXQtdGFiLWxhYmVsLWNvbnRhaW5le1xyXG4gIGJhY2tncm91bmQ6IHNpbHZlcjtcclxuICBmb250LXNpemU6IG1lZGl1bTtcclxuICBmb250LWZhbWlseTogJ0x1Y2lkYSBTYW5zJywgJ0x1Y2lkYSBTYW5zIFJlZ3VsYXInLCAnTHVjaWRhIEdyYW5kZScsICdMdWNpZGEgU2FucyBVbmljb2RlJywgR2VuZXZhLCBWZXJkYW5hLCBzYW5zLXNlcmlmO1xyXG5cclxuXHJcbn1cclxuXHJcbi5kaXYubWF0LXRhYi1sYWJlbHMge1xyXG4gIHdpZHRoOiA1ODA7XHJcblxyXG59Il19 */\";","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AuthInterceptorService } from './services/auth-interceptor.service';\r\nimport { AuthService } from './services/auth.service';\r\n\r\n// Modulos\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AngularFireModule } from 'angularfire2';\r\nimport { AngularFireAuthModule } from 'angularfire2/auth';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { NotifierModule } from 'angular-notifier';\r\n\r\n// Components\r\nimport { AppComponent } from './app.component';\r\nimport { environment } from '../environments/environment.prod';\r\nimport { LoginComponent } from './pages/login/login.component';\r\nimport { NavbarComponent } from './components/shared/navbar/navbar.component';\r\nimport { PortalComponent } from './pages/portal/portal.component';\r\nimport { FooterComponent } from './components/shared/footer/footer.component';\r\nimport { ModalBusquedaComponent } from './components/modal-busqueda/modal-busqueda.component';\r\nimport { NuevoSistemaComponent } from './components/nuevo-sistema/nuevo-sistema.component';\r\nimport { CambiosFuncionalidadesComponent } from './components/cambios-funcionalidades/cambios-funcionalidades.component';\r\nimport { CorreccionFuncionalidadesComponent } from './components/correccion-funcionalidades/correccion-funcionalidades.component';\r\nimport { LoadingComponent } from './components/shared/loading/loading.component';\r\nimport { MisIniciativasComponent } from './pages/mis-iniciativas/mis-iniciativas.component';\r\nimport { ModalIniciativaComponent } from './components/modal-iniciativa/modal-iniciativa.component';\r\nimport { AdministracionComponent } from './pages/administracion/administracion.component';\r\nimport { TablaIniciativasComponent } from './components/administracion/tabla-iniciativas/tabla-iniciativas.component';\r\nimport { ControlUsuariosComponent } from './components/administracion/control-usuarios/control-usuarios.component';\r\nimport { LiderProyectoComponent } from './pages/lider-proyecto/lider-proyecto.component';\r\nimport { ModalCalendarioComponent } from './components/modal-calendario/modal-calendario.component';\r\nimport { AddUsuariosComponent } from './pages/usuarios/add-usuarios/add-usuarios.component';\r\nimport { SharedModule } from './components/modules/shared/shared.module';\r\nimport {MatInputModule} from '@angular/material/input';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport {MatTableModule} from '@angular/material/table';\r\nimport {MatCheckboxModule} from '@angular/material/checkbox';\r\nimport { ModalUsuarioComponent } from './components/modal-usuario/modal-usuario.component';\r\nimport { ModalUsuarioEdicionComponent } from './components/modal-usuario-edicion/modal-usuario-edicion.component';\r\nimport { ConfirmComponent } from './components/shared/confirm/confirm.component';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { CosteoProcesoComponent } from './components/costeo-proceso/costeo-proceso.component';\r\nimport { ModalProcedimientoComponent } from './components/modal-procedimiento-asis/modal-procedimiento.component';\r\nimport { ModalCosteoConsultaComponent } from './components/modal-costeo-consulta/modal-costeo-consulta.component';\r\nimport { ConfirmListadoIniciativasComponent } from './components/shared/confirm-listado-iniciativas/confirm-listado-iniciativas.component';\r\nimport { ModalPriorizacionComponent } from './components/modal-priorizacion/modal-priorizacion.component';\r\nimport { ModalConsultaIniciativaComponent } from './components/modal-consulta-iniciativa/modal-consulta-iniciativa.component';\r\nimport {DragDropModule} from '@angular/cdk/drag-drop';\r\nimport {MatStepperModule} from '@angular/material/stepper';\r\nimport { SeleccionRolComponent } from './pages/seleccion-rol/seleccion-rol.component';\r\nimport {MatTabsModule} from '@angular/material/tabs';\r\nimport { ConfirmListadoIniciativasAdminComponent } from './components/shared/confirm-listado-iniciativas-admin/confirm-listado-iniciativas-admin.component';\r\nimport {MatSelectModule} from '@angular/material/select';\r\nimport { PeriodosEnvioComponent } from './components/administracion/periodos-envio/periodos-envio.component';\r\nimport { MotivosIniciativaComponent } from './components/administracion/motivos-iniciativa/motivos-iniciativa.component';\r\nimport {MatListModule} from '@angular/material/list';\r\nimport { EstructuraComponent } from './components/administracion/estructura/estructura.component';\r\nimport {MatExpansionModule} from '@angular/material/expansion';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatPaginatorModule} from '@angular/material/paginator';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport {MatCardModule} from '@angular/material/card';\r\nimport {MatGridListModule} from '@angular/material/grid-list';\r\nimport { PriorizacionIniciativasComponent } from './components/administracion/priorizacion-iniciativas/priorizacion-iniciativas.component';\r\nimport { ConfirmListadoTablaIniciativasComponent } from './components/shared/confirm-listado-tabla-iniciativas/confirm-listado-tabla-iniciativas.component';\r\nimport { EquipoTrabajoComponent } from './components/equipo-trabajo/equipo-trabajo.component';\r\nimport {MatBottomSheetModule} from '@angular/material/bottom-sheet';\r\nimport { CommonModule } from '@angular/common';\r\nimport {MatBadgeModule} from '@angular/material/badge';\r\nimport {MatDatepickerModule} from '@angular/material/datepicker';\r\nimport {MatNativeDateModule} from '@angular/material/core';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport {MatButtonModule} from '@angular/material/button';\r\nimport {MatMenuModule} from '@angular/material/menu';\r\nimport { MAT_DATE_LOCALE } from '@angular/material/core';\r\nimport { EnlacesComponent } from './components/administracion/enlaces/enlaces.component';\r\nimport { AplicacionesComponent } from './components/administracion/aplicaciones/aplicaciones.component';\r\nimport { FormatosApoyoComponent } from './components/administracion/formatos-apoyo/formatos.component';\r\nimport { ReportesComponent } from './components/administracion/reportes/reportes.component';\r\nimport { ConfirmacionComponent } from './components/confirmacion/confirmacion.component';\r\nimport { DialogCambioTipoIniciativaComponent } from './components/dialog-cambio-tipo-iniciativa/dialog-cambio-tipo-iniciativa.component';\r\nimport { DialogAsignaEnlaceComponent } from './components/dialog-asigna-enlace/dialog-asigna-enlace.component';\r\nimport { CalendarioVisualComponent } from './components/administracion/calendario-visual/calendario-visual.component';\r\nimport { ConfirmDialogComponent } from './components/confirmacion/confirm.component'; // Asegúrate de importar tu componente\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n LoginComponent,\r\n NavbarComponent,\r\n PortalComponent,\r\n FooterComponent,\r\n ModalBusquedaComponent,\r\n NuevoSistemaComponent,\r\n CambiosFuncionalidadesComponent,\r\n CorreccionFuncionalidadesComponent,\r\n LoadingComponent,\r\n MisIniciativasComponent,\r\n ModalIniciativaComponent,\r\n AdministracionComponent,\r\n TablaIniciativasComponent,\r\n ControlUsuariosComponent,\r\n LiderProyectoComponent,\r\n ModalCalendarioComponent,\r\n AddUsuariosComponent,\r\n ModalUsuarioComponent,\r\n ModalUsuarioEdicionComponent,\r\n ConfirmComponent,\r\n CosteoProcesoComponent,\r\n ModalProcedimientoComponent,\r\n ModalCosteoConsultaComponent,\r\n ConfirmListadoIniciativasComponent,\r\n ModalPriorizacionComponent,\r\n ModalConsultaIniciativaComponent,\r\n SeleccionRolComponent,\r\n ConfirmListadoIniciativasAdminComponent,\r\n PeriodosEnvioComponent,\r\n MotivosIniciativaComponent,\r\n EstructuraComponent,\r\n PriorizacionIniciativasComponent,\r\n ConfirmListadoTablaIniciativasComponent,\r\n EquipoTrabajoComponent,\r\n EnlacesComponent,\r\n AplicacionesComponent,\r\n FormatosApoyoComponent,\r\n ReportesComponent,\r\n ConfirmacionComponent,\r\n ConfirmDialogComponent,\r\n DialogCambioTipoIniciativaComponent,\r\n DialogAsignaEnlaceComponent,\r\n CalendarioVisualComponent\r\n ],\r\n \r\n entryComponents:[ConfirmComponent],\r\n imports: [\r\n CommonModule,\r\n BrowserModule,\r\n HttpClientModule,\r\n ReactiveFormsModule,\r\n AppRoutingModule,\r\n SharedModule,\r\n MatInputModule,\r\n MatStepperModule,\r\n DragDropModule,\r\n BrowserAnimationsModule,\r\n MatTableModule,\r\n MatGridListModule,\r\n MatTabsModule,\r\n MatListModule,\r\n MatIconModule,\r\n MatCheckboxModule,\r\n MatExpansionModule,\r\n MatDialogModule,\r\n AngularFireAuthModule,\r\n FormsModule,\r\n MatBadgeModule,\r\n MatPaginatorModule,\r\n MatSelectModule,\r\n MatSortModule,\r\n MatBottomSheetModule,\r\n MatCardModule,\r\n MatDatepickerModule,\r\n MatButtonModule,\r\n MatNativeDateModule,\r\n MatMenuModule,\r\n AngularFireModule.initializeApp(environment.firebase),\r\n NotifierModule.withConfig({\r\n position: {\r\n horizontal: {\r\n position: 'middle',\r\n distance: 12\r\n },\r\n vertical: {\r\n position: 'bottom',\r\n distance: 12,\r\n gap: 10\r\n }\r\n }\r\n }),\r\n NgbModule\r\n ],\r\n providers: [\r\n { provide: MAT_DATE_LOCALE, useValue: 'es-ES' },\r\n AuthService,\r\n {\r\n provide: HTTP_INTERCEPTORS,\r\n useClass: AuthInterceptorService,\r\n multi: true\r\n },\r\n ],\r\n bootstrap: [AppComponent]\r\n})\r\nexport class AppModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { Router } from '@angular/router';\r\nimport { NgZone} from '@angular/core';\r\nimport { Roles } from 'src/app/interfaces/interfaces';\r\nimport { BehaviorSubject, Subscription } from 'rxjs';\r\n\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-seleccion-rol',\r\n templateUrl: './seleccion-rol.component.html',\r\n styleUrls: ['./seleccion-rol.component.css']\r\n})\r\nexport class SeleccionRolComponent implements OnInit {\r\n rolesUsuario: number[] = [0];\r\n roles: Roles[]=[];\r\n opcionSeleccionado:number;\r\n verSeleccion:number;\r\n iniciativas:boolean=false;\r\n idRol:Subscription;\r\n logueando:boolean=false;\r\n\r\n\r\n constructor(private authService: AuthService,\r\n private router: Router,\r\n private zone: NgZone) { }\r\n\r\n ngOnInit(): void {\r\n this.roles=this.authService.roles;\r\n }\r\n\r\n capturar() \r\n {\r\n // Pasamos el valor seleccionado a la variable verSeleccion\r\n this.verSeleccion = this.opcionSeleccionado;\r\n }\r\n\r\n\r\n ingresarPortal()\r\n {\r\n this.logueando=true;\r\n this.authService.nombreRol$.emit(this.verSeleccion);\r\n this.authService.emiteRolSeleccionado(this.verSeleccion);\r\n this.logueando=false;\r\n \r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-modal-busqueda',\r\n templateUrl: './modal-busqueda.component.html',\r\n styleUrls: ['./modal-busqueda.component.scss']\r\n})\r\nexport class ModalBusquedaComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n busqueda(termino: string) {\r\n window.location.href = 'https://www.guanajuato.gob.mx/resultados-busqueda.php?buscar=' + termino;\r\n }\r\n\r\n}\r\n","export default \"
\\r\\n

Por favor espere...

\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
    \\r\\n
  • \\r\\n Usuarios\\r\\n
  • \\r\\n
  • \\r\\n Periodos de Envio\\r\\n
  • \\r\\n
  • \\r\\n Motivos de rechazo/suspensión/cancelación\\r\\n
  • \\r\\n
  • \\r\\n Estructura\\r\\n
  • \\r\\n
  • \\r\\n Enlaces\\r\\n
  • \\r\\n
  • \\r\\n Aplicaciones\\r\\n
  • \\r\\n
  • \\r\\n Formatos de apoyo\\r\\n
  • \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\";","import { Component, OnInit,Inject,Input } from '@angular/core';\r\nimport { MAT_DIALOG_DATA, MatDialog} from '@angular/material/dialog';\r\nimport { DataService } from '../../services/data.service';\r\nimport { Impactos,GrupoAplicativo,Aplicativos,IniciativaDetalle } from 'src/app/interfaces/interfaces';\r\nimport { ModalCosteoConsultaComponent } from 'src/app/components/modal-costeo-consulta/modal-costeo-consulta.component';\r\nimport { Router } from '@angular/router';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { NotifierService } from 'angular-notifier';\r\n\r\n\r\n\r\n@Component({\r\n selector: 'app-modal-consulta-iniciativa',\r\n templateUrl: './modal-consulta-iniciativa.component.html',\r\n styleUrls: ['./modal-consulta-iniciativa.component.css']\r\n})\r\nexport class ModalConsultaIniciativaComponent implements OnInit {\r\n infoiniciativa;\r\n idIniciativa:string;\r\n iniciativa: IniciativaDetalle;\r\n arrayImpactosConsulta: Impactos[]=[];\r\n mostrardescargarArchivoPA:boolean=false;\r\n mostrardescargarArchivoPP:boolean=false;\r\n mostrardescargarArchivoAN:boolean=false;\r\n nombreArchivoPP:string;\r\n nombreArchivoPA:string;\r\n nombreArchivoAN:string;\r\n idProceso:number;\r\n gruposAplicativos: GrupoAplicativo[];\r\n tiposAplicativos: Aplicativos[];\r\n idRolSeleccionado:number;\r\n //Combos\r\n id_aplicacion:number;\r\n id_area:number;\r\n\r\n editarAplicacion:boolean=false;\r\n userlogin:string;\r\n loading:boolean=false;\r\n\r\n listaEquipo:any[]=[];\r\n listaEquipoData:any[]=[];\r\n desarrollador:any[]=[];\r\n nombreAnalista:string;\r\n nombreLider:string;\r\n nombreEnlace:string;\r\n emailUser:string;\r\n\r\n \r\n\r\n constructor(private dataService: DataService, \r\n private authService: AuthService,\r\n public dialog:MatDialog, private router: Router,\r\n private notifier: NotifierService) \r\n {}\r\n\r\n ngOnInit(): void {\r\n this.authService.escuchaRolSeleccionado().subscribe((res) => {\r\n this.idRolSeleccionado = res;\r\n });\r\n this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n });\r\n this.idIniciativa = localStorage.getItem(\"editarIniciativaId\");\r\n this.verDetallesIniciativa(parseInt(this.idIniciativa));\r\n this.getEquipoTrabajo(parseInt(this.idIniciativa));\r\n }\r\n\r\n\r\n //Método para cargar la lista de miembros de equipo\r\n getEquipoTrabajo(id_iniciativa:number)\r\n {\r\n this.dataService.getEquipoTrabajo(id_iniciativa).subscribe(data => {\r\n this.listaEquipoData=data['data'];\r\n this.listaEquipoData.forEach(element => {\r\n if(element['estatus_equipoTrabajo']==true && element['confirmacion_equipoTrabajo']==true)\r\n {\r\n this.listaEquipo.push(element);\r\n\r\n }\r\n \r\n }); \r\n\r\n\r\n });\r\n\r\n }\r\n \r\n verDetallesIniciativa(id: number) \r\n {\r\n this.dataService.detalleIniciativa(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n //this.iniciativaSeleccionada = data['objData']; \r\n this.idProceso=data['objData']['id_proceso'];\r\n this.iniciativa= data['objData'];\r\n this.userlogin=this.emailUser;\r\n //this.userlogin=data['objData']['email_usuarioRegistro'];\r\n if(this.iniciativa.id_tipoIniciativa==3 || this.iniciativa.id_tipoIniciativa==2)\r\n {\r\n this.iniciativa.nombreAplicacion=this.iniciativa.nombre_aplicacion;\r\n this.iniciativa.nombreArea=this.iniciativa.nombre_area;\r\n\r\n //Obtenemos los grupos de sistemas\r\n this.dataService.obtenerGruposSistemas().subscribe(data => {\r\n this.gruposAplicativos = data['data'];\r\n\r\n /*Obtenemos el area dueña de la aplicacion*/\r\n for(let v of this.gruposAplicativos)\r\n {\r\n if(v.id_area==this.iniciativa.id_area){\r\n this.iniciativa.nombreArea=v.nombre_area;\r\n }\r\n }\r\n });\r\n\r\n \r\n /*Obtenemos el aplicativo */\r\n this.aplicativosAreas(this.iniciativa.id_area);\r\n }\r\n //this.iniciativaSeleccionada = data['objData'];\r\n if(this.iniciativa.doc_procesoActual)\r\n {\r\n this.mostrardescargarArchivoPA=true;\r\n this.nombreArchivoPA=this.iniciativa.doc_procesoActual;\r\n }\r\n if(this.iniciativa.doc_procesoPropuesto)\r\n {\r\n this.mostrardescargarArchivoPP=true;\r\n this.nombreArchivoPP=this.iniciativa.doc_procesoPropuesto;\r\n }\r\n if(this.iniciativa.docAnexos_iniciativas)\r\n {\r\n this.mostrardescargarArchivoAN=true;\r\n this.nombreArchivoAN=this.iniciativa.docAnexos_iniciativas;\r\n }\r\n const tempImpactos=data['objData'].jsonIniciativaImpacto;\r\n //this.iniciativaSeleccionada.impactos = [];\r\n if (tempImpactos) \r\n {\r\n tempImpactos.split('|').forEach((element) => {\r\n let j:Impactos[]=JSON.parse(element)\r\n this.iniciativa.arrayImpactosConsulta=j;\r\n });\r\n }\r\n \r\n }\r\n });\r\n }\r\n\r\n updateAplicacion()\r\n {\r\n \r\n this.editarAplicacion=true;\r\n this.id_area=this.iniciativa['id_area'];\r\n this.id_aplicacion=this.iniciativa['id_aplicacion'];\r\n //Cargamos los aplicativos\r\n //this.aplicativosAreas(this.iniciativa.id_area);\r\n }\r\n\r\n guardarAplicacion()\r\n {\r\n this.loading=true;\r\n let valores={\r\n 'id_iniciativa':this.iniciativa.id_iniciativa,\r\n 'id_aplicacion':this.id_aplicacion,\r\n 'id_area':this.id_area,\r\n 'userlogin':this.userlogin,\r\n 'rolUserlogin':this.idRolSeleccionado\r\n }\r\n this.dataService.UpdateAplicacionIniciativa(valores).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.loading=false;\r\n this.notifier.notify('success', 'Aplicación editada correctamente.');\r\n this.verDetallesIniciativa(this.iniciativa.id_iniciativa); \r\n this.editarAplicacion=false;\r\n }\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar la aplicación. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }//Cierre del metodo\r\n\r\n \r\n aplicativosAreas(idGrupo: number) \r\n {\r\n this.dataService.obtenerAplicativos(idGrupo).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.tiposAplicativos = data['data'];\r\n /*Obtenemos el area dueña de la aplicacion*/\r\n for(let v of this.tiposAplicativos)\r\n {\r\n if(v.id_aplicacion==this.iniciativa.id_aplicacion){\r\n this.iniciativa.nombreAplicacion=v.nombre_aplicacion;\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n }\r\n );\r\n }\r\n\r\n onChangeGrupo(idArea: number)\r\n {\r\n this.id_aplicacion=0;\r\n this.dataService.obtenerAplicativos(idArea).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.tiposAplicativos = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n\r\n }\r\n\r\n descargarArchivo(archivo:string)\r\n {\r\n this.dataService.descargarArchivo(this.iniciativa.id_iniciativa,archivo).subscribe(res => {\r\n // Este es necesario para crear un objeto blob con el tipo de archivo\r\n // puesto explicitamente, de lo contrario solo Chrome funcionara correctamente\r\n let newBlob = new Blob([res], { type: this.obtenerTipoArchivo(archivo) });\r\n // IE no permite objetos blob directamente en el atributo href de un link\r\n // en su lugar hay que usar msSaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = archivo;\r\n // Esta linea es necesaria desde que link.click() ya no funciona en las ultimas versiones de firefox\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n\r\n });\r\n\r\n }\r\n\r\n private obtenerTipoArchivo(archivo: string): string {\r\n let tipoArchivo: string;\r\n let extencion: string = archivo.split('.').pop();\r\n\r\n switch (extencion) {\r\n case 'pdf':\r\n tipoArchivo = 'application/pdf';\r\n break;\r\n case 'xls':\r\n tipoArchivo = 'application/vnd.ms-excel';\r\n break;\r\n case 'xlsx':\r\n tipoArchivo = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';\r\n break;\r\n case 'csv':\r\n tipoArchivo = 'application/csv';\r\n break;\r\n case 'zip':\r\n tipoArchivo = 'application/zip';\r\n break;\r\n case 'rar':\r\n tipoArchivo = 'application/x-rar-compressed';\r\n break;\r\n\r\n default:\r\n tipoArchivo = 'text/plain';\r\n break;\r\n }\r\n return tipoArchivo;\r\n }\r\n\r\n //Abrir modal para agregar los procedimientos del proceso ASIS\r\n abrirModalCosteoConsulta()\r\n { \r\n const dialogRef = this.dialog.open(ModalCosteoConsultaComponent,{data:{id_iniciativa:this.idIniciativa,id_proceso:this.iniciativa.id_proceso},disableClose:false});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n \r\n }\r\n else{\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\ngetBackgroundColor(idEstatus: number): string {\r\n const colors: { [key: number]: string } = {\r\n 4: 'rgb(230, 136, 138)',\r\n 5: 'rgb(140, 200, 189)',\r\n 6: 'transparent', // Sin color de fondo\r\n 7: 'rgb(197, 201, 72)',\r\n 8: 'rgb(255, 192, 0)',\r\n 9: 'rgb(0, 0, 255)',\r\n 10: 'rgb(0, 176, 80)',\r\n 11: 'rgb(255, 0, 0)',\r\n 12: 'rgb(89, 89, 89)',\r\n 13: 'rgb(0, 0, 0)',\r\n 15: 'rgb(133, 122, 160)',\r\n 16: 'rgb(174, 12, 96)', // Color para el estado 16\r\n };\r\n return colors[idEstatus] || 'transparent'; // Default\r\n}\r\n\r\ngetTextColor(idEstatus: number): string {\r\n const textColors: { [key: number]: string } = {\r\n 6: 'black', // Ejemplo donde el texto no es blanco\r\n 9: 'white',\r\n 11: 'white',\r\n 12: 'white',\r\n 13: 'white',\r\n 15: 'white',\r\n 16: 'white', // Color para el estado 16\r\n };\r\n return textColors[idEstatus] || 'black'; // Default\r\n}\r\n\r\n\r\ncancelar()\r\n{ \r\n if(this.idRolSeleccionado==9 || this.idRolSeleccionado==10 ||this.idRolSeleccionado==11\r\n ||this.idRolSeleccionado==3 ||this.idRolSeleccionado==4 ||this.idRolSeleccionado==5 \r\n ||this.idRolSeleccionado==12 ||this.idRolSeleccionado==6 ||this.idRolSeleccionado==7 ||this.idRolSeleccionado==8 )\r\n {\r\n this.router.navigate(['./iniciativas'])\r\n }\r\n else{\r\n this.router.navigate(['./mis-iniciativas'])\r\n }\r\n}\r\n/***********************************************************************************************************************************/\r\n/**Validación para los estados dentro del modal de consulta \r\n * ialvaradop 11/12/2024 10:40 p.m.\r\n*/\r\ngetEstatusBadge(): string { \r\n // Validar el id_rol\r\n if (this.idRolSeleccionado==1 || this.idRolSeleccionado==2) {\r\n // Si el id_rol es 1 o 2\r\n if (this.iniciativa?.id_estatusIniciativa_anterior) {\r\n return this.iniciativa.nombre_estatus_anterior || '';\r\n }\r\n } else {\r\n // Si el id_rol no es 1 ni 2\r\n if (this.iniciativa?.id_estatusIniciativa) {\r\n return this.iniciativa.nombre_estatusIniciativa || '';\r\n }\r\n }\r\n return '';\r\n}\r\n}//cierre de clase\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJhZG1pbmlzdHJhY2lvbi5jb21wb25lbnQuc2NzcyJ9 */\";","\r\nexport const environment = {\r\n production: true,\r\n firebase: {\r\n //Credenciales FIREBASE QA\r\n /*apiKey: \"AIzaSyBFYf4qV75WVVjnp22vaAM9EzrRVOcYERg\",\r\n authDomain: \"iniciativasv2-8992f.firebaseapp.com\",\r\n databaseURL: \"https://iniciativasv2-8992f.firebaseio.com\",\r\n projectId: \"iniciativasv2-8992f\",\r\n storageBucket: \"iniciativasv2-8992f.appspot.com\",\r\n messagingSenderId: \"25569820465\",\r\n appId: \"1:25569820465:web:0015c62821f4a3d461ba10\",\r\n measurementId: \"G-84R71Z2YFH\"*/\r\n\r\n //Credenciales FIREBASE PRODUCCION\r\n apiKey: \"AIzaSyDpHsFVdhlHglIwHggNirak6wYlV_MtFRQ\",\r\n authDomain: \"iniciativaprodd.firebaseapp.com\",\r\n projectId: \"iniciativaprodd\",\r\n storageBucket: \"iniciativaprodd.appspot.com\",\r\n messagingSenderId: \"417631319762\",\r\n appId: \"1:417631319762:web:69f14115523519c7101f0b\",\r\n measurementId: \"G-N8SQQGBQ0V\"\r\n },\r\n\r\n CLIENT_ID: '407d674a-47ac-469f-8845-8becdfa0dc95',\r\n GRANT_TYPE: 'password',\r\n GOOGLE_LOGIN:1,\r\n //urlToken: 'https://didsqa.guanajuato.gob.mx/API.IniciativasV2/',\r\n urlToken: 'https://dgtitiniciativas.guanajuato.gob.mx/API.IniciativasV2/',\r\n\r\n //UrlApiV2: 'https://didsqa.guanajuato.gob.mx/API.IniciativasV2/v2/',\r\n UrlApiV2: 'https://dgtitiniciativas.guanajuato.gob.mx/API.IniciativasV2/v2/'\r\n\r\n};\r\n","import { Component, OnInit,ViewChild, ViewEncapsulation,Input,Injectable } from '@angular/core';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport {NgbDate, NgbCalendar,NgbDatepicker, NgbDatepickerI18n,NgbDateStruct} from '@ng-bootstrap/ng-bootstrap';\r\n\r\nexport interface Periodos {\r\n id_periodoEnvio: number;\r\n fechaInicio_periodoEnvio: string;\r\n fechaTermino_periodoEnvio: string\r\n}\r\n\r\n\r\n\r\nexport interface calendario{\r\n mes:number;\r\n starAt:Date;\r\n minDate:Date;\r\n maxDate:Date;\r\n range;\r\n model: NgbDateStruct;\r\n}\r\n\r\n@Component({\r\n selector: 'app-modal-calendario',\r\n templateUrl: './modal-calendario.component.html',\r\n encapsulation: ViewEncapsulation.None,\r\n styleUrls: ['./modal-calendario.component.scss']\r\n})\r\nexport class ModalCalendarioComponent implements OnInit {\r\n @ViewChild(NgbDatepicker, {static: true}) datepicker: NgbDatepicker;\r\n \r\n\r\n minDate;\r\n hoveredDate: NgbDate | null = null;\r\n fromDate: NgbDate;\r\n toDate: NgbDate | null = null;\r\n\r\n //@Input() listaPeriodo: any[]=[];\r\n @Input() ano:string;\r\n\r\n listaInicio: any[]=[];\r\n listaFin: any[]=[];\r\n listaPeriodosEnvio: any[]=[];\r\n listameses: any[]=[];\r\n listAno: any[]=[];\r\n final: NgbDate | null = null;\r\n\r\n listaPeriodo: Periodos[]=[];\r\n\r\n constructor(calendar: NgbCalendar,\r\n public i18n: NgbDatepickerI18n,\r\n private dataService: DataService,) \r\n { \r\n\r\n /*this.minDate={year:calendar.getToday().year,month:1,day:1};\r\n this.fromDate = calendar.getToday();\r\n this.final = calendar.getNext(calendar.getToday(), \"d\", 2);*/\r\n \r\n }\r\n\r\n ngOnInit() {\r\n this.dataService.getListPeriodosEnvio().subscribe(\r\n async (data) => {\r\n this.listaPeriodo = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { IniciativaDetalle} from 'src/app/interfaces/interfaces';\r\nimport{ ConfirmListadoTablaIniciativasComponent} from 'src/app/components/shared/confirm-listado-tabla-iniciativas/confirm-listado-tabla-iniciativas.component';\r\n\r\n\r\n\r\n\r\nexport interface equipoTrabajoList{\r\n id_usuario:number;\r\n nombre_usuario:string;\r\n id_rol:number;\r\n email_usuario:string;\r\n}\r\n\r\n@Component({\r\n selector: 'app-equipo-trabajo',\r\n templateUrl: './equipo-trabajo.component.html',\r\n styleUrls: ['./equipo-trabajo.component.css']\r\n})\r\nexport class EquipoTrabajoComponent implements OnInit {\r\n idRolSeleccionado:number;\r\n emailUser:string;\r\n idIniciativa:string;\r\n listaEquipo:any[]=[];\r\n\r\n //Combos\r\n listaDesarrolladores:equipoTrabajoList[]=[];\r\n listaLider:equipoTrabajoList[]=[];\r\n listaAnalista:equipoTrabajoList[]=[];\r\n listaGestor:equipoTrabajoList[]=[];\r\n //Lider\r\n valoresLider:string;\r\n emailLider:string;\r\n comentarioLider:string;\r\n idlider:number; \r\n mostrar:boolean=false;\r\n valores:number;\r\n\r\n //Analista\r\n emailAnalista:string;\r\n emailGestor:string;\r\n nombreAnalista:string;\r\n idUsuarioAnalista:number;\r\n comentarioAnalista:string;\r\n comentarioGestor:string;\r\n analista:equipoTrabajoList[]=[]\r\n gestor:equipoTrabajoList[]=[]\r\n lider:equipoTrabajoList[]=[]\r\n desarrollador:equipoTrabajoList[]=[]\r\n\r\n //Desarrollador\r\n emailDesarrollador:string;\r\n valoresDesarrollador:string;\r\n idRolDesarrollador:number;\r\n comentarioDesarrollador:string;\r\n\r\n\r\n agregarDesa:boolean=false;\r\n agregarLid:boolean=false;\r\n agregarAna:boolean=false;\r\n agregarGest:boolean=false;\r\n\r\n nombreEnlace:string;\r\n iniciativa: IniciativaDetalle;\r\n loadingGeneral: boolean = false;\r\n\r\n\r\n\r\n\r\n\r\n constructor(private dataService: DataService,\r\n private router: Router,\r\n private authService: AuthService,\r\n private notifier: NotifierService,\r\n public dialog:MatDialog) { \r\n this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n //return this.emailUser;\r\n });\r\n }\r\n\r\n ngOnInit(): void {\r\n this.idIniciativa = localStorage.getItem(\"editarIniciativaId\");\r\n //Nos subscribimos al método para el rol seleccionado\r\n this.authService.escuchaRolSeleccionado().subscribe((res) => {\r\n this.idRolSeleccionado = res;\r\n });\r\n //Cargamos los valores del equipo de trabajo\r\n this.getEquipoTrabajo();\r\n }\r\n\r\n //Método para cargar la lista de lideres\r\n getEquipoTrabajo()\r\n {\r\n this.dataService.getEquipoTrabajo(parseInt(this.idIniciativa)).subscribe(data => {\r\n this.listaEquipo = data['data'];\r\n\r\n this.verDetallesIniciativa(parseInt(this.idIniciativa));\r\n this.listaEquipo.forEach((element,index )=> {\r\n if(element['id_rol']==1 || element['id_rol']==2)\r\n {\r\n this.nombreEnlace=element['nombre_usuario'];\r\n }\r\n if(element['id_rol']==4)\r\n {\r\n this.agregarAna=false;\r\n this.analista.push(element);\r\n }\r\n if(element['id_rol']==5)\r\n {\r\n this.agregarGest=false;\r\n this.gestor.push(element);\r\n }\r\n if(element['id_rol']==6 || element['id_rol']==7)\r\n {\r\n this.agregarLid=false;\r\n this.lider.push(element);\r\n }\r\n if(element['id_rol']==8)\r\n {\r\n this.agregarDesa=false;\r\n this.desarrollador.push(element);\r\n }\r\n });\r\n \r\n });\r\n\r\n }\r\n\r\n //Detalles de la iniciativa\r\n \r\n verDetallesIniciativa(id: number) \r\n {\r\n this.dataService.detalleIniciativa(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n this.iniciativa=data['objData']['folio_iniciativa'];\r\n }\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n //Método para cargar la lista de lideres\r\n getListLideres(){\r\n this.dataService.getListLideres().subscribe(data => {\r\n this.listaLider = data['data'];\r\n });\r\n }\r\n\r\n \r\n //Método para cargar la lista de analistas\r\n getListAnalistas(){\r\n this.dataService.getListAnalistasTI().subscribe(data => {\r\n this.listaAnalista = data['data'];\r\n });\r\n \r\n }\r\n\r\n getListGest(){\r\n this.dataService.getGestoresCambio().subscribe(data => {\r\n this.listaGestor = data['data'];\r\n });\r\n }\r\n\r\n \r\n //Método para cargar la lista de desarrolladores\r\n getListDesarrolladores(){\r\n this.dataService.getListDesarrolladores().subscribe(data => {\r\n this.listaDesarrolladores = data['data'];\r\n });\r\n \r\n }\r\n\r\n agregarDesarrolladores(){\r\n this.valoresDesarrollador=\"\";\r\n this.getListDesarrolladores();\r\n this.agregarDesa=true;\r\n \r\n\r\n }\r\n agregarLider(){\r\n this.getListLideres();\r\n this.agregarLid=true;\r\n }\r\n\r\n agregarAnalista(){\r\n this.emailAnalista=\"\";\r\n this.getListAnalistas();\r\n this.agregarAna=true;\r\n }\r\n\r\n agregarGestor(){\r\n this.emailGestor=\"\";\r\n this.getListGest();\r\n this.agregarGest=true;\r\n }\r\n\r\n //Método para guardar analista del equipo de trabajo\r\n guardarAnalista(email_usuario:string)\r\n {\r\n this.valores=email_usuario.indexOf(\"/\");\r\n let nombreAnalista=email_usuario.substring(this.valores+1,email_usuario.length);\r\n this.emailAnalista=email_usuario.substring(0,this.valores);\r\n\r\n let valores={\r\n 'id_iniciativa':this.idIniciativa,\r\n 'email_usuario':this.emailAnalista,\r\n 'id_rol':4,\r\n 'comentario':this.comentarioAnalista,\r\n 'email_usuarioLogin':this.emailUser,\r\n 'idRol_usuarioLogin':this.idRolSeleccionado\r\n }\r\n this.dataService.insertIntegranteEquipo(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.analista=[];\r\n this.gestor=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('error',data['errorMessage'] )\r\n }\r\n else{\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.analista=[];\r\n this.gestor=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('success', 'Analista de TI agregado correctamente.');\r\n }\r\n }\r\n );\r\n\r\n\r\n\r\n /* let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,{data:{opcion:9,etiqueta:'Analista de TI',nombreDesarrollador:nombreAnalista},disableClose:true,width: '500px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n let valores={\r\n 'id_iniciativa':this.idIniciativa,\r\n 'email_usuario':this.emailAnalista,\r\n 'id_rol':4,\r\n 'comentario':this.comentarioAnalista,\r\n 'email_usuarioLogin':this.emailUser,\r\n 'idRol_usuarioLogin':this.idRolSeleccionado\r\n }\r\n this.dataService.insertIntegranteEquipo(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.notifier.notify('error',data['errorMessage'] )\r\n }\r\n else{\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.analista=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('success', 'Analista de TI agregado correctamente.');\r\n }\r\n }\r\n );\r\n \r\n }\r\n });*/\r\n\r\n\r\n\r\n }\r\n\r\n guardarGestor(email_usuario:string)\r\n {\r\n this.valores=email_usuario.indexOf(\"/\");\r\n let nombreAnalista=email_usuario.substring(this.valores+1,email_usuario.length);\r\n this.emailGestor=email_usuario.substring(0,this.valores);\r\n \r\n let valores={\r\n 'id_iniciativa':this.idIniciativa,\r\n 'email_usuario':this.emailGestor,\r\n 'id_rol':5,\r\n 'comentario':this.comentarioGestor,\r\n 'email_usuarioLogin':this.emailUser,\r\n 'idRol_usuarioLogin':this.idRolSeleccionado\r\n }\r\n \r\n this.dataService.insertIntegranteEquipo(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.gestor=[];\r\n this.analista=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('error',data['errorMessage'] )\r\n }\r\n else{\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.gestor=[];\r\n this.analista=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('success', 'Gestor de cambios agregado correctamente.');\r\n }\r\n }\r\n );\r\n }\r\n\r\n //Método para guardar lider de equipo de trabajo\r\n guardarLider(valoresLider:string)\r\n {\r\n this.valores=valoresLider.indexOf(\"/\");\r\n this.idlider=parseInt(valoresLider.substring(this.valores+1,valoresLider.length));\r\n this.emailLider=valoresLider.substring(0,this.valores);\r\n let nombreLider=valoresLider.substring(this.valores+3,valoresLider.length);\r\n\r\n let valores={\r\n 'id_iniciativa':this.idIniciativa,\r\n 'email_usuario': this.emailLider,\r\n 'id_rol':this.idlider,\r\n 'comentario':this.comentarioLider,\r\n 'email_usuarioLogin':this.emailUser,\r\n 'idRol_usuarioLogin':this.idRolSeleccionado\r\n }\r\n this.dataService.insertIntegranteEquipo(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.analista=[];\r\n this.desarrollador=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('error',data['errorMessage'] )\r\n }\r\n else{\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.analista=[];\r\n this.desarrollador=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('success', 'Lider de proyecto agregado correctamente.');\r\n }\r\n }\r\n );\r\n\r\n //Agregar confirmacion de agregar\r\n /*let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,{data:{opcion:9, etiqueta:'lider', nombreDesarrollador:nombreLider},disableClose:true,width: '500px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n let valores={\r\n 'id_iniciativa':this.idIniciativa,\r\n 'email_usuario': this.emailLider,\r\n 'id_rol':this.idlider,\r\n 'comentario':this.comentarioLider,\r\n 'email_usuarioLogin':this.emailUser,\r\n 'idRol_usuarioLogin':this.idRolSeleccionado\r\n }\r\n this.dataService.insertIntegranteEquipo(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.notifier.notify('error',data['errorMessage'] )\r\n }\r\n else{\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.analista=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('success', 'Lider de proyecto agregado correctamente.');\r\n }\r\n }\r\n );\r\n }\r\n});*/\r\n\r\n\r\n\r\n}\r\n\r\n\r\n //Método para guardar desarrollador de equipo de trabajo\r\n guardarDesarrollador(valoresDesarrollador:string)\r\n {\r\n this.valores=valoresDesarrollador.indexOf(\"/\");\r\n this.idRolDesarrollador=parseInt(valoresDesarrollador.substring(this.valores+1,valoresDesarrollador.length));\r\n this.emailDesarrollador=valoresDesarrollador.substring(0,this.valores);\r\n let nombreDesarrollador=valoresDesarrollador.substring(this.valores+3,valoresDesarrollador.length)\r\n\r\n let valores={\r\n 'id_iniciativa':this.idIniciativa,\r\n 'email_usuario': this.emailDesarrollador,\r\n 'id_rol': this.idRolDesarrollador,\r\n 'comentario':this.comentarioLider,\r\n 'email_usuarioLogin':this.emailUser,\r\n 'idRol_usuarioLogin':this.idRolSeleccionado\r\n }\r\n this.dataService.insertIntegranteEquipo(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.analista=[];\r\n this.desarrollador=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('error',data['errorMessage'] )\r\n }\r\n else{\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.analista=[];\r\n this.desarrollador=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('success', 'Colaborador agregado correctamente.');\r\n }\r\n }\r\n );\r\n\r\n //Agregar confirmacion de agregar\r\n /*let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,{data:{opcion:9,nombreDesarrollador:nombreDesarrollador,etiqueta:'colaborador'},disableClose:true,width: '500px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n \r\n let valores={\r\n 'id_iniciativa':this.idIniciativa,\r\n 'email_usuario': this.emailDesarrollador,\r\n 'id_rol': this.idRolDesarrollador,\r\n 'comentario':this.comentarioLider,\r\n 'email_usuarioLogin':this.emailUser,\r\n 'idRol_usuarioLogin':this.idRolSeleccionado\r\n }\r\n this.dataService.insertIntegranteEquipo(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.notifier.notify('error',data['errorMessage'] )\r\n }\r\n else{\r\n this.agregarAna=false;\r\n this.lider=[];\r\n this.analista=[];\r\n this.desarrollador=[];\r\n this.getEquipoTrabajo();\r\n this.notifier.notify('success', 'Colaborador agregado correctamente.');\r\n }\r\n }\r\n );\r\n \r\n }\r\n });*/\r\n\r\n}\r\n\r\n\r\neliminarIntegrante(nombreAnalista:string, idUsuarioAnalista:number, idRol:number, confirmacion:boolean)\r\n{\r\n //Si el integrante esta confirmado, mostramos el modal\r\n if(confirmacion==false)\r\n {\r\n\r\n let valores={\r\n 'id_iniciativa':this.idIniciativa,\r\n 'id_usuario':idUsuarioAnalista,\r\n 'id_rol':idRol,\r\n 'comentario':\"\",\r\n 'email_usuarioLogin':this.emailUser,\r\n 'idRol_usuarioLogin':this.idRolSeleccionado\r\n }\r\n\r\n this.dataService.deleteAnalista(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.notifier.notify('error',data['errorMessage'] )\r\n }\r\n else{\r\n\r\n this.lider=[];\r\n this.comentarioLider=\"\";\r\n this.agregarAna=false;\r\n\r\n this.analista=[];\r\n this.comentarioAnalista=\"\";\r\n\r\n this.desarrollador=[];\r\n this.comentarioDesarrollador=\"\";\r\n\r\n this.gestor=[];\r\n this.comentarioGestor=\"\";\r\n\r\n this.getEquipoTrabajo();\r\n this.getListAnalistas();\r\n this.getListLideres();\r\n this.getListGest();\r\n this.notifier.notify('success', 'Registro eliminado correctamente.');\r\n }\r\n }\r\n );\r\n\r\n\r\n }\r\n //Si esta confirmado\r\n else{\r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,{data:{opcion:2,nombreIntegrante:nombreAnalista},disableClose:true,width: '800px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n let valores={\r\n 'id_iniciativa':this.idIniciativa,\r\n 'id_usuario':idUsuarioAnalista,\r\n 'id_rol':idRol,\r\n 'comentario':result,\r\n 'email_usuarioLogin':this.emailUser,\r\n 'idRol_usuarioLogin':this.idRolSeleccionado\r\n }\r\n this.dataService.deleteAnalista(valores).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.notifier.notify('error',data['errorMessage'] )\r\n }\r\n else{\r\n\r\n this.lider=[];\r\n this.comentarioLider=\"\";\r\n this.agregarAna=false;\r\n\r\n this.analista=[];\r\n this.comentarioAnalista=\"\";\r\n\r\n this.desarrollador=[];\r\n this.comentarioDesarrollador=\"\";\r\n\r\n this.gestor=[];\r\n this.comentarioGestor=\"\";\r\n\r\n this.getEquipoTrabajo();\r\n this.getListAnalistas();\r\n this.getListLideres();\r\n this.getListGest();\r\n this.notifier.notify('success', 'Registro eliminado correctamente.');\r\n }\r\n }\r\n );\r\n }\r\n });\r\n}\r\n}\r\n\r\n\r\n//Método para cerrarventana de integrantes \r\n cancelar(){\r\n this.router.navigate(['./iniciativas'])\r\n\r\n }\r\n\r\n //Método para hacer la confirmación\r\n confirmarEquipo()\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoTablaIniciativasComponent,{data:{opcion:9,id_iniciativa:this.idIniciativa,rolLogin:this.idRolSeleccionado},disableClose:true,width: '800px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n //this.scrollInicio();\r\n //this.loadingGeneral=true;\r\n let valores={\r\n 'id_iniciativa':this.idIniciativa,\r\n 'email_usuarioLogin':this.emailUser,\r\n 'idRol_usuarioLogin':this.idRolSeleccionado\r\n }\r\n this.dataService.confirmarEquipoTrabajo(valores).subscribe(\r\n data => {\r\n if (data['errorMessage'] && data['errorMessage']=='La iniciativa no cuenta con algún cambio.') \r\n {\r\n /*this.lider=[];\r\n this.analista=[];\r\n this.desarrollador=[];\r\n this.getEquipoTrabajo();\r\n this.scrollInicio();*/\r\n this.notifier.notify('success', 'Equipo confirmado correctamente.');\r\n //this.notifier.notify('warning',data['errorMessage'] )\r\n this.loadingGeneral=false;\r\n this.cancelar();\r\n }\r\n else{\r\n if(data['errorMessage'])\r\n {\r\n /*this.lider=[];\r\n this.analista=[];\r\n this.desarrollador=[];\r\n this.getEquipoTrabajo();\r\n this.scrollInicio();*/\r\n this.notifier.notify('error',data['errorMessage'])\r\n this.loadingGeneral=false;\r\n this.cancelar();\r\n\r\n }else{\r\n\r\n /*this.lider=[];\r\n this.analista=[];\r\n this.desarrollador=[];\r\n this.getEquipoTrabajo();\r\n this.scrollInicio();*/\r\n this.notifier.notify('success', 'Equipo confirmado correctamente.');\r\n this.loadingGeneral=false;\r\n this.cancelar();\r\n\r\n\r\n }\r\n\r\n\r\n //this.agregarAna=false;\r\n \r\n }\r\n }\r\n );\r\n \r\n }\r\n });\r\n \r\n }\r\n\r\n\r\n \r\n scrollInicio() {\r\n const scrollToTop = window.setInterval(() => {\r\n const pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // pasos cada intervalo\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 16);\r\n }\r\n\r\n}\r\n","export default \".card-body {\\n margin-top: 20px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFwuLlxcYWRkLXVzdWFyaW9zLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBO0VBQ0ksZ0JBQUE7QUFBSiIsImZpbGUiOiJhZGQtdXN1YXJpb3MuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuLmNhcmQtYm9keXtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbn0iXX0= */\";","export default \"/* calendario */\\r\\n\\r\\n.nada {\\r\\n background: #dedede;\\r\\n border-radius: 100%;\\r\\n}\\r\\n\\r\\n.directoresArea {\\r\\n background: #b6ffff;\\r\\n border-radius: 100%;\\r\\n}\\r\\n\\r\\n.directoresGenerales {\\r\\n background: #f3ceff;\\r\\n border-radius: 100%;\\r\\n}\\r\\n\\r\\n.example-custom-date-class {\\r\\n background: orange;\\r\\n border-radius: 100%;\\r\\n}\\r\\n\\r\\n.envio {\\r\\n background: #ffd277;\\r\\n border-radius: 100%;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNhbGVuZGFyaW8tdmlzdWFsLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZUFBZTs7QUFFZjtJQUNJLG1CQUFtQjtJQUNuQixtQkFBbUI7QUFDdkI7O0FBRUE7SUFDSSxtQkFBbUI7SUFDbkIsbUJBQW1CO0FBQ3ZCOztBQUVBO0lBQ0ksbUJBQW1CO0lBQ25CLG1CQUFtQjtBQUN2Qjs7QUFFQTtJQUNJLGtCQUFrQjtJQUNsQixtQkFBbUI7QUFDdkI7O0FBRUE7SUFDSSxtQkFBbUI7SUFDbkIsbUJBQW1CO0FBQ3ZCIiwiZmlsZSI6ImNhbGVuZGFyaW8tdmlzdWFsLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBjYWxlbmRhcmlvICovXHJcblxyXG4ubmFkYSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZGVkZWRlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG5cclxuLmRpcmVjdG9yZXNBcmVhIHtcclxuICAgIGJhY2tncm91bmQ6ICNiNmZmZmY7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG59XHJcblxyXG4uZGlyZWN0b3Jlc0dlbmVyYWxlcyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjNjZWZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG5cclxuLmV4YW1wbGUtY3VzdG9tLWRhdGUtY2xhc3Mge1xyXG4gICAgYmFja2dyb3VuZDogb3JhbmdlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxufVxyXG5cclxuLmVudmlvIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmQyNzc7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG59Il19 */\";","export default \"\";","export default \"\\r\\n
\\r\\n

Enviar

\\r\\n
\\r\\n ¿Desea enviar la iniciativa?\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n

Solicitud de autorización para envío fuera de periodo

\\r\\n
\\r\\n Justificación\\r\\n
\\r\\n \\r\\n Adjuntar archivo\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Duplicar

\\r\\n
\\r\\n ¿Desea duplicar la iniciativa folio: {{this.folioIniciativa}}?\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n close\\r\\n

Eliminar

\\r\\n
\\r\\n ¿Desea eliminar la iniciativa folio: {{this.folioIniciativa}}?\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Solicitud de cancelación de iniciativa folio {{this.folioIniciativa}}

\\r\\n
\\r\\n Observaciones\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Historial de iniciativa folio: {{this.folioIniciativa}}

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
AcciónUsuarioFechaObservaciones
{{iniciativa.descripcion_accion}}{{iniciativa.nombre_usuario}} {{iniciativa.email_usuario}}{{iniciativa.fecha_historialIniciativa | date: 'yyyy-MM-dd' }}\\r\\n Estatus: {{iniciativa.nombre_estatusIniciativa}}
\\r\\n {{iniciativa.observaciones_historialIniciativa}}\\r\\n
{{iniciativa.observaciones_historialIniciativa}} Estatus: {{iniciativa.nombre_estatusIniciativa}}
\\r\\n {{iniciativa.observaciones_historialIniciativa}}\\r\\n
\\r\\n No se encontro historial de la iniciativa especificada\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n close\\r\\n

Contactos para iniciativa folio {{this.folioIniciativa}}

\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
    = 1\\\">\\r\\n
  • \\r\\n {{contacto.nombre_rol}}
    \\r\\n Nombre: {{contacto.nombre_usuario}}
    \\r\\n Email: {{contacto.email_usuario}}\\r\\n
  • \\r\\n
\\r\\n
    \\r\\n
  • \\r\\n No se encontraron contactos para la iniciativa especificada \\r\\n
  • \\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n close\\r\\n

Comentarios para iniciativa folio: {{this.folioIniciativa}}

\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n La iniciativa aún no cuenta con registro de comentarios\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n Seleccionar al menos un destinatario\\r\\n \\r\\n Seleccionar Destinatario(s)\\r\\n \\r\\n {{eq.nombre_usuario}}-{{eq.nombre_rol}}\\r\\n \\r\\n \\r\\n
\\r\\n Nombre: {{this.name}}\\r\\n
\\r\\n Rol: {{this.nombreRol}}\\r\\n \\r\\n
\\r\\n
\\r\\n Adjuntar archivo\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
UsuarioRolFechaComentarioArchivo adjuntoDestinatarios
{{iniciativa.nombre_UsuarioComentario}}{{iniciativa.nombre_rol}}{{iniciativa.fecha_comentario | date: 'yyyy-MM-dd'}}{{iniciativa.descripcion_comentario}}\\r\\n {{iniciativa.descripcion_comentario}}\\r\\n \\r\\n \\r\\n \\r\\n
    \\r\\n
  • \\r\\n {{dest.nombre_usuarioDestinatario}}
    \\r\\n {{dest.nombre_rol}} \\r\\n
  • \\r\\n
\\r\\n
\\r\\n No se encontraron comentarios para la iniciativa especificada\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\";","import { HttpErrorResponse, HttpEvent, HttpHandler, HttpInterceptor, HttpRequest, HttpResponse, HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { BehaviorSubject, Observable, of, Subscription, throwError } from 'rxjs';\r\nimport { catchError, delay, delayWhen, filter, map, mergeMap, switchMap, take, tap, finalize } from 'rxjs/operators';\r\nimport { Router } from '@angular/router';\r\nimport { SessionService } from './session.service';\r\nimport { AuthService } from './auth.service';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthInterceptorService implements HttpInterceptor {\r\n private router: Router;\r\n private token: string;\r\n private refreshingToken: boolean = false;\r\n public tokenSubject$: BehaviorSubject = new BehaviorSubject(null);\r\n private readonly exclusionPaths: string[] = [\r\n 'login',\r\n 'assets',\r\n 'token'\r\n ];\r\n\r\n refreshTokenSubject: BehaviorSubject = new BehaviorSubject(null)\r\n\r\n constructor(\r\n public _auth: AuthService,\r\n public _session: SessionService,\r\n public http: HttpClient) {\r\n \r\n }\r\n\r\n\r\n intercept(req: HttpRequest, next: HttpHandler): Observable> {\r\n const token = this._session.token\r\n // request no necesita token en headers\r\n if (this.isUrlOnExcludedPaths(req.url)) {\r\n return next.handle((req));\r\n }\r\n\r\n // SI existe el token, agregarlo a la request\r\n if (token) req = this.addToken(req, token);\r\n //ejecutar a la request\r\n return next.handle(req).pipe(catchError(error => {\r\n if (error instanceof HttpErrorResponse && error.status === 401) {\r\n return this.handle401Error(req, next);\r\n }\r\n else return throwError(error);\r\n }));\r\n\r\n }//cierre del metodo\r\n\r\n\r\n \r\n private isUrlOnExcludedPaths = (url: string) =>\r\n this.exclusionPaths.some(path => url.includes(path))\r\n\r\n\r\n \r\n private handle401Error(request: HttpRequest, next: HttpHandler) {\r\n if (!this._session.isRefreshing) {\r\n\r\n this._session.isRefreshing = true;\r\n this.refreshTokenSubject.next(null);\r\n\r\n return this._auth.refreshToken().pipe(\r\n switchMap((token: any) => {\r\n this._session.isRefreshing = false;\r\n this.refreshTokenSubject.next(token['access_token']);\r\n return next.handle(this.addToken(request, token['access_token']));\r\n }));\r\n }\r\n else {\r\n return this.refreshTokenSubject.pipe(\r\n filter(token => token != null),\r\n take(1),\r\n switchMap(jwt => {\r\n return next.handle(this.addToken(request, jwt));\r\n }));\r\n }\r\n }\r\n\r\n\r\n private addToken(request: HttpRequest, token: string) {\r\n return request.clone({\r\n setHeaders: {\r\n 'Authorization': `Bearer ${token}`\r\n }\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n}\r\n","export default \"\\r\\n\\r\\n\\r\\n.mat-form-field {\\r\\n font-size: 14px;\\r\\n width: 50%;\\r\\n }\\r\\n\\r\\n .fa-edit,.fa-history,.fa-arrows-h\\r\\n .fa-check, .fa-check-circle,\\r\\n .fa-clone, .fa-times-circle, .fa-trash, .fa-users, .fa-comments{\\r\\n color: gray; \\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1vdGl2b3MtaW5pY2lhdGl2YS5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBO0lBQ0ksZUFBZTtJQUNmLFVBQVU7RUFDWjs7RUFFQTs7O0lBR0UsV0FBVztFQUNiIiwiZmlsZSI6Im1vdGl2b3MtaW5pY2lhdGl2YS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcblxyXG5cclxuLm1hdC1mb3JtLWZpZWxkIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgfVxyXG5cclxuICAuZmEtZWRpdCwuZmEtaGlzdG9yeSwuZmEtYXJyb3dzLWhcclxuICAuZmEtY2hlY2ssIC5mYS1jaGVjay1jaXJjbGUsXHJcbiAgLmZhLWNsb25lLCAuZmEtdGltZXMtY2lyY2xlLCAuZmEtdHJhc2gsIC5mYS11c2VycywgLmZhLWNvbW1lbnRze1xyXG4gICAgY29sb3I6IGdyYXk7IFxyXG4gIH0iXX0= */\";","export default \".mat-dialog-actions .mat-button-base+.mat-button-base {\\r\\n margin-left: 50px;\\r\\n}\\r\\n\\r\\n.mat-dialog-actions {\\r\\n display: contents !important;\\r\\n}\\r\\n\\r\\n.mat-dialog-container {\\r\\n overflow-x: hidden !important;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRpYWxvZy1jYW1iaW8tdGlwby1pbmljaWF0aXZhLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxpQkFBaUI7QUFDckI7O0FBRUE7SUFDSSw0QkFBNEI7QUFDaEM7O0FBRUE7SUFDSSw2QkFBNkI7QUFDakMiLCJmaWxlIjoiZGlhbG9nLWNhbWJpby10aXBvLWluaWNpYXRpdmEuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5tYXQtZGlhbG9nLWFjdGlvbnMgLm1hdC1idXR0b24tYmFzZSsubWF0LWJ1dHRvbi1iYXNlIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xyXG59XHJcblxyXG4ubWF0LWRpYWxvZy1hY3Rpb25zIHtcclxuICAgIGRpc3BsYXk6IGNvbnRlbnRzICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tYXQtZGlhbG9nLWNvbnRhaW5lciB7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDtcclxufSJdfQ== */\";","export default \"\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
El puesto de usuario es requerido
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
La dependencia a la que pertenece el usuario es requerida
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
La dependencia a la que pertenece el usuario es requerida
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n Los campos marcados con * son obligatorios\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\";","export default \"\\r\\n
\\r\\n

Ingrese las especificaciones del requerimiento

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Implica cambios al proceso \\r\\n
\\r\\n
\\r\\n Implica cambios al proceso\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n Datos generales\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
0 && this.editarIniciativa==false\\\">\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{this.nameDirGral}}\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{this.nameDirGral}}\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n El Nombre del solicitante es requerido.\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El Email del solicitante no es una dirección de email\\r\\n válido.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El Nombre del cambio es requerido.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El telefono del solicitante es requerido.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n Describa la situación que desea resolver a través de su solicitud\\r\\n

\\r\\n \\r\\n
\\r\\n La problemática es requerida.\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n La fecha de término es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n La justificación de fecha de término es requerida.\\r\\n
\\r\\n
\\r\\n \\r\\n

Anexos

\\r\\n
\\r\\n
\\r\\n Otros archivos\\r\\n

\\r\\n Adjunte los documentos necesarios para completar su solicitud EN FORMATO PDF \\r\\n (pantallas, manuales, formatos, etc.) \\r\\n Si es más de un archivo, genere una carpeta comprimida en formato ZIP o RAR.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Error al subir el archivo. Inténtelo de nuevo.\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n Datos generales\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
0 && this.editarIniciativa==false\\\">\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{this.nameDirGral}}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{this.nameDirGral}}\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n El Nombre del solicitante es requerido.\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El Email del solicitante no es una dirección de email\\r\\n válido.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El Nombre del cambio es requerido.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El telefono del solicitante es requerido.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n Describa la situación que desea resolver a través de su solicitud\\r\\n

\\r\\n \\r\\n
\\r\\n La problemática es requerida.\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n La fecha de término es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n La justificación de fecha de término es requerida.\\r\\n
\\r\\n
\\r\\n

Solución propuesta

\\r\\n

\\r\\n Describa de acuerdo a su análisis en qué consiste la solución\\r\\n *\\r\\n

\\r\\n \\r\\n
\\r\\n La solución de propuesta es requerida.\\r\\n
\\r\\n
\\r\\n

Procesos

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Proceso actual *
\\r\\n Adjunte los procedimientos vigentes de su manual que\\r\\n reflejen el proceso actual en formato PDF\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n El documento de Proceso actual es requerido\\r\\n \\r\\n \\r\\n Error al subir el archivo. Inténtelo de nuevo.\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Proceso propuesto *
\\r\\n Adjunte los procedimientos actualizados con las mejoras\\r\\n propuestas en formato PDF.\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n El documento de Proceso propuesto es requerido\\r\\n \\r\\n \\r\\n Error al subir el archivo. Inténtelo de nuevo.\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

Anexos

\\r\\n
\\r\\n
\\r\\n Otros archivos\\r\\n

\\r\\n Adjunte los documentos necesarios para completar su solicitud EN FORMATO PDF\\r\\n (pantallas, manuales, formatos, etc.) \\r\\n Si es más de un archivo, genere una carpeta comprimida en formato ZIP o RAR.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Error al subir el archivo. Inténtelo de nuevo.\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n Costeo\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Descargar documento ejemplo de costeo de proceso para su información\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Subir plantilla\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Datos generales del proceso
Proceso\\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento\\r\\n \\r\\n
Dueño\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CriterioActual (As-Is)Propuesto (To-Be)
#Trámites para usuarios internos (mensual):\\r\\n \\r\\n \\r\\n \\r\\n
#Trámites para usuarios externos (mensual):\\r\\n \\r\\n \\r\\n \\r\\n
Hojas impresas por trámite\\r\\n \\r\\n \\r\\n \\r\\n
Km recorridos(viaje redondo)\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento Actual (As-Is)\\r\\n \\r\\n
RolPuesto funcionalTiempo de operación(min)Tiempo de espera(min)Nivel tabularNúmero de participantesAcciones
{{procedimiento.rol_procesoDetalle}}{{procedimiento.puesto_procesoDetalle}}{{procedimiento.tiempoOperacion_procesoDetalle}}{{procedimiento.tiempoEspera_procesoDetalle}}{{procedimiento.nivelTabular_procesoDetalle}}{{procedimiento.numParticipantes_procesoDetalle}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n No se encontraron procedimientos registrados \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento propuesto (To-Be)\\r\\n \\r\\n
RolPuesto funcionalTiempo de operación(min)Tiempo de espera(min)Nivel tabularNúmero de participantesAcciones
{{procedimiento.rol_procesoDetalle}}{{procedimiento.puesto_procesoDetalle}}{{procedimiento.tiempoOperacion_procesoDetalle}}{{procedimiento.tiempoEspera_procesoDetalle}}{{procedimiento.nivelTabular_procesoDetalle}}{{procedimiento.numParticipantes_procesoDetalle}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n No se encontraron procedimientos registrados \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\";","export default \"\\r\\n.btn-success {\\r\\n color: #fff;\\r\\n background-color: #28a745;\\r\\n border-color: #28a745;\\r\\n width: 50px;\\r\\n}\\r\\n\\r\\n.btn-danger {\\r\\n width: 50px; \\r\\n}\\r\\n\\r\\n.mat-dialog-actions{\\r\\n width: 439px;\\r\\n padding-left: 305px;\\r\\n}\\r\\n\\r\\n.mat-dialog-actions{\\r\\n margin-top: 10px;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbmZpcm0uY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0E7SUFDSSxXQUFXO0lBQ1gseUJBQXlCO0lBQ3pCLHFCQUFxQjtJQUNyQixXQUFXO0FBQ2Y7O0FBRUE7SUFDSSxXQUFXO0FBQ2Y7O0FBRUE7SUFDSSxZQUFZO0lBQ1osbUJBQW1CO0FBQ3ZCOztBQUVBO0lBQ0ksZ0JBQWdCO0FBQ3BCIiwiZmlsZSI6ImNvbmZpcm0uY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4uYnRuLXN1Y2Nlc3Mge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1O1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMjhhNzQ1O1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbn1cclxuXHJcbi5idG4tZGFuZ2VyIHtcclxuICAgIHdpZHRoOiA1MHB4OyAgIFxyXG59XHJcblxyXG4ubWF0LWRpYWxvZy1hY3Rpb25ze1xyXG4gICAgd2lkdGg6IDQzOXB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzMDVweDtcclxufVxyXG5cclxuLm1hdC1kaWFsb2ctYWN0aW9uc3tcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbn0iXX0= */\";","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { ConfirmacionComponent } from '../confirmacion/confirmacion.component';\r\n\r\n@Component({\r\n selector: 'app-dialog-asigna-enlace',\r\n templateUrl: './dialog-asigna-enlace.component.html',\r\n styleUrls: ['./dialog-asigna-enlace.component.css']\r\n})\r\nexport class DialogAsignaEnlaceComponent implements OnInit {\r\n lista\r\n accionForm: FormGroup;\r\n constructor(\r\n public dataService: DataService,\r\n private _fb: FormBuilder,\r\n public dialogRefEliminar: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any) { }\r\n\r\n ngOnInit() {\r\n var body={\r\n \"userlogin\":\"\"+this.data['userLogin'],\r\n \"rolUserLogin\":this.data['rolSeleccionado']\r\n }\r\n this.cargaEnlaces(body);\r\n this.crearForm();\r\n }\r\n onNoClick(): void {\r\n this.dialogRefEliminar.close();\r\n }\r\n\r\n crearForm(){\r\n this.accionForm = this._fb.group({\r\n tipo: ['', [Validators.required]]\r\n })\r\n }\r\n\r\n save(){\r\n var form =this.accionForm.getRawValue();\r\n var body ={\r\n \"id_iniciativa\":this.data['id_iniciativa'],\r\n \"email_nuevoEnlace\":\"\"+form['tipo'],\r\n \"justificacion\":\"Cambio de enlace\",\r\n \"userlogin\":\"\"+this.data['userLogin'],\r\n }\r\n this.dialogRefEliminar.close(body);\r\n }\r\n\r\n\r\n cargaEnlaces(obj)\r\n {\r\n this.dataService.getEnlacesList(obj).subscribe(\r\n data => {\r\n this.lista = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n}\r\n","export default \"\\r\\n.mat-form-field{\\r\\n width: 300px;\\r\\n}\\r\\n\\r\\n\\r\\n.mat-dialog-actions{\\r\\n width: 439px;\\r\\n padding-left: 100px;\\r\\n}\\r\\n\\r\\n\\r\\n.mat-dialog-actions{\\r\\n margin-top: 10px;\\r\\n}\\r\\n\\r\\n\\r\\n.mat-dialog-content{\\r\\n font-size: 14pt !important;\\r\\n font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;\\r\\n }\\r\\n\\r\\n\\r\\n.btn-success{\\r\\n font-size: 12pt !important;\\r\\n font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbmZpcm0tbGlzdGFkby1pbmljaWF0aXZhcy1hZG1pbi5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQTtJQUNJLFlBQVk7QUFDaEI7OztBQUdBO0lBQ0ksWUFBWTtJQUNaLG1CQUFtQjtBQUN2Qjs7O0FBRUE7SUFDSSxnQkFBZ0I7QUFDcEI7OztBQUdBO0lBQ0ksMEJBQTBCO0lBQzFCLDZFQUE2RTtFQUMvRTs7O0FBRUE7SUFDRSwwQkFBMEI7SUFDMUIsNkVBQTZFO0VBQy9FIiwiZmlsZSI6ImNvbmZpcm0tbGlzdGFkby1pbmljaWF0aXZhcy1hZG1pbi5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbi5tYXQtZm9ybS1maWVsZHtcclxuICAgIHdpZHRoOiAzMDBweDtcclxufVxyXG5cclxuXHJcbi5tYXQtZGlhbG9nLWFjdGlvbnN7XHJcbiAgICB3aWR0aDogNDM5cHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xyXG59XHJcblxyXG4ubWF0LWRpYWxvZy1hY3Rpb25ze1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuXHJcbi5tYXQtZGlhbG9nLWNvbnRlbnR7XHJcbiAgICBmb250LXNpemU6IDE0cHQgIWltcG9ydGFudDtcclxuICAgIGZvbnQtZmFtaWx5OiAnR2lsbCBTYW5zJywgJ0dpbGwgU2FucyBNVCcsIENhbGlicmksICdUcmVidWNoZXQgTVMnLCBzYW5zLXNlcmlmO1xyXG4gIH1cclxuICBcclxuICAuYnRuLXN1Y2Nlc3N7XHJcbiAgICBmb250LXNpemU6IDEycHQgIWltcG9ydGFudDtcclxuICAgIGZvbnQtZmFtaWx5OiAnR2lsbCBTYW5zJywgJ0dpbGwgU2FucyBNVCcsIENhbGlicmksICdUcmVidWNoZXQgTVMnLCBzYW5zLXNlcmlmO1xyXG4gIH0iXX0= */\";","export default \"\\r\\nclose\\r\\n\\r\\n

Costeo del proceso

\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Datos generales del proceso
Proceso\\r\\n {{this.formProcesos.controls['nombre_proceso'].value}} \\r\\n \\r\\n \\r\\n
Procedimiento\\r\\n {{this.formProcesos.controls['procedimiento_proceso'].value}}\\r\\n
Dueño\\r\\n {{this.formProcesos.controls['duenio_proceso'].value}}\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CriterioActual (As-Is)Propuesto (To-Be)
#Trámites para usuarios internos (mensual):\\r\\n {{this.formProcesos.controls['tramitesInternosASIS_proceso'].value}}\\r\\n \\r\\n {{this.formProcesos.controls['tramitesInternosTOBE_proceso'].value}}\\r\\n
#Trámites para usuarios externos (mensual):\\r\\n {{this.formProcesos.controls['tramitesExternosASIS_proceso'].value}}\\r\\n \\r\\n {{this.formProcesos.controls['tramitesExternosTOBE_proceso'].value}}\\r\\n
Hojas impresas por trámite\\r\\n {{this.formProcesos.controls['hojasImpresasASIS_proceso'].value}}\\r\\n \\r\\n {{this.formProcesos.controls['hojasImpresasTOBE_proceso'].value}}\\r\\n
Km recorridos(viaje redondo)\\r\\n {{this.formProcesos.controls['kmRecorridosASIS_Proceso'].value}}\\r\\n \\r\\n {{this.formProcesos.controls['kmRecorridosTOBE_Proceso'].value}}\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento Actual (As-Is)\\r\\n
RolPuesto funcionalTiempo de operación(min)Tiempo de espera(min)Nivel tabularNúmero de participantes
{{procedimiento.rol_procesoDetalle}}{{procedimiento.puesto_procesoDetalle}}{{procedimiento.tiempoOperacion_procesoDetalle}}{{procedimiento.tiempoEspera_procesoDetalle}}{{procedimiento.nivelTabular_procesoDetalle}}{{procedimiento.numParticipantes_procesoDetalle}}
\\r\\n No se encontraron procedimientos registrados \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento propuesto (To-Be)\\r\\n
RolPuesto funcionalTiempo de operación(min)Tiempo de espera(min)Nivel tabularNúmero de participantes
{{procedimiento.rol_procesoDetalle}}{{procedimiento.puesto_procesoDetalle}}{{procedimiento.tiempoOperacion_procesoDetalle}}{{procedimiento.tiempoEspera_procesoDetalle}}{{procedimiento.nivelTabular_procesoDetalle}}{{procedimiento.numParticipantes_procesoDetalle}}
\\r\\n No se encontraron procedimientos registrados \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\";","export default \"
\\r\\n

Por favor espere...

\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

Mis Iniciativas

\\r\\n
\\r\\n
\\r\\n
\\r\\n

Editar iniciativa

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n El periodo de envío de iniciativas ha terminado, pero puedes continuar modificando tus iniciativas con el Estatus de Registro o registrar nuevas iniciativas\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n Buscar\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n 0) && this.idRolSeleccionado==1 || (this.idRolSeleccionado==2)\\\"> \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Total registros: {{this.totalRegistros}}
FolioSolicitudSolicitanteFecha de envíoEstatusPriorización áreasPriorización URPriorización SubsecretaríaAcciones
{{ iniciativa.folio_iniciativa}}{{ iniciativa.nombre_iniciativa }}{{ iniciativa.nombre_aplicacion}}{{ iniciativa.fechaEnvio_iniciativa | date: 'yyyy-MM-dd' }}{{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}}{{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatus_anterior}}{{ iniciativa.priorizacion_areaIniciativa}}{{ iniciativa.priorizacion_gralIniciativa}}{{ iniciativa.priorizacion_subSecIniciativa}}\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n 0\\\" class=\\\"badge-alert\\\">\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n mode_comment\\r\\n \\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n No se encontraron iniciativas registradas con tu usuario\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\";","import { HttpClient } from '@angular/common/http';\r\nimport { EventEmitter, Injectable, NgZone, OnDestroy, ɵConsole } from '@angular/core';\r\nimport { AngularFireAuth } from '@angular/fire/auth';\r\nimport { Router } from '@angular/router';\r\nimport { auth } from 'firebase/app';\r\nimport { Observable, Subject, BehaviorSubject } from 'rxjs';\r\nimport { retry, retryWhen, delay, tap,map } from 'rxjs/operators';\r\nimport { catchError } from 'rxjs/operators';\r\nimport { environment } from '../../environments/environment';\r\nimport { Roles } from '../interfaces/interfaces';\r\nimport { SessionService } from './session.service';\r\nimport { TablaIniciativasComponent } from 'src/app/components/administracion/tabla-iniciativas/tabla-iniciativas.component';\r\nimport { NavbarComponent } from 'src/app/components/shared/navbar/navbar.component';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthService{\r\n urlToken: string;\r\n urlAPI2:String;\r\n public isAdmin = new Subject();\r\n public isVIP = new BehaviorSubject(false);\r\n public rol = new BehaviorSubject(0);\r\n public email = new BehaviorSubject('');\r\n public userRoles: BehaviorSubject;\r\n public correoUser: BehaviorSubject;\r\n rolesUsuario: number[] = [0];\r\n roles: Roles[]=[];\r\n sandbox:boolean=false; //modo caja de arena solo para pruebas en local, evita que al recargar la pantalla tras un cambio loguearse nuevamente, \r\n rolSanbox:number=2;\r\n public rolesNav = new BehaviorSubject([]);\r\n //Objeto de la clase tabla iniiativas\r\n tablaIniciativas:TablaIniciativasComponent;\r\n \r\n \r\n user = this.fbAuth.authState.pipe(\r\n map(authState => {\r\n if (!authState) {\r\n if(this.sandbox){\r\n this.email.next(\"jfloresgon@guanajuato.gob.mx\");\r\n return \"jfloresgon@guanajuato.gob.mx\";\r\n }else{\r\n return null\r\n }\r\n } else {\r\n this.email.next(authState.email);\r\n return authState.email;\r\n }\r\n })\r\n );\r\n userName = this.fbAuth.authState.pipe(\r\n map(authState => {\r\n if (!authState) {\r\n if(this.sandbox){\r\n return \"Armando Flores\";\r\n }else{\r\n return null;\r\n }\r\n } else {\r\n return authState.displayName;\r\n }\r\n })\r\n );\r\n\r\n obtenerRoles(): number[] {\r\n return this.rolesUsuario;\r\n }\r\n\r\n public obtenerEmailUser(): Observable {\r\n return this.email.asObservable();\r\n }\r\n\r\n //Emitter para evento de seleccionar rol\r\n nombreRol$=new EventEmitter();\r\n\r\n constructor(\r\n private fbAuth: AngularFireAuth,\r\n private router: Router,\r\n private http: HttpClient,\r\n private zone: NgZone,\r\n public _session: SessionService,\r\n //public navBar:NavbarComponent\r\n ) {\r\n // verificar si esta en modo productivo o calidad\r\n this.urlToken=environment.urlToken;\r\n this.urlAPI2=environment.UrlApiV2;\r\n this.isAdmin.next(false);\r\n this.isVIP.next(false);\r\n this.userRoles = new BehaviorSubject(localStorage.getItem (\"rolesUsuario\"));\r\n this.correoUser = new BehaviorSubject(null);\r\n }\r\n\r\n //Mètodo para escuchar/subscribirse el rol seleccionado\r\n public escuchaRolSeleccionado(): Observable {\r\n if(this.sandbox){\r\n this.rol.next(this.rolSanbox);\r\n }\r\n return this.rol.asObservable();\r\n }\r\n\r\n\r\n public escuchaRolesUser(): Observable {\r\n return this.rolesNav.asObservable();\r\n }\r\n\r\n public onGetAllRolesUsuario(): Observable {\r\n return this.userRoles.asObservable();\r\n }\r\n\r\n public onGetCorreo(): Observable {\r\n return this.correoUser.asObservable();\r\n }\r\n \r\n \r\n //Mètodo para emitir el rol seleccionado\r\n public emiteRolSeleccionado(id:number): void {\r\n this.rol.next(id);\r\n if(id==9 || id==10 || id==11 || id==3 || id==4 || id==5 || id==12 || id==6 || id==7 || id==8)\r\n {\r\n \r\n this.zone.run(() => this.router.navigate(['/iniciativas']));\r\n }\r\n else{\r\n if(id==13)\r\n {\r\n this.zone.run(() => this.router.navigate(['/administracion']));\r\n }else\r\n {\r\n this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n\r\n }\r\n }\r\n\t}\r\n\r\n signInWithProvider(): Observable {\r\n return new Observable(observer => {\r\n this.fbAuth.auth\r\n .signInWithPopup(new auth.GoogleAuthProvider())\r\n .then(async result => {\r\n const user = {\r\n opcion: 0,\r\n email_usuario: result.user.email\r\n };\r\n //Credential firebase\r\n const credential= \r\n {\r\n opcion: environment.GOOGLE_LOGIN,\r\n username: result.user.email,\r\n password: result.credential['accessToken'],\r\n grant_type: environment.GRANT_TYPE,\r\n client_Id: environment.CLIENT_ID\r\n }\r\n //Generamos el token\r\n let promiseB = await this.generateToken(credential).then(function(result) {\r\n return result;\r\n });\r\n this.isAutorized(user).subscribe(\r\n res => {\r\n if (res['errorMessage']) {\r\n console.error('Error al intentar autenticar usuario: ', res['errorMessage']);\r\n this.logOut();\r\n observer.next('Error al comunicarse con el servidor de aplicaciones. ' +\r\n 'Póngase en contacto con el área soporte técnico para solucionar el problema.');\r\n observer.complete();\r\n } else {\r\n if (res['alert'].toString() === '0' && res['objData']['response']=== '1') \r\n {\r\n if (res['status'] === 'OK') \r\n {\r\n if (res['objData'].roles.split(',').find((x: string) => x === '3' || x === '4' || x === '5' || x === '1' || x === '2')) {\r\n this.isAdmin.next(true);\r\n }\r\n this.rolesUsuario = res['objData'].roles.split(',').map(Number);\r\n localStorage.setItem (\"rolesUsuario\", JSON.stringify(this.rolesUsuario));\r\n if(this.sandbox){\r\n this.correoUser.next(\"jfloresgon@guanajuato.gob.mx\");\r\n }else{\r\n this.correoUser.next(result.user.email);\r\n }\r\n this.userRoles.next(JSON.stringify(this.rolesUsuario));\r\n //------------------------------------\r\n let r=res['objData'].json_roles;\r\n let rolesC=JSON.parse(r);\r\n //Mapeamos los roles del usuario logueado\r\n this.roles=rolesC;\r\n this.rolesNav.next(rolesC);\r\n \r\n // Verificar si el usuario es VIP\r\n if (res['objData'].vip_usuario === true) {\r\n this.isVIP.next(true);\r\n } else {\r\n this.isVIP.next(false);\r\n }\r\n // Redireccionar a selecionar un rol\r\n this.zone.run(() => this.router.navigate(['/seleccion-rol']));\r\n\r\n } else {\r\n this.logOut();\r\n observer.next('La cuenta de usuario se encuentra bloqueada.');\r\n observer.complete();\r\n }\r\n } else if (res['objData']['response'] === '0') {\r\n this.logOut();\r\n observer.next('La cuenta de usuario no tiene autorización para entrar al portal.');\r\n observer.complete();\r\n }\r\n }\r\n }\r\n );\r\n })\r\n .catch((reason: any) => {\r\n observer.next('Ha ocurrido un problema al conectarse con Google. Intenta de nuevo más tarde.');\r\n console.log(reason);\r\n observer.complete();\r\n });\r\n });\r\n }\r\n\r\n \r\n \r\n logOut() {\r\n if(this.rol.value!=0){\r\n this.nombreRol$.unsubscribe();\r\n window.location.reload();\r\n }\r\n this.fbAuth.auth\r\n .signOut()\r\n .then(() => {\r\n if(!this.sandbox){\r\n localStorage.clear();\r\n this.zone.run(() => this.router.navigate(['/login']));\r\n }\r\n })\r\n .catch((err: any) => {\r\n console.log('err');\r\n });\r\n this._session.removeSessionOnStorage();\r\n \r\n }\r\n\r\n /*Método para verificar si el usuario esta autorizado*/\r\n isAutorized=(usuario: any)=> {\r\n return this.http.post(`${this.urlAPI2}users/getUserByEmail`,usuario);\r\n }\r\n\r\n \r\n isAuthenticated(): Observable {\r\n return this.fbAuth.authState.pipe(\r\n map(authState => {\r\n if (!authState) {\r\n if(this.sandbox){\r\n return true;\r\n }else{\r\n return false;\r\n }\r\n } else {\r\n return true;\r\n }\r\n })\r\n );\r\n }\r\n\r\n isInRole(rol: number): boolean {\r\n if (this.rolesUsuario.find((x: number) => x === rol) !== undefined) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n // Metodo para poder navegar en el sitio sin login, solo en modo de pruebas\r\n noSignIn() {\r\n this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n\r\n \r\n ngOnDestroy () { \r\n this._session.removeSessionOnStorage();\r\n this.nombreRol$.unsubscribe();\r\n } \r\n\r\n\r\n generateToken(credential: any) {\r\n const body = new URLSearchParams();\r\n body.set('username',credential.username);\r\n body.set('password', credential.password);\r\n body.set('opcion',credential.opcion),\r\n body.set('grant_type',credential.grant_type);\r\n body.set('client_id', credential.client_Id);\r\n\r\n return this.http\r\n .post(\r\n `${this.urlToken}token`,\r\n body.toString(),\r\n { headers: { 'Content-Type': 'application/x-www-form-urlencoded' } }\r\n )\r\n .toPromise()\r\n .then(token => {\r\n this._session.token = token['access_token']\r\n this._session.refreshToken = token['refresh_token']\r\n this._session.setItem('authorization', token)\r\n })\r\n }\r\n\r\n \r\n \r\n refreshToken() {\r\n const body = new URLSearchParams();\r\n body.set('refresh_token', this._session.refreshToken);\r\n body.set('grant_type', 'refresh_token');\r\n body.set('client_id', environment.CLIENT_ID);\r\n\r\n return this.http.post(\r\n `${this.urlToken}token`,\r\n body.toString(),\r\n { headers: { 'Content-Type': 'application/x-www-form-urlencoded' } }\r\n ).pipe(\r\n tap(token => {\r\n this._session.token = token['access_token']\r\n this._session.refreshToken = token['refresh_token']\r\n this._session.setItem('authorization', token)\r\n }),\r\n retry(1),\r\n catchError((e: any) => {\r\n this._session.isRefreshing = false;\r\n this.logOut()\r\n return e\r\n })\r\n )\r\n }\r\n\r\n \r\n}\r\n","import { Component, OnInit,Input,EventEmitter,NgZone,ViewChild } from '@angular/core';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { FormGroup, FormControl, Validators, FormBuilder } from '@angular/forms';\r\nimport { IniciativaDetalle, TablaMisIniciativas, Impactos,GrupoAplicativo,Aplicativos } from '../../interfaces/interfaces';\r\nimport { Paginado } from '../../models/paginado';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { DataService } from '../../services/data.service';\r\nimport { Router } from '@angular/router';\r\nimport{ ConfirmListadoIniciativasComponent} from 'src/app/components/shared/confirm-listado-iniciativas/confirm-listado-iniciativas.component';\r\nimport{ ModalConsultaIniciativaComponent} from 'src/app/components/modal-consulta-iniciativa/modal-consulta-iniciativa.component';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport { Subscription } from 'rxjs';\r\nimport { element } from 'protractor';\r\nimport { DialogCambioTipoIniciativaComponent } from 'src/app/components/dialog-cambio-tipo-iniciativa/dialog-cambio-tipo-iniciativa.component';\r\nimport { DialogAsignaEnlaceComponent } from 'src/app/components/dialog-asigna-enlace/dialog-asigna-enlace.component';\r\n\r\n@Component({\r\n selector: 'app-mis-iniciativas',\r\n templateUrl: './mis-iniciativas.component.html',\r\n styleUrls: ['./mis-iniciativas.component.scss']\r\n})\r\nexport class MisIniciativasComponent implements OnInit {\r\n // Animacion tabla\r\n animacionRecargaTabla: string;\r\n // Alerta periodo de envio\r\n esPeriodoEnvio: boolean;\r\n consultar: boolean;\r\n emailUser: string;\r\n userName: string;\r\n VIP: boolean;\r\n listaTipoIniciativa\r\n tablaIniciativas: TablaMisIniciativas[] = [];\r\n arrayImpactosConsulta: Impactos[]=[];\r\n paginaActual: Paginado=new Paginado();\r\n iniciativaSeleccionada: IniciativaDetalle;\r\n botonPresionado:number;\r\n mostrarEdicion:boolean=false;\r\n mostrarConsulta:boolean=false;\r\n mostrarTabla: boolean=true;\r\n nuevoSisFormDatos: FormGroup;\r\n fechaActual: number;\r\n subiendoProcesoActual = false;\r\n procesoActualError = false;\r\n tipoIniciativa:number;\r\n fechaInicio:string;\r\n fechaFin:string;\r\n termino:string;\r\n loadingGeneral: boolean = true;\r\n tablaHistorial:any[]=[];\r\n mostrardescargarArchivoPA:boolean=false;\r\n mostrardescargarArchivoPP:boolean=false;\r\n mostrardescargarArchivoAN:boolean=false;\r\n nombreArchivoPP:string;\r\n nombreArchivoPA:string;\r\n nombreArchivoAN:string;\r\n idProceso:number;\r\n gruposAplicativos: GrupoAplicativo[];\r\n tiposAplicativos: Aplicativos[];\r\n idRolSeleccionado:number;\r\n nombreRol:string;\r\n varMostraCalendario:boolean=false;\r\n varMostraCalendario2021:boolean=false;\r\n showHistorialAlert: boolean = false;\r\n\r\n\r\n listaPeriodo: any[]=[];\r\n listaPeriodo2021: any[]=[];\r\n isLoading:boolean=false;\r\n totalRegistros:number;\r\n folio;\r\n allRoles:any;\r\n correo:any;\r\n r1:any;\r\n r2:any;\r\n aceptaCambioReq:boolean=false;\r\n aceptaCambioEnlace:boolean=false;\r\n filter:string;\r\n cambiosForm: FormGroup;\r\n\r\n public globalSub: Subscription;\r\n iniciativa: any;\r\n\r\n constructor(\r\n private dataService: DataService,\r\n private authService: AuthService,\r\n private notifier: NotifierService,\r\n private zone: NgZone,\r\n private router: Router,\r\n public dialog:MatDialog,\r\n private _formBuilder: FormBuilder\r\n\r\n ) {\r\n\r\n // Obtener los aplicativos\r\n this.dataService.obtenerGruposSistemas().subscribe(data => {\r\n this.gruposAplicativos = data['data'];\r\n });\r\n\r\n this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n //return this.emailUser;\r\n });\r\n this.authService.userName.subscribe((userName: string) => {\r\n {this.userName = userName}\r\n //return this.emailUser;\r\n });\r\n \r\n this.authService.isVIP.asObservable().subscribe((res) => {\r\n this.VIP = res;\r\n });\r\n\r\n this.animacionRecargaTabla = 'animated fadeInUp';\r\n this.globalSub=this.authService.onGetAllRolesUsuario().subscribe(async (resp) => {\r\n this.allRoles = await JSON.parse(resp)\r\n });\r\n this.globalSub=this.authService.onGetCorreo().subscribe(async (resp) => {\r\n this.correo = await resp;\r\n });\r\n }\r\n\r\n async ngOnInit() {\r\n /* funcionalidad revisa roles */\r\n //console.log(this.allRoles[0]);\r\n //this.allRoles[0]=3\r\n this.r1 = this.filterRl(this.allRoles, 1);\r\n this.r2 = this.filterRl(this.allRoles, 2);\r\n (this.r1.length==1 && this.r2.length==1 )?this.aceptaCambioReq=true:this.aceptaCambioReq=false;\r\n (this.r1.length==1 || this.r2.length==1 )?this.aceptaCambioEnlace=true:this.aceptaCambioEnlace=false;\r\n\r\n if(this.listaPeriodo.length==0)\r\n {\r\n this.cargarPeriodosEnvio();\r\n }\r\n //Nos subscribimos al método para el rol seleccionado\r\n this.isLoading=true;\r\n this.authService.escuchaRolSeleccionado().subscribe((res) => {\r\n this.idRolSeleccionado = res;\r\n if(this.correo && this.idRolSeleccionado!=13)\r\n {\r\n this.isLoading=true;\r\n this.paginaActual= new Paginado();\r\n this.paginaActual.numeroPagina = 1;\r\n this.paginaActual.email=this.correo;\r\n this.paginaActual.fechaInicio=\"\";\r\n this.paginaActual.fechaFin=\"\";\r\n this.paginaActual.termino=\"\";\r\n this.paginaActual.rolUserlogin=this.idRolSeleccionado;\r\n this.quitarFiltro();\r\n }\r\n });\r\n \r\n this.paginaActual = new Paginado();\r\n this.paginaActual.numeroPagina = 1;\r\n this.authService.user.subscribe((user: string) => {\r\n {this.correo = user}\r\n this.dataService.esPeriodoEnvios().subscribe(\r\n data=>{\r\n this.esPeriodoEnvio=data['objData'];\r\n }\r\n );\r\n this.paginaActual.email=this.correo;\r\n this.paginaActual.fechaInicio=\"\";\r\n this.paginaActual.fechaFin=\"\";\r\n this.paginaActual.termino=\"\";\r\n this.paginaActual.botonBuscar=false;\r\n this.paginaActual.rolUserlogin=this.idRolSeleccionado;\r\n \r\n if(this.correo)\r\n {\r\n \r\n //Recuperamos el paginado\r\n let paginadoLocal= JSON.parse(localStorage.getItem('paginado'));\r\n if(paginadoLocal)\r\n {\r\n this.paginaActual=paginadoLocal;\r\n this.fechaInicio=this.paginaActual.fechaInicio;\r\n this.fechaFin=this.paginaActual.fechaFin;\r\n this.folio=this.paginaActual.folio_iniciativa;\r\n this.filter=this.paginaActual.termino;\r\n this.paginaActual.botonBuscar=true;\r\n }\r\n this.cargarIniciativas();\r\n }\r\n // Subir a tope de pagina\r\n this.scrollInicio();\r\n });\r\n }\r\n\r\n changeStatus(accion, obj) {\r\n this.botonPresionado=11;\r\n obj.action = accion;\r\n obj.rolSeleccionado=this.idRolSeleccionado;\r\n obj.userLogin=this.correo;\r\n obj.mensaje=' Se perderá la información que no sea compatible entre ambos tipos de iniciativa.'\r\n const dialogRefEliminar = this.dialog.open(DialogCambioTipoIniciativaComponent, {\r\n width: '440px',\r\n height: '380px',\r\n data: obj\r\n }).afterClosed().subscribe(result => {\r\n this.botonPresionado=null;\r\n this.onSaveStatus(result,true);\r\n });\r\n }\r\n\r\n\r\n changeEnlace(accion, obj) {\r\n this.botonPresionado=11;\r\n obj.action = accion;\r\n obj.rolSeleccionado=this.idRolSeleccionado;\r\n obj.userLogin=this.correo;\r\n obj.mensaje=''\r\n const dialogRefEliminar = this.dialog.open(DialogAsignaEnlaceComponent, {\r\n width: '440px',\r\n height: '300px',\r\n data: obj\r\n }).afterClosed().subscribe(result => {\r\n this.botonPresionado=null;\r\n this.onSaveEnlace(result,obj);\r\n });\r\n }\r\n\r\n \r\n onSaveEnlace(body,obj){\r\n var b;\r\n if(this.idRolSeleccionado==1)\r\n {\r\n b={\r\n \"id_iniciativa\":body.id_iniciativa,\r\n \"userlogin\":body.userlogin,\r\n \"rolUserLogin\":this.idRolSeleccionado,\r\n \"id_tipoIniciativa\":2,\r\n \"id_tipoIniciativaANT\":obj.id_tipoIniciativa,\r\n }\r\n }else if(this.idRolSeleccionado==2){\r\n b={\r\n \"id_iniciativa\":body.id_iniciativa,\r\n \"userlogin\":body.userlogin,\r\n \"rolUserLogin\":this.idRolSeleccionado,\r\n \"id_tipoIniciativa\":1,\r\n \"id_tipoIniciativaANT\":obj.id_tipoIniciativa,\r\n }\r\n }\r\n body.enviar_correo=1;\r\n this.dataService.updateEnlaceIniciativa(body).subscribe(res=>{\r\n if(res['status']==\"OK\"){\r\n this.onSaveStatus(b,false);\r\n this.notifier.notify(\r\n 'success',\r\n ''+res['notificaciones']\r\n );\r\n }else{\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n this.cargarIniciativas()\r\n },err=>{\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n })\r\n }\r\n\r\n onSaveStatus(body,noti){\r\n this.dataService.cambioRequerimientos(body).subscribe(res=>{\r\n if(noti){\r\n if(res['status']==\"OK\"){\r\n this.notifier.notify(\r\n 'success',\r\n ''+res['notificaciones']\r\n );\r\n }else{\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n } \r\n this.cargarIniciativas()\r\n },err=>{\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n })\r\n }\r\n \r\n //Método para redirigir a la pantalla según el boton presionado \r\n onSubmitReactive(btnId:number, id_iniciativa:number, folio?:number,estatus?:number)\r\n {\r\n this.botonPresionado=btnId;\r\n //Mandamos el boton precionado en la tabla\r\n window.localStorage.removeItem (\"opcionTabla\");\r\n window.localStorage.setItem (\"opcionTabla\", btnId.toString());\r\n\r\n //Opcion de editar y consultar\r\n if(this.botonPresionado==1 || this.botonPresionado==2)\r\n {\r\n localStorage.removeItem (\"editarIniciativaId\");\r\n localStorage.setItem ('editarIniciativaId', id_iniciativa.toString());\r\n //Obtengo el tipo de solicitud\r\n this.detallesIniciativa(id_iniciativa);\r\n }\r\n //Opcion de historial\r\n if(this.botonPresionado==3)\r\n {\r\n this.historialIniciativa(id_iniciativa, folio);\r\n }\r\n //Opcion de enviar iniciativa\r\n if(this.botonPresionado==4)\r\n {\r\n this.enviarIniciativa(id_iniciativa);\r\n }\r\n //Opcion de autorizacion fuera de periodo iniciativa\r\n if(this.botonPresionado==5)\r\n {\r\n this.autorizacionFueraPeriodo(id_iniciativa,this.paginaActual.email);\r\n }\r\n\r\n //Opcion de duplicar iniciativa\r\n if(this.botonPresionado==6)\r\n {\r\n this.duplicarIniciativa(id_iniciativa, folio, this.paginaActual.email);\r\n }\r\n //Opcion de cancelación iniciativa\r\n if(this.botonPresionado==7)\r\n {\r\n this.cancelacionIniciativa(id_iniciativa, folio ,this.paginaActual.email);\r\n }\r\n //Opcion de eliminar iniciativa\r\n if(this.botonPresionado==8)\r\n {\r\n this.eliminarIniciativa(id_iniciativa, folio,this.paginaActual.email);\r\n }\r\n //Opcion de contactos iniciativa\r\n if(this.botonPresionado==9)\r\n {\r\n this.contactosIniciativa(id_iniciativa, folio);\r\n }\r\n\r\n //Opcion de comentarios iniciativa\r\n if(this.botonPresionado==10)\r\n {\r\n this.comentariosIniciativa(id_iniciativa, folio,estatus);\r\n }\r\n \r\n }\r\n\r\n mostraCalendario()\r\n {\r\n this.varMostraCalendario=true;\r\n this.varMostraCalendario2021=false;\r\n\r\n }\r\n\r\n mostrarCalendario2021()\r\n {\r\n this.varMostraCalendario2021=true;\r\n this.varMostraCalendario=false;\r\n \r\n }\r\n\r\n filterRl = (arr,idrol) => (arr).filter(element => (parseInt(element)) == idrol)\r\n\r\n cargarPeriodosEnvio()\r\n {\r\n this.dataService.getListPeriodosEnvio().subscribe(\r\n data => {\r\n data['data'].forEach(element => {\r\n var arrayDeCadenasInicio =element['fechaInicio_periodoEnvio'].split('-');\r\n let valores={\r\n 'year':parseInt(arrayDeCadenasInicio[0])\r\n }\r\n if(valores.year==2020)\r\n {\r\n this.listaPeriodo.push(element);\r\n }\r\n else{\r\n this.listaPeriodo2021.push(element);\r\n }\r\n });\r\n \r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n \r\n //Metodo para ordenar por director de area\r\n sortingDirArea()\r\n {\r\n this.paginaActual.orderByGeneral=false;\r\n this.paginaActual.orderBySubse=true;\r\n this.paginaActual.orderByArea=true;\r\n this.cargarIniciativas();\r\n }\r\n\r\n //Metodo para ordenar por director de area\r\n sortingDirGral()\r\n {\r\n this.paginaActual.orderBySubse=false;\r\n this.paginaActual.orderByArea=false;\r\n this.paginaActual.orderByGeneral=true;\r\n this.cargarIniciativas();\r\n }\r\n\r\n //Metodo para ordenar por director de area\r\n sortingSubsecretario()\r\n {\r\n this.paginaActual.orderBySubse=true;\r\n this.paginaActual.orderByArea=false;\r\n this.paginaActual.orderByGeneral=false;\r\n this.cargarIniciativas();\r\n }\r\n\r\n cancelar()\r\n {\r\n this.mostrarEdicion=false;\r\n this.mostrarTabla=true;\r\n this.nuevoSisFormDatos.reset();\r\n }\r\n\r\n \r\n //Método para limpiar los filtros\r\n quitarFiltro() \r\n {\r\n let termino;\r\n localStorage.removeItem('paginado');\r\n this.filter='';\r\n if(this.paginaActual.termino)\r\n {\r\n termino= this.paginaActual.termino;\r\n }\r\n this.paginaActual= new Paginado;\r\n this.fechaFin=\"\";\r\n this.fechaInicio=\"\";\r\n this.folio=\"\";\r\n this.paginaActual.numeroPagina = 1;\r\n this.paginaActual.email=this.correo;\r\n this.paginaActual.fechaInicio=\"\";\r\n this.paginaActual.fechaFin=\"\";\r\n //this.paginaActual.termino=termino;\r\n this.paginaActual.botonBuscar=false;\r\n this.paginaActual.rolUserlogin=this.idRolSeleccionado;\r\n this.cargarIniciativas();\r\n }\r\n\r\n //Metodo para actualizar el grid\r\n actualizarGrid()\r\n {\r\n this.cargarIniciativas();\r\n }\r\n\r\n onSubmit() \r\n {\r\n //Enviar la data al service\r\n this.dataService.nuevoSistema(this.nuevoSisFormDatos.value).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Nueva iniciativa registrada correctamente.'\r\n );\r\n this.mostrarEdicion=false,\r\n this.mostrarTabla=true;\r\n this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n else{\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar registrar la iniciativa. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n cargarIniciativas() {\r\n this.loadingGeneral = true;\r\n this.dataService.obtenerIniciativasUsuario(this.paginaActual).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.notifier.notify('error', 'No se han pordido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.')\r\n }\r\n else{\r\n this.tablaIniciativas = data['data'];\r\n this.totalRegistros=data['total_registros'];\r\n if(data['data'].length < 1)\r\n {\r\n this.isLoading=false;\r\n this.loadingGeneral = false;\r\n }else{\r\n this.isLoading=false;\r\n this.loadingGeneral = false;\r\n }\r\n\r\n }\r\n }\r\n );\r\n }\r\n\r\n //Método que recupera los datos de las iniciativas\r\n cargarAnteriores() {\r\n this.loadingGeneral=true;\r\n this.paginaActual.numeroPagina--;\r\n //this.paginaActual.numeroPagina-1;\r\n this.dataService.obtenerIniciativasUsuario(this.paginaActual).subscribe(\r\n data => {\r\n if (data['data'].length > 0) \r\n {\r\n this.tablaIniciativas = data['data'];\r\n }\r\n this.loadingGeneral=false;\r\n\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar tus iniciativas anteriores. Verifica tu conexión de red.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n \r\n\r\n cargarSiguientes() \r\n {\r\n this.loadingGeneral = true;\r\n this.paginaActual.numeroPagina++;\r\n this.dataService.obtenerIniciativasUsuario(this.paginaActual).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.notifier.notify('error', 'No se han podido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.')\r\n }\r\n else{\r\n this.tablaIniciativas = data['data'];\r\n if(data['data'].length < 1)\r\n {\r\n this.loadingGeneral = false;\r\n this.paginaActual.numeroPagina--;\r\n }else{\r\n this.loadingGeneral = false;\r\n //this.paginaActual.numeroPagina--;\r\n }\r\n\r\n }\r\n }\r\n );\r\n }\r\n\r\n recargarTablaIniciativas(evento: number) {\r\n this.dataService.obtenerIniciativasUsuario(this.paginaActual).subscribe(\r\n data => {\r\n if (data['data'] && data['data'].length > 0) {\r\n this.tablaIniciativas = data['data'];\r\n } else {\r\n this.paginaActual.numeroPagina--;\r\n }\r\n this.animarTablaRecargar();\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar cargar tus iniciativas. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n private animarTablaRecargar() {\r\n this.animacionRecargaTabla = '';\r\n this.animacionRecargaTabla = 'animated pulse';\r\n }\r\n\r\n scrollInicio() {\r\n const scrollToTop = window.setInterval(() => {\r\n const pos = window.pageYOffset;\r\n if (pos > 0) {\r\n window.scrollTo(0, pos - 20); // how far to scroll on each step\r\n } else {\r\n window.clearInterval(scrollToTop);\r\n }\r\n }, 16);\r\n }\r\n\r\n\r\n //Detalles de la iniciativa\r\n detallesIniciativa(id:number)\r\n {\r\n this.dataService.detalleIniciativa(id).subscribe(data => {\r\n if (data['objData']) \r\n {\r\n this.tipoIniciativa=data['objData']['id_tipoIniciativa'];\r\n //Redireccionamos según el tipo de iniciativa\r\n if( this.tipoIniciativa==1)\r\n {\r\n this.zone.run(() => this.router.navigate(['./nuevo-sistema']));\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.zone.run(() => this.router.navigate(['./cambios-funcionalidades']));\r\n this.botonPresionado=0;\r\n\r\n }\r\n\r\n }\r\n else{\r\n this.tipoIniciativa=0;\r\n }\r\n });\r\n }\r\n\r\n detalleIniciativaModal(id:number, id_tipoIniciativa:number)\r\n {\r\n this.consultar=true;\r\n localStorage.removeItem (\"editarIniciativaId\");\r\n localStorage.setItem (\"editarIniciativaId\", id.toString());\r\n if(!this.botonPresionado)\r\n {\r\n this.zone.run(() => this.router.navigate(['./consulta-iniciativa']));\r\n }\r\n \r\n }\r\n\r\n\r\n aplicativosAreas(idGrupo: number) \r\n {\r\n this.dataService.obtenerAplicativos(idGrupo).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.tiposAplicativos = data['data'];\r\n /*Obtenemos el area dueña de la aplicacion*/\r\n for(let v of this.tiposAplicativos)\r\n {\r\n if(v.id_aplicacion==this.iniciativaSeleccionada.id_aplicacion){\r\n this.iniciativaSeleccionada.nombreAplicacion=v.nombre_aplicacion;\r\n }\r\n }\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n //Método para enviar la iniciativa\r\n enviarIniciativa(id:number)\r\n {\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasComponent,{data: {opcion:4},disableClose:true,width: '450px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.dataService.enviarIniciativa(id,this.correo,this.idRolSeleccionado).subscribe( \r\n data => {\r\n if (data['alert']==0)\r\n {\r\n this.notifier.notify('success', 'Iniciativa enviada correctamente Folio:'+ data['objData']);\r\n //this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n this.cargarAnteriores();\r\n\r\n //this.notifier.notify('success', 'Nueva iniciativa para cambios en funcionalidades editada correctamente.');\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n }\r\n );\r\n this.botonPresionado=0;\r\n }\r\n });\r\n }\r\n\r\n //Método para autorización fuera de periodo\r\n autorizacionFueraPeriodo(id:number,email:string)\r\n {\r\n ////endPont para validar información de la iniciativa, recuperamos los valores de la iniciativa\r\n this.dataService.detalleIniciativa(id).subscribe(data => {\r\n let infoIniciativa=data['objData'];\r\n this.validacionIniciativas(data['objData'].id_tipoIniciativa,infoIniciativa);\r\n if(this.cambiosForm.valid)\r\n {\r\n \r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasComponent,{data: {id_iniciativa:id,userLogin:email,rolUserLogin:this.idRolSeleccionado,opcion:5},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n \r\n this.notifier.notify(\r\n 'success',\r\n 'Solicitud enviada correctamente.'\r\n );\r\n /* let datos={\r\n 'id_iniciativa':id,\r\n 'userlogin':email,\r\n 'justificacion':result,\r\n 'rolUserlogin':this.idRolSeleccionado\r\n }\r\n this.dataService.solicitudEnvioFueraPeriodo(datos).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Solicitud enviada correctamente.'\r\n );\r\n this.cargarAnteriores();\r\n //this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n else{\r\n this.notifier.notify(\r\n 'error',data['errorMessage']\r\n );\r\n\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar enviar solicitud. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );*/\r\n this.cargarAnteriores();\r\n this.botonPresionado=0;\r\n }\r\n });\r\n\r\n }//Form invalido\r\n else{\r\n this.notifier.notify(\r\n 'error',\r\n 'Existen algunos datos faltantes de la iniciativa. Favor de completar la información para poder enviar su solicitud.'\r\n );\r\n this.botonPresionado=0;\r\n }\r\n });\r\n\r\n } \r\n\r\n\r\n \r\n //Método de validacion \r\n private validacionIniciativas(tipoIniciativa:number, form:any)\r\n {\r\n switch (tipoIniciativa) \r\n {\r\n //Nuevo sistema\r\n case 1:\r\n this.cambiosForm = this._formBuilder.group({\r\n id_iniciativa: [form.id_iniciativa],\r\n id_proceso: [form.id_proceso],\r\n folio_iniciativa:[form.folio_iniciativa],\r\n fechaEnvio_iniciativa:[form.fechaEnvio_iniciativa],\r\n id_tipoIniciativa: [form.id_tipoIniciativa],\r\n id_area : [form.id_area],\r\n id_aplicativo: [form.id_aplicativo],\r\n id_estatusIniciativa: [form.id_estatusIniciativa],\r\n nombre_iniciativa: [form.nombre_iniciativa, Validators.required],\r\n nombre_solicitante: [form.nombre_solicitante, Validators.required],\r\n email_solicitante: [form.email_solicitante, Validators.required],\r\n telefono_solicitante: [form.telefono_solicitante, Validators.required],\r\n extencion_solicitante: [form.extencion_solicitante],\r\n fechaTermino_iniciativa: [form.fechaTermino_iniciativa, Validators.required],\r\n justificacionFecha_iniciativa: [form.justificacionFecha_iniciativa, Validators.required],\r\n numeroTransacciones_iniciativa: [form.numeroTransacciones_Iniciativa, Validators.required], \r\n solucionPropuesta_iniciativa: [form.solucionPropuesta_iniciativa, Validators.required],\r\n beneficiariosDirectos_iniciativa: [form.beneficiariosDirectos_iniciativa, Validators.required],\r\n beneficiariosImplementacion_iniciativa:[form.beneficiariosImplementacion_iniciativa, Validators.required],\r\n nombreProceso_iniciativa: [form.nombreProceso_iniciativa, Validators.required],\r\n doc_procesoActual: [form.doc_procesoActual, Validators.required],\r\n doc_procesoPropuesto: [form.doc_procesoPropuesto, Validators.required],\r\n docAnexos_iniciativas: [form.docAnexos_iniciativas],\r\n problematica_iniciativa: [form.problematica_iniciativa, Validators.required],\r\n id_dirgralSapSolicitante:[form.id_dirgralSapSolicitante, Validators.required],\r\n id_areaSapSolicitante:[form.id_areaSapSolicitante, Validators.required],\r\n jsonIniciativaImpacto:[form.jsonIniciativaImpacto, Validators.required],\r\n \r\n });\r\n break;\r\n //Cambio con cambio al proceso\r\n case 2:\r\n this.cambiosForm = this._formBuilder.group({\r\n id_iniciativa: [form.id_iniciativa],\r\n id_proceso: [form.id_proceso],\r\n //folio_iniciativa:[form.id_proceso],\r\n fechaEnvio_iniciativa:[form.fechaEnvio_iniciativa],\r\n id_tipoIniciativa: [form.id_tipoIniciativa],\r\n id_area : [form.id_area,Validators.required],\r\n id_aplicacion:[form.id_aplicacion,Validators.required],\r\n id_estatusIniciativa: [form.id_estatusIniciativa],\r\n implicaCambios: [form.implicaCambios],\r\n userlogin: [this.correo],\r\n rolUserlogin:[this.idRolSeleccionado],\r\n id_dirgralSapSolicitante: [form.id_dirgralSapSolicitante, Validators.required],\r\n id_areaSapSolicitante: [form.id_areaSapSolicitante, Validators.required],\r\n nombre_iniciativa: [form.nombre_iniciativa, Validators.required],\r\n nombre_solicitante: [form.nombre_solicitante, Validators.required],\r\n email_solicitante: [form.email_solicitante, Validators.required],\r\n telefono_solicitante: [form.telefono_solicitante, Validators.required],\r\n extencion_solicitante: [form.extencion_solicitante],\r\n fechaTermino_iniciativa: [form.fechaTermino_iniciativa, Validators.required],\r\n justificacionFecha_iniciativa: [form.justificacionFecha_iniciativa, Validators.required],\r\n //numeroTransacciones_iniciativa: [form.numeroTransacciones_iniciativa, Validators.required], \r\n solucionPropuesta_iniciativa: [form.solucionPropuesta_iniciativa, Validators.required],\r\n nombreProceso_iniciativa: [form.nombreProceso_iniciativa, Validators.required],\r\n doc_procesoActual: [form.doc_procesoActual, Validators.required],\r\n doc_procesoPropuesto: [form.doc_procesoPropuesto, Validators.required],\r\n docAnexos_iniciativas: [form.docAnexos_iniciativas],\r\n problematica_iniciativa: [form.problematica_iniciativa, Validators.required],\r\n //dirGral_solicitante:[form.dirGral_solicitante, Validators.required],\r\n //direccionArea_solicitante: [form.direccionArea_solicitante, Validators.required]\r\n })\r\n \r\n break;\r\n //Cambio sin cambio al proceso\r\n case 3:\r\n this.cambiosForm = this._formBuilder.group({\r\n id_iniciativa: [form.id_iniciativa],\r\n id_area : [form.id_area,Validators.required],\r\n id_aplicacion:[form.id_aplicacion,Validators.required],\r\n id_tipoIniciativa: [form.id_tipoIniciativa],\r\n nombre_iniciativa: [form.nombre_iniciativa, Validators.required],\r\n nombre_solicitante: [form.nombre_solicitante, Validators.required],\r\n email_solicitante: [form.email_solicitante, Validators.required],\r\n telefono_solicitante: [form.telefono_solicitante, Validators.required],\r\n extencion_solicitante: [form.extencion_solicitante],\r\n fechaTermino_iniciativa: [form.fechaTermino_iniciativa, Validators.required],\r\n justificacionFecha_iniciativa: [form.justificacionFecha_iniciativa, Validators.required],\r\n problematica_iniciativa: [form.problematica_iniciativa, Validators.required],\r\n id_dirgralSapSolicitante: [form.id_dirgralSapSolicitante, Validators.required],\r\n id_areaSapSolicitante: [form.id_areaSapSolicitante, Validators.required],\r\n docAnexos_iniciativas: [form.docAnexos_iniciativas],\r\n implicaCambios: [form.implicaCambios],\r\n doc_procesoActual: [form.doc_procesoActual],\r\n doc_procesoPropuesto: [form.doc_procesoPropuesto],\r\n userlogin: [this.correo],\r\n rolUserlogin:[this.idRolSeleccionado]\r\n })\r\n break;\r\n }\r\n\r\n }\r\n\r\n \r\n //Método para enviar la iniciativa\r\n duplicarIniciativa(id:number, folio:number, email:string)\r\n {\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasComponent,{data:{id_iniciativa:id,folio:folio,opcion:6},disableClose:true,width: '400px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n }\r\n else{\r\n this.dataService.duplicarIniciativa(id,email,this.idRolSeleccionado).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se duplico correctamente.'\r\n );\r\n this.cargarIniciativas();\r\n this.botonPresionado=0;\r\n //this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n else{\r\n this.notifier.notify(\r\n 'error',\r\n data['notificaciones']\r\n );\r\n \r\n }\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar duplicar la iniciativa. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n this.botonPresionado=0;\r\n }\r\n });\r\n\r\n }\r\n\r\n //Método para eliminar la iniciativa\r\n eliminarIniciativa(id:number, folio:number, email:string)\r\n {\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasComponent,{data:{id_iniciativa:id,folio:folio,opcion:8},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n\r\n }\r\n else{\r\n this.dataService.deleteIniciativa(id,email,this.idRolSeleccionado).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.cargarIniciativas();\r\n //this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar la iniciativa. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n this.botonPresionado=0;\r\n \r\n }\r\n }); \r\n }\r\n\r\n //Método para cancelacion de iniciativa\r\n cancelacionIniciativa(id:number,folio:number ,email:string)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasComponent,{data:{opcion:7, folio:folio},disableClose:true,width: '600px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n let datos={\r\n 'id_iniciativa':id,\r\n 'userlogin':email,\r\n 'justificacion':result,\r\n 'rolUserlogin':this.idRolSeleccionado\r\n }\r\n \r\n this.dataService.solicitudCancelacion(datos).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Solicitud enviada correctamente.'\r\n );\r\n this.cargarIniciativas();\r\n }\r\n else{\r\n \r\n this.notifier.notify(\r\n 'error',\r\n data['errorMessage']\r\n );\r\n }\r\n },\r\n error => {\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar enviar solicitud. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n this.botonPresionado=0;\r\n \r\n }\r\n });\r\n\r\n } \r\n \r\n //Método para ver el historial de la iniciativa\r\n historialIniciativa(id:number, folio:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasComponent,{data:{id_iniciativa:id,opcion:3,folio:folio},disableClose:true,width: '1200px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n\r\n }\r\n else{\r\n this.botonPresionado=0;\r\n }\r\n });\r\n }\r\n\r\n //Método para los contactos de la iniciativa\r\n contactosIniciativa(id:number, folio:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasComponent,{data:{id_iniciativa:id,folio:folio,opcion:9},disableClose:true,height: '450px', width: '800px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.botonPresionado=0;\r\n }\r\n });\r\n\r\n }\r\n\r\n\r\n //Método para los contactos de la iniciativa\r\n comentariosIniciativa(id:number, folio:number, estatus?:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasComponent,{data:{id_iniciativa:id,folio:folio,estatus:estatus,userName:this.userName,email:this.correo,idRol:this.idRolSeleccionado,opcion:10},disableClose:true,width:'1000%'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n \r\n this.loadingGeneral=true;\r\n //Marcamos como vistos los comentarios\r\n let valores={\r\n 'id_iniciativa':id,\r\n 'email_usuarioComentario':this.correo,\r\n 'id_rol':this.idRolSeleccionado\r\n }\r\n this.dataService.marcarVistoComentarios(valores).subscribe(\r\n data => {\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n this.loadingGeneral=false;\r\n this.cargarIniciativas();\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n let valores={\r\n 'id_iniciativa':id,\r\n 'email_usuarioComentario':this.correo,\r\n 'id_rol':this.idRolSeleccionado\r\n }\r\n this.dataService.marcarVistoComentarios(valores).subscribe(\r\n data => {\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error. Contacta al administrador.'\r\n );\r\n }\r\n );\r\n this.cargarIniciativas();\r\n this.botonPresionado=0;\r\n \r\n }\r\n });\r\n }\r\n\r\n get estadoIniciativa(): string {\r\n if (this.iniciativa.id_estatusIniciativa === 16 && this.iniciativa.id_estatusIniciativa_anterior === 11) {\r\n return 'Corregir';\r\n }\r\n return this.iniciativa.nombre_estatusIniciativa;\r\n }\r\n \r\n\r\n //Método para aplicar el filtro \r\n applyFilter(event: Event) \r\n {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.paginaActual.numeroPagina=1;\r\n this.buscarIniciativas(this.paginaActual.numeroPagina,this.fechaInicio,this.fechaFin,filterValue.trim().toLocaleLowerCase());\r\n //this.dataSource.filter = filterValue.trim().toLowerCase();\r\n }\r\n\r\n buscarIniciativas(pagina:number, fechaInicio:string, fechaFin:string ,valor?:string, folio?:string)\r\n {\r\n this.loadingGeneral = true;\r\n this.paginaActual.numeroPagina=pagina;\r\n this.paginaActual.termino=valor;\r\n this.paginaActual.fechaFin=fechaFin;\r\n this.paginaActual.fechaInicio=fechaInicio;\r\n this.paginaActual.botonBuscar=true;\r\n if(folio)\r\n {\r\n this.paginaActual.folio_iniciativa=folio;\r\n }\r\n //Paginado\r\n window.localStorage.setItem (\"paginado\", JSON.stringify(this.paginaActual));\r\n //this.loadingGeneral = true;\r\n this.dataService.obtenerIniciativasUsuario(this.paginaActual).subscribe(res => {\r\n if (res['errorMessage']) \r\n {\r\n this.loadingGeneral = false;\r\n this.notifier.notify('error', 'No se han podido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.');\r\n\r\n } else \r\n {\r\n this.loadingGeneral = false;\r\n this.tablaIniciativas= res['data']; \r\n this.totalRegistros=res['total_registros'];\r\n\r\n }});\r\n }\r\n \r\n abrirModalIniciativaConsulta(idIniciativa:number)\r\n { \r\n const dialogRef = this.dialog.open(ModalConsultaIniciativaComponent,{data:{id_iniciativa:idIniciativa},disableClose:false, height: '580px',\r\n width: '800px'});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n //Mapeamos el idProceso y tipo\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n//Método para descargar archivo excel\r\ndescargarArchivoExcelIniciativas()\r\n{\r\n this.dataService.descargarArchivoIniciativas(this.paginaActual).subscribe(res => {\r\n let newBlob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = \"MisIniciativas\";\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n });\r\n\r\n}\r\n/**************************************************************************************************/\r\ncambiarEstatus(estatus: string) {\r\n if (estatus === 'Corregir') {\r\n this.showHistorialAlert = true; // Muestra la alerta en el icono de historial\r\n } else {\r\n this.showHistorialAlert = false; // Oculta la alerta si el estatus cambia a otro valor\r\n }\r\n}\r\n/**************************************************************************************************/\r\n\r\n}//cierre clase\r\n\r\n\r\n ","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { ConfirmacionComponent } from '../confirmacion/confirmacion.component';\r\n\r\nexport interface tipoIniciativa{\r\n estatus_tipoIniciativa:boolean;\r\n id_tipoIniciativa:number;\r\n nombre_tipoIniciativa:string;\r\n}\r\n\r\n\r\n@Component({\r\n selector: 'app-dialog-cambio-tipo-iniciativa',\r\n templateUrl: './dialog-cambio-tipo-iniciativa.component.html',\r\n styleUrls: ['./dialog-cambio-tipo-iniciativa.component.css']\r\n})\r\nexport class DialogCambioTipoIniciativaComponent implements OnInit {\r\n listaTipoIniciativa:tipoIniciativa[]=[];\r\n dataTipoIniciativa\r\n accionForm: FormGroup;\r\n constructor(\r\n public dataService: DataService,\r\n private _fb: FormBuilder,\r\n public dialogRefEliminar: MatDialogRef,\r\n @Inject(MAT_DIALOG_DATA) public data: any) { }\r\n\r\n ngOnInit() {\r\n this.cargarTipoIniciativas();\r\n this.crearForm();\r\n }\r\n\r\n\r\n onNoClick(): void {\r\n this.dialogRefEliminar.close();\r\n }\r\n\r\n save(){\r\n var form =this.accionForm.getRawValue();\r\n var body ={\r\n \"id_iniciativa\":this.data['id_iniciativa'],\r\n \"userlogin\":\"\"+this.data['userLogin'],\r\n \"rolUserLogin\":this.data['rolSeleccionado'],\r\n \"id_tipoIniciativa\":form['tipo'],\r\n \"id_tipoIniciativaANT\":this.data['id_tipoIniciativa']\r\n }\r\n this.dialogRefEliminar.close(body);\r\n }\r\n\r\n crearForm(){\r\n this.accionForm = this._fb.group({\r\n tipo: ['', [Validators.required]]\r\n })\r\n }\r\n\r\n\r\n cargarTipoIniciativas()\r\n {\r\n this.dataService.getListTipoIniciativas().subscribe(\r\n data => {\r\n this.dataTipoIniciativa = data['data'];\r\n //Enlace de proyectos\r\n if(this.data['rolSeleccionado']==1)\r\n {\r\n this.dataTipoIniciativa.forEach((element,index )=> {\r\n if(element['id_tipoIniciativa']==2 || element['id_tipoIniciativa']==3)\r\n {\r\n this.listaTipoIniciativa.push(element);\r\n }\r\n });\r\n }else{\r\n this.dataTipoIniciativa.forEach((element,index )=> {\r\n if(element['id_tipoIniciativa']==1)\r\n {\r\n this.listaTipoIniciativa.push(element);\r\n }\r\n });\r\n\r\n }\r\n\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJjb3JyZWNjaW9uLWZ1bmNpb25hbGlkYWRlcy5jb21wb25lbnQuc2NzcyJ9 */\";","import { Component, OnInit,ViewChild, ViewEncapsulation } from '@angular/core';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport {MatPaginator} from '@angular/material/paginator';\r\nimport{ ConfirmListadoIniciativasAdminComponent} from 'src/app/components/shared/confirm-listado-iniciativas-admin/confirm-listado-iniciativas-admin.component';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MatCalendarCellClassFunction } from '@angular/material/datepicker';\r\nimport * as moment from 'moment';\r\n\r\n\r\n\r\nexport interface Periodos {\r\n id_periodoEnvio: number;\r\n fechaInicio_periodoEnvio: string;\r\n fechaTermino_periodoEnvio: string\r\n}\r\n\r\n\r\n@Component({\r\n selector: 'app-periodos-envio',\r\n templateUrl: './periodos-envio.component.html',\r\n styleUrls: ['./periodos-envio.component.css'],\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\n\r\nexport class PeriodosEnvioComponent implements OnInit {\r\n //Lista para los periodos de envio\r\n listaPeriodo: Periodos[]=[];\r\n secondFormGroup: FormGroup;\r\n displayedColumns: string[] = ['inicio', 'fin', 'Acciones'];\r\n dataSource:any;\r\n botonPresionado:number;\r\n loadingGeneral: boolean = true;\r\n diasDisponibles = [];\r\n minDate: Date = new Date();\r\n maxDate: Date;\r\n dia;\r\n startDate:Date;\r\n fi1\r\n ff1\r\n\r\n @ViewChild('TablaPeriodo', {static: false}) paginator: MatPaginator;\r\n\r\n\r\n\r\n constructor(private dataService: DataService,\r\n public dialog:MatDialog,\r\n private _fb: FormBuilder,\r\n private notifier: NotifierService) {\r\n this.cargarPeriodosEnvio();\r\n }\r\n\r\n ngOnInit(): void {\r\n //Cargamos la lista de los periodos\r\n this.secondFormGroup = this._fb.group({\r\n dia: ['', Validators.required]\r\n });\r\n }\r\n\r\n //Método para aplicar el filtro \r\n applyFilter(event: Event) {\r\n const filterValue = (event.target as HTMLInputElement).value;\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n}\r\n\r\n cargarPeriodosEnvio()\r\n {\r\n this.loadingGeneral = true;\r\n this.dataService.getListPeriodosEnvio().subscribe(\r\n async (data) => {\r\n this.listaPeriodo = data['data'];\r\n \r\n this.dataSource = new MatTableDataSource(this.listaPeriodo);\r\n this.dataSource.paginator=this.paginator;\r\n this.loadingGeneral = false;\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Método para las acciones de la tabla de periodos\r\n onSubmitReactive(btnId:number, id_periodo:number,){\r\n this.botonPresionado=btnId;\r\n\r\n //Opcion de Agregar\r\n if(this.botonPresionado==1)\r\n {\r\n this.agregarPeriodo();\r\n }\r\n\r\n //Opcion de Editar\r\n if(this.botonPresionado==2)\r\n {\r\n this.editarPeriodo(id_periodo);\r\n }\r\n\r\n //Opcion de Eliminar\r\n if(this.botonPresionado==3)\r\n {\r\n this.eliminarPeriodo(id_periodo);\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n\r\n/* dateClass:MatCalendarCellClassFunction = async (cellDate, view) => {\r\n const date = cellDate.getDate();\r\n console.log(date);\r\n const timer = setTimeout(async () => {\r\n console.log(await this.fi1);\r\n console.log(await this.ff1);\r\n return 'directoresArea';\r\n }, 500);\r\n return '';\r\n } */\r\n\r\n\r\n\r\n\r\n\r\n\r\n reformatDate(date){\r\n let d = date.split(\"-\");\r\n let dd1=d[2];\r\n let p = dd1.split(\"T\");\r\n let dd=p[0];\r\n let mm=d[1]-1;\r\n let yyyy =d[0];\r\n let newDate=new Date(yyyy,mm,dd);\r\n return newDate;\r\n }\r\n\r\n //Método para eliminar la iniciativa\r\n eliminarPeriodo(id_periodo:number)\r\n {\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id_periodo:id_periodo,opcion:12},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.dataService.deletePeriodoEnvio(id_periodo).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.cargarPeriodosEnvio();\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar el periodo. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n this.botonPresionado=0;\r\n }\r\n }); \r\n }\r\n\r\n //Agregar periodo\r\n agregarPeriodo()\r\n { \r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{opcion:13, titulo:\"Agregar periodo\"},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.dataService.addPeriodoEnvio(result).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se agrego correctamente.'\r\n );\r\n this.cargarPeriodosEnvio()\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar agregar el periodo. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n this.botonPresionado=0;\r\n }\r\n }); \r\n}\r\n\r\n//Método para editar periodo\r\neditarPeriodo(id_periodo:number)\r\n{\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id_periodo:id_periodo,opcion:14,titulo:\"Editar periodo\"},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n this.botonPresionado=0;\r\n }\r\n else{\r\n this.dataService.updatePeriodoEnvio(id_periodo,result).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se edito correctamente.'\r\n );\r\n this.cargarPeriodosEnvio();\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n \r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar el periodo. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n this.botonPresionado=0;\r\n }\r\n }); \r\n\r\n}\r\n\r\n}\r\n","export class Paginado {\r\n email: string;\r\n numeroPagina: number;\r\n fechaInicio?:string;\r\n fechaFin?: string;\r\n termino?:string;\r\n rolUserlogin?:number;\r\n orderByArea?:boolean;\r\n orderByGeneral?:boolean;\r\n orderBySubse?:boolean;\r\n botonBuscar?:boolean;\r\n folio_iniciativa?:string;\r\n idSubsecretariaSap?:number;\r\n idLider?:number;\r\n idEnlace?:number;\r\n idTipoSolicitud?:number;\r\n idAplicacion?:number;\r\n id_dirgralSap?:number;\r\n listEstatus?:number[];\r\n fechaEnvio_iniciativa?:string;\r\n idRol_enlace?:number;\r\n idRol_lider?:number;\r\n idGestorCambios ?:number;\r\n idAnalistaTI ?:number;\r\n}\r\n\r\nexport class PaginadoAdiminstrador {\r\n opcion?: number;\r\n fechaInicio?: string;\r\n fechaFin?: string;\r\n numeroPagina: number;\r\n folio?: number;\r\n idUsuario?: number;\r\n estatus?: number;\r\n email?: string;\r\n termino?:string;\r\n orderByGeneral?:boolean;\r\n idGestorCambios ?:number;\r\n idAnalistaTI ?:number;\r\n\r\n\r\n\r\n}\r\nexport class PaginadoLider {\r\n opcion?: number;\r\n fechaInicio?: Date;\r\n fechaFin?: Date;\r\n numeroPagina: number;\r\n folio?: number;\r\n email?: string;\r\n estatus?: number;\r\n termino?:string;\r\n}\r\n\r\n\r\nexport class PaginadoReportes {\r\n fechaInicio?: string;\r\n fechaFin?: string;\r\n numeroPagina: number;\r\n email?: string;\r\n}\r\n\r\n","export default \"
\\r\\n
\\r\\n

Registro de nueva iniciativa

\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\";","import { Component, Input, OnInit } from '@angular/core';\r\nimport { MatCalendarCellClassFunction } from '@angular/material/datepicker';\r\nimport * as moment from 'moment';\r\nimport { Periodos } from '../periodos-envio/periodos-envio.component';\r\n\r\n@Component({\r\n selector: 'app-calendario-visual',\r\n templateUrl: './calendario-visual.component.html',\r\n styleUrls: ['./calendario-visual.component.css']\r\n})\r\nexport class CalendarioVisualComponent implements OnInit {\r\n startDate:Date;\r\n listaPeriodo: Periodos[]=[];\r\n @Input() valor;\r\n ff\r\n fi\r\n directoresArea\r\n directoresGenerales=null\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n this.listaPeriodo=this.valor;\r\n this.startDate =this.listaPeriodo['fechaInicio_periodoEnvio'];\r\n this.fi=this.reformatDate(this.listaPeriodo['fechaInicio_periodoEnvio']);\r\n this.ff=this.reformatDate(this.listaPeriodo['fechaTermino_periodoEnvio']);\r\n let fechaDirArea=this.reformatDate(this.listaPeriodo['fechaTermino_periodoEnvio']);\r\n this.directoresArea=this.calcDir(fechaDirArea,2);\r\n this.directoresGenerales=this.calcDir(fechaDirArea,3)\r\n }\r\n\r\n\r\n dateClass: MatCalendarCellClassFunction = (cellDate, view) => {\r\n if (view === 'month') {\r\n if(cellDate.getDay() !=0){ //val domingo\r\n if(cellDate.getDay() !=6){ //val sabado\r\n const date = cellDate.getDate();\r\n if((moment((cellDate))>=moment(this.fi)) && (moment((cellDate))<=moment(this.ff))){\r\n return 'envio';\r\n }\r\n if((moment((cellDate))>moment(this.ff)) && (moment((cellDate))<=moment(this.directoresArea))){\r\n return 'directoresArea';\r\n } \r\n if((moment((cellDate))>moment(this.directoresArea)) && (moment((cellDate))<=moment(this.directoresGenerales))){\r\n return 'directoresGenerales';\r\n } \r\n }\r\n }\r\n }\r\n return '';\r\n }\r\n\r\n reformatDate(date){\r\n let d = date.split(\"-\");\r\n let dd1=d[2];\r\n let p = dd1.split(\"T\");\r\n let dd=parseInt(p[0]) ;\r\n let mm=d[1]-1;\r\n let yyyy =d[0];\r\n let newDate=new Date(yyyy,mm,dd);\r\n return newDate;\r\n }\r\n\r\n calcDir(date,dias){\r\n let i=0;\r\n while (i\\r\\n

Por favor espere...

\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n

Iniciativas Registradas

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Fecha Inicio\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Fecha Final\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n Folio\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n Tipo de solicitud\\r\\n \\r\\n Seleccione\\r\\n \\r\\n {{ti.nombre_tipoIniciativa}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n Analista de TI\\r\\n \\r\\n Seleccione \\r\\n \\r\\n {{analista.nombre_usuario}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n Gestor de cambio\\r\\n \\r\\n Seleccione \\r\\n \\r\\n {{gestor.nombre_usuario}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Subsecretaría\\r\\n \\r\\n Seleccione\\r\\n \\r\\n {{sub.nombre_subsecretariaSap}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n Líder\\r\\n \\r\\n Seleccione\\r\\n \\r\\n {{lid.nombre_usuario}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n Enlace\\r\\n \\r\\n Seleccione\\r\\n \\r\\n {{en.nombre_usuario}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n Aplicación\\r\\n \\r\\n Seleccione\\r\\n \\r\\n {{ap.nombre_aplicacion}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n Buscar\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n 0) &&\\r\\n (this.idRolSeleccionado==3 || this.idRolSeleccionado==4 || this.idRolSeleccionado==5 || this.idRolSeleccionado==6 || this.idRolSeleccionado==7 || this.idRolSeleccionado==8 || this.idRolSeleccionado==12)\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n 0) &&\\r\\n (this.idRolSeleccionado==9)\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n 0) &&\\r\\n (this.idRolSeleccionado==10)\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n 0) &&\\r\\n (this.idRolSeleccionado==11)\\\">\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
Total registros: {{this.totalRegistros}}
Total registros: {{this.totalRegistros}}
FolioSolicitud\\r\\n UR \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{UR.nombre_dirgralSap}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n Fecha de envío \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Estatus \\r\\n
\\r\\n \\r\\n \\r\\n {{est.nombre_estatusIniciativa}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
Priorización áreas Priorización UR Priorización Subsecretaría Acciones
FolioSolicitudSolicitanteFecha de envíoEstatusPriorización áreas Priorización UR Priorización Subsecretaría Acciones
FolioSolicitudDirección de áreaFecha de envíoEstatusPriorización áreas Priorización UR Priorización Subsecretaría Acciones
FolioSolicitudURFecha de envíoEstatusPriorización UR Priorización Subsecretaría Acciones
{{ iniciativa.folio_iniciativa}}{{ iniciativa.nombre_iniciativa }}{{ iniciativa.nombre_dirgralSapSolicitante}}{{iniciativa.fechaEnvio_iniciativa | date: 'yyyy-MM-dd' }}{{iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}}{{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}}{{ iniciativa.priorizacion_areaIniciativa}}{{ iniciativa.priorizacion_gralIniciativa}}{{ iniciativa.priorizacion_subSecIniciativa}}\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n\\r\\n \\r\\n swap_horiz\\r\\n \\r\\n \\r\\n swap_horiz\\r\\n \\r\\n \\r\\n check_circle\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n swap_horiz\\r\\n \\r\\n \\r\\n swap_horiz\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n swap_horiz\\r\\n \\r\\n \\r\\n swap_horiz\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n swap_horiz\\r\\n \\r\\n \\r\\n swap_horiz\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n swap_horiz\\r\\n \\r\\n \\r\\n swap_horiz\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n \\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n
{{ iniciativa.folio_iniciativa}}{{ iniciativa.nombre_iniciativa }}{{ iniciativa.nombre_solicitante}}{{iniciativa.fechaEnvio_iniciativa | date: 'yyyy-MM-dd' }}{{iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}}{{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}}{{ iniciativa.priorizacion_areaIniciativa}}{{ iniciativa.priorizacion_gralIniciativa}}{{ iniciativa.priorizacion_subSecIniciativa}}\\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n
{{ iniciativa.folio_iniciativa}}{{ iniciativa.nombre_iniciativa }}{{ iniciativa.nombre_areaSapSolicitante}}{{iniciativa.fechaEnvio_iniciativa | date: 'yyyy-MM-dd' }}{{iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}}{{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}}{{ iniciativa.priorizacion_areaIniciativa}}{{ iniciativa.priorizacion_gralIniciativa}}{{ iniciativa.priorizacion_subSecIniciativa}}\\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n
{{ iniciativa.folio_iniciativa}}{{ iniciativa.nombre_iniciativa }}{{ iniciativa.nombre_dirgralSapSolicitante}}{{iniciativa.fechaEnvio_iniciativa | date: 'yyyy-MM-dd' }}{{iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}}{{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}} {{ iniciativa.nombre_estatusIniciativa}}{{ iniciativa.priorizacion_gralIniciativa}}{{ iniciativa.priorizacion_subSecIniciativa}}\\r\\n \\r\\n \\r\\n mode_comment\\r\\n \\r\\n
\\r\\n No se encontraron iniciativas registradas con tu usuario\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\";","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\\"\\\"\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\";","export default \".mat-dialog-title{\\r\\n /* background-color:#117BB8;\\r\\n color: white;\\r\\n height: 60px;*/\\r\\n text-align: center;\\r\\n }\\r\\n\\r\\n .mat-dialog-content{\\r\\n padding: 0px !important;\\r\\n\\r\\n }\\r\\n\\r\\n .mat-dialog-actions{\\r\\n text-align: right;\\r\\n }\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1vZGFsLXByb2NlZGltaWVudG8uY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtHQUNHOztrQkFFZTtJQUNkLGtCQUFrQjtFQUNwQjs7RUFFQTtJQUNFLHVCQUF1Qjs7RUFFekI7O0VBRUE7TUFDSSxpQkFBaUI7RUFDckIiLCJmaWxlIjoibW9kYWwtcHJvY2VkaW1pZW50by5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm1hdC1kaWFsb2ctdGl0bGV7XHJcbiAgIC8qIGJhY2tncm91bmQtY29sb3I6IzExN0JCODtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGhlaWdodDogNjBweDsqL1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuXHJcbiAgLm1hdC1kaWFsb2ctY29udGVudHtcclxuICAgIHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1xyXG5cclxuICB9XHJcblxyXG4gIC5tYXQtZGlhbG9nLWFjdGlvbnN7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIH0iXX0= */\";","export default \"\\r\\n\\r\\n \\r\\n
\\r\\n

Eliminar

\\r\\n
\\r\\n ¿Desea eliminar el periodo?\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n

{{this.tituloAdd}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n La fecha de inicio es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n La fecha de inicio es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n

{{this.tituloUpdate}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n La fecha de inicio es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n La fecha de inicio es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n

{{this.tituloAddMotivos}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El motivo es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El tipo de motivo es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n

Eliminar

\\r\\n
\\r\\n ¿Desea eliminar el motivo de rechazo/suspención/cancelación?\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n

{{this.tituloUpdateMotivo}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El motivo es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El tipo de motivo es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n

Eliminar

\\r\\n
\\r\\n ¿Desea eliminar el registro?\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n

{{this.tituloUpdateEstructura}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n

{{this.tituloUpdateEstructura}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n Si edita la subsecretaría del registro seleccionado, la relación actual Subsecretaría-Dirección General se eliminara automáticamente.
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Seleccione\\r\\n \\r\\n \\r\\n {{sub.nombre_subsecretariaSap}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{data}}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n

{{this.tituloUpdateEstructura}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n Si edita la Dirección General del registro seleccionado, la relación actual Dirección General-Dirección de área se eliminara automáticamente.
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Seleccione\\r\\n \\r\\n \\r\\n {{dir.nombre_dirgralSap}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{data}}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n

Cambiar enlace

\\r\\n
\\r\\n ¿Desea cambiar el enlace?\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n

{{this.tituloUpdateArea}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n

Eliminar

\\r\\n
\\r\\n ¿Desea eliminar el registro?\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n

{{this.tituloUpdateApp}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n

{{this.tituloUpdateEstructura}}

\\r\\n
\\r\\n
\\r\\n
\\r\\n Si edita el área dueña del registro seleccionado, la relación actual Área-Aplicación se eliminará automáticamente.
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Seleccione\\r\\n \\r\\n \\r\\n {{area.nombre_area}}\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n {{data}}\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\";","export default \"\\r\\n
\\r\\n
\\r\\n

Costeo del proceso

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Descargar documento ejemplo de costeo de proceso para su información\\r\\n

\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Subir plantilla\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Datos generales del proceso
Proceso\\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento\\r\\n \\r\\n
Dueño\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CriterioActual (As-Is)Propuesto (To-Be)
#Trámites para usuarios internos (mensual):\\r\\n \\r\\n \\r\\n \\r\\n
#Trámites para usuarios externos (mensual):\\r\\n \\r\\n \\r\\n \\r\\n
Hojas impresas por trámite\\r\\n \\r\\n \\r\\n \\r\\n
Km recorridos(viaje redondo)\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento Actual (As-Is)\\r\\n \\r\\n
RolPuesto funcionalTiempo de operación(min)Tiempo de espera(min)Nivel tabularNúmero de participantesAcciones
{{procedimiento.rol_procesoDetalle}}{{procedimiento.puesto_procesoDetalle}}{{procedimiento.tiempoOperacion_procesoDetalle}}{{procedimiento.tiempoEspera_procesoDetalle}}{{procedimiento.nivelTabular_procesoDetalle}}{{procedimiento.numParticipantes_procesoDetalle}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n No se encontraron procedimientos registrados \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento propuesto (To-Be)\\r\\n \\r\\n
RolPuesto funcionalTiempo de operación(min)Tiempo de espera(min)Nivel tabularNúmero de participantesAcciones
{{procedimiento.rol_procesoDetalle}}{{procedimiento.puesto_procesoDetalle}}{{procedimiento.tiempoOperacion_procesoDetalle}}{{procedimiento.tiempoEspera_procesoDetalle}}{{procedimiento.nivelTabular_procesoDetalle}}{{procedimiento.numParticipantes_procesoDetalle}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n No se encontraron procedimientos registrados \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n\";","export default \"footer {\\n background-color: #e1e1e1;\\n}\\nfooter a.linkSocial {\\n background-color: #001f8a;\\n border-radius: 40px;\\n display: inline-block;\\n margin-right: 5px;\\n padding: 5px;\\n font-size: 14px;\\n min-width: 30px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFwuLlxcZm9vdGVyLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UseUJBQUE7QUFDRjtBQUNFO0VBQ0UseUJBQUE7RUFDQSxtQkFBQTtFQUNBLHFCQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtFQUNBLGVBQUE7QUFDSiIsImZpbGUiOiJmb290ZXIuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJmb290ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlMWUxZTE7XHJcblxyXG4gIGEubGlua1NvY2lhbCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAxZjhhO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNDBweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgcGFkZGluZzogNXB4O1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgbWluLXdpZHRoOiAzMHB4O1xyXG4gIH1cclxufVxyXG4iXX0= */\";","export default \".modal-subtitle {\\n background-color: #b4b7b9;\\n padding: 5px;\\n color: white;\\n}\\n\\ntable td {\\n font-size: small;\\n text-align: center;\\n font-family: Verdana, Geneva, Tahoma, sans-serif;\\n}\\n\\ntable th {\\n text-align: center;\\n font-style: normal;\\n font-size: small;\\n font-family: Verdana, Geneva, Tahoma, sans-serif;\\n}\\n\\n.table {\\n width: 100%;\\n}\\n\\n#encabezado {\\n background-color: #117BB8;\\n color: white;\\n}\\n\\n#datosGral {\\n background-color: #85C1E9;\\n color: white;\\n font-size: small;\\n font-family: Verdana, Geneva, Tahoma, sans-serif;\\n}\\n\\n.table > tbody > tr:hover {\\n background-color: #F2F2F2;\\n cursor: pointer;\\n}\\n\\n.mat-card {\\n padding-left: 200px;\\n padding: 30px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxjYW1iaW9zLWZ1bmNpb25hbGlkYWRlcy5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLHlCQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7QUFDSjs7QUFHQTtFQUNFLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxnREFBQTtBQUFGOztBQUdBO0VBR0Usa0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0RBQUE7QUFGRjs7QUFLQTtFQUNFLFdBQUE7QUFGRjs7QUFLQTtFQUNFLHlCQUFBO0VBQ0EsWUFBQTtBQUZGOztBQU1BO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnREFBQTtBQUhGOztBQU1BO0VBQ0UseUJBQUE7RUFDQSxlQUFBO0FBSEY7O0FBTUE7RUFFRSxtQkFBQTtFQUNBLGFBQUE7QUFKRiIsImZpbGUiOiJjYW1iaW9zLWZ1bmNpb25hbGlkYWRlcy5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIi5tb2RhbC1zdWJ0aXRsZXtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNiNGI3Yjk7XHJcbiAgICBwYWRkaW5nOjVweDtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICB9XHJcblxyXG4gIFxyXG50YWJsZSB0ZHtcclxuICBmb250LXNpemU6IHNtYWxsO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LWZhbWlseTpWZXJkYW5hLCBHZW5ldmEsIFRhaG9tYSwgc2Fucy1zZXJpZjtcclxufVxyXG5cclxudGFibGUgdGgge1xyXG4gIC8vYmFja2dyb3VuZC1jb2xvcjojQzBDMEMwO1xyXG4gIC8vY29sb3I6IGJsYWNrO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LXN0eWxlOm5vcm1hbDtcclxuICBmb250LXNpemU6IHNtYWxsO1xyXG4gIGZvbnQtZmFtaWx5OlZlcmRhbmEsIEdlbmV2YSwgVGFob21hLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG4udGFibGUge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4jZW5jYWJlemFkb3tcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiMxMTdCQjg7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG5cclxufVxyXG5cclxuI2RhdG9zR3JhbHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiM4NUMxRTk7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG4gIGZvbnQtc2l6ZTogc21hbGw7XHJcbiAgZm9udC1mYW1pbHk6VmVyZGFuYSwgR2VuZXZhLCBUYWhvbWEsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbi50YWJsZSA+IHRib2R5ID4gdHI6aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNGMkYyRjI7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4ubWF0LWNhcmR7XHJcbiAgLy93aWR0aDogODAwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAyMDBweDtcclxuICBwYWRkaW5nOiAzMHB4O1xyXG59Il19 */\";","export default \"\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Seleccione el rol con el que desea ingresar

\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n\";","\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MaterialModule } from 'src/app/components/modules/shared/material/material.module';\r\n\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [\r\n CommonModule,\r\n MaterialModule\r\n ]\r\n})\r\nexport class SharedModule { }","export default \"\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

Datos generales

\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Estatus: Registro\\r\\n
\\r\\n
\\r\\n Estatus: Envío\\r\\n
\\r\\n
\\r\\n Estatus: Análisis\\r\\n
\\r\\n
\\r\\n Estatus: Diseño\\r\\n
\\r\\n
\\r\\n Estatus: Priorización\\r\\n
\\r\\n
\\r\\n Estatus: Programación \\r\\n
\\r\\n
\\r\\n Estatus: Construcción\\r\\n
\\r\\n
\\r\\n Estatus: Pruebas\\r\\n
\\r\\n
\\r\\n Estatus: Implementación\\r\\n
\\r\\n
\\r\\n Estatus: Finalizado\\r\\n
\\r\\n
\\r\\n Estatus: Corregir\\r\\n
\\r\\n
\\r\\n Estatus: Suspendido \\r\\n
\\r\\n
\\r\\n Estatus: Cancelado\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n Datos generales\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n El Nombre del sistema es requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El Nombre del solicitante es requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El Email del solicitante no es una dirección de email\\r\\n válido.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{this.nameDirGral}}\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El teléfono es requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n

\\r\\n Describa la situación que desea resolver a través de su solicitud\\r\\n

\\r\\n \\r\\n
\\r\\n La problematica es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n La fecha de termino es un campo requerido\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n La justificación de la fecha es un campo requerido\\r\\n
\\r\\n
\\r\\n\\r\\n

Transacciones por mes

\\r\\n \\r\\n \\r\\n
\\r\\n Las transacciones es un campo requerido\\r\\n
\\r\\n \\r\\n \\r\\n

Impacto al negocio

\\r\\n

\\r\\n De las siguientes opciones seleccione el o los mecanismos gubernamentales\\r\\n a los que contribuirá su proyecto una vez realizado.\\r\\n \\r\\n (Debe seleccionar al menos uno)\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Solución propuesta

\\r\\n

\\r\\n Describa de acuerdo a su análisis en qué consiste la solución\\r\\n

\\r\\n \\r\\n
\\r\\n

Beneficiarios

\\r\\n
\\r\\n
\\r\\n Usuarios directos
\\r\\n

\\r\\n Descripción y cantidad de usuarios directos de las funcionalidades\\r\\n implementadas por este requerimiento (personas que usarán el sistema). Ingresar cantidades sin separador de miles (comas o puntos).\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n Los beneficiarios directos son requeridos\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Beneficiarios
\\r\\n

\\r\\n Descripción y cantidad de beneficiados por la implementación del\\r\\n requerimiento (personas beneficiadas usuarias y no usuarias del\\r\\n sistema). Ingresar cantidades sin separador de miles (comas o puntos).\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n Los beneficiarios de implementacion son requeridos\\r\\n
\\r\\n
\\r\\n
\\r\\n

Procesos

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n El nombre del proceso es requeridos\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Proceso actual
\\r\\n

\\r\\n Adjunte los procedimientos vigentes de su manual que reflejen el proceso actual en formato PDF.\\r\\n

\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n El documento de Proceso actual es requerido\\r\\n \\r\\n \\r\\n Error al subir el archivo. Inténtelo de nuevo.\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Proceso propuesto
\\r\\n

\\r\\n Adjunte los procedimientos actualizados con las mejoras propuestas en formato PDF.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n El documento de Proceso propuesto es requerido\\r\\n \\r\\n \\r\\n Error al subir el archivo. Inténtelo de nuevo.\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Anexos

\\r\\n
\\r\\n
\\r\\n Otros archivos\\r\\n

\\r\\n Adjunte los documentos necesarios para completar su solicitud EN FORMATO PDF \\r\\n (pantallas, manuales, formatos, etc.) Si es más de un archivo, \\r\\n genere una carpeta comprimida en formato ZIP o RAR.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n Error al subir el archivo. Inténtelo de nuevo.\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n El Email del solicitante no es una dirección de email válido.\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n {{this.nameDirGral}}\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n

\\r\\n Describa la situación que desea resolver a través de su solicitud\\r\\n

\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n

Transacciones por mes

\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n

Impacto al negocio

\\r\\n

\\r\\n De las siguientes opciones seleccione el o los mecanismos gubernamentales\\r\\n a los que contribuirá su proyecto una vez realizado. \\r\\n \\r\\n (Debe seleccionar al menos uno)\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Solución propuesta

\\r\\n

\\r\\n Describa de acuerdo a su análisis en qué consiste la solución\\r\\n

\\r\\n \\r\\n
\\r\\n

Beneficiarios

\\r\\n
\\r\\n
\\r\\n Usuarios directos
\\r\\n

\\r\\n Descripción y cantidad de usuarios directos de las funcionalidades\\r\\n implementadas por este requerimiento (personas que usarán el sistema). Ingresar cantidades sin separador de miles (puntos o comas).\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Beneficiarios
\\r\\n

\\r\\n Descripción y cantidad de beneficiados por la implementación del\\r\\n requerimiento (personas beneficiadas usuarias y no usuarias del\\r\\n sistema). Ingresar cantidades sin separador de miles (comas o puntos).\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Procesos

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Proceso actual
\\r\\n

\\r\\n Adjunte los procedimientos vigentes de su manual que reflejen el proceso actual en formato PDF.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n El documento de Proceso actual es requerido\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Proceso propuesto
\\r\\n

\\r\\n Adjunte los procedimientos actualizados con las mejoras propuestas en formato PDF.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n El documento de Proceso propuesto es requerido\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Anexos

\\r\\n
\\r\\n
\\r\\n Otros archivos\\r\\n

\\r\\n Adjunte los documentos necesarios para completar su solicitud EN FORMATO PDF \\r\\n (pantallas, manuales, formatos, etc.) \\r\\n Si es más de un archivo, genere una carpeta comprimida en formato ZIP o RAR.\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n Costeo\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Descargar documento ejemplo de costeo de proceso para su información\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Subir plantilla\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Datos generales del proceso
Proceso\\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento\\r\\n \\r\\n
Dueño\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CriterioActual (As-Is)Propuesto (To-Be)
#Trámites para usuarios internos (mensual):\\r\\n \\r\\n \\r\\n \\r\\n
#Trámites para usuarios externos (mensual):\\r\\n \\r\\n \\r\\n \\r\\n
Hojas impresas por trámite\\r\\n \\r\\n \\r\\n \\r\\n
Km recorridos(viaje redondo)\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento Actual (As-Is)\\r\\n \\r\\n
RolPuesto funcionalTiempo de operación(min)Tiempo de espera(min)Nivel tabularNúmero de participantesAcciones
{{procedimiento.rol_procesoDetalle}}{{procedimiento.puesto_procesoDetalle}}{{procedimiento.tiempoOperacion_procesoDetalle}}{{procedimiento.tiempoEspera_procesoDetalle}}{{procedimiento.nivelTabular_procesoDetalle}}{{procedimiento.numParticipantes_procesoDetalle}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n No se encontraron procedimientos registrados \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento propuesto (To-Be)\\r\\n \\r\\n
RolPuesto funcionalTiempo de operación(min)Tiempo de espera(min)Nivel tabularNúmero de participantesAcciones
{{procedimiento.rol_procesoDetalle}}{{procedimiento.puesto_procesoDetalle}}{{procedimiento.tiempoOperacion_procesoDetalle}}{{procedimiento.tiempoEspera_procesoDetalle}}{{procedimiento.nivelTabular_procesoDetalle}}{{procedimiento.numParticipantes_procesoDetalle}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n No se encontraron procedimientos registrados \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Descargar documento ejemplo de costeo de proceso para su información\\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Subir plantilla\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

\\r\\n \\r\\n

\\r\\n

\\r\\n \\r\\n

\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Datos generales del proceso
Proceso\\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento\\r\\n \\r\\n
Dueño\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
CriterioActual (As-Is)Propuesto (To-Be)
#Trámites para usuarios internos (mesual):\\r\\n \\r\\n \\r\\n \\r\\n
#Trámites para usuarios externo (mesual):\\r\\n \\r\\n \\r\\n \\r\\n
Hojas impresas por trámite\\r\\n \\r\\n \\r\\n \\r\\n
Km recorridos(viaje redondo)\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento Actual (As-Is)\\r\\n \\r\\n
RolPuesto funcionalTiempo de operación(min)Tiempo de espera(min)Nivel tabularNúmero de participantesAcciones
{{procedimiento.rol_procesoDetalle}}{{procedimiento.puesto_procesoDetalle}}{{procedimiento.tiempoOperacion_procesoDetalle}}{{procedimiento.tiempoEspera_procesoDetalle}}{{procedimiento.nivelTabular_procesoDetalle}}{{procedimiento.numParticipantes_procesoDetalle}}\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n No se encontraron procedimientos registrados \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n \\r\\n
\\r\\n

\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Procedimiento propuesto (To-Be)\\r\\n \\r\\n
RolPuesto funcionalTiempo de operación(min)Tiempo de espera(min)Nivel tabularNúmero de participantesAcciones
{{procedimiento.rol_procesoDetalle}}{{procedimiento.puesto_procesoDetalle}}{{procedimiento.tiempoOperacion_procesoDetalle}}{{procedimiento.tiempoEspera_procesoDetalle}}{{procedimiento.nivelTabular_procesoDetalle}}{{procedimiento.numParticipantes_procesoDetalle}}\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n No se encontraron procedimientos registrados \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\";","export default \"\\r\\n .fa-trash{\\r\\n color: gray; \\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImVxdWlwby10cmFiYWpvLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtDQUNDO0VBQ0MsV0FBVztBQUNiIiwiZmlsZSI6ImVxdWlwby10cmFiYWpvLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuIC5mYS10cmFzaHtcclxuICBjb2xvcjogZ3JheTsgXHJcbn0iXX0= */\";","export default \".mat-dialog-actions .mat-button-base+.mat-button-base {\\r\\n margin-left: 50px;\\r\\n}\\r\\n\\r\\n.mat-dialog-actions {\\r\\n display: contents !important;\\r\\n}\\r\\n\\r\\n.mat-dialog-container {\\r\\n overflow-x: hidden !important;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRpYWxvZy1hc2lnbmEtZW5sYWNlLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7SUFDSSxpQkFBaUI7QUFDckI7O0FBRUE7SUFDSSw0QkFBNEI7QUFDaEM7O0FBRUE7SUFDSSw2QkFBNkI7QUFDakMiLCJmaWxlIjoiZGlhbG9nLWFzaWduYS1lbmxhY2UuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5tYXQtZGlhbG9nLWFjdGlvbnMgLm1hdC1idXR0b24tYmFzZSsubWF0LWJ1dHRvbi1iYXNlIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xyXG59XHJcblxyXG4ubWF0LWRpYWxvZy1hY3Rpb25zIHtcclxuICAgIGRpc3BsYXk6IGNvbnRlbnRzICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tYXQtZGlhbG9nLWNvbnRhaW5lciB7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW4gIWltcG9ydGFudDtcclxufSJdfQ== */\";","export default \"\";","import { Component, OnInit } from '@angular/core';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { DataService } from '../../../services/data.service';\r\nimport { Paginado} from '../../../models/paginado';\r\nimport { TablaReportes } from '../../../interfaces/interfaces';\r\nimport { AuthService } from '../../../services/auth.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-reportes',\r\n templateUrl: './reportes.component.html',\r\n styleUrls: ['./reportes.component.css']\r\n})\r\nexport class ReportesComponent implements OnInit {\r\n fechaFin:any;\r\n fechaInicio:any;\r\n loadingGeneral: boolean = true;\r\n paginadoReportes: Paginado= new Paginado();;\r\n tablaIniciativas: TablaReportes[] = [];\r\n totalRegistros:number;\r\n emailUser:string;\r\n idRolSeleccionado:number;\r\n nombreArchivoSolicitud:string;\r\n contentFile:string=\"reporte_iniciativas\";\r\n\r\n\r\n\r\n constructor(private dataService: DataService, \r\n private notifier: NotifierService,\r\n private authService: AuthService) \r\n { }\r\n\r\n ngOnInit(): void {\r\n this.authService.escuchaRolSeleccionado().subscribe((res) => {\r\n this.idRolSeleccionado = res; });\r\n this.authService.user.subscribe((user: string) => {\r\n {this.emailUser = user}\r\n if(this.emailUser)\r\n {\r\n \r\n //this.paginadoReportes.botonBuscar=false;\r\n this.paginadoReportes.numeroPagina = 1;\r\n this.paginadoReportes.email=this.emailUser;\r\n this.paginadoReportes.fechaInicio=\"\";\r\n this.paginadoReportes.fechaFin=\"\";\r\n this.paginadoReportes.rolUserlogin=this.idRolSeleccionado;\r\n //console.log(this.emailUser);\r\n this.cargarIniciativas();\r\n }\r\n });\r\n }\r\n\r\n\r\n //Método para aplicar filtro\r\n buscarIniciativas()\r\n {\r\n this.loadingGeneral = true;\r\n this.paginadoReportes.numeroPagina=1;\r\n this.paginadoReportes.fechaFin=this.fechaFin;\r\n this.paginadoReportes.fechaInicio=this.fechaInicio;\r\n this.dataService.obtenerIniciativasReporte(this.paginadoReportes).subscribe(res => {\r\n if (res['alert']==1) \r\n {\r\n this.loadingGeneral = false;\r\n this.notifier.notify('error', 'No se han podido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.');\r\n }\r\n else \r\n {\r\n this.loadingGeneral = false;\r\n this.totalRegistros=res['total_registros'];\r\n this.tablaIniciativas= res['data'];\r\n }});\r\n\r\n }\r\n\r\n\r\n \r\n cargarIniciativas() \r\n {\r\n this.loadingGeneral = true;\r\n this.dataService.obtenerIniciativasReporte(this.paginadoReportes).subscribe(\r\n data => {\r\n if (data['errorMessage']) \r\n {\r\n this.notifier.notify('error', 'No se han podido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.')\r\n }\r\n else{\r\n this.tablaIniciativas = data['data'];\r\n this.totalRegistros=data['total_registros'];\r\n if(data['data'].length < 1)\r\n {\r\n this.loadingGeneral = false;\r\n }else{\r\n this.loadingGeneral = false;\r\n\r\n }\r\n\r\n }\r\n }\r\n );\r\n }\r\n\r\n cargarSiguientes() \r\n {\r\n this.loadingGeneral = true;\r\n this.paginadoReportes.numeroPagina++;\r\n this.paginadoReportes.email=this.emailUser;\r\n this.dataService.obtenerIniciativasReporte(this.paginadoReportes).subscribe(res => {\r\n if (res['alert']==1) \r\n {\r\n this.notifier.notify('error', 'No se han podido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.');\r\n } else {\r\n \r\n this.tablaIniciativas = res['data'];\r\n }\r\n this.loadingGeneral = false;\r\n });\r\n }\r\n\r\n cargarAnteriores() \r\n {\r\n this.loadingGeneral = true;\r\n this.paginadoReportes.numeroPagina--;\r\n this.paginadoReportes.email=this.emailUser;\r\n this.dataService.obtenerIniciativasReporte(this.paginadoReportes).subscribe(res => {\r\n if (res['alert']==1) \r\n {\r\n this.notifier.notify('error', 'No se han podido cargar las iniciativas. Revisa tu conexión de red e inténtalo de nuevo más tarde.');\r\n } else {\r\n this.tablaIniciativas = res['data'];\r\n }\r\n this.loadingGeneral = false;\r\n });\r\n }\r\n\r\n\r\n\r\n descargarReporte()\r\n {\r\n this.dataService.descargarArchivoReporte(this.paginadoReportes).subscribe(res => {\r\n\r\n let newBlob = new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = \"Reporte_iniciativas_registradas\";\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n });\r\n\r\n}\r\n\r\n\r\n \r\n/*convertBase64ToBlob()\r\n{\r\n if(window.navigator && window.navigator.msSaveOrOpenBlob)\r\n { \r\n // download PDF in IE\r\n let byteChar = atob(this.contentFile);\r\n let byteArray = new Array(byteChar.length);\r\n for(let i = 0; i < byteChar.length; i++){\r\n byteArray[i] = byteChar.charCodeAt(i);\r\n }\r\n let uIntArray = new Uint8Array(byteArray);\r\n let blob = new Blob([uIntArray], {type : 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'});\r\n window.navigator.msSaveOrOpenBlob(blob, `${this.nombreArchivoSolicitud}.xlsx`);\r\n } else {\r\n // Download PDF in Chrome etc.\r\n const source = `data:application/xlsx;base64,${this.contentFile}`;\r\n const link = document.createElement(\"a\");\r\n link.href = source;\r\n link.download = `${this.nombreArchivoSolicitud}`\r\n link.click();\r\n }\r\n \r\n}*/\r\n\r\n\r\n\r\n\r\n\r\n //Limpiar filtro\r\n quitarFiltro(){\r\n this.paginadoReportes= new Paginado;\r\n this.fechaFin=\"\";\r\n this.fechaInicio=\"\";\r\n this.paginadoReportes.numeroPagina = 1;\r\n this.paginadoReportes.email=this.emailUser;\r\n this.paginadoReportes.fechaInicio=\"\";\r\n this.paginadoReportes.fechaFin=\"\";\r\n this.paginadoReportes.botonBuscar=false;\r\n this.paginadoReportes.rolUserlogin=this.idRolSeleccionado;\r\n this.cargarIniciativas();\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport {MatPaginator} from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\nimport{ ConfirmListadoIniciativasAdminComponent} from 'src/app/components/shared/confirm-listado-iniciativas-admin/confirm-listado-iniciativas-admin.component';\r\n\r\n//Interface para los catalogos de areas\r\nexport interface Area {\r\n id_area: number;\r\n nombre_area:string;\r\n estatus_area:boolean;\r\n}\r\n\r\nexport interface Aplicaciones {\r\n estatus_aplicacion:boolean;\r\n id_aplicacion: number;\r\n id_area:number;\r\n nombre_aplicacion:string;\r\n}\r\n\r\n\r\n@Component({\r\n selector: 'app-aplicaciones',\r\n templateUrl: './aplicaciones.component.html',\r\n styleUrls: ['./aplicaciones.component.css']\r\n})\r\nexport class AplicacionesComponent implements OnInit {\r\n\r\n displayedColumns: string[] = ['Nombre','Acciones'];\r\n\r\n @ViewChild('TablaAreas', {static: false}) paginatorArea: MatPaginator;\r\n @ViewChild('TablaAreaSort', {static: false}) sortSub: MatSort;\r\n\r\n \r\n //Tabla area-aplicacion\r\n @ViewChild('TablaAreaApp', {static: false}) paginatorAreaApp: MatPaginator;\r\n @ViewChild('TablaAreaAppSort', {static: false}) sortAreaApp: MatSort;\r\n\r\n\r\n @ViewChild('TablaAplicacion', {static: false}) paginatorApp: MatPaginator;\r\n @ViewChild('TablaAplicacionSort', {static: false}) sortApp: MatSort;\r\n\r\n dataSource:any;\r\n nombreArea:string;\r\n //Lista de areas\r\n listaAreas:Area[]=[];\r\n listaAreasApp:Area[]=[];\r\n\r\n loadingArea:boolean=false;\r\n\r\n dataSourceApp:any;\r\n listaAplicaciones:Aplicaciones[]=[];\r\n listaAplicacionesSA:Aplicaciones[]=[];\r\n listaAplicacionesData:Aplicaciones[]=[];\r\n\r\n nombreApp:string;\r\n loadingApp:boolean=false;\r\n selectedValueArea:number;\r\n\r\n dataSourceAreaApp:any;\r\n selectedValueApp:number;\r\n loadingGeneral:boolean=false;\r\n loading:boolean=false;\r\n\r\n\r\n constructor(\r\n private dataService: DataService,\r\n public dialog:MatDialog,\r\n private notifier: NotifierService) { \r\n this.dataSource= new MatTableDataSource;\r\n this.dataSourceApp= new MatTableDataSource;\r\n this.dataSourceAreaApp= new MatTableDataSource; \r\n }\r\n\r\n ngOnInit(): void {\r\n this.cargarAreas();\r\n this.cargarAplicaciones();\r\n this.cargarAplicacionesSinArea();\r\n }\r\n\r\n ngAfterViewInit() {\r\n }\r\n\r\n\r\n //Método para cargar las áreas dueñas\r\n cargarAreas()\r\n {\r\n this.dataService.obtenerGruposSistemas().subscribe(\r\n data => {\r\n this.listaAreas = data['data'];\r\n this.listaAreasApp= data['data'];\r\n this.dataSource.data = this.listaAreas;\r\n this.dataSource.paginator=this.paginatorArea;\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n\r\n }\r\n\r\n //Filtro para las areas dueñas\r\n applyFilterArea(filterValue: string) {\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n }\r\n\r\n //Método para agregar las areas \r\n agregarArea()\r\n {\r\n this.loadingArea=true;\r\n this.dataService.insertArea(this.nombreArea).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se agrego correctamente.'\r\n );\r\n this.nombreArea=\"\";\r\n this.cargarAreas();\r\n this.loadingArea=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n this.loadingArea=false;\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar agregar el área. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n //Método para eliminar área dueña\r\n eliminarArea(id:number)\r\n {\r\n \r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{opcion:27},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingArea=true;\r\n this.dataService.deleteArea(id).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.cargarAreas();\r\n this.loadingArea=false;\r\n\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar el área. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n\r\n }\r\n\r\n //Método para editar area\r\n editarArea(id_area:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:id_area,opcion:26,titulo:\"Editar área dueña\",etiqueta:\"Nombre área\"},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingArea=true;\r\n let valores={\r\n 'id_area':id_area,\r\n 'nombre_area':result,\r\n }\r\n this.dataService.updateArea(valores).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se edito correctamente.'\r\n );\r\n this.cargarAreas();\r\n this.loadingArea=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar el área. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n\r\n }\r\n\r\n\r\n /***********************************************************************/\r\n //Método para cargar las aplicaciones\r\n cargarAplicaciones()\r\n {\r\n this.dataService.getListAplicaciones().subscribe(\r\n data => {\r\n this.listaAplicaciones = data['data'];\r\n this.dataSourceApp.data = this.listaAplicaciones;\r\n this.dataSourceApp.paginator=this.paginatorApp;\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n\r\n }\r\n\r\n //Método para filtrar las aplicaciones\r\n applyFilterAplicacion(filterValue: string){\r\n this.dataSourceApp.filter = filterValue.trim().toLowerCase();\r\n\r\n }\r\n\r\n agregarApp()\r\n {\r\n this.loadingApp=true;\r\n this.dataService.insertApp(this.nombreApp).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se agrego correctamente.'\r\n );\r\n this.nombreApp=\"\";\r\n this.cargarAplicaciones();\r\n this.cargarAplicacionesSinArea();\r\n this.loadingApp=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n this.loadingApp=false;\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar agregar la aplicación. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n\r\n //Método para eliminar aplicación\r\n eliminarApp(id:number)\r\n {\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{opcion:27},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingApp=true;\r\n this.dataService.deleteApp(id).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.cargarAplicaciones();\r\n this.loadingApp=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar la aplicación. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n\r\n }\r\n\r\n //Método para editar aplicacion\r\n modificarApp(id:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:id,opcion:28,titulo:\"Editar aplicación\",etiqueta:\"Nombre aplicación\"},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingApp=true;\r\n let valores={\r\n 'id_aplicacion':id,\r\n 'nombre_aplicacion':result,\r\n }\r\n this.dataService.updateAplicacion(valores).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se edito correctamente.'\r\n );\r\n this.cargarAplicaciones();\r\n this.loadingApp=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar el área. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n\r\n }\r\n\r\n\r\n /***********************************************************************/\r\n onChange(idArea: number) \r\n {\r\n this.dataService.getAplicacionesByArea(idArea).subscribe(\r\n data => {\r\n if (data['data']) \r\n {\r\n this.listaAplicacionesData = data['data'];\r\n this.dataSourceAreaApp.data=this.listaAplicacionesData;\r\n this.dataSourceAreaApp.paginator=this.paginatorAreaApp;\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n //Método para cargar las aplicaciones\r\n cargarAplicacionesSinArea()\r\n {\r\n this.dataService.getListAplicacionSinArea().subscribe(\r\n data => {\r\n this.listaAplicacionesSA = data['data'];\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n \r\n }\r\n\r\n //Agregar relación area/aplicacion \r\n AgregarAreaApp(app:number,area:number)\r\n {\r\n \r\n this.loadingGeneral=true;\r\n this.dataService.insertUpdateAreaApp(app,area).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se agrego correctamente.'\r\n );\r\n this.selectedValueApp=null;\r\n this.selectedValueArea=null;\r\n this.onChange(area);\r\n this.loadingGeneral=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n this.loadingGeneral=false;\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar agregar la aplicación. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n\r\n //Modificar relacion area/app\r\n updateAreaApp(app:number,area:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:app,opcion:29,idArea:this.selectedValueArea,titulo:\"Editar Área-Aplicación\",etiqueta:\"Dirección general\"},disableClose:true, width: '600px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneral=true;\r\n this.dataService.insertUpdateAreaApp(app,result).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se edito correctamente.'\r\n );\r\n this.onChange(this.selectedValueArea);\r\n this.loadingGeneral=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n this.loadingGeneral=false;\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar el área. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n });\r\n\r\n }\r\n\r\n //Eliminar relacion area/app\r\n eliminarAreaApp(idApp:number){\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{opcion:27},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneral=true;\r\n this.dataService.deleteAreaApp(idApp).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.onChange(this.selectedValueArea);\r\n this.cargarAplicaciones();\r\n this.loadingGeneral=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar la aplicación. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n\r\n\r\n }\r\n\r\n quitarFiltro(){\r\n this.selectedValueApp=null;\r\n this.selectedValueArea=null;\r\n this.dataSourceAreaApp.data=[];\r\n }\r\n\r\n}\r\n","export default \"\\r\\n\\r\\n.example-container {\\r\\n /*height: 400px;*/\\r\\n overflow: auto;\\r\\n}\\r\\n\\r\\ntable {\\r\\n width: 100%;\\r\\n}\\r\\n\\r\\n.mat-form-field{\\r\\n display: block;\\r\\n position: relative;\\r\\n flex: auto;\\r\\n min-width: 0;\\r\\n width: 500px;\\r\\n}\\r\\n\\r\\n.fa-edit,.fa-history,\\r\\n.fa-check, .fa-check-circle, \\r\\n.fa-clone, .fa-times-circle, .fa-trash, .fa-users, .fa-comments{\\r\\n color: gray; \\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImVzdHJ1Y3R1cmEuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBO0NBQ0MsaUJBQWlCO0VBQ2hCLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxXQUFXO0FBQ2I7O0FBRUE7RUFDRSxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixZQUFZO0VBQ1osWUFBWTtBQUNkOztBQUVBOzs7RUFHRSxXQUFXO0FBQ2IiLCJmaWxlIjoiZXN0cnVjdHVyYS5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcblxyXG4uZXhhbXBsZS1jb250YWluZXIge1xyXG4gLypoZWlnaHQ6IDQwMHB4OyovXHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbnRhYmxlIHtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLm1hdC1mb3JtLWZpZWxke1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBmbGV4OiBhdXRvO1xyXG4gIG1pbi13aWR0aDogMDtcclxuICB3aWR0aDogNTAwcHg7XHJcbn1cclxuXHJcbi5mYS1lZGl0LC5mYS1oaXN0b3J5LFxyXG4uZmEtY2hlY2ssIC5mYS1jaGVjay1jaXJjbGUsIFxyXG4uZmEtY2xvbmUsIC5mYS10aW1lcy1jaXJjbGUsIC5mYS10cmFzaCwgLmZhLXVzZXJzLCAuZmEtY29tbWVudHN7XHJcbiAgY29sb3I6IGdyYXk7IFxyXG59Il19 */\";","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJwb3J0YWwuY29tcG9uZW50LnNjc3MifQ== */\";","import { Component, OnInit,ViewChild,AfterViewInit, ViewChildren } from '@angular/core';\r\nimport {MatAccordion} from '@angular/material/expansion';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\nimport {MatPaginator} from '@angular/material/paginator';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport{ ConfirmListadoIniciativasAdminComponent} from 'src/app/components/shared/confirm-listado-iniciativas-admin/confirm-listado-iniciativas-admin.component';\r\n\r\n\r\n\r\n\r\n//Interface para los catalogos de estructura\r\nexport interface Estructura {\r\n nombre: string;\r\n id:number\r\n}\r\n\r\nexport interface EstructuraSub {\r\n nombre_subsecretariaSap: string;\r\n id_subsecretariaSap:number;\r\n estatus_subsecretariaSap:boolean;\r\n}\r\n\r\nexport interface EstructuraDirGral {\r\n nombre_dirgralSap: string;\r\n id_dirgralSap:number;\r\n estatus_dirgralSap:boolean;\r\n}\r\n\r\nexport interface EstructuraDirArea {\r\n nombre_areaSap: string;\r\n id_areaSap:number;\r\n estatus_areaSap:boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'app-estructura',\r\n templateUrl: './estructura.component.html',\r\n styleUrls: ['./estructura.component.css']\r\n})\r\nexport class EstructuraComponent implements OnInit, AfterViewInit {\r\n selectedValueSub: number;\r\n selectedValueDir: number;\r\n\r\n\r\n @ViewChild(MatAccordion) accordion: MatAccordion;\r\n @ViewChild('TablaSubsecretarias', {static: false}) paginatorSub: MatPaginator;\r\n @ViewChild('TablaSubSort', {static: false}) sortSub: MatSort;\r\n\r\n \r\n @ViewChild('TablaDireccionArea', {static: false}) paginatorDA: MatPaginator;\r\n @ViewChild('TablaDirAreabSort', {static: false}) sortDA: MatSort;\r\n \r\n @ViewChild('TablaDireccionGral', {static: false}) paginatorDG: MatPaginator;\r\n @ViewChild('TablaDirGralbSort', {static: false}) sortDG: MatSort;\r\n\r\n \r\n @ViewChild('TablaSubDirGral', {static: false}) paginatorDGS: MatPaginator;\r\n @ViewChild('TablaSubDirGralSort', {static: false}) sortDGS: MatSort;\r\n\r\n \r\n @ViewChild('TablaDirGralArea', {static: false}) paginatorDGyA: MatPaginator;\r\n @ViewChild('TablaDirGralAreaSort', {static: false}) sortDyGA: MatSort;\r\n\r\n listaSubsecretaria:EstructuraSub[]=[];\r\n displayedColumns: string[] = ['Nombre','Acciones'];\r\n dataSource:any;\r\n nombreSubse:string;\r\n loadingGeneral: boolean = false;\r\n\r\n loadingGeneralSub: boolean = false;\r\n loadingGeneralDirGral: boolean = false;\r\n loadingGeneralDirArea: boolean = false;\r\n\r\n\r\n\r\n\r\n //Direcciones gral\r\n listaDirGral:EstructuraDirGral[]=[];\r\n dataSourceDG:any;\r\n nombreDirGral:string;\r\n\r\n \r\n //Direcciones gral sin subsecretaria\r\n listaDirGralSinSub:EstructuraDirGral[]=[];\r\n listaDirGralSinSubData:EstructuraDirGral[]=[];\r\n dataSourceDGS:any;\r\n\r\n //Dirección de area\r\n listaDirArea:Estructura[]=[];\r\n dataSourceDA:any;\r\n nombreDirArea:string;\r\n longitudDA:number;\r\n\r\n //Subsecretaria-Direccion gral.\r\n listaSubGral:Estructura[]=[];\r\n dataSourceSDG:any;\r\n\r\n //Direccion gral-Area\r\n listaGralArea:Estructura[]=[];\r\n dataSourceDGA:any;\r\n selectedValueDirGral: number;\r\n selectedValueDirArea: number;\r\n\r\n //Direcciones area sin gral.\r\n listaDirAreaSinGral:EstructuraDirArea[]=[];\r\n listaDirAreaSinGralData:EstructuraDirArea[]=[];\r\n\r\n\r\n \r\n constructor(private dataService: DataService,\r\n public dialog:MatDialog,\r\n private notifier: NotifierService) { \r\n\r\n this.dataSourceDA=new MatTableDataSource;\r\n this.dataSource= new MatTableDataSource;\r\n this.dataSourceDG= new MatTableDataSource;\r\n this.dataSourceDGS= new MatTableDataSource;\r\n this.dataSourceDGA= new MatTableDataSource;\r\n }\r\n\r\n ngOnInit(): void { \r\n this.cargarSubsecretarias();\r\n this.cargarDireccionArea();\r\n this.cargarDireccionGral();\r\n this.cargarDireccionGralSinSub();\r\n this.cargarDireccionAreaSinGral();\r\n }\r\n\r\n ngAfterViewInit() {\r\n }\r\n\r\n onChangeSubse(idSubsecretaria: number) \r\n {\r\n this.selectedValueSub = idSubsecretaria;\r\n this.dataService.getDirGralBySubsecretaria(idSubsecretaria).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.listaDirGralSinSubData = data['data'];\r\n this.dataSourceDGS.data=this.listaDirGralSinSubData;\r\n this.dataSourceDGS.paginator=this.paginatorDGS;\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n //Método para agregar subsecretaria con dir gral.\r\n AgregarSubDirGral(id_subsecretaria:number, id_dirgral:number)\r\n {\r\n this.loadingGeneral=true;\r\n this.dataService.insertUpdateSubsDirGral(id_dirgral,id_subsecretaria).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se agrego correctamente.'\r\n );\r\n this.onChangeSubse(id_subsecretaria);\r\n this.loadingGeneral=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n this.loadingGeneral=false;\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar agregar la subsecretaria. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n //Eliminar subsecretaria con dir. gral\r\n eliminarSubDirGral(idDirGral:number)\r\n {\r\n \r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:idDirGral,opcion:21},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneral=true;\r\n this.dataService.deleteSubsDirGral(idDirGral).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.onChangeSubse(this.selectedValueSub);\r\n this.loadingGeneral=false;\r\n\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar la subsecretaria. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n\r\n }\r\n\r\n //Método para modificar la relacion subsecretaria-dir.gral\r\n updateSubDirGral(id_dirgral:number)\r\n {\r\n let id_subsecretaria=this.selectedValueSub;\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:id_dirgral,opcion:23,idSubsecretaria:this.selectedValueSub,titulo:\"Editar Subsecretaria-Dirección Gral.\",etiqueta:\"Dirección general\"},disableClose:true, width: '600px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneral=true;\r\n this.dataService.insertUpdateSubsDirGral(id_dirgral,result).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se edito correctamente.'\r\n );\r\n this.onChangeSubse(this.selectedValueSub);\r\n this.loadingGeneral=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n this.loadingGeneral=false;\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar la dirección gral. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n });\r\n\r\n\r\n }\r\n\r\n\r\n\r\n \r\n //Método para cargar la direccion gral. sin subsecretarias\r\n cargarDireccionAreaSinGral()\r\n {\r\n this.dataService.getListDireccionAreaSinGral().subscribe(\r\n data => {\r\n this.listaDirAreaSinGral = data['data'];\r\n //this.dataSourceDGS.data=this.listaDirGralSinSub;\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Método para cargar las direcciones de area\r\n onChangeDirGral(idDirGral: number) \r\n {\r\n this.selectedValueDirGral = idDirGral;\r\n this.dataService.getDirAreaByGral(idDirGral).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.listaDirAreaSinGralData = data['data'];\r\n this.dataSourceDGA.data=this.listaDirAreaSinGralData;\r\n this.dataSourceDGA.paginator=this.paginatorDGyA;\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n\r\n //Método para agregar subsecretaria con dir gral.\r\n AgregarDirGralArea(id_dirGral:number, id_dirArea:number)\r\n {\r\n this.loadingGeneral=true;\r\n this.dataService.insertUpdateDirGralArea(id_dirGral,id_dirArea).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se agrego correctamente.'\r\n );\r\n this.onChangeDirGral(id_dirGral);\r\n this.loadingGeneral=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n this.loadingGeneral=false;\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar agregar la dirección de área. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n\r\n \r\n //Eliminar subsecretaria con dir. gral\r\n eliminarDirGralArea(idDirArea:number)\r\n {\r\n \r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:idDirArea,opcion:21},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneral=true;\r\n this.dataService.deleteDirGralArea(idDirArea).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.onChangeDirGral(this.selectedValueDirGral);\r\n this.loadingGeneral=false;\r\n\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar la subsecretaria. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n\r\n }\r\n\r\n //Método para modificar la relacion subsecretaria-dir.gral\r\n updateDirGralArea(id_dirArea:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:id_dirArea,opcion:24,idDirGral:this.selectedValueDirGral,titulo:\"Editar Dirección General-Dirección de área\",etiqueta:\"Dirección general\"},disableClose:true, width: '600px'});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneral=true;\r\n this.dataService.insertUpdateDirGralArea(result, id_dirArea).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se edito correctamente.'\r\n );\r\n this.onChangeDirGral(this.selectedValueDirGral);\r\n this.loadingGeneral=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n this.loadingGeneral=false;\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar la dirección gral. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n });\r\n\r\n\r\n }\r\n \r\n //Filtro para las subsecretarias\r\n applyFilterSubsecretaria(filterValue: string) {\r\n this.dataSource.filter = filterValue.trim().toLowerCase();\r\n }\r\n\r\n //Método para cargar las subsecretarias\r\n cargarSubsecretarias()\r\n {\r\n \r\n this.dataService.getListSubsecretarias().subscribe(\r\n data => {\r\n this.listaSubsecretaria = data['data'];\r\n this.dataSource.data = this.listaSubsecretaria;\r\n this.dataSource.paginator=this.paginatorSub;\r\n \r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n AgregarSubsecretaria(nombre:string)\r\n {\r\n this.loadingGeneralSub=true;\r\n this.dataService.addSubsecretaria(nombre).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se agrego correctamente.'\r\n );\r\n this.nombreSubse=\"\";\r\n this.cargarSubsecretarias();\r\n this.loadingGeneralSub=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar agregar la subsecretaria. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n eliminarSubsecretaria(id:number)\r\n {\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:id,opcion:18},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneralSub=true;\r\n this.dataService.deleteSubsecretaria(id).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.cargarSubsecretarias();\r\n this.loadingGeneralSub=false;\r\n\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar la subsecretaria. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n \r\n }\r\n\r\n modificarSubsecretaria(id:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:id,opcion:19,titulo:\"Editar subsecretaria\",etiqueta:\"Subsecretaria\"},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneralSub=true;\r\n this.dataService.updateSubsecretaria(id,result).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se edito correctamente.'\r\n );\r\n this.cargarSubsecretarias();\r\n this.loadingGeneralSub=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar la subsecretaria. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n \r\n }\r\n\r\n //------------Direcciones gral-----------------------\r\n\r\n //Filtro para las subsecretarias\r\n applyFilterDirGral(filterValue: string) {\r\n this.dataSourceDG.filter = filterValue.trim().toLowerCase();\r\n }\r\n \r\n //Método para cargar las subsecretarias\r\n cargarDireccionGral()\r\n {\r\n this.dataService.getListDireccionesGral().subscribe(\r\n data => {\r\n this.listaDirGral = data['data'];\r\n this.dataSourceDG.data = this.listaDirGral;\r\n this.dataSourceDG.paginator=this.paginatorDG;\r\n // this.dataSourceDG.setAttribute(\"paginatorDG\",this.dataSourceDG.paginator);\r\n //this.dataSourceDG.paginator = this.paginatorDG;\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n //Método para cargar la direccion gral. sin subsecretarias\r\n cargarDireccionGralSinSub()\r\n {\r\n this.dataService.getListDireccionesGralSinSub().subscribe(\r\n data => {\r\n this.listaDirGralSinSub = data['data'];\r\n //this.dataSourceDGS.data=this.listaDirGralSinSub;\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n\r\n\r\n //Método para editar la direccion gral.\r\n modificarDirGral(id:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:id,opcion:20,titulo:\"Editar dirección Gral.\",etiqueta:\"Dirección General\"},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneralDirGral=true;\r\n this.dataService.updateDireccionGral(id,result).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se edito correctamente.'\r\n );\r\n this.cargarDireccionGral();\r\n this.loadingGeneralDirGral=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar la dirección gral. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n \r\n }\r\n\r\n eliminarDirGral(id:number)\r\n {\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:id,opcion:21},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneralDirGral=true;\r\n this.dataService.deleteDirGral(id).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.cargarDireccionGral();\r\n this.loadingGeneralDirGral=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar la dirección gral. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n \r\n }\r\n\r\n\r\n //Método para agregar direcciones generales\r\n AgregarDirGral(nombre:string){\r\n this.loadingGeneralDirGral=true;\r\n this.dataService.addDireccionGral(nombre).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se agrego correctamente.'\r\n );\r\n this.nombreDirGral=\"\";\r\n this.cargarDireccionGral();\r\n this.loadingGeneralDirGral=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar agregar la dirección gral. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n\r\n }\r\n\r\n //-------Dirección de área-------------------\r\n\r\n //Filtro para la direccion de area\r\n applyFilterDirArea(filterValue: string) {\r\n this.dataSourceDA.filter = filterValue.trim().toLowerCase();\r\n }\r\n\r\n //Método para cargar las direcciones de área\r\n cargarDireccionArea()\r\n {\r\n this.dataService.getListDireccionesArea().subscribe(\r\n data => {\r\n this.listaDirArea = data['data'];\r\n this.dataSourceDA.data =this.listaDirArea;\r\n this.dataSourceDA.paginator=this.paginatorDA;\r\n\r\n },\r\n error => {\r\n console.error(error); \r\n }\r\n );\r\n }\r\n \r\n\r\n//Método para modificar la dirección de area\r\n modificarDirArea(id:number)\r\n {\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:id,opcion:22,titulo:\"Editar Dirección de área\",etiqueta:\"Dirección de área\"},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneralDirArea=true;\r\n this.dataService.updateDireccionArea(id,result).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se edito correctamente.'\r\n );\r\n this.cargarDireccionArea();\r\n this.loadingGeneralDirArea=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar editar la dirección de área. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n \r\n }\r\n\r\n \r\n eliminarDirArea(id:number)\r\n {\r\n //Mostramos la ventana de confirmación\r\n let dialogRef = this.dialog.open(ConfirmListadoIniciativasAdminComponent,{data:{id:id,opcion:21},disableClose:true});\r\n dialogRef.afterClosed().subscribe(result => {\r\n if(result==false)\r\n {\r\n }\r\n else{\r\n this.loadingGeneralDirArea=true;\r\n this.dataService.deleteDirArea(id).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se elimino correctamente.'\r\n );\r\n this.cargarDireccionArea();\r\n this.loadingGeneralDirArea=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar eliminar la dirección de área. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n }\r\n }); \r\n \r\n }\r\n\r\n\r\n //Método para agregar direccion de area\r\n AgregarDirArea(nombre:string){\r\n this.loadingGeneralDirArea=true;\r\n this.dataService.addDireccionArea(nombre).subscribe(\r\n data => {\r\n if (data['objData']) \r\n {\r\n this.notifier.notify(\r\n 'success',\r\n 'Se agrego correctamente.'\r\n );\r\n this.nombreDirArea=\"\";\r\n this.cargarDireccionArea();\r\n this.loadingGeneralDirArea=false;\r\n }\r\n else{\r\n this.notifier.notify('error',data['errorMessage']);\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar agregar la dirección de area. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n\r\n\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { LoginComponent } from './pages/login/login.component';\r\nimport { PortalComponent } from './pages/portal/portal.component';\r\nimport { MisIniciativasComponent } from './pages/mis-iniciativas/mis-iniciativas.component';\r\nimport { AdministracionComponent } from './pages/administracion/administracion.component';\r\nimport { AuthGuard } from './services/auth.guard';\r\nimport { LiderProyectoComponent } from './pages/lider-proyecto/lider-proyecto.component';\r\nimport { ModalUsuarioComponent} from './components/modal-usuario/modal-usuario.component';\r\nimport { ControlUsuariosComponent } from './components/administracion/control-usuarios/control-usuarios.component';\r\nimport { ModalUsuarioEdicionComponent } from './components/modal-usuario-edicion/modal-usuario-edicion.component';\r\nimport { CosteoProcesoComponent } from './components/costeo-proceso/costeo-proceso.component';\r\nimport {NuevoSistemaComponent} from './components/nuevo-sistema/nuevo-sistema.component';\r\nimport {CambiosFuncionalidadesComponent} from './components/cambios-funcionalidades/cambios-funcionalidades.component';\r\nimport {ModalConsultaIniciativaComponent} from './components/modal-consulta-iniciativa/modal-consulta-iniciativa.component';\r\nimport { SeleccionRolComponent } from './pages/seleccion-rol/seleccion-rol.component';\r\nimport { TablaIniciativasComponent } from 'src/app/components/administracion/tabla-iniciativas/tabla-iniciativas.component'\r\nimport {ModalPriorizacionComponent} from 'src/app/components/modal-priorizacion/modal-priorizacion.component'\r\nimport {EquipoTrabajoComponent} from 'src/app/components/equipo-trabajo/equipo-trabajo.component'\r\nimport {ReportesComponent} from './components/administracion/reportes/reportes.component';\r\n\r\n\r\n\r\nconst routes: Routes = [\r\n {path: 'login', component: LoginComponent},\r\n {path: 'portal', component: PortalComponent, canActivate: [AuthGuard]},\r\n {path: 'mis-iniciativas', component: MisIniciativasComponent, canActivate: [AuthGuard]},\r\n {path: 'iniciativas', component: TablaIniciativasComponent, canActivate: [AuthGuard]},\r\n {path: 'iniciativas-priorizacion', component: ModalPriorizacionComponent},\r\n {path: 'seleccion-rol', component: SeleccionRolComponent},\r\n\r\n {path: 'administracion', component: AdministracionComponent, canActivate: [AuthGuard]},\r\n {path: 'lider-proyecto', component: LiderProyectoComponent, canActivate: [AuthGuard]},\r\n {path: 'add-usuario', component: ModalUsuarioComponent, canActivate: [AuthGuard]},\r\n {path: 'update-usuario/:email_usuario', component: ModalUsuarioEdicionComponent, canActivate: [AuthGuard]},\r\n {path: 'control-usuarios', component: ControlUsuariosComponent},\r\n {path: 'costeo', component: CosteoProcesoComponent, canActivate: [AuthGuard]},\r\n {path: 'nuevo-sistema', component: NuevoSistemaComponent, canActivate: [AuthGuard]},\r\n {path: 'consulta-iniciativa', component: ModalConsultaIniciativaComponent, canActivate: [AuthGuard]},\r\n {path: 'equipo-trabajo', component: EquipoTrabajoComponent, canActivate: [AuthGuard]},\r\n {path: 'cambios-funcionalidades', component:CambiosFuncionalidadesComponent, canActivate: [AuthGuard]},\r\n {path: 'reportes', component: ReportesComponent, canActivate: [AuthGuard]},\r\n {path: '', pathMatch: 'full', redirectTo: 'login'},\r\n {path: '**', pathMatch: 'full', redirectTo: 'login'},\r\n \r\n\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, { useHash: true, relativeLinkResolution: 'legacy' })],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","export default \"#modalBuscar {\\n background: none;\\n}\\n#modalBuscar div {\\n background: none;\\n border: none;\\n}\\n#modalBuscar input {\\n border: none;\\n border-bottom: 1px solid 159bc;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcLi5cXC4uXFxtb2RhbC1idXNxdWVkYS5jb21wb25lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNJLGdCQUFBO0FBQ0o7QUFDSTtFQUNJLGdCQUFBO0VBQ0EsWUFBQTtBQUNSO0FBRUk7RUFDSSxZQUFBO0VBQ0EsOEJBQUE7QUFBUiIsImZpbGUiOiJtb2RhbC1idXNxdWVkYS5jb21wb25lbnQuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIiNtb2RhbEJ1c2NhcntcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblxyXG4gICAgZGl2e1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0e1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgMDE1OWJjO1xyXG4gICAgfVxyXG59Il19 */\";","export default \"\\r\\n \\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJlbmxhY2VzLmNvbXBvbmVudC5jc3MifQ== */\";","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzZWxlY2Npb24tcm9sLmNvbXBvbmVudC5jc3MifQ== */\";","export default \".support-form {\\r\\n width: 100%;\\r\\n max-width: 800px;\\r\\n margin: 0 auto;\\r\\n font-family: Arial, sans-serif;\\r\\n}\\r\\n\\r\\nh2 {\\r\\n text-align: center;\\r\\n color: #000000;\\r\\n margin-bottom: 20px;\\r\\n}\\r\\n\\r\\n.form-section {\\r\\n display: flex;\\r\\n align-items: center;\\r\\n margin-bottom: 15px;\\r\\n}\\r\\n\\r\\n.form-label {\\r\\n flex: 1;\\r\\n text-align: right;\\r\\n margin-right: 15px;\\r\\n font-weight: bold;\\r\\n}\\r\\n\\r\\n.form-actions {\\r\\n display: flex;\\r\\n flex: 3;\\r\\n align-items: center;\\r\\n}\\r\\n\\r\\n.file-text {\\r\\n width: 200px;\\r\\n padding: 5px;\\r\\n border: 1px solid #ccc;\\r\\n border-radius: 4px;\\r\\n margin-right: 5px;\\r\\n}\\r\\n\\r\\n.explore-button,\\r\\n.save-button,\\r\\n.cancel-button {\\r\\n padding: 8px 15px;\\r\\n border: none;\\r\\n border-radius: 4px;\\r\\n cursor: pointer;\\r\\n margin-right: 5px;\\r\\n}\\r\\n\\r\\n.explore-button {\\r\\n background-color: #eee;\\r\\n color: #333;\\r\\n}\\r\\n\\r\\n.save-button {\\r\\n background-color: #28a745;\\r\\n color: white;\\r\\n}\\r\\n\\r\\n.cancel-button {\\r\\n background-color: #dc3545;\\r\\n color: white;\\r\\n}\\r\\n\\r\\n.save-button i,\\r\\n.cancel-button i {\\r\\n margin-right: 5px;\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZvcm1hdG9zLmNvbXBvbmVudC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7RUFDRSxXQUFXO0VBQ1gsZ0JBQWdCO0VBQ2hCLGNBQWM7RUFDZCw4QkFBOEI7QUFDaEM7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYztFQUNkLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsT0FBTztFQUNQLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsYUFBYTtFQUNiLE9BQU87RUFDUCxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osWUFBWTtFQUNaLHNCQUFzQjtFQUN0QixrQkFBa0I7RUFDbEIsaUJBQWlCO0FBQ25COztBQUVBOzs7RUFHRSxpQkFBaUI7RUFDakIsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0Usc0JBQXNCO0VBQ3RCLFdBQVc7QUFDYjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixZQUFZO0FBQ2Q7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsWUFBWTtBQUNkOztBQUVBOztFQUVFLGlCQUFpQjtBQUNuQiIsImZpbGUiOiJmb3JtYXRvcy5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLnN1cHBvcnQtZm9ybSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiA4MDBweDtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbmgyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY29sb3I6ICMwMDAwMDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLmZvcm0tc2VjdGlvbiB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuXHJcbi5mb3JtLWxhYmVsIHtcclxuICBmbGV4OiAxO1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gIG1hcmdpbi1yaWdodDogMTVweDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLmZvcm0tYWN0aW9ucyB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4OiAzO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5maWxlLXRleHQge1xyXG4gIHdpZHRoOiAyMDBweDtcclxuICBwYWRkaW5nOiA1cHg7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcclxuICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbn1cclxuXHJcbi5leHBsb3JlLWJ1dHRvbixcclxuLnNhdmUtYnV0dG9uLFxyXG4uY2FuY2VsLWJ1dHRvbiB7XHJcbiAgcGFkZGluZzogOHB4IDE1cHg7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbn1cclxuXHJcbi5leHBsb3JlLWJ1dHRvbiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuICBjb2xvcjogIzMzMztcclxufVxyXG5cclxuLnNhdmUtYnV0dG9uIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1O1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmNhbmNlbC1idXR0b24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNkYzM1NDU7XHJcbiAgY29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4uc2F2ZS1idXR0b24gaSxcclxuLmNhbmNlbC1idXR0b24gaSB7XHJcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbn1cclxuIl19 */\";","import { Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators, AbstractControl } from '@angular/forms';\r\nimport { NotifierService } from 'angular-notifier';\r\nimport { Estatus, UsuarioAutorizado, Impactos } from 'src/app/interfaces/interfaces';\r\nimport { AuthService } from 'src/app/services/auth.service';\r\nimport { DataService } from 'src/app/services/data.service';\r\nimport { MatDialog} from '@angular/material/dialog';\r\nimport { almenosUnImpactoValidator } from 'src/app/validators/validadores.validator';\r\nimport { ModalCosteoConsultaComponent } from 'src/app/components/modal-costeo-consulta/modal-costeo-consulta.component';\r\n\r\n\r\nimport { IniciativaDetalle } from '../../models/iniciativa';\r\n@Component({\r\n selector: 'app-modal-iniciativa',\r\n templateUrl: './modal-iniciativa.component.html',\r\n styleUrls: ['./modal-iniciativa.component.scss']\r\n})\r\nexport class ModalIniciativaComponent implements OnInit {\r\n @Input() iniciativa: any;\r\n arrayImpactosConsulta: Impactos[]=[];\r\n\r\n @Input() modalAdministrador: boolean;\r\n @Input() modalLider: boolean;\r\n @Output() tablaIniciativas: EventEmitter;\r\n \r\n emailUsuario: string;\r\n VIP: boolean = false;\r\n editando: boolean;\r\n periodoEnvio: boolean;\r\n // forms para procesos posibles\r\n formEditar: FormGroup;\r\n formCancelacion: FormGroup;\r\n // Lista de estatus para flujo despues de aceptar una iniciativa\r\n estatusFlujo: Estatus[];\r\n // Motivos\r\n motivosCancelacion: Estatus[];\r\n motivosRechazo: Estatus[];\r\n motivosSuspencion: Estatus[];\r\n // Visivilidad de los uploadings de los archivos\r\n subiendoProcesoActual = false;\r\n subiendoProcesoPropuesto = false;\r\n subiendoCosteo = false;\r\n subiendoOtrosArchivos = false;\r\n procesoActualError = false;\r\n procesoPropuestoError = false;\r\n costeoError = false;\r\n otrosArchivosError = false;\r\n // Asignacion de lideres\r\n listaLideres: UsuarioAutorizado[] = [];\r\n // Valores de los input Files\r\n @ViewChild('procesoActual')\r\n procesoActualInput: ElementRef;\r\n @ViewChild('procesoPropuesto')\r\n procesoPropuestoInput: ElementRef;\r\n @ViewChild('costeo')\r\n costeoInput: ElementRef;\r\n @ViewChild('otrosArchivos')\r\n otrosArchivosInput: ElementRef;\r\n @ViewChild('procesoActualLabel')\r\n procesoActualLabel: ElementRef;\r\n @ViewChild('procesoPropuestolLabel')\r\n procesoPropuestolLabel: ElementRef;\r\n @ViewChild('costeoLabel')\r\n costeoLabel: ElementRef;\r\n @ViewChild('otrosArchivosLabel')\r\n otrosArchivolLabel: ElementRef;\r\n @ViewChild('botonCerrarModal')\r\n botonCerrarModal: ElementRef;\r\n // Mensajes de errores para la subida de archivos\r\n procesoActualErrorMsg: string;\r\n procesoPropuestoErrorMsg: string;\r\n costeoErrorMsg: string;\r\n otrosArchivosErrorMsg: string;\r\n // Limite para campo fecha\r\n fechaActual: number;\r\n nombreArchivoPA:string;\r\n nombreArchivoPP:string;\r\n nombreArchivoAN:string;\r\n mostrarFormConsultar:boolean=false;\r\n\r\n \r\n\r\n get fc() {\r\n return this.formEditar.controls;\r\n }\r\n\r\n get fcc() {\r\n return this.formCancelacion;\r\n }\r\n\r\n constructor(private dataService: DataService,public dialog:MatDialog,\r\n private notifier: NotifierService,\r\n private authService: AuthService) {\r\n this.fechaActual = Date.now();\r\n this.tablaIniciativas = new EventEmitter();\r\n this.editando = false;\r\n this.periodoEnvio = true;\r\n this.authService.user.subscribe(user => {\r\n this.emailUsuario = user;\r\n });\r\n this.authService.isVIP.asObservable().subscribe((res) => {\r\n this.VIP = res;\r\n });\r\n //this.periodoEnvio = this.dataService.esPeriodoEnvios();\r\n }\r\n\r\n ngOnInit() \r\n {\r\n /*this.dataService.obtenerMotivosCancelacion().subscribe(res => {\r\n this.motivosCancelacion = res['data'];\r\n }, error => {\r\n console.error(error);\r\n });\r\n\r\n this.dataService.obtenerMotivosRechazo().subscribe(res => {\r\n this.motivosRechazo = res['data'];\r\n }, error => {\r\n console.error(error);\r\n });\r\n\r\n this.dataService.obtenerMotivosSuspencion().subscribe(res => {\r\n this.motivosSuspencion = res['data'];\r\n });*/\r\n\r\n this.formEditar = new FormGroup({\r\n idIniciativa: new FormControl(''),\r\n cuenta: new FormControl(this.emailUsuario),\r\n nombreSistema: new FormControl('', [Validators.required]),\r\n problematica: new FormControl('', [Validators.required]),\r\n NombreCambioCorreccion: new FormControl('', [Validators.required]),\r\n fechaTermino: new FormControl('', [Validators.required]),\r\n justificacion: new FormControl('', [Validators.required]),\r\n solucion: new FormControl('', [Validators.required]),\r\n beneficiariosDirectos: new FormControl('', [Validators.required]),\r\n beneficiariosImplementacion: new FormControl('', [Validators.required]),\r\n procesoActual: new FormControl('', [Validators.required]),\r\n procesoPropuesto: new FormControl('', [Validators.required]),\r\n costeo: new FormControl('', [Validators.required]),\r\n otrosArchivos: new FormControl(''),\r\n impactos: new FormGroup({\r\n contribucionProgGobierno: new FormControl(''),\r\n contribucionProgOperativo: new FormControl(''),\r\n impactoProcesos: new FormControl(''),\r\n mejoraServicio: new FormControl(''),\r\n cumplimientoLey: new FormControl(''),\r\n contribucionModernizacion: new FormControl('')\r\n }, almenosUnImpactoValidator())\r\n });\r\n\r\n this.formCancelacion = new FormGroup({\r\n idIniciativa: new FormControl(''),\r\n cuenta: new FormControl(''),\r\n idEstatusPadre: new FormControl(''),\r\n idEstatusHijos: new FormControl('', [Validators.required]),\r\n observaciones: new FormControl('', [Validators.required]),\r\n });\r\n }\r\n\r\n\r\n modalCerrado() {\r\n this.editando = false;\r\n this.formCancelacion.reset();\r\n this.formEditar.reset();\r\n }\r\n\r\n cancelar(){}\r\n\r\n descargarArchivo(archivo:string)\r\n {\r\n this.dataService.descargarArchivo(parseInt(this.iniciativa.id_iniciativa),archivo).subscribe(res => {\r\n // Este es necesario para crear un objeto blob con el tipo de archivo\r\n // puesto explicitamente, de lo contrario solo Chrome funcionara correctamente\r\n let newBlob = new Blob([res], { type: this.obtenerTipoArchivo(archivo) });\r\n // IE no permite objetos blob directamente en el atributo href de un link\r\n // en su lugar hay que usar msSaveOrOpenBlob\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(newBlob);\r\n return;\r\n }\r\n const data = window.URL.createObjectURL(newBlob);\r\n let link = document.createElement('a');\r\n link.href = data;\r\n link.download = archivo.substring(36);\r\n // Esta linea es necesaria desde que link.click() ya no funciona en las ultimas versiones de firefox\r\n link.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));\r\n\r\n setTimeout(function () {\r\n // Para Firefox es necesario retrasar la revocacion del objeto ObjectURL\r\n window.URL.revokeObjectURL(data);\r\n link.remove();\r\n }, 100);\r\n\r\n });\r\n\r\n }\r\n\r\n private obtenerTipoArchivo(archivo: string): string {\r\n let tipoArchivo: string;\r\n let extencion: string = archivo.split('.').pop();\r\n\r\n switch (extencion) {\r\n case 'pdf':\r\n tipoArchivo = 'application/pdf';\r\n break;\r\n case 'xls':\r\n tipoArchivo = 'application/vnd.ms-excel';\r\n break;\r\n case 'xlsx':\r\n tipoArchivo = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';\r\n break;\r\n case 'csv':\r\n tipoArchivo = 'application/csv';\r\n break;\r\n case 'zip':\r\n tipoArchivo = 'application/zip';\r\n break;\r\n case 'rar':\r\n tipoArchivo = 'application/x-rar-compressed';\r\n break;\r\n\r\n default:\r\n tipoArchivo = 'text/plain';\r\n break;\r\n }\r\n return tipoArchivo;\r\n }\r\n\r\n //Abrir modal para agregar los procedimientos del proceso ASIS\r\n abrirModalCosteoConsulta()\r\n { \r\n \r\n const dialogRef = this.dialog.open(ModalCosteoConsultaComponent,{data:{id_iniciativa:this.iniciativa.id_iniciativa,id_proceso:this.iniciativa.idProceso},disableClose:false, height: '580px',\r\n width: '800px'});\r\n dialogRef.afterClosed().subscribe(data => {\r\n if(data==false)\r\n {\r\n }\r\n else{\r\n }//Cerrar el else\r\n //Cerrar ventana modal\r\n });\r\n}\r\n\r\n}\r\n","import { Component, OnInit,Input } from '@angular/core';\r\nimport { FormGroup,FormControl,Validators} from '@angular/forms';\r\nimport { almenosUnTipoUsuarioValidator } from 'src/app/validators/validadores.validator'\r\n\r\n\r\n@Component({\r\n selector: 'app-add-usuarios',\r\n templateUrl: './add-usuarios.component.html',\r\n styleUrls: ['./add-usuarios.component.scss']\r\n})\r\nexport class AddUsuariosComponent implements OnInit {\r\n\r\n @Input() opcionesSeleccionada: number;\r\n nuevoUsuario: FormGroup;\r\n tiposUsuario:string[];\r\n tipoUsuario:string[]=['Solicitante Proyectos','Solicitante cambios',\r\n 'Administrador Desarrollo', 'Administrador análisis',\r\n 'Análista Sr','Análista Jr','Líder de Proyecto','Mesa servicio']\r\n /*Checks para los tipos de usuarios */\r\n usSolicitanteProyecto = false;\r\n usSolicitanteCambios = false;\r\n usAdministradorDesarrollo = false;\r\n usAdministradorAnalisis = false;\r\n usAnalistaSr = false;\r\n usAnalistaJr = false;\r\n usLiderProyecto = false;\r\n usMesaServicio= false;\r\n\r\n constructor() { }\r\n\r\n ngOnInit() \r\n {\r\n //Creamos el modelo del nuevo usuario\r\n this.nuevoUsuario= new FormGroup({\r\n usuario_cuenta:new FormControl('',[Validators.required, Validators.email]),\r\n //usuario_idtipoUsuario: new FormControl((this.opcionesSeleccionada)),\r\n usuario_nombre:new FormControl('',[Validators.required]),\r\n usuario_puesto:new FormControl('',[Validators.required]),\r\n usuario_dependencia:new FormControl('',[Validators.required]),\r\n usuario_direccionArea:new FormControl('',[Validators.required]),\r\n tiposUsuario: new FormGroup(\r\n {\r\n 1: new FormControl(''),\r\n 2: new FormControl(''),\r\n 3: new FormControl(''),\r\n 4: new FormControl(''),\r\n 5: new FormControl(''),\r\n 6: new FormControl(''),\r\n 7: new FormControl(''),\r\n 8: new FormControl(''),\r\n\r\n },\r\n almenosUnTipoUsuarioValidator()\r\n \r\n )\r\n });\r\n }\r\n\r\n get f() { return this.nuevoUsuario.controls; }\r\n\r\n\r\n onSubmit() \r\n {\r\n if (this.nuevoUsuario.invalid) \r\n {\r\n return;\r\n }\r\n else{\r\n\r\n }\r\n \r\n \r\n }\r\n\r\n\r\n\r\n //limpiar impactos\r\n limpiarCampoTipoUsuarios(tipoU: number) {\r\n switch (tipoU) {\r\n case 1:\r\n this.nuevoUsuario.get('tiposUsuario.1').reset();\r\n break; \r\n case 2:\r\n this.nuevoUsuario.get('tiposUsuario.2').reset();\r\n break; \r\n case 3:\r\n this.nuevoUsuario.get('tiposUsuario.3').reset();\r\n break; \r\n case 4:\r\n this.nuevoUsuario.get('tiposUsuario.4').reset();\r\n break; \r\n case 5:\r\n this.nuevoUsuario.get('tiposUsuario.5').reset();\r\n break;\r\n case 6:\r\n this.nuevoUsuario.get('tiposUsuario.6').reset();\r\n break; \r\n case 7:\r\n this.nuevoUsuario.get('tiposUsuario.7').reset();\r\n break;\r\n case 8:\r\n this.nuevoUsuario.get('tiposUsuario.8').reset();\r\n break;\r\n }\r\n }\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n Input,\r\n ViewChild,\r\n ElementRef,\r\n Output,\r\n EventEmitter,\r\n NgZone\r\n} from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { DataService } from '../../services/data.service';\r\nimport { Aplicativos, GrupoAplicativo } from '../../interfaces/interfaces';\r\nimport bsCustomFileInput from 'bs-custom-file-input';\r\nimport { Router } from '@angular/router';\r\nimport { NotifierService } from 'angular-notifier';\r\n\r\n@Component({\r\n selector: 'app-correccion-funcionalidades',\r\n templateUrl: './correccion-funcionalidades.component.html',\r\n styleUrls: ['./correccion-funcionalidades.component.scss']\r\n})\r\nexport class CorreccionFuncionalidadesComponent implements OnInit {\r\n // Usuario Autenticado\r\n @Input() emailUser: string;\r\n @Input() nombreUser: string;\r\n // Acceso a controles de Input Files\r\n @ViewChild('otrosArchivos', { static: true })\r\n otrosArchivosInput: ElementRef;\r\n // Objeto form\r\n correccionFormDatos: FormGroup;\r\n // Tipos de aplicativo y grupos de aplicativos\r\n gruposAplicativos: GrupoAplicativo[];\r\n tiposAplicativos: Aplicativos[];\r\n idGrupoSeleccionado: number;\r\n idAplicativoSeleccionado: number;\r\n // Visivilidad de los uploadings de los archivos\r\n subiendoOtrosArchivos = false;\r\n otrosArchivosError = false;\r\n // Limite fecha actual\r\n fechaActual: number;\r\n\r\n constructor(\r\n private dataService: DataService,\r\n private zone: NgZone,\r\n private router: Router,\r\n private notifier: NotifierService\r\n ) {\r\n // Obtener los aplicativos\r\n this.dataService.obtenerGruposSistemas().subscribe(data => {\r\n this.gruposAplicativos = data['data'];\r\n });\r\n // establecer fecha actual\r\n this.fechaActual = Date.now();\r\n }\r\n\r\n ngOnInit() {\r\n // Activar el FileChooser de bootstrap\r\n bsCustomFileInput.init();\r\n // Crear form\r\n this.correccionFormDatos = new FormGroup({\r\n nombreSistema: new FormControl(''),\r\n fechaTermino: new FormControl('', [Validators.required]),\r\n nombreSolicitante: new FormControl('', [Validators.required]),\r\n telefono: new FormControl('', [\r\n Validators.maxLength(10),\r\n Validators.required\r\n ]),\r\n extension: new FormControl('', [Validators.maxLength(5)]),\r\n justificacion: new FormControl('', [Validators.required]),\r\n problematica: new FormControl('', [Validators.required]),\r\n impactos: new FormGroup({}),\r\n solucion: new FormControl(''),\r\n beneficiariosDirectos: new FormControl(''),\r\n beneficiariosImplementacion: new FormControl(''),\r\n procesoActual: new FormControl(''),\r\n procesoPropuesto: new FormControl(''),\r\n costeo: new FormControl(''),\r\n otrosArchivos: new FormControl(''),\r\n tipoIniciativa: new FormControl('3'),\r\n usuarioRegistro: new FormControl(this.emailUser),\r\n nombreCapturista: new FormControl(this.nombreUser),\r\n aplicativosIdAplicativo: new FormControl('', [Validators.required]),\r\n correoSolicitante: new FormControl('', [Validators.required, Validators.email]),\r\n nombreCambioCorreccion: new FormControl('', [Validators.required])\r\n });\r\n }\r\n\r\n get fc() {\r\n return this.correccionFormDatos.controls;\r\n }\r\n get f() {\r\n return this.correccionFormDatos;\r\n }\r\n\r\n onSubmit() {\r\n this.dataService\r\n .correccionFuncionalidades(this.correccionFormDatos.value)\r\n .subscribe(\r\n data => {\r\n if (data['idIniciativa']) {\r\n this.notifier.notify(\r\n 'success',\r\n 'Nueva iniciativa para corrección de funcionalidades registrada correctamente'\r\n );\r\n this.zone.run(() => this.router.navigate(['/mis-iniciativas']));\r\n }\r\n },\r\n error => {\r\n console.error(error);\r\n this.notifier.notify(\r\n 'error',\r\n 'Ha ocurrido un error al intentar registrar la iniciativa. Verifique su conexión de red o contacte al administrador.'\r\n );\r\n }\r\n );\r\n }\r\n\r\n onFileChange(event: any) {\r\n if (event.target.files && event.target.files.length) {\r\n const [file] = event.target.files;\r\n\r\n this.subiendoOtrosArchivos = true;\r\n this.otrosArchivosError = false;\r\n this.dataService.subirArchivos(file,\"\",0).subscribe(\r\n (data: string) => {\r\n if (data) {\r\n this.correccionFormDatos.patchValue({\r\n otrosArchivos: data\r\n });\r\n }\r\n this.subiendoOtrosArchivos = false;\r\n },\r\n error => {\r\n console.error(error);\r\n this.otrosArchivosError = true;\r\n this.otrosArchivosInput.nativeElement.value = '';\r\n this.subiendoOtrosArchivos = false;\r\n }\r\n );\r\n }\r\n }\r\n\r\n onChangeGrupo(idGrupo: number) {\r\n this.idGrupoSeleccionado = idGrupo;\r\n this.dataService.obtenerAplicativos(idGrupo).subscribe(\r\n data => {\r\n if (data['data']) {\r\n this.tiposAplicativos = data['data'];\r\n }\r\n },\r\n error => {\r\n console.log(error);\r\n }\r\n );\r\n }\r\n}\r\n","export default \"/*\\r\\n table {\\r\\n width: 100%;\\r\\n }\\r\\n .cdk-drag-preview {\\r\\n box-sizing: border-box;\\r\\n border-radius: 4px;\\r\\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\\r\\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\\r\\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\\r\\n }\\r\\n \\r\\n .cdk-drag-placeholder {\\r\\n opacity: 0;\\r\\n }\\r\\n \\r\\n .cdk-drag-animating {\\r\\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\\r\\n }\\r\\n \\r\\n .example-box:last-child {\\r\\n border: none;\\r\\n }\\r\\n \\r\\n .example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder) {\\r\\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\\r\\n }\\r\\n */\\r\\n .example-list {\\r\\n width: 500px;\\r\\n max-width: 100%;\\r\\n border: solid 1px #ccc;\\r\\n min-height: 60px;\\r\\n display: block;\\r\\n background: white;\\r\\n border-radius: 4px;\\r\\n overflow: hidden;\\r\\n }\\r\\n /* .example-box {\\r\\n padding: 20px 10px;\\r\\n box-sizing: border-box;\\r\\n background: white;\\r\\n font-size: 14px;\\r\\n display: flex;\\r\\n flex-direction: row;\\r\\n align-items: center;\\r\\n justify-content: space-between;\\r\\n }*/\\r\\n .example-box{\\r\\n border-bottom: solid 1px #ccc;\\r\\n color: rgba(0, 0, 0, 0.87);\\r\\n cursor: move;\\r\\n\\r\\n }\\r\\n .cdk-drag-preview {\\r\\n /*box-sizing: border-box;*/\\r\\n border-radius: 4px;\\r\\n box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),\\r\\n 0 8px 10px 1px rgba(0, 0, 0, 0.14),\\r\\n 0 3px 14px 2px rgba(0, 0, 0, 0.12);\\r\\n }\\r\\n .cdk-drag-placeholder {\\r\\n opacity: 0;\\r\\n }\\r\\n .cdk-drag-animating {\\r\\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\\r\\n }\\r\\n .example-box:last-child {\\r\\n border: none;\\r\\n }\\r\\n .example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder) {\\r\\n transition: transform 250ms cubic-bezier(0, 0, 0.2, 1);\\r\\n }\\r\\n\\r\\n \\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1vZGFsLXByaW9yaXphY2lvbi5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EyQkc7RUFDRDtJQUNFLFlBQVk7SUFDWixlQUFlO0lBQ2Ysc0JBQXNCO0lBQ3RCLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixnQkFBZ0I7RUFDbEI7RUFFRDs7Ozs7Ozs7O0lBU0c7RUFFRjtJQUNFLDZCQUE2QjtJQUM3QiwwQkFBMEI7SUFDMUIsWUFBWTs7RUFFZDtFQUVBO0lBQ0UsMEJBQTBCO0lBQzFCLGtCQUFrQjtJQUNsQjs7a0RBRThDO0VBQ2hEO0VBRUE7SUFDRSxVQUFVO0VBQ1o7RUFFQTtJQUNFLHNEQUFzRDtFQUN4RDtFQUVBO0lBQ0UsWUFBWTtFQUNkO0VBRUE7SUFDRSxzREFBc0Q7RUFDeEQiLCJmaWxlIjoibW9kYWwtcHJpb3JpemFjaW9uLmNvbXBvbmVudC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gIHRhYmxlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICAuY2RrLWRyYWctcHJldmlldyB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgYm94LXNoYWRvdzogMCA1cHggNXB4IC0zcHggcmdiYSgwLCAwLCAwLCAwLjIpLFxyXG4gICAgICAgICAgICAgICAgMCA4cHggMTBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE0KSxcclxuICAgICAgICAgICAgICAgIDAgM3B4IDE0cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XHJcbiAgfVxyXG4gIFxyXG4gIC5jZGstZHJhZy1wbGFjZWhvbGRlciB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuICBcclxuICAuY2RrLWRyYWctYW5pbWF0aW5nIHtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcclxuICB9XHJcbiAgXHJcbiAgLmV4YW1wbGUtYm94Omxhc3QtY2hpbGQge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gIH1cclxuICBcclxuICAuZXhhbXBsZS1saXN0LmNkay1kcm9wLWxpc3QtZHJhZ2dpbmcgLmV4YW1wbGUtYm94Om5vdCguY2RrLWRyYWctcGxhY2Vob2xkZXIpIHtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcclxuICB9XHJcbiAgKi9cclxuICAuZXhhbXBsZS1saXN0IHtcclxuICAgIHdpZHRoOiA1MDBweDtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICNjY2M7XHJcbiAgICBtaW4taGVpZ2h0OiA2MHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG4gIFxyXG4gLyogLmV4YW1wbGUtYm94IHtcclxuICAgIHBhZGRpbmc6IDIwcHggMTBweDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICB9Ki9cclxuXHJcbiAgLmV4YW1wbGUtYm94e1xyXG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNjY2M7XHJcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcclxuICAgIGN1cnNvcjogbW92ZTtcclxuXHJcbiAgfVxyXG4gIFxyXG4gIC5jZGstZHJhZy1wcmV2aWV3IHtcclxuICAgIC8qYm94LXNpemluZzogYm9yZGVyLWJveDsqL1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgYm94LXNoYWRvdzogMCA1cHggNXB4IC0zcHggcmdiYSgwLCAwLCAwLCAwLjIpLFxyXG4gICAgICAgICAgICAgICAgMCA4cHggMTBweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE0KSxcclxuICAgICAgICAgICAgICAgIDAgM3B4IDE0cHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XHJcbiAgfVxyXG4gIFxyXG4gIC5jZGstZHJhZy1wbGFjZWhvbGRlciB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuICBcclxuICAuY2RrLWRyYWctYW5pbWF0aW5nIHtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcclxuICB9XHJcbiAgXHJcbiAgLmV4YW1wbGUtYm94Omxhc3QtY2hpbGQge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gIH1cclxuICBcclxuICAuZXhhbXBsZS1saXN0LmNkay1kcm9wLWxpc3QtZHJhZ2dpbmcgLmV4YW1wbGUtYm94Om5vdCguY2RrLWRyYWctcGxhY2Vob2xkZXIpIHtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcclxuICB9XHJcblxyXG4gICJdfQ== */\";","export default \"
\\r\\n
\\r\\n

Periodos de envio registrados

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Buscar\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n
Fecha inicio {{element.fechaInicio_periodoEnvio | date: 'dd/MM/yyyy' }} Fecha fin {{element.fechaTermino_periodoEnvio | date: 'dd/MM/yyyy' }} Acciones\\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

Visualización de calendario

\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Envío
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Priorización directores de área
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Priorización directores generales
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \".capa {\\n width: 98vw;\\n padding-left: 70px;\\n padding-right: 30px;\\n}\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uXFwuLlxcYXBwLmNvbXBvbmVudC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0ksV0FBQTtFQUNBLGtCQUFBO0VBQ0EsbUJBQUE7QUFESiIsImZpbGUiOiJhcHAuY29tcG9uZW50LnNjc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcclxuXHJcbi5jYXBhe1xyXG4gICAgd2lkdGg6OTh2dztcclxuICAgIHBhZGRpbmctbGVmdDogNzBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcblxyXG59XHJcbiJdfQ== */\";","export default \"
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

Bienvenido a la plataforma de iniciativas de tecnologías de la información

\\r\\n

Entra con tu cuenta institucional

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"zn8P\";"],"sourceRoot":"webpack:///"}