github.com/lucasscarioca/music-stash@v0.0.0-20230829021135-a8b8893b12a5/assets/static/js/app.js (about) 1 console.log('hello') 2 3 if (localStorage.theme === 'dark' || (!('theme' in localStorage) && window.matchMedia('(prefers-color-scheme: dark)').matches)) { 4 document.documentElement.classList.add('dark') 5 localStorage.theme = 'dark' 6 setTimeout(() => { 7 const themeIcon = document.getElementById('theme') 8 themeIcon?.classList?.replace('ph-moon', 'ph-sun') 9 }, 200) 10 } else { 11 document.documentElement.classList.remove('dark') 12 localStorage.theme = 'light' 13 setTimeout(() => { 14 const themeIcon = document.getElementById('theme') 15 themeIcon?.classList?.replace('ph-sun', 'ph-moon') 16 }, 200) 17 } 18 19 function toggleTheme() { 20 const themeIcon = document.getElementById('theme') 21 if (localStorage.theme === 'dark') { 22 document.documentElement.classList.remove('dark') 23 localStorage.theme = 'light' 24 themeIcon?.classList?.replace('ph-sun', 'ph-moon') 25 } else { 26 document.documentElement.classList.add('dark') 27 localStorage.theme = 'dark' 28 themeIcon?.classList?.replace('ph-moon', 'ph-sun') 29 } 30 } 31 32 function menu() { 33 const list = document.querySelector('ul') 34 const menu = document.getElementById('menu') 35 menu.classList.contains('ph-list') 36 ? (menu.classList.replace('ph-list', 'ph-x'), list.classList.remove('hidden'), list.classList.add('h-52'), list.classList.add('opacity-100')) 37 : (menu.classList.replace('ph-x', 'ph-list'), list.classList.remove('h-52'), list.classList.remove('opacity-100'), list.classList.add('hidden')) 38 }