PageSourceSearch

https://www.hagi.com.pl/theme/a8d927afccd27f286556d3dcba21238b/js/…/cr-blik-payment.e30bd2.js

js hagi.com.pl collected 2026-10-03 21:34:03 UTC 10,293 bytes, 4 lines download raw bytes

1"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[4654],{156:t=>{var e=function(t){var e;return!!t&&"object"==typeof t&&"[object RegExp]"!==(e=Object.prototype.toString.call(t))&&"[object Date]"!==e&&t.$$typeof!==r},r="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function i(t,e){return!1!==e.clone&&e.isMergeableObject(t)?a(Array.isArray(t)?[]:{},t,e):t}function s(t,e,r){return t.concat(e).map(function(t){return i(t,r)})}function n(t){return Object.keys(t).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(t).filter(function(e){return Object.propertyIsEnumerable.call(t,e)}):[])}function o(t,e){try{return e in t}catch(t){return!1}}function a(t,r,l){(l=l||{}).arrayMerge=l.arrayMerge||s,l.isMergeableObject=l.isMergeableObject||e,l.cloneUnlessOtherwiseSpecified=i;var u,h,c=Array.isArray(r);return c!==Array.isArray(t)?i(r,l):c?l.arrayMerge(t,r,l):(h={},(u=l).isMergeableObject(t)&&n(t).forEach(function(e){h[e]=i(t[e],u)}),n(r).forEach(function(e){(!o(t,e)||Object.hasOwnProperty.call(t,e)&&Object.propertyIsEnumerable.call(t,e))&&(o(t,e)&&u.isMergeableObject(r[e])?h[e]=(function(t,e){if(!e.customMerge)return a;var r=e.customMerge(t);return"function"==typeof r?r:a})(e,u)(t[e],r[e],u):h[e]=i(r[e],u))}),h)}a.all=function(t,e){if(!Array.isArray(t))throw Error("first argument should be an array");return t.reduce(function(t,r){return a(t,r,e)},{})},t.exports=a},76:(t,e,r)=>{r.r(e),r.d(e,{default:()=>n});var i=r(373),s=r(68);class n extends i.A{static #t=this.options={blikInputSelector:"#crehlerBlikCode",checkoutConfirmFormSelector:"#confirmOrderForm",orderButtonSelector:"#confirmFormSubmit",errorContainerSelector:".blik-error-container",url:"",accessKey:"",loadingClass:"is-loading",errorMessages:{invalidCode:"Kod BLIK musi mieć 6 cyfr",processingError:"Wystąpił błąd podczas przetwarzania płatności BLIK",networkError:"Błąd połączenia. Spróbuj ponownie."}};init(){this._blikInput=document.querySelector(this.options.blikInputSelector),this._checkoutForm=document.querySelector(this.options.checkoutConfirmFormSelector),this._orderButton=document.querySelector(this.options.orderButtonSelector),this._client=new s.A,this._isProcessing=!1,this._originalButtonText=null;let t=document.querySelector("[data-cr-blik]"),e=t?t.querySelector('input[name="paymentMethodId"]'):null;this._blikMethodId=e?e.value:null,this._blikInput&&this._checkoutForm&&this._orderButton&&(this._createErrorContainer(),this._registerEvents())}_createErrorContainer(){let t=this._blikInput.parentElement.querySelector(this.options.errorContainerSelector);t||((t=document.createElement("div")).className="blik-error-container alert alert-danger mt-2",t.style.display="none",this._blikInput.parentElement.appendChild(t)),this._errorContainer=t}_registerEvents(){this._checkoutForm.addEventListener("submit",this._onFormSubmit.bind(this),!0),this._orderButton.addEventListener("click",this._onButtonClick.bind(this)),this._blikInput.addEventListener("input",this._onBlikInputChange.bind(this))}_onBlikInputChange(){this._hideError(),this._blikInput.classList.remove("is-invalid")}_onButtonClick(t){this._isBlikSelected()&&!this._isProcessing&&(t.preventDefault(),this._processBlikPayment())}_onFormSubmit(t){if(this._isBlikSelected()&&!this._isProcessing)return t.preventDefault(),t.stopPropagation(),this._processBlikPayment(),!1}_isBlikSelected(){if(!this._blikMethodId)return!1;let t=document.querySelector('input[name="paymentMethodId"]:checked');return t&&t.value===this._blikMethodId}_processBlikPayment(){let t=this._blikInput.value;if(this._hideError(),!this._validateBlikCode(t)){this._showError(this.options.errorMessages.invalidCode),this._blikInput.classList.add("is-invalid"),this._blikInput.focus();return}let e=document.querySelector('input[name="paymentMethodId"]:checked');this._setLoadingState(!0),this._client.post(this.options.url,JSON.stringify({blikCode:t,paymentMethodId:e.value}),this._handleBlikResponse.bind(this))}_setLoadingState(t){this._isProcessing=t,t?(this._originalButtonText=this._orderButton.innerHTML,this._orderButton.disabled=!0,this._orderButton.classList.add(this.options.loadingClass),this._orderButton.innerHTML=`
2                <span class="spinner-border spinner-border-sm me-2" role="status" aria-hidden="true"></span>
3                Przetwarzanie...
4            `,this._blikInput.disabled=!0):(this._orderButton.disabled=!1,this._orderButton.classList.remove(this.options.loadingClass),this._originalButtonText&&(this._orderButton.innerHTML=this._originalButtonText),this._blikInput.disabled=!1)}_handleBlikResponse(t){try{let e=JSON.parse(t);if(!0===e.redirect&&null!=e.location){window.location.replace(e.location);return}this._setLoadingState(!1),this._showError(e.message||this.options.errorMessages.processingError)}catch(t){this._setLoadingState(!1),this._showError(this.options.errorMessages.networkError)}}_showError(t){this._errorContainer&&(this._errorContainer.textContent=t,this._errorContainer.style.display="block")}_hideError(){this._errorContainer&&(this._errorContainer.style.display="none",this._errorContainer.textContent="")}_validateBlikCode(t){let e=t.replace(/\s/g,"");return/^\d{6}$/.test(e)}}},373:(t,e,r)=>{r.d(e,{A:()=>a});var i=r(156),s=r.n(i);class n{static ucFirst(t){return t.charAt(0).toUpperCase()+t.slice(1)}static lcFirst(t){return t.charAt(0).toLowerCase()+t.slice(1)}static toDashCase(t){return t.replace(/([A-Z])/g,"-$1").replace(/^-/,"").toLowerCase()}static toLowerCamelCase(t,e){let r=n.toUpperCamelCase(t,e);return n.lcFirst(r)}static toUpperCamelCase(t,e){return e?t.split(e).map(t=>n.ucFirst(t.toLowerCase())).join(""):n.ucFirst(t.toLowerCase())}static parsePrimitive(t){try{return/^\d+(.|,)\d+$/.test(t)&&(t=t.replace(",",".")),JSON.parse(t)}catch(e){return t.toString()}}}class o{constructor(t=document){this._el=t,t.$emitter=this,this._listeners=[]}publish(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=new CustomEvent(t,{detail:e,cancelable:r});return this.el.dispatchEvent(i),i}subscribe(t,e){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=this,s=t.split("."),n=r.scope?e.bind(r.scope):e;if(r.once&&!0===r.once){let e=n;n=function(r){i.unsubscribe(t),e(r)}}return this.el.addEventListener(s[0],n),this.listeners.push({splitEventName:s,opts:r,cb:n}),!0}unsubscribe(t){let e=t.split(".");return this.listeners=this.listeners.reduce((t,r)=>([...r.splitEventName].sort().toString()===e.sort().toString()?this.el.removeEventListener(r.splitEventName[0],r.cb):t.push(r),t),[]),!0}reset(){return this.listeners.forEach(t=>{this.el.removeEventListener(t.splitEventName[0],t.cb)}),this.listeners=[],!0}get el(){return this._el}set el(t){this._el=t}get listeners(){return this._listeners}set listeners(t){this._listeners=t}}class a{constructor(t,e={},r=!1){if(!(t instanceof Node)){console.warn(`There is no valid element given while trying to create a plugin instance for "${r}".`);return}this.el=t,this.$emitter=new o(this.el),this._pluginName=this._getPluginName(r),this.options=this._mergeOptions(e),this._initialized=!1,this._registerInstance(),this._init()}init(){console.warn(`The "init" method for the plugin "${this._pluginName}" is not defined. The plugin will not be initialized.`)}update(){}_init(){this._initialized||(this.init(),this._initialized=!0)}_update(){this._initialized&&this.update()}_mergeOptions(t){let e=[this.constructor.options,this.options,t];return e.push(this._getConfigFromDataAttribute()),e.push(this._getOptionsFromDataAttribute()),s().all(e.filter(t=>t instanceof Object&&!(t instanceof Array)).map(t=>t||{}))}_getConfigFromDataAttribute(){let t={};if("function"!=typeof this.el.getAttribute)return t;let e=n.toDashCase(this._pluginName),r=this.el.getAttribute(`data-${e}-config`);return r?window.PluginConfigManager.get(this._pluginName,r):t}_getOptionsFromDataAttribute(){let t={};if("function"!=typeof this.el.getAttribute)return t;let e=n.toDashCase(this._pluginName),r=this.el.getAttribute(`data-${e}-options`);if(r)try{return JSON.parse(r)}catch(t){console.error(`The data attribute "data-${e}-options" could not be parsed to json: ${t.message}`)}return t}_registerInstance(){window.PluginManager.getPluginInstancesFromElement(this.el).set(this._pluginName,this),window.PluginManager.getPlugin(this._pluginName,!1).get("instances").push(this)}_getPluginName(t){return t||(t=this.constructor.name),t}}},68:(t,e,r)=>{r.d(e,{A:()=>i});class i{constructor(){this._request=null,this._errorHandlingInternal=!1}get(t,e){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"application/json",i=this._createPreparedRequest("GET",t,r);return this._sendRequest(i,null,e)}post(t,e,r){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";i=this._getContentType(e,i);let s=this._createPreparedRequest("POST",t,i);return this._sendRequest(s,e,r)}delete(t,e,r){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";i=this._getContentType(e,i);let s=this._createPreparedRequest("DELETE",t,i);return this._sendRequest(s,e,r)}patch(t,e,r){let i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"application/json";i=this._getContentType(e,i);let s=this._createPreparedRequest("PATCH",t,i);return this._sendRequest(s,e,r)}
4abort(){if(this._request)return this._request.abort()}setErrorHandlingInternal(t){this._errorHandlingInternal=t}_registerOnLoaded(t,e){e&&(!0===this._errorHandlingInternal?(t.addEventListener("load",()=>{e(t.responseText,t)}),t.addEventListener("abort",()=>{console.warn(`the request to ${t.responseURL} was aborted`)}),t.addEventListener("error",()=>{console.warn(`the request to ${t.responseURL} failed with status ${t.status}`)}),t.addEventListener("timeout",()=>{console.warn(`the request to ${t.responseURL} timed out`)})):t.addEventListener("loadend",()=>{e(t.responseText,t)}))}_sendRequest(t,e,r){return this._registerOnLoaded(t,r),t.send(e),t}_getContentType(t,e){return t instanceof FormData&&(e=!1),e}_createPreparedRequest(t,e,r){return this._request=new XMLHttpRequest,this._request.open(t,e),this._request.setRequestHeader("X-Requested-With","XMLHttpRequest"),r&&this._request.setRequestHeader("Content-type",r),this._request}}}}]);

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.