Release Notes - v5.0.3 🚀
28 de mayo de 2026
Esta versión de parche (v5.0.3) introduce la parametrización de la expiración de sesión a través de constantes globales y servicios de configuración, y corrige un error de carga infinita en la barra de navegación al existir referencias inactivas de organización. En POQTROL, se integra el botón de subida de archivos dentro de los campos de formulario. En Labcare Cloud, se optimiza la validación y gestión de turnos junto a la modernización del conversor de datos. En Mi proceso, se añade el envío de correos de bienvenida para MIPROCESO y se asegura la persistencia de filtros de búsqueda.
🌐 General
Expiración de Sesión (Session Timeout) (#1095)
- Servicio y Configuración:
- Adición de un servicio para configurar el tiempo de expiración de sesión de forma dinámica en el proyecto.
- Inclusión del campo de tiempo de expiración de sesión en la configuración de productos del sistema.
- Extracción de la expiración por defecto a una constante global compartida.
- Validaciones y Pruebas:
- Adición de pruebas unitarias para
session-timeout.service. - Corrección y endurecimiento de las validaciones de entrada de datos para evitar valores nulos, nulos por defecto o inválidos.
- Adición de validaciones robustas ante fallas de navegación de rutas.
- Adición de pruebas unitarias para
Barra de Navegación (Navbar) (#1196, #1197)
- Estabilidad ante Organizaciones Inválidas:
- Prevención de la carga infinita e inestabilidad general de la aplicación cuando el rol de organización del usuario apunta a una referencia huérfana o inaccesible.
- Exclusión automática de las organizaciones no resueltas de los roles activos del usuario.
- Implementación de un flujo de salida segura (sign-out) con la alerta
NO_ORGS_CUSTOMERS_Een caso de que ninguna de las organizaciones asignadas cuente con una membresía válida o activa.
📈 POQTROL
Formulario de Carga de Archivos (#1205)
- Mejoras de UI/UX:
- Reubicación del botón de subida de archivos como un icono de sufijo dentro de un contenedor estándar
mat-form-field.
- Reubicación del botón de subida de archivos como un icono de sufijo dentro de un contenedor estándar
🧪 Labcare Cloud
Conversor y Validación de Turnos (#1206)
- Gestión de Turnos:
- Corrección y ajuste en las validaciones de turnos dentro del conversor de datos.
- Adición de validaciones y de un mensaje informativo cuando no hay turnos configurados pero el uso de turnos está activo.
- Corrección de errores por lectura de propiedades no definidas (
undefined).
- Refactorización y Modernización:
- Modernización en el control de inputs y lógica de filtrado del componente
DataMappingConversorutilizando@ViewChilde interoperabilidad con RxJS.
- Modernización en el control de inputs y lógica de filtrado del componente
📋 Mi proceso
Activación de Cuentas y Onboarding (#1178, #1202)
- Flujo de Notificación de MIPROCESO:
- Integración de MIPROCESO en la función
onCreateSendEmailpara generar un enlace de restablecimiento de contraseña (activación) usandoauth.generatePasswordResetLinky enviar el correo de bienvenida usando la plantillawelcome_miproceso_template. - Salvaguardas defensivas para omitir el envío y registrar el incidente en caso de que falte el correo de usuario o el nombre de la organización.
- Actualización del mensaje de error de credenciales no válidas en el inicio de sesión para guiar a los nuevos usuarios no activados a activar su cuenta por correo o mediante la opción "¿Olvidaste la contraseña?".
- Integración de MIPROCESO en la función
Persistencia del Filtro de Búsqueda (#1175, #1199)
- Mantenimiento del Estado de Búsqueda:
- Persistencia del término de búsqueda de "Mis Procesos" tras reconstrucciones de la lista de datos (como al cerrar ventanas de diálogo).
- Almacenamiento del filtro en una propiedad
currentSearchFiltervinculada mediantengModel. - Centralización de la creación de la fuente de datos en
setupDataSource()con soporte defensivo (fallback?? '') y restablecimiento del paginador a la primera página ante cambios de filtro.