2022-04-25 18:05:29 +02:00
|
|
|
const $ = require('jquery')
|
|
|
|
|
2023-11-14 22:51:40 +01:00
|
|
|
const Sidebar = () => {
|
|
|
|
const menu = document.querySelector('.sidebar')
|
|
|
|
|
|
|
|
if (!menu) {
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
const stickyMenu = menu.querySelector('.sidebar-sticky')
|
2023-11-14 23:03:43 +01:00
|
|
|
const items = stickyMenu.querySelectorAll('a.nav-link')
|
2023-11-14 22:51:40 +01:00
|
|
|
const currentItem = menu.querySelector('.nav-link.active')
|
2023-11-14 23:03:43 +01:00
|
|
|
|
|
|
|
items.forEach((item) => {
|
|
|
|
item.addEventListener('click', () => {
|
|
|
|
localStorage.setItem('sidebar-item-top', stickyMenu.scrollTop)
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
2023-11-14 22:51:40 +01:00
|
|
|
const toggler = menu.querySelector('.sidebar-toggler .btn')
|
|
|
|
|
|
|
|
toggler.addEventListener('click', () => {
|
|
|
|
menu.classList.toggle('is-open')
|
2022-04-25 18:05:29 +02:00
|
|
|
})
|
2023-11-14 22:51:40 +01:00
|
|
|
|
2023-11-14 23:03:43 +01:00
|
|
|
if (currentItem) {
|
2023-11-14 23:08:09 +01:00
|
|
|
stickyMenu.scrollTo({
|
|
|
|
top: localStorage.getItem('sidebar-item-top') ?? 0,
|
|
|
|
behavior: 'smooth'
|
|
|
|
})
|
2023-11-14 23:03:43 +01:00
|
|
|
}
|
2022-04-25 18:05:29 +02:00
|
|
|
}
|
|
|
|
|
2023-11-14 22:51:40 +01:00
|
|
|
module.exports = Sidebar
|