/*
|--------------------------------------------------------------------------
| Agência PSI
|--------------------------------------------------------------------------
| Criado e desenvolvido por Leonardo Nohama
|
| Tecnologia aplicada à escuta.
| Estrutura para o cuidado.
|
| Arquivo: src/lib/email/emailTemplateConstants.js
| Data: 2026
| Local: São Carlos/SP — Brasil
|--------------------------------------------------------------------------
| © 2026 — Todos os direitos reservados
|--------------------------------------------------------------------------
*/
/**
 * Constantes compartilhadas do sistema de Email Templates.
 * Importável em Vue components, workers, Edge Functions, etc.
 */

export const TEMPLATE_DOMAINS = {
    SESSION: 'session',
    INTAKE: 'intake',
    BILLING: 'billing',
    SYSTEM: 'system'
};

export const TEMPLATE_CHANNELS = {
    EMAIL: 'email',
    WHATSAPP: 'whatsapp',
    SMS: 'sms'
};

export const TEMPLATE_KEYS = {
    // Sessões
    SESSION_REMINDER: 'session.reminder.email',
    SESSION_CONFIRMATION: 'session.confirmation.email',
    SESSION_CANCELLATION: 'session.cancellation.email',
    SESSION_RESCHEDULED: 'session.rescheduled.email',

    // Triagem
    INTAKE_RECEIVED: 'intake.received.email',
    INTAKE_APPROVED: 'intake.approved.email',
    INTAKE_REJECTED: 'intake.rejected.email',

    // Agendador online
    SCHEDULER_REQUEST_ACCEPTED: 'scheduler.request_accepted.email',
    SCHEDULER_REQUEST_REJECTED: 'scheduler.request_rejected.email',

    // Sistema
    SYSTEM_WELCOME: 'system.welcome.email',
    SYSTEM_PASSWORD_RESET: 'system.password_reset.email'
};

/**
 * Dados mock realistas para preview de templates na UI.
 * Espelham as entidades reais: patients, agenda_eventos, patient_intake_requests.
 */
export const MOCK_DATA = {
    session: {
        patient_name: 'Ana Clara Mendes',
        session_date: '20/03/2026',
        session_time: '14:00',
        session_modality: 'Online',
        session_link: 'https://meet.google.com/abc-defg-hij',
        session_address: null,
        session_type: 'Sessão de acompanhamento',
        therapist_name: 'Dra. Beatriz Costa',
        cancellation_reason: null,
        rejection_reason: null
    },
    intake: {
        patient_name: 'Roberto Alves',
        clinic_name: 'Espaço Terapêutico Beatriz Costa',
        therapist_name: 'Dra. Beatriz Costa',
        portal_link: 'https://app.exemplo.com.br/portal',
        session_date: '22/03/2026',
        session_time: '10:00',
        session_type: 'Primeira consulta',
        session_modality: 'Presencial',
        rejection_reason: null
    },
    system: {
        patient_name: 'Mariana Souza',
        clinic_name: 'Clínica Harmonia',
        portal_link: 'https://app.exemplo.com.br/portal',
        reset_link: 'https://app.exemplo.com.br/reset-password?token=mock'
    }
};
