1document.getElementById("wpdevartwidesearchbutton").addEventListener("click", function(){ 2 setTimeout(function() { jQuery('#wpdevartfocusonoverlayinputwide').focus() }, 50); 3}); 4const wpdevartTrapFocus = (element, prevFocusableElement = document.activeElement) => { 5 const wpdevartFocusableElements = Array.from( 6 element.querySelectorAll( 7 'a[href]:not([disabled]), button:not([disabled]), textarea:not([disabled]), input[type="search"]:not([disabled]), input[type="radio"]:not([disabled]), input[type="checkbox"]:not([disabled]), select:not([disabled])' 8 ) 9 ); 10 const wpdevartFirstFocusableElement = wpdevartFocusableElements[0]; 11 const wpdevartLastFocusableElement = wpdevartFocusableElements[wpdevartFocusableElements.length - 1]; 12 let wpdevartCurrentFocusElement = null; 13 14 wpdevartFirstFocusableElement.focus(); 15 wpdevartCurrentFocusElement = wpdevartFirstFocusableElement; 16 17 const wpdevartHandleFocus = e => { 18 e.preventDefault(); 19 if (wpdevartFocusableElements.includes(e.target)) { 20 wpdevartCurrentFocusElement = e.target; 21 } else { 22 if (wpdevartCurrentFocusElement === wpdevartFirstFocusableElement) { 23 wpdevartLastFocusableElement.focus(); 24 } else { 25 wpdevartFirstFocusableElement.focus(); 26 } 27 wpdevartCurrentFocusElement = document.activeElement; 28 } 29 }; 30 document.addEventListener("focus", wpdevartHandleFocus, true); 31 return { 32 onClose: () => { 33 document.removeEventListener("focus", wpdevartHandleFocus, true); 34 prevFocusableElement.focus(); 35 } 36 }; 37 }; 38 const wpdevartToggleModal = ((e) => { 39 const wpdevartmodal = document.getElementById("wpdevartModalContainer"); 40 if (wpdevartmodal.classList != ('wpdevart-search-overlay-show-on-click')) { 41 wpdevartmodal.classList.toggle("wpdevart-search-overlay-show-on-click"); 42 trapped = wpdevartTrapFocus(wpdevartmodal); 43 } else { 44 trapped.onClose(); 45 } 46}) 47 48/* Search Overlay for mobile devices */ 49document.getElementById("wpdevartsmallsearchbutton").addEventListener("click", function(){ 50 setTimeout(function() { jQuery('#wpdevartfocusonoverlayinputsmall').focus() }, 50); 51}); 52 53const wpdevartTrapFocusSmall = (element, prevFocusableElement = document.activeElement) => { 54 const wpdevartFocusableElements = Array.from( 55 element.querySelectorAll( 56 'a[href]:not([disabled]), button:not([disabled]), textarea:not([disabled]), input[type="search"]:not([disabled]), input[type="radio"]:not([disabled]), input[type="checkbox"]:not([disabled]), select:not([disabled])' 57 ) 58 ); 59 const wpdevartFirstFocusableElement = wpdevartFocusableElements[0]; 60 const wpdevartLastFocusableElement = wpdevartFocusableElements[wpdevartFocusableElements.length - 1]; 61 let wpdevartCurrentFocusElement = null; 62 63 wpdevartFirstFocusableElement.focus(); 64 wpdevartCurrentFocusElement = wpdevartFirstFocusableElement; 65 66 const wpdevartHandleFocus = e => { 67 e.preventDefault(); 68 if (wpdevartFocusableElements.includes(e.target)) { 69 wpdevartCurrentFocusElement = e.target; 70 } else { 71 if (wpdevartCurrentFocusElement === wpdevartFirstFocusableElement) { 72 wpdevartLastFocusableElement.focus(); 73 } else { 74 wpdevartFirstFocusableElement.focus(); 75 } 76 wpdevartCurrentFocusElement = document.activeElement; 77 } 78 }; 79 document.addEventListener("focus", wpdevartHandleFocus, true); 80 return { 81 onClose: () => { 82 document.removeEventListener("focus", wpdevartHandleFocus, true); 83 prevFocusableElement.focus(); 84 } 85 }; 86 }; 87 88 const wpdevartToggleModalSmall = ((e) => { 89 const wpdevartmodalsmall = document.getElementById("wpdevartModalContainerSmall"); 90 if (wpdevartmodalsmall.classList != ('wpdevart-search-overlay-show-on-click')) { 91 wpdevartmodalsmall.classList.toggle("wpdevart-search-overlay-show-on-click"); 92 trapped = wpdevartTrapFocusSmall(wpdevartmodalsmall); 93 } else { 94 trapped.onClose(); 95 } 96})
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.