PageSourceSearch

https://stila.co.uk/cdn/shop/t/33/assets/component-quick-buy.js?v=50825986909736916661723099981

js stila.co.uk collected 2026-09-25 18:46:23 UTC 7,368 bytes, 2 lines download raw bytes

1if(typeof QuickBuy!="function"){class QuickBuy2 extends HTMLElement{constructor(){super(),this.zIndex=99;const hasProductItem=this.closest("[data-js-product-item]");this.productVariants=this.querySelector("product-variants"),hasProductItem&&(this.variantImages=this.querySelector("[data-js-quick-buy-product-images]"),this.productImage=this.closest("[data-js-product-item]").querySelector("[data-js-product-item-image]"),this.variantImagesSliders=this.hasAttribute("data-variant-images-slider"),this.productSlider=this.closest("[data-js-product-item]").querySelector("css-slider")),this.productVariants.addEventListener("VARIANT_CHANGE",this.onVariantChangeHandler.bind(this)),this.onVariantChangeHandler({target:this.productVariants}),this.variantImages&&setTimeout(()=>{new IntersectionObserver((entries,observer)=>{if(entries[0].isIntersecting)this.variantImages.querySelectorAll("template").forEach(elm=>{elm.dataset.init||this.initVariantImage(elm)}),observer.unobserve(this);else return}).observe(this)},5e3),setTimeout(()=>{this.querySelectorAll(".product-variant__item--radio").forEach(elm=>{elm.addEventListener("click",e=>{elm.closest(".css-slider-holder").scrollTo({top:0,left:elm.offsetLeft-40,behavior:"smooth"}),elm.classList.contains("product-variant__item--color")&&(elm.closest(".product-variant").querySelector(".product-variant__item-text-label").textContent=elm.querySelector("input").value)})})},1e3),this.querySelector("[data-js-quick-buy-form]")&&this.querySelector("form").addEventListener("submit",e=>{e.preventDefault();const submitButton=this.querySelector('[type="submit"]');submitButton.classList.add("working"),window.handleAddToCart(this._serializeForm(e.currentTarget),1,{"Content-Type":"application/x-www-form-urlencoded","X-Requested-With":"XMLHttpRequest"},()=>{submitButton.classList.remove("working")})}),setTimeout(()=>{if(hasProductItem){const cardPrice=this.closest("[data-js-product-item]").querySelector("[data-js-product-item-price]"),buttonPrice=this.querySelector("[data-js-product-add-to-cart-text]"),button=this.querySelector("[data-js-product-add-to-cart]"),productPrice=this.querySelector("[data-js-quick-buy-product-price]");new MutationObserver(()=>{cardPrice&&(cardPrice.innerHTML=productPrice.innerHTML,productPrice.querySelector("[data-js-product-price-original]").textContent!=""?cardPrice.parentNode.classList.remove("product-item__price--empty"):cardPrice.parentNode.classList.add("product-item__price--empty")),this.dataset.addToCartPrice=="true"&&!button.classList.contains("disabled")&&(buttonPrice.innerHTML=`${buttonPrice.innerHTML} <span class='element--hide-on-small'>- ${productPrice.innerHTML}</span>`)}).observe(productPrice,{attributes:!1,childList:!0,subtree:!0})}this.dataset.defaultToFirstVariant=="true"&&this.querySelector("product-variants").updatePrice()},10)}onVariantChangeHandler(e){const variant=e.target.currentVariant;if(variant){if(this.variantImages){if(variant.featured_media!=null){const variantImg=this.variantImages.querySelector(`template[data-media-id="${variant.featured_media.id}"]`);variantImg.dataset.init?this.showVariantImage(variant.featured_media.id):(this.initVariantImage(variantImg),this.showVariantImage(variant.featured_media.id))}}else if(this.variantImagesSliders&&variant.featured_image!=null&&this.productSlider){const variantImg=this.productSlider.querySelector(`.product-item__image-${variant.featured_image.id}`);this.productSlider.changeSlide(variantImg.dataset.index)}}}initVariantImage(template){template.dataset.init=!0;const image=template.content.querySelector("figure").cloneNode(!0);image.dataset.mediaId=template.dataset.mediaId,this.productImage.append(image)}showVariantImage(id){this.productImage.querySelector(".product-item__image-figure--on-top")?.classList.remove("product-item__image-figure--on-top"),this.productImage.querySelector(`[data-media-id="${id}"]`).classList.add("product-item__image-figure--on-top"),this.productImage.querySelector(`[data-media-id="${id}"] img`).srcset=this.productImage.querySelector(`[data-media-id="${id}"] img`).srcset,this.productImage.querySelector(`[data-media-id="${id}"]`).style.zIndex=++this.zIndex}_serializeForm(form){let arr=[];
1return Array.prototype.slice.call(form.elements).forEach(function(field){if(!(!field.name||field.disabled||["file","reset","submit","button"].indexOf(field.type)>-1)){if(field.type==="select-multiple"){Array.prototype.slice.call(field.options).forEach(function(option){option.selected&&arr.push(encodeURIComponent(field.name)+"="+encodeURIComponent(option.value))});return}["checkbox","radio"].indexOf(field.type)>-1&&!field.checked||arr.push(encodeURIComponent(field.name)+"="+encodeURIComponent(field.value))}}),arr.join("&")}}typeof customElements.get("quick-buy")>"u"&&customElements.define("quick-buy",QuickBuy2)}window.handleAddToCart||(window.handleAddToCart=(body,items,headers,callback)=>{let alert="";fetch(`${KROWN.settings.routes.cart_add_url}.js`,{body,headers,method:"POST"}).then(response=>response.json()).then(response=>(response.status==422&&(alert=document.createElement("span"),alert.className="alert alert--error",alert.innerHTML=response.description),fetch("?section_id=helper-cart"))).then(response=>response.text()).then(text=>{let doNext=!1;if(document.body.classList.contains("template-cart")?doNext="page":KROWN.settings.cart_popup=="true"&&document.getElementById("mini-cart-popup")?doNext="popup":KROWN.settings.cart_action=="overlay"&&document.getElementById("site-cart-sidebar")?doNext="drawer":doNext="page",doNext=="page")window.location.href=KROWN.settings.routes.cart_url;else{if(document.getElementById("site-cart-sidebar")){const sectionInnerHTML=new DOMParser().parseFromString(text,"text/html"),cartFormInnerHTML=sectionInnerHTML.getElementById("AjaxCartForm").innerHTML,cartSubtotalInnerHTML=sectionInnerHTML.getElementById("AjaxCartSubtotal").innerHTML,cartItems=document.getElementById("AjaxCartForm");cartItems.innerHTML=cartFormInnerHTML,cartItems.ajaxifyCartItems(),document.querySelectorAll("[data-header-cart-count]").forEach(elm=>{elm.innerHTML=document.querySelector("#AjaxCartForm [data-cart-count]").innerHTML}),document.getElementById("cart-recommendations-sidebar")&&document.getElementById("cart-recommendations-sidebar").generateRecommendations(),alert!=""&&document.getElementById("AjaxCartForm").querySelector("form").prepend(alert),document.getElementById("AjaxCartSubtotal").innerHTML=cartSubtotalInnerHTML}if(doNext=="drawer")document.getElementById("site-cart-sidebar").show();else{const miniCartPopup=document.getElementById("mini-cart-popup");items==1?(miniCartPopup.querySelector("[data-js-mini-cart-single]").style.display="block",miniCartPopup.querySelector("[data-js-mini-cart-plural]").style.display="none"):(miniCartPopup.querySelector("[data-js-mini-cart-plural]").style.display="block",miniCartPopup.querySelector("[data-js-mini-cart-plural]").innerHTML=KROWN.settings.locales.cart_added_items_count.replace("{{ count }}",items),miniCartPopup.querySelector("[data-js-mini-cart-single]").style.display="none"),miniCartPopup.show(),miniCartPopup.dataset.hide!="0"&&setTimeout(()=>{miniCartPopup.hide()},parseInt(miniCartPopup.dataset.hide))}}}).catch(e=>{console.log(e)}).finally(()=>{callback()})});
2//# sourceMappingURL=/cdn/shop/t/33/assets/component-quick-buy.js.map?v=50825986909736916661723099981

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.