// Shared JavaScript across all pages console.log('AnomalyNinja loaded'); // AI Assistant functionality function initAIAssistant() { const assistant = document.querySelector('ai-assistant'); if (assistant) { const shadow = assistant.shadowRoot; const input = shadow.querySelector('.assistant-input'); const messages = shadow.querySelector('.assistant-messages'); input.addEventListener('keypress', (e) => { if (e.key === 'Enter' && input.value.trim()) { const userMessage = document.createElement('div'); userMessage.innerHTML = `
${input.value}
`; messages.appendChild(userMessage); // Simulate AI response setTimeout(() => { const aiMessage = document.createElement('div'); aiMessage.innerHTML = `
I've analyzed your database logs and found 3 potential SQL injection attempts in the last hour. Would you like me to show you the details?
`; messages.appendChild(aiMessage); messages.scrollTop = messages.scrollHeight; }, 1000); input.value = ''; } }); } } // Theme toggle functionality document.addEventListener('DOMContentLoaded', () => { initAIAssistant(); const themeToggle = document.getElementById('theme-toggle'); if (themeToggle) { themeToggle.addEventListener('click', () => { document.documentElement.classList.toggle('dark'); localStorage.setItem('theme', document.documentElement.classList.contains('dark') ? 'dark' : 'light'); }); } });