@flopay/shared 1.5.0 → 1.7.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/README.md +6 -5
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +505 -377
- package/dist/index.d.ts +505 -377
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -93,15 +93,16 @@ throw validationError('Email is required', 'email');
|
|
|
93
93
|
| `CheckoutSessionProduct` | Unified product from session response: `uuid`, `checkoutSessionId`, `type` (`'item'`/`'subscription'`), `code?`, `name?`, `description?`, `quantity`, `totalAmount?`, `overrideAmount?`, `currency?`, `metadata?` |
|
|
94
94
|
| `CheckoutProductType` | `'item'` / `'subscription'` |
|
|
95
95
|
| `CheckoutProduct` | Unified product input for session creation: `type`, `code?`, `name?`, `quantity?`, `totalAmount?`, `overrideAmount?`, `currency?`, `metadata?` |
|
|
96
|
-
| `CheckoutGateway` | Per-gateway config
|
|
96
|
+
| `CheckoutGateway` | Per-gateway config from the billing API. `publishableKey?` identifies the keyed gateway, including the direct-PayPal client ID at `gateways.paypal.publishableKey`. `paypalPublishableKey?` is distinct and Stripe-only: it is the dedicated Stripe sub-account key used to render PayPal through Stripe Elements. Also includes `environment?` (`'sandbox'`/`'live'`), `stripeClientSecret?` (Stripe-only), `providerObjectType?` (direct PayPal: `'order'`/`'subscription'`/`'setup_token'`), and `enabledPaymentMethods?` (Stripe-only). |
|
|
97
97
|
| `CheckoutGateways` | Map keyed by gateway code (e.g. `stripe`, `paypal`). A session can advertise multiple concurrent gateways. |
|
|
98
98
|
| `GatewayEnvironment` | `'sandbox'` / `'live'` — drives the PayPal JS SDK script and any other environment-scoped behavior |
|
|
99
99
|
| `PaymentResult` | Payment outcome: `status` (`'authorized'`/`'succeeded'`/`'processing'`/`'requires_action'`/`'failed'`); authorized results carry `paymentId?`, `sessionId?`, and `authorizationExpiresAt?` |
|
|
100
100
|
| `CheckoutFailureOutcome` | Stable authorization lifecycle failure: `'authorization_declined'` / `'authentication_required'` / `'authorization_expired'` / `'capture_failed'` |
|
|
101
101
|
| `ConfirmPaymentParams` | Non-card confirmation: `clientSecret`, `paymentMethodCategory` (`'wallet'`/`'apm'`), `paymentMethodType`, `returnUrl?`, `billingDetails?`; `card` is rejected at runtime. |
|
|
102
102
|
| `PayPalPaymentResult` | Stripe-hosted PayPal outcome: `status`, `paymentIntentId?`, `paymentMethodId?`, `error?` |
|
|
103
|
-
| `CreateSessionIntentRequest` | Discriminated Stripe wallet/APM or direct-PayPal intent request. `intentKind
|
|
104
|
-
| `SessionIntent` | Matching discriminated response. Stripe carries `clientSecret`; PayPal carries a server-derived `providerObjectType` (`'order'`/`'subscription'`). Provider, payment-method category/type/id, intent kind, and provider object ID are kept as separate fields. |
|
|
103
|
+
| `CreateSessionIntentRequest` | Discriminated Stripe wallet/APM or direct-PayPal intent request. PayPal sends `intentKind: 'payment'` for Orders/subscriptions and `'setup'` for a standalone setup token. Direct card is not representable. |
|
|
104
|
+
| `SessionIntent` | Matching discriminated response. Stripe carries `clientSecret`; PayPal carries a server-derived `providerObjectType` (`'order'`/`'subscription'`/`'setup_token'`). Provider, payment-method category/type/id, intent kind, and provider object ID are kept as separate fields. |
|
|
105
|
+
| `PayPalProviderObjectType` | `'order'` / `'subscription'` / `'setup_token'` — the direct-PayPal continuation selected by the backend and verified by the SDK. |
|
|
105
106
|
| `SessionIntentDeclineRequest` | Non-card provider decline classification. Runtime reporting accepts safe classification codes only and rejects messages or identifier-shaped values. |
|
|
106
107
|
| `ElementType` | `'payment'` / `'address'` |
|
|
107
108
|
| `ElementOptions` | Options for creating non-card elements: `appearance?`, `paymentMethodTypes?`, `clientSecret?`, `amount?`, `currency?`, `paymentMethodCreation?`, `layout?`, `defaultValues?`, `readOnly?`, `mode?`. A `payment` element requires a non-empty wallet/APM allowlist. |
|
|
@@ -113,8 +114,7 @@ throw validationError('Email is required', 'email');
|
|
|
113
114
|
| `PriceData` | `currency`, `unitAmount`, `productData`, `recurring?` |
|
|
114
115
|
| `RecurringInterval` | `interval` (`'month'`/`'year'`), `intervalCount?` |
|
|
115
116
|
| `BillingProvider` | `'recurly'` / `'chargebee'` / `'stripe'` |
|
|
116
|
-
| `TokenizedBody` | `id?`, `type?`, `threeDSecureActionResultTokenId?`, `originalPaymentMethodId?`, `gateway?` (`'stripe'` / `'paypal'` / custom), `paymentMethodType?` (Stripe wire identifier — `'card'`, `'apple_pay'`, `'cashapp'`, `'klarna'`, … for `gateway='stripe'`; `'paypal'` for `gateway='paypal'`), `isPaypal?` *(deprecated — replaced by `gateway` + `paymentMethodType`;
|
|
117
|
-
| `CheckoutGateway` | Per-gateway config from the billing API: `publishableKey?`, `environment?`, `stripeClientSecret?`, `paypalPublishableKey?`, `enabledPaymentMethods?` (Stripe-only — drives dynamic non-card surfaces; `card` advertises the hosted-vault path and lazy `/vault/capture` recovery in SDK 1.4.9+) |
|
|
117
|
+
| `TokenizedBody` | `id?`, `type?`, `threeDSecureActionResultTokenId?`, `originalPaymentMethodId?`, `gateway?` (`'stripe'` / `'paypal'` / custom), `paymentMethodType?` (Stripe wire identifier — `'card'`, `'apple_pay'`, `'cashapp'`, `'klarna'`, … for `gateway='stripe'`; `'paypal'` for `gateway='paypal'`), `isPaypal?` *(deprecated — replaced by `gateway` + `paymentMethodType`; while populated for PayPal compatibility, the SDK emits the boolean `true`, never the string `"true"`)* |
|
|
118
118
|
| `NormalizedCheckoutSession` | Provider-agnostic session: `provider`, `mode`, `data`, `raw?` |
|
|
119
119
|
| `CheckoutModeKind` | `'tokenize'` / `'redirect'` |
|
|
120
120
|
| `CreateSessionParams` | Full session creation params: `billingApiUrl`, `checkoutBaseUrl`, `clientId`, `currency` (required — SDK throws `FloPayError({ type: 'validation_error', code: 'CurrencyRequired' })` before issuing the request when none can be resolved), `captureMethod?` (`'automatic'`/`'manual'`; omitted preserves immediate capture), `products?` (unified shape; takes precedence), `items?`, `subscriptions?` (legacy — folded into `products[]` before send), `account`, `successUrl`, `cancelUrl`, `checkoutMode?`, `couponCodes?`, `tagsData?`, `redirectParams?`, `setCookie?`, `timeoutMs?`, `utmMetadata?` |
|
|
@@ -224,6 +224,7 @@ messages, or bundle Sentry configuration.
|
|
|
224
224
|
| `resolveTheme(id)` | Resolve a `ThemeId` (`'classic'` ∪ `ThemeBundleId`) to its `ThemeBundle`; `'classic'` and missing ids return `undefined` |
|
|
225
225
|
| `resolveButtonsLayoutTheme(name)` | Map a `ButtonsLayoutTheme` name to its `ButtonsLayoutStyles` preset |
|
|
226
226
|
| `ELEMENT_TYPES` | `['payment', 'address']` |
|
|
227
|
+
| `PAYPAL_VAULTED_PAYMENT_METHOD_TYPE` | `paypal_vaulted` — in-band payment-method channel that opts a session intent/process request into Flo-owned PayPal Order and setup-token continuations; legacy `paypal` keeps provider-managed semantics. |
|
|
227
228
|
| `SUPPORTED_CARD_BRANDS` | `['visa', 'mastercard', 'mastercard_debit', 'amex', 'discover']` |
|
|
228
229
|
| `STRIPE_EXPRESS_METHODS` | `['apple_pay', 'google_pay', 'paypal', 'link', 'amazon_pay', 'klarna']` — Stripe method type identifiers supported by `ExpressCheckoutElement` (everything else returned in `gateways.stripe.enabledPaymentMethods` falls into the `PaymentElement` accordion in the React SDK) |
|
|
229
230
|
| `partitionStripeMethods(enabledMethods, { excludePaypal? })` | Split the backend's enabled list into `{ expressMethods, paymentElementMethods }`. Drops `card`; also drops `paypal` when `excludePaypal: true`. |
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var Wt=Object.create;var f=Object.defineProperty;var jt=Object.getOwnPropertyDescriptor;var Zt=Object.getOwnPropertyNames;var Xt=Object.getPrototypeOf,$t=Object.prototype.hasOwnProperty;var Jt=(e,t)=>{for(var r in t)f(e,r,{get:t[r],enumerable:!0})},fe=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Zt(t))!$t.call(e,n)&&n!==r&&f(e,n,{get:()=>t[n],enumerable:!(o=jt(t,n))||o.enumerable});return e};var Qt=(e,t,r)=>(r=e!=null?Wt(Xt(e)):{},fe(t||!e||!e.__esModule?f(r,"default",{value:e,enumerable:!0}):r,e)),er=e=>fe(f({},"__esModule",{value:!0}),e);var Xr={};Jt(Xr,{BILLING_API_URL:()=>He,BILLING_API_URL_PRODUCTION:()=>W,BILLING_API_URL_STAGING:()=>C,BOLD_DARK_APPEARANCE:()=>J,BOLD_LIGHT_APPEARANCE:()=>$,BUTTONS_LAYOUT_BOLD_DARK:()=>R,BUTTONS_LAYOUT_BOLD_LIGHT:()=>_,BUTTONS_LAYOUT_DARK:()=>ne,BUTTONS_LAYOUT_DEFAULT:()=>te,BUTTONS_LAYOUT_GLASS_DARK:()=>k,BUTTONS_LAYOUT_GLASS_LIGHT:()=>P,BUTTONS_LAYOUT_MINIMAL:()=>re,BUTTONS_LAYOUT_MODERN_DARK:()=>I,BUTTONS_LAYOUT_MODERN_LIGHT:()=>A,BUTTONS_LAYOUT_ROUNDED:()=>oe,CA_PROVINCES:()=>me,COUNTRY_OPTIONS:()=>ce,CURRENCY_MAP:()=>B,DEFAULT_API_BASE_URL:()=>ze,DEFAULT_API_VERSION:()=>We,DEFAULT_APPEARANCE:()=>j,DEFAULT_CURRENCY:()=>v,ELEMENT_TYPES:()=>dt,FLAT_APPEARANCE:()=>je,FLO_SDK_VERSION_HEADER:()=>Ye,FloPayError:()=>u,GLASS_DARK_APPEARANCE:()=>ee,GLASS_LIGHT_APPEARANCE:()=>Q,IDEMPOTENCY_IN_PROGRESS_CODE:()=>Ot,IDEMPOTENCY_KEY_HEADER:()=>Lt,MAX_IDEMPOTENCY_KEY_LENGTH:()=>D,MODERN_DARK_APPEARANCE:()=>X,MODERN_LIGHT_APPEARANCE:()=>Z,NIGHT_APPEARANCE:()=>Ze,SDK_VERSION:()=>Ve,STRIPE_EXPRESS_METHODS:()=>ie,STRIPE_METHOD_AMOUNT_LIMITS:()=>ue,STRIPE_METHOD_COUNTRIES:()=>de,STRIPE_METHOD_CURRENCIES:()=>se,STRIPE_METHOD_MATRIX:()=>g,SUPPORTED_CARD_BRANDS:()=>ut,TELEMETRY_ERROR_CODES:()=>w,TELEMETRY_FAILURE_CATEGORIES:()=>G,TELEMETRY_LOG_NAMES:()=>K,TELEMETRY_MAX_BATCH_BYTES:()=>ke,TELEMETRY_MAX_BATCH_EVENTS:()=>Be,TELEMETRY_SCHEMA_VERSION:()=>Pe,TELEMETRY_SDK_PACKAGES:()=>U,THEMES:()=>ae,US_STATES:()=>pe,UUID_V4:()=>L,apiError:()=>Se,assertCaptureMethodEligible:()=>St,authenticationError:()=>Te,buildCheckoutDisplayData:()=>Rt,buildItemPayload:()=>It,buildProductPayload:()=>At,buildSubscriptionPayload:()=>_t,buildTelemetryErrorEvent:()=>V,buildTelemetryLogEvent:()=>Y,buildTelemetryPerformanceEvent:()=>H,buildTelemetryTerminalEvent:()=>z,classifyPaymentRejection:()=>De,classifyTelemetryFailure:()=>Le,configureFlopay:()=>Oe,dropThirdPartyOnlyError:()=>Re,filterStripeMethodsByAmount:()=>it,filterStripeMethodsByCountry:()=>at,filterStripeMethodsByCurrency:()=>nt,foldIntoProducts:()=>ye,generateIdempotencyKey:()=>Ce,getConfiguredBillingApiUrl:()=>T,getCountryByCode:()=>pt,getCurrencyByCountry:()=>vt,getFloPayEnvironment:()=>Ue,getPostalCodeExample:()=>ht,getPostalCodeLabel:()=>ct,getStateFromPostalCode:()=>Et,getStateLabel:()=>Ct,getStateOptions:()=>yt,getStripeMethodDisplayName:()=>tt,hasVendoredStripeMethodLogo:()=>et,isAVSEnabled:()=>gt,isAVSFieldVisible:()=>mt,isAuthorizationOnlySession:()=>Pt,isCardSetupCheckoutSession:()=>xe,isDetachedSessionEligible:()=>Tt,isMoneySettledOutcome:()=>kt,isPostalCodeSupported:()=>bt,isSetupIntentClientSecret:()=>Dt,isUuidV4:()=>wt,isValidPostalCode:()=>xt,isValidPublishableKey:()=>Mt,isValidSecretKey:()=>Nt,needsStripeMethodExplicitConfirm:()=>rt,networkError:()=>Ie,normalizeCheckoutFailureOutcome:()=>Bt,normalizeGatewayEnvironment:()=>be,partitionStripeMethods:()=>st,randomUuidV4:()=>Gt,rateLimitError:()=>Ae,resolveAVSConfig:()=>le,resolveBillingApiUrl:()=>qe,resolveButtonsLayoutTheme:()=>Xe,resolveIdempotencyKey:()=>Ut,resolveSessionCurrency:()=>N,resolveStripeMethodBrandVariant:()=>ot,resolveTheme:()=>$e,serializeTelemetryBatch:()=>Ne,stripeExpressMethodToOptionKey:()=>Je,telemetryStatusClass:()=>S,validationError:()=>he});module.exports=er(Xr);function be(e){if(e!=null)switch(e){case"sandbox":case"stage":return"sandbox";case"live":case"production":return"live";default:console.warn(`[FloPay] Unrecognized gateway environment "${e}". Expected one of: sandbox, live, stage, production. Falling back to undefined.`);return}}function xe(e){return e.checkoutMode==="setup"&&e.amount===0&&(e.products?.length??0)===0}var u=class extends Error{constructor(t,r,o){super(t),this.name="FloPayError",this.type=r,this.code=o?.code,this.declineCode=o?.declineCode,this.param=o?.param,this.statusCode=o?.statusCode,Object.setPrototypeOf(this,new.target.prototype)}};function he(e,t){return new u(e,"validation_error",{param:t})}function Se(e,t,r){return new u(e,"api_error",{code:t,statusCode:r})}function Te(e){return new u(e,"authentication_error")}function Ae(e){return new u(e,"rate_limit_error")}function Ie(e){return new u(e,"network_error")}var tr=/(?:^|\/)dahlia\/stripe\.js(?:$|[?#])/i,rr=/^dahlia\/stripe$/i,or=/^(?:chrome|moz|safari-web)-extension:\/\//i,nr=/^@flopay(?:\/|$)/i;function _e(e){return tr.test(e)||or.test(e)}function ar(e){let t=[e.filename,e.abs_path].filter(r=>r!==void 0&&r!=="<anonymous>");return e.module!==void 0&&nr.test(e.module)||t.some(r=>!_e(r))?"first-party":e.module!==void 0&&rr.test(e.module)||t.some(_e)?"third-party-hosted":t.length===0?"injected":"first-party"}function Re(e){let t=e.exception?.values;if(!t?.length)return e;let r=[];for(let n of t){let s=n.stacktrace?.frames;if(!s?.length)return e;r.push(...s)}let o=r.map(ar);return!o.includes("first-party")&&o.includes("third-party-hosted")?null:e}var Pe=1,U=["@flopay/shared","@flopay/js","@flopay/react"],ke=32768,Be=20,ir=["stripe","paypal"],sr=["card","wallet","paypal","apm","saved","unknown"],dr=["callback","sdk_initialize","checkout_mount","session_create","session_shell","session_claim","session_read","session_first_byte","session_complete","checkout_data_ready","checkout_render","checkout_interactive","provider_load","provider_ready","overlay_open","overlay_return","redirect","redirect_resume","vault_request","vault_mount","vault_ready","vault_submit","tokenization","three_ds_handoff","three_ds_return","processing","recovery","completion","unmount","total_journey"],w=["CALLBACK_FAILED","CHECKOUT_SESSION_CREATE_FAILED","CONFIGURATION_INVALID","INTERNAL_SDK_ERROR","NETWORK_REQUEST_FAILED","PAYMENT_PROCESSING_FAILED","POPUP_BLOCKED","PROVIDER_LOAD_FAILED","PROVIDER_RUNTIME_FAILED","RECOVERY_FAILED","REDIRECT_RESUME_FAILED","REQUEST_TIMEOUT","SDK_INITIALIZATION_FAILED","THREE_DS_FAILED","TOKENIZATION_FAILED","VAULT_LOAD_FAILED","VAULT_SUBMIT_FAILED"],G=["server_error","transport_error","invalid_response","provider_runtime"],K=["sdk.initialize.started","sdk.initialize.ready","sdk.cache.hit","sdk.cache.miss","checkout.mount","session.create.started","session.shell.ready","session.claim.started","session.claim.completed","session.read.started","session.request.first_byte","session.request.completed","checkout.data.ready","checkout.rendered","checkout.interactive","checkout.recovery.started","checkout.recovery.completed","checkout.unmount","provider.load.started","provider.eligibility.checked","provider.availability.checked","provider.ready","provider.popup.opened","provider.overlay.opened","provider.overlay.returned","provider.redirect.started","provider.redirect.resumed","vault.capture.requested","vault.widget.mounted","vault.widget.ready","vault.submission.started","vault.action.required","vault.three_ds.handoff","vault.three_ds.returned","vault.terminal","payment.method.selected","payment.intent.started","payment.intent.completed","payment.tokenization.started","payment.tokenization.completed","payment.processing.started","payment.processing.completed","payment.three_ds.handoff","payment.three_ds.returned","operation.retry","operation.deduplicated","operation.fallback","operation.cache.hit","operation.cache.miss","operation.recovery.started","operation.recovery.completed","operation.state_transition"],ur=["session_create","session_claim","session_read","intent_create","process_payment","vault_capture","account_snapshot","provider_sdk","other"],cr=["2xx","3xx","4xx","5xx","network_error","timeout","unknown"],lr=["full","auto","confirm","setup","unknown"],pr=["embedded","buttons","automatic","unknown"],mr=["machine","buyer","total"],gr=["action_required","card_setup_declined","card_setup_succeeded","customer_abandoned","payment_cancelled","payment_declined","payment_authorized","payment_succeeded","validation_rejected"],ve=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,yr=/^\d{1,4}\.\d{1,4}\.\d{1,4}(?:-[0-9A-Za-z.-]{1,32})?$/,Cr=new Set(w),Er=new Set(G),b=new Set(dr),Fr=new Set(ir),fr=new Set(sr),br=new Set(K),xr=new Set(lr),hr=new Set(pr),Sr=new Set(ur),Tr=new Set(cr),Ar=new Set(mr),Ir=new Set(gr),_r=new Set(U),Me=12e4;function l(e,t,r){return typeof e=="string"&&t.has(e)?e:r}function Rr(){try{let r=globalThis.crypto.randomUUID();if(ve.test(r))return r}catch{}let e=new Uint8Array(16);try{globalThis.crypto.getRandomValues(e)}catch{for(let r=0;r<e.length;r+=1)e[r]=Math.floor(Math.random()*256)}e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=[...e].map(r=>r.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}function y(e){return typeof e=="string"&&ve.test(e)?e:Rr()}function Pr(e){return typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=100?e:void 0}function x(e){return Number.isSafeInteger(e)&&e>=0?Math.min(e,1e6):0}function kr(e){return!Number.isFinite(e)||e<0?0:Math.min(Math.round(e),Me)}function Br(e){return Number.isFinite(e)&&e>Me}function h(e,t){let r=Pr(t.attempt);return t.provider&&Fr.has(t.provider)&&(e.provider=t.provider),r!==void 0&&(e.attempt=r),t.statusClass&&(e.statusClass=l(t.statusClass,Tr,"unknown")),t.requestCategory&&(e.requestCategory=l(t.requestCategory,Sr,"other")),t.paymentMethodCategory&&(e.paymentMethodCategory=l(t.paymentMethodCategory,fr,"unknown")),t.checkoutMode&&(e.checkoutMode=l(t.checkoutMode,xr,"unknown")),t.layout&&(e.layout=l(t.layout,hr,"unknown")),e}function V(e){let t=h({eventId:y(e.eventId),class:"technical_error",code:l(e.errorCode,Cr,"INTERNAL_SDK_ERROR"),stage:l(e.stage,b,"sdk_initialize"),sequence:x(e.sequence)},e);return e.failureCategory&&Er.has(e.failureCategory)&&(t.failureCategory=e.failureCategory),t}function Y(e){return h({eventId:y(e.eventId),class:"lifecycle",name:l(e.name,br,"operation.retry"),stage:l(e.stage,b,"sdk_initialize"),sequence:x(e.sequence)},e)}function z(e){let t={...e,stage:e.stage??"completion"};return h({eventId:y(e.eventId),class:"expected_outcome",outcome:l(e.outcome,Ir,"customer_abandoned"),stage:l(e.stage,b,"completion"),sequence:x(e.sequence)},t)}function H(e){let t=h({eventId:y(e.eventId),class:"performance",stage:l(e.stage,b,"sdk_initialize"),sequence:x(e.sequence),durationMs:kr(e.durationMs),durationMode:l(e.durationMode,Ar,"machine")},e);return(e.durationTruncated===!0||Br(e.durationMs))&&(t.durationTruncated=!0),t}function Ne(e,t){let r=e.slice(0,20).flatMap(n=>n.class==="technical_error"?[V({...n,errorCode:n.code})]:n.class==="lifecycle"?[Y(n)]:n.class==="expected_outcome"?[z(n)]:n.class==="performance"?[H(n)]:[]),o={schemaVersion:1,batchId:y(t.batchId),correlationId:y(t.correlationId),sdk:{package:l(t.sdkPackage,_r,"@flopay/shared"),version:yr.test(t.sdkVersion)?t.sdkVersion:"0.0.0"},events:r};return JSON.stringify(o)}var vr=new Set(["InvalidCheckoutSessionResponse","InvalidPaymentProcessResponse","InvalidSessionIntentResponse"]);function De(e,t){if(e===422)return"validation_rejected";if(e===400&&!(t===null||typeof t!="object"||Array.isArray(t)))return Array.isArray(t.fields)?"validation_rejected":"payment_declined"}function Le(e,t,r="network_error"){if(e instanceof u&&e.code!==void 0&&vr.has(e.code))return{errorCode:t,statusClass:S(e.statusCode,"unknown"),failureCategory:"invalid_response"};if(e instanceof Error&&(e.name==="AbortError"||e instanceof u&&e.code==="checkout_processing_timeout"))return{errorCode:"REQUEST_TIMEOUT",statusClass:"timeout",failureCategory:"transport_error"};if(e instanceof TypeError||e instanceof u&&e.type==="network_error")return{errorCode:"NETWORK_REQUEST_FAILED",statusClass:"network_error",failureCategory:"transport_error"};let o=S(e instanceof u?e.statusCode:void 0,r);return{errorCode:t,statusClass:o,...o==="5xx"?{failureCategory:"server_error"}:{}}}function S(e,t="network_error"){if(e===void 0)return t;let r=`${Math.floor(e/100)}xx`;return r==="2xx"||r==="3xx"||r==="4xx"||r==="5xx"?r:"unknown"}var Mr={local:"https://flo.ngrok.pro",staging:"https://api.stage.flopay.com",production:"https://api.flopay.com"},q="staging";function Oe(e){q=e.environment}function T(){return Mr[q]}function Ue(){return q}var we=["alipay","bancontact","blik","eps","giropay","ideal","klarna","p24","sepa_debit","wechat_pay"];var Ve="1.5.0",Ye="x-flo-sdk-version",C="https://api.stage.flopay.com",W="https://api.flopay.com",ze=C,He=C;function qe(e){return e||(typeof process<"u"&&process.env?.NEXT_PUBLIC_FLOPAY_ENV?process.env.NEXT_PUBLIC_FLOPAY_ENV==="production"?W:C:T())}var We="2024-01-01",j={theme:"default",variables:{colorPrimary:"#4A49FF",colorBackground:"#FFFFFF",colorText:"#262833",colorDanger:"#DF1B41",borderRadius:"8px",fontFamily:"Poppins, system-ui, sans-serif",fontSizeBase:"16px",spacingUnit:"4px"}},je={theme:"flat",variables:{...j.variables,borderRadius:"4px"}},Ze={theme:"night",variables:{colorPrimary:"#7B7BFF",colorBackground:"#1A1A2E",colorText:"#E0E0E0",colorDanger:"#FF6B6B",borderRadius:"8px",fontFamily:"Poppins, system-ui, sans-serif",fontSizeBase:"16px",spacingUnit:"4px"}},Z={theme:"default",variables:{colorPrimary:"#1785E0",colorBackground:"#FFFFFF",colorText:"#0F172A",colorDanger:"#EF4444",borderRadius:"12px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"15px",spacingUnit:"5px"},rules:{".Input":{padding:"14px 16px",border:"1.5px solid #E5E7EB",boxShadow:"0 1px 2px rgba(15,23,42,0.04)"},".Input:focus":{borderColor:"#1785E0",boxShadow:"0 0 0 4px rgba(23,133,224,0.12)"},".Label":{fontWeight:"500",color:"#475569",marginBottom:"6px"},".Tab":{padding:"12px 16px",borderRadius:"12px",border:"1.5px solid #E5E7EB"},".Tab:hover":{borderColor:"#CBD5E1"},".Tab--selected":{borderColor:"#1785E0",boxShadow:"0 0 0 1px #1785E0"}}},X={theme:"night",variables:{colorPrimary:"#60A5FA",colorBackground:"#0B1220",colorText:"#F1F5F9",colorDanger:"#F87171",borderRadius:"12px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"15px",spacingUnit:"5px"},rules:{".Input":{backgroundColor:"#111827",padding:"14px 16px",border:"1.5px solid #1F2937",color:"#F1F5F9",boxShadow:"none"},".Input:focus":{borderColor:"#60A5FA",boxShadow:"0 0 0 4px rgba(96,165,250,0.18)"},".Label":{fontWeight:"500",color:"#94A3B8",marginBottom:"6px"},".Tab":{padding:"12px 16px",borderRadius:"12px",border:"1.5px solid #1F2937",backgroundColor:"#111827",color:"#F1F5F9"},".Tab:hover":{borderColor:"#374151"},".Tab--selected":{borderColor:"#60A5FA",boxShadow:"0 0 0 1px #60A5FA"}}},$={theme:"default",variables:{colorPrimary:"#1785E0",colorBackground:"#FFFFFF",colorText:"#0C2B4D",colorDanger:"#DC2626",borderRadius:"12px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"16px",spacingUnit:"5px"},rules:{".Input":{padding:"14px 16px",border:"2px solid #E5E7EB"},".Input:focus":{borderColor:"#1785E0",boxShadow:"0 0 0 3px rgba(23,133,224,0.2)"},".Label":{fontWeight:"600",color:"#0C2B4D"},".Tab":{padding:"14px 18px",border:"2px solid #E5E7EB",fontWeight:"600"},".Tab--selected":{borderColor:"#1785E0",boxShadow:"0 0 0 1px #1785E0"}}},J={theme:"night",variables:{colorPrimary:"#60A5FA",colorBackground:"#0C2B4D",colorText:"#FFFFFF",colorDanger:"#F87171",borderRadius:"12px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"16px",spacingUnit:"5px"},rules:{".Input":{backgroundColor:"#1E3A8A",padding:"14px 16px",border:"2px solid #1E40AF",color:"#FFFFFF"},".Input:focus":{borderColor:"#60A5FA",boxShadow:"0 0 0 3px rgba(96,165,250,0.25)"},".Label":{fontWeight:"600",color:"#DBEAFE"},".Tab":{padding:"14px 18px",border:"2px solid #1E40AF",backgroundColor:"#1E3A8A",color:"#FFFFFF",fontWeight:"600"},".Tab--selected":{borderColor:"#60A5FA",boxShadow:"0 0 0 1px #60A5FA"}}},Q={theme:"default",variables:{colorPrimary:"#1785E0",colorBackground:"#FFFFFF",colorText:"#1E293B",colorDanger:"#EF4444",borderRadius:"16px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"15px",spacingUnit:"5px"},rules:{".Input":{backgroundColor:"rgba(255,255,255,0.6)",backdropFilter:"blur(10px)",padding:"14px 16px",border:"1px solid rgba(255,255,255,0.6)",boxShadow:"inset 0 1px 0 rgba(255,255,255,0.5), 0 1px 3px rgba(23,133,224,0.08)"},".Input:focus":{borderColor:"rgba(23,133,224,0.5)",boxShadow:"0 0 0 3px rgba(23,133,224,0.15)"},".Label":{fontWeight:"500",color:"#475569"},".Tab":{padding:"12px 16px",backgroundColor:"rgba(255,255,255,0.5)",border:"1px solid rgba(255,255,255,0.6)",borderRadius:"14px"},".Tab--selected":{borderColor:"rgba(23,133,224,0.6)",boxShadow:"0 0 0 1px rgba(23,133,224,0.6)"}}},ee={theme:"night",variables:{colorPrimary:"#60A5FA",colorBackground:"#0F172A",colorText:"#F1F5F9",colorDanger:"#F87171",borderRadius:"16px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"15px",spacingUnit:"5px"},rules:{".Input":{backgroundColor:"rgba(15,23,42,0.6)",backdropFilter:"blur(10px)",padding:"14px 16px",border:"1px solid rgba(255,255,255,0.08)",color:"#F1F5F9"},".Input:focus":{borderColor:"rgba(96,165,250,0.5)",boxShadow:"0 0 0 3px rgba(96,165,250,0.2)"},".Label":{fontWeight:"500",color:"#94A3B8"},".Tab":{padding:"12px 16px",backgroundColor:"rgba(15,23,42,0.6)",border:"1px solid rgba(255,255,255,0.08)",borderRadius:"14px",color:"#F1F5F9"},".Tab--selected":{borderColor:"rgba(96,165,250,0.6)",boxShadow:"0 0 0 1px rgba(96,165,250,0.6)"}}},te={},re={cardButton:{border:"none",backgroundColor:"#f9fafb",boxShadow:"none"},cardFormContainer:{backgroundColor:"#f9fafb",border:"none"},cardInputBorder:"#e5e7eb",backButtonIcon:{backgroundColor:"#e5e7eb"},submitButton:{borderRadius:"6px"}},oe={cardButton:{borderRadius:"9999px",border:"1px solid #e5e7eb",boxShadow:"0 1px 3px rgba(0,0,0,0.06)"},cardFormContainer:{borderRadius:"16px",border:"1px solid #e5e7eb",boxShadow:"0 2px 8px rgba(0,0,0,0.06)"},cardInputBorder:"#d1d5db",submitButton:{borderRadius:"9999px"},backButtonIcon:{backgroundColor:"#f3f4f6"}},ne={cardButton:{backgroundColor:"#1f2937",color:"#f9fafb",border:"1px solid #374151",boxShadow:"none"},cardFormContainer:{backgroundColor:"#111827",border:"1px solid #374151"},cardInputBorder:"#4b5563",cardInputColor:"#f9fafb",cardInputPlaceholderColor:"#6b7280",cardInputBackground:"#1f2937",nameInput:{backgroundColor:"#1f2937",color:"#f9fafb"},backButton:{color:"#9ca3af"},backButtonIcon:{backgroundColor:"#374151"},submitButton:{backgroundColor:"#6366f1"},title:{color:"#f9fafb"},countrySelect:{backgroundColor:"#1f2937",color:"#f9fafb"},zipInput:{backgroundColor:"#1f2937",color:"#f9fafb"}},A={cardFormContainer:{backgroundColor:"#FAFAFA",borderRadius:"20px",border:"1px solid #E5E7EB",boxShadow:"0 8px 24px rgba(15,23,42,0.04)",padding:"24px"},cardButton:{backgroundColor:"#FFFFFF",borderRadius:"14px",border:"1.5px solid #E5E7EB",boxShadow:"0 1px 2px rgba(15,23,42,0.04)",padding:"14px 18px"},cardInputBorder:"#E5E7EB",nameInput:{backgroundColor:"#FFFFFF",border:"1.5px solid #E5E7EB",borderRadius:"14px",padding:"14px 16px"},submitButton:{backgroundColor:"#1785E0",borderRadius:"14px",padding:"16px 24px",boxShadow:"0 4px 14px rgba(23,133,224,0.25)",fontWeight:"600"},title:{color:"#0F172A",fontWeight:"600"},titleFontSize:"20px",backButton:{color:"#64748B"},backButtonIcon:{backgroundColor:"#F1F5F9"}},I={cardFormContainer:{backgroundColor:"#111827",borderRadius:"20px",border:"1px solid #1F2937",boxShadow:"0 8px 24px rgba(0,0,0,0.2)",padding:"24px"},cardButton:{backgroundColor:"#0B1220",borderRadius:"14px",border:"1.5px solid #1F2937",color:"#F1F5F9",padding:"14px 18px"},cardInputBorder:"#1F2937",cardInputBackground:"#111827",cardInputColor:"#F1F5F9",cardInputPlaceholderColor:"#64748B",nameInput:{backgroundColor:"#111827",border:"1.5px solid #1F2937",borderRadius:"14px",padding:"14px 16px",color:"#F1F5F9"},submitButton:{backgroundColor:"#60A5FA",borderRadius:"14px",padding:"16px 24px",boxShadow:"0 4px 14px rgba(96,165,250,0.3)",fontWeight:"600",color:"#0B1220"},title:{color:"#F1F5F9",fontWeight:"600"},titleFontSize:"20px",backButton:{color:"#94A3B8"},backButtonIcon:{backgroundColor:"#1F2937"},countrySelect:{backgroundColor:"#111827",color:"#F1F5F9"},zipInput:{backgroundColor:"#111827",color:"#F1F5F9"}},_={cardFormContainer:{backgroundColor:"#EFF6FF",borderRadius:"20px",border:"2px solid #1785E0",padding:"24px"},cardButton:{backgroundColor:"#FFFFFF",borderRadius:"12px",border:"2px solid #1785E0",color:"#1785E0",fontWeight:"700",padding:"14px 18px"},cardInputBorder:"#E5E7EB",nameInput:{backgroundColor:"#FFFFFF",border:"2px solid #E5E7EB",borderRadius:"12px",padding:"14px 16px",fontWeight:"500"},submitButton:{background:"linear-gradient(135deg, #1785E0 0%, #0EA5E9 100%)",borderRadius:"9999px",padding:"16px 24px",boxShadow:"0 10px 25px rgba(23,133,224,0.35)",fontWeight:"700",color:"#FFFFFF",border:"none"},submitButtonFontSize:"17px",title:{color:"#0C2B4D",fontWeight:"800",letterSpacing:"-0.02em"},titleFontSize:"22px",backButton:{color:"#1785E0",fontWeight:"600"},backButtonIcon:{backgroundColor:"#DBEAFE"}},R={cardFormContainer:{backgroundColor:"#1E3A8A",borderRadius:"20px",border:"2px solid #60A5FA",padding:"24px"},cardButton:{backgroundColor:"#0C2B4D",borderRadius:"12px",border:"2px solid #60A5FA",color:"#60A5FA",fontWeight:"700",padding:"14px 18px"},cardInputBorder:"#1E40AF",cardInputBackground:"#1E3A8A",cardInputColor:"#FFFFFF",cardInputPlaceholderColor:"#60A5FA",nameInput:{backgroundColor:"#1E3A8A",border:"2px solid #1E40AF",borderRadius:"12px",padding:"14px 16px",fontWeight:"500",color:"#FFFFFF"},submitButton:{background:"linear-gradient(135deg, #60A5FA 0%, #38BDF8 100%)",borderRadius:"9999px",padding:"16px 24px",boxShadow:"0 10px 25px rgba(96,165,250,0.35)",fontWeight:"700",color:"#FFFFFF",border:"none"},submitButtonFontSize:"17px",title:{color:"#FFFFFF",fontWeight:"800",letterSpacing:"-0.02em"},titleFontSize:"22px",backButton:{color:"#DBEAFE",fontWeight:"600"},backButtonIcon:{backgroundColor:"#1E40AF"},countrySelect:{backgroundColor:"#1E3A8A",color:"#FFFFFF"},zipInput:{backgroundColor:"#1E3A8A",color:"#FFFFFF"}},P={cardFormContainer:{background:"linear-gradient(135deg, #DBEAFE 0%, #BFDBFE 100%)",borderRadius:"24px",border:"1px solid rgba(255,255,255,0.6)",boxShadow:"inset 0 1px 0 rgba(255,255,255,0.6), 0 12px 40px rgba(23,133,224,0.15)",padding:"28px"},cardButton:{backgroundColor:"rgba(255,255,255,0.7)",backdropFilter:"blur(20px)",borderRadius:"16px",border:"1px solid rgba(255,255,255,0.6)",boxShadow:"inset 0 1px 0 rgba(255,255,255,0.5), 0 4px 16px rgba(23,133,224,0.1)",padding:"14px 18px"},cardInputBorder:"rgba(255,255,255,0.6)",nameInput:{backgroundColor:"rgba(255,255,255,0.6)",backdropFilter:"blur(10px)",border:"1px solid rgba(255,255,255,0.6)",borderRadius:"14px",padding:"14px 16px"},submitButton:{backgroundColor:"rgba(23,133,224,0.95)",backdropFilter:"blur(10px)",borderRadius:"16px",padding:"16px 24px",boxShadow:"0 10px 30px rgba(23,133,224,0.3), inset 0 1px 0 rgba(255,255,255,0.2)",fontWeight:"600",color:"#FFFFFF"},title:{color:"#1E293B",fontWeight:"600",letterSpacing:"-0.01em"},titleFontSize:"20px",backButton:{color:"#1785E0",fontWeight:"500"},backButtonIcon:{backgroundColor:"rgba(255,255,255,0.7)"}},k={cardFormContainer:{background:"linear-gradient(135deg, #0C2B4D 0%, #0F172A 100%)",borderRadius:"24px",border:"1px solid rgba(255,255,255,0.08)",boxShadow:"inset 0 1px 0 rgba(255,255,255,0.06), 0 20px 50px rgba(0,0,0,0.4)",padding:"28px"},cardButton:{backgroundColor:"rgba(15,23,42,0.6)",backdropFilter:"blur(20px)",borderRadius:"16px",border:"1px solid rgba(255,255,255,0.08)",boxShadow:"inset 0 1px 0 rgba(255,255,255,0.05), 0 4px 16px rgba(0,0,0,0.3)",padding:"14px 18px",color:"#F1F5F9"},cardInputBorder:"rgba(255,255,255,0.08)",cardInputBackground:"rgba(15,23,42,0.6)",cardInputColor:"#F1F5F9",cardInputPlaceholderColor:"#64748B",nameInput:{backgroundColor:"rgba(15,23,42,0.6)",backdropFilter:"blur(10px)",border:"1px solid rgba(255,255,255,0.08)",borderRadius:"14px",padding:"14px 16px",color:"#F1F5F9"},submitButton:{backgroundColor:"rgba(96,165,250,0.9)",backdropFilter:"blur(10px)",borderRadius:"16px",padding:"16px 24px",boxShadow:"0 10px 30px rgba(96,165,250,0.35), inset 0 1px 0 rgba(255,255,255,0.15)",fontWeight:"600",color:"#0F172A"},title:{color:"#F1F5F9",fontWeight:"600",letterSpacing:"-0.01em"},titleFontSize:"20px",backButton:{color:"#60A5FA",fontWeight:"500"},backButtonIcon:{backgroundColor:"rgba(255,255,255,0.08)"},countrySelect:{backgroundColor:"rgba(15,23,42,0.6)",color:"#F1F5F9"},zipInput:{backgroundColor:"rgba(15,23,42,0.6)",color:"#F1F5F9"}};function Xe(e){switch(e){case"minimal":return re;case"rounded":return oe;case"dark":return ne;case"modern-light":return A;case"modern-dark":return I;case"bold-light":return _;case"bold-dark":return R;case"glass-light":return P;case"glass-dark":return k;default:return te}}var ae={"modern-light":{appearance:Z,buttonsLayout:A},"modern-dark":{appearance:X,buttonsLayout:I},"bold-light":{appearance:$,buttonsLayout:_},"bold-dark":{appearance:J,buttonsLayout:R},"glass-light":{appearance:Q,buttonsLayout:P},"glass-dark":{appearance:ee,buttonsLayout:k}};function $e(e){if(!(!e||e==="classic"))return ae[e]}function Je(e){switch(e){case"apple_pay":return"applePay";case"google_pay":return"googlePay";case"amazon_pay":return"amazonPay";default:return e}}function i(e,t,r){return`<svg viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true"><circle cx="11" cy="11" r="11" fill="${t}"/><text x="11" y="15.5" text-anchor="middle" font-size="13" font-weight="700" font-family="-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif" fill="${r}">${e}</text></svg>`}function Ge(e,t){return`<svg viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true"><circle cx="11" cy="11" r="11" fill="${e}"/><g fill="${t}"><path d="M11 4 L17.5 8 L4.5 8 Z"/><rect x="5" y="8.4" width="12" height="1.2" rx="0.3"/><rect x="5.9" y="10" width="1.5" height="5"/><rect x="8.55" y="10" width="1.5" height="5"/><rect x="11.95" y="10" width="1.5" height="5"/><rect x="14.6" y="10" width="1.5" height="5"/><rect x="4.6" y="15.4" width="12.8" height="1.5" rx="0.3"/></g></svg>`}var Qe=["AT","BE","BG","CY","CZ","DE","DK","EE","ES","FI","FR","GR","HR","HU","IE","IT","LT","LU","LV","MT","NL","PL","PT","RO","SE","SI","SK","IS","LI","NO","CH","GB","MC","SM","AD","VA"],Nr=[...Qe,"JP","MX","US"],g={apple_pay:{displayName:"Apple Pay",currencies:["*"],express:!0,needsExplicitConfirm:!1},google_pay:{displayName:"Google Pay",currencies:["*"],express:!0,needsExplicitConfirm:!1},paypal:{displayName:"PayPal",currencies:["eur","gbp","usd","cad","aud","nzd","chf","jpy","pln","sek","nok","dkk","czk","huf"],express:!0,needsExplicitConfirm:!1},link:{displayName:"Link",currencies:["usd","eur"],express:!0,needsExplicitConfirm:!1},amazon_pay:{displayName:"Amazon Pay",currencies:["usd","eur","gbp"],express:!0,needsExplicitConfirm:!1},klarna:{displayName:"Klarna",currencies:["usd","eur","gbp","aud","nzd","cad","chf","sek","nok","dkk","pln","czk","ron"],amounts:{usd:{min:100},eur:{min:100},gbp:{min:100}},theme:{light:{backgroundColor:"#FFB3C7",textColor:"#0A0B09",borderColor:"#FFB3C7",logoSvg:i("K","#0A0B09","#FFB3C7")},dark:{backgroundColor:"#FFB3C7",textColor:"#0A0B09",borderColor:"#FFB3C7",logoSvg:i("K","#0A0B09","#FFB3C7")}}},affirm:{displayName:"Affirm",currencies:["usd"],countries:["US","CA"],amounts:{usd:{min:3500,max:3e6}},needsExplicitConfirm:!1,theme:{light:{backgroundColor:"#060F33",textColor:"#FFFFFF",borderColor:"#060F33",logoSvg:i("a","#FFFFFF","#060F33")},dark:{backgroundColor:"#0FA0EA",textColor:"#060F33",borderColor:"#0FA0EA",logoSvg:i("a","#060F33","#FFFFFF")}}},cashapp:{displayName:"Cash App Pay",currencies:["usd"],countries:["US"],amounts:{usd:{min:50,max:99999999}},needsExplicitConfirm:!1,theme:{light:{backgroundColor:"#00D54B",textColor:"#0A1F0E",borderColor:"#00D54B",logoSvg:i("$","#0A1F0E","#00D54B")},dark:{backgroundColor:"#00D54B",textColor:"#0A1F0E",borderColor:"#00D54B",logoSvg:i("$","#0A1F0E","#00D54B")}}},afterpay_clearpay:{displayName:"Afterpay",currencies:["usd","aud","cad","gbp","nzd"],countries:["US","CA","GB","AU","NZ"],amounts:{usd:{min:100,max:2e5},cad:{min:100,max:2e5},gbp:{min:100,max:12e4},aud:{min:100,max:2e5},nzd:{min:100,max:2e5}},theme:{light:{backgroundColor:"#B2FCE4",textColor:"#0A0B09",borderColor:"#B2FCE4",logoSvg:i("A","#0A0B09","#B2FCE4")},dark:{backgroundColor:"#B2FCE4",textColor:"#0A0B09",borderColor:"#B2FCE4",logoSvg:i("A","#0A0B09","#B2FCE4")}}},alipay:{displayName:"Alipay",currencies:["usd","cny"],theme:{light:{backgroundColor:"#1677FF",textColor:"#FFFFFF",borderColor:"#1677FF",logoSvg:i("A","#FFFFFF","#1677FF")},dark:{backgroundColor:"#1677FF",textColor:"#FFFFFF",borderColor:"#1677FF",logoSvg:i("A","#FFFFFF","#1677FF")}}},au_becs_debit:{displayName:"BECS Direct Debit",currencies:["aud"],countries:["AU"]},bacs_debit:{displayName:"Bacs Debit",currencies:["gbp"],countries:["GB"]},bancontact:{displayName:"Bancontact",currencies:["eur"],countries:["BE"],theme:{light:{backgroundColor:"#FFDD55",textColor:"#1E3791",borderColor:"#FFDD55",logoSvg:i("B","#1E3791","#FFDD55")},dark:{backgroundColor:"#1E3791",textColor:"#FFDD55",borderColor:"#1E3791",logoSvg:i("B","#FFDD55","#1E3791")}}},bizum:{displayName:"Bizum",currencies:["eur"],countries:["ES"],theme:{light:{backgroundColor:"#00BFB3",textColor:"#FFFFFF",borderColor:"#00BFB3",logoSvg:i("B","#FFFFFF","#00BFB3")},dark:{backgroundColor:"#00BFB3",textColor:"#FFFFFF",borderColor:"#00BFB3",logoSvg:i("B","#FFFFFF","#00BFB3")}}},blik:{displayName:"BLIK",currencies:["pln"],countries:["PL"],theme:{light:{backgroundColor:"#000000",textColor:"#FFFFFF",borderColor:"#000000",logoSvg:i("B","#FFFFFF","#000000")},dark:{backgroundColor:"#FFFFFF",textColor:"#000000",borderColor:"#FFFFFF",logoSvg:i("B","#000000","#FFFFFF")}}},boleto:{displayName:"Boleto",currencies:["brl"],countries:["BR"]},customer_balance:{displayName:"Bank Transfer",currencies:["eur","usd"],countries:Nr,theme:{light:{backgroundColor:"#1F2937",textColor:"#FFFFFF",borderColor:"#1F2937",logoSvg:Ge("#1F2937","#FFFFFF")},dark:{backgroundColor:"#374151",textColor:"#FFFFFF",borderColor:"#374151",logoSvg:Ge("#374151","#FFFFFF")}}},eps:{displayName:"EPS",currencies:["eur"],countries:["AT"],theme:{light:{backgroundColor:"#C8102E",textColor:"#FFFFFF",borderColor:"#C8102E",logoSvg:i("E","#FFFFFF","#C8102E")},dark:{backgroundColor:"#C8102E",textColor:"#FFFFFF",borderColor:"#C8102E",logoSvg:i("E","#FFFFFF","#C8102E")}}},giropay:{displayName:"Giropay",currencies:["eur"],countries:["DE"],theme:{light:{backgroundColor:"#0F4197",textColor:"#FFFFFF",borderColor:"#0F4197",logoSvg:i("G","#FFFFFF","#0F4197")},dark:{backgroundColor:"#0F4197",textColor:"#FFFFFF",borderColor:"#0F4197",logoSvg:i("G","#FFFFFF","#0F4197")}}},ideal:{displayName:"iDEAL",currencies:["eur"],countries:["NL"],theme:{light:{backgroundColor:"#CC0066",textColor:"#FFFFFF",borderColor:"#CC0066",logoSvg:i("i","#FFFFFF","#CC0066")},dark:{backgroundColor:"#CC0066",textColor:"#FFFFFF",borderColor:"#CC0066",logoSvg:i("i","#FFFFFF","#CC0066")}}},konbini:{displayName:"Konbini",currencies:["jpy"],countries:["JP"]},kr_card:{displayName:"Korean Card",currencies:["krw"],countries:["KR"],theme:{light:{backgroundColor:"#0B3D91",textColor:"#FFFFFF",borderColor:"#0B3D91",logoSvg:i("K","#FFFFFF","#0B3D91")},dark:{backgroundColor:"#0B3D91",textColor:"#FFFFFF",borderColor:"#0B3D91",logoSvg:i("K","#FFFFFF","#0B3D91")}}},multibanco:{displayName:"Multibanco",currencies:["eur"],countries:["PT"]},oxxo:{displayName:"OXXO",currencies:["mxn"],countries:["MX"]},p24:{displayName:"Przelewy24",currencies:["eur","pln"],countries:["PL"],theme:{light:{backgroundColor:"#D90F1B",textColor:"#FFFFFF",borderColor:"#D90F1B",logoSvg:i("P","#FFFFFF","#D90F1B")},dark:{backgroundColor:"#D90F1B",textColor:"#FFFFFF",borderColor:"#D90F1B",logoSvg:i("P","#FFFFFF","#D90F1B")}}},paynow:{displayName:"PayNow",currencies:["sgd"],countries:["SG"]},pix:{displayName:"Pix",currencies:["brl"],countries:["BR"]},promptpay:{displayName:"PromptPay",currencies:["thb"],countries:["TH"]},sepa_debit:{displayName:"SEPA Debit",currencies:["eur"],countries:Qe,theme:{light:{backgroundColor:"#10298E",textColor:"#FFFFFF",borderColor:"#10298E",logoSvg:i("\u20AC","#FFFFFF","#10298E")},dark:{backgroundColor:"#3056D3",textColor:"#FFFFFF",borderColor:"#3056D3",logoSvg:i("\u20AC","#FFFFFF","#3056D3")}}},sofort:{displayName:"Sofort",currencies:["eur"],countries:["AT","BE","DE","ES","IT","NL"],theme:{light:{backgroundColor:"#EF809F",textColor:"#FFFFFF",borderColor:"#EF809F",logoSvg:i("S","#FFFFFF","#EF809F")},dark:{backgroundColor:"#EF809F",textColor:"#FFFFFF",borderColor:"#EF809F",logoSvg:i("S","#FFFFFF","#EF809F")}}},upi:{displayName:"UPI",currencies:["inr"],countries:["IN"],theme:{light:{backgroundColor:"#FF7909",textColor:"#FFFFFF",borderColor:"#FF7909",logoSvg:i("U","#FFFFFF","#FF7909")},dark:{backgroundColor:"#FF7909",textColor:"#FFFFFF",borderColor:"#FF7909",logoSvg:i("U","#FFFFFF","#FF7909")}}},us_bank_account:{displayName:"US Bank Account",currencies:["usd"],countries:["US"]},wechat_pay:{displayName:"WeChat Pay",currencies:["usd","cny"],theme:{light:{backgroundColor:"#07C160",textColor:"#FFFFFF",borderColor:"#07C160",logoSvg:i("W","#FFFFFF","#07C160")},dark:{backgroundColor:"#07C160",textColor:"#FFFFFF",borderColor:"#07C160",logoSvg:i("W","#FFFFFF","#07C160")}}},zip:{displayName:"Zip",currencies:["aud"],countries:["AU","NZ"]}};function et(e){return e?we.includes(e):!1}var ie=Object.entries(g).filter(([,e])=>e.express).map(([e])=>e),Dr=new Set(ie),se=Object.fromEntries(Object.entries(g).map(([e,t])=>[e,t.currencies])),de=Object.fromEntries(Object.entries(g).filter(([,e])=>e.countries).map(([e,t])=>[e,t.countries]));function tt(e){if(!e)return"this method";let t=g[e];return t?t.displayName:e.split("_").filter(Boolean).map(r=>r.charAt(0).toUpperCase()+r.slice(1)).join(" ")}function rt(e){if(!e)return!0;let t=g[e];return t?t.needsExplicitConfirm!==!1:!0}function ot(e,t){if(!e)return null;let r=g[e];return r?.theme?(typeof t=="string"&&t.endsWith("-dark")?r.theme.dark:r.theme.light)??r.theme.light??null:null}function nt(e,t){if(!e?.length)return[];if(!t)return[...e];let r=t.trim().toLowerCase();return r?e.filter(o=>{let n=se[o];return n?n.includes("*")||n.includes(r):!0}):[...e]}function at(e,t){if(!e?.length)return[];if(!t)return[...e];let r=t.trim().toUpperCase();return r?e.filter(o=>{let n=de[o];return n?n.includes("*")||n.includes(r):!0}):[...e]}var ue=Object.fromEntries(Object.entries(g).filter(([,e])=>e.amounts).map(([e,t])=>[e,t.amounts]));function it(e,t,r){if(!e?.length)return[];if(!t||typeof r!="number"||!Number.isFinite(r))return[...e];let o=t.trim().toLowerCase();return o?e.filter(n=>{let s=ue[n];if(!s)return!0;let c=s[o];return c?!(typeof c.min=="number"&&r<c.min||typeof c.max=="number"&&r>c.max):!0}):[...e]}function st(e,t){if(!e?.length)return{expressMethods:[],paymentElementMethods:[]};let r=[],o=[],n=new Set,s=new Set;for(let c of e){if(typeof c!="string")continue;let p=c.trim();if(!(!p||p==="card")&&!(t?.excludePaypal&&p==="paypal"))if(Dr.has(p)){if(n.has(p))continue;n.add(p),r.push(p)}else{if(s.has(p))continue;s.add(p),o.push(p)}}return{expressMethods:r,paymentElementMethods:o}}var dt=["payment","address"],ut=["visa","mastercard","mastercard_debit","amex","discover"],B={AT:{currency:"EUR",symbol:"\u20AC",country:"Austria",countryCode:"AT",tax:1},BE:{currency:"EUR",symbol:"\u20AC",country:"Belgium",countryCode:"BE",tax:1},CY:{currency:"EUR",symbol:"\u20AC",country:"Cyprus",countryCode:"CY",tax:1},DE:{currency:"EUR",symbol:"\u20AC",country:"Germany",countryCode:"DE",tax:1},EE:{currency:"EUR",symbol:"\u20AC",country:"Estonia",countryCode:"EE",tax:1},ES:{currency:"EUR",symbol:"\u20AC",country:"Spain",countryCode:"ES",tax:1},FI:{currency:"EUR",symbol:"\u20AC",country:"Finland",countryCode:"FI",tax:1},FR:{currency:"EUR",symbol:"\u20AC",country:"France",countryCode:"FR",tax:1},GR:{currency:"EUR",symbol:"\u20AC",country:"Greece",countryCode:"GR",tax:1},HR:{currency:"EUR",symbol:"\u20AC",country:"Croatia",countryCode:"HR",tax:1},IE:{currency:"EUR",symbol:"\u20AC",country:"Ireland",countryCode:"IE",tax:1},IT:{currency:"EUR",symbol:"\u20AC",country:"Italy",countryCode:"IT",tax:1},LT:{currency:"EUR",symbol:"\u20AC",country:"Lithuania",countryCode:"LT",tax:1},LU:{currency:"EUR",symbol:"\u20AC",country:"Luxembourg",countryCode:"LU",tax:1},LV:{currency:"EUR",symbol:"\u20AC",country:"Latvia",countryCode:"LV",tax:1},MT:{currency:"EUR",symbol:"\u20AC",country:"Malta",countryCode:"MT",tax:1},NL:{currency:"EUR",symbol:"\u20AC",country:"Netherlands",countryCode:"NL",tax:1},PT:{currency:"EUR",symbol:"\u20AC",country:"Portugal",countryCode:"PT",tax:1},SI:{currency:"EUR",symbol:"\u20AC",country:"Slovenia",countryCode:"SI",tax:1},SK:{currency:"EUR",symbol:"\u20AC",country:"Slovakia",countryCode:"SK",tax:1},BG:{currency:"EUR",symbol:"\u20AC",country:"Bulgaria",countryCode:"BG",tax:1},RO:{currency:"EUR",symbol:"\u20AC",country:"Romania",countryCode:"RO",tax:1},CZ:{currency:"EUR",symbol:"\u20AC",country:"Czech Republic",countryCode:"CZ",tax:1},SE:{currency:"EUR",symbol:"\u20AC",country:"Sweden",countryCode:"SE",tax:1},DK:{currency:"EUR",symbol:"\u20AC",country:"Denmark",countryCode:"DK",tax:1},PL:{currency:"EUR",symbol:"\u20AC",country:"Poland",countryCode:"PL",tax:1},HU:{currency:"EUR",symbol:"\u20AC",country:"Hungary",countryCode:"HU",tax:1},GB:{currency:"GBP",symbol:"\xA3",country:"United Kingdom",countryCode:"GB",tax:1},US:{currency:"USD",symbol:"$",country:"United States",countryCode:"US",tax:0},CA:{currency:"CAD",symbol:"CA$",country:"Canada",countryCode:"CA",tax:0},NZ:{currency:"NZD",symbol:"NZ$",country:"New Zealand",countryCode:"NZ",tax:0},AU:{currency:"AUD",symbol:"AU$",country:"Australia",countryCode:"AU",tax:0}},v={currency:"USD",symbol:"$",country:"United States",countryCode:"US",tax:0};function ct(e){switch(e.toUpperCase()){case"US":return"ZIP Code";case"GB":return"Postcode";case"CA":return"Postal Code";case"AU":case"NZ":return"Postcode";case"IE":return"Eircode";default:return"Postal Code"}}var Lr=new Intl.DisplayNames(["en"],{type:"region"});function Or(e){return[...e.toUpperCase()].map(t=>String.fromCodePoint(127397+t.charCodeAt(0))).join("")}var lt=["US","GB","CA","AU","NZ","IE","DE","FR"],Ur=["AD","AE","AF","AG","AL","AM","AO","AR","AT","AU","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BN","BO","BR","BS","BT","BW","BY","BZ","CA","CD","CF","CG","CH","CI","CL","CM","CN","CO","CR","CU","CV","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","ER","ES","ET","FI","FJ","FM","FR","GA","GB","GD","GE","GH","GM","GN","GQ","GR","GT","GW","GY","HN","HR","HT","HU","ID","IE","IL","IN","IQ","IR","IS","IT","JM","JO","JP","KE","KG","KH","KI","KM","KN","KR","KW","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MG","MH","MK","ML","MM","MN","MR","MT","MU","MV","MW","MX","MY","MZ","NA","NE","NG","NI","NL","NO","NP","NR","NZ","OM","PA","PE","PG","PH","PK","PL","PT","PW","PY","QA","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SI","SK","SL","SM","SN","SO","SR","SS","ST","SV","SY","SZ","TD","TG","TH","TJ","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","US","UY","UZ","VA","VC","VE","VN","VU","WS","XK","YE","ZA","ZM","ZW"];function Ke(e){return{code:e,name:Lr.of(e)??e,flag:Or(e)}}var wr=new Set(lt),Gr=Ur.filter(e=>!wr.has(e)),ce=[...lt.map(Ke),...Gr.map(Ke)];function pt(e){return ce.find(t=>t.code===e)}var Kr={country:!0,postal_code:!0};function le(e){return e?e===!0?Kr:e:null}function mt(e,t){if(e===void 0||e===!1)return!1;if(e===!0)return!0;let r=t.trim().toUpperCase();return e.some(o=>o.trim().toUpperCase()===r)}function gt(e){let t=le(e);return t?Object.values(t).some(r=>r===!0||Array.isArray(r)&&r.length>0):!1}var pe=[{code:"AL",name:"Alabama"},{code:"AK",name:"Alaska"},{code:"AZ",name:"Arizona"},{code:"AR",name:"Arkansas"},{code:"CA",name:"California"},{code:"CO",name:"Colorado"},{code:"CT",name:"Connecticut"},{code:"DE",name:"Delaware"},{code:"DC",name:"District of Columbia"},{code:"FL",name:"Florida"},{code:"GA",name:"Georgia"},{code:"HI",name:"Hawaii"},{code:"ID",name:"Idaho"},{code:"IL",name:"Illinois"},{code:"IN",name:"Indiana"},{code:"IA",name:"Iowa"},{code:"KS",name:"Kansas"},{code:"KY",name:"Kentucky"},{code:"LA",name:"Louisiana"},{code:"ME",name:"Maine"},{code:"MD",name:"Maryland"},{code:"MA",name:"Massachusetts"},{code:"MI",name:"Michigan"},{code:"MN",name:"Minnesota"},{code:"MS",name:"Mississippi"},{code:"MO",name:"Missouri"},{code:"MT",name:"Montana"},{code:"NE",name:"Nebraska"},{code:"NV",name:"Nevada"},{code:"NH",name:"New Hampshire"},{code:"NJ",name:"New Jersey"},{code:"NM",name:"New Mexico"},{code:"NY",name:"New York"},{code:"NC",name:"North Carolina"},{code:"ND",name:"North Dakota"},{code:"OH",name:"Ohio"},{code:"OK",name:"Oklahoma"},{code:"OR",name:"Oregon"},{code:"PA",name:"Pennsylvania"},{code:"RI",name:"Rhode Island"},{code:"SC",name:"South Carolina"},{code:"SD",name:"South Dakota"},{code:"TN",name:"Tennessee"},{code:"TX",name:"Texas"},{code:"UT",name:"Utah"},{code:"VT",name:"Vermont"},{code:"VA",name:"Virginia"},{code:"WA",name:"Washington"},{code:"WV",name:"West Virginia"},{code:"WI",name:"Wisconsin"},{code:"WY",name:"Wyoming"}],me=[{code:"AB",name:"Alberta"},{code:"BC",name:"British Columbia"},{code:"MB",name:"Manitoba"},{code:"NB",name:"New Brunswick"},{code:"NL",name:"Newfoundland and Labrador"},{code:"NS",name:"Nova Scotia"},{code:"NT",name:"Northwest Territories"},{code:"NU",name:"Nunavut"},{code:"ON",name:"Ontario"},{code:"PE",name:"Prince Edward Island"},{code:"QC",name:"Quebec"},{code:"SK",name:"Saskatchewan"},{code:"YT",name:"Yukon"}];function yt(e){switch(e.toUpperCase()){case"US":return pe;case"CA":return me;default:return null}}function Ct(e){switch(e.toUpperCase()){case"US":return"State";case"CA":return"Province";case"GB":return"County";case"AU":return"State / Territory";default:return"State / Province / Region"}}var Vr=[[5,5,"NY"],[10,27,"MA"],[28,29,"RI"],[30,38,"NH"],[39,49,"ME"],[50,59,"VT"],[60,69,"CT"],[70,89,"NJ"],[100,149,"NY"],[150,196,"PA"],[197,199,"DE"],[200,205,"DC"],[206,219,"MD"],[220,246,"VA"],[247,268,"WV"],[270,289,"NC"],[290,299,"SC"],[300,319,"GA"],[320,349,"FL"],[350,369,"AL"],[370,385,"TN"],[386,397,"MS"],[398,399,"GA"],[400,427,"KY"],[430,459,"OH"],[460,479,"IN"],[480,499,"MI"],[500,528,"IA"],[530,549,"WI"],[550,567,"MN"],[570,577,"SD"],[580,588,"ND"],[590,599,"MT"],[600,629,"IL"],[630,658,"MO"],[660,679,"KS"],[680,693,"NE"],[700,714,"LA"],[716,729,"AR"],[730,749,"OK"],[750,799,"TX"],[800,816,"CO"],[820,831,"WY"],[832,838,"ID"],[840,847,"UT"],[850,865,"AZ"],[870,884,"NM"],[889,898,"NV"],[900,961,"CA"],[967,968,"HI"],[970,979,"OR"],[980,994,"WA"],[995,999,"AK"]],Yr={A:"NL",B:"NS",C:"PE",E:"NB",G:"QC",H:"QC",J:"QC",K:"ON",L:"ON",M:"ON",N:"ON",P:"ON",R:"MB",S:"SK",T:"AB",V:"BC",X:"NT",Y:"YT"};function zr(e){let t=e.replace(/\D/g,"");if(t.length<5)return null;let r=Number.parseInt(t.slice(0,3),10);if(!Number.isFinite(r))return null;for(let[o,n,s]of Vr)if(r>=o&&r<=n)return s;return null}function Hr(e){let t=e.replace(/\s+/g,"").toUpperCase();if(!/^[A-Z]\d[A-Z]\d[A-Z]\d$/.test(t))return null;let r=t[0]??"";return Yr[r]??null}function Et(e,t){if(!e||!t)return null;let r=e.trim().toUpperCase(),o=t.trim();if(!o)return null;switch(r){case"US":return zr(o);case"CA":return Hr(o);default:return null}}var qr=Qt(require("validator/lib/isPostalCode.js"),1),M=qr,Ft=typeof M.default=="function"?M.default:M.default?.default;if(typeof Ft!="function")throw new Error("validator/lib/isPostalCode.js interop failed: unexpected module shape. This likely means the bundler's CJS/ESM interop changed.");var ft=new Set(M.locales.map(e=>e.toUpperCase())),Wr={AUSTRALIA:"AU",BRAZIL:"BR",CANADA:"CA",CH:"CH",DENMARK:"DK",DE:"DE",DEUTSCHLAND:"DE",FRANCE:"FR",GB:"GB",GERMANY:"DE",GREATBRITAIN:"GB",GREAT_BRITAIN:"GB",INDIA:"IN",IRELAND:"IE",ITALY:"IT",JAPAN:"JP",MEXICO:"MX",NETHERLANDS:"NL",NEWZEALAND:"NZ",NORWAY:"NO",POLAND:"PL",PORTUGAL:"PT",SINGAPORE:"SG",SOUTHAFRICA:"ZA",SPAIN:"ES",SWEDEN:"SE",SWITZERLAND:"CH",UK:"GB",UNITEDKINGDOM:"GB",UNITEDSTATES:"US",US:"US",USA:"US","UNITED STATES":"US","UNITED KINGDOM":"GB","GREAT BRITAIN":"GB",ENGLAND:"GB"};function ge(e){let t=(e??"").trim().toUpperCase();return t?t.length===2?t:Wr[t]??null:null}var jr={AU:"2000",BR:"01000-000",CA:"A1A 1A1",CH:"8001",DE:"10115",DK:"1050",ES:"28001",FR:"75008",GB:"SW1A 1AA",IE:"D02 X285",IN:"110001",IT:"00118",JP:"100-0001",MX:"06500",NL:"1012 JS",NO:"0150",NZ:"6011",PL:"00-001",PT:"1100-148",SE:"111 22",SG:"018989",US:"12345 or 12345-6789",ZA:"8001"};function bt(e){let t=ge(e);return t!==null&&ft.has(t)}function xt(e,t){let r=(t??"").trim();if(!r)return!0;let o=ge(e);if(o===null||!ft.has(o))return!0;try{return Ft(r,o)}catch{return!0}}function ht(e){let t=ge(e);return t?jr[t]:void 0}function St(e){if(!(e.captureMethod!=="manual"||!(e.products??ye(e.items,e.subscriptions)).some(r=>r.type==="subscription")))throw new u("Manual capture is not supported for subscription products.","validation_error",{code:"CaptureMethodUnsupportedForSubscription",param:"captureMethod"})}function Tt(e){return e.deferDataAttachment!==!1&&(e.checkoutMode??"full")==="full"&&!e.tokenizedData}function a(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function N(e,t,r,o){let n=a(e);if(n)return n;for(let s of t??[]){let c=a(s.currency);if(c)return c}for(let s of r??[]){let c=a(s.currency);if(c)return c}for(let s of o??[]){let c=a(s.currency);if(c)return c}return null}function ye(e,t){let r=[];for(let o of t??[])r.push({type:"subscription",code:a(o.code)??a(o.providerPlanId),providerPlanId:o.providerPlanId,name:a(o.subscriptionName)??a(o.providerPlanName)??null,subscriptionName:o.subscriptionName??null,providerPlanName:o.providerPlanName??null,quantity:o.quantity,totalAmount:o.totalAmount,overrideAmount:o.overrideAmount,currency:o.currency,metadata:o.metadata});for(let o of e??[])r.push({type:"item",code:a(o.code)??a(o.providerItemId),providerItemId:o.providerItemId,name:a(o.itemName)??a(o.providerItemName)??null,itemName:o.itemName??null,providerItemName:o.providerItemName??null,quantity:o.quantity,totalAmount:o.totalAmount,overrideAmount:o.overrideAmount,currency:o.currency,metadata:o.metadata});return r}function At(e,t){let r=a(e.code)??a(e.providerItemId)??a(e.providerPlanId);if(!r)throw new Error("CheckoutProduct requires `code` (or the deprecated `providerItemId` / `providerPlanId`).");let o=a(e.name)??a(e.itemName)??a(e.providerItemName)??a(e.subscriptionName)??a(e.providerPlanName)??null,n={type:e.type,code:r,name:o,quantity:e.quantity??1,totalAmount:e.totalAmount,overrideAmount:e.overrideAmount??null,currency:a(e.currency)??t};return e.metadata&&(n.metadata=e.metadata),n}function It(e,t){let r=a(e.code)??a(e.providerItemId);if(!r)throw new Error("CheckoutItem requires either `code` or the deprecated `providerItemId`.");let o=a(e.itemName)??a(e.providerItemName)??null,n={code:r,providerItemId:a(e.providerItemId)??r,itemName:o,providerItemName:a(e.providerItemName)??o,quantity:e.quantity??1,totalAmount:e.totalAmount,overrideAmount:e.overrideAmount??null,currency:a(e.currency)??t};return e.metadata&&(n.metadata=e.metadata),n}function _t(e,t){let r=a(e.code)??a(e.providerPlanId);if(!r)throw new Error("CheckoutSubscription requires either `code` or the deprecated `providerPlanId`.");let o=a(e.subscriptionName)??a(e.providerPlanName)??null,n={code:r,providerPlanId:a(e.providerPlanId)??r,subscriptionName:o,providerPlanName:a(e.providerPlanName)??o,quantity:e.quantity??1,totalAmount:e.totalAmount,overrideAmount:e.overrideAmount??null,currency:a(e.currency)??t};return e.metadata&&(n.metadata=e.metadata),n}function Rt(e,t={}){let r=[],o=e.products??[],n=o.filter(d=>d.type==="subscription"),s=o.filter(d=>d.type!=="subscription"),p=(N(e.currency,void 0,void 0,o)??"USD").toUpperCase();for(let d of n){let m=d.totalAmount??0,F=d.overrideAmount??m,O=d.name||d.code||"Subscription";O==="4-WEEK PLAN"&&F<=1&&(O="7-DAY TRIAL: FULL ACCESS"),r.push({name:O,quantity:d.quantity,price:F,originalPrice:m})}if(!(t.hideBundledItems===!0&&n.length>0&&s.length>0))for(let d of s){let m=d.totalAmount??0,F=d.overrideAmount??m;r.push({name:d.name||d.code||"Item",quantity:d.quantity,price:F,originalPrice:m})}r.length===0&&r.push({name:"Purchase",quantity:1,price:e.amount/100,originalPrice:e.amount/100});let Kt=r.reduce((d,m)=>d+m.originalPrice*m.quantity,0),Vt=r.reduce((d,m)=>d+m.price*m.quantity,0),Yt=typeof e.totalAmount=="number"&&Number.isFinite(e.totalAmount),zt=typeof e.subtotalAmount=="number"&&Number.isFinite(e.subtotalAmount),Ht=typeof e.discountAmount=="number"&&Number.isFinite(e.discountAmount),Ee=Yt?e.totalAmount:Vt,E=zt?e.subtotalAmount:Kt,Fe=Math.max(0,E-Ee),qt=E>0?Math.round(Fe/E*100):0;return{items:r,currency:p,total:Ee,originalTotal:E,totalSave:Fe,discountPercent:qt,...Ht?{couponDiscount:e.discountAmount}:{}}}function Pt(e){return e?.captureMethod==="manual"}function kt(e,t){return e==="requires_capture"?t!=="manual":e==="succeeded"||e==="complete"||e==="completed"||e==="captured"||e==="paid"}function Bt(e){if(typeof e!="string"||e.length===0)return;let t=e.trim().toLowerCase().replace(/[\s-]+/g,"_");if(t==="capture_failed"||t.includes("capture")&&(t.includes("fail")||t.includes("error")))return"capture_failed";if(t==="authorization_expired"||t.includes("expired")||t.includes("expiry"))return"authorization_expired";if(t==="authentication_required"||t.includes("3ds")||t.includes("three_d")||t.includes("authentication")||t.includes("action_required"))return"authentication_required";if(t==="authorization_declined"||t.includes("declin")||t.includes("authorization_fail"))return"authorization_declined"}function vt(e){return B[e.toUpperCase()]??v}function Mt(e){return/^pk_(test|live)_[A-Za-z0-9]+$/.test(e)}function Nt(e){return/^sk_(test|live)_[A-Za-z0-9]+$/.test(e)}function Dt(e){return typeof e=="string"&&e.startsWith("seti_")}var Lt="Idempotency-Key",D=255,Ot="IdempotencyKeyInProgress";function Zr(){let e=globalThis.crypto;if(e&&(typeof e.randomUUID=="function"||typeof e.getRandomValues=="function"))return e}function Ce(){let e=Zr();if(!e)return;if(typeof e.randomUUID=="function")return e.randomUUID();let t=new Uint8Array(16);return e.getRandomValues(t),Array.from(t,r=>r.toString(16).padStart(2,"0")).join("")}function Ut(e){if(e===void 0)return Ce();if(typeof e!="string"||e.trim()==="")throw new u("idempotencyKey must be a non-empty string identifying exactly one checkout creation.","validation_error",{code:"InvalidIdempotencyKey",param:"idempotencyKey"});if(e.length>D)throw new u(`idempotencyKey must be at most ${D} characters.`,"validation_error",{code:"InvalidIdempotencyKey",param:"idempotencyKey"});return e}var L=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;function wt(e){return typeof e=="string"&&L.test(e)}function Gt(){try{let r=globalThis.crypto.randomUUID();if(L.test(r))return r}catch{}let e=new Uint8Array(16);try{globalThis.crypto.getRandomValues(e)}catch{for(let r=0;r<e.length;r+=1)e[r]=Math.floor(Math.random()*256)}e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=[...e].map(r=>r.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}0&&(module.exports={BILLING_API_URL,BILLING_API_URL_PRODUCTION,BILLING_API_URL_STAGING,BOLD_DARK_APPEARANCE,BOLD_LIGHT_APPEARANCE,BUTTONS_LAYOUT_BOLD_DARK,BUTTONS_LAYOUT_BOLD_LIGHT,BUTTONS_LAYOUT_DARK,BUTTONS_LAYOUT_DEFAULT,BUTTONS_LAYOUT_GLASS_DARK,BUTTONS_LAYOUT_GLASS_LIGHT,BUTTONS_LAYOUT_MINIMAL,BUTTONS_LAYOUT_MODERN_DARK,BUTTONS_LAYOUT_MODERN_LIGHT,BUTTONS_LAYOUT_ROUNDED,CA_PROVINCES,COUNTRY_OPTIONS,CURRENCY_MAP,DEFAULT_API_BASE_URL,DEFAULT_API_VERSION,DEFAULT_APPEARANCE,DEFAULT_CURRENCY,ELEMENT_TYPES,FLAT_APPEARANCE,FLO_SDK_VERSION_HEADER,FloPayError,GLASS_DARK_APPEARANCE,GLASS_LIGHT_APPEARANCE,IDEMPOTENCY_IN_PROGRESS_CODE,IDEMPOTENCY_KEY_HEADER,MAX_IDEMPOTENCY_KEY_LENGTH,MODERN_DARK_APPEARANCE,MODERN_LIGHT_APPEARANCE,NIGHT_APPEARANCE,SDK_VERSION,STRIPE_EXPRESS_METHODS,STRIPE_METHOD_AMOUNT_LIMITS,STRIPE_METHOD_COUNTRIES,STRIPE_METHOD_CURRENCIES,STRIPE_METHOD_MATRIX,SUPPORTED_CARD_BRANDS,TELEMETRY_ERROR_CODES,TELEMETRY_FAILURE_CATEGORIES,TELEMETRY_LOG_NAMES,TELEMETRY_MAX_BATCH_BYTES,TELEMETRY_MAX_BATCH_EVENTS,TELEMETRY_SCHEMA_VERSION,TELEMETRY_SDK_PACKAGES,THEMES,US_STATES,UUID_V4,apiError,assertCaptureMethodEligible,authenticationError,buildCheckoutDisplayData,buildItemPayload,buildProductPayload,buildSubscriptionPayload,buildTelemetryErrorEvent,buildTelemetryLogEvent,buildTelemetryPerformanceEvent,buildTelemetryTerminalEvent,classifyPaymentRejection,classifyTelemetryFailure,configureFlopay,dropThirdPartyOnlyError,filterStripeMethodsByAmount,filterStripeMethodsByCountry,filterStripeMethodsByCurrency,foldIntoProducts,generateIdempotencyKey,getConfiguredBillingApiUrl,getCountryByCode,getCurrencyByCountry,getFloPayEnvironment,getPostalCodeExample,getPostalCodeLabel,getStateFromPostalCode,getStateLabel,getStateOptions,getStripeMethodDisplayName,hasVendoredStripeMethodLogo,isAVSEnabled,isAVSFieldVisible,isAuthorizationOnlySession,isCardSetupCheckoutSession,isDetachedSessionEligible,isMoneySettledOutcome,isPostalCodeSupported,isSetupIntentClientSecret,isUuidV4,isValidPostalCode,isValidPublishableKey,isValidSecretKey,needsStripeMethodExplicitConfirm,networkError,normalizeCheckoutFailureOutcome,normalizeGatewayEnvironment,partitionStripeMethods,randomUuidV4,rateLimitError,resolveAVSConfig,resolveBillingApiUrl,resolveButtonsLayoutTheme,resolveIdempotencyKey,resolveSessionCurrency,resolveStripeMethodBrandVariant,resolveTheme,serializeTelemetryBatch,stripeExpressMethodToOptionKey,telemetryStatusClass,validationError});
|
|
1
|
+
"use strict";var Xt=Object.create;var f=Object.defineProperty;var $t=Object.getOwnPropertyDescriptor;var Jt=Object.getOwnPropertyNames;var Qt=Object.getPrototypeOf,er=Object.prototype.hasOwnProperty;var tr=(e,t)=>{for(var r in t)f(e,r,{get:t[r],enumerable:!0})},fe=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Jt(t))!er.call(e,n)&&n!==r&&f(e,n,{get:()=>t[n],enumerable:!(o=$t(t,n))||o.enumerable});return e};var rr=(e,t,r)=>(r=e!=null?Xt(Qt(e)):{},fe(t||!e||!e.__esModule?f(r,"default",{value:e,enumerable:!0}):r,e)),or=e=>fe(f({},"__esModule",{value:!0}),e);var Qr={};tr(Qr,{BILLING_API_URL:()=>Ye,BILLING_API_URL_PRODUCTION:()=>G,BILLING_API_URL_STAGING:()=>C,BOLD_DARK_APPEARANCE:()=>H,BOLD_LIGHT_APPEARANCE:()=>z,BUTTONS_LAYOUT_BOLD_DARK:()=>A,BUTTONS_LAYOUT_BOLD_LIGHT:()=>T,BUTTONS_LAYOUT_DARK:()=>$,BUTTONS_LAYOUT_DEFAULT:()=>j,BUTTONS_LAYOUT_GLASS_DARK:()=>_,BUTTONS_LAYOUT_GLASS_LIGHT:()=>I,BUTTONS_LAYOUT_MINIMAL:()=>Z,BUTTONS_LAYOUT_MODERN_DARK:()=>S,BUTTONS_LAYOUT_MODERN_LIGHT:()=>h,BUTTONS_LAYOUT_ROUNDED:()=>X,CA_PROVINCES:()=>ie,COUNTRY_OPTIONS:()=>oe,CURRENCY_MAP:()=>P,DEFAULT_API_BASE_URL:()=>Ke,DEFAULT_API_VERSION:()=>He,DEFAULT_APPEARANCE:()=>V,DEFAULT_CURRENCY:()=>R,ELEMENT_TYPES:()=>it,FLAT_APPEARANCE:()=>qe,FLO_INSTRUMENT_CATALOG:()=>bt,FLO_INSTRUMENT_SCHEMA_VERSION:()=>ft,FLO_SDK_VERSION_HEADER:()=>Ge,FloPayError:()=>d,GLASS_DARK_APPEARANCE:()=>W,GLASS_LIGHT_APPEARANCE:()=>q,IDEMPOTENCY_IN_PROGRESS_CODE:()=>Et,IDEMPOTENCY_KEY_HEADER:()=>Ct,MAX_IDEMPOTENCY_KEY_LENGTH:()=>k,MODERN_DARK_APPEARANCE:()=>Y,MODERN_LIGHT_APPEARANCE:()=>K,NIGHT_APPEARANCE:()=>We,PAYPAL_VAULTED_PAYMENT_METHOD_TYPE:()=>Ve,SDK_VERSION:()=>we,STRIPE_EXPRESS_METHODS:()=>Q,STRIPE_METHOD_AMOUNT_LIMITS:()=>re,STRIPE_METHOD_COUNTRIES:()=>te,STRIPE_METHOD_CURRENCIES:()=>ee,STRIPE_METHOD_MATRIX:()=>y,SUPPORTED_CARD_BRANDS:()=>st,TELEMETRY_ERROR_CODES:()=>ce,TELEMETRY_FAILURE_CATEGORIES:()=>le,TELEMETRY_LOG_NAMES:()=>pe,TELEMETRY_MAX_BATCH_BYTES:()=>kt,TELEMETRY_MAX_BATCH_EVENTS:()=>vt,TELEMETRY_SCHEMA_VERSION:()=>Rt,TELEMETRY_SDK_PACKAGES:()=>de,THEMES:()=>J,US_STATES:()=>ae,UUID_V4:()=>D,apiError:()=>Ae,assertCaptureMethodEligible:()=>Re,authenticationError:()=>Ie,buildCheckoutDisplayData:()=>gt,buildItemPayload:()=>Be,buildProductPayload:()=>ve,buildSubscriptionPayload:()=>Ne,buildTelemetryErrorEvent:()=>me,buildTelemetryLogEvent:()=>ye,buildTelemetryPerformanceEvent:()=>Ce,buildTelemetryTerminalEvent:()=>ge,classifyPaymentRejection:()=>Lt,classifyTelemetryFailure:()=>Dt,configureFlopay:()=>Me,dropThirdPartyOnlyError:()=>Pt,filterStripeMethodsByAmount:()=>nt,filterStripeMethodsByCountry:()=>ot,filterStripeMethodsByCurrency:()=>rt,foldIntoProducts:()=>U,generateIdempotencyKey:()=>se,getConfiguredBillingApiUrl:()=>x,getCountryByCode:()=>ct,getCurrencyByCountry:()=>Gt,getFloPayEnvironment:()=>Le,getPostalCodeExample:()=>It,getPostalCodeLabel:()=>ut,getStateFromPostalCode:()=>xt,getStateLabel:()=>yt,getStateOptions:()=>mt,getStripeMethodDisplayName:()=>Qe,hasVendoredStripeMethodLogo:()=>Je,isAVSEnabled:()=>pt,isAVSFieldVisible:()=>lt,isAuthorizationOnlySession:()=>xe,isCardSetupCheckoutSession:()=>be,isDetachedSessionEligible:()=>ke,isMoneySettledOutcome:()=>he,isPostalCodeSupported:()=>Tt,isSetupIntentClientSecret:()=>Yt,isUuidV4:()=>Ut,isValidPostalCode:()=>At,isValidPublishableKey:()=>Vt,isValidSecretKey:()=>Kt,needsStripeMethodExplicitConfirm:()=>et,networkError:()=>Pe,normalizeCheckoutFailureOutcome:()=>Se,normalizeGatewayEnvironment:()=>Ot,partitionStripeMethods:()=>at,randomUuidV4:()=>wt,rateLimitError:()=>_e,resolveAVSConfig:()=>ne,resolveBillingApiUrl:()=>ze,resolveButtonsLayoutTheme:()=>je,resolveIdempotencyKey:()=>Ft,resolveSessionCurrency:()=>b,resolveStripeMethodBrandVariant:()=>tt,resolveTheme:()=>Ze,serializeTelemetryBatch:()=>Mt,stripeExpressMethodToOptionKey:()=>Xe,telemetryStatusClass:()=>L,validationError:()=>Te});module.exports=or(Qr);function be(e){return e.checkoutMode==="setup"&&e.amount===0&&(e.products?.length??0)===0}function xe(e){return e?.captureMethod==="manual"}function he(e,t){return e==="requires_capture"?t!=="manual":e==="succeeded"||e==="complete"||e==="completed"||e==="captured"||e==="paid"}function Se(e){if(typeof e!="string"||e.length===0)return;let t=e.trim().toLowerCase().replace(/[\s-]+/g,"_");if(t==="capture_failed"||t.includes("capture")&&(t.includes("fail")||t.includes("error")))return"capture_failed";if(t==="authorization_expired"||t.includes("expired")||t.includes("expiry"))return"authorization_expired";if(t==="authentication_required"||t.includes("3ds")||t.includes("three_d")||t.includes("authentication")||t.includes("action_required"))return"authentication_required";if(t==="authorization_declined"||t.includes("declin")||t.includes("authorization_fail"))return"authorization_declined"}var d=class extends Error{constructor(t,r,o){super(t),this.name="FloPayError",this.type=r,this.code=o?.code,this.declineCode=o?.declineCode,this.param=o?.param,this.statusCode=o?.statusCode,Object.setPrototypeOf(this,new.target.prototype)}};function Te(e,t){return new d(e,"validation_error",{param:t})}function Ae(e,t,r){return new d(e,"api_error",{code:t,statusCode:r})}function Ie(e){return new d(e,"authentication_error")}function _e(e){return new d(e,"rate_limit_error")}function Pe(e){return new d(e,"network_error")}function Re(e){if(!(e.captureMethod!=="manual"||!(e.products??U(e.items,e.subscriptions)).some(r=>r.type==="subscription")))throw new d("Manual capture is not supported for subscription products.","validation_error",{code:"CaptureMethodUnsupportedForSubscription",param:"captureMethod"})}function ke(e){return e.deferDataAttachment!==!1&&(e.checkoutMode??"full")==="full"&&!e.tokenizedData}function a(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function b(e,t,r,o){let n=a(e);if(n)return n;for(let s of t??[]){let c=a(s.currency);if(c)return c}for(let s of r??[]){let c=a(s.currency);if(c)return c}for(let s of o??[]){let c=a(s.currency);if(c)return c}return null}function U(e,t){let r=[];for(let o of t??[])r.push({type:"subscription",code:a(o.code)??a(o.providerPlanId),providerPlanId:o.providerPlanId,name:a(o.subscriptionName)??a(o.providerPlanName)??null,subscriptionName:o.subscriptionName??null,providerPlanName:o.providerPlanName??null,quantity:o.quantity,totalAmount:o.totalAmount,overrideAmount:o.overrideAmount,currency:o.currency,metadata:o.metadata});for(let o of e??[])r.push({type:"item",code:a(o.code)??a(o.providerItemId),providerItemId:o.providerItemId,name:a(o.itemName)??a(o.providerItemName)??null,itemName:o.itemName??null,providerItemName:o.providerItemName??null,quantity:o.quantity,totalAmount:o.totalAmount,overrideAmount:o.overrideAmount,currency:o.currency,metadata:o.metadata});return r}function ve(e,t){let r=a(e.code)??a(e.providerItemId)??a(e.providerPlanId);if(!r)throw new Error("CheckoutProduct requires `code` (or the deprecated `providerItemId` / `providerPlanId`).");let o=a(e.name)??a(e.itemName)??a(e.providerItemName)??a(e.subscriptionName)??a(e.providerPlanName)??null,n={type:e.type,code:r,name:o,quantity:e.quantity??1,totalAmount:e.totalAmount,overrideAmount:e.overrideAmount??null,currency:a(e.currency)??t};return e.metadata&&(n.metadata=e.metadata),n}function Be(e,t){let r=a(e.code)??a(e.providerItemId);if(!r)throw new Error("CheckoutItem requires either `code` or the deprecated `providerItemId`.");let o=a(e.itemName)??a(e.providerItemName)??null,n={code:r,providerItemId:a(e.providerItemId)??r,itemName:o,providerItemName:a(e.providerItemName)??o,quantity:e.quantity??1,totalAmount:e.totalAmount,overrideAmount:e.overrideAmount??null,currency:a(e.currency)??t};return e.metadata&&(n.metadata=e.metadata),n}function Ne(e,t){let r=a(e.code)??a(e.providerPlanId);if(!r)throw new Error("CheckoutSubscription requires either `code` or the deprecated `providerPlanId`.");let o=a(e.subscriptionName)??a(e.providerPlanName)??null,n={code:r,providerPlanId:a(e.providerPlanId)??r,subscriptionName:o,providerPlanName:a(e.providerPlanName)??o,quantity:e.quantity??1,totalAmount:e.totalAmount,overrideAmount:e.overrideAmount??null,currency:a(e.currency)??t};return e.metadata&&(n.metadata=e.metadata),n}var nr={local:"https://flo.ngrok.pro",staging:"https://api.stage.flopay.com",production:"https://api.flopay.com"},w="staging";function Me(e){w=e.environment}function x(){return nr[w]}function Le(){return w}var De=["alipay","bancontact","blik","eps","giropay","ideal","klarna","p24","sepa_debit","wechat_pay"];var we="1.7.0",Ge="x-flo-sdk-version",Ve="paypal_vaulted",C="https://api.stage.flopay.com",G="https://api.flopay.com",Ke=C,Ye=C;function ze(e){return e||(typeof process<"u"&&process.env?.NEXT_PUBLIC_FLOPAY_ENV?process.env.NEXT_PUBLIC_FLOPAY_ENV==="production"?G:C:x())}var He="2024-01-01",V={theme:"default",variables:{colorPrimary:"#4A49FF",colorBackground:"#FFFFFF",colorText:"#262833",colorDanger:"#DF1B41",borderRadius:"8px",fontFamily:"Poppins, system-ui, sans-serif",fontSizeBase:"16px",spacingUnit:"4px"}},qe={theme:"flat",variables:{...V.variables,borderRadius:"4px"}},We={theme:"night",variables:{colorPrimary:"#7B7BFF",colorBackground:"#1A1A2E",colorText:"#E0E0E0",colorDanger:"#FF6B6B",borderRadius:"8px",fontFamily:"Poppins, system-ui, sans-serif",fontSizeBase:"16px",spacingUnit:"4px"}},K={theme:"default",variables:{colorPrimary:"#1785E0",colorBackground:"#FFFFFF",colorText:"#0F172A",colorDanger:"#EF4444",borderRadius:"12px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"15px",spacingUnit:"5px"},rules:{".Input":{padding:"14px 16px",border:"1.5px solid #E5E7EB",boxShadow:"0 1px 2px rgba(15,23,42,0.04)"},".Input:focus":{borderColor:"#1785E0",boxShadow:"0 0 0 4px rgba(23,133,224,0.12)"},".Label":{fontWeight:"500",color:"#475569",marginBottom:"6px"},".Tab":{padding:"12px 16px",borderRadius:"12px",border:"1.5px solid #E5E7EB"},".Tab:hover":{borderColor:"#CBD5E1"},".Tab--selected":{borderColor:"#1785E0",boxShadow:"0 0 0 1px #1785E0"}}},Y={theme:"night",variables:{colorPrimary:"#60A5FA",colorBackground:"#0B1220",colorText:"#F1F5F9",colorDanger:"#F87171",borderRadius:"12px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"15px",spacingUnit:"5px"},rules:{".Input":{backgroundColor:"#111827",padding:"14px 16px",border:"1.5px solid #1F2937",color:"#F1F5F9",boxShadow:"none"},".Input:focus":{borderColor:"#60A5FA",boxShadow:"0 0 0 4px rgba(96,165,250,0.18)"},".Label":{fontWeight:"500",color:"#94A3B8",marginBottom:"6px"},".Tab":{padding:"12px 16px",borderRadius:"12px",border:"1.5px solid #1F2937",backgroundColor:"#111827",color:"#F1F5F9"},".Tab:hover":{borderColor:"#374151"},".Tab--selected":{borderColor:"#60A5FA",boxShadow:"0 0 0 1px #60A5FA"}}},z={theme:"default",variables:{colorPrimary:"#1785E0",colorBackground:"#FFFFFF",colorText:"#0C2B4D",colorDanger:"#DC2626",borderRadius:"12px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"16px",spacingUnit:"5px"},rules:{".Input":{padding:"14px 16px",border:"2px solid #E5E7EB"},".Input:focus":{borderColor:"#1785E0",boxShadow:"0 0 0 3px rgba(23,133,224,0.2)"},".Label":{fontWeight:"600",color:"#0C2B4D"},".Tab":{padding:"14px 18px",border:"2px solid #E5E7EB",fontWeight:"600"},".Tab--selected":{borderColor:"#1785E0",boxShadow:"0 0 0 1px #1785E0"}}},H={theme:"night",variables:{colorPrimary:"#60A5FA",colorBackground:"#0C2B4D",colorText:"#FFFFFF",colorDanger:"#F87171",borderRadius:"12px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"16px",spacingUnit:"5px"},rules:{".Input":{backgroundColor:"#1E3A8A",padding:"14px 16px",border:"2px solid #1E40AF",color:"#FFFFFF"},".Input:focus":{borderColor:"#60A5FA",boxShadow:"0 0 0 3px rgba(96,165,250,0.25)"},".Label":{fontWeight:"600",color:"#DBEAFE"},".Tab":{padding:"14px 18px",border:"2px solid #1E40AF",backgroundColor:"#1E3A8A",color:"#FFFFFF",fontWeight:"600"},".Tab--selected":{borderColor:"#60A5FA",boxShadow:"0 0 0 1px #60A5FA"}}},q={theme:"default",variables:{colorPrimary:"#1785E0",colorBackground:"#FFFFFF",colorText:"#1E293B",colorDanger:"#EF4444",borderRadius:"16px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"15px",spacingUnit:"5px"},rules:{".Input":{backgroundColor:"rgba(255,255,255,0.6)",backdropFilter:"blur(10px)",padding:"14px 16px",border:"1px solid rgba(255,255,255,0.6)",boxShadow:"inset 0 1px 0 rgba(255,255,255,0.5), 0 1px 3px rgba(23,133,224,0.08)"},".Input:focus":{borderColor:"rgba(23,133,224,0.5)",boxShadow:"0 0 0 3px rgba(23,133,224,0.15)"},".Label":{fontWeight:"500",color:"#475569"},".Tab":{padding:"12px 16px",backgroundColor:"rgba(255,255,255,0.5)",border:"1px solid rgba(255,255,255,0.6)",borderRadius:"14px"},".Tab--selected":{borderColor:"rgba(23,133,224,0.6)",boxShadow:"0 0 0 1px rgba(23,133,224,0.6)"}}},W={theme:"night",variables:{colorPrimary:"#60A5FA",colorBackground:"#0F172A",colorText:"#F1F5F9",colorDanger:"#F87171",borderRadius:"16px",fontFamily:"Inter, system-ui, sans-serif",fontSizeBase:"15px",spacingUnit:"5px"},rules:{".Input":{backgroundColor:"rgba(15,23,42,0.6)",backdropFilter:"blur(10px)",padding:"14px 16px",border:"1px solid rgba(255,255,255,0.08)",color:"#F1F5F9"},".Input:focus":{borderColor:"rgba(96,165,250,0.5)",boxShadow:"0 0 0 3px rgba(96,165,250,0.2)"},".Label":{fontWeight:"500",color:"#94A3B8"},".Tab":{padding:"12px 16px",backgroundColor:"rgba(15,23,42,0.6)",border:"1px solid rgba(255,255,255,0.08)",borderRadius:"14px",color:"#F1F5F9"},".Tab--selected":{borderColor:"rgba(96,165,250,0.6)",boxShadow:"0 0 0 1px rgba(96,165,250,0.6)"}}},j={},Z={cardButton:{border:"none",backgroundColor:"#f9fafb",boxShadow:"none"},cardFormContainer:{backgroundColor:"#f9fafb",border:"none"},cardInputBorder:"#e5e7eb",backButtonIcon:{backgroundColor:"#e5e7eb"},submitButton:{borderRadius:"6px"}},X={cardButton:{borderRadius:"9999px",border:"1px solid #e5e7eb",boxShadow:"0 1px 3px rgba(0,0,0,0.06)"},cardFormContainer:{borderRadius:"16px",border:"1px solid #e5e7eb",boxShadow:"0 2px 8px rgba(0,0,0,0.06)"},cardInputBorder:"#d1d5db",submitButton:{borderRadius:"9999px"},backButtonIcon:{backgroundColor:"#f3f4f6"}},$={cardButton:{backgroundColor:"#1f2937",color:"#f9fafb",border:"1px solid #374151",boxShadow:"none"},cardFormContainer:{backgroundColor:"#111827",border:"1px solid #374151"},cardInputBorder:"#4b5563",cardInputColor:"#f9fafb",cardInputPlaceholderColor:"#6b7280",cardInputBackground:"#1f2937",nameInput:{backgroundColor:"#1f2937",color:"#f9fafb"},backButton:{color:"#9ca3af"},backButtonIcon:{backgroundColor:"#374151"},submitButton:{backgroundColor:"#6366f1"},title:{color:"#f9fafb"},countrySelect:{backgroundColor:"#1f2937",color:"#f9fafb"},zipInput:{backgroundColor:"#1f2937",color:"#f9fafb"}},h={cardFormContainer:{backgroundColor:"#FAFAFA",borderRadius:"20px",border:"1px solid #E5E7EB",boxShadow:"0 8px 24px rgba(15,23,42,0.04)",padding:"24px"},cardButton:{backgroundColor:"#FFFFFF",borderRadius:"14px",border:"1.5px solid #E5E7EB",boxShadow:"0 1px 2px rgba(15,23,42,0.04)",padding:"14px 18px"},cardInputBorder:"#E5E7EB",nameInput:{backgroundColor:"#FFFFFF",border:"1.5px solid #E5E7EB",borderRadius:"14px",padding:"14px 16px"},submitButton:{backgroundColor:"#1785E0",borderRadius:"14px",padding:"16px 24px",boxShadow:"0 4px 14px rgba(23,133,224,0.25)",fontWeight:"600"},title:{color:"#0F172A",fontWeight:"600"},titleFontSize:"20px",backButton:{color:"#64748B"},backButtonIcon:{backgroundColor:"#F1F5F9"}},S={cardFormContainer:{backgroundColor:"#111827",borderRadius:"20px",border:"1px solid #1F2937",boxShadow:"0 8px 24px rgba(0,0,0,0.2)",padding:"24px"},cardButton:{backgroundColor:"#0B1220",borderRadius:"14px",border:"1.5px solid #1F2937",color:"#F1F5F9",padding:"14px 18px"},cardInputBorder:"#1F2937",cardInputBackground:"#111827",cardInputColor:"#F1F5F9",cardInputPlaceholderColor:"#64748B",nameInput:{backgroundColor:"#111827",border:"1.5px solid #1F2937",borderRadius:"14px",padding:"14px 16px",color:"#F1F5F9"},submitButton:{backgroundColor:"#60A5FA",borderRadius:"14px",padding:"16px 24px",boxShadow:"0 4px 14px rgba(96,165,250,0.3)",fontWeight:"600",color:"#0B1220"},title:{color:"#F1F5F9",fontWeight:"600"},titleFontSize:"20px",backButton:{color:"#94A3B8"},backButtonIcon:{backgroundColor:"#1F2937"},countrySelect:{backgroundColor:"#111827",color:"#F1F5F9"},zipInput:{backgroundColor:"#111827",color:"#F1F5F9"}},T={cardFormContainer:{backgroundColor:"#EFF6FF",borderRadius:"20px",border:"2px solid #1785E0",padding:"24px"},cardButton:{backgroundColor:"#FFFFFF",borderRadius:"12px",border:"2px solid #1785E0",color:"#1785E0",fontWeight:"700",padding:"14px 18px"},cardInputBorder:"#E5E7EB",nameInput:{backgroundColor:"#FFFFFF",border:"2px solid #E5E7EB",borderRadius:"12px",padding:"14px 16px",fontWeight:"500"},submitButton:{background:"linear-gradient(135deg, #1785E0 0%, #0EA5E9 100%)",borderRadius:"9999px",padding:"16px 24px",boxShadow:"0 10px 25px rgba(23,133,224,0.35)",fontWeight:"700",color:"#FFFFFF",border:"none"},submitButtonFontSize:"17px",title:{color:"#0C2B4D",fontWeight:"800",letterSpacing:"-0.02em"},titleFontSize:"22px",backButton:{color:"#1785E0",fontWeight:"600"},backButtonIcon:{backgroundColor:"#DBEAFE"}},A={cardFormContainer:{backgroundColor:"#1E3A8A",borderRadius:"20px",border:"2px solid #60A5FA",padding:"24px"},cardButton:{backgroundColor:"#0C2B4D",borderRadius:"12px",border:"2px solid #60A5FA",color:"#60A5FA",fontWeight:"700",padding:"14px 18px"},cardInputBorder:"#1E40AF",cardInputBackground:"#1E3A8A",cardInputColor:"#FFFFFF",cardInputPlaceholderColor:"#60A5FA",nameInput:{backgroundColor:"#1E3A8A",border:"2px solid #1E40AF",borderRadius:"12px",padding:"14px 16px",fontWeight:"500",color:"#FFFFFF"},submitButton:{background:"linear-gradient(135deg, #60A5FA 0%, #38BDF8 100%)",borderRadius:"9999px",padding:"16px 24px",boxShadow:"0 10px 25px rgba(96,165,250,0.35)",fontWeight:"700",color:"#FFFFFF",border:"none"},submitButtonFontSize:"17px",title:{color:"#FFFFFF",fontWeight:"800",letterSpacing:"-0.02em"},titleFontSize:"22px",backButton:{color:"#DBEAFE",fontWeight:"600"},backButtonIcon:{backgroundColor:"#1E40AF"},countrySelect:{backgroundColor:"#1E3A8A",color:"#FFFFFF"},zipInput:{backgroundColor:"#1E3A8A",color:"#FFFFFF"}},I={cardFormContainer:{background:"linear-gradient(135deg, #DBEAFE 0%, #BFDBFE 100%)",borderRadius:"24px",border:"1px solid rgba(255,255,255,0.6)",boxShadow:"inset 0 1px 0 rgba(255,255,255,0.6), 0 12px 40px rgba(23,133,224,0.15)",padding:"28px"},cardButton:{backgroundColor:"rgba(255,255,255,0.7)",backdropFilter:"blur(20px)",borderRadius:"16px",border:"1px solid rgba(255,255,255,0.6)",boxShadow:"inset 0 1px 0 rgba(255,255,255,0.5), 0 4px 16px rgba(23,133,224,0.1)",padding:"14px 18px"},cardInputBorder:"rgba(255,255,255,0.6)",nameInput:{backgroundColor:"rgba(255,255,255,0.6)",backdropFilter:"blur(10px)",border:"1px solid rgba(255,255,255,0.6)",borderRadius:"14px",padding:"14px 16px"},submitButton:{backgroundColor:"rgba(23,133,224,0.95)",backdropFilter:"blur(10px)",borderRadius:"16px",padding:"16px 24px",boxShadow:"0 10px 30px rgba(23,133,224,0.3), inset 0 1px 0 rgba(255,255,255,0.2)",fontWeight:"600",color:"#FFFFFF"},title:{color:"#1E293B",fontWeight:"600",letterSpacing:"-0.01em"},titleFontSize:"20px",backButton:{color:"#1785E0",fontWeight:"500"},backButtonIcon:{backgroundColor:"rgba(255,255,255,0.7)"}},_={cardFormContainer:{background:"linear-gradient(135deg, #0C2B4D 0%, #0F172A 100%)",borderRadius:"24px",border:"1px solid rgba(255,255,255,0.08)",boxShadow:"inset 0 1px 0 rgba(255,255,255,0.06), 0 20px 50px rgba(0,0,0,0.4)",padding:"28px"},cardButton:{backgroundColor:"rgba(15,23,42,0.6)",backdropFilter:"blur(20px)",borderRadius:"16px",border:"1px solid rgba(255,255,255,0.08)",boxShadow:"inset 0 1px 0 rgba(255,255,255,0.05), 0 4px 16px rgba(0,0,0,0.3)",padding:"14px 18px",color:"#F1F5F9"},cardInputBorder:"rgba(255,255,255,0.08)",cardInputBackground:"rgba(15,23,42,0.6)",cardInputColor:"#F1F5F9",cardInputPlaceholderColor:"#64748B",nameInput:{backgroundColor:"rgba(15,23,42,0.6)",backdropFilter:"blur(10px)",border:"1px solid rgba(255,255,255,0.08)",borderRadius:"14px",padding:"14px 16px",color:"#F1F5F9"},submitButton:{backgroundColor:"rgba(96,165,250,0.9)",backdropFilter:"blur(10px)",borderRadius:"16px",padding:"16px 24px",boxShadow:"0 10px 30px rgba(96,165,250,0.35), inset 0 1px 0 rgba(255,255,255,0.15)",fontWeight:"600",color:"#0F172A"},title:{color:"#F1F5F9",fontWeight:"600",letterSpacing:"-0.01em"},titleFontSize:"20px",backButton:{color:"#60A5FA",fontWeight:"500"},backButtonIcon:{backgroundColor:"rgba(255,255,255,0.08)"},countrySelect:{backgroundColor:"rgba(15,23,42,0.6)",color:"#F1F5F9"},zipInput:{backgroundColor:"rgba(15,23,42,0.6)",color:"#F1F5F9"}};function je(e){switch(e){case"minimal":return Z;case"rounded":return X;case"dark":return $;case"modern-light":return h;case"modern-dark":return S;case"bold-light":return T;case"bold-dark":return A;case"glass-light":return I;case"glass-dark":return _;default:return j}}var J={"modern-light":{appearance:K,buttonsLayout:h},"modern-dark":{appearance:Y,buttonsLayout:S},"bold-light":{appearance:z,buttonsLayout:T},"bold-dark":{appearance:H,buttonsLayout:A},"glass-light":{appearance:q,buttonsLayout:I},"glass-dark":{appearance:W,buttonsLayout:_}};function Ze(e){if(!(!e||e==="classic"))return J[e]}function Xe(e){switch(e){case"apple_pay":return"applePay";case"google_pay":return"googlePay";case"amazon_pay":return"amazonPay";default:return e}}function i(e,t,r){return`<svg viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true"><circle cx="11" cy="11" r="11" fill="${t}"/><text x="11" y="15.5" text-anchor="middle" font-size="13" font-weight="700" font-family="-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif" fill="${r}">${e}</text></svg>`}function Oe(e,t){return`<svg viewBox="0 0 22 22" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true"><circle cx="11" cy="11" r="11" fill="${e}"/><g fill="${t}"><path d="M11 4 L17.5 8 L4.5 8 Z"/><rect x="5" y="8.4" width="12" height="1.2" rx="0.3"/><rect x="5.9" y="10" width="1.5" height="5"/><rect x="8.55" y="10" width="1.5" height="5"/><rect x="11.95" y="10" width="1.5" height="5"/><rect x="14.6" y="10" width="1.5" height="5"/><rect x="4.6" y="15.4" width="12.8" height="1.5" rx="0.3"/></g></svg>`}var $e=["AT","BE","BG","CY","CZ","DE","DK","EE","ES","FI","FR","GR","HR","HU","IE","IT","LT","LU","LV","MT","NL","PL","PT","RO","SE","SI","SK","IS","LI","NO","CH","GB","MC","SM","AD","VA"],ar=[...$e,"JP","MX","US"],y={apple_pay:{displayName:"Apple Pay",currencies:["*"],express:!0,needsExplicitConfirm:!1},google_pay:{displayName:"Google Pay",currencies:["*"],express:!0,needsExplicitConfirm:!1},paypal:{displayName:"PayPal",currencies:["eur","gbp","usd","cad","aud","nzd","chf","jpy","pln","sek","nok","dkk","czk","huf"],express:!0,needsExplicitConfirm:!1},link:{displayName:"Link",currencies:["usd","eur"],express:!0,needsExplicitConfirm:!1},amazon_pay:{displayName:"Amazon Pay",currencies:["usd","eur","gbp"],express:!0,needsExplicitConfirm:!1},klarna:{displayName:"Klarna",currencies:["usd","eur","gbp","aud","nzd","cad","chf","sek","nok","dkk","pln","czk","ron"],amounts:{usd:{min:100},eur:{min:100},gbp:{min:100}},theme:{light:{backgroundColor:"#FFB3C7",textColor:"#0A0B09",borderColor:"#FFB3C7",logoSvg:i("K","#0A0B09","#FFB3C7")},dark:{backgroundColor:"#FFB3C7",textColor:"#0A0B09",borderColor:"#FFB3C7",logoSvg:i("K","#0A0B09","#FFB3C7")}}},affirm:{displayName:"Affirm",currencies:["usd"],countries:["US","CA"],amounts:{usd:{min:3500,max:3e6}},needsExplicitConfirm:!1,theme:{light:{backgroundColor:"#060F33",textColor:"#FFFFFF",borderColor:"#060F33",logoSvg:i("a","#FFFFFF","#060F33")},dark:{backgroundColor:"#0FA0EA",textColor:"#060F33",borderColor:"#0FA0EA",logoSvg:i("a","#060F33","#FFFFFF")}}},cashapp:{displayName:"Cash App Pay",currencies:["usd"],countries:["US"],amounts:{usd:{min:50,max:99999999}},needsExplicitConfirm:!1,theme:{light:{backgroundColor:"#00D54B",textColor:"#0A1F0E",borderColor:"#00D54B",logoSvg:i("$","#0A1F0E","#00D54B")},dark:{backgroundColor:"#00D54B",textColor:"#0A1F0E",borderColor:"#00D54B",logoSvg:i("$","#0A1F0E","#00D54B")}}},afterpay_clearpay:{displayName:"Afterpay",currencies:["usd","aud","cad","gbp","nzd"],countries:["US","CA","GB","AU","NZ"],amounts:{usd:{min:100,max:2e5},cad:{min:100,max:2e5},gbp:{min:100,max:12e4},aud:{min:100,max:2e5},nzd:{min:100,max:2e5}},theme:{light:{backgroundColor:"#B2FCE4",textColor:"#0A0B09",borderColor:"#B2FCE4",logoSvg:i("A","#0A0B09","#B2FCE4")},dark:{backgroundColor:"#B2FCE4",textColor:"#0A0B09",borderColor:"#B2FCE4",logoSvg:i("A","#0A0B09","#B2FCE4")}}},alipay:{displayName:"Alipay",currencies:["usd","cny"],theme:{light:{backgroundColor:"#1677FF",textColor:"#FFFFFF",borderColor:"#1677FF",logoSvg:i("A","#FFFFFF","#1677FF")},dark:{backgroundColor:"#1677FF",textColor:"#FFFFFF",borderColor:"#1677FF",logoSvg:i("A","#FFFFFF","#1677FF")}}},au_becs_debit:{displayName:"BECS Direct Debit",currencies:["aud"],countries:["AU"]},bacs_debit:{displayName:"Bacs Debit",currencies:["gbp"],countries:["GB"]},bancontact:{displayName:"Bancontact",currencies:["eur"],countries:["BE"],theme:{light:{backgroundColor:"#FFDD55",textColor:"#1E3791",borderColor:"#FFDD55",logoSvg:i("B","#1E3791","#FFDD55")},dark:{backgroundColor:"#1E3791",textColor:"#FFDD55",borderColor:"#1E3791",logoSvg:i("B","#FFDD55","#1E3791")}}},bizum:{displayName:"Bizum",currencies:["eur"],countries:["ES"],theme:{light:{backgroundColor:"#00BFB3",textColor:"#FFFFFF",borderColor:"#00BFB3",logoSvg:i("B","#FFFFFF","#00BFB3")},dark:{backgroundColor:"#00BFB3",textColor:"#FFFFFF",borderColor:"#00BFB3",logoSvg:i("B","#FFFFFF","#00BFB3")}}},blik:{displayName:"BLIK",currencies:["pln"],countries:["PL"],theme:{light:{backgroundColor:"#000000",textColor:"#FFFFFF",borderColor:"#000000",logoSvg:i("B","#FFFFFF","#000000")},dark:{backgroundColor:"#FFFFFF",textColor:"#000000",borderColor:"#FFFFFF",logoSvg:i("B","#000000","#FFFFFF")}}},boleto:{displayName:"Boleto",currencies:["brl"],countries:["BR"]},customer_balance:{displayName:"Bank Transfer",currencies:["eur","usd"],countries:ar,theme:{light:{backgroundColor:"#1F2937",textColor:"#FFFFFF",borderColor:"#1F2937",logoSvg:Oe("#1F2937","#FFFFFF")},dark:{backgroundColor:"#374151",textColor:"#FFFFFF",borderColor:"#374151",logoSvg:Oe("#374151","#FFFFFF")}}},eps:{displayName:"EPS",currencies:["eur"],countries:["AT"],theme:{light:{backgroundColor:"#C8102E",textColor:"#FFFFFF",borderColor:"#C8102E",logoSvg:i("E","#FFFFFF","#C8102E")},dark:{backgroundColor:"#C8102E",textColor:"#FFFFFF",borderColor:"#C8102E",logoSvg:i("E","#FFFFFF","#C8102E")}}},giropay:{displayName:"Giropay",currencies:["eur"],countries:["DE"],theme:{light:{backgroundColor:"#0F4197",textColor:"#FFFFFF",borderColor:"#0F4197",logoSvg:i("G","#FFFFFF","#0F4197")},dark:{backgroundColor:"#0F4197",textColor:"#FFFFFF",borderColor:"#0F4197",logoSvg:i("G","#FFFFFF","#0F4197")}}},ideal:{displayName:"iDEAL",currencies:["eur"],countries:["NL"],theme:{light:{backgroundColor:"#CC0066",textColor:"#FFFFFF",borderColor:"#CC0066",logoSvg:i("i","#FFFFFF","#CC0066")},dark:{backgroundColor:"#CC0066",textColor:"#FFFFFF",borderColor:"#CC0066",logoSvg:i("i","#FFFFFF","#CC0066")}}},konbini:{displayName:"Konbini",currencies:["jpy"],countries:["JP"]},kr_card:{displayName:"Korean Card",currencies:["krw"],countries:["KR"],theme:{light:{backgroundColor:"#0B3D91",textColor:"#FFFFFF",borderColor:"#0B3D91",logoSvg:i("K","#FFFFFF","#0B3D91")},dark:{backgroundColor:"#0B3D91",textColor:"#FFFFFF",borderColor:"#0B3D91",logoSvg:i("K","#FFFFFF","#0B3D91")}}},multibanco:{displayName:"Multibanco",currencies:["eur"],countries:["PT"]},oxxo:{displayName:"OXXO",currencies:["mxn"],countries:["MX"]},p24:{displayName:"Przelewy24",currencies:["eur","pln"],countries:["PL"],theme:{light:{backgroundColor:"#D90F1B",textColor:"#FFFFFF",borderColor:"#D90F1B",logoSvg:i("P","#FFFFFF","#D90F1B")},dark:{backgroundColor:"#D90F1B",textColor:"#FFFFFF",borderColor:"#D90F1B",logoSvg:i("P","#FFFFFF","#D90F1B")}}},paynow:{displayName:"PayNow",currencies:["sgd"],countries:["SG"]},pix:{displayName:"Pix",currencies:["brl"],countries:["BR"]},promptpay:{displayName:"PromptPay",currencies:["thb"],countries:["TH"]},sepa_debit:{displayName:"SEPA Debit",currencies:["eur"],countries:$e,theme:{light:{backgroundColor:"#10298E",textColor:"#FFFFFF",borderColor:"#10298E",logoSvg:i("\u20AC","#FFFFFF","#10298E")},dark:{backgroundColor:"#3056D3",textColor:"#FFFFFF",borderColor:"#3056D3",logoSvg:i("\u20AC","#FFFFFF","#3056D3")}}},sofort:{displayName:"Sofort",currencies:["eur"],countries:["AT","BE","DE","ES","IT","NL"],theme:{light:{backgroundColor:"#EF809F",textColor:"#FFFFFF",borderColor:"#EF809F",logoSvg:i("S","#FFFFFF","#EF809F")},dark:{backgroundColor:"#EF809F",textColor:"#FFFFFF",borderColor:"#EF809F",logoSvg:i("S","#FFFFFF","#EF809F")}}},upi:{displayName:"UPI",currencies:["inr"],countries:["IN"],theme:{light:{backgroundColor:"#FF7909",textColor:"#FFFFFF",borderColor:"#FF7909",logoSvg:i("U","#FFFFFF","#FF7909")},dark:{backgroundColor:"#FF7909",textColor:"#FFFFFF",borderColor:"#FF7909",logoSvg:i("U","#FFFFFF","#FF7909")}}},us_bank_account:{displayName:"US Bank Account",currencies:["usd"],countries:["US"]},wechat_pay:{displayName:"WeChat Pay",currencies:["usd","cny"],theme:{light:{backgroundColor:"#07C160",textColor:"#FFFFFF",borderColor:"#07C160",logoSvg:i("W","#FFFFFF","#07C160")},dark:{backgroundColor:"#07C160",textColor:"#FFFFFF",borderColor:"#07C160",logoSvg:i("W","#FFFFFF","#07C160")}}},zip:{displayName:"Zip",currencies:["aud"],countries:["AU","NZ"]}};function Je(e){return e?De.includes(e):!1}var Q=Object.entries(y).filter(([,e])=>e.express).map(([e])=>e),ir=new Set(Q),ee=Object.fromEntries(Object.entries(y).map(([e,t])=>[e,t.currencies])),te=Object.fromEntries(Object.entries(y).filter(([,e])=>e.countries).map(([e,t])=>[e,t.countries]));function Qe(e){if(!e)return"this method";let t=y[e];return t?t.displayName:e.split("_").filter(Boolean).map(r=>r.charAt(0).toUpperCase()+r.slice(1)).join(" ")}function et(e){if(!e)return!0;let t=y[e];return t?t.needsExplicitConfirm!==!1:!0}function tt(e,t){if(!e)return null;let r=y[e];return r?.theme?(typeof t=="string"&&t.endsWith("-dark")?r.theme.dark:r.theme.light)??r.theme.light??null:null}function rt(e,t){if(!e?.length)return[];if(!t)return[...e];let r=t.trim().toLowerCase();return r?e.filter(o=>{let n=ee[o];return n?n.includes("*")||n.includes(r):!0}):[...e]}function ot(e,t){if(!e?.length)return[];if(!t)return[...e];let r=t.trim().toUpperCase();return r?e.filter(o=>{let n=te[o];return n?n.includes("*")||n.includes(r):!0}):[...e]}var re=Object.fromEntries(Object.entries(y).filter(([,e])=>e.amounts).map(([e,t])=>[e,t.amounts]));function nt(e,t,r){if(!e?.length)return[];if(!t||typeof r!="number"||!Number.isFinite(r))return[...e];let o=t.trim().toLowerCase();return o?e.filter(n=>{let s=re[n];if(!s)return!0;let c=s[o];return c?!(typeof c.min=="number"&&r<c.min||typeof c.max=="number"&&r>c.max):!0}):[...e]}function at(e,t){if(!e?.length)return{expressMethods:[],paymentElementMethods:[]};let r=[],o=[],n=new Set,s=new Set;for(let c of e){if(typeof c!="string")continue;let p=c.trim();if(!(!p||p==="card")&&!(t?.excludePaypal&&p==="paypal"))if(ir.has(p)){if(n.has(p))continue;n.add(p),r.push(p)}else{if(s.has(p))continue;s.add(p),o.push(p)}}return{expressMethods:r,paymentElementMethods:o}}var it=["payment","address"],st=["visa","mastercard","mastercard_debit","amex","discover"],P={AT:{currency:"EUR",symbol:"\u20AC",country:"Austria",countryCode:"AT",tax:1},BE:{currency:"EUR",symbol:"\u20AC",country:"Belgium",countryCode:"BE",tax:1},CY:{currency:"EUR",symbol:"\u20AC",country:"Cyprus",countryCode:"CY",tax:1},DE:{currency:"EUR",symbol:"\u20AC",country:"Germany",countryCode:"DE",tax:1},EE:{currency:"EUR",symbol:"\u20AC",country:"Estonia",countryCode:"EE",tax:1},ES:{currency:"EUR",symbol:"\u20AC",country:"Spain",countryCode:"ES",tax:1},FI:{currency:"EUR",symbol:"\u20AC",country:"Finland",countryCode:"FI",tax:1},FR:{currency:"EUR",symbol:"\u20AC",country:"France",countryCode:"FR",tax:1},GR:{currency:"EUR",symbol:"\u20AC",country:"Greece",countryCode:"GR",tax:1},HR:{currency:"EUR",symbol:"\u20AC",country:"Croatia",countryCode:"HR",tax:1},IE:{currency:"EUR",symbol:"\u20AC",country:"Ireland",countryCode:"IE",tax:1},IT:{currency:"EUR",symbol:"\u20AC",country:"Italy",countryCode:"IT",tax:1},LT:{currency:"EUR",symbol:"\u20AC",country:"Lithuania",countryCode:"LT",tax:1},LU:{currency:"EUR",symbol:"\u20AC",country:"Luxembourg",countryCode:"LU",tax:1},LV:{currency:"EUR",symbol:"\u20AC",country:"Latvia",countryCode:"LV",tax:1},MT:{currency:"EUR",symbol:"\u20AC",country:"Malta",countryCode:"MT",tax:1},NL:{currency:"EUR",symbol:"\u20AC",country:"Netherlands",countryCode:"NL",tax:1},PT:{currency:"EUR",symbol:"\u20AC",country:"Portugal",countryCode:"PT",tax:1},SI:{currency:"EUR",symbol:"\u20AC",country:"Slovenia",countryCode:"SI",tax:1},SK:{currency:"EUR",symbol:"\u20AC",country:"Slovakia",countryCode:"SK",tax:1},BG:{currency:"EUR",symbol:"\u20AC",country:"Bulgaria",countryCode:"BG",tax:1},RO:{currency:"EUR",symbol:"\u20AC",country:"Romania",countryCode:"RO",tax:1},CZ:{currency:"EUR",symbol:"\u20AC",country:"Czech Republic",countryCode:"CZ",tax:1},SE:{currency:"EUR",symbol:"\u20AC",country:"Sweden",countryCode:"SE",tax:1},DK:{currency:"EUR",symbol:"\u20AC",country:"Denmark",countryCode:"DK",tax:1},PL:{currency:"EUR",symbol:"\u20AC",country:"Poland",countryCode:"PL",tax:1},HU:{currency:"EUR",symbol:"\u20AC",country:"Hungary",countryCode:"HU",tax:1},GB:{currency:"GBP",symbol:"\xA3",country:"United Kingdom",countryCode:"GB",tax:1},US:{currency:"USD",symbol:"$",country:"United States",countryCode:"US",tax:0},CA:{currency:"CAD",symbol:"CA$",country:"Canada",countryCode:"CA",tax:0},NZ:{currency:"NZD",symbol:"NZ$",country:"New Zealand",countryCode:"NZ",tax:0},AU:{currency:"AUD",symbol:"AU$",country:"Australia",countryCode:"AU",tax:0}},R={currency:"USD",symbol:"$",country:"United States",countryCode:"US",tax:0};function ut(e){switch(e.toUpperCase()){case"US":return"ZIP Code";case"GB":return"Postcode";case"CA":return"Postal Code";case"AU":case"NZ":return"Postcode";case"IE":return"Eircode";default:return"Postal Code"}}var sr=new Intl.DisplayNames(["en"],{type:"region"});function ur(e){return[...e.toUpperCase()].map(t=>String.fromCodePoint(127397+t.charCodeAt(0))).join("")}var dt=["US","GB","CA","AU","NZ","IE","DE","FR"],dr=["AD","AE","AF","AG","AL","AM","AO","AR","AT","AU","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BN","BO","BR","BS","BT","BW","BY","BZ","CA","CD","CF","CG","CH","CI","CL","CM","CN","CO","CR","CU","CV","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","ER","ES","ET","FI","FJ","FM","FR","GA","GB","GD","GE","GH","GM","GN","GQ","GR","GT","GW","GY","HN","HR","HT","HU","ID","IE","IL","IN","IQ","IR","IS","IT","JM","JO","JP","KE","KG","KH","KI","KM","KN","KR","KW","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MG","MH","MK","ML","MM","MN","MR","MT","MU","MV","MW","MX","MY","MZ","NA","NE","NG","NI","NL","NO","NP","NR","NZ","OM","PA","PE","PG","PH","PK","PL","PT","PW","PY","QA","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SI","SK","SL","SM","SN","SO","SR","SS","ST","SV","SY","SZ","TD","TG","TH","TJ","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","US","UY","UZ","VA","VC","VE","VN","VU","WS","XK","YE","ZA","ZM","ZW"];function Ue(e){return{code:e,name:sr.of(e)??e,flag:ur(e)}}var cr=new Set(dt),lr=dr.filter(e=>!cr.has(e)),oe=[...dt.map(Ue),...lr.map(Ue)];function ct(e){return oe.find(t=>t.code===e)}var pr={country:!0,postal_code:!0};function ne(e){return e?e===!0?pr:e:null}function lt(e,t){if(e===void 0||e===!1)return!1;if(e===!0)return!0;let r=t.trim().toUpperCase();return e.some(o=>o.trim().toUpperCase()===r)}function pt(e){let t=ne(e);return t?Object.values(t).some(r=>r===!0||Array.isArray(r)&&r.length>0):!1}var ae=[{code:"AL",name:"Alabama"},{code:"AK",name:"Alaska"},{code:"AZ",name:"Arizona"},{code:"AR",name:"Arkansas"},{code:"CA",name:"California"},{code:"CO",name:"Colorado"},{code:"CT",name:"Connecticut"},{code:"DE",name:"Delaware"},{code:"DC",name:"District of Columbia"},{code:"FL",name:"Florida"},{code:"GA",name:"Georgia"},{code:"HI",name:"Hawaii"},{code:"ID",name:"Idaho"},{code:"IL",name:"Illinois"},{code:"IN",name:"Indiana"},{code:"IA",name:"Iowa"},{code:"KS",name:"Kansas"},{code:"KY",name:"Kentucky"},{code:"LA",name:"Louisiana"},{code:"ME",name:"Maine"},{code:"MD",name:"Maryland"},{code:"MA",name:"Massachusetts"},{code:"MI",name:"Michigan"},{code:"MN",name:"Minnesota"},{code:"MS",name:"Mississippi"},{code:"MO",name:"Missouri"},{code:"MT",name:"Montana"},{code:"NE",name:"Nebraska"},{code:"NV",name:"Nevada"},{code:"NH",name:"New Hampshire"},{code:"NJ",name:"New Jersey"},{code:"NM",name:"New Mexico"},{code:"NY",name:"New York"},{code:"NC",name:"North Carolina"},{code:"ND",name:"North Dakota"},{code:"OH",name:"Ohio"},{code:"OK",name:"Oklahoma"},{code:"OR",name:"Oregon"},{code:"PA",name:"Pennsylvania"},{code:"RI",name:"Rhode Island"},{code:"SC",name:"South Carolina"},{code:"SD",name:"South Dakota"},{code:"TN",name:"Tennessee"},{code:"TX",name:"Texas"},{code:"UT",name:"Utah"},{code:"VT",name:"Vermont"},{code:"VA",name:"Virginia"},{code:"WA",name:"Washington"},{code:"WV",name:"West Virginia"},{code:"WI",name:"Wisconsin"},{code:"WY",name:"Wyoming"}],ie=[{code:"AB",name:"Alberta"},{code:"BC",name:"British Columbia"},{code:"MB",name:"Manitoba"},{code:"NB",name:"New Brunswick"},{code:"NL",name:"Newfoundland and Labrador"},{code:"NS",name:"Nova Scotia"},{code:"NT",name:"Northwest Territories"},{code:"NU",name:"Nunavut"},{code:"ON",name:"Ontario"},{code:"PE",name:"Prince Edward Island"},{code:"QC",name:"Quebec"},{code:"SK",name:"Saskatchewan"},{code:"YT",name:"Yukon"}];function mt(e){switch(e.toUpperCase()){case"US":return ae;case"CA":return ie;default:return null}}function yt(e){switch(e.toUpperCase()){case"US":return"State";case"CA":return"Province";case"GB":return"County";case"AU":return"State / Territory";default:return"State / Province / Region"}}function gt(e,t={}){let r=[],o=e.products??[],n=o.filter(u=>u.type==="subscription"),s=o.filter(u=>u.type!=="subscription"),p=(b(e.currency,void 0,void 0,o)??"USD").toUpperCase();for(let u of n){let m=u.totalAmount??0,F=u.overrideAmount??m,O=u.name||u.code||"Subscription";O==="4-WEEK PLAN"&&F<=1&&(O="7-DAY TRIAL: FULL ACCESS"),r.push({name:O,quantity:u.quantity,price:F,originalPrice:m})}if(!(t.hideBundledItems===!0&&n.length>0&&s.length>0))for(let u of s){let m=u.totalAmount??0,F=u.overrideAmount??m;r.push({name:u.name||u.code||"Item",quantity:u.quantity,price:F,originalPrice:m})}r.length===0&&r.push({name:"Purchase",quantity:1,price:e.amount/100,originalPrice:e.amount/100});let zt=r.reduce((u,m)=>u+m.originalPrice*m.quantity,0),Ht=r.reduce((u,m)=>u+m.price*m.quantity,0),qt=typeof e.totalAmount=="number"&&Number.isFinite(e.totalAmount),Wt=typeof e.subtotalAmount=="number"&&Number.isFinite(e.subtotalAmount),jt=typeof e.discountAmount=="number"&&Number.isFinite(e.discountAmount),Ee=qt?e.totalAmount:Ht,E=Wt?e.subtotalAmount:zt,Fe=Math.max(0,E-Ee),Zt=E>0?Math.round(Fe/E*100):0;return{items:r,currency:p,total:Ee,originalTotal:E,totalSave:Fe,discountPercent:Zt,...jt?{couponDiscount:e.discountAmount}:{}}}var Ct="Idempotency-Key",k=255,Et="IdempotencyKeyInProgress";function mr(){let e=globalThis.crypto;if(e&&(typeof e.randomUUID=="function"||typeof e.getRandomValues=="function"))return e}function se(){let e=mr();if(!e)return;if(typeof e.randomUUID=="function")return e.randomUUID();let t=new Uint8Array(16);return e.getRandomValues(t),Array.from(t,r=>r.toString(16).padStart(2,"0")).join("")}function Ft(e){if(e===void 0)return se();if(typeof e!="string"||e.trim()==="")throw new d("idempotencyKey must be a non-empty string identifying exactly one checkout creation.","validation_error",{code:"InvalidIdempotencyKey",param:"idempotencyKey"});if(e.length>k)throw new d(`idempotencyKey must be at most ${k} characters.`,"validation_error",{code:"InvalidIdempotencyKey",param:"idempotencyKey"});return e}var ft=1,bt=[{name:"checkout_mount"},{name:"sdk_loaded"},{name:"form_rendered"},{name:"card_expanded"},{name:"tokenize"},{name:"process_attempt"},{name:"3ds_challenge"},{name:"checkout_error",phase:"session_create"},{name:"checkout_error",phase:"sdk_load"},{name:"checkout_error",phase:"process"},{name:"checkout_error",phase:"wallets"}];var yr=[[5,5,"NY"],[10,27,"MA"],[28,29,"RI"],[30,38,"NH"],[39,49,"ME"],[50,59,"VT"],[60,69,"CT"],[70,89,"NJ"],[100,149,"NY"],[150,196,"PA"],[197,199,"DE"],[200,205,"DC"],[206,219,"MD"],[220,246,"VA"],[247,268,"WV"],[270,289,"NC"],[290,299,"SC"],[300,319,"GA"],[320,349,"FL"],[350,369,"AL"],[370,385,"TN"],[386,397,"MS"],[398,399,"GA"],[400,427,"KY"],[430,459,"OH"],[460,479,"IN"],[480,499,"MI"],[500,528,"IA"],[530,549,"WI"],[550,567,"MN"],[570,577,"SD"],[580,588,"ND"],[590,599,"MT"],[600,629,"IL"],[630,658,"MO"],[660,679,"KS"],[680,693,"NE"],[700,714,"LA"],[716,729,"AR"],[730,749,"OK"],[750,799,"TX"],[800,816,"CO"],[820,831,"WY"],[832,838,"ID"],[840,847,"UT"],[850,865,"AZ"],[870,884,"NM"],[889,898,"NV"],[900,961,"CA"],[967,968,"HI"],[970,979,"OR"],[980,994,"WA"],[995,999,"AK"]],gr={A:"NL",B:"NS",C:"PE",E:"NB",G:"QC",H:"QC",J:"QC",K:"ON",L:"ON",M:"ON",N:"ON",P:"ON",R:"MB",S:"SK",T:"AB",V:"BC",X:"NT",Y:"YT"};function Cr(e){let t=e.replace(/\D/g,"");if(t.length<5)return null;let r=Number.parseInt(t.slice(0,3),10);if(!Number.isFinite(r))return null;for(let[o,n,s]of yr)if(r>=o&&r<=n)return s;return null}function Er(e){let t=e.replace(/\s+/g,"").toUpperCase();if(!/^[A-Z]\d[A-Z]\d[A-Z]\d$/.test(t))return null;let r=t[0]??"";return gr[r]??null}function xt(e,t){if(!e||!t)return null;let r=e.trim().toUpperCase(),o=t.trim();if(!o)return null;switch(r){case"US":return Cr(o);case"CA":return Er(o);default:return null}}var Fr=rr(require("validator/lib/isPostalCode.js"),1),v=Fr,ht=typeof v.default=="function"?v.default:v.default?.default;if(typeof ht!="function")throw new Error("validator/lib/isPostalCode.js interop failed: unexpected module shape. This likely means the bundler's CJS/ESM interop changed.");var St=new Set(v.locales.map(e=>e.toUpperCase())),fr={AUSTRALIA:"AU",BRAZIL:"BR",CANADA:"CA",CH:"CH",DENMARK:"DK",DE:"DE",DEUTSCHLAND:"DE",FRANCE:"FR",GB:"GB",GERMANY:"DE",GREATBRITAIN:"GB",GREAT_BRITAIN:"GB",INDIA:"IN",IRELAND:"IE",ITALY:"IT",JAPAN:"JP",MEXICO:"MX",NETHERLANDS:"NL",NEWZEALAND:"NZ",NORWAY:"NO",POLAND:"PL",PORTUGAL:"PT",SINGAPORE:"SG",SOUTHAFRICA:"ZA",SPAIN:"ES",SWEDEN:"SE",SWITZERLAND:"CH",UK:"GB",UNITEDKINGDOM:"GB",UNITEDSTATES:"US",US:"US",USA:"US","UNITED STATES":"US","UNITED KINGDOM":"GB","GREAT BRITAIN":"GB",ENGLAND:"GB"};function ue(e){let t=(e??"").trim().toUpperCase();return t?t.length===2?t:fr[t]??null:null}var br={AU:"2000",BR:"01000-000",CA:"A1A 1A1",CH:"8001",DE:"10115",DK:"1050",ES:"28001",FR:"75008",GB:"SW1A 1AA",IE:"D02 X285",IN:"110001",IT:"00118",JP:"100-0001",MX:"06500",NL:"1012 JS",NO:"0150",NZ:"6011",PL:"00-001",PT:"1100-148",SE:"111 22",SG:"018989",US:"12345 or 12345-6789",ZA:"8001"};function Tt(e){let t=ue(e);return t!==null&&St.has(t)}function At(e,t){let r=(t??"").trim();if(!r)return!0;let o=ue(e);if(o===null||!St.has(o))return!0;try{return ht(r,o)}catch{return!0}}function It(e){let t=ue(e);return t?br[t]:void 0}var xr=/(?:^|\/)dahlia\/stripe\.js(?:$|[?#])/i,hr=/^dahlia\/stripe$/i,Sr=/^(?:chrome|moz|safari-web)-extension:\/\//i,Tr=/^@flopay(?:\/|$)/i;function _t(e){return xr.test(e)||Sr.test(e)}function Ar(e){let t=[e.filename,e.abs_path].filter(r=>r!==void 0&&r!=="<anonymous>");return e.module!==void 0&&Tr.test(e.module)||t.some(r=>!_t(r))?"first-party":e.module!==void 0&&hr.test(e.module)||t.some(_t)?"third-party-hosted":t.length===0?"injected":"first-party"}function Pt(e){let t=e.exception?.values;if(!t?.length)return e;let r=[];for(let n of t){let s=n.stacktrace?.frames;if(!s?.length)return e;r.push(...s)}let o=r.map(Ar);return!o.includes("first-party")&&o.includes("third-party-hosted")?null:e}var Rt=1,de=["@flopay/shared","@flopay/js","@flopay/react"],kt=32768,vt=20,Ir=["stripe","paypal"],_r=["card","wallet","paypal","apm","saved","unknown"],Pr=["callback","sdk_initialize","checkout_mount","session_create","session_shell","session_claim","session_read","session_first_byte","session_complete","checkout_data_ready","checkout_render","checkout_interactive","provider_load","provider_ready","overlay_open","overlay_return","redirect","redirect_resume","vault_request","vault_mount","vault_ready","vault_submit","tokenization","three_ds_handoff","three_ds_return","processing","recovery","completion","unmount","total_journey"],ce=["CALLBACK_FAILED","CHECKOUT_SESSION_CREATE_FAILED","CONFIGURATION_INVALID","INTERNAL_SDK_ERROR","NETWORK_REQUEST_FAILED","PAYMENT_PROCESSING_FAILED","POPUP_BLOCKED","PROVIDER_LOAD_FAILED","PROVIDER_RUNTIME_FAILED","RECOVERY_FAILED","REDIRECT_RESUME_FAILED","REQUEST_TIMEOUT","SDK_INITIALIZATION_FAILED","THREE_DS_FAILED","TOKENIZATION_FAILED","VAULT_LOAD_FAILED","VAULT_SUBMIT_FAILED"],le=["server_error","transport_error","invalid_response","provider_runtime"],pe=["sdk.initialize.started","sdk.initialize.ready","sdk.cache.hit","sdk.cache.miss","checkout.mount","session.create.started","session.shell.ready","session.claim.started","session.claim.completed","session.read.started","session.request.first_byte","session.request.completed","checkout.data.ready","checkout.rendered","checkout.interactive","checkout.recovery.started","checkout.recovery.completed","checkout.unmount","provider.load.started","provider.eligibility.checked","provider.availability.checked","provider.ready","provider.popup.opened","provider.overlay.opened","provider.overlay.returned","provider.redirect.started","provider.redirect.resumed","vault.capture.requested","vault.widget.mounted","vault.widget.ready","vault.submission.started","vault.action.required","vault.three_ds.handoff","vault.three_ds.returned","vault.terminal","payment.method.selected","payment.intent.started","payment.intent.completed","payment.tokenization.started","payment.tokenization.completed","payment.processing.started","payment.processing.completed","payment.three_ds.handoff","payment.three_ds.returned","operation.retry","operation.deduplicated","operation.fallback","operation.cache.hit","operation.cache.miss","operation.recovery.started","operation.recovery.completed","operation.state_transition"],Rr=["session_create","session_claim","session_read","intent_create","process_payment","vault_capture","account_snapshot","provider_sdk","other"],kr=["2xx","3xx","4xx","5xx","network_error","timeout","unknown"],vr=["full","auto","confirm","setup","unknown"],Br=["embedded","buttons","automatic","unknown"],Nr=["machine","buyer","total"],Mr=["action_required","card_setup_declined","card_setup_succeeded","customer_abandoned","payment_cancelled","payment_declined","payment_authorized","payment_succeeded","validation_rejected"],Bt=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,Lr=/^\d{1,4}\.\d{1,4}\.\d{1,4}(?:-[0-9A-Za-z.-]{1,32})?$/,Dr=new Set(ce),Or=new Set(le),B=new Set(Pr),Ur=new Set(Ir),wr=new Set(_r),Gr=new Set(pe),Vr=new Set(vr),Kr=new Set(Br),Yr=new Set(Rr),zr=new Set(kr),Hr=new Set(Nr),qr=new Set(Mr),Wr=new Set(de),Nt=12e4;function l(e,t,r){return typeof e=="string"&&t.has(e)?e:r}function jr(){try{let r=globalThis.crypto.randomUUID();if(Bt.test(r))return r}catch{}let e=new Uint8Array(16);try{globalThis.crypto.getRandomValues(e)}catch{for(let r=0;r<e.length;r+=1)e[r]=Math.floor(Math.random()*256)}e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=[...e].map(r=>r.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}function g(e){return typeof e=="string"&&Bt.test(e)?e:jr()}function Zr(e){return typeof e=="number"&&Number.isInteger(e)&&e>=0&&e<=100?e:void 0}function N(e){return Number.isSafeInteger(e)&&e>=0?Math.min(e,1e6):0}function Xr(e){return!Number.isFinite(e)||e<0?0:Math.min(Math.round(e),Nt)}function $r(e){return Number.isFinite(e)&&e>Nt}function M(e,t){let r=Zr(t.attempt);return t.provider&&Ur.has(t.provider)&&(e.provider=t.provider),r!==void 0&&(e.attempt=r),t.statusClass&&(e.statusClass=l(t.statusClass,zr,"unknown")),t.requestCategory&&(e.requestCategory=l(t.requestCategory,Yr,"other")),t.paymentMethodCategory&&(e.paymentMethodCategory=l(t.paymentMethodCategory,wr,"unknown")),t.checkoutMode&&(e.checkoutMode=l(t.checkoutMode,Vr,"unknown")),t.layout&&(e.layout=l(t.layout,Kr,"unknown")),e}function me(e){let t=M({eventId:g(e.eventId),class:"technical_error",code:l(e.errorCode,Dr,"INTERNAL_SDK_ERROR"),stage:l(e.stage,B,"sdk_initialize"),sequence:N(e.sequence)},e);return e.failureCategory&&Or.has(e.failureCategory)&&(t.failureCategory=e.failureCategory),t}function ye(e){return M({eventId:g(e.eventId),class:"lifecycle",name:l(e.name,Gr,"operation.retry"),stage:l(e.stage,B,"sdk_initialize"),sequence:N(e.sequence)},e)}function ge(e){let t={...e,stage:e.stage??"completion"};return M({eventId:g(e.eventId),class:"expected_outcome",outcome:l(e.outcome,qr,"customer_abandoned"),stage:l(e.stage,B,"completion"),sequence:N(e.sequence)},t)}function Ce(e){let t=M({eventId:g(e.eventId),class:"performance",stage:l(e.stage,B,"sdk_initialize"),sequence:N(e.sequence),durationMs:Xr(e.durationMs),durationMode:l(e.durationMode,Hr,"machine")},e);return(e.durationTruncated===!0||$r(e.durationMs))&&(t.durationTruncated=!0),t}function Mt(e,t){let r=e.slice(0,20).flatMap(n=>n.class==="technical_error"?[me({...n,errorCode:n.code})]:n.class==="lifecycle"?[ye(n)]:n.class==="expected_outcome"?[ge(n)]:n.class==="performance"?[Ce(n)]:[]),o={schemaVersion:1,batchId:g(t.batchId),correlationId:g(t.correlationId),sdk:{package:l(t.sdkPackage,Wr,"@flopay/shared"),version:Lr.test(t.sdkVersion)?t.sdkVersion:"0.0.0"},events:r};return JSON.stringify(o)}var Jr=new Set(["InvalidCheckoutSessionResponse","InvalidPaymentProcessResponse","InvalidSessionIntentResponse"]);function Lt(e,t){if(e===422)return"validation_rejected";if(e===400&&!(t===null||typeof t!="object"||Array.isArray(t)))return Array.isArray(t.fields)?"validation_rejected":"payment_declined"}function Dt(e,t,r="network_error"){if(e instanceof d&&e.code!==void 0&&Jr.has(e.code))return{errorCode:t,statusClass:L(e.statusCode,"unknown"),failureCategory:"invalid_response"};if(e instanceof Error&&(e.name==="AbortError"||e instanceof d&&e.code==="checkout_processing_timeout"))return{errorCode:"REQUEST_TIMEOUT",statusClass:"timeout",failureCategory:"transport_error"};if(e instanceof TypeError||e instanceof d&&e.type==="network_error")return{errorCode:"NETWORK_REQUEST_FAILED",statusClass:"network_error",failureCategory:"transport_error"};let o=L(e instanceof d?e.statusCode:void 0,r);return{errorCode:t,statusClass:o,...o==="5xx"?{failureCategory:"server_error"}:{}}}function L(e,t="network_error"){if(e===void 0)return t;let r=`${Math.floor(e/100)}xx`;return r==="2xx"||r==="3xx"||r==="4xx"||r==="5xx"?r:"unknown"}function Ot(e){if(e!=null)switch(e){case"sandbox":case"stage":return"sandbox";case"live":case"production":return"live";default:console.warn(`[FloPay] Unrecognized gateway environment "${e}". Expected one of: sandbox, live, stage, production. Falling back to undefined.`);return}}var D=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;function Ut(e){return typeof e=="string"&&D.test(e)}function wt(){try{let r=globalThis.crypto.randomUUID();if(D.test(r))return r}catch{}let e=new Uint8Array(16);try{globalThis.crypto.getRandomValues(e)}catch{for(let r=0;r<e.length;r+=1)e[r]=Math.floor(Math.random()*256)}e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=[...e].map(r=>r.toString(16).padStart(2,"0")).join("");return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}function Gt(e){return P[e.toUpperCase()]??R}function Vt(e){return/^pk_(test|live)_[A-Za-z0-9]+$/.test(e)}function Kt(e){return/^sk_(test|live)_[A-Za-z0-9]+$/.test(e)}function Yt(e){return typeof e=="string"&&e.startsWith("seti_")}0&&(module.exports={BILLING_API_URL,BILLING_API_URL_PRODUCTION,BILLING_API_URL_STAGING,BOLD_DARK_APPEARANCE,BOLD_LIGHT_APPEARANCE,BUTTONS_LAYOUT_BOLD_DARK,BUTTONS_LAYOUT_BOLD_LIGHT,BUTTONS_LAYOUT_DARK,BUTTONS_LAYOUT_DEFAULT,BUTTONS_LAYOUT_GLASS_DARK,BUTTONS_LAYOUT_GLASS_LIGHT,BUTTONS_LAYOUT_MINIMAL,BUTTONS_LAYOUT_MODERN_DARK,BUTTONS_LAYOUT_MODERN_LIGHT,BUTTONS_LAYOUT_ROUNDED,CA_PROVINCES,COUNTRY_OPTIONS,CURRENCY_MAP,DEFAULT_API_BASE_URL,DEFAULT_API_VERSION,DEFAULT_APPEARANCE,DEFAULT_CURRENCY,ELEMENT_TYPES,FLAT_APPEARANCE,FLO_INSTRUMENT_CATALOG,FLO_INSTRUMENT_SCHEMA_VERSION,FLO_SDK_VERSION_HEADER,FloPayError,GLASS_DARK_APPEARANCE,GLASS_LIGHT_APPEARANCE,IDEMPOTENCY_IN_PROGRESS_CODE,IDEMPOTENCY_KEY_HEADER,MAX_IDEMPOTENCY_KEY_LENGTH,MODERN_DARK_APPEARANCE,MODERN_LIGHT_APPEARANCE,NIGHT_APPEARANCE,PAYPAL_VAULTED_PAYMENT_METHOD_TYPE,SDK_VERSION,STRIPE_EXPRESS_METHODS,STRIPE_METHOD_AMOUNT_LIMITS,STRIPE_METHOD_COUNTRIES,STRIPE_METHOD_CURRENCIES,STRIPE_METHOD_MATRIX,SUPPORTED_CARD_BRANDS,TELEMETRY_ERROR_CODES,TELEMETRY_FAILURE_CATEGORIES,TELEMETRY_LOG_NAMES,TELEMETRY_MAX_BATCH_BYTES,TELEMETRY_MAX_BATCH_EVENTS,TELEMETRY_SCHEMA_VERSION,TELEMETRY_SDK_PACKAGES,THEMES,US_STATES,UUID_V4,apiError,assertCaptureMethodEligible,authenticationError,buildCheckoutDisplayData,buildItemPayload,buildProductPayload,buildSubscriptionPayload,buildTelemetryErrorEvent,buildTelemetryLogEvent,buildTelemetryPerformanceEvent,buildTelemetryTerminalEvent,classifyPaymentRejection,classifyTelemetryFailure,configureFlopay,dropThirdPartyOnlyError,filterStripeMethodsByAmount,filterStripeMethodsByCountry,filterStripeMethodsByCurrency,foldIntoProducts,generateIdempotencyKey,getConfiguredBillingApiUrl,getCountryByCode,getCurrencyByCountry,getFloPayEnvironment,getPostalCodeExample,getPostalCodeLabel,getStateFromPostalCode,getStateLabel,getStateOptions,getStripeMethodDisplayName,hasVendoredStripeMethodLogo,isAVSEnabled,isAVSFieldVisible,isAuthorizationOnlySession,isCardSetupCheckoutSession,isDetachedSessionEligible,isMoneySettledOutcome,isPostalCodeSupported,isSetupIntentClientSecret,isUuidV4,isValidPostalCode,isValidPublishableKey,isValidSecretKey,needsStripeMethodExplicitConfirm,networkError,normalizeCheckoutFailureOutcome,normalizeGatewayEnvironment,partitionStripeMethods,randomUuidV4,rateLimitError,resolveAVSConfig,resolveBillingApiUrl,resolveButtonsLayoutTheme,resolveIdempotencyKey,resolveSessionCurrency,resolveStripeMethodBrandVariant,resolveTheme,serializeTelemetryBatch,stripeExpressMethodToOptionKey,telemetryStatusClass,validationError});
|