@paydock/client-sdk 1.90.1 → 1.91.11-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -242,7 +242,7 @@
242
242
  // the empty string is set in case if version not provided.
243
243
  //
244
244
  // e.g: grunt build --sdk-version=v1.0.0
245
- SDK._version = 'v1.90.1';
245
+ SDK._version = 'v1.91.11-beta';
246
246
 
247
247
  var ENV = {
248
248
  SANDBOX: 'sandbox',
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).paydock={})}(this,function(e){"use strict";function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var K="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n=function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),e};function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t,n){null===e&&(e=Function.prototype);var i=Object.getOwnPropertyDescriptor(e,t);if(void 0===i){var r=Object.getPrototypeOf(e);return null===r?void 0:a(r,t,n)}if("value"in i)return i.value;var o=i.get;return void 0!==o?o.call(n):void 0}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function c(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var P=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},u=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],i=!0,r=!1,o=void 0;try{for(var a,s=e[Symbol.iterator]();!(i=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);i=!0);}catch(e){r=!0,o=e}finally{try{!i&&s.return&&s.return()}finally{if(r)throw o}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},t="x-access-token",d="x-user-public-key",h=(n(p,null,[{key:"validateJWT",value:function(e){if(!e)return null;var t=e.split("."),n=u(t,3),i=n[0],r=n[1],o=n[2];if(!i||!r||!o)return null;if(2+i.length+r.length+o.length!==e.length)return null;try{return{head:JSON.parse(atob(i)),body:JSON.parse(atob(r)),signature:o}}catch(e){return null}}},{key:"extractData",value:function(e){try{return JSON.parse(atob(e.meta))}catch(e){return null}}},{key:"extractMeta",value:function(e){try{return JSON.parse(atob(e.meta)).meta}catch(e){return null}}},{key:"getAccessHeaderNameByToken",value:function(e){return p.validateJWT(e)?t:d}}]),p);function p(){l(this,p)}var v=(n(f,null,[{key:"version",get:function(){return f._version.trim()||null}}]),f);function f(){l(this,f)}v.type="client",v.headerKeys=Object.freeze({version:"x-sdk-version",type:"x-sdk-type"}),v._version="v1.90.1";var m="sandbox",y="sandbox-kovena",g="sandbox-demo-kovena",_="production",k="staging",E="staging_1",w="staging_2",b="staging_3",C="staging_4",S="staging_5",O="staging_6",T="staging_7",A="staging_8",R="staging_9",x="staging_10",L="staging_11",I="staging_12",U="staging_13",D="staging_14",N="staging_15",M="staging_cba",F="sandbox_cba",j="preproduction_cba",H="production_cba",B=[{env:m,url:"https://widget-sandbox."},{env:y,url:"https://widget-sandbox."},{env:"sandbox-demo",url:"https://widget-sandbox-demo."},{env:g,url:"https://widget-sandbox-demo."},{env:_,url:"https://widget."},{env:k,url:"https://widsta."},{env:E,url:"https://widsta-1."},{env:w,url:"https://widsta-2."},{env:b,url:"https://widsta-3."},{env:C,url:"https://widsta-4."},{env:S,url:"https://widsta-5."},{env:O,url:"https://widsta-6."},{env:T,url:"https://widsta-7."},{env:A,url:"https://widsta-8."},{env:R,url:"https://widsta-9."},{env:x,url:"https://widsta-10."},{env:L,url:"https://widsta-11."},{env:I,url:"https://widsta-12."},{env:U,url:"https://widsta-13."},{env:D,url:"https://widsta-14."},{env:N,url:"https://widsta-15."},{env:M,url:"https://widget.staging.powerboard."},{env:F,url:"https://widget-sandbox-cba."},{env:j,url:"https://widget.preproduction.powerboard."},{env:H,url:"https://widget.powerboard."}],z=[{env:m,url:"https://api-sandbox."},{env:_,url:"https://api."},{env:k,url:"https://apista."},{env:E,url:"https://apista-1."},{env:w,url:"https://apista-2."},{env:b,url:"https://apista-3."},{env:C,url:"https://apista-4."},{env:S,url:"https://apista-5."},{env:O,url:"https://apista-6."},{env:T,url:"https://apista-7."},{env:A,url:"https://apista-8."},{env:R,url:"https://apista-9."},{env:x,url:"https://apista-10."},{env:L,url:"https://apista-11."},{env:I,url:"https://apista-12."},{env:U,url:"https://apista-13."},{env:D,url:"https://apista-14."},{env:N,url:"https://apista-15."},{env:M,url:"https://api.staging.powerboard."},{env:F,url:"https://api-sandbox-cba."},{env:j,url:"https://api.preproduction.powerboard."},{env:H,url:"https://api.powerboard."}],q=[y,g],W=m,V="paydock.com",Y="kovena.com",G=(n(J,[{key:"setEnv",value:function(e,t){if(!this.isValidMode(this.configs,e))throw new Error("unknown env: "+e);if(this.env=e,t&&!t.match("^([a-zA-Z0-9](?:(?:[a-zA-Z0-9-.]*(?!-)\\.(?![-.]))*[a-zA-Z0-9]+)?)$"))throw new Error("invalid: "+t);t?this.alias=t:-1!==q.indexOf(this.env)?this.alias=Y:this.alias=V}},{key:"getEnv",value:function(){return this.env}},{key:"getConf",value:function(){for(var e in this.configs)if(this.configs.hasOwnProperty(e)&&this.configs[e].env===this.getEnv())return{url:-1!==this.configs[e].url.indexOf("localhost")?this.configs[e].url:this.configs[e].url+this.alias,env:this.configs[e].env};throw new Error("invalid env")}},{key:"isValidMode",value:function(e,t){for(var n in e)if(e.hasOwnProperty(n)&&e[n].env===t)return!0;return!1}}]),J);function J(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:W;l(this,J),this.configs=e,this.setEnv(t)}var X=(n(Z,null,[{key:"extendSearchParams",value:function(e,t,n){return e.replace(new RegExp("([?&]"+t+"(?=[=&#]|$)[^#&]*|(?=#|$))"),"&"+t+"="+encodeURIComponent(n)).replace(/^([^?&]+)&/,"$1?")}},{key:"serialize",value:function(t){return Object.keys(t).map(function(e){return encodeURIComponent(e)+"="+encodeURIComponent(t[e])}).join("&")}}]),Z);function Z(){l(this,Z)}var Q=(n($,null,[{key:"generate",value:function(){if("undefined"==typeof window||void 0===window.crypto||void 0===window.crypto.getRandomValues)return this.random()+this.random()+"-"+this.random()+"-"+this.random()+"-"+this.random()+"-"+this.random()+this.random()+this.random();var e=new Uint16Array(8);return window.crypto.getRandomValues(e),this.hash(e[0])+this.hash(e[1])+"-"+this.hash(e[2])+"-"+this.hash(e[3])+"-"+this.hash(e[4])+"-"+this.hash(e[5])+this.hash(e[6])+this.hash(e[7])}},{key:"hash",value:function(e){for(var t=e.toString(16);t.length<4;)t="0"+t;return t}},{key:"random",value:function(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}}]),$);function $(){l(this,$)}var ee="/wallet/flypay",te=(n(ne,[{key:"getNetUrl",value:function(){return this.env.getConf().url+this.linkResource}},{key:"getUrl",value:function(){var e=this.getNetUrl(),t=this.getParams();for(var n in t)t.hasOwnProperty(n)&&(e=X.extendSearchParams(e,n,t[n]));return e}},{key:"setParams",value:function(e){this.params=P({},this.params,e)}},{key:"concatParams",value:function(e){for(var t in e)e.hasOwnProperty(t)&&e[t].length&&("string"!=typeof this.params[t]&&(this.params[t]=""),this.params[t].length?this.params[t]+=","+e[t]:this.params[t]+=e[t])}},{key:"getParams",value:function(){return this.params}},{key:"setEnv",value:function(e,t){this.env.setEnv(e,t)}},{key:"getEnv",value:function(){return this.env.getEnv()}},{key:"getBaseUrl",value:function(){return this.env.getConf().url}}]),ne);function ne(e){l(this,ne),this.params={},this.widgetId=Q.generate(),this.linkResource=e,this.env=new G(B),this.setParams({widget_id:this.widgetId})}var ie=(n(re,null,[{key:"values",value:function(t){return Object.keys(t).map(function(e){return t[e]})}}]),re);function re(){l(this,re)}var oe,ae,se,ue,le={CARD:"card",BANK_ACCOUNT:"bank_account",CHECKOUT:"checkout"},ce={CARD_NAME:"card_name",CARD_NUMBER:"card_number",EXPIRE_MONTH:"expire_month",EXPIRE_YEAR:"expire_year",CARD_CCV:"card_ccv",CARD_PIN:"card_pin",ACCOUNT_NAME:"account_name",ACCOUNT_BSB:"account_bsb",ACCOUNT_NUMBER:"account_number",ACCOUNT_ROUTING:"account_routing",ACCOUNT_HOLDER_TYPE:"account_holder_type",ACCOUNT_BANK_NAME:"account_bank_name",ACCOUNT_TYPE:"account_type",FIRST_NAME:"first_name",LAST_NAME:"last_name",EMAIL:"email",PHONE:"phone",PHONE2:"phone2",ADDRESS_LINE1:"address_line1",ADDRESS_LINE2:"address_line2",ADDRESS_STATE:"address_state",ADDRESS_COUNTRY:"address_country",ADDRESS_CITY:"address_city",ADDRESS_POSTCODE:"address_postcode",ADDRESS_COMPANY:"address_company"},de={BACKGROUND_COLOR:"background_color",BACKGROUND_ACTIVE_COLOR:"background_active_color",TEXT_COLOR:"text_color",BORDER_COLOR:"border_color",ICON_SIZE:"icon_size",BUTTON_COLOR:"button_color",ERROR_COLOR:"error_color",SUCCESS_COLOR:"success_color",FONT_SIZE:"font_size",FONT_FAMILY:"font_family"},he={TITLE:"title",TITLE_H1:"title_h1",TITLE_H2:"title_h2",TITLE_H3:"title_h3",TITLE_H4:"title_h4",TITLE_H5:"title_h5",TITLE_H6:"title_h6",FINISH:"finish_text",TITLE_DESCRIPTION:"title_description",SUBMIT_BUTTON:"submit_button",SUBMIT_BUTTON_PROCESSING:"submit_button_processing"},pe={SUBMIT_BUTTON:"submit_button",TABS:"tabs"},ve={AMEX:"amex",AUSBC:"ausbc",DINERS:"diners",DISCOVER:"discover",JAPCB:"japcb",LASER:"laser",MASTERCARD:"mastercard",SOLO:"solo",VISA:"visa",VISA_WHITE:"visa_white"},fe=[].concat(["brand_name","cart_border_color","reference","email","hdr_img","logo_img","pay_flow_color","first_name","last_name","address_line","address_line2","address_city","address_state","address_postcode","address_country","phone","hide_shipping_address"],["first_name","last_name","phone","tokenize","email","gender","date_of_birth","charge","statistics","hide_shipping_address"],["amount","currency","email","first_name","last_name","address_line","address_line2","address_city","address_state","address_postcode","address_country","phone"],["customer_storage_number","tokenise_algorithm"]);(ae=oe=oe||{}).STRIPE="Stripe",ae.FLYPAY="Flypay",ae.PAYPAL="Paypal",ae.MASTERCARD="MasterCard",ae.AFTERPAY="Afterpay",(ue=se=se||{}).GOOGLE="google",ue.APPLE="apple",ue.FLYPAY="flypay",ue.PAYPAL="paypal",ue.AFTERPAY="afterpay";var me={CARD:"card",GIFT_CARD:"gift_card",BANK_ACCOUNT:"bank_account",CHECKOUT:"checkout"},ye={PAYMENT_SOURCE:"payment_source",CARD_PAYMENT_SOURCE_WITH_CVV:"card_payment_source_with_cvv",CARD_PAYMENT_SOURCE_WITHOUT_CVV:"card_payment_source_without_cvv"},ge=(n(_e,[{key:"setWebHookDestination",value:function(e){this.configs.webhook_destination=e}},{key:"setSuccessRedirectUrl",value:function(e){this.configs.success_redirect_url=e}},{key:"setErrorRedirectUrl",value:function(e){this.configs.error_redirect_url=e}},{key:"setFormFields",value:function(e){for(var t in Array.isArray(this.configs.defined_form_fields)||(this.configs.defined_form_fields=[]),e)e.hasOwnProperty(t)&&(-1!==ie.values(ce).indexOf(e[t].replace("*",""))?this.configs.defined_form_fields.push(e[t]):console.warn("Configuration::setFormFields: unsupported form field "+e[t]))}},{key:"setMeta",value:function(e){for(var t in e)e.hasOwnProperty(t)&&(-1!==fe.indexOf(t)?this.configs.meta[t]=e[t]:console.warn("Configuration::setMeta: unsupported meta key "+t))}},{key:"setEnv",value:function(e,t){this.env.setEnv(e,t)}},{key:"setLabel",value:function(e){this.configs.label=e}},{key:"getEnv",value:function(){return this.env.getEnv()}},{key:"createToken",value:function(e,n,t){var i=2<arguments.length&&void 0!==t?t:function(e){};this.send(e,function(e,t){if(200<=t&&t<300)return n(e.resource.data.configuration_token);void 0===e.error||void 0===e.error.message?i("unknown error"):i(e.error.message)})}},{key:"send",value:function(e,t){var n=new XMLHttpRequest;n.open("POST",this.getUrl(),!0),n.setRequestHeader("Content-Type","application/json; charset=UTF-8"),n.setRequestHeader(h.getAccessHeaderNameByToken(e),e),v.version&&(n.setRequestHeader(v.headerKeys.version,v.version),n.setRequestHeader(v.headerKeys.type,v.type)),n.send(JSON.stringify(this.getConfigs())),n.onload=function(){var e={};try{e=JSON.parse(n.responseText)}catch(e){}t(e,n.status)}}},{key:"getConfigs",value:function(){return this.configs}},{key:"getUrl",value:function(){return this.env.getConf().url+"/v1/remote-action/configs"}},{key:"setGiftCardSchemeData",value:function(e,t){if(this.configs.predefined_fields.type!==me.GIFT_CARD)throw new Error("unsupported payment type");if(!e||!t)throw new Error("");this.configs.predefined_fields.gift_card_scheme=e,this.configs.predefined_fields.processing_network=t}}],[{key:"createEachToken",value:function(e,n,i,t){function r(t){n.hasOwnProperty(t)&&n[t].createToken(e,function(e){a[t]=e,u++,n.length===u&&_e.finishCreatingEachToken(a,s,i,o)},function(e){s.push("gateway: "+n[t].getConfigs().predefined_fields.gateway_id+" | "+e),u++,n.length===u&&_e.finishCreatingEachToken(a,s,i,o)})}var o=3<arguments.length&&void 0!==t?t:function(e){},a=new Array(n.length),s=[],u=0;for(var l in n)r(l)}},{key:"finishCreatingEachToken",value:function(e,t,n,i){1<=t.length?i(t):n(e)}}]),_e);function _e(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"default",t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:me.CARD,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:ye.PAYMENT_SOURCE;if(l(this,_e),-1===ie.values(me).indexOf(t))throw new Error("unsupported payment type");if(t===me.CHECKOUT)throw new Error('Payment type "checkout" is deprecated. Use CheckoutButton for this type of payments https://www.npmjs.com/package/@paydock/client-sdk#checkout-button');if(-1===ie.values(ye).indexOf(n))throw new Error("unsupported purpose");this.env=new G(z),this.configs={purpose:n,meta:{},dynamic_fields_position:!0,predefined_fields:{gateway_id:e,type:t,gift_card_scheme:null,processing_network:null}}}var ke={INPUT:"input",SUBMIT_BUTTON:"submit_button",LABEL:"label",TITLE:"title",TITLE_DESCRIPTION:"title_description"},Ee={ERROR:"error",FOCUS:"focus",HOVER:"hover"},we=[{element:ke.INPUT,states:[Ee.FOCUS,Ee.ERROR],styles:["color","border","border_radius","background_color","height","text_decoration","font_size","font_family","line_height","font_weight","padding","margin","transition"]},{element:ke.SUBMIT_BUTTON,states:[Ee.HOVER],styles:["color","border","border_radius","background_color","text_decoration","font_size","font_family","line_height","font_weight","padding","margin","transition","opacity"]},{element:ke.LABEL,states:[],styles:["color","text_decoration","font_size","font_family","line_height","font_weight","padding","margin"]},{element:ke.TITLE,states:[],styles:["color","text_decoration","font_size","font_family","line_height","font_weight","padding","margin","text_align"]},{element:ke.TITLE_DESCRIPTION,states:[],styles:["color","text_decoration","font_size","font_family","line_height","font_weight","padding","margin","text_align"]}],be=(n(Ce,null,[{key:"check",value:function(e,t,n,i){for(var r in e)if(e.hasOwnProperty(r)&&e[r].element===t){if(-1===e[r].states.indexOf(n)&&n)return!1;for(var o in i)if(i.hasOwnProperty(o)&&-1===e[r].styles.indexOf(o.replace("-","_")))return!1;return!0}return!1}},{key:"encode",value:function(e,t,n){var i=[];for(var r in n)n.hasOwnProperty(r)&&i.push(r.replace("_","-")+":"+n[r]);var o=i.join(";");return t?e+"::"+t+"{"+o+"}":e+"{"+o+"}"}},{key:"decode",value:function(e){var t=(e.match("::(.*){")||["",null])[1],n=null!==t?(e.match("(.*)::")||["",""])[1].trim():(e.match("(.*){")||["",""])[1].trim(),i=(e.match("{(.*)}")||["",""])[1].split(";"),r={};for(var o in i)if(i.hasOwnProperty(o)){var a=i[o].split(":");!a&&2!==a.length||(r[a[0].trim()]=(a[1]||"").trim())}return{element:n,state:t,styles:r}}}]),Ce);function Ce(){l(this,Ce)}var Se=(n(Oe,[{key:"setStyles",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setStyle(t,e[t])}},{key:"usePhoneCountryMask",value:function(e){return e?!e.only_countries||/^[a-z]+$/.test(e.only_countries.join(""))&&2*e.only_countries.length===e.only_countries.join("").length?!e.preferred_countries||/^[a-z]+$/.test(e.preferred_countries.join(""))&&2*e.preferred_countries.length===e.preferred_countries.join("").length?e.default_country&&2!==e.default_country.length?console.warn("Widget::usePhoneCountryMask[s: default_country - incorrect value length"):(this.link.setParams({use_country_phone_mask:!0}),e.only_countries&&this.link.setParams({phone_mask_only_countries:e.only_countries.join(",")}),e.preferred_countries&&this.link.setParams({phone_mask_preferred_countries:e.preferred_countries.join(",")}),void(e.default_country&&this.link.setParams({phone_mask_default_country:e.default_country}))):console.warn("Widget::usePhoneCountryMask[s: preferred_countries - unsupported symbols or incorrect length of value"):console.warn("Widget::usePhoneCountryMask[s: only_countries - unsupported symbols or incorrect length of value"):this.link.setParams({use_country_phone_mask:!0})}},{key:"setStyle",value:function(e,t){-1!==ie.values(de).indexOf(e)?this.link.setParams(r({},e,t)):console.warn("Widget::setStyle[s: unsupported style param "+e)}},{key:"setTexts",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setText(t,e[t])}},{key:"setText",value:function(e,t){-1!==ie.values(he).indexOf(e)?this.link.setParams(r({},e,t)):console.warn("Widget::setText[s: unsupported text param "+e)}},{key:"setElementStyle",value:function(e,t,n){var i=3===arguments.length?t:null,r=3===arguments.length?n:t;if(!be.check(we,e,i,r))return console.warn('Styles for "'+e+'" element with "'+(i||"default")+'" state was ignored because some of the arguments are unacceptable');this.link.concatParams({element_styles:be.encode(e,i,r)})}},{key:"setFormValues",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setFormValue(t,e[t])}},{key:"setFormValue",value:function(e,t){return-1===ie.values(ce).indexOf(e)?console.warn("Widget::setFormValues[s: unsupported field "+e):/\,/.test(t)||/\:/.test(t)?console.warn("Widget::setFormValues[s: "+e+" - unsupported symbols (: or ,) in value"):void("string"==typeof this.link.getParams().form_values&&this.link.getParams().form_values.length?this.link.setParams({form_values:this.link.getParams().form_values+","+e+":"+t}):this.link.setParams({form_values:e+":"+t}))}},{key:"setFormLabels",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setFormLabel(t,e[t])}},{key:"setFormLabel",value:function(e,t){if(-1===ie.values(ce).indexOf(e))return console.warn("Widget::setFormLabel[s: unsupported field "+e);var n=null===t||""===t?" ":t;if(/\,/.test(n)||/\:/.test(n))return console.warn("Widget::setFormLabel[s: "+e+" - unsupported symbols (: or ,) in value");this.link.concatParams({form_labels:e+":"+n})}},{key:"setFormPlaceholders",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setFormPlaceholder(t,e[t])}},{key:"setFormPlaceholder",value:function(e,t){if(-1===ie.values(ce).indexOf(e))return console.warn("Widget::setFormPlaceholder[s: unsupported field "+e);var n=null===t||""===t?" ":t;if(/\,/.test(n)||/\:/.test(n))return console.warn("Widget::setFormPlaceholder[s: "+e+" - unsupported symbols (: or ,) in value");this.link.concatParams({form_placeholders:e+":"+n})}},{key:"setFormElements",value:function(e){var t=this;e.forEach(function(e){return t.setFormElement(e)})}},{key:"setFormElement",value:function(e){e.value&&this.setFormValue(e.field,e.value),e.label&&this.setFormLabel(e.field,e.label),e.placeholder&&this.setFormPlaceholder(e.field,e.placeholder)}},{key:"setIcons",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setIcon(t,e[t])}},{key:"setIcon",value:function(e,t){if(/\,/.test(t)||/\:/.test(t))return console.warn("Widget::setIcon[s: "+e+" - unsupported symbols (: or ,) in value");"string"==typeof this.link.getParams().icons&&this.link.getParams().icons.length?this.link.setParams({icons:this.link.getParams().icons+","+e+":"+t}):this.link.setParams({icons:e+":"+t})}},{key:"setHiddenElements",value:function(e){var t=[],n=ie.values(pe).concat(ie.values(ce));for(var i in e)e.hasOwnProperty(i)&&(-1!==n.indexOf(e[i])?t.push(e[i]):console.warn("Widget::setHiddenElements: unsupported element "+e[i]));t.length&&this.link.concatParams({hidden_elements:t.join(",")})}},{key:"setRefId",value:function(e){this.link.setParams({ref_id:e})}},{key:"useGatewayFieldValidation",value:function(){this.link.setParams({fields_validation:!0})}},{key:"setSupportedCardIcons",value:function(e,t){var n=[];for(var i in e)e.hasOwnProperty(i)&&(-1!==ie.values(ve).indexOf(e[i])?n.push(e[i]):console.warn("Widget::cardTypes: unsupported type of cards "+e[i]));n.length&&this.link.concatParams({supported_card_types:n.join(",")}),t&&this.link.setParams({validate_card_types:t})}},{key:"setEnv",value:function(e,t){for(var n in this.link.setEnv(e,t),this.configs)this.configs.hasOwnProperty(n)&&this.configs[n].setEnv(e,t)}},{key:"getEnv",value:function(){this.link.getEnv()}},{key:"loadIFrameUrl",value:function(t,e){var n=this,i=1<arguments.length&&void 0!==e?e:function(e){};if(this.link.setParams({configuration_tokens:""}),this.configTokens.length)return this.link.setParams({configuration_tokens:this.configTokens.join(",")}),t(this.link.getUrl());ge.createEachToken(this.accessToken,this.configs,function(e){return n.link.concatParams({configuration_tokens:e.join(",")}),t(n.link.getUrl())},function(e){i(e)})}},{key:"setLanguage",value:function(e){this.link.setParams({language:e})}}]),Oe);function Oe(e,t){if(l(this,Oe),this.configs=[],this.configTokens=[],this.link=new te("/remote-action"),v.version&&this.link.setParams({sdk_version:v.version,sdk_type:v.type}),h.validateJWT(e)?this.link.setParams({token:e}):this.link.setParams({public_key:e}),this.accessToken=e,!t||Array.isArray(t)&&!t.length)throw Error("configuration token is required");if("string"==typeof t)this.configTokens.push(t);else if(t instanceof ge)this.configs.push(t);else if(Array.isArray(t)&&"string"==typeof t[0])this.configTokens=t;else{if(!(Array.isArray(t)&&t[0]instanceof ge))throw Error("Unsupported type of configuration token");this.configs=t}}var Te=(n(Ae,null,[{key:"insertToInput",value:function(e,t,n){if(void 0!==n[t]){var i=document.querySelector(e);i&&(i.value=n[t])}}},{key:"subscribe",value:function(e,t,n){t.addEventListener?t.addEventListener(e,n):t.attachEvent("on"+e,n)}}]),Ae);function Ae(){l(this,Ae)}var Pe=(n(Re,[{key:"isExist",value:function(){return!!this.getElement()}},{key:"getStyles",value:function(e){if(this.isExist()){var t=this.getElement().getAttribute("widget-style");if(!t)return{};var n=t.split(";");return void 0===n||n.length?this.convertConfigs(n,e):{}}}},{key:"on",value:function(e,t){this.isExist()&&Te.subscribe(e,this.getElement(),t)}},{key:"getAttr",value:function(e){if(this.isExist()){var t=this.getElement(),n=[];for(var i in e)if(e.hasOwnProperty(i)){var r=e[i].replace(/_/g,"-"),o=t.getAttribute(r);o&&n.push(e[i]+":"+o)}return void 0===n||n.length?this.convertConfigs(n,e):{}}}},{key:"getElement",value:function(){return document.querySelector(this.selector)}},{key:"convertConfigs",value:function(e,t){var n={};for(var i in e)if(e.hasOwnProperty(i)){var r=e[i].split(":"),o=r[0].replace(/-/g,"_").trim();-1!==t.indexOf(o)&&(n[o]=r[1].trim())}return n}}]),Re);function Re(e){l(this,Re),this.selector=e}var xe=(n(Le,[{key:"load",value:function(e,t){var n=1<arguments.length&&void 0!==t?t:{};if(this.container.isExist()&&!this.isExist()){var i=document.createElement("iframe");i.setAttribute("src",e),n.title&&(i.title=n.title),this.container.getElement().appendChild(i)}}},{key:"loadFromHtml",value:function(e,t){var n=1<arguments.length&&void 0!==t?t:{};if(this.container.isExist()&&!this.isExist()){var i=document.createElement("iframe");i.setAttribute("height","100%"),i.setAttribute("width","100%"),n.title&&(i.title=n.title),this.container.getElement().appendChild(i);var r=this.getElement().contentDocument;r.open(),r.write("<html><head><style>html, body {margin: 0;} iframe {border: 0; width: 100%}</style><title></title></head><body>{{content}}</body></html>".replace("{{content}}",e)),r.close()}}},{key:"remove",value:function(){if(this.container.isExist()&&this.isExist()){var e=this.getElement();this.container.getElement().removeChild(e)}}},{key:"show",value:function(){this.isExist()&&(this.setStyle("visibility","visible"),this.setStyle("display","block"))}},{key:"hide",value:function(e){var t=0<arguments.length&&void 0!==e&&e;this.isExist()&&(t?this.setStyle("visibility","hidden"):this.setStyle("display","none"))}},{key:"isExist",value:function(){return!!this.getElement()}},{key:"getElement",value:function(){return this.container.isExist()?this.container.getElement().querySelector("iframe"):null}},{key:"setStyle",value:function(e,t){this.getElement().style[e]=t}}]),Le);function Le(e){l(this,Le),this.container=e}var Ie={AFTER_LOAD:"afterLoad",SUBMIT:"submit",FINISH:"finish",VALIDATION_ERROR:"validationError",SYSTEM_ERROR:"systemError",CHECKOUT_SUCCESS:"checkoutSuccess",CHECKOUT_READY:"checkoutReady",CHECKOUT_ERROR:"checkoutError",CHECKOUT_COMPLETED:"checkoutCompleted",VALIDATION:"validation",SELECT:"select",UNSELECT:"unselect",NEXT:"next",PREV:"prev",META_CHANGE:"metaChange",RESIZE:"resize",CHARGE_AUTH_SUCCESS:"chargeAuthSuccess",CHARGE_AUTH_REJECT:"chargeAuthReject",CHARGE_AUTH_CANCELLED:"chargeAuthCancelled",ADDITIONAL_DATA_SUCCESS:"additionalDataCollectSuccess",ADDITIONAL_DATA_REJECT:"additionalDataCollectReject",CHARGE_AUTH:"chargeAuth",DISPATCH_SUCCESS:"dispatchSuccess",DISPATCH_ERROR:"dispatchError"},Ue=(n(De,[{key:"emit",value:function(e){for(var t in this.listeners)this.listeners[t].event===e.event&&e.widget_id===this.listeners[t].widget_id&&this.listeners[t].listener.apply(this,[e])}},{key:"on",value:function(e,t,n){for(var i in Ie)Ie.hasOwnProperty(i)&&e===Ie[i]&&this.listeners.push({event:e,listener:n,widget_id:t})}},{key:"clear",value:function(){this.listeners=[]}},{key:"subscribe",value:function(e,t){e.addEventListener?e.addEventListener("message",t):e.attachEvent("onmessage",t)}}]),De);function De(e){var n=this;l(this,De),this.listeners=[],e&&Te.subscribe("message",e,function(e){var t=void 0;try{t=JSON.parse(e.data)}catch(e){}t&&n.emit(t)})}var Ne={SUBMIT_FORM:"submit_form",CHANGE_TAB:"tab",HIDE_ELEMENTS:"hide_elements",SHOW_ELEMENTS:"show_elements",REFRESH_CHECKOUT:"refresh_checkout",UPDATE_FORM_VALUES:"update_form_values",INIT_CHECKOUT:"init_checkout"},Me=(n(Fe,[{key:"push",value:function(e,t){var n=1<arguments.length&&void 0!==t?t:{};if(this.iFrame.isExist()){-1===ie.values(Ne).indexOf(e)&&console.warn("unsupported trigger type");var i={trigger:e,destination:"widget.paydock",data:n};this.iFrame.getElement().contentWindow.postMessage(JSON.stringify(i),"*")}}}]),Fe);function Fe(e){l(this,Fe),this.iFrame=e}var je=(n(He,[{key:"getElement",value:function(){return document.querySelector(this.selector)}},{key:"isExist",value:function(){return!!this.getElement()}},{key:"beforeSubmit",value:function(t){var n=this;this.isExist()&&this.subscribe(this.getElement(),function(e){e.preventDefault(),n.intercepted=!0,t.apply(n,[])})}},{key:"continueSubmit",value:function(){var e=this;this.isExist()&&this.intercepted&&(this.intercepted=!1,setTimeout(function(){e.getElement().submit()},50))}},{key:"subscribe",value:function(e,t){e.addEventListener?e.addEventListener("submit",t):e.attachEvent("onsubmit",t)}}]),He);function He(e){l(this,He),this.intercepted=!1,this.selector=e}var Be=(s(ze,Se),n(ze,[{key:"load",value:function(){var t=this;this.setStyles(this.container.getStyles(ie.values(de))),this.setTexts(this.container.getAttr(ie.values(he))),this.loadIFrameUrl(function(e){t.iFrame.load(e,{title:"Card details"}),t.afterLoad()},function(e){for(var t in console.error("Errors when creating a token[s, widget will not be load:"),e)e.hasOwnProperty(t)&&console.error("--- | "+e[t])})}},{key:"afterLoad",value:function(){var t=this;this.on(Ie.VALIDATION,function(e){t.validationData=e})}},{key:"on",value:function(e,t){var n=this;return"function"==typeof t?this.event.on(e,this.link.getParams().widget_id,t):new Promise(function(t){return n.event.on(e,n.link.getParams().widget_id,function(e){return t(e)})})}},{key:"trigger",value:function(e,t){var n=1<arguments.length&&void 0!==t?t:{};this.triggerElement.push(e,n)}},{key:"getValidationState",value:function(){return this.validationData}},{key:"isValidForm",value:function(){return!!this.validationData.form_valid}},{key:"isInvalidField",value:function(e){var t=0<arguments.length&&void 0!==e?e:"";return!!this.validationData.invalid_fields&&-1!==this.validationData.invalid_fields.indexOf(t)}},{key:"isFieldErrorShowed",value:function(e){var t=0<arguments.length&&void 0!==e?e:"";return!!this.validationData.invalid_showed_fields&&-1!==this.validationData.invalid_showed_fields.indexOf(t)}},{key:"isInvalidFieldByValidator",value:function(e,t){var n=0<arguments.length&&void 0!==e?e:"";return!(this.validationData.validators&&!this.validationData.validators[t])&&-1!==this.validationData.validators[t].indexOf(n)}},{key:"hide",value:function(e){this.iFrame.hide(e)}},{key:"show",value:function(){this.iFrame.show()}},{key:"reload",value:function(){this.iFrame.remove(),this.load()}},{key:"hideElements",value:function(e){var t=[],n=ie.values(pe).concat(ie.values(ce));for(var i in e)e.hasOwnProperty(i)&&(-1!==n.indexOf(e[i])?t.push(e[i]):console.warn("Widget::hideElements: unsupported element "+e[i]));t.length&&this.trigger(Ne.HIDE_ELEMENTS,{elements:t.join(",")})}},{key:"showElements",value:function(e){var t=[],n=ie.values(pe).concat(ie.values(ce));for(var i in e)e.hasOwnProperty(i)&&(-1!==n.indexOf(e[i])?t.push(e[i]):console.warn("Widget::showElements: unsupported element "+e[i]));t.length&&this.trigger(Ne.SHOW_ELEMENTS,{elements:t.join(",")})}},{key:"updateFormValues",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.updateFormValue(t,e[t])}},{key:"updateFormValue",value:function(e,t){return-1===ie.values(ce).indexOf(e)?console.warn("Widget::setFormValues[s: unsupported field "+e):/\,/.test(t)||/\:/.test(t)?console.warn("Widget::setFormValues[s: "+e+" - unsupported symbols (: or ,) in value"):void this.trigger(Ne.UPDATE_FORM_VALUES,{form_values:e+":"+t})}},{key:"onFinishInsert",value:function(t,n){this.on(Ie.FINISH,function(e){Te.insertToInput(t,n,e)})}},{key:"interceptSubmitForm",value:function(e){var t=this;this.setHiddenElements([pe.SUBMIT_BUTTON]);var n=new je(e);n.beforeSubmit(function(){t.triggerElement.push(Ne.SUBMIT_FORM,{}),t.event.on(Ie.FINISH,t.link.getParams().widget_id,function(){n.continueSubmit()})})}},{key:"useCheckoutAutoSubmit",value:function(){var t=this;this.setHiddenElements([pe.SUBMIT_BUTTON]),this.on(Ie.CHECKOUT_SUCCESS,function(e){t.trigger(Ne.SUBMIT_FORM)}),this.on(Ie.VALIDATION_ERROR,function(e){t.trigger(Ne.REFRESH_CHECKOUT)}),this.on(Ie.SYSTEM_ERROR,function(e){t.trigger(Ne.REFRESH_CHECKOUT)})}},{key:"useAutoResize",value:function(){var t=this;this.on(Ie.RESIZE,function(e){t.iFrame.getElement()&&(t.iFrame.getElement().scrolling="no",e.height&&t.iFrame.setStyle("height",e.height+"px"))})}}]),ze);function ze(e,t,n){l(this,ze);var i=c(this,(ze.__proto__||Object.getPrototypeOf(ze)).call(this,t,n));return i.validationData={},i.container=new Pe(e),i.iFrame=new xe(i.container),i.triggerElement=new Me(i.iFrame),i.event=new Ue(window),i}var qe=(s(We,Be),n(We,[{key:"setWebHookDestination",value:function(e){this.configs[0].setWebHookDestination(e)}},{key:"setSuccessRedirectUrl",value:function(e){this.configs[0].setSuccessRedirectUrl(e)}},{key:"setErrorRedirectUrl",value:function(e){this.configs[0].setErrorRedirectUrl(e)}},{key:"setFormFields",value:function(e){this.configs[0].setFormFields(e)}},{key:"setFormElements",value:function(e){var t=this;e.forEach(function(e){return t.setFormElement(e)})}},{key:"setFormElement",value:function(e){this.configs[0].setFormFields([e.field]),a(We.prototype.__proto__||Object.getPrototypeOf(We.prototype),"setFormElement",this).call(this,P(P({},e),{field:e.field.replace("*","")}))}},{key:"setMeta",value:function(e){this.configs[0].setMeta(e)}},{key:"setGiftCardScheme",value:function(e,t){this.configs[0].setGiftCardSchemeData(e,t)}}]),We);function We(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"default",i=arguments[3],r=arguments[4];l(this,We);var o=new ge(n,i,r);return c(this,(We.__proto__||Object.getPrototypeOf(We)).call(this,e,t,o))}var Ve,Ye,Ke,Ge,Je={CLICK:"click",POPUP_REDIRECT:"popupRedirect",REDIRECT:"redirect",ERROR:"error",REFERRED:"referred",DECLINED:"declined",CANCELLED:"cancelled",ACCEPTED:"accepted",FINISH:"finish",CLOSE:"close"};(Ye=Ve=Ve||{}).CONTEXTUAL="contextual",Ye.REDIRECT="redirect",(Ge=Ke=Ke||{}).ZIPMONEY="Zipmoney",Ge.PAYPAL="PaypalClassic",Ge.AFTERPAY="Afterpay";var Xe="[Paydock:CheckoutButton]",Ze=(n(Qe,[{key:"setEnv",value:function(e,t){this.env.setEnv(e,t)}},{key:"getEnv",value:function(){return this.env.getEnv()}},{key:"getUrl",value:function(){return this.env.getConf().url+this.getLink()}},{key:"create",value:function(e,t,n,i){var r=this,o=new XMLHttpRequest;o.onload=function(){r.parser(o.responseText,o.status,n,i)},o.open("POST",this.getUrl(),!0),o.setRequestHeader("Content-Type","application/json; charset=UTF-8"),o.setRequestHeader(h.getAccessHeaderNameByToken(e),e),v.version&&(o.setRequestHeader(v.headerKeys.version,v.version),o.setRequestHeader(v.headerKeys.type,v.type)),o.send(JSON.stringify(t))}},{key:"get",value:function(e,t,n){var i=this,r=new XMLHttpRequest;r.onload=function(){i.parser(r.responseText,r.status,t,n)},r.open("GET",this.getUrl(),!0),r.setRequestHeader("Content-Type","application/json; charset=UTF-8"),r.setRequestHeader(h.getAccessHeaderNameByToken(e),e),v.version&&(r.setRequestHeader(v.headerKeys.version,v.version),r.setRequestHeader(v.headerKeys.type,v.type)),r.send()}},{key:"parser",value:function(e,t,n,i){var r={};try{r=JSON.parse(e)}catch(e){}if(200<=t&&t<300||302===t)return n(r.resource.data,t);i(r.error||{message:"unknown error"},t)}}]),Qe);function Qe(){l(this,Qe),this.env=new G(z)}var $e=(s(et,Ze),n(et,[{key:"getLink",value:function(){return"/v1/payment_sources/external_checkout"}},{key:"setDescriptions",value:function(e){this.body.description=e}},{key:"setMeta",value:function(e){for(var t in e)e.hasOwnProperty(t)&&(-1!==fe.indexOf(t)?this.body.meta[t]=e[t]:console.warn("ExternalCheckout::setMeta: unsupported meta key "+t))}},{key:"getConfigs",value:function(){return this.body}},{key:"send",value:function(e,n,t){var i=2<arguments.length&&void 0!==t?t:function(e,t){};this.create(e,this.getConfigs(),function(e,t){n(e)},function(e,t){void 0===e.message?i(t+": unknown error","unknown_error"):i(e.message,e.code)})}}]),et);function et(e,t,n){l(this,et);var i=c(this,(et.__proto__||Object.getPrototypeOf(et)).call(this));return i.body={gateway_id:e,meta:{},success_redirect_url:t,error_redirect_url:n,redirect_url:t},i}var tt=(s(nt,Ze),n(nt,[{key:"getLink",value:function(){return"/v1/payment_sources/external_checkout/:token".replace(":token",this.token)}},{key:"send",value:function(e,n,t){var i=2<arguments.length&&void 0!==t?t:function(e){};this.get(e,function(e,t){n(e)},function(e,t){void 0===e.message?i(t+": unknown error"):i(e.message)})}}]),nt);function nt(e){l(this,nt);var t=c(this,(nt.__proto__||Object.getPrototypeOf(nt)).call(this));return t.token=e,t}var it=(n(rt,[{key:"emit",value:function(e,t){var n=this.events[e];n&&n.forEach(function(e){e.call(null,t)})}},{key:"subscribe",value:function(e,t){var n=this;return this.events[e]||(this.events[e]=[]),this.events[e].push(t),function(){n.events[e]=n.events[e].filter(function(e){return t!==e})}}}]),rt);function rt(){l(this,rt),this.events={}}var ot='\n <div class="cs-loader">\n <div class="cs-loader-inner">\n <label>\t●</label>\n <label>\t●</label>\n <label>\t●</label>\n <label>\t●</label>\n <label>\t●</label>\n <label>\t●</label>\n </div>\n </div>\n',at="\n <style> \n .cs-loader {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n }\n \n .cs-loader-inner {\n transform: translateY(-50%);\n top: 50%;\n position: absolute;\n width: calc(100% - 200px);\n color: #8e8d8c;\n padding: 0 100px;\n text-align: center;\n }\n \n \n .cs-loader-inner label {\n font-size: 20px;\n opacity: 0;\n display:inline-block;\n }\n \n @keyframes lol {\n 0% {\n opacity: 0;\n transform: translateX(-300px);\n }\n 33% {\n opacity: 1;\n transform: translateX(0px);\n }\n 66% {\n opacity: 1;\n transform: translateX(0px);\n }\n 100% {\n opacity: 0;\n transform: translateX(300px);\n }\n }\n \n @-webkit-keyframes lol {\n 0% {\n opacity: 0;\n -webkit-transform: translateX(-300px);\n }\n 33% {\n opacity: 1;\n -webkit-transform: translateX(0px);\n }\n 66% {\n opacity: 1;\n -webkit-transform: translateX(0px);\n }\n 100% {\n opacity: 0;\n -webkit-transform: translateX(300px);\n -moz-transform: translateX(300px);\n }\n }\n \n .cs-loader-inner label:nth-child(6) {\n -webkit-animation: lol 3s infinite ease-in-out;\n -moz-animation: lol 3s infinite ease-in-out;\n animation: lol 3s infinite ease-in-out;\n }\n \n .cs-loader-inner label:nth-child(5) {\n -webkit-animation: lol 3s 100ms infinite ease-in-out;\n -moz-animation: lol 3s 100ms infinite ease-in-out;\n animation: lol 3s 100ms infinite ease-in-out;\n }\n \n .cs-loader-inner label:nth-child(4) {\n -webkit-animation: lol 3s 200ms infinite ease-in-out;\n -moz-animation: lol 3s 200ms infinite ease-in-out;\n animation: lol 3s 200ms infinite ease-in-out;\n }\n \n .cs-loader-inner label:nth-child(3) {\n -webkit-animation: lol 3s 300ms infinite ease-in-out;\n -moz-animation: lol 3s 300ms infinite ease-in-out;\n animation: lol 3s 300ms infinite ease-in-out;\n }\n \n .cs-loader-inner label:nth-child(2) {\n -webkit-animation: lol 3s 400ms infinite ease-in-out;\n -moz-animation: lol 3s 400ms infinite ease-in-out;\n animation: lol 3s 400ms infinite ease-in-out;\n }\n \n .cs-loader-inner label:nth-child(1) {\n -webkit-animation: lol 3s 500ms infinite ease-in-out;\n -moz-animation: lol 3s 500ms infinite ease-in-out;\n animation: lol 3s 500ms infinite ease-in-out;\n }\n </style>\n",st=(n(ut,null,[{key:"isFacebook",value:function(){return-1!==navigator.userAgent.indexOf("FBSN/iOS")&&-1!==navigator.userAgent.indexOf("AppleWebKit")&&-1!==navigator.userAgent.indexOf("(KHTML, like Gecko)")}},{key:"isInstagram",value:function(){return-1!==navigator.userAgent.indexOf("iOS")&&-1!==navigator.userAgent.indexOf("Instagram")&&-1!==navigator.userAgent.indexOf("(KHTML, like Gecko)")}},{key:"isSupportPopUp",value:function(){return!this.isFacebook()&&!this.isInstagram()}},{key:"getLanguage",value:function(){return window.navigator.language||""}},{key:"getTimezoneOffset",value:function(){return(new Date).getTimezoneOffset()}},{key:"getBrowserName",value:function(){var e=navigator.userAgent;return-1<e.indexOf("Firefox")?"Mozilla Firefox":-1<e.indexOf("Opera")?"Opera":-1<e.indexOf("Trident")?"Microsoft Internet Explorer":-1<e.indexOf("Edge")?"Microsoft Edge":-1<e.indexOf("Chrome")?"Google Chrome or Chromium":-1<e.indexOf("Safari")?"Apple Safari":"unknown"}},{key:"isJavaEnabled",value:function(){return navigator.javaEnabled()}},{key:"getColorDepth",value:function(){return screen.colorDepth}},{key:"getScreenHeight",value:function(){return screen.height}},{key:"getScreenWidth",value:function(){return screen.width}},{key:"getBrowserInfo",value:function(){var e=navigator.userAgent,t=e.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[],n=void 0;return/trident/i.test(t[1])?{name:"IE",version:(n=/\brv[ :]+(\d+)/g.exec(e)||[])[1]||""}:"Chrome"===t[1]&&null!=(n=e.match(/\bOPR|Edge\/(\d+)/))?{name:"Opera",version:n[1]}:(t=t[2]?[t[1],t[2]]:[navigator.appName,navigator.appVersion,"-?"],null!=(n=e.match(/version\/(\d+)/i))&&t.splice(1,1,n[1]),{name:t[0],version:t[1]})}}]),ut);function ut(){l(this,ut)}var lt="close",ct="focus",dt=(n(ht,[{key:"initControl",value:function(){if(!this.isInit()&&this.showControl){if(!st.isSupportPopUp())return this.createLoader();this.createTemplate(),this.createStyles(),this.eventHandler()}}},{key:"initLoader",value:function(){!this.isInit()&&this.showLoader&&(this.createStyles(),this.createLoader())}},{key:"eventHandler",value:function(){var e=this,t=document.querySelector("[data-close]"),n=document.querySelector("[data-continue]");t&&Te.subscribe("click",t,function(){return e.eventEmitter.emit(lt,{})}),n&&Te.subscribe("click",n,function(){return e.eventEmitter.emit(ct,{})})}},{key:"clear",value:function(){(this.style||this.overlay)&&(this.style.parentNode.removeChild(this.style),this.overlay.parentNode.removeChild(this.overlay),this.style=null,this.overlay=null)}},{key:"createLoader",value:function(){var e=this,t=document.body||document.getElementsByTagName("body")[0];this.overlay=document.createElement("div"),this.overlay.classList.add("checkout-overlay"),this.overlay.setAttribute("checkout-overlay"," "),this.overlay.innerHTML=at+ot,t.appendChild(this.overlay),setTimeout(function(){e.isInit()&&e.overlay.classList.add("display")},5)}},{key:"createTemplate",value:function(){var e=this,t=document.body||document.getElementsByTagName("body")[0],n=String('\n <div class="checkout-container">\n <strong class="checkout-title" data-title>{{title}}</strong>\n <p data-description>{{description}}</p>\n <a href="#" data-continue>Continue</a>\n <a href="#" data-close>Close</a>\n </div>\n');n=(n=n.replace("{{description}}",this.description)).replace("{{title}}",this.title),this.overlay=document.createElement("div"),this.overlay.classList.add("checkout-overlay"),this.overlay.setAttribute("checkout-overlay"," "),this.overlay.innerHTML=n,t.appendChild(this.overlay),setTimeout(function(){e.isInit()&&e.overlay.classList.add("display")},5)}},{key:"createStyles",value:function(){var e=document.head||document.getElementsByTagName("head")[0],t=String("\n .hide-continue-button [data-continue] {\n display: none;\n }\n \n .checkout-overlay .cs-loader-inner {\n color: #ddd;\n }\n\n .checkout-overlay { \n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0,0,0, 0.5);\n text-align: center;\n color: #fff;\n opacity: 0;\n }\n .checkout-overlay.display { \n opacity: 1;\n transition: opacity 0.7s ease-out;\n }\n .checkout-overlay a { color: #00f; }\n .checkout-container {\n position: absolute;\n top: 50%;\n left: 0;\n width: 100%;\n margin-top: -{{width}}px;\n }\n .checkout-title {\n font-size: 24px;\n display: block;\n text-transform: uppercase;\n }\n [data-close] {\n position: fixed;\n right: 32px;\n top: 32px;\n width: 32px;\n height: 32px;\n opacity: 0.3;\n overflow: hidden;\n text-indent: -9999px;\n }\n [data-close]:hover { opacity: 1; }\n [data-close]:before, [data-close]:after {\n position: absolute;\n left: 15px;\n content: ' ';\n height: 33px;\n width: 2px;\n background-color: #00f;\n }\n [data-close]:before { transform: rotate(45deg); }\n [data-close]:after { transform: rotate(-45deg); }\n"),n=document.querySelector(".checkout-container");t=t.replace("{{width}}",n?String(n.offsetHeight/2):"0"),this.style=document.createElement("style"),this.style.type="text/css",this.style.appendChild(document.createTextNode(t)),e.appendChild(this.style)}},{key:"setBackdropDescription",value:function(e){this.description=e}},{key:"setBackdropTitle",value:function(e){this.title=e}},{key:"onTrigger",value:function(e,t){this.eventEmitter.subscribe(e,t)}},{key:"isInit",value:function(){return!(!this.overlay||!this.style)}},{key:"hideContinueControl",value:function(){this.isInit()&&this.overlay.classList.add("hide-continue-button")}},{key:"turnOffControl",value:function(){this.showControl=!1}},{key:"turnOffLoader",value:function(){this.showLoader=!1}}]),ht);function ht(){l(this,ht),this.description="Don't see the secure checkout browser? We'll help you re-launch the window to complete your purchase",this.title="Checkout",this.overlay=null,this.style=null,this.showControl=!0,this.showLoader=!0,this.eventEmitter=new it}var pt,vt,ft=(n(mt,[{key:"error",value:function(e,t,n){n(!0)}},{key:"setEnv",value:function(e,t){this.widgetEnv.setEnv(e,t)}}]),mt);function mt(){l(this,mt),this.widgetEnv=new G(B)}function yt(e){return s(o,0<arguments.length&&void 0!==e?e:ft),n(o,[{key:"continue",value:function(){}},{key:"stop",value:function(){}},{key:"error",value:function(e,t,n){n(!0)}},{key:"setSuspendedRedirectUri",value:function(e){this.suspendedRedirectUri=e}},{key:"setBackgroundTitle",value:function(e){this.background.setBackdropTitle(e)}},{key:"setBackgroundDescription",value:function(e){this.background.setBackdropDescription(e)}},{key:"turnOffBackdrop",value:function(){this.background.turnOffControl(),this.background.turnOffLoader()}}]),o;function o(){var e;l(this,o);for(var t=arguments.length,n=Array(t),i=0;i<t;i++)n[i]=arguments[i];var r=c(this,(e=o.__proto__||Object.getPrototypeOf(o)).call.apply(e,[this].concat(n)));return r.background=new dt,r.background.onTrigger(ct,function(){return r.continue()}),r.background.onTrigger(lt,function(){return r.stop()}),r}}(vt=pt=pt||{}).SUCCESS="success",vt.DECLINED="declined",vt.CLOSE="close",vt.REFERRED="referred",vt.ERROR="error";var gt="paydock-dispatcher",_t=(n(kt,[{key:"restartDispatcher",value:function(){var e=document.getElementById(gt);e&&e.parentNode&&e.parentNode.removeChild(e);var t=document.createElement("iframe");t.setAttribute("src",this.env.getConf().url+"/dispatcher"),t.id=gt,t.style.display="none",document.body.appendChild(t)}},{key:"on",value:function(n,i){var r=this;Te.subscribe("message",window,function(e){var t=null;try{t=JSON.parse(e.data)}catch(e){}t&&t.message_source===r.messageSource&&t.event===n&&i(t)})}},{key:"setEnv",value:function(e,t){this.env.setEnv(e,t),this.restartDispatcher()}}]),kt);function kt(e){l(this,kt),this.messageSource=e,this.env=new G(B)}var Et=(n(wt,[{key:"isExist",value:function(){return!(!this.getElement()||this.getElement().closed)}},{key:"getElement",value:function(){return this.window}},{key:"init",value:function(){var e=this;if(!st.isSupportPopUp())return this.window=window;var t=this.getConfigs();this.window=window.open("about:blank","_blank","noopener=false,width="+t.width+",height="+t.height+",top="+t.top+",left="+t.left+",scrollbars="+(t.scrollbars?"yes":"no")+",resizable="+(t.resizable?"yes":"no")),this.showLoader();var n=setInterval(function(){e.isExist()||(clearInterval(n),e.eventEmitter.emit("close",{}))},200)}},{key:"redirect",value:function(e){this.isExist()&&(this.window.location.href=e)}},{key:"close",value:function(){this.isExist()&&this.getElement().close&&(this.getElement().close(),this.window=null)}},{key:"focus",value:function(){this.isExist()&&this.getElement().focus&&this.getElement().focus()}},{key:"setConfigs",value:function(e){this.configs=P(this.configs,e)}},{key:"getNetConfigs",value:function(){return P({},this.configs)}},{key:"getConfigs",value:function(){var e=this.getNetConfigs();return e.left=window.screenX+(window.screen.width/2-e.width/2),e.top=window.screenY+(window.screen.height/2-e.height/2),e}},{key:"onClose",value:function(e){this.eventEmitter.subscribe("close",e)}},{key:"initError",value:function(e){this.getElement().document.write("."),(this.getElement().document.body||this.getElement().document.getElementsByTagName("body")[0]).innerHTML="<style>\n .error-wrapper {\n color: #ff0000;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n }\n </style>"+'<div class="error-wrapper"><div>{{error}}</div></div>'.replace("{{error}}",e)}},{key:"showLoader",value:function(){this.getElement().document.write(".");var e=this.getElement().document.body||this.getElement().document.getElementsByTagName("body")[0];if(e.innerHTML=at+ot,this.env===k&&this.env===E&&this.env===w&&this.env===b&&this.env===C&&this.env===S&&this.env===O&&this.env===T&&this.env===A&&this.env===R&&this.env===x&&this.env===L&&this.env===I&&this.env===U&&this.env===D&&this.env===N){var t=0;Te.subscribe("click",e,function(){5==++t&&(e.innerHTML='\n <style>\n html{width: 100%;height: 100%;}\n body{margin: 0px;padding: 0px;background-color: #111;}\n \n .eye{\n width: 20px; height: 8px;\n background-color: #eee;\n border-radius:0px 0px 20px 20px;\n position: relative;\n top: 40px;\n left: 10px;\n box-shadow: 40px 0px 0px 0px #eee; \n }\n \n .head{\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden; \n position: relative;\n margin: -250px auto;\n width: 80px; height: 80px;\n background-color: #111;\n border-radius:50px;\n box-shadow: inset -4px 2px 0px 0px #eee;\n -webkit-animation:node 1.5s infinite alternate;\n -webkit-animation-timing-function:ease-out;\n -moz-animation:node 1.5s infinite alternate;\n -moz-animation-timing-function:ease-out;\n animation:node 1.5s infinite alternate;\n animation-timing-function:ease-out;\n }\n .body{ \n position: relative;\n margin: 90px auto;\n width: 140px; height: 120px;\n background-color: #111;\n border-radius: 50px/25px ;\n box-shadow: inset -5px 2px 0px 0px #eee;\n -webkit-animation:node2 1.5s infinite alternate;\n -webkit-animation-timing-function:ease-out; \n -moz-animation:node2 1.5s infinite alternate;\n -moz-animation-timing-function:ease-out; \n animation:node2 1.5s infinite alternate;\n animation-timing-function:ease-out; \n }\n \n @keyframes node {0%{ top:0px; }50%{ top:10px; }100% { top:0px;} }\n @keyframes node2 {0%{ top:-5px; }50%{ top:10px; }100% { top:-5px;}}\n @-moz-keyframes node {0%{ top:0px; }50%{ top:10px; }100% { top:0px;} }\n @-moz-keyframes node2 {0%{ top:-5px; }50%{ top:10px; }100% { top:-5px;}}\n @-webkit-keyframes node {0%{ top:0px; }50%{ top:10px; }100% { top:0px;} }\n @-webkit-keyframes node2 {0%{ top:-5px; }50%{ top:10px; }100% { top:-5px;}}\n \n \n .circ{\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n margin: 60px auto;\n width: 180px; height: 180px;\n background-color: #111;\n border-radius: 0px 0px 50px 50px;\n position: relative;\n z-index: -1; \n left: 0%;\n top: 20%;\n overflow: hidden;\n }\n \n .hands{\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n margin-top: 140px;\n width: 120px;height: 120px;\n position: absolute;\n background-color: #111;\n border-radius:20px;\n box-shadow:-1px -4px 0px 0px #eee;\n transform:rotate(45deg);\n -webkit-transform:rotate(45deg);\n -mox-transform:rotate(45deg);\n top:75%;left: 16%;\n z-index: 1;\n -webkit-animation:node2 1.5s infinite alternate;\n -webkit-animation-timing-function:ease-out;\n -moz-animation:node2 1.5s infinite alternate;\n -moz-animation-timing-function:ease-out;\n animation:node2 1.5s infinite alternate;\n animation-timing-function:ease-out;\n }\n \n .load{ position: absolute;\n width: 100px; height: 20px;\n margin: -10px auto;\n -webkit-font-smoothing: antialiased;\n -moz-font-smoothing: antialiased;\n font-smoothing: antialiased;\n font-family: \'Julius Sans One\', sans-serif;\n font-size:30px;\n font-weight:400;\n color:#eee;\n left: 10%;\n top: 5%;\n }\n </style>\n\n <div class="circ">\n <div class="load">A little patience ...</div>\n <div class="hands"></div>\n <div class="body"></div>\n <div class="head">\n <div class="eye"></div>\n </div>\n </div>\n')})}}},{key:"setEnv",value:function(e){this.env=e}}]),wt);function wt(){l(this,wt),this.configs={width:500,height:500,scrollbars:!0,resizable:!0,top:0,left:0},this.eventEmitter=new it}var bt,Ct=(bt=yt(),s(St,bt),n(St,[{key:"run",value:function(){this.isRunning()||(this.popup.init(),this.background.initControl())}},{key:"isRunning",value:function(){return this.popup.isExist()}},{key:"next",value:function(e){this.checkout=e,st.isSupportPopUp()||window.localStorage.setItem("paydock_checkout_token",JSON.stringify(this.checkout)),this.popup.redirect(this.checkout.link)}},{key:"continue",value:function(){this.popup.focus()}},{key:"stop",value:function(){this.popup.close()}},{key:"onStop",value:function(e){var t=this;this.popup.onClose(function(){t.background.clear(),t.checkout=null,e()})}},{key:"onCheckout",value:function(e,i){var r=this;this.dispatcher.on(e,function(e){if(r.checkout&&r.checkout.reference_id===e.reference_id)r.background.clear(),i(r.checkout);else if(!st.isSupportPopUp()){var t=window.localStorage.getItem("paydock_checkout_token");if(!t)return;var n=JSON.parse(t);n&&n.reference_id===e.reference_id&&(window.localStorage.removeItem("paydock_checkout_token"),r.checkout=n,r.background.clear(),i(r.checkout))}})}},{key:"setEnv",value:function(e,t){a(St.prototype.__proto__||Object.getPrototypeOf(St.prototype),"setEnv",this).call(this,e,t),this.dispatcher.setEnv(e,t),this.popup.setEnv(e)}}]),St);function St(e){l(this,St);var t=c(this,(St.__proto__||Object.getPrototypeOf(St)).call(this));return t.publicKey=e,t.checkout=null,t.dispatcher=new _t("checkout.paydock"),setTimeout(function(){return t.dispatcher.restartDispatcher()},200),t.popup=new Et,t}function Ot(e){return"run"in e}function Tt(e){return"setRedirectUrl"in e}var At="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function Pt(){throw new Error("Dynamic requires are not currently supported by rollup-plugin-commonjs")}function Rt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function xt(e,t){return e(t={exports:{}},t.exports),t.exports}Rt(xt(function(e){!function r(o,a,s){function u(t,e){if(!a[t]){if(!o[t]){if(!e&&Pt)return Pt();if(l)return l(t,!0);var n=new Error("Cannot find module '"+t+"'");throw n.code="MODULE_NOT_FOUND",n}var i=a[t]={exports:{}};o[t][0].call(i.exports,function(e){return u(o[t][1][e]||e)},i,i.exports,r,o,a,s)}return a[t].exports}for(var l=Pt,e=0;e<s.length;e++)u(s[e]);return u}({1:[function(e,t,n){function i(){throw new Error("setTimeout has not been defined")}function r(){throw new Error("clearTimeout has not been defined")}function o(t){if(c===setTimeout)return setTimeout(t,0);if((c===i||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(){f&&p&&(f=!1,p.length?v=p.concat(v):m=-1,v.length&&s())}function s(){if(!f){var e=o(a);f=!0;for(var t=v.length;t;){for(p=v,v=[];++m<t;)p&&p[m].run();m=-1,t=v.length}p=null,f=!1,function(t){if(d===clearTimeout)return clearTimeout(t);if((d===r||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}(e)}}function u(e,t){this.fun=e,this.array=t}function l(){}var c,d,h=t.exports={};!function(){try{c="function"==typeof setTimeout?setTimeout:i}catch(e){c=i}try{d="function"==typeof clearTimeout?clearTimeout:r}catch(e){d=r}}();var p,v=[],f=!1,m=-1;h.nextTick=function(e){var t=new Array(arguments.length-1);if(1<arguments.length)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];v.push(new u(e,t)),1!==v.length||f||o(s)},u.prototype.run=function(){this.fun.apply(null,this.array)},h.title="browser",h.browser=!0,h.env={},h.argv=[],h.version="",h.versions={},h.on=l,h.addListener=l,h.once=l,h.off=l,h.removeListener=l,h.removeAllListeners=l,h.emit=l,h.prependListener=l,h.prependOnceListener=l,h.listeners=function(e){return[]},h.binding=function(e){throw new Error("process.binding is not supported")},h.cwd=function(){return"/"},h.chdir=function(e){throw new Error("process.chdir is not supported")},h.umask=function(){return 0}},{}],2:[function(e,i,r){(function(Y){!function(e){if("function"==typeof bootstrap)bootstrap("promise",e);else if("object"==(void 0===r?"undefined":K(r))&&"object"==(void 0===i?"undefined":K(i)))i.exports=e();else if("undefined"!=typeof ses){if(!ses.ok())return;ses.makeQ=e}else{if("undefined"==typeof window&&"undefined"==typeof self)throw new Error("This environment was not anticipated by Q. Please file a bug.");var t="undefined"!=typeof window?window:self,n=t.Q;t.Q=e(),t.Q.noConflict=function(){return t.Q=n,this}}}(function(){function e(e){return function(){return A.apply(e,arguments)}}function s(e,t){if(w&&t.stack&&"object"==(void 0===e?"undefined":K(e))&&null!==e&&e.stack){for(var n=[],i=t;i;i=i.source)i.stack&&(!e.__minimumStackCounter__||e.__minimumStackCounter__>i.stackCounter)&&(U(e,"__minimumStackCounter__",{value:i.stackCounter,configurable:!0}),n.unshift(i.stack));n.unshift(e.stack);var r=function(e){for(var t=e.split("\n"),n=[],i=0;i<t.length;++i){var r=t[i];a(r)||(-1!==(o=r).indexOf("(module.js:")||-1!==o.indexOf("(node.js:"))||!r||n.push(r)}var o;return n.join("\n")}(n.join("\n"+F+"\n"));U(e,"stack",{value:r,configurable:!0})}}function r(e){var t=/at .+ \((.+):(\d+):(?:\d+)\)$/.exec(e);if(t)return[t[1],Number(t[2])];var n=/at ([^ ]+):(\d+):(?:\d+)$/.exec(e);if(n)return[n[1],Number(n[2])];var i=/.*@(.+):(\d+)$/.exec(e);return i?[i[1],Number(i[2])]:void 0}function a(e){var t=r(e);if(t){var n=t[0],i=t[1];return n===C&&O<=i&&i<=V}}function t(){if(w)try{throw new Error}catch(e){var t=e.stack.split("\n"),n=r(0<t[0].indexOf("@")?t[1]:t[2]);if(!n)return;return C=n[0],n[1]}}function u(e){return e instanceof c?e:o(e)?(t=e,n=l(),u.nextTick(function(){try{t.then(n.resolve,n.reject,n.notify)}catch(e){n.reject(e)}}),n.promise):m(e);var t,n}function l(){function t(n){r=n,u.longStackSupport&&w&&(i.source=n),R(o,function(e,t){u.nextTick(function(){n.promiseDispatch.apply(n,t)})},void 0),a=o=void 0}var r,o=[],a=[],e=I(l.prototype),i=I(c.prototype);if(i.promiseDispatch=function(e,t,n){var i=P(arguments);o?(o.push(i),"when"===t&&n[1]&&a.push(n[1])):u.nextTick(function(){r.promiseDispatch.apply(r,i)})},i.valueOf=function(){if(o)return i;var e=h(r);return p(e)&&(r=e),e},i.inspect=function(){return r?r.inspect():{state:"pending"}},u.longStackSupport&&w)try{throw new Error}catch(t){i.stack=t.stack.substring(t.stack.indexOf("\n")+1),i.stackCounter=j++}return e.promise=i,e.resolve=function(e){r||t(u(e))},e.fulfill=function(e){r||t(m(e))},e.reject=function(e){r||t(f(e))},e.notify=function(n){r||R(a,function(e,t){u.nextTick(function(){t(n)})},void 0)},e}function n(e){if("function"!=typeof e)throw new TypeError("resolver must be a function.");var t=l();try{e(t.resolve,t.reject,t.notify)}catch(e){t.reject(e)}return t.promise}function i(r){return n(function(e,t){for(var n=0,i=r.length;n<i;n++)u(r[n]).then(e,t)})}function c(r,o,t){void 0===o&&(o=function(e){return f(new Error("Promise does not support operation: "+e))}),void 0===t&&(t=function(){return{state:"unknown"}});var a=I(c.prototype);if(a.promiseDispatch=function(e,t,n){var i;try{i=r[t]?r[t].apply(a,n):o.call(a,t,n)}catch(e){i=f(e)}e&&e(i)},a.inspect=t){var e=t();"rejected"===e.state&&(a.exception=e.reason),a.valueOf=function(){var e=t();return"pending"===e.state||"rejected"===e.state?a:e.value}}return a}function d(e,t,n,i){return u(e).then(t,n,i)}function h(e){if(p(e)){var t=e.inspect();if("fulfilled"===t.state)return t.value}return e}function p(e){return e instanceof c}function o(e){return(t=e)===Object(t)&&"function"==typeof e.then;var t}function v(){B.length=0,z.length=0,W=W||!0}function f(t){var e,n,i=c({when:function(e){return e&&function(t){if(W){var n=x(z,t);-1!==n&&("object"==(void 0===Y?"undefined":K(Y))&&"function"==typeof Y.emit&&u.nextTick.runAfter(function(){var e=x(q,t);-1!==e&&(Y.emit("rejectionHandled",B[n],t),q.splice(e,1))}),z.splice(n,1),B.splice(n,1))}}(this),e?e(t):this}},function(){return this},function(){return{state:"rejected",reason:t}});return e=i,n=t,W&&("object"==(void 0===Y?"undefined":K(Y))&&"function"==typeof Y.emit&&u.nextTick.runAfter(function(){-1!==x(z,e)&&(Y.emit("unhandledRejection",n,e),q.push(e))}),z.push(e),n&&void 0!==n.stack?B.push(n.stack):B.push("(no stack) "+n)),i}function m(n){return c({when:function(){return n},get:function(e){return n[e]},set:function(e,t){n[e]=t},delete:function(e){delete n[e]},post:function(e,t){return null==e?n.apply(void 0,t):n[e].apply(n,t)},apply:function(e,t){return n.apply(e,t)},keys:function(){return N(n)}},void 0,function(){return{state:"fulfilled",value:n}})}function y(e,t,n){return u(e).spread(t,n)}function g(e,t,n){return u(e).dispatch(t,n)}function _(e){return d(e,function(r){var o=0,a=l();return R(r,function(e,t,n){var i;p(t)&&"fulfilled"===(i=t.inspect()).state?r[n]=i.value:(++o,d(t,function(e){r[n]=e,0==--o&&a.resolve(r)},a.reject,function(e){a.notify({index:n,value:e})}))},void 0),0===o&&a.resolve(r),a.promise})}function k(r){if(0===r.length)return u.resolve();var o=u.defer(),a=0;return R(r,function(e,t,n){var i=r[n];a++,d(i,function(e){o.resolve(e)},function(e){0==--a&&(e.message="Q can't get fulfillment value from any promise, all promises were rejected. Last error message: "+e.message,o.reject(e))},function(e){o.notify({index:n,value:e})})},void 0),o.promise}function E(e){return d(e,function(e){return e=L(e,u),d(_(L(e,function(e){return d(e,b,b)})),function(){return e})})}var w=!1;try{throw new Error}catch(e){w=!!e.stack}function b(){}var C,S,O=t(),T=function(){function n(){for(var e,t;r.next;)e=(r=r.next).task,r.task=void 0,(t=r.domain)&&(r.domain=void 0,t.enter()),i(e,t);for(;u.length;)i(e=u.pop());o=!1}function i(e,t){try{e()}catch(e){if(s)throw t&&t.exit(),setTimeout(n,0),t&&t.enter(),e;setTimeout(function(){throw e},0)}t&&t.exit()}var r={task:void 0,next:null},t=r,o=!1,a=void 0,s=!1,u=[];if(T=function(e){t=t.next={task:e,domain:s&&Y.domain,next:null},o||(o=!0,a())},"object"==(void 0===Y?"undefined":K(Y))&&"[object process]"===Y.toString()&&Y.nextTick)s=!0,a=function(){Y.nextTick(n)};else if("function"==typeof setImmediate)a="undefined"!=typeof window?setImmediate.bind(window,n):function(){setImmediate(n)};else if("undefined"!=typeof MessageChannel){var e=new MessageChannel;e.port1.onmessage=function(){a=l,(e.port1.onmessage=n)()};var l=function(){e.port2.postMessage(0)};a=function(){setTimeout(n,0),l()}}else a=function(){setTimeout(n,0)};return T.runAfter=function(e){u.push(e),o||(o=!0,a())},T}(),A=Function.call,P=e(Array.prototype.slice),R=e(Array.prototype.reduce||function(e,t){var n=0,i=this.length;if(1===arguments.length)for(;;){if(n in this){t=this[n++];break}if(++n>=i)throw new TypeError}for(;n<i;n++)n in this&&(t=e(t,this[n],n));return t}),x=e(Array.prototype.indexOf||function(e){for(var t=0;t<this.length;t++)if(this[t]===e)return t;return-1}),L=e(Array.prototype.map||function(i,r){var o=this,a=[];return R(o,function(e,t,n){a.push(i.call(r,t,n,o))},void 0),a}),I=Object.create||function(e){function t(){}return t.prototype=e,new t},U=Object.defineProperty||function(e,t,n){return e[t]=n.value,e},D=e(Object.prototype.hasOwnProperty),N=Object.keys||function(e){var t=[];for(var n in e)D(e,n)&&t.push(n);return t},M=e(Object.prototype.toString);S="undefined"!=typeof ReturnValue?ReturnValue:function(e){this.value=e};var F="From previous event:";(u.resolve=u).nextTick=T,u.longStackSupport=!1;var j=1;"object"==(void 0===Y?"undefined":K(Y))&&Y&&Y.env&&Y.env.Q_DEBUG&&(u.longStackSupport=!0),(u.defer=l).prototype.makeNodeResolver=function(){var n=this;return function(e,t){e?n.reject(e):2<arguments.length?n.resolve(P(arguments,1)):n.resolve(t)}},u.Promise=n,(u.promise=n).race=i,n.all=_,n.reject=f,(n.resolve=u).passByCopy=function(e){return e},c.prototype.passByCopy=function(){return this},u.join=function(e,t){return u(e).join(t)},c.prototype.join=function(e){return u([this,e]).spread(function(e,t){if(e===t)return e;throw new Error("Q can't join: not the same: "+e+" "+t)})},u.race=i,c.prototype.race=function(){return this.then(u.race)},(u.makePromise=c).prototype.toString=function(){return"[object Promise]"},c.prototype.then=function(t,n,r){var i=this,o=l(),a=!1;return u.nextTick(function(){i.promiseDispatch(function(e){a||(a=!0,o.resolve(function(e){try{return"function"==typeof t?t(e):e}catch(e){return f(e)}}(e)))},"when",[function(e){a||(a=!0,o.resolve(function(e){if("function"==typeof n){s(e,i);try{return n(e)}catch(e){return f(e)}}return f(e)}(e)))}])}),i.promiseDispatch(void 0,"when",[void 0,function(e){var t,n,i=!1;try{n=e,t="function"==typeof r?r(n):n}catch(e){if(i=!0,!u.onerror)throw e;u.onerror(e)}i||o.notify(t)}]),o.promise},u.tap=function(e,t){return u(e).tap(t)},c.prototype.tap=function(t){return t=u(t),this.then(function(e){return t.fcall(e).thenResolve(e)})},u.when=d,c.prototype.thenResolve=function(e){return this.then(function(){return e})},u.thenResolve=function(e,t){return u(e).thenResolve(t)},c.prototype.thenReject=function(e){return this.then(function(){throw e})},u.thenReject=function(e,t){return u(e).thenReject(t)},u.nearer=h,u.isPromise=p,u.isPromiseAlike=o,u.isPending=function(e){return p(e)&&"pending"===e.inspect().state},c.prototype.isPending=function(){return"pending"===this.inspect().state},u.isFulfilled=function(e){return!p(e)||"fulfilled"===e.inspect().state},c.prototype.isFulfilled=function(){return"fulfilled"===this.inspect().state},u.isRejected=function(e){return p(e)&&"rejected"===e.inspect().state},c.prototype.isRejected=function(){return"rejected"===this.inspect().state};var H,B=[],z=[],q=[],W=!0;u.resetUnhandledRejections=v,u.getUnhandledReasons=function(){return B.slice()},u.stopUnhandledRejectionTracking=function(){v(),W=!1},v(),u.reject=f,u.fulfill=m,u.master=function(n){return c({isDef:function(){}},function(e,t){return g(n,e,t)},function(){return u(n).inspect()})},u.spread=y,c.prototype.spread=function(t,e){return this.all().then(function(e){return t.apply(void 0,e)},e)},u.async=function(t){return function(){function e(e,t){var n;if("undefined"==typeof StopIteration){try{n=i[e](t)}catch(e){return f(e)}return n.done?u(n.value):d(n.value,r,o)}try{n=i[e](t)}catch(e){return function(e){return"[object StopIteration]"===M(e)||e instanceof S}(e)?u(e.value):f(e)}return d(n,r,o)}var i=t.apply(this,arguments),r=e.bind(e,"next"),o=e.bind(e,"throw");return r()}},u.spawn=function(e){u.done(u.async(e)())},u.return=function(e){throw new S(e)},u.promised=function(n){return function(){return y([this,_(arguments)],function(e,t){return n.apply(e,t)})}},u.dispatch=g,c.prototype.dispatch=function(e,t){var n=this,i=l();return u.nextTick(function(){n.promiseDispatch(i.resolve,e,t)}),i.promise},u.get=function(e,t){return u(e).dispatch("get",[t])},c.prototype.get=function(e){return this.dispatch("get",[e])},u.set=function(e,t,n){return u(e).dispatch("set",[t,n])},c.prototype.set=function(e,t){return this.dispatch("set",[e,t])},u.del=u.delete=function(e,t){return u(e).dispatch("delete",[t])},c.prototype.del=c.prototype.delete=function(e){return this.dispatch("delete",[e])},u.mapply=u.post=function(e,t,n){return u(e).dispatch("post",[t,n])},c.prototype.mapply=c.prototype.post=function(e,t){return this.dispatch("post",[e,t])},u.send=u.mcall=u.invoke=function(e,t){return u(e).dispatch("post",[t,P(arguments,2)])},c.prototype.send=c.prototype.mcall=c.prototype.invoke=function(e){return this.dispatch("post",[e,P(arguments,1)])},u.fapply=function(e,t){return u(e).dispatch("apply",[void 0,t])},c.prototype.fapply=function(e){return this.dispatch("apply",[void 0,e])},u.try=u.fcall=function(e){return u(e).dispatch("apply",[void 0,P(arguments,1)])},c.prototype.fcall=function(){return this.dispatch("apply",[void 0,P(arguments)])},u.fbind=function(e){var t=u(e),n=P(arguments,1);return function(){return t.dispatch("apply",[this,n.concat(P(arguments))])}},c.prototype.fbind=function(){var e=this,t=P(arguments);return function(){return e.dispatch("apply",[this,t.concat(P(arguments))])}},u.keys=function(e){return u(e).dispatch("keys",[])},c.prototype.keys=function(){return this.dispatch("keys",[])},u.all=_,c.prototype.all=function(){return _(this)},u.any=k,c.prototype.any=function(){return k(this)},u.allResolved=(H=E,function(){return"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn("allResolved is deprecated, use allSettled instead.",new Error("").stack),H.apply(H,arguments)}),c.prototype.allResolved=function(){return E(this)},u.allSettled=function(e){return u(e).allSettled()},c.prototype.allSettled=function(){return this.then(function(e){return _(L(e,function(e){function t(){return e.inspect()}return(e=u(e)).then(t,t)}))})},u.fail=u.catch=function(e,t){return u(e).then(void 0,t)},c.prototype.fail=c.prototype.catch=function(e){return this.then(void 0,e)},u.progress=function(e,t){return u(e).then(void 0,void 0,t)},c.prototype.progress=function(e){return this.then(void 0,void 0,e)},u.fin=u.finally=function(e,t){return u(e).finally(t)},c.prototype.fin=c.prototype.finally=function(t){if(!t||"function"!=typeof t.apply)throw new Error("Q can't apply finally callback");return t=u(t),this.then(function(e){return t.fcall().then(function(){return e})},function(e){return t.fcall().then(function(){throw e})})},u.done=function(e,t,n,i){return u(e).done(t,n,i)},c.prototype.done=function(e,t,n){var i=function(e){u.nextTick(function(){if(s(e,r),!u.onerror)throw e;u.onerror(e)})},r=e||t||n?this.then(e,t,n):this;"object"==(void 0===Y?"undefined":K(Y))&&Y&&Y.domain&&(i=Y.domain.bind(i)),r.then(void 0,i)},u.timeout=function(e,t,n){return u(e).timeout(t,n)},c.prototype.timeout=function(e,t){var n=l(),i=setTimeout(function(){t&&"string"!=typeof t||((t=new Error(t||"Timed out after "+e+" ms")).code="ETIMEDOUT"),n.reject(t)},e);return this.then(function(e){clearTimeout(i),n.resolve(e)},function(e){clearTimeout(i),n.reject(e)},n.notify),n.promise},u.delay=function(e,t){return void 0===t&&(t=e,e=void 0),u(e).delay(t)},c.prototype.delay=function(n){return this.then(function(e){var t=l();return setTimeout(function(){t.resolve(e)},n),t.promise})},u.nfapply=function(e,t){return u(e).nfapply(t)},c.prototype.nfapply=function(e){var t=l(),n=P(e);return n.push(t.makeNodeResolver()),this.fapply(n).fail(t.reject),t.promise},u.nfcall=function(e){var t=P(arguments,1);return u(e).nfapply(t)},c.prototype.nfcall=function(){var e=P(arguments),t=l();return e.push(t.makeNodeResolver()),this.fapply(e).fail(t.reject),t.promise},u.nfbind=u.denodeify=function(n){if(void 0===n)throw new Error("Q can't wrap an undefined function");var i=P(arguments,1);return function(){var e=i.concat(P(arguments)),t=l();return e.push(t.makeNodeResolver()),u(n).fapply(e).fail(t.reject),t.promise}},c.prototype.nfbind=c.prototype.denodeify=function(){var e=P(arguments);return e.unshift(this),u.denodeify.apply(void 0,e)},u.nbind=function(n,i){var r=P(arguments,2);return function(){var e=r.concat(P(arguments)),t=l();return e.push(t.makeNodeResolver()),u(function(){return n.apply(i,arguments)}).fapply(e).fail(t.reject),t.promise}},c.prototype.nbind=function(){var e=P(arguments,0);return e.unshift(this),u.nbind.apply(void 0,e)},u.nmapply=u.npost=function(e,t,n){return u(e).npost(t,n)},c.prototype.nmapply=c.prototype.npost=function(e,t){var n=P(t||[]),i=l();return n.push(i.makeNodeResolver()),this.dispatch("post",[e,n]).fail(i.reject),i.promise},u.nsend=u.nmcall=u.ninvoke=function(e,t){var n=P(arguments,2),i=l();return n.push(i.makeNodeResolver()),u(e).dispatch("post",[t,n]).fail(i.reject),i.promise},c.prototype.nsend=c.prototype.nmcall=c.prototype.ninvoke=function(e){var t=P(arguments,1),n=l();return t.push(n.makeNodeResolver()),this.dispatch("post",[e,t]).fail(n.reject),n.promise},u.nodeify=function(e,t){return u(e).nodeify(t)},c.prototype.nodeify=function(t){if(!t)return this;this.then(function(e){u.nextTick(function(){t(null,e)})},function(e){u.nextTick(function(){t(e)})})},u.noConflict=function(){throw new Error("Q.noConflict only works when Q is used as a global")};var V=t();return u})}).call(this,e("_process"))},{_process:1}],3:[function(e,t,n){function o(e){switch(void 0===e?"undefined":K(e)){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}}t.exports=function(n,i,r,e){return i=i||"&",r=r||"=",null===n&&(n=void 0),"object"==(void 0===n?"undefined":K(n))?Object.keys(n).map(function(e){var t=encodeURIComponent(o(e))+r;return Array.isArray(n[e])?n[e].map(function(e){return t+encodeURIComponent(o(e))}).join(i):t+encodeURIComponent(o(n[e]))}).join(i):e?encodeURIComponent(o(e))+r+encodeURIComponent(o(n)):""}},{}],4:[function(e,t,n){function i(e){return e&&e.__esModule?e:{default:e}}function r(n,i,r){return l.default.information("zip:checkout:init"),c.default.Promise(function(e,t){return n.onCheckout(e,t,{})}).then(function(e){var t=e.redirect_uri||e.redirectUri||e.data&&(e.data.redirect_uri||e.data.redirectUri);if(!t)return l.default.debug("zip:checkout:error","Response does not contain redirectUri property"),r(e),void n.onError({code:"checkout_error",message:"The response does not contain the redirectUri property",detail:e});l.default.debug("zip:checkout:success",e),i({redirectUri:t})}).catch(function(e){l.default.debug("zip:checkout:error",e),r(e),n.onError({code:"checkout_error",message:"Checkout response error",detail:e})})}Object.defineProperty(n,"__esModule",{value:!0}),n.Checkout=void 0;var o=function(e,t,n){return t&&p(e.prototype,t),n&&p(e,n),e},a=i(e("./modal")),s=i(e("./options")),u=i(e("./utility")),l=i(e("./console")),c=i((e("./events"),e("q"))),d=(o(h,null,[{key:"init",value:function(t){if("function"!=typeof Object.assign&&(Object.assign=function(e){if(null==e)throw new TypeError("Cannot convert undefined or null to object");e=Object(e);for(var t=1;t<arguments.length;t++){var n=arguments[t];if(null!=n)for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}),t=P({},s.default,t),!this._validate(t))return l.default.setLevel(t.logLevel),t.redirect?r(t,function(e){return t.redirectFn(e.redirectUri)}):(e=t,(n=new a.default).onClose=e.onComplete.bind(e),n.build(),void r(e,function(e){return n.setUri(e.redirectUri)},function(e){return n.close(!1)}));var e,n}},{key:"attachButton",value:function(e,t){var n=document.querySelectorAll(e);if(!n.length)return config.onError({code:"attach_error",message:"Cannot find button to attach zipMoney checkout"});for(var i=0;i<n.length;i++)u.default.addEventHandler(n[i],"click",function(){return Zip.Checkout.init(t)})}},{key:"_validate",value:function(e){return["error","information","debug"].indexOf(e.logLevel.toLowerCase())<0&&(e.logLevel="error"),["standard","express"].indexOf(e.request.toLowerCase())<0&&(e.request="standard"),e.onComplete=e.onComplete||function(){},e.onError=e.onError||function(){},e.checkoutUri||e.onCheckout!==s.default.onCheckout?"express"===e.request?e.onError({code:"not_implemented",message:"This feature is not yet implemented"}):e.redirect||e.onComplete!==s.default.onComplete||e.redirectUri?void 0:e.onError({code:"validation",message:"if onComplete function is not specified then redirectUri must be specified"}):e.onError({code:"validation",message:"if onCheckout function is not specified then checkoutUri must be specified"})}}]),h);function h(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,h)}function p(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}n.Checkout=d},{"./console":5,"./events":6,"./modal":8,"./options":9,"./utility":10,q:2}],5:[function(e,t,n){Object.defineProperty(n,"__esModule",{value:!0});var i="error",r={error:function(){var e;(e=window.console).log.apply(e,arguments)},information:function(){var e;"error"!==i&&(e=window.console).log.apply(e,arguments)},debug:function(){var e;"debug"===i&&(e=window.console).log.apply(e,arguments)},setLevel:function(e){i=e}};n.default=r},{}],6:[function(c,e,d){(function(i){Object.defineProperty(d,"__esModule",{value:!0}),d.EventListener=void 0;var e=function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e},t=c("./utility");function r(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}if((t&&t.__esModule?t:{default:t}).default.isIe){var n=function(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};var n=document.createEvent("CustomEvent");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n};n.prototype=i.Event.prototype,i.CustomEvent=n}var o={},a=d.EventListener=(e(s,null,[{key:"constructor",value:function(){o={}}},{key:"on",value:function(e,t){o[e]=t}},{key:"off",value:function(e){o[e]=null}}]),s);function s(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,s)}a.Event=function(e,t){this.eventType=e,this.data=t||{}},a.Event.eventTypes={resize:"resize",transition:"transition",close:"close",complete:"complete",clear:"clear"};var u=window.addEventListener?"addEventListener":"attachEvent",l=window[u];l("attachEvent"==u?"onmessage":"message",function(e){var t,n;e.data.zipmoney&&(t=e.data.msg,n=new i.CustomEvent("zipmoney",{detail:t}),i.dispatchEvent(n))},!1),l("zipmoney",function(e){var t,n=e.detail.eventType,i=o[n];i?i(e.detail.data||{}):(t=e,console.log("Unexpected Event",t))},!1)}).call(this,void 0!==At?At:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./utility":10}],7:[function(i,e,t){(function(e){var t=i("./checkout"),n=i("./events");e.Zip=e.Zip||{},e.Zip.Checkout=t.Checkout,e.zipMoneyEvent=n.EventListener.ZipEvent}).call(this,void 0!==At?At:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./checkout":4,"./events":6}],8:[function(e,t,n){function i(e){return e&&e.__esModule?e:{default:e}}function o(){return Math.max(document.documentElement.clientHeight,window.innerHeight||0)}function s(){var e=document.body,t=document.documentElement;return Math.max(e.scrollHeight,e.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight)}function u(e){for(var t=document.querySelectorAll("html, body"),n=0;n<t.length;n++)t[n].style.overflowY=e}function l(e){var t=document.body.currentStyle||window.getComputedStyle(document.body),n=e-(document.body.offsetHeight+(parseInt(t.marginTop,10)+parseInt(t.marginBottom,10))-parseInt(t.height,10));document.body.style.height=n+"px"}Object.defineProperty(n,"__esModule",{value:!0});var r=function(e,t,n){return t&&m(e.prototype,t),n&&m(e,n),e},a=i(e("./utility")),c=e("./events"),d=(i(e("./console")),{iframeWidth:400,iframeMinWidth:320,iframeInitialHeight:704,iframeMinHeight:600,verticalMargin:35}),h=["resize","transition","close","complete","clear"],p="https://d3k1w8lx8mqizo.cloudfront.net/zm/",v=(r(f,[{key:"build",value:function(){this._initialHtmlHeight=s(),window.scrollTo(0,0);var e,t,n,i,r,o=this._frame=(e=this._frameUri,t=this._isMobile,(n=document.createElement("iframe")).id="zipmoney-iframe",n.frameborder=0,P(n.style,{padding:"0",border:"none",zIndex:"999999",backgroundColor:"#FFF",backgroundImage:"url("+p+"spinner.gif)",backgroundRepeat:"no-repeat",backgroundPosition:"50% 50%"}),P(n.style,t?{overflow:"scroll",width:"100%",height:"100%",position:"absolute",top:"0",bottom:"0",left:"0",right:"0",margin:"0"}:{width:d.iframeWidth+"px",minWidth:d.iframeMinWidth+"px",height:d.iframeInitialHeight+"px",margin:d.verticalMargin+"px auto 0 auto",display:"table-row",backgroundSize:"25%",textAlign:"center",boxShadow:"0px 0px 70px 0px rgb(0, 0, 0)"}),n.src=e||"",n);if(!this._isMobile){var a=((r=document.createElement("img")).src=p+"icon-close.png",P(r.style,{width:"50px",height:"50px",position:"absolute",top:"20px",right:"20px",cursor:"pointer"}),r);a.onclick=this.close.bind(this),this._overlay=((i=document.createElement("div")).className="zipmoney-overlay",P(i.style,{position:"absolute",left:"0",top:"0",display:"table-cell",textAlign:"center",verticalAlign:"middle",background:"rgba(0, 0, 0, 0.75)",zIndex:"10000",height:"100%",width:"100%"}),i),this._overlay.appendChild(a),this._overlay.appendChild(this._frame),this._overlay.appendChild(function(){var e=document.createElement("div");e.style.width=d.iframeWidth+"px",e.style.minWidth=d.iframeMinWidth+"px",e.style.margin="10px auto 0 auto",e.style.overflow="hidden";var t=document.createElement("img");t.src=p+"iframe-secure.png",t.style.cssFloat="left";var n=document.createElement("img");return n.src=p+"poweredby-trans.png",n.style.cssFloat="right",e.appendChild(t),e.appendChild(n),e}()),o=this._overlay}document.body.appendChild(o),this._isMobile&&l(this._frame.offsetHeight),u("auto"),this._startMonitoringWindowResize()}},{key:"setUri",value:function(e){this._frameUri=e,this._frame&&(this._frame.src=e)}},{key:"resize",value:function(e){var t=this._isMobile?16:0,n=(e=d.iframeMinHeight<=e?e:d.iframeMinHeight,(e+=t)+2*d.verticalMargin),i=o();this._frame.style.height=e+"px",this._overlay&&(this._overlay.style.height=Math.max(i,this._initialHtmlHeight,n)+"px"),this._isMobile&&l(e)}},{key:"transition",value:function(){window.scroll(0,0)}},{key:"close",value:function(e){var t=!(0<arguments.length&&void 0!==e)||e,n={state:"cancelled"};this._events.length&&(n=this._events.pop()),this._destroy(),this.onClose&&t&&this.onClose(n)}},{key:"complete",value:function(e){this._events.push(e)}},{key:"clear",value:function(){this._events=[]}},{key:"_startMonitoringWindowResize",value:function(){var r=this;this._resizeHandler=a.default.debounce(function(){return e=r,t=o(),n=s(),i=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,e._overlay&&(e._overlay.style.height=Math.max(t,n)+"px"),void(e._isMobile||i<d.iframeWidth?e._frame.style.width="100%":e._frame.style.width=d.iframeWidth+"px");var e,t,n,i},250),a.default.addEventHandler(window,"resize",this._resizeHandler)}},{key:"_stopMonitoringWindowResize",value:function(){a.default.removeEventHandler(window,"resize",this._resizeHandler)}},{key:"_destroy",value:function(){this._stopMonitoringWindowResize(),this._overlay?document.body.removeChild(this._overlay):document.body.removeChild(this._frame),this._isMobile&&(document.body.style.height="initial"),u("initial"),this._overlay=this._frame=null,h.forEach(function(e){return c.EventListener.off(c.EventListener.Event.eventTypes[e])})}}]),f);function f(){var t=this;(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,f),this._events=[],this._isMobile=a.default.isMobileDevice(),h.forEach(function(e){return c.EventListener.on(c.EventListener.Event.eventTypes[e],t[e].bind(t))})}function m(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}n.default=v},{"./console":5,"./events":6,"./utility":10}],9:[function(e,t,n){function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(n,"__esModule",{value:!0});var r=i(e("./xr")),o=i(e("./console"));r.default.configure({headers:{"X-Requested-With":"XMLHttpRequest"}});var a={request:"standard",redirect:!1,logLevel:"Error",onCheckout:function(t,e){r.default.post(this.checkoutUri).then(function(e){return t(e.data)}).catch(e)},onShippingAddressChanged:function(e,t){r.default.post(this.shippingUri).then(e).catch(t)},onComplete:function(e){if(o.default.information("zip:completed",e),"cancelled"!==e.state){var t=e.checkoutId?"&checkoutId="+e.checkoutId:"";this.redirectFn(this.redirectUri+"?result="+e.state+t)}},onError:function(e){o.default.error(e)},redirectFn:function(e){window.location.href=e}};n.default=a},{"./console":5,"./xr":11}],10:[function(e,t,n){Object.defineProperty(n,"__esModule",{value:!0});var i=(function(e,t,n){return t&&o(e.prototype,t),n&&o(e,n),e}(r,null,[{key:"isIe",value:function(){var e=-1,t=window.navigator.userAgent,n=t.indexOf("MSIE "),i=t.indexOf("Trident/");if(0<n)e=parseInt(t.substring(n+5,t.indexOf(".",n)),10);else if(0<i){var r=t.indexOf("rv:");e=parseInt(t.substring(r+3,t.indexOf(".",r)),10)}return-1<e?e:void 0}},{key:"isMobileDevice",value:function(){var e=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0,4))}},{key:"debounce",value:function(i,r){var o;return function(){var e=this,t=arguments,n=!o;clearTimeout(o),o=setTimeout(function(){o=null,i.apply(e,t)},r),n&&i.apply(e,t)}}},{key:"addEventHandler",value:function(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent&&e.attachEvent("on"+t,n)}},{key:"removeEventHandler",value:function(e,t,n){e.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent&&e.detachEvent("on"+t,n)}}]),r);function r(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,r)}function o(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}n.default=i},{}],11:[function(e,t,n){function i(e){return e&&e.__esModule?e:{default:e}}function u(e,t){return{status:e.status,response:e.response,data:t,xhr:e}}function l(e){for(var t=arguments.length,n=Array(1<t?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];for(var r in n)if({}.hasOwnProperty.call(n,r)){var o=n[r];if("object"===(void 0===o?"undefined":c(o)))for(var a in o)!{}.hasOwnProperty.call(o,a)||(e[a]=o[a])}return e}function r(s){return t=function(t,n){var i=l({},p,v,s),r=i.xmlHttpRequest();for(var e in i.abort&&s.abort(function(){n(u(r)),r.abort()}),r.open(i.method,i.params?i.url.split("?")[0]+"?"+(0,d.default)(i.params):i.url,!0),r.withCredentials=i.withCredentials,r.addEventListener(h.LOAD,function(){if(200<=r.status&&r.status<300){var e=null;r.responseText&&(e=!0===i.raw?r.responseText:i.load(r.responseText)),t(u(r,e))}else n(u(r))}),r.addEventListener(h.ABORT,function(){return n(u(r))}),r.addEventListener(h.ERROR,function(){return n(u(r))}),r.addEventListener(h.TIMEOUT,function(){return n(u(r))}),i.headers)!{}.hasOwnProperty.call(i.headers,e)||r.setRequestHeader(e,i.headers[e]);for(var o in i.events)!{}.hasOwnProperty.call(i.events,o)||r.addEventListener(o,i.events[o].bind(null,r),!1);var a="object"!==c(i.data)||i.raw?i.data:i.dump(i.data);void 0!==a?r.send(a):r.send()},((e=s)&&e.promise?e.promise:v.promise||p.promise)(t);var e,t}Object.defineProperty(n,"__esModule",{value:!0});var c="function"==typeof Symbol&&"symbol"==K(Symbol.iterator)?function(e){return void 0===e?"undefined":K(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":void 0===e?"undefined":K(e)},d=i(e("querystring/encode")),o=i(e("q")),a={GET:"GET",POST:"POST",PUT:"PUT",DELETE:"DELETE",PATCH:"PATCH",OPTIONS:"OPTIONS"},h={READY_STATE_CHANGE:"readystatechange",LOAD_START:"loadstart",PROGRESS:"progress",ABORT:"abort",ERROR:"error",LOAD:"load",TIMEOUT:"timeout",LOAD_END:"loadend"},p={method:a.GET,data:void 0,headers:{Accept:"application/json","Content-Type":"application/json"},dump:JSON.stringify,load:JSON.parse,xmlHttpRequest:function(){return new XMLHttpRequest},promise:function(e){return o.default.Promise(e)},withCredentials:!1},v={};r.assign=l,r.encode=d.default,r.configure=function(e){v=l({},v,e)},r.Methods=a,r.Events=h,r.defaults=p,r.get=function(e,t,n){return r(l({url:e,method:a.GET,params:t},n))},r.put=function(e,t,n){return r(l({url:e,method:a.PUT,data:t},n))},r.post=function(e,t,n){return r(l({url:e,method:a.POST,data:t},n))},r.patch=function(e,t,n){return r(l({url:e,method:a.PATCH,data:t},n))},r.del=function(e,t){return r(l({url:e,method:a.DELETE},t))},r.options=function(e,t){return r(l({url:e,method:a.OPTIONS},t))},n.default=r},{q:2,"querystring/encode":3}]},{},[7])}));var Lt=(s(It,ft),n(It,[{key:"setEnv",value:function(e,t){a(It.prototype.__proto__||Object.getPrototypeOf(It.prototype),"setEnv",this).call(this,e,t),this.apiEnv.setEnv(e,t)}},{key:"getCheckoutUri",value:function(e){return this.apiEnv.getConf().url+"/v1/echo?"+X.serialize({json_body:JSON.stringify({redirect_uri:e})})}}]),It);function It(){l(this,It);var e=c(this,(It.__proto__||Object.getPrototypeOf(It)).call(this));return e.apiEnv=new G(z),e}var Ut,Dt=(Ut=yt(Lt),s(Nt,Ut),n(Nt,[{key:"run",value:function(){this.runs=!0,this.background.initLoader()}},{key:"isRunning",value:function(){return this.runs}},{key:"next",value:function(e){var t=this;this.background.clear(),this.checkout=e;var n=this.getCheckoutUri(this.checkout.link);Zip.Checkout.init({checkoutUri:n,onComplete:function(e){return t.eventHandler(e)},onError:function(e){return t.eventHandler(e)}})}},{key:"getSuccessRedirectUri",value:function(){return this.suspendedRedirectUri?this.suspendedRedirectUri:this.widgetEnv.getConf().url+String("/checkout/zipmoney/suspended")}},{key:"getErrorRedirectUri",value:function(){return this.getSuccessRedirectUri()}},{key:"stop",value:function(){a(Nt.prototype.__proto__||Object.getPrototypeOf(Nt.prototype),"stop",this).call(this),this.runs=!1;var e=document.querySelector(".zipmoney-overlay");e&&e.remove(),this.eventEmitter.emit(pt.CLOSE)}},{key:"onStop",value:function(e){var t=this;this.eventEmitter.subscribe(pt.CLOSE,function(){t.background.clear(),e()})}},{key:"onCheckout",value:function(e,t){var n=this;this.eventEmitter.subscribe(e,function(){t(n.checkout)})}},{key:"eventHandler",value:function(e){switch(this.runs=!1,e.state){case"approved":this.eventEmitter.emit(pt.CLOSE),this.eventEmitter.emit(pt.SUCCESS);break;case"declined":this.eventEmitter.emit(pt.CLOSE),this.eventEmitter.emit(pt.DECLINED);break;case"cancelled":this.eventEmitter.emit(pt.CLOSE);break;case"referred":this.eventEmitter.emit(pt.CLOSE),this.eventEmitter.emit(pt.REFERRED);break;default:console.warn("[CheckoutButton:Zipmoney] Unknown gateway status.")}}}]),Nt);function Nt(){l(this,Nt);var e=c(this,(Nt.__proto__||Object.getPrototypeOf(Nt)).call(this));return e.runs=!1,e.eventEmitter=new it,e}var Mt,Ft="[Paydock:StorageDispatcher]";(Mt||(Mt={})).WIDGET_SESSION="widget-session";var jt=(n(Ht,[{key:"create",value:function(e){this.onLoadCallback=e,this.dispatcherFrame&&this.destroy(),this.widgetId=Q.generate(),this.setupIframeEventListeners();var t=document.createElement("iframe");return t.setAttribute("src",this.env.getConf().url+"/storage-dispatcher?widgetId="+this.widgetId),t.setAttribute("id","pd-storage-dispatcher"),t.style.display="none",document.body.appendChild(t),this.dispatcherFrame=t,console.info(Ft+" initialized."),t}},{key:"destroy",value:function(){this.dispatcherFrame&&this.dispatcherFrame.parentNode&&this.dispatcherFrame.parentNode.removeChild(this.dispatcherFrame),this.iframeEvent.clear(),this.widgetId=void 0,this.dispatcherFrame=void 0}},{key:"push",value:function(e,t){var n;if(this.pushCallbacks=t,this.dispatcherFrame){var i=P(P({},this.defaultPayload),e);null!==(n=this.dispatcherFrame.contentWindow)&&void 0!==n&&n.postMessage(i,this.env.getConf().url)}else console.error(Ft+" dispatcher is not initialized.")}},{key:"setEnv",value:function(e,t){this.env.setEnv(e,t),this.create(this.onLoadCallback)}},{key:"setupIframeEventListeners",value:function(){var i=this;this.widgetId&&(this.iframeEvent.on(Ie.AFTER_LOAD,this.widgetId,function(e){var t;null!==(t=i.onLoadCallback)&&void 0!==t&&t.call(i)}),this.iframeEvent.on(Ie.DISPATCH_SUCCESS,this.widgetId,function(e){var t,n;null!==(n=null===(t=i.pushCallbacks)||void 0===t?void 0:t.onSuccess)&&void 0!==n&&n.call(t)}),this.iframeEvent.on(Ie.DISPATCH_ERROR,this.widgetId,function(e){var t,n;null!==(n=null===(t=i.pushCallbacks)||void 0===t?void 0:t.onError)&&void 0!==n&&n.call(t)}))}}]),Ht);function Ht(e){l(this,Ht),this.messageSource=e,this.defaultPayload={destination:"widget.paydock"},this.env=new G(B),this.defaultPayload.source=e,this.iframeEvent=new Ue(window)}var Bt,zt=(Bt=function(e){return s(t,0<arguments.length&&void 0!==e?e:ft),n(t,[{key:"setRedirectUrl",value:function(e){this.merchantRedirectUrl=e}},{key:"getRedirectUrl",value:function(){return this.merchantRedirectUrl}},{key:"error",value:function(e,t,n){n(!1)}}]),t;function t(){return l(this,t),c(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}}(Lt),s(qt,Bt),n(qt,[{key:"getProxyRedirectUrl",value:function(){return this.widgetEnv.getConf().url+"/checkout/zipmoney/response"}},{key:"next",value:function(t,n){var i=this;this.storageDispatcher.create(function(){var e={merchant_redirect_url:i.getRedirectUrl(),checkout_token:t.token,public_key:n.public_key,gateway_id:n.gateway_id};i.storageDispatcher.push({intent:Mt.WIDGET_SESSION,data:e},{onSuccess:function(){var e=i.getCheckoutUri(t.link);Zip.Checkout.init({checkoutUri:e,redirect:!0})},onError:function(){console.error("Error initializing Zip Checkout")}})})}},{key:"getSuccessRedirectUri",value:function(){return this.getProxyRedirectUrl()}},{key:"getErrorRedirectUri",value:function(){return this.getProxyRedirectUrl()}},{key:"setEnv",value:function(e,t){a(qt.prototype.__proto__||Object.getPrototypeOf(qt.prototype),"setEnv",this).call(this,e,t),this.storageDispatcher.setEnv(e,t)}}]),qt);function qt(){l(this,qt);var e=c(this,(qt.__proto__||Object.getPrototypeOf(qt)).call(this));return e.storageDispatcher=new jt("zipmoney.checkout.paydock"),e}var Wt=(s(Vt,Ct),n(Vt,[{key:"getSuccessRedirectUri",value:function(){return this.widgetEnv.getConf().url+X.extendSearchParams("/checkout/success","merchant",encodeURIComponent(window.location.href))}},{key:"getErrorRedirectUri",value:function(){return this.widgetEnv.getConf().url+X.extendSearchParams("/checkout/error","merchant",encodeURIComponent(window.location.href))}}]),Vt);function Vt(){return l(this,Vt),c(this,(Vt.__proto__||Object.getPrototypeOf(Vt)).apply(this,arguments))}var Yt=(s(Kt,Ct),n(Kt,[{key:"getSuccessRedirectUri",value:function(){return this.widgetEnv.getConf().url+"/checkout/afterpay/merchant/{{merchant}}/success".replace("{{merchant}}",encodeURIComponent(window.btoa(window.location.href)))}},{key:"getErrorRedirectUri",value:function(){return this.widgetEnv.getConf().url+"/checkout/afterpay/merchant/{{merchant}}/error".replace("{{merchant}}",encodeURIComponent(window.btoa(window.location.href)))}},{key:"next",value:function(e,t){this.checkout=e,st.isSupportPopUp()||window.localStorage.setItem("paydock_checkout_token",JSON.stringify(this.checkout)),this.popup.redirect(this.getRedirectUrl(this.checkout,t))}},{key:"error",value:function(e,t,n){return!t||t&&"invalid_amount"!==t?n(!0):(this.popup.initError(e),n(!1))}},{key:"run",value:function(){this.isRunning()||(this.popup.setConfigs({width:420,height:715}),this.popup.init(),this.background.initControl())}},{key:"getRedirectUrl",value:function(e,t){return this.widgetEnv.getConf().url+"/checkout/afterpay/init?"+X.serialize(P(P({},t),{token:e.reference_id,env:"live"===e.mode?"live":"test"}))}}]),Kt);function Kt(){return l(this,Kt),c(this,(Kt.__proto__||Object.getPrototypeOf(Kt)).apply(this,arguments))}var Gt={EXTERNAL_CHECKOUT_TOKEN:"external_checkout_token",CHECKOUT_TOKEN:"checkout_token",BANK_ACCOUNT:"bank_account",CARD:"card"},Jt=(s(Xt,Ze),n(Xt,[{key:"getLink",value:function(){return"/v1/payment_sources/tokens"}},{key:"send",value:function(e,n,t){var i=2<arguments.length&&void 0!==t?t:function(e){};this.create(e,this.getConfigs(),function(e,t){return n(e)},function(e,t){void 0===e.message?i("unknown error"):i(e.message)})}},{key:"getConfigs",value:function(){return this.body}}]),Xt);function Xt(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:Gt.CARD;l(this,Xt);var i=c(this,(Xt.__proto__||Object.getPrototypeOf(Xt)).call(this));switch(i.body={gateway_id:e,type:n},n){case Gt.CARD:case Gt.BANK_ACCOUNT:delete t.gateway_id,delete t.type,delete t.checkout_token,i.body=P(i.body,t);break;case Gt.CHECKOUT_TOKEN:case Gt.EXTERNAL_CHECKOUT_TOKEN:i.body.checkout_token=t;break;default:throw new Error("Unsupported type of PaymentSourceToken")}return i}var Zt=(n(Qt,[{key:"init",value:function(e){var t=this;this.setEnv(e),this.runner.onCheckout(pt.SUCCESS,function(e){t.eventEmitter.emit(Je.ACCEPTED,{}),t.background.initLoader(),t.runner.stop(),t.checkToken(e.token,function(){t.createOneTimeToken(e.token)})}),this.runner.onCheckout(pt.ERROR,function(){t.eventEmitter.emit(Je.ERROR),console.error(Xe+" Error from checkout server."),t.runner.stop()}),this.runner.onCheckout(pt.REFERRED,function(){t.eventEmitter.emit(Je.REFERRED),t.runner.stop()}),this.runner.onCheckout(pt.DECLINED,function(){t.eventEmitter.emit(Je.DECLINED),t.runner.stop()}),this.eventEmitter.subscribe(Je.ERROR,function(){t.runner.stop()}),this.eventEmitter.subscribe(Je.FINISH,function(e){t.background.clear()})}},{key:"setEnv",value:function(e){this.env=e}},{key:"checkToken",value:function(e,t){var n=this,i=new tt(e);i.setEnv(this.env),i.send(this.params.accessToken,function(e){n.details=e,t()},function(){n.eventEmitter.emit(Je.ERROR,{}),console.error(Xe+" Error during creating payment source token.")})}},{key:"createOneTimeToken",value:function(e){var t=this,n=new Jt(this.params.gatewayId,e,Gt.CHECKOUT_TOKEN);n.setEnv(this.env),n.send(this.params.accessToken,function(e){t.eventEmitter.emit(Je.FINISH,{payment_source_token:e,checkout_email:t.details.checkout_email,checkout_holder:t.details.checkout_holder,gateway_type:t.details.gateway_type})},function(){t.eventEmitter.emit(Je.ERROR,{}),console.error(Xe+" Error during creating payment source token.")})}}]),Qt);function Qt(e,t,n,i){var r=this;l(this,Qt),this.background=e,this.runner=t,this.eventEmitter=n,this.params=i,this.runner.onStop(function(){r.eventEmitter.emit(Je.CLOSE)})}var $t=(n(en,[{key:"chooseRunner",value:function(e,t){var n=this.getRunnerByMode(e,t);this.runner=new n(this.accessToken),Ot(this.runner)?(this.background=new dt,this.checkoutHandler=new Zt(this.background,this.runner,this.eventEmitter,{accessToken:this.accessToken,gatewayId:this.gatewayId}),this.checkoutHandler.init(this.env)):(this.background=void 0,this.checkoutHandler=void 0)}},{key:"buildAdditionalParams",value:function(){return{}}},{key:"initCheckout",value:function(e){var n=this;e.on("click",function(e){if(Ot(n.runner)){if(n.runner.isRunning())return;n.runner.run()}else if(Tt(n.runner)&&!n.runner.getRedirectUrl())throw Error(Xe+" The merchant redirect URL should is required in the '"+n.mode+"' mode.");n.eventEmitter.emit(Je.CLICK);var t=new $e(n.gatewayId,n.runner.getSuccessRedirectUri(),n.runner.getErrorRedirectUri());t.setMeta(n.meta),t.setEnv(n.env),t.send(n.accessToken,function(e){var t=Ot(n.runner)?Je.POPUP_REDIRECT:Je.REDIRECT;n.eventEmitter.emit(t),n.runner.next(e,n.buildAdditionalParams())},function(e,t){console.error(Xe+" "+e),n.eventEmitter.emit(Je.ERROR,{error:e,code:t}),n.runner.error(e,t,function(e){e&&n.close()})})})}},{key:"on",value:function(e,t){this.eventEmitter.subscribe(e,t)}},{key:"close",value:function(){this.assertMethodSupport(this.runner,Ve.CONTEXTUAL)&&this.runner.stop()}},{key:"onFinishInsert",value:function(t,n){this.on(Je.FINISH,function(e){Te.insertToInput(t,n,e)})}},{key:"setMeta",value:function(e){this.meta=P(this.meta,e)}},{key:"setBackdropDescription",value:function(e){this.assertMethodSupport(this.runner,Ve.CONTEXTUAL)&&this.runner.setBackgroundDescription(e)}},{key:"setBackdropTitle",value:function(e){this.assertMethodSupport(this.runner,Ve.CONTEXTUAL)&&this.runner.setBackgroundTitle(e)}},{key:"setSuspendedRedirectUri",value:function(e){this.assertMethodSupport(this.runner,Ve.CONTEXTUAL)&&this.runner.setSuspendedRedirectUri(e)}},{key:"setRedirectUrl",value:function(e){this.assertMethodSupport(this.runner,Ve.REDIRECT)&&this.runner.setRedirectUrl(e)}},{key:"getSuccessRedirectUri",value:function(){return this.runner.getSuccessRedirectUri()}},{key:"turnOffBackdrop",value:function(){this.turnOffControlBackdrop(),this.turnOffLoaderBackdrop()}},{key:"turnOffControlBackdrop",value:function(){this.assertMethodSupport(this.runner,Ve.CONTEXTUAL)&&this.runner.turnOffBackdrop()}},{key:"turnOffLoaderBackdrop",value:function(){var e;null!==(e=this.background)&&void 0!==e&&e.turnOffLoader()}},{key:"setEnv",value:function(e,t){var n;this.env=e,this.alias=t,null!==(n=this.checkoutHandler)&&void 0!==n&&n.setEnv(e),this.runner.setEnv(e,t)}},{key:"getEnv",value:function(){return this.env}},{key:"getRunnerByMode",value:function(e,t){if(e===Ke.PAYPAL){if(t===Ve.REDIRECT)throw Error(Xe+" Gateway '"+e+"' do not support '"+t+"' mode");return Wt}if(e===Ke.AFTERPAY){if(t===Ve.REDIRECT)throw Error(Xe+" Gateway '"+e+"' do not support '"+t+"' mode");return Yt}if(e===Ke.ZIPMONEY)return t===Ve.CONTEXTUAL?Dt:zt;throw Error(Xe+" Unsupported gateway.")}},{key:"assertMethodSupport",value:function(e,t){var n=Xe+" The method is not supported in the '"+t+"' mode.";switch(t){case Ve.CONTEXTUAL:if(Ot(e))return!0;console.warn(n);break;case Ve.REDIRECT:if(Tt(e))return!0;console.warn(n)}return!1}}]),en);function en(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"default",i=3<arguments.length&&void 0!==arguments[3]?arguments[3]:Ke.PAYPAL,r=4<arguments.length&&void 0!==arguments[4]?arguments[4]:Ve.CONTEXTUAL;l(this,en),this.accessToken=t,this.gatewayId=n,this.gatewayType=i,this.mode=r,this.window=window,this.meta={},this.env=W,this.eventEmitter=new it,this.container=new Pe(e),this.initCheckout(this.container),this.chooseRunner(i,r)}var tn=(s(nn,$t),n(nn,[{key:"setSuspendedRedirectUri",value:function(e){a(nn.prototype.__proto__||Object.getPrototypeOf(nn.prototype),"setSuspendedRedirectUri",this).call(this,e)}},{key:"setRedirectUrl",value:function(e){Ot(this.runner)&&(a(nn.prototype.__proto__||Object.getPrototypeOf(nn.prototype),"chooseRunner",this).call(this,Ke.ZIPMONEY,Ve.REDIRECT),a(nn.prototype.__proto__||Object.getPrototypeOf(nn.prototype),"setEnv",this).call(this,this.env,this.alias)),a(nn.prototype.__proto__||Object.getPrototypeOf(nn.prototype),"setRedirectUrl",this).call(this,e)}},{key:"buildAdditionalParams",value:function(){var e=a(nn.prototype.__proto__||Object.getPrototypeOf(nn.prototype),"buildAdditionalParams",this).call(this);return P(P({},e),{public_key:this.publicKey,gateway_id:this.gatewayId})}}]),nn);function nn(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"default",i=3<arguments.length&&void 0!==arguments[3]?arguments[3]:Ve.CONTEXTUAL;l(this,nn);var r=c(this,(nn.__proto__||Object.getPrototypeOf(nn)).call(this,e,t,n,Ke.ZIPMONEY,i));return r.publicKey=t,r.gatewayId=n,r.mode=i,r}var rn=(s(on,$t),n(on,[{key:"showEnhancedTrackingProtectionPopup",value:function(e){var t=st.getBrowserInfo(),n=t.name,i=t.version;e&&"Firefox"===n&&100<=+i&&(this.showETP=!0)}},{key:"buildAdditionalParams",value:function(){var e=a(on.prototype.__proto__||Object.getPrototypeOf(on.prototype),"buildAdditionalParams",this).call(this);return this.showETP&&(e.show_etp=!0),e}}]),on);function on(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"default";l(this,on);var i=c(this,(on.__proto__||Object.getPrototypeOf(on)).call(this,e,t,n,Ke.AFTERPAY));return i.accessToken=t,i.gatewayId=n,i.showETP=!1,i}var an,sn,un=(s(ln,$t),ln);function ln(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"default";l(this,ln);var i=c(this,(ln.__proto__||Object.getPrototypeOf(ln)).call(this,e,t,n,Ke.PAYPAL));return i.publicKey=t,i.gatewayId=n,i}(sn=an=an||{}).AFTER_LOAD="after_load",sn.UNAVAILABLE="unavailable",sn.START_LOADING="start_loading",sn.END_LOADING="end_loading",sn.UPDATE="update",sn.PAYMENT_SUCCESSFUL="payment_successful",sn.PAYMENT_IN_REVIEW="payment_in_review",sn.PAYMENT_ERROR="payment_error";var cn=(s(dn,Ue),n(dn,[{key:"on",value:function(e,t,n){for(var i in an)an.hasOwnProperty(i)&&e===an[i]&&this.listeners.push({event:e,listener:n,widget_id:t})}}]),dn);function dn(){return l(this,dn),c(this,(dn.__proto__||Object.getPrototypeOf(dn)).apply(this,arguments))}var hn={CLOSE:"close",UPDATED:"updated"},pn=(s(vn,Me),n(vn,[{key:"push",value:function(e,t){var n=1<arguments.length&&void 0!==t?t:{};if(this.iFrame.isExist()){-1===ie.values(hn).indexOf(e)&&console.warn("unsupported trigger type");var i={message_source:"wallet.paydock",reference_id:this.widgetId,trigger:e,destination:"widget.paydock",data:n};this.iFrame.getElement().contentWindow.postMessage(JSON.stringify(i),"*")}}}]),vn);function vn(e,t){l(this,vn);var n=c(this,(vn.__proto__||Object.getPrototypeOf(vn)).call(this,e));return n.widgetId=t,n}var fn=(s(mn,dt),n(mn,[{key:"initControl",value:function(){this.imageStyle||this.createImageStyles(),a(mn.prototype.__proto__||Object.getPrototypeOf(mn.prototype),"initControl",this).call(this)}},{key:"clear",value:function(){this.imageStyle&&this.imageStyle.parentNode.removeChild(this.imageStyle),this.imageStyle=null,a(mn.prototype.__proto__||Object.getPrototypeOf(mn.prototype),"clear",this).call(this)}},{key:"createTemplate",value:function(){var e=this,t=document.body||document.getElementsByTagName("body")[0],n=String('\n <div class="checkout-container">\n <div class="checkout-bg-logo"></div>\n <a href="#" data-close>Close</a>\n </div>\n');this.overlay=document.createElement("div"),this.overlay.classList.add("checkout-overlay"),this.overlay.setAttribute("checkout-overlay"," "),this.overlay.innerHTML=n,t.appendChild(this.overlay),setTimeout(function(){e.isInit()&&e.overlay.classList.add("display")},5)}},{key:"createImageStyles",value:function(){var e=document.head||document.getElementsByTagName("head")[0],t=String("\n .checkout-bg-logo {\n display: block;\n background: url({{url}}) no-repeat;\n width: 100px;\n height: 50px;\n margin: 0 auto;\n border-radius: 10px;\n background-size: contain;\n }\n");document.querySelector(".checkout-container"),t=t.replace("{{url}}",this.bgImageUrl),this.imageStyle=document.createElement("style"),this.imageStyle.type="text/css",this.imageStyle.appendChild(document.createTextNode(t)),e.appendChild(this.imageStyle)}}]),mn);function mn(e){l(this,mn);var t=c(this,(mn.__proto__||Object.getPrototypeOf(mn)).call(this));return t.bgImageUrl=e,t.imageStyle=null,t}var yn={UNAVAILABLE:"unavailable",UPDATE:"update",PAYMENT_METHOD_SELECTED:"payment_method_selected",PAYMENT_SUCCESS:"payment_success",PAYMENT_IN_REVIEW:"payment_in_review",PAYMENT_ERROR:"payment_error",CALLBACK:"callback"},gn=(n(_n,[{key:"initializeChildWallets",value:function(){this.childWallets=[]}},{key:"getGatewayName",value:function(){throw new Error("Method not implemented")}},{key:"setEnv",value:function(e){return this.env=e,this}},{key:"load",value:function(t){this.childWallets.forEach(function(e){return e.load(t)})}},{key:"update",value:function(){}},{key:"on",value:function(e,t){var n=this;if(-1===ie.values(yn).indexOf(e))throw new Error("invalid wallet event");return"function"==typeof t?this.eventEmitter.subscribe(e,t):new Promise(function(t){return n.eventEmitter.subscribe(e,function(e){return t(e)})})}}]),_n);function _n(e,t){l(this,_n),this.publicKey=e,this.meta=t,this.env=W,this.eventEmitter=new it,this.initializeChildWallets()}var kn=(s(En,gn),n(En,[{key:"load",value:function(e){this.container=e,this.iFrame=new xe(this.container);var t=this.link.getParams().widget_id;this.triggerElement=new pn(this.iFrame,t),this.setupIFrameEvents(t),this.background=this.initBackground(),this.iFrame.load(this.link.getUrl())}},{key:"close",value:function(){this.triggerElement.push(hn.CLOSE),this.background.clear()}},{key:"update",value:function(e){this.triggerElement.push(hn.UPDATED,e)}},{key:"setEnv",value:function(e){return this.link.setEnv(e),this}},{key:"initBackground",value:function(){var e=this,t=new fn(this.link.getNetUrl().replace(ee,"/images/logo.png"));return t.setBackdropTitle(""),t.setBackdropDescription(""),t.onTrigger(lt,function(){return e.triggerElement.push(hn.CLOSE)}),t}},{key:"setupIFrameEvents",value:function(e){var t=this;this.event.on(an.UNAVAILABLE,e,function(e){return t.eventEmitter.emit(yn.UNAVAILABLE,null)}),this.event.on(an.START_LOADING,e,function(e){return t.background.initControl()}),this.event.on(an.END_LOADING,e,function(e){return t.background.clear()}),this.event.on(an.UPDATE,e,function(e){t.eventEmitter.emit(yn.UPDATE,t.parseUpdateData(e))}),this.event.on(an.PAYMENT_SUCCESSFUL,e,function(e){t.eventEmitter.emit(yn.PAYMENT_SUCCESS,t.parsePaymentSuccessfulData(e)),t.iFrame.getElement()||t.background.clear()}),this.event.on(an.PAYMENT_IN_REVIEW,e,function(e){t.eventEmitter.emit(yn.PAYMENT_IN_REVIEW,t.parsePaymentSuccessfulData(e)),t.iFrame.getElement()||t.background.clear()}),this.event.on(an.PAYMENT_ERROR,e,function(e){t.eventEmitter.emit(yn.PAYMENT_ERROR,e),t.iFrame.getElement()||t.background.clear()})}},{key:"parsePaymentSuccessfulData",value:function(e){var t;return{id:this.meta.id,amount:e.amount,currency:e.currencyCode,status:null===(t=e.charge)||void 0===t?void 0:t.status}}},{key:"parseUpdateData",value:function(e){return P(P(P({wallet_response_code:e.responseCode,wallet_session_id:e.sessionId},e.paymentMethodDetails?{payment_source:{wallet_payment_method_id:e.paymentMethodDetails.paymentMethodId,card_number_last4:e.paymentMethodDetails.lastFourDigitsOfPan,card_scheme:e.paymentMethodDetails.paymentScheme}}:{}),e.loyaltyAccountSummary?{wallet_loyalty_account:{id:e.loyaltyAccountSummary.loyaltyAccountId,barcode:e.loyaltyAccountSummary.loyaltyAccountBarcode}}:{}),e.deliveryAddressDetails?{shipping:{address_line1:e.deliveryAddressDetails.line1,address_line2:e.deliveryAddressDetails.line2,address_postcode:e.deliveryAddressDetails.postalCode,address_city:e.deliveryAddressDetails.city,address_state:e.deliveryAddressDetails.state,address_country:e.deliveryAddressDetails.countryCode,address_company:e.deliveryAddressDetails.companyName,wallet_address_id:e.deliveryAddressDetails.addressId,post_office_box_number:e.deliveryAddressDetails.postOfficeBoxNumber,wallet_address_created_timestamp:e.deliveryAddressDetails.createdTimestamp,wallet_address_updated_timestamp:e.deliveryAddressDetails.updatedTimestamp,wallet_address_name:e.deliveryAddressDetails.name}}:{})}}]),En);function En(e,t){l(this,En);var n=c(this,(En.__proto__||Object.getPrototypeOf(En)).call(this,e,t));n.link=new te(ee);var i=t.amount,r=t.currency,o=t.id,a=t.gateway_mode,s=t.reference,u=t.request_shipping;return n.link.setParams(P({token:e,amount:i,currency:r,gateway_mode:a,credentials:s||o},u?{request_shipping:u}:{})),v.version&&n.link.setParams({sdk_version:v.version,sdk_type:v.type}),n.token=e,n.event=new cn(window),n}var wn=(s(bn,gn),n(bn,[{key:"load",value:function(e){var t,r=this;if(!window.Promise)return this.eventEmitter.emit(yn.UNAVAILABLE,null),Promise.resolve();var n=(null===(t=e.getElement())||void 0===t?void 0:t.id)||"",i=document.createElement("script");return i.src="https://www.paypal.com/sdk/js?client-id="+this.publicKey+"&currency="+this.meta.currency+(!0===this.meta.pay_later?"&enable-funding=paylater&disable-funding=card":"&disable-funding=credit,card")+(this.meta.capture?"":"&intent=authorize"),i.async=!0,i.onload=function(){window.paypal?(r.paypal=window.paypal,r.paypal.Buttons(P(P({},r.meta.style&&{style:r.meta.style}),{createOrder:function(){return new Promise(function(t,n){r.eventEmitter.emit(yn.CALLBACK,{data:P({request_type:"CREATE_TRANSACTION"},r.meta.request_shipping&&{request_shipping:r.meta.request_shipping}),onSuccess:function(e){return t(e.id)},onError:function(e){return n(e)}})})},onShippingChange:function(i){return new Promise(function(e,t){var n=r.parseUpdateData(i);r.latestShippingData=n.shipping,r.latestShippingChangePromiseResolve=e,r.latestShippingChangePromiseReject=t,r.eventEmitter.emit(yn.UPDATE,n)})},onApprove:function(n){return r.pendingApprovalPromise=r.pendingApprovalPromise||new Promise(function(e,t){return r.eventEmitter.emit(yn.PAYMENT_METHOD_SELECTED,{data:{payment_method_id:n.orderID,customer:{payment_source:{external_payer_id:n.payerID}}},onSuccess:function(){r.pendingApprovalPromise=void 0,e(!0)},onError:function(e){r.pendingApprovalPromise=void 0,t(e)}})}),r.pendingApprovalPromise},onError:function(){}})).render("#"+n)):r.eventEmitter.emit(yn.UNAVAILABLE,null)},document.head.appendChild(i),Promise.resolve()}},{key:"update",value:function(e){var t=this;if(this.latestShippingChangePromiseResolve&&this.latestShippingChangePromiseReject)return e.success?void this.eventEmitter.emit(yn.CALLBACK,{data:{request_type:"UPDATE_TRANSACTION",shipping:this.latestShippingData},onSuccess:function(){return t.latestShippingChangePromiseResolve(!0)},onError:function(){return t.latestShippingChangePromiseReject()}}):this.latestShippingChangePromiseReject()}},{key:"parseUpdateData",value:function(e){var t;return P(P({wallet_order_id:e.orderID,wallet_session_id:e.paymentID,payment_source:{wallet_payment_method_id:e.paymentToken}},e.shipping_address&&{shipping:{address_city:e.shipping_address.city,address_state:e.shipping_address.state,address_postcode:e.shipping_address.postal_code,address_country:e.shipping_address.country_code}}),e.selected_shipping_option&&{selected_shipping_option:{id:e.selected_shipping_option.id,label:e.selected_shipping_option.label,amount:e.selected_shipping_option.amount.value,currency:e.selected_shipping_option.amount.currency_code,type:null===(t=e.selected_shipping_option)||void 0===t?void 0:t.type}})}}]),bn);function bn(){return l(this,bn),c(this,(bn.__proto__||Object.getPrototypeOf(bn)).apply(this,arguments))}var Cn=xt(function(e,t){function n(e){return(n="function"==typeof Symbol&&"symbol"===K(Symbol.iterator)?function(e){return void 0===e?"undefined":K(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":void 0===e?"undefined":K(e)})(e)}Object.defineProperty(t,"__esModule",{value:!0});function r(i){return null!==l?l:l=new Promise(function(e,t){if("undefined"!=typeof window)if(window.Stripe&&i&&console.warn(u),window.Stripe)e(window.Stripe);else try{var n=function(){for(var e=document.querySelectorAll('script[src^="'.concat(a,'"]')),t=0;t<e.length;t++){var n=e[t];if(s.test(n.src))return n}return null}();n&&i?console.warn(u):n=n||function(e){var t=e&&!e.advancedFraudSignals?"?advancedFraudSignals=false":"",n=document.createElement("script");n.src="".concat(a).concat(t);var i=document.head||document.body;if(!i)throw new Error("Expected document.body not to be null. Stripe.js requires a <body> element.");return i.appendChild(n),n}(i),n.addEventListener("load",function(){window.Stripe?e(window.Stripe):t(new Error("Stripe.js not available"))}),n.addEventListener("error",function(){t(new Error("Failed to load Stripe.js"))})}catch(e){return void t(e)}else e(null)})}function i(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];c=!0;var i=Date.now();return r(o).then(function(e){return function(e,t,n){if(null===e)return null;var i,r,o=e.apply(void 0,t);return r=n,(i=o)&&i._registerWrapper&&i._registerWrapper({name:"stripe-js",version:"1.11.0",startTime:r}),o}(e,t,i)})}var o,a="https://js.stripe.com/v3",s=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,u="loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used",l=null,c=!1;i.setLoadParameters=function(e){if(c)throw new Error("You cannot change load parameters after calling loadStripe");o=function(e){var t="invalid load parameters; expected object of shape\n\n {advancedFraudSignals: boolean}\n\nbut received\n\n ".concat(JSON.stringify(e),"\n");if(null===e||"object"!==n(e))throw new Error(t);if(1===Object.keys(e).length&&"boolean"==typeof e.advancedFraudSignals)return e;throw new Error(t)}(e)},t.loadStripe=i});Rt(Cn);Cn.loadStripe;var Sn=Cn.loadStripe,On="success",Tn="fail",An=(s(Pn,gn),n(Pn,[{key:"initPaymentRequest",value:function(){return this.stripe.paymentRequest({country:this.meta.country.toUpperCase(),currency:this.meta.currency.toLowerCase(),total:{label:this.meta.amount_label,amount:Math.floor(100*this.meta.amount)},requestPayerName:!0===this.meta.request_payer_name,requestPayerEmail:!0===this.meta.request_payer_email,requestPayerPhone:!0===this.meta.request_payer_phone})}},{key:"createWalletButton",value:function(){return this.stripe.elements().create("paymentRequestButton",{paymentRequest:this.paymentRequest})}},{key:"load",value:function(t){var n=this;return Sn(this.publicKey).then(function(e){n.stripe=e,n.paymentRequest=n.initPaymentRequest()}).then(function(){return n.checkAvailability()}).then(function(e){return n.mount(t,e)}).then(function(){return n.setOnPaymentMethodSelected()})}},{key:"checkAvailability",value:function(){var i=this;return this.paymentRequest.canMakePayment().then(function(e){if(e){var t=!i.meta.wallets||i.meta.wallets.includes(se.GOOGLE),n=!i.meta.wallets||i.meta.wallets.includes(se.APPLE);return{google_pay:t&&!e.applePay,apple_pay:n&&e.applePay,flypay:!1}}})}},{key:"mount",value:function(e,t){if(!t||!t.apple_pay&&!t.google_pay)return this.eventEmitter.emit(yn.UNAVAILABLE,null);this.createWalletButton().mount(e.getElement())}},{key:"setOnPaymentMethodSelected",value:function(){var c=this;this.paymentRequest.on("paymentmethod",function(e){var t,n,i=e.paymentMethod,r=i.id,o=i.card,a=i.billing_details,s=a.name,u=a.address,l={payment_method_id:r,customer:{payer_name:e.payerName,payer_email:e.payerEmail,payer_phone:e.payerPhone,payment_source:{wallet_type:c.getWalletType(null===(t=null==o?void 0:o.wallet)||void 0===t?void 0:t.type),card_name:s,type:null===(n=null==o?void 0:o.wallet)||void 0===n?void 0:n.type,card_scheme:null==o?void 0:o.brand,card_number_last4:null==o?void 0:o.last4,expire_month:null==o?void 0:o.exp_month,expire_year:null==o?void 0:o.exp_year,address_line1:u.line1,address_line2:u.line2,address_city:u.city,address_postcode:u.postal_code,address_state:u.state,address_country:u.country}}};c.eventEmitter.emit(yn.PAYMENT_METHOD_SELECTED,{data:l,onSuccess:function(){return e.complete(On)},onError:function(){return e.complete(Tn)}})})}},{key:"getWalletType",value:function(e){return e?"google_pay"===e?se.GOOGLE:se.APPLE:null}}]),Pn);function Pn(){return l(this,Pn),c(this,(Pn.__proto__||Object.getPrototypeOf(Pn)).apply(this,arguments))}var Rn=(s(xn,gn),n(xn,[{key:"getGatewayName",value:function(){return this.gatewayName}},{key:"getMerchantId",value:function(){var e,t,n;return(null===(n=null===(t=null===(e=this.meta)||void 0===e?void 0:e.credentials)||void 0===t?void 0:t[se.APPLE])||void 0===n?void 0:n.merchant)||""}},{key:"getMetaStyles",value:function(){var e,t,n;if(null!==(e=this.meta)&&void 0!==e&&e.style&&"object"===K(null===(t=this.meta)||void 0===t?void 0:t.style)){var i=JSON.parse(JSON.stringify(null===(n=this.meta)||void 0===n?void 0:n.style));return"google"in i&&(null==i||delete i.google),"apple"in i?null==i?void 0:i.apple:i}return null}},{key:"getMetaRawDataInitialization",value:function(){var e,t,n,i;if(null!==(e=this.meta)&&void 0!==e&&e.raw_data_initialization&&null!==(t=this.meta)&&void 0!==t&&t.raw_data_initialization&&"object"===K(null===(n=this.meta)||void 0===n?void 0:n.raw_data_initialization)){var r=JSON.parse(JSON.stringify(null===(i=this.meta)||void 0===i?void 0:i.raw_data_initialization));return"google"in r&&(null==r||delete r.google),"apple"in r?null==r?void 0:r.apple:r}return null}},{key:"isShippingRequired",value:function(){var e;return null===(e=this.meta)||void 0===e?void 0:e.request_shipping}},{key:"hasShippingOptions",value:function(){var e,t;return(null===(e=this.meta)||void 0===e?void 0:e.request_shipping)&&!(null===(t=this.meta)||void 0===t||!t.shipping_options)}},{key:"load",value:function(n){var i=this;if(window.Promise)return this.checkAvailability().then(function(e){var t;e?(i.isShippingRequired()&&i.hasShippingOptions()&&(i.selectedShippingOption=null===(t=i.meta)||void 0===t?void 0:t.shipping_options[0],i.latestShippingData.shippingMethod=i.formatShippingOptions([i.selectedShippingOption])[0]),i.mount(n)):i.eventEmitter.emit(yn.UNAVAILABLE,{wallet:se.APPLE})}).catch(function(e){return console.error("Error checking ApplePay availability",e)});this.eventEmitter.emit(yn.UNAVAILABLE,{wallet:se.APPLE})}},{key:"update",value:function(e){var t,n,i;if(this.latestShippingChangePromiseResolve&&this.latestShippingChangePromiseReject){if(!e.success||!e.body)return this.latestShippingChangePromiseReject();var r=null===(t=null==e?void 0:e.body)||void 0===t?void 0:t.amount,o=null===(n=null==e?void 0:e.body)||void 0===n?void 0:n.shipping_options;r&&(this.meta.amount=r),o&&(this.meta.shipping_options=o,this.selectedShippingOption=o?o[0]:void 0);var a=P({newTotal:{label:null===(i=this.meta)||void 0===i?void 0:i.amount_label,amount:this.meta.amount.toString(),type:"final"}},this.isShippingRequired()&&this.hasShippingOptions()&&{newShippingMethods:this.formatShippingOptions(this.meta.shipping_options)});this.paymentSession.completeShippingContactSelection(a),this.latestShippingChangePromiseResolve({})}}},{key:"checkAvailability",value:function(){var n=this;return new Promise(function(t,e){window.ApplePaySession&&ApplePaySession||t(!1),ApplePaySession.canMakePaymentsWithActiveCard(n.getMerchantId()).then(function(e){return t(e)}).catch(function(e){return t(!1)})})}},{key:"mount",value:function(e){var t=this,n=document.createElement("style");n.innerHTML=this.createButtonStyle(),document.head.appendChild(n);var i=document.createElement("div");i.onclick=function(){return t.onApplePayButtonClicked()},i.classList.add("paydock-apple-container","apple-pay-button","apple-pay-button-black"),e.getElement().appendChild(i)}},{key:"onApplePayButtonClicked",value:function(){this.paymentSession=new ApplePaySession(3,this.createRequest()),this.paymentSession.onvalidatemerchant=this.onValidateMerchant,this.paymentSession.onpaymentauthorized=this.onPaymentAuthorized,this.paymentSession.onshippingcontactselected=this.onShippingContactSelected,this.paymentSession.onshippingmethodselected=this.onShippingMethodSelected,this.paymentSession.begin()}},{key:"createRequest",value:function(){var e,t=this.getMetaRawDataInitialization();return t&&"object"===(void 0===t?"undefined":K(t))&&("object"===K(t.total)?t.total.amount=this.meta.amount.toString():t.total={label:(null===(e=this.meta)||void 0===e?void 0:e.amount_label)||"",amount:this.meta.amount.toString()},this.isShippingRequired()&&this.hasShippingOptions()&&(t.shippingMethods=this.formatShippingOptions(this.meta.shipping_options))),t||P(P(P({countryCode:this.meta.country.toUpperCase(),currencyCode:this.meta.currency.toUpperCase(),merchantCapabilities:["supports3DS","supportsCredit","supportsDebit"],supportedNetworks:["visa","masterCard","amex","discover"]},this.meta.show_billing_address&&{requiredBillingContactFields:["name","postalAddress"]}),this.isShippingRequired()&&P({requiredShippingContactFields:["postalAddress","name","phone","email"]},this.hasShippingOptions()&&{shippingMethods:this.formatShippingOptions(this.meta.shipping_options)})),{total:{label:this.meta.amount_label,amount:this.meta.amount.toString(),type:"final"}})}},{key:"getMerchantSession",value:function(){var e=this;return new Promise(function(t,n){return e.eventEmitter.emit(yn.CALLBACK,{data:P({request_type:"CREATE_SESSION",wallet_type:se.APPLE,session_id:window.location.hostname},e.isShippingRequired()&&{request_shipping:e.meta.request_shipping}),onSuccess:function(e){return t(e)},onError:function(e){return n(e)}})})}},{key:"createButtonStyle",value:function(){var e,t;return"\n .paydock-apple-container {\n width: 100%;\n height: 40px;\n }\n\n @supports (-webkit-appearance: -apple-pay-button) {\n .apple-pay-button {\n display: inline-block;\n -webkit-appearance: -apple-pay-button;\n -apple-pay-button-type: "+((null===(e=this.getMetaStyles())||void 0===e?void 0:e.button_type)||"plain")+"\n }\n .apple-pay-button-black {\n -apple-pay-button-style: black;\n }\n .apple-pay-button-white {\n -apple-pay-button-style: white;\n }\n .apple-pay-button-white-with-line {\n -apple-pay-button-style: white-outline;\n }\n }\n\n @supports not (-webkit-appearance: -apple-pay-button) {\n .apple-pay-button {\n display: inline-block;\n background-size: 100% 60%;\n background-repeat: no-repeat;\n background-position: 50% 50%;\n border-radius: 5px;\n padding: 0px;\n box-sizing: border-box;\n min-width: 200px;\n min-height: 32px;\n max-height: 64px;\n -apple-pay-button-type: "+((null===(t=this.getMetaStyles())||void 0===t?void 0:t.button_type)||"plain")+"\n }\n .apple-pay-button-black {\n background-image: -webkit-named-image(apple-pay-logo-white);\n background-color: black;\n }\n .apple-pay-button-white {\n background-image: -webkit-named-image(apple-pay-logo-black);\n background-color: white;\n }\n .apple-pay-button-white-with-line {\n background-image: -webkit-named-image(apple-pay-logo-black);\n background-color: white;\n border: .5px solid black;\n }\n }\n "}}]),xn);function xn(e,t,n,i){l(this,xn);var u=c(this,(xn.__proto__||Object.getPrototypeOf(xn)).call(this,e,t));return u.gatewayName=n,u.eventEmitter=i,u.latestShippingData={},u.onValidateMerchant=function(e){u.getMerchantSession().then(function(e){u.paymentSession.completeMerchantValidation(e)}).catch(function(e){return console.error("Error fetching merchant session",e)})},u.onPaymentAuthorized=function(e){var t,n=e.payment,i=n.token,r=n.billingContact,o=n.shippingContact;u.latestShippingData.shippingContact=o;var a=null===(t=u.selectedShippingOption)||void 0===t?void 0:t.type,s=[null==o?void 0:o.givenName,null==o?void 0:o.familyName].join(" ").trim();u.eventEmitter.emit(yn.PAYMENT_METHOD_SELECTED,{data:P({customer:{payment_source:P(P({wallet_type:se.APPLE},s&&{card_name:s}),{type:i.paymentMethod.type,card_scheme:i.paymentMethod.network,address_line1:null==r?void 0:r.addressLines[0],address_line2:null==r?void 0:r.addressLines[1],address_country:null==r?void 0:r.countryCode,address_city:null==r?void 0:r.locality,address_postcode:null==r?void 0:r.postalCode,address_state:null==r?void 0:r.administrativeArea,ref_token:i.paymentData?JSON.stringify(i.paymentData):""})}},u.meta.request_shipping&&o&&{shipping:P(P(P({},a&&{method:a}),u.hasShippingOptions()&&{options:u.meta.shipping_options}),{address_line1:o.addressLines[0],address_line2:o.addressLines[1],address_country:o.countryCode,address_city:o.locality,address_postcode:o.postalCode,address_state:o.administrativeArea,contact:{first_name:o.givenName,last_name:o.familyName,email:o.emailAddress,phone:o.phoneNumber}})}),onSuccess:function(){return u.paymentSession.completePayment(ApplePaySession.STATUS_SUCCESS)},onError:function(){return u.paymentSession.completePayment(ApplePaySession.STATUS_FAILURE)}})},u.onShippingContactSelected=function(e){u.latestShippingData.shippingContact=e.shippingContact;var t=u.parseUpdateData(u.latestShippingData);return u.eventEmitter.emit(yn.UPDATE,t),new Promise(function(e,t){u.latestShippingChangePromiseResolve=e,u.latestShippingChangePromiseReject=t})},u.onShippingMethodSelected=function(e){var t,n;u.latestShippingData.shippingMethod=e.shippingMethod;var i={newTotal:{label:u.meta.amount_label||(null===(n=null===(t=u.getMetaRawDataInitialization())||void 0===t?void 0:t.total)||void 0===n?void 0:n.label),amount:u.meta.amount.toString(),type:"final"}};u.paymentSession.completeShippingMethodSelection(i)},u.parseUpdateData=function(e){var t,n,i,r,o,a,s,u;return P({shipping:{address_city:null===(t=null==e?void 0:e.shippingContact)||void 0===t?void 0:t.locality,address_state:null===(n=null==e?void 0:e.shippingContact)||void 0===n?void 0:n.administrativeArea,address_postcode:null===(i=null==e?void 0:e.shippingContact)||void 0===i?void 0:i.postalCode,address_country:null===(r=null==e?void 0:e.shippingContact)||void 0===r?void 0:r.countryCode}},(null==e?void 0:e.shippingMethod)&&{selected_shipping_option:{id:null===(o=null==e?void 0:e.shippingMethod)||void 0===o?void 0:o.identifier,label:null===(a=null==e?void 0:e.shippingMethod)||void 0===a?void 0:a.label,detail:null===(s=null==e?void 0:e.shippingMethod)||void 0===s?void 0:s.detail,amount:null===(u=null==e?void 0:e.shippingMethod)||void 0===u?void 0:u.amount}})},u.formatShippingOptions=function(e){return e.map(function(e){return{identifier:e.id,label:e.label,detail:(null==e?void 0:e.detail)||"",amount:e.amount}})},u.eventEmitter=i,u}var Ln=(s(In,gn),n(In,[{key:"getGatewayName",value:function(){return this.gatewayName}},{key:"getMerchantId",value:function(){var e,t,n;return null===(n=null===(t=null===(e=this.meta)||void 0===e?void 0:e.credentials)||void 0===t?void 0:t[se.GOOGLE])||void 0===n?void 0:n.merchant}},{key:"getMetaStyles",value:function(){var e,t,n,i;return"object"===K(null===(e=this.meta)||void 0===e?void 0:e.style)&&"google"in(null===(t=this.meta)||void 0===t?void 0:t.style)?null===(i=null===(n=this.meta)||void 0===n?void 0:n.style)||void 0===i?void 0:i.google:null}},{key:"getMetaRawDataInitialization",value:function(){var e,t,n,i,r;return null!==(e=this.meta)&&void 0!==e&&e.raw_data_initialization&&"object"===K(null===(t=this.meta)||void 0===t?void 0:t.raw_data_initialization)&&"google"in(null===(n=this.meta)||void 0===n?void 0:n.raw_data_initialization)?null===(r=null===(i=this.meta)||void 0===i?void 0:i.raw_data_initialization)||void 0===r?void 0:r.google:null}},{key:"isShippingRequired",value:function(){return this.meta.request_shipping}},{key:"hasShippingOptions",value:function(){return this.meta.request_shipping&&!!this.meta.shipping_options}},{key:"load",value:function(a){var s=this;if(window.Promise)return new Promise(function(r,o){var e=document.createElement("script");e.type="text/javascript",e.src="https://pay.google.com/gp/p/js/pay.js",e.async=!0,e.onload=function(){var e,t,n,i;if(!window.google)return s.eventEmitter.emit(yn.UNAVAILABLE,{wallet:se.GOOGLE}),void o();s.isShippingRequired()&&s.hasShippingOptions()&&(s.selectedShippingOption=null===(e=s.meta)||void 0===e?void 0:e.shipping_options[0]),s.paymentsClient=new google.payments.api.PaymentsClient(P({merchantInfo:P(P({},null!==(t=s.meta)&&void 0!==t&&t.merchant_name?{merchantName:null===(n=s.meta)||void 0===n?void 0:n.merchant_name}:{}),{merchantId:s.getMerchantId()}),paymentDataCallbacks:P({onPaymentAuthorized:function(e){return s.onPaymentAuthorized(e)}},s.isShippingRequired()&&{onPaymentDataChanged:function(e){return s.onPaymentDataChanged(e)}})},"live"===(null===(i=s.meta)||void 0===i?void 0:i.gateway_mode)?{environment:"PRODUCTION"}:{environment:"TEST"})),s.checkAvailability().then(function(e){if(!e)return s.eventEmitter.emit(yn.UNAVAILABLE,{wallet:se.GOOGLE}),void o();s.mount(a),r()})},document.head.appendChild(e)});this.eventEmitter.emit(yn.UNAVAILABLE,{wallet:se.GOOGLE})}},{key:"update",value:function(e){var t,n,i,r;if(this.latestShippingChangePromiseResolve&&this.latestShippingChangePromiseReject){if(!e.success)return this.latestShippingChangePromiseReject();var o=(null===(t=null==e?void 0:e.body)||void 0===t?void 0:t.amount)||this.meta.amount,a=(null===(n=null==e?void 0:e.body)||void 0===n?void 0:n.shipping_options)||this.meta.shipping_options;o&&(this.meta.amount=o),a&&(this.meta.shipping_options=a,this.selectedShippingOption=a?a[0]:void 0);var s=P({newTransactionInfo:{totalPriceStatus:"FINAL",totalPriceLabel:this.meta.amount_label,totalPrice:null===(i=this.meta.amount)||void 0===i?void 0:i.toString(),currencyCode:this.meta.currency.toUpperCase(),countryCode:this.meta.country.toUpperCase()}},this.isShippingRequired()&&this.hasShippingOptions()&&{newShippingOptionParameters:{defaultSelectedOptionId:null===(r=this.selectedShippingOption)||void 0===r?void 0:r.id,shippingOptions:this.formatShippingOptions(this.meta.shipping_options)}});this.latestShippingChangePromiseResolve(s)}}},{key:"checkAvailability",value:function(){return this.paymentsClient.isReadyToPay(this.createRequest()).then(function(e){return!!e.result}).catch(function(e){return console.error("Error checking GooglePay availability",e),!1})}},{key:"mount",value:function(e){var t,n,i,r=this;e.getElement().appendChild(this.paymentsClient.createButton({onClick:function(){return r.loadPaymentData()},buttonType:(null===(t=this.getMetaStyles())||void 0===t?void 0:t.button_type)||"pay",buttonSizeMode:(null===(n=this.getMetaStyles())||void 0===n?void 0:n.button_size_mode)||"fill",buttonColor:(null===(i=this.getMetaStyles())||void 0===i?void 0:i.button_color)||"default"}))}},{key:"loadPaymentData",value:function(){this.paymentsClient.loadPaymentData(this.createPaymentDataRequest()).catch(function(){console.error("Error while loading payment data")})}},{key:"onPaymentAuthorized",value:function(f){var e,t,n,i,r,o,a,s,u,l,c,d,h,p,v,m=this,y=null===(n=null===(t=null===(e=f.paymentMethodData)||void 0===e?void 0:e.info)||void 0===t?void 0:t.billingAddress)||void 0===n?void 0:n.address1,g=null===(o=null===(r=null===(i=f.paymentMethodData)||void 0===i?void 0:i.info)||void 0===r?void 0:r.billingAddress)||void 0===o?void 0:o.address2,_=null===(a=null==f?void 0:f.shippingAddress)||void 0===a?void 0:a.address1,k=null===(s=null==f?void 0:f.shippingAddress)||void 0===s?void 0:s.address2,E=null===(u=this.selectedShippingOption)||void 0===u?void 0:u.type,w=null===(l=null==f?void 0:f.shippingAddress)||void 0===l?void 0:l.countryCode,b=null===(c=null==f?void 0:f.shippingAddress)||void 0===c?void 0:c.locality,C=null===(d=null==f?void 0:f.shippingAddress)||void 0===d?void 0:d.postalCode,S=null===(h=null==f?void 0:f.shippingAddress)||void 0===h?void 0:h.administrativeArea,O=null===(p=null==f?void 0:f.shippingAddress)||void 0===p?void 0:p.name,T=null==f?void 0:f.email,A=null===(v=null==f?void 0:f.shippingAddress)||void 0===v?void 0:v.phoneNumber;return new Promise(function(t){var e,n,i,r,o,a,s,u,l,c,d,h,p,v;return m.eventEmitter.emit(yn.PAYMENT_METHOD_SELECTED,{data:P({customer:{payment_source:P(P(P(P({wallet_type:se.GOOGLE,type:f.paymentMethodData.type,card_scheme:null===(n=null===(e=f.paymentMethodData)||void 0===e?void 0:e.info)||void 0===n?void 0:n.cardNetwork},y&&{address_line1:y}),g&&{address_line2:g}),g&&{address_line2:g}),{address_country:null===(o=null===(r=null===(i=f.paymentMethodData)||void 0===i?void 0:i.info)||void 0===r?void 0:r.billingAddress)||void 0===o?void 0:o.countryCode,address_city:null===(u=null===(s=null===(a=f.paymentMethodData)||void 0===a?void 0:a.info)||void 0===s?void 0:s.billingAddress)||void 0===u?void 0:u.locality,address_postcode:null===(d=null===(c=null===(l=f.paymentMethodData)||void 0===l?void 0:l.info)||void 0===c?void 0:c.billingAddress)||void 0===d?void 0:d.postalCode,address_state:null===(v=null===(p=null===(h=f.paymentMethodData)||void 0===h?void 0:h.info)||void 0===p?void 0:p.billingAddress)||void 0===v?void 0:v.administrativeArea,ref_token:f.paymentMethodData.tokenizationData.token})}},m.isShippingRequired()&&{shipping:P(P(P(P(P(P(P(P(P({},E&&{method:E}),m.hasShippingOptions()&&{options:m.meta.shipping_options}),_&&{address_line1:_}),k&&{address_line2:k}),w&&{address_country:w}),b&&{address_city:b}),C&&{address_postcode:C}),S&&{address_state:S}),{contact:P(P(P({},O&&{first_name:O}),T&&{email:T}),A&&{phone:A})})}),onSuccess:function(){return t({transactionState:"SUCCESS"})},onError:function(e){return t({transactionState:"ERROR",error:{intent:"PAYMENT_AUTHORIZATION",message:e,reason:"PAYMENT_DATA_INVALID"}})}})})}},{key:"onPaymentDataChanged",value:function(e){var n=this;if(this.isShippingRequired()){var t=this.parseUpdateData(e);return this.eventEmitter.emit(yn.UPDATE,t),new Promise(function(e,t){n.latestShippingChangePromiseResolve=e,n.latestShippingChangePromiseReject=t})}}},{key:"createRequest",value:function(){return{apiVersion:2,apiVersionMinor:0,allowedPaymentMethods:[this.createCardData()],existingPaymentMethodRequired:!0}}},{key:"createPaymentDataRequest",value:function(){var e,t,n,i;this.isShippingRequired()&&this.hasShippingOptions()&&(this.selectedShippingOption=null===(e=this.meta)||void 0===e?void 0:e.shipping_options[0]);var r=this.getMerchantId();return P({apiVersion:2,apiVersionMinor:0,allowedPaymentMethods:[P(P({},this.createCardData()),{tokenizationSpecification:{type:"PAYMENT_GATEWAY",parameters:{gateway:"paydock",gatewayMerchantId:r}}})],transactionInfo:{totalPriceStatus:"FINAL",totalPriceLabel:this.meta.amount_label,totalPrice:this.meta.amount.toString(),currencyCode:this.meta.currency.toUpperCase(),countryCode:this.meta.country.toUpperCase()},merchantInfo:P(P({},null!==(t=this.meta)&&void 0!==t&&t.merchant_name?{merchantName:null===(n=this.meta)||void 0===n?void 0:n.merchant_name}:{}),{merchantId:r}),callbackIntents:["PAYMENT_AUTHORIZATION"].concat(o(this.isShippingRequired()?["SHIPPING_ADDRESS"]:[]),o(this.hasShippingOptions()?["SHIPPING_OPTION"]:[]))},this.isShippingRequired()&&P({shippingAddressRequired:!0},this.hasShippingOptions()&&{shippingOptionRequired:!0,shippingOptionParameters:{defaultSelectedOptionId:null===(i=this.selectedShippingOption)||void 0===i?void 0:i.id,shippingOptions:this.formatShippingOptions(this.meta.shipping_options)}}))}},{key:"createCardData",value:function(){return this.getMetaRawDataInitialization()||{type:"CARD",parameters:{allowedAuthMethods:["PAN_ONLY","CRYPTOGRAM_3DS"],allowedCardNetworks:["AMEX","DISCOVER","INTERAC","JCB","MASTERCARD","VISA"],billingAddressRequired:!!this.meta.show_billing_address}}}}]),In);function In(e,t,n,i){l(this,In);var u=c(this,(In.__proto__||Object.getPrototypeOf(In)).call(this,e,t));return u.gatewayName=n,u.eventEmitter=i,u.parseUpdateData=function(n){var e,t,i,r,o,a,s=null===(t=null===(e=u.meta)||void 0===e?void 0:e.shipping_options)||void 0===t?void 0:t.find(function(e){var t;return e.id===(null===(t=null==n?void 0:n.shippingOptionData)||void 0===t?void 0:t.id)});return P({shipping:{address_city:null===(i=n.shippingAddress)||void 0===i?void 0:i.locality,address_state:null===(r=n.shippingAddress)||void 0===r?void 0:r.administrativeArea,address_postcode:null===(o=null==n?void 0:n.shippingAddress)||void 0===o?void 0:o.postalCode,address_country:null===(a=null==n?void 0:n.shippingAddress)||void 0===a?void 0:a.countryCode}},s&&{selected_shipping_option:{id:null==s?void 0:s.id,label:null==s?void 0:s.label,detail:null==s?void 0:s.detail,type:null==s?void 0:s.type}})},u.formatShippingOptions=function(e){return e.map(function(e){return{id:e.id,label:e.label,description:(null==e?void 0:e.detail)||""}})},u.eventEmitter=i,u}var Un,Dn,Nn=(s(Mn,gn),n(Mn,[{key:"initializeChildWallets",value:function(){var e,t,n,i,r,o;this.childWallets=[];var a=!(null===(n=null===(t=null===(e=this.meta)||void 0===e?void 0:e.credentials)||void 0===t?void 0:t.apple)||void 0===n||!n.merchant),s=!(null===(o=null===(r=null===(i=this.meta)||void 0===i?void 0:i.credentials)||void 0===r?void 0:r.google)||void 0===o||!o.merchant);!a||this.meta.wallets&&!this.meta.wallets.includes(se.APPLE)||this.childWallets.push(new Rn(this.publicKey,this.meta,this.getGatewayName(),this.eventEmitter)),!s||this.meta.wallets&&!this.meta.wallets.includes(se.GOOGLE)||this.childWallets.push(new Ln(this.publicKey,this.meta,this.getGatewayName(),this.eventEmitter))}},{key:"getGatewayName",value:function(){return oe.MASTERCARD}},{key:"setEnv",value:function(t){return this.childWallets.forEach(function(e){return e.setEnv(t)}),this}},{key:"update",value:function(t){this.childWallets.forEach(function(e){return e.update(t)})}}]),Mn);function Mn(){return l(this,Mn),c(this,(Mn.__proto__||Object.getPrototypeOf(Mn)).apply(this,arguments))}(Dn=Un=Un||{})[Dn.PUBLIC_KEY=0]="PUBLIC_KEY",Dn[Dn.TOKEN=1]="TOKEN";var Fn=(n(jn,[{key:"setEnv",value:function(e,t){return this.env.setEnv(e,t),this}},{key:"setAuthType",value:function(){return this.authType=h.validateJWT(this.auth)?Un.TOKEN:Un.PUBLIC_KEY}},{key:"getClient",value:function(e,t){var i=this,r=new XMLHttpRequest;return r.open(e,this.env.getConf().url+t,!0),r.setRequestHeader("Content-Type","application/json; charset=UTF-8"),this.setAuthHeader(r),v.version&&(r.setRequestHeader(v.headerKeys.version,v.version),r.setRequestHeader(v.headerKeys.type,v.type)),{config:r,send:function(e,t,n){r.onload=function(){return i.parser({text:r.responseText,status:r.status},t,n)},r.send(JSON.stringify(e))}}}},{key:"getClientPromise",value:function(e,t){var i=this,r=new XMLHttpRequest;return r.open(e,this.env.getConf().url+t,!0),r.setRequestHeader("Content-Type","application/json; charset=UTF-8"),this.setAuthHeader(r),v.version&&(r.setRequestHeader(v.headerKeys.version,v.version),r.setRequestHeader(v.headerKeys.type,v.type)),{config:r,send:function(n){return new Promise(function(e,t){r.onload=function(){return e({text:r.responseText,status:r.status})},r.send(JSON.stringify(n))}).then(function(e){return i.parserPromise(e)})}}}},{key:"parser",value:function(e,t,n){var i=e.text,r=e.status;try{var o=JSON.parse(i);if(200<=r&&r<300||302===r)return t(o.resource.data);n(o.error||{message:"unknown error"})}catch(e){}}},{key:"parserPromise",value:function(e){var t=e.text,n=e.status;try{var i=JSON.parse(t);return 200<=n&&n<300||302===n?Promise.resolve(i.resource.data):Promise.reject(i.error||{message:"unknown error"})}catch(e){return Promise.reject(e)}}},{key:"setAuthHeader",value:function(e){switch(this.authType){case Un.PUBLIC_KEY:e.setRequestHeader("x-user-public-key",this.auth);break;case Un.TOKEN:e.setRequestHeader("x-access-token",this.auth)}}}]),jn);function jn(e,t){l(this,jn),this.auth=e,this.authType=t||this.setAuthType(),this.env=new G(z)}var Hn=(n(Bn,[{key:"walletCapture",value:function(e){return this.api.getClientPromise("POST","/v1/charges/wallet/capture").send(e)}},{key:"walletCallback",value:function(e){return this.api.getClientPromise("POST","/v1/charges/wallet/callback").send(e)}},{key:"standalone3dsProcess",value:function(e){return this.api.getClientPromise("POST","/v1/charges/standalone-3ds/process").send(e)}},{key:"standalone3dsHandle",value:function(){return this.api.getClientPromise("GET","/v1/charges/standalone-3ds/handle").send(void 0)}}]),Bn);function Bn(e){l(this,Bn),this.api=e}var zn,qn=(n(Wn,[{key:"getConfig",value:function(e){var t="/v1/services/:service_id/config".replace(":service_id",e);return this.api.getClientPromise("GET",t).send(void 0)}}]),Wn);function Wn(e){l(this,Wn),this.api=e}(zn||(zn={})).VISA_SRC="VisaSRC";var Vn=(s(Yn,Fn),n(Yn,[{key:"charge",value:function(){return new Hn(this)}},{key:"service",value:function(){return new qn(this)}}]),Yn);function Yn(){return l(this,Yn),c(this,(Yn.__proto__||Object.getPrototypeOf(Yn)).apply(this,arguments))}var Kn=(s(Gn,gn),n(Gn,[{key:"load",value:function(e){var t=this;this.storageDispatcher.create(function(){return t.mount(e)})}},{key:"setEnv",value:function(e){return a(Gn.prototype.__proto__||Object.getPrototypeOf(Gn.prototype),"setEnv",this).call(this,e),this.storageDispatcher.setEnv(e),this}},{key:"mount",value:function(e){var t,n,i,r,o=this,a={};null!==(t=this.meta)&&void 0!==t&&t.style&&"object"===K(null===(n=this.meta)||void 0===n?void 0:n.style)&&(a=JSON.parse(JSON.stringify((null===(i=this.meta)||void 0===i?void 0:i.style.afterpay)||(null===(r=this.meta)||void 0===r?void 0:r.style))));var s=this.getButton(a);s.onclick=function(){return o.onAfterPayButtonClicked()};var u=this.getButtonStyle(a);e.getElement().appendChild(s),e.getElement().appendChild(u)}},{key:"onAfterPayButtonClicked",value:function(){var e,t,n=this,i=document.createElement("script"),r=null===(e=this.meta)||void 0===e?void 0:e.country;i.type="text/javascript",i.src="live"===(null===(t=this.meta)||void 0===t?void 0:t.gateway_mode)?"https://portal.afterpay.com/afterpay.js":"https://portal.sandbox.afterpay.com/afterpay.js",i.async=!0,i.defer=!0,i.onload=function(){window.AfterPay.initialize({countryCode:r}),n.storageDispatcher.push({intent:Mt.WIDGET_SESSION,data:{token:n.token}},{onSuccess:function(){n.getCheckoutSession().then(function(e){window.AfterPay.redirect({token:e.ref_token})}).catch(function(e){window.AfterPay.close(),n.eventEmitter.emit(yn.UNAVAILABLE,{err:e})})},onError:function(){console.error("Error initializing Afterpay wallet"),window.AfterPay.close(),n.eventEmitter.emit(yn.UNAVAILABLE,{})}})},document.head.appendChild(i)}},{key:"getCheckoutSession",value:function(){var e=this;return new Promise(function(t,n){return e.eventEmitter.emit(yn.CALLBACK,{data:{request_type:"CREATE_SESSION",wallet_type:se.AFTERPAY},onSuccess:function(e){t(e)},onError:function(e){n(e)}})})}},{key:"getButton",value:function(e){var t=document.createElement("button");return t.classList.add("afterpay-checkout-btn"),t.setAttribute("type","button"),t.innerHTML='\n <div class="afterpay-checkout-btn__wrapper">\n <svg viewBox="0 0 390 94"\n height="'+this.getHeight(e)+'"\n xmlns="http://www.w3.org/2000/svg">\n <g fill="currentColor">\n <path\n d="M388.6 21.4l-34.8 71.8h-14.4l13-26.8-20.5-45h14.8l13.2 30.1 14.3-30.1zM41 46.9c0-8.6-6.2-14.6-13.9-14.6s-13.9 6.1-13.9 14.6c0 8.4 6.2 14.6 13.9 14.6 7.6 0 13.9-6.1 13.9-14.6m.1 25.5v-6.6c-3.8 4.6-9.4 7.4-16.1 7.4C11 73.2.4 62 .4 46.9c0-15 11-26.4 24.9-26.4 6.5 0 12 2.9 15.8 7.3v-6.4h12.5v51H41.1zM114.6 61.1c-4.4 0-5.6-1.6-5.6-5.9V32.5h8.1V21.4H109V8.9H96.1v12.4H79.5v-5.1c0-4.3 1.6-5.9 6.1-5.9h2.8V.4h-6.2C71.6.4 66.6 3.9 66.6 14.5v6.8h-7.1v11.1h7.1v39.9h12.9V32.5h16.6v25c0 10.4 4 14.9 14.4 14.9h6.6V61.1h-2.5zM160.7 42.3c-.9-6.6-6.3-10.6-12.6-10.6s-11.5 3.9-12.9 10.6h25.5zm-25.6 7.9c.9 7.5 6.3 11.8 13.2 11.8 5.4 0 9.6-2.6 12-6.6h13.2c-3.1 10.8-12.7 17.7-25.5 17.7-15.4 0-26.2-10.8-26.2-26.2 0-15.4 11.4-26.5 26.5-26.5 15.2 0 26.2 11.2 26.2 26.5 0 1.1-.1 2.2-.3 3.3h-39.1zM256.2 46.9c0-8.3-6.2-14.6-13.9-14.6s-13.9 6.1-13.9 14.6c0 8.4 6.2 14.6 13.9 14.6 7.6 0 13.9-6.4 13.9-14.6m-40.4 46.3V21.4h12.5V28c3.8-4.7 9.4-7.5 16.1-7.5 13.8 0 24.6 11.3 24.6 26.3s-11 26.4-24.9 26.4c-6.4 0-11.7-2.6-15.4-6.8v26.8h-12.9zM314.2 46.9c0-8.6-6.2-14.6-13.9-14.6-7.6 0-13.9 6.1-13.9 14.6 0 8.4 6.2 14.6 13.9 14.6s13.9-6.1 13.9-14.6m.1 25.5v-6.6c-3.8 4.6-9.4 7.4-16.1 7.4-14 0-24.6-11.2-24.6-26.3 0-15 11-26.4 24.9-26.4 6.5 0 12 2.9 15.8 7.3v-6.4h12.5v51h-12.5zM193.2 26.4s3.2-5.9 11-5.9c3.3 0 5.5 1.2 5.5 1.2v13s-4.7-2.9-9.1-2.3c-4.3.6-7.1 4.6-7.1 9.9v30.2h-13v-51H193v4.9h.2z" />\n </g>\n </svg>\n <svg viewBox="0 0 107 96"\n height="'+this.getHeight(e)+'"\n xmlns="http://www.w3.org/2000/svg">\n <path\n d="M99 19.5L84.2 11l-15-8.6c-10-5.7-22.4 1.5-22.4 13v1.9c0 1.1.6 2 1.5 2.6l7 4c1.9 1.1 4.4-.3 4.4-2.5v-4.6c0-2.3 2.5-3.7 4.4-2.6l13.8 7.9L91.6 30c2 1.1 2 4 0 5.1L77.9 43l-13.8 7.9c-2 1.1-4.4-.3-4.4-2.6V46c0-11.5-12.4-18.7-22.4-13l-15 8.6-14.8 8.5c-10 5.7-10 20.2 0 26l14.8 8.5 15 8.6c10 5.7 22.4-1.5 22.4-13v-1.9c0-1.1-.6-2-1.5-2.6l-7-4c-1.9-1.1-4.4.3-4.4 2.5v4.6c0 2.3-2.5 3.7-4.4 2.6l-13.8-7.9-13.7-7.9c-2-1.1-2-4 0-5.1l13.7-7.9 13.8-7.9c2-1.1 4.4.3 4.4 2.6v2.3c0 11.5 12.4 18.7 22.4 13l15-8.6L99 45.5c10.1-5.8 10.1-20.2 0-26"\n fill="currentColor" />\n </svg>\n </div>\n ',t}},{key:"getButtonStyle",value:function(e){var t=document.createElement("style"),n=this.generateButtonColor(e.button_type);return t.innerText="\n .afterpay-checkout-btn {\n outline: none;\n border: none;\n border-radius: "+this.getHeight(e)+";\n padding: 0;\n margin: 0;\n transition: all 300ms;\n cursor: pointer;\n }\n\n .afterpay-checkout-btn:active {\n opacity: 0.7;\n }\n\n .afterpay-checkout-btn__wrapper {\n display: flex;\n align-items: center;\n padding: 10px 20px;\n color: "+n.color+";\n background-color: "+n.background+";\n border-radius: "+this.getHeight(e)+";\n }\n ",t}},{key:"generateButtonColor",value:function(e){switch(e){case"black":return{color:"#B2FCE3",background:"#000"};case"mint":return{color:"#000",background:"#B2FCE3"};default:return{color:"#fff",background:"#000"}}}},{key:"getHeight",value:function(e){return e.height?Number.isNaN(Number(e.height))?e.height:e.height+"px":"40px"}}]),Gn);function Gn(e,t){l(this,Gn);var n=c(this,(Gn.__proto__||Object.getPrototypeOf(Gn)).call(this,e,t));return n.token=e,n.storageDispatcher=new jt("afterpay.wallet.paydock"),n}var Jn="unavailable",Xn="update",Zn="paymentSuccessful",Qn="paymentError",$n="paymentInReview",ei=(n(ti,[{key:"load",value:function(){try{this.setupServiceCallbacks(),this.service.load(this.container)}catch(e){throw this.eventEmitter.emit(Jn,null),e}}},{key:"update",value:function(e){this.service.update(e)}},{key:"setEnv",value:function(e,t){this.api.setEnv(e,t),this.service.setEnv(e)}},{key:"close",value:function(){"function"==typeof this.service.close&&this.service.close()}},{key:"on",value:function(e,t){var n=this;return e===Xn&&(this.hasUpdateHandler=!0),"function"==typeof t?this.eventEmitter.subscribe(e,t):new Promise(function(t){return n.eventEmitter.subscribe(e,function(e){return t(e)})})}},{key:"onUnavailable",value:function(e){var t=this;return"function"==typeof e?this.eventEmitter.subscribe(Jn,e):new Promise(function(e){return t.eventEmitter.subscribe(Jn,function(){return e()})})}},{key:"onUpdate",value:function(e){var n=this;return this.hasUpdateHandler=!0,"function"==typeof e?this.eventEmitter.subscribe(Xn,e):new Promise(function(t){return n.eventEmitter.subscribe(Xn,function(e){return t(e)})})}},{key:"onPaymentSuccessful",value:function(e){var n=this;return"function"==typeof e?this.eventEmitter.subscribe(Zn,e):new Promise(function(t){return n.eventEmitter.subscribe(Zn,function(e){return t(e)})})}},{key:"onPaymentInReview",value:function(e){var n=this;return"function"==typeof e?this.eventEmitter.subscribe($n,e):new Promise(function(t){return n.eventEmitter.subscribe($n,function(e){return t(e)})})}},{key:"onPaymentError",value:function(e){var n=this;return"function"==typeof e?this.eventEmitter.subscribe(Qn,e):new Promise(function(t){return n.eventEmitter.subscribe(Qn,function(e){return t(e)})})}},{key:"setupServiceCallbacks",value:function(){this.setupUnavailableCallback(),this.setupUpdateCallback(),this.setupWalletCallback(),this.setupPaymentCallback(),this.setupPaymentSuccessCallback(),this.setupPaymentInReviewCallback(),this.setupPaymentErrorCallback()}},{key:"setupUnavailableCallback",value:function(){var t=this;this.service.on(yn.UNAVAILABLE,function(e){return t.eventEmitter.emit(Jn,{event:Jn,data:e})})}},{key:"setupUpdateCallback",value:function(){var t=this;this.service.on(yn.UPDATE,function(e){return t.hasUpdateHandler?t.eventEmitter.emit(Xn,{event:Xn,data:e}):t.update({success:!0})})}},{key:"setupWalletCallback",value:function(){var r=this;this.service.on(yn.CALLBACK,function(e){var t=e.data,n=e.onSuccess,i=e.onError;r.api.charge().walletCallback(t).then(function(e){return n(e)},function(e){return i(e.message)})})}},{key:"setupPaymentCallback",value:function(){var r=this;this.service.on(yn.PAYMENT_METHOD_SELECTED,function(e){var n=e.data,i=e.onSuccess,t=e.onError;r.api.charge().walletCapture(n).then(function(e){"function"==typeof i&&i();var t="inreview"===e.status?$n:Zn;r.eventEmitter.emit(t,{event:t,data:P(P({},e),n.customer&&{payer_name:n.customer.payer_name,payer_email:n.customer.payer_email,payer_phone:n.customer.payer_phone})})},function(e){"function"==typeof t&&t(e),r.eventEmitter.emit(Qn,{event:Qn,data:e})})})}},{key:"setupPaymentSuccessCallback",value:function(){var t=this;this.service.on(yn.PAYMENT_SUCCESS,function(e){return t.eventEmitter.emit(Zn,{event:Zn,data:e})})}},{key:"setupPaymentInReviewCallback",value:function(){var t=this;this.service.on(yn.PAYMENT_IN_REVIEW,function(e){return t.eventEmitter.emit($n,{event:$n,data:e})})}},{key:"setupPaymentErrorCallback",value:function(){var t=this;this.service.on(yn.PAYMENT_ERROR,function(e){return t.eventEmitter.emit(Qn,{event:Qn,data:e})})}}]),ti);function ti(e,t,n){l(this,ti),this.hasUpdateHandler=!1;var i=h.validateJWT(t);if(!i)throw new Error("Invalid charge token");this.eventEmitter=new it,this.container=new Pe(e);var r=h.extractMeta(i.body);switch(this.api=new Vn(t,Un.TOKEN),r.gateway.type){case oe.STRIPE:this.service=new An(r.credentials.client_auth,P(P({},n),{amount:r.charge.amount,currency:r.charge.currency}));break;case oe.FLYPAY:this.service=new kn(t,P(P({},n),{id:r.charge.id,gateway_mode:r.gateway.mode,amount:r.charge.amount,currency:r.charge.currency,reference:r.charge.reference}));break;case oe.PAYPAL:this.service=new wn(r.credentials.client_auth,P(P({},n),{id:r.charge.id,gateway_mode:r.gateway.mode,amount:r.charge.amount,currency:r.charge.currency,capture:r.charge.capture}));break;case oe.MASTERCARD:this.service=new Nn("",P(P({},n),{credentials:r.gateway.credentials,amount:r.charge.amount,currency:r.charge.currency,gateway_mode:r.gateway.mode}));break;case oe.AFTERPAY:this.service=new Kn(t,P(P({},n),{id:r.charge.id,gateway_mode:r.gateway.mode,amount:r.charge.amount,currency:r.charge.currency,reference:r.charge.reference}))}}var ni=(n(ii,[{key:"setStyles",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setStyle(t,e[t])}},{key:"setStyle",value:function(e,t){-1!==ie.values(de).indexOf(e)?this.link.setParams(r({},e,t)):console.warn("Widget::setStyle[s: unsupported style param "+e)}},{key:"setRefId",value:function(e){this.link.setParams({ref_id:e})}},{key:"setLimit",value:function(e){this.link.setParams({limit:e})}},{key:"setEnv",value:function(e,t){for(var n in this.link.setEnv(e,t),this.configs)this.configs.hasOwnProperty(n)&&this.configs[n].setEnv(e,t)}},{key:"getEnv",value:function(){this.link.getEnv()}},{key:"getIFrameUrl",value:function(){return this.link.getUrl()}},{key:"filterByGatewayIds",value:function(e){this.link.setParams({gateway_ids:e.join(",")})}},{key:"filterByTypes",value:function(e){var t=[],n=!0,i=!1,r=void 0;try{for(var o,a=e[Symbol.iterator]();!(n=(o=a.next()).done);n=!0){var s=o.value;e.hasOwnProperty(s)&&(-1===ie.values(le).indexOf(s)?console.warn("PaymentSourceWidget::filterByTypes: unsupported type "+s):t.push(s))}}catch(e){i=!0,r=e}finally{try{!n&&a.return&&a.return()}finally{if(i)throw r}}this.link.setParams({payment_source_types:t.join(",")})}},{key:"setLanguage",value:function(e){this.link.setParams({language:e})}}]),ii);function ii(e,t){l(this,ii),this.configs=[],this.configTokens=[],this.link=new te("/payment-sources"),this.link.setParams(P({query_token:t},h.validateJWT(e)?{access_token:e}:{public_key:e})),v.version&&this.link.setParams({sdk_version:v.version,sdk_type:v.type})}var ri=(s(oi,ni),n(oi,[{key:"load",value:function(){this.iFrame.load(this.getIFrameUrl(),{title:"Payment Sources"})}},{key:"on",value:function(e,t){this.event.on(e,this.link.getParams().widget_id,t)}},{key:"hide",value:function(e){console.info("PayDock SDK"),this.iFrame.hide(e)}},{key:"show",value:function(){this.iFrame.show()}},{key:"reload",value:function(){this.iFrame.remove(),this.load()}},{key:"onSelectInsert",value:function(t,n){this.on(Ie.SELECT,function(e){Te.insertToInput(t,n,e)})}}]),oi);function oi(e,t,n){l(this,oi);var i=c(this,(oi.__proto__||Object.getPrototypeOf(oi)).call(this,t,n));return i.container=new Pe(e),i.iFrame=new xe(i.container),i.event=new Ue(window),i}var ai,si,ui={visibility:"hidden",border:"0",width:"0",height:"0"};(si=ai=ai||{}).SUCCESS="success",si.ERROR="error",si.PENDING="pending";var li="chargeAuthSuccess",ci="chargeAuthReject",di="chargeAuthDecoupled",hi="chargeAuthChallenge",pi="chargeAuthInfo",vi="error",fi=(n(mi,[{key:"load",value:function(e,t){var n=e.initialization_url,i=e.secondary_url,r=e.charge_3ds_id;try{this.setupIFrameEvents(r),this.initializeIFrames(n,i,t)}catch(e){this.eventEmitter.emit(vi,this.parseError(e,r))}}},{key:"initializeIFrames",value:function(e,t,n,i){var r=!(3<arguments.length&&void 0!==i)||i,o=this.container.getElement();if(o){var a=document.createElement("div");if(a.setAttribute("id","paydock_authorization_iframe"),o.appendChild(a),this.browserAndChallengeContainer=new Pe("#paydock_authorization_iframe"),this.iFrameAuthorization=new xe(this.browserAndChallengeContainer),this.iFrameAuthorization.load(e,{title:n}),t){var s=document.createElement("div");s.setAttribute("id","paydock_secondary_iframe"),o.appendChild(s),this.monitoringContainer=new Pe("#paydock_secondary_iframe"),this.iFrameSecondaryUrl=new xe(this.monitoringContainer),this.iFrameSecondaryUrl.load(t,{title:n})}else this.iFrameSecondaryUrl=void 0;this.hideIframes(r)}}},{key:"hideIframes",value:function(e){var t,n=!(0<arguments.length&&void 0!==e)||e;for(var i in ui)ui.hasOwnProperty(i)&&(n&&this.iFrameAuthorization.setStyle(i,ui[i]),null!==(t=this.iFrameSecondaryUrl)&&void 0!==t&&t.setStyle(i,ui[i]))}},{key:"setupIFrameEvents",value:function(e){var t=this;this.iFrameEvent.on(Ie.CHARGE_AUTH,e,function(e){"MethodSkipped"===e.status||"MethodFinished"===e.status?(e.info&&t.eventEmitter.emit(pi,{info:e.info}),t.performAuthentication(e)):"AuthTimedOut"!==e.status&&"invalid_event"!==e.status||t.eventEmitter.emit(ci,t.parseHandleResponse({status:e.status},e.charge_3ds_id))}),this.iFrameEvent.on(Ie.CHARGE_AUTH_SUCCESS,e,function(e){t.processResult(e.charge_3ds_id)})}},{key:"parseResultData",value:function(e,t){return{status:e.status,charge_3ds_id:t}}},{key:"parseHandleResponse",value:function(e,t){var n=e.status,i=e.result;return{status:n,charge_3ds_id:t,result:{description:null==i?void 0:i.description}}}},{key:"parseError",value:function(e,t){return{charge_3ds_id:t,error:e}}},{key:"processResult",value:function(n){var i=this;this.resultRead||(this.resultRead=!0,this.api.charge().standalone3dsHandle().then(function(e){var t;i.iFrameAuthorization.remove(),null!==(t=i.iFrameSecondaryUrl)&&void 0!==t&&t.remove(),e.status===ai.SUCCESS?i.eventEmitter.emit(li,i.parseResultData(e,n)):i.eventEmitter.emit(ci,i.parseResultData(e,n))},function(e){i.eventEmitter.emit(vi,i.parseError(e,n))}))}},{key:"externalAPI",value:function(e,t){var i=new XMLHttpRequest;return i.open(e,t,!0),new Promise(function(t,n){i.onload=function(){try{var e=JSON.parse(i.responseText);t(e)}catch(e){n(e)}},i.send()})}},{key:"doPolling",value:function(t,n){var i=this;this.externalAPI("GET",t).then(function(e){if(e.event&&"AuthResultNotReady"!==e.event){if("AuthResultReady"!==e.event)throw new Error("Event not supported");i.processResult(n)}else setTimeout(function(){i.doPolling(t,n)},2e3)}).catch(function(e){return i.eventEmitter.emit(vi,i.parseError(e,n))})}},{key:"performAuthentication",value:function(e){var t,i=this,r=e.charge_3ds_id;this.iFrameAuthorization.remove(),null!==(t=this.iFrameSecondaryUrl)&&void 0!==t&&t.remove(),this.api.charge().standalone3dsProcess({charge_3ds_id:r}).then(function(e){var t,n;if("success"===e.status)i.eventEmitter.emit(li,i.parseHandleResponse(e,r));else{if("pending"!==e.status)return i.eventEmitter.emit(ci,i.parseHandleResponse(e,r));null!==(t=null==e?void 0:e.result)&&void 0!==t&&t.challenge?(i.eventEmitter.emit(hi,i.parseHandleResponse(e,r)),i.initializeIFrames(e.result.challenge_url,void 0,"Authentication Challenge",!1),e.result.secondary_url&&i.doPolling(e.result.secondary_url,r)):null!==(n=null==e?void 0:e.result)&&void 0!==n&&n.decoupled_challenge&&(i.eventEmitter.emit(di,i.parseHandleResponse(e,r)),e.result.secondary_url&&i.doPolling(e.result.secondary_url,r))}},function(e){i.eventEmitter.emit(vi,i.parseError(e,r))})}}]),mi);function mi(e,t,n){l(this,mi),this.container=e,this.api=t,this.eventEmitter=n,this.resultRead=!1,this.iFrameEvent=new Ue(window)}var yi,gi,_i="GPayments",ki=(n(Ei,[{key:"load",value:function(e,t){var n=h.validateJWT(e);if(!n)throw new Error("Invalid charge token");var i=h.extractData(n.body),r=new Vn(e,Un.TOKEN);switch(r.setEnv(this.env,this.alias),i.service_type){case _i:new fi(this.container,r,this.eventEmitter).load(i,t.title)}}},{key:"setEnv",value:function(e,t){this.env=e,this.alias=t}}]),Ei);function Ei(e,t){l(this,Ei),this.env=W,this.container=e,this.eventEmitter=t}(gi=yi=yi||{}).HTML="html",gi.URL="url",gi.STANDALONE_3DS="standalone_3ds";var wi=(n(bi,[{key:"load",value:function(){this.token.format===yi.HTML?this.iFrame.loadFromHtml(this.token.content,{title:"3d secure authentication"}):this.token.format===yi.URL?this.iFrame.load(this.token.content,{title:"3d secure authentication"}):this.token.format===yi.STANDALONE_3DS?this.standalone3dsService.load(this.token.content,{title:"3d secure authentication"}):console.error("Token contain unsupported payload")}},{key:"setEnv",value:function(e,t){for(var n in this.link.setEnv(e,t),this.standalone3dsService.setEnv(e,t),this.configs)this.configs.hasOwnProperty(n)&&this.configs[n].setEnv(e,t)}},{key:"getEnv",value:function(){return this.link.getEnv()}},{key:"on",value:function(e,t){var n=this;return this.token.format===yi.STANDALONE_3DS?"function"==typeof t?this.eventEmitter.subscribe(e,t):new Promise(function(t){return n.eventEmitter.subscribe(e,function(e){return t(e)})}):"function"==typeof t?this.event.on(e,this.link.getParams().ref_id,t):new Promise(function(t){return n.event.on(e,n.link.getParams().ref_id,function(e){return t(e)})})}},{key:"hide",value:function(e){this.iFrame.hide(e)}},{key:"show",value:function(){this.iFrame.show()}},{key:"reload",value:function(){this.iFrame.remove(),this.load()}}],[{key:"extractToken",value:function(e){return JSON.parse(window.atob(e))}}]),bi);function bi(e,t){l(this,bi),this.configs=[],this.link=new te("/3ds/webhook"),this.token=bi.extractToken(t),this.link.setParams({ref_id:this.token.charge_3ds_id}),this.container=new Pe(e),this.iFrame=new xe(this.container),this.eventEmitter=new it,this.standalone3dsService=new ki(this.container,this.eventEmitter),this.event=new Ue(window)}var Ci="/v1/charges/3ds",Si=(n(Oi,[{key:"preAuth",value:function(e,t){return"function"==typeof t?this.api.getClient("POST",Ci).send(P(P({},e),{_3ds:P(P({},e._3ds),{browser_details:{name:st.getBrowserName(),java_enabled:st.isJavaEnabled().toString(),language:st.getLanguage(),screen_height:st.getScreenHeight().toString(),screen_width:st.getScreenWidth().toString(),time_zone:st.getTimezoneOffset().toString(),color_depth:st.getColorDepth().toString()}})}),function(e){t(e)}):this.api.getClientPromise("POST",Ci).send(P(P({},e),{_3ds:P(P({},e._3ds),{browser_details:{name:st.getBrowserName(),java_enabled:st.isJavaEnabled().toString(),language:st.getLanguage(),screen_height:st.getScreenHeight().toString(),screen_width:st.getScreenWidth().toString(),time_zone:st.getTimezoneOffset().toString(),color_depth:st.getColorDepth().toString()}})}))}}]),Oi);function Oi(e){l(this,Oi),this.api=e}var Ti,Ai,Pi=(s(Ri,Fn),n(Ri,[{key:"getBrowserDetails",value:function(){return{name:st.getBrowserName(),java_enabled:st.isJavaEnabled().toString(),language:st.getLanguage(),screen_height:st.getScreenHeight().toString(),screen_width:st.getScreenWidth().toString(),time_zone:st.getTimezoneOffset().toString(),color_depth:st.getColorDepth().toString()}}},{key:"charge",value:function(){return new Si(this)}}]),Ri);function Ri(e){l(this,Ri);var t=c(this,(Ri.__proto__||Object.getPrototypeOf(Ri)).call(this,e));return t.publicKey=t.auth,t}(Ai=Ti=Ti||{}).AFTER_LOAD="after_load",Ai.SYSTEM_ERROR="system_error",Ai.CVV_SECURE_CODE_REQUESTED="cvv_secure_code_requested",Ai.CARD_NUMBER_SECURE_CODE_REQUESTED="card_number_secure_code_requested",Ai.ACCESS_FORBIDDEN="access_forbidden",Ai.SESSION_EXPIRED="session_expired",Ai.OPERATION_FORBIDDEN="operation_forbidden";var xi=(s(Li,Ue),n(Li,[{key:"on",value:function(e,t,n){for(var i in Ti)Ti.hasOwnProperty(i)&&e===Ti[i]&&this.listeners.push({event:e,listener:n,widget_id:t})}}]),Li);function Li(){return l(this,Li),c(this,(Li.__proto__||Object.getPrototypeOf(Li)).apply(this,arguments))}var Ii=(n(Ui,[{key:"setEnv",value:function(e,t){this.link.setEnv(e,t)}},{key:"on",value:function(e,t){var n=this;return"function"==typeof t?this.event.on(e,this.link.getParams().widget_id,t):new Promise(function(t){return n.event.on(e,n.link.getParams().widget_id,function(e){return t(e)})})}},{key:"setStyles",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setStyle(t,e[t])}},{key:"setStyle",value:function(e,t){-1!==ie.values(de).indexOf(e)?this.link.setParams(r({},e,t)):console.warn("Widget::setStyle[s: unsupported style param "+e)}},{key:"load",value:function(){this.iFrame.load(this.link.getUrl(),{title:"Vault Display"})}}]),Ui);function Ui(e,t){l(this,Ui),this.validationData={},this.configs=[],this.container=new Pe(e),this.iFrame=new xe(this.container),this.triggerElement=new Me(this.iFrame),this.event=new xi(window),this.vaultDisplayToken=t,this.link=new te("/vault-display"),this.link.setParams({vault_display_token:t})}function Di(){l(this,Di)}var Ni,Mi;Di.buttonContainerStyles="display: flex; flex-direction: column; justify-content: center; align-items: center;",Di.buttonStyles="color: #ffff; background-color: #ffbe24; border: none; width: 100%; min-height: 40px; font-size: 16px; font-weight: bold; line-height: 19px; letter-spacing: 0.7px; text-transform: uppercase; border-radius: 4px; margin-bottom: 15px; cursor: pointer;",Di.footerContainerStyles="display: flex; flex: 1; flex-wrap: wrap; justify-content: center;",Di.footerTextStyles="text-align: center; color: #666666; margin: 2px 0;",Di.verticalLineStyle="display: inline-block; padding: 0.5px; background-color: #E5E5E5; height: 15px;",Di.clickToPayAllCardsStyle="height: 17px; margin-left: 8px; vertical-align: middle; padding-top: 3px;",(Mi=Ni=Ni||{}).CHECKOUT_BUTTON_LOADED="checkoutButtonLoaded",Mi.CHECKOUT_BUTTON_CLICKED="checkoutButtonClicked",Mi.IFRAME_LOADED="iframeLoaded",Mi.CHECKOUT_READY="checkoutReady",Mi.CHECKOUT_COMPLETED="checkoutCompleted",Mi.CHECKOUT_ERROR="checkoutError";var Fi={BUTTON_TEXT_COLOR:"button_text_color",PRIMARY_COLOR:"primary_color",FONT_FAMILY:"font_family",CARD_SCHEMES:"card_schemes"},ji="visa",Hi="mastercard",Bi="amex",zi="discover",qi="/images/visa-src/Chevron_Large_V.png",Wi="/images/visa-src/vmad.svg",Vi=function(e,n){return e.every(function(e,t){return e===n[t]})},Yi=(n(Ki,[{key:"setupIFrameEvents",value:function(){var n=this,e=this.link.getParams().widget_id;this.iFrameEvent.on(Ni.CHECKOUT_READY,e,function(e){var t=e.data;n.eventEmitter.emit(Ni.CHECKOUT_READY,t)}),this.iFrameEvent.on(Ni.CHECKOUT_COMPLETED,e,function(e){var t=e.data;n.eventEmitter.emit(Ni.CHECKOUT_COMPLETED,t)}),this.iFrameEvent.on(Ni.CHECKOUT_ERROR,e,function(e){var t=e.data;n.eventEmitter.emit(Ni.CHECKOUT_ERROR,t)}),this.autoResize&&this.useAutoResize(!0)}},{key:"load",value:function(){var e,t=this,n=document.createElement("div");n.setAttribute("style",Di.buttonContainerStyles);var i=document.createElement("button");i.setAttribute("style",Di.buttonStyles),this.meta.customizations.primary_color&&(i.style.backgroundColor=this.meta.customizations.primary_color),this.meta.customizations.button_text_color&&(i.style.color=this.meta.customizations.button_text_color),i.innerHTML="Checkout";var r=document.createElement("div");r.setAttribute("style",Di.footerContainerStyles),document.createElement("div").setAttribute("style",Di.verticalLineStyle);var o=document.createElement("p");o.setAttribute("style",Di.footerTextStyles),o.innerHTML="WE ACCEPT";var a=document.createElement("img");a.setAttribute("style",Di.clickToPayAllCardsStyle),a.src=this.link.getBaseUrl()+(""+function(e,t){var n=1<arguments.length&&void 0!==t&&t;if(!e||!Array.isArray(e))return n?"/images/visa-src/Chevron_Large_VMAD.png":Wi;var i=e.sort();return Vi([Bi,Hi,ji],i)?n?"/images/visa-src/Chevron_Large_VMA.png":"/images/visa-src/logos/Networks_Large_VMA.png":Vi([Hi,ji],i)?n?"/images/visa-src/Chevron_Large_VM.png":"/images/visa-src/logos/Networks_Large_VM.png":Vi([Hi],i)?n?"/images/visa-src/Chevron_Large_M.png":"/images/visa-src/logos/master-logo.png":Vi([zi],i)?n?"/images/visa-src/Chevron_Large_D.png":"/images/visa-src/logos/Networks_Large_D.png":Vi([ji],i)?n?qi:"/images/visa-src/logos/visa-logo.png":n?qi:Wi}(null===(e=this.meta.customizations)||void 0===e?void 0:e.card_schemes,!0)),i.onclick=function(){t.eventEmitter.emit(Ni.CHECKOUT_BUTTON_CLICKED,{}),t.iFrame.load(t.link.getUrl(),{title:"Visa SRC checkout"}),t.iFrame.getElement().onload=function(){return t.eventEmitter.emit(Ni.IFRAME_LOADED,{})}},n.appendChild(i),n.appendChild(r),r.appendChild(o),r.appendChild(a),this.buttonContainer.getElement().appendChild(n),this.eventEmitter.emit(Ni.CHECKOUT_BUTTON_LOADED,{})}},{key:"getEnv",value:function(){return this.link.getEnv()}},{key:"hideButton",value:function(){this.buttonContainer.getElement()&&(this.buttonContainer.getElement().style.display="none")}},{key:"showButton",value:function(){this.buttonContainer.getElement()&&(this.buttonContainer.getElement().style.display="block")}},{key:"hideCheckout",value:function(){this.iFrame&&this.iFrame.hide()}},{key:"showCheckout",value:function(){this.iFrame&&this.iFrame.show()}},{key:"reload",value:function(){this.iFrame.remove(),this.load()}},{key:"useAutoResize",value:function(e){var n=this;this.autoResize&&!e||(this.autoResize=!0,this.iFrameEvent.on("resize",this.link.getParams().widget_id,function(e){var t=e.data;n.iFrame.getElement()&&(n.iFrame.getElement().scrolling="no",t.height&&n.iFrame.setStyle("height",t.height+"px"))}))}}]),Ki);function Ki(e,t,n,i,r,o,a,s,u){l(this,Ki),this.meta=r,this.eventEmitter=o,this.autoResize=a,this.link=new te("/secure-remote-commerce/visa"),this.link.setParams(P({service_id:n,public_key:i},r&&{meta:JSON.stringify(r)})),v.version&&this.link.setParams({sdk_version:v.version,sdk_type:v.type}),s&&this.link.setEnv(s,u),this.iFrameContainer=new Pe(t),this.iFrame=new xe(this.iFrameContainer),this.buttonContainer=new Pe(e),this.iFrameEvent=new Ue(window),this.setupIFrameEvents()}var Gi=(n(Ji,[{key:"setStyles",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setStyle(t,e[t])}},{key:"setStyle",value:function(e,t){-1!==ie.values(Fi).indexOf(e)?this.style[e]=t:console.warn("Widget::setStyle[s: unsupported style param "+e)}},{key:"load",value:function(){var n=this;this.provider||this.api.service().getConfig(this.service_id).then(function(e){var t=e.type;switch(n.meta.customizations=n.style,t){case zn.VISA_SRC:n.provider=new Yi(n.button_selector,n.iframe_selector,n.service_id,n.public_key_or_access_token,n.meta,n.eventEmitter,n.autoResize,n.env,n.alias)}n.provider&&n.provider.load()})}},{key:"setEnv",value:function(e,t){this.provider||(this.env=e,this.alias=t,this.api.setEnv(e,t))}},{key:"getEnv",value:function(){return this.provider?this.provider.getEnv():this.env}},{key:"on",value:function(e,t){var n=this;return"function"==typeof t?this.eventEmitter.subscribe(e,t):new Promise(function(t){return n.eventEmitter.subscribe(e,function(e){return t(e)})})}},{key:"hideButton",value:function(e){this.provider&&"function"==typeof this.provider.hideButton&&this.provider.hideButton(e)}},{key:"showButton",value:function(){this.provider&&"function"==typeof this.provider.showButton&&this.provider.showButton()}},{key:"hideCheckout",value:function(e){this.provider&&"function"==typeof this.provider.hideCheckout&&this.provider.hideCheckout(e)}},{key:"showCheckout",value:function(){this.provider&&"function"==typeof this.provider.showCheckout&&this.provider.showCheckout()}},{key:"reload",value:function(){this.provider&&this.provider.reload()}},{key:"useAutoResize",value:function(){this.autoResize=!0,this.provider&&"function"==typeof this.provider.useAutoResize&&this.provider.useAutoResize()}}]),Ji);function Ji(e,t,n,i,r){l(this,Ji),this.button_selector=e,this.iframe_selector=t,this.service_id=n,this.public_key_or_access_token=i,this.meta=r,this.autoResize=!1,this.style={},this.api=new Vn(i,Un.PUBLIC_KEY),this.eventEmitter=new it}e.AfterpayCheckoutButton=rn,e.Api=Pi,e.CHECKOUT_BUTTON_EVENT=Je,e.Canvas3ds=wi,e.Configuration=ge,e.ELEMENT=pe,e.EVENT=Ie,e.ExternalCheckoutBuilder=$e,e.ExternalCheckoutChecker=tt,e.FORM_FIELD=ce,e.HtmlMultiWidget=Be,e.HtmlPaymentSourceWidget=ri,e.HtmlWidget=qe,e.MultiWidget=Se,e.PAYMENT_TYPE=me,e.PURPOSE=ye,e.PaymentSourceBuilder=Jt,e.PaymentSourceWidget=ni,e.PaypalCheckoutButton=un,e.SRC=Gi,e.STYLABLE_ELEMENT=ke,e.STYLABLE_ELEMENT_STATE=Ee,e.STYLE=de,e.SUPPORTED_CARD_TYPES=ve,e.TEXT=he,e.TRIGGER=Ne,e.TYPE=Gt,e.VAULT_DISPLAY_STYLE={BACKGROUND_COLOR:"background_color",TEXT_COLOR:"text_color",BORDER_COLOR:"border_color",BUTTON_COLOR:"button_color",FONT_SIZE:"font_size",FONT_FAMILY:"font_family"},e.VaultDisplayWidget=Ii,e.WalletButtons=ei,e.ZipmoneyCheckoutButton=tn,Object.defineProperty(e,"__esModule",{value:!0})});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).paydock={})}(this,function(e){"use strict";function l(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var K="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n=function(e,t,n){return t&&i(e.prototype,t),n&&i(e,n),e};function i(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t,n){null===e&&(e=Function.prototype);var i=Object.getOwnPropertyDescriptor(e,t);if(void 0===i){var r=Object.getPrototypeOf(e);return null===r?void 0:a(r,t,n)}if("value"in i)return i.value;var o=i.get;return void 0!==o?o.call(n):void 0}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function c(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function o(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}var P=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},u=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],i=!0,r=!1,o=void 0;try{for(var a,s=e[Symbol.iterator]();!(i=(a=s.next()).done)&&(n.push(a.value),!t||n.length!==t);i=!0);}catch(e){r=!0,o=e}finally{try{!i&&s.return&&s.return()}finally{if(r)throw o}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},t="x-access-token",d="x-user-public-key",h=(n(p,null,[{key:"validateJWT",value:function(e){if(!e)return null;var t=e.split("."),n=u(t,3),i=n[0],r=n[1],o=n[2];if(!i||!r||!o)return null;if(2+i.length+r.length+o.length!==e.length)return null;try{return{head:JSON.parse(atob(i)),body:JSON.parse(atob(r)),signature:o}}catch(e){return null}}},{key:"extractData",value:function(e){try{return JSON.parse(atob(e.meta))}catch(e){return null}}},{key:"extractMeta",value:function(e){try{return JSON.parse(atob(e.meta)).meta}catch(e){return null}}},{key:"getAccessHeaderNameByToken",value:function(e){return p.validateJWT(e)?t:d}}]),p);function p(){l(this,p)}var v=(n(f,null,[{key:"version",get:function(){return f._version.trim()||null}}]),f);function f(){l(this,f)}v.type="client",v.headerKeys=Object.freeze({version:"x-sdk-version",type:"x-sdk-type"}),v._version="v1.91.11-beta";var m="sandbox",y="sandbox-kovena",g="sandbox-demo-kovena",_="production",k="staging",E="staging_1",w="staging_2",b="staging_3",C="staging_4",S="staging_5",O="staging_6",T="staging_7",A="staging_8",R="staging_9",x="staging_10",L="staging_11",I="staging_12",U="staging_13",D="staging_14",N="staging_15",M="staging_cba",F="sandbox_cba",j="preproduction_cba",H="production_cba",B=[{env:m,url:"https://widget-sandbox."},{env:y,url:"https://widget-sandbox."},{env:"sandbox-demo",url:"https://widget-sandbox-demo."},{env:g,url:"https://widget-sandbox-demo."},{env:_,url:"https://widget."},{env:k,url:"https://widsta."},{env:E,url:"https://widsta-1."},{env:w,url:"https://widsta-2."},{env:b,url:"https://widsta-3."},{env:C,url:"https://widsta-4."},{env:S,url:"https://widsta-5."},{env:O,url:"https://widsta-6."},{env:T,url:"https://widsta-7."},{env:A,url:"https://widsta-8."},{env:R,url:"https://widsta-9."},{env:x,url:"https://widsta-10."},{env:L,url:"https://widsta-11."},{env:I,url:"https://widsta-12."},{env:U,url:"https://widsta-13."},{env:D,url:"https://widsta-14."},{env:N,url:"https://widsta-15."},{env:M,url:"https://widget.staging.powerboard."},{env:F,url:"https://widget-sandbox-cba."},{env:j,url:"https://widget.preproduction.powerboard."},{env:H,url:"https://widget.powerboard."}],z=[{env:m,url:"https://api-sandbox."},{env:_,url:"https://api."},{env:k,url:"https://apista."},{env:E,url:"https://apista-1."},{env:w,url:"https://apista-2."},{env:b,url:"https://apista-3."},{env:C,url:"https://apista-4."},{env:S,url:"https://apista-5."},{env:O,url:"https://apista-6."},{env:T,url:"https://apista-7."},{env:A,url:"https://apista-8."},{env:R,url:"https://apista-9."},{env:x,url:"https://apista-10."},{env:L,url:"https://apista-11."},{env:I,url:"https://apista-12."},{env:U,url:"https://apista-13."},{env:D,url:"https://apista-14."},{env:N,url:"https://apista-15."},{env:M,url:"https://api.staging.powerboard."},{env:F,url:"https://api-sandbox-cba."},{env:j,url:"https://api.preproduction.powerboard."},{env:H,url:"https://api.powerboard."}],q=[y,g],W=m,V="paydock.com",Y="kovena.com",G=(n(J,[{key:"setEnv",value:function(e,t){if(!this.isValidMode(this.configs,e))throw new Error("unknown env: "+e);if(this.env=e,t&&!t.match("^([a-zA-Z0-9](?:(?:[a-zA-Z0-9-.]*(?!-)\\.(?![-.]))*[a-zA-Z0-9]+)?)$"))throw new Error("invalid: "+t);t?this.alias=t:-1!==q.indexOf(this.env)?this.alias=Y:this.alias=V}},{key:"getEnv",value:function(){return this.env}},{key:"getConf",value:function(){for(var e in this.configs)if(this.configs.hasOwnProperty(e)&&this.configs[e].env===this.getEnv())return{url:-1!==this.configs[e].url.indexOf("localhost")?this.configs[e].url:this.configs[e].url+this.alias,env:this.configs[e].env};throw new Error("invalid env")}},{key:"isValidMode",value:function(e,t){for(var n in e)if(e.hasOwnProperty(n)&&e[n].env===t)return!0;return!1}}]),J);function J(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:W;l(this,J),this.configs=e,this.setEnv(t)}var X=(n(Z,null,[{key:"extendSearchParams",value:function(e,t,n){return e.replace(new RegExp("([?&]"+t+"(?=[=&#]|$)[^#&]*|(?=#|$))"),"&"+t+"="+encodeURIComponent(n)).replace(/^([^?&]+)&/,"$1?")}},{key:"serialize",value:function(t){return Object.keys(t).map(function(e){return encodeURIComponent(e)+"="+encodeURIComponent(t[e])}).join("&")}}]),Z);function Z(){l(this,Z)}var Q=(n($,null,[{key:"generate",value:function(){if("undefined"==typeof window||void 0===window.crypto||void 0===window.crypto.getRandomValues)return this.random()+this.random()+"-"+this.random()+"-"+this.random()+"-"+this.random()+"-"+this.random()+this.random()+this.random();var e=new Uint16Array(8);return window.crypto.getRandomValues(e),this.hash(e[0])+this.hash(e[1])+"-"+this.hash(e[2])+"-"+this.hash(e[3])+"-"+this.hash(e[4])+"-"+this.hash(e[5])+this.hash(e[6])+this.hash(e[7])}},{key:"hash",value:function(e){for(var t=e.toString(16);t.length<4;)t="0"+t;return t}},{key:"random",value:function(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}}]),$);function $(){l(this,$)}var ee="/wallet/flypay",te=(n(ne,[{key:"getNetUrl",value:function(){return this.env.getConf().url+this.linkResource}},{key:"getUrl",value:function(){var e=this.getNetUrl(),t=this.getParams();for(var n in t)t.hasOwnProperty(n)&&(e=X.extendSearchParams(e,n,t[n]));return e}},{key:"setParams",value:function(e){this.params=P({},this.params,e)}},{key:"concatParams",value:function(e){for(var t in e)e.hasOwnProperty(t)&&e[t].length&&("string"!=typeof this.params[t]&&(this.params[t]=""),this.params[t].length?this.params[t]+=","+e[t]:this.params[t]+=e[t])}},{key:"getParams",value:function(){return this.params}},{key:"setEnv",value:function(e,t){this.env.setEnv(e,t)}},{key:"getEnv",value:function(){return this.env.getEnv()}},{key:"getBaseUrl",value:function(){return this.env.getConf().url}}]),ne);function ne(e){l(this,ne),this.params={},this.widgetId=Q.generate(),this.linkResource=e,this.env=new G(B),this.setParams({widget_id:this.widgetId})}var ie=(n(re,null,[{key:"values",value:function(t){return Object.keys(t).map(function(e){return t[e]})}}]),re);function re(){l(this,re)}var oe,ae,se,ue,le={CARD:"card",BANK_ACCOUNT:"bank_account",CHECKOUT:"checkout"},ce={CARD_NAME:"card_name",CARD_NUMBER:"card_number",EXPIRE_MONTH:"expire_month",EXPIRE_YEAR:"expire_year",CARD_CCV:"card_ccv",CARD_PIN:"card_pin",ACCOUNT_NAME:"account_name",ACCOUNT_BSB:"account_bsb",ACCOUNT_NUMBER:"account_number",ACCOUNT_ROUTING:"account_routing",ACCOUNT_HOLDER_TYPE:"account_holder_type",ACCOUNT_BANK_NAME:"account_bank_name",ACCOUNT_TYPE:"account_type",FIRST_NAME:"first_name",LAST_NAME:"last_name",EMAIL:"email",PHONE:"phone",PHONE2:"phone2",ADDRESS_LINE1:"address_line1",ADDRESS_LINE2:"address_line2",ADDRESS_STATE:"address_state",ADDRESS_COUNTRY:"address_country",ADDRESS_CITY:"address_city",ADDRESS_POSTCODE:"address_postcode",ADDRESS_COMPANY:"address_company"},de={BACKGROUND_COLOR:"background_color",BACKGROUND_ACTIVE_COLOR:"background_active_color",TEXT_COLOR:"text_color",BORDER_COLOR:"border_color",ICON_SIZE:"icon_size",BUTTON_COLOR:"button_color",ERROR_COLOR:"error_color",SUCCESS_COLOR:"success_color",FONT_SIZE:"font_size",FONT_FAMILY:"font_family"},he={TITLE:"title",TITLE_H1:"title_h1",TITLE_H2:"title_h2",TITLE_H3:"title_h3",TITLE_H4:"title_h4",TITLE_H5:"title_h5",TITLE_H6:"title_h6",FINISH:"finish_text",TITLE_DESCRIPTION:"title_description",SUBMIT_BUTTON:"submit_button",SUBMIT_BUTTON_PROCESSING:"submit_button_processing"},pe={SUBMIT_BUTTON:"submit_button",TABS:"tabs"},ve={AMEX:"amex",AUSBC:"ausbc",DINERS:"diners",DISCOVER:"discover",JAPCB:"japcb",LASER:"laser",MASTERCARD:"mastercard",SOLO:"solo",VISA:"visa",VISA_WHITE:"visa_white"},fe=[].concat(["brand_name","cart_border_color","reference","email","hdr_img","logo_img","pay_flow_color","first_name","last_name","address_line","address_line2","address_city","address_state","address_postcode","address_country","phone","hide_shipping_address"],["first_name","last_name","phone","tokenize","email","gender","date_of_birth","charge","statistics","hide_shipping_address"],["amount","currency","email","first_name","last_name","address_line","address_line2","address_city","address_state","address_postcode","address_country","phone"],["customer_storage_number","tokenise_algorithm"]);(ae=oe=oe||{}).STRIPE="Stripe",ae.FLYPAY="Flypay",ae.PAYPAL="Paypal",ae.MASTERCARD="MasterCard",ae.AFTERPAY="Afterpay",(ue=se=se||{}).GOOGLE="google",ue.APPLE="apple",ue.FLYPAY="flypay",ue.PAYPAL="paypal",ue.AFTERPAY="afterpay";var me={CARD:"card",GIFT_CARD:"gift_card",BANK_ACCOUNT:"bank_account",CHECKOUT:"checkout"},ye={PAYMENT_SOURCE:"payment_source",CARD_PAYMENT_SOURCE_WITH_CVV:"card_payment_source_with_cvv",CARD_PAYMENT_SOURCE_WITHOUT_CVV:"card_payment_source_without_cvv"},ge=(n(_e,[{key:"setWebHookDestination",value:function(e){this.configs.webhook_destination=e}},{key:"setSuccessRedirectUrl",value:function(e){this.configs.success_redirect_url=e}},{key:"setErrorRedirectUrl",value:function(e){this.configs.error_redirect_url=e}},{key:"setFormFields",value:function(e){for(var t in Array.isArray(this.configs.defined_form_fields)||(this.configs.defined_form_fields=[]),e)e.hasOwnProperty(t)&&(-1!==ie.values(ce).indexOf(e[t].replace("*",""))?this.configs.defined_form_fields.push(e[t]):console.warn("Configuration::setFormFields: unsupported form field "+e[t]))}},{key:"setMeta",value:function(e){for(var t in e)e.hasOwnProperty(t)&&(-1!==fe.indexOf(t)?this.configs.meta[t]=e[t]:console.warn("Configuration::setMeta: unsupported meta key "+t))}},{key:"setEnv",value:function(e,t){this.env.setEnv(e,t)}},{key:"setLabel",value:function(e){this.configs.label=e}},{key:"getEnv",value:function(){return this.env.getEnv()}},{key:"createToken",value:function(e,n,t){var i=2<arguments.length&&void 0!==t?t:function(e){};this.send(e,function(e,t){if(200<=t&&t<300)return n(e.resource.data.configuration_token);void 0===e.error||void 0===e.error.message?i("unknown error"):i(e.error.message)})}},{key:"send",value:function(e,t){var n=new XMLHttpRequest;n.open("POST",this.getUrl(),!0),n.setRequestHeader("Content-Type","application/json; charset=UTF-8"),n.setRequestHeader(h.getAccessHeaderNameByToken(e),e),v.version&&(n.setRequestHeader(v.headerKeys.version,v.version),n.setRequestHeader(v.headerKeys.type,v.type)),n.send(JSON.stringify(this.getConfigs())),n.onload=function(){var e={};try{e=JSON.parse(n.responseText)}catch(e){}t(e,n.status)}}},{key:"getConfigs",value:function(){return this.configs}},{key:"getUrl",value:function(){return this.env.getConf().url+"/v1/remote-action/configs"}},{key:"setGiftCardSchemeData",value:function(e,t){if(this.configs.predefined_fields.type!==me.GIFT_CARD)throw new Error("unsupported payment type");if(!e||!t)throw new Error("");this.configs.predefined_fields.gift_card_scheme=e,this.configs.predefined_fields.processing_network=t}}],[{key:"createEachToken",value:function(e,n,i,t){function r(t){n.hasOwnProperty(t)&&n[t].createToken(e,function(e){a[t]=e,u++,n.length===u&&_e.finishCreatingEachToken(a,s,i,o)},function(e){s.push("gateway: "+n[t].getConfigs().predefined_fields.gateway_id+" | "+e),u++,n.length===u&&_e.finishCreatingEachToken(a,s,i,o)})}var o=3<arguments.length&&void 0!==t?t:function(e){},a=new Array(n.length),s=[],u=0;for(var l in n)r(l)}},{key:"finishCreatingEachToken",value:function(e,t,n,i){1<=t.length?i(t):n(e)}}]),_e);function _e(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"default",t=1<arguments.length&&void 0!==arguments[1]?arguments[1]:me.CARD,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:ye.PAYMENT_SOURCE;if(l(this,_e),-1===ie.values(me).indexOf(t))throw new Error("unsupported payment type");if(t===me.CHECKOUT)throw new Error('Payment type "checkout" is deprecated. Use CheckoutButton for this type of payments https://www.npmjs.com/package/@paydock/client-sdk#checkout-button');if(-1===ie.values(ye).indexOf(n))throw new Error("unsupported purpose");this.env=new G(z),this.configs={purpose:n,meta:{},dynamic_fields_position:!0,predefined_fields:{gateway_id:e,type:t,gift_card_scheme:null,processing_network:null}}}var ke={INPUT:"input",SUBMIT_BUTTON:"submit_button",LABEL:"label",TITLE:"title",TITLE_DESCRIPTION:"title_description"},Ee={ERROR:"error",FOCUS:"focus",HOVER:"hover"},we=[{element:ke.INPUT,states:[Ee.FOCUS,Ee.ERROR],styles:["color","border","border_radius","background_color","height","text_decoration","font_size","font_family","line_height","font_weight","padding","margin","transition"]},{element:ke.SUBMIT_BUTTON,states:[Ee.HOVER],styles:["color","border","border_radius","background_color","text_decoration","font_size","font_family","line_height","font_weight","padding","margin","transition","opacity"]},{element:ke.LABEL,states:[],styles:["color","text_decoration","font_size","font_family","line_height","font_weight","padding","margin"]},{element:ke.TITLE,states:[],styles:["color","text_decoration","font_size","font_family","line_height","font_weight","padding","margin","text_align"]},{element:ke.TITLE_DESCRIPTION,states:[],styles:["color","text_decoration","font_size","font_family","line_height","font_weight","padding","margin","text_align"]}],be=(n(Ce,null,[{key:"check",value:function(e,t,n,i){for(var r in e)if(e.hasOwnProperty(r)&&e[r].element===t){if(-1===e[r].states.indexOf(n)&&n)return!1;for(var o in i)if(i.hasOwnProperty(o)&&-1===e[r].styles.indexOf(o.replace("-","_")))return!1;return!0}return!1}},{key:"encode",value:function(e,t,n){var i=[];for(var r in n)n.hasOwnProperty(r)&&i.push(r.replace("_","-")+":"+n[r]);var o=i.join(";");return t?e+"::"+t+"{"+o+"}":e+"{"+o+"}"}},{key:"decode",value:function(e){var t=(e.match("::(.*){")||["",null])[1],n=null!==t?(e.match("(.*)::")||["",""])[1].trim():(e.match("(.*){")||["",""])[1].trim(),i=(e.match("{(.*)}")||["",""])[1].split(";"),r={};for(var o in i)if(i.hasOwnProperty(o)){var a=i[o].split(":");!a&&2!==a.length||(r[a[0].trim()]=(a[1]||"").trim())}return{element:n,state:t,styles:r}}}]),Ce);function Ce(){l(this,Ce)}var Se=(n(Oe,[{key:"setStyles",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setStyle(t,e[t])}},{key:"usePhoneCountryMask",value:function(e){return e?!e.only_countries||/^[a-z]+$/.test(e.only_countries.join(""))&&2*e.only_countries.length===e.only_countries.join("").length?!e.preferred_countries||/^[a-z]+$/.test(e.preferred_countries.join(""))&&2*e.preferred_countries.length===e.preferred_countries.join("").length?e.default_country&&2!==e.default_country.length?console.warn("Widget::usePhoneCountryMask[s: default_country - incorrect value length"):(this.link.setParams({use_country_phone_mask:!0}),e.only_countries&&this.link.setParams({phone_mask_only_countries:e.only_countries.join(",")}),e.preferred_countries&&this.link.setParams({phone_mask_preferred_countries:e.preferred_countries.join(",")}),void(e.default_country&&this.link.setParams({phone_mask_default_country:e.default_country}))):console.warn("Widget::usePhoneCountryMask[s: preferred_countries - unsupported symbols or incorrect length of value"):console.warn("Widget::usePhoneCountryMask[s: only_countries - unsupported symbols or incorrect length of value"):this.link.setParams({use_country_phone_mask:!0})}},{key:"setStyle",value:function(e,t){-1!==ie.values(de).indexOf(e)?this.link.setParams(r({},e,t)):console.warn("Widget::setStyle[s: unsupported style param "+e)}},{key:"setTexts",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setText(t,e[t])}},{key:"setText",value:function(e,t){-1!==ie.values(he).indexOf(e)?this.link.setParams(r({},e,t)):console.warn("Widget::setText[s: unsupported text param "+e)}},{key:"setElementStyle",value:function(e,t,n){var i=3===arguments.length?t:null,r=3===arguments.length?n:t;if(!be.check(we,e,i,r))return console.warn('Styles for "'+e+'" element with "'+(i||"default")+'" state was ignored because some of the arguments are unacceptable');this.link.concatParams({element_styles:be.encode(e,i,r)})}},{key:"setFormValues",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setFormValue(t,e[t])}},{key:"setFormValue",value:function(e,t){return-1===ie.values(ce).indexOf(e)?console.warn("Widget::setFormValues[s: unsupported field "+e):/\,/.test(t)||/\:/.test(t)?console.warn("Widget::setFormValues[s: "+e+" - unsupported symbols (: or ,) in value"):void("string"==typeof this.link.getParams().form_values&&this.link.getParams().form_values.length?this.link.setParams({form_values:this.link.getParams().form_values+","+e+":"+t}):this.link.setParams({form_values:e+":"+t}))}},{key:"setFormLabels",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setFormLabel(t,e[t])}},{key:"setFormLabel",value:function(e,t){if(-1===ie.values(ce).indexOf(e))return console.warn("Widget::setFormLabel[s: unsupported field "+e);var n=null===t||""===t?" ":t;if(/\,/.test(n)||/\:/.test(n))return console.warn("Widget::setFormLabel[s: "+e+" - unsupported symbols (: or ,) in value");this.link.concatParams({form_labels:e+":"+n})}},{key:"setFormPlaceholders",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setFormPlaceholder(t,e[t])}},{key:"setFormPlaceholder",value:function(e,t){if(-1===ie.values(ce).indexOf(e))return console.warn("Widget::setFormPlaceholder[s: unsupported field "+e);var n=null===t||""===t?" ":t;if(/\,/.test(n)||/\:/.test(n))return console.warn("Widget::setFormPlaceholder[s: "+e+" - unsupported symbols (: or ,) in value");this.link.concatParams({form_placeholders:e+":"+n})}},{key:"setFormElements",value:function(e){var t=this;e.forEach(function(e){return t.setFormElement(e)})}},{key:"setFormElement",value:function(e){e.value&&this.setFormValue(e.field,e.value),e.label&&this.setFormLabel(e.field,e.label),e.placeholder&&this.setFormPlaceholder(e.field,e.placeholder)}},{key:"setIcons",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setIcon(t,e[t])}},{key:"setIcon",value:function(e,t){if(/\,/.test(t)||/\:/.test(t))return console.warn("Widget::setIcon[s: "+e+" - unsupported symbols (: or ,) in value");"string"==typeof this.link.getParams().icons&&this.link.getParams().icons.length?this.link.setParams({icons:this.link.getParams().icons+","+e+":"+t}):this.link.setParams({icons:e+":"+t})}},{key:"setHiddenElements",value:function(e){var t=[],n=ie.values(pe).concat(ie.values(ce));for(var i in e)e.hasOwnProperty(i)&&(-1!==n.indexOf(e[i])?t.push(e[i]):console.warn("Widget::setHiddenElements: unsupported element "+e[i]));t.length&&this.link.concatParams({hidden_elements:t.join(",")})}},{key:"setRefId",value:function(e){this.link.setParams({ref_id:e})}},{key:"useGatewayFieldValidation",value:function(){this.link.setParams({fields_validation:!0})}},{key:"setSupportedCardIcons",value:function(e,t){var n=[];for(var i in e)e.hasOwnProperty(i)&&(-1!==ie.values(ve).indexOf(e[i])?n.push(e[i]):console.warn("Widget::cardTypes: unsupported type of cards "+e[i]));n.length&&this.link.concatParams({supported_card_types:n.join(",")}),t&&this.link.setParams({validate_card_types:t})}},{key:"setEnv",value:function(e,t){for(var n in this.link.setEnv(e,t),this.configs)this.configs.hasOwnProperty(n)&&this.configs[n].setEnv(e,t)}},{key:"getEnv",value:function(){this.link.getEnv()}},{key:"loadIFrameUrl",value:function(t,e){var n=this,i=1<arguments.length&&void 0!==e?e:function(e){};if(this.link.setParams({configuration_tokens:""}),this.configTokens.length)return this.link.setParams({configuration_tokens:this.configTokens.join(",")}),t(this.link.getUrl());ge.createEachToken(this.accessToken,this.configs,function(e){return n.link.concatParams({configuration_tokens:e.join(",")}),t(n.link.getUrl())},function(e){i(e)})}},{key:"setLanguage",value:function(e){this.link.setParams({language:e})}}]),Oe);function Oe(e,t){if(l(this,Oe),this.configs=[],this.configTokens=[],this.link=new te("/remote-action"),v.version&&this.link.setParams({sdk_version:v.version,sdk_type:v.type}),h.validateJWT(e)?this.link.setParams({token:e}):this.link.setParams({public_key:e}),this.accessToken=e,!t||Array.isArray(t)&&!t.length)throw Error("configuration token is required");if("string"==typeof t)this.configTokens.push(t);else if(t instanceof ge)this.configs.push(t);else if(Array.isArray(t)&&"string"==typeof t[0])this.configTokens=t;else{if(!(Array.isArray(t)&&t[0]instanceof ge))throw Error("Unsupported type of configuration token");this.configs=t}}var Te=(n(Ae,null,[{key:"insertToInput",value:function(e,t,n){if(void 0!==n[t]){var i=document.querySelector(e);i&&(i.value=n[t])}}},{key:"subscribe",value:function(e,t,n){t.addEventListener?t.addEventListener(e,n):t.attachEvent("on"+e,n)}}]),Ae);function Ae(){l(this,Ae)}var Pe=(n(Re,[{key:"isExist",value:function(){return!!this.getElement()}},{key:"getStyles",value:function(e){if(this.isExist()){var t=this.getElement().getAttribute("widget-style");if(!t)return{};var n=t.split(";");return void 0===n||n.length?this.convertConfigs(n,e):{}}}},{key:"on",value:function(e,t){this.isExist()&&Te.subscribe(e,this.getElement(),t)}},{key:"getAttr",value:function(e){if(this.isExist()){var t=this.getElement(),n=[];for(var i in e)if(e.hasOwnProperty(i)){var r=e[i].replace(/_/g,"-"),o=t.getAttribute(r);o&&n.push(e[i]+":"+o)}return void 0===n||n.length?this.convertConfigs(n,e):{}}}},{key:"getElement",value:function(){return document.querySelector(this.selector)}},{key:"convertConfigs",value:function(e,t){var n={};for(var i in e)if(e.hasOwnProperty(i)){var r=e[i].split(":"),o=r[0].replace(/-/g,"_").trim();-1!==t.indexOf(o)&&(n[o]=r[1].trim())}return n}}]),Re);function Re(e){l(this,Re),this.selector=e}var xe=(n(Le,[{key:"load",value:function(e,t){var n=1<arguments.length&&void 0!==t?t:{};if(this.container.isExist()&&!this.isExist()){var i=document.createElement("iframe");i.setAttribute("src",e),n.title&&(i.title=n.title),this.container.getElement().appendChild(i)}}},{key:"loadFromHtml",value:function(e,t){var n=1<arguments.length&&void 0!==t?t:{};if(this.container.isExist()&&!this.isExist()){var i=document.createElement("iframe");i.setAttribute("height","100%"),i.setAttribute("width","100%"),n.title&&(i.title=n.title),this.container.getElement().appendChild(i);var r=this.getElement().contentDocument;r.open(),r.write("<html><head><style>html, body {margin: 0;} iframe {border: 0; width: 100%}</style><title></title></head><body>{{content}}</body></html>".replace("{{content}}",e)),r.close()}}},{key:"remove",value:function(){if(this.container.isExist()&&this.isExist()){var e=this.getElement();this.container.getElement().removeChild(e)}}},{key:"show",value:function(){this.isExist()&&(this.setStyle("visibility","visible"),this.setStyle("display","block"))}},{key:"hide",value:function(e){var t=0<arguments.length&&void 0!==e&&e;this.isExist()&&(t?this.setStyle("visibility","hidden"):this.setStyle("display","none"))}},{key:"isExist",value:function(){return!!this.getElement()}},{key:"getElement",value:function(){return this.container.isExist()?this.container.getElement().querySelector("iframe"):null}},{key:"setStyle",value:function(e,t){this.getElement().style[e]=t}}]),Le);function Le(e){l(this,Le),this.container=e}var Ie={AFTER_LOAD:"afterLoad",SUBMIT:"submit",FINISH:"finish",VALIDATION_ERROR:"validationError",SYSTEM_ERROR:"systemError",CHECKOUT_SUCCESS:"checkoutSuccess",CHECKOUT_READY:"checkoutReady",CHECKOUT_ERROR:"checkoutError",CHECKOUT_COMPLETED:"checkoutCompleted",VALIDATION:"validation",SELECT:"select",UNSELECT:"unselect",NEXT:"next",PREV:"prev",META_CHANGE:"metaChange",RESIZE:"resize",CHARGE_AUTH_SUCCESS:"chargeAuthSuccess",CHARGE_AUTH_REJECT:"chargeAuthReject",CHARGE_AUTH_CANCELLED:"chargeAuthCancelled",ADDITIONAL_DATA_SUCCESS:"additionalDataCollectSuccess",ADDITIONAL_DATA_REJECT:"additionalDataCollectReject",CHARGE_AUTH:"chargeAuth",DISPATCH_SUCCESS:"dispatchSuccess",DISPATCH_ERROR:"dispatchError"},Ue=(n(De,[{key:"emit",value:function(e){for(var t in this.listeners)this.listeners[t].event===e.event&&e.widget_id===this.listeners[t].widget_id&&this.listeners[t].listener.apply(this,[e])}},{key:"on",value:function(e,t,n){for(var i in Ie)Ie.hasOwnProperty(i)&&e===Ie[i]&&this.listeners.push({event:e,listener:n,widget_id:t})}},{key:"clear",value:function(){this.listeners=[]}},{key:"subscribe",value:function(e,t){e.addEventListener?e.addEventListener("message",t):e.attachEvent("onmessage",t)}}]),De);function De(e){var n=this;l(this,De),this.listeners=[],e&&Te.subscribe("message",e,function(e){var t=void 0;try{t=JSON.parse(e.data)}catch(e){}t&&n.emit(t)})}var Ne={SUBMIT_FORM:"submit_form",CHANGE_TAB:"tab",HIDE_ELEMENTS:"hide_elements",SHOW_ELEMENTS:"show_elements",REFRESH_CHECKOUT:"refresh_checkout",UPDATE_FORM_VALUES:"update_form_values",INIT_CHECKOUT:"init_checkout"},Me=(n(Fe,[{key:"push",value:function(e,t){var n=1<arguments.length&&void 0!==t?t:{};if(this.iFrame.isExist()){-1===ie.values(Ne).indexOf(e)&&console.warn("unsupported trigger type");var i={trigger:e,destination:"widget.paydock",data:n};this.iFrame.getElement().contentWindow.postMessage(JSON.stringify(i),"*")}}}]),Fe);function Fe(e){l(this,Fe),this.iFrame=e}var je=(n(He,[{key:"getElement",value:function(){return document.querySelector(this.selector)}},{key:"isExist",value:function(){return!!this.getElement()}},{key:"beforeSubmit",value:function(t){var n=this;this.isExist()&&this.subscribe(this.getElement(),function(e){e.preventDefault(),n.intercepted=!0,t.apply(n,[])})}},{key:"continueSubmit",value:function(){var e=this;this.isExist()&&this.intercepted&&(this.intercepted=!1,setTimeout(function(){e.getElement().submit()},50))}},{key:"subscribe",value:function(e,t){e.addEventListener?e.addEventListener("submit",t):e.attachEvent("onsubmit",t)}}]),He);function He(e){l(this,He),this.intercepted=!1,this.selector=e}var Be=(s(ze,Se),n(ze,[{key:"load",value:function(){var t=this;this.setStyles(this.container.getStyles(ie.values(de))),this.setTexts(this.container.getAttr(ie.values(he))),this.loadIFrameUrl(function(e){t.iFrame.load(e,{title:"Card details"}),t.afterLoad()},function(e){for(var t in console.error("Errors when creating a token[s, widget will not be load:"),e)e.hasOwnProperty(t)&&console.error("--- | "+e[t])})}},{key:"afterLoad",value:function(){var t=this;this.on(Ie.VALIDATION,function(e){t.validationData=e})}},{key:"on",value:function(e,t){var n=this;return"function"==typeof t?this.event.on(e,this.link.getParams().widget_id,t):new Promise(function(t){return n.event.on(e,n.link.getParams().widget_id,function(e){return t(e)})})}},{key:"trigger",value:function(e,t){var n=1<arguments.length&&void 0!==t?t:{};this.triggerElement.push(e,n)}},{key:"getValidationState",value:function(){return this.validationData}},{key:"isValidForm",value:function(){return!!this.validationData.form_valid}},{key:"isInvalidField",value:function(e){var t=0<arguments.length&&void 0!==e?e:"";return!!this.validationData.invalid_fields&&-1!==this.validationData.invalid_fields.indexOf(t)}},{key:"isFieldErrorShowed",value:function(e){var t=0<arguments.length&&void 0!==e?e:"";return!!this.validationData.invalid_showed_fields&&-1!==this.validationData.invalid_showed_fields.indexOf(t)}},{key:"isInvalidFieldByValidator",value:function(e,t){var n=0<arguments.length&&void 0!==e?e:"";return!(this.validationData.validators&&!this.validationData.validators[t])&&-1!==this.validationData.validators[t].indexOf(n)}},{key:"hide",value:function(e){this.iFrame.hide(e)}},{key:"show",value:function(){this.iFrame.show()}},{key:"reload",value:function(){this.iFrame.remove(),this.load()}},{key:"hideElements",value:function(e){var t=[],n=ie.values(pe).concat(ie.values(ce));for(var i in e)e.hasOwnProperty(i)&&(-1!==n.indexOf(e[i])?t.push(e[i]):console.warn("Widget::hideElements: unsupported element "+e[i]));t.length&&this.trigger(Ne.HIDE_ELEMENTS,{elements:t.join(",")})}},{key:"showElements",value:function(e){var t=[],n=ie.values(pe).concat(ie.values(ce));for(var i in e)e.hasOwnProperty(i)&&(-1!==n.indexOf(e[i])?t.push(e[i]):console.warn("Widget::showElements: unsupported element "+e[i]));t.length&&this.trigger(Ne.SHOW_ELEMENTS,{elements:t.join(",")})}},{key:"updateFormValues",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.updateFormValue(t,e[t])}},{key:"updateFormValue",value:function(e,t){return-1===ie.values(ce).indexOf(e)?console.warn("Widget::setFormValues[s: unsupported field "+e):/\,/.test(t)||/\:/.test(t)?console.warn("Widget::setFormValues[s: "+e+" - unsupported symbols (: or ,) in value"):void this.trigger(Ne.UPDATE_FORM_VALUES,{form_values:e+":"+t})}},{key:"onFinishInsert",value:function(t,n){this.on(Ie.FINISH,function(e){Te.insertToInput(t,n,e)})}},{key:"interceptSubmitForm",value:function(e){var t=this;this.setHiddenElements([pe.SUBMIT_BUTTON]);var n=new je(e);n.beforeSubmit(function(){t.triggerElement.push(Ne.SUBMIT_FORM,{}),t.event.on(Ie.FINISH,t.link.getParams().widget_id,function(){n.continueSubmit()})})}},{key:"useCheckoutAutoSubmit",value:function(){var t=this;this.setHiddenElements([pe.SUBMIT_BUTTON]),this.on(Ie.CHECKOUT_SUCCESS,function(e){t.trigger(Ne.SUBMIT_FORM)}),this.on(Ie.VALIDATION_ERROR,function(e){t.trigger(Ne.REFRESH_CHECKOUT)}),this.on(Ie.SYSTEM_ERROR,function(e){t.trigger(Ne.REFRESH_CHECKOUT)})}},{key:"useAutoResize",value:function(){var t=this;this.on(Ie.RESIZE,function(e){t.iFrame.getElement()&&(t.iFrame.getElement().scrolling="no",e.height&&t.iFrame.setStyle("height",e.height+"px"))})}}]),ze);function ze(e,t,n){l(this,ze);var i=c(this,(ze.__proto__||Object.getPrototypeOf(ze)).call(this,t,n));return i.validationData={},i.container=new Pe(e),i.iFrame=new xe(i.container),i.triggerElement=new Me(i.iFrame),i.event=new Ue(window),i}var qe=(s(We,Be),n(We,[{key:"setWebHookDestination",value:function(e){this.configs[0].setWebHookDestination(e)}},{key:"setSuccessRedirectUrl",value:function(e){this.configs[0].setSuccessRedirectUrl(e)}},{key:"setErrorRedirectUrl",value:function(e){this.configs[0].setErrorRedirectUrl(e)}},{key:"setFormFields",value:function(e){this.configs[0].setFormFields(e)}},{key:"setFormElements",value:function(e){var t=this;e.forEach(function(e){return t.setFormElement(e)})}},{key:"setFormElement",value:function(e){this.configs[0].setFormFields([e.field]),a(We.prototype.__proto__||Object.getPrototypeOf(We.prototype),"setFormElement",this).call(this,P(P({},e),{field:e.field.replace("*","")}))}},{key:"setMeta",value:function(e){this.configs[0].setMeta(e)}},{key:"setGiftCardScheme",value:function(e,t){this.configs[0].setGiftCardSchemeData(e,t)}}]),We);function We(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"default",i=arguments[3],r=arguments[4];l(this,We);var o=new ge(n,i,r);return c(this,(We.__proto__||Object.getPrototypeOf(We)).call(this,e,t,o))}var Ve,Ye,Ke,Ge,Je={CLICK:"click",POPUP_REDIRECT:"popupRedirect",REDIRECT:"redirect",ERROR:"error",REFERRED:"referred",DECLINED:"declined",CANCELLED:"cancelled",ACCEPTED:"accepted",FINISH:"finish",CLOSE:"close"};(Ye=Ve=Ve||{}).CONTEXTUAL="contextual",Ye.REDIRECT="redirect",(Ge=Ke=Ke||{}).ZIPMONEY="Zipmoney",Ge.PAYPAL="PaypalClassic",Ge.AFTERPAY="Afterpay";var Xe="[Paydock:CheckoutButton]",Ze=(n(Qe,[{key:"setEnv",value:function(e,t){this.env.setEnv(e,t)}},{key:"getEnv",value:function(){return this.env.getEnv()}},{key:"getUrl",value:function(){return this.env.getConf().url+this.getLink()}},{key:"create",value:function(e,t,n,i){var r=this,o=new XMLHttpRequest;o.onload=function(){r.parser(o.responseText,o.status,n,i)},o.open("POST",this.getUrl(),!0),o.setRequestHeader("Content-Type","application/json; charset=UTF-8"),o.setRequestHeader(h.getAccessHeaderNameByToken(e),e),v.version&&(o.setRequestHeader(v.headerKeys.version,v.version),o.setRequestHeader(v.headerKeys.type,v.type)),o.send(JSON.stringify(t))}},{key:"get",value:function(e,t,n){var i=this,r=new XMLHttpRequest;r.onload=function(){i.parser(r.responseText,r.status,t,n)},r.open("GET",this.getUrl(),!0),r.setRequestHeader("Content-Type","application/json; charset=UTF-8"),r.setRequestHeader(h.getAccessHeaderNameByToken(e),e),v.version&&(r.setRequestHeader(v.headerKeys.version,v.version),r.setRequestHeader(v.headerKeys.type,v.type)),r.send()}},{key:"parser",value:function(e,t,n,i){var r={};try{r=JSON.parse(e)}catch(e){}if(200<=t&&t<300||302===t)return n(r.resource.data,t);i(r.error||{message:"unknown error"},t)}}]),Qe);function Qe(){l(this,Qe),this.env=new G(z)}var $e=(s(et,Ze),n(et,[{key:"getLink",value:function(){return"/v1/payment_sources/external_checkout"}},{key:"setDescriptions",value:function(e){this.body.description=e}},{key:"setMeta",value:function(e){for(var t in e)e.hasOwnProperty(t)&&(-1!==fe.indexOf(t)?this.body.meta[t]=e[t]:console.warn("ExternalCheckout::setMeta: unsupported meta key "+t))}},{key:"getConfigs",value:function(){return this.body}},{key:"send",value:function(e,n,t){var i=2<arguments.length&&void 0!==t?t:function(e,t){};this.create(e,this.getConfigs(),function(e,t){n(e)},function(e,t){void 0===e.message?i(t+": unknown error","unknown_error"):i(e.message,e.code)})}}]),et);function et(e,t,n){l(this,et);var i=c(this,(et.__proto__||Object.getPrototypeOf(et)).call(this));return i.body={gateway_id:e,meta:{},success_redirect_url:t,error_redirect_url:n,redirect_url:t},i}var tt=(s(nt,Ze),n(nt,[{key:"getLink",value:function(){return"/v1/payment_sources/external_checkout/:token".replace(":token",this.token)}},{key:"send",value:function(e,n,t){var i=2<arguments.length&&void 0!==t?t:function(e){};this.get(e,function(e,t){n(e)},function(e,t){void 0===e.message?i(t+": unknown error"):i(e.message)})}}]),nt);function nt(e){l(this,nt);var t=c(this,(nt.__proto__||Object.getPrototypeOf(nt)).call(this));return t.token=e,t}var it=(n(rt,[{key:"emit",value:function(e,t){var n=this.events[e];n&&n.forEach(function(e){e.call(null,t)})}},{key:"subscribe",value:function(e,t){var n=this;return this.events[e]||(this.events[e]=[]),this.events[e].push(t),function(){n.events[e]=n.events[e].filter(function(e){return t!==e})}}}]),rt);function rt(){l(this,rt),this.events={}}var ot='\n <div class="cs-loader">\n <div class="cs-loader-inner">\n <label>\t●</label>\n <label>\t●</label>\n <label>\t●</label>\n <label>\t●</label>\n <label>\t●</label>\n <label>\t●</label>\n </div>\n </div>\n',at="\n <style> \n .cs-loader {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n }\n \n .cs-loader-inner {\n transform: translateY(-50%);\n top: 50%;\n position: absolute;\n width: calc(100% - 200px);\n color: #8e8d8c;\n padding: 0 100px;\n text-align: center;\n }\n \n \n .cs-loader-inner label {\n font-size: 20px;\n opacity: 0;\n display:inline-block;\n }\n \n @keyframes lol {\n 0% {\n opacity: 0;\n transform: translateX(-300px);\n }\n 33% {\n opacity: 1;\n transform: translateX(0px);\n }\n 66% {\n opacity: 1;\n transform: translateX(0px);\n }\n 100% {\n opacity: 0;\n transform: translateX(300px);\n }\n }\n \n @-webkit-keyframes lol {\n 0% {\n opacity: 0;\n -webkit-transform: translateX(-300px);\n }\n 33% {\n opacity: 1;\n -webkit-transform: translateX(0px);\n }\n 66% {\n opacity: 1;\n -webkit-transform: translateX(0px);\n }\n 100% {\n opacity: 0;\n -webkit-transform: translateX(300px);\n -moz-transform: translateX(300px);\n }\n }\n \n .cs-loader-inner label:nth-child(6) {\n -webkit-animation: lol 3s infinite ease-in-out;\n -moz-animation: lol 3s infinite ease-in-out;\n animation: lol 3s infinite ease-in-out;\n }\n \n .cs-loader-inner label:nth-child(5) {\n -webkit-animation: lol 3s 100ms infinite ease-in-out;\n -moz-animation: lol 3s 100ms infinite ease-in-out;\n animation: lol 3s 100ms infinite ease-in-out;\n }\n \n .cs-loader-inner label:nth-child(4) {\n -webkit-animation: lol 3s 200ms infinite ease-in-out;\n -moz-animation: lol 3s 200ms infinite ease-in-out;\n animation: lol 3s 200ms infinite ease-in-out;\n }\n \n .cs-loader-inner label:nth-child(3) {\n -webkit-animation: lol 3s 300ms infinite ease-in-out;\n -moz-animation: lol 3s 300ms infinite ease-in-out;\n animation: lol 3s 300ms infinite ease-in-out;\n }\n \n .cs-loader-inner label:nth-child(2) {\n -webkit-animation: lol 3s 400ms infinite ease-in-out;\n -moz-animation: lol 3s 400ms infinite ease-in-out;\n animation: lol 3s 400ms infinite ease-in-out;\n }\n \n .cs-loader-inner label:nth-child(1) {\n -webkit-animation: lol 3s 500ms infinite ease-in-out;\n -moz-animation: lol 3s 500ms infinite ease-in-out;\n animation: lol 3s 500ms infinite ease-in-out;\n }\n </style>\n",st=(n(ut,null,[{key:"isFacebook",value:function(){return-1!==navigator.userAgent.indexOf("FBSN/iOS")&&-1!==navigator.userAgent.indexOf("AppleWebKit")&&-1!==navigator.userAgent.indexOf("(KHTML, like Gecko)")}},{key:"isInstagram",value:function(){return-1!==navigator.userAgent.indexOf("iOS")&&-1!==navigator.userAgent.indexOf("Instagram")&&-1!==navigator.userAgent.indexOf("(KHTML, like Gecko)")}},{key:"isSupportPopUp",value:function(){return!this.isFacebook()&&!this.isInstagram()}},{key:"getLanguage",value:function(){return window.navigator.language||""}},{key:"getTimezoneOffset",value:function(){return(new Date).getTimezoneOffset()}},{key:"getBrowserName",value:function(){var e=navigator.userAgent;return-1<e.indexOf("Firefox")?"Mozilla Firefox":-1<e.indexOf("Opera")?"Opera":-1<e.indexOf("Trident")?"Microsoft Internet Explorer":-1<e.indexOf("Edge")?"Microsoft Edge":-1<e.indexOf("Chrome")?"Google Chrome or Chromium":-1<e.indexOf("Safari")?"Apple Safari":"unknown"}},{key:"isJavaEnabled",value:function(){return navigator.javaEnabled()}},{key:"getColorDepth",value:function(){return screen.colorDepth}},{key:"getScreenHeight",value:function(){return screen.height}},{key:"getScreenWidth",value:function(){return screen.width}},{key:"getBrowserInfo",value:function(){var e=navigator.userAgent,t=e.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[],n=void 0;return/trident/i.test(t[1])?{name:"IE",version:(n=/\brv[ :]+(\d+)/g.exec(e)||[])[1]||""}:"Chrome"===t[1]&&null!=(n=e.match(/\bOPR|Edge\/(\d+)/))?{name:"Opera",version:n[1]}:(t=t[2]?[t[1],t[2]]:[navigator.appName,navigator.appVersion,"-?"],null!=(n=e.match(/version\/(\d+)/i))&&t.splice(1,1,n[1]),{name:t[0],version:t[1]})}}]),ut);function ut(){l(this,ut)}var lt="close",ct="focus",dt=(n(ht,[{key:"initControl",value:function(){if(!this.isInit()&&this.showControl){if(!st.isSupportPopUp())return this.createLoader();this.createTemplate(),this.createStyles(),this.eventHandler()}}},{key:"initLoader",value:function(){!this.isInit()&&this.showLoader&&(this.createStyles(),this.createLoader())}},{key:"eventHandler",value:function(){var e=this,t=document.querySelector("[data-close]"),n=document.querySelector("[data-continue]");t&&Te.subscribe("click",t,function(){return e.eventEmitter.emit(lt,{})}),n&&Te.subscribe("click",n,function(){return e.eventEmitter.emit(ct,{})})}},{key:"clear",value:function(){(this.style||this.overlay)&&(this.style.parentNode.removeChild(this.style),this.overlay.parentNode.removeChild(this.overlay),this.style=null,this.overlay=null)}},{key:"createLoader",value:function(){var e=this,t=document.body||document.getElementsByTagName("body")[0];this.overlay=document.createElement("div"),this.overlay.classList.add("checkout-overlay"),this.overlay.setAttribute("checkout-overlay"," "),this.overlay.innerHTML=at+ot,t.appendChild(this.overlay),setTimeout(function(){e.isInit()&&e.overlay.classList.add("display")},5)}},{key:"createTemplate",value:function(){var e=this,t=document.body||document.getElementsByTagName("body")[0],n=String('\n <div class="checkout-container">\n <strong class="checkout-title" data-title>{{title}}</strong>\n <p data-description>{{description}}</p>\n <a href="#" data-continue>Continue</a>\n <a href="#" data-close>Close</a>\n </div>\n');n=(n=n.replace("{{description}}",this.description)).replace("{{title}}",this.title),this.overlay=document.createElement("div"),this.overlay.classList.add("checkout-overlay"),this.overlay.setAttribute("checkout-overlay"," "),this.overlay.innerHTML=n,t.appendChild(this.overlay),setTimeout(function(){e.isInit()&&e.overlay.classList.add("display")},5)}},{key:"createStyles",value:function(){var e=document.head||document.getElementsByTagName("head")[0],t=String("\n .hide-continue-button [data-continue] {\n display: none;\n }\n \n .checkout-overlay .cs-loader-inner {\n color: #ddd;\n }\n\n .checkout-overlay { \n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0,0,0, 0.5);\n text-align: center;\n color: #fff;\n opacity: 0;\n }\n .checkout-overlay.display { \n opacity: 1;\n transition: opacity 0.7s ease-out;\n }\n .checkout-overlay a { color: #00f; }\n .checkout-container {\n position: absolute;\n top: 50%;\n left: 0;\n width: 100%;\n margin-top: -{{width}}px;\n }\n .checkout-title {\n font-size: 24px;\n display: block;\n text-transform: uppercase;\n }\n [data-close] {\n position: fixed;\n right: 32px;\n top: 32px;\n width: 32px;\n height: 32px;\n opacity: 0.3;\n overflow: hidden;\n text-indent: -9999px;\n }\n [data-close]:hover { opacity: 1; }\n [data-close]:before, [data-close]:after {\n position: absolute;\n left: 15px;\n content: ' ';\n height: 33px;\n width: 2px;\n background-color: #00f;\n }\n [data-close]:before { transform: rotate(45deg); }\n [data-close]:after { transform: rotate(-45deg); }\n"),n=document.querySelector(".checkout-container");t=t.replace("{{width}}",n?String(n.offsetHeight/2):"0"),this.style=document.createElement("style"),this.style.type="text/css",this.style.appendChild(document.createTextNode(t)),e.appendChild(this.style)}},{key:"setBackdropDescription",value:function(e){this.description=e}},{key:"setBackdropTitle",value:function(e){this.title=e}},{key:"onTrigger",value:function(e,t){this.eventEmitter.subscribe(e,t)}},{key:"isInit",value:function(){return!(!this.overlay||!this.style)}},{key:"hideContinueControl",value:function(){this.isInit()&&this.overlay.classList.add("hide-continue-button")}},{key:"turnOffControl",value:function(){this.showControl=!1}},{key:"turnOffLoader",value:function(){this.showLoader=!1}}]),ht);function ht(){l(this,ht),this.description="Don't see the secure checkout browser? We'll help you re-launch the window to complete your purchase",this.title="Checkout",this.overlay=null,this.style=null,this.showControl=!0,this.showLoader=!0,this.eventEmitter=new it}var pt,vt,ft=(n(mt,[{key:"error",value:function(e,t,n){n(!0)}},{key:"setEnv",value:function(e,t){this.widgetEnv.setEnv(e,t)}}]),mt);function mt(){l(this,mt),this.widgetEnv=new G(B)}function yt(e){return s(o,0<arguments.length&&void 0!==e?e:ft),n(o,[{key:"continue",value:function(){}},{key:"stop",value:function(){}},{key:"error",value:function(e,t,n){n(!0)}},{key:"setSuspendedRedirectUri",value:function(e){this.suspendedRedirectUri=e}},{key:"setBackgroundTitle",value:function(e){this.background.setBackdropTitle(e)}},{key:"setBackgroundDescription",value:function(e){this.background.setBackdropDescription(e)}},{key:"turnOffBackdrop",value:function(){this.background.turnOffControl(),this.background.turnOffLoader()}}]),o;function o(){var e;l(this,o);for(var t=arguments.length,n=Array(t),i=0;i<t;i++)n[i]=arguments[i];var r=c(this,(e=o.__proto__||Object.getPrototypeOf(o)).call.apply(e,[this].concat(n)));return r.background=new dt,r.background.onTrigger(ct,function(){return r.continue()}),r.background.onTrigger(lt,function(){return r.stop()}),r}}(vt=pt=pt||{}).SUCCESS="success",vt.DECLINED="declined",vt.CLOSE="close",vt.REFERRED="referred",vt.ERROR="error";var gt="paydock-dispatcher",_t=(n(kt,[{key:"restartDispatcher",value:function(){var e=document.getElementById(gt);e&&e.parentNode&&e.parentNode.removeChild(e);var t=document.createElement("iframe");t.setAttribute("src",this.env.getConf().url+"/dispatcher"),t.id=gt,t.style.display="none",document.body.appendChild(t)}},{key:"on",value:function(n,i){var r=this;Te.subscribe("message",window,function(e){var t=null;try{t=JSON.parse(e.data)}catch(e){}t&&t.message_source===r.messageSource&&t.event===n&&i(t)})}},{key:"setEnv",value:function(e,t){this.env.setEnv(e,t),this.restartDispatcher()}}]),kt);function kt(e){l(this,kt),this.messageSource=e,this.env=new G(B)}var Et=(n(wt,[{key:"isExist",value:function(){return!(!this.getElement()||this.getElement().closed)}},{key:"getElement",value:function(){return this.window}},{key:"init",value:function(){var e=this;if(!st.isSupportPopUp())return this.window=window;var t=this.getConfigs();this.window=window.open("about:blank","_blank","noopener=false,width="+t.width+",height="+t.height+",top="+t.top+",left="+t.left+",scrollbars="+(t.scrollbars?"yes":"no")+",resizable="+(t.resizable?"yes":"no")),this.showLoader();var n=setInterval(function(){e.isExist()||(clearInterval(n),e.eventEmitter.emit("close",{}))},200)}},{key:"redirect",value:function(e){this.isExist()&&(this.window.location.href=e)}},{key:"close",value:function(){this.isExist()&&this.getElement().close&&(this.getElement().close(),this.window=null)}},{key:"focus",value:function(){this.isExist()&&this.getElement().focus&&this.getElement().focus()}},{key:"setConfigs",value:function(e){this.configs=P(this.configs,e)}},{key:"getNetConfigs",value:function(){return P({},this.configs)}},{key:"getConfigs",value:function(){var e=this.getNetConfigs();return e.left=window.screenX+(window.screen.width/2-e.width/2),e.top=window.screenY+(window.screen.height/2-e.height/2),e}},{key:"onClose",value:function(e){this.eventEmitter.subscribe("close",e)}},{key:"initError",value:function(e){this.getElement().document.write("."),(this.getElement().document.body||this.getElement().document.getElementsByTagName("body")[0]).innerHTML="<style>\n .error-wrapper {\n color: #ff0000;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100%;\n }\n </style>"+'<div class="error-wrapper"><div>{{error}}</div></div>'.replace("{{error}}",e)}},{key:"showLoader",value:function(){this.getElement().document.write(".");var e=this.getElement().document.body||this.getElement().document.getElementsByTagName("body")[0];if(e.innerHTML=at+ot,this.env===k&&this.env===E&&this.env===w&&this.env===b&&this.env===C&&this.env===S&&this.env===O&&this.env===T&&this.env===A&&this.env===R&&this.env===x&&this.env===L&&this.env===I&&this.env===U&&this.env===D&&this.env===N){var t=0;Te.subscribe("click",e,function(){5==++t&&(e.innerHTML='\n <style>\n html{width: 100%;height: 100%;}\n body{margin: 0px;padding: 0px;background-color: #111;}\n \n .eye{\n width: 20px; height: 8px;\n background-color: #eee;\n border-radius:0px 0px 20px 20px;\n position: relative;\n top: 40px;\n left: 10px;\n box-shadow: 40px 0px 0px 0px #eee; \n }\n \n .head{\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden; \n position: relative;\n margin: -250px auto;\n width: 80px; height: 80px;\n background-color: #111;\n border-radius:50px;\n box-shadow: inset -4px 2px 0px 0px #eee;\n -webkit-animation:node 1.5s infinite alternate;\n -webkit-animation-timing-function:ease-out;\n -moz-animation:node 1.5s infinite alternate;\n -moz-animation-timing-function:ease-out;\n animation:node 1.5s infinite alternate;\n animation-timing-function:ease-out;\n }\n .body{ \n position: relative;\n margin: 90px auto;\n width: 140px; height: 120px;\n background-color: #111;\n border-radius: 50px/25px ;\n box-shadow: inset -5px 2px 0px 0px #eee;\n -webkit-animation:node2 1.5s infinite alternate;\n -webkit-animation-timing-function:ease-out; \n -moz-animation:node2 1.5s infinite alternate;\n -moz-animation-timing-function:ease-out; \n animation:node2 1.5s infinite alternate;\n animation-timing-function:ease-out; \n }\n \n @keyframes node {0%{ top:0px; }50%{ top:10px; }100% { top:0px;} }\n @keyframes node2 {0%{ top:-5px; }50%{ top:10px; }100% { top:-5px;}}\n @-moz-keyframes node {0%{ top:0px; }50%{ top:10px; }100% { top:0px;} }\n @-moz-keyframes node2 {0%{ top:-5px; }50%{ top:10px; }100% { top:-5px;}}\n @-webkit-keyframes node {0%{ top:0px; }50%{ top:10px; }100% { top:0px;} }\n @-webkit-keyframes node2 {0%{ top:-5px; }50%{ top:10px; }100% { top:-5px;}}\n \n \n .circ{\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n margin: 60px auto;\n width: 180px; height: 180px;\n background-color: #111;\n border-radius: 0px 0px 50px 50px;\n position: relative;\n z-index: -1; \n left: 0%;\n top: 20%;\n overflow: hidden;\n }\n \n .hands{\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n margin-top: 140px;\n width: 120px;height: 120px;\n position: absolute;\n background-color: #111;\n border-radius:20px;\n box-shadow:-1px -4px 0px 0px #eee;\n transform:rotate(45deg);\n -webkit-transform:rotate(45deg);\n -mox-transform:rotate(45deg);\n top:75%;left: 16%;\n z-index: 1;\n -webkit-animation:node2 1.5s infinite alternate;\n -webkit-animation-timing-function:ease-out;\n -moz-animation:node2 1.5s infinite alternate;\n -moz-animation-timing-function:ease-out;\n animation:node2 1.5s infinite alternate;\n animation-timing-function:ease-out;\n }\n \n .load{ position: absolute;\n width: 100px; height: 20px;\n margin: -10px auto;\n -webkit-font-smoothing: antialiased;\n -moz-font-smoothing: antialiased;\n font-smoothing: antialiased;\n font-family: \'Julius Sans One\', sans-serif;\n font-size:30px;\n font-weight:400;\n color:#eee;\n left: 10%;\n top: 5%;\n }\n </style>\n\n <div class="circ">\n <div class="load">A little patience ...</div>\n <div class="hands"></div>\n <div class="body"></div>\n <div class="head">\n <div class="eye"></div>\n </div>\n </div>\n')})}}},{key:"setEnv",value:function(e){this.env=e}}]),wt);function wt(){l(this,wt),this.configs={width:500,height:500,scrollbars:!0,resizable:!0,top:0,left:0},this.eventEmitter=new it}var bt,Ct=(bt=yt(),s(St,bt),n(St,[{key:"run",value:function(){this.isRunning()||(this.popup.init(),this.background.initControl())}},{key:"isRunning",value:function(){return this.popup.isExist()}},{key:"next",value:function(e){this.checkout=e,st.isSupportPopUp()||window.localStorage.setItem("paydock_checkout_token",JSON.stringify(this.checkout)),this.popup.redirect(this.checkout.link)}},{key:"continue",value:function(){this.popup.focus()}},{key:"stop",value:function(){this.popup.close()}},{key:"onStop",value:function(e){var t=this;this.popup.onClose(function(){t.background.clear(),t.checkout=null,e()})}},{key:"onCheckout",value:function(e,i){var r=this;this.dispatcher.on(e,function(e){if(r.checkout&&r.checkout.reference_id===e.reference_id)r.background.clear(),i(r.checkout);else if(!st.isSupportPopUp()){var t=window.localStorage.getItem("paydock_checkout_token");if(!t)return;var n=JSON.parse(t);n&&n.reference_id===e.reference_id&&(window.localStorage.removeItem("paydock_checkout_token"),r.checkout=n,r.background.clear(),i(r.checkout))}})}},{key:"setEnv",value:function(e,t){a(St.prototype.__proto__||Object.getPrototypeOf(St.prototype),"setEnv",this).call(this,e,t),this.dispatcher.setEnv(e,t),this.popup.setEnv(e)}}]),St);function St(e){l(this,St);var t=c(this,(St.__proto__||Object.getPrototypeOf(St)).call(this));return t.publicKey=e,t.checkout=null,t.dispatcher=new _t("checkout.paydock"),setTimeout(function(){return t.dispatcher.restartDispatcher()},200),t.popup=new Et,t}function Ot(e){return"run"in e}function Tt(e){return"setRedirectUrl"in e}var At="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function Pt(){throw new Error("Dynamic requires are not currently supported by rollup-plugin-commonjs")}function Rt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function xt(e,t){return e(t={exports:{}},t.exports),t.exports}Rt(xt(function(e){!function r(o,a,s){function u(t,e){if(!a[t]){if(!o[t]){if(!e&&Pt)return Pt();if(l)return l(t,!0);var n=new Error("Cannot find module '"+t+"'");throw n.code="MODULE_NOT_FOUND",n}var i=a[t]={exports:{}};o[t][0].call(i.exports,function(e){return u(o[t][1][e]||e)},i,i.exports,r,o,a,s)}return a[t].exports}for(var l=Pt,e=0;e<s.length;e++)u(s[e]);return u}({1:[function(e,t,n){function i(){throw new Error("setTimeout has not been defined")}function r(){throw new Error("clearTimeout has not been defined")}function o(t){if(c===setTimeout)return setTimeout(t,0);if((c===i||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(){f&&p&&(f=!1,p.length?v=p.concat(v):m=-1,v.length&&s())}function s(){if(!f){var e=o(a);f=!0;for(var t=v.length;t;){for(p=v,v=[];++m<t;)p&&p[m].run();m=-1,t=v.length}p=null,f=!1,function(t){if(d===clearTimeout)return clearTimeout(t);if((d===r||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}(e)}}function u(e,t){this.fun=e,this.array=t}function l(){}var c,d,h=t.exports={};!function(){try{c="function"==typeof setTimeout?setTimeout:i}catch(e){c=i}try{d="function"==typeof clearTimeout?clearTimeout:r}catch(e){d=r}}();var p,v=[],f=!1,m=-1;h.nextTick=function(e){var t=new Array(arguments.length-1);if(1<arguments.length)for(var n=1;n<arguments.length;n++)t[n-1]=arguments[n];v.push(new u(e,t)),1!==v.length||f||o(s)},u.prototype.run=function(){this.fun.apply(null,this.array)},h.title="browser",h.browser=!0,h.env={},h.argv=[],h.version="",h.versions={},h.on=l,h.addListener=l,h.once=l,h.off=l,h.removeListener=l,h.removeAllListeners=l,h.emit=l,h.prependListener=l,h.prependOnceListener=l,h.listeners=function(e){return[]},h.binding=function(e){throw new Error("process.binding is not supported")},h.cwd=function(){return"/"},h.chdir=function(e){throw new Error("process.chdir is not supported")},h.umask=function(){return 0}},{}],2:[function(e,i,r){(function(Y){!function(e){if("function"==typeof bootstrap)bootstrap("promise",e);else if("object"==(void 0===r?"undefined":K(r))&&"object"==(void 0===i?"undefined":K(i)))i.exports=e();else if("undefined"!=typeof ses){if(!ses.ok())return;ses.makeQ=e}else{if("undefined"==typeof window&&"undefined"==typeof self)throw new Error("This environment was not anticipated by Q. Please file a bug.");var t="undefined"!=typeof window?window:self,n=t.Q;t.Q=e(),t.Q.noConflict=function(){return t.Q=n,this}}}(function(){function e(e){return function(){return A.apply(e,arguments)}}function s(e,t){if(w&&t.stack&&"object"==(void 0===e?"undefined":K(e))&&null!==e&&e.stack){for(var n=[],i=t;i;i=i.source)i.stack&&(!e.__minimumStackCounter__||e.__minimumStackCounter__>i.stackCounter)&&(U(e,"__minimumStackCounter__",{value:i.stackCounter,configurable:!0}),n.unshift(i.stack));n.unshift(e.stack);var r=function(e){for(var t=e.split("\n"),n=[],i=0;i<t.length;++i){var r=t[i];a(r)||(-1!==(o=r).indexOf("(module.js:")||-1!==o.indexOf("(node.js:"))||!r||n.push(r)}var o;return n.join("\n")}(n.join("\n"+F+"\n"));U(e,"stack",{value:r,configurable:!0})}}function r(e){var t=/at .+ \((.+):(\d+):(?:\d+)\)$/.exec(e);if(t)return[t[1],Number(t[2])];var n=/at ([^ ]+):(\d+):(?:\d+)$/.exec(e);if(n)return[n[1],Number(n[2])];var i=/.*@(.+):(\d+)$/.exec(e);return i?[i[1],Number(i[2])]:void 0}function a(e){var t=r(e);if(t){var n=t[0],i=t[1];return n===C&&O<=i&&i<=V}}function t(){if(w)try{throw new Error}catch(e){var t=e.stack.split("\n"),n=r(0<t[0].indexOf("@")?t[1]:t[2]);if(!n)return;return C=n[0],n[1]}}function u(e){return e instanceof c?e:o(e)?(t=e,n=l(),u.nextTick(function(){try{t.then(n.resolve,n.reject,n.notify)}catch(e){n.reject(e)}}),n.promise):m(e);var t,n}function l(){function t(n){r=n,u.longStackSupport&&w&&(i.source=n),R(o,function(e,t){u.nextTick(function(){n.promiseDispatch.apply(n,t)})},void 0),a=o=void 0}var r,o=[],a=[],e=I(l.prototype),i=I(c.prototype);if(i.promiseDispatch=function(e,t,n){var i=P(arguments);o?(o.push(i),"when"===t&&n[1]&&a.push(n[1])):u.nextTick(function(){r.promiseDispatch.apply(r,i)})},i.valueOf=function(){if(o)return i;var e=h(r);return p(e)&&(r=e),e},i.inspect=function(){return r?r.inspect():{state:"pending"}},u.longStackSupport&&w)try{throw new Error}catch(t){i.stack=t.stack.substring(t.stack.indexOf("\n")+1),i.stackCounter=j++}return e.promise=i,e.resolve=function(e){r||t(u(e))},e.fulfill=function(e){r||t(m(e))},e.reject=function(e){r||t(f(e))},e.notify=function(n){r||R(a,function(e,t){u.nextTick(function(){t(n)})},void 0)},e}function n(e){if("function"!=typeof e)throw new TypeError("resolver must be a function.");var t=l();try{e(t.resolve,t.reject,t.notify)}catch(e){t.reject(e)}return t.promise}function i(r){return n(function(e,t){for(var n=0,i=r.length;n<i;n++)u(r[n]).then(e,t)})}function c(r,o,t){void 0===o&&(o=function(e){return f(new Error("Promise does not support operation: "+e))}),void 0===t&&(t=function(){return{state:"unknown"}});var a=I(c.prototype);if(a.promiseDispatch=function(e,t,n){var i;try{i=r[t]?r[t].apply(a,n):o.call(a,t,n)}catch(e){i=f(e)}e&&e(i)},a.inspect=t){var e=t();"rejected"===e.state&&(a.exception=e.reason),a.valueOf=function(){var e=t();return"pending"===e.state||"rejected"===e.state?a:e.value}}return a}function d(e,t,n,i){return u(e).then(t,n,i)}function h(e){if(p(e)){var t=e.inspect();if("fulfilled"===t.state)return t.value}return e}function p(e){return e instanceof c}function o(e){return(t=e)===Object(t)&&"function"==typeof e.then;var t}function v(){B.length=0,z.length=0,W=W||!0}function f(t){var e,n,i=c({when:function(e){return e&&function(t){if(W){var n=x(z,t);-1!==n&&("object"==(void 0===Y?"undefined":K(Y))&&"function"==typeof Y.emit&&u.nextTick.runAfter(function(){var e=x(q,t);-1!==e&&(Y.emit("rejectionHandled",B[n],t),q.splice(e,1))}),z.splice(n,1),B.splice(n,1))}}(this),e?e(t):this}},function(){return this},function(){return{state:"rejected",reason:t}});return e=i,n=t,W&&("object"==(void 0===Y?"undefined":K(Y))&&"function"==typeof Y.emit&&u.nextTick.runAfter(function(){-1!==x(z,e)&&(Y.emit("unhandledRejection",n,e),q.push(e))}),z.push(e),n&&void 0!==n.stack?B.push(n.stack):B.push("(no stack) "+n)),i}function m(n){return c({when:function(){return n},get:function(e){return n[e]},set:function(e,t){n[e]=t},delete:function(e){delete n[e]},post:function(e,t){return null==e?n.apply(void 0,t):n[e].apply(n,t)},apply:function(e,t){return n.apply(e,t)},keys:function(){return N(n)}},void 0,function(){return{state:"fulfilled",value:n}})}function y(e,t,n){return u(e).spread(t,n)}function g(e,t,n){return u(e).dispatch(t,n)}function _(e){return d(e,function(r){var o=0,a=l();return R(r,function(e,t,n){var i;p(t)&&"fulfilled"===(i=t.inspect()).state?r[n]=i.value:(++o,d(t,function(e){r[n]=e,0==--o&&a.resolve(r)},a.reject,function(e){a.notify({index:n,value:e})}))},void 0),0===o&&a.resolve(r),a.promise})}function k(r){if(0===r.length)return u.resolve();var o=u.defer(),a=0;return R(r,function(e,t,n){var i=r[n];a++,d(i,function(e){o.resolve(e)},function(e){0==--a&&(e.message="Q can't get fulfillment value from any promise, all promises were rejected. Last error message: "+e.message,o.reject(e))},function(e){o.notify({index:n,value:e})})},void 0),o.promise}function E(e){return d(e,function(e){return e=L(e,u),d(_(L(e,function(e){return d(e,b,b)})),function(){return e})})}var w=!1;try{throw new Error}catch(e){w=!!e.stack}function b(){}var C,S,O=t(),T=function(){function n(){for(var e,t;r.next;)e=(r=r.next).task,r.task=void 0,(t=r.domain)&&(r.domain=void 0,t.enter()),i(e,t);for(;u.length;)i(e=u.pop());o=!1}function i(e,t){try{e()}catch(e){if(s)throw t&&t.exit(),setTimeout(n,0),t&&t.enter(),e;setTimeout(function(){throw e},0)}t&&t.exit()}var r={task:void 0,next:null},t=r,o=!1,a=void 0,s=!1,u=[];if(T=function(e){t=t.next={task:e,domain:s&&Y.domain,next:null},o||(o=!0,a())},"object"==(void 0===Y?"undefined":K(Y))&&"[object process]"===Y.toString()&&Y.nextTick)s=!0,a=function(){Y.nextTick(n)};else if("function"==typeof setImmediate)a="undefined"!=typeof window?setImmediate.bind(window,n):function(){setImmediate(n)};else if("undefined"!=typeof MessageChannel){var e=new MessageChannel;e.port1.onmessage=function(){a=l,(e.port1.onmessage=n)()};var l=function(){e.port2.postMessage(0)};a=function(){setTimeout(n,0),l()}}else a=function(){setTimeout(n,0)};return T.runAfter=function(e){u.push(e),o||(o=!0,a())},T}(),A=Function.call,P=e(Array.prototype.slice),R=e(Array.prototype.reduce||function(e,t){var n=0,i=this.length;if(1===arguments.length)for(;;){if(n in this){t=this[n++];break}if(++n>=i)throw new TypeError}for(;n<i;n++)n in this&&(t=e(t,this[n],n));return t}),x=e(Array.prototype.indexOf||function(e){for(var t=0;t<this.length;t++)if(this[t]===e)return t;return-1}),L=e(Array.prototype.map||function(i,r){var o=this,a=[];return R(o,function(e,t,n){a.push(i.call(r,t,n,o))},void 0),a}),I=Object.create||function(e){function t(){}return t.prototype=e,new t},U=Object.defineProperty||function(e,t,n){return e[t]=n.value,e},D=e(Object.prototype.hasOwnProperty),N=Object.keys||function(e){var t=[];for(var n in e)D(e,n)&&t.push(n);return t},M=e(Object.prototype.toString);S="undefined"!=typeof ReturnValue?ReturnValue:function(e){this.value=e};var F="From previous event:";(u.resolve=u).nextTick=T,u.longStackSupport=!1;var j=1;"object"==(void 0===Y?"undefined":K(Y))&&Y&&Y.env&&Y.env.Q_DEBUG&&(u.longStackSupport=!0),(u.defer=l).prototype.makeNodeResolver=function(){var n=this;return function(e,t){e?n.reject(e):2<arguments.length?n.resolve(P(arguments,1)):n.resolve(t)}},u.Promise=n,(u.promise=n).race=i,n.all=_,n.reject=f,(n.resolve=u).passByCopy=function(e){return e},c.prototype.passByCopy=function(){return this},u.join=function(e,t){return u(e).join(t)},c.prototype.join=function(e){return u([this,e]).spread(function(e,t){if(e===t)return e;throw new Error("Q can't join: not the same: "+e+" "+t)})},u.race=i,c.prototype.race=function(){return this.then(u.race)},(u.makePromise=c).prototype.toString=function(){return"[object Promise]"},c.prototype.then=function(t,n,r){var i=this,o=l(),a=!1;return u.nextTick(function(){i.promiseDispatch(function(e){a||(a=!0,o.resolve(function(e){try{return"function"==typeof t?t(e):e}catch(e){return f(e)}}(e)))},"when",[function(e){a||(a=!0,o.resolve(function(e){if("function"==typeof n){s(e,i);try{return n(e)}catch(e){return f(e)}}return f(e)}(e)))}])}),i.promiseDispatch(void 0,"when",[void 0,function(e){var t,n,i=!1;try{n=e,t="function"==typeof r?r(n):n}catch(e){if(i=!0,!u.onerror)throw e;u.onerror(e)}i||o.notify(t)}]),o.promise},u.tap=function(e,t){return u(e).tap(t)},c.prototype.tap=function(t){return t=u(t),this.then(function(e){return t.fcall(e).thenResolve(e)})},u.when=d,c.prototype.thenResolve=function(e){return this.then(function(){return e})},u.thenResolve=function(e,t){return u(e).thenResolve(t)},c.prototype.thenReject=function(e){return this.then(function(){throw e})},u.thenReject=function(e,t){return u(e).thenReject(t)},u.nearer=h,u.isPromise=p,u.isPromiseAlike=o,u.isPending=function(e){return p(e)&&"pending"===e.inspect().state},c.prototype.isPending=function(){return"pending"===this.inspect().state},u.isFulfilled=function(e){return!p(e)||"fulfilled"===e.inspect().state},c.prototype.isFulfilled=function(){return"fulfilled"===this.inspect().state},u.isRejected=function(e){return p(e)&&"rejected"===e.inspect().state},c.prototype.isRejected=function(){return"rejected"===this.inspect().state};var H,B=[],z=[],q=[],W=!0;u.resetUnhandledRejections=v,u.getUnhandledReasons=function(){return B.slice()},u.stopUnhandledRejectionTracking=function(){v(),W=!1},v(),u.reject=f,u.fulfill=m,u.master=function(n){return c({isDef:function(){}},function(e,t){return g(n,e,t)},function(){return u(n).inspect()})},u.spread=y,c.prototype.spread=function(t,e){return this.all().then(function(e){return t.apply(void 0,e)},e)},u.async=function(t){return function(){function e(e,t){var n;if("undefined"==typeof StopIteration){try{n=i[e](t)}catch(e){return f(e)}return n.done?u(n.value):d(n.value,r,o)}try{n=i[e](t)}catch(e){return function(e){return"[object StopIteration]"===M(e)||e instanceof S}(e)?u(e.value):f(e)}return d(n,r,o)}var i=t.apply(this,arguments),r=e.bind(e,"next"),o=e.bind(e,"throw");return r()}},u.spawn=function(e){u.done(u.async(e)())},u.return=function(e){throw new S(e)},u.promised=function(n){return function(){return y([this,_(arguments)],function(e,t){return n.apply(e,t)})}},u.dispatch=g,c.prototype.dispatch=function(e,t){var n=this,i=l();return u.nextTick(function(){n.promiseDispatch(i.resolve,e,t)}),i.promise},u.get=function(e,t){return u(e).dispatch("get",[t])},c.prototype.get=function(e){return this.dispatch("get",[e])},u.set=function(e,t,n){return u(e).dispatch("set",[t,n])},c.prototype.set=function(e,t){return this.dispatch("set",[e,t])},u.del=u.delete=function(e,t){return u(e).dispatch("delete",[t])},c.prototype.del=c.prototype.delete=function(e){return this.dispatch("delete",[e])},u.mapply=u.post=function(e,t,n){return u(e).dispatch("post",[t,n])},c.prototype.mapply=c.prototype.post=function(e,t){return this.dispatch("post",[e,t])},u.send=u.mcall=u.invoke=function(e,t){return u(e).dispatch("post",[t,P(arguments,2)])},c.prototype.send=c.prototype.mcall=c.prototype.invoke=function(e){return this.dispatch("post",[e,P(arguments,1)])},u.fapply=function(e,t){return u(e).dispatch("apply",[void 0,t])},c.prototype.fapply=function(e){return this.dispatch("apply",[void 0,e])},u.try=u.fcall=function(e){return u(e).dispatch("apply",[void 0,P(arguments,1)])},c.prototype.fcall=function(){return this.dispatch("apply",[void 0,P(arguments)])},u.fbind=function(e){var t=u(e),n=P(arguments,1);return function(){return t.dispatch("apply",[this,n.concat(P(arguments))])}},c.prototype.fbind=function(){var e=this,t=P(arguments);return function(){return e.dispatch("apply",[this,t.concat(P(arguments))])}},u.keys=function(e){return u(e).dispatch("keys",[])},c.prototype.keys=function(){return this.dispatch("keys",[])},u.all=_,c.prototype.all=function(){return _(this)},u.any=k,c.prototype.any=function(){return k(this)},u.allResolved=(H=E,function(){return"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn("allResolved is deprecated, use allSettled instead.",new Error("").stack),H.apply(H,arguments)}),c.prototype.allResolved=function(){return E(this)},u.allSettled=function(e){return u(e).allSettled()},c.prototype.allSettled=function(){return this.then(function(e){return _(L(e,function(e){function t(){return e.inspect()}return(e=u(e)).then(t,t)}))})},u.fail=u.catch=function(e,t){return u(e).then(void 0,t)},c.prototype.fail=c.prototype.catch=function(e){return this.then(void 0,e)},u.progress=function(e,t){return u(e).then(void 0,void 0,t)},c.prototype.progress=function(e){return this.then(void 0,void 0,e)},u.fin=u.finally=function(e,t){return u(e).finally(t)},c.prototype.fin=c.prototype.finally=function(t){if(!t||"function"!=typeof t.apply)throw new Error("Q can't apply finally callback");return t=u(t),this.then(function(e){return t.fcall().then(function(){return e})},function(e){return t.fcall().then(function(){throw e})})},u.done=function(e,t,n,i){return u(e).done(t,n,i)},c.prototype.done=function(e,t,n){var i=function(e){u.nextTick(function(){if(s(e,r),!u.onerror)throw e;u.onerror(e)})},r=e||t||n?this.then(e,t,n):this;"object"==(void 0===Y?"undefined":K(Y))&&Y&&Y.domain&&(i=Y.domain.bind(i)),r.then(void 0,i)},u.timeout=function(e,t,n){return u(e).timeout(t,n)},c.prototype.timeout=function(e,t){var n=l(),i=setTimeout(function(){t&&"string"!=typeof t||((t=new Error(t||"Timed out after "+e+" ms")).code="ETIMEDOUT"),n.reject(t)},e);return this.then(function(e){clearTimeout(i),n.resolve(e)},function(e){clearTimeout(i),n.reject(e)},n.notify),n.promise},u.delay=function(e,t){return void 0===t&&(t=e,e=void 0),u(e).delay(t)},c.prototype.delay=function(n){return this.then(function(e){var t=l();return setTimeout(function(){t.resolve(e)},n),t.promise})},u.nfapply=function(e,t){return u(e).nfapply(t)},c.prototype.nfapply=function(e){var t=l(),n=P(e);return n.push(t.makeNodeResolver()),this.fapply(n).fail(t.reject),t.promise},u.nfcall=function(e){var t=P(arguments,1);return u(e).nfapply(t)},c.prototype.nfcall=function(){var e=P(arguments),t=l();return e.push(t.makeNodeResolver()),this.fapply(e).fail(t.reject),t.promise},u.nfbind=u.denodeify=function(n){if(void 0===n)throw new Error("Q can't wrap an undefined function");var i=P(arguments,1);return function(){var e=i.concat(P(arguments)),t=l();return e.push(t.makeNodeResolver()),u(n).fapply(e).fail(t.reject),t.promise}},c.prototype.nfbind=c.prototype.denodeify=function(){var e=P(arguments);return e.unshift(this),u.denodeify.apply(void 0,e)},u.nbind=function(n,i){var r=P(arguments,2);return function(){var e=r.concat(P(arguments)),t=l();return e.push(t.makeNodeResolver()),u(function(){return n.apply(i,arguments)}).fapply(e).fail(t.reject),t.promise}},c.prototype.nbind=function(){var e=P(arguments,0);return e.unshift(this),u.nbind.apply(void 0,e)},u.nmapply=u.npost=function(e,t,n){return u(e).npost(t,n)},c.prototype.nmapply=c.prototype.npost=function(e,t){var n=P(t||[]),i=l();return n.push(i.makeNodeResolver()),this.dispatch("post",[e,n]).fail(i.reject),i.promise},u.nsend=u.nmcall=u.ninvoke=function(e,t){var n=P(arguments,2),i=l();return n.push(i.makeNodeResolver()),u(e).dispatch("post",[t,n]).fail(i.reject),i.promise},c.prototype.nsend=c.prototype.nmcall=c.prototype.ninvoke=function(e){var t=P(arguments,1),n=l();return t.push(n.makeNodeResolver()),this.dispatch("post",[e,t]).fail(n.reject),n.promise},u.nodeify=function(e,t){return u(e).nodeify(t)},c.prototype.nodeify=function(t){if(!t)return this;this.then(function(e){u.nextTick(function(){t(null,e)})},function(e){u.nextTick(function(){t(e)})})},u.noConflict=function(){throw new Error("Q.noConflict only works when Q is used as a global")};var V=t();return u})}).call(this,e("_process"))},{_process:1}],3:[function(e,t,n){function o(e){switch(void 0===e?"undefined":K(e)){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}}t.exports=function(n,i,r,e){return i=i||"&",r=r||"=",null===n&&(n=void 0),"object"==(void 0===n?"undefined":K(n))?Object.keys(n).map(function(e){var t=encodeURIComponent(o(e))+r;return Array.isArray(n[e])?n[e].map(function(e){return t+encodeURIComponent(o(e))}).join(i):t+encodeURIComponent(o(n[e]))}).join(i):e?encodeURIComponent(o(e))+r+encodeURIComponent(o(n)):""}},{}],4:[function(e,t,n){function i(e){return e&&e.__esModule?e:{default:e}}function r(n,i,r){return l.default.information("zip:checkout:init"),c.default.Promise(function(e,t){return n.onCheckout(e,t,{})}).then(function(e){var t=e.redirect_uri||e.redirectUri||e.data&&(e.data.redirect_uri||e.data.redirectUri);if(!t)return l.default.debug("zip:checkout:error","Response does not contain redirectUri property"),r(e),void n.onError({code:"checkout_error",message:"The response does not contain the redirectUri property",detail:e});l.default.debug("zip:checkout:success",e),i({redirectUri:t})}).catch(function(e){l.default.debug("zip:checkout:error",e),r(e),n.onError({code:"checkout_error",message:"Checkout response error",detail:e})})}Object.defineProperty(n,"__esModule",{value:!0}),n.Checkout=void 0;var o=function(e,t,n){return t&&p(e.prototype,t),n&&p(e,n),e},a=i(e("./modal")),s=i(e("./options")),u=i(e("./utility")),l=i(e("./console")),c=i((e("./events"),e("q"))),d=(o(h,null,[{key:"init",value:function(t){if("function"!=typeof Object.assign&&(Object.assign=function(e){if(null==e)throw new TypeError("Cannot convert undefined or null to object");e=Object(e);for(var t=1;t<arguments.length;t++){var n=arguments[t];if(null!=n)for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}),t=P({},s.default,t),!this._validate(t))return l.default.setLevel(t.logLevel),t.redirect?r(t,function(e){return t.redirectFn(e.redirectUri)}):(e=t,(n=new a.default).onClose=e.onComplete.bind(e),n.build(),void r(e,function(e){return n.setUri(e.redirectUri)},function(e){return n.close(!1)}));var e,n}},{key:"attachButton",value:function(e,t){var n=document.querySelectorAll(e);if(!n.length)return config.onError({code:"attach_error",message:"Cannot find button to attach zipMoney checkout"});for(var i=0;i<n.length;i++)u.default.addEventHandler(n[i],"click",function(){return Zip.Checkout.init(t)})}},{key:"_validate",value:function(e){return["error","information","debug"].indexOf(e.logLevel.toLowerCase())<0&&(e.logLevel="error"),["standard","express"].indexOf(e.request.toLowerCase())<0&&(e.request="standard"),e.onComplete=e.onComplete||function(){},e.onError=e.onError||function(){},e.checkoutUri||e.onCheckout!==s.default.onCheckout?"express"===e.request?e.onError({code:"not_implemented",message:"This feature is not yet implemented"}):e.redirect||e.onComplete!==s.default.onComplete||e.redirectUri?void 0:e.onError({code:"validation",message:"if onComplete function is not specified then redirectUri must be specified"}):e.onError({code:"validation",message:"if onCheckout function is not specified then checkoutUri must be specified"})}}]),h);function h(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,h)}function p(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}n.Checkout=d},{"./console":5,"./events":6,"./modal":8,"./options":9,"./utility":10,q:2}],5:[function(e,t,n){Object.defineProperty(n,"__esModule",{value:!0});var i="error",r={error:function(){var e;(e=window.console).log.apply(e,arguments)},information:function(){var e;"error"!==i&&(e=window.console).log.apply(e,arguments)},debug:function(){var e;"debug"===i&&(e=window.console).log.apply(e,arguments)},setLevel:function(e){i=e}};n.default=r},{}],6:[function(c,e,d){(function(i){Object.defineProperty(d,"__esModule",{value:!0}),d.EventListener=void 0;var e=function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e},t=c("./utility");function r(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}if((t&&t.__esModule?t:{default:t}).default.isIe){var n=function(e,t){t=t||{bubbles:!1,cancelable:!1,detail:void 0};var n=document.createEvent("CustomEvent");return n.initCustomEvent(e,t.bubbles,t.cancelable,t.detail),n};n.prototype=i.Event.prototype,i.CustomEvent=n}var o={},a=d.EventListener=(e(s,null,[{key:"constructor",value:function(){o={}}},{key:"on",value:function(e,t){o[e]=t}},{key:"off",value:function(e){o[e]=null}}]),s);function s(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,s)}a.Event=function(e,t){this.eventType=e,this.data=t||{}},a.Event.eventTypes={resize:"resize",transition:"transition",close:"close",complete:"complete",clear:"clear"};var u=window.addEventListener?"addEventListener":"attachEvent",l=window[u];l("attachEvent"==u?"onmessage":"message",function(e){var t,n;e.data.zipmoney&&(t=e.data.msg,n=new i.CustomEvent("zipmoney",{detail:t}),i.dispatchEvent(n))},!1),l("zipmoney",function(e){var t,n=e.detail.eventType,i=o[n];i?i(e.detail.data||{}):(t=e,console.log("Unexpected Event",t))},!1)}).call(this,void 0!==At?At:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./utility":10}],7:[function(i,e,t){(function(e){var t=i("./checkout"),n=i("./events");e.Zip=e.Zip||{},e.Zip.Checkout=t.Checkout,e.zipMoneyEvent=n.EventListener.ZipEvent}).call(this,void 0!==At?At:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./checkout":4,"./events":6}],8:[function(e,t,n){function i(e){return e&&e.__esModule?e:{default:e}}function o(){return Math.max(document.documentElement.clientHeight,window.innerHeight||0)}function s(){var e=document.body,t=document.documentElement;return Math.max(e.scrollHeight,e.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight)}function u(e){for(var t=document.querySelectorAll("html, body"),n=0;n<t.length;n++)t[n].style.overflowY=e}function l(e){var t=document.body.currentStyle||window.getComputedStyle(document.body),n=e-(document.body.offsetHeight+(parseInt(t.marginTop,10)+parseInt(t.marginBottom,10))-parseInt(t.height,10));document.body.style.height=n+"px"}Object.defineProperty(n,"__esModule",{value:!0});var r=function(e,t,n){return t&&m(e.prototype,t),n&&m(e,n),e},a=i(e("./utility")),c=e("./events"),d=(i(e("./console")),{iframeWidth:400,iframeMinWidth:320,iframeInitialHeight:704,iframeMinHeight:600,verticalMargin:35}),h=["resize","transition","close","complete","clear"],p="https://d3k1w8lx8mqizo.cloudfront.net/zm/",v=(r(f,[{key:"build",value:function(){this._initialHtmlHeight=s(),window.scrollTo(0,0);var e,t,n,i,r,o=this._frame=(e=this._frameUri,t=this._isMobile,(n=document.createElement("iframe")).id="zipmoney-iframe",n.frameborder=0,P(n.style,{padding:"0",border:"none",zIndex:"999999",backgroundColor:"#FFF",backgroundImage:"url("+p+"spinner.gif)",backgroundRepeat:"no-repeat",backgroundPosition:"50% 50%"}),P(n.style,t?{overflow:"scroll",width:"100%",height:"100%",position:"absolute",top:"0",bottom:"0",left:"0",right:"0",margin:"0"}:{width:d.iframeWidth+"px",minWidth:d.iframeMinWidth+"px",height:d.iframeInitialHeight+"px",margin:d.verticalMargin+"px auto 0 auto",display:"table-row",backgroundSize:"25%",textAlign:"center",boxShadow:"0px 0px 70px 0px rgb(0, 0, 0)"}),n.src=e||"",n);if(!this._isMobile){var a=((r=document.createElement("img")).src=p+"icon-close.png",P(r.style,{width:"50px",height:"50px",position:"absolute",top:"20px",right:"20px",cursor:"pointer"}),r);a.onclick=this.close.bind(this),this._overlay=((i=document.createElement("div")).className="zipmoney-overlay",P(i.style,{position:"absolute",left:"0",top:"0",display:"table-cell",textAlign:"center",verticalAlign:"middle",background:"rgba(0, 0, 0, 0.75)",zIndex:"10000",height:"100%",width:"100%"}),i),this._overlay.appendChild(a),this._overlay.appendChild(this._frame),this._overlay.appendChild(function(){var e=document.createElement("div");e.style.width=d.iframeWidth+"px",e.style.minWidth=d.iframeMinWidth+"px",e.style.margin="10px auto 0 auto",e.style.overflow="hidden";var t=document.createElement("img");t.src=p+"iframe-secure.png",t.style.cssFloat="left";var n=document.createElement("img");return n.src=p+"poweredby-trans.png",n.style.cssFloat="right",e.appendChild(t),e.appendChild(n),e}()),o=this._overlay}document.body.appendChild(o),this._isMobile&&l(this._frame.offsetHeight),u("auto"),this._startMonitoringWindowResize()}},{key:"setUri",value:function(e){this._frameUri=e,this._frame&&(this._frame.src=e)}},{key:"resize",value:function(e){var t=this._isMobile?16:0,n=(e=d.iframeMinHeight<=e?e:d.iframeMinHeight,(e+=t)+2*d.verticalMargin),i=o();this._frame.style.height=e+"px",this._overlay&&(this._overlay.style.height=Math.max(i,this._initialHtmlHeight,n)+"px"),this._isMobile&&l(e)}},{key:"transition",value:function(){window.scroll(0,0)}},{key:"close",value:function(e){var t=!(0<arguments.length&&void 0!==e)||e,n={state:"cancelled"};this._events.length&&(n=this._events.pop()),this._destroy(),this.onClose&&t&&this.onClose(n)}},{key:"complete",value:function(e){this._events.push(e)}},{key:"clear",value:function(){this._events=[]}},{key:"_startMonitoringWindowResize",value:function(){var r=this;this._resizeHandler=a.default.debounce(function(){return e=r,t=o(),n=s(),i=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,e._overlay&&(e._overlay.style.height=Math.max(t,n)+"px"),void(e._isMobile||i<d.iframeWidth?e._frame.style.width="100%":e._frame.style.width=d.iframeWidth+"px");var e,t,n,i},250),a.default.addEventHandler(window,"resize",this._resizeHandler)}},{key:"_stopMonitoringWindowResize",value:function(){a.default.removeEventHandler(window,"resize",this._resizeHandler)}},{key:"_destroy",value:function(){this._stopMonitoringWindowResize(),this._overlay?document.body.removeChild(this._overlay):document.body.removeChild(this._frame),this._isMobile&&(document.body.style.height="initial"),u("initial"),this._overlay=this._frame=null,h.forEach(function(e){return c.EventListener.off(c.EventListener.Event.eventTypes[e])})}}]),f);function f(){var t=this;(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,f),this._events=[],this._isMobile=a.default.isMobileDevice(),h.forEach(function(e){return c.EventListener.on(c.EventListener.Event.eventTypes[e],t[e].bind(t))})}function m(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}n.default=v},{"./console":5,"./events":6,"./utility":10}],9:[function(e,t,n){function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(n,"__esModule",{value:!0});var r=i(e("./xr")),o=i(e("./console"));r.default.configure({headers:{"X-Requested-With":"XMLHttpRequest"}});var a={request:"standard",redirect:!1,logLevel:"Error",onCheckout:function(t,e){r.default.post(this.checkoutUri).then(function(e){return t(e.data)}).catch(e)},onShippingAddressChanged:function(e,t){r.default.post(this.shippingUri).then(e).catch(t)},onComplete:function(e){if(o.default.information("zip:completed",e),"cancelled"!==e.state){var t=e.checkoutId?"&checkoutId="+e.checkoutId:"";this.redirectFn(this.redirectUri+"?result="+e.state+t)}},onError:function(e){o.default.error(e)},redirectFn:function(e){window.location.href=e}};n.default=a},{"./console":5,"./xr":11}],10:[function(e,t,n){Object.defineProperty(n,"__esModule",{value:!0});var i=(function(e,t,n){return t&&o(e.prototype,t),n&&o(e,n),e}(r,null,[{key:"isIe",value:function(){var e=-1,t=window.navigator.userAgent,n=t.indexOf("MSIE "),i=t.indexOf("Trident/");if(0<n)e=parseInt(t.substring(n+5,t.indexOf(".",n)),10);else if(0<i){var r=t.indexOf("rv:");e=parseInt(t.substring(r+3,t.indexOf(".",r)),10)}return-1<e?e:void 0}},{key:"isMobileDevice",value:function(){var e=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0,4))}},{key:"debounce",value:function(i,r){var o;return function(){var e=this,t=arguments,n=!o;clearTimeout(o),o=setTimeout(function(){o=null,i.apply(e,t)},r),n&&i.apply(e,t)}}},{key:"addEventHandler",value:function(e,t,n){e.addEventListener?e.addEventListener(t,n,!1):e.attachEvent&&e.attachEvent("on"+t,n)}},{key:"removeEventHandler",value:function(e,t,n){e.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent&&e.detachEvent("on"+t,n)}}]),r);function r(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,r)}function o(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}n.default=i},{}],11:[function(e,t,n){function i(e){return e&&e.__esModule?e:{default:e}}function u(e,t){return{status:e.status,response:e.response,data:t,xhr:e}}function l(e){for(var t=arguments.length,n=Array(1<t?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];for(var r in n)if({}.hasOwnProperty.call(n,r)){var o=n[r];if("object"===(void 0===o?"undefined":c(o)))for(var a in o)!{}.hasOwnProperty.call(o,a)||(e[a]=o[a])}return e}function r(s){return t=function(t,n){var i=l({},p,v,s),r=i.xmlHttpRequest();for(var e in i.abort&&s.abort(function(){n(u(r)),r.abort()}),r.open(i.method,i.params?i.url.split("?")[0]+"?"+(0,d.default)(i.params):i.url,!0),r.withCredentials=i.withCredentials,r.addEventListener(h.LOAD,function(){if(200<=r.status&&r.status<300){var e=null;r.responseText&&(e=!0===i.raw?r.responseText:i.load(r.responseText)),t(u(r,e))}else n(u(r))}),r.addEventListener(h.ABORT,function(){return n(u(r))}),r.addEventListener(h.ERROR,function(){return n(u(r))}),r.addEventListener(h.TIMEOUT,function(){return n(u(r))}),i.headers)!{}.hasOwnProperty.call(i.headers,e)||r.setRequestHeader(e,i.headers[e]);for(var o in i.events)!{}.hasOwnProperty.call(i.events,o)||r.addEventListener(o,i.events[o].bind(null,r),!1);var a="object"!==c(i.data)||i.raw?i.data:i.dump(i.data);void 0!==a?r.send(a):r.send()},((e=s)&&e.promise?e.promise:v.promise||p.promise)(t);var e,t}Object.defineProperty(n,"__esModule",{value:!0});var c="function"==typeof Symbol&&"symbol"==K(Symbol.iterator)?function(e){return void 0===e?"undefined":K(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":void 0===e?"undefined":K(e)},d=i(e("querystring/encode")),o=i(e("q")),a={GET:"GET",POST:"POST",PUT:"PUT",DELETE:"DELETE",PATCH:"PATCH",OPTIONS:"OPTIONS"},h={READY_STATE_CHANGE:"readystatechange",LOAD_START:"loadstart",PROGRESS:"progress",ABORT:"abort",ERROR:"error",LOAD:"load",TIMEOUT:"timeout",LOAD_END:"loadend"},p={method:a.GET,data:void 0,headers:{Accept:"application/json","Content-Type":"application/json"},dump:JSON.stringify,load:JSON.parse,xmlHttpRequest:function(){return new XMLHttpRequest},promise:function(e){return o.default.Promise(e)},withCredentials:!1},v={};r.assign=l,r.encode=d.default,r.configure=function(e){v=l({},v,e)},r.Methods=a,r.Events=h,r.defaults=p,r.get=function(e,t,n){return r(l({url:e,method:a.GET,params:t},n))},r.put=function(e,t,n){return r(l({url:e,method:a.PUT,data:t},n))},r.post=function(e,t,n){return r(l({url:e,method:a.POST,data:t},n))},r.patch=function(e,t,n){return r(l({url:e,method:a.PATCH,data:t},n))},r.del=function(e,t){return r(l({url:e,method:a.DELETE},t))},r.options=function(e,t){return r(l({url:e,method:a.OPTIONS},t))},n.default=r},{q:2,"querystring/encode":3}]},{},[7])}));var Lt=(s(It,ft),n(It,[{key:"setEnv",value:function(e,t){a(It.prototype.__proto__||Object.getPrototypeOf(It.prototype),"setEnv",this).call(this,e,t),this.apiEnv.setEnv(e,t)}},{key:"getCheckoutUri",value:function(e){return this.apiEnv.getConf().url+"/v1/echo?"+X.serialize({json_body:JSON.stringify({redirect_uri:e})})}}]),It);function It(){l(this,It);var e=c(this,(It.__proto__||Object.getPrototypeOf(It)).call(this));return e.apiEnv=new G(z),e}var Ut,Dt=(Ut=yt(Lt),s(Nt,Ut),n(Nt,[{key:"run",value:function(){this.runs=!0,this.background.initLoader()}},{key:"isRunning",value:function(){return this.runs}},{key:"next",value:function(e){var t=this;this.background.clear(),this.checkout=e;var n=this.getCheckoutUri(this.checkout.link);Zip.Checkout.init({checkoutUri:n,onComplete:function(e){return t.eventHandler(e)},onError:function(e){return t.eventHandler(e)}})}},{key:"getSuccessRedirectUri",value:function(){return this.suspendedRedirectUri?this.suspendedRedirectUri:this.widgetEnv.getConf().url+String("/checkout/zipmoney/suspended")}},{key:"getErrorRedirectUri",value:function(){return this.getSuccessRedirectUri()}},{key:"stop",value:function(){a(Nt.prototype.__proto__||Object.getPrototypeOf(Nt.prototype),"stop",this).call(this),this.runs=!1;var e=document.querySelector(".zipmoney-overlay");e&&e.remove(),this.eventEmitter.emit(pt.CLOSE)}},{key:"onStop",value:function(e){var t=this;this.eventEmitter.subscribe(pt.CLOSE,function(){t.background.clear(),e()})}},{key:"onCheckout",value:function(e,t){var n=this;this.eventEmitter.subscribe(e,function(){t(n.checkout)})}},{key:"eventHandler",value:function(e){switch(this.runs=!1,e.state){case"approved":this.eventEmitter.emit(pt.CLOSE),this.eventEmitter.emit(pt.SUCCESS);break;case"declined":this.eventEmitter.emit(pt.CLOSE),this.eventEmitter.emit(pt.DECLINED);break;case"cancelled":this.eventEmitter.emit(pt.CLOSE);break;case"referred":this.eventEmitter.emit(pt.CLOSE),this.eventEmitter.emit(pt.REFERRED);break;default:console.warn("[CheckoutButton:Zipmoney] Unknown gateway status.")}}}]),Nt);function Nt(){l(this,Nt);var e=c(this,(Nt.__proto__||Object.getPrototypeOf(Nt)).call(this));return e.runs=!1,e.eventEmitter=new it,e}var Mt,Ft="[Paydock:StorageDispatcher]";(Mt||(Mt={})).WIDGET_SESSION="widget-session";var jt=(n(Ht,[{key:"create",value:function(e){this.onLoadCallback=e,this.dispatcherFrame&&this.destroy(),this.widgetId=Q.generate(),this.setupIframeEventListeners();var t=document.createElement("iframe");return t.setAttribute("src",this.env.getConf().url+"/storage-dispatcher?widgetId="+this.widgetId),t.setAttribute("id","pd-storage-dispatcher"),t.style.display="none",document.body.appendChild(t),this.dispatcherFrame=t,console.info(Ft+" initialized."),t}},{key:"destroy",value:function(){this.dispatcherFrame&&this.dispatcherFrame.parentNode&&this.dispatcherFrame.parentNode.removeChild(this.dispatcherFrame),this.iframeEvent.clear(),this.widgetId=void 0,this.dispatcherFrame=void 0}},{key:"push",value:function(e,t){var n;if(this.pushCallbacks=t,this.dispatcherFrame){var i=P(P({},this.defaultPayload),e);null!==(n=this.dispatcherFrame.contentWindow)&&void 0!==n&&n.postMessage(i,this.env.getConf().url)}else console.error(Ft+" dispatcher is not initialized.")}},{key:"setEnv",value:function(e,t){this.env.setEnv(e,t),this.create(this.onLoadCallback)}},{key:"setupIframeEventListeners",value:function(){var i=this;this.widgetId&&(this.iframeEvent.on(Ie.AFTER_LOAD,this.widgetId,function(e){var t;null!==(t=i.onLoadCallback)&&void 0!==t&&t.call(i)}),this.iframeEvent.on(Ie.DISPATCH_SUCCESS,this.widgetId,function(e){var t,n;null!==(n=null===(t=i.pushCallbacks)||void 0===t?void 0:t.onSuccess)&&void 0!==n&&n.call(t)}),this.iframeEvent.on(Ie.DISPATCH_ERROR,this.widgetId,function(e){var t,n;null!==(n=null===(t=i.pushCallbacks)||void 0===t?void 0:t.onError)&&void 0!==n&&n.call(t)}))}}]),Ht);function Ht(e){l(this,Ht),this.messageSource=e,this.defaultPayload={destination:"widget.paydock"},this.env=new G(B),this.defaultPayload.source=e,this.iframeEvent=new Ue(window)}var Bt,zt=(Bt=function(e){return s(t,0<arguments.length&&void 0!==e?e:ft),n(t,[{key:"setRedirectUrl",value:function(e){this.merchantRedirectUrl=e}},{key:"getRedirectUrl",value:function(){return this.merchantRedirectUrl}},{key:"error",value:function(e,t,n){n(!1)}}]),t;function t(){return l(this,t),c(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}}(Lt),s(qt,Bt),n(qt,[{key:"getProxyRedirectUrl",value:function(){return this.widgetEnv.getConf().url+"/checkout/zipmoney/response"}},{key:"next",value:function(t,n){var i=this;this.storageDispatcher.create(function(){var e={merchant_redirect_url:i.getRedirectUrl(),checkout_token:t.token,public_key:n.public_key,gateway_id:n.gateway_id};i.storageDispatcher.push({intent:Mt.WIDGET_SESSION,data:e},{onSuccess:function(){var e=i.getCheckoutUri(t.link);Zip.Checkout.init({checkoutUri:e,redirect:!0})},onError:function(){console.error("Error initializing Zip Checkout")}})})}},{key:"getSuccessRedirectUri",value:function(){return this.getProxyRedirectUrl()}},{key:"getErrorRedirectUri",value:function(){return this.getProxyRedirectUrl()}},{key:"setEnv",value:function(e,t){a(qt.prototype.__proto__||Object.getPrototypeOf(qt.prototype),"setEnv",this).call(this,e,t),this.storageDispatcher.setEnv(e,t)}}]),qt);function qt(){l(this,qt);var e=c(this,(qt.__proto__||Object.getPrototypeOf(qt)).call(this));return e.storageDispatcher=new jt("zipmoney.checkout.paydock"),e}var Wt=(s(Vt,Ct),n(Vt,[{key:"getSuccessRedirectUri",value:function(){return this.widgetEnv.getConf().url+X.extendSearchParams("/checkout/success","merchant",encodeURIComponent(window.location.href))}},{key:"getErrorRedirectUri",value:function(){return this.widgetEnv.getConf().url+X.extendSearchParams("/checkout/error","merchant",encodeURIComponent(window.location.href))}}]),Vt);function Vt(){return l(this,Vt),c(this,(Vt.__proto__||Object.getPrototypeOf(Vt)).apply(this,arguments))}var Yt=(s(Kt,Ct),n(Kt,[{key:"getSuccessRedirectUri",value:function(){return this.widgetEnv.getConf().url+"/checkout/afterpay/merchant/{{merchant}}/success".replace("{{merchant}}",encodeURIComponent(window.btoa(window.location.href)))}},{key:"getErrorRedirectUri",value:function(){return this.widgetEnv.getConf().url+"/checkout/afterpay/merchant/{{merchant}}/error".replace("{{merchant}}",encodeURIComponent(window.btoa(window.location.href)))}},{key:"next",value:function(e,t){this.checkout=e,st.isSupportPopUp()||window.localStorage.setItem("paydock_checkout_token",JSON.stringify(this.checkout)),this.popup.redirect(this.getRedirectUrl(this.checkout,t))}},{key:"error",value:function(e,t,n){return!t||t&&"invalid_amount"!==t?n(!0):(this.popup.initError(e),n(!1))}},{key:"run",value:function(){this.isRunning()||(this.popup.setConfigs({width:420,height:715}),this.popup.init(),this.background.initControl())}},{key:"getRedirectUrl",value:function(e,t){return this.widgetEnv.getConf().url+"/checkout/afterpay/init?"+X.serialize(P(P({},t),{token:e.reference_id,env:"live"===e.mode?"live":"test"}))}}]),Kt);function Kt(){return l(this,Kt),c(this,(Kt.__proto__||Object.getPrototypeOf(Kt)).apply(this,arguments))}var Gt={EXTERNAL_CHECKOUT_TOKEN:"external_checkout_token",CHECKOUT_TOKEN:"checkout_token",BANK_ACCOUNT:"bank_account",CARD:"card"},Jt=(s(Xt,Ze),n(Xt,[{key:"getLink",value:function(){return"/v1/payment_sources/tokens"}},{key:"send",value:function(e,n,t){var i=2<arguments.length&&void 0!==t?t:function(e){};this.create(e,this.getConfigs(),function(e,t){return n(e)},function(e,t){void 0===e.message?i("unknown error"):i(e.message)})}},{key:"getConfigs",value:function(){return this.body}}]),Xt);function Xt(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:Gt.CARD;l(this,Xt);var i=c(this,(Xt.__proto__||Object.getPrototypeOf(Xt)).call(this));switch(i.body={gateway_id:e,type:n},n){case Gt.CARD:case Gt.BANK_ACCOUNT:delete t.gateway_id,delete t.type,delete t.checkout_token,i.body=P(i.body,t);break;case Gt.CHECKOUT_TOKEN:case Gt.EXTERNAL_CHECKOUT_TOKEN:i.body.checkout_token=t;break;default:throw new Error("Unsupported type of PaymentSourceToken")}return i}var Zt=(n(Qt,[{key:"init",value:function(e){var t=this;this.setEnv(e),this.runner.onCheckout(pt.SUCCESS,function(e){t.eventEmitter.emit(Je.ACCEPTED,{}),t.background.initLoader(),t.runner.stop(),t.checkToken(e.token,function(){t.createOneTimeToken(e.token)})}),this.runner.onCheckout(pt.ERROR,function(){t.eventEmitter.emit(Je.ERROR),console.error(Xe+" Error from checkout server."),t.runner.stop()}),this.runner.onCheckout(pt.REFERRED,function(){t.eventEmitter.emit(Je.REFERRED),t.runner.stop()}),this.runner.onCheckout(pt.DECLINED,function(){t.eventEmitter.emit(Je.DECLINED),t.runner.stop()}),this.eventEmitter.subscribe(Je.ERROR,function(){t.runner.stop()}),this.eventEmitter.subscribe(Je.FINISH,function(e){t.background.clear()})}},{key:"setEnv",value:function(e){this.env=e}},{key:"checkToken",value:function(e,t){var n=this,i=new tt(e);i.setEnv(this.env),i.send(this.params.accessToken,function(e){n.details=e,t()},function(){n.eventEmitter.emit(Je.ERROR,{}),console.error(Xe+" Error during creating payment source token.")})}},{key:"createOneTimeToken",value:function(e){var t=this,n=new Jt(this.params.gatewayId,e,Gt.CHECKOUT_TOKEN);n.setEnv(this.env),n.send(this.params.accessToken,function(e){t.eventEmitter.emit(Je.FINISH,{payment_source_token:e,checkout_email:t.details.checkout_email,checkout_holder:t.details.checkout_holder,gateway_type:t.details.gateway_type})},function(){t.eventEmitter.emit(Je.ERROR,{}),console.error(Xe+" Error during creating payment source token.")})}}]),Qt);function Qt(e,t,n,i){var r=this;l(this,Qt),this.background=e,this.runner=t,this.eventEmitter=n,this.params=i,this.runner.onStop(function(){r.eventEmitter.emit(Je.CLOSE)})}var $t=(n(en,[{key:"chooseRunner",value:function(e,t){var n=this.getRunnerByMode(e,t);this.runner=new n(this.accessToken),Ot(this.runner)?(this.background=new dt,this.checkoutHandler=new Zt(this.background,this.runner,this.eventEmitter,{accessToken:this.accessToken,gatewayId:this.gatewayId}),this.checkoutHandler.init(this.env)):(this.background=void 0,this.checkoutHandler=void 0)}},{key:"buildAdditionalParams",value:function(){return{}}},{key:"initCheckout",value:function(e){var n=this;e.on("click",function(e){if(Ot(n.runner)){if(n.runner.isRunning())return;n.runner.run()}else if(Tt(n.runner)&&!n.runner.getRedirectUrl())throw Error(Xe+" The merchant redirect URL should is required in the '"+n.mode+"' mode.");n.eventEmitter.emit(Je.CLICK);var t=new $e(n.gatewayId,n.runner.getSuccessRedirectUri(),n.runner.getErrorRedirectUri());t.setMeta(n.meta),t.setEnv(n.env),t.send(n.accessToken,function(e){var t=Ot(n.runner)?Je.POPUP_REDIRECT:Je.REDIRECT;n.eventEmitter.emit(t),n.runner.next(e,n.buildAdditionalParams())},function(e,t){console.error(Xe+" "+e),n.eventEmitter.emit(Je.ERROR,{error:e,code:t}),n.runner.error(e,t,function(e){e&&n.close()})})})}},{key:"on",value:function(e,t){this.eventEmitter.subscribe(e,t)}},{key:"close",value:function(){this.assertMethodSupport(this.runner,Ve.CONTEXTUAL)&&this.runner.stop()}},{key:"onFinishInsert",value:function(t,n){this.on(Je.FINISH,function(e){Te.insertToInput(t,n,e)})}},{key:"setMeta",value:function(e){this.meta=P(this.meta,e)}},{key:"setBackdropDescription",value:function(e){this.assertMethodSupport(this.runner,Ve.CONTEXTUAL)&&this.runner.setBackgroundDescription(e)}},{key:"setBackdropTitle",value:function(e){this.assertMethodSupport(this.runner,Ve.CONTEXTUAL)&&this.runner.setBackgroundTitle(e)}},{key:"setSuspendedRedirectUri",value:function(e){this.assertMethodSupport(this.runner,Ve.CONTEXTUAL)&&this.runner.setSuspendedRedirectUri(e)}},{key:"setRedirectUrl",value:function(e){this.assertMethodSupport(this.runner,Ve.REDIRECT)&&this.runner.setRedirectUrl(e)}},{key:"getSuccessRedirectUri",value:function(){return this.runner.getSuccessRedirectUri()}},{key:"turnOffBackdrop",value:function(){this.turnOffControlBackdrop(),this.turnOffLoaderBackdrop()}},{key:"turnOffControlBackdrop",value:function(){this.assertMethodSupport(this.runner,Ve.CONTEXTUAL)&&this.runner.turnOffBackdrop()}},{key:"turnOffLoaderBackdrop",value:function(){var e;null!==(e=this.background)&&void 0!==e&&e.turnOffLoader()}},{key:"setEnv",value:function(e,t){var n;this.env=e,this.alias=t,null!==(n=this.checkoutHandler)&&void 0!==n&&n.setEnv(e),this.runner.setEnv(e,t)}},{key:"getEnv",value:function(){return this.env}},{key:"getRunnerByMode",value:function(e,t){if(e===Ke.PAYPAL){if(t===Ve.REDIRECT)throw Error(Xe+" Gateway '"+e+"' do not support '"+t+"' mode");return Wt}if(e===Ke.AFTERPAY){if(t===Ve.REDIRECT)throw Error(Xe+" Gateway '"+e+"' do not support '"+t+"' mode");return Yt}if(e===Ke.ZIPMONEY)return t===Ve.CONTEXTUAL?Dt:zt;throw Error(Xe+" Unsupported gateway.")}},{key:"assertMethodSupport",value:function(e,t){var n=Xe+" The method is not supported in the '"+t+"' mode.";switch(t){case Ve.CONTEXTUAL:if(Ot(e))return!0;console.warn(n);break;case Ve.REDIRECT:if(Tt(e))return!0;console.warn(n)}return!1}}]),en);function en(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"default",i=3<arguments.length&&void 0!==arguments[3]?arguments[3]:Ke.PAYPAL,r=4<arguments.length&&void 0!==arguments[4]?arguments[4]:Ve.CONTEXTUAL;l(this,en),this.accessToken=t,this.gatewayId=n,this.gatewayType=i,this.mode=r,this.window=window,this.meta={},this.env=W,this.eventEmitter=new it,this.container=new Pe(e),this.initCheckout(this.container),this.chooseRunner(i,r)}var tn=(s(nn,$t),n(nn,[{key:"setSuspendedRedirectUri",value:function(e){a(nn.prototype.__proto__||Object.getPrototypeOf(nn.prototype),"setSuspendedRedirectUri",this).call(this,e)}},{key:"setRedirectUrl",value:function(e){Ot(this.runner)&&(a(nn.prototype.__proto__||Object.getPrototypeOf(nn.prototype),"chooseRunner",this).call(this,Ke.ZIPMONEY,Ve.REDIRECT),a(nn.prototype.__proto__||Object.getPrototypeOf(nn.prototype),"setEnv",this).call(this,this.env,this.alias)),a(nn.prototype.__proto__||Object.getPrototypeOf(nn.prototype),"setRedirectUrl",this).call(this,e)}},{key:"buildAdditionalParams",value:function(){var e=a(nn.prototype.__proto__||Object.getPrototypeOf(nn.prototype),"buildAdditionalParams",this).call(this);return P(P({},e),{public_key:this.publicKey,gateway_id:this.gatewayId})}}]),nn);function nn(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"default",i=3<arguments.length&&void 0!==arguments[3]?arguments[3]:Ve.CONTEXTUAL;l(this,nn);var r=c(this,(nn.__proto__||Object.getPrototypeOf(nn)).call(this,e,t,n,Ke.ZIPMONEY,i));return r.publicKey=t,r.gatewayId=n,r.mode=i,r}var rn=(s(on,$t),n(on,[{key:"showEnhancedTrackingProtectionPopup",value:function(e){var t=st.getBrowserInfo(),n=t.name,i=t.version;e&&"Firefox"===n&&100<=+i&&(this.showETP=!0)}},{key:"buildAdditionalParams",value:function(){var e=a(on.prototype.__proto__||Object.getPrototypeOf(on.prototype),"buildAdditionalParams",this).call(this);return this.showETP&&(e.show_etp=!0),e}}]),on);function on(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"default";l(this,on);var i=c(this,(on.__proto__||Object.getPrototypeOf(on)).call(this,e,t,n,Ke.AFTERPAY));return i.accessToken=t,i.gatewayId=n,i.showETP=!1,i}var an,sn,un=(s(ln,$t),ln);function ln(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"default";l(this,ln);var i=c(this,(ln.__proto__||Object.getPrototypeOf(ln)).call(this,e,t,n,Ke.PAYPAL));return i.publicKey=t,i.gatewayId=n,i}(sn=an=an||{}).AFTER_LOAD="after_load",sn.UNAVAILABLE="unavailable",sn.START_LOADING="start_loading",sn.END_LOADING="end_loading",sn.UPDATE="update",sn.PAYMENT_SUCCESSFUL="payment_successful",sn.PAYMENT_IN_REVIEW="payment_in_review",sn.PAYMENT_ERROR="payment_error";var cn=(s(dn,Ue),n(dn,[{key:"on",value:function(e,t,n){for(var i in an)an.hasOwnProperty(i)&&e===an[i]&&this.listeners.push({event:e,listener:n,widget_id:t})}}]),dn);function dn(){return l(this,dn),c(this,(dn.__proto__||Object.getPrototypeOf(dn)).apply(this,arguments))}var hn={CLOSE:"close",UPDATED:"updated"},pn=(s(vn,Me),n(vn,[{key:"push",value:function(e,t){var n=1<arguments.length&&void 0!==t?t:{};if(this.iFrame.isExist()){-1===ie.values(hn).indexOf(e)&&console.warn("unsupported trigger type");var i={message_source:"wallet.paydock",reference_id:this.widgetId,trigger:e,destination:"widget.paydock",data:n};this.iFrame.getElement().contentWindow.postMessage(JSON.stringify(i),"*")}}}]),vn);function vn(e,t){l(this,vn);var n=c(this,(vn.__proto__||Object.getPrototypeOf(vn)).call(this,e));return n.widgetId=t,n}var fn=(s(mn,dt),n(mn,[{key:"initControl",value:function(){this.imageStyle||this.createImageStyles(),a(mn.prototype.__proto__||Object.getPrototypeOf(mn.prototype),"initControl",this).call(this)}},{key:"clear",value:function(){this.imageStyle&&this.imageStyle.parentNode.removeChild(this.imageStyle),this.imageStyle=null,a(mn.prototype.__proto__||Object.getPrototypeOf(mn.prototype),"clear",this).call(this)}},{key:"createTemplate",value:function(){var e=this,t=document.body||document.getElementsByTagName("body")[0],n=String('\n <div class="checkout-container">\n <div class="checkout-bg-logo"></div>\n <a href="#" data-close>Close</a>\n </div>\n');this.overlay=document.createElement("div"),this.overlay.classList.add("checkout-overlay"),this.overlay.setAttribute("checkout-overlay"," "),this.overlay.innerHTML=n,t.appendChild(this.overlay),setTimeout(function(){e.isInit()&&e.overlay.classList.add("display")},5)}},{key:"createImageStyles",value:function(){var e=document.head||document.getElementsByTagName("head")[0],t=String("\n .checkout-bg-logo {\n display: block;\n background: url({{url}}) no-repeat;\n width: 100px;\n height: 50px;\n margin: 0 auto;\n border-radius: 10px;\n background-size: contain;\n }\n");document.querySelector(".checkout-container"),t=t.replace("{{url}}",this.bgImageUrl),this.imageStyle=document.createElement("style"),this.imageStyle.type="text/css",this.imageStyle.appendChild(document.createTextNode(t)),e.appendChild(this.imageStyle)}}]),mn);function mn(e){l(this,mn);var t=c(this,(mn.__proto__||Object.getPrototypeOf(mn)).call(this));return t.bgImageUrl=e,t.imageStyle=null,t}var yn={UNAVAILABLE:"unavailable",UPDATE:"update",PAYMENT_METHOD_SELECTED:"payment_method_selected",PAYMENT_SUCCESS:"payment_success",PAYMENT_IN_REVIEW:"payment_in_review",PAYMENT_ERROR:"payment_error",CALLBACK:"callback"},gn=(n(_n,[{key:"initializeChildWallets",value:function(){this.childWallets=[]}},{key:"getGatewayName",value:function(){throw new Error("Method not implemented")}},{key:"setEnv",value:function(e){return this.env=e,this}},{key:"load",value:function(t){this.childWallets.forEach(function(e){return e.load(t)})}},{key:"update",value:function(){}},{key:"on",value:function(e,t){var n=this;if(-1===ie.values(yn).indexOf(e))throw new Error("invalid wallet event");return"function"==typeof t?this.eventEmitter.subscribe(e,t):new Promise(function(t){return n.eventEmitter.subscribe(e,function(e){return t(e)})})}}]),_n);function _n(e,t){l(this,_n),this.publicKey=e,this.meta=t,this.env=W,this.eventEmitter=new it,this.initializeChildWallets()}var kn=(s(En,gn),n(En,[{key:"load",value:function(e){this.container=e,this.iFrame=new xe(this.container);var t=this.link.getParams().widget_id;this.triggerElement=new pn(this.iFrame,t),this.setupIFrameEvents(t),this.background=this.initBackground(),this.iFrame.load(this.link.getUrl())}},{key:"close",value:function(){this.triggerElement.push(hn.CLOSE),this.background.clear()}},{key:"update",value:function(e){this.triggerElement.push(hn.UPDATED,e)}},{key:"setEnv",value:function(e){return this.link.setEnv(e),this}},{key:"initBackground",value:function(){var e=this,t=new fn(this.link.getNetUrl().replace(ee,"/images/logo.png"));return t.setBackdropTitle(""),t.setBackdropDescription(""),t.onTrigger(lt,function(){return e.triggerElement.push(hn.CLOSE)}),t}},{key:"setupIFrameEvents",value:function(e){var t=this;this.event.on(an.UNAVAILABLE,e,function(e){return t.eventEmitter.emit(yn.UNAVAILABLE,null)}),this.event.on(an.START_LOADING,e,function(e){return t.background.initControl()}),this.event.on(an.END_LOADING,e,function(e){return t.background.clear()}),this.event.on(an.UPDATE,e,function(e){t.eventEmitter.emit(yn.UPDATE,t.parseUpdateData(e))}),this.event.on(an.PAYMENT_SUCCESSFUL,e,function(e){t.eventEmitter.emit(yn.PAYMENT_SUCCESS,t.parsePaymentSuccessfulData(e)),t.iFrame.getElement()||t.background.clear()}),this.event.on(an.PAYMENT_IN_REVIEW,e,function(e){t.eventEmitter.emit(yn.PAYMENT_IN_REVIEW,t.parsePaymentSuccessfulData(e)),t.iFrame.getElement()||t.background.clear()}),this.event.on(an.PAYMENT_ERROR,e,function(e){t.eventEmitter.emit(yn.PAYMENT_ERROR,e),t.iFrame.getElement()||t.background.clear()})}},{key:"parsePaymentSuccessfulData",value:function(e){var t;return{id:this.meta.id,amount:e.amount,currency:e.currencyCode,status:null===(t=e.charge)||void 0===t?void 0:t.status}}},{key:"parseUpdateData",value:function(e){return P(P(P({wallet_response_code:e.responseCode,wallet_session_id:e.sessionId},e.paymentMethodDetails?{payment_source:{wallet_payment_method_id:e.paymentMethodDetails.paymentMethodId,card_number_last4:e.paymentMethodDetails.lastFourDigitsOfPan,card_scheme:e.paymentMethodDetails.paymentScheme}}:{}),e.loyaltyAccountSummary?{wallet_loyalty_account:{id:e.loyaltyAccountSummary.loyaltyAccountId,barcode:e.loyaltyAccountSummary.loyaltyAccountBarcode}}:{}),e.deliveryAddressDetails?{shipping:{address_line1:e.deliveryAddressDetails.line1,address_line2:e.deliveryAddressDetails.line2,address_postcode:e.deliveryAddressDetails.postalCode,address_city:e.deliveryAddressDetails.city,address_state:e.deliveryAddressDetails.state,address_country:e.deliveryAddressDetails.countryCode,address_company:e.deliveryAddressDetails.companyName,wallet_address_id:e.deliveryAddressDetails.addressId,post_office_box_number:e.deliveryAddressDetails.postOfficeBoxNumber,wallet_address_created_timestamp:e.deliveryAddressDetails.createdTimestamp,wallet_address_updated_timestamp:e.deliveryAddressDetails.updatedTimestamp,wallet_address_name:e.deliveryAddressDetails.name}}:{})}}]),En);function En(e,t){l(this,En);var n=c(this,(En.__proto__||Object.getPrototypeOf(En)).call(this,e,t));n.link=new te(ee);var i=t.amount,r=t.currency,o=t.id,a=t.gateway_mode,s=t.reference,u=t.request_shipping;return n.link.setParams(P({token:e,amount:i,currency:r,gateway_mode:a,credentials:s||o},u?{request_shipping:u}:{})),v.version&&n.link.setParams({sdk_version:v.version,sdk_type:v.type}),n.token=e,n.event=new cn(window),n}var wn=(s(bn,gn),n(bn,[{key:"load",value:function(e){var t,r=this;if(!window.Promise)return this.eventEmitter.emit(yn.UNAVAILABLE,null),Promise.resolve();var n=(null===(t=e.getElement())||void 0===t?void 0:t.id)||"",i=document.createElement("script");return i.src="https://www.paypal.com/sdk/js?client-id="+this.publicKey+"&currency="+this.meta.currency+(!0===this.meta.pay_later?"&enable-funding=paylater&disable-funding=card":"&disable-funding=credit,card")+(this.meta.capture?"":"&intent=authorize"),i.async=!0,i.onload=function(){window.paypal?(r.paypal=window.paypal,r.paypal.Buttons(P(P({},r.meta.style&&{style:r.meta.style}),{createOrder:function(){return new Promise(function(t,n){r.eventEmitter.emit(yn.CALLBACK,{data:P({request_type:"CREATE_TRANSACTION"},r.meta.request_shipping&&{request_shipping:r.meta.request_shipping}),onSuccess:function(e){return t(e.id)},onError:function(e){return n(e)}})})},onShippingChange:function(i){return new Promise(function(e,t){var n=r.parseUpdateData(i);r.latestShippingData=n.shipping,r.latestShippingChangePromiseResolve=e,r.latestShippingChangePromiseReject=t,r.eventEmitter.emit(yn.UPDATE,n)})},onApprove:function(n){return r.pendingApprovalPromise=r.pendingApprovalPromise||new Promise(function(e,t){return r.eventEmitter.emit(yn.PAYMENT_METHOD_SELECTED,{data:{payment_method_id:n.orderID,customer:{payment_source:{external_payer_id:n.payerID}}},onSuccess:function(){r.pendingApprovalPromise=void 0,e(!0)},onError:function(e){r.pendingApprovalPromise=void 0,t(e)}})}),r.pendingApprovalPromise},onError:function(){}})).render("#"+n)):r.eventEmitter.emit(yn.UNAVAILABLE,null)},document.head.appendChild(i),Promise.resolve()}},{key:"update",value:function(e){var t=this;if(this.latestShippingChangePromiseResolve&&this.latestShippingChangePromiseReject)return e.success?void this.eventEmitter.emit(yn.CALLBACK,{data:{request_type:"UPDATE_TRANSACTION",shipping:this.latestShippingData},onSuccess:function(){return t.latestShippingChangePromiseResolve(!0)},onError:function(){return t.latestShippingChangePromiseReject()}}):this.latestShippingChangePromiseReject()}},{key:"parseUpdateData",value:function(e){var t;return P(P({wallet_order_id:e.orderID,wallet_session_id:e.paymentID,payment_source:{wallet_payment_method_id:e.paymentToken}},e.shipping_address&&{shipping:{address_city:e.shipping_address.city,address_state:e.shipping_address.state,address_postcode:e.shipping_address.postal_code,address_country:e.shipping_address.country_code}}),e.selected_shipping_option&&{selected_shipping_option:{id:e.selected_shipping_option.id,label:e.selected_shipping_option.label,amount:e.selected_shipping_option.amount.value,currency:e.selected_shipping_option.amount.currency_code,type:null===(t=e.selected_shipping_option)||void 0===t?void 0:t.type}})}}]),bn);function bn(){return l(this,bn),c(this,(bn.__proto__||Object.getPrototypeOf(bn)).apply(this,arguments))}var Cn=xt(function(e,t){function n(e){return(n="function"==typeof Symbol&&"symbol"===K(Symbol.iterator)?function(e){return void 0===e?"undefined":K(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":void 0===e?"undefined":K(e)})(e)}Object.defineProperty(t,"__esModule",{value:!0});function r(i){return null!==l?l:l=new Promise(function(e,t){if("undefined"!=typeof window)if(window.Stripe&&i&&console.warn(u),window.Stripe)e(window.Stripe);else try{var n=function(){for(var e=document.querySelectorAll('script[src^="'.concat(a,'"]')),t=0;t<e.length;t++){var n=e[t];if(s.test(n.src))return n}return null}();n&&i?console.warn(u):n=n||function(e){var t=e&&!e.advancedFraudSignals?"?advancedFraudSignals=false":"",n=document.createElement("script");n.src="".concat(a).concat(t);var i=document.head||document.body;if(!i)throw new Error("Expected document.body not to be null. Stripe.js requires a <body> element.");return i.appendChild(n),n}(i),n.addEventListener("load",function(){window.Stripe?e(window.Stripe):t(new Error("Stripe.js not available"))}),n.addEventListener("error",function(){t(new Error("Failed to load Stripe.js"))})}catch(e){return void t(e)}else e(null)})}function i(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];c=!0;var i=Date.now();return r(o).then(function(e){return function(e,t,n){if(null===e)return null;var i,r,o=e.apply(void 0,t);return r=n,(i=o)&&i._registerWrapper&&i._registerWrapper({name:"stripe-js",version:"1.11.0",startTime:r}),o}(e,t,i)})}var o,a="https://js.stripe.com/v3",s=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,u="loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used",l=null,c=!1;i.setLoadParameters=function(e){if(c)throw new Error("You cannot change load parameters after calling loadStripe");o=function(e){var t="invalid load parameters; expected object of shape\n\n {advancedFraudSignals: boolean}\n\nbut received\n\n ".concat(JSON.stringify(e),"\n");if(null===e||"object"!==n(e))throw new Error(t);if(1===Object.keys(e).length&&"boolean"==typeof e.advancedFraudSignals)return e;throw new Error(t)}(e)},t.loadStripe=i});Rt(Cn);Cn.loadStripe;var Sn=Cn.loadStripe,On="success",Tn="fail",An=(s(Pn,gn),n(Pn,[{key:"initPaymentRequest",value:function(){return this.stripe.paymentRequest({country:this.meta.country.toUpperCase(),currency:this.meta.currency.toLowerCase(),total:{label:this.meta.amount_label,amount:Math.floor(100*this.meta.amount)},requestPayerName:!0===this.meta.request_payer_name,requestPayerEmail:!0===this.meta.request_payer_email,requestPayerPhone:!0===this.meta.request_payer_phone})}},{key:"createWalletButton",value:function(){return this.stripe.elements().create("paymentRequestButton",{paymentRequest:this.paymentRequest})}},{key:"load",value:function(t){var n=this;return Sn(this.publicKey).then(function(e){n.stripe=e,n.paymentRequest=n.initPaymentRequest()}).then(function(){return n.checkAvailability()}).then(function(e){return n.mount(t,e)}).then(function(){return n.setOnPaymentMethodSelected()})}},{key:"checkAvailability",value:function(){var i=this;return this.paymentRequest.canMakePayment().then(function(e){if(e){var t=!i.meta.wallets||i.meta.wallets.includes(se.GOOGLE),n=!i.meta.wallets||i.meta.wallets.includes(se.APPLE);return{google_pay:t&&!e.applePay,apple_pay:n&&e.applePay,flypay:!1}}})}},{key:"mount",value:function(e,t){if(!t||!t.apple_pay&&!t.google_pay)return this.eventEmitter.emit(yn.UNAVAILABLE,null);this.createWalletButton().mount(e.getElement())}},{key:"setOnPaymentMethodSelected",value:function(){var c=this;this.paymentRequest.on("paymentmethod",function(e){var t,n,i=e.paymentMethod,r=i.id,o=i.card,a=i.billing_details,s=a.name,u=a.address,l={payment_method_id:r,customer:{payer_name:e.payerName,payer_email:e.payerEmail,payer_phone:e.payerPhone,payment_source:{wallet_type:c.getWalletType(null===(t=null==o?void 0:o.wallet)||void 0===t?void 0:t.type),card_name:s,type:null===(n=null==o?void 0:o.wallet)||void 0===n?void 0:n.type,card_scheme:null==o?void 0:o.brand,card_number_last4:null==o?void 0:o.last4,expire_month:null==o?void 0:o.exp_month,expire_year:null==o?void 0:o.exp_year,address_line1:u.line1,address_line2:u.line2,address_city:u.city,address_postcode:u.postal_code,address_state:u.state,address_country:u.country}}};c.eventEmitter.emit(yn.PAYMENT_METHOD_SELECTED,{data:l,onSuccess:function(){return e.complete(On)},onError:function(){return e.complete(Tn)}})})}},{key:"getWalletType",value:function(e){return e?"google_pay"===e?se.GOOGLE:se.APPLE:null}}]),Pn);function Pn(){return l(this,Pn),c(this,(Pn.__proto__||Object.getPrototypeOf(Pn)).apply(this,arguments))}var Rn=(s(xn,gn),n(xn,[{key:"getGatewayName",value:function(){return this.gatewayName}},{key:"getMerchantId",value:function(){var e,t,n;return(null===(n=null===(t=null===(e=this.meta)||void 0===e?void 0:e.credentials)||void 0===t?void 0:t[se.APPLE])||void 0===n?void 0:n.merchant)||""}},{key:"getMetaStyles",value:function(){var e,t,n;if(null!==(e=this.meta)&&void 0!==e&&e.style&&"object"===K(null===(t=this.meta)||void 0===t?void 0:t.style)){var i=JSON.parse(JSON.stringify(null===(n=this.meta)||void 0===n?void 0:n.style));return"google"in i&&(null==i||delete i.google),"apple"in i?null==i?void 0:i.apple:i}return null}},{key:"getMetaRawDataInitialization",value:function(){var e,t,n,i;if(null!==(e=this.meta)&&void 0!==e&&e.raw_data_initialization&&null!==(t=this.meta)&&void 0!==t&&t.raw_data_initialization&&"object"===K(null===(n=this.meta)||void 0===n?void 0:n.raw_data_initialization)){var r=JSON.parse(JSON.stringify(null===(i=this.meta)||void 0===i?void 0:i.raw_data_initialization));return"google"in r&&(null==r||delete r.google),"apple"in r?null==r?void 0:r.apple:r}return null}},{key:"isShippingRequired",value:function(){var e;return null===(e=this.meta)||void 0===e?void 0:e.request_shipping}},{key:"hasShippingOptions",value:function(){var e,t;return(null===(e=this.meta)||void 0===e?void 0:e.request_shipping)&&!(null===(t=this.meta)||void 0===t||!t.shipping_options)}},{key:"load",value:function(n){var i=this;if(window.Promise)return this.checkAvailability().then(function(e){var t;e?(i.isShippingRequired()&&i.hasShippingOptions()&&(i.selectedShippingOption=null===(t=i.meta)||void 0===t?void 0:t.shipping_options[0],i.latestShippingData.shippingMethod=i.formatShippingOptions([i.selectedShippingOption])[0]),i.mount(n)):i.eventEmitter.emit(yn.UNAVAILABLE,{wallet:se.APPLE})}).catch(function(e){return console.error("Error checking ApplePay availability",e)});this.eventEmitter.emit(yn.UNAVAILABLE,{wallet:se.APPLE})}},{key:"update",value:function(e){var t,n,i;if(this.latestShippingChangePromiseResolve&&this.latestShippingChangePromiseReject){if(!e.success||!e.body)return this.latestShippingChangePromiseReject();var r=null===(t=null==e?void 0:e.body)||void 0===t?void 0:t.amount,o=null===(n=null==e?void 0:e.body)||void 0===n?void 0:n.shipping_options;r&&(this.meta.amount=r),o&&(this.meta.shipping_options=o,this.selectedShippingOption=o?o[0]:void 0);var a=P({newTotal:{label:null===(i=this.meta)||void 0===i?void 0:i.amount_label,amount:this.meta.amount.toString(),type:"final"}},this.isShippingRequired()&&this.hasShippingOptions()&&{newShippingMethods:this.formatShippingOptions(this.meta.shipping_options)});this.paymentSession.completeShippingContactSelection(a),this.latestShippingChangePromiseResolve({})}}},{key:"checkAvailability",value:function(){var n=this;return new Promise(function(t,e){window.ApplePaySession&&ApplePaySession||t(!1),ApplePaySession.canMakePaymentsWithActiveCard(n.getMerchantId()).then(function(e){return t(e)}).catch(function(e){return t(!1)})})}},{key:"mount",value:function(e){var t=this,n=document.createElement("style");n.innerHTML=this.createButtonStyle(),document.head.appendChild(n);var i=document.createElement("div");i.onclick=function(){return t.onApplePayButtonClicked()},i.classList.add("paydock-apple-container","apple-pay-button","apple-pay-button-black"),e.getElement().appendChild(i)}},{key:"onApplePayButtonClicked",value:function(){this.paymentSession=new ApplePaySession(3,this.createRequest()),this.paymentSession.onvalidatemerchant=this.onValidateMerchant,this.paymentSession.onpaymentauthorized=this.onPaymentAuthorized,this.paymentSession.onshippingcontactselected=this.onShippingContactSelected,this.paymentSession.onshippingmethodselected=this.onShippingMethodSelected,this.paymentSession.begin()}},{key:"createRequest",value:function(){var e,t=this.getMetaRawDataInitialization();return t&&"object"===(void 0===t?"undefined":K(t))&&("object"===K(t.total)?t.total.amount=this.meta.amount.toString():t.total={label:(null===(e=this.meta)||void 0===e?void 0:e.amount_label)||"",amount:this.meta.amount.toString()},this.isShippingRequired()&&this.hasShippingOptions()&&(t.shippingMethods=this.formatShippingOptions(this.meta.shipping_options))),t||P(P(P({countryCode:this.meta.country.toUpperCase(),currencyCode:this.meta.currency.toUpperCase(),merchantCapabilities:["supports3DS","supportsCredit","supportsDebit"],supportedNetworks:["visa","masterCard","amex","discover"]},this.meta.show_billing_address&&{requiredBillingContactFields:["name","postalAddress"]}),this.isShippingRequired()&&P({requiredShippingContactFields:["postalAddress","name","phone","email"]},this.hasShippingOptions()&&{shippingMethods:this.formatShippingOptions(this.meta.shipping_options)})),{total:{label:this.meta.amount_label,amount:this.meta.amount.toString(),type:"final"}})}},{key:"getMerchantSession",value:function(){var e=this;return new Promise(function(t,n){return e.eventEmitter.emit(yn.CALLBACK,{data:P({request_type:"CREATE_SESSION",wallet_type:se.APPLE,session_id:window.location.hostname},e.isShippingRequired()&&{request_shipping:e.meta.request_shipping}),onSuccess:function(e){return t(e)},onError:function(e){return n(e)}})})}},{key:"createButtonStyle",value:function(){var e,t;return"\n .paydock-apple-container {\n width: 100%;\n height: 40px;\n }\n\n @supports (-webkit-appearance: -apple-pay-button) {\n .apple-pay-button {\n display: inline-block;\n -webkit-appearance: -apple-pay-button;\n -apple-pay-button-type: "+((null===(e=this.getMetaStyles())||void 0===e?void 0:e.button_type)||"plain")+"\n }\n .apple-pay-button-black {\n -apple-pay-button-style: black;\n }\n .apple-pay-button-white {\n -apple-pay-button-style: white;\n }\n .apple-pay-button-white-with-line {\n -apple-pay-button-style: white-outline;\n }\n }\n\n @supports not (-webkit-appearance: -apple-pay-button) {\n .apple-pay-button {\n display: inline-block;\n background-size: 100% 60%;\n background-repeat: no-repeat;\n background-position: 50% 50%;\n border-radius: 5px;\n padding: 0px;\n box-sizing: border-box;\n min-width: 200px;\n min-height: 32px;\n max-height: 64px;\n -apple-pay-button-type: "+((null===(t=this.getMetaStyles())||void 0===t?void 0:t.button_type)||"plain")+"\n }\n .apple-pay-button-black {\n background-image: -webkit-named-image(apple-pay-logo-white);\n background-color: black;\n }\n .apple-pay-button-white {\n background-image: -webkit-named-image(apple-pay-logo-black);\n background-color: white;\n }\n .apple-pay-button-white-with-line {\n background-image: -webkit-named-image(apple-pay-logo-black);\n background-color: white;\n border: .5px solid black;\n }\n }\n "}}]),xn);function xn(e,t,n,i){l(this,xn);var u=c(this,(xn.__proto__||Object.getPrototypeOf(xn)).call(this,e,t));return u.gatewayName=n,u.eventEmitter=i,u.latestShippingData={},u.onValidateMerchant=function(e){u.getMerchantSession().then(function(e){u.paymentSession.completeMerchantValidation(e)}).catch(function(e){return console.error("Error fetching merchant session",e)})},u.onPaymentAuthorized=function(e){var t,n=e.payment,i=n.token,r=n.billingContact,o=n.shippingContact;u.latestShippingData.shippingContact=o;var a=null===(t=u.selectedShippingOption)||void 0===t?void 0:t.type,s=[null==o?void 0:o.givenName,null==o?void 0:o.familyName].join(" ").trim();u.eventEmitter.emit(yn.PAYMENT_METHOD_SELECTED,{data:P({customer:{payment_source:P(P({wallet_type:se.APPLE},s&&{card_name:s}),{type:i.paymentMethod.type,card_scheme:i.paymentMethod.network,address_line1:null==r?void 0:r.addressLines[0],address_line2:null==r?void 0:r.addressLines[1],address_country:null==r?void 0:r.countryCode,address_city:null==r?void 0:r.locality,address_postcode:null==r?void 0:r.postalCode,address_state:null==r?void 0:r.administrativeArea,ref_token:i.paymentData?JSON.stringify(i.paymentData):""})}},u.meta.request_shipping&&o&&{shipping:P(P(P({},a&&{method:a}),u.hasShippingOptions()&&{options:u.meta.shipping_options}),{address_line1:o.addressLines[0],address_line2:o.addressLines[1],address_country:o.countryCode,address_city:o.locality,address_postcode:o.postalCode,address_state:o.administrativeArea,contact:{first_name:o.givenName,last_name:o.familyName,email:o.emailAddress,phone:o.phoneNumber}})}),onSuccess:function(){return u.paymentSession.completePayment(ApplePaySession.STATUS_SUCCESS)},onError:function(){return u.paymentSession.completePayment(ApplePaySession.STATUS_FAILURE)}})},u.onShippingContactSelected=function(e){u.latestShippingData.shippingContact=e.shippingContact;var t=u.parseUpdateData(u.latestShippingData);return u.eventEmitter.emit(yn.UPDATE,t),new Promise(function(e,t){u.latestShippingChangePromiseResolve=e,u.latestShippingChangePromiseReject=t})},u.onShippingMethodSelected=function(e){var t,n;u.latestShippingData.shippingMethod=e.shippingMethod;var i={newTotal:{label:u.meta.amount_label||(null===(n=null===(t=u.getMetaRawDataInitialization())||void 0===t?void 0:t.total)||void 0===n?void 0:n.label),amount:u.meta.amount.toString(),type:"final"}};u.paymentSession.completeShippingMethodSelection(i)},u.parseUpdateData=function(e){var t,n,i,r,o,a,s,u;return P({shipping:{address_city:null===(t=null==e?void 0:e.shippingContact)||void 0===t?void 0:t.locality,address_state:null===(n=null==e?void 0:e.shippingContact)||void 0===n?void 0:n.administrativeArea,address_postcode:null===(i=null==e?void 0:e.shippingContact)||void 0===i?void 0:i.postalCode,address_country:null===(r=null==e?void 0:e.shippingContact)||void 0===r?void 0:r.countryCode}},(null==e?void 0:e.shippingMethod)&&{selected_shipping_option:{id:null===(o=null==e?void 0:e.shippingMethod)||void 0===o?void 0:o.identifier,label:null===(a=null==e?void 0:e.shippingMethod)||void 0===a?void 0:a.label,detail:null===(s=null==e?void 0:e.shippingMethod)||void 0===s?void 0:s.detail,amount:null===(u=null==e?void 0:e.shippingMethod)||void 0===u?void 0:u.amount}})},u.formatShippingOptions=function(e){return e.map(function(e){return{identifier:e.id,label:e.label,detail:(null==e?void 0:e.detail)||"",amount:e.amount}})},u.eventEmitter=i,u}var Ln=(s(In,gn),n(In,[{key:"getGatewayName",value:function(){return this.gatewayName}},{key:"getMerchantId",value:function(){var e,t,n;return null===(n=null===(t=null===(e=this.meta)||void 0===e?void 0:e.credentials)||void 0===t?void 0:t[se.GOOGLE])||void 0===n?void 0:n.merchant}},{key:"getMetaStyles",value:function(){var e,t,n,i;return"object"===K(null===(e=this.meta)||void 0===e?void 0:e.style)&&"google"in(null===(t=this.meta)||void 0===t?void 0:t.style)?null===(i=null===(n=this.meta)||void 0===n?void 0:n.style)||void 0===i?void 0:i.google:null}},{key:"getMetaRawDataInitialization",value:function(){var e,t,n,i,r;return null!==(e=this.meta)&&void 0!==e&&e.raw_data_initialization&&"object"===K(null===(t=this.meta)||void 0===t?void 0:t.raw_data_initialization)&&"google"in(null===(n=this.meta)||void 0===n?void 0:n.raw_data_initialization)?null===(r=null===(i=this.meta)||void 0===i?void 0:i.raw_data_initialization)||void 0===r?void 0:r.google:null}},{key:"isShippingRequired",value:function(){return this.meta.request_shipping}},{key:"hasShippingOptions",value:function(){return this.meta.request_shipping&&!!this.meta.shipping_options}},{key:"load",value:function(a){var s=this;if(window.Promise)return new Promise(function(r,o){var e=document.createElement("script");e.type="text/javascript",e.src="https://pay.google.com/gp/p/js/pay.js",e.async=!0,e.onload=function(){var e,t,n,i;if(!window.google)return s.eventEmitter.emit(yn.UNAVAILABLE,{wallet:se.GOOGLE}),void o();s.isShippingRequired()&&s.hasShippingOptions()&&(s.selectedShippingOption=null===(e=s.meta)||void 0===e?void 0:e.shipping_options[0]),s.paymentsClient=new google.payments.api.PaymentsClient(P({merchantInfo:P(P({},null!==(t=s.meta)&&void 0!==t&&t.merchant_name?{merchantName:null===(n=s.meta)||void 0===n?void 0:n.merchant_name}:{}),{merchantId:s.getMerchantId()}),paymentDataCallbacks:P({onPaymentAuthorized:function(e){return s.onPaymentAuthorized(e)}},s.isShippingRequired()&&{onPaymentDataChanged:function(e){return s.onPaymentDataChanged(e)}})},"live"===(null===(i=s.meta)||void 0===i?void 0:i.gateway_mode)?{environment:"PRODUCTION"}:{environment:"TEST"})),s.checkAvailability().then(function(e){if(!e)return s.eventEmitter.emit(yn.UNAVAILABLE,{wallet:se.GOOGLE}),void o();s.mount(a),r()})},document.head.appendChild(e)});this.eventEmitter.emit(yn.UNAVAILABLE,{wallet:se.GOOGLE})}},{key:"update",value:function(e){var t,n,i,r;if(this.latestShippingChangePromiseResolve&&this.latestShippingChangePromiseReject){if(!e.success)return this.latestShippingChangePromiseReject();var o=(null===(t=null==e?void 0:e.body)||void 0===t?void 0:t.amount)||this.meta.amount,a=(null===(n=null==e?void 0:e.body)||void 0===n?void 0:n.shipping_options)||this.meta.shipping_options;o&&(this.meta.amount=o),a&&(this.meta.shipping_options=a,this.selectedShippingOption=a?a[0]:void 0);var s=P({newTransactionInfo:{totalPriceStatus:"FINAL",totalPriceLabel:this.meta.amount_label,totalPrice:null===(i=this.meta.amount)||void 0===i?void 0:i.toString(),currencyCode:this.meta.currency.toUpperCase(),countryCode:this.meta.country.toUpperCase()}},this.isShippingRequired()&&this.hasShippingOptions()&&{newShippingOptionParameters:{defaultSelectedOptionId:null===(r=this.selectedShippingOption)||void 0===r?void 0:r.id,shippingOptions:this.formatShippingOptions(this.meta.shipping_options)}});this.latestShippingChangePromiseResolve(s)}}},{key:"checkAvailability",value:function(){return this.paymentsClient.isReadyToPay(this.createRequest()).then(function(e){return!!e.result}).catch(function(e){return console.error("Error checking GooglePay availability",e),!1})}},{key:"mount",value:function(e){var t,n,i,r=this;e.getElement().appendChild(this.paymentsClient.createButton({onClick:function(){return r.loadPaymentData()},buttonType:(null===(t=this.getMetaStyles())||void 0===t?void 0:t.button_type)||"pay",buttonSizeMode:(null===(n=this.getMetaStyles())||void 0===n?void 0:n.button_size_mode)||"fill",buttonColor:(null===(i=this.getMetaStyles())||void 0===i?void 0:i.button_color)||"default"}))}},{key:"loadPaymentData",value:function(){this.paymentsClient.loadPaymentData(this.createPaymentDataRequest()).catch(function(){console.error("Error while loading payment data")})}},{key:"onPaymentAuthorized",value:function(f){var e,t,n,i,r,o,a,s,u,l,c,d,h,p,v,m=this,y=null===(n=null===(t=null===(e=f.paymentMethodData)||void 0===e?void 0:e.info)||void 0===t?void 0:t.billingAddress)||void 0===n?void 0:n.address1,g=null===(o=null===(r=null===(i=f.paymentMethodData)||void 0===i?void 0:i.info)||void 0===r?void 0:r.billingAddress)||void 0===o?void 0:o.address2,_=null===(a=null==f?void 0:f.shippingAddress)||void 0===a?void 0:a.address1,k=null===(s=null==f?void 0:f.shippingAddress)||void 0===s?void 0:s.address2,E=null===(u=this.selectedShippingOption)||void 0===u?void 0:u.type,w=null===(l=null==f?void 0:f.shippingAddress)||void 0===l?void 0:l.countryCode,b=null===(c=null==f?void 0:f.shippingAddress)||void 0===c?void 0:c.locality,C=null===(d=null==f?void 0:f.shippingAddress)||void 0===d?void 0:d.postalCode,S=null===(h=null==f?void 0:f.shippingAddress)||void 0===h?void 0:h.administrativeArea,O=null===(p=null==f?void 0:f.shippingAddress)||void 0===p?void 0:p.name,T=null==f?void 0:f.email,A=null===(v=null==f?void 0:f.shippingAddress)||void 0===v?void 0:v.phoneNumber;return new Promise(function(t){var e,n,i,r,o,a,s,u,l,c,d,h,p,v;return m.eventEmitter.emit(yn.PAYMENT_METHOD_SELECTED,{data:P({customer:{payment_source:P(P(P(P({wallet_type:se.GOOGLE,type:f.paymentMethodData.type,card_scheme:null===(n=null===(e=f.paymentMethodData)||void 0===e?void 0:e.info)||void 0===n?void 0:n.cardNetwork},y&&{address_line1:y}),g&&{address_line2:g}),g&&{address_line2:g}),{address_country:null===(o=null===(r=null===(i=f.paymentMethodData)||void 0===i?void 0:i.info)||void 0===r?void 0:r.billingAddress)||void 0===o?void 0:o.countryCode,address_city:null===(u=null===(s=null===(a=f.paymentMethodData)||void 0===a?void 0:a.info)||void 0===s?void 0:s.billingAddress)||void 0===u?void 0:u.locality,address_postcode:null===(d=null===(c=null===(l=f.paymentMethodData)||void 0===l?void 0:l.info)||void 0===c?void 0:c.billingAddress)||void 0===d?void 0:d.postalCode,address_state:null===(v=null===(p=null===(h=f.paymentMethodData)||void 0===h?void 0:h.info)||void 0===p?void 0:p.billingAddress)||void 0===v?void 0:v.administrativeArea,ref_token:f.paymentMethodData.tokenizationData.token})}},m.isShippingRequired()&&{shipping:P(P(P(P(P(P(P(P(P({},E&&{method:E}),m.hasShippingOptions()&&{options:m.meta.shipping_options}),_&&{address_line1:_}),k&&{address_line2:k}),w&&{address_country:w}),b&&{address_city:b}),C&&{address_postcode:C}),S&&{address_state:S}),{contact:P(P(P({},O&&{first_name:O}),T&&{email:T}),A&&{phone:A})})}),onSuccess:function(){return t({transactionState:"SUCCESS"})},onError:function(e){return t({transactionState:"ERROR",error:{intent:"PAYMENT_AUTHORIZATION",message:e,reason:"PAYMENT_DATA_INVALID"}})}})})}},{key:"onPaymentDataChanged",value:function(e){var n=this;if(this.isShippingRequired()){var t=this.parseUpdateData(e);return this.eventEmitter.emit(yn.UPDATE,t),new Promise(function(e,t){n.latestShippingChangePromiseResolve=e,n.latestShippingChangePromiseReject=t})}}},{key:"createRequest",value:function(){return{apiVersion:2,apiVersionMinor:0,allowedPaymentMethods:[this.createCardData()],existingPaymentMethodRequired:!0}}},{key:"createPaymentDataRequest",value:function(){var e,t,n,i;this.isShippingRequired()&&this.hasShippingOptions()&&(this.selectedShippingOption=null===(e=this.meta)||void 0===e?void 0:e.shipping_options[0]);var r=this.getMerchantId();return P({apiVersion:2,apiVersionMinor:0,allowedPaymentMethods:[P(P({},this.createCardData()),{tokenizationSpecification:{type:"PAYMENT_GATEWAY",parameters:{gateway:"paydock",gatewayMerchantId:r}}})],transactionInfo:{totalPriceStatus:"FINAL",totalPriceLabel:this.meta.amount_label,totalPrice:this.meta.amount.toString(),currencyCode:this.meta.currency.toUpperCase(),countryCode:this.meta.country.toUpperCase()},merchantInfo:P(P({},null!==(t=this.meta)&&void 0!==t&&t.merchant_name?{merchantName:null===(n=this.meta)||void 0===n?void 0:n.merchant_name}:{}),{merchantId:r}),callbackIntents:["PAYMENT_AUTHORIZATION"].concat(o(this.isShippingRequired()?["SHIPPING_ADDRESS"]:[]),o(this.hasShippingOptions()?["SHIPPING_OPTION"]:[]))},this.isShippingRequired()&&P({shippingAddressRequired:!0},this.hasShippingOptions()&&{shippingOptionRequired:!0,shippingOptionParameters:{defaultSelectedOptionId:null===(i=this.selectedShippingOption)||void 0===i?void 0:i.id,shippingOptions:this.formatShippingOptions(this.meta.shipping_options)}}))}},{key:"createCardData",value:function(){return this.getMetaRawDataInitialization()||{type:"CARD",parameters:{allowedAuthMethods:["PAN_ONLY","CRYPTOGRAM_3DS"],allowedCardNetworks:["AMEX","DISCOVER","INTERAC","JCB","MASTERCARD","VISA"],billingAddressRequired:!!this.meta.show_billing_address}}}}]),In);function In(e,t,n,i){l(this,In);var u=c(this,(In.__proto__||Object.getPrototypeOf(In)).call(this,e,t));return u.gatewayName=n,u.eventEmitter=i,u.parseUpdateData=function(n){var e,t,i,r,o,a,s=null===(t=null===(e=u.meta)||void 0===e?void 0:e.shipping_options)||void 0===t?void 0:t.find(function(e){var t;return e.id===(null===(t=null==n?void 0:n.shippingOptionData)||void 0===t?void 0:t.id)});return P({shipping:{address_city:null===(i=n.shippingAddress)||void 0===i?void 0:i.locality,address_state:null===(r=n.shippingAddress)||void 0===r?void 0:r.administrativeArea,address_postcode:null===(o=null==n?void 0:n.shippingAddress)||void 0===o?void 0:o.postalCode,address_country:null===(a=null==n?void 0:n.shippingAddress)||void 0===a?void 0:a.countryCode}},s&&{selected_shipping_option:{id:null==s?void 0:s.id,label:null==s?void 0:s.label,detail:null==s?void 0:s.detail,type:null==s?void 0:s.type}})},u.formatShippingOptions=function(e){return e.map(function(e){return{id:e.id,label:e.label,description:(null==e?void 0:e.detail)||""}})},u.eventEmitter=i,u}var Un,Dn,Nn=(s(Mn,gn),n(Mn,[{key:"initializeChildWallets",value:function(){var e,t,n,i,r,o;this.childWallets=[];var a=!(null===(n=null===(t=null===(e=this.meta)||void 0===e?void 0:e.credentials)||void 0===t?void 0:t.apple)||void 0===n||!n.merchant),s=!(null===(o=null===(r=null===(i=this.meta)||void 0===i?void 0:i.credentials)||void 0===r?void 0:r.google)||void 0===o||!o.merchant);!a||this.meta.wallets&&!this.meta.wallets.includes(se.APPLE)||this.childWallets.push(new Rn(this.publicKey,this.meta,this.getGatewayName(),this.eventEmitter)),!s||this.meta.wallets&&!this.meta.wallets.includes(se.GOOGLE)||this.childWallets.push(new Ln(this.publicKey,this.meta,this.getGatewayName(),this.eventEmitter))}},{key:"getGatewayName",value:function(){return oe.MASTERCARD}},{key:"setEnv",value:function(t){return this.childWallets.forEach(function(e){return e.setEnv(t)}),this}},{key:"update",value:function(t){this.childWallets.forEach(function(e){return e.update(t)})}}]),Mn);function Mn(){return l(this,Mn),c(this,(Mn.__proto__||Object.getPrototypeOf(Mn)).apply(this,arguments))}(Dn=Un=Un||{})[Dn.PUBLIC_KEY=0]="PUBLIC_KEY",Dn[Dn.TOKEN=1]="TOKEN";var Fn=(n(jn,[{key:"setEnv",value:function(e,t){return this.env.setEnv(e,t),this}},{key:"setAuthType",value:function(){return this.authType=h.validateJWT(this.auth)?Un.TOKEN:Un.PUBLIC_KEY}},{key:"getClient",value:function(e,t){var i=this,r=new XMLHttpRequest;return r.open(e,this.env.getConf().url+t,!0),r.setRequestHeader("Content-Type","application/json; charset=UTF-8"),this.setAuthHeader(r),v.version&&(r.setRequestHeader(v.headerKeys.version,v.version),r.setRequestHeader(v.headerKeys.type,v.type)),{config:r,send:function(e,t,n){r.onload=function(){return i.parser({text:r.responseText,status:r.status},t,n)},r.send(JSON.stringify(e))}}}},{key:"getClientPromise",value:function(e,t){var i=this,r=new XMLHttpRequest;return r.open(e,this.env.getConf().url+t,!0),r.setRequestHeader("Content-Type","application/json; charset=UTF-8"),this.setAuthHeader(r),v.version&&(r.setRequestHeader(v.headerKeys.version,v.version),r.setRequestHeader(v.headerKeys.type,v.type)),{config:r,send:function(n){return new Promise(function(e,t){r.onload=function(){return e({text:r.responseText,status:r.status})},r.send(JSON.stringify(n))}).then(function(e){return i.parserPromise(e)})}}}},{key:"parser",value:function(e,t,n){var i=e.text,r=e.status;try{var o=JSON.parse(i);if(200<=r&&r<300||302===r)return t(o.resource.data);n(o.error||{message:"unknown error"})}catch(e){}}},{key:"parserPromise",value:function(e){var t=e.text,n=e.status;try{var i=JSON.parse(t);return 200<=n&&n<300||302===n?Promise.resolve(i.resource.data):Promise.reject(i.error||{message:"unknown error"})}catch(e){return Promise.reject(e)}}},{key:"setAuthHeader",value:function(e){switch(this.authType){case Un.PUBLIC_KEY:e.setRequestHeader("x-user-public-key",this.auth);break;case Un.TOKEN:e.setRequestHeader("x-access-token",this.auth)}}}]),jn);function jn(e,t){l(this,jn),this.auth=e,this.authType=t||this.setAuthType(),this.env=new G(z)}var Hn=(n(Bn,[{key:"walletCapture",value:function(e){return this.api.getClientPromise("POST","/v1/charges/wallet/capture").send(e)}},{key:"walletCallback",value:function(e){return this.api.getClientPromise("POST","/v1/charges/wallet/callback").send(e)}},{key:"standalone3dsProcess",value:function(e){return this.api.getClientPromise("POST","/v1/charges/standalone-3ds/process").send(e)}},{key:"standalone3dsHandle",value:function(){return this.api.getClientPromise("GET","/v1/charges/standalone-3ds/handle").send(void 0)}}]),Bn);function Bn(e){l(this,Bn),this.api=e}var zn,qn=(n(Wn,[{key:"getConfig",value:function(e){var t="/v1/services/:service_id/config".replace(":service_id",e);return this.api.getClientPromise("GET",t).send(void 0)}}]),Wn);function Wn(e){l(this,Wn),this.api=e}(zn||(zn={})).VISA_SRC="VisaSRC";var Vn=(s(Yn,Fn),n(Yn,[{key:"charge",value:function(){return new Hn(this)}},{key:"service",value:function(){return new qn(this)}}]),Yn);function Yn(){return l(this,Yn),c(this,(Yn.__proto__||Object.getPrototypeOf(Yn)).apply(this,arguments))}var Kn=(s(Gn,gn),n(Gn,[{key:"load",value:function(e){var t=this;this.storageDispatcher.create(function(){return t.mount(e)})}},{key:"setEnv",value:function(e){return a(Gn.prototype.__proto__||Object.getPrototypeOf(Gn.prototype),"setEnv",this).call(this,e),this.storageDispatcher.setEnv(e),this}},{key:"mount",value:function(e){var t,n,i,r,o=this,a={};null!==(t=this.meta)&&void 0!==t&&t.style&&"object"===K(null===(n=this.meta)||void 0===n?void 0:n.style)&&(a=JSON.parse(JSON.stringify((null===(i=this.meta)||void 0===i?void 0:i.style.afterpay)||(null===(r=this.meta)||void 0===r?void 0:r.style))));var s=this.getButton(a);s.onclick=function(){return o.onAfterPayButtonClicked()};var u=this.getButtonStyle(a);e.getElement().appendChild(s),e.getElement().appendChild(u)}},{key:"onAfterPayButtonClicked",value:function(){var e,t,n=this,i=document.createElement("script"),r=null===(e=this.meta)||void 0===e?void 0:e.country;i.type="text/javascript",i.src="live"===(null===(t=this.meta)||void 0===t?void 0:t.gateway_mode)?"https://portal.afterpay.com/afterpay.js":"https://portal.sandbox.afterpay.com/afterpay.js",i.async=!0,i.defer=!0,i.onload=function(){window.AfterPay.initialize({countryCode:r}),n.storageDispatcher.push({intent:Mt.WIDGET_SESSION,data:{token:n.token}},{onSuccess:function(){n.getCheckoutSession().then(function(e){window.AfterPay.redirect({token:e.ref_token})}).catch(function(e){window.AfterPay.close(),n.eventEmitter.emit(yn.UNAVAILABLE,{err:e})})},onError:function(){console.error("Error initializing Afterpay wallet"),window.AfterPay.close(),n.eventEmitter.emit(yn.UNAVAILABLE,{})}})},document.head.appendChild(i)}},{key:"getCheckoutSession",value:function(){var e=this;return new Promise(function(t,n){return e.eventEmitter.emit(yn.CALLBACK,{data:{request_type:"CREATE_SESSION",wallet_type:se.AFTERPAY},onSuccess:function(e){t(e)},onError:function(e){n(e)}})})}},{key:"getButton",value:function(e){var t=document.createElement("button");return t.classList.add("afterpay-checkout-btn"),t.setAttribute("type","button"),t.innerHTML='\n <div class="afterpay-checkout-btn__wrapper">\n <svg viewBox="0 0 390 94"\n height="'+this.getHeight(e)+'"\n xmlns="http://www.w3.org/2000/svg">\n <g fill="currentColor">\n <path\n d="M388.6 21.4l-34.8 71.8h-14.4l13-26.8-20.5-45h14.8l13.2 30.1 14.3-30.1zM41 46.9c0-8.6-6.2-14.6-13.9-14.6s-13.9 6.1-13.9 14.6c0 8.4 6.2 14.6 13.9 14.6 7.6 0 13.9-6.1 13.9-14.6m.1 25.5v-6.6c-3.8 4.6-9.4 7.4-16.1 7.4C11 73.2.4 62 .4 46.9c0-15 11-26.4 24.9-26.4 6.5 0 12 2.9 15.8 7.3v-6.4h12.5v51H41.1zM114.6 61.1c-4.4 0-5.6-1.6-5.6-5.9V32.5h8.1V21.4H109V8.9H96.1v12.4H79.5v-5.1c0-4.3 1.6-5.9 6.1-5.9h2.8V.4h-6.2C71.6.4 66.6 3.9 66.6 14.5v6.8h-7.1v11.1h7.1v39.9h12.9V32.5h16.6v25c0 10.4 4 14.9 14.4 14.9h6.6V61.1h-2.5zM160.7 42.3c-.9-6.6-6.3-10.6-12.6-10.6s-11.5 3.9-12.9 10.6h25.5zm-25.6 7.9c.9 7.5 6.3 11.8 13.2 11.8 5.4 0 9.6-2.6 12-6.6h13.2c-3.1 10.8-12.7 17.7-25.5 17.7-15.4 0-26.2-10.8-26.2-26.2 0-15.4 11.4-26.5 26.5-26.5 15.2 0 26.2 11.2 26.2 26.5 0 1.1-.1 2.2-.3 3.3h-39.1zM256.2 46.9c0-8.3-6.2-14.6-13.9-14.6s-13.9 6.1-13.9 14.6c0 8.4 6.2 14.6 13.9 14.6 7.6 0 13.9-6.4 13.9-14.6m-40.4 46.3V21.4h12.5V28c3.8-4.7 9.4-7.5 16.1-7.5 13.8 0 24.6 11.3 24.6 26.3s-11 26.4-24.9 26.4c-6.4 0-11.7-2.6-15.4-6.8v26.8h-12.9zM314.2 46.9c0-8.6-6.2-14.6-13.9-14.6-7.6 0-13.9 6.1-13.9 14.6 0 8.4 6.2 14.6 13.9 14.6s13.9-6.1 13.9-14.6m.1 25.5v-6.6c-3.8 4.6-9.4 7.4-16.1 7.4-14 0-24.6-11.2-24.6-26.3 0-15 11-26.4 24.9-26.4 6.5 0 12 2.9 15.8 7.3v-6.4h12.5v51h-12.5zM193.2 26.4s3.2-5.9 11-5.9c3.3 0 5.5 1.2 5.5 1.2v13s-4.7-2.9-9.1-2.3c-4.3.6-7.1 4.6-7.1 9.9v30.2h-13v-51H193v4.9h.2z" />\n </g>\n </svg>\n <svg viewBox="0 0 107 96"\n height="'+this.getHeight(e)+'"\n xmlns="http://www.w3.org/2000/svg">\n <path\n d="M99 19.5L84.2 11l-15-8.6c-10-5.7-22.4 1.5-22.4 13v1.9c0 1.1.6 2 1.5 2.6l7 4c1.9 1.1 4.4-.3 4.4-2.5v-4.6c0-2.3 2.5-3.7 4.4-2.6l13.8 7.9L91.6 30c2 1.1 2 4 0 5.1L77.9 43l-13.8 7.9c-2 1.1-4.4-.3-4.4-2.6V46c0-11.5-12.4-18.7-22.4-13l-15 8.6-14.8 8.5c-10 5.7-10 20.2 0 26l14.8 8.5 15 8.6c10 5.7 22.4-1.5 22.4-13v-1.9c0-1.1-.6-2-1.5-2.6l-7-4c-1.9-1.1-4.4.3-4.4 2.5v4.6c0 2.3-2.5 3.7-4.4 2.6l-13.8-7.9-13.7-7.9c-2-1.1-2-4 0-5.1l13.7-7.9 13.8-7.9c2-1.1 4.4.3 4.4 2.6v2.3c0 11.5 12.4 18.7 22.4 13l15-8.6L99 45.5c10.1-5.8 10.1-20.2 0-26"\n fill="currentColor" />\n </svg>\n </div>\n ',t}},{key:"getButtonStyle",value:function(e){var t=document.createElement("style"),n=this.generateButtonColor(e.button_type);return t.innerText="\n .afterpay-checkout-btn {\n outline: none;\n border: none;\n border-radius: "+this.getHeight(e)+";\n padding: 0;\n margin: 0;\n transition: all 300ms;\n cursor: pointer;\n }\n\n .afterpay-checkout-btn:active {\n opacity: 0.7;\n }\n\n .afterpay-checkout-btn__wrapper {\n display: flex;\n align-items: center;\n padding: 10px 20px;\n color: "+n.color+";\n background-color: "+n.background+";\n border-radius: "+this.getHeight(e)+";\n }\n ",t}},{key:"generateButtonColor",value:function(e){switch(e){case"black":return{color:"#B2FCE3",background:"#000"};case"mint":return{color:"#000",background:"#B2FCE3"};default:return{color:"#fff",background:"#000"}}}},{key:"getHeight",value:function(e){return e.height?Number.isNaN(Number(e.height))?e.height:e.height+"px":"40px"}}]),Gn);function Gn(e,t){l(this,Gn);var n=c(this,(Gn.__proto__||Object.getPrototypeOf(Gn)).call(this,e,t));return n.token=e,n.storageDispatcher=new jt("afterpay.wallet.paydock"),n}var Jn="unavailable",Xn="update",Zn="paymentSuccessful",Qn="paymentError",$n="paymentInReview",ei=(n(ti,[{key:"load",value:function(){try{this.setupServiceCallbacks(),this.service.load(this.container)}catch(e){throw this.eventEmitter.emit(Jn,null),e}}},{key:"update",value:function(e){this.service.update(e)}},{key:"setEnv",value:function(e,t){this.api.setEnv(e,t),this.service.setEnv(e)}},{key:"close",value:function(){"function"==typeof this.service.close&&this.service.close()}},{key:"on",value:function(e,t){var n=this;return e===Xn&&(this.hasUpdateHandler=!0),"function"==typeof t?this.eventEmitter.subscribe(e,t):new Promise(function(t){return n.eventEmitter.subscribe(e,function(e){return t(e)})})}},{key:"onUnavailable",value:function(e){var t=this;return"function"==typeof e?this.eventEmitter.subscribe(Jn,e):new Promise(function(e){return t.eventEmitter.subscribe(Jn,function(){return e()})})}},{key:"onUpdate",value:function(e){var n=this;return this.hasUpdateHandler=!0,"function"==typeof e?this.eventEmitter.subscribe(Xn,e):new Promise(function(t){return n.eventEmitter.subscribe(Xn,function(e){return t(e)})})}},{key:"onPaymentSuccessful",value:function(e){var n=this;return"function"==typeof e?this.eventEmitter.subscribe(Zn,e):new Promise(function(t){return n.eventEmitter.subscribe(Zn,function(e){return t(e)})})}},{key:"onPaymentInReview",value:function(e){var n=this;return"function"==typeof e?this.eventEmitter.subscribe($n,e):new Promise(function(t){return n.eventEmitter.subscribe($n,function(e){return t(e)})})}},{key:"onPaymentError",value:function(e){var n=this;return"function"==typeof e?this.eventEmitter.subscribe(Qn,e):new Promise(function(t){return n.eventEmitter.subscribe(Qn,function(e){return t(e)})})}},{key:"setupServiceCallbacks",value:function(){this.setupUnavailableCallback(),this.setupUpdateCallback(),this.setupWalletCallback(),this.setupPaymentCallback(),this.setupPaymentSuccessCallback(),this.setupPaymentInReviewCallback(),this.setupPaymentErrorCallback()}},{key:"setupUnavailableCallback",value:function(){var t=this;this.service.on(yn.UNAVAILABLE,function(e){return t.eventEmitter.emit(Jn,{event:Jn,data:e})})}},{key:"setupUpdateCallback",value:function(){var t=this;this.service.on(yn.UPDATE,function(e){return t.hasUpdateHandler?t.eventEmitter.emit(Xn,{event:Xn,data:e}):t.update({success:!0})})}},{key:"setupWalletCallback",value:function(){var r=this;this.service.on(yn.CALLBACK,function(e){var t=e.data,n=e.onSuccess,i=e.onError;r.api.charge().walletCallback(t).then(function(e){return n(e)},function(e){return i(e.message)})})}},{key:"setupPaymentCallback",value:function(){var r=this;this.service.on(yn.PAYMENT_METHOD_SELECTED,function(e){var n=e.data,i=e.onSuccess,t=e.onError;r.api.charge().walletCapture(n).then(function(e){"function"==typeof i&&i();var t="inreview"===e.status?$n:Zn;r.eventEmitter.emit(t,{event:t,data:P(P({},e),n.customer&&{payer_name:n.customer.payer_name,payer_email:n.customer.payer_email,payer_phone:n.customer.payer_phone})})},function(e){"function"==typeof t&&t(e),r.eventEmitter.emit(Qn,{event:Qn,data:e})})})}},{key:"setupPaymentSuccessCallback",value:function(){var t=this;this.service.on(yn.PAYMENT_SUCCESS,function(e){return t.eventEmitter.emit(Zn,{event:Zn,data:e})})}},{key:"setupPaymentInReviewCallback",value:function(){var t=this;this.service.on(yn.PAYMENT_IN_REVIEW,function(e){return t.eventEmitter.emit($n,{event:$n,data:e})})}},{key:"setupPaymentErrorCallback",value:function(){var t=this;this.service.on(yn.PAYMENT_ERROR,function(e){return t.eventEmitter.emit(Qn,{event:Qn,data:e})})}}]),ti);function ti(e,t,n){l(this,ti),this.hasUpdateHandler=!1;var i=h.validateJWT(t);if(!i)throw new Error("Invalid charge token");this.eventEmitter=new it,this.container=new Pe(e);var r=h.extractMeta(i.body);switch(this.api=new Vn(t,Un.TOKEN),r.gateway.type){case oe.STRIPE:this.service=new An(r.credentials.client_auth,P(P({},n),{amount:r.charge.amount,currency:r.charge.currency}));break;case oe.FLYPAY:this.service=new kn(t,P(P({},n),{id:r.charge.id,gateway_mode:r.gateway.mode,amount:r.charge.amount,currency:r.charge.currency,reference:r.charge.reference}));break;case oe.PAYPAL:this.service=new wn(r.credentials.client_auth,P(P({},n),{id:r.charge.id,gateway_mode:r.gateway.mode,amount:r.charge.amount,currency:r.charge.currency,capture:r.charge.capture}));break;case oe.MASTERCARD:this.service=new Nn("",P(P({},n),{credentials:r.gateway.credentials,amount:r.charge.amount,currency:r.charge.currency,gateway_mode:r.gateway.mode}));break;case oe.AFTERPAY:this.service=new Kn(t,P(P({},n),{id:r.charge.id,gateway_mode:r.gateway.mode,amount:r.charge.amount,currency:r.charge.currency,reference:r.charge.reference}))}}var ni=(n(ii,[{key:"setStyles",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setStyle(t,e[t])}},{key:"setStyle",value:function(e,t){-1!==ie.values(de).indexOf(e)?this.link.setParams(r({},e,t)):console.warn("Widget::setStyle[s: unsupported style param "+e)}},{key:"setRefId",value:function(e){this.link.setParams({ref_id:e})}},{key:"setLimit",value:function(e){this.link.setParams({limit:e})}},{key:"setEnv",value:function(e,t){for(var n in this.link.setEnv(e,t),this.configs)this.configs.hasOwnProperty(n)&&this.configs[n].setEnv(e,t)}},{key:"getEnv",value:function(){this.link.getEnv()}},{key:"getIFrameUrl",value:function(){return this.link.getUrl()}},{key:"filterByGatewayIds",value:function(e){this.link.setParams({gateway_ids:e.join(",")})}},{key:"filterByTypes",value:function(e){var t=[],n=!0,i=!1,r=void 0;try{for(var o,a=e[Symbol.iterator]();!(n=(o=a.next()).done);n=!0){var s=o.value;e.hasOwnProperty(s)&&(-1===ie.values(le).indexOf(s)?console.warn("PaymentSourceWidget::filterByTypes: unsupported type "+s):t.push(s))}}catch(e){i=!0,r=e}finally{try{!n&&a.return&&a.return()}finally{if(i)throw r}}this.link.setParams({payment_source_types:t.join(",")})}},{key:"setLanguage",value:function(e){this.link.setParams({language:e})}}]),ii);function ii(e,t){l(this,ii),this.configs=[],this.configTokens=[],this.link=new te("/payment-sources"),this.link.setParams(P({query_token:t},h.validateJWT(e)?{access_token:e}:{public_key:e})),v.version&&this.link.setParams({sdk_version:v.version,sdk_type:v.type})}var ri=(s(oi,ni),n(oi,[{key:"load",value:function(){this.iFrame.load(this.getIFrameUrl(),{title:"Payment Sources"})}},{key:"on",value:function(e,t){this.event.on(e,this.link.getParams().widget_id,t)}},{key:"hide",value:function(e){console.info("PayDock SDK"),this.iFrame.hide(e)}},{key:"show",value:function(){this.iFrame.show()}},{key:"reload",value:function(){this.iFrame.remove(),this.load()}},{key:"onSelectInsert",value:function(t,n){this.on(Ie.SELECT,function(e){Te.insertToInput(t,n,e)})}}]),oi);function oi(e,t,n){l(this,oi);var i=c(this,(oi.__proto__||Object.getPrototypeOf(oi)).call(this,t,n));return i.container=new Pe(e),i.iFrame=new xe(i.container),i.event=new Ue(window),i}var ai,si,ui={visibility:"hidden",border:"0",width:"0",height:"0"};(si=ai=ai||{}).SUCCESS="success",si.ERROR="error",si.PENDING="pending";var li="chargeAuthSuccess",ci="chargeAuthReject",di="chargeAuthDecoupled",hi="chargeAuthChallenge",pi="chargeAuthInfo",vi="error",fi=(n(mi,[{key:"load",value:function(e,t){var n=e.initialization_url,i=e.secondary_url,r=e.charge_3ds_id;try{this.setupIFrameEvents(r),this.initializeIFrames(n,i,t)}catch(e){this.eventEmitter.emit(vi,this.parseError(e,r))}}},{key:"initializeIFrames",value:function(e,t,n,i){var r=!(3<arguments.length&&void 0!==i)||i,o=this.container.getElement();if(o){var a=document.createElement("div");if(a.setAttribute("id","paydock_authorization_iframe"),o.appendChild(a),this.browserAndChallengeContainer=new Pe("#paydock_authorization_iframe"),this.iFrameAuthorization=new xe(this.browserAndChallengeContainer),this.iFrameAuthorization.load(e,{title:n}),t){var s=document.createElement("div");s.setAttribute("id","paydock_secondary_iframe"),o.appendChild(s),this.monitoringContainer=new Pe("#paydock_secondary_iframe"),this.iFrameSecondaryUrl=new xe(this.monitoringContainer),this.iFrameSecondaryUrl.load(t,{title:n})}else this.iFrameSecondaryUrl=void 0;this.hideIframes(r)}}},{key:"hideIframes",value:function(e){var t,n=!(0<arguments.length&&void 0!==e)||e;for(var i in ui)ui.hasOwnProperty(i)&&(n&&this.iFrameAuthorization.setStyle(i,ui[i]),null!==(t=this.iFrameSecondaryUrl)&&void 0!==t&&t.setStyle(i,ui[i]))}},{key:"setupIFrameEvents",value:function(e){var t=this;this.iFrameEvent.on(Ie.CHARGE_AUTH,e,function(e){"MethodSkipped"===e.status||"MethodFinished"===e.status?(e.info&&t.eventEmitter.emit(pi,{info:e.info}),t.performAuthentication(e)):"AuthTimedOut"!==e.status&&"invalid_event"!==e.status||t.eventEmitter.emit(ci,t.parseHandleResponse({status:e.status},e.charge_3ds_id))}),this.iFrameEvent.on(Ie.CHARGE_AUTH_SUCCESS,e,function(e){t.processResult(e.charge_3ds_id)})}},{key:"parseResultData",value:function(e,t){return{status:e.status,charge_3ds_id:t}}},{key:"parseHandleResponse",value:function(e,t){var n=e.status,i=e.result;return{status:n,charge_3ds_id:t,result:{description:null==i?void 0:i.description}}}},{key:"parseError",value:function(e,t){return{charge_3ds_id:t,error:e}}},{key:"processResult",value:function(n){var i=this;this.resultRead||(this.resultRead=!0,this.api.charge().standalone3dsHandle().then(function(e){var t;i.iFrameAuthorization.remove(),null!==(t=i.iFrameSecondaryUrl)&&void 0!==t&&t.remove(),e.status===ai.SUCCESS?i.eventEmitter.emit(li,i.parseResultData(e,n)):i.eventEmitter.emit(ci,i.parseResultData(e,n))},function(e){i.eventEmitter.emit(vi,i.parseError(e,n))}))}},{key:"externalAPI",value:function(e,t){var i=new XMLHttpRequest;return i.open(e,t,!0),new Promise(function(t,n){i.onload=function(){try{var e=JSON.parse(i.responseText);t(e)}catch(e){n(e)}},i.send()})}},{key:"doPolling",value:function(t,n){var i=this;this.externalAPI("GET",t).then(function(e){if(e.event&&"AuthResultNotReady"!==e.event){if("AuthResultReady"!==e.event)throw new Error("Event not supported");i.processResult(n)}else setTimeout(function(){i.doPolling(t,n)},2e3)}).catch(function(e){return i.eventEmitter.emit(vi,i.parseError(e,n))})}},{key:"performAuthentication",value:function(e){var t,i=this,r=e.charge_3ds_id;this.iFrameAuthorization.remove(),null!==(t=this.iFrameSecondaryUrl)&&void 0!==t&&t.remove(),this.api.charge().standalone3dsProcess({charge_3ds_id:r}).then(function(e){var t,n;if("success"===e.status)i.eventEmitter.emit(li,i.parseHandleResponse(e,r));else{if("pending"!==e.status)return i.eventEmitter.emit(ci,i.parseHandleResponse(e,r));null!==(t=null==e?void 0:e.result)&&void 0!==t&&t.challenge?(i.eventEmitter.emit(hi,i.parseHandleResponse(e,r)),i.initializeIFrames(e.result.challenge_url,void 0,"Authentication Challenge",!1),e.result.secondary_url&&i.doPolling(e.result.secondary_url,r)):null!==(n=null==e?void 0:e.result)&&void 0!==n&&n.decoupled_challenge&&(i.eventEmitter.emit(di,i.parseHandleResponse(e,r)),e.result.secondary_url&&i.doPolling(e.result.secondary_url,r))}},function(e){i.eventEmitter.emit(vi,i.parseError(e,r))})}}]),mi);function mi(e,t,n){l(this,mi),this.container=e,this.api=t,this.eventEmitter=n,this.resultRead=!1,this.iFrameEvent=new Ue(window)}var yi,gi,_i="GPayments",ki=(n(Ei,[{key:"load",value:function(e,t){var n=h.validateJWT(e);if(!n)throw new Error("Invalid charge token");var i=h.extractData(n.body),r=new Vn(e,Un.TOKEN);switch(r.setEnv(this.env,this.alias),i.service_type){case _i:new fi(this.container,r,this.eventEmitter).load(i,t.title)}}},{key:"setEnv",value:function(e,t){this.env=e,this.alias=t}}]),Ei);function Ei(e,t){l(this,Ei),this.env=W,this.container=e,this.eventEmitter=t}(gi=yi=yi||{}).HTML="html",gi.URL="url",gi.STANDALONE_3DS="standalone_3ds";var wi=(n(bi,[{key:"load",value:function(){this.token.format===yi.HTML?this.iFrame.loadFromHtml(this.token.content,{title:"3d secure authentication"}):this.token.format===yi.URL?this.iFrame.load(this.token.content,{title:"3d secure authentication"}):this.token.format===yi.STANDALONE_3DS?this.standalone3dsService.load(this.token.content,{title:"3d secure authentication"}):console.error("Token contain unsupported payload")}},{key:"setEnv",value:function(e,t){for(var n in this.link.setEnv(e,t),this.standalone3dsService.setEnv(e,t),this.configs)this.configs.hasOwnProperty(n)&&this.configs[n].setEnv(e,t)}},{key:"getEnv",value:function(){return this.link.getEnv()}},{key:"on",value:function(e,t){var n=this;return this.token.format===yi.STANDALONE_3DS?"function"==typeof t?this.eventEmitter.subscribe(e,t):new Promise(function(t){return n.eventEmitter.subscribe(e,function(e){return t(e)})}):"function"==typeof t?this.event.on(e,this.link.getParams().ref_id,t):new Promise(function(t){return n.event.on(e,n.link.getParams().ref_id,function(e){return t(e)})})}},{key:"hide",value:function(e){this.iFrame.hide(e)}},{key:"show",value:function(){this.iFrame.show()}},{key:"reload",value:function(){this.iFrame.remove(),this.load()}}],[{key:"extractToken",value:function(e){return JSON.parse(window.atob(e))}}]),bi);function bi(e,t){l(this,bi),this.configs=[],this.link=new te("/3ds/webhook"),this.token=bi.extractToken(t),this.link.setParams({ref_id:this.token.charge_3ds_id}),this.container=new Pe(e),this.iFrame=new xe(this.container),this.eventEmitter=new it,this.standalone3dsService=new ki(this.container,this.eventEmitter),this.event=new Ue(window)}var Ci="/v1/charges/3ds",Si=(n(Oi,[{key:"preAuth",value:function(e,t){return"function"==typeof t?this.api.getClient("POST",Ci).send(P(P({},e),{_3ds:P(P({},e._3ds),{browser_details:{name:st.getBrowserName(),java_enabled:st.isJavaEnabled().toString(),language:st.getLanguage(),screen_height:st.getScreenHeight().toString(),screen_width:st.getScreenWidth().toString(),time_zone:st.getTimezoneOffset().toString(),color_depth:st.getColorDepth().toString()}})}),function(e){t(e)}):this.api.getClientPromise("POST",Ci).send(P(P({},e),{_3ds:P(P({},e._3ds),{browser_details:{name:st.getBrowserName(),java_enabled:st.isJavaEnabled().toString(),language:st.getLanguage(),screen_height:st.getScreenHeight().toString(),screen_width:st.getScreenWidth().toString(),time_zone:st.getTimezoneOffset().toString(),color_depth:st.getColorDepth().toString()}})}))}}]),Oi);function Oi(e){l(this,Oi),this.api=e}var Ti,Ai,Pi=(s(Ri,Fn),n(Ri,[{key:"getBrowserDetails",value:function(){return{name:st.getBrowserName(),java_enabled:st.isJavaEnabled().toString(),language:st.getLanguage(),screen_height:st.getScreenHeight().toString(),screen_width:st.getScreenWidth().toString(),time_zone:st.getTimezoneOffset().toString(),color_depth:st.getColorDepth().toString()}}},{key:"charge",value:function(){return new Si(this)}}]),Ri);function Ri(e){l(this,Ri);var t=c(this,(Ri.__proto__||Object.getPrototypeOf(Ri)).call(this,e));return t.publicKey=t.auth,t}(Ai=Ti=Ti||{}).AFTER_LOAD="after_load",Ai.SYSTEM_ERROR="system_error",Ai.CVV_SECURE_CODE_REQUESTED="cvv_secure_code_requested",Ai.CARD_NUMBER_SECURE_CODE_REQUESTED="card_number_secure_code_requested",Ai.ACCESS_FORBIDDEN="access_forbidden",Ai.SESSION_EXPIRED="session_expired",Ai.OPERATION_FORBIDDEN="operation_forbidden";var xi=(s(Li,Ue),n(Li,[{key:"on",value:function(e,t,n){for(var i in Ti)Ti.hasOwnProperty(i)&&e===Ti[i]&&this.listeners.push({event:e,listener:n,widget_id:t})}}]),Li);function Li(){return l(this,Li),c(this,(Li.__proto__||Object.getPrototypeOf(Li)).apply(this,arguments))}var Ii=(n(Ui,[{key:"setEnv",value:function(e,t){this.link.setEnv(e,t)}},{key:"on",value:function(e,t){var n=this;return"function"==typeof t?this.event.on(e,this.link.getParams().widget_id,t):new Promise(function(t){return n.event.on(e,n.link.getParams().widget_id,function(e){return t(e)})})}},{key:"setStyles",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setStyle(t,e[t])}},{key:"setStyle",value:function(e,t){-1!==ie.values(de).indexOf(e)?this.link.setParams(r({},e,t)):console.warn("Widget::setStyle[s: unsupported style param "+e)}},{key:"load",value:function(){this.iFrame.load(this.link.getUrl(),{title:"Vault Display"})}}]),Ui);function Ui(e,t){l(this,Ui),this.validationData={},this.configs=[],this.container=new Pe(e),this.iFrame=new xe(this.container),this.triggerElement=new Me(this.iFrame),this.event=new xi(window),this.vaultDisplayToken=t,this.link=new te("/vault-display"),this.link.setParams({vault_display_token:t})}function Di(){l(this,Di)}var Ni,Mi;Di.buttonContainerStyles="display: flex; flex-direction: column; justify-content: center; align-items: center;",Di.buttonStyles="color: #ffff; background-color: #ffbe24; border: none; width: 100%; min-height: 40px; font-size: 16px; font-weight: bold; line-height: 19px; letter-spacing: 0.7px; text-transform: uppercase; border-radius: 4px; margin-bottom: 15px; cursor: pointer;",Di.footerContainerStyles="display: flex; flex: 1; flex-wrap: wrap; justify-content: center;",Di.footerTextStyles="text-align: center; color: #666666; margin: 2px 0;",Di.verticalLineStyle="display: inline-block; padding: 0.5px; background-color: #E5E5E5; height: 15px;",Di.clickToPayAllCardsStyle="height: 17px; margin-left: 8px; vertical-align: middle; padding-top: 3px;",(Mi=Ni=Ni||{}).CHECKOUT_BUTTON_LOADED="checkoutButtonLoaded",Mi.CHECKOUT_BUTTON_CLICKED="checkoutButtonClicked",Mi.IFRAME_LOADED="iframeLoaded",Mi.CHECKOUT_READY="checkoutReady",Mi.CHECKOUT_COMPLETED="checkoutCompleted",Mi.CHECKOUT_ERROR="checkoutError";var Fi={BUTTON_TEXT_COLOR:"button_text_color",PRIMARY_COLOR:"primary_color",FONT_FAMILY:"font_family",CARD_SCHEMES:"card_schemes"},ji="visa",Hi="mastercard",Bi="amex",zi="discover",qi="/images/visa-src/Chevron_Large_V.png",Wi="/images/visa-src/vmad.svg",Vi=function(e,n){return e.every(function(e,t){return e===n[t]})},Yi=(n(Ki,[{key:"setupIFrameEvents",value:function(){var n=this,e=this.link.getParams().widget_id;this.iFrameEvent.on(Ni.CHECKOUT_READY,e,function(e){var t=e.data;n.eventEmitter.emit(Ni.CHECKOUT_READY,t)}),this.iFrameEvent.on(Ni.CHECKOUT_COMPLETED,e,function(e){var t=e.data;n.eventEmitter.emit(Ni.CHECKOUT_COMPLETED,t)}),this.iFrameEvent.on(Ni.CHECKOUT_ERROR,e,function(e){var t=e.data;n.eventEmitter.emit(Ni.CHECKOUT_ERROR,t)}),this.autoResize&&this.useAutoResize(!0)}},{key:"load",value:function(){var e,t=this,n=document.createElement("div");n.setAttribute("style",Di.buttonContainerStyles);var i=document.createElement("button");i.setAttribute("style",Di.buttonStyles),this.meta.customizations.primary_color&&(i.style.backgroundColor=this.meta.customizations.primary_color),this.meta.customizations.button_text_color&&(i.style.color=this.meta.customizations.button_text_color),i.innerHTML="Checkout";var r=document.createElement("div");r.setAttribute("style",Di.footerContainerStyles),document.createElement("div").setAttribute("style",Di.verticalLineStyle);var o=document.createElement("p");o.setAttribute("style",Di.footerTextStyles),o.innerHTML="WE ACCEPT";var a=document.createElement("img");a.setAttribute("style",Di.clickToPayAllCardsStyle),a.src=this.link.getBaseUrl()+(""+function(e,t){var n=1<arguments.length&&void 0!==t&&t;if(!e||!Array.isArray(e))return n?"/images/visa-src/Chevron_Large_VMAD.png":Wi;var i=e.sort();return Vi([Bi,Hi,ji],i)?n?"/images/visa-src/Chevron_Large_VMA.png":"/images/visa-src/logos/Networks_Large_VMA.png":Vi([Hi,ji],i)?n?"/images/visa-src/Chevron_Large_VM.png":"/images/visa-src/logos/Networks_Large_VM.png":Vi([Hi],i)?n?"/images/visa-src/Chevron_Large_M.png":"/images/visa-src/logos/master-logo.png":Vi([zi],i)?n?"/images/visa-src/Chevron_Large_D.png":"/images/visa-src/logos/Networks_Large_D.png":Vi([ji],i)?n?qi:"/images/visa-src/logos/visa-logo.png":n?qi:Wi}(null===(e=this.meta.customizations)||void 0===e?void 0:e.card_schemes,!0)),i.onclick=function(){t.eventEmitter.emit(Ni.CHECKOUT_BUTTON_CLICKED,{}),t.iFrame.load(t.link.getUrl(),{title:"Visa SRC checkout"}),t.iFrame.getElement().onload=function(){return t.eventEmitter.emit(Ni.IFRAME_LOADED,{})}},n.appendChild(i),n.appendChild(r),r.appendChild(o),r.appendChild(a),this.buttonContainer.getElement().appendChild(n),this.eventEmitter.emit(Ni.CHECKOUT_BUTTON_LOADED,{})}},{key:"getEnv",value:function(){return this.link.getEnv()}},{key:"hideButton",value:function(){this.buttonContainer.getElement()&&(this.buttonContainer.getElement().style.display="none")}},{key:"showButton",value:function(){this.buttonContainer.getElement()&&(this.buttonContainer.getElement().style.display="block")}},{key:"hideCheckout",value:function(){this.iFrame&&this.iFrame.hide()}},{key:"showCheckout",value:function(){this.iFrame&&this.iFrame.show()}},{key:"reload",value:function(){this.iFrame.remove(),this.load()}},{key:"useAutoResize",value:function(e){var n=this;this.autoResize&&!e||(this.autoResize=!0,this.iFrameEvent.on("resize",this.link.getParams().widget_id,function(e){var t=e.data;n.iFrame.getElement()&&(n.iFrame.getElement().scrolling="no",t.height&&n.iFrame.setStyle("height",t.height+"px"))}))}}]),Ki);function Ki(e,t,n,i,r,o,a,s,u){l(this,Ki),this.meta=r,this.eventEmitter=o,this.autoResize=a,this.link=new te("/secure-remote-commerce/visa"),this.link.setParams(P({service_id:n,public_key:i},r&&{meta:JSON.stringify(r)})),v.version&&this.link.setParams({sdk_version:v.version,sdk_type:v.type}),s&&this.link.setEnv(s,u),this.iFrameContainer=new Pe(t),this.iFrame=new xe(this.iFrameContainer),this.buttonContainer=new Pe(e),this.iFrameEvent=new Ue(window),this.setupIFrameEvents()}var Gi=(n(Ji,[{key:"setStyles",value:function(e){for(var t in e)e.hasOwnProperty(t)&&this.setStyle(t,e[t])}},{key:"setStyle",value:function(e,t){-1!==ie.values(Fi).indexOf(e)?this.style[e]=t:console.warn("Widget::setStyle[s: unsupported style param "+e)}},{key:"load",value:function(){var n=this;this.provider||this.api.service().getConfig(this.service_id).then(function(e){var t=e.type;switch(n.meta.customizations=n.style,t){case zn.VISA_SRC:n.provider=new Yi(n.button_selector,n.iframe_selector,n.service_id,n.public_key_or_access_token,n.meta,n.eventEmitter,n.autoResize,n.env,n.alias)}n.provider&&n.provider.load()})}},{key:"setEnv",value:function(e,t){this.provider||(this.env=e,this.alias=t,this.api.setEnv(e,t))}},{key:"getEnv",value:function(){return this.provider?this.provider.getEnv():this.env}},{key:"on",value:function(e,t){var n=this;return"function"==typeof t?this.eventEmitter.subscribe(e,t):new Promise(function(t){return n.eventEmitter.subscribe(e,function(e){return t(e)})})}},{key:"hideButton",value:function(e){this.provider&&"function"==typeof this.provider.hideButton&&this.provider.hideButton(e)}},{key:"showButton",value:function(){this.provider&&"function"==typeof this.provider.showButton&&this.provider.showButton()}},{key:"hideCheckout",value:function(e){this.provider&&"function"==typeof this.provider.hideCheckout&&this.provider.hideCheckout(e)}},{key:"showCheckout",value:function(){this.provider&&"function"==typeof this.provider.showCheckout&&this.provider.showCheckout()}},{key:"reload",value:function(){this.provider&&this.provider.reload()}},{key:"useAutoResize",value:function(){this.autoResize=!0,this.provider&&"function"==typeof this.provider.useAutoResize&&this.provider.useAutoResize()}}]),Ji);function Ji(e,t,n,i,r){l(this,Ji),this.button_selector=e,this.iframe_selector=t,this.service_id=n,this.public_key_or_access_token=i,this.meta=r,this.autoResize=!1,this.style={},this.api=new Vn(i,Un.PUBLIC_KEY),this.eventEmitter=new it}e.AfterpayCheckoutButton=rn,e.Api=Pi,e.CHECKOUT_BUTTON_EVENT=Je,e.Canvas3ds=wi,e.Configuration=ge,e.ELEMENT=pe,e.EVENT=Ie,e.ExternalCheckoutBuilder=$e,e.ExternalCheckoutChecker=tt,e.FORM_FIELD=ce,e.HtmlMultiWidget=Be,e.HtmlPaymentSourceWidget=ri,e.HtmlWidget=qe,e.MultiWidget=Se,e.PAYMENT_TYPE=me,e.PURPOSE=ye,e.PaymentSourceBuilder=Jt,e.PaymentSourceWidget=ni,e.PaypalCheckoutButton=un,e.SRC=Gi,e.STYLABLE_ELEMENT=ke,e.STYLABLE_ELEMENT_STATE=Ee,e.STYLE=de,e.SUPPORTED_CARD_TYPES=ve,e.TEXT=he,e.TRIGGER=Ne,e.TYPE=Gt,e.VAULT_DISPLAY_STYLE={BACKGROUND_COLOR:"background_color",TEXT_COLOR:"text_color",BORDER_COLOR:"border_color",BUTTON_COLOR:"button_color",FONT_SIZE:"font_size",FONT_FAMILY:"font_family"},e.VaultDisplayWidget=Ii,e.WalletButtons=ei,e.ZipmoneyCheckoutButton=tn,Object.defineProperty(e,"__esModule",{value:!0})});
@@ -12,5 +12,5 @@ SDK.headerKeys = Object.freeze({
12
12
  // the empty string is set in case if version not provided.
13
13
  //
14
14
  // e.g: grunt build --sdk-version=v1.0.0
15
- SDK._version = '{{paydock-client-sdk-version}}';
15
+ SDK._version = 'v1.91.11-beta';
16
16
  //# sourceMappingURL=../../src/lib/configs/sdk.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@paydock/client-sdk",
3
3
  "description": "Paydock client sdk",
4
- "version": "1.90.1",
4
+ "version": "1.91.11-beta",
5
5
  "homepage": "https://paydock.com",
6
6
  "author": {},
7
7
  "bugs": {