PageSourceSearch

https://eaglefittings.com/cdn/shop/t/24/assets/facet-filters.js?v=182535810717210575091765383045

js eaglefittings.com collected 2026-10-04 04:51:34 UTC 6,030 bytes, 1 lines download raw bytes

1if(!customElements.get("facet-filters")){class e extends SideDrawer{connectedCallback(){this.init()}disconnectedCallback(){window.removeEventListener("popstate",this.historyChangeHandler),this.breakpointChangeHandler&&window.removeEventListener("on:breakpoint-change",this.breakpointChangeHandler)}init(){this.filteringEnabled="true"===this.dataset.filtering,this.sortingEnabled="true"===this.dataset.sorting,this.form=document.getElementById("facets"),this.results=document.getElementById("filter-results"),this.expanded=[],this.filterChangeTimeout=null,this.handleBreakpointChange(),this.addElements(),this.addListeners(),this.historyChangeHandler=this.historyChangeHandler||this.handleHistoryChange.bind(this),window.addEventListener("popstate",this.historyChangeHandler)}addElements(){this.filteringEnabled&&(this.filters=this.querySelector(".facets__filters"),this.activeFilters=this.querySelector(".facets__active-filters"),this.activeFiltersList=this.querySelector(".active-filters"),this.activeFiltersHeader=this.querySelector(".active-filters-header"),this.footer=this.querySelector(".facets__footer")),this.sortingEnabled&&(this.mobileSortByOptions=this.querySelectorAll(".js-drawer-sort-by"),this.desktopSortBy=document.querySelector(".products-toolbar__sort"))}addListeners(){this.filteringEnabled&&(this.breakpointChangeHandler=this.breakpointChangeHandler||this.handleBreakpointChange.bind(this),this.filters.addEventListener("click",this.handleFiltersClick.bind(this)),this.filters.addEventListener("input",this.handleFilterChange.bind(this)),this.filters.addEventListener("change",this.handleFilterChange.bind(this)),this.activeFilters.addEventListener("click",this.handleActiveFiltersClick.bind(this)),window.addEventListener("on:breakpoint-change",this.breakpointChangeHandler)),this.sortingEnabled&&this.desktopSortBy.addEventListener("change",this.handleFilterChange.bind(this))}handleBreakpointChange(){theme.mediaMatches.lg?(this.setAttribute("open",""),this.setAttribute("aria-hidden","false"),this.removeAttribute("aria-modal"),this.removeAttribute("role")):(this.close(),this.setAttribute("role","dialog"),this.setAttribute("aria-modal","true"),this.setAttribute("aria-hidden","true"),this.hidden=!1)}handleFilterChange(e){if("change"===e.type&&!e.target.id?.includes("price-range")&&!e.target.id?.includes("sort-by"))return;if(e.target.id?.includes("price-range")&&"InputEvent"===e.constructor.name)return;clearTimeout(this.filterChangeTimeout),this.filterChangeTimeout=setTimeout((()=>{const t=new FormData(this.form),s=new URLSearchParams(t),i=[];if(this.sortingEnabled){let t=s.get("sort_by");"CUSTOM-SELECT"===e.target.tagName&&this.mobileSortByOptions.forEach((s=>{s.checked=s.value===e.detail.selectedValue,t=e.detail.selectedValue})),s.set("sort_by",t)}s.forEach(((e,t)=>{e||i.push(t)})),i.forEach((e=>{s.delete(e)})),this.applyFilters(s.toString(),e)}),500)}handleFiltersClick(e){const{target:t}=e;if(t.matches(".js-clear-filter")&&(e.preventDefault(),this.applyFilters(new URL(e.target.href).searchParams.toString(),e)),t.matches(".js-show-more")){const e=t.closest(".filter");t.remove(),e.querySelectorAll("li").forEach((e=>{e.classList.remove("js-hidden")})),this.expanded.includes(e.id)||this.expanded.push(e.id)}}handleActiveFiltersClick(e){"A"===e.target.tagName&&(e.preventDefault(),this.applyFilters(new URL(e.target.href).searchParams.toString(),e))}handleHistoryChange(e){if(null!==e.state){let t="";e.state&&e.state.searchParams&&({searchParams:t}=e.state),this.applyFilters(t,null,!1)}}async applyFilters(t,s,i=!0){try{const s=document.activeElement.id,r=document.querySelector("custom-pagination");r&&(r.dataset.pauseInfiniteScroll="true"),this.results.classList.add("is-loading");const a=this.querySelector(".js-close-drawer-mob");a.ariaDisabled="true",a.classList.add("is-loading");let n=`${window.location.pathname}?${t}`;this.form.dataset.filterSectionId&&(n+=`&section_id=${this.form.dataset.filterSectionId}`),this.applyFiltersFetchAbortController&&this.applyFiltersFetchAbortController.abort("Request changed"),this.applyFiltersFetchAbortController=new AbortController;const l=await fetch(n,{method:"GET",signal:this.applyFiltersFetchAbortController.signal});if(l.ok){const n=document.createElement("template");n.innerHTML=await l.text(),this.form.querySelectorAll("details-disclosure > details").forEach((e=>{const t=n.content.getElementById(e.id);t&&(t.open=e.open)})),n.content.querySelectorAll("#facets details-disclosure > details").forEach((e=>{if(this.expanded.includes(e.id)){e.querySelectorAll(".js-hidden").forEach((e=>{e.classList.remove("js-hidden")})),e.querySelector(".filter__more")?.remove()}})),this.form.innerHTML=n.content.getElementById("facets").innerHTML,a.innerText=n.content.querySelector(".js-close-drawer-mob").innerText;const o=this.results.querySelector("ul");this.currentResultsClass=o?this.results.querySelector("ul").getAttribute("class"):this.currentResultsClass,this.results.innerHTML=n.content.getElementById("filter-results").innerHTML;const h=this.results.querySelector("ul");if(h&&this.currentResultsClass&&h.setAttribute("class",this.currentResultsClass),this.addElements(),this.addListeners(),r&&r.reload&&r.reload(),i&&e.updateURL(t),this.results.getBoundingClientRect().top<0){let e=0;document.querySelector('store-header[data-is-sticky="true"]')&&(e=Number.parseInt(getComputedStyle(this.parentElement).getPropertyValue("--header-height").replace("px",""),10)||0),window.scrollTo({top:this.results.getBoundingClientRect().top+window.scrollY-e-45,behavior:"smooth"})}a.classList.remove("is-loading"),a.removeAttribute("aria-disabled"),r&&(r.dataset.pauseInfiniteScroll="false"),s&&document.getElementById(s)?.focu
1s(),document.dispatchEvent(new CustomEvent("on:facet-filters:updated"),{bubbles:!0})}}catch(e){console.warn(e)}finally{this.results.classList.remove("is-loading")}}static updateURL(e){window.history.pushState({searchParams:e},"",`${window.location.pathname}${e&&"?".concat(e)}`)}}customElements.define("facet-filters",e)}

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.