Commit Graph

119 Commits

Author SHA1 Message Date
Milton Gonzalez e65111a7f4 feat: version 3.0.0 -- Correcciones de auditoria de seguridad, accesibilidad y redundancia
Permisos (superadmin, viewer, busqueda, tareas recurrentes), bootstrap atomico,
revocacion de JWT por version de sesion (028), control optimista de edicion (029),
logo sin SVG + CSP, ingesta endurecida, correos escapados, borradores, paginacion
de proyectos, accesibilidad de dialogos/controles e i18n.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 11:36:02 -05:00
Milton Gonzalez 8ed1d63505 feat: version 2.19.0 -- Panel: selector de tarjetas visibles
Desplegable con casillas junto al titulo para mostrar/ocultar cada tarjeta,
persistido por usuario en localStorage.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 09:43:42 -05:00
Milton Gonzalez 22071b344a fix: version 2.18.3 -- F5 normal ya no muestra la version anterior tras actualizar
El service worker servia index.html desde su precache en cada navegacion.
Navegaciones pasan a NetworkFirst (cache solo offline), serve.json agrega
no-cache a html/sw.js e immutable a /assets, y se chequean actualizaciones
del SW cada 30 min y al volver a la pestaña.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 08:34:18 -05:00
Milton Gonzalez bcb9c9d714 refactor: version 2.18.2 -- Panel: se quita "Mis actividades pendientes"
El detalle vive en los popups de las tarjetas; se elimina tambien la consulta
myPendingActivities del backend, que quedaba sin uso.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 08:26:57 -05:00
Milton Gonzalez f66df86000 fix: version 2.18.1 -- Panel: barras alineadas en los popups de detalle
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 08:22:35 -05:00
Milton Gonzalez 3884239b7e feat: version 2.18.0 -- Panel: detalle de cada tarjeta en popup
Las 7 tarjetas abren su lista en un DetailPopup (proyectos o actividades segun
la tarjeta); el bloque "Mis actividades" queda fijo. Nuevas listas de proximos
a vencer y para hoy; "Para hoy" deja de contar eliminadas/cancelados.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 08:14:39 -05:00
Milton Gonzalez 081c90332b feat: version 2.17.11 -- Panel: medidores y textos centrados en la tarjeta
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 08:06:03 -05:00
Milton Gonzalez 3bada24d03 feat: version 2.17.10 -- Panel: medidor en "Avance promedio"
Ademas: sin punto suelto en 0% y letra reducida para valores largos.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 08:05:13 -05:00
Milton Gonzalez dda6aa3369 feat: version 2.17.9 -- Panel: medidor y detalle en "Actividades vencidas"
Base = actividades no eliminadas, no canceladas y de proyectos no cancelados;
el conteo de vencidas usa el mismo criterio (antes incluia eliminadas).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 08:03:22 -05:00
Milton Gonzalez 22b287fcd8 feat: version 2.17.8 -- Panel: medidor y detalle en "Actividades pendientes"
Base = actividades no eliminadas de proyectos no cancelados; el conteo de
pendientes pasa a usar el mismo criterio (antes incluia eliminadas).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 08:01:45 -05:00
Milton Gonzalez 10952beea5 feat: version 2.17.7 -- Panel: medidor y detalle en "Proyectos activos"
Porcentaje de activos sobre el total sin cancelados, "N de M" y lista de
proyectos activos al hacer clic. La lista de detalle pasa a un componente
compartido con "Proyectos atrasados".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 07:52:49 -05:00
Milton Gonzalez d15a58cb29 feat: version 2.17.6 -- Panel: "Proyectos atrasados" en porcentaje con "N de M"
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 07:42:38 -05:00
Milton Gonzalez 4583e3c456 feat: version 2.17.5 -- Panel: medidor y detalle en "Proyectos atrasados"
La tarjeta muestra un medidor semicircular (atrasados/activos) con el valor al
centro; al hacer clic, el bloque inferior lista los proyectos atrasados en vez
de mis actividades. Por ahora solo esta tarjeta.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 17:02:45 -05:00
Milton Gonzalez 9231bd2c7a fix: version 2.17.4 -- el avance del proyecto ignoraba que habia actividades eliminadas
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 15:47:17 -05:00
Milton Gonzalez 0373810637 fix: version 2.17.3 -- ComboBox no se cierra al hacer scroll dentro de su lista
El listener de "cerrar al hacer scroll" tambien reaccionaba al scroll del
propio panel, impidiendo llegar a las ultimas opciones.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 15:16:32 -05:00
Milton Gonzalez cdd49a7eff feat: version 2.17.2 -- Proyectos: selector Avance (Todos / Ocultar 100% / Solo 100%)
Reemplaza el checkbox "Ocultar proyectos 100%" para cubrir tambien "solo 100%"
sin combinaciones contradictorias. Persistido en localStorage; migra el valor
del checkbox anterior.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 15:10:54 -05:00
Milton Gonzalez a488965450 feat: version 2.17.1 -- Proyectos: checkbox "Ocultar proyectos 100%"
Desmarcado por defecto; la eleccion se guarda en localStorage y sobrevive al
cierre de sesion.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 14:57:12 -05:00
Milton Gonzalez 30bb546b84 feat: version 2.17.0 -- Equipos: pestaña Usuarios (sesion, usuarios y grupos locales)
Migracion 027 (device_accounts).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 11:50:44 -05:00
Milton Gonzalez f51b3bcd89 feat: version 2.16.5 -- Equipos: se quita el boton Informacion del listado
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 11:36:51 -05:00
Milton Gonzalez eb7cdcbc43 feat: version 2.16.4 -- Equipos: primer y ultimo reporte despues de Departamento
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 11:33:21 -05:00
Milton Gonzalez 75850a3208 feat: version 2.16.3 -- Equipos: seccion Estado/Asignado/Departamento/Notas al inicio de General
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 11:25:47 -05:00
Milton Gonzalez 219169ba9f fix: version 2.16.2 -- el instalador del agente verifica el token y fuerza la configuracion
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 10:39:49 -05:00
Milton Gonzalez ae932eedde feat: version 2.16.1 -- barra superior reducida, barra inferior fija y contador de Contraseñas en ella
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 09:22:02 -05:00
Milton Gonzalez 4a305df73e feat: version 2.16.0 -- contador de cierre en Contraseñas, cierre por inactividad y ajustes de Equipos
Contraseñas: el cierre automatico ahora es por inactividad (no saca al usuario a medio escribir),
token de desbloqueo renovable y contador visible junto al titulo. Equipos: GUID como componente.
Sube la version para que el panel de Actualizaciones ofrezca los cambios 2.15.0 -> 2.16.0
(migraciones 025 y 026, instalador del agente y pestaña Compartir).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 08:52:46 -05:00
Milton Gonzalez e25c2c3b35 feat: version 2.15.0 -- menu Equipos (inventario de TI con agente GLPI)
Ingesta POST /api/inventory (JSON/XML, token de instalacion), upsert por deviceid,
historial de cambios, pestañas Resumen/Equipos/Software/Agentes, detalle con buscador
por pestaña y casilla para ocultar actualizaciones/drivers/componentes del software.
Migraciones 023 y 024. Diseño en docs/ARQUITECTURA-INVENTARIO.md.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 19:05:00 -05:00
Milton Gonzalez 7139f1604e feat: version 2.14.0 -- compartir grupo completo y destruir con cascada
Contraseñas: "Compartir grupo" aplica el mismo share de solo lectura a todas
las credenciales de un grupo de una vez (el grupo sigue sin ser una unidad
de permiso -- es una accion de conveniencia). El grupo y cada credencial se
marcan con el icono de compartido. "Destruir grupo" ahora tiene dos
opciones: solo desagrupar (como antes) o destruir tambien las N credenciales,
con advertencia explicita del conteo.

Fix de paso en ComboBox (afecta a toda la app): el panel se cerraba solo al
abrirse si el trigger estaba cerca del borde de un contenedor con scroll,
por un micro-scroll automatico del navegador al enfocar el boton.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 17:42:39 -05:00
Milton Gonzalez dad73b841d feat: version 2.13.2 -- "Destruir" con advertencia fuerte en Contraseñas
Solo en el modulo Contraseñas (entradas y grupos): "Eliminar" pasa a decir
"Destruir", con dialogo en tono error (franja roja) y mensaje explicito de
que la destruccion es permanente e irreversible. El resto de la app
(Notas, Proyectos, etc.) sigue igual. El audit_log de borrado ya existia
(usuario/accion/fecha, sin el contenido) -- sin cambios ahi.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 17:22:59 -05:00
Milton Gonzalez 70b601307f fix: version 2.13.1 -- ComboBox/Flyout no se salen del viewport
El panel se posicionaba una sola vez hacia abajo/derecha del trigger sin revisar
si cabia. Ahora se mide el tamaño ya renderizado y se voltea hacia arriba /
se recorta hacia adentro si no hay espacio -- regla agregada tambien al
orquestador del grupo (project-md-templates/leeme_primero.txt).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 16:37:02 -05:00
Milton Gonzalez 3da652c136 feat: version 2.13.0 -- grupos y compartir en Contraseñas
Grupos de un solo nivel (tarjetas, clic entra a ver sus credenciales) y compartir
una credencial individual de solo lectura con otro usuario registrado (puede
revelar/copiar la contraseña real, nunca editar/borrar/compartir/mover de grupo).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 16:14:36 -05:00
Milton Gonzalez 971de05773 feat: version 2.12.1 -- ver imagenes (png/jpg/webp) en Documentos, sin tocar txt/md
Agrega soporte de imagenes al popup "Ver" de Documentos (proyectos y actividades): se
descargan como blob y se muestran con un object URL (revocado al cerrar), separado por
completo del camino de texto/markdown ya existente (readAttachmentText), que queda intacto.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 12:58:27 -05:00
Milton Gonzalez 3257c4f065 feat: version 2.12.0 -- editar y borrar comentarios
Hasta ahora un comentario (de proyecto o actividad) solo se podia crear, nunca tocar. Se
agrega PUT/DELETE /comments/:id, restringido a quien lo escribio o a superadmin/admin (igual
criterio que useria para notas/tareas: nunca otro colaborador aunque tenga permiso de
escritura en el proyecto). Migracion 021 agrega updated_at a comments para mostrar "Editado"
igual que ya hace Notas.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 12:22:27 -05:00
Milton Gonzalez e5dfc2feff fix: version 2.11.3 -- badges de Comentarios/Documentos de actividad no se actualizaban en vivo
CommentsPanel/AttachmentsPanel ya soportaban un onChanged opcional (agregado en 2.11.1 para
el nivel de proyecto), pero ActivityDetailPanel.jsx no se lo pasaba -- el badge de su propia
pestaña se quedaba con el numero viejo hasta cambiar de pestaña y volver (que es lo unico que
dispara el refetch de comments/attachments ahi). Se conecta reloadComments/reloadAttachments
como onChanged.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 12:12:03 -05:00
Milton Gonzalez 47fe36a64e fix: version 2.11.2 -- badge de Tareas pasa a hechas/total en vez de pendientes/total
"3/4" se leia como "3 pendientes de 4", confuso. Ahora "1/4" = 1 hecha de 4, mismo criterio
que el resto de contadores nuevos (siempre n/n, nunca se oculta).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 12:01:45 -05:00
Milton Gonzalez d44f96bb6c fix: version 2.11.1 -- mueve los contadores de 2.11.0 de columnas de grilla a badges de pestaña
La 2.11.0 agrego los contadores de dependencias/comentarios/documentos/miembros como columnas
nuevas en las tablas de Proyectos y Actividades -- no era el pedido original, desbordaba la
grilla. Se revierten esas columnas (y el componente CountBadge que solo ellas usaban) y los
contadores van donde correspondia desde el principio: como badge junto al nombre de cada
pestaña, al mismo estilo que ya usaba "Tareas n/n" (componente Tabs + .tab-badge):
- Proyecto: pestañas Miembros, Actividades (completas/total), Comentarios, Documentos.
- Actividad: pestaña Dependencias (ya existia Tareas/Comentarios/Documentos, solo faltaba esta).

De paso: Tabs.jsx ocultaba el badge cuando count era 0 (!!tab.count) -- se cambia a mostrar
siempre que la pestaña mande la prop (count !== undefined), para que 0 se vea como "0" y no
desaparezca. CommentsPanel/AttachmentsPanel ganan un onChanged opcional para que el contador
de Comentarios/Documentos del PROYECTO se actualice al tiro sin tener que recargar la pagina
(el de la actividad ya se refrescaba solo al cambiar de pestaña).

El backend de 2.11.0 (subconsultas dependencies_count/comments_count/documents_count/
members_count/activities_total/activities_complete en los LIST_SELECT) se mantiene igual,
solo cambia donde el frontend los usa.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 11:53:43 -05:00
Milton Gonzalez 4520abe96f feat: version 2.11.0 -- contadores de dependencias/comentarios/documentos/miembros en listados
Actividades (dentro de un proyecto): nuevas columnas con la cantidad de dependencias,
comentarios y documentos de cada fila -- subconsultas correlacionadas agregadas al
LIST_SELECT existente (mismo patron que share_count de notas/proyectos), siempre numericas
(0 si no hay, nunca oculto).

Proyectos: nuevas columnas con la cantidad de miembros, actividades completas al 100% sobre
el total (ej. "1/4", mismo patron pendientes/total que ya usa la pestaña de tareas de una
actividad), comentarios y documentos.

Nuevo componente CountBadge (icono + numero) reutilizado en ambos listados -- a diferencia de
SharedWithIcon/Tabs que ocultan el badge en 0, este siempre lo muestra.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-14 11:40:07 -05:00
Milton Gonzalez 481ba008da fix: version 2.10.7 -- alinea la fecha con los iconos en las tarjetas de Notas
La fecha estaba en flujo normal (padding-bottom de la tarjeta) mientras los iconos de
compartida/arrastre estan position:absolute mas cerca del borde inferior, generando un
desnivel visible. Se pasa .notes-card-meta tambien a position:absolute con el mismo bottom
que los iconos, y se agranda el padding-bottom de la tarjeta para dejarle espacio.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-12 17:37:39 -05:00
Milton Gonzalez 24169237e1 fix: version 2.10.6 -- icono de compartida junto al de arrastre + fix de actualizacion en vivo
El icono de compartida de las tarjetas de Notas se mueve de junto a la fecha a la esquina
inferior derecha, a la izquierda del icono de arrastre. De paso se corrige que no se
actualizaba en la tarjeta tras compartir/dejar de compartir sin recargar la pagina (faltaba
un reload() de la lista principal, que es de donde sale el share_count de cada tarjeta).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-12 17:31:56 -05:00
Milton Gonzalez 0d47bba29d fix: version 2.10.5 -- mueve el icono de arrastre de Notas abajo a la derecha
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-12 16:27:58 -05:00
Milton Gonzalez 0964ffb8a8 feat: version 2.10.4 -- tarjetas de Notas arrastrables para reordenar
Nueva columna sort_order en notes (migracion 020, mismo patron que 012_sort_order.sql de
activities/tasks). Se reusa el hook useDragReorder ya existente (drag & drop nativo, sin
libreria nueva) -- el icono de agarre va solo en una esquina de la tarjeta, nunca en la
tarjeta completa, para no pisar el click que abre la edicion (mismo truco que ya usa
ListView.jsx: stopPropagation en el handle).

Solo las notas propias son arrastrables/reordenables; las compartidas conmigo quedan
siempre despues, ordenadas por fecha (el orden manual de otro usuario no tiene sentido para
mi vista). Se desactiva mientras hay un filtro de busqueda activo.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-12 16:17:51 -05:00
Milton Gonzalez 2d1bfc0bfd feat: version 2.10.3 -- reenviar correo de invitacion/verificacion desde Usuarios
Nueva opcion "Reenviar correo" en el menu de 3 puntos de Organizacion -> Usuarios, para
usuarios en estado 'invited' o 'pending_verification'. Reusa las mismas columnas
(verification_token/verification_token_expires) y plantillas que el envio original
(inviteUser / auth/service.js#register), solo genera un token nuevo -- el anterior pudo
vencer o perderse en spam.

De paso se corrige que el estado "invited" no tenia rama propia en el menu de acciones (caia
en el branch generico de editar/activar-desactivar, que no aplica a una cuenta placeholder sin
clave real todavia) ni traduccion de su badge (user_status_invited faltaba en i18n).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-12 16:02:24 -05:00
Milton Gonzalez 98d9196791 feat: version 2.10.2 -- icono de compartida + buscador en tarjetas de Notas
Tarjetas de Notas: icono junto a la fecha cuando la nota esta compartida (propia compartida
con alguien, via share_count nuevo en la consulta; o recibida de otro usuario). Buscador
junto al titulo que filtra las tarjetas en vivo por contenido (client-side, sin ida y vuelta
al backend ya que el contenido no esta cifrado como en Contraseñas).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-12 15:37:31 -05:00
Milton Gonzalez da4d83e7cc fix: version 2.10.1 -- "Probar correo" tiraba Error interno si la clave SMTP no descifraba
El decrypt() de la clave SMTP guardada estaba fuera del try/catch tanto en testSmtpConfig
(el boton "Probar") como en getSmtpConfigInternal (usado por el mailer real para forgot-
password, registro, invitaciones). Si ENCRYPTION_KEY no coincide con la que se uso para
guardar -- el caso documentado de exilaser, que recibio un dump de LinkedCorp con su propia
clave -- el fallo de decrypt() se propagaba sin control: "Error interno" generico en el boton
de prueba, y un crash silencioso en el envio real en vez de la degradacion a modo dev que el
propio comentario del codigo promete. Ambos casos ahora devuelven un mensaje claro / degradan
correctamente.

De paso se agrega `app.set('trust proxy', 1)`: la app corre detras de Nginx Proxy Manager pero
Express no lo sabia, asi que express-rate-limit usaba la IP del proxy para todos los clientes
(un cupo compartido en vez de uno por usuario) y tiraba un aviso de validacion en cada request.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-12 12:26:00 -05:00
Milton Gonzalez 926215297e feat: version 2.10.0 -- Notas en tarjetas, crear/editar en popup, compartir de solo lectura
Rediseno completo del modulo Notas (era lista inline, sin popup, sin compartir):
- Tarjetas con resumen del contenido en vez de lista vertical; la primera tarjeta siempre es
  un "+" para crear.
- Crear y editar se hacen en un DetailPopup (antes: textarea fijo arriba + edicion inline por
  tarjeta).
- Nueva tabla note_shares (migracion 019): compartir una nota con otro usuario ya registrado,
  siempre de solo lectura -- el dueño sigue siendo el unico que edita/borra/comparte (mismo
  patron que project_members pero sin rol ni invitacion por correo, ya que acá no hace falta).
  Quien recibe la nota la ve con "Compartida por {nombre}", sin ningun control de edicion.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-12 12:09:04 -05:00
Milton Gonzalez dd8384fc88 feat: version 2.9.1 -- resaltado de sintaxis en bloques de codigo de documentos .md
Los bloques de codigo dentro de un .md visto en Documentos ahora tienen colores de token
(highlight.js + marked-highlight), con el tema "Visual Studio" claro/oscuro para que se vea
parecido a VSCode y se adapte solo al tema de la app. Se usa highlight.js/lib/core y solo se
registran los lenguajes esperados en este proyecto (js/ts, bash, json, python, sql, yaml,
html/xml, css, ini, dockerfile, markdown) para no inflar el bundle con el paquete completo.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-07 17:38:46 -05:00
Milton Gonzalez 3d220bcc20 feat: version 2.9.0 -- ver documentos .md/.txt directo, sin descargar
Agrega un boton "Ver" en Documentos (adjuntos de proyectos/actividades) para archivos de
texto plano y Markdown: se leen via blob (mismo mecanismo ya usado para descargar, que ya
maneja el Bearer token) y se muestran en un popup -- el .md se renderiza con formato (marked)
y se sanitiza con DOMPurify antes de insertarse en el DOM, para no abrir una via de XSS con
HTML/JS embebido en un documento subido por otro usuario.

De paso corrige que subir un .md fallaba con "tipo de archivo no permitido": el navegador no
manda un mimetype confiable para esa extension (varia segun SO), asi que ahora se normaliza
por extension en el fileFilter de multer en vez de depender solo del mimetype del navegador.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-07 17:17:03 -05:00
Milton Gonzalez 27cf2712fb fix: version 2.8.13 -- mueve el logo de LinkedCorp al pie del login, junto al texto
El bloque de LinkedCorp pasa de estar junto al logo de empresa (arriba) a quedar debajo de
los links de "olvidaste tu contraseña"/"crear cuenta", centrado, con el texto a la derecha
del icono. El logo de empresa vuelve a mostrarse solo y centrado como antes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-02 20:14:18 -05:00
Milton Gonzalez 4387b23f45 fix: version 2.8.12 -- logo de LinkedCorp en el login con clase propia (40px) y layout izq/der
El icono de LinkedCorp reusaba la clase del logo de empresa (80px), asi que se salia de la
tarjeta al querer achicarlo. Se le da su propia clase (40px) y el layout del login pasa a
alinear el logo de empresa a la izquierda y LinkedCorp a la derecha, sin desbordar margenes.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-02 20:08:35 -05:00
Milton Gonzalez 8c92c54449 fix: version 2.8.11 -- ajusta posicion y tamaño del logo LinkedCorp en el login
Sube 50px el bloque icono+texto de LinkedCorp junto al logo de empresa, y reduce el texto a
0.9rem.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-02 19:58:58 -05:00
Milton Gonzalez 7134bdda26 feat: version 2.8.10 -- logo de LinkedCorp junto al de empresa en el login
Cuando hay un logo de empresa configurado (Configuracion > Empresa, caso exilaser), el login
ahora muestra tambien el logo de LinkedCorp a la derecha, a la misma altura, con el texto
"LinkedCorp" debajo del icono. Sin logo de empresa configurado, el login sigue igual.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-02 19:51:54 -05:00
Milton Gonzalez 028126e3a4 fix: version 2.8.9 -- reduce tamaño del texto LinkedCorp del sidebar
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-02 19:44:03 -05:00