/*
 * channelMeta — fonte unica de canais de comunicacao (WhatsApp/SMS/E-mail).
 * --------------------------------------------------------------------
 * Antes, os 3 consumidores (MelissaConversas parent, Sidebar, Card)
 * tinham copias locais de CHANNEL_OPTIONS + channelIcon. Drift risk
 * pequeno mas existia — adicionar 'telegram' exigia mexer em N lugares.
 * Aqui centraliza.
 *
 * NAO eh um composable Vue (no useXxx) porque sao constantes puras
 * e funcoes sem reactivity — arquivo utility eh suficiente.
 */

export const CHANNEL_OPTIONS = Object.freeze([
    Object.freeze({ label: 'Todos', value: null }),
    Object.freeze({ label: 'WhatsApp', value: 'whatsapp' }),
    Object.freeze({ label: 'SMS', value: 'sms' }),
    Object.freeze({ label: 'E-mail', value: 'email' })
]);

const ICON_MAP = Object.freeze({
    whatsapp: 'pi-whatsapp',
    sms: 'pi-comment',
    email: 'pi-envelope'
});

export function channelIcon(channel) {
    return ICON_MAP[channel] || 'pi-comment';
}

export function channelLabel(channel) {
    if (!channel) return 'Todos';
    const opt = CHANNEL_OPTIONS.find((o) => o.value === channel);
    return opt?.label || channel;
}
