1const throttle=(callback,delay)=>{let throttleTimeout=null;let storedEvent=null;const throttledEventHandler=(event)=>{storedEvent=event;const shouldHandleEvent=!throttleTimeout;if(shouldHandleEvent){callback(storedEvent);storedEvent=null;throttleTimeout=setTimeout(()=>{throttleTimeout=null;if(storedEvent){throttledEventHandler(storedEvent);}},delay);}};return throttledEventHandler;};var curtain=document.querySelector("#curtain-menu");var curtainContent=document.querySelector("#curtain-menu-container");var openCurtainButton=document.querySelector("#open-curtain-button");var closeCurtainButton=document.querySelector("#close-curtain-button");var lastCurtainLink=document.querySelector("#menu-primary_navigation > li:last-child a:last-of-type");closeCurtainButton.addEventListener("keydown",function(event){setTimeout(()=>{if(event.shiftKey&&event.keyCode==9){lastCurtainLink.focus();}},110);});lastCurtainLink.addEventListener("keydown",function(event){setTimeout(()=>{if(!event.shiftKey&&event.keyCode==9){closeCurtainButton.focus();}},10);});function handleCurtainKeydown(event){if(event.key==="Escape"){closeCurtain();window.removeEventListener("keydown",handleCurtainKeydown);}} 2function openCurtain(){document.querySelector("html").style.overflow="hidden";window.addEventListener("keydown",handleCurtainKeydown);curtain.style.width="100vw";curtain.style.visibility="visible";setTimeout(()=>{curtainContent.style.opacity="1";closeCurtainButton.style.opacity="1";closeCurtainButton.focus();},350);} 3function closeCurtain(){document.querySelector("html").style.overflow="auto";curtainContent.style.opacity="0";closeCurtainButton.style.opacity="0";setTimeout(()=>{curtain.style.width="0";},350);setTimeout(()=>{curtain.style.visibility="hidden";openCurtainButton.focus();},650);} 4function sentinelIO(){const sentinel=document.querySelector(".sentinel");const header=document.querySelector(".theme-header");const options={root:document,rootMargin:"0px",threshold:1,};const callback=(entries,observer)=>{setTimeout(()=>{entries.forEach((entry)=>{if(entry.isIntersecting){setTimeout(()=>{header.classList.remove("enabled");},300);}else{header.classList.add("enabled");}});},1);};const throttledCallback=throttle(callback,300);observer=new IntersectionObserver(throttledCallback,options);observer.observe(sentinel);} 5sentinelIO();document.querySelector(".magnifying").setAttribute("aria-label","open site search");
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.