PageSourceSearch

https://boutique.chefclub.tv/cdn/shop/t/65/assets/estimate-shipping-rate.js?v=35554055062891148931789493551

js chefclub.tv collected 2026-09-26 00:15:45 UTC 3,231 bytes, 2 lines download raw bytes

1window.Eurus.loadedScript.has("estimate-shipping-rate.js")||(window.Eurus.loadedScript.add("estimate-shipping-rate.js"),requestAnimationFrame(()=>{document.addEventListener("alpine:init",()=>{Alpine.data("xEstimateShipping",(el,single,multiple,noRates)=>({countryEl:el.querySelector(".country-select"),provinceEl:el.querySelector(".province-select"),provinceContainer:el.querySelector(".province-container"),zip:el.querySelector(".zip-input"),rates:el.querySelector(".rates"),errors:el.querySelector(".errors"),loadingShipping:!1,rates_heading:"",rates_text:"",errors_message:"",cachedData:[],cachedResponse:[],load(){this.setSelectedOption(this.countryEl,this.countryEl.dataset.default),this.provinceEl.dataset.default&&this.provinceEl.options.length>0&&this.setSelectedOption(this.provinceEl,this.provinceEl.dataset.default),this.handleCountryChange(),this.countryEl.addEventListener("change",this.handleCountryChange.bind(this))},handleCountryChange(){const selectedOption=this.countryEl.options[this.countryEl.selectedIndex],provinces=JSON.parse(selectedOption.dataset.provinces);Array.from(this.provinceEl.options).forEach(option=>option.remove()),provinces&&provinces.length===0?this.provinceContainer.hidden=!0:(provinces.forEach(province=>{const option=document.createElement("option");[option.value,option.innerHTML]=province,this.provinceEl.appendChild(option)}),this.provinceContainer.hidden=!1)},setSelectedOption(selector,value){Array.from(selector.options).forEach((option,index)=>{(option.value===value||option.innerHTML===value)&&(selector.selectedIndex=index)})},async submit(e){e?.preventDefault(),this.errors.classList.add("hidden"),this.rates.classList.add("hidden");const params=`shipping_address[zip]=${this.zip.value}&shipping_address[country]=${this.countryEl.value}&shipping_address[province]=${this.provinceEl.value}`;if(this.cachedData[params])return this.cachedResponse[params]?this.showRates(this.cachedData[params]):this.showErrors(this.cachedData[params]),!0;this.loadingShipping=!0;try{const response=await fetch(`${Shopify.routes.root}cart/shipping_rates.json?${params}`),data=await response.json();response.ok?this.showRates(data):this.showErrors(data),this.cachedResponse[params]=response.ok,this.cachedData[params]=data}catch(error){console.log(error)}finally{this.loadingShipping=!1}},showRates(data){const headingEl=this.rates.querySelector(".rates-heading");if(data.shipping_rates&&data.shipping_rates.length){this.rates_heading=data.shipping_rates.length===1?single:multiple;let rates="";
1data.shipping_rates.forEach(rate=>{const formattedRate=rate.price+rate.currency;rates+=`<li class="pt-2">${rate.name}: ${formattedRate}</li>`}),headingEl.classList.remove("hidden"),this.rates_text=`<ul class="list-disc pl-4">${rates}</ul>`}else headingEl.classList.add("hidden"),this.rates_text=`<p class="no-rate">${noRates}</p>`;this.rates.classList.remove("hidden")},showErrors(data){let errors="";Object.keys(data).forEach(key=>{errors+=`<li>${data[key]}</li>`}),this.errors_message=`<ul>${errors}</ul>`,this.errors.classList.remove("hidden")}})),Alpine.store("xPopupShipping",{open:!1})})}));
2//# sourceMappingURL=/cdn/shop/t/65/assets/estimate-shipping-rate.js.map?v=35554055062891148931789493551

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.