devportal2 / static /js /app.js
akborana4's picture
Create static/js/app.js
21ad257 verified
// static/js/app.js
function switchView(viewId, element) {
// Hide all views
document.querySelectorAll('.view-container').forEach(v => {
v.classList.remove('active');
// Small delay to allow CSS transitions if we add them later
v.style.display = 'none';
});
// Show the target view
const target = document.getElementById(viewId);
if(target) {
target.style.display = 'flex';
// Trigger reflow
void target.offsetWidth;
target.classList.add('active');
}
// Update Sidebar highlighting
document.querySelectorAll('.nav-item').forEach(n => n.classList.remove('active'));
if(element) element.classList.add('active');
// Auto-close sidebar on mobile after clicking
if(window.innerWidth <= 768) {
document.getElementById('sidebar').classList.remove('open');
}
// Auto-focus specific inputs based on view
if(viewId === 'terminal-view') {
const termInput = document.getElementById('terminal-input');
if(termInput) termInput.focus();
}
}