(function(s){typeof define=="function"&&define.amd?define(s):s()})((function(){"use strict";const s={WIDGET_TAG_ID:"kpay-advertising-script",WIDGET_ELEMENT_NAME:"kueskipay-widget",MODAL_ELEMENT_NAME:"kueskipay-modal",GTAG_ID:"GTM-PMLMKZG",GTAG_DATA_LAYER_KEY:"kueskipay_dataLayer",KUESKI_PAY_API_BASE_URL:"https://api.kueskipay.com",KUESKI_PAY_API_STAGING_BASE_URL:"https://testing.kueskipay.com",KUESKI_PAY_CDN_BASE_URL:"https://cdn.kueskipay.com",AMPLITUDE_KEY:"client-7foDOKXDTAVfJLubEti9ncZLbM14RFxO",VITE_KUESKI_PAY_CREATE_ACCOUNT:"https://prod.kueskipay.com",MERCHANT_CACHE_ENABLED:!0},L='@import"https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,400..700&display=swap";:host{--kp-font-family: "Inter", sans-serif;--kp-font-headline-2-size: 24px;--kp-font-headline-2-line: 32px;--kp-font-headline-2-letter-spacing: -.12px;--kp-font-headline-2-weight: 700;--kp-font-body-1-size: 16px;--kp-font-body-1-line: 24px;--kp-font-body-1-weight: 400;--kp-font-body-1-strong-weight: 700;--kp-font-body-1-emphasis-weight: 600;--kp-font-body-2-size: 14px;--kp-font-body-2-line: 20px;--kp-font-meta-size: 12px;--kp-font-meta-line: 16px;--kp-color-text-primary: #141c22;--kp-color-text-secondary: #384550;--kp-color-text-default: #282c38;--kp-color-brand: #0069f1;--kp-color-neutral-line: #cfd8df;--kp-color-surface: linear-gradient( 176deg, rgba(204, 227, 255, .5) -12.72%, #fff 52.02% );--kp-space-1: 4px;--kp-space-2: 8px;--kp-space-3: 12px;--kp-space-4: 16px;--kp-space-5: 20px;--kp-space-6: 24px;--kp-radius-sm: 8px;--kp-radius-md: 12px;--kp-radius-pill: 50px;--kp-modal-width: 412px;--kp-modal-margin: var(--kp-space-2);--kp-modal-radius: var(--kp-radius-md);--kp-modal-bg: var(--kp-color-surface);--kp-modal-header-height: 72px;--kp-modal-header-logo-width: 120px;--kp-modal-header-close-size: 24px;--kp-benefits-item-width: 110px;--kp-benefits-item-gap: var(--kp-space-1);--kp-benefits-item-padding: 10px;--kp-benefits-icon-size: 48px;--kp-benefits-item-radius: var(--kp-radius-md);--kp-benefits-label-font-size: var(--kp-font-meta-size);--kp-benefits-label-line: var(--kp-font-meta-line);--kp-benefits-color: var(--kp-color-text-secondary);--kp-hiw-gap: var(--kp-space-4);--kp-hiw-bullet-gap: var(--kp-space-4);--kp-hiw-title-font-size: 16px;--kp-hiw-title-line: 24px;--kp-hiw-step-font-size: var(--kp-font-body-2-size);--kp-hiw-step-line: var(--kp-font-body-2-line);--kp-hiw-bullet-line-width: 2px;--kp-hiw-bullet-size: 10px;--kp-hiw-bullet-bg: #0051cb;--kp-hiw-bullet-border: #ffffff;--kp-hiw-connector-color: var(--kp-color-neutral-line);--kp-button-bg: var(--kp-color-brand);--kp-button-text-color: #ffffff;--kp-button-radius: var(--kp-radius-md);--kp-button-padding-x: 20px;--kp-button-padding-y: 12px;--kp-button-font-size: var(--kp-font-body-1-size);--kp-button-line: var(--kp-font-body-1-line);--kp-legal-font-size: var(--kp-font-meta-size);--kp-legal-line: var(--kp-font-meta-line)}@media (min-width: 768px){:host{--kp-modal-margin: calc(var(--kp-space-2) * 3)}}@media (min-width: 1024px){:host{--kp-modal-margin: calc(var(--kp-space-2) * 6)}}@keyframes kp-modal-show{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0)}}*{box-sizing:border-box;margin:0;padding:0}ol,ul{list-style:none}.kp-modal{display:none;position:fixed;top:0;left:0;z-index:999999;width:100%;height:100%;overflow:auto;background-color:#0006;font-family:var(--kp-font-family);font-optical-sizing:auto;font-style:normal;color:var(--kp-color-text-primary)}.kp-modal--open{display:block}.kp-modal__dialog{container:kp-dialog / inline-size;position:relative;width:100%;max-width:var(--kp-modal-width);margin:var(--kp-modal-margin) auto;padding:0;border-radius:var(--kp-modal-radius);background-color:#fff;pointer-events:none;animation:kp-modal-show .4s cubic-bezier(.4,0,.2,1)}.kp-modal__content{position:relative;display:flex;flex-direction:column;width:100%;max-width:var(--kp-modal-width);background:var(--kp-modal-bg);border-radius:var(--kp-modal-radius);pointer-events:auto;color:var(--kp-color-text-primary);font-family:var(--kp-font-family)}.kp-modal__header{position:relative;display:flex;flex-direction:column;padding:0 var(--kp-space-6);height:var(--kp-modal-header-height);justify-content:center}.kp-modal__header-control{display:flex;align-items:center;gap:var(--kp-space-4)}.kp-modal__header-logo img{width:var(--kp-modal-header-logo-width);height:24px}.kp-modal__close{margin-left:auto;width:var(--kp-modal-header-close-size);height:var(--kp-modal-header-close-size);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--kp-radius-sm)}.kp-modal__close:focus-visible{outline:2px solid var(--kp-color-brand);outline-offset:2px}.kp-modal__title{padding:0 var(--kp-space-6) var(--kp-space-6);font-size:var(--kp-font-headline-2-size);line-height:var(--kp-font-headline-2-line);font-style:normal;font-weight:var(--kp-font-headline-2-weight);color:var(--kp-color-text-primary);font-family:var(--kp-font-family);letter-spacing:var(--kp-font-headline-2-letter-spacing)}.kp-modal__benefits{display:flex;justify-content:space-between;padding:0 var(--kp-space-6)}.kp-modal__benefit{display:flex;flex-direction:column;align-items:center;gap:var(--kp-benefits-item-gap);padding:var(--kp-benefits-item-padding);width:var(--kp-benefits-item-width);border-radius:var(--kp-benefits-item-radius)}.kp-modal__benefit img{width:var(--kp-benefits-icon-size);height:var(--kp-benefits-icon-size)}.kp-modal__benefit-label{font-size:var(--kp-benefits-label-font-size);line-height:var(--kp-benefits-label-line);text-align:center;color:var(--kp-benefits-color);font-weight:400}.kp-modal__how-it-works{display:flex;flex-direction:column;gap:var(--kp-hiw-gap);padding:var(--kp-space-4) var(--kp-space-6)}.kp-modal__how-it-works h3{font-size:var(--kp-hiw-title-font-size);line-height:var(--kp-hiw-title-line);font-weight:var(--kp-font-headline-2-weight);color:var(--kp-color-text-default)}.kp-modal__timeline{display:grid;grid-template-rows:1fr 1fr auto;gap:var(--kp-hiw-bullet-gap)}.kp-modal__timeline-item{display:flex;align-items:baseline;gap:var(--kp-space-4);position:relative}.kp-modal__timeline-item:where(:not(:last-of-type)):before{content:"";pointer-events:none;position:absolute;top:calc(var(--kp-hiw-bullet-size) * 2);bottom:calc(var(--kp-space-4) * -1);left:calc(var(--kp-hiw-bullet-size) / 2 - var(--kp-hiw-bullet-line-width) / 2);border-left:var(--kp-hiw-bullet-line-width) solid var(--kp-hiw-connector-color)}.kp-modal__timeline-bullet{width:var(--kp-hiw-bullet-size);height:var(--kp-hiw-bullet-size);border-radius:var(--kp-radius-pill);background-color:var(--kp-hiw-bullet-bg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.kp-modal__timeline-label{flex:1;text-align:left;font-size:var(--kp-hiw-step-font-size);line-height:var(--kp-hiw-step-line);color:var(--kp-color-text-secondary);font-weight:400}@container kp-dialog (width >= 350px){.kp-modal__timeline-label{padding-right:calc(var(--kp-space-6) * 2)}}.kp-modal__timeline-label strong{font-weight:var(--kp-font-body-1-emphasis-weight)}.kp-modal__footer{display:flex;flex-direction:column}.kp-modal__actions{padding:var(--kp-space-4) var(--kp-space-5)}.kp-modal__button{display:inline-flex;align-items:center;justify-content:center;width:100%;background:var(--kp-button-bg);color:var(--kp-button-text-color);border:none;border-radius:var(--kp-button-radius);cursor:pointer;font-size:var(--kp-button-font-size);line-height:var(--kp-button-line);font-weight:var(--kp-font-body-1-emphasis-weight);padding:var(--kp-button-padding-y) var(--kp-button-padding-x);font-family:var(--kp-font-family);text-decoration:none}.kp-modal__button:focus-visible{outline:2px solid var(--kp-color-brand);outline-offset:2px}.kp-modal__legal{padding:var(--kp-space-4) var(--kp-space-6);font-size:var(--kp-legal-font-size);line-height:var(--kp-legal-line);color:var(--kp-color-text-secondary);text-align:center}.kp-modal__legal a{color:var(--kp-color-text-secondary);text-decoration:underline}.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;border:0;padding:0;margin:0}';class w{data=null;subscribers=new Set;subscribe(e){return this.subscribers.add(e),this.data!==null&&e(this.data),()=>{this.subscribers.delete(e)}}unsubscribe(e){this.subscribers.delete(e)}next(e){this.data=e,this.notify()}notify(){this.subscribers.forEach(e=>{e(this.data)})}}function P(){return{observer:new w}}const g=P(),S=(a,...e)=>e.length===0?a[0]:String.raw({raw:a},...e),I="https://cdn.kueskipay.com/widgets/assets/kueski-pay-logo.svg",M="https://cdn.kueskipay.com/widgets/assets/modal-close-button.svg",z="https://cdn.kueskipay.com/widgets/assets/modal/modal-1.svg",N="https://cdn.kueskipay.com/widgets/assets/modal/modal-2.svg",D="https://cdn.kueskipay.com/widgets/assets/modal/modal-3.svg";function K(a){if(!a)return"";let e=a.toLowerCase();return e=e.normalize("NFD").replace(/[\u0300-\u036f]/g,""),e=e.replace(/\s+/g,"_"),e=e.replace(/[^a-z0-9_]/g,""),e=e.replace(/_+/g,"_"),e=e.replace(/^_+|_+$/g,""),e}function O({merchantName:a}){const e=K(a),t=`${s.VITE_KUESKI_PAY_CREATE_ACCOUNT}/pay/registro?utm_source=kskksk&utm_medium=o_web&utm_campaign=registro_modal&utm_term=${e}`;return S`
`}function W(a,e){const t=Math.trunc(Math.abs((e-a)/1e3));return Math.max(t,1)}class $ extends HTMLElement{ROOT_CLASS="kp-modal";OPEN_MODIFIER="kp-modal--open";shadow;modalEventUnsubscribe=null;constructor(){super(),this.shadow=this.attachShadow({mode:"open"});const e=document.createElement("style");e.textContent=L,this.shadow.appendChild(e)}cleanup(){this.modalEventUnsubscribe?.(),this.modalEventUnsubscribe=null}connectedCallback(){this.isConnected&&(this.cleanup(),this.modalEventUnsubscribe=g.observer.subscribe(e=>{switch(e.type){case"show.kp.modal":this.open(e.data),g.observer.next({type:"shown.kp.modal",data:e.data});break;case"hide.kp.modal":this.close(),g.observer.next({type:"hidden.kp.modal",data:e.data});break}}))}disconnectedCallback(){this.cleanup()}getModalElement(){return this.shadow.querySelector(`.${this.ROOT_CLASS}`)}bindCloseHandler(e){const t=this.getModalElement();if(!t)return;const i=t.querySelector("[data-kp-dismiss=modal]");if(!i)return;function o(){const n=Date.now(),l=W(e.openedTime||n,n);g.observer.next({type:"hide.kp.modal",data:{merchantName:e.merchantName,platform:e.platform,modalTrigger:e.modalTrigger,activeDuration:l,time:n}})}i.tagName!=="BUTTON"&&(i.setAttribute("role","button"),i.setAttribute("tabindex","0"),i.addEventListener("keydown",n=>{(n.key==="Enter"||n.key===" ")&&o()})),i.addEventListener("click",o),t.addEventListener("click",n=>{n.target===t&&o()})}open(e){this.render(e),this.style.display===""&&(this.style.display="initial");const t=this.getModalElement();t&&t.classList.add(this.OPEN_MODIFIER)}close(){const e=this.getModalElement();e&&e.classList.remove(this.OPEN_MODIFIER)}render(e){let t=this.shadow.querySelector(`.${this.ROOT_CLASS}`);t||(t=document.createElement("div"),t.classList.add(this.ROOT_CLASS)),t.innerHTML=O(e),this.shadow.appendChild(t),this.bindCloseHandler(e)}}const U={install(){customElements.get(s.MODAL_ELEMENT_NAME)||customElements.define(s.MODAL_ELEMENT_NAME,$)}};function G(a){const{initialParams:e}=a,t=document.getElementById(s.WIDGET_TAG_ID);let i=e;return{set params(o){i=o},get params(){if(i)return i;if(!t)throw new Error(`KueskiPayTag script tag with id '${s.WIDGET_TAG_ID}' not found`);return i=R(t.src),i}}}function R(a){return Object.fromEntries(new URL(a).searchParams)}const m=G({initialParams:null}),v="[KueskiPay]",r={log:(...a)=>{console.log(v,...a)},table:(...a)=>{console.table(...a),console.log("------")},warn:(...a)=>{console.warn(v,...a)},error:(...a)=>{console.error(v,...a)}},E="1.0.5",x="kpay_widget_merchant_cache",B=1e3*60*60*24,j=1e3*60*60*24*3,b={getCached(a){try{s.MERCHANT_CACHE_ENABLED;const e=localStorage.getItem(x);if(!e)return null;const t=JSON.parse(e);return t.version!==E?(this.clearCache(),null):t.apiKey!==a?(this.clearCache(),null):Date.now()-t.timestampB:!0}catch{return!0}},setCache(a,e){try{s.MERCHANT_CACHE_ENABLED;const t={data:a,timestamp:Date.now(),version:E,apiKey:e};localStorage.setItem(x,JSON.stringify(t))}catch(t){r.warn("Cache write error:",t)}},isEqual(a,e){try{return JSON.stringify(a.data)===JSON.stringify(e)}catch(t){return r.warn("Cache comparison error:",t),!1}},clearCache(){try{localStorage.removeItem(x)}catch(a){r.warn("Cache clear error:",a)}}};let y=null;function H({signal:a}){return y||(window.KueskiPayCampaigns?.loaded?Promise.resolve():(y=new Promise((e,t)=>{const i="kueskipay-campaigns-script",o=document.getElementById(i);if(o){window.KueskiPayCampaigns?.loaded?e():(o.addEventListener("load",()=>{e()},{signal:a}),o.addEventListener("error",()=>{t(new Error("Failed to load campaigns script"))},{signal:a}));return}const n=document.createElement("script");n.id=i,n.type="text/javascript",n.async=!0,n.src=`${s.KUESKI_PAY_CDN_BASE_URL}/widgets/campaigns.js`,n.onload=()=>{window.KueskiPayCampaigns?.loaded?e():t(new Error("Campaigns script loaded but API not available"))},n.onerror=()=>{t(new Error("Failed to load campaigns script"))},document.head.appendChild(n)}),y))}async function Y(a){const e=new AbortController;try{return await H({signal:e.signal}),window.KueskiPayCampaigns?.tryCampaignData?window.KueskiPayCampaigns.tryCampaignData(a):(r.warn("Campaigns API not available after loading script"),null)}catch(t){return r.error("Failed to load campaigns:",t),null}finally{e.abort()}}function q(){const a=new w,e=m.params.sandbox==="true"?s.KUESKI_PAY_API_STAGING_BASE_URL:s.KUESKI_PAY_API_BASE_URL;return{fetch(){const t=m.params.authorization??"",i=b.getCached(t),o=b.isCacheExpired(i);if(i&&!o){a.next(i.data);return}i&&a.next(i.data),fetch(`${e}/v1/configurations?widget_type=product_widget`,{method:"GET",headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Bearer ${t}`}}).then(async n=>{if(!n.ok)throw new Error("Error fetching merchant data");const l=await n.json(),c=await Y(l.data),d={...l.data,campaign:c};(!i||!b.isEqual(i,d))&&(b.setCache(d,t),a.next(d))}).catch(n=>{r.error("API fetch failed:",n),i&&(r.warn("API failed, using cached data as fallback"),a.next(i.data))})},observer:a,buildMerchantOffer(t){const{merchantData:{merchantLimits:i},purchaseAmount:o}=t;function n(){const c={maxAmount:i.maxAmount,minAmount:i.minAmount};return o>i.maxAmount?{status:"error",code:"amount_exceeds_merchant_limits",reason:`Purchase amount [${o}] is greater than merchant limit max amount [${i.maxAmount}]`}:c.minAmount>i.maxAmount?{status:"error",code:"amount_exceeds_merchant_limits",reason:`Best offer min amount [${c.minAmount}] is greater than merchant limit max amount [${i.maxAmount}]`}:{status:"ok",code:o`}function C(){return["

","Paga en hasta 12 quincenas con ",'',f(),""," sin comisiones ocultas. ",'¡Conócenos!',"

"].join("")}function Q({coupon:a,discount:e}){return["

",`Hasta ${e} de descuento con `,'',f(),"",` Sin pago inicial. Cupón: ${a} `,'¡Conócenos!',"

"].join("")}function Z({coupon:a,discount:e}){return["

",`Hasta ${e} de descuento en tu primera compra con `,'',f(),"",` Sin pago inicial. Cupón: ${a} `,'',"

"].join("")}function ee({coupon:a,discount:e}){return["

",`Hasta ${e} de dto. Usa ${a} en tu 1a compra desde la página de `,'',f(),""," Sin pago inicial. ",'',"

"].join("")}function te({discount:a}){return["

",`${a} de cashback pagando con `,'',f(),"",' Consulta TyC',"

"].join("")}const ae=["data-kpay-widget-type","data-kpay-widget-amount","data-kpay-widget-product-name","data-kpay-widget-color-scheme","data-kpay-widget-font-size","data-kpay-widget-text-align","data-kpay-widget-px","data-kpay-widget-py","data-kpay-widget-link-color"];class ie extends HTMLElement{ROOT_CLASS="kp-widget-root";shadow;ds;merchantEventUnsubscribe=null;isLocationOverridden=!1;constructor(){super(),this.shadow=this.attachShadow({mode:"open"})}connectedCallback(){const e=document.createElement("style");e.textContent=F,this.shadow.appendChild(e),this.render()}setDatasetValues(){this.ds={kpayWidgetType:this.dataset.kpayWidgetType||"product",kpayWidgetProductName:this.dataset.kpayWidgetProductName??"",kpayWidgetAmount:this.dataset.kpayWidgetAmount||"0",kpayWidgetPaddingX:this.dataset.kpayWidgetPx??null,kpayWidgetPaddingY:this.dataset.kpayWidgetPy??null,kpayWidgetLinkColor:this.dataset.kpayWidgetLinkColor??null}}cleanup(){this.merchantEventUnsubscribe?.(),this.merchantEventUnsubscribe=null}handleOverrideLocation(e){if(!this.isLocationOverridden){this.isLocationOverridden=!0;try{const t=e.attach_selector;if(!t)return;const{origin:i,target:o,parent:n}=t;if(!i||!o){r.warn("Invalid attach selector",t);return}if(this!==document.querySelector(i)){r.warn("Widget element does not match origin selector",t,this);return}const[l,...c]=document.querySelectorAll(o);if(!l||c.length>0){r.warn(`Expected 1 element to override widget location, found ${c.length+1} elements`);return}const d=n?this.closest(n):this;if(!d){r.warn(`Widget element does not match parent selector: ${n}`,this);return}const{marginTop:k,paddingTop:h}=window.getComputedStyle(d);k&&(d.style.marginBottom=k,d.style.marginTop="0"),h&&(d.style.paddingBottom=h,d.style.paddingTop="0"),l.insertAdjacentElement("afterend",d)}catch(t){r.error("Error overriding widget location",t)}}}disconnectedCallback(){this.cleanup()}render(){this.cleanup(),this.setDatasetValues(),this.merchantEventUnsubscribe=_.observer.subscribe(e=>{this.handleOverrideLocation(e.configuration);const t=Number.parseFloat(this.ds.kpayWidgetAmount)/100,i=_.buildMerchantOffer({merchantData:e,purchaseAmount:t}),o=X({merchantData:{...e,offer:i}});A.observer.next({type:"init",data:{merchantName:e.merchantName,widgetType:this.ds.kpayWidgetType,sandbox:m.params.sandbox?.toLowerCase()==="true",rendered:!!o,productName:this.ds.kpayWidgetProductName||null,platform:m.params.integration,version:m.params.version,merchantLimits:e.merchantLimits,offer:i}});let n=this.shadow.querySelector(`.${this.ROOT_CLASS}`);if(n||(n=document.createElement("div"),n.classList.add(this.ROOT_CLASS),n.setAttribute("data-testid","widget-root")),!o){this.style.display="none",n.innerHTML="";return}this.style.display==="none"&&this.style.removeProperty("display"),this.style.display===""&&(this.style.display="initial"),this.ds.kpayWidgetPaddingX&&n.style.setProperty("--kp-padding-x",this.ds.kpayWidgetPaddingX),this.ds.kpayWidgetPaddingY&&n.style.setProperty("--kp-padding-y",this.ds.kpayWidgetPaddingY),this.ds.kpayWidgetLinkColor&&n.style.setProperty("--kp-link-color",this.ds.kpayWidgetLinkColor),n.innerHTML=o.html,this.shadow.appendChild(n),n.querySelectorAll("[data-kp-toggle=modal]").forEach(l=>{l.addEventListener("click",()=>{g.observer.next({type:"show.kp.modal",data:{merchantName:e.merchantName,platform:m.params.integration,modalTrigger:"conoce_mas",openedTime:Date.now()}})})})})}attributeChangedCallback(e,t,i){t!==i&&this.render()}static get observedAttributes(){return ae}}const T={install(){customElements.get(s.WIDGET_ELEMENT_NAME)||customElements.define(s.WIDGET_ELEMENT_NAME,ie)}},ne=new Set(["Philips","Quotidien","Derma Express","Farmacias Alicia","Máscara De Látex"]);function oe(a){const{getGtagParameters:e}=a,[t,i,o]=e();let n=!1;function l(p,u){o.push({event:p,...u})}function c(p){if(n||(n=!0,ne.has(p.merchantName)))return;const u=document.createElement("script");u.src=`https://www.googletagmanager.com/gtag/js?id=${t}&l=${i}`,u.async=!0,u.onload=()=>{},u.onerror=()=>{r.error("Error loading Google Tag Manager script")},document.head.appendChild(u)}let d=null,k=null,h=null;function le(){d?.(),k?.(),h?.(),d=null,k=null,h=null}return{install(){le(),d=A.observer.subscribe(p=>{switch(p.type){case"init":l("widget.init",{...p.data,time:Date.now()});break}}),k=g.observer.subscribe(p=>{switch(p.type){case"shown.kp.modal":l("widget.modal.open",{...p.data,time:Date.now()});break;case"hidden.kp.modal":l("widget.modal.close",{...p.data,time:Date.now()});break}}),h=_.observer.subscribe(p=>{c(p)})}}}const re=oe({getGtagParameters(){const a=s.GTAG_ID,e=s.GTAG_DATA_LAYER_KEY,t=window[e]??=[];return t.push({"gtm.start":Date.now(),event:"gtm.js"}),[a,e,t]}});class se{vtexExtraData={};initialized=!1;constructor(e={}){e.kueskiPayTagParams&&(m.params=e.kueskiPayTagParams),this.vtexExtraData={...m.params,data:{...e}}}init(){if(this.initialized){r.warn("KueskiPayAdvertising is already initialized");return}this.initialized=!0;const{integration:e}=m.params;switch(e){case"shopify":this.loadWidget();break;case"vtex":this.loadVtexWidget();break;default:r.warn(`Integrations with value '${e}' is missing`),this.loadWidget();break}}loadWidget(){_.fetch(),T.install(),U.install(),re.install();let e=document.body.querySelector(s.MODAL_ELEMENT_NAME);e||(e=document.createElement(s.MODAL_ELEMENT_NAME),document.body.appendChild(e)),this.ensureWidgetIsInstalled(s.WIDGET_ELEMENT_NAME).then(t=>{r.log("Widget installation ensured",{notDefinedElementsFound:t})}).catch(t=>{r.error("Failed to ensure widget installation",t)})}loadVtexWidget(){const e=document.createElement("script");e.type="text/javascript",e.id="vtex-widget",e.src=`${s.KUESKI_PAY_CDN_BASE_URL}/widgets/js/vtex.js`,e.async=!0,e.onload=()=>{setTimeout(()=>{new VtexAdvertising({...this.vtexExtraData}).load()},1500)},e.onerror=()=>{r.error("Error loading Vtex widget")},document.head.appendChild(e)}async ensureWidgetIsInstalled(e){const t=document.body.querySelectorAll(`${e}:not(:defined)`);if(t.length>0)T.install(),r.warn(`Found ${t.length} undefined custom elements. Waiting for them to be defined.`);else return t.length;const i=[...t].map(o=>customElements.whenDefined(o.localName));return await Promise.all(i),t.forEach(o=>{const n=o.cloneNode();o.before(n),o.replaceWith(n)}),r.log("Undefined elements: ",t),t.length}}window.KueskipayAdvertising=se}));