1export function initMenuDropdowns(){const t=window.location.pathname,e=Array.from(document.querySelectorAll(".dropdown-publisher"));if(e.length===0)return;e.forEach(e=>{const n=e.querySelector(".dropdown-publisher-menu"),o=e.querySelector(".publisher-menu-toggle"),s=e.querySelector(".dropdown-menu");if(!n||!o||!s)return;const i=e.querySelectorAll(".nav-link, .dropdown-item");i.forEach(e=>{e.getAttribute("href")===t&&t!=="/"&&(e.classList.add("active"),n.classList.add("active"))}),o.addEventListener("click",e=>{e.preventDefault(),e.stopPropagation();const t=s.classList.toggle("show");n.classList.toggle("is-open",t)}),window.matchMedia("(hover: hover) and (pointer: fine)").matches&&(e.addEventListener("mouseenter",()=>{s.classList.add("show"),n.classList.add("is-open")}),e.addEventListener("mouseleave",()=>{s.classList.remove("show"),n.classList.remove("is-open")}))}),document.addEventListener("click",t=>{e.forEach(e=>{if(e.contains(t.target))return;const n=e.querySelector(".dropdown-publisher-menu"),s=e.querySelector(".dropdown-menu");if(!n||!s)return;s.classList.remove("show"),n.classList.remove("is-open")})})}
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.