diff options
Diffstat (limited to 'themes/terminal/assets/js/languageSelector.js')
-rw-r--r-- | themes/terminal/assets/js/languageSelector.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/themes/terminal/assets/js/languageSelector.js b/themes/terminal/assets/js/languageSelector.js new file mode 100644 index 0000000..23c9acb --- /dev/null +++ b/themes/terminal/assets/js/languageSelector.js @@ -0,0 +1,23 @@ +const mobileQuery = getComputedStyle(document.body).getPropertyValue("--phoneWidth"); +const isMobile = () => window.matchMedia(mobileQuery).matches; + +const languageSelector = document.querySelector(".language-selector-current"); +const moreLanguagesContainer = document.querySelector(".language-selector__more"); + +document.body.addEventListener("click", () => { + if ( + !isMobile() && + moreLanguagesContainer && + !moreLanguagesContainer.classList.contains("hidden") + ) { + moreLanguagesContainer.classList.add("hidden"); + } +}); + +languageSelector && + languageSelector.addEventListener("click", (e) => { + if (!isMobile()) { + e.stopPropagation(); + moreLanguagesContainer.classList.toggle("hidden"); + } + }); |