PageSourceSearch

https://mauvais.co.uk/cdn/shop/t/416/assets/fiftyfifty-hotspots.js?v=141259400641046698371790864316

js mauvais.co.uk collected 2026-10-07 13:11:58 UTC 2,190 bytes, 2 lines download raw bytes

1const{debounce:baoDebounce}=window.BAO.Utils;class SectionHotspots extends window.BAO.CustomElement(){constructor(){super(),this.classes={active:"prd-Hotspot-active"}}connectedCallback(){super.connectedCallback(),this.calculateMobileOffsets()}setupListeners(){super.setupListeners(),window.addEventListener("resize",baoDebounce(this.calculateMobileOffsets.bind(this),200)),this.els?.form?.elements.forEach(form=>{form.addEventListener("submit",()=>{this.hideAllPopups()})}),this.els?.submit?.elements.forEach(submit=>{submit.addEventListener("click",()=>{this.hideAllPopups()})}),this.els?.toggle?.elements.forEach(toggle=>{const parentHotspot=toggle.closest('[data-section-hotspots-el="hotspot"]');parentHotspot&&toggle.addEventListener("click",()=>{this.hideOtherPopups(parentHotspot),parentHotspot.classList.toggle(this.classes.active)})}),this.els?.close?.elements.forEach(close=>{const parentHotspot=close.closest('[data-section-hotspots-el="hotspot"]');parentHotspot&&close.addEventListener("click",()=>{parentHotspot.classList.remove(this.classes.active)})})}hideAllPopups(){this.els?.hotspot?.elements.forEach(hotspot=>{hotspot.classList.remove(this.classes.active)})}hideOtherPopups(target){const externalHotspots=this.externalEls.hotspot?.elements?this.externalEls.hotspot.elements:[];[...this.els.hotspot?.elements?this.els.hotspot.elements:[],...externalHotspots].forEach(hotspot=>{hotspot!==target&&hotspot.classList.remove(this.classes.active)})}calculateMobileOffsets(){if(window.innerWidth>=768)return;const containerRect=this.externalEls.container.element.getBoundingClientRect(),containerCenter=containerRect.width/2;this.els?.popup?.elements.forEach(popup=>{const hotspot=popup.closest('[data-section-hotspots-el="hotspot"]');if(!hotspot)return;const hotspotRect=hotspot.getBoundingClientRect(),hotspotCenter=hotspotRect.left-containerRect.left+hotspotRect.width/2,offset=containerCenter-hotspotCenter;popup.style.setProperty("--popup-mobile-offset",`${offset}px`)})}}customElements.get("section-hotspots")||customElements.define("section-hotspots",SectionHotspots);
2//# sourceMappingURL=/cdn/shop/t/416/assets/fiftyfifty-hotspots.js.map?v=141259400641046698371790864316

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.