43 lines
1.6 KiB
JavaScript
43 lines
1.6 KiB
JavaScript
// Sidebar functionality
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
// start: Sidebar
|
|
const sidebarToggle = document.querySelector('.sidebar-toggle');
|
|
const sidebarOverlay = document.querySelector('.sidebar-overlay');
|
|
const sidebarMenu = document.querySelector('.sidebar-menu');
|
|
const main = document.querySelector('.main');
|
|
|
|
if (sidebarToggle) {
|
|
sidebarToggle.addEventListener('click', function (e) {
|
|
e.preventDefault();
|
|
main.classList.toggle('active');
|
|
sidebarOverlay.classList.toggle('hidden');
|
|
sidebarMenu.classList.toggle('-translate-x-full');
|
|
});
|
|
}
|
|
|
|
if (sidebarOverlay) {
|
|
sidebarOverlay.addEventListener('click', function (e) {
|
|
e.preventDefault();
|
|
main.classList.add('active');
|
|
sidebarOverlay.classList.add('hidden');
|
|
sidebarMenu.classList.add('-translate-x-full');
|
|
});
|
|
}
|
|
|
|
document.querySelectorAll('.sidebar-dropdown-toggle').forEach(function (item) {
|
|
item.addEventListener('click', function (e) {
|
|
e.preventDefault();
|
|
const parent = item.closest('.group');
|
|
if (parent.classList.contains('selected')) {
|
|
parent.classList.remove('selected');
|
|
} else {
|
|
document.querySelectorAll('.sidebar-dropdown-toggle').forEach(function (i) {
|
|
i.closest('.group').classList.remove('selected');
|
|
});
|
|
parent.classList.add('selected');
|
|
}
|
|
});
|
|
});
|
|
// end: Sidebar
|
|
});
|