1class CartRemoveButton extends HTMLElement{constructor(){super(),this.addEventListener("click",event=>{event.preventDefault();let cartItem=this.closest(".cart-item");(this.closest("cart-items")||this.closest("cart-drawer-items")).updateQuantity(this.dataset.index,0,"",this.closest(".cart-item"))})}}customElements.define("cart-remove-button",CartRemoveButton);class CartItems extends HTMLElement{constructor(){super(),this.progressBarShipping(),this.updateCartNotes(),window.location.href.indexOf("/cart")!==-1&&window.innerWidth<660&&this.stickyCheckoutButtons(),this.lineItemStatusElement=document.getElementById("shopping-cart-line-item-status")||document.getElementById("CartDrawer-LineItemStatus"),this.currentItemCount=Array.from(this.querySelectorAll('[name="updates[]"]')).reduce((total,quantityInput)=>total+parseInt(quantityInput.value),0),this.debouncedOnChange=debounce(event=>{this.onChange(event)},300),this.addEventListener("change",this.debouncedOnChange.bind(this))}onChange(event){let updateQuantityNode=event.target.value==0?event.target.closest(".cart-item"):"";this.updateQuantity(event.target.dataset.index,event.target.value,document.activeElement.getAttribute("name"),updateQuantityNode)}addDeletedItemMesageCartPage(node){let deletedID="#"+node.getAttribute("id"),newID=parseInt(deletedID.split("-")[1]-1);newID==0&&(newID=1);let idToAppend=`#CartItem-${newID}`,productTitle=node.getAttribute("data-product-title"),productQuantity=node.getAttribute("data-product-quantity"),itemUrl=node.getAttribute("data-item-url"),nodeToAppend=document.querySelector(idToAppend);if(nodeToAppend)if(parseInt(deletedID.split("-")[1]-1)==0){let fullMessage=`<tr class="cart-item"> 2 <td> 3 <p class="item-removed"> ${themeLocales.removed} (${productQuantity}) <a href="${itemUrl}" class="item-title">${productTitle}</a> ${themeLocales.from_bag}</p> 4 </td> 5 </tr>`;nodeToAppend.insertAdjacentHTML("beforebegin",fullMessage)}else{let fullMessage=` 6 <tr class="cart-item spacer"></tr> 7 <tr class="cart-item"> 8 <td> 9 <p class="item-removed"> ${themeLocales.removed} (${productQuantity}) <a href="${itemUrl}" class="item-title">${productTitle}</a> ${themeLocales.from_bag}</p> 10 </td> 11 </tr>`;nodeToAppend.insertAdjacentHTML("afterend",fullMessage)}}addDeletedItemMesage(cartItems,node){let deletedID="#"+node.getAttribute("id"),newID=parseInt(deletedID.split("-")[2]-1);newID==0&&(newID=1);let idToAppend=`#CartDrawer-Item-${newID}`,productTitle=node.getAttribute("data-product-title"),productQuantity=node.getAttribute("data-cart-count"),itemUrl=node.getAttribute("data-item-url"),fullMessage=`<p class="item-removed"> ${themeLocales.removed} (${productQuantity}) <a href="${itemUrl}" class="item-title">${productTitle}</a> ${themeLocales.from_bag}</p>`,nodeToAppend=document.querySelector(idToAppend);nodeToAppend&&(parseInt(deletedID.split("-")[2]-1)==0?nodeToAppend.insertAdjacentHTML("beforebegin",fullMessage):nodeToAppend.insertAdjacentHTML("afterend",fullMessage)),this.removeMessageFromDOM()}getSectionsToRender(){return[{id:"main-cart-items",section:document.getElementById("main-cart-items").dataset.id,selector:".js-contents"},{id:"cart-icon-bubble",section:"cart-icon-bubble",selector:".shopify-section"},{id:"cart-live-region-text",section:"cart-live-region-text",selector:".shopify-section"},{id:"main-cart-footer",section:document.getElementById("main-cart-footer").dataset.id,selector:".js-contents"}]}outsideClick(event,notelem){let clickedOut=!0,i,len=notelem.length;for(i=0;i<len;i++)(event.target==notelem[i]||notelem[i].contains(event.target))&&(clickedOut=!1);return!!clickedOut}removeMessageFromDOM(){let itemToRemove=document.querySelector(".item-removed"),drawer_close=document.querySelector(".drawer__close"),drawer_overlay=document.querySelector(".drawer__overlay"),cartDrawer=document.querySelectorAll("#CartDrawer");drawer_close.addEventListener("click",()=>{itemToRemove&&itemToRemove.remove()}),drawer_overlay.addEventListener("click",()=>{itemToRemove&&itemToRemove.remove()});let that=this;window.addEventListener("click",function(e){that.outsideClick(e,cartDrawer)&&itemToRemove&&itemToRemove.remove()})}updateQuantity(line,quantity,name,deletedNode){this.enableLoading(line);let body=JSON.stringify({line,quantity,sections:this.getSectionsToRender().map(section=>section.section),sections_url:window.location.pathname}),cartBefore=[],cartAfter=[];fetch(`${routes.cart_update_url}`,{...fetchConfig(),body}).then(response=>response.json()).then(response=>
11{cartBefore=response.items,fetch(`${routes.cart_change_url}`,{...fetchConfig(),body}).then(response2=>response2.text()).then(state=>{const parsedState=JSON.parse(state);cartAfter=parsedState.items;let index=parseInt(line)-1,cartAfterPrepared=prepareItems(cartAfter);localStorage.setItem("cartItems",JSON.stringify(cartAfterPrepared));let difference=cartBefore.filter(obj1=>!cartAfter.some(obj2=>obj2.id===obj1.id));if(difference.length!=0)window.handleCart(difference[0],"remove_from_cart",index);else{const changedObjects=[];for(let i=0;i<cartBefore.length;i++){const obj1=cartBefore[i],obj2=cartAfter.find(obj=>obj.id===obj1.id);obj2&&obj1.quantity>obj2.quantity?(obj1.quantity=obj1.quantity-obj2.quantity,changedObjects.push(obj1),window.handleCart(changedObjects[0],"remove_from_cart",index)):obj2&&obj1.quantity<obj2.quantity&&(obj1.quantity=obj2.quantity-obj1.quantity,changedObjects.push(obj1),window.handleCart(changedObjects[0],"add_to_cart",index))}}this.classList.toggle("is-empty",parsedState.item_count===0);const cartDrawerWrapper=document.querySelector('drawer-component[data-drawer="cart"]'),cartHeader=document.getElementById("main-cart-header"),cartFooter=document.getElementById("main-cart-footer");cartHeader&&cartHeader.classList.toggle("is-empty",parsedState.item_count===0),cartFooter&&cartFooter.classList.toggle("is-empty",parsedState.item_count===0),cartDrawerWrapper&&cartDrawerWrapper.classList.toggle("is-empty",parsedState.item_count===0),this.get
11SectionsToRender().forEach((section=>{const elementToReplace=document.getElementById(section.id).querySelector(section.selector)||document.getElementById(section.id);elementToReplace.innerHTML=this.getSectionInnerHTML(parsedState.sections[section.section],section.selector)})),this.updateLiveRegions(line,parsedState.item_count);const lineItem=document.getElementById(`CartItem-${line}`)||document.getElementById(`CartDrawer-Item-${line}`);lineItem&&lineItem.querySelector(`[name="${name}"]`)?cartDrawerWrapper?trapFocus(cartDrawerWrapper,lineItem.querySelector(`[name="${name}"]`)):lineItem.querySelector(`[name="${name}"]`).focus():parsedState.item_count===0&&cartDrawerWrapper?trapFocus(cartDrawerWrapper.querySelector(".drawer__inner-empty"),cartDrawerWrapper.querySelector("a")):document.querySelector(".cart-item")&&cartDrawerWrapper&&trapFocus(cartDrawerWrapper,document.querySelector(".cart-item__name")),this.disableLoading(),deletedNode&&this.addDeletedItemMesageCartPage(deletedNode),deletedNode&&this.addDeletedItemMesage(parsedState,deletedNode)}).then(()=>{this.progressBarShipping(),window.createKlevuSliderMiniCart()}).catch(()=>{this.querySelectorAll(".loading-overlay").forEach(overlay=>overlay.classList.add("hidden"));const errors=document.getElementById("cart-errors")||document.getElementById("CartDrawer-CartErrors");this.disableLoading()})}).catch(e=>{console.error(e)})}updateLiveRegions(line,itemCount){if(this.currentItemCount===itemCount){const lineItemError=document.getElementById(`Line-item-error-${line}`)||document.getElementById(`CartDrawer-LineItemError-${line}`),quantityElement=document.getElementById(`Quantity-${line}`)||document.getElementById(`Drawer-quantity-${line}`);lineItemError.querySelector(".cart-item__error-text").innerHTML=window.cartStrings.quantityError.replace("[quantity]",quantityElement.value)}this.currentItemCount=itemCount,this.lineItemStatusElement.setAttribute("aria-hidden",!0);const cartStatus=document.getElementById("cart-live-region-text")||document.getElementById("CartDrawer-LiveRegionText");cartStatus.setAttribute("aria-hidden",!1),setTimeout(()=>{cartStatus.setAttribute("aria-hidden",!0)},1e3)}getSectionInnerHTML(html,selector){return new DOMParser().parseFromString(html,"text/html").querySelector(selector).innerHTML}enableLoading(line){(document.getElementById("main-cart-items")||document.getElementById("CartDrawer-CartItems")).classList.add("cart__items--disabled");const cartItemElements=this.querySelectorAll(`#CartItem-${line} .loading-overlay`),cartDrawerItemElements=this.querySelectorAll(`#CartDrawer-Item-${line} .loading-overlay`);
11[...cartItemElements,...cartDrawerItemElements].forEach(overlay=>overlay.classList.remove("hidden")),document.activeElement.blur(),this.lineItemStatusElement.setAttribute("aria-hidden",!1)}disableLoading(){(document.getElementById("main-cart-items")||document.getElementById("CartDrawer-CartItems")).classList.remove("cart__items--disabled"),console.log("cart-updated");var getCartTotalElement=document.querySelector(".cart-items-total");if(getCartTotalElement){var getCartTotal=getCartTotalElement.getAttribute("data-cart-total");console.log(getCartTotal)}var freeGiftProducts=document.querySelectorAll(".free-gift-product");freeGiftProducts&&freeGiftProducts.forEach(freeGiftProduct=>{var freeLimitValue=freeGiftProduct.getAttribute("data-free-limit"),freeItemTitle=freeGiftProduct.getAttribute("data-free-added"),freePercent=freeGiftProduct.getAttribute("data-free-percent"),freePercentage=getCartTotal*100/freeLimitValue;freeLimitValue>getCartTotal;var remainingToFree=freeLimitValue-getCartTotal;if(console.log(remainingToFree,"remainingToFree"),freeLimitValue>getCartTotal){if(console.log("freeLimitValue > getCartTotal"),remainingToFree>0){let formattedRemainingToFree=new Intl.NumberFormat("id-ID",{style:"currency",currency:"IDR"}).format(remainingToFree),formattedPrice=new Intl.NumberFormat("id-ID",{style:"currency",currency:"IDR"}).format(remainingToFree);formattedPrice.endsWith(",00")&&(formattedPrice=formattedPrice.slice(0,-3)),console.log(formattedPrice,"formatted"),freeGiftProduct.querySelector("circle").setAttribute("style","stroke-dasharray: 133.518; stroke-dashoffset: calc(133.518px - (133.518px * "+freePercentage+") / 100);"),freeGiftProduct.querySelector(".cart-add-form").classList.remove("hidden"),freeGiftProduct.querySelector(".cart-change-form").classList.add("hidden"),console.log(freeGiftProduct.querySelector(".redeem-btn")),freeGiftProduct.querySelector(".cart-add-form").querySelector(".redeem-btn").textContent="add "+formattedPrice+" more",freeGiftProduct.querySelector(".cart-add-form").querySelector(".redeem-btn").setAttribute("disabled","true"),console.log("remainingToFree",formattedRemainingToFree),freeGiftProduct.querySelector(".gwp-subtitle span").innerHTML=`You're only <span data-currency="{{ cart.currency.symbol }}" class="away-from">${formattedPrice}</span> away from this reward!`}}else console.log("freeLimitValue < getCartTotal");if(remainingToFree>0){var remainingTargetElements=freeGiftProduct.querySelectorAll(".away-from");if(remainingTargetElements){let formattedRemainingToFree=new Intl.NumberFormat("id-ID",{style:"currency",currency:"IDR"}).format(remainingToFree),formattedPrice=new Intl.NumberFormat("id-ID",{style:"currency",currency:"IDR"}).format(remainingToFree);formattedPrice.endsWith(",00")&&(formattedPrice=formattedPrice.slice(0,-3)),console.log(formattedPrice,"formatted"),remainingTargetElements.forEach(remainingTargetElement=>{var remainingTargetElementCurrency=remainingTargetElement.getAttribute("data-currency");remainingTargetElement.innerHTML=remainingTargetElementCurrency+" "+remainingToFree,freeGiftProduct.querySelector("circle").setAttribute("style","stroke-dasharray: 133.518; stroke-dashoffset: calc(133.518px - (133.518px * "+freePercentage+") / 100);"),freeGiftProduct.querySelector(".gwp-subtitle span").innerHTML=`You're only <span data-currency="{{ cart.currency.symbol }}" class="away-from">${formattedPrice}</span> away from this reward!`,freeGiftProduct.querySelector(".cart-add-form").classList.remove("hidden"),freeGiftProduct.querySelector(".cart-change-form").classList.add("hidden"),console.log("remainingToFree: ",remainingToFree," getCartTotal: ",getCartTotal)})}}else{let checkVariantInCart2=function(dataIdValue2){return new Promise(function(resolve,reject){var xhr=new XMLHttpRequest;xhr.open("GET","/cart.js",!0),xhr.onreadystatechange=function(){if(xhr.readyState===4)if(xhr.status===200){var data=JSON.parse(xhr.responseText);if(data.items&&data.items.length>0){for(var variantFound2=!1,i=0;i<data.items.length;i++)if(data.items[i].variant_id==dataIdValue2){variantFound2=!0;break}resolve(variantFound2)}else resolve(!1)}else reject(xhr.statusText)},xhr.send()})};var checkVariantInCart=checkVariantInCart2,variantFound=!1;let dataIdValue=freeGiftProduct.querySelector(".redeem-btn").getAttribute("data-id");checkVariantInCart2(dataIdValue).then(function(variantFound2){if(variantFound2)console.log("Variant",dataIdValue," in the cart."),freeGiftProduct.querySelector(".gwp-subtitle span").innerHTML=`Your FREE <span class="capitalize">${freeItemTitle}</span> was added to your bag`,freeGiftProduct.querySelector(".cart-add-form").classList.add("hidden"),freeGiftProduct.querySelector(".cart-change-form").classList.remove("hidden"),freeGiftProduct.querySelector(".redeem-btn").textContent="remove",freeGiftProduct.querySelector(".redeem-btn").removeAttribute("disabled"),freeGiftProduct.querySelector("circle").setAttribute("style","stroke-dasharray: 133.518; stroke-dashoffset: calc(133.518px - (133.518px * 100) / 100);");else{console.log("Variant",dataIdValue," not in the cart.");let btn_add_selector=".form_"+dataIdValue+" .redeem-btn";freeGiftProduct.querySelector(".gwp-subtitle span").innerHTML="Sweet! Your order qualifies for this reward \u2014 redeem now!",freeGiftProduct.querySelector(".cart-add-form").classList.remove("hidden"),freeGiftProduct.querySelector(".cart-change-form").classList.add("hidden"),document.querySelector(btn_add_selector).textContent="get this free",document.querySelector(btn_add_selector).removeAttribute("disabled"),document.querySelector(btn_add_selector).classList.remove("remove-redeem-btn"),document.querySelector(btn_add_selector).classList.add("add-redeem-btn"),freeGiftProduct.querySelector("circle").setAttribute("style","stroke-dasharray: 133.518; stroke-dashoffset: calc(133.518px - (133.518px * 100) / 100);")}}).catch(function(error){console.error("Error occurred:",error)})}})}progressBarShipping(){var country=Shopify.country,shipping_threshold=country+"FreeShippingThreshold",freeThreshold=Math.round(100*parseFloat(theme.settings[shipping_threshold])),total_threshold=country+"MaxItemThreshold",totalThreshold=Math.round(100*parseInt(theme.settings[total_threshold]));fetch(window.Shopify.routes.root+"cart.js").then(response=>response.json()).then(data=>{var carTotalPrice=data.total_price,ProgressPercentage=Math.floor(100*carTotalPrice/freeThreshold),ProgressBar,ProgressBarMessage,ProgressBarHtml="",ProgressBarMessageHtml="";this.tagName=="CART-DRAWER-ITEMS"?(ProgressBar=this.querySelector(".progress_bar_shipping"),ProgressBarMessage=this.querySelector(".progress_bar_shipping_message")):this.tagName=="CART-ITEMS"&&(ProgressBar=this.parentNode.parentNode.querySelector(".progress_bar_shipping_mb"),ProgressBarMessage=this.parentNode.parentNode.querySelector(".progress_bar_shipping_message"));let checkoutButton=document.querySelectorAll(".cart__checkout-button");if(this.currentItemCount>parseInt(theme.settings.cart_total_limit))ProgressBarHtml='<div class="progress"><div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" style="width:100%" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100">100%</div></div><span class="percent">100%</span>',ProgressBarMessageHtml=theme.strings.limitItemMaximum,ProgressBar.classList.add("success"),ProgressBar.classList.add("error"),checkoutButton.forEach(el=>el.disabled=!0);else if(carTotalPrice>totalThreshold)ProgressBarHtml='<div class="progress"><div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" style="width:100%" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100">100%</div></div><span class="percent">100%</span>',ProgressBarMessageHtml=theme.strings.limitTotalMaximum,ProgressBar.classList.add("success"),ProgressBar.classList.add("error"),checkoutButton.forEach(el=>el.disabled=!0);else if(ProgressBar.classList.remove("error"),checkoutButton.forEach(el=>el.disabled=!1),carTotalPrice<freeThreshold){ProgressBarHtml='<div class="progress"><div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" style="width:'+ProgressPercentage+'%" aria-valuenow="'+ProgressPercentage+'" aria-valuemin="0" aria-valuemax="100">'+ProgressPercentage+"%</div></div>";var freeShippingDifference=freeThreshold-carTotalPrice,shopifyCurrency=ProgressBarMessage.dataset.symbol;ProgressBarMessageHtml=theme.strings.shippingMessage.replace("[price]",`${shopifyCurrency}<span data-js-price="${freeShippingDifference}"> ${shopifyCurrency} ${freeShippingDifference} </span>`),ProgressBar.classList.remove("success")}else ProgressBarHtml='<div class="progress"><div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar" style="width:100%" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100">100%</div></div><span class="percent">100%</span>',ProgressBarMessageHtml=theme.strings.freeShipping,ProgressBar.classList.add("success");ProgressBar.innerHTML=ProgressBarHtml,ProgressBarMessage.innerHTML=ProgressBarMessageHtml}).then(function(){window.formatPrices&&window.formatPrices("[data-js-price]")})}async getUserIP(){try{return(await(await fetch("https://api.ipify.org?format=json")).json()).ip}catch(error){return console.error("Error fetching IP address:",error),null}}getDeviceName(){var device="Desktop";return navigator.userAgentData&&navigator.userAgentData.mobile?device=navigator.userAgentData.platform:/iPad/i.test(navigator.userAgent)?device="iPad":/iPhone/i.test(navigator.userAgent)?device="iPhone":/Android/i.test(navigator.userAgent)?device="Android":/Windows Phone/i.test(navigator.userAgent)?device="Windows Phone":/Tablet/i.test(navigator.userAgent)&&(device="Tablet"),/Win/i.test(navigator.userAgent)?device="Windows":/Mac/i.test(navigator.userAgent)?device="Mac":/Linux/i.test(navigator.userAgent)&&(device="Linux"),device}getBrowserInfo(){var browserName="",browserVersion="";return/OPR/i.test(navigator.userAgent)?(browserName="Opera",browserVersion=navigator.userAgent.match(/OPR\/([\d.]+)/)[1]):/Edg/i.test(navigator.userAgent)?(browserName="Microsoft Edge",browserVersion=navigator.userAgent.match(/Edg(?:e|A|iOS|W|\?)?\/([\d.]+)/i)[1]):/Chrome/i.test(navigator.userAgent)?(browserName="Google Chrome",browserVersion=navigator.userAgent.match(/(?:Chrome|CriOS)\/([\d.]+)/)[1]):/Safari/i.test(navigator.userAgent)?(browserName="Safari",navigator.userAgent.indexOf("Version")!==-1?browserVersion=navigator.userAgent.match(/Version\/([\d.]+)/)[1]:navigator.userAgent.indexOf("CriOS")!==-1&&(browserVersion=navigator.userAgent.match(/CriOS\/([\d.]+)/)[1])):/Firefox/i.test(navigator.userAgent)?(browserName="Mozilla Firefox",browserVersion=navigator.userAgent.match(/(?:Firefox|FxiOS)\/([\d.]+)/)[1]):(browserName="Unknown Browser",browserVersion="N/A"),{browserName,browserVersion}}setDeviceName(){const deviceInputs=document.querySelectorAll(".device"),deviceName=this.getDeviceName();
11deviceInputs&&deviceInputs.forEach(deviceInput=>{deviceInput.value=deviceName})}setBrowserInfo(){const browserInputs=document.querySelectorAll(".browser-name"),browserVersionInputs=document.querySelectorAll(".browser-version"),{browserName}=this.getBrowserInfo(),{browserVersion}=this.getBrowserInfo();browserInputs&&browserInputs.forEach(browserInput=>{browserInput.value=browserName}),browserVersionInputs&&browserVersionInputs.forEach(browserVersionInput=>{browserVersionInput.value=browserVersion})}setUserIp(){const ipInputs=document.querySelectorAll(".public-ip-address");this.getUserIP().then(ipAddress=>{ipInputs&&ipInputs.forEach(ipInput=>{ipInput.value=ipAddress})})}updateCartNotes(){this.setBrowserInfo(),this.setDeviceName(),this.setUserIp()}stickyCheckoutButtons(){let selectors={stickyElement:".make-sticky",dynamicExpressBtns:".cart__dynamic",cartBtns:".cart__footer .cart__ctas",stickyCheckoutBtn:".cart__dynamic-checkout_button",GooglePayBtn:"[data-testid='GooglePay-button']",stickyBottomBar:".bottom-announcement-bar"},nodeSelector={stickyElement:document.querySelector(selectors.stickyElement),dynamicExpressBtns:document.querySelector(selectors.dynamicExpressBtns),cartBtns:document.querySelector(selectors.cartBtns),stickyCheckoutBtn:document.querySelector(selectors.stickyCheckoutBtn),stickyBottomBar:document.querySelector(selectors.stickyBottomBar)};function hideButtonOnDevice(selector,device){selector&&device&&navigator.platform===device&&selector.parentElement.classList.add("device-hidden")}function showStickyExpressButtons(){nodeSelector.dynamicExpressBtns.classList.add("isSticky"),nodeSelector.stickyCheckoutBtn.classList.remove("hidden"),nodeSelector.dynamicExpressBtns.querySelector(".cart__dynamic-sticky-buttons").style.transform="translateY(0)"}function hideStickyExpressButtons(){nodeSelector.dynamicExpressBtns.classList.remove("isSticky"),nodeSelector.stickyCheckoutBtn.classList.add("hidden"),nodeSelector.dynamicExpressBtns.querySelector(".cart__dynamic-sticky-buttons").removeAttribute("style")}function makeExpressButtonsSticky(){var checkoutBtnsOffset=nodeSelector.cartBtns.offsetTop-window.innerHeight,expressBtnsOffset=nodeSelector.dynamicExpressBtns.offsetTop,expressBtnsHeight=nodeSelector.dynamicExpressBtns.offsetHeight;window.scrollY<checkoutBtnsOffset||window.scrollY>expressBtnsOffset+expressBtnsHeight-50?showStickyExpressButtons():window.scrollY>checkoutBtnsOffset&&window.scrollY<expressBtnsOffset+expressBtnsHeight&&hideStickyExpressButtons()}function repositionOverAnnouncementBar(){nodeSelector.stickyBottomBar&&!nodeSelector.stickyBottomBar.classList.contains("hidden")?nodeSelector.stickyElement.classList.add("reposition"):nodeSelector.stickyElement.classList.remove("reposition")}function waitForExpressCheckoutBtns(selector){new MutationObserver(mutations=>{makeExpressButtonsSticky(),repositionOverAnnouncementBar(),window.addEventListener("scroll",()=>{makeExpressButtonsSticky(),repositionOverAnnouncementBar(),hideButtonOnDevice(document.querySelector(selectors.GooglePayBtn),"iPhone")})}).observe(selector,{childList:!0,subtree:!0})}function init(){nodeSelector.stickyElement&&waitForExpressCheckoutBtns(nodeSelector.stickyElement)}init()}}customElements.define("cart-items",CartItems);var cartNoteBox=document.querySelector(".cart__note .text-area");function giftMessage(){var cartNoteBoxLength=cartNoteBox.value.length,giftSuccess=document.querySelector(".gift-change-success");giftSuccess.style.opacity=1,setTimeout(function(){giftSuccess.style.opacity=0},600)}var currentMessageLength=document.querySelector(".current-gm-length");console.log(currentMessageLength,"currentMessageLength"),customElements.get("cart-note")||customElements.define("cart-note",class extends HTMLElement{constructor(){super(),this.addEventListener("change",debounce(event=>{const body=JSON.stringify({note:event.target.value});fetch(`${routes.cart_update_url}`,{...fetchConfig(),body})},300))}}),document.addEventListener("DOMContentLoaded",()=>{var cartNotes=document.querySelectorAll(".cart__note textarea");cartNotes&&cartNotes.forEach(cartNoteText=>{currentMessageLength&&(currentMessageLength.innerHTML=cartNoteText.value.length),setTimeout(function(){cart
11NoteText.value.length>200&&(cartNoteText.style.borderColor="red",document.querySelector(".gift-input-info")?document.querySelector(".gift-input-info").style.color="red":(cartNoteText.style.borderColor="#636363",document.querySelector(".gift-input-info")&&(document.querySelector(".gift-input-info").style.color="#636363")))},2e3),cartNoteText.addEventListener("input",debounce(event=>{console.log("check textarea",cartNoteText);var cartNoteMaxLength=cartNoteText.getAttribute("maxlength");currentMessageLength&&(currentMessageLength.innerHTML=cartNoteText.value.length,cartNoteText.value.length>200?(cartNoteText.style.borderColor="red",document.querySelector(".gift-input-info")&&(document.querySelector(".gift-input-info").style.color="red")):(cartNoteText.style.borderColor="#636363",document.querySelector(".gift-input-info")&&(document.querySelector(".gift-input-info").style.color="#636363")))}))})}); 12//# sourceMappingURL=/cdn/shop/t/204/assets/cart.static.js.map?v=73259131217073966681788231399
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.