1(()=>{"use strict";var e={857:e=>{var t=function(e){var t;return!!e&&"object"==typeof e&&"[object RegExp]"!==(t=Object.prototype.toString.call(e))&&"[object Date]"!==t&&e.$$typeof!==n},n="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function r(e,t){return!1!==t.clone&&t.isMergeableObject(e)?s(Array.isArray(e)?[]:{},e,t):e}function i(e,t,n){return e.concat(t).map(function(e){return r(e,n)})}function a(e){return Object.keys(e).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[])}function o(e,t){try{return t in e}catch(e){return!1}}function s(e,n,l){(l=l||{}).arrayMerge=l.arrayMerge||i,l.isMergeableObject=l.isMergeableObject||t,l.cloneUnlessOtherwiseSpecified=r;var c,d,u=Array.isArray(n);return u!==Array.isArray(e)?r(n,l):u?l.arrayMerge(e,n,l):(d={},(c=l).isMergeableObject(e)&&a(e).forEach(function(t){d[t]=r(e[t],c)}),a(n).forEach(function(t){(!o(e,t)||Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))&&(o(e,t)&&c.isMergeableObject(n[t])?d[t]=(function(e,t){if(!t.customMerge)return s;var n=t.customMerge(e);return"function"==typeof n?n:s})(t,c)(e[t],n[t],c):d[t]=r(n[t],c))}),d)}s.all=function(e,t){if(!Array.isArray(e))throw Error("first argument should be an array");return e.reduce(function(e,n){return s(e,n,t)},{})},e.exports=s}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var a=t[r]={exports:{}};return e[r](a,a.exports,n),a.exports}(()=>{n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t}})(),(()=>{n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}})(),(()=>{n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{var e=n(857),t=n.n(e);class r{static ucFirst(e){return e.charAt(0).toUpperCase()+e.slice(1)}static lcFirst(e){return e.charAt(0).toLowerCase()+e.slice(1)}static toDashCase(e){return e.replace(/([A-Z])/g,"-$1").replace(/^-/,"").toLowerCase()}static toLowerCamelCase(e,t){let n=r.toUpperCamelCase(e,t);return r.lcFirst(n)}static toUpperCamelCase(e,t){return t?e.split(t).map(e=>r.ucFirst(e.toLowerCase())).join(""):r.ucFirst(e.toLowerCase())}static parsePrimitive(e){try{return/^\d+(.|,)\d+$/.test(e)&&(e=e.replace(",",".")),JSON.parse(e)}catch(t){return e.toString()}}}class i{static isNode(e){return"object"==typeof e&&null!==e&&(e===document||e===window||e instanceof Node)}static hasAttribute(e,t){if(!i.isNode(e))throw Error("The element must be a valid HTML Node!");return"function"==typeof e.hasAttribute&&e.hasAttribute(t)}static getAttribute(e,t){let n=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(n&&!1===i.hasAttribute(e,t))throw Error('The required property "'.concat(t,'" does not exist!'));if("function"!=typeof e.getAttribute){if(n)throw Error("This node doesn't support the getAttribute function!");return}return e.getAttribute(t)}static getDataAttribute(e,t){let n=!(arguments.length>2)||void 0===arguments[2]||arguments[2],a=t.replace(/^data(|-)/,""),o=r.toLowerCamelCase(a,"-");if(!i.isNode(e)){if(n)throw Error("The passed node is not a valid HTML Node!");return}if(void 0===e.dataset){if(n)throw Error("This node doesn't support the dataset attribute!");return}let s=e.dataset[o];if(void 0===s){if(n)throw Error('The required data attribute "'.concat(t,'" does not exist on ').concat(e,"!"));return s}return r.parsePrimitive(s)}static querySelector(e,t){let n=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(n&&!i.isNode(e))throw Error("The parent node is not a valid HTML Node!");let r=e.querySelector(t)||!1;if(n&&!1===r)throw Error('The required element "'.concat(t,'" does not exist in parent node!'));return r}static querySelectorAll(e,t){let n=!(arguments.length>2)||void 0===arguments[2]||arguments[2];if(n&&!i.isNode(e))throw Error("The parent node is not a valid HTML Node!");let r=e.querySelectorAll(t);if(0===r.length&&(r=!1),n&&!1===r)throw Error('At least one item of "'.concat(t,'" must exist in parent node!'));return r}static getFocusableElements(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document.body;return e.querySelectorAll('\n input:not([tabindex^="-"]):not([disabled]):not([type="hidden"]),\n select:not([tabindex^="-"]):not([disabled]),\n textarea:not([tabindex^="-"]):not([disabled]),\n button:not([tabindex^="-"]):not([disabled]),\n a[href]:not([tabindex^="-"]):not([disabled]),\n [tabindex]:not
1([tabindex^="-"]):not([disabled])\n ')}static getFirstFocusableElement(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document.body;return this.getFocusableElements(e)[0]}static getLastFocusableElement(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document,t=this.getFocusableElements(e);return t[t.length-1]}}class a{publish(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=new CustomEvent(e,{detail:t,cancelable:n});return this.el.dispatchEvent(r),r}subscribe(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=this,i=e.split("."),a=n.scope?t.bind(n.scope):t;if(n.once&&!0===n.once){let t=a;a=function(n){r.unsubscribe(e),t(n)}}return this.el.addEventListener(i[0],a),this.listeners.push({splitEventName:i,opts:n,cb:a}),!0}unsubscribe(e){let t=e.split(".");return this.listeners=this.listeners.reduce((e,n)=>([...n.splitEventName].sort().toString()===t.sort().toString()?this.el.removeEventListener(n.splitEventName[0],n.cb):e.push(n),e),[]),!0}reset(){return this.listeners.forEach(e=>{this.el.removeEventListener(e.splitEventName[0],e.cb)}),this.listeners=[],!0}get el(){return this._el}set el(e){this._el=e}get listeners(){return this._listeners}set listeners(e){this._listeners=e}constructor(e=document){this._el=e,e.$emitter=this,this._listeners=[]}}class o{init(){throw Error('The "init" method for the plugin "'.concat(this._pluginName,'" is not defined.'))}update(){}_init(){this._initialized||(this.init(),this._initialized=!0)}_update(){this._initialized&&this.update()}_mergeOptions(e){let n=r.toDashCase(this._pluginName),a=i.getDataAttribute(this.el,"data-".concat(n,"-config"),!1),o=i.getAttribute(this.el,"data-".concat(n,"-options"),!1),s=[this.constructor.options,this.options,e];a&&s.push(window.PluginConfigManager.get(this._pluginName,a));try{o&&s.push(JSON.parse(o))}catch(e){throw console.error(this.el),Error('The data attribute "data-'.concat(n,'-options" could not be parsed to json: ').concat(e.message))}return t().all(s.filter(e=>e instanceof Object&&!(e instanceof Array)).map(e=>e||{}))}_registerInstance(){window.PluginManager.getPluginInstancesFromElement(this.el).set(this._pluginName,this),window.PluginManager.getPlugin(this._pluginName,!1).get("instances").push(this)}_getPluginName(e){return e||(e=this.constructor.name),e}constructor(e,t={},n=!1){if(!i.isNode(e))throw Error("There is no valid element given.");this.el=e,this.$emitter=new a(this.el),this._pluginName=this._getPluginName(n),this.options=this._mergeOptions(t),this._initialized=!1,this._registerInstance(),this._init()}}class s{static iterate(e,t){if(e instanceof Map||Array.isArray(e))return e.forEach(t);if(e instanceof FormData){for(var n of e.entries())t(n[1],n[0]);return}if(e instanceof NodeList)return e.forEach(t);if(e instanceof HTMLCollection)return Array.from(e).forEach(t);if(e instanceof Object)return Object.keys(e).forEach(n=>{t(e[n],n)});throw Error("The element type ".concat(typeof e," is not iterable!"))}}let l="loader",c={BEFORE:"before",INNER:"inner"};class d{create(){if(!this.exists()){if(this.position===c.INNER){this.parent.innerHTML=d.getTemplate();return}this.parent.insertAdjacentHTML(this._getPosition(),d.getTemplate())}}remove(){let e=this.parent.querySelectorAll(".".concat(l));s.iterate(e,e=>e.remove())}exists(){return this.parent.querySelectorAll(".".concat(l)).length>0}_getPosition(){return this.position===c.BEFORE?"afterbegin":"beforeend"}static getTemplate(){return'<div class="'.concat(l,'" role="status">\n <span class="').concat("visually-hidden",'">Loading...</span>\n </div>')}static SELECTOR_CLASS(){return l}constructor(e,t=c.BEFORE){this.parent=e instanceof Element?e:document.body.querySelector(e),this.position=t}}class u{static isTouchDevice(){return"ontouchstart"in document.documentElement}static isIOSDevice(){return u.isIPhoneDevice()||u.isIPadDevice()}static isNativeWindowsBrowser(){return u.isIEBrowser()||u.isEdgeBrowser()}static isIPhoneDevice(){return!!navigator.userAgent.match(/iPhone/i)}static isIPadDevice(){return!!navigator.userAgent.match(/iPad/i)}static isIEBrowser(){return -1!==navigator.userAgent.toLowerCase().indexOf("msie")||!!navigator.userAgent.match(/Trident.*rv:\d+\./)}static isEdgeBrowser(){return!!navigator.userAgent.match(/Edge\/\d+/i)}static getList(){return{"is-touch":u.isTouchDevice(),"is-ios":u.isIOSDevice(),"is-native-windows":u.isNativeWindowsBrowser(),"is-iphone":u.isIPhoneDevice(),"is-ipad":u.isIPadDevice(),"is-ie"
1:u.isIEBrowser(),"is-edge":u.isEdgeBrowser()}}}let h="modal-backdrop",m="modal-backdrop-open",p="no-scroll",g={ON_CLICK:"backdrop/onclick"};class _{create(e){this._removeExistingBackdrops(),document.body.insertAdjacentHTML("beforeend",this._getTemplate());let t=document.body.lastChild;document.documentElement.classList.add(p),setTimeout(function(){t.classList.add(m),"function"==typeof e&&e()},75),this._dispatchEvents()}remove(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:350,t=this._getBackdrops();s.iterate(t,e=>e.classList.remove(m)),setTimeout(this._removeExistingBackdrops.bind(this),e),document.documentElement.classList.remove(p)}_dispatchEvents(){let e=u.isTouchDevice()?"touchstart":"click";document.addEventListener(e,function(e){e.target.classList.contains(h)&&document.dispatchEvent(new CustomEvent(g.ON_CLICK))})}_getBackdrops(){return document.querySelectorAll(".".concat(h))}_removeExistingBackdrops(){if(!1===this._exists())return;let e=this._getBackdrops();s.iterate(e,e=>e.remove())}_exists(){return document.querySelectorAll(".".concat(h)).length>0}_getTemplate(){return'<div class="'.concat(h,'"></div>')}constructor(){return _.instance||(_.instance=this),_.instance}}let y=Object.freeze(new _);class b{static create(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;y.create(e)}static remove(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:350;y.remove(e)}static SELECTOR_CLASS(){return h}}let f=Object.freeze(new class extends d{create(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];!this.exists()&&e&&(b.create(),document.querySelector(".".concat(b.SELECTOR_CLASS())).insertAdjacentHTML("beforeend",d.getTemplate()))}remove(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];super.remove(),e&&b.remove()}constructor(){super(document.body)}});class v{static create(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];f.create(e)}static remove(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];f.remove(e)}}let E="element-loader-backdrop";class w extends d{static create(e){e.classList.add("has-element-loader"),w.exists(e)||(w.appendLoader(e),setTimeout(()=>{let t=e.querySelector(".".concat(E));t&&t.classList.add("element-loader-backdrop-open")},1))}static remove(e){e.classList.remove("has-element-loader");let t=e.querySelector(".".concat(E));t&&t.remove()}static exists(e){return e.querySelectorAll(".".concat(E)).length>0}static getTemplate(){return'\n <div class="'.concat(E,'">\n <div class="loader" role="status">\n <span class="').concat("visually-hidden",'">Loading...</span>\n </div>\n </div>\n ')}static appendLoader(e){e.insertAdjacentHTML("beforeend",w.getTemplate())}}class C{get(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"application/json",r=this._createPreparedRequest("GET",e,n);return this._sendRequest(r,null,t)}post(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";r=this._getContentType(t,r);let i=this._createPreparedRequest("POST",e,r);return this._sendRequest(i,t,n)}delete(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";r=this._getContentType(t,r);let i=this._createPreparedRequest("DELETE",e,r);return this._sendRequest(i,t,n)}patch(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";r=this._getContentType(t,r);let i=this._createPreparedRequest("PATCH",e,r);return this._sendRequest(i,t,n)}abort(){if(this._request)return this._request.abort()}setErrorHandlingInternal(e){this._errorHandlingInternal=e}_registerOnLoaded(e,t){t&&(!0===this._errorHandlingInternal?(e.addEventListener("load",()=>{t(e.responseText,e)}),e.addEventListener("abort",()=>{console.warn("the request to ".concat(e.responseURL," was aborted"))}),e.addEventListener("error",()=>{console.warn("the request to ".concat(e.responseURL," failed with status ").concat(e.status))}),e.addEventListener("timeout",()=>{console.warn("the request to ".concat(e.responseURL," timed out"))})):e.addEventListener("loadend",()=>{t(e.responseText,e)}))}_sendRequest(e,t,n){return this._registerOnLoaded(e,n),e.send(t),e}_getContentType(e,t){return e instanceof FormData&&(t=!1),t}_createPreparedRequest(e,t,n){return this._request=new XMLHttpRequest,this._request.open(e,t),this._request.setRequestHeader("X-Requested-With","XMLHttpRequest"),n&&this._request.setRequestHeader("Content-type",n),this._request}constructor(){this._request=null,this._errorHandlingInternal=!1}}class S extends o{init(){this.el&&(this._showElement("klarnaConfirmFormSubmit"),this.options.paymentCategory&&this._disableSubmitButton(),this._createScript())}_createScript(){let e=document.createElement("script");e.type="text/javascript",e.src=this.options.url,e.addEventListener("load",this._handleScriptLoaded.bind(this),!1),document.head.appendChild(e)}_handleScriptLoaded(){try{Klarna.Payments.init({client_token:this.options.clientToken})}catch(e){this._hideElement("klarnaPaymentsContainer"),this._showElement("klarnaUnavailableError"),this.options.paymentCategory&&this._disableSubmitButton();return}let e=this;if(this.options.paymentCategory){let t=i.querySelector(document,".klarna-payment");w.create(t),e._hideElement("klarnaPaymentsContainer"),e._emptyElement("klarnaPaymentsContainer"),e._disableSubmitButton();try{Klarna.Payments.load({container:"#klarnaPaymentsContainer",payment_method_category:this.options.paymentCategory},n=>{n.show_form?(e._showElement("klarnaPaymentsContainer"),e._hideElement("klarnaUnavailableError"),e._enableSubmitButton()):(e._hideElement("klarnaPaymentsContainer"),e._showElement("klarnaUnavailableError")),w.remove(t)})}catch(t){e._hideElement("klarnaPaymentsContainer"),e._showElement("klarnaUnavailableError")}}this._handlePaymentMethodModal(),this._registerEvents()}_registerEvents(){let e=this;this._getFormSubmitButton().addEventListener("click",e._handleOrderSubmit.bind(this));let t=document.querySelectorAll("[name='paymentMethodId']");Array.prototype.forEach.call(t,t=>{t.addEventListener("change",e._handlePaymentMethodChange.bind(e))})}_handlePaymentMethodChange(e){this._hideElements("klarnaPaymentsContainerModal"),this.getKlarnaCodeFromPaymentMethod(e.target.value)&&this._showElement("klarnaPaymentsContainerModal".concat(e.target.value))}_handlePaymentMethodModal(){let e=this,t=document.querySelectorAll(".klarna-payment-method");Array.prototype.forEach.call(t,t=>{let n=t.getAttribute("id"),r=e.getKlarnaCodeFromPaymentMethod(n);try{Klarna.Payments.load({container:"#klarnaPaymentsContainerModal".concat(n),payment_method_category:r,instance_id:n},t=>{t.show_form||e._hideElement(n)})}catch(t){e._hideElement(n)}})}_hideElements(e){let t=document.getElementsByClassName(e);Array.prototype.forEach.call(t,e=>{e.hidden=!0})}_hideElement(e){let t=document.getElementById(e);t&&(t.hidden=!0)}_showElement(e){let t=document.getElementById(e);t&&(t.hidden=!1)}_emptyElement(e){let t=document.getElementById(e);t&&(t.innerHTML="")}getKlarnaCodeFromPaymentMethod(e){let t=document.getElementById(e);return t?t.getAttribute("data-klarna-code"):""}_disableSubmitButton(){let e=this._getFormSubmitButton();e&&e.setAttribute("disabled","disabled")}_enableSubmitButton(){let e=this._getFormSubmitButton();e&&e.removeAttribute("disabled")}_moveKlarnaModalContainer(e){let t=document.getElementById("klarnaModalContainer");e.parentElement.appendChild(t)}_handleOrderSubmit(e){let t=e.target.form;if((!t||!1!==t.checkValidity())&&(this.options.paymentCategory||this.options.isKlarnaExpress)&&!this.authorization){if(e.preventDefault(),v.create(),this.options.isKlarnaExpress){this._finalize();return}if(this.options.useAuthorizationCallback){this._saveFormData();return}this._createAuthorization()}}_createAuthorization(){let e=this,t=!0;try{Klarna.Payments.on("fullscreenOverlayHidden",()=>{t||this._enableSubmitButton(),Klarna.Payments.off("fullscreenOverlayHidden")}),Klarna.Payments.authorize({auto_finalize:!0,payment_method_category:this.options.paymentCategory},e.options.customerData,n=>{t=!1,n.show_form||(e._hideElement("klarnaPaymentsContainer"),e._showElement("klarnaUnavailableError")),n.approved?(Klarna.Payments.off("fullscreenOverlayHidden"),e._saveAuthorization(n),e._submitConfirmForm()):v.remove()})}catch(t){e._hideElement("klarnaPaymentsContainer"),e._showElement("klarnaUnavailableError")}}_finalize(){let e=this;new C().get(this.options.sessionDataUrl,t=>{let n=JSON.parse(t);Klarna.Payments.finalize({},n,t=>{t.show_form||e._showElement("klarnaUnavailableError"),t.approved?(e._saveAuthorization(t),e._submitConfirmForm()):v.remove()})})}_saveFormData(){new C().post(this.options.saveFormDataUrl,new FormData(document.getElementById("confirmOrderForm")),e=>{this._createAuthorization()})}_saveAuthorization(e){this.authorization=e.authorization_token,this._addAuthorizationToForm(this.authorization)}_addAuthorizationToForm(e){let t=document.getElementById("klarnaAuthorizationToken");t&&(t.value=e)}_submitConfirmForm(){let e=document.getElementById("confirmOrderForm"),t=this._getFormSubmitButton();if(e&&t){if(this._isInternetExplorer()){let t=document.querySelectorAll("[form='confirmOrderForm']");for(let n=0;n<t.length;++n)e.appendChild(t[n])}t.disabled=!1,t.click()}}_isInternetExplorer(){return void 0!==window.document.documentMode}_getFormSubmitButton(){let e=document.getElementById("confirmFormSubmit");return e||(e=document.querySelector('#confirmOrderForm button[type="submit"]')),e}}S.options={url:"https://x.klarnacdn.net/kp/lib/v1/api.js",saveFormDataUrl:"",clientToken:"",paymentCategory:"",customerData:"",useAuthorizationCallback:!1,isKlarnaExpress:!1,sessionDataUrl:""};class k extends o{init(){this.el&&(this._disableButton(),this._initClient(),this._defineKlarnaAsyncCallback(),this._createScript())}_initClient(){this._client=new C}_defineKlarnaAsyncCallback(){let e=this;window.klarnaAsyncCallback=function(){Klarna.Payments.Buttons.init({client_id:e.options.clientKey}).load({container:e.options.containerSelector,theme:e.options.theme,shape:e.options.shape,on_click:e._onClickKlarnaExpressCheckoutButton.bind(e)})}}_createScript(){let e=document.createElement("script");e.type="text/javascript",e.src=this.options.url,e.setAttribute("data-client-instance-name",this.options.clientInstanceName),e.async=!0,document.head.appendChild(e)}_onClickKlarnaExpressCheckoutButton(e){this._authorize=e,v.create(),this._defineKlarnaAsyncCallback(),this.options.addLineItem?this._addLineItem():this._getSessionDataAndCreateOrderFromAuthorization(),v.remove()}_addLineItem(){let e=this,t=null;try{t=window.PluginManager.getPluginInstances("AddToCart")[0]}catch(e){}if(!t){e._showError(!0);return}let n=t.options.redirectTo,r=t._openOffCanvasCarts;t.options.redirectTo=null,t._openOffCanvasCarts=(t,n)=>{e._client.post(t,n,()=>{e._getSessionDataAndCreateOrderFromAuthorization.bind(e)()})},this.options=e.options,t._formSubmit(new Event("submit")),t.options.redirectTo=n,t._openOffCanvasCarts=r}_getSessionDataAndCreateOrderFromAuthorization(){this._client.get(this.options.sessionDataUrl,this._authorizeAndLogin.bind(this))}_authorizeAndLogin(e){let t=JSON.parse(e),n=this;return n._authorize({collect_shipping_address:!0,auto_finalize:!1},t,e=>{!1!==e.approved&&!1!==e.finalize_required&&n._client.post(n.options.loginUrl,JSON.stringify(n._getOrderRequestPayloadFromAuthorizeResponse(e)),e=>{let t=JSON.parse(e);if(t.success){window.location.replace(t.redirectUrl);return}n._showError(!0)})}),t}_getOrderRequestPayloadFromAuthorizeResponse(e){return{klarnaClientToken:e.client_token,collectedShippingAddress:e.collected_shipping_address}}_showError(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=i.querySelector(this.el,this.options.containerSelector),n=i.querySelector(this.el,this.options.errorSelector);t.hidden=e,n.hidden=!e}_disableButton(){let e=document.querySelector("#productDetailPageBuyProductForm button.btn-buy");if(e){let t=i.querySelector(this.el,this.options.containerSelector);e.disabled?(this.el.classList.add("is-disabled"),t.classList.add("is-disabled")):(this.el.classList.remove("is-disabled"),t.classList.remove("is-disabled"))}}}k.options={url:"https://x.klarnacdn.net/kp/lib/v1/api.js",clientKey:"",clientInstanceName:"klarnaExpressCheckout",containerSelector:".klarna-express-checkout-button",errorSelector:".klarna-express-checkout-error",theme:"default",shape:"default",addLineItem:!1,sessionDataUrl:"",loginUrl:""};class A extends o{init(){this._client=new C,this._defineKlarnaSDKCallback(),this._createScript()}_defineKlarnaSDKCallback(){let e=this;window.KlarnaSDKCallback=async t=>{try{let n=await t.init({clientId:e.options.clientKey,locale:e.options.local}),r="openid offline_access payment:request:create profile:name profile:email profile:billing_address"+(e.options.dataKeys&&" "+e.options.dataKeys),i=n.Identity.button({scope:r,redirectUri:e.options.redirectUri,theme:e.options.theme,shape:e.options.shape,locale:e.options.local});n.Identity.on("signin",async t=>{let n=e.options.redirectRoute,r=e.options.errorRoute;e._client.post(e.options.callbackUrl,JSON.stringify({signinResponse:t,redirectRoute:n,errorRoute:r}),t=>{let n=JSON.parse(t);if(n.success){window.location.replace(n.redirectUrl);return}e._showError(!0)})}),n.Identity.on("error",e=>{console.log("klarna-error",e)}),i.mount("#sign-in-with-klarna")}catch(e){console.error("Fatal SIWK error",e)}}}_createScript(){let e=document.createElement("script");e.defer=!0,e.src=this.options.url,e.setAttribute("client-id",this.options.clientKey),e.setAttribute("client-instance-name",this.options.clientInstanceName),document.head.appendChild(e)}_showError(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=i.querySelector(this.el,this.options.containerSelector),n=i.querySelector(this.el,this.options.errorSelector);t.hidden=e,n.hidden=!e}}A.options={url:"https://js.klarna.com/web-sdk/v1/klarna.js",clientKey:"",clientInstanceName:"signInWithKlarna",containerSelector:".sign-in-with-klarna-button",errorSelector:".sign-in-with-klarna-error",theme:"default",shape:"default",dataKeys:"",local:"en-GB",callbackUrl:"",redirectRoute:"",errorRoute:"",redirectUri:""};let L=window.PluginManager;L.register("KlarnaPayments",S,"[data-is-klarna-payments]"),L.register("KlarnaExpressCheckout",k,"[data-is-klarna-express-checkout]"),L.register("SignInWithKlarna",A,"[data-sign-in-with-klarna]")})()})();
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.