1class ColorSwatches extends HTMLElement{connectedCallback(){this.selectors={colorSwatchImage:".grid-product__color-image",colorSwatch:"[data-variant-id]",gridItemOverlayLink:".grid-item__overlay-link",gridProductImageWrap:".grid-product__image-wrap"};const cardContainer=this.closest(".grid-item__link")||this.parentElement||document;this.overlayLink=cardContainer.querySelector(this.selectors.gridItemOverlayLink),this.gridProductImageWrap=cardContainer.querySelector(this.selectors.gridProductImageWrap),this.colorImages=this.gridProductImageWrap?this.gridProductImageWrap.querySelectorAll(this.selectors.colorSwatchImage):[],this.colorImages.length&&(this.swatches=this.querySelectorAll(this.selectors.colorSwatch),this.colorSwatchHovering())}colorSwatchHovering(){this.swatches.forEach(swatch=>{swatch.addEventListener("mouseenter",()=>this.setActiveColorImage(swatch)),swatch.addEventListener("touchstart",evt=>{evt.preventDefault(),this.setActiveColorImage(swatch)},{passive:!0}),swatch.addEventListener("mouseleave",()=>this.removeActiveColorImage(swatch))})}setActiveColorImage(swatch){if(!this.gridProductImageWrap)return;const id=swatch.dataset.variantId,image=swatch.dataset.variantImage;this.colorImages.forEach(el=>{el.classList.remove("is-active")}),this.swatches.forEach(el=>{el.classList.remove("is-active")});const imageEl=this.gridProductImageWrap.querySelector(".grid-product__color-image--"+id);imageEl&&(imageEl.style.backgroundImage="url("+image+")",imageEl.classList.add("is-active")),swatch.classList.add("is-active");const variantUrl=swatch.dataset.url;this.overlayLink&&variantUrl&&this.overlayLink.setAttribute("href",variantUrl)}removeActiveColorImage(swatch){if(!this.gridProductImageWrap)return;const id=swatch.dataset.variantId,imageEl=this.gridProductImageWrap.querySelector(`.grid-product__color-image--${id}`);imageEl&&imageEl.classList.remove("is-active"),swatch.classList.remove("is-active")}}customElements.define("color-swatches",ColorSwatches); 2//# sourceMappingURL=/cdn/shop/t/18/assets/list.product-card.swatches.js.map?v=19863687979138205901788906318
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.