-- ========================================================================== -- Agencia PSI — Migracao: melissa_prefs em user_settings -- ========================================================================== -- Persiste as preferencias do layout Melissa (Direção B) no DB em vez de -- viverem só em localStorage (que perde ao trocar de navegador/dispositivo). -- -- Estrutura do JSONB (sanitizado no client antes de salvar): -- { -- "toqueTermino": "sino", // id em melissaToques.js -- "overlayOpacity": 0.35, // 0..0.8 — escurecedor sobre o bg -- "bgImageOpacity": 1, // 0..1 — transparencia da foto custom -- "use24h": true, // formato do relogio -- "cardsAtivos": ["proximo-..."], // ids de cards do resumo -- "cardsLayout": "linha-unica" // 'linha-unica' | 'duas-linhas' -- } -- -- bgUrl (data URL da foto) NAO entra aqui — pode ter MBs e estouraria a row. -- Permanece em localStorage até migrarmos pra Supabase Storage. -- ========================================================================== ALTER TABLE public.user_settings ADD COLUMN IF NOT EXISTS melissa_prefs jsonb DEFAULT '{}'::jsonb NOT NULL; COMMENT ON COLUMN public.user_settings.melissa_prefs IS 'Preferencias do layout Melissa (toque, opacidade overlay/imagem, formato hora, cards). Imagem de fundo permanece no localStorage por ser data URL pesada.';