feat: version 2.1.0 -- logo de marca separado en barra lateral
El logo de empresa (Configuracion > Empresa) ahora va en un espacio nuevo arriba de la barra lateral, solo visible si esta configurado. El logo de LinkedCorp de abajo deja de ser configurable: identifica siempre al desarrollador del sistema, sin importar que empresa lo use. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,12 @@
|
|||||||
# Changelog - project.linkedcorp.net
|
# Changelog - project.linkedcorp.net
|
||||||
|
|
||||||
|
## [2.1.0] - 2026-09-22
|
||||||
|
### Added
|
||||||
|
- Nuevo espacio de marca en la barra lateral (arriba a la izquierda): si el sistema tiene un
|
||||||
|
logo de empresa configurado (Configuración → Empresa), aparece ahí. El logo "LinkedCorp" de
|
||||||
|
abajo ya no es configurable — es fijo, identifica siempre al desarrollador del sistema,
|
||||||
|
independiente de qué empresa lo use.
|
||||||
|
|
||||||
## [2.0.2] - 2026-09-22
|
## [2.0.2] - 2026-09-22
|
||||||
### Changed
|
### Changed
|
||||||
- Instalación nueva en servidor de exilaser (`192.168.0.30`, `project.exilaser.net`): stack
|
- Instalación nueva en servidor de exilaser (`192.168.0.30`, `project.exilaser.net`): stack
|
||||||
|
|||||||
+10
-1
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
## Estado actual
|
## Estado actual
|
||||||
|
|
||||||
- Version actual: `2.0.2`
|
- Version actual: `2.1.0`
|
||||||
- Estado: `operativo`
|
- Estado: `operativo`
|
||||||
- Ultima validacion: `2026-09-22`
|
- Ultima validacion: `2026-09-22`
|
||||||
|
|
||||||
@@ -553,6 +553,15 @@ iRedMail):
|
|||||||
- Sin cambios de esquema sobre este servidor (`.3`); se redespliega igual para dejarlo en v2.0.2
|
- Sin cambios de esquema sobre este servidor (`.3`); se redespliega igual para dejarlo en v2.0.2
|
||||||
y mantener el repo en el mismo commit en ambos servidores.
|
y mantener el repo en el mismo commit en ambos servidores.
|
||||||
|
|
||||||
|
## Actualizacion v2.1.0 (2026-09-22) — logo de marca en la barra lateral
|
||||||
|
|
||||||
|
- Pedido del usuario (detectado al usar el logo de empresa en el servidor de exilaser): el logo
|
||||||
|
"de empresa" (Configuracion > Empresa) estaba pisando al logo de LinkedCorp abajo en la barra
|
||||||
|
lateral y en el login. Se separa en dos lugares: uno nuevo arriba en la barra lateral (solo
|
||||||
|
visible si hay logo de empresa configurado) para el cliente que usa el sistema, y el de abajo
|
||||||
|
vuelve a ser siempre el de LinkedCorp (desarrollador), ya no configurable.
|
||||||
|
- Sin migracion (solo frontend). Probado en dev con un logo de prueba antes de subir.
|
||||||
|
|
||||||
## Comandos utiles
|
## Comandos utiles
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "project-linkedcorp-backend",
|
"name": "project-linkedcorp-backend",
|
||||||
"version": "2.0.2",
|
"version": "2.1.0",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/server.js",
|
"main": "src/server.js",
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "project-linkedcorp-frontend",
|
"name": "project-linkedcorp-frontend",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "2.0.2",
|
"version": "2.1.0",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite",
|
"dev": "vite",
|
||||||
|
|||||||
@@ -26,6 +26,15 @@ export function NavigationView({ mode }) {
|
|||||||
const brandName = branding.name || t('appName');
|
const brandName = branding.name || t('appName');
|
||||||
return (
|
return (
|
||||||
<nav className={`nav-view ${mode}`}>
|
<nav className={`nav-view ${mode}`}>
|
||||||
|
{branding.logoUrl && (
|
||||||
|
<div className="nav-header">
|
||||||
|
<img
|
||||||
|
src={branding.logoUrl}
|
||||||
|
alt={brandName}
|
||||||
|
className={compact ? 'nav-logo-icon-header' : 'nav-logo-full-header'}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
<div className="nav-items">
|
<div className="nav-items">
|
||||||
{items.map((item) => (
|
{items.map((item) => (
|
||||||
<NavLink key={item.to} to={item.to} end={item.end} className={({ isActive }) => `nav-item ${isActive ? 'active' : ''}`}>
|
<NavLink key={item.to} to={item.to} end={item.end} className={({ isActive }) => `nav-item ${isActive ? 'active' : ''}`}>
|
||||||
@@ -36,10 +45,10 @@ export function NavigationView({ mode }) {
|
|||||||
</div>
|
</div>
|
||||||
<div className="nav-footer">
|
<div className="nav-footer">
|
||||||
{compact ? (
|
{compact ? (
|
||||||
<img src={branding.logoUrl || logoIcon} alt={brandName} className="nav-logo-icon-footer" />
|
<img src={logoIcon} alt="LinkedCorp" className="nav-logo-icon-footer" />
|
||||||
) : (
|
) : (
|
||||||
<>
|
<>
|
||||||
<img src={branding.logoUrl || (theme === 'light' ? logoLight : logoDark)} alt={brandName} className="nav-logo-full-footer" />
|
<img src={theme === 'light' ? logoLight : logoDark} alt="LinkedCorp" className="nav-logo-full-footer" />
|
||||||
<span className="nav-version">v{pkg.version}</span>
|
<span className="nav-version">v{pkg.version}</span>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
|
|||||||
@@ -65,6 +65,13 @@ button { font-family: inherit; }
|
|||||||
.nav-view.compact .nav-footer { align-items: center; }
|
.nav-view.compact .nav-footer { align-items: center; }
|
||||||
.nav-logo-icon-footer { width: 40px; height: 40px; flex: none; object-fit: contain; }
|
.nav-logo-icon-footer { width: 40px; height: 40px; flex: none; object-fit: contain; }
|
||||||
.nav-logo-full-footer { height: 36px; width: auto; max-width: 100%; object-fit: contain; }
|
.nav-logo-full-footer { height: 36px; width: auto; max-width: 100%; object-fit: contain; }
|
||||||
|
.nav-header {
|
||||||
|
display: flex; align-items: center; justify-content: flex-start;
|
||||||
|
padding: 14px 12px; border-bottom: 1px solid rgb(var(--line));
|
||||||
|
}
|
||||||
|
.nav-view.compact .nav-header { justify-content: center; padding: 14px 8px; }
|
||||||
|
.nav-logo-icon-header { width: 36px; height: 36px; flex: none; object-fit: contain; }
|
||||||
|
.nav-logo-full-header { height: 32px; width: auto; max-width: 100%; object-fit: contain; }
|
||||||
|
|
||||||
.content-column { flex: 1; display: flex; flex-direction: column; min-width: 0; }
|
.content-column { flex: 1; display: flex; flex-direction: column; min-width: 0; }
|
||||||
.topbar {
|
.topbar {
|
||||||
|
|||||||
Reference in New Issue
Block a user