PageSourceSearch

https://www.r2bstore.nl/cdn/shop/t/97/assets/theme.js?v=15593765945247820301789652656

js r2bstore.nl collected 2026-10-04 23:32:41 UTC 115,380 bytes, 6 lines download raw bytes

1jQuery(document).ready(function($){var webyzeMultiProductColorsRunningCall=!1,webyzeMultiProductColorsQueuedCall=!1;window.webyzeMultiProductColorsLoad=function(){var $2=window.jQuery;function q(f,d){var c=f[0],a=f[1],b=f[2],e=f[3];c=h(c,a,b,e,d[0],7,-680876936),e=h(e,c,a,b,d[1],12,-389564586),b=h(b,e,c,a,d[2],17,606105819),a=h(a,b,e,c,d[3],22,-1044525330),c=h(c,a,b,e,d[4],7,-176418897),e=h(e,c,a,b,d[5],12,1200080426),b=h(b,e,c,a,d[6],17,-1473231341),a=h(a,b,e,c,d[7],22,-45705983),c=h(c,a,b,e,d[8],7,1770035416),e=h(e,c,a,b,d[9],12,-1958414417),b=h(b,e,c,a,d[10],17,-42063),a=h(a,b,e,c,d[11],22,-1990404162),c=h(c,a,b,e,d[12],7,1804603682),e=h(e,c,a,b,d[13],12,-40341101),b=h(b,e,c,a,d[14],17,-1502002290),a=h(a,b,e,c,d[15],22,1236535329),c=k(c,a,b,e,d[1],5,-165796510),e=k(e,c,a,b,d[6],9,-1069501632),b=k(b,e,c,a,d[11],14,643717713),a=k(a,b,e,c,d[0],20,-373897302),c=k(c,a,b,e,d[5],5,-701558691),e=k(e,c,a,b,d[10],9,38016083),b=k(b,e,c,a,d[15],14,-660478335),a=k(a,b,e,c,d[4],20,-405537848),c=k(c,a,b,e,d[9],5,568446438),e=k(e,c,a,b,d[14],9,-1019803690),b=k(b,e,c,a,d[3],14,-187363961),a=k(a,b,e,c,d[8],20,1163531501),c=k(c,a,b,e,d[13],5,-1444681467),e=k(e,c,a,b,d[2],9,-51403784),b=k(b,e,c,a,d[7],14,1735328473),a=k(a,b,e,c,d[12],20,-1926607734),c=g(a^b^e,c,a,d[5],4,-378558),e=g(c^a^b,e,c,d[8],11,-2022574463),b=g(e^c^a,b,e,d[11],16,1839030562),a=g(b^e^c,a,b,d[14],23,-35309556),c=g(a^b^e,c,a,d[1],4,-1530992060),e=g(c^a^b,e,c,d[4],11,1272893353),b=g(e^c^a,b,e,d[7],16,-155497632),a=g(b^e^c,a,b,d[10],23,-1094730640),c=g(a^b^e,c,a,d[13],4,681279174),e=g(c^a^b,e,c,d[0],11,-358537222),b=g(e^c^a,b,e,d[3],16,-722521979),a=g(b^e^c,a,b,d[6],23,76029189),c=g(a^b^e,c,a,d[9],4,-640364487),e=g(c^a^b,e,c,d[12],11,-421815835),b=g(e^c^a,b,e,d[15],16,530742520),a=g(b^e^c,a,b,d[2],23,-995338651),c=l(c,a,b,e,d[0],6,-198630844),e=l(e,c,a,b,d[7],10,1126891415),b=l(b,e,c,a,d[14],15,-1416354905),a=l(a,b,e,c,d[5],21,-57434055),c=l(c,a,b,e,d[12],6,1700485571),e=l(e,c,a,b,d[3],10,-1894986606),b=l(b,e,c,a,d[10],15,-1051523),a=l(a,b,e,c,d[1],21,-2054922799),c=l(c,a,b,e,d[8],6,1873313359),e=l(e,c,a,b,d[15],10,-30611744),b=l(b,e,c,a,d[6],15,-1560198380),a=l(a,b,e,c,d[13],21,1309151649),c=l(c,a,b,e,d[4],6,-145523070),e=l(e,c,a,b,d[11],10,-1120210379),b=l(b,e,c,a,d[2],15,718787259),a=l(a,b,e,c,d[9],21,-343485551),f[0]=c+f[0]&4294967295,f[1]=a+f[1]&4294967295,f[2]=b+f[2]&4294967295,f[3]=e+f[3]&4294967295}function g(f,d,c,a,b,e){return d=(d+f&4294967295)+(a+e&4294967295)&4294967295,(d<<b|d>>>32-b)+c&4294967295}function h(f,d,c,a,b,e,m){return g(d&c|~d&a,f,d,b,e,m)}function k(f,d,c,a,b,e,m){return g(d&a|c&~a,f,d,b,e,m)}function l(f,d,c,a,b,e,m){return g(c^(d|~a),f,d,b,e,m)}function r(f){txt="";var d=f.length,c=[1732584193,-271733879,-1732584194,271733878],a;for(a=64;a<=f.length;a+=64){var b,e=f.substring(a-64,a),m=[];for(b=0;64>b;b+=4)m[b>>2]=e.charCodeAt(b)+(e.charCodeAt(b+1)<<8)+(e.charCodeAt(b+2)<<16)+(e.charCodeAt(b+3)<<24);q(c,m)}for(f=f.substring(a-64),b=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],a=0;a<f.length;a++)b[a>>2]|=f.charCodeAt(a)<<(a%4<<3);if(b[a>>2]|=128<<(a%4<<3),55<a)for(q(c,b),a=0;16>a;a++)b[a]=0;return b[14]=8*d,q(c,b),c}function t(f){for(var d=0;d<f.length;d++){for(var c=d,a=f[d],b="",e=0;4>e;e++)b+=u[a>>8*e+4&15]+u[a>>8*e&15];f[c]=b}return f.join("")}var n=(function(){var f={'"':"&quot;","&":"&amp;","<":"&lt;",">":"&gt;"};return function(d){return d.replace(/["&<>]/g,function(c){return f[c]})}})(),p=$2(".webyze-multi-product-colors:not(.webyze-loaded)").map(function(){return $2(this).attr("data-product-id")}).get();if(p&&p.length!=0)if(webyzeMultiProductColorsRunningCall)webyzeMultiProductColorsQueuedCall=!0;else{webyzeMultiProductColorsRunningCall=!0,webyzeMultiProductColorsQueuedCall=!1;var u="0123456789abcdef".split("");t(r("hello"));var v="shop="+Shopify.shop+p.map(function(f){return"&prodId[]="+f}).join("");$2.ajax({method:"GET",url:"https://s-pc.webyze.com/ProductColors/productGroup-"+t(r(v))+"?"+v,dataType:"json"}).done(function(f){Array.isArray(f)&&(f=f.map(function(d){return JSON.parse(d)}),f.forEach(function(d){if(Array.isArray(d)){d.map(function(a){return a.id});var c="";
1d.forEach(function(a){if(c+='<span class="swatchProductColor swatchType_'+a.type+'" data-name="'+n(a.name)+'" data-handle="'+n(a.handle)+'" data-image="'+n(a.image)+'">',window.webyzeProductColors_useProdImage)c+=`<div style="background-image: url('`+a.image.replace(/\.(png|jpg|jpeg|bmp)/,window.webyzeProductColors_prodImageLarge?"_large.$1":"_small.$1")+`');background-size: cover;"></div>`;else switch(a.type){case"two_colors":a.data=a.data.split("|"),c+='<div><div style="background:'+a.data[0]+';"></div><div style="background:'+a.data[1]+';"></div></div>';break;case"image":c+=`<div style="background-image: url('https://s-pc.webyze.com/ProductColors/uploads/`+a.data+`');"></div>`;break;default:c+='<div style="background:'+a.data+';"></div>'}c+='<span class="webyzeTooltip"><span></span><span class="innerText">'+n(a.name)+"</span><span></span></span></span>"}),$2(d.map(function(a){return'.webyze-multi-product-colors[data-product-id="'+a.id+'"]'}).join(", ")).addClass("webyze-loaded").html(c)}}),$2(".webyze-multi-product-colors").find(".swatchProductColor").on("click",function(d){d.preventDefault(),window.location.href="/products/"+$2(this).data("handle")}).on("mouseenter",function(){var d=$2(this).attr("data-image").replace(/\.(jpg|png|jpeg)/,"_large.$1");d.indexOf("https://")===0&&$2(this).parent().parent().parent().find("img").attr("src",d).attr("srcset",d)}),$2(p.map(function(d){return'.webyze-multi-product-colors[data-product-id="'+d+'"]'}).join(", ")).addClass("webyze-loaded"))}).fail(function(){}
1).always(function(){webyzeMultiProductColorsRunningCall=!1,webyzeMultiProductColorsQueuedCall&&window.webyzeMultiProductColorsLoad()})}},window.webyzeMultiProductColorsLoad&&window.webyzeMultiProductColorsLoad();let cartPopupActive=!1,menuDrawerActive=!1,toggleFooterActive=!1,headerCartDrawerBound=!1;function isCartDrawerMode(){return(window.themeSettings&&window.themeSettings.cartType)==="drawer"}function updateCartDrawerScrollClass(){const body=document.querySelector("[data-cart-drawer-body]"),header=document.querySelector(".cart-drawer__header"),footer=document.querySelector("[data-cart-drawer-footer]");if(!body)return;const canScroll=body.scrollHeight>body.clientHeight+1;header&&header.classList.toggle("scroll",canScroll),body.classList.remove("scroll"),footer&&footer.classList.toggle("scroll",canScroll)}function openCartDrawer(){const $drawer=$("#CartDrawer");$drawer.length&&(resetCartDrawerSwipeTransform($drawer),$drawer.addClass("active").attr("aria-hidden","false"),$("html").addClass("cart-drawer-active"),bindCartDrawerEvents(),window.requestAnimationFrame(function(){updateCartDrawerScrollClass()}))}function closeCartDrawer(){const $drawer=$("#CartDrawer");if(!$drawer.length)return;$drawer.removeClass("active").attr("aria-hidden","true"),$("html").removeClass("cart-drawer-active"),resetCartDrawerSwipeTransform($drawer);const header=document.querySelector(".cart-drawer__header"),body=document.querySelector("[data-cart-drawer-body]"),footer=document.querySelector("[data-cart-drawer-footer]");header&&header.classList.remove("scroll"),body&&body.classList.remove("scroll"),footer&&footer.classList.remove("scroll")}function getCartDrawerSwipePanel($drawer){const $panel=$drawer.find(".cart-drawer__panel").first();return $panel.length?$panel:$drawer}function resetCartDrawerSwipeTransform($drawer){getCartDrawerSwipePanel($drawer).css({transform:"",transition:"",webkitTransform:""})}function bindCartDrawerSwipe($drawer){const ns=".cartDrawerSwipe",drawerEl=$drawer.get(0),panelEl=getCartDrawerSwipePanel($drawer).get(0),bodyEl=drawerEl?drawerEl.querySelector("[data-cart-drawer-body]"):null,swipeRoot=panelEl||drawerEl;if($drawer.off(ns),$(window).off("resize"+ns),drawerEl&&drawerEl._cartDrawerSwipeCleanup&&(drawerEl._cartDrawerSwipeCleanup(),drawerEl._cartDrawerSwipeCleanup=null),$drawer.removeData("cartDrawerSwipeBound"),$(window).on("resize"+ns,function(){const shouldBeBound=isMobileViewport(),isBound=!!$drawer.data("cartDrawerSwipeBound");shouldBeBound!==isBound&&bindCartDrawerSwipe($drawer)}),!isMobileViewport()||!drawerEl||!swipeRoot){resetCartDrawerSwipeTransform($drawer);return}let startX=0,startY=0,currentX=0,dragging=!1,locked=null,activePointerId=null,$panel=null,closing=!1,movedFar=!1,usingTouch=!1;const touchActionTargets=[swipeRoot,bodyEl].filter(Boolean);function setSwipeTouchAction(value){touchActionTargets.forEach(function(el){el.style.touchAction=value})}function setPanelX(x,withTransition){if(!$panel||!$panel.length)return;const transform="translate3d("+x+"px, 0, 0)";$panel.css({transition:withTransition?"transform 0.2s ease-out":"none",transform,webkitTransform:transform})}function endGesture(){dragging=!1,locked=null,activePointerId=null,currentX=0,movedFar=!1,usingTouch=!1,setSwipeTouchAction("pan-y")}function finishSwipe(){if(closing)return;if(!dragging&&currentX<=0){endGesture();return}if((!$panel||!$panel.length)&&($panel=getCartDrawerSwipePanel($drawer)),!$panel||!$panel.length){endGesture();return}const panelWidth=$panel.outerWidth()||$(window).innerWidth()||1;currentX>=50||currentX/panelWidth>=.15?(closing=!0,closeCartDrawer(),closing=!1,endGesture()):(setPanelX(0,!0),window.setTimeout(function(){resetCartDrawerSwipeTransform($drawer)},200),endGesture())}function beginGesture(pointerId,clientX,clientY){return!isMobileViewport()||closing||!$drawer.hasClass("active")||$("#CartDrawerRemoveModal").hasClass("active")||activePointerId!==null?!1:(activePointerId=pointerId,startX=clientX,startY=clientY,currentX=0,dragging=!0,locked=null,movedFar=!1,$panel=getCartDrawerSwipePanel($drawer),setPanelX(0,!1),!0)}function moveGesture(pointerId,clientX,clientY,e){if(!dragging||pointerId!==activePointerId)return;const deltaX=clientX-startX,deltaY=clientY-startY;if(!locked){if(Math.abs(deltaX)<5&&Math.abs(deltaY)<5)return;if(locked=Math.abs(deltaX)>Math.abs(deltaY)?"x":"y",locked==="y"){dragging=!1,activePointerId=null,locked=null,usingTouch=!1,setSwipeTouchAction("pan-y");return}if(setSwipeTouchAction("none"),!usingTouch)try{swipeRoot.setPointerCapture(pointerId)}catch{}}locked==="x"&&(currentX=Math.max(0,deltaX),currentX>8&&(movedFar=!0),setPanelX(currentX,!1),e&&(e.cancelable&&e.preventDefault(),e.stopPropagation()))}function onPointerDown(e){e.pointerType!=="touch"&&(e.pointerType==="mouse"&&typeof e.button=="number"&&e.button!==0||(usingTouch=!1,beginGesture(e.pointerId,e.clientX,e.clientY)))}function onPointerMove(e){usingTouch||e.pointerType==="touch"||moveGesture(e.pointerId,e.clientX,e.clientY,e)}function onPointerUp(e){if(!(usingTouch||e.pointerType==="touch")&&e.pointerId===activePointerId){try{swipeRoot.hasPointerCapture&&swipeRoot.hasPointerCapture(e.pointerId)&&swipeRoot.releasePointerCapture(e.pointerId)}catch{}if(!dragging&&!movedFar){activePointerId=null;return}finishSwipe()}}function onPointerCancel(e){if(!(usingTouch||e.pointerType==="touch")&&e.pointerId===activePointerId){if(locked==="x"||currentX>0||movedFar){finishSwipe();return}resetCartDrawerSwipeTransform($drawer),endGesture()}}function onClickCapture(e){movedFar&&(e.preventDefault(),e.stopPropagation(),movedFar=!1)}function onTouchStart(e){if(!e.touches||e.touches.length!==1)return;const t=e.touches[0];usingTouch=!0,beginGesture(1,t.clientX,t.clientY)}function onTouchMove(e){if(!usingTouch||!e.touches||!e.touches.length)return;const t=e.touches[0];moveGesture(1,t.clientX,t.clientY,e)}function onTouchEnd(){if(usingTouch&&activePointerId===1){if(!dragging&&!movedFar){endGesture();return}finishSwipe()}}const listenerOpts={passive:!1};swipeRoot.addEventListener("pointerdown",onPointerDown,listenerOpts),swipeRoot.addEventListener("pointermove",onPointerMove,listenerOpts),swipeRoot.addEventListener("pointerup",onPointerUp,listenerOpts),swipeRoot.addEventListener("pointercancel",onPointerCancel,listenerOpts),swipeRoot.addEventListener("click",onClickCapture,!0),swipeRoot.addEventListener("touchstart",onTouchStart,listenerOpts),swipeRoot.addEventListener("touchmove",onTouchMove,listenerOpts),swipeRoot.addEventListener("touchend",onTouchEnd,listenerOpts),swipeRoot.addEventListener("touchcancel",onTouchEnd,listenerOpts),setSwipeTouchAction("pan-y"),drawerEl._cartDrawerSwipeCleanup=function(){swipeRoot.removeEventListener("pointerdown",onPointerDown,listenerOpts),swipeRoot.removeEventListener("pointermove",onPointerMove,listenerOpts),swipeRoot.removeEventListener("pointerup",onPointerUp,listenerOpts),swipeRoot.removeEventListener("pointercancel",onPointerCancel,listenerOpts),swipeRoot.removeEventListener("click",onClickCapture,!0),swipeRoot.removeEventListener("touchstart",onTouchStart,listenerOpts),swipeRoot.removeEventListener("touchmove",onTouchMove,listenerOpts),swipeRoot.removeEventListener("touchend",onTouchEnd,listenerOpts),swipeRoot.removeEventListener("touchcancel",onTouchEnd,listenerOpts),touchActionTargets.forEac
1h(function(el){el.style.touchAction=""})},$drawer.data("cartDrawerSwipeBound",!0)}const CART_DRAWER_CLOSE_AFTER_CONTINUE_KEY="r2bCloseCartDrawerOnShow";function isMobileViewport(){return $(window).innerWidth()<769}function markCloseCartDrawerAfterContinueShopping(){if(!(!isCartDrawerMode()||!isMobileViewport())){try{sessionStorage.setItem(CART_DRAWER_CLOSE_AFTER_CONTINUE_KEY,"1")}catch{}closeCartDrawer()}}function applyCloseCartDrawerAfterContinueShopping(){if(!(!isCartDrawerMode()||!isMobileViewport()))try{sessionStorage.getItem(CART_DRAWER_CLOSE_AFTER_CONTINUE_KEY)==="1"&&(sessionStorage.removeItem(CART_DRAWER_CLOSE_AFTER_CONTINUE_KEY),closeCartDrawer())}catch{}}function openHeaderCartDrawer(e){e.preventDefault(),openCartDrawer()}let pendingRemoveLineKey=null,pendingRemoveLine=null;const cartLineUpdateQueues={};let cartApiQueue=Promise.resolve(),cartMutationGeneration=0;function runCartApi(fn){const gen=cartMutationGeneration,next=cartApiQueue.then(function(){return gen!==cartMutationGeneration?null:fn()},function(){return gen!==cartMutationGeneration?null:fn()});return cartApiQueue=next.then(function(){},function(){}),next}
1function invalidateCartLineQueues(keys){(keys||[]).forEach(function(key){if(!key)return;const queueId=getCartLineQueueId(key,null);cartLineUpdateQueues[queueId]&&(cartLineUpdateQueues[queueId].pending=null,cartLineUpdateQueues[queueId].requestSeq+=1)})}function formatCartMoney(cents){const format=window.shop&&window.shop.moneyFormat||window.theme&&window.theme.moneyFormat||"";if(typeof cents=="string"&&(cents=cents.replace(".","")),cents=Number(cents),isNaN(cents))return"";if(!format){const currencyCode=window.shop&&window.shop.currencyCode||"EUR",currencySymbol=window.shop&&window.shop.currencySymbol||"\u20AC",useComma="ANG,ARS,BRL,BYN,BYR,CLF,CLP,COP,CRC,CZK,DKK,EUR,HRK,HUF,IDR,ISK,MZN,NOK,PLN,RON,RUB,SEK,UYU,VES,VND".indexOf(currencyCode.trim())!==-1,amount=(cents/100).toFixed(2);return currencySymbol+(useComma?amount.replace(".",","):amount)}const placeholderRegex=/\{\{\s*(\w+)\s*\}\}/,formatWithDelimiters=function(number,precision,thousands,decimal){if(precision=typeof precision>"u"?2:precision,thousands=typeof thousands>"u"?",":thousands,decimal=typeof decimal>"u"?".":decimal,isNaN(number)||number==null)return"0";number=(number/100).toFixed(precision);const parts=number.split("."),dollars=parts[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1"+thousands),centsPart=parts[1]?decimal+parts[1]:"";return dollars+centsPart},match=format.match(placeholderRegex);if(!match||!match[1])return(window.shop&&window.shop.currencySymbol||"\u20AC")+String((cents/100).toFixed(2));let value="";switch(match[1]){case"amount":value=formatWithDelimiters(cents,2);break;case"amount_no_decimals":value=formatWithDelimiters(cents,0);break;case"amount_with_comma_separator":value=formatWithDelimiters(cents,2,".",",");break;case"amount_no_decimals_with_comma_separator":value=formatWithDelimiters(cents,0,".",",");break;case"amount_with_apostrophe_separator":value=formatWithDelimiters(cents,2,"'",".");break;case"amount_no_decimals_with_space_separator":value=formatWithDelimiters(cents,0," ","");break;case"amount_with_space_separator":value=formatWithDelimiters(cents,2," ",",");break;case"amount_with_period_and_space_separator":value=formatWithDelimiters(cents,2," ",".");break;default:value=formatWithDelimiters(cents,2)}return format.replace(placeholderRegex,value)}function getCartLineQueueId(lineKey,lineNumber){return lineKey||"line-"+String(lineNumber)}function resolveCartLineNumber(lineKey,lineNumber){if(lineKey){const $drawerItem=findCartDrawerItem(lineKey,null);if($drawerItem.length){const liveLine=parseInt($drawerItem.attr("data-line"),10);if(!isNaN(liveLine)&&liveLine>0)return liveLine}const $pageItem=findCartPageItem(lineKey,null);if($pageItem.length){const liveLine=parseInt($pageItem.attr("data-line"),10);if(!isNaN(liveLine)&&liveLine>0)return liveLine}}const parsed=parseInt(lineNumber,10);return!isNaN(parsed)&&parsed>0?parsed:null}function getOptimisticQuantity(lineKey,lineNumber){const $drawerItem=findCartDrawerItem(lineKey,lineNumber);if($drawerItem.length){const qty=parseInt($drawerItem.find(".cart-drawer__qty-input").val(),10);if(!isNaN(qty))return qty}const $pageItem=findCartPageItem(lineKey,lineNumber);if($pageItem.length){const qty=parseInt($pageItem.find(".r2b-cart__qty-input").val(),10);if(!isNaN(qty))return qty}return null}function getR2bBundleCartLevelAllocations(cartData){const allocations={};if(!cartData||!Array.isArray(cartData.items))return allocations;let totalDiscount=Number(cartData.total_discount)||0;if(!totalDiscount&&Number(cartData.original_total_price)>Number(cartData.total_price)&&(totalDiscount=Number(cartData.original_total_price)-Number(cartData.total_price)),totalDiscount<=0)return allocations;let lineLevelDiscountTotal=0;const eligible=[];let eligibleBaseTotal=0;cartData.items.forEach(function(item){const originalLine=Number(item.original_line_price),finalLine=Number(item.final_line_price),explicitLineDiscount=Number(item.line_level_total_discount);let lineDiscount=0;!isNaN(originalLine)&&!isNaN(finalLine)&&originalLine>finalLine&&(lineDiscount=originalLine-finalLine),!isNaN(explicitLineDiscount)&&explicitLineDiscount>lineDiscount&&(lineDiscount=explicitLineDiscount),lineLevelDiscountTotal+=Math.max(lineDiscount,0);const props=item.properties||{},group=String(props._r2b_bundle_group||"").trim(),role=String(props._r2b_bundle_role||"").trim();if(!group||role!=="addon")return;
1const qty=Math.max(Number(item.quantity)||0,0);let baseLine=!isNaN(finalLine)&&finalLine>=0?finalLine:(Number(item.final_price)||Number(item.original_price)||0)*qty;baseLine<=0||qty<=0||(eligible.push({item,baseLine,quantity:qty}),eligibleBaseTotal+=baseLine)});let remainingCartLevelDiscount=totalDiscount-lineLevelDiscountTotal;if(remainingCartLevelDiscount<=0||eligibleBaseTotal<=0||!eligible.length)return allocations;let allocatedSoFar=0;return eligible.forEach(function(entry,index){let lineAllocation;index===eligible.length-1?lineAllocation=Math.max(remainingCartLevelDiscount-allocatedSoFar,0):(lineAllocation=Math.round(remainingCartLevelDiscount*(entry.baseLine/eligibleBaseTotal)),lineAllocation=Math.max(lineAllocation,0),allocatedSoFar+=lineAllocation);const perUnit=entry.quantity>0?Math.round(lineAllocation/entry.quantity):0;allocations[String(entry.item.key||"")]=Math.max(perUnit,0)}),allocations}function syncCartPageLinePrice($pageItem,item,bundleUnitDiscount){if(!$pageItem||!$pageItem.length||!item||$pageItem.attr("data-bogo-role"))return;const finalPrice=Number(item.final_price),originalPrice=Number(item.original_price),compareAtPrice=Number(getLineCompareAtPrice(item)),bundleDiscount=Math.max(Number(bundleUnitDiscount)||0,0),baseCurrent=!isNaN(finalPrice)&&finalPrice>=0?finalPrice:!isNaN(originalPrice)&&originalPrice>=0?originalPrice:0,current=Math.max(baseCurrent-bundleDiscount,0);let oldPrice=0;!isNaN(compareAtPrice)&&compareAtPrice>current&&(oldPrice=compareAtPrice),!isNaN(originalPrice)&&originalPrice>current&&originalPrice>oldPrice&&(oldPrice=originalPrice);let $current=$pageItem.find("[data-cart-page-line-price]").first();$current.length||($current=$pageItem.find(".r2b-cart__item-prices .r2b-cart__price").last()),$current.length&&$current.text(formatCartMoney(current));let $compare=$pageItem.find("[data-cart-page-line-compare]").first();!$compare.length&&$current.length&&($compare=$('<span class="r2b-cart__price--compare" data-cart-page-line-compare hidden></span>'),$current.before($compare));let $badge=$pageItem.find("[data-cart-page-line-discount]").first();if(!$badge.length&&$current.length&&($badge=$('<span class="r2b-cart__discount-badge" data-cart-page-line-discount hidden></span>'),$current.before($badge)),oldPrice>current){$compare.length&&$compare.text(formatCartMoney(oldPrice)).removeAttr("hidden");const discountPercent=Math.round((oldPrice-current)/oldPrice*100);$badge.length&&discountPercent>0?$badge.text(discountPercent+"% korting").removeAttr("hidden"):$badge.length&&$badge.attr("hidden",!0).text("")}else $compare.length&&$compare.attr("hidden",!0).text(""),$badge.length&&$badge.attr("hidden",!0).text("");!isNaN(originalPrice)&&originalPrice>=0&&$pageItem.attr("data-original-price",originalPrice),!isNaN(compareAtPrice)&&compareAtPrice>0&&$pageItem.attr("data-compare-at-price",compareAtPrice)}function reconcileLinesFromCart(cartData){if(!cartData||!Array.isArray(cartData.items))return;const bundleAllocations=getR2bBundleCartLevelAllocations(cartData);cartData.items.forEach(function(item,index){const line=index+1,key=item.key,qty=item.quantity,$drawerItem=key?findCartDrawerItem(key,line):$(".cart-drawer__items .cart-drawer__item").eq(index);$drawerItem.length&&(key&&($drawerItem.attr("data-line-key",key),$drawerItem.find("[data-line-key]").attr("data-line-key",key)),$drawerItem.attr("data-line",line),applyOptimisticLineQuantity($drawerItem,qty,"drawer"));const $pageItem=key?findCartPageItem(key,line):$(".r2b-cart__items .r2b-cart__item").eq(index);$pageItem.length&&(key&&($pageItem.attr("data-line-key",key),$pageItem.find("[data-line-key]").attr("data-line-key",key)),$pageItem.attr("data-line",line),$pageItem.find("[data-line]").attr("data-line",line),applyOptimisticLineQuantity($pageItem,qty,"page"),syncCartPageLinePrice($pageItem,item,bundleAllocations[String(item.key||"")]||0))})}function findCartDrawerItem(lineKey,lineNumber){if(lineKey){const $byKey=$(".cart-drawer__item").filter(function(){return $(this).attr("data-line-key")===lineKey});if($byKey.length)return $byKey.first()}return lineNumber?$('.cart-drawer__item[data-line="'+String(lineNumber)+'"]').first():$()}function findCartPageItem(lineKey,lineNumber){if(lineKey){const $byKey=$(".r2b-cart__item").filter(function(){return $(this).attr("data-line-key")===lineKey});if($byKey.length)return $byKey.first()}return lineNumber?$('.r2b-cart__item[data-line="'+String(lineNumber)+'"]').first():$()}function bumpCartItemCount(delta){if(!delta)return;const currentCount=parseInt($("[data-cart-drawer-count]").first().text()||$("[data-cart-page-count]").first().text()||window.cart&&window.cart.quantity||0,10);if(isNaN(currentCount))return;const nextCount=Math.max(currentCount+delta,0);$("[data-cart-drawer-count]").text(nextCount),$("[data-cart-page-count]").text(nextCount),$(".header-cart .badge-cart").text(nextCount),window.cart&&(window.cart.quantity=nextCount)}function applyOptimisticLineQuantity($item,quantity,context){if(!$item||!$item.length)return;
1const qty=parseInt(quantity,10);isNaN(qty)||qty<1||($item.attr("data-quantity",qty),context==="drawer"?($item.find(".cart-drawer__qty-input").val(qty),$item.find('[data-cart-drawer-qty][data-qty-action="minus"]').attr("data-quantity",Math.max(qty-1,0)),$item.find('[data-cart-drawer-qty][data-qty-action="plus"]').attr("data-quantity",qty+1)):($item.find(".r2b-cart__qty-input").val(qty),$item.find("[data-cart-variant-dropdown]").attr("data-quantity",qty)))}function renumberCartLineIndexes(){$(".cart-drawer__items .cart-drawer__item").each(function(index){$(this).attr("data-line",index+1)}),$(".r2b-cart__items .r2b-cart__item").each(function(index){const line=index+1;$(this).attr("data-line",line),$(this).find("[data-line]").attr("data-line",line)})}function applyOptimisticLineRemove(lineKey,lineNumber){const $drawerItem=findCartDrawerItem(lineKey,lineNumber),$pageItem=findCartPageItem(lineKey,lineNumber);let removedQty=0;$drawerItem.length&&(removedQty=parseInt($drawerItem.find(".cart-drawer__qty-input").val(),10)||parseInt($drawerItem.attr("data-quantity"),10)||1,$drawerItem.remove()),$pageItem.length&&(removedQty||(removedQty=parseInt($pageItem.find(".r2b-cart__qty-input").val(),10)||parseInt($pageItem.attr("data-quantity"),10)||1),$pageItem.remove()),renumberCartLineIndexes(),removedQty>0&&bumpCartItemCount(-removedQty);const remainingDrawer=$(".cart-drawer__items .cart-drawer__item").length,remainingPage=$(".r2b-cart__items .r2b-cart__item").length;if(!remainingDrawer){const $body=$("[data-cart-drawer-body]");$body.length&&!$body.find(".cart-drawer__empty").length&&$body.html('<div class="cart-drawer__empty"></div>'),$("[data-cart-drawer-footer]").addClass("cart-drawer__footer--empty").find(".cart-drawer__summary, .cart-drawer__checkout, .cart-drawer__view-cart").remove()}!remainingPage&&$(".main_cart-section").length,window.requestAnimationFrame(function(){updateCartDrawerScrollClass()})}function findCartLineItemEl(lineKey,lineNumber){const $drawer=findCartDrawerItem(lineKey,lineNumber);if($drawer.length)return $drawer.first();const $page=findCartPageItem(lineKey,lineNumber);return $page.length?$page.first():$()}function getBogoItemScope($item){return!$item||!$item.length?$():$item.hasClass("cart-drawer__item")?$item.parent().children(".cart-drawer__item"):$item.hasClass("r2b-cart__item")?$item.parent().children(".r2b-cart__item"):$()}function getBogoLineRef($el){return!$el||!$el.length?null:{lineKey:$el.attr("data-line-key")||null,lineNumber:$el.attr("data-line")||null}}function findBogoLinkedCompanion(lineKey,lineNumber,wantedRole){const $item=findCartLineItemEl(lineKey,lineNumber);if(!$item.length)return null;const role=($item.attr("data-bogo-role")||"").trim();if(!role)return null;const targetRole=wantedRole||(role==="paid"?"free":"paid");if(role===targetRole)return null;const group=($item.attr("data-bogo-group")||"").trim(),$scope=getBogoItemScope($item);let $match=$();if(group&&$scope.length&&($match=$scope.filter(function(){return $(this).attr("data-bogo-role")===targetRole&&($(this).attr("data-bogo-group")||"")===group})),!$match.length){const $neighbor=targetRole==="free"?$item.next():$item.prev();$neighbor&&$neighbor.length&&$neighbor.attr("data-bogo-role")===targetRole&&($match=$neighbor)}return getBogoLineRef($match.first())}function findBogoFreeCompanion(lineKey,lineNumber){const $item=findCartLineItemEl(lineKey,lineNumber);return!$item.length||$item.attr("data-bogo-role")!=="paid"?null:findBogoLinkedCompanion(lineKey,lineNumber,"free")}function getBogoFreeCompanionState(lineKey,lineNumber){const companion=findBogoFreeCompanion(lineKey,lineNumber);if(!companion)return null;const $drawer=findCartDrawerItem(companion.lineKey,companion.lineNumber),$page=findCartPageItem(companion.lineKey,companion.lineNumber),$el=$drawer.length?$drawer:$page,qtyFromInput=parseInt($el.find(".cart-drawer__qty-input, .r2b-cart__qty-input").first().val(),10),qtyFromAttr=parseInt($el.attr("data-quantity"),10);return{lineKey:companion.lineKey,lineNumber:companion.lineNumber,$drawer,$page,quantity:isNaN(qtyFromInput)?isNaN(qtyFromAttr)?1:qtyFromAttr:qtyFromInput,maxQty:parseInt($el.attr("data-max-qty"),10)||99}}function applyBogoFreeCompanionQuantity(companion,quantity){companion&&(applyOptimisticLineQuantity(companion.$drawer,quantity,"drawer"),applyOptimisticLineQuantity(companion.$page,quantity,"page"))}function getR2bBundleGroupFromCartItem(item){const props=item&&item.properties||{};return String(props._r2b_bundle_group||"").trim()}function collectR2bBundleGroupUpdates(cartData,group){const updates={};return!cartData||!Array.isArray(cartData.items)||!group||cartData.items.forEac
1h(function(item){item&&item.key&&getR2bBundleGroupFromCartItem(item)===String(group)&&(updates[String(item.key)]=0)}),updates}async function removeWholeR2bBundleIfNeeded(lineKey,lineNumber){try{const cartData=await getAjax("/cart.js","GET","json"),items=cartData&&cartData.items||[],current=items.find(function(item){return lineKey&&String(item.key)===String(lineKey)})||(lineNumber?items[parseInt(lineNumber,10)-1]:null);if(!current)return!1;const group=getR2bBundleGroupFromCartItem(current);if(!group)return!1;const updates=collectR2bBundleGroupUpdates(cartData,group);if(!Object.keys(updates).length)return!1;const latest=await runCartApi(async function(){return await postAjaxJson("/cart/update.js",{updates})}),drawerOpen=$("#CartDrawer").hasClass("active");return latest&&syncCartSummariesFromCart(latest,drawerOpen?"page":"all"),($(".main_cart-section").length||$("[data-cart-page]").length)&&await refreshCartPage(),await softRefreshCartDrawer(drawerOpen,{preserveItems:!1}),cacheCompareAtFromDom(),!0}catch(error2){return console.error("R2B bundel verwijderen:",error2),!1}}async function removeLineWithBogoCompanion(lineKey,lineNumber){if(await removeWholeR2bBundleIfNeeded(lineKey,lineNumber))return;const $item=findCartLineItemEl(lineKey,lineNumber),group=($item.attr("data-bogo-group")||"").trim(),role=($item.attr("data-bogo-role")||"").trim(),companion=role==="paid"?findBogoLinkedCompanion(lineKey,lineNumber,"free"):role==="free"?findBogoLinkedCompanion(lineKey,lineNumber,"paid"):null,extraKeys=[];if(companion&&companion.lineKey&&String(companion.lineKey)!==String(lineKey||"")&&extraKeys.push(String(companion.lineKey)),lineKey&&extraKeys.push(String(lineKey)),cartMutationGeneration+=1,invalidateCartLineQueues(extraKeys),group&&$(".cart-drawer__item, .r2b-cart__item").each(function(){($(this).attr("data-bogo-group")||"")===group&&invalidateCartLineQueues([$(this).attr("data-line-key")])}),extraKeys.forEach(function(key){applyOptimisticLineRemove(key,key===String(lineKey||"")?lineNumber:companion&&companion.lineNumber)}),group){const groupKeys=[];$(".cart-drawer__item, .r2b-cart__item").each(function(){($(this).attr("data-bogo-group")||"")===group&&groupKeys.push({key:$(this).attr("data-line-key"),line:$(this).attr("data-line")})}),groupKeys.forEach(function(ref){applyOptimisticLineRemove(ref.key,ref.line)})}try{const cartData=await runCartApi(async function(){let latest=await getAjax("/cart.js","GET","json"),updates=collectBogoGroupKeys(latest,group,extraKeys);!Object.keys(updates).length&&lineKey&&(updates[String(lineKey)]=0),Object.keys(updates).length&&(latest=await postAjaxJson("/cart/update.js",{updates}));const leftover=collectBogoGroupKeys(latest,group,[]);return Object.keys(leftover).length&&(latest=await postAjaxJson("/cart/update.js",{updates:leftover})),latest}),drawerOpen=$("#CartDrawer").hasClass("active");return cartData&&syncCartSummariesFromCart(cartData,drawerOpen?"page":"all"),($(".main_cart-section").length||$("[data-cart-page]").length)&&await refreshCartPage(),await softRefreshCartDrawer(drawerOpen,{preserveItems:!1}),cacheCompareAtFromDom(),cartData}catch(error2){console.error("BOGO cart remove:",error2),$(".main_cart-section").length&&await refreshCartPage(),await softRefreshCartDrawer($("#CartDrawer").hasClass("active")),cacheCompareAtFromDom()}}function syncHeaderFromCart(cartData){cartData&&(typeof cartData.item_count<"u"&&(window.cart.quantity=cartData.item_count,$(".header-cart .badge-cart").text(cartData.item_count)),typeof cartData.items_subtotal_price<"u"?window.cart.total_price=cartData.items_subtotal_price:typeof cartData.total_price<"u"&&(window.cart.total_price=cartData.total_price))}function getLineCompareAtPrice(item){if(!item)return 0;window.__r2bCompareAtByKey||(window.__r2bCompareAtByKey={}),window.__r2bCompareAtByVariant||(window.__r2bCompareAtByVariant={});const apiCompare=Number(item.compare_at_price);if(apiCompare>0)return item.key&&(window.__r2bCompareAtByKey[item.key]=apiCompare),item.variant_id&&(window.__r2bCompareAtByVariant[String(item.variant_id)]=apiCompare),apiCompare;if(item.key&&window.__r2bCompareAtByKey[item.key]>0)return Number(window.__r2bCompareAtByKey[item.key]);if(item.variant_id&&window.__r2bCompareAtByVariant[String(item.variant_id)]>0)return Number(window.__r2bCompareAtByVariant[String(item.variant_id)]);const $line=item.key?$(".cart-drawer__item, .r2b-cart__item").filter(function(){return $(this).attr("data-line-key")===item.key}):$();let compareAt=0;if($line.length){if(compareAt=Number($line.attr("data-compare-at-price"))||0,!compareAt){const aiodCompare=$line.find("[product-compare-at-price]").first().attr("product-compare-at-price");compareAt=Number(aiodCompare)||0}if(compareAt>0){item.key&&(window.__r2bCompareAtByKey[item.key]=compareAt);const variantId=item.variant_id||$line.attr("data-variant-id");variantId&&(window.__r2bCompareAtByVariant[String(variantId)]=compareAt)}}return compareAt>0?compareAt:0}function cacheCompareAtFromDom($root){window.__r2bCompareAtByKey||(window.__r2bCompareAtByKey={}),window.__r2bCompareAtByVariant||(window.__r2bCompareAtByVariant={}),($root&&$root.length?$root:$(document)).find(".cart-drawer__item, .r2b-cart__item").each(function(){const $item=$(this),key=$item.attr("data-line-key"),variantId=$item.attr("data-variant-id");let compareAt=Number($item.attr("data-compare-at-price"))||0;compareAt||(compareAt=Number($item.find("[product-compare-at-price]").attr("product-compare-at-price"))||0),compareAt>0&&(key&&(window.__r2bCompareAtByKey[key]=compareAt),variantId&&(window.__r2bCompareAtByVariant[String(variantId)]=compareAt))})}function getCompareAtSavings(cartData){if(!cartData||!Array.isArray(cartData.items))return 0;let savings=0;
1return cartData.items.forEach(function(item){const compareAt=getLineCompareAtPrice(item),originalPrice=Number(item.original_price)||0,quantity=Number(item.quantity)||0;compareAt>originalPrice&&quantity>0&&(savings+=(compareAt-originalPrice)*quantity)}),savings}function getCartDiscountAmount(cartData){if(!cartData)return 0;let discount=Number(cartData.total_discount)||0;return!discount&&cartData.original_total_price>cartData.total_price&&(discount=cartData.original_total_price-cartData.total_price),discount+getCompareAtSavings(cartData)}function syncCartSummariesFromCart(cartData,scope){if(!cartData)return;scope=scope||"all";const syncPage=scope==="all"||scope==="page",syncDrawer=scope==="all"||scope==="drawer";syncHeaderFromCart(cartData);const count=cartData.item_count,total=cartData.total_price,discount=getCartDiscountAmount(cartData),displayOriginal=typeof total<"u"?Number(total)+discount:0;if(syncDrawer&&$("[data-cart-drawer-count]").text(count),syncPage&&$("[data-cart-page-count]").text(count),typeof total<"u"){const totalHtml=formatCartMoney(total);syncDrawer&&$("[data-cart-drawer-total]").text(totalHtml),syncPage&&$("[data-cart-page-total]").text(totalHtml)}const $drawerOriginal=$("[data-cart-drawer-original-total]"),$pageOriginal=$("[data-cart-page-original-total]");if(displayOriginal>total){const originalHtml=formatCartMoney(displayOriginal);syncDrawer&&$drawerOriginal.length&&$drawerOriginal.text(originalHtml).removeAttr("hidden"),syncPage&&$pageOriginal.length&&$pageOriginal.text(originalHtml).removeAttr("hidden")}else syncDrawer&&$drawerOriginal.attr("hidden",!0),syncPage&&$pageOriginal.attr("hidden",!0);if(syncDrawer){const $drawerDiscount=$("[data-cart-drawer-discount]"),$drawerDiscountRow=$("[data-cart-drawer-discount-row]");$drawerDiscount.length&&(discount>0?($drawerDiscount.text(formatCartMoney(discount)),$drawerDiscountRow.removeAttr("hidden")):$drawerDiscountRow.attr("hidden",!0))}if(syncPage){const $pageDiscount=$("[data-cart-page-discount]");$pageDiscount.length&&(discount>0?($pageDiscount.text(formatCartMoney(discount)),$("[data-cart-page-discount-row]").removeAttr("hidden")):$("[data-cart-page-discount-row]").attr("hidden",!0))}}function openCartDrawerRemoveModal(lineKey,title,imageUrl,lineNumber,productUrl){const $modal=$("#CartDrawerRemoveModal");if(!$modal.length||!lineKey&&!lineNumber)return;pendingRemoveLineKey=lineKey||null,pendingRemoveLine=lineNumber||null,$modal.find("[data-remove-modal-title]").text(title||"");const $img=$modal.find("[data-remove-modal-image]");imageUrl?$img.attr("src",imageUrl).attr("alt",title||"").show():$img.attr("src","").attr("alt","").hide();const href=productUrl||"#";$modal.find("[data-remove-modal-product-link]").each(function(){const $link=$(this);productUrl?$link.attr("href",href).removeAttr("aria-disabled").removeClass("is-disabled"):$link.attr("href","#").attr("aria-disabled","true").addClass("is-disabled")}),$modal.addClass("active").attr("aria-hidden","false"),$("html").addClass("cart-drawer-remove-modal-active")}function closeCartDrawerRemoveModal(){const $modal=$("#CartDrawerRemoveModal");pendingRemoveLineKey=null,pendingRemoveLine=null,$modal.length&&($modal.removeClass("active").attr("aria-hidden","true"),$("html").removeClass("cart-drawer-remove-modal-active"))}function bindCartDrawerEvents(){const $drawer=$("#CartDrawer");if(!$drawer.length)return;bindCartDrawerSwipe($drawer),$drawer.off("click.cartDrawerClose","[data-cart-drawer-close]").on("click.cartDrawerClose","[data-cart-drawer-close]",function(e){const el=this,href=el.tagName==="A"?(el.getAttribute("href")||"").trim():"";href.length>0&&href!=="#"&&el.getAttribute("aria-disabled")!=="true"||e.preventDefault(),closeCartDrawer()}),$(window).off("resize.cartDrawerScroll").on("resize.cartDrawerScroll",function(){$("#CartDrawer").hasClass("active")&&updateCartDrawerScrollClass()}),$drawer.off("scroll.cartDrawerBody","[data-cart-drawer-body]").on("scroll.cartDrawerBody","[data-cart-drawer-body]",function(){updateCartDrawerScrollClass()}),$drawer.off("click.cartDrawerQty","[data-cart-drawer-qty]").on("click.cartDrawerQty","[data-cart-drawer-qty]",function(e){e.preventDefault();const $btn=$(this),lineKey=$btn.attr("data-line-key"),$item=$btn.closest(".cart-drawer__item"),line=$item.attr("data-line"),quantity=parseInt($btn.attr("data-quantity"),10);if(!lineKey&&!line||$item.attr("data-bogo-role")==="free")return;if($btn.attr("data-qty-action")==="minus"&&(isNaN(quantity)||quantity<1)){const title=$.trim($item.find(".cart-drawer__item-title").text()),imageUrl=$item.find(".cart-drawer__item-image img").attr("src")||$item.find(".cart-drawer__item-image img").attr("data-src")||"",productUrl=$item.find(".cart-drawer__item-title").attr("href")||$item.find(".cart-drawer__item-image").attr("href")||"";openCartDrawerRemoveModal(lineKey,title,imageUrl,line,productUrl);return}if(isNaN(quantity)||quantity<1)return;const companion=getBogoFreeCompanionState(lineKey,line);let maxQty=parseInt($item.attr("data-max-qty"),10)||99;if(companion&&(maxQty=Math.min(maxQty,companion.maxQty)),$btn.attr("data-qty-action")==="plus"&&quantity>maxQty)return;const nextQty=Math.min(quantity,maxQty),prevQty=parseInt($item.find(".cart-drawer__qty-input").val(),10)||1;applyOptimisticLineQuantity($item,nextQty,"drawer"),applyOptimisticLineQuantity(findCartPageItem(lineKey,line),nextQty,"page");let countDelta=nextQty-prevQty;companion&&(countDelta+=nextQty-companion.quantity,applyBogoFreeCompanionQuantity(companion,nextQty)),bumpCartItemCount(countDelta),enqueueCartLineUpdate(lineKey,line,nextQty)}),$drawer.off("click.cartDrawerRemove","[data-cart-drawer-remove]").on("click.cartDrawerRemove","[data-cart-drawer-remove]",function(e){e.preventDefault();const $btn=$(this),lineKey=$btn.attr("data-line-key"),$item=$btn.closest(".cart-drawer__item"),line=$item.attr("data-line");if(!lineKey&&!line)return;const title=$.trim($item.find(".cart-drawer__item-title").text()),imageUrl=$item.find(".cart-drawer__item-image img").attr("src")||$item.find(".cart-drawer__item-image img").attr("data-src")||"",productUrl=$item.find(".cart-drawer__item-title").attr("href")||$item.find(".cart-drawer__item-image").attr("href")||"";openCartDrawerRemoveModal(lineKey,title,imageUrl,line,productUrl)});const $modal=$("#CartDrawerRemoveModal");$modal.length&&($modal.off("click.removeModalClose","[data-remove-modal-close]").on("click.removeModalClose","[data-remove-modal-close]",function(e){e.preventDefault(),closeCartDrawerRemoveModal()}),$modal.off("click.removeModalConfirm","[data-remove-modal-confirm]").on("click.removeModalConfirm","[data-remove-modal-confirm]",function(e){e.preventDefault();const lineKey=pendingRemoveLineKey,line=pendingRemoveLine;closeCartDrawerRemoveModal(),!(!lineKey&&!line)&&removeLineWithBogoCompanion(lineKey,line)}))}function enqueueCartLineUpdate(lineKey,lineNumber,quantity){const queueId=getCartLineQueueId(lineKey,lineNumber);cartLineUpdateQueues[queueId]||(cartLineUpdateQueues[queueId]={pending:null,running:!1,requestSeq:0}),cartLineUpdateQueues[queueId].pending={lineKey,lineNumber,quantity},drainCartLineQueue(queueId)}async function drainCartLineQueue(queueId){const queue=cartLineUpdateQueues[queueId];if(!(!queue||queue.running)){queue.running=!0;try{for(;queue.pending;){const job=queue.pending;queue.pending=null,queue.requestSeq+=1;const seq=queue.requestSeq;await performCartLineUpdate(job.lineKey,job.quantity,job.lineNumber,queueId,seq)}}finally{queue.running=!1,queue.pending&&drainCartLineQueue(queueId)}}}async function performCartLineUpdate(lineKey,quantity,lineNumber,queueId,seq){const queue=cartLineUpdateQueues[queueId],gen=cartMutationGeneration;let targetQty=parseInt(quantity,10);if(targetQty!==0){const liveQty=getOptimisticQuantity(lineKey,lineNumber);
1liveQty!==null&&(targetQty=liveQty)}if(!(queue&&queue.pending)&&!(queue&&typeof seq=="number"&&seq!==queue.requestSeq))try{const bogoRole=(findCartLineItemEl(lineKey,lineNumber).attr("data-bogo-role")||"").trim(),companion=targetQty>0&&bogoRole==="paid"?findBogoFreeCompanion(lineKey,lineNumber):null;let cartData;if(targetQty>0&&bogoRole==="paid"&&lineKey){if(companion&&companion.lineKey){const freeQueueId=getCartLineQueueId(companion.lineKey,companion.lineNumber);cartLineUpdateQueues[freeQueueId]&&(cartLineUpdateQueues[freeQueueId].pending=null,cartLineUpdateQueues[freeQueueId].requestSeq+=1)}cartData=await updateBogoPairQuantities(String(lineKey),companion&&companion.lineKey?String(companion.lineKey):null,targetQty)}else{const liveLine=targetQty===0?null:resolveCartLineNumber(lineKey,lineNumber);cartData=await changeCartLineQuantity({lineKey,line:liveLine||lineNumber,quantity:targetQty,preferKey:targetQty===0||!!bogoRole}),bogoRole&&(cartData=await normalizeBogoCart(cartData))}if(queue&&queue.pending||queue&&typeof seq=="number"&&seq!==queue.requestSeq||gen!==cartMutationGeneration||!cartData)return;const drawerOpen=$("#CartDrawer").hasClass("active");if(syncCartSummariesFromCart(cartData,drawerOpen?"page":"all"),targetQty>0)if(cartDomLineCountMismatch(cartData))($(".main_cart-section").length||$("[data-cart-page]").length)&&await refreshCartPage(),await softRefreshCartDrawer(drawerOpen,{preserveItems:!1}),cacheCompareAtFromDom();else{reconcileLinesFromCart(cartData),cacheCompareAtFromDom();try{await refreshCartSummariesFromLiquid()}catch(refreshError){console.warn("Cart summary liquid refresh:",refreshError),drawerOpen&&syncCartSummariesFromCart(cartData,"drawer")}}else($(".main_cart-section").length||$("[data-cart-page]").length)&&await refreshCartPage(),await softRefreshCartDrawer(drawerOpen,{preserveItems:!1}),cacheCompareAtFromDom()}catch(error2){if(console.error("Cart line update:",error2),queue&&queue.pending||queue&&typeof seq=="number"&&seq!==queue.requestSeq||gen!==cartMutationGeneration)return;$(".main_cart-section").length&&await refreshCartPage(),await softRefreshCartDrawer($("#CartDrawer").hasClass("active")),cacheCompareAtFromDom()}}async function updateCartDrawerLine(lineKey,quantity,lineNumber){quantity===0?applyOptimisticLineRemove(lineKey,lineNumber):(applyOptimisticLineQuantity(findCartDrawerItem(lineKey,lineNumber),quantity,"drawer"),applyOptimisticLineQuantity(findCartPageItem(lineKey,lineNumber),quantity,"page")),enqueueCartLineUpdate(lineKey,lineNumber,quantity)}function getBogoPropertiesFromCartItemEl($item){if(!$item||!$item.length)return{};const role=($item.attr("data-bogo-role")||"").trim();if(!role)return{};const properties={_bogo_role:role,_bogo_pair:role==="free"?"2":"1",_bogo_bundle:"1-plus-1"},group=($item.attr("data-bogo-group")||"").trim();return group&&(properties._bogo_group=group),properties}function hasCartLineProperties(properties){return!!(properties&&Object.keys(properties).length)}async function changeCartPageVariant(lineKey,line,newVariantId,quantity){const variantId=parseInt(newVariantId,10)||newVariantId;let properties={},paidCompanion=null;try{const cartData=await getAjax("/cart.js","GET","json"),items=cartData&&cartData.items||[],current=items.find(function(item){return String(item.key)===String(lineKey)})||(line?items[parseInt(line,10)-1]:null);if(current){properties=current.properties||{};const role=properties._bogo_role,group=properties._bogo_group;role==="free"&&(paidCompanion=items.find(function(item){if(String(item.key)===String(current.key))return!1;const itemProps=item.properties||{};return itemProps._bogo_role!=="paid"?!1:group?itemProps._bogo_group===group:!0})||null)}}catch{}if(hasCartLineProperties(properties)||(properties=getBogoPropertiesFromCartItemEl(findCartPageItem(lineKey,line))),!paidCompanion&&properties._bogo_role==="free"){const group=properties._bogo_group||"",$paid=$(".r2b-cart__item").filter(function(){return $(this).attr("data-bogo-role")!=="paid"?!1:group?($(this).attr("data-bogo-group")||"")===group:!0}).first();$paid.length&&(paidCompanion={key:$paid.attr("data-line-key"),variant_id:$paid.attr("data-variant-id"),quantity:parseInt($paid.attr("data-quantity"),10)||parseInt($paid.find(".r2b-cart__qty-input").val(),10)||1,properties:getBogoPropertiesFromCartItemEl($paid)})}if(await changeCartLineQuantity({lineKey,line,quantity:0,preferKey:!!lineKey}),paidCompanion&&(paidCompanion.key||paidCompanion.variant_id)){await changeCartLineQuantity({lineKey:paidCompanion.key,quantity:0,preferKey:!!paidCompanion.key}),await postAjaxJson("/cart/add.js",{items:[{id:variantId,quantity,properties},{id:parseInt(paidCompanion.variant_id,10)||paidCompanion.variant_id,quantity:paidCompanion.quantity||1,properties:paidCompanion.properties||{}}]});return}const payload={id:variantId,quantity};hasCartLineProperties(properties)&&(payload.properties=properties),await postAjaxJson("/cart/add.js",payload)}function getCartItemProperties(item){return item&&item.properties||{}}function collectBogoGroupKeys(cartData,group,extraKeys){const updates={};
1return(extraKeys||[]).forEach(function(key){key&&(updates[String(key)]=0)}),cartData&&Array.isArray(cartData.items)&&group&&cartData.items.forEach(function(item){const props=getCartItemProperties(item);String(props._bogo_group||"")===String(group)&&item.key&&(updates[String(item.key)]=0)}),updates}function findCartBogoItem(cartData,role,group,fallbackKey){const items=cartData&&cartData.items||[];if(fallbackKey){const byKey=items.find(function(item){return String(item.key)!==String(fallbackKey)?!1:role?getCartItemProperties(item)._bogo_role===role:!0});if(byKey)return byKey}return group&&items.find(function(item){const props=getCartItemProperties(item);return props._bogo_role===role&&String(props._bogo_group||"")===String(group)})||null}function cartDomLineCountMismatch(cartData){if(!cartData||!Array.isArray(cartData.items))return!1;const apiLines=cartData.items.length,drawerLines=$(".cart-drawer__items .cart-drawer__item").length,pageLines=$(".r2b-cart__items .r2b-cart__item").length;return drawerLines>0&&drawerLines!==apiLines||pageLines>0&&pageLines!==apiLines}async function normalizeBogoCart(cartData,pass){if(!cartData||!Array.isArray(cartData.items))return cartData;const groups={},orphanFree=[];cartData.items.forEach(function(item){const props=getCartItemProperties(item),role=props._bogo_role,group=props._bogo_group;if(!(role!=="paid"&&role!=="free")){if(!group){role==="free"&&orphanFree.push(item);return}groups[group]||(groups[group]={paid:[],free:[]}),groups[group][role].push(item)}});const jobs=[];if(orphanFree.forEach(function(item){item.key&&jobs.push({key:item.key,quantity:0})}),Object.keys(groups).forEach(function(groupId){const paidLines=groups[groupId].paid||[],freeLines=groups[groupId].free||[];if(!paidLines.length){freeLines.forEach(function(item){item.key&&jobs.push({key:item.key,quantity:0})});return}paidLines.slice(1).forEach(function(item){item.key&&jobs.push({key:item.key,quantity:0})});const targetQty=parseInt(paidLines[0].quantity,10)||0;if(!freeLines.length)return;const keepFree=freeLines.find(function(item){return(parseInt(item.quantity,10)||0)===targetQty})||freeLines[0];(parseInt(keepFree.quantity,10)||0)!==targetQty&&jobs.push({key:keepFree.key,quantity:targetQty}),freeLines.forEach(function(item){item.key&&String(item.key)!==String(keepFree.key)&&jobs.push({key:item.key,quantity:0})})}),!jobs.length)return cartData;const gen=cartMutationGeneration;let latest=cartData;for(let i=0;i<jobs.length;i++){if(gen!==cartMutationGeneration)return latest;latest=await changeCartLineQuantity({lineKey:jobs[i].key,quantity:jobs[i].quantity,preferKey:!0})}return(pass||0)>=1||gen!==cartMutationGeneration?latest:await normalizeBogoCart(latest,1)}async function updateBogoPairQuantities(paidKey,freeKey,quantity){const qty=parseInt(quantity,10);if(!paidKey||isNaN(qty)||qty<1)throw new Error("Missing BOGO cart line keys");const gen=cartMutationGeneration,group=(findCartLineItemEl(paidKey,null).attr("data-bogo-group")||"").trim();let cartData=await changeCartLineQuantity({lineKey:String(paidKey),quantity:qty,preferKey:!0});if(gen!==cartMutationGeneration)return cartData;const freeItem=findCartBogoItem(cartData,"free",group,freeKey?String(freeKey):null);return freeItem&&freeItem.key&&String(freeItem.key)!==String(paidKey)&&(parseInt(freeItem.quantity,10)||0)!==qty&&(cartData=await changeCartLineQuantity({lineKey:String(freeItem.key),quantity:qty,preferKey:!0}),gen!==cartMutationGeneration)?cartData:await normalizeBogoCart(cartData)}async function changeCartLineQuantity({lineKey,line,quantity,preferKey}){return runCartApi(async function(){const payload={quantity:parseInt(quantity,10)};if(preferKey&&lineKey)payload.id=lineKey;else if(line)payload.line=parseInt(line,10);else if(lineKey)payload.id=lineKey;else throw new Error("Missing cart line identifier");return await postAjaxJson("/cart/change.js",payload)})}async function syncHeaderCartCount(){try{const cartData=await getAjax("/cart.js","GET","json");return syncHeaderFromCart(cartData),cartData}catch{return null}}function syncCartPageSummaryInPlace($liveSummary,$newSummary){if(!$liveSummary||!$liveSummary.length||!$newSummary||!$newSummary.length)return!1;["data-cart-page-count","data-cart-page-discount","data-cart-page-original-total","data-cart-page-total"].forEach(function(attr){const $src=$newSummary.find("["+attr+"]").first(),$dest=$liveSummary.find("["+attr+"]").first();!$src.length||!$dest.length||($dest.html($src.html()),$src.is("[hidden]")?$dest.attr("hidden",!0):$dest.removeAttr("hidden"))});const $srcDiscountRow=$newSummary.find("[data-cart-page-discount-row]").first(),$destDiscountRow=$liveSummary.find("[data-cart-page-discount-row]").first();return $srcDiscountRow.length&&$destDiscountRow.length&&($srcDiscountRow.is("[hidden]")?$destDiscountRow.attr("hidden",!0):$destDiscountRow.removeAttr("hidden")),!0}async function refreshCartPageSummary(){if(!$(".main_cart-section").length&&!$("[data-cart-page]").length||!$("[data-cart-summary]").length)return!1;try{const root=getSectionsRootUrl(),sectionData=await getAjax(root+"cart?sections=cart&_="+Date.now(),"GET","json"),sectionHtml=sectionData&&sectionData.cart;if(!sectionHtml)return!1;const $newSummary=$("<div>").append($.parseHTML(sectionHtml,document,!0)).find("[data-cart-summary]").first(),$liveSummary=$("[data-cart-summary]").first();if(!$newSummary.length||!$liveSummary.length)return!1;if(!syncCartPageSummaryInPlace($liveSummary,$newSummary)){const wasSticky=$liveSummary.hasClass("is-sticky");$liveSummary.replaceWith($newSummary),wasSticky&&$("[data-cart-summary]").addClass("is-sticky")}return cacheCompareAtFromDom($(".main_cart-section")),bindCartPageEvents(),!0}catch(error2){return console.warn("Cart page summary refresh failed:",error2),!1}}async function refreshCartSummariesFromLiquid(){try{$("#CartDrawer").hasClass("active")&&await softRefreshCartDrawer(!0,{preserveItems:!0})}catch(drawerError){console.warn("Cart drawer summary refresh:",drawerError)}try{($(".main_cart-section").length||$("[data-cart-page]").length)&&await refreshCartPageSummary()}catch(pageError){console.warn("Cart page summary refresh:",pageError)}cacheCompareAtFromDom()}async function refreshCartPage(){if(!$(".main_cart-section").length)return!1;try{let replaced=!1;const root=getSectionsRootUrl();try{const sectionData=await getAjax(root+"cart?sections=cart&_="+Date.now(),"GET","json"),sectionHtml=sectionData&&sectionData.cart;if(sectionHtml){const $parsed=$("<div>").append($.parseHTML(sectionHtml,document,!0)),$newSection=$parsed.find("#shopify-section-cart").addBack("#shopify-section-cart").first();if($newSection.length)$(".main_cart-section").html($newSection.html()),replaced=!0;else{const $byClass=$parsed.find(".main_cart-section").first();$byClass.length&&($(".main_cart-section").html($byClass.html()),replaced=!0)}}}catch(sectionError){console.warn("Cart section refresh failed, trying HTML fallback",sectionError)}if(!replaced){const cartUrl=window.location.pathname.indexOf("/cart")!==-1?window.location.pathname+(window.location.search?window.location.search+"&":"?")+"_="+Date.now():root+"cart?_="+Date.now(),response=await getAjax(cartUrl,"GET","html"),$response=$("<div>").append($.parseHTML(response,document,!0)),$src=$response.find(".main_cart-section").first();if($src.length)$(".main_cart-section").html($src.html()),replaced=!0;else{const $cart=$response.find("[data-cart-page]").first();if($cart.length){const $live=$("[data-cart-page]");$live.length&&($live.replaceWith($cart),replaced=!0)}}}return await syncHeaderCartCount(),bindCartPageEvents(),replaced}catch(error2){return console.error("Cart page refresh:",error2),!1}}
1function bindCartPageEvents(){$(document).off("click.continueShopping","[data-continue-shopping]").on("click.continueShopping","[data-continue-shopping]",function(e){const fallbackHref=this.getAttribute("href")||"/",referrer=document.referrer;if(!(!referrer||window.history.length<=1))try{const refUrl=new URL(referrer);if(refUrl.origin!==window.location.origin)return;const refPath=refUrl.pathname.replace(/\/$/,"")||"/",cartPath=(window.routes&&window.routes.cart_url?window.routes.cart_url:"/cart").replace(/\/$/,"");if(refPath===cartPath||refPath.indexOf("/checkouts")===0)return;e.preventDefault(),e.stopPropagation(),markCloseCartDrawerAfterContinueShopping(),window.history.back()}catch{this.getAttribute("href")||(window.location.href=fallbackHref)}}),$(document).off("click.cartPageQty","[data-cart-page-qty]").on("click.cartPageQty","[data-cart-page-qty]",function(e){e.preventDefault(),e.stopPropagation();const $btn=$(this),lineKey=$btn.attr("data-line-key"),$item=$btn.closest(".r2b-cart__item"),line=$btn.attr("data-line")||$item.attr("data-line"),$input=$item.find(".r2b-cart__qty-input");let qty=parseInt($input.val(),10);if(isNaN(qty)&&(qty=1),$item.attr("data-bogo-role")==="free")return;if($btn.attr("data-qty-action")==="plus"){const companion2=getBogoFreeCompanionState(lineKey,line);let maxQty=parseInt($item.attr("data-max-qty"),10)||99;if(companion2&&(maxQty=Math.min(maxQty,companion2.maxQty)),qty>=maxQty)return;qty+=1}else{if(qty<=1){const title=$.trim($item.find(".r2b-cart__item-title").text()),imageUrl=$item.find(".r2b-cart__item-image img").attr("src")||"",productUrl=$item.find(".r2b-cart__item-title").attr("href")||$item.find(".r2b-cart__item-image").attr("href")||"";openCartDrawerRemoveModal(lineKey,title,imageUrl,line,productUrl);return}qty-=1}if(!lineKey&&!line)return;const prevQty=parseInt($item.find(".r2b-cart__qty-input").val(),10)||1,companion=getBogoFreeCompanionState(lineKey,line);applyOptimisticLineQuantity($item,qty,"page"),applyOptimisticLineQuantity(findCartDrawerItem(lineKey,line),qty,"drawer");let countDelta=qty-prevQty;companion&&(countDelta+=qty-companion.quantity,applyBogoFreeCompanionQuantity(companion,qty)),bumpCartItemCount(countDelta),enqueueCartLineUpdate(lineKey,line,qty)}),$(document).off("click.cartPageRemove","[data-cart-page-remove]").on("click.cartPageRemove","[data-cart-page-remove]",function(e){e.preventDefault(),e.stopPropagation();const $btn=$(this),lineKey=$btn.attr("data-line-key"),$item=$btn.closest(".r2b-cart__item"),line=$btn.attr("data-line")||$item.attr("data-line");if(!lineKey&&!line)return;const title=$.trim($item.find(".r2b-cart__item-title").text()),imageUrl=$item.find(".r2b-cart__item-image img").attr("src")||"",productUrl=$item.find(".r2b-cart__item-title").attr("href")||$item.find(".r2b-cart__item-image").attr("href")||"";openCartDrawerRemoveModal(lineKey,title,imageUrl,line,productUrl)}),$(document).off("click.cartVariantToggle","[data-cart-variant-toggle]").on("click.cartVariantToggle","[data-cart-variant-toggle]",function(e){e.preventDefault(),e.stopPropagation();const $dropdown=$(this).closest("[data-cart-variant-dropdown]"),isOpen=$dropdown.hasClass("is-open");$("[data-cart-variant-dropdown].is-open").each(function(){closeCartVariantDropdown($(this))}),isOpen||openCartVariantDropdown($dropdown)}),$(document).off("click.cartVariantOption","[data-cart-variant-option]").on("click.cartVariantOption","[data-cart-variant-option]",async function(e){e.preventDefault(),e.stopPropagation();const $option=$(this);if($option.is(":disabled")||$option.hasClass("is-selected")){closeCartVariantDropdown($option.closest("[data-cart-variant-dropdown]"));return}if(window.__r2bCartVariantBusy)return;window.__r2bCartVariantBusy=!0;const $dropdown=$option.closest("[data-cart-variant-dropdown]"),$item=$option.closest(".r2b-cart__item"),lineKey=$dropdown.attr("data-line-key"),line=$dropdown.attr("data-line")||$item.attr("data-line"),quantity=parseInt($dropdown.attr("data-quantity"),10)||1,newVariantId=$option.attr("data-variant-id"),label=$.trim($option.text());if(!lineKey&&!line||!newVariantId){window.__r2bCartVariantBusy=!1;return}$dropdown.find("[data-cart-variant-label]").text(label),closeCartVariantDropdown($dropdown);try{await changeCartPageVariant(lineKey,line,newVariantId,quantity),await refreshCartPage(),await layoutUpdate(!1)}catch(error2){console.error("Cart variant change:",error2),await refreshCartPage()}finally{window.__r2bCartVariantBusy=!1}}
1),$(document).off("click.cartVariantOutside").on("click.cartVariantOutside",function(e){$(e.target).closest("[data-cart-variant-dropdown]").length||$("[data-cart-variant-dropdown].is-open").each(function(){closeCartVariantDropdown($(this))})}),initCartSummarySticky()}function initCartSummarySticky(){window._cartSummaryStickyCleanup&&(window._cartSummaryStickyCleanup(),window._cartSummaryStickyCleanup=null);const summary=document.querySelector("[data-cart-summary]"),spacer=document.querySelector("[data-cart-summary-spacer]");if(!summary||!spacer)return;const mq=window.matchMedia("(max-width: 1024px)");let ticking=!1;function releaseSticky(){summary.classList.remove("is-sticky"),spacer.classList.remove("is-active"),spacer.style.height=""}function updateSticky(){if(!mq.matches){releaseSticky();return}const summaryHeight=summary.offsetHeight;if(!summaryHeight)return;const top=(summary.classList.contains("is-sticky")?spacer:summary).getBoundingClientRect().top,stickPoint=window.innerHeight-summaryHeight;top>stickPoint?(spacer.style.height=summaryHeight+"px",spacer.classList.add("is-active"),summary.classList.add("is-sticky")):releaseSticky()}function onScrollOrResize(){ticking||(ticking=!0,window.requestAnimationFrame(function(){updateSticky(),ticking=!1}))}window.addEventListener("scroll",onScrollOrResize,{passive:!0}),window.addEventListener("resize",onScrollOrResize),mq.addEventListener?mq.addEventListener("change",onScrollOrResize):mq.addListener&&mq.addListener(onScrollOrResize),updateSticky(),window._cartSummaryStickyCleanup=function(){window.removeEventListener("scroll",onScrollOrResize),window.removeEventListener("resize",onScrollOrResize),mq.removeEventListener?mq.removeEventListener("change",onScrollOrResize):mq.removeListener&&mq.removeListener(onScrollOrResize),releaseSticky()}}function openCartVariantDropdown($dropdown){!$dropdown||!$dropdown.length||($dropdown.addClass("is-open"),$dropdown.closest(".r2b-cart__item").addClass("is-variant-open"),$dropdown.find("[data-cart-variant-toggle]").attr("aria-expanded","true"),$dropdown.find(".r2b-cart__variant-menu").removeAttr("hidden"))}function closeCartVariantDropdown($dropdown){!$dropdown||!$dropdown.length||($dropdown.removeClass("is-open"),$dropdown.closest(".r2b-cart__item").removeClass("is-variant-open"),$dropdown.find("[data-cart-variant-toggle]").attr("aria-expanded","false"),$dropdown.find(".r2b-cart__variant-menu").attr("hidden","hidden"))}function getSectionsRootUrl(){const root=window.Shopify&&window.Shopify.routes&&window.Shopify.routes.root||"/";return root.endsWith("/")?root:root+"/"}function swapCartDrawerBodyPreservingPrices($liveBody,$newBody){if(!$liveBody.length||!$newBody.length)return;const preservedPrices={};$liveBody.find(".cart-drawer__item").each(function(){const $item=$(this);if($item.attr("data-bogo-role"))return;const key=$item.attr("data-line-key"),$prices=$item.find(".cart-drawer__item-prices").first();key&&$prices.length&&(preservedPrices[key]=$prices.clone(!1))}),$liveBody.html($newBody.html()),$liveBody.find(".cart-drawer__item").each(function(){const $item=$(this);if($item.attr("data-bogo-role"))return;const key=$item.attr("data-line-key"),$saved=key?preservedPrices[key]:null;if(!$saved||!$saved.length)return;const $slot=$item.find(".cart-drawer__item-prices").first();$slot.length&&$slot.replaceWith($saved)})}function setCartDrawerMoneyText($el,nextHtml){if(!$el||!$el.length)return;const next=String(nextHtml??"");$.trim($el.html())!==$.trim(next)&&$el.html(next)}function syncCartDrawerFooterInPlace($liveFooter,$newFooter){if(!$liveFooter||!$liveFooter.length||!$newFooter||!$newFooter.length)return!1;const liveEmpty=$liveFooter.hasClass("cart-drawer__footer--empty"),newEmpty=$newFooter.hasClass("cart-drawer__footer--empty"),liveHasSummary=$liveFooter.find(".cart-drawer__summary").length>0,newHasSummary=$newFooter.find(".cart-drawer__summary").length>0;if(liveEmpty!==newEmpty||liveHasSummary!==newHasSummary)return!1;$liveFooter.toggleClass("cart-drawer__footer--empty",$newFooter.hasClass("cart-drawer__footer--empty")),["data-cart-drawer-count","data-cart-drawer-discount","data-cart-drawer-original-total","data-cart-drawer-total","data-cart-drawer-subtotal"].forEach(function(attr){const $src=$newFooter.find("["+attr+"]").first(),$dest=$liveFooter.find("["+attr+"]").first();!$src.length||!$dest.length||(setCartDrawerMoneyText($dest,$src.html()),$src.is("[hidden]")?$dest.attr("hidden",!0):$dest.removeAttr("hidden"))});const $srcDiscountRow=$newFooter.find("[data-cart-drawer-discount-row]").first(),$destDiscountRow=$liveFooter.find("[data-cart-drawer-discount-row]").first();return $srcDiscountRow.length&&$destDiscountRow.length&&($srcDiscountRow.is("[hidden]")?$destDiscountRow.attr("hidden",!0):$destDiscountRow.removeAttr("hidden")),!0}async function softRefreshCartDrawer(forceOpen,options){options=options||{};const wasDrawerOpen=forceOpen||$("#CartDrawer").hasClass("active");try{const sectionData=await getAjax(getSectionsRootUrl()+"?sections=cart-drawer&_="+Date.now(),"GET","json"),sectionHtml=sectionData&&sectionData["cart-drawer"];if(!sectionHtml)return console.warn("Cart drawer section HTML missing"),!1;const $parsed=$("<div>").append($.parseHTML(sectionHtml,document,!0)),$newSection=$parsed.find("#shopify-section-cart-drawer").addBack("#shopify-section-cart-drawer").first(),$newDrawer=$parsed.find("#CartDrawer").first(),$liveDrawer=$("#CartDrawer");if($liveDrawer.length&&$newDrawer.length&&wasDrawerOpen){$liveDrawer.addClass("cart-drawer--no-transition");const $newBody=$newDrawer.find("[data-cart-drawer-body]").first(),$liveBody=$liveDrawer.find("[data-cart-drawer-body]").first();$newBody.length&&$liveBody.length&&!options.preserveItems?swapCartDrawerBodyPreservingPrices($liveBody,$newBody):options.preserveItems&&$newBody.length&&$liveBody.length&&!$liveBody.find(".cart-drawer__item").length&&$liveBody.html($newBody.html());const $newFooter=$newDrawer.find("[data-cart-drawer-footer]").first(),$liveFooter=$liveDrawer.find("[data-cart-drawer-footer]").first(),$panel=$liveDrawer.find(".cart-drawer__panel").first();return $newFooter.length?$liveFooter.length?syncCartDrawerFooterInPlace($liveFooter,$newFooter)||$liveFooter.replaceWith($newFooter):$panel.length&&$panel.append($newFooter):$liveFooter.length&&$liveFooter.remove(),$liveDrawer.addClass("active").attr("aria-hidden","false"),$("html").addClass("cart-drawer-active"),bindCartDrawerEvents(),window.requestAnimationFrame(function(){updateCartDrawerScrollClass(),setTimeout(function(){$liveDrawer.removeClass("cart-drawer--no-transition")},50)}),cacheCompareAtFromDom($liveDrawer),!0}if($("#shopify-section-cart-drawer").length&&$newSection.length)$("#shopify-section-cart-drawer").replaceWith($newSection);else if($("#CartDrawer").length&&$newDrawer.length)$("#CartDrawer").replaceWith($newDrawer);else if($newDrawer.length)$("body").append($newDrawer);else return!1;if(cacheCompareAtFromDom($("#CartDrawer")),wasDrawerOpen){const $drawer=$("#CartDrawer");$drawer.addClass("cart-drawer--no-transition active").attr("aria-hidden","false"),$("html").addClass("cart-drawer-active"),bindCartDrawerEvents(),window.requestAnimationFrame(function(){updateCartDrawerScrollClass(),setTimeout(function(){$drawer.removeClass("cart-drawer--no-transition")},50)})}else bindCartDrawerEvents();return!0}catch(error2){return console.error("Cart drawer refresh:",error2),!1}}async function refreshCartDrawer(forceOpen){return softRefreshCartDrawer(forceOpen,{preserveItems:!1})}async function showAfterAddToCart(options){const{itemImageUrl,itemTitle,itemQty,itemTotalPrice,cartQty,c
1artTotalPrice,cartTotalPriceWithoutFormatedPrice}=options;if(isCartDrawerMode()){loading(!1),openCartDrawer(),await layoutUpdate(!0),typeof cartQty<"u"&&(window.cart.quantity=cartQty),typeof cartTotalPriceWithoutFormatedPrice<"u"&&(window.cart.total_price=cartTotalPriceWithoutFormatedPrice),removeFromCartForm();return}await layoutUpdate(!1),$("#modal-addtocart .addtocart-product img").attr("src",itemImageUrl),$("#modal-addtocart .addtocart-product .product-title").text(itemTitle),$("#modal-addtocart .addtocart-product .addtocart-qty .count").text(itemQty),$("#modal-addtocart .product-cart-total .price-amt").text(itemTotalPrice),typeof cartQty<"u"&&$("#modal-addtocart .product-cart-price-total .modal-total-quantity").text(cartQty),cartTotalPrice&&$("#modal-addtocart .product-cart-price-total .price").text(cartTotalPrice),setTimeout(function(){typeof cartQty<"u"&&(window.cart.quantity=cartQty),typeof cartTotalPriceWithoutFormatedPrice<"u"&&(window.cart.total_price=cartTotalPriceWithoutFormatedPrice),removeFromCartForm(),loading(!1),$("#modal-addtocart").addClass("active"),$("html").addClass("modal-addtocart-active"),$("#modal-addtocart").hasClass("active")&&($(".modal-addtocart-header .close").off("click.modalAtc").on("click.modalAtc",function(){$("#modal-addtocart").removeClass("active"),$("html").removeClass("modal-addtocart-active")}),$("#modal-addtocart .modal-addtocart-overlay").off("click.modalAtc").on("click.modalAtc",function(){$("#modal-addtocart").removeClass("active"),$("html").removeClass("modal-addtocart-active")}))},1e3)}function handleResize(){const isTablet=$(window).innerWidth()<1201,isMobile=$(window).innerWidth()<769;if(isCartDrawerMode()?(cartPopupActive&&($(".header-cart .dropdown-toggle").off("click",cartPopup),cartPopupActive=!1,$(".header-cart .dropdown-menu").removeClass("open")),headerCartDrawerBound||($(document).off("click.headerCartDrawer",".header-cart .dropdown-toggle").on("click.headerCartDrawer",".header-cart .dropdown-toggle",openHeaderCartDrawer),headerCartDrawerBound=!0)):isTablet?(headerCartDrawerBound&&($(document).off("click.headerCartDrawer",".header-cart .dropdown-toggle"),headerCartDrawerBound=!1),cartPopupActive||($(".header-cart .dropdown-toggle").on("click",cartPopup),cartPopupActive=!0)):(headerCartDrawerBound&&($(document).off("click.headerCartDrawer",".header-cart .dropdown-toggle"),headerCartDrawerBound=!1),cartPopupActive&&($(".header-cart .dropdown-toggle").off("click",cartPopup),cartPopupActive=!1,$(".header-cart .dropdown-menu").removeClass("open"))),isTablet){menuDrawerActive||($(".header-middle-block .stackbar").on("click",menuDrawerPopup),menuDrawerActive=!0),toggleFooterActive||($(".rt-footer .toogle-section .tt-collapse-title").on("click",toggleFooterLinks),toggleFooterActive=!0);const $lastFooterTitle=$(".rt-footer .toogle-section .tt-collapse-title").last();$lastFooterTitle.length&&($lastFooterTitle.addClass("tt-open"),$lastFooterTitle.next(".tt-collapse-content").show())}else menuDrawerActive&&($(".header-middle-block .stackbar").off("click",menuDrawerPopup),menuDrawerActive=!1,$(".mobile_menu").removeClass("open"),updateMobileMenuSubOpenClass()),toggleFooterActive&&($(".rt-footer .toogle-section .tt-collapse-title").off("click",toggleFooterLinks),toggleFooterActive=!1,$(".rt-footer .toogle-section .tt-collapse-title").removeClass("tt-open"),$(".rt-footer .toogle-section .tt-collapse-content").show())}$(window).on("resize",handleResize),handleResize(),init();function init(){addToCartForm(),removeFromCartForm(),bindCartDrawerEvents(),bindCartPageEvents(),applyCloseCartDrawerAfterContinueShopping(),$(window).on("pageshow.cartDrawerContinue",function(){applyCloseCartDrawerAfterContinueShopping()}),$(document).on("keydown.cartDrawer",function(e){if(e.key==="Escape"){if($("#CartDrawerRemoveModal").hasClass("active")){closeCartDrawerRemoveModal();return}$("#CartDrawer").hasClass("active")&&closeCartDrawer()}})}function cartPopup(e){e.preventDefault(),$(".header-cart .dropdown-menu").toggleClass("open"),$(".header-cart .dropdown-menu").hasClass("open")&&$(".header-cart .dropdown-menu .close").on("click",function(e2){e2.preventDefault(),$(".header-cart .dropdown-menu").removeClass("open")})}function updateMobileMenuSubOpenClass(){const $menu=$("#menu");if(!$menu.length)return;const mobileOpen=$(".mobile_menu").hasClass("open"),hasActiveSub=$menu.find(".nav__sub.is-active, .grandchild.is-active, .nav__sub-child.is-active").length>0;
1mobileOpen&&hasActiveSub?$menu.addClass("sub-menu-open-active"):$menu.removeClass("sub-menu-open-active")}function menuDrawerPopup(e){e.preventDefault(),$(".mobile_menu").toggleClass("open"),$(".mobile_menu").hasClass("open")&&$(".mobile_menu .stackbarClose .close").on("click",function(e2){e2.preventDefault(),$("#menu .nav__sub, #menu .grandchild, #menu .nav__sub-child").removeClass("is-active"),$(".mobile_menu").removeClass("open"),$("html").removeClass("mobileMenuSubActive"),updateMobileMenuSubOpenClass()}),updateMobileMenuSubOpenClass()}function toggleFooterLinks(event){event.preventDefault();const target=$(event.target);target.next(".tt-collapse-content").slideToggle(),target.toggleClass("tt-open")}const navLinkSelector=".custom-header .menu>ul>li > a.header-main-nav-link",navItemSelector=".custom-header .menu>ul>li.has-sub-menu";$(document).on("mouseenter",navLinkSelector,function(){$(navLinkSelector).removeClass("nav-hover-active"),$(navItemSelector).removeClass("nav-panel-active"),$(this).addClass("nav-hover-active"),$(this).closest("li.has-sub-menu").addClass("nav-panel-active")}),$(document).on("mouseleave",".custom-header .menu>ul",function(){$(navItemSelector).removeClass("nav-panel-active"),$(navLinkSelector).removeClass("nav-hover-active"),$(navLinkSelector+".nav-current-active").addClass("nav-hover-active")}),$(".sub-menu-block.tab:not(.tab-click) ul.tabs li").length>0&&$(".sub-menu-block.tab:not(.tab-click) ul.tabs li").hover(function(){var tab_id=$(this).attr("data-tab");$(".sub-menu-block.tab:not(.tab-click) ul.tabs li").removeClass("current"),$(".sub-menu-block.tab:not(.tab-click) .tab-content").removeClass("current"),$(this).addClass("current"),$(".sub-menu-block.tab:not(.tab-click) #"+tab_id).addClass("current")}),$(".sub-menu-block.tab.tab-click ul.tabs li").length>0&&$(".sub-menu-block.tab.tab-click ul.tabs li").on("click",function(e){e.preventDefault();var tab_id=$(this).attr("data-tab");$(".sub-menu-block.tab.tab-click ul.tabs li").removeClass("current"),$(".sub-menu-block.tab.tab-click .tab-content").removeClass("current"),$(this).addClass("current"),$(".sub-menu-block.tab.tab-click #"+tab_id).addClass("current")}),$(".mobile_menu .sub-menu-block.tab ul.tabs li").length>0&&$(".mobile_menu .sub-menu-block.tab ul.tabs li").on("click",function(e){e.preventDefault();var $tabBlock=$(this).closest(".sub-menu-block.tab"),tab_id=$(this).attr("data-tab");$tabBlock.find("ul.tabs li").removeClass("current"),$tabBlock.find(".tab-content").removeClass("current"),$(this).addClass("current"),$tabBlock.find("#"+tab_id).addClass("current")}),$(".mobile_menu .combined-device-tabs .combined-device-tab-link").length>0&&$(".mobile_menu .combined-device-tabs .combined-device-tab-link").on("click",function(e){e.preventDefault();var $wrapper=$(this).closest(".combined-device-wrapper"),tab_id=$(this).attr("data-inner-tab");$wrapper.find(".combined-device-tab-link").removeClass("current"),$wrapper.find(".combined-device-content").removeClass("current"),$(this).addClass("current"),$wrapper.find("#"+tab_id).addClass("current")}),$(document).on("click",".sub__close",function(event){event.preventDefault(),$(this).closest("ul.nav__sub").removeClass("is-active"),$("#menu ul.nav__sub.is-active").length===0&&$("html").removeClass("mobileMenuSubActive"),updateMobileMenuSubOpenClass()}),$(document).on("click",".mobileMenuBack",function(event){event.preventDefault();const $activeSubMenu=$("#menu ul.nav__sub.is-active").last();$activeSubMenu.length&&$activeSubMenu.removeClass("is-active"),$("#menu ul.nav__sub.is-active").length===0&&$("html").removeClass("mobileMenuSubActive"),updateMobileMenuSubOpenClass()}),$(document).on("click",".mobile-mega-panel__close",function(e){e.preventDefault(),e.stopPropagation(),$("#menu .nav__sub, #menu .grandchild, #menu .nav__sub-child").removeClass("is-active"),$(".mobile_menu").removeClass("open"),$("html").removeClass("mobileMenuActive"),$("html").removeClass("mobileMenuSubActive"),updateMobileMenuSubOpenClass()}),$(document).on("click","#menu a",function(event){const subMenu=$(this).next(".nav__sub");subMenu&&subMenu.length&&(event.preventDefault(),subMenu.addClass("is-active"),$("html").addClass("mobileMenuSubActive"),updateMobileMenuSubOpenClass())}),$(".has-dropdown").on("click",function(){const submenu=$(this).find(".submenu");
1submenu.length&&submenu.toggle()});let desktop_menu=$(".desktop_menu"),stickyHeader=desktop_menu.offset().top;function handleScroll(){$(window).scrollTop()>=stickyHeader?desktop_menu.addClass("sticky"):desktop_menu.removeClass("sticky")}$(window).scroll(handleScroll);function resolveSelectedVariantId(formEl){try{if(!formEl)return null;const card=formEl.closest(".rt-product-card");if(card){const cardVarId=card.querySelector('.tt-options-swatch input[type="radio"]:checked')?.getAttribute("var_id");if(cardVarId)return cardVarId.toString()}const productMain=document.querySelector(".product-main");if(productMain&&window.productJson){const variants=JSON.parse(window.productJson),selectedValues=[],requiredOptionIdxs=new Set,mainSwatchInputs=Array.from(productMain.querySelectorAll('.tt-options-swatch input[type="radio"]')).filter(input=>!input.closest(".rt-product-card")&&!input.closest("[data-bogo-pair-options]")&&!input.hasAttribute("data-bogo-pair"));mainSwatchInputs.forEach(el=>{const optionIndex=el.getAttribute("optionIndex");if(!optionIndex)return;const idx=parseInt(optionIndex.replace("option",""),10)-1;!Number.isNaN(idx)&&idx>=0&&idx<3&&requiredOptionIdxs.add(idx)}),mainSwatchInputs.filter(input=>input.checked).forEach(input=>{const optionIndex=input.getAttribute("optionIndex"),value=(input.value||"").toString();if(value&&optionIndex){const idx=parseInt(optionIndex.replace("option",""),10)-1;!Number.isNaN(idx)&&idx>=0&&idx<3&&(selectedValues[idx]=value)}});for(const idx of requiredOptionIdxs)if(!selectedValues[idx])return null;const normalize=str=>(str||"").toString().trim().toLowerCase(),matchingVariant=variants.find(v=>!(selectedValues[0]&&normalize(v.option1)!==normalize(selectedValues[0])||selectedValues[1]&&normalize(v.option2)!==normalize(selectedValues[1])||selectedValues[2]&&normalize(v.option3)!==normalize(selectedValues[2])));if(matchingVariant?.id)return matchingVariant.id.toString()}const currentInputValue=formEl.querySelector('input[name="id"]')?.value;return currentInputValue?currentInputValue.toString():null}catch{const fallbackValue=formEl?.querySelector('input[name="id"]')?.value;return fallbackValue?fallbackValue.toString():null}}let addToCartInFlight=!1;function beginAddToCart($form){return addToCartInFlight||window.__r2bAddToCartBusy?!1:(addToCartInFlight=!0,window.__r2bAddToCartBusy=!0,$form&&$form.length&&($form.data("atc-busy",!0),$form.find('button[type="submit"], .sticky-atc-btn, .btn[type="submit"]').prop("disabled",!0).attr("aria-busy","true")),$(".sticky-atc-btn").prop("disabled",!0).attr("aria-busy","true"),!0)}function endAddToCart($form){addToCartInFlight=!1,window.__r2bAddToCartBusy=!1,$form&&$form.length&&($form.data("atc-busy",!1),$form.find('button[type="submit"], .btn[type="submit"]').prop("disabled",!1).removeAttr("aria-busy")),$(".sticky-atc-btn").prop("disabled",!1).removeAttr("aria-busy")}function getFormAddQuantity($form){const $qty=$form.find(".qty-value, .sticky-qty-value, [name='quantity']").first(),qty=parseInt($qty.val(),10);return isNaN(qty)||qty<1?1:qty}function addToCartForm(){$(document).off("submit.globalAtc",".add-to-cart-form").on("submit.globalAtc",".add-to-cart-form",async function(event){if(event.preventDefault(),event.stopPropagation(),$(this).closest(".product-recommendations").length>0)return;const $form=$(this);if((this.id==="product-form-atc"||this.id==="product-form-atc-ctm"||$form.closest(".product-main").length>0)&&Array.isArray(window.bundleSelectedProducts)&&window.bundleSelectedProducts.length>0&&typeof window.r2bSubmitWithBundle=="function"){event.stopImmediatePropagation();const triggerBtn=$form.find('button[type="submit"]').get(0)||document.querySelector("#originalAtcWrapper button[type='submit']");window.r2bSubmitWithBundle(this,triggerBtn);return}if(!($form.data("atc-busy")||!beginAddToCart($form)))try{if($form.hasClass("bogo-1-plus-1-form")||$form.find("[data-bogo-1-plus-1]").length>0){if(!window.R2BBogo||typeof window.R2BBogo.getCartItems!="function"){console.error("BOGO add-to-cart: R2BBogo is not ready");return}const bogoPayload=window.R2BBogo.getCartItems();if(!bogoPayload||!bogoPayload.items||!bogoPayload.items.length)return;isCartDrawerMode()||loading(!0);const response2=await postAjaxJson("/cart/add.js",bogoPayload),items=Array.isArray(response2.items)?response2.items:response2.id?[response2]:[],firstItem=items[0]||response2,itemImageUrl2=firstItem.featured_image&&firstItem.featured_image.url?firstItem.featured_image.url:"",itemTitle2=firstItem.title||"",itemQty2=bogoPayload.items.reduce(function(sum,item){return sum+(parseInt(item.quantity,10)||0)}
1,0),paidPrice=items.reduce(function(sum,item){return(item.properties&&(item.properties._bogo_role||item.properties._bogo_role))==="free"?sum:sum+(parseInt(item.price,10)||0)*(parseInt(item.quantity,10)||1)},0),itemTotalPrice2=getItemFormatedPrice(paidPrice),cartQty2=parseInt(window.cart.quantity,10)+itemQty2,cartTotalPriceWithoutFormatedPrice2=parseInt(window.cart.total_price,10)+paidPrice,cartTotalPrice2=getItemFormatedPrice(cartTotalPriceWithoutFormatedPrice2);await showAfterAddToCart({itemImageUrl:itemImageUrl2,itemTitle:itemTitle2,itemQty:itemQty2,itemTotalPrice:itemTotalPrice2,cartQty:cartQty2,cartTotalPrice:cartTotalPrice2,cartTotalPriceWithoutFormatedPrice:cartTotalPriceWithoutFormatedPrice2});return}const resolvedVariantId=resolveSelectedVariantId(this);resolvedVariantId&&$form.find('input[name="id"]').val(resolvedVariantId),isCartDrawerMode()||loading(!0);const addQty=getFormAddQuantity($form),response=await postAjax("/cart/add.js","POST","json",$form.serialize()),itemImageUrl=response.featured_image&&response.featured_image.url?response.featured_image.url:"",itemTitle=response.title,itemQty=addQty,itemTotalPrice=getItemFormatedPrice(response.price*itemQty),cartQty=parseInt(window.cart.quantity,10)+itemQty,cartTotalPriceWithoutFormatedPrice=parseInt(window.cart.total_price,10)+parseInt(response.price,10)*itemQty,cartTotalPrice=getItemFormatedPrice(cartTotalPriceWithoutFormatedPrice);await showAfterAddToCart({itemImageUrl,itemTitle,itemQty,itemTotalPrice,cartQty,cartTotalPrice,cartTotalPriceWithoutFormatedPrice})}catch(error2){console.error("Add to cart:",error2),loading(!1)}finally{endAddToCart($form)}}),onChangeQty()}async function postAjaxJson(url,data){return await $.ajax({type:"POST",url,data:JSON.stringify(data),contentType:"application/json",dataType:"json"})}function removeFromCartForm(){$(".header_delete_cartitem_js").click(async function(event){event.preventDefault();const href=$(this).attr("href"),urlParams=new URLSearchParams(href.split("?")[1]);var cartUpdates={};cartUpdates[urlParams.get("id")]=parseInt(urlParams.get("quantity"));try{const response=await postAjax("/cart/update.js","POST","json",{updates:cartUpdates});await layoutUpdate(),setTimeout(function(){removeFromCartForm()},1e3)}catch(error2){console.error("Error loading more content:",error2),loading(!1)}})}function onChangeQty(){$(".qty-wrapper .qty-btn").off("click.productQty").on("click.productQty",function(){const inputQty=$(this).parent().find("input.qty-input_box"),currentQty=parseInt(inputQty.val());$(this).hasClass("plus-btn")?inputQty.val(Math.max(currentQty+1,1)):inputQty.val(Math.max(currentQty-1,1))})}async function postAjax(url,method,dataType,data){const params={type:method,url,data,dataType,traditional:!0};return await $.ajax(params)}async function getAjax(url,method,dataType){const params={type:method,url,dataType,cache:!1};return await $.ajax(params)}async function layoutUpdate(forceOpenDrawer){try{await softRefreshCartDrawer(!!forceOpenDrawer);try{const cartData=await getAjax("/cart.js","GET","json");syncHeaderFromCart(cartData)}catch{}removeFromCartForm()}catch(error2){console.error("Error loading more content:",error2),loading(!1)}}async function cartlayoutUpdate(data){try{await postAjax("/cart/update.js","POST","json",data),await refreshCartPage(),await refreshCartDrawer($("#CartDrawer").hasClass("active"));try{const cartData=await getAjax("/cart.js","GET","json");window.cart.quantity=cartData.item_count,window.cart.total_price=cartData.items_subtotal_price,$(".header-cart .badge-cart").text(cartData.item_count)}catch{}bindCartPageEvents(),loading(!1)}catch(error2){console.error("Error loading more content:",error2),loading(!1)}}if($("body").hasClass("pagecollection")||$("body").hasClass("pagesearch")){let filterLoad2=function(){$(".pagecollection .filter-title").click(function(e){e.preventDefault(),$(this).toggleClass("active"),$(this).next(".filter-content").slideToggle()}),$(".filters-options .btn-toggle").click(function(){$("#filter-sidebar").addClass("filter-active"),$("html").addClass("filter--active")}),$(".filter-mobile-header").click(function(){$("#filter-sidebar").removeClass("filter-active"),$("html").removeClass("filter--active")})},updateItemView2=function(){const isMobile=$(window).innerWidth()<769,currentView=localStorage.getItem("item_view");isMobile?currentView!=="list"&&localStorage.setItem("item_view","list"):currentView!=="grid"&&localStorage.setItem("item_view","grid"),localStorage.getItem("item_view")=="list"&&listView2(),localStorage.getItem("item_view")=="grid"&&gridView2(),$(".collection-main__wrapper .quantity.view .col
1-one").click(function(e){e.preventDefault(),localStorage.getItem("item_view")=="grid"&&(loading(!0),setTimeout(function(){localStorage.setItem("item_view","list"),listView2()},1500))}),$(".collection-main__wrapper .quantity.view .col-three").click(function(e){e.preventDefault(),localStorage.getItem("item_view")=="list"&&(loading(!0),setTimeout(function(){localStorage.setItem("item_view","grid"),gridView2()},1500))})},gridView2=function(){$(".collection-main__wrapper .quantity.view .col-three").addClass("active"),$(".collection-main__wrapper .quantity.view .col-one").removeClass("active"),$(".products").removeClass("list").addClass("grid"),$(".products .col-item").removeClass("col-md-12").addClass("col-md-6"),$(".products .col-item").removeClass("col-12").addClass("col-6"),loading(!1)},listView2=function(){$(".collection-main__wrapper .quantity.view .col-one").addClass("active"),$(".collection-main__wrapper .quantity.view .col-three").removeClass("active"),$(".products").removeClass("grid").addClass("list"),$(".products .col-item").removeClass("col-md-6").addClass("col-md-12"),$(".products .col-item").removeClass("col-6").addClass("col-12"),loading(!1)},updateURLParameter2=function(url,newKey,newValue){let urlObj=new URL(url);return urlObj.searchParams.set(newKey,newValue),urlObj.toString()},onChangeVariantPLP2=function(){$(".tt-swatches-container").length>0&&$('.tt-options-swatch input[type="radio"]').off("change.plpVariant").on("change.plpVariant",function(){let var_id=$(this).attr("var_id");$(this).closest(".rt-product-card__details").find('.add-to-cart-form [name="id"]').val(var_id),typeof Globo<"u"&&typeof Globo?.Preorder<"u"&&($(this).closest(".card-bottom-desc")?.find("form.gridProductPreOrderForm.preorderLoaded")?.removeClass("preorderLoaded"),Globo?.Preorder?.initCollection())})},removeFilter2=function(){$(".facets-form .selected-all .selected-filter").length>1?$(".facets-form .selected-all .selected-filter.clear_all").show():$(".facets-form .selected-all .selected-filter.clear_all").hide(),$(".facets-form .selected-filter a").click(async function(e){e.preventDefault();const linkUrl=window.location.origin+$(this).attr("href");try{loading(!0);let productRes=await getAjax(linkUrl,"GET","html"),gridUpdate=$(productRes).find(".products").html();$(".products").html(gridUpdate);let facetsForm=$(productRes).find(".facets-form").html();$(".facets-form").html(facetsForm),history.replaceState(null,null,linkUrl),updateItemView2(),addToCartForm(),filterLoad2(),removeFilter2(),onChangeVariantPLP2(),loading(!1)}catch{console.error("Error loading more content:",error),loading(!1)}})};var filterLoad=filterLoad2,updateItemView=updateItemView2,gridView=gridView2,listView=listView2,updateURLParameter=updateURLParameter2,onChangeVariantPLP=onChangeVariantPLP2,removeFilter=removeFilter2;filterLoad2(),updateItemView2(),$("select.sort-position").on("change",async function(event){loading(!0);let selectedValue=$(this).val(),newUrl=updateURLParameter2(window.location.href,"sort_by",selectedValue);try{let productRes=await getAjax(newUrl,"GET","html"),gridUpdate=$(productRes).find(".products").html();$(".products").html(gridUpdate),updateItemView2(),addToCartForm(),onChangeVariantPLP2(),window.history.pushState({path:newUrl},"",newUrl),loading(!1)}catch(error2){console.error("Error loading more content:",error2),loading(!1)}}),onChangeVariantPLP2(),$(".collection-main__wrapper .rt-collection-products.infinite_scroll").length>0&&new Ajaxinate({container:"#Huratips-Loop",pagination:"#Huratips-Pagination"}),removeFilter2(),$(".facets-form").change(function(){$(this).submit()}),$(".facets-form").submit(async function(event){event.preventDefault();var formData=$(this).serialize(),newUrl=window.location.origin+window.location.pathname+"?"+formData;try{loading(!0);const productRes=await getAjax(newUrl,"GET","html");let gridUpdate=$(productRes).find(".products").html();$(".products").html(gridUpdate);let facetsForm=$(productRes).find(".facets-form").html();$(".facets-form").html(facetsForm),history.replaceState(null,null,newUrl),updateItemView2(),addToCartForm(),onChangeVariantPLP2(),filterLoad2(),removeFilter2(),loading(!1)}catch(error2){console.error("Error loading more content:",error2),loading(!1)}})}$("body").hasClass("pagecart")&&bindCartPageEvents();var isProductPage=$("body").hasClass("pageproduct")||$("body").hasClass("template--product")||($("body").attr("class")||"").indexOf("pageproduct")!==-1||document.querySelector(".product-main");if(isProductPage){let bindSwatchLabelClickFallback2=function(){$(document).off("
1click.r2bSwatchLabel",".tt-options-swatch .swatch-input__label, .variant-drawer-option-label").on("click.r2bSwatchLabel",".tt-options-swatch .swatch-input__label, .variant-drawer-option-label",function(e){if($(this).closest("[data-bogo-pair-options]").length>0)return;const input=this.previousElementSibling;if(!(!input||input.tagName!=="INPUT"||input.type!=="radio")){if(input.disabled){e.preventDefault();return}input.checked||(e.preventDefault(),input.checked=!0,input.setAttribute("checked","checked"),input.dispatchEvent(new Event("change",{bubbles:!0})))}})},syncCheckedAttributeForSwatches2=function(){$(document).off("change.r2bCheckedAttr",'.tt-options-swatch input[type="radio"]').on("change.r2bCheckedAttr",'.tt-options-swatch input[type="radio"]',function(){const changedInput=this;if(changedInput.closest("[data-bogo-pair-options]")||changedInput.hasAttribute("data-bogo-pair"))return;const card=changedInput.closest(".rt-product-card"),swatchRoot=changedInput.closest(".tt-swatches-container")||changedInput.closest(".product-main")||document,optionIndex=changedInput.getAttribute("optionIndex"),name=changedInput.getAttribute("name");let groupSelector=null;if(optionIndex?groupSelector=`.tt-options-swatch input[type="radio"][optionIndex="${optionIndex}"]`:name&&(groupSelector=`.tt-options-swatch input[type="radio"][name="${name.replace(/"/g,'\\"')}"]`),!groupSelector)return;(card||swatchRoot).querySelectorAll(groupSelector).forEach(radio=>{if(radio.closest("[data-bogo-pair-options]"))return;const label=radio.nextElementSibling&&radio.nextElementSibling.tagName==="LABEL"?radio.nextElementSibling:document.querySelector('label[for="'+radio.id+'"]');radio===changedInput&&radio.checked?(radio.setAttribute("checked","checked"),label&&(label.classList.add("variant-option-checked"),label.classList.contains("swatch-color-option")&&label.classList.add("swatch-checked"))):(radio.removeAttribute("checked"),label&&label.classList.remove("swatch-checked","variant-option-checked"))})})},isBogoPairControl2=function(el){return el?!!(el.closest&&(el.closest("[data-bogo-pair-options]")||el.hasAttribute("data-bogo-pair"))):!1},getMainPdpSwatchInputs2=function(productMainEl){return Array.from(productMainEl.querySelectorAll('.tt-options-swatch input[type="radio"]')).filter(input=>!input.closest(".rt-product-card")&&!isBogoPairControl2(input))},goToVariantMedia2=function(varId){try{if(!window.productJson||!varId)return;const variant=JSON.parse(window.productJson).find(v=>String(v.id)===String(varId));if(!variant)return;const mediaId=variant.featured_media&&variant.featured_media.id||variant.featured_image&&variant.featured_image.id;if(!mediaId)return;const $slider=$(".slider-for");if(!$slider.length||!$slider.hasClass("slick-initialized"))return;let targetIndex=-1;$slider.find(".slick-slide:not(.slick-cloned)").each(function(){const slideMediaId=this.getAttribute("data-media-id")||this.querySelector("[data-media-id]")&&this.querySelector("[data-media-id]").getAttribute("data-media-id");if(slideMediaId&&String(slideMediaId)===String(mediaId)){const slickIndex=$(this).data("slick-index");return targetIndex=typeof slickIndex=="number"?slickIndex:targetIndex,!1}}),targetIndex>=0&&$slider.slick("slickGoTo",targetIndex,!0)}catch(e){console.warn("Variant media sync skipped:",e)}},updatePdpPriceFromVariant2=function(varId){try{if(!window.productJson||!varId)return;const variant=JSON.parse(window.productJson).find(v=>String(v.id)===String(varId));if(!variant)return;const priceCurrent=document.querySelector("#product-price-current, .bundle-current-price, .product-price-current");if(priceCurrent&&typeof variant.price=="number"){const formatted=new Intl.NumberFormat("nl-NL",{style:"currency",currency:window.shop&&window.shop.currencyCode||"EUR"}).format(variant.price/100);priceCurrent.textContent=formatted,priceCurrent.setAttribute("data-current-price",String(variant.price))}const priceCompare=document.querySelector("#product-price-compare, .bundle-original-price, .product-price-compare");if(priceCompare)if(variant.compare_at_price&&variant.compare_at_price>variant.price){const formattedCompare=new Intl.NumberFormat("nl-NL",{style:"currency",currency:window.shop&&window.shop.currencyCode||"EUR"}).format(variant.compare_at_price/100);priceCompare.textContent=formattedCompare,priceCompare.style.display=""}else priceCompare.style.display="none"}catch(e){console.warn("Variant price sync skipped:",e)}}
1,applyPdpVariantChange2=function(varId){if(!varId)return!1;['.pdp-cart-form .add-to-cart-form [name="id"]','#product-form-atc [name="id"]','#product-form-atc-ctm [name="id"]','.product-main .pdp-cart-form form [name="id"]','#bottom-sticky-cta-section form [name="id"]'].forEach(selector=>{document.querySelectorAll(selector).forEach(input=>{input.value=String(varId),input.dispatchEvent(new Event("input",{bubbles:!0})),input.dispatchEvent(new Event("change",{bubbles:!0}))})});try{const urlObj=new URL(window.location.href);urlObj.searchParams.set("variant",String(varId)),window.history.replaceState({path:urlObj.toString()},"",urlObj.toString())}catch{}return goToVariantMedia2(varId),updatePdpPriceFromVariant2(varId),window.dispatchEvent(new CustomEvent("variant:change",{detail:{variantId:String(varId)}})),!0},onChangeVariant2=function(){const productMainEl=document.querySelector(".product-main");productMainEl&&$(productMainEl).off("change.pdpVariant").on("change.pdpVariant",'.tt-options-swatch input[type="radio"]',async function(){if($(this).closest(".rt-product-card").length>0||isBogoPairControl2(this))return;function isValidVariantId(id){return id&&id!=="undefined"&&id!=="null"&&(typeof id!="string"||id.trim()!=="")}const mainVariantInput=document.querySelector('.pdp-cart-form .add-to-cart-form [name="id"]');function getSelectedVariantIdFromOptions(){try{if(!window.productJson)return null;const variants=JSON.parse(window.productJson),selectedValues=[],requiredOptionIdxs=new Set,mainPdpSwatches=getMainPdpSwatchInputs2(productMainEl);mainPdpSwatches.forEach(el=>{const optionIndex=el.getAttribute("optionIndex");if(!optionIndex)return;const idx=parseInt(optionIndex.replace("option",""),10)-1;!Number.isNaN(idx)&&idx>=0&&idx<3&&requiredOptionIdxs.add(idx)}),mainPdpSwatches.filter(input=>input.checked).forEach(input=>{const optionIndex=input.getAttribute("optionIndex"),value=(input.value||"").toString();if(value){if(optionIndex){const idx=parseInt(optionIndex.replace("option",""),10)-1;if(!Number.isNaN(idx)&&idx>=0&&idx<3){selectedValues[idx]=value;return}}for(let i=0;i<3;i++)if(!selectedValues[i]){selectedValues[i]=value;break}}});for(const idx of requiredOptionIdxs)if(!selectedValues[idx])return null;const normalize=str=>(str||"").toString().trim().toLowerCase(),matchingVariant=variants.find(v=>!(selectedValues[0]&&normalize(v.option1)!==normalize(selectedValues[0])||selectedValues[1]&&normalize(v.option2)!==normalize(selectedValues[1])||selectedValues[2]&&normalize(v.option3)!==normalize(selectedValues[2])));return matchingVariant?matchingVariant.id.toString():null}catch{return null}}const optionGroupCount=new Set(getMainPdpSwatchInputs2(productMainEl).map(input=>input.getAttribute("optionIndex")).filter(Boolean)).size,clickedVarId=$(this).attr("var_id"),combinedVarId=getSelectedVariantIdFromOptions();let var_id=(optionGroupCount<=1?clickedVarId||combinedVarId:combinedVarId||clickedVarId)||document.querySelector('.pdp-cart-form .add-to-cart-form [name="id"]')?.value||document.querySelector('#product-form-atc [name="id"]')?.value||document.querySelector('#product-form-atc-ctm [name="id"]')?.value||document.querySelector('.product-main .pdp-cart-form form [name="id"]')?.value;if(!isValidVariantId(var_id)){mainVariantInput&&setTimeout(()=>{const finalVarId=mainVariantInput.value;isValidVariantId(finalVarId)&&applyPdpVariantChange2(finalVarId)},150);return}applyPdpVariantChange2(var_id)})},pdpTab2=function(){$(".pdp-tabs-title").click(function(){var $title=$(this),$tabBlock=$title.closest(".pdp-tab-block"),$content=$title.siblings(".pdp-tabs-content");$title.toggleClass("active"),$content.slideToggle(function(){var contentElement=$content[0];contentElement&&(contentElement.style.removeProperty("max-height"),contentElement.style.removeProperty("overflow")),$tabBlock.find(".see-more-btn").remove()})});function initVisibleTabsPartialOpen(){var $allTabs=$(".pdp-tab-block");if($allTabs.length!==0){var lastIndex=$allTabs.length-1;$allTabs.each(function(index){var $tabBlock=$(this),$content=$tabBlock.find(".pdp-tabs-content"),$title=$tabBlock.find(".pdp-tabs-title"),contentElement=$content[0];index===lastIndex&&index!==0?($title.addClass("active"),$content.show()):($title.removeClass("active"),$content.hide()),contentElement&&(contentElement.style.removeProperty("max-height"),contentElement.style.removeProperty("overflow")),$tabBlock.find(".see-more-btn").remove()})}}setTimeout(function(){initVisibleTabsPartialOpen()},100)},pdpImageSlider2=function(){if($("#aniimated-thumbnials").length){$("#aniimated-thumbnials").lightGallery({selector:"a",thumbnail:!0,subHtmlSelectorRelative:!1,getCaptionFromTitleOrAlt:!1,autoplay:!1,download:!1,zoom:!1,fullScreen:!1,share:!1,counter:!1,videojs:!1,youtubePlayerParams:{modestbranding:1,showinfo:0,rel:0,controls:1},vimeoPlayerParams:{byline:0,portrait:0,color:"A90707"}}),$("#aniimated-thumbnials").on("onAfterOpen.lg",function(){$(".lg-autoplay-button").remove()}),$(document).ready(function(){$(".media-video-featured").each(function(){var $wrapper=$(this),$video=$wrapper.find("video"),$button=$wrapper.find(".video-play-btn"),$preview=$wrapper.find(".media-preview-image");if(!(!$video.length||!$button.length)){var vid=$video[0],playIcon=$button.html(),pauseIcon=`
2          <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" fill="currentColor" viewBox="0 0 24 24">
3            <path d="M6 5h4v14H6zm8 0h4v14h-4z"/>
4          </svg>
5        `,isMobile=/iPhone|iPad|iPod|Android/i.test(navigator.userAgent);$button.on("click",function(event){event.preventDefault(),event.stopImmediatePropagation(),$("video").each(function(){this!==vid&&(this.pause(),this.currentTime=0)}),vid.paused?(isMobile||(vid.requestFullscreen?vid.requestFullscreen():vid.webkitRequestFullscreen?vid.webkitRequestFullscreen():vid.msRequestFullscreen&&vid.msRequestFullscreen()),vid.play()):vid.pause()}),$video.on("play",function(){$wrapper.addClass("played-video"),$preview.hide(),$button.html(pauseIcon)}),$video.on("pause ended",function(){$wrapper.removeClass("played-video"),$preview.show(),$button.html(playIcon)})}}),$(".product__main-carousel").on("beforeChange",function(){$("video").each(function(){this.pause(),this.currentTime=0})}),$(document).on("fullscreenchange webkitfullscreenchange msfullscreenchange",function(){!document.fullscreenElement&&!document.webkitFullscreenElement&&!document.msFullscreenElement&&$("video").each(function(){this.pause()})})});var $carousel=$(".slider-for");$carousel.slick({slidesToShow:1,slidesToScroll:1,arrows:!0,fade:!0,infinite:!1,asNavFor:".slider-nav",adaptiveHeight:!0,draggable:!0,swipe:!0,touchMove:!0,responsive:[{breakpoint:767,settings:{dots:!1,fade:!0,swipe:!0,touchMove:!0,draggable:!0}}]}),$(".slider-nav").slick({slidesToShow:6,slidesToScroll:1,asNavFor:".slider-for",dots:!1,infinite:!1,focusOnSelect:!0,draggable:!0,swipe:!0,touchMove:!0,responsive:[{breakpoint:1024,settings:{slidesToShow:4,slidesToScroll:1,draggable:!0,swipe:!0,touchMove:!0}},{breakpoint:600,settings:{slidesToShow:3,slidesToScroll:1,dots:!0,arrows:!1,draggable:!0,swipe:!0,touchMove:!0}},{breakpoint:480,settings:{slidesToShow:2,slidesToScroll:1,dots:!0,arrows:!1,draggable:!0,swipe:!0,touchMove:!0}}]})}};var bindSwatchLabelClickFallback=bindSwatchLabelClickFallback2,syncCheckedAttributeForSwatches=syncCheckedAttributeForSwatches2,isBogoPairControl=isBogoPairControl2,getMainPdpSwatchInputs=getMainPdpSwatchInputs2,goToVariantMedia=goToVariantMedia2,updatePdpPriceFromVariant=updatePdpPriceFromVariant2,applyPdpVariantChange=applyPdpVariantChange2,onChangeVariant=onChangeVariant2,pdpTab=pdpTab2,pdpImageSlider=pdpImageSlider2;pdpJS(),window.updateBundleSlider=function(){const bundleSection=document.querySelector(".product-bundle-section");if(!bundleSection)return;const slider=bundleSection.querySelector(".bundle-products-slider");if(!slider)return;
5const sliderEnabledAttr=slider.getAttribute("data-slider-enabled");if(sliderEnabledAttr==="true"||sliderEnabledAttr===!0){if(slider.classList.contains("slick-initialized")){if(typeof window.jQuery<"u"&&typeof window.jQuery.fn.slick<"u")try{window.jQuery(slider).slick("unslick")}catch(e){console.warn("Bundle: Error destroying slider:",e)}slider.classList.remove("slick-initialized"),slider.removeAttribute("style");const slickTrack=slider.querySelector(".slick-track");slickTrack&&(slickTrack.querySelectorAll(".slick-slide").forEach(function(slide){slide.classList.remove("slick-slide"),slide.removeAttribute("style"),slide.removeAttribute("data-slick-index")}),slickTrack.remove())}setTimeout(function(){const slickOptions={arrows:!0,prevArrow:bundleSection.querySelector(".bundle-slider-prev"),nextArrow:bundleSection.querySelector(".bundle-slider-next"),slidesToShow:2.5,slidesToScroll:1,infinite:!1,draggable:!0,swipe:!0,touchMove:!0,responsive:[{breakpoint:991,settings:{slidesToShow:2.5,slidesToScroll:1}},{breakpoint:767,settings:{slidesToShow:1.5,slidesToScroll:1}}]};if(typeof window.jQuery<"u"&&typeof window.jQuery.fn.slick<"u")try{window.jQuery(slider).slick(slickOptions)}catch(e){console.warn("Bundle: Error initializing slider:",e)}else console.warn("Bundle: jQuery or Slick not available")},300)}},window.R2BApplyVariantChange=applyPdpVariantChange2}function initStickyATCWrapper(){const stickyAtc=document.getElementById("stickyAtcWrapper"),originalAtc=document.querySelector("#originalAtcWrapper button[type='submit']"),productForm=document.getElementById("product-form-atc"),stickyBtn=document.querySelector(".sticky-atc-btn");if(stickyAtc&&originalAtc&&stickyBtn&&productForm){window.stickyATCObserver&&window.stickyATCObserver.disconnect(),window.stickyATCObserver=new IntersectionObserver(entries=>{entries.forEach(entry=>{entry.isIntersecting?stickyAtc.classList.remove("show"):stickyAtc.classList.add("show")})},{threshold:.1}),window.stickyATCObserver.observe(originalAtc);const newStickyBtn=stickyBtn.cloneNode(!0);stickyBtn.parentNode.replaceChild(newStickyBtn,stickyBtn),newStickyBtn.addEventListener("click",function(){productForm.requestSubmit()})}}function updateStickyATCPrice(){if(window.productJson)try{const productForm=$(".pdp-cart-form form, form.add-to-cart-form, form[id*='product-form']").first();let variantId=null;if(productForm.length>0){const variantInput=productForm.find('input[name="id"]');variantInput.length>0&&variantInput.val()&&(variantId=variantInput.val())}if(!variantId){const stickyForm=$("#bottom-sticky-cta-section form");if(stickyForm.length>0){const stickyVariantInput=stickyForm.find('input[name="id"]');stickyVariantInput.length>0&&stickyVariantInput.val()&&(variantId=stickyVariantInput.val())}}if(!variantId){const selectedOptions={};if($('.tt-options-swatch input[type="radio"]:checked').each(function(){if($(this).closest("[data-bogo-pair-options]").length)return;const optionName=$(this).attr("name"),optionValue=$(this).val(),optionIndex=$(this).attr("optionIndex");optionIndex&&(selectedOptions[optionIndex]=optionValue)}),Object.keys(selectedOptions).length>0){const variantsJSON=JSON.parse(window.productJson),matchingVariant=$.grep(variantsJSON,function(variant){return $.map(selectedOptions,function(value,optionName){return variant[optionName]===value}).every(Boolean)})[0];matchingVariant&&(variantId=matchingVariant.id)}}if(!variantId){const stickySelectedOptions={};if($("#bottom-sticky-cta-section .select__select").each(function(){const optionIndex=$(this).attr("optionIndex"),selectedValue=$(this).val();optionIndex&&selectedValue&&(stickySelectedOptions[optionIndex]=selectedValue)}),Object.keys(stickySelectedOptions).length>0){const variantsJSON=JSON.parse(window.productJson),matchingVariant=$.grep(variantsJSON,function(variant){return $.map(stickySelectedOptions,function(value,optionName){return variant[optionName]===value}).every(Boolean)})[0];matchingVariant&&(variantId=matchingVariant.id)}}if(variantId&&window.productJson){const variant=JSON.parse(window.productJson).find(function(v){return v.id==variantId||v.id.toString()===variantId.toString()});if(variant){const price=getItemFormatedPrice(variant.price),comparePrice=variant.compare_at_price&&variant.compare_at_price>variant.price?getItemFormatedPrice(variant.compare_at_price):null;if($("#bottom-sticky-cta-section").length>0){const priceElement=$("#bottom-sticky-cta-section .fixed-product-price, #sticky-atc-price");if(priceElement.length>0){const priceCurrent=$("#sticky-atc-price-current"),priceCompare=$("#sticky-atc-price-compare");priceCurrent.length>0?(priceCurrent.text(price),comparePrice&&priceCompare.length>0?(priceCompare.text(comparePrice),priceCompare.show()):priceCompare.length>0?priceCompare.hide():comparePrice&&priceCurrent.after(' <del id="sticky-atc-price-compare">'+comparePrice+"</del>")):comparePrice?priceElement.html('<span id="sticky-atc-price-current">'+price+'</span> <del id="sticky-atc-price-compare">'+comparePrice+"</del>"):priceElement.html('<span id="sticky-atc-price-current">
5'+price+"</span>");const stickyForm=$("#bottom-sticky-cta-section form");if(stickyForm.length>0){let stickyVariantInput=stickyForm.find('input[name="id"]');stickyVariantInput.length===0?stickyForm.append('<input type="hidden" name="id" value="'+variant.id+'">'):stickyVariantInput.val(variant.id)}}}if($("#stickyAtcWrapper").length>0){const priceCurrent=$("#stickyAtcWrapper #product-price-current"),priceCompare=$("#stickyAtcWrapper #product-price-compare");priceCurrent.length>0&&(priceCurrent.text(price),comparePrice&&priceCompare.length>0?(priceCompare.text(comparePrice),priceCompare.show()):priceCompare.length>0&&priceCompare.hide())}}}}catch(error2){console.warn("Error updating sticky ATC price:",error2)}}function stickyATC(){if($("#bottom-sticky-cta-section").length>0){$("#bottom-sticky-cta-section .select__select").change(async function(){let selectedOptions={},selectedValue=$(this).val(),optionIndex=$(this).attr("optionIndex");selectedOptions[optionIndex]=selectedValue;const variantsJSON=JSON.parse(window.productJson),matchingVariant=$.grep(variantsJSON,function(variant){return $.map(selectedOptions,function(value,optionName){return variant[optionName]===value}).every(Boolean)})[0];let urlObj=new URL(window.location.href);urlObj.searchParams.set("variant",matchingVariant.id);let newUrl=urlObj.toString();try{let response=await getAjax(newUrl,"GET","html");const stickyATCLayout=$(response).find("#bottom-sticky-cta-section").html();$("#bottom-sticky-cta-section").html(stickyATCLayout),actionStickyATC(),onStickyQtyChange(),stickyATC2(),setTimeout(function(){updateStickyATCPrice()},200)}catch{}});const actualATC=$(".pdp-cart-form"),stickyATC2=$("#bottom-sticky-cta-section"),top=actualATC.offset().top,stickyATCscrollHandler=event=>{const y=$(document).scrollTop(),windowHeight=$(window).height(),documentHeight=$(document).height(),recommendedProductsTab=$(".pdp-tabs-title.active"),isRecommendedProductsActive=recommendedProductsTab.length>0&&recommendedProductsTab.text().toLowerCase().includes("recommended")||recommendedProductsTab.text().toLowerCase().includes("aanbevolen")||recommendedProductsTab.text().toLowerCase().includes("vergelijkbaar"),recommendedProductsContent=$(".recommended-products-grid").closest(".pdp-tabs-content"),isRecommendedProductsVisible=recommendedProductsContent.length>0&&recommendedProductsContent.is(":visible")&&recommendedProductsContent.css("display")!=="none";if(isRecommendedProductsActive||isRecommendedProductsVisible){stickyATC2.removeClass("sticky-atc");return}y>=top&&y+windowHeight<documentHeight?stickyATC2.addClass("sticky-atc"):stickyATC2.removeClass("sticky-atc")};$(window).on("scroll",stickyATCscrollHandler)}}function onStickyQtyChange(){$(".sticky-qty-wrapper .sticky-qty-btn").length>0&&$(".sticky-qty-wrapper .sticky-qty-btn").click(async function(){const inputQty=$(this).parent().find("input.sticky-qty-input_box"),currentQty=parseInt(inputQty.val());$(this).hasClass("plus-btn")?inputQty.val(Math.max(currentQty+1,1)):inputQty.val(Math.max(currentQty-1,1))})}function actionStickyATC(){$("#bottom-sticky-cta-section").length>0&&$("#bottom-sticky-cta-section .sticky-atc-form").off("submit.stickyAtc").on("submit.stickyAtc",async function(event){event.preventDefault(),event.stopPropagation();const $form=$(this);if(Array.isArray(window.bundleSelectedProducts)&&window.bundleSelectedProducts.length>0&&typeof window.r2bSubmitWithBundle=="function"){event.stopImmediatePropagation();const $mainForm=getMainPdpAtcForm$(),mainForm=$mainForm&&$mainForm.length?$mainForm.get(0):null,triggerBtn=$form.find('button[type="submit"]').get(0)||document.querySelector(".sticky-atc-btn")||document.querySelector("#originalAtcWrapper button[type='submit']");if(mainForm){window.r2bSubmitWithBundle(mainForm,triggerBtn);return}}if(!($form.data("atc-busy")||!beginAddToCart($form)))try{isCartDrawerMode()||loading(!0);const addQty=getFormAddQuantity($form),response=await postAjax("/cart/add.js","POST","json",$form.serialize()),itemImageUrl=response.featured_image&&response.featured_image.url?response.featured_image.url:"",itemTitle=response.title,itemQty=addQty,itemTotalPrice=getItemFormatedPrice(response.price*itemQty),cartQty=parseInt(window.cart.quantity,10)+addQty,cartTotalPriceWithoutFormatedPrice=parseInt(window.cart.total_price,10)+parseInt(response.price,10)*addQty,cartTotalPrice=getItemFormatedPrice(cartTotalPriceWithoutFormatedPrice);await showAfterAddToCart({itemImageUrl,itemTitle,itemQty,itemTotalPrice,cartQty,c
5artTotalPrice,cartTotalPriceWithoutFormatedPrice})}catch(error2){console.error("Sticky ATC add to cart:",error2),loading(!1)}finally{endAddToCart($form)}})}function addToCartFormRecommandation(){$(document).off("submit.r2bRec",".product-recommendations .add-to-cart-form").on("submit.r2bRec",".product-recommendations .add-to-cart-form",async function(event){event.preventDefault(),event.stopPropagation();const $form=$(this);if(!($form.data("atc-busy")||!beginAddToCart($form)))try{try{const resolvedVariantId=resolveSelectedVariantId(this);resolvedVariantId&&$form.find('input[name="id"]').val(resolvedVariantId)}catch{}isCartDrawerMode()||loading(!0);const addQty=getFormAddQuantity($form),response=await postAjax("/cart/add.js","POST","json",$form.serialize()),itemImageUrl=response.featured_image&&response.featured_image.url?response.featured_image.url:"",itemTitle=response.title,itemQty=addQty,itemTotalPrice=getItemFormatedPrice(response.price*itemQty),cartQty=parseInt(window.cart.quantity,10)+addQty,cartTotalPriceWithoutFormatedPrice=parseInt(window.cart.total_price,10)+parseInt(response.price,10)*addQty,cartTotalPrice=getItemFormatedPrice(cartTotalPriceWithoutFormatedPrice);await showAfterAddToCart({itemImageUrl,itemTitle,itemQty,itemTotalPrice,cartQty,cartTotalPrice,cartTotalPriceWithoutFormatedPrice})}catch(error2){console.error("Error loading more content:",error2),loading(!1)}finally{endAddToCart($form)}})}function pdpJS(){bindSwatchLabelClickFallback(),syncCheckedAttributeForSwatches(),onChangeVariant(),pdpTab(),pdpImageSlider(),stickyATC(),actionStickyATC(),onStickyQtyChange();function getMainPdpAtcForm$2(){const $a=$("#product-form-atc");if($a.length)return $a;const $b=$("#product-form-atc-ctm");return $b.length?$b:$(".product-main .pdp-cart-form form").first()}$(window).off("variant:change.stickyATC").on("variant:change.stickyATC",function(){setTimeout(function(){updateStickyATCPrice(),syncStickyFormVariant()},100)}),getMainPdpAtcForm$2().off("change.stickyATC").on("change.stickyATC",'input[name="id"]',function(){setTimeout(function(){updateStickyATCPrice(),syncStickyFormVariant()},100)});function syncStickyFormVariant(){const mainForm=getMainPdpAtcForm$2(),stickyForm=$("#bottom-sticky-cta-section form");if(mainForm.length>0&&stickyForm.length>0){const mainVariantInput=mainForm.find('input[name="id"]'),stickyVariantInput=stickyForm.find('input[name="id"]');mainVariantInput.length>0&&mainVariantInput.val()&&(stickyVariantInput.length===0?stickyForm.append('<input type="hidden" name="id" value="'+mainVariantInput.val()+'">'):stickyVariantInput.val(mainVariantInput.val()))}}if(typeof MutationObserver<"u"){const mainForm=getMainPdpAtcForm$2();if(mainForm.length>0){const variantInput=mainForm.find('input[name="id"]')[0];variantInput&&new MutationObserver(function(mutations){mutations.forEach(function(mutation){mutation.type==="attributes"&&mutation.attributeName==="value"&&setTimeout(function(){updateStickyATCPrice(),syncStickyFormVariant()},100)})}).observe(variantInput,{attributes:!0,attributeFilter:["value"]})}}updateStickyATCPrice(),syncStickyFormVariant(),typeof Globo<"u"&&typeof Globo?.Preorder<"u"&&Globo?.Preorder?.initPreorder(),addToCartFormRecommandation(),setTimeout(function(){updateStickyATCPrice()},2e3)}function loading(bool){bool?($("#r2b-loader").show(),$("html").addClass("rt-loading")):($("#r2b-loader").hide(),$("html").removeClass("rt-loading"))}function getItemFormatedPrice(price){const currencies_using_comma_decimals="ANG,ARS,BRL,BYN,BYR,CLF,CLP,COP,CRC,CZK,DKK,EUR,HRK,HUF,IDR,ISK,MZN,NOK,PLN,RON,RUB,SEK,UYU,VES,VND";let formattedPrice;return currencies_using_comma_decimals.includes(window.shop.currencyCode.trim())?formattedPrice=(price/100).toFixed(2).replace(".",","):formattedPrice=(price/100).toFixed(2),window.shop.currencySymbol+formattedPrice}typeof softRefreshCartDrawer=="function"&&(window.r2bRefreshCartDrawer=async function(openAfter){await softRefreshCartDrawer(!!openAfter,{preserveItems:!1})}),window.r2bOpenCartDrawer=function(){const drawer=document.getElementById("CartDrawer");drawer&&(drawer.classList.add("active"),drawer.setAttribute("aria-hidden","false"),document.documentElement.classList.add("cart-drawer-active"))}});
6//# sourceMappingURL=/cdn/shop/t/97/assets/theme.js.map?v=15593765945247820301789652656

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.