PageSourceSearch

https://www.victoriabeckham.com/cdn/shop/t/1481/assets/mini-cart-r…?v=10470058136384378041788964267

js victoriabeckham.com collected 2026-09-24 17:14:11 UTC 2,606 bytes, 2 lines download raw bytes

1class MiniCartRecommendationCard extends HTMLLIElement{constructor(){super(),this.elements={form:null,variantInput:null,select:null,defaultState:null,loadingState:null,submitButton:null,cartItems:document.querySelector("cart-items")},this.state={addingToCart:!1}}connectedCallback(){this.elements.form=this.querySelector(".mini-cart-recommendation-card_form"),this.elements.variantInput=this.querySelector('[data-mini-cart-recommendation-el="variantInput"]'),this.elements.select=this.querySelector('[data-mini-cart-recommendation-el="select"]'),this.elements.defaultState=this.querySelector('[data-mini-cart-recommendation-el="default-state"]'),this.elements.loadingState=this.querySelector('[data-mini-cart-recommendation-el="loading-state"]'),this.elements.submitButton=this.querySelector(".mini-cart-recommendation-card_submit"),this.attachEventListeners()}attachEventListeners(){this.elements.select&&this.elements.select.addEventListener("change",e=>this.onSelectChange(e)),this.elements.form&&this.elements.form.addEventListener("submit",e=>this.onFormSubmit(e))}onSelectChange(e){const selectedVariantId=e.target.value;this.elements.variantInput&&(this.elements.variantInput.value=selectedVariantId)}async onFormSubmit(e){if(e.preventDefault(),this.state.addingToCart)return;const variantId=this.elements.variantInput?.value;if(variantId){this.setLoadingState(!0);try{const response=await fetch("/cart/add.js",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sections:this.elements.cartItems?.getSectionsToRender().map(section=>section.id)||[],sections_url:window.location.pathname,items:[{id:Number(variantId),quantity:1}]})});if(response.ok){const json=await response.json();this.elements.cartItems?.renderContents(json);const addToCartEvent=new CustomEvent("GA_ADD_TO_CART",{detail:{formName:"miniCartRecommendation",item:json.items[0]}});window.dispatchEvent(addToCartEvent)}else console.error("Failed to add product to cart")}catch(error){console.error("Error adding product to cart:",error)}finally{this.setLoadingState(!1)}}}setLoadingState(isLoading){this.state.addingToCart=isLoading,this.elements.submitButton&&(this.elements.submitButton.disabled=isLoading),this.elements.defaultState&&this.elements.defaultState.classList.toggle("hidden",isLoading),this.elements.loadingState&&this.elements.loadingState.classList.toggle("hidden",!isLoading)}}customElements.define("mini-cart-recommendation-card",MiniCartRecommendationCard,{extends:"li"});
2//# sourceMappingURL=/cdn/shop/t/1481/assets/mini-cart-recommendation-card.js.map?v=10470058136384378041788964267

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.