Jake Vanderwerf
4 days ago 0afb2c0046b55c123eafb4ab9ee77efa68d12463
src/menu/view.js
New file
@@ -0,0 +1,43 @@
window.details = document.querySelectorAll('details');
window.toggles = document.querySelectorAll('.toggle-details');
document.addEventListener('click', (e) => {
   if (e.target.classList.contains('toggle-details')) {
      e.target.classList.toggle('open');
      let on = e.target.classList.contains('open');
      let section = e.target.dataset.toggle;
      if (section === 'all') {
         toggleToggles(on);
      }
      let span = e.target.querySelector('span');
      span.textContent = (on) ? 'Close': 'Open';
      toggleDetails(section, on);
   }
});
console.log(window.details);
function toggleDetails(name, toggle) {
   if (name === 'all') {
      console.log('Toggling all!');
      window.details.forEach(detail => {
         console.log(detail);
         detail.open = toggle;
      });
   } else {
      for (let detail of window.details) {
         if (detail.dataset.section === name) {
            detail.open = toggle;
         }
      }
   }
}
function toggleToggles(on) {
   window.toggles.forEach(toggle => {
      if (toggle.dataset.toggle !== 'all') {
         toggle.querySelector('span').textContent = (on) ? 'Close' : 'Open';
      }
   });
}