FourLabs-UN2's picture
Monte com sidebar e essas cores: colors: {
e9077cf verified
document.addEventListener('DOMContentLoaded', function() {
// Initialize tooltips
const tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'));
tooltipTriggerList.map(function (tooltipTriggerEl) {
return new bootstrap.Tooltip(tooltipTriggerEl);
});
// Dark mode toggle functionality
const darkModeToggle = document.getElementById('darkModeToggle');
if (darkModeToggle) {
darkModeToggle.addEventListener('click', function() {
document.documentElement.classList.toggle('dark');
localStorage.setItem('darkMode', document.documentElement.classList.contains('dark'));
});
}
// Check for saved dark mode preference
if (localStorage.getItem('darkMode') === 'true') {
document.documentElement.classList.add('dark');
}
// Mobile menu toggle
const mobileMenuButton = document.getElementById('mobileMenuButton');
const mobileMenu = document.getElementById('mobileMenu');
if (mobileMenuButton && mobileMenu) {
mobileMenuButton.addEventListener('click', function() {
mobileMenu.classList.toggle('hidden');
});
}
});
// Sample function to simulate API call
async function connectRepository() {
try {
// Simulate API call
await new Promise(resolve => setTimeout(resolve, 1000));
return { success: true, message: 'Repository connected successfully' };
} catch (error) {
return { success: false, message: 'Failed to connect repository' };
}
}
// Event listeners for interactive elements
document.querySelectorAll('[data-action="connect-repo"]').forEach(button => {
button.addEventListener('click', async function() {
const spinner = document.createElement('span');
spinner.className = 'animate-spin mr-2';
spinner.innerHTML = '<i data-feather="loader"></i>';
this.prepend(spinner);
feather.replace();
this.disabled = true;
const result = await connectRepository();
spinner.remove();
this.disabled = false;
if (result.success) {
alert('Repository connected successfully!');
} else {
alert('Error: ' + result.message);
}
});
});