1import{b as s}from"./chunk-NIG36RGU.js";import{a as u}from"./chunk-BYGXFFK7.js";import{c as i}from"./chunk-MM5PEOWL.js";var r=i(u());r.default.config.autoEscape=!1;var c=class{constructor(t,e){this.udesly=t;this.checkoutWrapper=e;wc_checkout_params.wc_ajax_url+="&udesly_checkout=true",wc_checkout_params.checkout_url+="&udesly_checkout=true",wc_checkout_params.is_checkout="1",jQuery.scroll_to_notices=()=>{let o=this.checkoutWrapper.querySelector('[data-node-type="commerce-checkout-error-state"]');o&&o.scrollIntoView({block:"center",behavior:"smooth"})},this.includeTaxes=window.udesly_frontend_options.wc.show_taxes==="incl",this.handleItemsInOrder(this.checkoutWrapper.querySelector(".w-commerce-commercecheckoutorderitemswrapper")),this.handleCoupon(),this.initDOMEvents(),this.initStoreEvents()}initDOMEvents(){this.checkoutWrapper.querySelectorAll('[data-node-type="commerce-checkout-place-order-button"]').forEach(t=>{t.tagName=="A"&&t.addEventListener("click",e=>{this.checkoutWrapper.dispatchEvent(new Event("submit",{bubbles:!0}))})}),this.checkoutWrapper.addEventListener("change",()=>{this.hideErrorState()})}initStoreEvents(){s("update_checkout",()=>{this.udesly.dispatch("woocommerce/updateCheckout")}),this.udesly.on("woocommerce/checkoutNotice",t=>{this.checkoutWrapper.querySelectorAll(".woocommerce-NoticeGroup-checkout").forEach(o=>o.remove());let e=this.checkoutWrapper.querySelector('[data-node-type="commerce-checkout-error-state"]');e&&(e.outerHTML=t,requestAnimationFrame(()=>{this.checkoutWrapper.querySelector('[data-node-type="commerce-checkout-error-state"]').scrollIntoView({block:"center",behavior:"smooth"})}))})}hideErrorState(){let t=this.checkoutWrapper.querySelector('[data-node-type="commerce-checkout-error-state"]');t&&(t.style.display="none")}handleCoupon(){if(!this.checkoutWrapper.querySelector('[data-node-type="commerce-checkout-discount-form"]'))return;let e=document.querySelector("form#coupon_form");!e||e&&e.addEventListener("submit",o=>{this.hideErrorState(),o.preventDefault(),o.stopPropagation(),o.stopImmediatePropagation(),this.udesly.dispatch("woocommerce/applyCoupon",{coupon_code:this.checkoutWrapper.querySelector("input[name=coupon_code]").value})},!0)}handleItemsInOrder(t){if(!!t)try{let e=t.querySelector('script[type="text/x-wf-template"]').textContent;e=e.replace(/product\.fullSlug/gm,"url"),this.templateFunction=r.default.compile(e),this.itemsList=t.querySelector(".w-commerce-commercecheckoutorderitemslist"),this.udesly.on("woocommerce/cartChanged",()=>{this.refreshItemsInOrder()}),this.refreshItemsInOrder()}catch(e){console.error(e)}}refreshItemsInOrder(){let{count:t,items:e,subtotal:o,total:n}
1=this.udesly.getState().woocommerce;t||(window.location=window.udesly_frontend_options.wc.cart_url),this.refreshItems(e)}refreshItems(t){!this.itemsList||(this.itemsList.innerHTML=t.reduce((e,o)=>(o.rowTotal=this.includeTaxes?o.total:o.subtotal,e+=r.default.render(this.templateFunction,o)),""))}},p=c;export{p as default};
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.