diff --git a/src/layout/melissa/MelissaConfiguracoes.vue b/src/layout/melissa/MelissaConfiguracoes.vue index 8c1e159..6c66313 100644 --- a/src/layout/melissa/MelissaConfiguracoes.vue +++ b/src/layout/melissa/MelissaConfiguracoes.vue @@ -45,6 +45,14 @@ const ROUTE_ALIASES = { seguranca: 'cfg-seguranca', bloqueios: 'cfg-bloqueios' }; +// URLs antigas (/melissa/fundo, /melissa/relogio, /melissa/cronometro) +// agora caem no slug unificado "aparencia" — pagina Layout Melissa +// concentra os 4 blocos em uma unica tela. +const DEPRECATED_ALIASES = { + fundo: 'aparencia', + relogio: 'aparencia', + cronometro: 'aparencia' +}; const SECAO_ALIASES = Object.fromEntries( Object.entries(ROUTE_ALIASES).map(([slug, key]) => [key, slug]) ); @@ -53,6 +61,7 @@ function rotaToSecao(rota) { if (!rota) return 'aparencia'; const r = String(rota).toLowerCase(); if (ROUTE_ALIASES[r]) return ROUTE_ALIASES[r]; + if (DEPRECATED_ALIASES[r]) return DEPRECATED_ALIASES[r]; if (INLINE_KEYS.has(r)) return r; if (COMPONENT_MAP[r]) return r; return 'aparencia'; @@ -96,8 +105,10 @@ const COMPONENT_MAP = { 'cfg-seguranca': defineAsyncComponent(() => import('@/views/pages/auth/SecurityPage.vue')) }; -// Keys que renderizam controles inline definidos neste arquivo (Layout Melissa) -const INLINE_KEYS = new Set(['aparencia', 'fundo', 'relogio', 'cronometro']); +// Keys que renderizam controles inline definidos neste arquivo (Layout Melissa). +// Hoje ha apenas 1: pagina unificada que concentra Aparencia + Fundo +// + Relogio + Cronometro nos 4 cards stackeados. +const INLINE_KEYS = new Set(['aparencia']); const settings = inject('melissaSettings', null); if (!settings) { @@ -131,13 +142,10 @@ const grupos = [ { key: 'layout-melissa', label: 'Layout Melissa', - desc: 'Aparência, plano de fundo e cronômetro do resumo.', + desc: 'Aparência, plano de fundo, relógio e cronômetro do resumo.', icon: 'pi pi-palette', items: [ - { key: 'aparencia', label: 'Aparência', desc: 'Tema claro/escuro, cor primária e tom de surface.', icon: 'pi pi-palette' }, - { key: 'fundo', label: 'Plano de fundo', desc: 'Imagem do resumo + opacidades (escurecedor e foto).', icon: 'pi pi-image' }, - { key: 'relogio', label: 'Relógio', desc: 'Formato 24h ou 12h (AM/PM) no resumo.', icon: 'pi pi-clock' }, - { key: 'cronometro', label: 'Cronômetro de sessão', desc: 'Som ao terminar os 50 minutos da sessão.', icon: 'pi pi-stopwatch' } + { key: 'aparencia', label: 'Layout Melissa', desc: 'Tema, cor primária, surface, plano de fundo, relógio e cronômetro — tudo numa tela só.', icon: 'pi pi-palette' } ] }, { @@ -395,8 +403,9 @@ function resetCores() {
- -
+ +
diff --git a/src/layout/melissa/MelissaLayout.vue b/src/layout/melissa/MelissaLayout.vue index 606ea2d..6f8374c 100644 --- a/src/layout/melissa/MelissaLayout.vue +++ b/src/layout/melissa/MelissaLayout.vue @@ -161,8 +161,8 @@ const SECOES = { grupos: { label: 'Grupos de pacientes', icon: 'pi pi-th-large', descricao: 'Categorize pacientes por grupos.' }, tags: { label: 'Tags', icon: 'pi pi-tag', descricao: 'Etiquetas livres pra organizar pacientes.' }, medicos: { label: 'Médicos e referências', icon: 'pi pi-user-edit', descricao: 'Profissionais que encaminham ou recebem pacientes.' }, - // Página interna de configs do layout Melissa (aparência, fundo, relógio, cronômetro) - aparencia: { label: 'Configurações do Melissa', icon: 'pi pi-cog', descricao: 'Aparência, plano de fundo, relógio e cronômetro.' }, + // Pagina unificada do Layout Melissa (Aparencia + Fundo + Relogio + Cronometro) + aparencia: { label: 'Layout Melissa', icon: 'pi pi-palette', descricao: 'Aparência, plano de fundo, relógio e cronômetro do resumo.' }, // Atalhos de Conta — todas montam o MelissaConfiguracoes com a seção embed pré-selecionada perfil: { label: 'Meu Perfil', icon: 'pi pi-user', descricao: 'Dados pessoais, avatar e preferências.' }, plano: { label: 'Meu Plano', icon: 'pi pi-credit-card', descricao: 'Plano contratado, limites e fatura.' }, diff --git a/src/layout/melissa/MelissaMenu.vue b/src/layout/melissa/MelissaMenu.vue index 2b6c147..dfab0f2 100644 --- a/src/layout/melissa/MelissaMenu.vue +++ b/src/layout/melissa/MelissaMenu.vue @@ -151,7 +151,7 @@ const CATEGORIAS = [ title: 'Layout Melissa', items: [ // Sem `route` — emit('select', 'aparencia') abre página interna do Melissa - { key: 'aparencia', label: 'Aparência e cronômetro', icon: 'pi pi-palette' } + { key: 'aparencia', label: 'Layout Melissa', icon: 'pi pi-palette' } ] }, {