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() {