@primer-io/checkout-web 2.45.3 → 2.45.5
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.
- package/dist/Primer.js +1 -1
- package/dist/index.d.ts +21 -7
- package/package.json +1 -1
package/dist/Primer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(h,a){typeof exports=="object"&&typeof module=="object"?module.exports=a():typeof define=="function"&&define.amd?define([],a):typeof exports=="object"?exports.Primer=a():h.Primer=a()})(this,()=>(()=>{var j={476:()=>{},962:()=>{},473:()=>{}},h={};function a(D){var P=h[D];if(P!==void 0)return P.exports;var L=h[D]={exports:{}};return j[D](L,L.exports,a),L.exports}a.d=(D,P)=>{for(var L in P)a.o(P,L)&&!a.o(D,L)&&Object.defineProperty(D,L,{enumerable:!0,get:P[L]})},a.o=(D,P)=>Object.prototype.hasOwnProperty.call(D,P),a.r=D=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(D,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(D,"__esModule",{value:!0})};var w={};return(()=>{"use strict";a.r(w),a.d(w,{CheckoutUXFlow:()=>gr,ErrorCode:()=>xr,EventTypes:()=>Gr,HeadlessManagerType:()=>Kr,PaymentFlow:()=>wr,PaymentInstrumentType:()=>vr,PaymentMethodData:()=>ze.PaymentMethodData,PaymentMethodType:()=>$,Primer:()=>Ze,SuccessScreenType:()=>Fr,ThreeDSecureStatus:()=>kr,TokenType:()=>pr,isStripeOptionsDropInWithFullMandateText:()=>Qe,preloadPrimer:()=>me});function D(r){return r?new Promise(e=>{setTimeout(e,r)}):Promise.resolve()}const P=8,L=100,mr=100;function Vr(r){return{enabled:r?.enabled??!1,maxRetries:P,initialBackoff:L,retryNetworkErrors:!0,retry500Errors:!1,maxJitter:mr}}function Wr(r,e,t){const o=r*Math.pow(2,e-1),A=Math.random()*t;return Math.min(o+A,Number.MAX_SAFE_INTEGER)}async function X(r,e,t,o=D){let A=0;const _=Vr(e);if(!_.enabled)return r();for(;;)try{const i=await r();if(A){let E=`Request succeeded after ${A} retries.`;typeof i=="object"&&i&&"status"in i&&(E+=` Status code: ${i.status}`),t?.({messageType:"RETRY_SUCCESS",message:E,severity:"INFO"})}return i}catch(i){const E=i,n=A>=_.maxRetries,s=E.isNetworkError&&!_.retryNetworkErrors,R=E.status&&E.status>=500&&!_.retry500Errors;if(n||s||R){let T=`Failed after ${A} retries. `;throw n?T+=`Reached maximum retries (${_.maxRetries}).`:s?T+="Network error encountered and retryNetworkErrors is disabled.":R&&(T+="HTTP 500 error encountered and retry500Errors is disabled."),T+=` Last error: ${E.message}`,t?.({messageType:"RETRY_FAILED",message:T,severity:"ERROR",errorBody:JSON.stringify(i,Object.getOwnPropertyNames(i))}),new Error(T,{cause:i})}A++;const O=Wr(_.initialBackoff,A,_.maxJitter);let u="Unknown error";E.isNetworkError?u="Network error":E.status&&(u=`HTTP ${E.status} error`),t?.({messageType:"RETRY",message:`Retry attempt ${A}/${_.maxRetries} due to: ${u}. Error details: ${E.message}. Waiting for ${O.toFixed(2)}ms before next attempt.`,severity:"WARN",errorBody:JSON.stringify(i,Object.getOwnPropertyNames(i))}),await o(O)}}function $r(r,e){const t=document.createElement(r);return Object.entries(e).forEach(([o,A])=>t.setAttribute(o,A)),t}function z(r,e,t){return document.querySelector(`${r}[${e}^="${t}"]`)}async function Q(r,e,t,o,A,_){const{analytics:i,name:E=e,retryConfig:n}=_;await X(()=>new Promise((R,O)=>{const u=z(r,t,e)||$r(r,{...o,[t]:e});u.onload=()=>{i?.sdkFunctionEvent({name:E,params:[`${r.charAt(0).toUpperCase()+r.slice(1)} loaded successfully: ${e}`]}),R()},u.onerror=()=>{u.remove(),O(new Error(`${A}: ${e}`))},u.parentNode||document.head.appendChild(u)}),n,R=>i?.messageEvent({...R,url:e}))}function jr(r,e={}){return z("script","src",r)&&window.__Primer?(e.analytics?.sdkFunctionEvent({name:e.name??r,params:["Script already loaded"]}),Promise.resolve()):Q("script",r,"src",{...e.attributes,async:"",crossorigin:"anonymous"},"Can't load Primer SDK",e)}function Xr(r,e={}){return Array.from(document.styleSheets).some(t=>t.href===r)?(e.analytics?.sdkFunctionEvent({name:e.name??r,params:["Stylesheet already loaded"]}),Promise.resolve()):Q("link",r,"href",{...e.attributes,rel:"stylesheet"},"Can't load Primer SDK's Stylesheet",e)}let Y;async function Z(r){return Y||(Y=Promise.all([jr("https://sdk.primer.io/web/v2.45.3/PrimerCoreSDK.min.js",{analytics:r,name:"loadPrimerScript"}),Xr("https://sdk.primer.io/web/v2.45.3/Checkout.css",{analytics:r,name:"loadPrimerCss"})]).then(()=>{const o=window.__Primer;return delete window.__Primer,o}).catch(o=>{throw Y=void 0,o}),Y)}let k={cache:new Map};typeof window<"u"&&(window.__primerCache__??(window.__primerCache__=k),k=window.__primerCache__);const N=()=>k.cache,q=1e3*60*60,zr=30,J=50;function y(){if(N().size<=zr)return;const r=Date.now();for(const[e,t]of N())t.exp<r&&N().delete(e);if(N().size>J)for(const[e]of N()){if(N().size<=J)break;N().delete(e)}}function ye({key:r,ttl:e=q},t){e?N().set(r,{promise:Promise.resolve(t),exp:Date.now()+e}):N().delete(r)}function Qr(r){if(!r)return _=>_();const{key:e,refresh:t=!1,usePrimerSessionCacheTtlHeader:o=!1,ttl:A=q}=r;return async _=>{const i=Date.now(),E=N().get(e);if(!t&&E&&E.exp>i)return E.promise;E&&N().delete(e);const n=_().then(s=>{const R=Date.now();let O=A;return o&&(O=(Number(s.headers.get("x-primer-session-cache-ttl"))||0)*1e3),O?N().set(e,{promise:Promise.resolve({...s,source:"CACHE"}),exp:R+O}):N().delete(e),y(),s},s=>{throw N().delete(e),s});return N().set(e,{promise:n,exp:i+A}),y(),n}}const rr=()=>er.randomUUID?.()||Zr(),Zr=()=>("10000000-1000-4000-8000"+-1e11).replace(/[018]/g,r=>(r^qr()>>r/4).toString(16)),qr=()=>(er.getRandomValues?.(new Uint8Array(1))[0]??Math.random()*16)&15,er=typeof crypto<"u"?crypto:{};var rt=a(476),et=a(962),v=(r=>(r.REQUEST_START="REQUEST_START",r.REQUEST_END="REQUEST_END",r))(v||{}),p=(r=>(r.START="START",r.END="END",r))(p||{});const Jr={createHeadless:"HEADLESS_LOADING",showExpressCheckout:"EXPRESS_LOADING",showUniversalCheckout:"DROP_IN_LOADING",showVaultManager:"VAULT_MANAGER_LOADING"};var d=(r=>(r.NETWORK_CALL_EVENT="NETWORK_CALL_EVENT",r.CRASH_EVENT="CRASH_EVENT",r.TIMER_EVENT="TIMER_EVENT",r.MESSAGE_EVENT="MESSAGE_EVENT",r.V1_EVENT="V1_EVENT",r.SDK_FUNCTION_EVENT="SDK_FUNCTION_EVENT",r))(d||{});const yr={get(r,e){let t;try{switch(r){case"PRIMER_SDK_VERSION":t="v2.45.3";break;case"PRIMER_ASSETS_URL":t=process.env.PRIMER_ASSETS_URL;break;case"PRIMER_CORE_API_URL":t=process.env.PRIMER_CORE_API_URL;break;case"PRIMER_PCI_API_URL":t=process.env.PRIMER_PCI_API_URL;break;case"PRIMER_MODULES_URL":t=process.env.PRIMER_MODULES_URL;break;case"PRIMER_BUILD_INTEGRATION_BUILDER":t=process.env.PRIMER_BUILD_INTEGRATION_BUILDER;break;case"SENTRY_DSN":t=process.env.SENTRY_DSN;break;default:break}}catch{}return t||e}};var re=(r=>(r.CHARGING="CHARGING",r.NOT_CHARGING="NOT_CHARGING",r))(re||{});async function ee(){if(typeof navigator>"u")return;const r=await navigator.getBattery?.();return{memoryFootprint:performance.memory?.usedJSHeapSize,screen:{height:screen?.height,width:screen?.width},platformVersion:navigator.platform,userAgent:navigator.userAgent,locale:navigator.language,batteryLevel:r?.level,batteryStatus:r?.charging?"CHARGING":"NOT_CHARGING"}}const te="WEB",oe=yr.get("PRIMER_SDK_VERSION");async function Ae(r,e,t){return{...t,createdAt:Date.now(),device:await ee(),eventType:r,properties:e,sdkVersion:oe,sdkType:te}}const tr="https://analytics.production.data.primer.io/sdk-logs",_e=tr==="https://analytics.sandbox.data.primer.io/playwright";let I={providers:new Map,timers:new Map,eventsQueue:new Map};typeof window<"u"&&(window.__primerAnalytics__??(window.__primerAnalytics__=I),I=window.__primerAnalytics__);const or=()=>I.providers,b=()=>I.timers,f=()=>I.eventsQueue,Ar=1024*5,Ee=500,M=new Map;function x({url:r=tr,...e}){typeof document<"u"&&document.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&_r(r,!0)});const t=A=>async _=>{if(typeof navigator>"u")return;const i=await Ae(A,_,e),E=s=>se(ne(s));if(_e)return;const n=Er(i,E);ie(r,n)},o={crashEvent:t(d.CRASH_EVENT),messageEvent:t(d.MESSAGE_EVENT),networkCallEvent:t(d.NETWORK_CALL_EVENT),sdkFunctionEvent:t(d.SDK_FUNCTION_EVENT),timerStart:({id:A,..._})=>{const i=`${e.checkoutSessionId}|${A}`;return b().set(i,{start:performance?.now()}),t(d.TIMER_EVENT)({..._,id:A,timerType:p.START})},timerEnd:({id:A,..._})=>{const i=`${e.checkoutSessionId}|${A}`,{start:E=void 0}=b().get(i)??{};b().delete(i);const n=performance?.now(),s=E?n-E:void 0;return t(d.TIMER_EVENT)({..._,id:A,timerType:p.END,duration:s})},v1Event:t(d.V1_EVENT),url:r};return or().set(e.checkoutSessionId,o),o}function H(r){return new Proxy({},{get(e,t){return(or().get(r)??x({checkoutSessionId:r}))[t]}})}function _r(r,e=!1){if(M.has(r)){const A=M.get(r);clearTimeout(A),M.delete(r)}const t=()=>{const A=f().get(r);let _=!1;if(A?.length){try{_=navigator.sendBeacon(r,JSON.stringify(A))}catch(i){_=!0,console.error("Unable to access navigator",i)}_&&f().delete(r)}};if(e){t();return}const o=setTimeout(t,Ee);M.set(r,o)}function ie(r,e){f().has(r)||f().set(r,[]),f().get(r)?.push(e),_r(r)}function Er(r,e){const t=o=>typeof o=="object"&&o!==null?Er(o,e):e(o);return Array.isArray(r)?r.map(t):Object.fromEntries(Object.entries(r).map(([o,A])=>[o,t(A)]))}function se(r){return typeof r=="string"&&r.length>Ar?`${r.slice(0,Ar)}...`:r}function ne(r){return typeof r=="function"?r.name||"function":r}class F{constructor(e,t){this.type=e,this.displayName=t}get specs(){return this.constructor.specs}setOption(e,t){this.options&&(this.options[e]=t)}setupAndValidate(){return Promise.resolve(!0)}mount(){return Promise.resolve(!0)}tokenize(e){return Promise.resolve()}validate(){return Promise.resolve({valid:!0,validationErrors:[]})}setDisabled(e){return Promise.resolve()}focus(){}blur(){}getPaymentElement(){return null}getStore(){}}F.specs={key:"__none__",canVault:!1,buttonManagedByPaymentMethod:!1,hasExportedButtonOptions:!1},F.create=(r,e,t,o)=>{throw new Error("Cannot instantiate BasePaymentMethod")};class ce extends F{async tokenize(e){}}class ae{get session(){const e=this.store.getState().clientSessionInfo;if(!e)throw new Error("Client Context Session does not exist");return e}}const Ne=[Array,ce,ae,Map,Set];function Re(r){const e=new Set,t=20;let o=0;for(;o++<t&&r&&r!==Object.prototype;)Object.getOwnPropertyNames(r).forEach(A=>e.add(A)),r=Object.getPrototypeOf(r);return[...e]}function ir(r,e,t,o,A){if(!t||Ne.some(_=>t instanceof _))return t;switch(typeof t){case"function":return new Proxy(t,{apply(_,i,E=[]){const n={name:e.replace(/^bound /,""),params:E,module:A};r?.sdkFunctionEvent(n);const s=E.map((R,O)=>ir(r,`${O}`,R,o,[A,e,`${O}`].filter(Boolean).join(".")));return _.apply(i,s)}});case"object":return t===o?t:Oe(r,t,[A,e].filter(Boolean).join("."));default:return t}}function Oe(r,e,t){return Object.fromEntries(Re(e).map(o=>{const A=e?.[o],_=ir(r,o,A,A,t);return[o,_]}))}const G=(r,e,t,o)=>({callType:t?v.REQUEST_END:v.REQUEST_START,id:r,errorBody:t?.error&&JSON.stringify(t.error,Object.getOwnPropertyNames(t.error)),method:e.method,responseCode:t?.status,url:e.url,duration:o}),sr=15e3,De=(r,e,t)=>nr(r,"get",e,t),ue=(r,e,t,o)=>nr(r,"post",e,o,JSON.stringify(t)),nr=async(r,e,t,o,A)=>{const _=rr(),i=performance?.now();let E=H(r);const n={method:e,url:t,body:A};E.networkCallEvent(G(_,n));try{const s=await fetch(t,{body:A,method:e,headers:{"content-type":"application/json","x-request-id":_,...o}});if(!s.ok){const T=new Error(`HTTP error! status: ${s.status}`);throw T.status=s.status,T}const R=await s.json();if(t.includes("client-sdk/configuration")){const{primerAccountId:T,clientSession:{clientSessionId:qe,customer:Je}}=R;E=x({checkoutSessionId:r,clientSessionId:qe,customerId:Je?.customerId,primerAccountId:T,url:E.url})}const u=performance?.now()-i;return E.networkCallEvent(G(_,n,{data:R},u)),{data:R,headers:s.headers,status:s.status,source:"NETWORK"}}catch(s){const O=performance?.now()-i;throw Object.assign(s,{isNetworkError:s instanceof TypeError}),E.networkCallEvent(G(_,n,{error:s},O)),s}},cr=(r,e)=>new Promise((t,o)=>{const A=setTimeout(()=>{const _=new Error("Request timed out");_.isNetworkError=!0,o(_)},e);r.then(t).catch(o).finally(()=>clearTimeout(A))}),Te=(r,e)=>{const{headers:t,retryConfig:o,cacheConfig:A,timeout:_=sr,checkoutSessionId:i}=e,E=H(i);return Qr(A)(()=>X(()=>cr(De(i,r,t),_),o,n=>E.messageEvent({...n,url:r})))},tt=(r,e,t)=>{const{headers:o,retryConfig:A,cacheConfig:_,timeout:i=sr,checkoutSessionId:E}=t,n=getAnalytics(E);return cacheRequest(_)(()=>retryWithExponentialBackoff(()=>cr(ue(E,r,e,o),i),A,s=>n.messageEvent({...s,url:r})))},ar="3.6.1",Pe=ar,Le=typeof atob=="function",de=typeof btoa=="function",S=typeof Buffer=="function",Nr=typeof TextDecoder=="function"?new TextDecoder:void 0,Rr=typeof TextEncoder=="function"?new TextEncoder:void 0,l=[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],U=(r=>{let e={};return r.forEach((t,o)=>e[t]=o),e})(l),Se=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,c=String.fromCharCode.bind(String),Or=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):(r,e=t=>t)=>new Uint8Array(Array.prototype.slice.call(r,0).map(e)),Dr=r=>r.replace(/[+\/]/g,e=>e=="+"?"-":"_").replace(/=+$/m,""),ur=r=>r.replace(/[^A-Za-z0-9\+\/]/g,""),Tr=r=>{let e,t,o,A,_="";const i=r.length%3;for(let E=0;E<r.length;){if((t=r.charCodeAt(E++))>255||(o=r.charCodeAt(E++))>255||(A=r.charCodeAt(E++))>255)throw new TypeError("invalid character found");e=t<<16|o<<8|A,_+=l[e>>18&63]+l[e>>12&63]+l[e>>6&63]+l[e&63]}return i?_.slice(0,i-3)+"===".substring(i):_},K=de?r=>btoa(r):S?r=>Buffer.from(r,"binary").toString("base64"):Tr,m=S?r=>Buffer.from(r).toString("base64"):r=>{let t=[];for(let o=0,A=r.length;o<A;o+=4096)t.push(c.apply(null,r.subarray(o,o+4096)));return K(t.join(""))},B=(r,e=!1)=>e?Dr(m(r)):m(r),Ce=r=>{if(r.length<2){var e=r.charCodeAt(0);return e<128?r:e<2048?c(192|e>>>6)+c(128|e&63):c(224|e>>>12&15)+c(128|e>>>6&63)+c(128|e&63)}else{var e=65536+(r.charCodeAt(0)-55296)*1024+(r.charCodeAt(1)-56320);return c(240|e>>>18&7)+c(128|e>>>12&63)+c(128|e>>>6&63)+c(128|e&63)}},Ye=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,Pr=r=>r.replace(Ye,Ce),Lr=S?r=>Buffer.from(r,"utf8").toString("base64"):Rr?r=>m(Rr.encode(r)):r=>K(Pr(r)),C=(r,e=!1)=>e?Dr(Lr(r)):Lr(r),dr=r=>C(r,!0),Ie=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,fe=r=>{switch(r.length){case 4:var e=(7&r.charCodeAt(0))<<18|(63&r.charCodeAt(1))<<12|(63&r.charCodeAt(2))<<6|63&r.charCodeAt(3),t=e-65536;return c((t>>>10)+55296)+c((t&1023)+56320);case 3:return c((15&r.charCodeAt(0))<<12|(63&r.charCodeAt(1))<<6|63&r.charCodeAt(2));default:return c((31&r.charCodeAt(0))<<6|63&r.charCodeAt(1))}},Sr=r=>r.replace(Ie,fe),Cr=r=>{if(r=r.replace(/\s+/g,""),!Se.test(r))throw new TypeError("malformed base64.");r+="==".slice(2-(r.length&3));let e,t="",o,A;for(let _=0;_<r.length;)e=U[r.charAt(_++)]<<18|U[r.charAt(_++)]<<12|(o=U[r.charAt(_++)])<<6|(A=U[r.charAt(_++)]),t+=o===64?c(e>>16&255):A===64?c(e>>16&255,e>>8&255):c(e>>16&255,e>>8&255,e&255);return t},V=Le?r=>atob(ur(r)):S?r=>Buffer.from(r,"base64").toString("binary"):Cr,Yr=S?r=>Or(Buffer.from(r,"base64")):r=>Or(V(r),e=>e.charCodeAt(0)),Ir=r=>Yr(fr(r)),le=S?r=>Buffer.from(r,"base64").toString("utf8"):Nr?r=>Nr.decode(Yr(r)):r=>Sr(V(r)),fr=r=>ur(r.replace(/[-_]/g,e=>e=="-"?"+":"/")),W=r=>le(fr(r)),he=r=>{if(typeof r!="string")return!1;const e=r.replace(/\s+/g,"").replace(/=+$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(e)||!/[^\s0-9a-zA-Z\-_]/.test(e)},lr=r=>({value:r,enumerable:!1,writable:!0,configurable:!0}),hr=function(){const r=(e,t)=>Object.defineProperty(String.prototype,e,lr(t));r("fromBase64",function(){return W(this)}),r("toBase64",function(e){return C(this,e)}),r("toBase64URI",function(){return C(this,!0)}),r("toBase64URL",function(){return C(this,!0)}),r("toUint8Array",function(){return Ir(this)})},Mr=function(){const r=(e,t)=>Object.defineProperty(Uint8Array.prototype,e,lr(t));r("toBase64",function(e){return B(this,e)}),r("toBase64URI",function(){return B(this,!0)}),r("toBase64URL",function(){return B(this,!0)})},Ur={version:ar,VERSION:Pe,atob:V,atobPolyfill:Cr,btoa:K,btoaPolyfill:Tr,fromBase64:W,toBase64:C,encode:C,encodeURI:dr,encodeURL:dr,utob:Pr,btou:Sr,decode:W,isValid:he,fromUint8Array:B,toUint8Array:Ir,extendString:hr,extendUint8Array:Mr,extendBuiltins:()=>{hr(),Mr()}},Me={encode:Ue,decode:Ur.decode};function Ue(r,e={}){const{urlSafe:t=!1}=e;return Ur.encode(r,t)}function Be(r){const e=ke(r),t=e.exp*1e3;if(Date.now()>t)throw new Error(`${ge}. Expiration date: ${new Date(t).toISOString()}`);return e}const Br="The provided `clientToken`",ge=`${Br} has expired`,we=`${Br} is malformed`;function ke(r){try{const[e,t]=r.split("."),o=t||e;return JSON.parse(Me.decode(o))}catch{throw new Error(we)}}const ve="v2.45.3",pe=(r,e,t)=>({"primer-client-token":r,"primer-sdk-client":"WEB","primer-sdk-version":ve,"primer-sdk-checkout-session-id":e,...t&&{"x-api-version":t}});async function be(r,e,t){const{accessToken:o,configurationUrl:A,analyticsUrlV2:_}=Be(r),i=x({checkoutSessionId:e,url:_});i.timerStart({id:"CONFIGURATION_LOADING"});try{const{data:E,source:n}=await Te(`${A}/?withDisplayMetadata=true`,{checkoutSessionId:e,headers:pe(o,e,"2.3"),retryConfig:{enabled:!0},cacheConfig:t});return i.timerEnd({id:"CONFIGURATION_LOADING",source:n}),E}catch(E){const n=E instanceof Error?E.message:"Unknown error occurred";throw new Error(`Failed to initialize client: ${n}`)}}const xe="v2.45.3",He=g("createHeadless"),Fe=g("showExpressCheckout"),Ge=g("showUniversalCheckout"),Ke=g("showVaultManager");function g(r){return async(...[e,t,...o])=>{const A=rr(),_=H(A);_.sdkFunctionEvent({name:r,params:[e,t,...o]}),_.timerStart({id:Jr[r]});const[i,E]=await Promise.all([be(e,A,t?.clientSessionCachingEnabled?{key:e,usePrimerSessionCacheTtlHeader:!0}:void 0),Z(_)]);return E[r](i,A,e,t)}}const me=()=>Z().then(()=>{});var Ve=(r=>(r.LOADING="Loading",r.NO_PAYMENT_METHOD="NoPaymentMethod",r.THREE_DS="UniversalCheckout/3ds",r.CHOOSE_PAYMENT_METHOD="UniversalCheckout/Home",r.MANAGE_PAYMENT_METHODS="VaultManager/Home",r.DIRECT_DEBIT_FORM="DirectDebit/Form",r.DIRECT_DEBIT_MANDATE="DirectDebit/Mandate",r.CREDIT_CARD_FORM="CreditCard/Form",r.SUCCESS_PAYMENT_METHOD="UniversalCheckout/Success/PaymentMethod",r.SUCCESS_CHECK="UniversalCheckout/Success/Check",r))(Ve||{}),We=(r=>(r.ROOT="primer-checkout",r.ROOT_CONTENT="primer-checkout-content",r.SUBMIT_BUTTON="primer-checkout-submit-button",r.THREE_DS_MODAL="primer-checkout-3ds-modal",r.VAULT="primer-checkout-vault",r.VAULT_INLINE="primer-checkout-vault-inline",r.NAVIGATE_PAYMENT_METHODS="primer-checkout-navigate-to-payment-methods",r.DIVIDER="primer-checkout-payment-method-divider",r.APM_BUTTONS="primer-checkout-apm-button-container",r.CARDHOLDER_NAME="primer-checkout-cardholder-name",r.CARDHOLDER_NAME_INPUT="primer-checkout-card-cardholder-name-input",r.ACTIONS="primer-checkout-actions",r.ACTIONS_MENU="primer-checkout-actions-menu",r.SAVE_PAYMENT_METHOD_CHECKBOX="primer-checkout-save-payment-method-input",r.SAVE_PAYMENT_METHOD_FIELD="primer-checkout-save-payment-method-field",r.SAVED_PAYMENT_METHODS_EMPTY="primer-checkout-saved-payment-methods-empty-text",r.CARD_FORM="primer-checkout-card-form",r.DD_SWITCH="primer-checkout-switch-dd-inputs",r.DD_IBAN_FIELD="primer-checkout-dd-iban-field",r.DD_LOCAL_FIELD="primer-checkout-dd-local-fields",r.DD_CUSTOMER_NAME_INPUT="primer-checkout-dd-customer-name-input",r.DD_CUSTOMER_EMAIL_INPUT="primer-checkout-dd-customer-email-input",r.DD_CUSTOMER_ADDRESS_LINE1="primer-checkout-dd-customer-address-input",r.DD_CUSTOMER_ADDRESS_LINE2="primer-checkout-dd-customer-address-line2-input",r.DD_CUSTOMER_ADDRESS_CITY="primer-checkout-dd-customer-city-input",r.DD_CUSTOMER_ADDRESS_POSTAL_CODE="primer-checkout-dd-customer-postal-code-input",r.DD_IBAN_INPUT="primer-checkout-dd-iban-input",r.DD_ACCOUNT_NUMBER_INPUT="primer-checkout-dd-account-number-input",r.DD_BANK_CODE_INPUT="primer-checkout-dd-bank-code-input",r.DD_BRANCH_CODE_INPUT="primer-checkout-dd-branch-code-input",r.DD_MANDATE_SMALL_PRINT="primer-checkout-small-print",r.ERROR_MESSAGE="primer-checkout-error-message",r))(We||{}),$e=(r=>(r.TOKEN="PrimerCheckout__token",r.HIDDEN="PrimerCheckout--hidden",r.FOCUSED="PrimerCheckout--focused",r.SELECTED="PrimerCheckout--selected",r.LOADING="PrimerCheckout--loading",r.ERROR="PrimerCheckout--error",r.CARD_TYPE="PrimerCheckout__cardType",r.SAVED_PAYMENT_METHOD="PrimerCheckout__savedPaymentMethod",r.SAVED_PAYMENT_METHOD_CONTAINER="PrimerCheckout__savedPaymentMethodContainer",r.APM_BUTTON="PrimerCheckout__apmButton",r.EDIT_BUTTON="PrimerCheckout__editButton",r.MENU="PrimerCheckout__dropDownMenu",r.MENU_ITEM="PrimerCheckout__dropDownMenuItem",r.PAYMENT_METHOD_MENU_ITEM="PrimerCheckout__paymentMethodDropDownMenuItem",r.DELETE_PAYMENT_METHOD_BUTTON="PrimerCheckout__paymentMethodDropDownMenuItem__deleteButton",r.ENTER="PrimerCheckout--enter",r.ENTERING="PrimerCheckout--entering",r.ENTERED="PrimerCheckout--entered",r.EXIT="PrimerCheckout--exit",r.EXITING="PrimerCheckout--exiting",r.EXITED="PrimerCheckout--exited",r))($e||{}),gr=(r=>(r.CHECKOUT="CHECKOUT",r.EXPRESS_CHECKOUT="EXPRESS_CHECKOUT",r.HEADLESS_CHECKOUT="HEADLESS_CHECKOUT",r.MANAGE_PAYMENT_METHODS="MANAGE_PAYMENT_METHODS",r.SINGLE_PAYMENT_METHOD_CHECKOUT="SINGLE_PAYMENT_METHOD_CHECKOUT",r))(gr||{}),wr=(r=>(r.DEFAULT="DEFAULT",r.PREFER_VAULT="PREFER_VAULT",r))(wr||{}),je=(r=>(r.TOKENIZE_STARTED="tokenize-started",r.TOKENIZE_ERROR="tokenize-error",r.TOKENIZE_SUCCESS="tokenize-success",r.TOKENIZE_DID_NOT_START="tokenize-did-not-start",r))(je||{}),kr=(r=>(r.SUCCESS="AUTH_SUCCESS",r.FAILED="AUTH_FAILED",r.SKIPPED="SKIPPED",r.CHALLENGE="CHALLENGE",r))(kr||{}),vr=(r=>(r.WORLDPAY_IDEAL="WORLDPAY_IDEAL",r.ADYEN_KLARNA="ADYEN_KLARNA",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",r.ADYEN_EPS="ADYEN_EPS",r.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",r.OMISE_PROMPTPAY="OMISE_PROMPTPAY",r.OMISE_TRUEMONEY="OMISE_TRUEMONEY",r.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",r.PACYPAY_WECHAT="PACYPAY_WECHAT",r.PACYPAY_ALIPAY="PACYPAY_ALIPAY",r.ADYEN_MBWAY="ADYEN_MBWAY",r.XENDIT_DANA="XENDIT_DANA",r.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",r.ADYEN_PAYSHOP="ADYEN_PAYSHOP",r.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",r.CLEARPAY="CLEARPAY",r.RAPYD_FAST="RAPYD_FAST",r.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",r.RAPYD_GCASH="RAPYD_GCASH",r.RAPYD_POLI="RAPYD_POLI",r.RAPYD_GRABPAY="RAPYD_GRABPAY",r.PRIMER_PAYPAL="PRIMER_PAYPAL",r.TWOC2P="TWOC2P",r.NETS="NETS",r.STRIPE_ACH="STRIPE_ACH",r.STRIPE_GIROPAY="STRIPE_GIROPAY",r.MOLLIE_GIROPAY="MOLLIE_GIROPAY",r.MOLLIE_EPS="MOLLIE_EPS",r.PAY_NL_EPS="PAY_NL_EPS",r.PAY_NL_P24="PAY_NL_P24",r.MOLLIE_P24="MOLLIE_P24",r.MOLLIE_SOFORT="MOLLIE_SOFORT",r.COINBASE="COINBASE",r.OPENNODE="OPENNODE",r.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",r.XFERS_PAYNOW="XFERS_PAYNOW",r.CARD="PAYMENT_CARD",r.APPLE_PAY="APPLE_PAY",r.GOOGLE_PAY="GOOGLE_PAY",r.PAYPAL="PAYPAL_ORDER",r.PAYPAL_VAULTED="PAYPAL_BILLING_AGREEMENT",r.GO_CARDLESS="GOCARDLESS",r.PAY_NL_IDEAL="PAY_NL_IDEAL",r.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",r.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",r.PAY_NL_PAYPAL="PAY_NL_PAYPAL",r.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",r.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",r.PAY_NL_GIROPAY="PAY_NL_GIROPAY",r.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",r.HOOLAH="HOOLAH",r.ADYEN_BLIK="ADYEN_BLIK",r.ADYEN_VIPPS="ADYEN_VIPPS",r.ADYEN_GIROPAY="ADYEN_GIROPAY",r.ADYEN_SOFORT="ADYEN_SOFORT",r.ADYEN_IDEAL="ADYEN_IDEAL",r.ADYEN_TRUSTLY="ADYEN_TRUSTLY",r.ADYEN_ALIPAY="ADYEN_ALIPAY",r.ADYEN_TWINT="ADYEN_TWINT",r.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",r.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",r.MOLLIE_IDEAL="MOLLIE_IDEAL",r.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",r.BUCKAROO_EPS="BUCKAROO_EPS",r.BUCKAROO_SOFORT="BUCKAROO_SOFORT",r.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",r.BUCKAROO_IDEAL="BUCKAROO_IDEAL",r.ATOME="ATOME",r.KLARNA_CUSTOMER_TOKEN="KLARNA_CUSTOMER_TOKEN",r))(vr||{}),$=(r=>(r.WORLDPAY_IDEAL="WORLDPAY_IDEAL",r.STRIPE_ACH="STRIPE_ACH",r.STRIPE_IDEAL="STRIPE_IDEAL",r.ADYEN_KLARNA="ADYEN_KLARNA",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",r.ADYEN_EPS="ADYEN_EPS",r.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",r.OMISE_PROMPTPAY="OMISE_PROMPTPAY",r.OMISE_TRUEMONEY="OMISE_TRUEMONEY",r.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",r.PACYPAY_WECHAT="PACYPAY_WECHAT",r.PACYPAY_ALIPAY="PACYPAY_ALIPAY",r.ADYEN_MBWAY="ADYEN_MBWAY",r.XENDIT_DANA="XENDIT_DANA",r.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",r.ADYEN_PAYSHOP="ADYEN_PAYSHOP",r.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",r.CLEARPAY="CLEARPAY",r.RAPYD_FAST="RAPYD_FAST",r.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",r.RAPYD_GCASH="RAPYD_GCASH",r.RAPYD_POLI="RAPYD_POLI",r.RAPYD_GRABPAY="RAPYD_GRABPAY",r.PRIMER_PAYPAL="PRIMER_PAYPAL",r.TWOC2P="TWOC2P",r.NETS="NETS",r.STRIPE_GIROPAY="STRIPE_GIROPAY",r.MOLLIE_GIROPAY="MOLLIE_GIROPAY",r.MOLLIE_EPS="MOLLIE_EPS",r.PAY_NL_EPS="PAY_NL_EPS",r.PAY_NL_P24="PAY_NL_P24",r.MOLLIE_P24="MOLLIE_P24",r.MOLLIE_SOFORT="MOLLIE_SOFORT",r.COINBASE="COINBASE",r.OPENNODE="OPENNODE",r.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",r.XFERS_PAYNOW="XFERS_PAYNOW",r.PAYMENT_CARD="PAYMENT_CARD",r.APPLE_PAY="APPLE_PAY",r.GOOGLE_PAY="GOOGLE_PAY",r.PAYPAL="PAYPAL",r.GO_CARDLESS="GOCARDLESS",r.KLARNA="KLARNA",r.PAY_NL_IDEAL="PAY_NL_IDEAL",r.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",r.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",r.PAY_NL_PAYPAL="PAY_NL_PAYPAL",r.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",r.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",r.PAY_NL_GIROPAY="PAY_NL_GIROPAY",r.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",r.HOOLAH="HOOLAH",r.ADYEN_BLIK="ADYEN_BLIK",r.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",r.ADYEN_VIPPS="ADYEN_VIPPS",r.ADYEN_GIROPAY="ADYEN_GIROPAY",r.ADYEN_SOFORT="ADYEN_SOFORT",r.ADYEN_IDEAL="ADYEN_IDEAL",r.ADYEN_TRUSTLY="ADYEN_TRUSTLY",r.ADYEN_ALIPAY="ADYEN_ALIPAY",r.ADYEN_TWINT="ADYEN_TWINT",r.ADYEN_BANK_TRANSFER="ADYEN_BANK_TRANSFER",r.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",r.MOLLIE_IDEAL="MOLLIE_IDEAL",r.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",r.BUCKAROO_EPS="BUCKAROO_EPS",r.BUCKAROO_SOFORT="BUCKAROO_SOFORT",r.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",r.BUCKAROO_IDEAL="BUCKAROO_IDEAL",r.ATOME="ATOME",r))($||{}),Xe=(r=>(r.PAYMENT_CARD="PAYMENT_CARD",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r))(Xe||{}),pr=(r=>(r.SINGLE_USE="SINGLE_USE",r.MULTI_USE="MULTI_USE",r))(pr||{});const br={PAYPAL_BILLING_AGREEMENT:"PAYPAL",KLARNA_CUSTOMER_TOKEN:"KLARNA"},_t=r=>{if(Object.values($).includes(r))return r;if(br[r])return br[r]};var xr=(r=>(r.INITIALIZATION_ERROR="INITIALIZATION_ERROR",r.NO_PAYMENT_METHODS="NO_PAYMENT_METHODS",r.PRIMER_TEARDOWN="PRIMER_TEARDOWN",r.PRIMER_SERVER_ERROR="PRIMER_SERVER_ERROR",r.THREE_DS_AUTH_FAILED="THREE_DS_AUTH_FAILED",r.TOKENIZATION_ERROR="TOKENIZATION_ERROR",r.DUPLICATE_PAYMENT_METHOD_ERROR="DUPLICATE_PAYMENT_METHOD_ERROR",r.CARD_NUMBER_ERROR="CARD_NUMBER_ERROR",r.PAYMENT_METHOD_NOT_SETUP="PAYMENT_METHOD_NOT_SETUP",r.PAYMENT_METHOD_NOT_PROVIDED="PAYMENT_METHOD_NOT_PROVIDED",r.PAYMENT_METHOD_NOT_COMPATIBLE="PAYMENT_METHOD_NOT_COMPATIBLE",r.RESUME_ERROR="RESUME_ERROR",r.VALIDATION_ERROR="VALIDATION_ERROR",r.PAYMENT_FAILED="PAYMENT_FAILED",r.PAYMENT_CREATION_ABORTED="PAYMENT_CREATION_ABORTED",r.PAYMENT_CREATION_DISABLED="PAYMENT_CREATION_DISABLED",r.CLIENT_SESSION_UPDATE_ERROR="CLIENT_SESSION_UPDATE_ERROR",r.INVALID_ARGUMENT="INVALID_ARGUMENT",r.VAULT_FETCH="VAULT_FETCH",r.VAULT_DELETE="VAULT_DELETE",r.HEADLESS_VAULT_MANAGER_VALIDATION="HEADLESS_VAULT_MANAGER_VALIDATION",r.CARD_FORM_VALIDATION_UNEXPECTED_FIELD="CARD_FORM_VALIDATION_UNEXPECTED_FIELD",r.MISSING_FIRST_NAME_OR_LAST_NAME="MISSING_FIRST_NAME_OR_LAST_NAME",r.MISSING_EMAIL_ADDRESS="MISSING_EMAIL_ADDRESS",r.INVALID_FLOW="INVALID_FLOW",r))(xr||{});class Hr extends Error{static fromErrorCode(e,t,o){return new Hr(e,t,o)}constructor(e,t,o){super(t.message),this.message=t.message,this.code=e,this.diagnosticsId=t.diagnosticsId||null,this.data=t.data,this.isFromDeveloper=t.isFromDeveloper??!1,o?.messageEvent?.({message:t.message,messageType:e,severity:"ERROR",...t.diagnosticsId&&{diagnosticsId:t.diagnosticsId},...t.errorId&&{errorId:t.errorId},...t.data&&{data:t.data},...t.isFromDeveloper!==void 0&&{isFromDeveloper:String(t.isFromDeveloper)},stack:this.stack})}}const Et=r=>{throw console.error(r.message),r};var ze=a(473),Fr=(r=>(r.PAYMENT_METHOD="PAYMENT_METHOD",r.CHECK="CHECK",r))(Fr||{});const Qe=r=>"fullMandateText"in r?.mandateData;var Gr=(r=>(r.CHANGE="change",r.ERROR="error",r.FOCUS="focus",r.BLUR="blur",r.CLICK="click",r.CLOSE="close",r))(Gr||{}),Kr=(r=>(r.CARD="CARD",r.NATIVE="NATIVE",r.REDIRECT="REDIRECT",r.FORM_WITH_REDIRECT="FORM_WITH_REDIRECT",r.KLARNA="KLARNA",r.ACH="ACH",r))(Kr||{});const Ze={SDK_VERSION:xe,createHeadless:He,showExpressCheckout:Fe,showUniversalCheckout:Ge,showVaultManager:Ke}})(),w})());
|
|
1
|
+
(function(h,a){typeof exports=="object"&&typeof module=="object"?module.exports=a():typeof define=="function"&&define.amd?define([],a):typeof exports=="object"?exports.Primer=a():h.Primer=a()})(this,()=>(()=>{var j={476:()=>{},962:()=>{},473:()=>{}},h={};function a(D){var P=h[D];if(P!==void 0)return P.exports;var L=h[D]={exports:{}};return j[D](L,L.exports,a),L.exports}a.d=(D,P)=>{for(var L in P)a.o(P,L)&&!a.o(D,L)&&Object.defineProperty(D,L,{enumerable:!0,get:P[L]})},a.o=(D,P)=>Object.prototype.hasOwnProperty.call(D,P),a.r=D=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(D,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(D,"__esModule",{value:!0})};var w={};return(()=>{"use strict";a.r(w),a.d(w,{CheckoutUXFlow:()=>gr,ErrorCode:()=>xr,EventTypes:()=>Gr,HeadlessManagerType:()=>Kr,PaymentFlow:()=>wr,PaymentInstrumentType:()=>vr,PaymentMethodData:()=>ze.PaymentMethodData,PaymentMethodType:()=>$,Primer:()=>Ze,SuccessScreenType:()=>Fr,ThreeDSecureStatus:()=>kr,TokenType:()=>pr,isStripeOptionsDropInWithFullMandateText:()=>Qe,preloadPrimer:()=>me});function D(r){return r?new Promise(e=>{setTimeout(e,r)}):Promise.resolve()}const P=8,L=100,mr=100;function Vr(r){return{enabled:r?.enabled??!1,maxRetries:P,initialBackoff:L,retryNetworkErrors:!0,retry500Errors:!1,maxJitter:mr}}function Wr(r,e,t){const o=r*Math.pow(2,e-1),A=Math.random()*t;return Math.min(o+A,Number.MAX_SAFE_INTEGER)}async function X(r,e,t,o=D){let A=0;const _=Vr(e);if(!_.enabled)return r();for(;;)try{const i=await r();if(A){let E=`Request succeeded after ${A} retries.`;typeof i=="object"&&i&&"status"in i&&(E+=` Status code: ${i.status}`),t?.({messageType:"RETRY_SUCCESS",message:E,severity:"INFO"})}return i}catch(i){const E=i,n=A>=_.maxRetries,s=E.isNetworkError&&!_.retryNetworkErrors,R=E.status&&E.status>=500&&!_.retry500Errors;if(n||s||R){let T=`Failed after ${A} retries. `;throw n?T+=`Reached maximum retries (${_.maxRetries}).`:s?T+="Network error encountered and retryNetworkErrors is disabled.":R&&(T+="HTTP 500 error encountered and retry500Errors is disabled."),T+=` Last error: ${E.message}`,t?.({messageType:"RETRY_FAILED",message:T,severity:"ERROR",errorBody:JSON.stringify(i,Object.getOwnPropertyNames(i))}),new Error(T,{cause:i})}A++;const O=Wr(_.initialBackoff,A,_.maxJitter);let u="Unknown error";E.isNetworkError?u="Network error":E.status&&(u=`HTTP ${E.status} error`),t?.({messageType:"RETRY",message:`Retry attempt ${A}/${_.maxRetries} due to: ${u}. Error details: ${E.message}. Waiting for ${O.toFixed(2)}ms before next attempt.`,severity:"WARN",errorBody:JSON.stringify(i,Object.getOwnPropertyNames(i))}),await o(O)}}function $r(r,e){const t=document.createElement(r);return Object.entries(e).forEach(([o,A])=>t.setAttribute(o,A)),t}function z(r,e,t){return document.querySelector(`${r}[${e}^="${t}"]`)}async function Q(r,e,t,o,A,_){const{analytics:i,name:E=e,retryConfig:n}=_;await X(()=>new Promise((R,O)=>{const u=z(r,t,e)||$r(r,{...o,[t]:e});u.onload=()=>{i?.sdkFunctionEvent({name:E,params:[`${r.charAt(0).toUpperCase()+r.slice(1)} loaded successfully: ${e}`]}),R()},u.onerror=()=>{u.remove(),O(new Error(`${A}: ${e}`))},u.parentNode||document.head.appendChild(u)}),n,R=>i?.messageEvent({...R,url:e}))}function jr(r,e={}){return z("script","src",r)&&window.__Primer?(e.analytics?.sdkFunctionEvent({name:e.name??r,params:["Script already loaded"]}),Promise.resolve()):Q("script",r,"src",{...e.attributes,async:"",crossorigin:"anonymous"},"Can't load Primer SDK",e)}function Xr(r,e={}){return Array.from(document.styleSheets).some(t=>t.href===r)?(e.analytics?.sdkFunctionEvent({name:e.name??r,params:["Stylesheet already loaded"]}),Promise.resolve()):Q("link",r,"href",{...e.attributes,rel:"stylesheet"},"Can't load Primer SDK's Stylesheet",e)}let Y;async function Z(r){return Y||(Y=Promise.all([jr("https://sdk.primer.io/web/v2.45.5/PrimerCoreSDK.min.js",{analytics:r,name:"loadPrimerScript"}),Xr("https://sdk.primer.io/web/v2.45.5/Checkout.css",{analytics:r,name:"loadPrimerCss"})]).then(()=>{const o=window.__Primer;return delete window.__Primer,o}).catch(o=>{throw Y=void 0,o}),Y)}let k={cache:new Map};typeof window<"u"&&(window.__primerCache__??(window.__primerCache__=k),k=window.__primerCache__);const N=()=>k.cache,q=1e3*60*60,zr=30,J=50;function y(){if(N().size<=zr)return;const r=Date.now();for(const[e,t]of N())t.exp<r&&N().delete(e);if(N().size>J)for(const[e]of N()){if(N().size<=J)break;N().delete(e)}}function ye({key:r,ttl:e=q},t){e?N().set(r,{promise:Promise.resolve(t),exp:Date.now()+e}):N().delete(r)}function Qr(r){if(!r)return _=>_();const{key:e,refresh:t=!1,usePrimerSessionCacheTtlHeader:o=!1,ttl:A=q}=r;return async _=>{const i=Date.now(),E=N().get(e);if(!t&&E&&E.exp>i)return E.promise;E&&N().delete(e);const n=_().then(s=>{const R=Date.now();let O=A;return o&&(O=(Number(s.headers.get("x-primer-session-cache-ttl"))||0)*1e3),O?N().set(e,{promise:Promise.resolve({...s,source:"CACHE"}),exp:R+O}):N().delete(e),y(),s},s=>{throw N().delete(e),s});return N().set(e,{promise:n,exp:i+A}),y(),n}}const rr=()=>er.randomUUID?.()||Zr(),Zr=()=>("10000000-1000-4000-8000"+-1e11).replace(/[018]/g,r=>(r^qr()>>r/4).toString(16)),qr=()=>(er.getRandomValues?.(new Uint8Array(1))[0]??Math.random()*16)&15,er=typeof crypto<"u"?crypto:{};var rt=a(476),et=a(962),v=(r=>(r.REQUEST_START="REQUEST_START",r.REQUEST_END="REQUEST_END",r))(v||{}),p=(r=>(r.START="START",r.END="END",r))(p||{});const Jr={createHeadless:"HEADLESS_LOADING",showExpressCheckout:"EXPRESS_LOADING",showUniversalCheckout:"DROP_IN_LOADING",showVaultManager:"VAULT_MANAGER_LOADING"};var d=(r=>(r.NETWORK_CALL_EVENT="NETWORK_CALL_EVENT",r.CRASH_EVENT="CRASH_EVENT",r.TIMER_EVENT="TIMER_EVENT",r.MESSAGE_EVENT="MESSAGE_EVENT",r.V1_EVENT="V1_EVENT",r.SDK_FUNCTION_EVENT="SDK_FUNCTION_EVENT",r))(d||{});const yr={get(r,e){let t;try{switch(r){case"PRIMER_SDK_VERSION":t="v2.45.5";break;case"PRIMER_ASSETS_URL":t=process.env.PRIMER_ASSETS_URL;break;case"PRIMER_CORE_API_URL":t=process.env.PRIMER_CORE_API_URL;break;case"PRIMER_PCI_API_URL":t=process.env.PRIMER_PCI_API_URL;break;case"PRIMER_MODULES_URL":t=process.env.PRIMER_MODULES_URL;break;case"PRIMER_BUILD_INTEGRATION_BUILDER":t=process.env.PRIMER_BUILD_INTEGRATION_BUILDER;break;case"SENTRY_DSN":t=process.env.SENTRY_DSN;break;default:break}}catch{}return t||e}};var re=(r=>(r.CHARGING="CHARGING",r.NOT_CHARGING="NOT_CHARGING",r))(re||{});async function ee(){if(typeof navigator>"u")return;const r=await navigator.getBattery?.();return{memoryFootprint:performance.memory?.usedJSHeapSize,screen:{height:screen?.height,width:screen?.width},platformVersion:navigator.platform,userAgent:navigator.userAgent,locale:navigator.language,batteryLevel:r?.level,batteryStatus:r?.charging?"CHARGING":"NOT_CHARGING"}}const te="WEB",oe=yr.get("PRIMER_SDK_VERSION");async function Ae(r,e,t){return{...t,createdAt:Date.now(),device:await ee(),eventType:r,properties:e,sdkVersion:oe,sdkType:te}}const tr="https://analytics.production.data.primer.io/sdk-logs",_e=tr==="https://analytics.sandbox.data.primer.io/playwright";let I={providers:new Map,timers:new Map,eventsQueue:new Map};typeof window<"u"&&(window.__primerAnalytics__??(window.__primerAnalytics__=I),I=window.__primerAnalytics__);const or=()=>I.providers,b=()=>I.timers,f=()=>I.eventsQueue,Ar=1024*5,Ee=500,M=new Map;function x({url:r=tr,...e}){typeof document<"u"&&document.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&_r(r,!0)});const t=A=>async _=>{if(typeof navigator>"u")return;const i=await Ae(A,_,e),E=s=>se(ne(s));if(_e)return;const n=Er(i,E);ie(r,n)},o={crashEvent:t(d.CRASH_EVENT),messageEvent:t(d.MESSAGE_EVENT),networkCallEvent:t(d.NETWORK_CALL_EVENT),sdkFunctionEvent:t(d.SDK_FUNCTION_EVENT),timerStart:({id:A,..._})=>{const i=`${e.checkoutSessionId}|${A}`;return b().set(i,{start:performance?.now()}),t(d.TIMER_EVENT)({..._,id:A,timerType:p.START})},timerEnd:({id:A,..._})=>{const i=`${e.checkoutSessionId}|${A}`,{start:E=void 0}=b().get(i)??{};b().delete(i);const n=performance?.now(),s=E?n-E:void 0;return t(d.TIMER_EVENT)({..._,id:A,timerType:p.END,duration:s})},v1Event:t(d.V1_EVENT),url:r};return or().set(e.checkoutSessionId,o),o}function H(r){return new Proxy({},{get(e,t){return(or().get(r)??x({checkoutSessionId:r}))[t]}})}function _r(r,e=!1){if(M.has(r)){const A=M.get(r);clearTimeout(A),M.delete(r)}const t=()=>{const A=f().get(r);let _=!1;if(A?.length){try{_=navigator.sendBeacon(r,JSON.stringify(A))}catch(i){_=!0,console.error("Unable to access navigator",i)}_&&f().delete(r)}};if(e){t();return}const o=setTimeout(t,Ee);M.set(r,o)}function ie(r,e){f().has(r)||f().set(r,[]),f().get(r)?.push(e),_r(r)}function Er(r,e){const t=o=>typeof o=="object"&&o!==null?Er(o,e):e(o);return Array.isArray(r)?r.map(t):Object.fromEntries(Object.entries(r).map(([o,A])=>[o,t(A)]))}function se(r){return typeof r=="string"&&r.length>Ar?`${r.slice(0,Ar)}...`:r}function ne(r){return typeof r=="function"?r.name||"function":r}class F{constructor(e,t){this.type=e,this.displayName=t}get specs(){return this.constructor.specs}setOption(e,t){this.options&&(this.options[e]=t)}setupAndValidate(){return Promise.resolve(!0)}mount(){return Promise.resolve(!0)}tokenize(e){return Promise.resolve()}validate(){return Promise.resolve({valid:!0,validationErrors:[]})}setDisabled(e){return Promise.resolve()}focus(){}blur(){}getPaymentElement(){return null}getStore(){}}F.specs={key:"__none__",canVault:!1,buttonManagedByPaymentMethod:!1,hasExportedButtonOptions:!1},F.create=(r,e,t,o)=>{throw new Error("Cannot instantiate BasePaymentMethod")};class ce extends F{async tokenize(e){}}class ae{get session(){const e=this.store.getState().clientSessionInfo;if(!e)throw new Error("Client Context Session does not exist");return e}}const Ne=[Array,ce,ae,Map,Set];function Re(r){const e=new Set,t=20;let o=0;for(;o++<t&&r&&r!==Object.prototype;)Object.getOwnPropertyNames(r).forEach(A=>e.add(A)),r=Object.getPrototypeOf(r);return[...e]}function ir(r,e,t,o,A){if(!t||Ne.some(_=>t instanceof _))return t;switch(typeof t){case"function":return new Proxy(t,{apply(_,i,E=[]){const n={name:e.replace(/^bound /,""),params:E,module:A};r?.sdkFunctionEvent(n);const s=E.map((R,O)=>ir(r,`${O}`,R,o,[A,e,`${O}`].filter(Boolean).join(".")));return _.apply(i,s)}});case"object":return t===o?t:Oe(r,t,[A,e].filter(Boolean).join("."));default:return t}}function Oe(r,e,t){return Object.fromEntries(Re(e).map(o=>{const A=e?.[o],_=ir(r,o,A,A,t);return[o,_]}))}const G=(r,e,t,o)=>({callType:t?v.REQUEST_END:v.REQUEST_START,id:r,errorBody:t?.error&&JSON.stringify(t.error,Object.getOwnPropertyNames(t.error)),method:e.method,responseCode:t?.status,url:e.url,duration:o}),sr=15e3,De=(r,e,t)=>nr(r,"get",e,t),ue=(r,e,t,o)=>nr(r,"post",e,o,JSON.stringify(t)),nr=async(r,e,t,o,A)=>{const _=rr(),i=performance?.now();let E=H(r);const n={method:e,url:t,body:A};E.networkCallEvent(G(_,n));try{const s=await fetch(t,{body:A,method:e,headers:{"content-type":"application/json","x-request-id":_,...o}});if(!s.ok){const T=new Error(`HTTP error! status: ${s.status}`);throw T.status=s.status,T}const R=await s.json();if(t.includes("client-sdk/configuration")){const{primerAccountId:T,clientSession:{clientSessionId:qe,customer:Je}}=R;E=x({checkoutSessionId:r,clientSessionId:qe,customerId:Je?.customerId,primerAccountId:T,url:E.url})}const u=performance?.now()-i;return E.networkCallEvent(G(_,n,{data:R},u)),{data:R,headers:s.headers,status:s.status,source:"NETWORK"}}catch(s){const O=performance?.now()-i;throw Object.assign(s,{isNetworkError:s instanceof TypeError}),E.networkCallEvent(G(_,n,{error:s},O)),s}},cr=(r,e)=>new Promise((t,o)=>{const A=setTimeout(()=>{const _=new Error("Request timed out");_.isNetworkError=!0,o(_)},e);r.then(t).catch(o).finally(()=>clearTimeout(A))}),Te=(r,e)=>{const{headers:t,retryConfig:o,cacheConfig:A,timeout:_=sr,checkoutSessionId:i}=e,E=H(i);return Qr(A)(()=>X(()=>cr(De(i,r,t),_),o,n=>E.messageEvent({...n,url:r})))},tt=(r,e,t)=>{const{headers:o,retryConfig:A,cacheConfig:_,timeout:i=sr,checkoutSessionId:E}=t,n=getAnalytics(E);return cacheRequest(_)(()=>retryWithExponentialBackoff(()=>cr(ue(E,r,e,o),i),A,s=>n.messageEvent({...s,url:r})))},ar="3.6.1",Pe=ar,Le=typeof atob=="function",de=typeof btoa=="function",S=typeof Buffer=="function",Nr=typeof TextDecoder=="function"?new TextDecoder:void 0,Rr=typeof TextEncoder=="function"?new TextEncoder:void 0,l=[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],U=(r=>{let e={};return r.forEach((t,o)=>e[t]=o),e})(l),Se=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,c=String.fromCharCode.bind(String),Or=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):(r,e=t=>t)=>new Uint8Array(Array.prototype.slice.call(r,0).map(e)),Dr=r=>r.replace(/[+\/]/g,e=>e=="+"?"-":"_").replace(/=+$/m,""),ur=r=>r.replace(/[^A-Za-z0-9\+\/]/g,""),Tr=r=>{let e,t,o,A,_="";const i=r.length%3;for(let E=0;E<r.length;){if((t=r.charCodeAt(E++))>255||(o=r.charCodeAt(E++))>255||(A=r.charCodeAt(E++))>255)throw new TypeError("invalid character found");e=t<<16|o<<8|A,_+=l[e>>18&63]+l[e>>12&63]+l[e>>6&63]+l[e&63]}return i?_.slice(0,i-3)+"===".substring(i):_},K=de?r=>btoa(r):S?r=>Buffer.from(r,"binary").toString("base64"):Tr,m=S?r=>Buffer.from(r).toString("base64"):r=>{let t=[];for(let o=0,A=r.length;o<A;o+=4096)t.push(c.apply(null,r.subarray(o,o+4096)));return K(t.join(""))},B=(r,e=!1)=>e?Dr(m(r)):m(r),Ce=r=>{if(r.length<2){var e=r.charCodeAt(0);return e<128?r:e<2048?c(192|e>>>6)+c(128|e&63):c(224|e>>>12&15)+c(128|e>>>6&63)+c(128|e&63)}else{var e=65536+(r.charCodeAt(0)-55296)*1024+(r.charCodeAt(1)-56320);return c(240|e>>>18&7)+c(128|e>>>12&63)+c(128|e>>>6&63)+c(128|e&63)}},Ye=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,Pr=r=>r.replace(Ye,Ce),Lr=S?r=>Buffer.from(r,"utf8").toString("base64"):Rr?r=>m(Rr.encode(r)):r=>K(Pr(r)),C=(r,e=!1)=>e?Dr(Lr(r)):Lr(r),dr=r=>C(r,!0),Ie=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,fe=r=>{switch(r.length){case 4:var e=(7&r.charCodeAt(0))<<18|(63&r.charCodeAt(1))<<12|(63&r.charCodeAt(2))<<6|63&r.charCodeAt(3),t=e-65536;return c((t>>>10)+55296)+c((t&1023)+56320);case 3:return c((15&r.charCodeAt(0))<<12|(63&r.charCodeAt(1))<<6|63&r.charCodeAt(2));default:return c((31&r.charCodeAt(0))<<6|63&r.charCodeAt(1))}},Sr=r=>r.replace(Ie,fe),Cr=r=>{if(r=r.replace(/\s+/g,""),!Se.test(r))throw new TypeError("malformed base64.");r+="==".slice(2-(r.length&3));let e,t="",o,A;for(let _=0;_<r.length;)e=U[r.charAt(_++)]<<18|U[r.charAt(_++)]<<12|(o=U[r.charAt(_++)])<<6|(A=U[r.charAt(_++)]),t+=o===64?c(e>>16&255):A===64?c(e>>16&255,e>>8&255):c(e>>16&255,e>>8&255,e&255);return t},V=Le?r=>atob(ur(r)):S?r=>Buffer.from(r,"base64").toString("binary"):Cr,Yr=S?r=>Or(Buffer.from(r,"base64")):r=>Or(V(r),e=>e.charCodeAt(0)),Ir=r=>Yr(fr(r)),le=S?r=>Buffer.from(r,"base64").toString("utf8"):Nr?r=>Nr.decode(Yr(r)):r=>Sr(V(r)),fr=r=>ur(r.replace(/[-_]/g,e=>e=="-"?"+":"/")),W=r=>le(fr(r)),he=r=>{if(typeof r!="string")return!1;const e=r.replace(/\s+/g,"").replace(/=+$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(e)||!/[^\s0-9a-zA-Z\-_]/.test(e)},lr=r=>({value:r,enumerable:!1,writable:!0,configurable:!0}),hr=function(){const r=(e,t)=>Object.defineProperty(String.prototype,e,lr(t));r("fromBase64",function(){return W(this)}),r("toBase64",function(e){return C(this,e)}),r("toBase64URI",function(){return C(this,!0)}),r("toBase64URL",function(){return C(this,!0)}),r("toUint8Array",function(){return Ir(this)})},Mr=function(){const r=(e,t)=>Object.defineProperty(Uint8Array.prototype,e,lr(t));r("toBase64",function(e){return B(this,e)}),r("toBase64URI",function(){return B(this,!0)}),r("toBase64URL",function(){return B(this,!0)})},Ur={version:ar,VERSION:Pe,atob:V,atobPolyfill:Cr,btoa:K,btoaPolyfill:Tr,fromBase64:W,toBase64:C,encode:C,encodeURI:dr,encodeURL:dr,utob:Pr,btou:Sr,decode:W,isValid:he,fromUint8Array:B,toUint8Array:Ir,extendString:hr,extendUint8Array:Mr,extendBuiltins:()=>{hr(),Mr()}},Me={encode:Ue,decode:Ur.decode};function Ue(r,e={}){const{urlSafe:t=!1}=e;return Ur.encode(r,t)}function Be(r){const e=ke(r),t=e.exp*1e3;if(Date.now()>t)throw new Error(`${ge}. Expiration date: ${new Date(t).toISOString()}`);return e}const Br="The provided `clientToken`",ge=`${Br} has expired`,we=`${Br} is malformed`;function ke(r){try{const[e,t]=r.split("."),o=t||e;return JSON.parse(Me.decode(o))}catch{throw new Error(we)}}const ve="v2.45.5",pe=(r,e,t)=>({"primer-client-token":r,"primer-sdk-client":"WEB","primer-sdk-version":ve,"primer-sdk-checkout-session-id":e,...t&&{"x-api-version":t}});async function be(r,e,t){const{accessToken:o,configurationUrl:A,analyticsUrlV2:_}=Be(r),i=x({checkoutSessionId:e,url:_});i.timerStart({id:"CONFIGURATION_LOADING"});try{const{data:E,source:n}=await Te(`${A}/?withDisplayMetadata=true`,{checkoutSessionId:e,headers:pe(o,e,"2.3"),retryConfig:{enabled:!0},cacheConfig:t});return i.timerEnd({id:"CONFIGURATION_LOADING",source:n}),E}catch(E){const n=E instanceof Error?E.message:"Unknown error occurred";throw new Error(`Failed to initialize client: ${n}`)}}const xe="v2.45.5",He=g("createHeadless"),Fe=g("showExpressCheckout"),Ge=g("showUniversalCheckout"),Ke=g("showVaultManager");function g(r){return async(...[e,t,...o])=>{const A=rr(),_=H(A);_.sdkFunctionEvent({name:r,params:[e,t,...o]}),_.timerStart({id:Jr[r]});const[i,E]=await Promise.all([be(e,A,t?.clientSessionCachingEnabled?{key:e,usePrimerSessionCacheTtlHeader:!0}:void 0),Z(_)]);return E[r](i,A,e,t)}}const me=()=>Z().then(()=>{});var Ve=(r=>(r.LOADING="Loading",r.NO_PAYMENT_METHOD="NoPaymentMethod",r.THREE_DS="UniversalCheckout/3ds",r.CHOOSE_PAYMENT_METHOD="UniversalCheckout/Home",r.MANAGE_PAYMENT_METHODS="VaultManager/Home",r.DIRECT_DEBIT_FORM="DirectDebit/Form",r.DIRECT_DEBIT_MANDATE="DirectDebit/Mandate",r.CREDIT_CARD_FORM="CreditCard/Form",r.SUCCESS_PAYMENT_METHOD="UniversalCheckout/Success/PaymentMethod",r.SUCCESS_CHECK="UniversalCheckout/Success/Check",r))(Ve||{}),We=(r=>(r.ROOT="primer-checkout",r.ROOT_CONTENT="primer-checkout-content",r.SUBMIT_BUTTON="primer-checkout-submit-button",r.THREE_DS_MODAL="primer-checkout-3ds-modal",r.VAULT="primer-checkout-vault",r.VAULT_INLINE="primer-checkout-vault-inline",r.NAVIGATE_PAYMENT_METHODS="primer-checkout-navigate-to-payment-methods",r.DIVIDER="primer-checkout-payment-method-divider",r.APM_BUTTONS="primer-checkout-apm-button-container",r.CARDHOLDER_NAME="primer-checkout-cardholder-name",r.CARDHOLDER_NAME_INPUT="primer-checkout-card-cardholder-name-input",r.ACTIONS="primer-checkout-actions",r.ACTIONS_MENU="primer-checkout-actions-menu",r.SAVE_PAYMENT_METHOD_CHECKBOX="primer-checkout-save-payment-method-input",r.SAVE_PAYMENT_METHOD_FIELD="primer-checkout-save-payment-method-field",r.SAVED_PAYMENT_METHODS_EMPTY="primer-checkout-saved-payment-methods-empty-text",r.CARD_FORM="primer-checkout-card-form",r.DD_SWITCH="primer-checkout-switch-dd-inputs",r.DD_IBAN_FIELD="primer-checkout-dd-iban-field",r.DD_LOCAL_FIELD="primer-checkout-dd-local-fields",r.DD_CUSTOMER_NAME_INPUT="primer-checkout-dd-customer-name-input",r.DD_CUSTOMER_EMAIL_INPUT="primer-checkout-dd-customer-email-input",r.DD_CUSTOMER_ADDRESS_LINE1="primer-checkout-dd-customer-address-input",r.DD_CUSTOMER_ADDRESS_LINE2="primer-checkout-dd-customer-address-line2-input",r.DD_CUSTOMER_ADDRESS_CITY="primer-checkout-dd-customer-city-input",r.DD_CUSTOMER_ADDRESS_POSTAL_CODE="primer-checkout-dd-customer-postal-code-input",r.DD_IBAN_INPUT="primer-checkout-dd-iban-input",r.DD_ACCOUNT_NUMBER_INPUT="primer-checkout-dd-account-number-input",r.DD_BANK_CODE_INPUT="primer-checkout-dd-bank-code-input",r.DD_BRANCH_CODE_INPUT="primer-checkout-dd-branch-code-input",r.DD_MANDATE_SMALL_PRINT="primer-checkout-small-print",r.ERROR_MESSAGE="primer-checkout-error-message",r))(We||{}),$e=(r=>(r.TOKEN="PrimerCheckout__token",r.HIDDEN="PrimerCheckout--hidden",r.FOCUSED="PrimerCheckout--focused",r.SELECTED="PrimerCheckout--selected",r.LOADING="PrimerCheckout--loading",r.ERROR="PrimerCheckout--error",r.CARD_TYPE="PrimerCheckout__cardType",r.SAVED_PAYMENT_METHOD="PrimerCheckout__savedPaymentMethod",r.SAVED_PAYMENT_METHOD_CONTAINER="PrimerCheckout__savedPaymentMethodContainer",r.APM_BUTTON="PrimerCheckout__apmButton",r.EDIT_BUTTON="PrimerCheckout__editButton",r.MENU="PrimerCheckout__dropDownMenu",r.MENU_ITEM="PrimerCheckout__dropDownMenuItem",r.PAYMENT_METHOD_MENU_ITEM="PrimerCheckout__paymentMethodDropDownMenuItem",r.DELETE_PAYMENT_METHOD_BUTTON="PrimerCheckout__paymentMethodDropDownMenuItem__deleteButton",r.ENTER="PrimerCheckout--enter",r.ENTERING="PrimerCheckout--entering",r.ENTERED="PrimerCheckout--entered",r.EXIT="PrimerCheckout--exit",r.EXITING="PrimerCheckout--exiting",r.EXITED="PrimerCheckout--exited",r))($e||{}),gr=(r=>(r.CHECKOUT="CHECKOUT",r.EXPRESS_CHECKOUT="EXPRESS_CHECKOUT",r.HEADLESS_CHECKOUT="HEADLESS_CHECKOUT",r.MANAGE_PAYMENT_METHODS="MANAGE_PAYMENT_METHODS",r.SINGLE_PAYMENT_METHOD_CHECKOUT="SINGLE_PAYMENT_METHOD_CHECKOUT",r))(gr||{}),wr=(r=>(r.DEFAULT="DEFAULT",r.PREFER_VAULT="PREFER_VAULT",r))(wr||{}),je=(r=>(r.TOKENIZE_STARTED="tokenize-started",r.TOKENIZE_ERROR="tokenize-error",r.TOKENIZE_SUCCESS="tokenize-success",r.TOKENIZE_DID_NOT_START="tokenize-did-not-start",r))(je||{}),kr=(r=>(r.SUCCESS="AUTH_SUCCESS",r.FAILED="AUTH_FAILED",r.SKIPPED="SKIPPED",r.CHALLENGE="CHALLENGE",r))(kr||{}),vr=(r=>(r.WORLDPAY_IDEAL="WORLDPAY_IDEAL",r.ADYEN_KLARNA="ADYEN_KLARNA",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",r.ADYEN_EPS="ADYEN_EPS",r.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",r.OMISE_PROMPTPAY="OMISE_PROMPTPAY",r.OMISE_TRUEMONEY="OMISE_TRUEMONEY",r.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",r.PACYPAY_WECHAT="PACYPAY_WECHAT",r.PACYPAY_ALIPAY="PACYPAY_ALIPAY",r.ADYEN_MBWAY="ADYEN_MBWAY",r.XENDIT_DANA="XENDIT_DANA",r.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",r.ADYEN_PAYSHOP="ADYEN_PAYSHOP",r.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",r.CLEARPAY="CLEARPAY",r.RAPYD_FAST="RAPYD_FAST",r.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",r.RAPYD_GCASH="RAPYD_GCASH",r.RAPYD_POLI="RAPYD_POLI",r.RAPYD_GRABPAY="RAPYD_GRABPAY",r.PRIMER_PAYPAL="PRIMER_PAYPAL",r.TWOC2P="TWOC2P",r.NETS="NETS",r.STRIPE_ACH="STRIPE_ACH",r.STRIPE_GIROPAY="STRIPE_GIROPAY",r.MOLLIE_GIROPAY="MOLLIE_GIROPAY",r.MOLLIE_EPS="MOLLIE_EPS",r.PAY_NL_EPS="PAY_NL_EPS",r.PAY_NL_P24="PAY_NL_P24",r.MOLLIE_P24="MOLLIE_P24",r.MOLLIE_SOFORT="MOLLIE_SOFORT",r.COINBASE="COINBASE",r.OPENNODE="OPENNODE",r.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",r.XFERS_PAYNOW="XFERS_PAYNOW",r.CARD="PAYMENT_CARD",r.APPLE_PAY="APPLE_PAY",r.GOOGLE_PAY="GOOGLE_PAY",r.PAYPAL="PAYPAL_ORDER",r.PAYPAL_VAULTED="PAYPAL_BILLING_AGREEMENT",r.GO_CARDLESS="GOCARDLESS",r.PAY_NL_IDEAL="PAY_NL_IDEAL",r.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",r.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",r.PAY_NL_PAYPAL="PAY_NL_PAYPAL",r.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",r.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",r.PAY_NL_GIROPAY="PAY_NL_GIROPAY",r.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",r.HOOLAH="HOOLAH",r.ADYEN_BLIK="ADYEN_BLIK",r.ADYEN_VIPPS="ADYEN_VIPPS",r.ADYEN_GIROPAY="ADYEN_GIROPAY",r.ADYEN_SOFORT="ADYEN_SOFORT",r.ADYEN_IDEAL="ADYEN_IDEAL",r.ADYEN_TRUSTLY="ADYEN_TRUSTLY",r.ADYEN_ALIPAY="ADYEN_ALIPAY",r.ADYEN_TWINT="ADYEN_TWINT",r.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",r.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",r.MOLLIE_IDEAL="MOLLIE_IDEAL",r.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",r.BUCKAROO_EPS="BUCKAROO_EPS",r.BUCKAROO_SOFORT="BUCKAROO_SOFORT",r.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",r.BUCKAROO_IDEAL="BUCKAROO_IDEAL",r.ATOME="ATOME",r.KLARNA_CUSTOMER_TOKEN="KLARNA_CUSTOMER_TOKEN",r))(vr||{}),$=(r=>(r.WORLDPAY_IDEAL="WORLDPAY_IDEAL",r.STRIPE_ACH="STRIPE_ACH",r.STRIPE_IDEAL="STRIPE_IDEAL",r.ADYEN_KLARNA="ADYEN_KLARNA",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",r.ADYEN_EPS="ADYEN_EPS",r.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",r.OMISE_PROMPTPAY="OMISE_PROMPTPAY",r.OMISE_TRUEMONEY="OMISE_TRUEMONEY",r.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",r.PACYPAY_WECHAT="PACYPAY_WECHAT",r.PACYPAY_ALIPAY="PACYPAY_ALIPAY",r.ADYEN_MBWAY="ADYEN_MBWAY",r.XENDIT_DANA="XENDIT_DANA",r.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",r.ADYEN_PAYSHOP="ADYEN_PAYSHOP",r.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",r.CLEARPAY="CLEARPAY",r.RAPYD_FAST="RAPYD_FAST",r.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",r.RAPYD_GCASH="RAPYD_GCASH",r.RAPYD_POLI="RAPYD_POLI",r.RAPYD_GRABPAY="RAPYD_GRABPAY",r.PRIMER_PAYPAL="PRIMER_PAYPAL",r.TWOC2P="TWOC2P",r.NETS="NETS",r.STRIPE_GIROPAY="STRIPE_GIROPAY",r.MOLLIE_GIROPAY="MOLLIE_GIROPAY",r.MOLLIE_EPS="MOLLIE_EPS",r.PAY_NL_EPS="PAY_NL_EPS",r.PAY_NL_P24="PAY_NL_P24",r.MOLLIE_P24="MOLLIE_P24",r.MOLLIE_SOFORT="MOLLIE_SOFORT",r.COINBASE="COINBASE",r.OPENNODE="OPENNODE",r.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",r.XFERS_PAYNOW="XFERS_PAYNOW",r.PAYMENT_CARD="PAYMENT_CARD",r.APPLE_PAY="APPLE_PAY",r.GOOGLE_PAY="GOOGLE_PAY",r.PAYPAL="PAYPAL",r.GO_CARDLESS="GOCARDLESS",r.KLARNA="KLARNA",r.PAY_NL_IDEAL="PAY_NL_IDEAL",r.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",r.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",r.PAY_NL_PAYPAL="PAY_NL_PAYPAL",r.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",r.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",r.PAY_NL_GIROPAY="PAY_NL_GIROPAY",r.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",r.HOOLAH="HOOLAH",r.ADYEN_BLIK="ADYEN_BLIK",r.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",r.ADYEN_VIPPS="ADYEN_VIPPS",r.ADYEN_GIROPAY="ADYEN_GIROPAY",r.ADYEN_SOFORT="ADYEN_SOFORT",r.ADYEN_IDEAL="ADYEN_IDEAL",r.ADYEN_TRUSTLY="ADYEN_TRUSTLY",r.ADYEN_ALIPAY="ADYEN_ALIPAY",r.ADYEN_TWINT="ADYEN_TWINT",r.ADYEN_BANK_TRANSFER="ADYEN_BANK_TRANSFER",r.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",r.MOLLIE_IDEAL="MOLLIE_IDEAL",r.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",r.BUCKAROO_EPS="BUCKAROO_EPS",r.BUCKAROO_SOFORT="BUCKAROO_SOFORT",r.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",r.BUCKAROO_IDEAL="BUCKAROO_IDEAL",r.ATOME="ATOME",r))($||{}),Xe=(r=>(r.PAYMENT_CARD="PAYMENT_CARD",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r))(Xe||{}),pr=(r=>(r.SINGLE_USE="SINGLE_USE",r.MULTI_USE="MULTI_USE",r))(pr||{});const br={PAYPAL_BILLING_AGREEMENT:"PAYPAL",KLARNA_CUSTOMER_TOKEN:"KLARNA"},_t=r=>{if(Object.values($).includes(r))return r;if(br[r])return br[r]};var xr=(r=>(r.INITIALIZATION_ERROR="INITIALIZATION_ERROR",r.NO_PAYMENT_METHODS="NO_PAYMENT_METHODS",r.PRIMER_TEARDOWN="PRIMER_TEARDOWN",r.PRIMER_SERVER_ERROR="PRIMER_SERVER_ERROR",r.THREE_DS_AUTH_FAILED="THREE_DS_AUTH_FAILED",r.TOKENIZATION_ERROR="TOKENIZATION_ERROR",r.DUPLICATE_PAYMENT_METHOD_ERROR="DUPLICATE_PAYMENT_METHOD_ERROR",r.CARD_NUMBER_ERROR="CARD_NUMBER_ERROR",r.PAYMENT_METHOD_NOT_SETUP="PAYMENT_METHOD_NOT_SETUP",r.PAYMENT_METHOD_NOT_PROVIDED="PAYMENT_METHOD_NOT_PROVIDED",r.PAYMENT_METHOD_NOT_COMPATIBLE="PAYMENT_METHOD_NOT_COMPATIBLE",r.RESUME_ERROR="RESUME_ERROR",r.VALIDATION_ERROR="VALIDATION_ERROR",r.PAYMENT_FAILED="PAYMENT_FAILED",r.PAYMENT_CREATION_ABORTED="PAYMENT_CREATION_ABORTED",r.PAYMENT_CREATION_DISABLED="PAYMENT_CREATION_DISABLED",r.CLIENT_SESSION_UPDATE_ERROR="CLIENT_SESSION_UPDATE_ERROR",r.INVALID_ARGUMENT="INVALID_ARGUMENT",r.VAULT_FETCH="VAULT_FETCH",r.VAULT_DELETE="VAULT_DELETE",r.HEADLESS_VAULT_MANAGER_VALIDATION="HEADLESS_VAULT_MANAGER_VALIDATION",r.CARD_FORM_VALIDATION_UNEXPECTED_FIELD="CARD_FORM_VALIDATION_UNEXPECTED_FIELD",r.MISSING_FIRST_NAME_OR_LAST_NAME="MISSING_FIRST_NAME_OR_LAST_NAME",r.MISSING_EMAIL_ADDRESS="MISSING_EMAIL_ADDRESS",r.INVALID_FLOW="INVALID_FLOW",r))(xr||{});class Hr extends Error{static fromErrorCode(e,t,o){return new Hr(e,t,o)}constructor(e,t,o){super(t.message),this.message=t.message,this.code=e,this.diagnosticsId=t.diagnosticsId||null,this.data=t.data,this.isFromDeveloper=t.isFromDeveloper??!1,o?.messageEvent?.({message:t.message,messageType:e,severity:"ERROR",...t.diagnosticsId&&{diagnosticsId:t.diagnosticsId},...t.errorId&&{errorId:t.errorId},...t.data&&{data:t.data},...t.isFromDeveloper!==void 0&&{isFromDeveloper:String(t.isFromDeveloper)},stack:this.stack})}}const Et=r=>{throw console.error(r.message),r};var ze=a(473),Fr=(r=>(r.PAYMENT_METHOD="PAYMENT_METHOD",r.CHECK="CHECK",r))(Fr||{});const Qe=r=>"fullMandateText"in r?.mandateData;var Gr=(r=>(r.CHANGE="change",r.ERROR="error",r.FOCUS="focus",r.BLUR="blur",r.CLICK="click",r.CLOSE="close",r))(Gr||{}),Kr=(r=>(r.CARD="CARD",r.NATIVE="NATIVE",r.REDIRECT="REDIRECT",r.FORM_WITH_REDIRECT="FORM_WITH_REDIRECT",r.KLARNA="KLARNA",r.ACH="ACH",r))(Kr||{});const Ze={SDK_VERSION:xe,createHeadless:He,showExpressCheckout:Fe,showUniversalCheckout:Ge,showVaultManager:Ke}})(),w})());
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
// Generated by dts-bundle-generator v6.9.0
|
|
2
2
|
|
|
3
|
-
import { Translator } from '@eo-locale/core';
|
|
4
|
-
import { Draft } from 'immer';
|
|
5
|
-
import { JSX } from 'preact';
|
|
6
|
-
import { Action, Listener, Store as IStore, Unsubscribe } from 'unistore';
|
|
7
|
-
|
|
8
3
|
export declare const preloadPrimer: () => Promise<void>;
|
|
9
4
|
export declare enum PaymentInstrumentType {
|
|
10
5
|
WORLDPAY_IDEAL = "WORLDPAY_IDEAL",
|
|
@@ -847,6 +842,17 @@ declare class LongPoll {
|
|
|
847
842
|
private request;
|
|
848
843
|
private tick;
|
|
849
844
|
}
|
|
845
|
+
export type Listener<K> = (state: K, action?: Action<K>) => void;
|
|
846
|
+
export type Unsubscribe = () => void;
|
|
847
|
+
export type Action<K> = (state: K, ...args: any[]) => void;
|
|
848
|
+
export type BoundAction = (...args: any[]) => void;
|
|
849
|
+
export interface IStore<K> {
|
|
850
|
+
action(action: Action<K>): BoundAction;
|
|
851
|
+
setState<U extends keyof K>(update: Pick<K, U>, overwrite?: boolean, action?: Action<K>): void;
|
|
852
|
+
subscribe(f: Listener<K>): Unsubscribe;
|
|
853
|
+
unsubscribe(f: Listener<K>): void;
|
|
854
|
+
getState(): K;
|
|
855
|
+
}
|
|
850
856
|
export interface NodeLike {
|
|
851
857
|
id: string;
|
|
852
858
|
}
|
|
@@ -871,6 +877,14 @@ export interface IBaseStore {
|
|
|
871
877
|
getState(): IBaseState;
|
|
872
878
|
subscribe(listener: any): any;
|
|
873
879
|
}
|
|
880
|
+
export type PrimitiveType = number | string | boolean;
|
|
881
|
+
export type AtomicObject = Function | Promise<any> | Date | RegExp;
|
|
882
|
+
export type IfAvailable<T, Fallback = void> = true | false extends (T extends never ? true : false) ? Fallback : keyof T extends never ? Fallback : T;
|
|
883
|
+
export type WeakReferences = IfAvailable<WeakMap<any, any>> | IfAvailable<WeakSet<any>>;
|
|
884
|
+
export type WritableDraft<T> = {
|
|
885
|
+
-readonly [K in keyof T]: Draft<T[K]>;
|
|
886
|
+
};
|
|
887
|
+
export type Draft<T> = T extends PrimitiveType ? T : T extends AtomicObject ? T : T extends IfAvailable<ReadonlyMap<infer K, infer V>> ? Map<Draft<K>, Draft<V>> : T extends IfAvailable<ReadonlySet<infer V>> ? Set<Draft<V>> : T extends WeakReferences ? T : T extends object ? WritableDraft<T> : T;
|
|
874
888
|
declare class BaseStore<K extends IBaseState> implements IBaseStore {
|
|
875
889
|
readonly stateType: K;
|
|
876
890
|
readonly state: IStore<K>;
|
|
@@ -954,7 +968,7 @@ export interface ITranslation {
|
|
|
954
968
|
declare class Translation implements ITranslation {
|
|
955
969
|
private translator;
|
|
956
970
|
private defaultTranslation?;
|
|
957
|
-
constructor(translator?:
|
|
971
|
+
constructor(translator?: any, defaultTranslation?: TranslationUnit);
|
|
958
972
|
_(key: string, options?: {
|
|
959
973
|
defaultMessage?: string;
|
|
960
974
|
} & Record<string, unknown>): string;
|
|
@@ -1201,7 +1215,7 @@ export type SecureInputOptions = {
|
|
|
1201
1215
|
name: string;
|
|
1202
1216
|
placeholder?: string;
|
|
1203
1217
|
placement?: "append" | "prepend";
|
|
1204
|
-
properties?:
|
|
1218
|
+
properties?: any;
|
|
1205
1219
|
style?: CheckoutStyle;
|
|
1206
1220
|
allowedCharactersMap?: Record<string, string>;
|
|
1207
1221
|
};
|