1document.addEventListener("DOMContentLoaded", function() { 2 responsiveChangesLang(); 3 window.addEventListener('resize', responsiveChangesLang); 4 var curLangLabels = document.querySelectorAll('[data-theme-lang-label]'); 5 if(curLangLabels){ 6 for(var i=0; i<curLangLabels.length; i++){ 7 curLangLabels[i].addEventListener('click', toggleLangDropdown); 8 curLangLabels[i].addEventListener('keydown',function(e){ 9 if(e.which === 13){ 10 this.click(); 11 } 12 }); 13 }; 14 } 15}); 16function hideLang(){ 17 var activeLangDropdown = document.querySelector('.theme-lang-dropdown-open'); 18 activeLangDropdown && activeLangDropdown.classList.remove('theme-lang-dropdown-open'); 19 var lagnLabel = document.querySelector('[data-theme-lang-label]'); 20 lagnLabel && lagnLabel.setAttribute('aria-expanded','false'); 21} 22function toggleLangDropdown(e){ 23 e.target.parentNode.classList.toggle('theme-lang-dropdown-open'); 24 if(e.target.parentNode.classList.contains('theme-lang-dropdown-open')){ 25 e.target.setAttribute('aria-expanded','true'); 26 e.target.setAttribute('aria-haspopup','false'); 27 var firstLang = e.target.parentElement.querySelector('[data-theme-lang-list]'); 28 firstLang && firstLang.focus(); 29 }else{ 30 e.target.setAttribute('aria-expanded','false'); 31 e.target.setAttribute('aria-haspopup','true'); 32 } 33} 34function responsiveChangesLang(){ 35 var langContainer = $D.get('[data-theme-lang-container]'); 36 var langNonResContainer = $D.get('[data-theme-lang-container-non-res]'); 37 var langResContainer = $D.get('[data-theme-lang-container-res]'); 38 if(window.innerWidth < 992 ){ 39 if(langNonResContainer && langResContainer && langContainer){ 40 langResContainer.appendChild(langContainer); 41 } 42 }else{ 43 if(langNonResContainer && langResContainer && langContainer){ 44 langNonResContainer.appendChild(langContainer); 45 } 46 } 47} 48 49var langContainer = document.querySelector('[data-theme-lang-container]'); 50var languageListLi = document.querySelectorAll('[data-theme-lang-list]'); 51var languageListLabel = document.querySelector('[data-theme-lang-label]'); 52if(langContainer){ 53 for(var i=0;i<languageListLi.length;i++){ 54 hideOnBlur(languageListLi[i],langContainer,hideLang,languageListLabel) 55 languageListLi[i].addEventListener('keydown',function(e){ 56 if(e.which === 13){ 57 this.click(); 58 } 59 if(e.which === 27){ 60 hideLang(); 61 languageListLabel.focus(); 62 languageListLabel.setAttribute('aria-expanded','false') 63 languageListLabel.setAttribute('aria-haspopup','true') 64 } 65 }); 66 } 67 68 languageListLabel.addEventListener('keydown',function(e){ 69 if(e.which === 9){ 70 hideOnBlur(this,langContainer,hideLang); 71 } 72 }); 73}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.