// ===== APP.JS - Точка входа ===== console.log('🚀 TurboRFQ загружается...'); // Глобальные переменные let currentSchema = null; let currentTable = null; let currentMeta = null; let table = null; let enterHandler = null; let selectedRowsDataGlobal = new Map(); // Перехватываем все ошибки window.addEventListener('error', function(e) { console.error('❌ ГЛОБАЛЬНАЯ ОШИБКА:', e.message, e.filename, e.lineno); }); // Инициализация приложения при загрузке DOM document.addEventListener('DOMContentLoaded', function() { console.log('📦 DOM загружен, инициализация модулей...'); // Инициализируем обработчики initUserHandlers(); // user.js initOperationsHandlers(); // operations.js initIOHandlers(); // io.js console.log('✅ TurboRFQ готов к работе'); });