PageSourceSearch

https://www.antwerpavenue.com/cdn/shop/t/21/assets/cart.js?v=96149573015255372711757161943

js antwerpavenue.com collected 2026-09-26 15:14:01 UTC 19,648 bytes, 2 lines download raw bytes

1class MCartDrawer extends HTMLElement{constructor(){super(),this.getSectionToRenderListener=this.getSectionToRender.bind(this)}get sectionName(){return"cart-drawer"}get cartDrawerInner(){return this.querySelector(".m-cart-drawer__inner")}get cartDrawerCloseIcon(){return this.querySelector(".m-cart-drawer__close")}getSectionToRender(event){event.detail.sections.push(this.sectionName)}connectedCallback(){document.addEventListener("cart:grouped-sections",this.getSectionToRenderListener),this.setHeaderCartIconAccessibility(),this.addEventListener("click",event=>{(event.target.closest(".m-cart-drawer__inner")!==this.cartDrawerInner||event.target===this.cartDrawerCloseIcon)&&this.close()})}disconnectedCallback(){document.removeEventListener("cart:grouped-sections",this.getSectionToRenderListener)}setHeaderCartIconAccessibility(){document.querySelectorAll(".m-cart-icon-bubble").forEach(cartLink=>{cartLink.setAttribute("role","button"),cartLink.setAttribute("aria-haspopup","dialog"),cartLink.addEventListener("click",event=>{MinimogSettings.enable_cart_drawer&&(event.preventDefault(),this.open(cartLink))})})}open(triggeredBy){triggeredBy&&this.setActiveElement(triggeredBy),this.classList.add("m-cart-drawer--active"),document.documentElement.classList.add("prevent-scroll"),requestAnimationFrame(()=>{requestAnimationFrame(()=>{this.style.setProperty("--m-bg-opacity","0.5"),this.style.setProperty("--translate-x","0"),window.MinimogEvents.emit(MinimogTheme.pubSubEvents.openCartDrawer)})})}close(){this.style.setProperty("--m-bg-opacity","0"),this.style.setProperty("--translate-x","100%"),setTimeout(()=>{this.classList.remove("m-cart-drawer--active"),document.documentElement.classList.remove("prevent-scroll")},300)}setActiveElement(element){this.activeElement=element}}customElements.define("m-cart-drawer",MCartDrawer);class MCartRemoveButton extends HTMLElement{constructor(){super(),this.addEventListener("click",event=>{event.preventDefault(),this.closest("m-cart-items").updateQuantity(this.dataset.index,0)})}}customElements.define("m-cart-remove-button",MCartRemoveButton);class MCartTemplate extends HTMLElement{constructor(){super(),document.addEventListener("cart:grouped-sections",this.getSectionToRender.bind(this))}get sectionName(){return"cart-template"}getSectionToRender(event){event.detail.sections.push(this.sectionName)}}customElements.define("m-cart",MCartTemplate);class MCartItems extends HTMLElement{cartUpdateUnsubscriber=void 0;constructor(){super(),window.FoxKitSections=[this.sectionName,this.cartCountSectionName],this.rootUrl=window.Shopify.routes.root,this.onCartRefreshListener=this.onCartRefresh.bind(this),document.addEventListener("cart:refresh",this.onCartRefreshListener),this.addEventListener("change",debounce(this.onChange.bind(this),300)),this.cartUpdateUnsubscriber=MinimogEvents.subscribe(MinimogTheme.pubSubEvents.cartUpdate,this.onCartUpdate.bind(this))}connectedCallback(){this.isCartPage=MinimogSettings.templateName==="cart",this.cartDrawerInner=document.querySelector(".m-cart-drawer__inner");let loadingTarget=this.cartDrawerInner;this.isCartPage&&(loadingTarget=document.body),this.loading=new MinimogLibs.AnimateLoading(loadingTarget,{overlay:loadingTarget})}get sectionName(){return this.dataset.sectionName||"cart-template"}get cartCountSectionName(){return"cart-count"}disconnectedCallback(){this.cartUpdateUnsubscriber&&this.cartUpdateUnsubscriber(),document.removeEventListener("cart:refresh",this.onCartRefreshListener)}onChange(event){const{target}=event;target.closest("m-quantity-input")&&this.updateQuantity(target.dataset.index,target.value,document.activeElement.getAttribute("name"),target)}onCartError(errors,target,line){target?target.closest("m-quantity-input").setValidity(errors):window.location.href=MinimogSettings.routes.cart,this.updateLiveRegions(line,errors)}async onCartRefresh(event){const cartSelector=this.isCartPage?"m-cart":"m-cart-drawer",cartElement=document.querySelector(cartSelector),cartCount=document.querySelectorAll("m-cart-count");try{await fetch(`${this.rootUrl}?sections[]=${this.sectionName}&sections[]=${this.cartCountSectionName}`).then(response=>response.text()).then(responseText=>{const parseJSON=JSON.parse(responseText);
1this.getSectionsToRender().forEach(section=>{const elementToReplace=document.getElementById(section.id)?.querySelector(section.selector)||document.getElementById(section.id);elementToReplace&&(elementToReplace.innerHTML=this.getSectionInnerHTML(parseJSON[this.sectionName],section.selector))});const responseCartCount=parseJSON[this.cartCountSectionName],newCartCount=new DOMParser().parseFromString(responseCartCount,"text/html");cartCount.forEach(cart=>cart.onUpdate(newCartCount))}),event.detail?.open===!0&&(this.isCartPage||cartElement.open())}catch(error){console.error("Error refreshing cart:",error)}}onCartUpdate(event){this.getSectionsToRender().forEach(section=>{const elementToReplace=document.getElementById(section.id)?.querySelector(section.selector);elementToReplace&&(elementToReplace.innerHTML=this.getSectionInnerHTML(event.cart.sections[this.sectionName],section.selector))}),document.dispatchEvent(new CustomEvent("cart:updated",{detail:{cart:event.cart}}))}updateQuantity(line,quantity,name,target){this.loading.start();const{routes}=window.MinimogSettings;let sectionsToBundle=[];document.documentElement.dispatchEvent(new CustomEvent("cart:grouped-sections",{bubbles:!0,detail:{sections:sectionsToBundle}}));const body=JSON.stringify({line,quantity,sections:sectionsToBundle});fetch(`${routes.cart_change_url}`,{...fetchConfig(),body}).then(response=>response.json()).then(response=>{if(response.errors){this.loading.finish(),this.onCartError(response.errors,target,line);return}window.MinimogEvents.emit(MinimogTheme.pubSubEvents.cartUpdate,{cart:response})}).catch(error=>{console.log(error)}).finally(()=>{this.loading.finish()})}updateLiveRegions(line,message){let lineItemNode=document.getElementById(`MinimogCart-Item-${line}`);message!==""&&lineItemNode&&MinimogTheme.Notification.show({target:lineItemNode,type:"warning",message})}getSectionInnerHTML(html,selector){return new DOMParser().parseFromString(html,"text/html").querySelector(selector).innerHTML}getSectionsToRender(){return[{id:"MinimogCartDrawer",selector:"#MinimogCartDrawerHeader"},{id:"MinimogCartDrawer",selector:"#MinimogCartDrawerBody"},{id:"MinimogCartDrawer",selector:"#MinimogCartDrawerFooter"},{id:"MinimogCart",selector:"#MinimogCartHeader"},{id:"MinimogCart",selector:"#MinimogCartBody"},{id:"MinimogCart",selector:"#MinimogCartFooter"}]}}if(customElements.define("m-cart-items",MCartItems),!customElements.get("m-cart-addons")){class MCartAddons extends HTMLElement{constructor(){super(),this.selectors={zipCode:'[name="address[zip]"]',province:'[name="address[province]"]',country:'[name="address[country]"]',addressForm:'[data-address="root"]',shippingMessage:".m-cart-addon__shipping-rate",cartNote:'[name="note"]',saveAddonButton:".m-cart-addon--save",closeAddonButton:".m-cart-addon--close",calcShippingButton:".m-cart-addon--calculate",triggerAddonButton:".m-cart-addon--trigger-button",devliveryTime:'[name="attributes[Delivery time]"]'}}connectedCallback(){this.cartWrapper=document.querySelector(".m-cart-drawer"),this.isCartPage=MinimogSettings.templateName==="cart",this.isCartPage&&(this.cartWrapper=document.querySelector(".m-cart__footer--wrapper")),this.initAddress=!1,this.cartOverlay=this.cartWrapper.querySelector(".m-cart__overlay"),this.domNodes=queryDomNodes(this.selectors,this),this.rootUrl=window.Shopify.routes.root,this.discountCodeKey="minimog-discount-code",this.deliveryCodeKey="minimog-delivery-code",this.init()}disconnectedCallback(){this._removeCloseAddonButton&&this._removeCloseAddonButton(),this._removeCalcShippingButton&&this._removeCalcShippingButton(),this.querySelectorAll(this.selectors.triggerAddonButton).forEach(button=>{button.removeEventListener("click",this.handleOpenAddon.bind(this))}),this.querySelectorAll(this.selectors.saveAddonButton).forEach(button=>{button.removeEventListener("click",this.handleSaveAddonValue.bind(this))})}init(){const{devliveryTime}=this.domNodes;if(this.querySelectorAll(this.selectors.triggerAddonButton).forEach(button=>{button.addEventListener("click",this.handleOpenAddon.bind(this))}
1),this.querySelectorAll(this.selectors.saveAddonButton).forEach(button=>{button.addEventListener("click",this.handleSaveAddonValue.bind(this))}),this._removeCloseAddonButton=addEventDelegate({selector:this.selectors.closeAddonButton,context:this.cartWrapper,handler:this.close.bind(this)}),this._removeCalcShippingButton=addEventDelegate({selector:this.selectors.calcShippingButton,context:this.cartWrapper,handler:this.calcShipping.bind(this)}),devliveryTime){const code=localStorage.getItem(this.deliveryCodeKey);code&&(devliveryTime.value=code)}const today=new Date().toISOString().slice(0,16),deliveryTimeElm=this.querySelector("#delivery-time");deliveryTimeElm&&(deliveryTimeElm.min=today)}handleOpenAddon(e){e.preventDefault();const{target}=e;if(this.isCartPage){const addonCurrentActive=document.querySelector(".m-cart-addon__body.open");addonCurrentActive&&addonCurrentActive.classList.remove("open")}const{open:addonTarget}=target.dataset,addonNode=this.cartWrapper.querySelector(`#m-addons-${addonTarget}`);this.removeActiveAllButton(),target.classList.add("active"),addonNode&&addonNode.classList.add("open"),this.cartOverlay&&this.cartOverlay.classList.add("open"),this.openAddon=addonNode,addonTarget==="shipping"&&fetchSection("country-options",{url:window.MinimogSettings.base_url}).then(html=>{const select=html.querySelector("#AddressCountry"),options=select&&select.querySelectorAll("option"),defaultSelect=addonNode.querySelector("#MadrressCountry select");options&&options.forEach(option=>{defaultSelect&&defaultSelect.appendChild(option)}),this.setupCountries(),defaultSelect.value=defaultSelect&&defaultSelect.dataset.default}).catch(console.error)}removeActiveAllButton(){const triggerButtons=this.querySelectorAll(this.selectors.triggerAddonButton);triggerButtons&&triggerButtons.forEach(button=>button.classList.remove("active"))}setupCountries(){this.initAddress||Shopify&&Shopify.CountryProvinceSelector&&(new Shopify.CountryProvinceSelector("AddressCountry","AddressProvince",{hideElement:"AddressProvinceContainer"}),this.initAddress=!0)}close(event){event.preventDefault(),this.openAddon.classList.remove("open"),this.cartOverlay&&this.cartOverlay.classList.remove("open"),this.removeActiveAllButton(),this.openAddon=null}calcShipping(event){event.preventDefault();const actionsWrapper=event.target.closest(".m-cart-addon__action");actionsWrapper.classList.add("m-spinner-loading");const zipCode=this.domNodes.zipCode&&this.domNodes.zipCode.value&&this.domNodes.zipCode.value.trim(),country=this.domNodes.country.value,province=this.domNodes.province.value;this.domNodes.shippingMessage.classList.remove("error"),this.domNodes.shippingMessage.innerHTML="";const showDeliveryDays=actionsWrapper.dataset.showDeliveryDays==="true";fetch(`${this.rootUrl}cart/shipping_rates.json?shipping_address%5Bzip%5D=${zipCode}&shipping_address%5Bcountry%5D=${country}&shipping_address%5Bprovince%5D=${province}`).then(res=>res.json()).then(res=>{if(res&&res.shipping_rates){const{shipping_rates}=res,{shippingRatesResult,noShippingRate}=MinimogStrings;if(shipping_rates.length>0){actionsWrapper.classList.remove("m-spinner-loading");const shippingLabel=document.createElement("P");shippingLabel.classList.add("m-cart-addon__shipping-rate--label"),shippingLabel.innerHTML=`${shippingRatesResult.replace("{{count}}",shipping_rates.length)}:`,this.domNodes.shippingMessage.appendChild(shippingLabel),shipping_rates.map(rate=>{const{deliveryOne="Day",deliveryOther="Days"}=actionsWrapper.dataset;let deliveryDays="";if(rate.delivery_days.length>0&&showDeliveryDays){let textDay=deliveryOne;const firstDeliveryDay=rate.delivery_days[0],lastDeliveryDay=rate.delivery_days.at(-1);firstDeliveryDay>1&&(textDay=deliveryOther),firstDeliveryDay===lastDeliveryDay?deliveryDays=`(${firstDeliveryDay} ${textDay})`:deliveryDays=`(${firstDeliveryDay} - ${lastDeliveryDay} ${textDay})`}const shippingRateItem=document.createElement("P");shippingRateItem.classList.add("m-cart-addon__shipping-rate--item"),shippingRateItem.innerHTML=`${rate.name}: <span>${rate.price} ${Shopify.currency.active}</span> ${deliveryDays}`,this.domNodes.shippingMessage.appendChild(shippingRateItem)})}else actionsWrapper.classList.remove("m-spinner-loading"),this.domNodes.shippingMessage.innerHTML=`<p>${noShippingRate}</p>`}else actionsWrapper.classList.remove("m-spinner-loading"),Object.entries(res).map(error=>{this.domNodes.shippingMessage.classList.add(error[0]&&error[0].toLowerCase());const message=`${error[1][0]}`,shippingRateError=document.createElement("P");shippingRateError.classList.add("m-cart-addon__shipping-rate--error"),shippingRateError.innerHTML=`${message}<sup>*</sup>`,this.domNodes.shippingMessage.appendChild(shippingRateError)})}).catch(console.error)}handleSaveAddonValue(e){e.preventDefault();const{target}=e,{devliveryTime}=this.domNodes;if(target.dataset.action==="note"&&(this.updateCartNote(),this.close(e)),target.dataset.action==="delivery"){const code=devliveryTime.value;Date.parse(code)>Date.now()?(localStorage.setItem(this.deliveryCodeKey,code),this.close(e)):(localStorage.setItem(this.deliveryCodeKey,""),devliveryTime.value="",window.MinimogTheme.Notification.show({target:this.querySelector(".m-cart-addon-message-error"),method:"appendChild",type:"error",message:window.MinimogStrings.val
1ideDateTimeDelivery,last:3e3,sticky:!1}))}}updateCartNote(){const cartNoteValue=this.domNodes.cartNote.value,body=JSON.stringify({note:cartNoteValue});fetch(`${window.MinimogSettings.routes.cart_update_url}`,{...fetchConfig(),body})}}customElements.define("m-cart-addons",MCartAddons)}class MCartDiscount extends HTMLDivElement{constructor(){super(),this.submitEl.addEventListener("click",this.handleFormSubmit.bind(this)),this.couponEl.addEventListener("keydown",this.handleInputKey.bind(this))}get submitEl(){return this._submitEl=this._submitEl||this.querySelector('[type="submit"]')}get messageEl(){return this._messageEl=this._messageEl||this.querySelector(".m-cart-addon-message-error")}get couponEl(){return this._couponEl=this._couponEl||this.querySelector('input[name="discount_code"]')}get cartAddonDrawer(){return this.closest(".m-cart-addon")}get cartDiscountsEl(){return document.querySelector("[data-minimog-cart-discounts]")}getDiscounts(){const discounts=[];if(this.cartDiscountsEl){const items=this.cartDiscountsEl.querySelectorAll(".m-cart__discount--item");items&&items.forEach(item=>{discounts.push(item.dataset.discountCode)})}return discounts}handleInputKey(event){event.key==="Enter"&&(event.preventDefault(),this.handleFormSubmit(event))}handleFormSubmit(event){if(event.preventDefault(),this.submitEl.getAttribute("aria-disabled")==="true")return;this.displayFormErrors();const newDiscountCode=this.couponEl.value;if(!this.couponEl.checkValidity()){this.couponEl.reportValidity();return}const discounts=this.getDiscounts();if(discounts.includes(newDiscountCode)){this.displayFormErrors(MinimogStrings.duplicateDiscountError);return}discounts.push(newDiscountCode);let sectionsToBundle=[];document.documentElement.dispatchEvent(new CustomEvent("cart:grouped-sections",{bubbles:!0,detail:{sections:sectionsToBundle}}));const config=fetchConfig("javascript");config.headers["X-Requested-With"]="XMLHttpRequest",delete config.headers["Content-Type"];const formData=new FormData;formData.append("sections",sectionsToBundle),formData.append("sections_url",window.location.pathname),formData.append("discount",discounts.join(",")),config.body=formData,this.submitEl.setAttribute("aria-disabled","true"),this.submitEl.classList.add("m-spinner-loading"),fetch(MinimogSettings.routes.cart_update_url,config).then(response=>response.json()).then(async parsedState=>{if(parsedState.discount_codes.find(discount=>discount.code===newDiscountCode&&discount.applicable===!1)){this.couponEl.value="",this.displayFormErrors(MinimogStrings.applyDiscountError);return}this.cartAddonDrawer&&this.cartAddonDrawer.close(event);const cartJson=await(await fetch(`${MinimogSettings.routes.cart}`,{...fetchConfig()})).json();cartJson.sections=parsedState.sections,this.updateCartState(cartJson)}).catch(e=>{console.error(e)}).finally(()=>{this.submitEl.removeAttribute("aria-disabled"),this.submitEl.classList.remove("m-spinner-loading")})}updateCartState=cartJson=>{window.MinimogEvents.emit(MinimogTheme.pubSubEvents.cartUpdate,{cart:cartJson})};displayFormErrors=(errorMessage=!1)=>{this.messageEl?(this.messageEl.classList.toggle("!m:hidden",!errorMessage),errorMessage!==!1&&(this.messageEl.innerText=errorMessage)):errorMessage!==!1&&alert(errorMessage)}}customElements.define("m-cart-discount",MCartDiscount,{extends:"div"});class MCartDiscountRemove extends HTMLButtonElement{constructor(){super(),this.selectors={list:".m-cart__discount",item:".m-cart__discount--item"},this.clickHandler=this.handleClick.bind(this)}connectedCallback(){this.listEl=this.closest(this.selectors.list),this.addEventListener("click",this.clickHandler)}disconnectedCallback(){this.removeEventListener("clikc",this.clickHandler)}handleClick(event){if(event.preventDefault(),this.getAttribute("aria-disabled")==="true")return;this.setAttribute("aria-disabled","true"),this.classList.add("m-spinner-loading"),this.discounts=[];const thisItem=this.closest("li"),items=this.listEl.querySelectorAll(this.selectors.item);items&&items.forEach(item=>{item!=thisItem&&this.discounts.push(item.dataset.discountCode)}),this.updateCartDiscounts()}updateCartDiscounts(){let sectionsToBundle=[];document.documentElement.dispatchEvent(new CustomEvent("cart:grouped-sections",{bubbles:!0,detail:{sections:sectionsToBundle}}));const config=fetchConfig("javascript");config.headers["X-Requested-With"]="XMLHttpRequest",delete config.headers["Content-Type"];const formData=new FormData;formData.append("sections",sectionsToBundle),formData.append("sections_url",window.location.pathname),formData.append("discount",this.discounts.join(",")),config.body=formData,fetch(MinimogSettings.routes.cart_update_url,config).then(response=>response.json()).then(async parsedState=>{const cartJson=await(await fetch(`${MinimogSettings.routes.cart}`,{...fetchConfig()}
1)).json();cartJson.sections=parsedState.sections,this.updateCartState(cartJson)}).catch(e=>{console.error(e)})}updateCartState=cartJson=>{window.MinimogEvents.emit(MinimogTheme.pubSubEvents.cartUpdate,{cart:cartJson})}}customElements.define("m-cart-discount-remove",MCartDiscountRemove,{extends:"button"});class MCartForm extends HTMLFormElement{constructor(){super(),this.addEventListener("submit",this.handleSubmit.bind(this))}get discountInput(){return this.querySelector('input[name="discount"]')}get cartDiscountsEl(){return document.querySelector("[data-minimog-cart-discounts]")}getDiscounts(){const discounts=[];if(this.cartDiscountsEl){const items=this.cartDiscountsEl.querySelectorAll(".m-cart__discount--item");items&&items.forEach(item=>{discounts.push(item.dataset.discountCode)})}return discounts}handleSubmit(){if(this.discountInput){const discounts=this.getDiscounts();if(discounts.length>0){const foxkitDiscount=this.discountInput.value;foxkitDiscount!==""&&discounts.push(foxkitDiscount),this.discountInput.value=discounts.join(",")}}}}customElements.define("m-cart-form",MCartForm,{extends:"form"});
2//# sourceMappingURL=/cdn/shop/t/21/assets/cart.js.map?v=96149573015255372711757161943

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.