@primer-io/checkout-web 2.35.1 → 2.37.0
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 -1
- package/dist/index.d.ts +49 -13
- package/package.json +4 -3
package/dist/Primer.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
(function(G,f){typeof exports=="object"&&typeof module=="object"?module.exports=f():typeof define=="function"&&define.amd?define([],f):typeof exports=="object"?exports.Primer=f():G.Primer=f()})(this,function(){return function(){var y={453:function(R,A,s){"use strict";var D=this&&this.__assign||function(){return D=Object.assign||function(_){for(var u,P=1,M=arguments.length;P<M;P++){u=arguments[P];for(var U in u)Object.prototype.hasOwnProperty.call(u,U)&&(_[U]=u[U])}return _},D.apply(this,arguments)},S=s(743),a=s(576),E=s(243),h=s(169),p=s(679),l={},O={VISA:"visa",MASTERCARD:"mastercard",AMERICAN_EXPRESS:"american-express",DINERS_CLUB:"diners-club",DISCOVER:"discover",JCB:"jcb",UNIONPAY:"unionpay",MAESTRO:"maestro",ELO:"elo",MIR:"mir",HIPER:"hiper",HIPERCARD:"hipercard"},v=[O.VISA,O.MASTERCARD,O.AMERICAN_EXPRESS,O.DINERS_CLUB,O.DISCOVER,O.JCB,O.UNIONPAY,O.MAESTRO,O.ELO,O.MIR,O.HIPER,O.HIPERCARD],I=p.clone(v);function k(_){return l[_]||S[_]}function m(){return I.map(function(_){return p.clone(k(_))})}function B(_,u){u===void 0&&(u=!1);var P=I.indexOf(_);if(!u&&P===-1)throw new Error('"'+_+'" is not a supported card type.');return P}function g(_){var u=[];if(!E.isValidInputType(_))return u;if(_.length===0)return m();I.forEach(function(M){var U=k(M);a.addMatchingCardsToResults(_,U,u)});var P=h.findBestMatch(u);return P?[P]:u}g.getTypeInfo=function(_){return p.clone(k(_))},g.removeCard=function(_){var u=B(_);I.splice(u,1)},g.addCard=function(_){var u=B(_.type,!0);l[_.type]=_,u===-1&&I.push(_.type)},g.updateCard=function(_,u){var P=l[_]||S[_];if(!P)throw new Error('"'+_+"\" is not a recognized type. Use `addCard` instead.'");if(u.type&&P.type!==u.type)throw new Error("Cannot overwrite type parameter.");var M=p.clone(P);M=D(D({},M),u),l[M.type]=M},g.changeOrder=function(_,u){var P=B(_);I.splice(P,1),I.splice(u,0,_)},g.resetModifications=function(){I=p.clone(v),l={}},g.types=O,R.exports=g},576:function(R,A,s){"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.addMatchingCardsToResults=void 0;var D=s(679),S=s(864);function a(E,h,p){var l,O;for(l=0;l<h.patterns.length;l++){var v=h.patterns[l];if(S.matches(E,v)){var I=D.clone(h);Array.isArray(v)?O=String(v[0]).length:O=String(v).length,E.length>=O&&(I.matchStrength=O),p.push(I);break}}}A.addMatchingCardsToResults=a},743:function(R){"use strict";var A={visa:{niceType:"Visa",type:"visa",patterns:[4],gaps:[4,8,12],lengths:[16,18,19],code:{name:"CVV",size:3}},mastercard:{niceType:"Mastercard",type:"mastercard",patterns:[[51,55],[2221,2229],[223,229],[23,26],[270,271],2720],gaps:[4,8,12],lengths:[16],code:{name:"CVC",size:3}},"american-express":{niceType:"American Express",type:"american-express",patterns:[34,37],gaps:[4,10],lengths:[15],code:{name:"CID",size:4}},"diners-club":{niceType:"Diners Club",type:"diners-club",patterns:[[300,305],36,38,39],gaps:[4,10],lengths:[14,16,19],code:{name:"CVV",size:3}},discover:{niceType:"Discover",type:"discover",patterns:[6011,[644,649],65],gaps:[4,8,12],lengths:[16,19],code:{name:"CID",size:3}},jcb:{niceType:"JCB",type:"jcb",patterns:[2131,1800,[3528,3589]],gaps:[4,8,12],lengths:[16,17,18,19],code:{name:"CVV",size:3}},unionpay:{niceType:"UnionPay",type:"unionpay",patterns:[620,[624,626],[62100,62182],[62184,62187],[62185,62197],[62200,62205],[622010,622999],622018,[622019,622999],[62207,62209],[622126,622925],[623,626],6270,6272,6276,[627700,627779],[627781,627799],[6282,6289],6291,6292,810,[8110,8131],[8132,8151],[8152,8163],[8164,8171]],gaps:[4,8,12],lengths:[14,15,16,17,18,19],code:{name:"CVN",size:3}},maestro:{niceType:"Maestro",type:"maestro",patterns:[493698,[5e5,504174],[504176,506698],[506779,508999],[56,59],63,67,6],gaps:[4,8,12],lengths:[12,13,14,15,16,17,18,19],code:{name:"CVC",size:3}},elo:{niceType:"Elo",type:"elo",patterns:[401178,401179,438935,457631,457632,431274,451416,457393,504175,[506699,506778],[509e3,509999],627780,636297,636368,[650031,650033],[650035,650051],[650405,650439],[650485,650538],[650541,650598],[650700,650718],[650720,650727],[650901,650978],[651652,651679],[655e3,655019],[655021,655058]],gaps:[4,8,12],lengths:[16],code:{name:"CVE",size:3}},mir:{niceType:"Mir",type:"mir",patterns:[[2200,2204]],gaps:[4,8,12],lengths:[16,17,18,19],code:{name:"CVP2",size:3}},hiper:{niceType:"Hiper",type:"hiper",patterns:[637095,63737423,63743358,637568,637599,637609,637612],gaps:[4,8,12],lengths:[16],code:{name:"CVC",size:3}},hipercard:{niceType:"Hipercard",type:"hipercard",patterns:[606282],gaps:[4,8,12],lengths:[16],code:{name:"CVC",size:3}}};R.exports=A},679:function(R,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.clone=void 0;function s(D){return D?JSON.parse(JSON.stringify(D)):null}A.clone=s},169:function(R,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.findBestMatch=void 0;function s(S){var a=S.filter(function(E){return E.matchStrength}).length;return a>0&&a===S.length}function D(S){return s(S)?S.reduce(function(a,E){return!a||Number(a.matchStrength)<Number(E.matchStrength)?E:a}):null}A.findBestMatch=D},243:function(R,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.isValidInputType=void 0;function s(D){return typeof D=="string"||D instanceof String}A.isValidInputType=s},864:function(R,A){"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.matches=void 0;function s(a,E,h){var p=String(E).length,l=a.substr(0,p),O=parseInt(l,10);return E=parseInt(String(E).substr(0,l.length),10),h=parseInt(String(h).substr(0,l.length),10),O>=E&&O<=h}function D(a,E){return E=String(E),E.substring(0,a.length)===a.substring(0,E.length)}function S(a,E){return Array.isArray(E)?s(a,E[0],E[1]):D(a,E)}A.matches=S},476:function(){},962:function(){},473:function(){}},G={};function f(R){var A=G[R];if(A!==void 0)return A.exports;var s=G[R]={exports:{}};return y[R].call(s.exports,s,s.exports,f),s.exports}(function(){f.d=function(R,A){for(var s in A)f.o(A,s)&&!f.o(R,s)&&Object.defineProperty(R,s,{enumerable:!0,get:A[s]})}})(),function(){f.o=function(R,A){return Object.prototype.hasOwnProperty.call(R,A)}}(),function(){f.r=function(R){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(R,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(R,"__esModule",{value:!0})}}();var X={};return function(){"use strict";f.r(X),f.d(X,{CheckoutUXFlow:function(){return ve},CvvInput:function(){return R.CvvInput},ErrorCode:function(){return He},EventTypes:function(){return Ge},HeadlessManagerType:function(){return me},PaymentFlow:function(){return Ue},PaymentInstrumentType:function(){return be},PaymentMethodData:function(){return Kr.PaymentMethodData},PaymentMethodType:function(){return q},Primer:function(){return zr},SuccessScreenType:function(){return xe},ThreeDSecureStatus:function(){return Be},TokenType:function(){return ke},preloadPrimer:function(){return Hr}});var R={};f.r(R);var A=f(476),s=f(962),D=(e=>(e.REQUEST_START="REQUEST_START",e.REQUEST_END="REQUEST_END",e))(D||{}),S=(e=>(e.START="START",e.END="END",e))(S||{}),a=(e=>(e.NETWORK_CALL_EVENT="NETWORK_CALL_EVENT",e.CRASH_EVENT="CRASH_EVENT",e.TIMER_EVENT="TIMER_EVENT",e.MESSAGE_EVENT="MESSAGE_EVENT",e.V1_EVENT="V1_EVENT",e.SDK_FUNCTION_EVENT="SDK_FUNCTION_EVENT",e))(a||{});const E={get(e,r){let t;try{switch(e){case"PRIMER_SDK_VERSION":t="v2.35.1";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||r}};var h=(e=>(e.CHARGING="CHARGING",e.NOT_CHARGING="NOT_CHARGING",e))(h||{});async function p(){if(typeof navigator>"u")return;const e=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:e?.level,batteryStatus:e?.charging?"CHARGING":"NOT_CHARGING"}}const l="WEB",O=E.get("PRIMER_SDK_VERSION");async function v(e,r,t){return{...t,createdAt:Date.now(),device:await p(),eventType:e,properties:r,sdkVersion:O,sdkType:l}}const I="https://analytics.production.data.primer.io/sdk-logs",k=1024*5,m=e=>`@primer/analytics/${e}`;function B({url:e=I,...r}={}){typeof document<"u"&&document.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&g(e)});const t=n=>async o=>{if(typeof navigator>"u")return;const i=await v(n,o,r),c=u(i,T=>P(M(T)));_(e,c)};return{crashEvent:t(a.CRASH_EVENT),messageEvent:t(a.MESSAGE_EVENT),networkCallEvent:t(a.NETWORK_CALL_EVENT),sdkFunctionEvent:t(a.SDK_FUNCTION_EVENT),timerEvent:t(a.TIMER_EVENT),v1Event:t(a.V1_EVENT)}}function g(e){const r=m(e),t=sessionStorage.getItem(r);sessionStorage.removeItem(r),t&&navigator.sendBeacon(e,t)}function _(e,r){const t=m(e);sessionStorage.setItem(t,`[${[sessionStorage.getItem(t)?.slice(1,-1),JSON.stringify(r)].filter(Boolean).join(",")}]`)}function u(e,r){const t=n=>typeof n=="object"&&n!==null?u(n,r):r(n);return Array.isArray(e)?e.map(t):Object.fromEntries(Object.entries(e).map(([n,o])=>[n,t(o)]))}function P(e){return typeof e=="string"&&e.length>k?`${e.slice(0,k)}...`:e}function M(e){return typeof e=="function"?e.name||"function":e}class U{constructor(r,t){this.type=r,this.displayName=t}get specs(){return this.constructor.specs}setOption(r,t){this.options&&(this.options[r]=t)}setupAndValidate(){return Promise.resolve(!0)}mount(){return Promise.resolve(!0)}tokenize(r){return Promise.resolve()}validate(){return Promise.resolve({valid:!0,validationErrors:[]})}setDisabled(r){return Promise.resolve()}focus(){}blur(){}getPaymentElement(){return null}getStore(){}}U.specs={key:"__none__",canVault:!1,buttonManagedByPaymentMethod:!1,hasExportedButtonOptions:!1},U.create=(e,r,t,n)=>{throw new Error("Cannot instantiate BasePaymentMethod")};class Ke extends U{async tokenize(r){}}class We{get session(){const r=this.store.getState().clientSessionInfo;if(!r)throw new Error("Client Context Session does not exist");return r}}const je=[Array,Ke,We,Map,Set];function ze(e){const r=new Set,t=20;let n=0;for(;n++<t&&e&&e!==Object.prototype;)Object.getOwnPropertyNames(e).forEach(o=>r.add(o)),e=Object.getPrototypeOf(e);return[...r]}function ee(e,r,t,n,o){if(!t||je.some(i=>t instanceof i))return t;switch(typeof t){case"function":return new Proxy(t,{apply(i,N,c=[]){const T={name:r.replace(/^bound /,""),params:c,module:o};e?.sdkFunctionEvent(T);const Y=c.map((z,d)=>ee(e,`${d}`,z,n,[o,r,`${d}`].filter(Boolean).join(".")));return i.apply(N,Y)}});case"object":return t===n?t:Xe(e,t,[o,r].filter(Boolean).join("."));default:return t}}function Xe(e,r,t){return Object.fromEntries(ze(r).map(n=>{const o=r?.[n],i=ee(e,n,o,o,t);return[n,i]}))}const re=()=>te.randomUUID?.()||$e(),$e=()=>([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^Qe()>>e/4).toString(16)),Qe=()=>(te.getRandomValues?.(new Uint8Array(1))[0]??Math.random()*16)&15,te=typeof crypto<"u"?crypto:{},Ze=new Set(["post","get","delete"]),Je=new Set(["post"]);function qe(e,r,t,n){const o=Je.has(e);return{method:e,options:o?n:t,body:o?t:void 0,url:r}}function Xr(e,r){const t=({prop:n})=>({apply:async(o,i,N=[])=>{const c=qe(n.toString(),...N);if(c.options?.isAnalytics)return o.apply(i,N);const T=uuid();r?.networkCallEvent(prepareNetworkEventProps(T,c));const Y=await o.apply(i,N);return r?.networkCallEvent(prepareNetworkEventProps(T,c,Y)),Y}});return new Proxy(e,{get(n,o){const i=n[o];return typeof i=="function"&&Ze.has(o)?new Proxy(i,t({prop:o})):i}})}const ne=(e,r,t)=>({callType:t?D.REQUEST_END:D.REQUEST_START,id:e,errorBody:t?.error&&JSON.stringify(t.error),method:r.method,responseCode:t?.status,url:r.url}),oe="3.6.1",ye=oe,er=typeof atob=="function",rr=typeof btoa=="function",F=typeof Buffer=="function",ie=typeof TextDecoder=="function"?new TextDecoder:void 0,Ae=typeof TextEncoder=="function"?new TextEncoder:void 0,w=[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],K=(e=>{let r={};return e.forEach((t,n)=>r[t]=n),r})(w),tr=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,C=String.fromCharCode.bind(String),_e=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):(e,r=t=>t)=>new Uint8Array(Array.prototype.slice.call(e,0).map(r)),ce=e=>e.replace(/[+\/]/g,r=>r=="+"?"-":"_").replace(/=+$/m,""),se=e=>e.replace(/[^A-Za-z0-9\+\/]/g,""),Ee=e=>{let r,t,n,o,i="";const N=e.length%3;for(let c=0;c<e.length;){if((t=e.charCodeAt(c++))>255||(n=e.charCodeAt(c++))>255||(o=e.charCodeAt(c++))>255)throw new TypeError("invalid character found");r=t<<16|n<<8|o,i+=w[r>>18&63]+w[r>>12&63]+w[r>>6&63]+w[r&63]}return N?i.slice(0,N-3)+"===".substring(N):i},$=rr?e=>btoa(e):F?e=>Buffer.from(e,"binary").toString("base64"):Ee,Q=F?e=>Buffer.from(e).toString("base64"):e=>{let t=[];for(let n=0,o=e.length;n<o;n+=4096)t.push(C.apply(null,e.subarray(n,n+4096)));return $(t.join(""))},W=(e,r=!1)=>r?ce(Q(e)):Q(e),nr=e=>{if(e.length<2){var r=e.charCodeAt(0);return r<128?e:r<2048?C(192|r>>>6)+C(128|r&63):C(224|r>>>12&15)+C(128|r>>>6&63)+C(128|r&63)}else{var r=65536+(e.charCodeAt(0)-55296)*1024+(e.charCodeAt(1)-56320);return C(240|r>>>18&7)+C(128|r>>>12&63)+C(128|r>>>6&63)+C(128|r&63)}},or=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,ae=e=>e.replace(or,nr),ue=F?e=>Buffer.from(e,"utf8").toString("base64"):Ae?e=>Q(Ae.encode(e)):e=>$(ae(e)),H=(e,r=!1)=>r?ce(ue(e)):ue(e),Re=e=>H(e,!0),ir=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,Ar=e=>{switch(e.length){case 4:var r=(7&e.charCodeAt(0))<<18|(63&e.charCodeAt(1))<<12|(63&e.charCodeAt(2))<<6|63&e.charCodeAt(3),t=r-65536;return C((t>>>10)+55296)+C((t&1023)+56320);case 3:return C((15&e.charCodeAt(0))<<12|(63&e.charCodeAt(1))<<6|63&e.charCodeAt(2));default:return C((31&e.charCodeAt(0))<<6|63&e.charCodeAt(1))}},Oe=e=>e.replace(ir,Ar),Ne=e=>{if(e=e.replace(/\s+/g,""),!tr.test(e))throw new TypeError("malformed base64.");e+="==".slice(2-(e.length&3));let r,t="",n,o;for(let i=0;i<e.length;)r=K[e.charAt(i++)]<<18|K[e.charAt(i++)]<<12|(n=K[e.charAt(i++)])<<6|(o=K[e.charAt(i++)]),t+=n===64?C(r>>16&255):o===64?C(r>>16&255,r>>8&255):C(r>>16&255,r>>8&255,r&255);return t},Z=er?e=>atob(se(e)):F?e=>Buffer.from(e,"base64").toString("binary"):Ne,de=F?e=>_e(Buffer.from(e,"base64")):e=>_e(Z(e),r=>r.charCodeAt(0)),De=e=>de(Te(e)),_r=F?e=>Buffer.from(e,"base64").toString("utf8"):ie?e=>ie.decode(de(e)):e=>Oe(Z(e)),Te=e=>se(e.replace(/[-_]/g,r=>r=="-"?"+":"/")),J=e=>_r(Te(e)),cr=e=>{if(typeof e!="string")return!1;const r=e.replace(/\s+/g,"").replace(/=+$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(r)||!/[^\s0-9a-zA-Z\-_]/.test(r)},fe=e=>({value:e,enumerable:!1,writable:!0,configurable:!0}),Pe=function(){const e=(r,t)=>Object.defineProperty(String.prototype,r,fe(t));e("fromBase64",function(){return J(this)}),e("toBase64",function(r){return H(this,r)}),e("toBase64URI",function(){return H(this,!0)}),e("toBase64URL",function(){return H(this,!0)}),e("toUint8Array",function(){return De(this)})},Ce=function(){const e=(r,t)=>Object.defineProperty(Uint8Array.prototype,r,fe(t));e("toBase64",function(r){return W(this,r)}),e("toBase64URI",function(){return W(this,!0)}),e("toBase64URL",function(){return W(this,!0)})},le={version:oe,VERSION:ye,atob:Z,atobPolyfill:Ne,btoa:$,btoaPolyfill:Ee,fromBase64:J,toBase64:H,encode:H,encodeURI:Re,encodeURL:Re,utob:ae,btou:Oe,decode:J,isValid:cr,fromUint8Array:W,toUint8Array:De,extendString:Pe,extendUint8Array:Ce,extendBuiltins:()=>{Pe(),Ce()}},sr={encode:Er,decode:le.decode};function Er(e,r={}){const{urlSafe:t=!1}=r;return le.encode(e,t)}function ar(e){const r=Or(e),t=r.exp*1e3;if(Date.now()>t)throw new Error(`${ur}. Expiration date: ${new Date(t).toISOString()}`);return r}const Se="The provided `clientToken`",ur=`${Se} has expired`,Rr=`${Se} is malformed`;function Or(e){try{const[r,t]=e.split("."),n=t||r;return JSON.parse(sr.decode(n))}catch{throw new Error(Rr)}}const Nr=(e,r)=>Le("get",e,r),Zr=(e,r,t)=>Le("post",e,t,JSON.stringify(r)),dr={"content-type":"application/json"},Le=(e,r,t,n)=>fetch(r,{body:n,method:e,headers:{...dr,...t}}).then(o=>o.json().catch(()=>{})),Dr="v2.35.1",Tr=(e,r,t)=>({"primer-client-token":e,"primer-sdk-client":"WEB","primer-sdk-version":Dr,"primer-sdk-checkout-session-id":r,...t&&{"x-api-version":t}});async function fr(e,r,t){try{return await Nr(`${r}/?withDisplayMetadata=true`,Tr(e,t,"2.2"))}catch(n){throw new Error(["Failed to initialize client",JSON.stringify(n||void 0,void 0,2)].filter(Boolean).join(": "))}}const Pr=e=>document.head.appendChild(e),Cr=(e,r)=>{const t=document.createElement(e);return Object.entries(r).forEach(([n,o])=>t.setAttribute(n,o)),t},lr=(e,r)=>Pr(Cr(e,r)),Ie=(e,r,t)=>e.addEventListener(r,t),Sr=e=>document.querySelector(e),Ye="Can't load Primer SDK",Lr=`${Ye}'s Stylesheet`;function Ir(e){const r="script",t="src";return pe(r,t,e)&&window.__Primer?Promise.resolve():he(r,e,t,{async:"",crossorigin:"anonymous"},Ye)}function Yr(e){return Array.from(document.styleSheets).find(r=>r.href===e)?Promise.resolve():he("link",e,"href",{rel:"stylesheet"},Lr)}const he=(e,r,t,n,o)=>new Promise((i,N)=>{const c=pe(e,t,r)||lr(e,{...n,[t]:r});Ie(c,"load",()=>i()),Ie(c,"error",()=>{c?.remove(),N(new Error(o))})}),pe=(e,r,t)=>Sr(`${e}[${r}^="${t}"]`),hr="https://sdk.primer.io/web/v2.35.1/Checkout.css",pr="https://sdk.primer.io/web/v2.35.1/PrimerCoreSDK.min.js";let V;async function ge(){return V||(V=Promise.all([Mr(),gr()]).then(([e])=>e),V)}const gr=()=>Yr(hr),Mr=()=>Ir(pr).then(()=>{const e=window.__Primer;return delete window.__Primer,e}).catch(e=>{throw V=void 0,e}),vr="v2.35.1",Ur=j("createHeadless"),Br=j("showExpressCheckout"),br=j("showUniversalCheckout"),kr=j("showVaultManager"),Me="LOAD_PERFORMANCE",x=re();let b=B({checkoutSessionId:x});b.messageEvent({message:"parsed",messageType:Me,now:performance.now?.()});function j(e){return async(...[r,t,...n])=>{b.sdkFunctionEvent({name:e,params:[r,t,...n]}),b.messageEvent({message:"create",messageType:Me,now:performance.now?.()});const[o,i]=await Promise.all([Fr(r),ge()]);return i[e](o,x,r,t)}}async function Fr(e){const{accessToken:r,configurationUrl:t,analyticsUrlV2:n}=ar(e);b=B({checkoutSessionId:x,url:n});const o=`${t}/?withDisplayMetadata=true`,i=re(),N={method:"get",url:o};b.networkCallEvent(ne(i,N));const c=await fr(r,t,x),{primerAccountId:T}=c,{clientSessionId:Y}=c.clientSession;return b=B({checkoutSessionId:x,clientSessionId:Y,primerAccountId:T,url:n}),b.networkCallEvent(ne(i,N,{data:c})),c}const Hr=()=>ge().then(()=>{});var wr=(e=>(e.LOADING="Loading",e.THREE_DS="UniversalCheckout/3ds",e.CHOOSE_PAYMENT_METHOD="UniversalCheckout/Home",e.MANAGE_PAYMENT_METHODS="VaultManager/Home",e.DIRECT_DEBIT_FORM="DirectDebit/Form",e.DIRECT_DEBIT_MANDATE="DirectDebit/Mandate",e.CREDIT_CARD_FORM="CreditCard/Form",e.SUCCESS_PAYMENT_METHOD="UniversalCheckout/Success/PaymentMethod",e.SUCCESS_CHECK="UniversalCheckout/Success/Check",e))(wr||{}),Vr=(e=>(e.ROOT="primer-checkout",e.ROOT_CONTENT="primer-checkout-content",e.SUBMIT_BUTTON="primer-checkout-submit-button",e.THREE_DS_MODAL="primer-checkout-3ds-modal",e.VAULT="primer-checkout-vault",e.VAULT_INLINE="primer-checkout-vault-inline",e.NAVIGATE_PAYMENT_METHODS="primer-checkout-navigate-to-payment-methods",e.DIVIDER="primer-checkout-payment-method-divider",e.APM_BUTTONS="primer-checkout-apm-button-container",e.CARDHOLDER_NAME="primer-checkout-cardholder-name",e.CARDHOLDER_NAME_INPUT="primer-checkout-card-cardholder-name-input",e.ACTIONS="primer-checkout-actions",e.ACTIONS_MENU="primer-checkout-actions-menu",e.SAVE_PAYMENT_METHOD_CHECKBOX="primer-checkout-save-payment-method-input",e.SAVE_PAYMENT_METHOD_FIELD="primer-checkout-save-payment-method-field",e.SAVED_PAYMENT_METHODS_EMPTY="primer-checkout-saved-payment-methods-empty-text",e.CARD_FORM="primer-checkout-card-form",e.DD_SWITCH="primer-checkout-switch-dd-inputs",e.DD_IBAN_FIELD="primer-checkout-dd-iban-field",e.DD_LOCAL_FIELD="primer-checkout-dd-local-fields",e.DD_CUSTOMER_NAME_INPUT="primer-checkout-dd-customer-name-input",e.DD_CUSTOMER_EMAIL_INPUT="primer-checkout-dd-customer-email-input",e.DD_CUSTOMER_ADDRESS_LINE1="primer-checkout-dd-customer-address-input",e.DD_CUSTOMER_ADDRESS_LINE2="primer-checkout-dd-customer-address-line2-input",e.DD_CUSTOMER_ADDRESS_CITY="primer-checkout-dd-customer-city-input",e.DD_CUSTOMER_ADDRESS_POSTAL_CODE="primer-checkout-dd-customer-postal-code-input",e.DD_IBAN_INPUT="primer-checkout-dd-iban-input",e.DD_ACCOUNT_NUMBER_INPUT="primer-checkout-dd-account-number-input",e.DD_BANK_CODE_INPUT="primer-checkout-dd-bank-code-input",e.DD_BRANCH_CODE_INPUT="primer-checkout-dd-branch-code-input",e.DD_MANDATE_SMALL_PRINT="primer-checkout-small-print",e.ERROR_MESSAGE="primer-checkout-error-message",e))(Vr||{}),xr=(e=>(e.TOKEN="PrimerCheckout__token",e.HIDDEN="PrimerCheckout--hidden",e.FOCUSED="PrimerCheckout--focused",e.SELECTED="PrimerCheckout--selected",e.LOADING="PrimerCheckout--loading",e.ERROR="PrimerCheckout--error",e.CARD_TYPE="PrimerCheckout__cardType",e.SAVED_PAYMENT_METHOD="PrimerCheckout__savedPaymentMethod",e.SAVED_PAYMENT_METHOD_CONTAINER="PrimerCheckout__savedPaymentMethodContainer",e.APM_BUTTON="PrimerCheckout__apmButton",e.EDIT_BUTTON="PrimerCheckout__editButton",e.MENU="PrimerCheckout__dropDownMenu",e.MENU_ITEM="PrimerCheckout__dropDownMenuItem",e.PAYMENT_METHOD_MENU_ITEM="PrimerCheckout__paymentMethodDropDownMenuItem",e.DELETE_PAYMENT_METHOD_BUTTON="PrimerCheckout__paymentMethodDropDownMenuItem__deleteButton",e.ENTER="PrimerCheckout--enter",e.ENTERING="PrimerCheckout--entering",e.ENTERED="PrimerCheckout--entered",e.EXIT="PrimerCheckout--exit",e.EXITING="PrimerCheckout--exiting",e.EXITED="PrimerCheckout--exited",e))(xr||{}),ve=(e=>(e.CHECKOUT="CHECKOUT",e.EXPRESS_CHECKOUT="EXPRESS_CHECKOUT",e.HEADLESS_CHECKOUT="HEADLESS_CHECKOUT",e.MANAGE_PAYMENT_METHODS="MANAGE_PAYMENT_METHODS",e.SINGLE_PAYMENT_METHOD_CHECKOUT="SINGLE_PAYMENT_METHOD_CHECKOUT",e))(ve||{}),Ue=(e=>(e.DEFAULT="DEFAULT",e.PREFER_VAULT="PREFER_VAULT",e))(Ue||{}),Gr=(e=>(e.TOKENIZE_STARTED="tokenize-started",e.TOKENIZE_ERROR="tokenize-error",e.TOKENIZE_SUCCESS="tokenize-success",e.TOKENIZE_DID_NOT_START="tokenize-did-not-start",e))(Gr||{}),Be=(e=>(e.SUCCESS="AUTH_SUCCESS",e.FAILED="AUTH_FAILED",e.SKIPPED="SKIPPED",e.CHALLENGE="CHALLENGE",e))(Be||{}),be=(e=>(e.WORLDPAY_IDEAL="WORLDPAY_IDEAL",e.ADYEN_KLARNA="ADYEN_KLARNA",e.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",e.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",e.ADYEN_EPS="ADYEN_EPS",e.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",e.OMISE_PROMPTPAY="OMISE_PROMPTPAY",e.OMISE_TRUEMONEY="OMISE_TRUEMONEY",e.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",e.PACYPAY_WECHAT="PACYPAY_WECHAT",e.PACYPAY_ALIPAY="PACYPAY_ALIPAY",e.ADYEN_MBWAY="ADYEN_MBWAY",e.XENDIT_DANA="XENDIT_DANA",e.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",e.ADYEN_PAYSHOP="ADYEN_PAYSHOP",e.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",e.CLEARPAY="CLEARPAY",e.RAPYD_FAST="RAPYD_FAST",e.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",e.RAPYD_GCASH="RAPYD_GCASH",e.RAPYD_POLI="RAPYD_POLI",e.RAPYD_GRABPAY="RAPYD_GRABPAY",e.PRIMER_PAYPAL="PRIMER_PAYPAL",e.TWOC2P="TWOC2P",e.NETS="NETS",e.STRIPE_GIROPAY="STRIPE_GIROPAY",e.MOLLIE_GIROPAY="MOLLIE_GIROPAY",e.MOLLIE_EPS="MOLLIE_EPS",e.PAY_NL_EPS="PAY_NL_EPS",e.PAY_NL_P24="PAY_NL_P24",e.MOLLIE_P24="MOLLIE_P24",e.MOLLIE_SOFORT="MOLLIE_SOFORT",e.COINBASE="COINBASE",e.OPENNODE="OPENNODE",e.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",e.XFERS_PAYNOW="XFERS_PAYNOW",e.CARD="PAYMENT_CARD",e.APPLE_PAY="APPLE_PAY",e.GOOGLE_PAY="GOOGLE_PAY",e.PAYPAL="PAYPAL_ORDER",e.PAYPAL_VAULTED="PAYPAL_BILLING_AGREEMENT",e.GO_CARDLESS="GOCARDLESS",e.PAY_NL_IDEAL="PAY_NL_IDEAL",e.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",e.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",e.PAY_NL_PAYPAL="PAY_NL_PAYPAL",e.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",e.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",e.PAY_NL_GIROPAY="PAY_NL_GIROPAY",e.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",e.HOOLAH="HOOLAH",e.ADYEN_BLIK="ADYEN_BLIK",e.ADYEN_VIPPS="ADYEN_VIPPS",e.ADYEN_GIROPAY="ADYEN_GIROPAY",e.ADYEN_SOFORT="ADYEN_SOFORT",e.ADYEN_TRUSTLY="ADYEN_TRUSTLY",e.ADYEN_ALIPAY="ADYEN_ALIPAY",e.ADYEN_TWINT="ADYEN_TWINT",e.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",e.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",e.MOLLIE_IDEAL="MOLLIE_IDEAL",e.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",e.BUCKAROO_EPS="BUCKAROO_EPS",e.BUCKAROO_SOFORT="BUCKAROO_SOFORT",e.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",e.BUCKAROO_IDEAL="BUCKAROO_IDEAL",e.ATOME="ATOME",e))(be||{}),q=(e=>(e.WORLDPAY_IDEAL="WORLDPAY_IDEAL",e.ADYEN_KLARNA="ADYEN_KLARNA",e.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",e.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",e.ADYEN_EPS="ADYEN_EPS",e.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",e.OMISE_PROMPTPAY="OMISE_PROMPTPAY",e.OMISE_TRUEMONEY="OMISE_TRUEMONEY",e.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",e.PACYPAY_WECHAT="PACYPAY_WECHAT",e.PACYPAY_ALIPAY="PACYPAY_ALIPAY",e.ADYEN_MBWAY="ADYEN_MBWAY",e.XENDIT_DANA="XENDIT_DANA",e.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",e.ADYEN_PAYSHOP="ADYEN_PAYSHOP",e.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",e.CLEARPAY="CLEARPAY",e.RAPYD_FAST="RAPYD_FAST",e.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",e.RAPYD_GCASH="RAPYD_GCASH",e.RAPYD_POLI="RAPYD_POLI",e.RAPYD_GRABPAY="RAPYD_GRABPAY",e.PRIMER_PAYPAL="PRIMER_PAYPAL",e.TWOC2P="TWOC2P",e.NETS="NETS",e.STRIPE_GIROPAY="STRIPE_GIROPAY",e.MOLLIE_GIROPAY="MOLLIE_GIROPAY",e.MOLLIE_EPS="MOLLIE_EPS",e.PAY_NL_EPS="PAY_NL_EPS",e.PAY_NL_P24="PAY_NL_P24",e.MOLLIE_P24="MOLLIE_P24",e.MOLLIE_SOFORT="MOLLIE_SOFORT",e.COINBASE="COINBASE",e.OPENNODE="OPENNODE",e.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",e.XFERS_PAYNOW="XFERS_PAYNOW",e.PAYMENT_CARD="PAYMENT_CARD",e.APPLE_PAY="APPLE_PAY",e.GOOGLE_PAY="GOOGLE_PAY",e.PAYPAL="PAYPAL",e.GO_CARDLESS="GOCARDLESS",e.KLARNA="KLARNA",e.PAY_NL_IDEAL="PAY_NL_IDEAL",e.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",e.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",e.PAY_NL_PAYPAL="PAY_NL_PAYPAL",e.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",e.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",e.PAY_NL_GIROPAY="PAY_NL_GIROPAY",e.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",e.HOOLAH="HOOLAH",e.ADYEN_BLIK="ADYEN_BLIK",e.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",e.ADYEN_VIPPS="ADYEN_VIPPS",e.ADYEN_GIROPAY="ADYEN_GIROPAY",e.ADYEN_SOFORT="ADYEN_SOFORT",e.ADYEN_TRUSTLY="ADYEN_TRUSTLY",e.ADYEN_ALIPAY="ADYEN_ALIPAY",e.ADYEN_TWINT="ADYEN_TWINT",e.ADYEN_BANK_TRANSFER="ADYEN_BANK_TRANSFER",e.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",e.MOLLIE_IDEAL="MOLLIE_IDEAL",e.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",e.BUCKAROO_EPS="BUCKAROO_EPS",e.BUCKAROO_SOFORT="BUCKAROO_SOFORT",e.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",e.BUCKAROO_IDEAL="BUCKAROO_IDEAL",e.ATOME="ATOME",e))(q||{}),mr=(e=>(e.PAYMENT_CARD="PAYMENT_CARD",e.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",e))(mr||{}),ke=(e=>(e.SINGLE_USE="SINGLE_USE",e.MULTI_USE="MULTI_USE",e))(ke||{});const Fe={PAYPAL_BILLING_AGREEMENT:"PAYPAL"},Jr=e=>{if(Object.values(q).includes(e))return e;if(Fe[e])return Fe[e]};var He=(e=>(e.INITIALIZATION_ERROR="INITIALIZATION_ERROR",e.NO_PAYMENT_METHODS="NO_PAYMENT_METHODS",e.PRIMER_TEARDOWN="PRIMER_TEARDOWN",e.PRIMER_SERVER_ERROR="PRIMER_SERVER_ERROR",e.THREE_DS_SETUP_ERROR="THREE_DS_SETUP_ERROR",e.THREE_DS_AUTH_FAILED="THREE_DS_AUTH_FAILED",e.THREE_DS_NEGOTIATION_ERROR="THREE_DS_NEGOTIATION_ERROR",e.TOKENIZATION_ERROR="TOKENIZATION_ERROR",e.DUPLICATE_PAYMENT_METHOD_ERROR="DUPLICATE_PAYMENT_METHOD_ERROR",e.CARD_NUMBER_ERROR="CARD_NUMBER_ERROR",e.PAYMENT_METHOD_NOT_SETUP="PAYMENT_METHOD_NOT_SETUP",e.PAYMENT_METHOD_NOT_PROVIDED="PAYMENT_METHOD_NOT_PROVIDED",e.PAYMENT_METHOD_NOT_COMPATIBLE="PAYMENT_METHOD_NOT_COMPATIBLE",e.RESUME_ERROR="RESUME_ERROR",e.TAX_ERROR="TAX_ERROR",e.VALIDATION_ERROR="VALIDATION_ERROR",e.PAYMENT_FAILED="PAYMENT_FAILED",e.PAYMENT_CREATION_ABORTED="PAYMENT_CREATION_ABORTED",e.PAYMENT_CREATION_DISABLED="PAYMENT_CREATION_DISABLED",e.CLIENT_SESSION_UPDATE_ERROR="CLIENT_SESSION_UPDATE_ERROR",e.INVALID_ARGUMENT="INVALID_ARGUMENT",e.VAULT_FETCH="VAULT_FETCH",e.VAULT_DELETE="VAULT_DELETE",e.HEADLESS_VAULT_MANAGER_VALIDATION="HEADLESS_VAULT_MANAGER_VALIDATION",e.CARD_FORM_VALIDATION_UNEXPECTED_FIELD="CARD_FORM_VALIDATION_UNEXPECTED_FIELD",e))(He||{});class we extends Error{constructor(r,t,n){super(t.message),this.message=t.message,this.code=r,this.diagnosticsId=t.diagnosticsId||null,this.data=t.data,this.isFromDeveloper=t.isFromDeveloper??!1,n?.messageEvent?.({message:t.message,messageType:r,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})}static fromErrorCode(r,t,n){return new we(r,t,n)}}const qr=e=>{throw console.error(e.message),e};var Kr=f(473),yr=f(453);const Wr={0:"0",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9","\uFF10":"0","\uFF11":"1","\uFF12":"2","\uFF13":"3","\uFF14":"4","\uFF15":"5","\uFF16":"6","\uFF17":"7","\uFF18":"8","\uFF19":"9","\u0660":"0","\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u06F0":"0","\u06F1":"1","\u06F2":"2","\u06F3":"3","\u06F4":"4","\u06F5":"5","\u06F6":"6","\u06F7":"7","\u06F8":"8","\u06F9":"9"};function et(e,r){return Wr[e]}const rt={error:null,errorCode:null,valid:!1,active:!1,dirty:!1,touched:!1,submitted:!1},Ve=new Set(["change","blur","focus"]);async function tt({container:e,placement:r="append",properties:t,allowedCharactersMap:n,...o},i){let N,c={...defaultFieldMetadata};const T={},Y=await new Promise(d=>{const L=i.iframes.create({container:e,filename:"secure-input.html",meta:o,onReady:()=>d(L),placement:r,payload:{allowedCharactersMap:JSON.stringify(n),properties:t}})});return window.addEventListener("message",({data:d})=>{switch(d.type){case"metadata":c=d.metadata;break;case"change":c=d.metadata,N=d.valueToken,T.change?.forEach(L=>L(N,c));break;case"blur":T.blur?.forEach(L=>L());break;case"focus":T.focus?.forEach(L=>L());break;default:break}}),{frame:Y,get metadata(){return c},name:o.name,get valueToken(){return N},remove(){Y?.remove(),Object.values(T).forEach(d=>d.clear())},addListener(d,L){if(Ve.has(d))return T[d]||(T[d]=new Set),T[d].add(L),()=>this.removeListener(d,L);console.error(`Event not supported: supported events are ${[...Ve].join(", ")}`)},addEventListener(d,L){return this.addListener(d,L)},removeListener(d,L){T[d].delete(L)},blur(){z("blur")},focus(){z("focus")}};function z(d){Y?.contentWindow?.postMessage(d,"*")}}async function nt({cardNetwork:e,...r},t){const n=`cvv-${r.name}`,o=jr(e||""),i=getTypeInfo(o),N=!e&&"`cardNetwork` was not provided"||!i&&"could not get the code size from the provided `cardNetwork`";if(N){const Y=`CvvInput: ${N}. Defaulting validation to minLength 3 and maxLength 4.`;t.analytics.messageEvent({messageType:"CARD_SECURITY_CODE_INPUT_VALIDATION",message:Y,severity:"WARN"}),console.warn(Y)}const{size:c}=i?.code??{},T={...r.properties,maxLength:c||4,minLength:c||3};return createSecureInput({...r,name:n,properties:T,allowedCharactersMap:DIGITS},t)}function jr(e){const r=toKebabCase(e);switch(r){case"union-pay":return"unionpay";default:return r}}var xe=(e=>(e.PAYMENT_METHOD="PAYMENT_METHOD",e.CHECK="CHECK",e))(xe||{}),Ge=(e=>(e.CHANGE="change",e.ERROR="error",e.FOCUS="focus",e.BLUR="blur",e.CLICK="click",e.CLOSE="close",e))(Ge||{}),me=(e=>(e.CARD="CARD",e.NATIVE="NATIVE",e.REDIRECT="REDIRECT",e))(me||{});const zr={SDK_VERSION:vr,createHeadless:Ur,showExpressCheckout:Br,showUniversalCheckout:br,showVaultManager:kr}}(),X}()});
|
|
1
|
+
(function(G,c){typeof exports=="object"&&typeof module=="object"?module.exports=c():typeof define=="function"&&define.amd?define([],c):typeof exports=="object"?exports.Primer=c():G.Primer=c()})(this,function(){return function(){var $={453:function(o,s,A){"use strict";var u=this&&this.__assign||function(){return u=Object.assign||function(O){for(var l,I=1,U=arguments.length;I<U;I++){l=arguments[I];for(var B in l)Object.prototype.hasOwnProperty.call(l,B)&&(O[B]=l[B])}return O},u.apply(this,arguments)},f=A(743),a=A(576),i=A(243),S=A(169),D=A(679),d={},E={VISA:"visa",MASTERCARD:"mastercard",AMERICAN_EXPRESS:"american-express",DINERS_CLUB:"diners-club",DISCOVER:"discover",JCB:"jcb",UNIONPAY:"unionpay",MAESTRO:"maestro",ELO:"elo",MIR:"mir",HIPER:"hiper",HIPERCARD:"hipercard"},L=[E.VISA,E.MASTERCARD,E.AMERICAN_EXPRESS,E.DINERS_CLUB,E.DISCOVER,E.JCB,E.UNIONPAY,E.MAESTRO,E.ELO,E.MIR,E.HIPER,E.HIPERCARD],C=D.clone(L);function b(O){return d[O]||f[O]}function k(){return C.map(function(O){return D.clone(b(O))})}function M(O,l){l===void 0&&(l=!1);var I=C.indexOf(O);if(!l&&I===-1)throw new Error('"'+O+'" is not a supported card type.');return I}function v(O){var l=[];if(!i.isValidInputType(O))return l;if(O.length===0)return k();C.forEach(function(U){var B=b(U);a.addMatchingCardsToResults(O,B,l)});var I=S.findBestMatch(l);return I?[I]:l}v.getTypeInfo=function(O){return D.clone(b(O))},v.removeCard=function(O){var l=M(O);C.splice(l,1)},v.addCard=function(O){var l=M(O.type,!0);d[O.type]=O,l===-1&&C.push(O.type)},v.updateCard=function(O,l){var I=d[O]||f[O];if(!I)throw new Error('"'+O+"\" is not a recognized type. Use `addCard` instead.'");if(l.type&&I.type!==l.type)throw new Error("Cannot overwrite type parameter.");var U=D.clone(I);U=u(u({},U),l),d[U.type]=U},v.changeOrder=function(O,l){var I=M(O);C.splice(I,1),C.splice(l,0,O)},v.resetModifications=function(){C=D.clone(L),d={}},v.types=E,o.exports=v},576:function(o,s,A){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.addMatchingCardsToResults=void 0;var u=A(679),f=A(864);function a(i,S,D){var d,E;for(d=0;d<S.patterns.length;d++){var L=S.patterns[d];if(f.matches(i,L)){var C=u.clone(S);Array.isArray(L)?E=String(L[0]).length:E=String(L).length,i.length>=E&&(C.matchStrength=E),D.push(C);break}}}s.addMatchingCardsToResults=a},743:function(o){"use strict";var s={visa:{niceType:"Visa",type:"visa",patterns:[4],gaps:[4,8,12],lengths:[16,18,19],code:{name:"CVV",size:3}},mastercard:{niceType:"Mastercard",type:"mastercard",patterns:[[51,55],[2221,2229],[223,229],[23,26],[270,271],2720],gaps:[4,8,12],lengths:[16],code:{name:"CVC",size:3}},"american-express":{niceType:"American Express",type:"american-express",patterns:[34,37],gaps:[4,10],lengths:[15],code:{name:"CID",size:4}},"diners-club":{niceType:"Diners Club",type:"diners-club",patterns:[[300,305],36,38,39],gaps:[4,10],lengths:[14,16,19],code:{name:"CVV",size:3}},discover:{niceType:"Discover",type:"discover",patterns:[6011,[644,649],65],gaps:[4,8,12],lengths:[16,19],code:{name:"CID",size:3}},jcb:{niceType:"JCB",type:"jcb",patterns:[2131,1800,[3528,3589]],gaps:[4,8,12],lengths:[16,17,18,19],code:{name:"CVV",size:3}},unionpay:{niceType:"UnionPay",type:"unionpay",patterns:[620,[624,626],[62100,62182],[62184,62187],[62185,62197],[62200,62205],[622010,622999],622018,[622019,622999],[62207,62209],[622126,622925],[623,626],6270,6272,6276,[627700,627779],[627781,627799],[6282,6289],6291,6292,810,[8110,8131],[8132,8151],[8152,8163],[8164,8171]],gaps:[4,8,12],lengths:[14,15,16,17,18,19],code:{name:"CVN",size:3}},maestro:{niceType:"Maestro",type:"maestro",patterns:[493698,[5e5,504174],[504176,506698],[506779,508999],[56,59],63,67,6],gaps:[4,8,12],lengths:[12,13,14,15,16,17,18,19],code:{name:"CVC",size:3}},elo:{niceType:"Elo",type:"elo",patterns:[401178,401179,438935,457631,457632,431274,451416,457393,504175,[506699,506778],[509e3,509999],627780,636297,636368,[650031,650033],[650035,650051],[650405,650439],[650485,650538],[650541,650598],[650700,650718],[650720,650727],[650901,650978],[651652,651679],[655e3,655019],[655021,655058]],gaps:[4,8,12],lengths:[16],code:{name:"CVE",size:3}},mir:{niceType:"Mir",type:"mir",patterns:[[2200,2204]],gaps:[4,8,12],lengths:[16,17,18,19],code:{name:"CVP2",size:3}},hiper:{niceType:"Hiper",type:"hiper",patterns:[637095,63737423,63743358,637568,637599,637609,637612],gaps:[4,8,12],lengths:[16],code:{name:"CVC",size:3}},hipercard:{niceType:"Hipercard",type:"hipercard",patterns:[606282],gaps:[4,8,12],lengths:[16],code:{name:"CVC",size:3}}};o.exports=s},679:function(o,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.clone=void 0;function A(u){return u?JSON.parse(JSON.stringify(u)):null}s.clone=A},169:function(o,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.findBestMatch=void 0;function A(f){var a=f.filter(function(i){return i.matchStrength}).length;return a>0&&a===f.length}function u(f){return A(f)?f.reduce(function(a,i){return!a||Number(a.matchStrength)<Number(i.matchStrength)?i:a}):null}s.findBestMatch=u},243:function(o,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.isValidInputType=void 0;function A(u){return typeof u=="string"||u instanceof String}s.isValidInputType=A},864:function(o,s){"use strict";Object.defineProperty(s,"__esModule",{value:!0}),s.matches=void 0;function A(a,i,S){var D=String(i).length,d=a.substr(0,D),E=parseInt(d,10);return i=parseInt(String(i).substr(0,d.length),10),S=parseInt(String(S).substr(0,d.length),10),E>=i&&E<=S}function u(a,i){return i=String(i),i.substring(0,a.length)===a.substring(0,i.length)}function f(a,i){return Array.isArray(i)?A(a,i[0],i[1]):u(a,i)}s.matches=f},476:function(){},962:function(){},473:function(){}},G={};function c(o){var s=G[o];if(s!==void 0)return s.exports;var A=G[o]={exports:{}};return $[o].call(A.exports,A,A.exports,c),A.exports}c.m=$,function(){c.d=function(o,s){for(var A in s)c.o(s,A)&&!c.o(o,A)&&Object.defineProperty(o,A,{enumerable:!0,get:s[A]})}}(),function(){c.f={},c.e=function(o){return Promise.all(Object.keys(c.f).reduce(function(s,A){return c.f[A](o,s),s},[]))}}(),function(){c.u=function(o){return""+o+".js"}}(),function(){c.miniCssF=function(o){return""+(o===926?"Primer":o)+".css"}}(),function(){c.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}()}(),function(){c.o=function(o,s){return Object.prototype.hasOwnProperty.call(o,s)}}(),function(){var o={},s="@primer-io/checkout-web:";c.l=function(A,u,f,a){if(o[A]){o[A].push(u);return}var i,S;if(f!==void 0)for(var D=document.getElementsByTagName("script"),d=0;d<D.length;d++){var E=D[d];if(E.getAttribute("src")==A||E.getAttribute("data-webpack")==s+f){i=E;break}}i||(S=!0,i=document.createElement("script"),i.charset="utf-8",i.timeout=120,c.nc&&i.setAttribute("nonce",c.nc),i.setAttribute("data-webpack",s+f),i.src=A),o[A]=[u];var L=function(b,k){i.onerror=i.onload=null,clearTimeout(C);var M=o[A];if(delete o[A],i.parentNode&&i.parentNode.removeChild(i),M&&M.forEach(function(v){return v(k)}),b)return b(k)},C=setTimeout(L.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=L.bind(null,i.onerror),i.onload=L.bind(null,i.onload),S&&document.head.appendChild(i)}}(),function(){c.r=function(o){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(o,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(o,"__esModule",{value:!0})}}(),function(){var o;c.g.importScripts&&(o=c.g.location+"");var s=c.g.document;if(!o&&s&&(s.currentScript&&(o=s.currentScript.src),!o)){var A=s.getElementsByTagName("script");A.length&&(o=A[A.length-1].src)}if(!o)throw new Error("Automatic publicPath is not supported in this browser");o=o.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),c.p=o}(),function(){var o={926:0};c.f.j=function(u,f){var a=c.o(o,u)?o[u]:void 0;if(a!==0)if(a)f.push(a[2]);else{var i=new Promise(function(E,L){a=o[u]=[E,L]});f.push(a[2]=i);var S=c.p+c.u(u),D=new Error,d=function(E){if(c.o(o,u)&&(a=o[u],a!==0&&(o[u]=void 0),a)){var L=E&&(E.type==="load"?"missing":E.type),C=E&&E.target&&E.target.src;D.message="Loading chunk "+u+` failed.
|
|
2
|
+
(`+L+": "+C+")",D.name="ChunkLoadError",D.type=L,D.request=C,a[1](D)}};c.l(S,d,"chunk-"+u,u)}};var s=function(u,f){var a=f[0],i=f[1],S=f[2],D,d,E=0;if(a.some(function(C){return o[C]!==0})){for(D in i)c.o(i,D)&&(c.m[D]=i[D]);if(S)var L=S(c)}for(u&&u(f);E<a.length;E++)d=a[E],c.o(o,d)&&o[d]&&o[d][0](),o[d]=0},A=this.webpackChunk_primer_io_checkout_web=this.webpackChunk_primer_io_checkout_web||[];A.forEach(s.bind(null,0)),A.push=s.bind(null,A.push.bind(A))}();var X={};return function(){"use strict";c.r(X),c.d(X,{CheckoutUXFlow:function(){return Me},CvvInput:function(){return o.CvvInput},ErrorCode:function(){return Fe},EventTypes:function(){return xe},HeadlessManagerType:function(){return Ge},PaymentFlow:function(){return Ue},PaymentInstrumentType:function(){return Be},PaymentMethodData:function(){return jr.PaymentMethodData},PaymentMethodType:function(){return y},Primer:function(){return $r},SuccessScreenType:function(){return Ve},ThreeDSecureStatus:function(){return be},TokenType:function(){return ke},preloadPrimer:function(){return mr}});var o={};c.r(o);var s=c(476),A=c(962),u=(e=>(e.REQUEST_START="REQUEST_START",e.REQUEST_END="REQUEST_END",e))(u||{}),f=(e=>(e.START="START",e.END="END",e))(f||{}),a=(e=>(e.NETWORK_CALL_EVENT="NETWORK_CALL_EVENT",e.CRASH_EVENT="CRASH_EVENT",e.TIMER_EVENT="TIMER_EVENT",e.MESSAGE_EVENT="MESSAGE_EVENT",e.V1_EVENT="V1_EVENT",e.SDK_FUNCTION_EVENT="SDK_FUNCTION_EVENT",e))(a||{});const i={get(e,r){let t;try{switch(e){case"PRIMER_SDK_VERSION":t="v2.37.0";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||r}};var S=(e=>(e.CHARGING="CHARGING",e.NOT_CHARGING="NOT_CHARGING",e))(S||{});async function D(){if(typeof navigator>"u")return;const e=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:e?.level,batteryStatus:e?.charging?"CHARGING":"NOT_CHARGING"}}const d="WEB",E=i.get("PRIMER_SDK_VERSION");async function L(e,r,t){return{...t,createdAt:Date.now(),device:await D(),eventType:e,properties:r,sdkVersion:E,sdkType:d}}const C="https://analytics.production.data.primer.io/sdk-logs",b=1024*5,k=e=>`@primer/analytics/${e}`;function M({url:e=C,...r}={}){typeof document<"u"&&document.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&v(e)});const t=n=>async _=>{if(typeof navigator>"u")return;const R=await L(n,_,r),N=l(R,Y=>I(U(Y)));O(e,N)};return{crashEvent:t(a.CRASH_EVENT),messageEvent:t(a.MESSAGE_EVENT),networkCallEvent:t(a.NETWORK_CALL_EVENT),sdkFunctionEvent:t(a.SDK_FUNCTION_EVENT),timerEvent:t(a.TIMER_EVENT),v1Event:t(a.V1_EVENT)}}function v(e){const r=k(e),t=sessionStorage.getItem(r);sessionStorage.removeItem(r),t&&navigator.sendBeacon(e,t)}function O(e,r){const t=k(e);sessionStorage.setItem(t,`[${[sessionStorage.getItem(t)?.slice(1,-1),JSON.stringify(r)].filter(Boolean).join(",")}]`)}function l(e,r){const t=n=>typeof n=="object"&&n!==null?l(n,r):r(n);return Array.isArray(e)?e.map(t):Object.fromEntries(Object.entries(e).map(([n,_])=>[n,t(_)]))}function I(e){return typeof e=="string"&&e.length>b?`${e.slice(0,b)}...`:e}function U(e){return typeof e=="function"?e.name||"function":e}class B{constructor(r,t){this.type=r,this.displayName=t}get specs(){return this.constructor.specs}setOption(r,t){this.options&&(this.options[r]=t)}setupAndValidate(){return Promise.resolve(!0)}mount(){return Promise.resolve(!0)}tokenize(r){return Promise.resolve()}validate(){return Promise.resolve({valid:!0,validationErrors:[]})}setDisabled(r){return Promise.resolve()}focus(){}blur(){}getPaymentElement(){return null}getStore(){}}B.specs={key:"__none__",canVault:!1,buttonManagedByPaymentMethod:!1,hasExportedButtonOptions:!1},B.create=(e,r,t,n)=>{throw new Error("Cannot instantiate BasePaymentMethod")};class Ke extends B{async tokenize(r){}}class je{get session(){const r=this.store.getState().clientSessionInfo;if(!r)throw new Error("Client Context Session does not exist");return r}}const We=[Array,Ke,je,Map,Set];function ze(e){const r=new Set,t=20;let n=0;for(;n++<t&&e&&e!==Object.prototype;)Object.getOwnPropertyNames(e).forEach(_=>r.add(_)),e=Object.getPrototypeOf(e);return[...r]}function ee(e,r,t,n,_){if(!t||We.some(R=>t instanceof R))return t;switch(typeof t){case"function":return new Proxy(t,{apply(R,T,N=[]){const Y={name:r.replace(/^bound /,""),params:N,module:_};e?.sdkFunctionEvent(Y);const g=N.map((z,P)=>ee(e,`${P}`,z,n,[_,r,`${P}`].filter(Boolean).join(".")));return R.apply(T,g)}});case"object":return t===n?t:$e(e,t,[_,r].filter(Boolean).join("."));default:return t}}function $e(e,r,t){return Object.fromEntries(ze(r).map(n=>{const _=r?.[n],R=ee(e,n,_,_,t);return[n,R]}))}const re=()=>te.randomUUID?.()||Xe(),Xe=()=>([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,e=>(e^Qe()>>e/4).toString(16)),Qe=()=>(te.getRandomValues?.(new Uint8Array(1))[0]??Math.random()*16)&15,te=typeof crypto<"u"?crypto:{},Ze=new Set(["post","get","delete"]),Je=new Set(["post"]);function qe(e,r,t,n){const _=Je.has(e);return{method:e,options:_?n:t,body:_?t:void 0,url:r}}function Xr(e,r){const t=({prop:n})=>({apply:async(_,R,T=[])=>{const N=qe(n.toString(),...T);if(N.options?.isAnalytics)return _.apply(R,T);const Y=uuid();r?.networkCallEvent(prepareNetworkEventProps(Y,N));const g=await _.apply(R,T);return r?.networkCallEvent(prepareNetworkEventProps(Y,N,g)),g}});return new Proxy(e,{get(n,_){const R=n[_];return typeof R=="function"&&Ze.has(_)?new Proxy(R,t({prop:_})):R}})}const ne=(e,r,t)=>({callType:t?u.REQUEST_END:u.REQUEST_START,id:e,errorBody:t?.error&&JSON.stringify(t.error),method:r.method,responseCode:t?.status,url:r.url}),oe="3.6.1",ye=oe,er=typeof atob=="function",rr=typeof btoa=="function",F=typeof Buffer=="function",ie=typeof TextDecoder=="function"?new TextDecoder:void 0,ce=typeof TextEncoder=="function"?new TextEncoder:void 0,H=[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="],K=(e=>{let r={};return e.forEach((t,n)=>r[t]=n),r})(H),tr=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,h=String.fromCharCode.bind(String),se=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):(e,r=t=>t)=>new Uint8Array(Array.prototype.slice.call(e,0).map(r)),Ae=e=>e.replace(/[+\/]/g,r=>r=="+"?"-":"_").replace(/=+$/m,""),_e=e=>e.replace(/[^A-Za-z0-9\+\/]/g,""),ae=e=>{let r,t,n,_,R="";const T=e.length%3;for(let N=0;N<e.length;){if((t=e.charCodeAt(N++))>255||(n=e.charCodeAt(N++))>255||(_=e.charCodeAt(N++))>255)throw new TypeError("invalid character found");r=t<<16|n<<8|_,R+=H[r>>18&63]+H[r>>12&63]+H[r>>6&63]+H[r&63]}return T?R.slice(0,T-3)+"===".substring(T):R},Q=rr?e=>btoa(e):F?e=>Buffer.from(e,"binary").toString("base64"):ae,Z=F?e=>Buffer.from(e).toString("base64"):e=>{let t=[];for(let n=0,_=e.length;n<_;n+=4096)t.push(h.apply(null,e.subarray(n,n+4096)));return Q(t.join(""))},j=(e,r=!1)=>r?Ae(Z(e)):Z(e),nr=e=>{if(e.length<2){var r=e.charCodeAt(0);return r<128?e:r<2048?h(192|r>>>6)+h(128|r&63):h(224|r>>>12&15)+h(128|r>>>6&63)+h(128|r&63)}else{var r=65536+(e.charCodeAt(0)-55296)*1024+(e.charCodeAt(1)-56320);return h(240|r>>>18&7)+h(128|r>>>12&63)+h(128|r>>>6&63)+h(128|r&63)}},or=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,Ee=e=>e.replace(or,nr),ue=F?e=>Buffer.from(e,"utf8").toString("base64"):ce?e=>Z(ce.encode(e)):e=>Q(Ee(e)),m=(e,r=!1)=>r?Ae(ue(e)):ue(e),Re=e=>m(e,!0),ir=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,cr=e=>{switch(e.length){case 4:var r=(7&e.charCodeAt(0))<<18|(63&e.charCodeAt(1))<<12|(63&e.charCodeAt(2))<<6|63&e.charCodeAt(3),t=r-65536;return h((t>>>10)+55296)+h((t&1023)+56320);case 3:return h((15&e.charCodeAt(0))<<12|(63&e.charCodeAt(1))<<6|63&e.charCodeAt(2));default:return h((31&e.charCodeAt(0))<<6|63&e.charCodeAt(1))}},Oe=e=>e.replace(ir,cr),Ne=e=>{if(e=e.replace(/\s+/g,""),!tr.test(e))throw new TypeError("malformed base64.");e+="==".slice(2-(e.length&3));let r,t="",n,_;for(let R=0;R<e.length;)r=K[e.charAt(R++)]<<18|K[e.charAt(R++)]<<12|(n=K[e.charAt(R++)])<<6|(_=K[e.charAt(R++)]),t+=n===64?h(r>>16&255):_===64?h(r>>16&255,r>>8&255):h(r>>16&255,r>>8&255,r&255);return t},J=er?e=>atob(_e(e)):F?e=>Buffer.from(e,"base64").toString("binary"):Ne,de=F?e=>se(Buffer.from(e,"base64")):e=>se(J(e),r=>r.charCodeAt(0)),fe=e=>de(le(e)),sr=F?e=>Buffer.from(e,"base64").toString("utf8"):ie?e=>ie.decode(de(e)):e=>Oe(J(e)),le=e=>_e(e.replace(/[-_]/g,r=>r=="-"?"+":"/")),q=e=>sr(le(e)),Ar=e=>{if(typeof e!="string")return!1;const r=e.replace(/\s+/g,"").replace(/=+$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(r)||!/[^\s0-9a-zA-Z\-_]/.test(r)},De=e=>({value:e,enumerable:!1,writable:!0,configurable:!0}),Te=function(){const e=(r,t)=>Object.defineProperty(String.prototype,r,De(t));e("fromBase64",function(){return q(this)}),e("toBase64",function(r){return m(this,r)}),e("toBase64URI",function(){return m(this,!0)}),e("toBase64URL",function(){return m(this,!0)}),e("toUint8Array",function(){return fe(this)})},Pe=function(){const e=(r,t)=>Object.defineProperty(Uint8Array.prototype,r,De(t));e("toBase64",function(r){return j(this,r)}),e("toBase64URI",function(){return j(this,!0)}),e("toBase64URL",function(){return j(this,!0)})},Ce={version:oe,VERSION:ye,atob:J,atobPolyfill:Ne,btoa:Q,btoaPolyfill:ae,fromBase64:q,toBase64:m,encode:m,encodeURI:Re,encodeURL:Re,utob:Ee,btou:Oe,decode:q,isValid:Ar,fromUint8Array:j,toUint8Array:fe,extendString:Te,extendUint8Array:Pe,extendBuiltins:()=>{Te(),Pe()}},_r={encode:ar,decode:Ce.decode};function ar(e,r={}){const{urlSafe:t=!1}=r;return Ce.encode(e,t)}function Er(e){const r=Or(e),t=r.exp*1e3;if(Date.now()>t)throw new Error(`${ur}. Expiration date: ${new Date(t).toISOString()}`);return r}const Se="The provided `clientToken`",ur=`${Se} has expired`,Rr=`${Se} is malformed`;function Or(e){try{const[r,t]=e.split("."),n=t||r;return JSON.parse(_r.decode(n))}catch{throw new Error(Rr)}}const Nr=(e,r)=>Le("get",e,r),Jr=(e,r,t)=>Le("post",e,t,JSON.stringify(r)),dr={"content-type":"application/json"},Le=(e,r,t,n)=>fetch(r,{body:n,method:e,headers:{...dr,...t}}).then(_=>_.json().catch(()=>{})),fr="v2.37.0",lr=(e,r,t)=>({"primer-client-token":e,"primer-sdk-client":"WEB","primer-sdk-version":fr,"primer-sdk-checkout-session-id":r,...t&&{"x-api-version":t}});async function Dr(e,r,t){try{return await Nr(`${r}/?withDisplayMetadata=true`,lr(e,t,"2.2"))}catch(n){throw new Error(["Failed to initialize client",JSON.stringify(n||void 0,void 0,2)].filter(Boolean).join(": "))}}const Tr=e=>document.head.appendChild(e),Pr=(e,r)=>{const t=document.createElement(e);return Object.entries(r).forEach(([n,_])=>t.setAttribute(n,_)),t},Cr=(e,r)=>Tr(Pr(e,r)),Ye=(e,r,t)=>e.addEventListener(r,t),Sr=e=>document.querySelector(e),Ie="Can't load Primer SDK",Lr=`${Ie}'s Stylesheet`;function Yr(e){const r="script",t="src";return pe(r,t,e)&&window.__Primer?Promise.resolve():he(r,e,t,{async:"",crossorigin:"anonymous"},Ie)}function Ir(e){return Array.from(document.styleSheets).find(r=>r.href===e)?Promise.resolve():he("link",e,"href",{rel:"stylesheet"},Lr)}const he=(e,r,t,n,_)=>new Promise((R,T)=>{const N=pe(e,t,r)||Cr(e,{...n,[t]:r});Ye(N,"load",()=>R()),Ye(N,"error",()=>{N?.remove(),T(new Error(_))})}),pe=(e,r,t)=>Sr(`${e}[${r}^="${t}"]`),hr="https://sdk.primer.io/web/v2.37.0/Checkout.css",pr="https://sdk.primer.io/web/v2.37.0/PrimerCoreSDK.min.js";let V;async function ge(){return V||(V=Promise.all([vr(),gr()]).then(([e])=>e),V)}const gr=()=>Ir(hr),vr=()=>Yr(pr).then(()=>{const e=window.__Primer;return delete window.__Primer,e}).catch(e=>{throw V=void 0,e}),Mr="v2.37.0",Ur=W("createHeadless"),br=W("showExpressCheckout"),Br=W("showUniversalCheckout"),kr=W("showVaultManager"),ve="LOAD_PERFORMANCE",x=re();let w=M({checkoutSessionId:x});w.messageEvent({message:"parsed",messageType:ve,now:performance.now?.()});function W(e){return async(...[r,t,...n])=>{w.sdkFunctionEvent({name:e,params:[r,t,...n]}),w.messageEvent({message:"create",messageType:ve,now:performance.now?.()});const[_,R]=await Promise.all([wr(r),ge(),Fr()]);return R[e](_,x,r,t)}}async function wr(e){const{accessToken:r,configurationUrl:t,analyticsUrlV2:n}=Er(e);w=M({checkoutSessionId:x,url:n});const _=`${t}/?withDisplayMetadata=true`,R=re(),T={method:"get",url:_};w.networkCallEvent(ne(R,T));const N=await Dr(r,t,x),{primerAccountId:Y}=N,{clientSessionId:g}=N.clientSession;return w=M({checkoutSessionId:x,clientSessionId:g,primerAccountId:Y,url:n}),w.networkCallEvent(ne(R,T,{data:N})),N}async function Fr(){}const mr=()=>ge().then(()=>{});var Hr=(e=>(e.LOADING="Loading",e.THREE_DS="UniversalCheckout/3ds",e.CHOOSE_PAYMENT_METHOD="UniversalCheckout/Home",e.MANAGE_PAYMENT_METHODS="VaultManager/Home",e.DIRECT_DEBIT_FORM="DirectDebit/Form",e.DIRECT_DEBIT_MANDATE="DirectDebit/Mandate",e.CREDIT_CARD_FORM="CreditCard/Form",e.SUCCESS_PAYMENT_METHOD="UniversalCheckout/Success/PaymentMethod",e.SUCCESS_CHECK="UniversalCheckout/Success/Check",e))(Hr||{}),Vr=(e=>(e.ROOT="primer-checkout",e.ROOT_CONTENT="primer-checkout-content",e.SUBMIT_BUTTON="primer-checkout-submit-button",e.THREE_DS_MODAL="primer-checkout-3ds-modal",e.VAULT="primer-checkout-vault",e.VAULT_INLINE="primer-checkout-vault-inline",e.NAVIGATE_PAYMENT_METHODS="primer-checkout-navigate-to-payment-methods",e.DIVIDER="primer-checkout-payment-method-divider",e.APM_BUTTONS="primer-checkout-apm-button-container",e.CARDHOLDER_NAME="primer-checkout-cardholder-name",e.CARDHOLDER_NAME_INPUT="primer-checkout-card-cardholder-name-input",e.ACTIONS="primer-checkout-actions",e.ACTIONS_MENU="primer-checkout-actions-menu",e.SAVE_PAYMENT_METHOD_CHECKBOX="primer-checkout-save-payment-method-input",e.SAVE_PAYMENT_METHOD_FIELD="primer-checkout-save-payment-method-field",e.SAVED_PAYMENT_METHODS_EMPTY="primer-checkout-saved-payment-methods-empty-text",e.CARD_FORM="primer-checkout-card-form",e.DD_SWITCH="primer-checkout-switch-dd-inputs",e.DD_IBAN_FIELD="primer-checkout-dd-iban-field",e.DD_LOCAL_FIELD="primer-checkout-dd-local-fields",e.DD_CUSTOMER_NAME_INPUT="primer-checkout-dd-customer-name-input",e.DD_CUSTOMER_EMAIL_INPUT="primer-checkout-dd-customer-email-input",e.DD_CUSTOMER_ADDRESS_LINE1="primer-checkout-dd-customer-address-input",e.DD_CUSTOMER_ADDRESS_LINE2="primer-checkout-dd-customer-address-line2-input",e.DD_CUSTOMER_ADDRESS_CITY="primer-checkout-dd-customer-city-input",e.DD_CUSTOMER_ADDRESS_POSTAL_CODE="primer-checkout-dd-customer-postal-code-input",e.DD_IBAN_INPUT="primer-checkout-dd-iban-input",e.DD_ACCOUNT_NUMBER_INPUT="primer-checkout-dd-account-number-input",e.DD_BANK_CODE_INPUT="primer-checkout-dd-bank-code-input",e.DD_BRANCH_CODE_INPUT="primer-checkout-dd-branch-code-input",e.DD_MANDATE_SMALL_PRINT="primer-checkout-small-print",e.ERROR_MESSAGE="primer-checkout-error-message",e))(Vr||{}),xr=(e=>(e.TOKEN="PrimerCheckout__token",e.HIDDEN="PrimerCheckout--hidden",e.FOCUSED="PrimerCheckout--focused",e.SELECTED="PrimerCheckout--selected",e.LOADING="PrimerCheckout--loading",e.ERROR="PrimerCheckout--error",e.CARD_TYPE="PrimerCheckout__cardType",e.SAVED_PAYMENT_METHOD="PrimerCheckout__savedPaymentMethod",e.SAVED_PAYMENT_METHOD_CONTAINER="PrimerCheckout__savedPaymentMethodContainer",e.APM_BUTTON="PrimerCheckout__apmButton",e.EDIT_BUTTON="PrimerCheckout__editButton",e.MENU="PrimerCheckout__dropDownMenu",e.MENU_ITEM="PrimerCheckout__dropDownMenuItem",e.PAYMENT_METHOD_MENU_ITEM="PrimerCheckout__paymentMethodDropDownMenuItem",e.DELETE_PAYMENT_METHOD_BUTTON="PrimerCheckout__paymentMethodDropDownMenuItem__deleteButton",e.ENTER="PrimerCheckout--enter",e.ENTERING="PrimerCheckout--entering",e.ENTERED="PrimerCheckout--entered",e.EXIT="PrimerCheckout--exit",e.EXITING="PrimerCheckout--exiting",e.EXITED="PrimerCheckout--exited",e))(xr||{}),Me=(e=>(e.CHECKOUT="CHECKOUT",e.EXPRESS_CHECKOUT="EXPRESS_CHECKOUT",e.HEADLESS_CHECKOUT="HEADLESS_CHECKOUT",e.MANAGE_PAYMENT_METHODS="MANAGE_PAYMENT_METHODS",e.SINGLE_PAYMENT_METHOD_CHECKOUT="SINGLE_PAYMENT_METHOD_CHECKOUT",e))(Me||{}),Ue=(e=>(e.DEFAULT="DEFAULT",e.PREFER_VAULT="PREFER_VAULT",e))(Ue||{}),Gr=(e=>(e.TOKENIZE_STARTED="tokenize-started",e.TOKENIZE_ERROR="tokenize-error",e.TOKENIZE_SUCCESS="tokenize-success",e.TOKENIZE_DID_NOT_START="tokenize-did-not-start",e))(Gr||{}),be=(e=>(e.SUCCESS="AUTH_SUCCESS",e.FAILED="AUTH_FAILED",e.SKIPPED="SKIPPED",e.CHALLENGE="CHALLENGE",e))(be||{}),Be=(e=>(e.WORLDPAY_IDEAL="WORLDPAY_IDEAL",e.ADYEN_KLARNA="ADYEN_KLARNA",e.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",e.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",e.ADYEN_EPS="ADYEN_EPS",e.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",e.OMISE_PROMPTPAY="OMISE_PROMPTPAY",e.OMISE_TRUEMONEY="OMISE_TRUEMONEY",e.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",e.PACYPAY_WECHAT="PACYPAY_WECHAT",e.PACYPAY_ALIPAY="PACYPAY_ALIPAY",e.ADYEN_MBWAY="ADYEN_MBWAY",e.XENDIT_DANA="XENDIT_DANA",e.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",e.ADYEN_PAYSHOP="ADYEN_PAYSHOP",e.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",e.CLEARPAY="CLEARPAY",e.RAPYD_FAST="RAPYD_FAST",e.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",e.RAPYD_GCASH="RAPYD_GCASH",e.RAPYD_POLI="RAPYD_POLI",e.RAPYD_GRABPAY="RAPYD_GRABPAY",e.PRIMER_PAYPAL="PRIMER_PAYPAL",e.TWOC2P="TWOC2P",e.NETS="NETS",e.STRIPE_GIROPAY="STRIPE_GIROPAY",e.MOLLIE_GIROPAY="MOLLIE_GIROPAY",e.MOLLIE_EPS="MOLLIE_EPS",e.PAY_NL_EPS="PAY_NL_EPS",e.PAY_NL_P24="PAY_NL_P24",e.MOLLIE_P24="MOLLIE_P24",e.MOLLIE_SOFORT="MOLLIE_SOFORT",e.COINBASE="COINBASE",e.OPENNODE="OPENNODE",e.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",e.XFERS_PAYNOW="XFERS_PAYNOW",e.CARD="PAYMENT_CARD",e.APPLE_PAY="APPLE_PAY",e.GOOGLE_PAY="GOOGLE_PAY",e.PAYPAL="PAYPAL_ORDER",e.PAYPAL_VAULTED="PAYPAL_BILLING_AGREEMENT",e.GO_CARDLESS="GOCARDLESS",e.PAY_NL_IDEAL="PAY_NL_IDEAL",e.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",e.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",e.PAY_NL_PAYPAL="PAY_NL_PAYPAL",e.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",e.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",e.PAY_NL_GIROPAY="PAY_NL_GIROPAY",e.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",e.HOOLAH="HOOLAH",e.ADYEN_BLIK="ADYEN_BLIK",e.ADYEN_VIPPS="ADYEN_VIPPS",e.ADYEN_GIROPAY="ADYEN_GIROPAY",e.ADYEN_SOFORT="ADYEN_SOFORT",e.ADYEN_TRUSTLY="ADYEN_TRUSTLY",e.ADYEN_ALIPAY="ADYEN_ALIPAY",e.ADYEN_TWINT="ADYEN_TWINT",e.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",e.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",e.MOLLIE_IDEAL="MOLLIE_IDEAL",e.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",e.BUCKAROO_EPS="BUCKAROO_EPS",e.BUCKAROO_SOFORT="BUCKAROO_SOFORT",e.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",e.BUCKAROO_IDEAL="BUCKAROO_IDEAL",e.ATOME="ATOME",e))(Be||{}),y=(e=>(e.WORLDPAY_IDEAL="WORLDPAY_IDEAL",e.STRIPE_IDEAL="STRIPE_IDEAL",e.ADYEN_KLARNA="ADYEN_KLARNA",e.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",e.PAY_NL_KAARTDIRECT="PAY_NL_KAARTDIRECT",e.ADYEN_EPS="ADYEN_EPS",e.ADYEN_BANCONTACT_PAYCONIQ="ADYEN_BANCONTACT_PAYCONIQ",e.OMISE_PROMPTPAY="OMISE_PROMPTPAY",e.OMISE_TRUEMONEY="OMISE_TRUEMONEY",e.ADYEN_MULTIBANCO="ADYEN_MULTIBANCO",e.PACYPAY_WECHAT="PACYPAY_WECHAT",e.PACYPAY_ALIPAY="PACYPAY_ALIPAY",e.ADYEN_MBWAY="ADYEN_MBWAY",e.XENDIT_DANA="XENDIT_DANA",e.XENDIT_SHOPEEPAY="XENDIT_SHOPEEPAY",e.ADYEN_PAYSHOP="ADYEN_PAYSHOP",e.ADYEN_PAYTRAIL="ADYEN_PAYTRAIL",e.CLEARPAY="CLEARPAY",e.RAPYD_FAST="RAPYD_FAST",e.RAPYD_PROMPTPAY="RAPYD_PROMPTPAY",e.RAPYD_GCASH="RAPYD_GCASH",e.RAPYD_POLI="RAPYD_POLI",e.RAPYD_GRABPAY="RAPYD_GRABPAY",e.PRIMER_PAYPAL="PRIMER_PAYPAL",e.TWOC2P="TWOC2P",e.NETS="NETS",e.STRIPE_GIROPAY="STRIPE_GIROPAY",e.MOLLIE_GIROPAY="MOLLIE_GIROPAY",e.MOLLIE_EPS="MOLLIE_EPS",e.PAY_NL_EPS="PAY_NL_EPS",e.PAY_NL_P24="PAY_NL_P24",e.MOLLIE_P24="MOLLIE_P24",e.MOLLIE_SOFORT="MOLLIE_SOFORT",e.COINBASE="COINBASE",e.OPENNODE="OPENNODE",e.MOLLIE_GIFT_CARD="MOLLIE_GIFTCARD",e.XFERS_PAYNOW="XFERS_PAYNOW",e.PAYMENT_CARD="PAYMENT_CARD",e.APPLE_PAY="APPLE_PAY",e.GOOGLE_PAY="GOOGLE_PAY",e.PAYPAL="PAYPAL",e.GO_CARDLESS="GOCARDLESS",e.KLARNA="KLARNA",e.PAY_NL_IDEAL="PAY_NL_IDEAL",e.PAY_NL_SOFORT_BANKING="PAY_NL_SOFORT_BANKING",e.PAY_NL_BANCONTACT="PAY_NL_BANCONTACT",e.PAY_NL_PAYPAL="PAY_NL_PAYPAL",e.PAY_NL_CREDIT_TRANSFER="PAY_NL_CREDIT_TRANSFER",e.PAY_NL_DIRECT_DEBIT="PAY_NL_DIRECT_DEBIT",e.PAY_NL_GIROPAY="PAY_NL_GIROPAY",e.PAY_NL_PAYCONIQ="PAY_NL_PAYCONIQ",e.HOOLAH="HOOLAH",e.ADYEN_BLIK="ADYEN_BLIK",e.ADYEN_MOBILEPAY="ADYEN_MOBILEPAY",e.ADYEN_VIPPS="ADYEN_VIPPS",e.ADYEN_GIROPAY="ADYEN_GIROPAY",e.ADYEN_SOFORT="ADYEN_SOFORT",e.ADYEN_TRUSTLY="ADYEN_TRUSTLY",e.ADYEN_ALIPAY="ADYEN_ALIPAY",e.ADYEN_TWINT="ADYEN_TWINT",e.ADYEN_BANK_TRANSFER="ADYEN_BANK_TRANSFER",e.MOLLIE_BANCONTACT="MOLLIE_BANCONTACT",e.MOLLIE_IDEAL="MOLLIE_IDEAL",e.BUCKAROO_GIROPAY="BUCKAROO_GIROPAY",e.BUCKAROO_EPS="BUCKAROO_EPS",e.BUCKAROO_SOFORT="BUCKAROO_SOFORT",e.BUCKAROO_BANCONTACT="BUCKAROO_BANCONTACT",e.BUCKAROO_IDEAL="BUCKAROO_IDEAL",e.ATOME="ATOME",e))(y||{}),Kr=(e=>(e.PAYMENT_CARD="PAYMENT_CARD",e.ADYEN_BANCONTACT_CARD="ADYEN_BANCONTACT_CARD",e))(Kr||{}),ke=(e=>(e.SINGLE_USE="SINGLE_USE",e.MULTI_USE="MULTI_USE",e))(ke||{});const we={PAYPAL_BILLING_AGREEMENT:"PAYPAL"},qr=e=>{if(Object.values(y).includes(e))return e;if(we[e])return we[e]};var Fe=(e=>(e.INITIALIZATION_ERROR="INITIALIZATION_ERROR",e.NO_PAYMENT_METHODS="NO_PAYMENT_METHODS",e.PRIMER_TEARDOWN="PRIMER_TEARDOWN",e.PRIMER_SERVER_ERROR="PRIMER_SERVER_ERROR",e.THREE_DS_SETUP_ERROR="THREE_DS_SETUP_ERROR",e.THREE_DS_AUTH_FAILED="THREE_DS_AUTH_FAILED",e.THREE_DS_NEGOTIATION_ERROR="THREE_DS_NEGOTIATION_ERROR",e.TOKENIZATION_ERROR="TOKENIZATION_ERROR",e.DUPLICATE_PAYMENT_METHOD_ERROR="DUPLICATE_PAYMENT_METHOD_ERROR",e.CARD_NUMBER_ERROR="CARD_NUMBER_ERROR",e.PAYMENT_METHOD_NOT_SETUP="PAYMENT_METHOD_NOT_SETUP",e.PAYMENT_METHOD_NOT_PROVIDED="PAYMENT_METHOD_NOT_PROVIDED",e.PAYMENT_METHOD_NOT_COMPATIBLE="PAYMENT_METHOD_NOT_COMPATIBLE",e.RESUME_ERROR="RESUME_ERROR",e.TAX_ERROR="TAX_ERROR",e.VALIDATION_ERROR="VALIDATION_ERROR",e.PAYMENT_FAILED="PAYMENT_FAILED",e.PAYMENT_CREATION_ABORTED="PAYMENT_CREATION_ABORTED",e.PAYMENT_CREATION_DISABLED="PAYMENT_CREATION_DISABLED",e.CLIENT_SESSION_UPDATE_ERROR="CLIENT_SESSION_UPDATE_ERROR",e.INVALID_ARGUMENT="INVALID_ARGUMENT",e.VAULT_FETCH="VAULT_FETCH",e.VAULT_DELETE="VAULT_DELETE",e.HEADLESS_VAULT_MANAGER_VALIDATION="HEADLESS_VAULT_MANAGER_VALIDATION",e.CARD_FORM_VALIDATION_UNEXPECTED_FIELD="CARD_FORM_VALIDATION_UNEXPECTED_FIELD",e))(Fe||{});class me extends Error{constructor(r,t,n){super(t.message),this.message=t.message,this.code=r,this.diagnosticsId=t.diagnosticsId||null,this.data=t.data,this.isFromDeveloper=t.isFromDeveloper??!1,n?.messageEvent?.({message:t.message,messageType:r,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})}static fromErrorCode(r,t,n){return new me(r,t,n)}}const yr=e=>{throw console.error(e.message),e};var jr=c(473),et=c(453);const Wr={0:"0",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9","\uFF10":"0","\uFF11":"1","\uFF12":"2","\uFF13":"3","\uFF14":"4","\uFF15":"5","\uFF16":"6","\uFF17":"7","\uFF18":"8","\uFF19":"9","\u0660":"0","\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u06F0":"0","\u06F1":"1","\u06F2":"2","\u06F3":"3","\u06F4":"4","\u06F5":"5","\u06F6":"6","\u06F7":"7","\u06F8":"8","\u06F9":"9"};function rt(e,r){return Wr[e]}const tt={error:null,errorCode:null,valid:!1,active:!1,dirty:!1,touched:!1,submitted:!1},He=new Set(["change","blur","focus"]);async function nt({container:e,placement:r="append",properties:t,allowedCharactersMap:n,..._},R){let T,N={...defaultFieldMetadata};const Y={},g=await new Promise(P=>{const p=R.iframes.create({container:e,filename:"secure-input.html",meta:_,onReady:()=>P(p),placement:r,payload:{allowedCharactersMap:JSON.stringify(n),properties:t}})});return window.addEventListener("message",({data:P})=>{switch(P.type){case"metadata":N=P.metadata;break;case"change":N=P.metadata,T=P.valueToken,Y.change?.forEach(p=>p(T,N));break;case"blur":Y.blur?.forEach(p=>p());break;case"focus":Y.focus?.forEach(p=>p());break;default:break}}),{frame:g,get metadata(){return N},name:_.name,get valueToken(){return T},remove(){g?.remove(),Object.values(Y).forEach(P=>P.clear())},addListener(P,p){if(He.has(P))return Y[P]||(Y[P]=new Set),Y[P].add(p),()=>this.removeListener(P,p);console.error(`Event not supported: supported events are ${[...He].join(", ")}`)},addEventListener(P,p){return this.addListener(P,p)},removeListener(P,p){Y[P].delete(p)},blur(){z("blur")},focus(){z("focus")}};function z(P){g?.contentWindow?.postMessage(P,"*")}}async function ot({cardNetwork:e,...r},t){const n=`cvv-${r.name}`,_=zr(e||""),R=getTypeInfo(_),T=!e&&"`cardNetwork` was not provided"||!R&&"could not get the code size from the provided `cardNetwork`";if(T){const g=`CvvInput: ${T}. Defaulting validation to minLength 3 and maxLength 4.`;t.analytics.messageEvent({messageType:"CARD_SECURITY_CODE_INPUT_VALIDATION",message:g,severity:"WARN"}),console.warn(g)}const{size:N}=R?.code??{},Y={...r.properties,maxLength:N||4,minLength:N||3};return createSecureInput({...r,name:n,properties:Y,allowedCharactersMap:DIGITS},t)}function zr(e){const r=toKebabCase(e);switch(r){case"union-pay":return"unionpay";default:return r}}var Ve=(e=>(e.PAYMENT_METHOD="PAYMENT_METHOD",e.CHECK="CHECK",e))(Ve||{}),xe=(e=>(e.CHANGE="change",e.ERROR="error",e.FOCUS="focus",e.BLUR="blur",e.CLICK="click",e.CLOSE="close",e))(xe||{}),Ge=(e=>(e.CARD="CARD",e.NATIVE="NATIVE",e.REDIRECT="REDIRECT",e))(Ge||{});const $r={SDK_VERSION:Mr,createHeadless:Ur,showExpressCheckout:br,showUniversalCheckout:Br,showVaultManager:kr}}(),X}()});
|
package/dist/index.d.ts
CHANGED
|
@@ -77,6 +77,7 @@ export declare enum PaymentInstrumentType {
|
|
|
77
77
|
}
|
|
78
78
|
export declare enum PaymentMethodType {
|
|
79
79
|
WORLDPAY_IDEAL = "WORLDPAY_IDEAL",
|
|
80
|
+
STRIPE_IDEAL = "STRIPE_IDEAL",
|
|
80
81
|
ADYEN_KLARNA = "ADYEN_KLARNA",
|
|
81
82
|
ADYEN_BANCONTACT_CARD = "ADYEN_BANCONTACT_CARD",
|
|
82
83
|
PAY_NL_KAARTDIRECT = "PAY_NL_KAARTDIRECT",
|
|
@@ -415,7 +416,7 @@ export interface IFrameMessagePayloadMeta {
|
|
|
415
416
|
css?: string;
|
|
416
417
|
stylesheets?: Stylesheet[];
|
|
417
418
|
ariaLabel?: string;
|
|
418
|
-
allowedCardNetworks?:
|
|
419
|
+
allowedCardNetworks?: string[];
|
|
419
420
|
[x: string]: unknown;
|
|
420
421
|
}
|
|
421
422
|
export interface IFrameInputMessagePayload<T = unknown> {
|
|
@@ -459,7 +460,7 @@ export type CreateIFrameOptionsMeta = {
|
|
|
459
460
|
placeholder?: string;
|
|
460
461
|
css?: string;
|
|
461
462
|
stylesheets?: string[];
|
|
462
|
-
allowedCardNetworks?:
|
|
463
|
+
allowedCardNetworks?: string[];
|
|
463
464
|
};
|
|
464
465
|
export interface CreateIFrameOptions {
|
|
465
466
|
filename: string;
|
|
@@ -633,6 +634,7 @@ export interface ClientSessionAddress {
|
|
|
633
634
|
}
|
|
634
635
|
export interface ClientSessionPaymentMethodOptions {
|
|
635
636
|
options?: PaymentMethodOption[];
|
|
637
|
+
orderedAllowedCardNetworks: string[];
|
|
636
638
|
vaultOnSuccess: boolean;
|
|
637
639
|
}
|
|
638
640
|
export interface PaymentMethodOption {
|
|
@@ -666,8 +668,9 @@ export interface ClientSession {
|
|
|
666
668
|
nationalDocumentId?: string;
|
|
667
669
|
};
|
|
668
670
|
paymentMethod?: {
|
|
669
|
-
vaultOnSuccess?: boolean;
|
|
670
671
|
options?: Record<string, any>;
|
|
672
|
+
orderedAllowedCardNetworks?: string[];
|
|
673
|
+
vaultOnSuccess?: boolean;
|
|
671
674
|
};
|
|
672
675
|
}
|
|
673
676
|
export interface InternalClientSession {
|
|
@@ -751,6 +754,7 @@ export interface ClientSessionInfo {
|
|
|
751
754
|
isTeardown: boolean;
|
|
752
755
|
}
|
|
753
756
|
export interface ClientConfiguration {
|
|
757
|
+
binDataUrl: string;
|
|
754
758
|
checkoutModules: CheckoutModuleConfig[];
|
|
755
759
|
clientSession: InternalClientSession;
|
|
756
760
|
coreUrl: string;
|
|
@@ -1259,7 +1263,9 @@ declare class PrimerClientError extends Error {
|
|
|
1259
1263
|
constructor(code: ErrorCode, options: ErrorOptions, analytics?: Analytics);
|
|
1260
1264
|
}
|
|
1261
1265
|
export interface CardMetadata {
|
|
1266
|
+
/** @deprecated Use onCardNetworksChange instead. */
|
|
1262
1267
|
type: CardNetwork | null;
|
|
1268
|
+
/** @deprecated Use onCardNetworksChange instead. */
|
|
1263
1269
|
possibleTypes: string[];
|
|
1264
1270
|
cvvLength: number;
|
|
1265
1271
|
cardNumberLength: number;
|
|
@@ -1702,7 +1708,7 @@ export interface ClientSessionHandlers {
|
|
|
1702
1708
|
onClientSessionUpdate?: (clientSession: ClientSession) => void;
|
|
1703
1709
|
onBeforeClientSessionUpdate?: () => void;
|
|
1704
1710
|
}
|
|
1705
|
-
export interface SinglePaymentMethodCheckoutOptions extends TokenizationHandlers, PaymentHandlers, ClientSessionHandlers, PaymentMethodHandlers {
|
|
1711
|
+
export interface SinglePaymentMethodCheckoutOptions extends TokenizationHandlers, PaymentHandlers, ClientSessionHandlers, PaymentMethodHandlers, WithAllowedCardNetworks {
|
|
1706
1712
|
uxFlow: CheckoutUXFlow.SINGLE_PAYMENT_METHOD_CHECKOUT;
|
|
1707
1713
|
container: string | Element;
|
|
1708
1714
|
paymentMethod: PaymentMethodType;
|
|
@@ -1715,7 +1721,6 @@ export interface SinglePaymentMethodCheckoutOptions extends TokenizationHandlers
|
|
|
1715
1721
|
form?: FormOptions;
|
|
1716
1722
|
scene?: SceneOptions;
|
|
1717
1723
|
vault?: VaultOptions;
|
|
1718
|
-
allowedCardNetworks?: CardNetwork[];
|
|
1719
1724
|
redirect?: RedirectOptions;
|
|
1720
1725
|
card?: CheckoutCardOptions;
|
|
1721
1726
|
giftCard?: CustomizablePaymentMethodButton;
|
|
@@ -1726,7 +1731,7 @@ export interface SinglePaymentMethodCheckoutOptions extends TokenizationHandlers
|
|
|
1726
1731
|
directDebit?: DirectDebitOptions;
|
|
1727
1732
|
paymentHandling?: PaymentHandling;
|
|
1728
1733
|
}
|
|
1729
|
-
export interface VaultManagerOptions {
|
|
1734
|
+
export interface VaultManagerOptions extends WithAllowedCardNetworks {
|
|
1730
1735
|
container: string | Element;
|
|
1731
1736
|
locale?: SupportedLocale;
|
|
1732
1737
|
vaultOnly?: boolean;
|
|
@@ -1737,7 +1742,6 @@ export interface VaultManagerOptions {
|
|
|
1737
1742
|
form?: FormOptions;
|
|
1738
1743
|
submitButton?: SubmitButtonOptions;
|
|
1739
1744
|
processingIndicator?: ProcessingIndicatorOptions;
|
|
1740
|
-
allowedCardNetworks?: CardNetwork[];
|
|
1741
1745
|
card?: CheckoutCardOptions;
|
|
1742
1746
|
threeDSecure?: ThreeDSVerificationOptions;
|
|
1743
1747
|
giftCard?: CustomizablePaymentMethodButton;
|
|
@@ -1749,7 +1753,7 @@ export interface VaultManagerOptions {
|
|
|
1749
1753
|
onTokenizeSuccess?: (data: PaymentMethodToken) => void;
|
|
1750
1754
|
onTokenizeError?: (message: PrimerClientError) => void;
|
|
1751
1755
|
}
|
|
1752
|
-
export interface UniversalCheckoutOptions extends TokenizationHandlers, PaymentHandlers, PaymentMethodHandlers, ClientSessionHandlers {
|
|
1756
|
+
export interface UniversalCheckoutOptions extends TokenizationHandlers, PaymentHandlers, PaymentMethodHandlers, ClientSessionHandlers, WithAllowedCardNetworks {
|
|
1753
1757
|
uxFlow?: CheckoutUXFlow.CHECKOUT;
|
|
1754
1758
|
container: string | Element;
|
|
1755
1759
|
locale?: SupportedLocale;
|
|
@@ -1762,7 +1766,6 @@ export interface UniversalCheckoutOptions extends TokenizationHandlers, PaymentH
|
|
|
1762
1766
|
successScreen?: SuccessScreenOptions;
|
|
1763
1767
|
form?: FormOptions;
|
|
1764
1768
|
allowedPaymentMethods?: PaymentMethodType[];
|
|
1765
|
-
allowedCardNetworks?: CardNetwork[];
|
|
1766
1769
|
card?: CheckoutCardOptions;
|
|
1767
1770
|
redirect?: RedirectOptions;
|
|
1768
1771
|
paypal?: Omit<PayPalOptions, "container">;
|
|
@@ -1774,11 +1777,10 @@ export interface UniversalCheckoutOptions extends TokenizationHandlers, PaymentH
|
|
|
1774
1777
|
paymentHandling?: PaymentHandling;
|
|
1775
1778
|
advanced?: AdvancedOptions;
|
|
1776
1779
|
}
|
|
1777
|
-
export interface HeadlessUniversalCheckoutOptions extends TokenizationHandlers, PaymentHandlers, PaymentMethodHandlers, ClientSessionHandlers {
|
|
1780
|
+
export interface HeadlessUniversalCheckoutOptions extends TokenizationHandlers, PaymentHandlers, PaymentMethodHandlers, ClientSessionHandlers, WithAllowedCardNetworks {
|
|
1778
1781
|
style?: CheckoutStyle;
|
|
1779
1782
|
paymentHandling?: PaymentHandling;
|
|
1780
1783
|
locale?: SupportedLocale;
|
|
1781
|
-
allowedCardNetworks?: CardNetwork[];
|
|
1782
1784
|
card?: CheckoutCardOptions;
|
|
1783
1785
|
redirect?: RedirectOptions;
|
|
1784
1786
|
paypal?: Omit<PayPalOptions, "container">;
|
|
@@ -1789,6 +1791,10 @@ export interface HeadlessUniversalCheckoutOptions extends TokenizationHandlers,
|
|
|
1789
1791
|
giftCard?: CustomizablePaymentMethodButton;
|
|
1790
1792
|
onAvailablePaymentMethodsLoad: (paymentMethods: PaymentMethodInfo[]) => void;
|
|
1791
1793
|
}
|
|
1794
|
+
export type WithAllowedCardNetworks = {
|
|
1795
|
+
/** @deprecated Use `orderedAllowedCardNetworks` on your Primer Dashboard instead. */
|
|
1796
|
+
allowedCardNetworks?: CardNetwork[];
|
|
1797
|
+
};
|
|
1792
1798
|
export interface PrimerCheckout {
|
|
1793
1799
|
teardown(): void;
|
|
1794
1800
|
submit(): void;
|
|
@@ -1831,10 +1837,13 @@ export interface ICardPaymentMethodManager {
|
|
|
1831
1837
|
};
|
|
1832
1838
|
setCardholderName(cardholderName: string): void;
|
|
1833
1839
|
removeHostedInputs(): void;
|
|
1834
|
-
submit(): Promise<void>;
|
|
1840
|
+
submit(values?: CardPaymentMethodSubmitValues): Promise<void>;
|
|
1835
1841
|
validate(): Promise<Validation>;
|
|
1836
1842
|
reset(): void;
|
|
1837
1843
|
}
|
|
1844
|
+
export type CardPaymentMethodSubmitValues = {
|
|
1845
|
+
cardNetwork?: string;
|
|
1846
|
+
};
|
|
1838
1847
|
export interface PayPalStyles {
|
|
1839
1848
|
buttonColor?: "gold" | "blue" | "silver" | "white" | "black";
|
|
1840
1849
|
buttonShape?: "pill" | "rect";
|
|
@@ -1885,11 +1894,38 @@ export type ButtonPaymentMethodAsset = {
|
|
|
1885
1894
|
paymentMethodName?: string;
|
|
1886
1895
|
};
|
|
1887
1896
|
export interface IAssetsManager {
|
|
1897
|
+
getCardNetworkAsset(cardNetwork: string): Promise<CardNetworkAsset>;
|
|
1888
1898
|
getPaymentMethodAsset(type: PaymentMethodType): Promise<ButtonPaymentMethodAsset | null>;
|
|
1889
1899
|
}
|
|
1900
|
+
export type CardNetworkAsset = {
|
|
1901
|
+
cardUrl: string;
|
|
1902
|
+
displayName: string;
|
|
1903
|
+
};
|
|
1890
1904
|
export interface CardPaymentMethodManagerOptions {
|
|
1891
1905
|
onCardMetadataChange?: (metadata: CardMetadata) => void;
|
|
1906
|
+
onCardNetworksChange?: (event: CardNetworkChangeEvent) => void;
|
|
1907
|
+
onCardNetworksLoading?: () => void;
|
|
1892
1908
|
}
|
|
1909
|
+
export type CardNetworkChangeEvent = {
|
|
1910
|
+
detectedCardNetworks: CardNetworks;
|
|
1911
|
+
selectableCardNetworks?: CardNetworks;
|
|
1912
|
+
source: "REMOTE" | "LOCAL" | "LOCAL_FALLBACK";
|
|
1913
|
+
};
|
|
1914
|
+
export type CardNetworks = {
|
|
1915
|
+
items: CardNetworkDetails[];
|
|
1916
|
+
preferred?: CardNetworkDetails;
|
|
1917
|
+
};
|
|
1918
|
+
export type CardNetworkDetails = CardNetworkInfo & {
|
|
1919
|
+
allowed: boolean;
|
|
1920
|
+
};
|
|
1921
|
+
export type CardNetworkInfo = {
|
|
1922
|
+
displayName: string;
|
|
1923
|
+
network: string;
|
|
1924
|
+
};
|
|
1925
|
+
export type CardNetworksAndSource = {
|
|
1926
|
+
networks: CardNetworkInfo[];
|
|
1927
|
+
source: CardNetworkChangeEvent["source"];
|
|
1928
|
+
};
|
|
1893
1929
|
export type PaymentMethodManagerOptions = CardPaymentMethodManagerOptions;
|
|
1894
1930
|
export interface PrimerHeadlessCheckout {
|
|
1895
1931
|
createPaymentMethodManager(type: "PAYMENT_CARD", options?: PaymentMethodManagerOptions): Promise<ICardPaymentMethodManager | null>;
|
|
@@ -1898,7 +1934,7 @@ export interface PrimerHeadlessCheckout {
|
|
|
1898
1934
|
createVaultManager(): HeadlessVaultManager;
|
|
1899
1935
|
configure: (options: HeadlessUniversalCheckoutOptions) => void;
|
|
1900
1936
|
getAssetsManager(): IAssetsManager;
|
|
1901
|
-
start: () => void
|
|
1937
|
+
start: () => Promise<void>;
|
|
1902
1938
|
}
|
|
1903
1939
|
export interface PrimerSinglePaymentMethodCheckout {
|
|
1904
1940
|
submit(): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@primer-io/checkout-web",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.37.0",
|
|
4
4
|
"description": "Primer.js for the web",
|
|
5
5
|
"author": "Primer Developers <developers@primer.io>",
|
|
6
6
|
"homepage": "",
|
|
@@ -21,10 +21,11 @@
|
|
|
21
21
|
"prepare": "yarn build",
|
|
22
22
|
"postpublish": "clean-package restore",
|
|
23
23
|
"prepublishOnly": "clean-package",
|
|
24
|
-
"preview-s3": "./script/preview",
|
|
25
|
-
"publish-s3": "./script/publish-s3",
|
|
26
24
|
"start": "node demos/server.js",
|
|
27
25
|
"lint": "run -T eslint ./src",
|
|
28
26
|
"check-types": "run -T tsc --noemit -p tsconfig.json"
|
|
27
|
+
},
|
|
28
|
+
"msw": {
|
|
29
|
+
"workerDirectory": "demos/assets"
|
|
29
30
|
}
|
|
30
31
|
}
|