@primer-io/checkout-web 2.46.7 → 2.46.8
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 +2 -2
- package/package.json +1 -1
package/dist/Primer.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(h,R){typeof exports=="object"&&typeof module=="object"?module.exports=R():typeof define=="function"&&define.amd?define([],R):typeof exports=="object"?exports.Primer=R():h.Primer=R()})(this,()=>(()=>{var Q={476:()=>{},962:()=>{},473:()=>{}},h={};function R(a){var T=h[a];if(T!==void 0)return T.exports;var d=h[a]={exports:{}};return Q[a](d,d.exports,R),d.exports}R.d=(a,T)=>{for(var d in T)R.o(T,d)&&!R.o(a,d)&&Object.defineProperty(a,d,{enumerable:!0,get:T[d]})},R.o=(a,T)=>Object.prototype.hasOwnProperty.call(a,T),R.r=a=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})};var B={};return(()=>{"use strict";R.r(B),R.d(B,{CheckoutUXFlow:()=>Fr,ErrorCode:()=>$r,EventTypes:()=>Xr,HeadlessManagerType:()=>zr,PaymentFlow:()=>Gr,PaymentInstrumentType:()=>Kr,PaymentMethodData:()=>ot.PaymentMethodData,PaymentMethodType:()=>X,Primer:()=>it,SuccessScreenType:()=>jr,ThreeDSecureStatus:()=>mr,TokenType:()=>Vr,isStripeOptionsDropInWithFullMandateText:()=>At,preloadPrimer:()=>qe});class a extends Error{constructor(e,t=!1){super(e),this.isReported=t,this.name=this.constructor.name,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}static from(e,t=!1){if(e instanceof a)return e;const o=e instanceof Error?e.message:String(e),_=new a(o,t);return e instanceof Error&&e.stack&&(_.stack=e.stack,Object.assign(_,e)),_}markAsReported(){this.isReported=!0}}const T="https://analytics.production.data.primer.io/sdk-logs",d=T==="https://analytics.sandbox.data.primer.io/playwright";var nt=R(476),st=R(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 Qr={createHeadless:"HEADLESS_LOADING",showExpressCheckout:"EXPRESS_LOADING",showUniversalCheckout:"DROP_IN_LOADING",showVaultManager:"VAULT_MANAGER_LOADING"};var f=(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))(f||{});const Zr={get(r,e){let t;try{switch(r){case"PRIMER_SDK_VERSION":t="v2.46.7";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_BUILD_INTEGRATION_BUILDER":t=process.env.PRIMER_BUILD_INTEGRATION_BUILDER;break;default:break}}catch{}return t||e}};var qr=(r=>(r.CHARGING="CHARGING",r.NOT_CHARGING="NOT_CHARGING",r))(qr||{});async function Jr(){if(typeof navigator>"u"||typeof performance>"u")return;const r=await navigator.getBattery?.();return{memoryFootprint:performance.memory?.usedJSHeapSize,screen:{height:screen?.height,width:screen?.width},userAgent:navigator.userAgent,locale:navigator.language,batteryLevel:r?.level,batteryStatus:r?.charging?"CHARGING":"NOT_CHARGING"}}const yr="WEB",re=Zr.get("PRIMER_SDK_VERSION");async function Z(r,e,t){return{...t,createdAt:Date.now(),device:await Jr(),eventType:r,properties:e,sdkVersion:re,sdkType:yr}}const q=Symbol.for("__primerAnalytics__");let P={providers:new Map,timers:new Map,eventsQueue:new Map};if(typeof window<"u"){const r=window[q];r?P=r:window[q]=P}const J=()=>P.providers,b=()=>P.timers,C=()=>P.eventsQueue,y=500,M=new Map,rr=64e3,ee=5;function x(r,e=!1,t=1){if(M.has(r)){const A=M.get(r);clearTimeout(A),M.delete(r)}const o=()=>{const A=C().get(r);if(A?.length){let i=!0,E=[],s=0,n=0;for(;n<A.length;){const c=A[n],L=JSON.stringify(c),O=new Blob([L]).size;if(O>rr){console.error("Event size exceeds maximum payload size and will be skipped:",c),n++;continue}if(s+O>rr&&E.length>0){try{i=navigator.sendBeacon(r,JSON.stringify(E))}catch(D){i=!1,console.error("Unable to send events",D)}if(!i)break;E=[],s=0}E.push(c),s+=O,n++}if(E.length>0&&i)try{i=navigator.sendBeacon(r,JSON.stringify(E))}catch(c){i=!1,console.error("Unable to send events",c)}if(i)C().delete(r);else if(t<ee){const c=y*Math.pow(2,t);setTimeout(()=>x(r,e,t+1),c)}else console.error("Max retry attempts reached. Events will not be sent.")}};if(e){o();return}const _=setTimeout(o,y);M.set(r,_)}function te(r,e){C().has(r)||C().set(r,[]),C().get(r)?.push(e),x(r)}const er=1024*5;function tr(r,e,t=new WeakSet,o=0,_=10){if(o>_||t.has(r))return r;t.add(r);const A=i=>typeof i=="object"&&i!==null?tr(i,e,t,o+1,_):e(i);return Array.isArray(r)?r.map(A):Object.fromEntries(Object.entries(r).map(([i,E])=>[i,A(E)]))}function oe(r){return typeof r=="string"&&r.length>er?`${r.slice(0,er)}...`:r}function Ae(r){return typeof r=="function"?r.name||"function":r}let or=!1;function H({url:r=T,...e}){typeof document<"u"&&!or&&(document.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&x(r,!0)}),or=!0);const t=_=>async A=>{if(typeof navigator>"u")return;const i=await Z(_,A,e),E=n=>oe(Ae(n));if(d)return;const s=tr(i,E);te(r,s)},o={crashEvent:t(f.CRASH_EVENT),messageEvent:t(f.MESSAGE_EVENT),networkCallEvent:t(f.NETWORK_CALL_EVENT),sdkFunctionEvent:t(f.SDK_FUNCTION_EVENT),timerStart:({id:_,...A})=>{const i=`${e.checkoutSessionId}|${_}`,E=performance?.now?performance.now():Date.now();return b().set(i,{start:E}),t(f.TIMER_EVENT)({...A,id:_,timerType:p.START})},timerEnd:({id:_,...A})=>{const i=`${e.checkoutSessionId}|${_}`,{start:E=void 0}=b().get(i)??{};b().delete(i);const s=performance?.now?performance.now():Date.now(),n=E?s-E:void 0;return t(f.TIMER_EVENT)({...A,id:_,timerType:p.END,duration:n})},v1Event:t(f.V1_EVENT),url:r};return J().set(e.checkoutSessionId,o),U(e.checkoutSessionId)}function U(r){return new Proxy({},{get(e,t){return(J().get(r)??H({checkoutSessionId:r}))[t]}})}const F=(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});function ie(r){return r?new Promise(e=>{setTimeout(e,r)}):Promise.resolve()}const Ee=8,_e=100,ne=100;function se(r){return{enabled:r?.enabled??!1,maxRetries:Ee,initialBackoff:_e,retryNetworkErrors:!0,retry500Errors:!1,maxJitter:ne}}function ce(r,e,t){const o=r*Math.pow(2,e-1),_=Math.random()*t;return Math.min(o+_,Number.MAX_SAFE_INTEGER)}async function Ar(r,e,t,o=ie){let _=0;const A=se(e);if(!A.enabled)return r();for(;;)try{const i=await r();if(_){let E=`Request succeeded after ${_} 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,s=_>=A.maxRetries,n=E.isNetworkError&&!A.retryNetworkErrors,c=E.status&&E.status>=500&&!A.retry500Errors;if(s||n||c){let D=`Failed after ${_} retries. `;throw s?D+=`Reached maximum retries (${A.maxRetries}).`:n?D+="Network error encountered and retryNetworkErrors is disabled.":c&&(D+="HTTP 500 error encountered and retry500Errors is disabled."),D+=` Last error: ${E.message}`,t?.({messageType:"RETRY_FAILED",message:D,severity:"ERROR",errorBody:JSON.stringify(i,Object.getOwnPropertyNames(i))}),new Error(D,{cause:i})}_++;const L=ce(A.initialBackoff,_,A.maxJitter);let O="Unknown error";E.isNetworkError?O="Network error":E.status&&(O=`HTTP ${E.status} error`),t?.({messageType:"RETRY",message:`Retry attempt ${_}/${A.maxRetries} due to: ${O}. Error details: ${E.message}. Waiting for ${L.toFixed(2)}ms before next attempt.`,severity:"WARN",errorBody:JSON.stringify(i,Object.getOwnPropertyNames(i))}),await o(L)}}let G={cache:new Map};typeof window<"u"&&(window.__primerCache__??(window.__primerCache__=G),G=window.__primerCache__);const u=()=>G.cache,ir=1e3*60*60,ae=30,Er=50;function _r(){if(u().size<=ae)return;const r=Date.now();for(const[e,t]of u())t.exp<r&&u().delete(e);if(u().size>Er)for(const[e]of u()){if(u().size<=Er)break;u().delete(e)}}function Ne({key:r,ttl:e=ir},t){e?u().set(r,{promise:Promise.resolve({...t,source:"CACHE"}),exp:Date.now()+e}):u().delete(r)}function Re(r){if(!r)return A=>A();const{key:e,refresh:t=!1,usePrimerSessionCacheTtlHeader:o=!1,ttl:_=ir}=r;return async A=>{const i=Date.now(),E=u().get(e);if(!t&&E&&E.exp>i)return E.promise;E&&u().delete(e);const s=A().then(n=>{let c=_;return o&&(c=(Number(n.headers.get("x-primer-session-cache-ttl"))||0)*1e3),Ne({key:e,ttl:c},n),_r(),n},n=>{throw u().delete(e),n});return u().set(e,{promise:s,exp:i+_}),_r(),s}}const nr=()=>sr.randomUUID?.()||Oe(),Oe=()=>("10000000-1000-4000-8000"+-1e11).replace(/[018]/g,r=>(r^ue()>>r/4).toString(16)),ue=()=>(sr.getRandomValues?.(new Uint8Array(1))[0]??Math.random()*16)&15,sr=typeof crypto<"u"?crypto:{},cr=15e3,De=(r,e,t)=>ar(r,"get",e,t),Te=(r,e,t,o)=>ar(r,"post",e,o,JSON.stringify(t)),ar=async(r,e,t,o,_)=>{const A=nr(),i=performance?.now();let E=U(r);const s={method:e,url:t,body:_};E.networkCallEvent(F(A,s));try{const n=await fetch(t,{body:_,method:e,headers:{"content-type":"application/json","x-request-id":A,...o}});if(!n.ok){const D=new Error(`HTTP error! status: ${n.status}`);throw D.status=n.status,D}const c=await n.json();if(t.includes("client-sdk/configuration")){const{primerAccountId:D,clientSession:{clientSessionId:Et,customer:_t}}=c;E=H({checkoutSessionId:r,clientSessionId:Et,customerId:_t?.customerId,primerAccountId:D,url:E.url})}const O=performance?.now()-i;return E.networkCallEvent(F(A,s,{data:c},O)),{data:c,headers:n.headers,status:n.status,source:"NETWORK"}}catch(n){const L=performance?.now()-i;throw Object.assign(n,{isNetworkError:n instanceof TypeError}),E.networkCallEvent(F(A,s,{error:n},L)),n}},Nr=(r,e)=>new Promise((t,o)=>{const _=setTimeout(()=>{const A=new Error("Request timed out");A.isNetworkError=!0,o(A)},e);r.then(t).catch(o).finally(()=>clearTimeout(_))}),de=(r,e)=>{const{headers:t,retryConfig:o,cacheConfig:_,timeout:A=cr,checkoutSessionId:i}=e,E=U(i);return Re(_)(()=>Ar(()=>Nr(De(i,r,t),A),o,s=>E.messageEvent({...s,url:r})))},ct=(r,e,t)=>{const{headers:o,retryConfig:_,cacheConfig:A,timeout:i=cr,checkoutSessionId:E}=t,s=getAnalytics(E);return cacheRequest(A)(()=>retryWithExponentialBackoff(()=>Nr(Te(E,r,e,o),i),_,n=>s.messageEvent({...n,url:r})))},Rr="3.6.1",fe=Rr,Le=typeof atob=="function",Se=typeof btoa=="function",S=typeof Buffer=="function",Or=typeof TextDecoder=="function"?new TextDecoder:void 0,ur=typeof TextEncoder=="function"?new TextEncoder:void 0,Y=[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],g=(r=>{let e={};return r.forEach((t,o)=>e[t]=o),e})(Y),le=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,N=String.fromCharCode.bind(String),Dr=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):(r,e=t=>t)=>new Uint8Array(Array.prototype.slice.call(r,0).map(e)),Tr=r=>r.replace(/[+\/]/g,e=>e=="+"?"-":"_").replace(/=+$/m,""),dr=r=>r.replace(/[^A-Za-z0-9\+\/]/g,""),fr=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||(_=r.charCodeAt(E++))>255)throw new TypeError("invalid character found");e=t<<16|o<<8|_,A+=Y[e>>18&63]+Y[e>>12&63]+Y[e>>6&63]+Y[e&63]}return i?A.slice(0,i-3)+"===".substring(i):A},m=Se?r=>btoa(r):S?r=>Buffer.from(r,"binary").toString("base64"):fr,K=S?r=>Buffer.from(r).toString("base64"):r=>{let t=[];for(let o=0,_=r.length;o<_;o+=4096)t.push(N.apply(null,r.subarray(o,o+4096)));return m(t.join(""))},k=(r,e=!1)=>e?Tr(K(r)):K(r),Pe=r=>{if(r.length<2){var e=r.charCodeAt(0);return e<128?r:e<2048?N(192|e>>>6)+N(128|e&63):N(224|e>>>12&15)+N(128|e>>>6&63)+N(128|e&63)}else{var e=65536+(r.charCodeAt(0)-55296)*1024+(r.charCodeAt(1)-56320);return N(240|e>>>18&7)+N(128|e>>>12&63)+N(128|e>>>6&63)+N(128|e&63)}},Ce=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,Lr=r=>r.replace(Ce,Pe),Sr=S?r=>Buffer.from(r,"utf8").toString("base64"):ur?r=>K(ur.encode(r)):r=>m(Lr(r)),l=(r,e=!1)=>e?Tr(Sr(r)):Sr(r),lr=r=>l(r,!0),Ye=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,Ie=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 N((t>>>10)+55296)+N((t&1023)+56320);case 3:return N((15&r.charCodeAt(0))<<12|(63&r.charCodeAt(1))<<6|63&r.charCodeAt(2));default:return N((31&r.charCodeAt(0))<<6|63&r.charCodeAt(1))}},Pr=r=>r.replace(Ye,Ie),Cr=r=>{if(r=r.replace(/\s+/g,""),!le.test(r))throw new TypeError("malformed base64.");r+="==".slice(2-(r.length&3));let e,t="",o,_;for(let A=0;A<r.length;)e=g[r.charAt(A++)]<<18|g[r.charAt(A++)]<<12|(o=g[r.charAt(A++)])<<6|(_=g[r.charAt(A++)]),t+=o===64?N(e>>16&255):_===64?N(e>>16&255,e>>8&255):N(e>>16&255,e>>8&255,e&255);return t},V=Le?r=>atob(dr(r)):S?r=>Buffer.from(r,"base64").toString("binary"):Cr,Yr=S?r=>Dr(Buffer.from(r,"base64")):r=>Dr(V(r),e=>e.charCodeAt(0)),Ir=r=>Yr(hr(r)),he=S?r=>Buffer.from(r,"base64").toString("utf8"):Or?r=>Or.decode(Yr(r)):r=>Pr(V(r)),hr=r=>dr(r.replace(/[-_]/g,e=>e=="-"?"+":"/")),W=r=>he(hr(r)),Me=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)},Mr=r=>({value:r,enumerable:!1,writable:!0,configurable:!0}),Ur=function(){const r=(e,t)=>Object.defineProperty(String.prototype,e,Mr(t));r("fromBase64",function(){return W(this)}),r("toBase64",function(e){return l(this,e)}),r("toBase64URI",function(){return l(this,!0)}),r("toBase64URL",function(){return l(this,!0)}),r("toUint8Array",function(){return Ir(this)})},gr=function(){const r=(e,t)=>Object.defineProperty(Uint8Array.prototype,e,Mr(t));r("toBase64",function(e){return k(this,e)}),r("toBase64URI",function(){return k(this,!0)}),r("toBase64URL",function(){return k(this,!0)})},kr={version:Rr,VERSION:fe,atob:V,atobPolyfill:Cr,btoa:m,btoaPolyfill:fr,fromBase64:W,toBase64:l,encode:l,encodeURI:lr,encodeURL:lr,utob:Lr,btou:Pr,decode:W,isValid:Me,fromUint8Array:k,toUint8Array:Ir,extendString:Ur,extendUint8Array:gr,extendBuiltins:()=>{Ur(),gr()}},Ue={encode:ge,decode:kr.decode};function ge(r,e={}){const{urlSafe:t=!1}=e;return kr.encode(r,t)}function ke(r){const e=ve(r),t=e.exp*1e3;if(Date.now()>t)throw new Error(`${we}. Expiration date: ${new Date(t).toISOString()}`);return e}const wr="The provided `clientToken`",we=`${wr} has expired`,Be=`${wr} is malformed`;function ve(r){try{const[e,t]=r.split("."),o=t||e;return JSON.parse(Ue.decode(o))}catch{throw new Error(Be)}}const pe="v2.46.7",be=(r,e,t)=>({"primer-client-token":r,"primer-sdk-client":"WEB","primer-sdk-version":pe,"primer-sdk-checkout-session-id":e,...t&&{"x-api-version":t}});async function xe(r,e,t){const{accessToken:o,configurationUrl:_,analyticsUrlV2:A}=ke(r),i=H({checkoutSessionId:e,url:A});i.timerStart({id:"CONFIGURATION_LOADING"});try{const{data:E,source:s}=await de(`${_}/?withDisplayMetadata=true`,{checkoutSessionId:e,headers:be(o,e,"2.3"),retryConfig:{enabled:!0},cacheConfig:t});return i.timerEnd({id:"CONFIGURATION_LOADING",context:{source:s}}),E}catch(E){const s=E instanceof Error?E.message:"Unknown error occurred";throw new Error(`Failed to initialize client: ${s}`)}}function Br(r){return r instanceof Error?{errorBody:r.message,stacktrace:r.stack}:typeof r=="object"&&r!==null&&"message"in r?{errorBody:String(r.message),stacktrace:"stack"in r?String(r.stack):void 0}:{errorBody:String(r||"Unknown error")}}function $({checkoutSessionId:r,analytics:e,error:t,reporter:o}){e?.crashEvent?e.crashEvent({...Br(t),reporter:o}):r&&vr(r,t,o)}async function vr(r,e,t){const o=T;if(d)return;const _=await Z(f.CRASH_EVENT,{...Br(e),reporter:t},{checkoutSessionId:r});try{await fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(_)})}catch(A){console.error("Failed to post crash event",A)}}const pr=Symbol.for("initGlobalErrorMonitoringLoaded"),He=(r,e)=>{typeof window<"u"&&window[pr]||(window[pr]=!0,window.addEventListener("error",t=>{Fe(t)||Ge(t)&&$({checkoutSessionId:r,analytics:e,error:t.error,reporter:"window.onerror"})}),window.addEventListener("unhandledrejection",t=>{const o=t.reason||new Error("Unhandled promise rejection");me(o)&&$({checkoutSessionId:r,analytics:e,error:o,reporter:"unhandledrejection"})}))},Fe=r=>r.message==="Script error."||!r.filename||r.lineno===0,Ge=r=>{const e=r.filename;return!!(e&&j(e)&&new a(r.error).isReported)},me=r=>{if(r&&typeof r=="object"&&"stack"in r&&typeof r.stack=="string"){const e=a.from(r);if(e.isReported)return!1;if("fileName"in r&&typeof r.fileName=="string"){const o=r.fileName;if(j(o))return!0}return Ke(e.stack).some(j)}return!1},j=r=>{try{return new URL(r,window.location.origin).hostname.endsWith(".primer.io")}catch{return!1}},Ke=r=>{if(!r)return[];const e=r.split(`
|
|
2
|
-
`),t=[],o=/^\s*at\s+(?:.*?\s+)?\(?(.+?):\d+:\d+\)?$/;for(const _ of e){const A=_.match(o);if(A&&A[1])t.push(A[1]);else{const i=/@(.*?):\d+:\d+$/,E=_.match(i);E&&E[1]&&t.push(E[1])}}return t};function Ve(r,e){const t=document.createElement(r);return Object.entries(e).forEach(([o,_])=>t.setAttribute(o,_)),t}function br(r,e,t){return document.querySelector(`${r}[${e}^="${t}"]`)}async function xr(r,e,t,o,_,A){const{analytics:i,name:E=e,retryConfig:s}=A;await Ar(()=>new Promise((c,L)=>{const O=br(r,t,e)||Ve(r,{...o,[t]:e});O.onload=()=>{i?.sdkFunctionEvent({name:E,params:[`${r.charAt(0).toUpperCase()+r.slice(1)} loaded successfully: ${e}`]}),c()},O.onerror=()=>{O.remove(),L(new Error(`${_}: ${e}`))},O.parentNode||document.head.appendChild(O)}),s,c=>i?.messageEvent({...c,url:e}))}function We(r,e={}){return br("script","src",r)&&window.__Primer?(e.analytics?.sdkFunctionEvent({name:e.name??r,params:["Script already loaded"]}),Promise.resolve()):xr("script",r,"src",{...e.attributes,async:"",crossorigin:"anonymous"},"Can't load Primer SDK",e)}function $e(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()):xr("link",r,"href",{...e.attributes,rel:"stylesheet"},"Can't load Primer SDK's Stylesheet",e)}let I;async function Hr(r){return I||(I=Promise.all([We("https://sdk.primer.io/web/v2.46.7/PrimerCoreSDK.min.js",{analytics:r,name:"loadPrimerScript"}),$e("https://sdk.primer.io/web/v2.46.7/Checkout.css",{analytics:r,name:"loadPrimerCss"})]).then(()=>{const o=window.__Primer;return delete window.__Primer,o}).catch(o=>{throw I=void 0,o}),I)}const je="v2.46.7",Xe=w("createHeadless"),ze=w("showExpressCheckout"),Qe=w("showUniversalCheckout"),Ze=w("showVaultManager");function w(r){return async(...[e,t,...o])=>{const _=nr();try{const A=U(_);try{He(_,A),A.sdkFunctionEvent({name:r,params:[e,t,...o]}),A.timerStart({id:Qr[r]});const[i,E]=await Promise.all([xe(e,_,t?.clientSessionCachingEnabled?{key:e,usePrimerSessionCacheTtlHeader:!0}:void 0),Hr(A)]);return E[r](i,_,e,t,...o)}catch(i){const E=a.from(i);throw E.isReported||($({checkoutSessionId:_,analytics:A,error:E,reporter:"lazyLoad level 1"}),E.markAsReported()),E}}catch(A){const i=a.from(A);throw i.isReported||(vr(_,i,"lazyLoad level 0"),i.markAsReported()),i}}}const qe=()=>Hr().then(()=>{});var Je=(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))(Je||{}),ye=(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))(ye||{}),rt=(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))(rt||{}),Fr=(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))(Fr||{}),Gr=(r=>(r.DEFAULT="DEFAULT",r.PREFER_VAULT="PREFER_VAULT",r))(Gr||{}),et=(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))(et||{}),mr=(r=>(r.SUCCESS="AUTH_SUCCESS",r.FAILED="AUTH_FAILED",r.SKIPPED="SKIPPED",r.CHALLENGE="CHALLENGE",r))(mr||{}),Kr=(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))(Kr||{}),X=(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))(X||{}),tt=(r=>(r.PAYMENT_CARD="PAYMENT_CARD",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r))(tt||{}),Vr=(r=>(r.SINGLE_USE="SINGLE_USE",r.MULTI_USE="MULTI_USE",r))(Vr||{});const Wr={PAYPAL_BILLING_AGREEMENT:"PAYPAL",KLARNA_CUSTOMER_TOKEN:"KLARNA"},Rt=r=>{if(Object.values(X).includes(r))return r;if(Wr[r])return Wr[r]};var $r=(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))($r||{});class z extends null{static fromErrorCode(e,t,o){return new z(e,t,o)}constructor(e,t,o){super(t.message),this.code=e,this.diagnosticsId=t.diagnosticsId??null,this.data=t.data,this.isFromDeveloper=t.isFromDeveloper??!1,this.name="PrimerClientError",Error.captureStackTrace&&Error.captureStackTrace(this,z),o&&(o.messageEvent({message:`${e}: ${t.message}`,messageType:e,severity:"ERROR",diagnosticsId:t.diagnosticsId??void 0,errorId:t.errorId??void 0,data:t.data??void 0,isFromDeveloper:t.isFromDeveloper?.toString(),stack:this.stack}),this.markAsReported())}}var ot=R(473),jr=(r=>(r.PAYMENT_METHOD="PAYMENT_METHOD",r.CHECK="CHECK",r))(jr||{});const At=r=>"fullMandateText"in r?.mandateData;var Xr=(r=>(r.CHANGE="change",r.ERROR="error",r.FOCUS="focus",r.BLUR="blur",r.CLICK="click",r.CLOSE="close",r))(Xr||{}),zr=(r=>(r.CARD="CARD",r.NATIVE="NATIVE",r.REDIRECT="REDIRECT",r.FORM_WITH_REDIRECT="FORM_WITH_REDIRECT",r.KLARNA="KLARNA",r.ACH="ACH",r))(zr||{});const it={SDK_VERSION:je,createHeadless:Xe,showExpressCheckout:ze,showUniversalCheckout:Qe,showVaultManager:Ze}})(),B})());
|
|
1
|
+
(function(h,R){typeof exports=="object"&&typeof module=="object"?module.exports=R():typeof define=="function"&&define.amd?define([],R):typeof exports=="object"?exports.Primer=R():h.Primer=R()})(this,()=>(()=>{var Q={476:()=>{},962:()=>{},473:()=>{}},h={};function R(a){var T=h[a];if(T!==void 0)return T.exports;var d=h[a]={exports:{}};return Q[a](d,d.exports,R),d.exports}R.d=(a,T)=>{for(var d in T)R.o(T,d)&&!R.o(a,d)&&Object.defineProperty(a,d,{enumerable:!0,get:T[d]})},R.o=(a,T)=>Object.prototype.hasOwnProperty.call(a,T),R.r=a=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(a,"__esModule",{value:!0})};var B={};return(()=>{"use strict";R.r(B),R.d(B,{CheckoutUXFlow:()=>Fr,ErrorCode:()=>$r,EventTypes:()=>Xr,HeadlessManagerType:()=>zr,PaymentFlow:()=>Gr,PaymentInstrumentType:()=>Kr,PaymentMethodData:()=>ot.PaymentMethodData,PaymentMethodType:()=>X,Primer:()=>it,SuccessScreenType:()=>jr,ThreeDSecureStatus:()=>mr,TokenType:()=>Vr,isStripeOptionsDropInWithFullMandateText:()=>At,preloadPrimer:()=>qe});class a extends Error{constructor(e,t=!1){super(e),this.isReported=t,this.name=this.constructor.name,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}static from(e,t=!1){if(e instanceof a)return e;const o=e instanceof Error?e.message:String(e),_=new a(o,t);return e instanceof Error&&e.stack&&(_.stack=e.stack,Object.assign(_,e)),_}markAsReported(){this.isReported=!0}}const T="https://analytics.production.data.primer.io/sdk-logs",d=T==="https://analytics.sandbox.data.primer.io/playwright";var nt=R(476),st=R(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 Qr={createHeadless:"HEADLESS_LOADING",showExpressCheckout:"EXPRESS_LOADING",showUniversalCheckout:"DROP_IN_LOADING",showVaultManager:"VAULT_MANAGER_LOADING"};var f=(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))(f||{});const Zr={get(r,e){let t;try{switch(r){case"PRIMER_SDK_VERSION":t="v2.46.8";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_BUILD_INTEGRATION_BUILDER":t=process.env.PRIMER_BUILD_INTEGRATION_BUILDER;break;default:break}}catch{}return t||e}};var qr=(r=>(r.CHARGING="CHARGING",r.NOT_CHARGING="NOT_CHARGING",r))(qr||{});async function Jr(){if(typeof navigator>"u"||typeof performance>"u")return;const r=await navigator.getBattery?.();return{memoryFootprint:performance.memory?.usedJSHeapSize,screen:{height:screen?.height,width:screen?.width},userAgent:navigator.userAgent,locale:navigator.language,batteryLevel:r?.level,batteryStatus:r?.charging?"CHARGING":"NOT_CHARGING"}}const yr="WEB",re=Zr.get("PRIMER_SDK_VERSION");async function Z(r,e,t){return{...t,createdAt:Date.now(),device:await Jr(),eventType:r,properties:e,sdkVersion:re,sdkType:yr}}const q=Symbol.for("__primerAnalytics__");let P={providers:new Map,timers:new Map,eventsQueue:new Map};if(typeof window<"u"){const r=window[q];r?P=r:window[q]=P}const J=()=>P.providers,b=()=>P.timers,C=()=>P.eventsQueue,y=500,M=new Map,rr=64e3,ee=5;function x(r,e=!1,t=1){if(M.has(r)){const A=M.get(r);clearTimeout(A),M.delete(r)}const o=()=>{const A=C().get(r);if(A?.length){let i=!0,E=[],s=0,n=0;for(;n<A.length;){const c=A[n],L=JSON.stringify(c),O=new Blob([L]).size;if(O>rr){console.error("Event size exceeds maximum payload size and will be skipped:",c),n++;continue}if(s+O>rr&&E.length>0){try{i=navigator.sendBeacon(r,JSON.stringify(E))}catch(D){i=!1,console.error("Unable to send events",D)}if(!i)break;E=[],s=0}E.push(c),s+=O,n++}if(E.length>0&&i)try{i=navigator.sendBeacon(r,JSON.stringify(E))}catch(c){i=!1,console.error("Unable to send events",c)}if(i)C().delete(r);else if(t<ee){const c=y*Math.pow(2,t);setTimeout(()=>x(r,e,t+1),c)}else console.error("Max retry attempts reached. Events will not be sent.")}};if(e){o();return}const _=setTimeout(o,y);M.set(r,_)}function te(r,e){C().has(r)||C().set(r,[]),C().get(r)?.push(e),x(r)}const er=1024*5;function tr(r,e,t=new WeakSet,o=0,_=10){if(o>_||t.has(r))return r;t.add(r);const A=i=>typeof i=="object"&&i!==null?tr(i,e,t,o+1,_):e(i);return Array.isArray(r)?r.map(A):Object.fromEntries(Object.entries(r).map(([i,E])=>[i,A(E)]))}function oe(r){return typeof r=="string"&&r.length>er?`${r.slice(0,er)}...`:r}function Ae(r){return typeof r=="function"?r.name||"function":r}let or=!1;function H({url:r=T,...e}){typeof document<"u"&&!or&&(document.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&x(r,!0)}),or=!0);const t=_=>async A=>{if(typeof navigator>"u")return;const i=await Z(_,A,e),E=n=>oe(Ae(n));if(d)return;const s=tr(i,E);te(r,s)},o={crashEvent:t(f.CRASH_EVENT),messageEvent:t(f.MESSAGE_EVENT),networkCallEvent:t(f.NETWORK_CALL_EVENT),sdkFunctionEvent:t(f.SDK_FUNCTION_EVENT),timerStart:({id:_,...A})=>{const i=`${e.checkoutSessionId}|${_}`,E=performance?.now?performance.now():Date.now();return b().set(i,{start:E}),t(f.TIMER_EVENT)({...A,id:_,timerType:p.START})},timerEnd:({id:_,...A})=>{const i=`${e.checkoutSessionId}|${_}`,{start:E=void 0}=b().get(i)??{};b().delete(i);const s=performance?.now?performance.now():Date.now(),n=E?s-E:void 0;return t(f.TIMER_EVENT)({...A,id:_,timerType:p.END,duration:n})},v1Event:t(f.V1_EVENT),url:r};return J().set(e.checkoutSessionId,o),U(e.checkoutSessionId)}function U(r){return new Proxy({},{get(e,t){return(J().get(r)??H({checkoutSessionId:r}))[t]}})}const F=(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});function ie(r){return r?new Promise(e=>{setTimeout(e,r)}):Promise.resolve()}const Ee=8,_e=100,ne=100;function se(r){return{enabled:r?.enabled??!1,maxRetries:Ee,initialBackoff:_e,retryNetworkErrors:!0,retry500Errors:!1,maxJitter:ne}}function ce(r,e,t){const o=r*Math.pow(2,e-1),_=Math.random()*t;return Math.min(o+_,Number.MAX_SAFE_INTEGER)}async function Ar(r,e,t,o=ie){let _=0;const A=se(e);if(!A.enabled)return r();for(;;)try{const i=await r();if(_){let E=`Request succeeded after ${_} 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,s=_>=A.maxRetries,n=E.isNetworkError&&!A.retryNetworkErrors,c=E.status&&E.status>=500&&!A.retry500Errors;if(s||n||c){let D=`Failed after ${_} retries. `;throw s?D+=`Reached maximum retries (${A.maxRetries}).`:n?D+="Network error encountered and retryNetworkErrors is disabled.":c&&(D+="HTTP 500 error encountered and retry500Errors is disabled."),D+=` Last error: ${E.message}`,t?.({messageType:"RETRY_FAILED",message:D,severity:"ERROR",errorBody:JSON.stringify(i,Object.getOwnPropertyNames(i))}),new Error(D,{cause:i})}_++;const L=ce(A.initialBackoff,_,A.maxJitter);let O="Unknown error";E.isNetworkError?O="Network error":E.status&&(O=`HTTP ${E.status} error`),t?.({messageType:"RETRY",message:`Retry attempt ${_}/${A.maxRetries} due to: ${O}. Error details: ${E.message}. Waiting for ${L.toFixed(2)}ms before next attempt.`,severity:"WARN",errorBody:JSON.stringify(i,Object.getOwnPropertyNames(i))}),await o(L)}}let G={cache:new Map};typeof window<"u"&&(window.__primerCache__??(window.__primerCache__=G),G=window.__primerCache__);const u=()=>G.cache,ir=1e3*60*60,ae=30,Er=50;function _r(){if(u().size<=ae)return;const r=Date.now();for(const[e,t]of u())t.exp<r&&u().delete(e);if(u().size>Er)for(const[e]of u()){if(u().size<=Er)break;u().delete(e)}}function Ne({key:r,ttl:e=ir},t){e?u().set(r,{promise:Promise.resolve({...t,source:"CACHE"}),exp:Date.now()+e}):u().delete(r)}function Re(r){if(!r)return A=>A();const{key:e,refresh:t=!1,usePrimerSessionCacheTtlHeader:o=!1,ttl:_=ir}=r;return async A=>{const i=Date.now(),E=u().get(e);if(!t&&E&&E.exp>i)return E.promise;E&&u().delete(e);const s=A().then(n=>{let c=_;return o&&(c=(Number(n.headers.get("x-primer-session-cache-ttl"))||0)*1e3),Ne({key:e,ttl:c},n),_r(),n},n=>{throw u().delete(e),n});return u().set(e,{promise:s,exp:i+_}),_r(),s}}const nr=()=>sr.randomUUID?.()||Oe(),Oe=()=>("10000000-1000-4000-8000"+-1e11).replace(/[018]/g,r=>(r^ue()>>r/4).toString(16)),ue=()=>(sr.getRandomValues?.(new Uint8Array(1))[0]??Math.random()*16)&15,sr=typeof crypto<"u"?crypto:{},cr=15e3,De=(r,e,t)=>ar(r,"get",e,t),Te=(r,e,t,o)=>ar(r,"post",e,o,JSON.stringify(t)),ar=async(r,e,t,o,_)=>{const A=nr(),i=performance?.now();let E=U(r);const s={method:e,url:t,body:_};E.networkCallEvent(F(A,s));try{const n=await fetch(t,{body:_,method:e,headers:{"content-type":"application/json","x-request-id":A,...o}});if(!n.ok){const D=new Error(`HTTP error! status: ${n.status}`);throw D.status=n.status,D}const c=await n.json();if(t.includes("client-sdk/configuration")){const{primerAccountId:D,clientSession:{clientSessionId:Et,customer:_t}}=c;E=H({checkoutSessionId:r,clientSessionId:Et,customerId:_t?.customerId,primerAccountId:D,url:E.url})}const O=performance?.now()-i;return E.networkCallEvent(F(A,s,{data:c},O)),{data:c,headers:n.headers,status:n.status,source:"NETWORK"}}catch(n){const L=performance?.now()-i;throw Object.assign(n,{isNetworkError:n instanceof TypeError}),E.networkCallEvent(F(A,s,{error:n},L)),n}},Nr=(r,e)=>new Promise((t,o)=>{const _=setTimeout(()=>{const A=new Error("Request timed out");A.isNetworkError=!0,o(A)},e);r.then(t).catch(o).finally(()=>clearTimeout(_))}),de=(r,e)=>{const{headers:t,retryConfig:o,cacheConfig:_,timeout:A=cr,checkoutSessionId:i}=e,E=U(i);return Re(_)(()=>Ar(()=>Nr(De(i,r,t),A),o,s=>E.messageEvent({...s,url:r})))},ct=(r,e,t)=>{const{headers:o,retryConfig:_,cacheConfig:A,timeout:i=cr,checkoutSessionId:E}=t,s=getAnalytics(E);return cacheRequest(A)(()=>retryWithExponentialBackoff(()=>Nr(Te(E,r,e,o),i),_,n=>s.messageEvent({...n,url:r})))},Rr="3.6.1",fe=Rr,Le=typeof atob=="function",Se=typeof btoa=="function",S=typeof Buffer=="function",Or=typeof TextDecoder=="function"?new TextDecoder:void 0,ur=typeof TextEncoder=="function"?new TextEncoder:void 0,Y=[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],g=(r=>{let e={};return r.forEach((t,o)=>e[t]=o),e})(Y),le=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,N=String.fromCharCode.bind(String),Dr=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):(r,e=t=>t)=>new Uint8Array(Array.prototype.slice.call(r,0).map(e)),Tr=r=>r.replace(/[+\/]/g,e=>e=="+"?"-":"_").replace(/=+$/m,""),dr=r=>r.replace(/[^A-Za-z0-9\+\/]/g,""),fr=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||(_=r.charCodeAt(E++))>255)throw new TypeError("invalid character found");e=t<<16|o<<8|_,A+=Y[e>>18&63]+Y[e>>12&63]+Y[e>>6&63]+Y[e&63]}return i?A.slice(0,i-3)+"===".substring(i):A},m=Se?r=>btoa(r):S?r=>Buffer.from(r,"binary").toString("base64"):fr,K=S?r=>Buffer.from(r).toString("base64"):r=>{let t=[];for(let o=0,_=r.length;o<_;o+=4096)t.push(N.apply(null,r.subarray(o,o+4096)));return m(t.join(""))},k=(r,e=!1)=>e?Tr(K(r)):K(r),Pe=r=>{if(r.length<2){var e=r.charCodeAt(0);return e<128?r:e<2048?N(192|e>>>6)+N(128|e&63):N(224|e>>>12&15)+N(128|e>>>6&63)+N(128|e&63)}else{var e=65536+(r.charCodeAt(0)-55296)*1024+(r.charCodeAt(1)-56320);return N(240|e>>>18&7)+N(128|e>>>12&63)+N(128|e>>>6&63)+N(128|e&63)}},Ce=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,Lr=r=>r.replace(Ce,Pe),Sr=S?r=>Buffer.from(r,"utf8").toString("base64"):ur?r=>K(ur.encode(r)):r=>m(Lr(r)),l=(r,e=!1)=>e?Tr(Sr(r)):Sr(r),lr=r=>l(r,!0),Ye=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,Ie=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 N((t>>>10)+55296)+N((t&1023)+56320);case 3:return N((15&r.charCodeAt(0))<<12|(63&r.charCodeAt(1))<<6|63&r.charCodeAt(2));default:return N((31&r.charCodeAt(0))<<6|63&r.charCodeAt(1))}},Pr=r=>r.replace(Ye,Ie),Cr=r=>{if(r=r.replace(/\s+/g,""),!le.test(r))throw new TypeError("malformed base64.");r+="==".slice(2-(r.length&3));let e,t="",o,_;for(let A=0;A<r.length;)e=g[r.charAt(A++)]<<18|g[r.charAt(A++)]<<12|(o=g[r.charAt(A++)])<<6|(_=g[r.charAt(A++)]),t+=o===64?N(e>>16&255):_===64?N(e>>16&255,e>>8&255):N(e>>16&255,e>>8&255,e&255);return t},V=Le?r=>atob(dr(r)):S?r=>Buffer.from(r,"base64").toString("binary"):Cr,Yr=S?r=>Dr(Buffer.from(r,"base64")):r=>Dr(V(r),e=>e.charCodeAt(0)),Ir=r=>Yr(hr(r)),he=S?r=>Buffer.from(r,"base64").toString("utf8"):Or?r=>Or.decode(Yr(r)):r=>Pr(V(r)),hr=r=>dr(r.replace(/[-_]/g,e=>e=="-"?"+":"/")),W=r=>he(hr(r)),Me=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)},Mr=r=>({value:r,enumerable:!1,writable:!0,configurable:!0}),Ur=function(){const r=(e,t)=>Object.defineProperty(String.prototype,e,Mr(t));r("fromBase64",function(){return W(this)}),r("toBase64",function(e){return l(this,e)}),r("toBase64URI",function(){return l(this,!0)}),r("toBase64URL",function(){return l(this,!0)}),r("toUint8Array",function(){return Ir(this)})},gr=function(){const r=(e,t)=>Object.defineProperty(Uint8Array.prototype,e,Mr(t));r("toBase64",function(e){return k(this,e)}),r("toBase64URI",function(){return k(this,!0)}),r("toBase64URL",function(){return k(this,!0)})},kr={version:Rr,VERSION:fe,atob:V,atobPolyfill:Cr,btoa:m,btoaPolyfill:fr,fromBase64:W,toBase64:l,encode:l,encodeURI:lr,encodeURL:lr,utob:Lr,btou:Pr,decode:W,isValid:Me,fromUint8Array:k,toUint8Array:Ir,extendString:Ur,extendUint8Array:gr,extendBuiltins:()=>{Ur(),gr()}},Ue={encode:ge,decode:kr.decode};function ge(r,e={}){const{urlSafe:t=!1}=e;return kr.encode(r,t)}function ke(r){const e=ve(r),t=e.exp*1e3;if(Date.now()>t)throw new Error(`${we}. Expiration date: ${new Date(t).toISOString()}`);return e}const wr="The provided `clientToken`",we=`${wr} has expired`,Be=`${wr} is malformed`;function ve(r){try{const[e,t]=r.split("."),o=t||e;return JSON.parse(Ue.decode(o))}catch{throw new Error(Be)}}const pe="v2.46.8",be=(r,e,t)=>({"primer-client-token":r,"primer-sdk-client":"WEB","primer-sdk-version":pe,"primer-sdk-checkout-session-id":e,...t&&{"x-api-version":t}});async function xe(r,e,t){const{accessToken:o,configurationUrl:_,analyticsUrlV2:A}=ke(r),i=H({checkoutSessionId:e,url:A});i.timerStart({id:"CONFIGURATION_LOADING"});try{const{data:E,source:s}=await de(`${_}/?withDisplayMetadata=true`,{checkoutSessionId:e,headers:be(o,e,"2.3"),retryConfig:{enabled:!0},cacheConfig:t});return i.timerEnd({id:"CONFIGURATION_LOADING",context:{source:s}}),E}catch(E){const s=E instanceof Error?E.message:"Unknown error occurred";throw new Error(`Failed to initialize client: ${s}`)}}function Br(r){return r instanceof Error?{errorBody:r.message,stacktrace:r.stack}:typeof r=="object"&&r!==null&&"message"in r?{errorBody:String(r.message),stacktrace:"stack"in r?String(r.stack):void 0}:{errorBody:String(r||"Unknown error")}}function $({checkoutSessionId:r,analytics:e,error:t,reporter:o}){e?.crashEvent?e.crashEvent({...Br(t),reporter:o}):r&&vr(r,t,o)}async function vr(r,e,t){const o=T;if(d)return;const _=await Z(f.CRASH_EVENT,{...Br(e),reporter:t},{checkoutSessionId:r});try{await fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(_)})}catch(A){console.error("Failed to post crash event",A)}}const pr=Symbol.for("initGlobalErrorMonitoringLoaded"),He=(r,e)=>{typeof window<"u"&&window[pr]||(window[pr]=!0,window.addEventListener("error",t=>{Fe(t)||Ge(t)&&$({checkoutSessionId:r,analytics:e,error:t.error,reporter:"window.onerror"})}),window.addEventListener("unhandledrejection",t=>{const o=t.reason||new Error("Unhandled promise rejection");me(o)&&$({checkoutSessionId:r,analytics:e,error:o,reporter:"unhandledrejection"})}))},Fe=r=>r.message==="Script error."||!r.filename||r.lineno===0,Ge=r=>{const e=r.filename;return!!(e&&j(e)&&new a(r.error).isReported)},me=r=>{if(r&&typeof r=="object"&&"stack"in r&&typeof r.stack=="string"){const e=a.from(r);if(e.isReported)return!1;if("fileName"in r&&typeof r.fileName=="string"){const o=r.fileName;if(j(o))return!0}return Ke(e.stack).some(j)}return!1},j=r=>{try{return new URL(r,window.location.origin).hostname.endsWith(".primer.io")}catch{return!1}},Ke=r=>{if(!r)return[];const e=r.split(`
|
|
2
|
+
`),t=[],o=/^\s*at\s+(?:.*?\s+)?\(?(.+?):\d+:\d+\)?$/;for(const _ of e){const A=_.match(o);if(A&&A[1])t.push(A[1]);else{const i=/@(.*?):\d+:\d+$/,E=_.match(i);E&&E[1]&&t.push(E[1])}}return t};function Ve(r,e){const t=document.createElement(r);return Object.entries(e).forEach(([o,_])=>t.setAttribute(o,_)),t}function br(r,e,t){return document.querySelector(`${r}[${e}^="${t}"]`)}async function xr(r,e,t,o,_,A){const{analytics:i,name:E=e,retryConfig:s}=A;await Ar(()=>new Promise((c,L)=>{const O=br(r,t,e)||Ve(r,{...o,[t]:e});O.onload=()=>{i?.sdkFunctionEvent({name:E,params:[`${r.charAt(0).toUpperCase()+r.slice(1)} loaded successfully: ${e}`]}),c()},O.onerror=()=>{O.remove(),L(new Error(`${_}: ${e}`))},O.parentNode||document.head.appendChild(O)}),s,c=>i?.messageEvent({...c,url:e}))}function We(r,e={}){return br("script","src",r)&&window.__Primer?(e.analytics?.sdkFunctionEvent({name:e.name??r,params:["Script already loaded"]}),Promise.resolve()):xr("script",r,"src",{...e.attributes,async:"",crossorigin:"anonymous"},"Can't load Primer SDK",e)}function $e(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()):xr("link",r,"href",{...e.attributes,rel:"stylesheet"},"Can't load Primer SDK's Stylesheet",e)}let I;async function Hr(r){return I||(I=Promise.all([We("https://sdk.primer.io/web/v2.46.8/PrimerCoreSDK.min.js",{analytics:r,name:"loadPrimerScript"}),$e("https://sdk.primer.io/web/v2.46.8/Checkout.css",{analytics:r,name:"loadPrimerCss"})]).then(()=>{const o=window.__Primer;return delete window.__Primer,o}).catch(o=>{throw I=void 0,o}),I)}const je="v2.46.8",Xe=w("createHeadless"),ze=w("showExpressCheckout"),Qe=w("showUniversalCheckout"),Ze=w("showVaultManager");function w(r){return async(...[e,t,...o])=>{const _=nr();try{const A=U(_);try{He(_,A),A.sdkFunctionEvent({name:r,params:[e,t,...o]}),A.timerStart({id:Qr[r]});const[i,E]=await Promise.all([xe(e,_,t?.clientSessionCachingEnabled?{key:e,usePrimerSessionCacheTtlHeader:!0}:void 0),Hr(A)]);return E[r](i,_,e,t,...o)}catch(i){const E=a.from(i);throw E.isReported||($({checkoutSessionId:_,analytics:A,error:E,reporter:"lazyLoad level 1"}),E.markAsReported()),E}}catch(A){const i=a.from(A);throw i.isReported||(vr(_,i,"lazyLoad level 0"),i.markAsReported()),i}}}const qe=()=>Hr().then(()=>{});var Je=(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))(Je||{}),ye=(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))(ye||{}),rt=(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))(rt||{}),Fr=(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))(Fr||{}),Gr=(r=>(r.DEFAULT="DEFAULT",r.PREFER_VAULT="PREFER_VAULT",r))(Gr||{}),et=(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))(et||{}),mr=(r=>(r.SUCCESS="AUTH_SUCCESS",r.FAILED="AUTH_FAILED",r.SKIPPED="SKIPPED",r.CHALLENGE="CHALLENGE",r))(mr||{}),Kr=(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))(Kr||{}),X=(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))(X||{}),tt=(r=>(r.PAYMENT_CARD="PAYMENT_CARD",r.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",r))(tt||{}),Vr=(r=>(r.SINGLE_USE="SINGLE_USE",r.MULTI_USE="MULTI_USE",r))(Vr||{});const Wr={PAYPAL_BILLING_AGREEMENT:"PAYPAL",KLARNA_CUSTOMER_TOKEN:"KLARNA"},Rt=r=>{if(Object.values(X).includes(r))return r;if(Wr[r])return Wr[r]};var $r=(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))($r||{});class z extends null{static fromErrorCode(e,t,o){return new z(e,t,o)}constructor(e,t,o){super(t.message),this.code=e,this.diagnosticsId=t.diagnosticsId??null,this.data=t.data,this.isFromDeveloper=t.isFromDeveloper??!1,this.name="PrimerClientError",Error.captureStackTrace&&Error.captureStackTrace(this,z),o&&(o.messageEvent({message:`${e}: ${t.message}`,messageType:e,severity:"ERROR",diagnosticsId:t.diagnosticsId??void 0,errorId:t.errorId??void 0,data:t.data??void 0,isFromDeveloper:t.isFromDeveloper?.toString(),stack:this.stack}),this.markAsReported())}}var ot=R(473),jr=(r=>(r.PAYMENT_METHOD="PAYMENT_METHOD",r.CHECK="CHECK",r))(jr||{});const At=r=>"fullMandateText"in r?.mandateData;var Xr=(r=>(r.CHANGE="change",r.ERROR="error",r.FOCUS="focus",r.BLUR="blur",r.CLICK="click",r.CLOSE="close",r))(Xr||{}),zr=(r=>(r.CARD="CARD",r.NATIVE="NATIVE",r.REDIRECT="REDIRECT",r.FORM_WITH_REDIRECT="FORM_WITH_REDIRECT",r.KLARNA="KLARNA",r.ACH="ACH",r))(zr||{});const it={SDK_VERSION:je,createHeadless:Xe,showExpressCheckout:ze,showUniversalCheckout:Qe,showVaultManager:Ze}})(),B})());
|