// Database Connection Module - MySQL import mysql from 'mysql2/promise'; import dotenv from 'dotenv'; dotenv.config(); // Create connection pool const pool = mysql.createPool({ host: process.env.DB_HOST || 'localhost', user: process.env.DB_USER || 'root', password: process.env.DB_PASSWORD || '', database: process.env.DB_NAME || 'sarpras', waitForConnections: true, connectionLimit: 10, queueLimit: 0, enableKeepAlive: true, keepAliveInitialDelay: 0 }); // Test connection export const testConnection = async () => { try { const connection = await pool.getConnection(); console.log('✅ Database connected successfully'); connection.release(); return true; } catch (error) { console.error('❌ Database connection failed:', error.message); return false; } }; // Helper: Generate UUID export const generateId = () => { return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { const r = Math.random() * 16 | 0; const v = c === 'x' ? r : (r & 0x3 | 0x8); return v.toString(16); }); }; export default pool;