1class productDetailSwiper extends HTMLElement{constructor(){super(),this.swiperElement=this.querySelector("[data-product-detail-swiper]"),this.swiperOptions={direction:"horizontal"},this.init()}init(){window.addEventListener("load",event=>{this.swiperInstance=new Swiper(this.swiperElement,this.swiperOptions)}),Fancybox.bind("[data-fancybox]",{animated:!1,showClass:!1})}}customElements.get("product-detail-swiper")||customElements.define("product-detail-swiper",productDetailSwiper);class productInfo extends HTMLElement{constructor(){super(),this.productForm=this.querySelector("product-form"),this.productFormQuantity=this.productForm?.querySelector('input[name="quantity"]'),this.quantityInput=this.querySelector("quantity-input"),this.quantityInputElement=this.quantityInput?.querySelector('input[name="quantity"]'),this.quantityInputElement?.addEventListener("change",()=>{this.handleQuantityInput()}),this.handleReviewStarsClick();const inventoryVariantSelected=document.querySelector("[data-inventory-variant-selected]")||!1,inventoryVariantHover=document.querySelector("[data-inventory-variant-hover]")||!1;(document.querySelectorAll(".js-options-label")||!1).forEach(optionLabel=>{optionLabel.addEventListener("mouseover",e=>{const value=e.target.dataset.inventoryQuantity;inventoryVariantHover&&(inventoryVariantHover.innerHTML=value),inventoryVariantSelected&&(inventoryVariantSelected.style.display="none")}),optionLabel.addEventListener("mouseout",e=>{inventoryVariantHover&&(inventoryVariantHover.innerHTML=""),inventoryVariantSelected&&(inventoryVariantSelected.style.display="block")}),optionLabel.addEventListener("click",e=>{const value=e.target.dataset.inventoryQuantity;inventoryVariantSelected&&(inventoryVariantSelected.innerHTML=value)})});const watch=document.querySelector(".js-product-form"),body=document.querySelector("body");function cloneElement(el,elWrapper){if(!el.classList.contains("clone")&&typeof el!=null&&el!=null&&typeof elWrapper!=null&&elWrapper!=null){el.classList.add("clone");const clone=el.cloneNode(!0);elWrapper.appendChild(clone)}}function obCallback(payload){const hasScrolledPastAddToCart=body.querySelector('[data-main-add-to-cart-wrapper] button[type="submit"]')?.getBoundingClientRect().bottom<0;if(payload[0].isIntersecting===!1&&payload[0].intersectionRatio===0&&hasScrolledPastAddToCart){body.classList.add("pdp-add-to-cart-not-visible");const productForm=document.querySelector(".js-product-form"),productFormWrapper=document.querySelector(".js-product-form-target");typeof productForm!=null&&productForm!=null&&typeof productFormWrapper!=null&&productFormWrapper!=null&&cloneElement(productForm,productFormWrapper),setTimeout(()=>{body.classList.add("show")},500)}else body.classList.remove("pdp-add-to-cart-not-visible"),setTimeout(()=>{body.classList.remove("show")},500)}new IntersectionObserver(obCallback).observe(watch)}handleQuantityInput(){this.productFormQuantity.value=this.quantityInputElement.value}handleReviewStarsClick(){const productReviewsTab=document.querySelector("[data-product-reviews-tab]");if(!productReviewsTab)return;this.querySelector(".ruk_rating_snippet")?.addEventListener("click",()=>{productReviewsTab.closest("collapsible-element")?.open(productReviewsTab);const productReviewsTabContent=productReviewsTab.querySelector("[data-collapsible-target]");requestAnimationFrame(()=>{productReviewsTabContent?.scrollIntoView({behavior:"smooth",block:"start",inline:"start"})})})}}customElements.get("product-info")||customElements.define("product-info",productInfo);class pdpBreadcrumbs extends HTMLElement{constructor(){super();const breadcrumbsFromStorage=sessionStorage.getItem("breadcrumbs"),breadcrumbsWrapper=this.querySelector("[data-breadcrumbs-wrapper]"),breadcrumbsinnerHtml=this.generateBreadcrumbsItems(breadcrumbsFromStorage);breadcrumbsinnerHtml&&(breadcrumbsWrapper.innerHTML=breadcrumbsinnerHtml),setTimeout(()=>{sessionStorage.removeItem("breadcrumbs")},100)}generateBreadcrumbsItems(breadcrumbsdata){if(breadcrumbsdata==null||breadcrumbsdata==null||breadcrumbsdata=="")return!1;let breadcrumbsList="";return breadcrumbsdata.split("::").forEach((item,index)=>{const itemArr=item.split("|"),itemTitle=itemArr[0],itemUrl=itemArr[1];breadcrumbsList+=` 2 <li class="breadcrumbs__item" itemprop="itemListElement" itemscope="" itemtype="https://schema.org/ListItem"> 3 <a class="breadcrumbs__link" itemprop="item" href="${itemUrl}">
4 <span itemprop="name">${itemTitle}</span> 5 </a> 6 <meta itemprop="position" content="${index+1}"> 7 </li> 8 `}),breadcrumbsList}}customElements.get("pdp-breadcrumbs")||customElements.define("pdp-breadcrumbs",pdpBreadcrumbs); 9//# sourceMappingURL=/cdn/shop/t/119/assets/main-product.js.map?v=60579901350747604791789544116
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.