/* =====================================================
   MÓDULO: UTILITÁRIOS - SINAGEM
   =====================================================

   Funções reutilizáveis e helpers globais
   do sistema SINAGEM.

   USO NO ARQUIVO PRINCIPAL (app.js):
   - Importar este arquivo
   - Adicionar funções ao namespace Sinagem.Utils
   ===================================================== */

// Exemplo de função reutilizável
Sinagem.Utils = Sinagem.Utils || {};

/**
 * Validação de email
 * @param {string} email - Email a validar
 * @returns {boolean}
 */
Sinagem.Utils.isEmail = function(email) {
    const regex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
    return regex.test(email);
};

/**
 * Validação de telefone
 * @param {string} phone - Telefone a validar
 * @returns {boolean}
 */
Sinagem.Utils.isPhone = function(phone) {
    const regex = /^[\+]?[1-9][\d]{0,15}$/;
    return regex.test(phone.replace(/[\s\-\(\)]/g, ''));
};

/**
 * Formatar número para moeda
 * @param {number} value - Valor a formatar
 * @param {string} currency - Símbolo de moeda
 * @returns {string}
 */
Sinagem.Utils.formatCurrency = function(value, currency = 'MT') {
    return new Intl.NumberFormat('pt-BR', {
        style: 'currency',
        currency: 'BRL',
        minimumFractionDigits: 2
    }).format(value).replace('R$', currency);
};

/**
 * Sleep/Delay
 * @param {number} ms - Milissegundos
 * @returns {Promise}
 */
Sinagem.Utils.delay = function(ms) {
    return new Promise(resolve => setTimeout(resolve, ms));
};

console.log('🔧 Módulo Utils carregado');
