import"../../_jump/jump.js";import"../../_playground/playground.js";import{SelectNavController as i,makeSelectNav as m}from"../../_outline/select.js";import{TreeNavController as u}from"../../_outline/tree.js";const s=document.querySelector(".js-tree");if(s){const e=new u(s),t=m(e),a=document.querySelector(".js-mainNavMobile");a&&a.firstElementChild&&a?.replaceChild(t,a.firstElementChild),t.firstElementChild&&new i(t.firstElementChild)}const n=document.querySelector(".js-readme"),r=document.querySelector(".js-readmeContent"),c=document.querySelector(".js-readmeOutline"),d=document.querySelectorAll(".js-readmeExpand"),o=document.querySelector(".js-readmeCollapse"),p=document.querySelector(".DocNavMobile-select");n&&r&&c&&d.length&&o&&(window.location.hash.includes("readme")&&n.classList.add("UnitReadme--expanded"),p?.addEventListener("change",e=>{e.target.value.startsWith("readme-")&&n.classList.add("UnitReadme--expanded")}),d.forEach(e=>e.addEventListener("click",t=>{t.preventDefault(),n.classList.add("UnitReadme--expanded"),n.scrollIntoView()})),o.addEventListener("click",e=>{e.preventDefault(),n.classList.remove("UnitReadme--expanded"),d[1]&&d[1].scrollIntoView({block:"center"})}),r.addEventListener("keyup",()=>{n.classList.add("UnitReadme--expanded")}),r.addEventListener("click",()=>{n.classList.add("UnitReadme--expanded")}),c.addEventListener("click",()=>{n.classList.add("UnitReadme--expanded")}),document.addEventListener("keydown",e=>{(e.ctrlKey||e.metaKey)&&e.key==="f"&&n.classList.add("UnitReadme--expanded")}));for(const e of document.querySelectorAll(".js-deprecatedTagLink")){const t=new URL(e.href).hash,l=document.querySelector(t)?.parentElement?.parentElement;l&&(e.addEventListener("click",()=>{l.open=!0}),location.hash===t&&(l.open=!0))}document.querySelectorAll(".js-buildContextSelect").forEach(e=>{e.addEventListener("change",t=>{window.location.search=`?GOOS=${t.target.value}`})});
//# sourceMappingURL=main.js.map
