// source --> https://www.ebikes-leipzig.com/wp-content/plugins/wc-easycredit/modules/frontend/build/index.js?ver=2.1 
(()=>{"use strict";const e=async()=>{document.addEventListener("easycredit-submit",e=>{if(!(e instanceof CustomEvent))return;const t=e.target;t&&"EASYCREDIT-EXPRESS-BUTTON"===t.tagName&&(t.closest(".wc-block-components-express-payment")||(e.preventDefault(),function(e){let t;const n=e.target,r=n.closest(".summary");if(r instanceof HTMLElement&&(t=r.querySelector("form.cart")),t||(t=document.querySelector("form.cart")),t||(t=document.querySelector("form.woocommerce-cart-form")),!(t instanceof HTMLFormElement))return;const o=(e=>{let t={};e.express="1";for(let[n,r]of Object.entries(e))t["easycredit["+n+"]"]=r;return t})(e.detail),i=t.querySelector('button[name="add-to-cart"], button.single_add_to_cart_button');if(i){let e;return i.getAttribute("value")&&(o["add-to-cart"]=i.getAttribute("value")),void((e=((e,t)=>{if(!(e instanceof HTMLFormElement))return!1;const n=e.getAttribute("action"),r=e.getAttribute("method");if(!n||!r)return!1;const o=document.createElement("form");o.setAttribute("action",n),o.setAttribute("method",r),o.style.display="none";const i=new FormData(e);for(const[e,n]of Object.entries(t))i.set(e,n);for(const e of i.keys()){const t=document.createElement("input");t.setAttribute("type","hidden"),t.setAttribute("name",e),t.setAttribute("value",i.get(e)),o.appendChild(t)}return document.body.appendChild(o),o})(t,o))&&e.submit())}if(n.closest(".wc-proceed-to-checkout")&&n.dataset.url){const e=new URLSearchParams(o).toString();return void(window.location.href=n.dataset.url+"?"+e)}window.alert("Die Express-Zahlung mit easyCredit konnte nicht gestartet werden."),console.error("easyCredit payment could not be started. Please check the integration.")}(e)))},!0),document.querySelectorAll("form.variations_form").forEach(e=>{jQuery(e).on("show_variation",function(e,t){const n=document.querySelector("easycredit-express-button");n instanceof HTMLElement&&(n.style.display="block",n.setAttribute("amount",t&&t.is_in_stock?t.display_price:1))}),e.addEventListener("hide_variation",function(){const e=document.querySelector("easycredit-express-button");e instanceof HTMLElement&&(e.style.display="none")})})},t=e=>document.querySelector('easycredit-checkout[payment-type="'+e+'"]'),n=(e,n,r)=>{jQuery(e).on("checkout_place_order_"+n,()=>{const n=t(r);return!("none"!==n.style.display&&n.isActive&&!n.paymentPlan&&""===n.alert&&!e.querySelector('input[name="easycredit[submit]"]')&&(n.scrollIntoView({behavior:"smooth"}),"INSTALLMENT"===r&&n.dispatchEvent(new Event("openModal")),1))}),"INSTALLMENT"===r&&jQuery(document.body).on("checkout_error",()=>{t(r).dispatchEvent(new Event("closeModal"))})},r=(e,t=null,n=null)=>{let r;null===t&&(t=document);const o="meta[name=easycredit-"+e+"]";if(n instanceof HTMLElement){let e;if((e=n.closest("li.product"))&&(r=e.querySelector(o)))return r.content}return(r=t.querySelector(o))?r.content:null},o=()=>{document.querySelectorAll("form.variations_form").forEach(e=>{jQuery(e).on("show_variation",function(e,t){const n=e.currentTarget.closest(".product.product-type-variable")?.querySelector("easycredit-widget");n&&t?.display_price&&n.setAttribute("amount",t.is_in_stock?t.display_price:1)})})},i={easycredit_ratenkauf:"INSTALLMENT",easycredit_rechnung:"BILL"};(async()=>{await new Promise(e=>{window.addEventListener("load",()=>{e()})}),e(),(async()=>{await(()=>{const e=document.querySelector("easycredit-box-listing.easycredit-box-listing-adjusted");if(!(e&&e instanceof HTMLElement&&e.parentElement))return;const t=[...e.parentElement.children].filter(t=>t!==e)[0],n=t.clientWidth,r=t.clientHeight,o=t.className;e.style.width=n+"px",e.style.height=r+"px",e.style.visibility="hidden",e.className=e.className+" "+o,"LI"===t.tagName&&(e.style.display="list-item",e.style.listStyle="none","UL"===e.parentElement.tagName&&(e.parentElement.className=e.parentElement.className+" easycredit-card-columns-adjusted"))})(),await(async()=>{await customElements.whenDefined("easycredit-box-listing");const e=document.querySelector("easycredit-box-listing.easycredit-box-listing-adjusted");if(!(e instanceof HTMLElement&&e.shadowRoot))return;e.style.visibility="";const t=e.shadowRoot.querySelector(".ec-box-listing");t instanceof HTMLElement&&(t.style.maxWidth="100%",t.style.height="100%");const n=e.shadowRoot.querySelector(".ec-box-listing__image");n instanceof HTMLElement&&(n.style.minHeight="100%")})(),await(()=>{const e=document.querySelector("easycredit-box-listing");if(!(e instanceof HTMLElement&&e.parentElement))return;const t=[...e.parentElement.children].filter(t=>t!==e),n=e.getAttribute("position"),r=n?Number(n)-1:0,o=r?Number(n)-2:0;!n||r<=0||(t[o]?t[o].after(e):e.parentElement.append(e))})()})(),(()=>{const e=r("widget-selector"),t=r("api-key");if(!e||!t)return;let n=(e=>{let t;if(t=e.match(/(.+) easycredit-widget(\[.+?\])$/)){const e=t[2].split("]").map(e=>e.slice(1).split("=")).filter(([e,t])=>e).reduce((e,[t,n])=>({...e,[t]:n}),{});return{selector:t[1],attributes:e}}return{selector:e}})(e);Array.from(document.querySelectorAll(n.selector)).filter(e=>{const t=window.getComputedStyle(e);return"hidden"!==t.visibility&&"0"!==t.opacity}).forEach(e=>{((e,t,n)=>{let o=r("amount",e,t);if(null===o||isNaN(o)){const e=t.parentNode;o=e&&e.querySelector("[itemprop=price]")?e.querySelector("[itemprop=price]").content:null}if(null===o||isNaN(o))return;let i=document.createElement("easycredit-widget");if(i.setAttribute("webshop-id",r("api-key")),i.setAttribute("amount",o),i.setAttribute("payment-types",r("payment-types")),n)for(const[e,t]of Object.entries(n))i.setAttribute(e,t);t.parentNode?.insertBefore(i,t.nextSibling)})(document,e,n.attributes)}),o()})();const t=document.querySelector("form.woocommerce-checkout, form#order_review");if(t){s=t,document.addEventListener("easycredit-submit",e=>{e instanceof CustomEvent&&e.target&&"EASYCREDIT-CHECKOUT"===e.target.tagName&&(e.preventDefault(),(e=>{const t=e.target.closest("form");if(!(t instanceof HTMLFormElement))return;const n=[{name:"easycredit[submit]",value:"1"},{name:"terms",value:"On"},{name:"legal",value:"On"}];e.detail&&e.detail.numberOfInstallments&&n.push({name:"easycredit[number-of-installments]",value:e.detail.numberOfInstallments}),n.forEach(e=>{const n=document.createElement("input");n.type="hidden",n.name=e.name,n.value=e.value,t.appendChild(n)}),jQuery(t).submit()})(e))},!0),s.addEventListener("change",e=>{const t=e.target;t instanceof Element&&t&&t.closest(".woocommerce-billing-fields")&&jQuery(t).trigger("update_checkout")});for(const[e,r]of Object.entries(i))n(t,e,r)}var s})().catch(e=>{console.error("EasyCredit initialization failed:",e)})})();