1"use strict";let variation;const initExperiment=(exp_id,iteration="v0.01",force_activate_variation)=>{let exp_handle=exp_id.replace("-","").toLowerCase();force_activate_variation?variation=force_activate_variation:getParam("qa").indexOf(exp_handle)>-1?variation=getParam("qa").replace(exp_handle,""):variation=window.sessionStorage.getItem(exp_id);let exp_tag=exp_handle+variation;return document.documentElement.classList.add(exp_tag),console.log(`init ${exp_id}${variation} -- ${iteration}`),variation};function waitForElement(selector){return new Promise(function(resolve,reject){var element=document.querySelector(selector);if(element){resolve(element);return}var observer=new MutationObserver(function(mutations){mutations.forEach(function(mutation){var nodes=Array.from(mutation.addedNodes);for(var node of nodes)if(node.matches&&node.matches(selector)){observer.disconnect(),resolve(node);return}})});observer.observe(document.documentElement,{childList:!0,subtree:!0})})}const requestAnimFrame=(function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(callback){window.setTimeout(callback,3e3/60)}})();function waitUntil(test){return new Promise(function(resolve){(function poll(){return test()?resolve():requestAnimFrame(poll,50)})()})}const observeSelector=(selector,callback,options={timeout:null,once:!1,onTimeout:null,document:window.document})=>{let processed=new Map;
1(options.timeout||options.onTimeout)&&(console.log("------------------------------------------------------------------------------------------------------------------------------"),console.log("WARNING: observeSelector options timeout and onTimeout are not yet implemented."),console.log("------------------------------------------------------------------------------------------------------------------------------"));let obs,isDone=!1;const done=()=>(obs||console.warn("observeSelector failed to run done()"),obs&&obs.disconnect(),processed=void 0,obs=void 0,isDone=!0),processElement=el=>{if(processed&&!processed.has(el)&&(processed.set(el,!0),callback(el),options.once))return done(),!0},lookForSelector=(el=document)=>{if(el.matches&&el.matches(selector)&&processElement(el))return!0;if(el.querySelectorAll){const elements=el.querySelectorAll(selector);if(elements.length)for(let i=0;i<elements.length;i++){const el2=elements[i];if(processElement(el2))return!0}}};return lookForSelector(),isDone||(obs=new MutationObserver(mutationsList=>{mutationsList.forEach(record=>{if(record&&record.addedNodes&&record.addedNodes.length)for(let i=0;i<record.addedNodes.length;i++){const el=record.addedNodes[i].parentElement;if(el&&lookForSelector(el))return!0}})}),obs.observe(options.document||document,{attributes:!1,childList:!0,subtree:!0})),()=>{done()}},getCookie=name=>{const parts=`; ${document.cookie}`.split(`; ${name}=`);if(parts.length===2)return parts.pop().split(";").shift()}
1,setCookie=(name,value,expdays)=>{const d=new Date;d.setTime(d.getTime()+expdays*24*60*60*1e3);let expires="expires="+d.toUTCString();document.cookie=name+"="+value+";"+expires+";path=/"},delCookie=(name,path,domain)=>{getCookie(name)&&(document.cookie=name+"="+(path?";path="+path:"")+(domain?";domain="+domain:"")+";expires=Thu, 01 Jan 1970 00:00:01 GMT")},getParam=(name,optSearch)=>{"use strict";optSearch=optSearch||location.search,name=name.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var regex=new RegExp("[\\?&]"+name+"=([^&#]*)"),results=regex.exec(optSearch);return results===null?"":decodeURIComponent(results[1].replace(/\+/g," "))},js_loadScript=(url,optCallback)=>{"use strict";const ga=document.createElement("script");ga.type="text/javascript",ga.async=!0,ga.src=url,typeof optCallback=="function"&&(ga.onload=optCallback);const s=document.getElementsByTagName("script")[0];s.parentNode.insertBefore(ga,s)},cart_remove_items=(var_ids,callback)=>{console.log(`cart_remove_items(${var_ids})`),get_cart_json().then(data=>{for(let i=0;i<data.items.length;i++)for(let ii=0;ii<var_ids.length;ii++)console.log(`searching for ${var_ids[ii]} === ${data.items[i].variant_id}`),data.items[i].variant_id===var_ids[ii]&&(console.log(`... removing ${var_ids[ii]}`),$.ajax({type:"POST",url:"/cart/change.js",data:{quantity:0,id:var_ids[ii]},dataType:"json",success:callback}))})},cart_add_item=(var_id,qty,callback)=>{console.log(`cart_add_item(${var_id}, ${qty})`),$.ajax({type:"POST",url:"/cart/add.js",data:{quantity:qty,id:var_id},dataType:"json",success:callback})},get_cart_json=()=>$.ajax({type:"GET",url:"/cart.js",dataType:"json",success:function(data){}}),cart_contains_subscription=()=>get_cart_json().then(data=>{for(let i=0;i<=data.items.length;i++){if(i===data.items.length)return!1;if(data.items[i].properties&&data.items[i].properties.shipping_interval_frequency)return!0}}),cart_contains_item=var_id=>get_cart_json().then(data=>{for(let i=0;i<=data.items.length;i++){if(i===data.items.length)return!1;if(data.items[i].variant_id===var_id)return!0}}); 2//# sourceMappingURL=/cdn/shop/t/151/assets/_proteus-utils.js.map?v=141540121180011387331687303242
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.