PageSourceSearch

https://www.dansr.com/dist/assets/filter-component-5a4e9f39.js

js dansr.com collected 2026-09-24 11:30:24 UTC 2,638 bytes, 2 lines download raw bytes

1class o extends HTMLElement{constructor(){super(),this.handleToggleDropdown=e=>{e.preventDefault(),this.classList.contains("is-dropdown-open")?this.closeDropdownLink(this):this.openDropdownLink(this)},this.handleTabFocus=e=>{let t=e.key==="Tab";const i=this._dropdown.lastElementChild,n=this._dropdown.firstChild;if(document.activeElement===i.firstChild)if(t){if(e.shiftKey&&t)return;t&&this.closeDropdownLink(this)}else return;else if(document.activeElement===n.firstChild)if(t)e.shiftKey&&t&&this.closeDropdownLink(this);else return},this.handleNavBarShiftTab=e=>{let t=e.key==="Tab";this._dropdownAction===document.activeElement&&e.shiftKey&&t&&this.closeDropdownLink(this)},this.openDropdownLink=e=>{e.classList.add("is-dropdown-open"),e.classList.remove("is-dropdown-closed");let t=0;for(let i=0;i<this._dropdown.children.length;i++){const n=this._dropdown.children[i];n.style.height=`${n.scrollHeight}px`,t+=n.scrollHeight}this._dropdown.style.height=`${t}px`,this._dropdown.setAttribute("aria-expanded","true"),window.addEventListener("click",this.handleClickOutsideComponent),window.addEventListener("keydown",this.handleEscExpandedClose)},this.closeDropdownLink=e=>{e.classList.remove("is-dropdown-open"),e.classList.add("is-dropdown-closed"),this._dropdown.style.height="0",this._dropdown.setAttribute("aria-expanded","false");for(let t=0;t<this._dropdown.children.length;t++)this._dropdown.children[t].style.height="0";window.removeEventListener("click",this.handleClickOutsideComponent)},this.handleEscExpandedClose=e=>{e.key==="Escape"&&(this.closeDropdownLink(this),window.removeEventListener("keydown",this.handleEscExpandedClose))},this.handleClickOutsideComponent=e=>{const t=e.target;!this.contains(t)&&(this.closeDropdownLink(this),window.removeEventListener("click",this.handleClickOutsideComponent))},this.isInViewPort=()=>{const e=this._dropdown.getBoundingClientRect(),t=document.documentElement.clientWidth-25;e.right>=(window.innerWidth||document.documentElement.clientWidth)&&(this._dropdown.style.left=`${t-e.right}px`)},this._dropdown=this.querySelector('[data-name="dropdown"]'),this._dropdownAction=this.querySelector('[data-name="open-dropdown"]')}connectedCallback(){this._dropdownAction.addEventListener("click",this.handleToggleDropdown),this._dropdownAction.addEventListener("click",this.handleToggleDropdown,!1),this._dropdown.addEventListener("keydown",this.handleTabFocus),this._dropdownAction.addEventListener("keydown",this.handleNavBarShiftTab,!1),this.isInViewPort(),window.addEventListener("resize",this.isInViewPort)}}export{o as default};
2//# sourceMappingURL=filter-component-5a4e9f39.js.map

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.