@tagadapay/plugin-sdk 3.1.25 → 4.0.2

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.
Files changed (81) hide show
  1. package/dist/external-tracker.js +160 -6
  2. package/dist/external-tracker.min.js +2 -2
  3. package/dist/external-tracker.min.js.map +4 -4
  4. package/dist/react/config/payment.d.ts +2 -2
  5. package/dist/react/config/payment.js +5 -5
  6. package/dist/react/hooks/usePayment.d.ts +7 -0
  7. package/dist/react/hooks/usePayment.js +1 -0
  8. package/dist/tagada-react-sdk-minimal.min.js +2 -2
  9. package/dist/tagada-react-sdk-minimal.min.js.map +4 -4
  10. package/dist/tagada-react-sdk.js +2220 -1428
  11. package/dist/tagada-react-sdk.min.js +2 -2
  12. package/dist/tagada-react-sdk.min.js.map +4 -4
  13. package/dist/tagada-sdk.js +3784 -128
  14. package/dist/tagada-sdk.min.js +2 -2
  15. package/dist/tagada-sdk.min.js.map +4 -4
  16. package/dist/v2/core/config/environment.d.ts +3 -3
  17. package/dist/v2/core/config/environment.js +7 -7
  18. package/dist/v2/core/funnelClient.d.ts +42 -0
  19. package/dist/v2/core/funnelClient.js +30 -0
  20. package/dist/v2/core/pixelTracker.d.ts +51 -0
  21. package/dist/v2/core/pixelTracker.js +425 -0
  22. package/dist/v2/core/resources/checkout.d.ts +45 -1
  23. package/dist/v2/core/resources/checkout.js +13 -3
  24. package/dist/v2/core/resources/funnel.d.ts +1 -1
  25. package/dist/v2/core/resources/geo.d.ts +50 -0
  26. package/dist/v2/core/resources/geo.js +35 -0
  27. package/dist/v2/core/resources/offers.d.ts +1 -1
  28. package/dist/v2/core/resources/offers.js +3 -1
  29. package/dist/v2/core/resources/payments.d.ts +19 -1
  30. package/dist/v2/core/resources/payments.js +8 -0
  31. package/dist/v2/core/resources/promotionEvents.d.ts +5 -0
  32. package/dist/v2/core/resources/promotionEvents.js +2 -0
  33. package/dist/v2/core/resources/promotions.d.ts +6 -1
  34. package/dist/v2/core/resources/promotions.js +6 -1
  35. package/dist/v2/core/resources/shippingRates.d.ts +18 -0
  36. package/dist/v2/core/resources/shippingRates.js +18 -0
  37. package/dist/v2/core/utils/clickIdResolver.d.ts +79 -0
  38. package/dist/v2/core/utils/clickIdResolver.js +169 -0
  39. package/dist/v2/core/utils/index.d.ts +2 -0
  40. package/dist/v2/core/utils/index.js +4 -0
  41. package/dist/v2/core/utils/metaEventId.d.ts +14 -0
  42. package/dist/v2/core/utils/metaEventId.js +16 -0
  43. package/dist/v2/index.d.ts +7 -0
  44. package/dist/v2/index.js +10 -0
  45. package/dist/v2/react/components/ApplePayButton.js +50 -0
  46. package/dist/v2/react/components/FunnelScriptInjector.js +158 -10
  47. package/dist/v2/react/components/GooglePayButton.js +39 -1
  48. package/dist/v2/react/components/StripeExpressButton.d.ts +8 -0
  49. package/dist/v2/react/components/StripeExpressButton.js +76 -3
  50. package/dist/v2/react/hooks/payment-actions/useNgeniusThreedsAction.d.ts +15 -0
  51. package/dist/v2/react/hooks/payment-actions/useNgeniusThreedsAction.js +166 -0
  52. package/dist/v2/react/hooks/payment-actions/usePaymentActionHandler.js +12 -0
  53. package/dist/v2/react/hooks/payment-processing/usePaymentProcessors.js +1 -0
  54. package/dist/v2/react/hooks/useCheckoutQuery.js +41 -29
  55. package/dist/v2/react/hooks/useDiscountsQuery.js +4 -0
  56. package/dist/v2/react/hooks/useFunnel.d.ts +7 -0
  57. package/dist/v2/react/hooks/useFunnel.js +2 -1
  58. package/dist/v2/react/hooks/useISOData.js +25 -7
  59. package/dist/v2/react/hooks/usePaymentPolling.d.ts +1 -1
  60. package/dist/v2/react/hooks/usePixelTracking.d.ts +10 -5
  61. package/dist/v2/react/hooks/usePixelTracking.js +32 -374
  62. package/dist/v2/react/hooks/usePreviewOffer.d.ts +3 -1
  63. package/dist/v2/react/hooks/usePreviewOffer.js +8 -2
  64. package/dist/v2/react/hooks/usePromotionsQuery.js +9 -3
  65. package/dist/v2/react/hooks/useShippingRatesQuery.js +36 -21
  66. package/dist/v2/react/hooks/useStepConfig.d.ts +9 -0
  67. package/dist/v2/react/hooks/useStepConfig.js +5 -1
  68. package/dist/v2/react/index.d.ts +4 -0
  69. package/dist/v2/react/index.js +8 -0
  70. package/dist/v2/react/providers/ExpressPaymentMethodsProvider.js +12 -4
  71. package/dist/v2/react/providers/TagadaProvider.js +13 -0
  72. package/dist/v2/standalone/apple-pay-service.d.ts +12 -0
  73. package/dist/v2/standalone/apple-pay-service.js +12 -0
  74. package/dist/v2/standalone/external-tracker.d.ts +1 -1
  75. package/dist/v2/standalone/google-pay-service.d.ts +9 -0
  76. package/dist/v2/standalone/google-pay-service.js +9 -0
  77. package/dist/v2/standalone/index.d.ts +11 -1
  78. package/dist/v2/standalone/index.js +30 -0
  79. package/dist/v2/standalone/payment-service.d.ts +72 -6
  80. package/dist/v2/standalone/payment-service.js +285 -65
  81. package/package.json +2 -1
@@ -1,10 +1,10 @@
1
1
  /**
2
- * TagadaPay SDK v3.1.25
2
+ * TagadaPay SDK v4.0.2
3
3
  * CDN Bundle - Full standalone SDK for external/vanilla pages
4
4
  * Usage: window.tgd.createTagadaClient(), window.tgd.formatMoney(), etc.
5
5
  * @license MIT
6
6
  */
7
- "use strict";var TagadaSDKBundle=(()=>{var $l=Object.create;var wt=Object.defineProperty,Fl=Object.defineProperties,ql=Object.getOwnPropertyDescriptor,jl=Object.getOwnPropertyDescriptors,Kl=Object.getOwnPropertyNames,Ii=Object.getOwnPropertySymbols,Hl=Object.getPrototypeOf,xi=Object.prototype.hasOwnProperty,zl=Object.prototype.propertyIsEnumerable;var je=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),Vl=t=>{throw TypeError(t)};var Ai=(t,e,n)=>e in t?wt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,b=(t,e)=>{for(var n in e||(e={}))xi.call(e,n)&&Ai(t,n,e[n]);if(Ii)for(var n of Ii(e))zl.call(e,n)&&Ai(t,n,e[n]);return t},O=(t,e)=>Fl(t,jl(e));var be=(t,e)=>()=>(t&&(e=t(t=0)),e);var E=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),St=(t,e)=>{for(var n in e)wt(t,n,{get:e[n],enumerable:!0})},ki=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Kl(e))!xi.call(t,s)&&s!==n&&wt(t,s,{get:()=>e[s],enumerable:!(r=ql(e,s))||r.enumerable});return t};var Oi=(t,e,n)=>(n=t!=null?$l(Hl(t)):{},ki(e||!t||!t.__esModule?wt(n,"default",{value:t,enumerable:!0}):n,t)),Pr=t=>ki(wt({},"__esModule",{value:!0}),t);var Ne=function(t,e){this[0]=t,this[1]=e},Rr=(t,e,n)=>{var r=(o,a,l,c)=>{try{var d=n[o](a),u=(a=d.value)instanceof Ne,p=d.done;Promise.resolve(u?a[0]:a).then(m=>u?r(o==="return"?o:"next",a[1]?{done:m.done,value:m.value}:m,l,c):l({value:m,done:p})).catch(m=>r("throw",m,l,c))}catch(m){c(m)}},s=o=>i[o]=a=>new Promise((l,c)=>r(o,a,l,c)),i={};return n=n.apply(t,e),i[je("asyncIterator")]=()=>i,s("next"),s("throw"),s("return"),i},Ke=t=>{var e=t[je("asyncIterator")],n=!1,r,s={};return e==null?(e=t[je("iterator")](),r=i=>s[i]=o=>e[i](o)):(e=e.call(t),r=i=>s[i]=o=>{if(n){if(n=!1,i==="throw")throw o;return o}return n=!0,{done:!1,value:new Ne(new Promise(a=>{var l=e[i](o);l instanceof Object||Vl("Object expected"),a(l)}),1)}}),s[je("iterator")]=()=>s,r("next"),"throw"in e?r("throw"):s.throw=i=>{throw i},"return"in e&&r("return"),s},Di=(t,e,n)=>(e=t[je("asyncIterator")])?e.call(t):(t=t[je("iterator")](),e={},n=(r,s)=>(s=t[r])&&(e[r]=i=>new Promise((o,a,l)=>(i=s.call(t,i),l=i.done,Promise.resolve(i.value).then(c=>o({value:c,done:l}),a)))),n("next"),n("return"),e);function Li(t){var r;if(typeof document=="undefined")return null;let n="; ".concat(document.cookie).split("; ".concat(t,"="));return n.length===2&&((r=n.pop())==null?void 0:r.split(";").shift())||null}function Bi(t="local"){let e=Ni[t];if(!e)return console.warn("Unknown environment: ".concat(t,". Falling back to local.")),{environment:"local",apiConfig:Ni.local};let n=null;if(typeof window!="undefined"&&(n=new URLSearchParams(window.location.search).get("tagadaClientBaseUrl"),!n))try{n=localStorage.getItem("tgd_client_base_url")||Li("tgd_client_base_url")}catch(s){}return n?(console.log("[SDK] Using custom API base URL override: ".concat(n)),{environment:t,apiConfig:O(b({},e),{baseUrl:n})}):{environment:t,apiConfig:e}}function Et(){var s;if(console.log("[SDK] detectEnvironment() called"),typeof window=="undefined")return"local";let e=new URLSearchParams(window.location.search).get("tagadaClientEnv");if(e&&(e==="production"||e==="development"||e==="local"))return console.log("[SDK] Using explicit environment override: ".concat(e)),e;try{let i=localStorage.getItem("tgd_client_env")||Li("tgd_client_env");if(i&&(i==="production"||i==="development"||i==="local"))return console.log("[SDK] Using persisted environment override: ".concat(i)),i}catch(i){}let n=window.location.hostname,r=window.location.href;if(console.log('[SDK] detectEnvironment() - hostname: "'.concat(n,'"')),n==="localhost"||n.startsWith("127.")||n.startsWith("192.168.")||n.startsWith("10.")||n.includes(".local")||n===""||n==="0.0.0.0"||n.includes("ngrok-free.dev")||n.includes("ngrok-free.app")||n.includes("ngrok.io")||n.includes("ngrok.app")||n.includes(".loclx.io")){if(console.log("[SDK] detectEnvironment() - returning LOCAL"),typeof window!="undefined"&&((s=window==null?void 0:window.__TAGADA_ENV__)!=null&&s.TAGADA_ENVIRONMENT)){let i=window.__TAGADA_ENV__.TAGADA_ENVIRONMENT.toLowerCase();if(i==="production"||i==="development"||i==="local")return console.log("[SDK] Local override detected: ".concat(i)),i}return"local"}return n==="app.tagadapay.com"||n.includes("tagadapay.com")||n.includes("yourproductiondomain.com")?"production":n==="app.tagadapay.dev"||n.includes("tagadapay.dev")||n.includes("vercel.app")||n.includes("netlify.app")||n.includes("surge.sh")||n.includes("github.io")||n.includes("herokuapp.com")||n.includes("railway.app")||r.includes("?env=dev")||r.includes("?dev=true")||r.includes("#dev")?"development":(console.warn("[SDK] Unknown domain: ".concat(n,", defaulting to production")),"production")}function vt(t=!1){return Et()!=="local"?!1:t&&typeof window!="undefined"?!window.location.hostname.includes(".cdn."):!0}var Ni,Yt=be(()=>{"use strict";Ni={production:{baseUrl:"https://app.tagadapay.com",endpoints:{checkout:{sessionInit:"/api/v1/checkout/session/init",sessionInitAsync:"/api/v1/checkout/session/init-async",sessionStatus:"/api/v1/checkout/session/status",asyncStatus:"/api/public/v1/checkout/async-status"},customer:{profile:"/api/v1/customer/profile",session:"/api/v1/customer/session"},store:{config:"/api/v1/store/config"}}},development:{baseUrl:"https://app.tagadapay.dev",endpoints:{checkout:{sessionInit:"/api/v1/checkout/session/init",sessionInitAsync:"/api/v1/checkout/session/init-async",sessionStatus:"/api/v1/checkout/session/status",asyncStatus:"/api/public/v1/checkout/async-status"},customer:{profile:"/api/v1/customer/profile",session:"/api/v1/customer/session"},store:{config:"/api/v1/store/config"}}},local:{baseUrl:"http://app.localhost:3000",endpoints:{checkout:{sessionInit:"/api/v1/checkout/session/init",sessionInitAsync:"/api/v1/checkout/session/init-async",sessionStatus:"/api/v1/checkout/session/status",asyncStatus:"/api/public/v1/checkout/async-status"},customer:{profile:"/api/v1/customer/profile",session:"/api/v1/customer/session"},store:{config:"/api/v1/store/config"}}}}});var Zt,Jt,_r=be(()=>{"use strict";Zt=(p=>(p.DIRECT_NAVIGATION="direct_navigation",p.BACK_NAVIGATION="back_navigation",p.CONTINUE_CLICKED="continue_clicked",p.BUTTON_CLICK="button_click",p.FORM_SUBMIT="form_submit",p.PAYMENT_SUCCESS="payment_success",p.PAYMENT_FAILED="payment_failed",p.OFFER_ACCEPTED="offer_accepted",p.OFFER_DECLINED="offer_declined",p.CART_UPDATED="cart_updated",p.CART_ITEM_ADDED="cart_item_added",p.CUSTOM="custom",p))(Zt||{}),Jt=class{constructor(e){this.apiClient=e}async initialize(e){return this.apiClient.post("/api/v1/funnel/initialize",e)}async navigate(e){return this.apiClient.post("/api/v1/funnel/navigate",e)}async updateContext(e,n){return this.apiClient.patch("/api/v1/funnel/context/".concat(e),n)}async endSession(e){return this.apiClient.delete("/api/v1/funnel/session/".concat(e))}async getSession(e,n,r){let s=new URLSearchParams;n&&s.append("currentUrl",n),r&&s.append("includeDebugData","true");let i="/api/v1/funnel/session/".concat(e).concat(s.toString()?"?".concat(s):"");return this.apiClient.get(i)}}});var He,Ir=be(()=>{"use strict";He=class{constructor(){this.listeners=new Set}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}notify(e){this.listeners.forEach(n=>{try{n(e)}catch(r){console.error("Error in event listener:",r)}})}clear(){this.listeners.clear()}}});function re(t){if(typeof window!="undefined")try{let n=localStorage.getItem(Xt)!==t;localStorage.setItem(Xt,t),n&&window.dispatchEvent(new Event("storage"))}catch(e){console.error("Failed to save token to localStorage:",e)}}function Ct(){if(typeof window!="undefined")try{return localStorage.getItem(Xt)}catch(t){return console.error("Failed to get token from localStorage:",t),null}return null}function ze(){if(typeof window!="undefined")try{localStorage.removeItem(Xt)}catch(t){console.error("Failed to clear token from localStorage:",t)}}var Xt,Ve=be(()=>{"use strict";Xt="cms_token"});function xr(t){typeof document!="undefined"&&(document.cookie="".concat(Ar,"=").concat(t,"; path=/; max-age=2592000; SameSite=Lax"))}function Qt(){if(typeof document=="undefined")return;let t=document.cookie.split("; ").find(e=>e.startsWith("".concat(Ar,"=")));return t?t.split("=")[1]:void 0}function Tt(){typeof document!="undefined"&&(document.cookie="".concat(Ar,"=; path=/; max-age=0"))}function Wl(){return!!Qt()}function Yl(){var t;if(typeof document!="undefined")try{let e=document.cookie.split("; ").find(r=>r.startsWith("".concat(Gl,"=")));if(!e)return;let n=JSON.parse(decodeURIComponent(e.split("=")[1]));return(t=n==null?void 0:n.metadata)==null?void 0:t.funnelVariantId}catch(e){console.warn("Failed to parse sticky session for variant ID:",e);return}}var Ar,Gl,en=be(()=>{"use strict";Ar="tgd-funnel-session-id",Gl="tgd-session-id"});function Ge(t){if(typeof window=="undefined")return null;try{return localStorage.getItem(t)}catch(e){return null}}function We(t,e){if(typeof window!="undefined")try{localStorage.setItem(t,e)}catch(n){}}function Pt(t){var r;if(typeof document=="undefined")return null;let n=document.cookie.split(";").find(s=>s.trim().startsWith("".concat(t,"=")));return n?(r=n.split("=")[1])==null?void 0:r.trim():null}function Rt(t,e,n=86400){if(typeof document!="undefined"){if(t==="tgd_draft"||t==="tgd-draft"){console.warn("\u{1F6E1}\uFE0F [SDK] Blocked attempt to set ".concat(t," as cookie - this should only be in localStorage"));return}document.cookie="".concat(t,"=").concat(e,"; path=/; max-age=").concat(n)}}function Ui(t){typeof document!="undefined"&&(document.cookie="".concat(t,"=; path=/; max-age=0"))}function Le(){if(typeof window=="undefined")return{};let t=new URLSearchParams(window.location.search),e,n=t.get("draft");if(n!==null)e=n==="true";else{let S=Ge(D.DRAFT);S!==null&&(e=S==="true")}let r,s=t.get("funnelTracking");if(s!==null)r=s!=="false";else{let S=Ge(D.FUNNEL_TRACKING)||Pt(D.FUNNEL_TRACKING);S!==null&&(r=S!=="false")}let i=t.get("token")||Ct()||null,o=t.get("funnelSessionId")||null,a=t.get("funnelId")||null,l,c=t.get("funnelEnv");c&&(c==="staging"||c==="production")&&(l=c);let d=t.get("forceReset")==="true",u,p=t.get("tagadaClientEnv");if(p&&(p==="production"||p==="development"||p==="local"))u=p;else{let S=Ge(D.CLIENT_ENV)||Pt(D.CLIENT_ENV);S&&(S==="production"||S==="development"||S==="local")&&(u=S)}let m,f=t.get("tagadaClientBaseUrl");if(f)m=f;else{let S=Ge(D.CLIENT_BASE_URL)||Pt(D.CLIENT_BASE_URL);S&&(m=S)}let y,g=t.get("currency");if(g)y=g;else{let S=Ge(D.CURRENCY)||Pt(D.CURRENCY);S&&(y=S)}let w,v=t.get("locale");if(v)w=v;else{let S=Ge(D.LOCALE)||Pt(D.LOCALE);S&&(w=S)}return{forceReset:d,token:i,funnelSessionId:o,funnelId:a,draft:e,funnelTracking:r,funnelEnv:l,tagadaClientEnv:u,tagadaClientBaseUrl:m,currency:y,locale:w}}function _t(){var e;return(e=Le().draft)!=null?e:!1}function kr(t){if(typeof window!="undefined")if(t)We(D.DRAFT,"true");else try{localStorage.removeItem(D.DRAFT)}catch(e){}}function $i(t=!1){let e=null;typeof window!="undefined"&&(e=new URLSearchParams(window.location.search).get("token"));let n=Le(),r=n.forceReset||!1;if(!r&&!n.token)return Mi(),!1;t&&(console.log("[SDK] Detected params:",n),console.log("[SDK] URL token (direct read):",e?e.substring(0,20)+"...":"none")),r&&(t&&console.log("[SDK] Force reset: Clearing all stored state"),ze(),Tt(),typeof window!="undefined"&&window.localStorage&&Object.keys(localStorage).forEach(o=>{(o.startsWith("tagadapay_")||o.startsWith("tgd_"))&&(t&&console.log("[SDK] Clearing localStorage: ".concat(o)),localStorage.removeItem(o))}));let s=e||n.token;return s!=null?(t&&console.log("[SDK] Setting token from URL:",s.substring(0,20)+"..."),s===""||s==="null"?ze():(re(s),t&&console.log("[SDK] \u2705 Token set in localStorage immediately after clear"))):r&&(t&&console.log("[SDK] Force reset mode (no token in URL)"),ze()),Mi(),n.funnelSessionId&&t&&console.log("[SDK] Using funnelSessionId from URL:",n.funnelSessionId),r}function Mi(){if(typeof window=="undefined")return;let t=new URLSearchParams(window.location.search),e=t.get("draft");e!==null&&kr(e==="true");let n=t.get("funnelTracking");n!==null&&Jl(n!=="false");let r=t.get("tagadaClientEnv");r&&(r==="production"||r==="development"||r==="local")&&Zl(r);let s=t.get("tagadaClientBaseUrl");s&&Xl(s);let i=t.get("currency");i&&(We(D.CURRENCY,i.toUpperCase()),Rt(D.CURRENCY,i.toUpperCase(),86400));let o=t.get("locale");o&&(We(D.LOCALE,o),Rt(D.LOCALE,o,86400))}function Jl(t){if(typeof window=="undefined")return;let e=t?"true":"false";We(D.FUNNEL_TRACKING,e),Rt(D.FUNNEL_TRACKING,e,86400)}function Zl(t){typeof window!="undefined"&&(We(D.CLIENT_ENV,t),Rt(D.CLIENT_ENV,t,86400))}function Fi(){if(typeof window!="undefined")try{localStorage.removeItem(D.CLIENT_ENV),Ui(D.CLIENT_ENV)}catch(t){}}function Xl(t){typeof window!="undefined"&&(We(D.CLIENT_BASE_URL,t),Rt(D.CLIENT_BASE_URL,t,86400))}function qi(){if(typeof window!="undefined")try{localStorage.removeItem(D.CLIENT_BASE_URL),Ui(D.CLIENT_BASE_URL)}catch(t){}}function ji(){var e;return(e=Le().funnelTracking)!=null?e:!0}var D,tn=be(()=>{"use strict";Ve();en();D={DRAFT:"tgd_draft",FUNNEL_TRACKING:"tgd_funnel_tracking",FORCE_RESET:"tgd_force_reset",CLIENT_ENV:"tgd_client_env",CLIENT_BASE_URL:"tgd_client_base_url",CURRENCY:"tgd_currency",LOCALE:"tgd_locale"}});var Ki={};St(Ki,{injectPreviewModeIndicator:()=>eu,isIndicatorInjected:()=>nu,removePreviewModeIndicator:()=>tu});function Or(t){if(typeof window=="undefined"||typeof document=="undefined")return;let e=window.location.hostname,n=e.split("."),r=["",e,"."+e];for(let a=1;a<n.length;a++){let l=n.slice(a).join(".");r.push(l),r.push("."+l)}let s=window.location.pathname.split("/").filter(a=>a),i=["/"],o="";s.forEach(a=>{o+="/"+a,i.push(o)}),r.forEach(a=>{i.forEach(l=>{let c="".concat(t,"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=").concat(l),d=a?"; domain=".concat(a):"";document.cookie=c+d,document.cookie=c+d+"; secure",document.cookie=c+d+"; SameSite=None; secure",document.cookie=c+d+"; SameSite=Lax",document.cookie=c+d+"; SameSite=Strict"})})}function Ql(){if(typeof window=="undefined"||!confirm("\u{1F6AA} Leave Preview Mode?\n\nThis will clear ALL cookies and localStorage (including Shopify session, cart, and preview settings) and reload the page.\n\nAre you sure?"))return;let e=new URL(window.location.href);["draft","funnelEnv","funnelTracking","tagadaClientEnv","tagadaClientBaseUrl","forceReset","funnelId","funnelSessionId","token"].forEach(i=>e.searchParams.delete(i)),window.history.replaceState({},"",e.href);try{let i=Object.getOwnPropertyDescriptor(Document.prototype,"cookie")||Object.getOwnPropertyDescriptor(HTMLDocument.prototype,"cookie");i&&i.set&&Object.defineProperty(document,"cookie",{configurable:!0,enumerable:!0,get:function(){return i.get?i.get.call(this):""},set:function(o){if(typeof o=="string"){let a=o.toLowerCase();if(a.includes("tgd_draft")||a.includes("tgd-draft")||a.includes("tgd.draft")||a.includes("tgddraft")){if(a.includes("max-age=0")||a.includes("expires=thu, 01 jan 1970")){i.set&&i.set.call(this,o);return}console.warn("\u{1F6E1}\uFE0F [TagadaPay] BLOCKED: tgd_draft should never be a cookie");return}}i.set&&i.set.call(this,o)}})}catch(i){console.warn("[TagadaPay] Could not install cookie blocker:",i)}if(window.localStorage)try{localStorage.removeItem("tgd_draft"),localStorage.removeItem("tgd_funnel_tracking"),localStorage.removeItem("tgd_client_env"),localStorage.removeItem("tgd_client_base_url"),localStorage.removeItem("cms_token")}catch(i){console.warn("[TagadaPay] Failed to clear some localStorage keys:",i)}ze(),Tt(),Fi(),qi(),window.localStorage&&localStorage.clear(),window.sessionStorage&&sessionStorage.clear(),["tgd-funnel-session-id","tgd_draft","tgd_funnel_tracking","tgd_client_env","tgd_client_base_url","cms_token","tagadapay_session"].forEach(i=>Or(i)),["tgd-draft","tgd_draft","tgd.draft","tgddraft"].forEach(i=>Or(i)),document.cookie&&document.cookie.split(";").forEach(o=>{let a=o.split("=")[0].trim();if(!a)return;let l=window.location.hostname,c=l.split("."),d=["",l,"."+l];for(let f=1;f<c.length;f++){let y=c.slice(f).join(".");d.push(y),d.push("."+y)}let u=window.location.pathname.split("/").filter(f=>f),p=["/"],m="";u.forEach(f=>{m+="/"+f,p.push(m)}),d.forEach(f=>{p.forEach(y=>{let g="".concat(a,"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=").concat(y),w=f?"; domain=".concat(f):"";document.cookie=g+w,document.cookie=g+w+"; secure",document.cookie=g+w+"; SameSite=None; secure",document.cookie=g+w+"; SameSite=Lax",document.cookie=g+w+"; SameSite=Strict",document.cookie=g+w+"; secure; SameSite=None",document.cookie=g+w+"; secure; SameSite=Lax",document.cookie=g+w+"; secure; SameSite=Strict"})})}),setTimeout(()=>{window.localStorage&&localStorage.length>0&&localStorage.clear(),Or("tgd_draft"),typeof window.stop=="function"&&window.stop(),window.location.replace(e.href)},10)}function eu(){if(nn||typeof window=="undefined"||typeof document=="undefined")return;let t=Le(),e=_t(),n=!ji(),r=!!(t.tagadaClientEnv||t.tagadaClientBaseUrl);if(!e&&!n&&!r)return;let s=document.createElement("div");s.id="tgd-preview-indicator",s.style.cssText='\n position: fixed;\n bottom: 16px;\n right: 16px;\n z-index: 999999;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n ';let i=document.createElement("div");i.style.cssText="\n background: ".concat(e?"#ff9500":"#007aff",";\n color: white;\n padding: 8px 12px;\n border-radius: 8px;\n font-size: 13px;\n font-weight: 600;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);\n cursor: pointer;\n transition: all 0.2s ease;\n display: flex;\n align-items: center;\n gap: 6px;\n "),i.innerHTML='\n <span style="font-size: 16px;">\u{1F50D}</span>\n <span>'.concat(e?"Preview Mode":"Dev Mode","</span>\n ");let o=document.createElement("div");o.style.cssText="\n position: absolute;\n bottom: calc(100% + 8px);\n right: 0;\n background: white;\n border: 1px solid #e5e5e5;\n border-radius: 8px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\n padding: 12px;\n min-width: 250px;\n font-size: 12px;\n line-height: 1.5;\n display: none;\n ",o.style.paddingTop="20px";let a=document.createElement("div");a.style.cssText="\n position: absolute;\n bottom: 100%;\n left: 0;\n right: 0;\n height: 8px;\n display: none;\n ";let l='<div style="margin-bottom: 8px; font-weight: 600; color: #1d1d1f;">Current Environment</div>';l+='<div style="display: flex; flex-direction: column; gap: 6px;">',e&&(l+='\n <div style="display: flex; justify-content: space-between; color: #86868b;">\n <span>Draft Mode:</span>\n <span style="color: #ff9500; font-weight: 600;">ON</span>\n </div>\n '),n&&(l+='\n <div style="display: flex; justify-content: space-between; color: #86868b;">\n <span>Tracking:</span>\n <span style="color: #ff3b30; font-weight: 600;">DISABLED</span>\n </div>\n '),t.funnelEnv&&(l+='\n <div style="display: flex; justify-content: space-between; color: #86868b;">\n <span>Funnel Env:</span>\n <span style="color: #1d1d1f; font-weight: 600; font-family: monospace; font-size: 11px;">\n '.concat(t.funnelEnv,"\n </span>\n </div>\n ")),t.tagadaClientEnv&&(l+='\n <div style="display: flex; justify-content: space-between; color: #86868b;">\n <span>API Env:</span>\n <span style="color: #1d1d1f; font-weight: 600; font-family: monospace; font-size: 11px;">\n '.concat(t.tagadaClientEnv,"\n </span>\n </div>\n ")),t.tagadaClientBaseUrl&&(l+='\n <div style="color: #86868b;">\n <div style="margin-bottom: 4px;">API URL:</div>\n <div style="color: #1d1d1f; font-weight: 600; font-family: monospace; font-size: 10px; word-break: break-all; background: #f5f5f7; padding: 4px 6px; border-radius: 4px;">\n '.concat(t.tagadaClientBaseUrl,"\n </div>\n </div>\n ")),t.funnelId&&(l+='\n <div style="color: #86868b; margin-top: 4px; padding-top: 8px; border-top: 1px solid #e5e5e5;">\n <div style="margin-bottom: 4px;">Funnel ID:</div>\n <div style="color: #1d1d1f; font-family: monospace; font-size: 10px; word-break: break-all; background: #f5f5f7; padding: 4px 6px; border-radius: 4px;">\n '.concat(t.funnelId,"\n </div>\n </div>\n ")),l+="</div>",l+='\n <div style="margin-top: 12px; padding-top: 8px; border-top: 1px solid #e5e5e5; font-size: 11px; color: #86868b; text-align: center;">\n Add <code style="background: #f5f5f7; padding: 2px 4px; border-radius: 3px;">?forceReset=true</code> to reset\n </div>\n ',l+='\n <div style="margin-top: 12px; padding-top: 8px; border-top: 1px solid #e5e5e5;">\n <button id="tgd-leave-preview" style="\n background: #ff3b30;\n color: white;\n border: none;\n border-radius: 6px;\n padding: 10px 12px;\n font-size: 13px;\n font-weight: 600;\n cursor: pointer;\n transition: opacity 0.2s;\n width: 100%;\n ">\n \u{1F6AA} Leave Preview Mode\n </button>\n </div>\n ',o.innerHTML=l;let c=!1,d=()=>{c=!0,o.style.display="block",a.style.display="block"},u=()=>{c=!1,setTimeout(()=>{c||(o.style.display="none",a.style.display="none")},100)};i.addEventListener("mouseenter",d),i.addEventListener("mouseleave",u),a.addEventListener("mouseenter",d),a.addEventListener("mouseleave",u),o.addEventListener("mouseenter",d),o.addEventListener("mouseleave",u);let p=o.querySelector("#tgd-leave-preview");p&&(p.addEventListener("mouseenter",()=>{p.style.opacity="0.8"}),p.addEventListener("mouseleave",()=>{p.style.opacity="1"}),p.addEventListener("click",m=>{m.stopPropagation(),Ql()})),s.appendChild(i),s.appendChild(a),s.appendChild(o),document.body.appendChild(s),Ye=s,nn=!0}function tu(){Ye&&Ye.parentNode&&(Ye.parentNode.removeChild(Ye),Ye=null,nn=!1)}function nu(){return nn}var Ye,nn,Hi=be(()=>{"use strict";tn();Ve();en();Ye=null,nn=!1});var eo={};St(eo,{FunnelClient:()=>At,TrackingProvider:()=>Wi,findMethod:()=>Zi,getAssignedOrderBumpOfferIds:()=>fu,getAssignedPaymentFlowId:()=>xt,getAssignedPixels:()=>du,getAssignedResources:()=>Qi,getAssignedScripts:()=>uu,getAssignedStaticResources:()=>lu,getAssignedStepConfig:()=>ie,getAssignedUpsellOfferIds:()=>pu,getEnabledMethods:()=>Yi,getExpressMethods:()=>Ji,getExpressMethodsByProcessor:()=>ru,getLocalFunnelConfig:()=>Xi,isMethodEnabled:()=>su,loadLocalFunnelConfig:()=>au});function Yi(t){return t?Object.values(t).filter(e=>e.enabled):[]}function Ji(t){return Yi(t).filter(e=>e.express)}function ru(t){let e={};for(let n of Ji(t)){let r=n.processorId||n.integrationId||n.provider;e[r]||(e[r]=[]),e[r].push(n)}return e}function Zi(t,e){if(t){for(let n of Object.values(t))if(n.method===e&&n.enabled)return n}}function su(t,e){return!!Zi(t,e)}function iu(){if(typeof window!="undefined"){if(window.__TGD_FUNNEL_ID__)return window.__TGD_FUNNEL_ID__;if(typeof document!="undefined"){let t=document.querySelector('meta[name="x-funnel-id"]');return(t==null?void 0:t.getAttribute("content"))||void 0}}}function rn(){if(typeof window!="undefined"){if(window.__TGD_FUNNEL_VARIANT_ID__)return window.__TGD_FUNNEL_VARIANT_ID__;if(typeof document!="undefined"){let t=document.querySelector('meta[name="x-funnel-variant-id"]');return(t==null?void 0:t.getAttribute("content"))||void 0}}}function It(){if(typeof window!="undefined"){if(window.__TGD_FUNNEL_STEP_ID__)return window.__TGD_FUNNEL_STEP_ID__;if(typeof document!="undefined"){let t=document.querySelector('meta[name="x-funnel-step-id"]');return(t==null?void 0:t.getAttribute("content"))||void 0}}}function Vi(t){if(!t||typeof t!="string")return;let e=t.trim();if(!e)return;let n=[()=>JSON.parse(e),()=>JSON.parse(decodeURIComponent(e)),()=>JSON.parse(decodeURIComponent(decodeURIComponent(e)))];for(let r of n)try{let s=r();if(s&&typeof s=="object")return s}catch(s){}typeof console!="undefined"&&console.warn("[SDK] Failed to parse stepConfig:",e.substring(0,100))}function ou(){if(typeof window=="undefined")return!1;let t=window.location.hostname;return t==="localhost"||t==="127.0.0.1"||t.endsWith(".localhost")&&!t.includes(".cdn.")}async function au(){if(!ou())return null;if(se!==void 0)return se;if(Dr)return await new Promise(t=>setTimeout(t,100)),se!=null?se:null;Dr=!0;try{console.log("\u{1F6E0}\uFE0F [SDK] Loading local funnel config from /config/funnel.local.json...");let t=await fetch("/config/funnel.local.json");if(!t.ok)return console.log("\u{1F6E0}\uFE0F [SDK] funnel.local.json not found (this is fine in production)"),se=null,null;let e=await t.json();return console.log("\u{1F6E0}\uFE0F [SDK] \u2705 Loaded local funnel config:",e),se=e,e}catch(t){return console.log("\u{1F6E0}\uFE0F [SDK] funnel.local.json not available:",t),se=null,null}finally{Dr=!1}}function Xi(){return se!=null?se:null}function cu(t){let e=b(b({},t.staticResources),t.resources);return{payment:t.paymentFlowId?{paymentFlowId:t.paymentFlowId}:void 0,resources:Object.keys(e).length>0?e:void 0,scripts:t.scripts,pixels:t.pixels,orderBumps:t.orderBumps,upsellOffers:t.upsellOffers}}function ie(){if(typeof window=="undefined")return;let t=Xi();if(t)return console.log("\u{1F6E0}\uFE0F [SDK] Using local funnel.local.json (overrides injected)"),cu(t);let e=window.__TGD_STEP_CONFIG__;if(e){let n=Vi(e);if(n)return n}if(typeof document!="undefined"){let n=document.querySelector('meta[name="x-step-config"]'),r=n==null?void 0:n.getAttribute("content");if(r){let s=Vi(r);if(s)return s}}}function xt(){var n,r;let t=ie(),e=(n=t==null?void 0:t.paymentSetupConfig)==null?void 0:n.card;if(e!=null&&e.paymentFlowId)return e.paymentFlowId;if((r=t==null?void 0:t.payment)!=null&&r.paymentFlowId)return t.payment.paymentFlowId;if(typeof window!="undefined"){if(window.__TGD_PAYMENT_FLOW_ID__)return window.__TGD_PAYMENT_FLOW_ID__;if(typeof document!="undefined"){let s=document.querySelector('meta[name="x-payment-flow-id"]');return(s==null?void 0:s.getAttribute("content"))||void 0}}}function Qi(){let t=ie(),e=t==null?void 0:t.staticResources,n=t==null?void 0:t.resources;if(!(!e&&!n))return b(b({},e),n)}function lu(){return Qi()}function uu(t){let e=ie();if(!(e!=null&&e.scripts))return;let n=e.scripts.filter(r=>r.enabled);return t&&(n=n.filter(r=>r.position===t||!r.position&&t==="head-end")),n.length>0?n:void 0}function Gi(t){let e="containerId"in t?"containerId":"pixelId",n=t[e];if(!n||!n.includes(";")&&!n.includes(","))return[t];let r=n.split(/[;,]/).map(s=>s.trim()).filter(s=>s.length>0);return r.length<=1?[t]:r.map(s=>O(b({},t),{[e]:s}))}function du(){let t=ie(),e=t==null?void 0:t.pixels;if(!e||typeof e!="object")return;let n={};for(let[r,s]of Object.entries(e))s&&(Array.isArray(s)?n[r]=s.flatMap(i=>Gi(i)):typeof s=="object"&&(n[r]=Gi(s)));return Object.keys(n).length>0?n:void 0}function fu(){let t=ie();if(t!=null&&t.orderBumps&&t.orderBumps.mode==="custom")return t.orderBumps.enabledOfferIds}function pu(){let t=ie();if(t!=null&&t.upsellOffers&&t.upsellOffers.mode==="custom")return t.upsellOffers.enabledUpsellIds}var zi,Wi,se,Dr,At,Je=be(()=>{"use strict";Yt();_r();Ir();tn();en();zi=()=>Promise.resolve().then(()=>(Hi(),Ki)).then(t=>t.injectPreviewModeIndicator()),Wi=(i=>(i.FACEBOOK="facebook",i.TIKTOK="tiktok",i.SNAPCHAT="snapchat",i.PINTEREST="pinterest",i.GTM="gtm",i))(Wi||{});Dr=!1;At=class{constructor(e){this.eventDispatcher=new He;this.isInitializing=!1;this.initializationAttempted=!1;this.config=e,this.resource=new Jt(e.apiClient),this.state={context:null,isLoading:!1,isInitialized:!1,isNavigating:!1,error:null,sessionError:null}}setConfig(e){this.config=b(b({},this.config),e)}subscribe(e){return this.eventDispatcher.subscribe(e)}getState(){return this.state}getDetectedSessionId(){var r;if((r=this.state.context)!=null&&r.sessionId)return this.state.context.sessionId;if(typeof window=="undefined")return null;let n=new URLSearchParams(window.location.search).get("funnelSessionId");return n||Qt()||null}resetInitialization(){this.initializationAttempted=!1,this.isInitializing=!1,this.updateState({context:null,isInitialized:!1})}async autoInitialize(e,n,r){if(this.state.context)return this.state.context;if(this.isInitializing||this.initializationAttempted)return null;this.initializationAttempted=!0,this.isInitializing=!0,this.updateState({isLoading:!0,error:null});try{let s=this.getDetectedSessionId(),a=new URLSearchParams(typeof window!="undefined"?window.location.search:"").get("funnelId")||r,l=iu(),c=rn(),d=It(),u=Le(),p=this.config.funnelId||l||a,m=this.config.stepId||d,f=typeof window!="undefined"?new URLSearchParams(window.location.search):null,y=f==null?void 0:f.get("funnelEnv");this.config.debugMode&&console.log("\u{1F680} [FunnelClient] Auto-initializing...",{existingSessionId:s,effectiveFunnelId:p,funnelVariantId:c,funnelStepId:m,draft:u.draft,funnelTracking:u.funnelTracking,funnelEnv:y,tagadaClientEnv:u.tagadaClientEnv,tagadaClientBaseUrl:u.tagadaClientBaseUrl,source:{funnelId:this.config.funnelId?"config":l?"injected":a?"url/prop":"none",stepId:this.config.stepId?"config":d?"injected":"none"}});let g=await this.resource.initialize({cmsSession:{customerId:e.customerId,sessionId:e.sessionId,storeId:n.id,accountId:n.accountId},funnelId:p,existingSessionId:s||void 0,currentUrl:typeof window!="undefined"?window.location.href:void 0,funnelVariantId:c,funnelStepId:m,draft:u.draft,funnelTracking:u.funnelTracking,funnelEnv:y||void 0,tagadaClientEnv:u.tagadaClientEnv,tagadaClientBaseUrl:u.tagadaClientBaseUrl,currency:u.currency,locale:u.locale});if(g.success&&g.context){let w=this.enrichContext(g.context);return this.handleSessionSuccess(w),zi(),w}else throw new Error(g.error||"Failed to initialize funnel session")}catch(s){let i=s instanceof Error?s:new Error(String(s));throw this.updateState({error:i,isLoading:!1}),this.config.debugMode&&console.error("\u274C [FunnelClient] Init failed:",i),i}finally{this.isInitializing=!1}}async initialize(e,n,r,s){this.updateState({isLoading:!0,error:null});try{let i=rn(),o=It();this.config.debugMode&&(i&&console.log("\u{1F3AF} [FunnelClient] Detected A/B test variant:",i),o&&console.log("\u{1F3AF} [FunnelClient] Detected step ID:",o));let a=await this.resource.initialize({cmsSession:{customerId:e.customerId,sessionId:e.sessionId,storeId:n.id,accountId:n.accountId},funnelId:r,entryStepId:s,currentUrl:typeof window!="undefined"?window.location.href:void 0,funnelVariantId:i,funnelStepId:o});if(a.success&&a.context){let l=this.enrichContext(a.context);return this.handleSessionSuccess(l),zi(),l}else throw new Error(a.error||"Failed to initialize")}catch(i){let o=i instanceof Error?i:new Error(String(i));throw this.updateState({error:o,isLoading:!1}),o}}async navigate(e,n){var r,s,i,o,a,l;if(n!=null&&n.waitForSession&&!((r=this.state.context)!=null&&r.sessionId)){this.config.debugMode&&console.log("\u23F3 [FunnelClient] Waiting for session before navigation...");let c=5e3,d=Date.now();for(;!((s=this.state.context)!=null&&s.sessionId)&&Date.now()-d<c;)await new Promise(u=>setTimeout(u,100));(i=this.state.context)!=null&&i.sessionId&&this.config.debugMode&&console.log("\u2705 [FunnelClient] Session ready, proceeding with navigation")}if(!((o=this.state.context)!=null&&o.sessionId))throw new Error("No active session");this.updateState({isNavigating:!0,isLoading:!0});try{let c=rn(),d=It(),u=typeof window!="undefined"?window.location.href:void 0;!d&&this.config.stepId&&(d=this.config.stepId,this.config.debugMode&&console.log("\u{1F50D} [FunnelClient.navigate] Using stepId from config (no injection):",d)),!c&&this.config.variantId&&(c=this.config.variantId,this.config.debugMode&&console.log("\u{1F50D} [FunnelClient.navigate] Using variantId from config (no injection):",c)),this.config.debugMode&&console.log("\u{1F50D} [FunnelClient.navigate] Sending to backend:",{sessionId:this.state.context.sessionId,currentUrl:u,funnelStepId:d||"(not found)",funnelVariantId:c||"(not found)",hasInjectedStepId:!!It(),hasInjectedVariantId:!!rn(),usedConfigFallback:!It()&&!!this.config.stepId,customerTags:(n==null?void 0:n.customerTags)||"(none)",deviceId:(n==null?void 0:n.deviceId)||"(none)"});let p=(n==null?void 0:n.fireAndForget)||!1,m=await this.resource.navigate({sessionId:this.state.context.sessionId,event:e,currentUrl:u,funnelStepId:d,funnelVariantId:c,fireAndForget:p,customerTags:n==null?void 0:n.customerTags,deviceId:n==null?void 0:n.deviceId});if(!m.success||!m.result)throw new Error(m.error||"Navigation failed");let f=m.result;if(f.queued)return this.updateState({isNavigating:!1,isLoading:!1}),f.sessionId&&f.sessionId!==((a=this.state.context)==null?void 0:a.sessionId)&&(this.config.debugMode&&console.log("\u{1F525} [FunnelClient] Session ID updated: ".concat((l=this.state.context)==null?void 0:l.sessionId," \u2192 ").concat(f.sessionId)),this.state.context&&(this.state.context.sessionId=f.sessionId)),this.config.debugMode&&console.log("\u{1F525} [FunnelClient] Navigation queued (fire-and-forget mode)"),f;let y=(n==null?void 0:n.autoRedirect)!==void 0?n.autoRedirect:this.config.autoRedirect!==!1;return this.updateState({isNavigating:!1,isLoading:!1}),y&&(f!=null&&f.url)&&typeof window!="undefined"&&(this.config.debugMode&&console.log("\u{1F680} [FunnelClient] Auto-redirecting to:",f.url,"(skipped session refresh - next page will initialize)"),window.location.replace(f.url)),f}catch(c){let d=c instanceof Error?c:new Error(String(c));throw this.updateState({error:d,isNavigating:!1,isLoading:!1}),d}}async goToStep(e,n){return this.navigate({type:"direct_navigation",data:{targetStepId:e}},n)}async refreshSession(){var e;if((e=this.state.context)!=null&&e.sessionId)try{let n=await this.resource.getSession(this.state.context.sessionId);if(n.success&&n.context){let r=this.enrichContext(n.context);return this.updateState({context:r,sessionError:null}),r}}catch(n){this.updateState({sessionError:n instanceof Error?n:new Error(String(n))})}}async updateContext(e){var n;if(!((n=this.state.context)!=null&&n.sessionId))throw new Error("No active session");this.updateState({isLoading:!0});try{let r=await this.resource.updateContext(this.state.context.sessionId,{contextUpdates:e});if(r.success)await this.refreshSession();else throw new Error(r.error||"Failed to update context")}finally{this.updateState({isLoading:!1})}}async endSession(){var e;if((e=this.state.context)!=null&&e.sessionId)try{await this.resource.endSession(this.state.context.sessionId)}finally{this.state.context=null,this.updateState({context:null,isInitialized:!1})}}updateState(e){this.state=b(b({},this.state),e),this.eventDispatcher.notify(this.state)}handleSessionSuccess(e){xr(e.sessionId),this.updateState({context:e,isLoading:!1,isInitialized:!0,error:null,sessionError:null})}enrichContext(e){var o,a;if((((o=this.config.environment)==null?void 0:o.environment)||Et())!=="local")return e;let r=((a=this.config.pluginConfig)==null?void 0:a.staticResources)||{};if(Object.keys(r).length===0)return e;let s=e.static||{};return Object.keys(r).every(l=>s[l]===r[l])&&Object.keys(s).length===Object.keys(r).length?e:O(b({},e),{static:b(b({},r),s)})}}});var Ro=E(ce=>{"use strict";Object.defineProperty(ce,"__esModule",{value:!0});ce.PathError=ce.TokenData=void 0;ce.parse=Jr;ce.compile=Hu;ce.match=Vu;ce.pathToRegexp=Co;ce.stringify=Yu;var Gr="/",Wr=t=>t,Eo=new RegExp("^[$_\\p{ID_Start}]$","u"),Yr=new RegExp("^[$\\u200c\\u200d\\p{ID_Continue}]$","u"),ju={"{":"{","}":"}","(":"(",")":")","[":"[","]":"]","+":"+","?":"?","!":"!"};function Ku(t){return t.replace(/[{}()\[\]+?!:*\\]/g,"\\$&")}function we(t){return t.replace(/[.+*?^${}()[\]|/\\]/g,"\\$&")}var mn=class{constructor(e,n){this.tokens=e,this.originalPath=n}};ce.TokenData=mn;var Ue=class extends TypeError{constructor(e,n){let r=e;n&&(r+=": ".concat(n)),r+="; visit https://git.new/pathToRegexpError for info",super(r),this.originalPath=n}};ce.PathError=Ue;function Jr(t,e={}){let{encodePath:n=Wr}=e,r=[...t],s=[],i=0,o=0;function a(){let c="";if(Eo.test(r[i]))do c+=r[i++];while(Yr.test(r[i]));else if(r[i]==='"'){let d=i;for(;i++<r.length;){if(r[i]==='"'){i++,d=0;break}r[i]==="\\"&&i++,c+=r[i]}if(d)throw new Ue("Unterminated quote at index ".concat(d),t)}if(!c)throw new Ue("Missing parameter name at index ".concat(i),t);return c}for(;i<r.length;){let c=r[i],d=ju[c];d?s.push({type:d,index:i++,value:c}):c==="\\"?s.push({type:"escape",index:i++,value:r[i++]}):c===":"?s.push({type:"param",index:i++,value:a()}):c==="*"?s.push({type:"wildcard",index:i++,value:a()}):s.push({type:"char",index:i++,value:c})}s.push({type:"end",index:i,value:""});function l(c){let d=[];for(;;){let u=s[o++];if(u.type===c)break;if(u.type==="char"||u.type==="escape"){let p=u.value,m=s[o];for(;m.type==="char"||m.type==="escape";)p+=m.value,m=s[++o];d.push({type:"text",value:n(p)});continue}if(u.type==="param"||u.type==="wildcard"){d.push({type:u.type,name:u.value});continue}if(u.type==="{"){d.push({type:"group",tokens:l("}")});continue}throw new Ue("Unexpected ".concat(u.type," at index ").concat(u.index,", expected ").concat(c),t)}return d}return new mn(l("end"),t)}function Hu(t,e={}){let{encode:n=encodeURIComponent,delimiter:r=Gr}=e,s=typeof t=="object"?t:Jr(t,e),i=vo(s.tokens,r,n);return function(a={}){let[l,...c]=i(a);if(c.length)throw new TypeError("Missing parameters: ".concat(c.join(", ")));return l}}function vo(t,e,n){let r=t.map(s=>zu(s,e,n));return s=>{let i=[""];for(let o of r){let[a,...l]=o(s);i[0]+=a,i.push(...l)}return i}}function zu(t,e,n){if(t.type==="text")return()=>[t.value];if(t.type==="group"){let s=vo(t.tokens,e,n);return i=>{let[o,...a]=s(i);return a.length?[""]:[o]}}let r=n||Wr;return t.type==="wildcard"&&n!==!1?s=>{let i=s[t.name];if(i==null)return["",t.name];if(!Array.isArray(i)||i.length===0)throw new TypeError('Expected "'.concat(t.name,'" to be a non-empty array'));return[i.map((o,a)=>{if(typeof o!="string")throw new TypeError('Expected "'.concat(t.name,"/").concat(a,'" to be a string'));return r(o)}).join(e)]}:s=>{let i=s[t.name];if(i==null)return["",t.name];if(typeof i!="string")throw new TypeError('Expected "'.concat(t.name,'" to be a string'));return[r(i)]}}function Vu(t,e={}){let{decode:n=decodeURIComponent,delimiter:r=Gr}=e,{regexp:s,keys:i}=Co(t,e),o=i.map(a=>n===!1?Wr:a.type==="param"?n:l=>l.split(r).map(n));return function(l){let c=s.exec(l);if(!c)return!1;let d=c[0],u=Object.create(null);for(let p=1;p<c.length;p++){if(c[p]===void 0)continue;let m=i[p-1],f=o[p-1];u[m.name]=f(c[p])}return{path:d,params:u}}}function Co(t,e={}){let{delimiter:n=Gr,end:r=!0,sensitive:s=!1,trailing:i=!0}=e,o=[],a=s?"":"i",l=[];for(let u of To(t,[])){let p=typeof u=="object"?u:Jr(u,e);for(let m of gn(p.tokens,0,[]))l.push(Gu(m,n,o,p.originalPath))}let c="^(?:".concat(l.join("|"),")");return i&&(c+="(?:".concat(we(n),"$)?")),c+=r?"$":"(?=".concat(we(n),"|$)"),{regexp:new RegExp(c,a),keys:o}}function To(t,e){if(Array.isArray(t))for(let n of t)To(n,e);else e.push(t);return e}function*gn(t,e,n){if(e===t.length)return yield n;let r=t[e];if(r.type==="group")for(let s of gn(r.tokens,0,n.slice()))yield*Ke(gn(t,e+1,s));else n.push(r);yield*Ke(gn(t,e+1,n))}function Gu(t,e,n,r){let s="",i="",o=!0;for(let a of t){if(a.type==="text"){s+=we(a.value),i+=a.value,o||(o=a.value.includes(e));continue}if(a.type==="param"||a.type==="wildcard"){if(!o&&!i)throw new Ue('Missing text before "'.concat(a.name,'" ').concat(a.type),r);a.type==="param"?s+="(".concat(Wu(e,o?"":i),"+)"):s+="([\\s\\S]+)",n.push(a),i="",o=!1;continue}}return s}function Wu(t,e){return e.length<2?t.length<2?"[^".concat(we(t+e),"]"):"(?:(?!".concat(we(t),")[^").concat(we(e),"])"):t.length<2?"(?:(?!".concat(we(e),")[^").concat(we(t),"])"):"(?:(?!".concat(we(e),"|").concat(we(t),")[\\s\\S])")}function Po(t){let e="",n=0;function r(s){return Ju(s)&&Zu(t[n])?s:JSON.stringify(s)}for(;n<t.length;){let s=t[n++];if(s.type==="text"){e+=Ku(s.value);continue}if(s.type==="group"){e+="{".concat(Po(s.tokens),"}");continue}if(s.type==="param"){e+=":".concat(r(s.name));continue}if(s.type==="wildcard"){e+="*".concat(r(s.name));continue}throw new TypeError("Unknown token type: ".concat(s.type))}return e}function Yu(t){return Po(t.tokens)}function Ju(t){let[e,...n]=t;return Eo.test(e)&&n.every(r=>Yr.test(r))}function Zu(t){return t&&t.type==="text"?!Yr.test(t.value[0]):!0}});var bn=E(I=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});I.WEB_ELEMENTS_VERSION=I.USER_AGENT_HEADER=I.USER_AGENT_CLIENT=I.MERGE_CONTENT_TYPE=I.DEFAULT_ELEMENTS_BASE_URL=I.DEFAULT_BASE_URL=I.DD_TOKEN=I.DD_GIT_SHA=I.CONTENT_TYPE_HEADER=I.CLIENT_USER_AGENT_HEADER=I.CLIENT_BASE_PATHS=I.CF_RAY_HEADER=I.BT_TRACE_ID_HEADER=I.BT_IDEMPOTENCY_KEY_HEADER=I.BT_EXPOSE_PROXY_RESPONSE_HEADER=I.BROWSER_LIST=I.API_KEY_HEADER=void 0;var td="1.7.2";I.WEB_ELEMENTS_VERSION=td;var nd="BT-API-KEY";I.API_KEY_HEADER=nd;var rd="bt-trace-id";I.BT_TRACE_ID_HEADER=rd;var sd="cf-ray";I.CF_RAY_HEADER=sd;var id="bt-idempotency-key";I.BT_IDEMPOTENCY_KEY_HEADER=id;var od="BT-EXPOSE-RAW-PROXY-RESPONSE";I.BT_EXPOSE_PROXY_RESPONSE_HEADER=od;var ad="Content-Type";I.CONTENT_TYPE_HEADER=ad;var cd="application/merge-patch+json";I.MERGE_CONTENT_TYPE=cd;var ld="User-Agent";I.USER_AGENT_HEADER=ld;var ud="BT-CLIENT-USER-AGENT";I.CLIENT_USER_AGENT_HEADER=ud;var dd="BasisTheoryJS";I.USER_AGENT_CLIENT=dd;var fd="https://api.basistheory.com";I.DEFAULT_BASE_URL=fd;var pd="https://js.basistheory.com/hosted-elements";I.DEFAULT_ELEMENTS_BASE_URL=pd;var gd="pub5f53501515584007899577554c4aeda6";I.DD_TOKEN=gd;var md="b862d8e634020f77c61023ffeee4f0e01c36e871";I.DD_GIT_SHA=md;var hd={tokens:"tokens",tokenize:"tokenize",applications:"applications",applicationKeys:"applications",applicationTemplates:"application-templates",tenants:"tenants/self",logs:"logs",reactorFormulas:"reactor-formulas",reactors:"reactors",permissions:"permissions",proxies:"proxies",proxy:"proxy",sessions:"sessions",threeds:"3ds",tokenIntents:"token-intents"};I.CLIENT_BASE_PATHS=hd;var yd=[{browserName:"Firefox",browserUA:"Firefox"},{browserName:"SamsungBrowser",browserUA:"SamsungBrowser"},{browserName:"Opera",browserUA:"Opera"},{browserName:"Opera",browserUA:"OPR"},{browserName:"Microsoft Internet Explorer",browserUA:"Trident"},{browserName:"Microsoft Edge (Legacy)",browserUA:"Edge"},{browserName:"Microsoft Edge (Chromium)",browserUA:"Edg"},{browserName:"Google Chrome/Chromium",browserUA:"Chrome"},{browserName:"Safari",browserUA:"Safari"}];I.BROWSER_LIST=yd});var ps=E((Gy,ha)=>{"use strict";function Go(t,e){return function(){return t.apply(e,arguments)}}var{toString:bd}=Object.prototype,{getPrototypeOf:as}=Object,{iterator:Pn,toStringTag:Wo}=Symbol,Rn=(t=>e=>{let n=bd.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),ue=t=>(t=t.toLowerCase(),e=>Rn(e)===t),_n=t=>e=>typeof e===t,{isArray:dt}=Array,ct=_n("undefined");function Mt(t){return t!==null&&!ct(t)&&t.constructor!==null&&!ct(t.constructor)&&J(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var Yo=ue("ArrayBuffer");function wd(t){let e;return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&Yo(t.buffer),e}var Sd=_n("string"),J=_n("function"),Jo=_n("number"),Ut=t=>t!==null&&typeof t=="object",Ed=t=>t===!0||t===!1,Sn=t=>{if(Rn(t)!=="object")return!1;let e=as(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Wo in t)&&!(Pn in t)},vd=t=>{if(!Ut(t)||Mt(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch(e){return!1}},Cd=ue("Date"),Td=ue("File"),Pd=ue("Blob"),Rd=ue("FileList"),_d=t=>Ut(t)&&J(t.pipe),Id=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||J(t.append)&&((e=Rn(t))==="formdata"||e==="object"&&J(t.toString)&&t.toString()==="[object FormData]"))},Ad=ue("URLSearchParams"),[xd,kd,Od,Dd]=["ReadableStream","Request","Response","Headers"].map(ue),Nd=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function $t(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t=="undefined")return;let r,s;if(typeof t!="object"&&(t=[t]),dt(t))for(r=0,s=t.length;r<s;r++)e.call(null,t[r],r,t);else{if(Mt(t))return;let i=n?Object.getOwnPropertyNames(t):Object.keys(t),o=i.length,a;for(r=0;r<o;r++)a=i[r],e.call(null,t[a],a,t)}}function Zo(t,e){if(Mt(t))return null;e=e.toLowerCase();let n=Object.keys(t),r=n.length,s;for(;r-- >0;)if(s=n[r],e===s.toLowerCase())return s;return null}var $e=typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:typeof window!="undefined"?window:global,Xo=t=>!ct(t)&&t!==$e;function ts(){let{caseless:t,skipUndefined:e}=Xo(this)&&this||{},n={},r=(s,i)=>{let o=t&&Zo(n,i)||i;Sn(n[o])&&Sn(s)?n[o]=ts(n[o],s):Sn(s)?n[o]=ts({},s):dt(s)?n[o]=s.slice():(!e||!ct(s))&&(n[o]=s)};for(let s=0,i=arguments.length;s<i;s++)arguments[s]&&$t(arguments[s],r);return n}var Ld=(t,e,n,{allOwnKeys:r}={})=>($t(e,(s,i)=>{n&&J(s)?t[i]=Go(s,n):t[i]=s},{allOwnKeys:r}),t),Bd=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),Md=(t,e,n,r)=>{t.prototype=Object.create(e.prototype,r),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},Ud=(t,e,n,r)=>{let s,i,o,a={};if(e=e||{},t==null)return e;do{for(s=Object.getOwnPropertyNames(t),i=s.length;i-- >0;)o=s[i],(!r||r(o,t,e))&&!a[o]&&(e[o]=t[o],a[o]=!0);t=n!==!1&&as(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},$d=(t,e,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=e.length;let r=t.indexOf(e,n);return r!==-1&&r===n},Fd=t=>{if(!t)return null;if(dt(t))return t;let e=t.length;if(!Jo(e))return null;let n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},qd=(t=>e=>t&&e instanceof t)(typeof Uint8Array!="undefined"&&as(Uint8Array)),jd=(t,e)=>{let r=(t&&t[Pn]).call(t),s;for(;(s=r.next())&&!s.done;){let i=s.value;e.call(t,i[0],i[1])}},Kd=(t,e)=>{let n,r=[];for(;(n=t.exec(e))!==null;)r.push(n);return r},Hd=ue("HTMLFormElement"),zd=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),ko=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),Vd=ue("RegExp"),Qo=(t,e)=>{let n=Object.getOwnPropertyDescriptors(t),r={};$t(n,(s,i)=>{let o;(o=e(s,i,t))!==!1&&(r[i]=o||s)}),Object.defineProperties(t,r)},Gd=t=>{Qo(t,(e,n)=>{if(J(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;let r=t[n];if(J(r)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},Wd=(t,e)=>{let n={},r=s=>{s.forEach(i=>{n[i]=!0})};return dt(t)?r(t):r(String(t).split(e)),n},Yd=()=>{},Jd=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function Zd(t){return!!(t&&J(t.append)&&t[Wo]==="FormData"&&t[Pn])}var Xd=t=>{let e=new Array(10),n=(r,s)=>{if(Ut(r)){if(e.indexOf(r)>=0)return;if(Mt(r))return r;if(!("toJSON"in r)){e[s]=r;let i=dt(r)?[]:{};return $t(r,(o,a)=>{let l=n(o,s+1);!ct(l)&&(i[a]=l)}),e[s]=void 0,i}}return r};return n(t,0)},Qd=ue("AsyncFunction"),ef=t=>t&&(Ut(t)||J(t))&&J(t.then)&&J(t.catch),ea=((t,e)=>t?setImmediate:e?((n,r)=>($e.addEventListener("message",({source:s,data:i})=>{s===$e&&i===n&&r.length&&r.shift()()},!1),s=>{r.push(s),$e.postMessage(n,"*")}))("axios@".concat(Math.random()),[]):n=>setTimeout(n))(typeof setImmediate=="function",J($e.postMessage)),tf=typeof queueMicrotask!="undefined"?queueMicrotask.bind($e):typeof process!="undefined"&&process.nextTick||ea,nf=t=>t!=null&&J(t[Pn]),h={isArray:dt,isArrayBuffer:Yo,isBuffer:Mt,isFormData:Id,isArrayBufferView:wd,isString:Sd,isNumber:Jo,isBoolean:Ed,isObject:Ut,isPlainObject:Sn,isEmptyObject:vd,isReadableStream:xd,isRequest:kd,isResponse:Od,isHeaders:Dd,isUndefined:ct,isDate:Cd,isFile:Td,isBlob:Pd,isRegExp:Vd,isFunction:J,isStream:_d,isURLSearchParams:Ad,isTypedArray:qd,isFileList:Rd,forEach:$t,merge:ts,extend:Ld,trim:Nd,stripBOM:Bd,inherits:Md,toFlatObject:Ud,kindOf:Rn,kindOfTest:ue,endsWith:$d,toArray:Fd,forEachEntry:jd,matchAll:Kd,isHTMLForm:Hd,hasOwnProperty:ko,hasOwnProp:ko,reduceDescriptors:Qo,freezeMethods:Gd,toObjectSet:Wd,toCamelCase:zd,noop:Yd,toFiniteNumber:Jd,findKey:Zo,global:$e,isContextDefined:Xo,isSpecCompliantForm:Zd,toJSONObject:Xd,isAsyncFn:Qd,isThenable:ef,setImmediate:ea,asap:tf,isIterable:nf};function P(t,e,n,r,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),s&&(this.response=s,this.status=s.status?s.status:null)}h.inherits(P,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:h.toJSONObject(this.config),code:this.code,status:this.status}}});var ta=P.prototype,na={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{na[t]={value:t}});Object.defineProperties(P,na);Object.defineProperty(ta,"isAxiosError",{value:!0});P.from=(t,e,n,r,s,i)=>{let o=Object.create(ta);h.toFlatObject(t,o,function(d){return d!==Error.prototype},c=>c!=="isAxiosError");let a=t&&t.message?t.message:"Error",l=e==null&&t?t.code:e;return P.call(o,a,l,n,r,s),t&&o.cause==null&&Object.defineProperty(o,"cause",{value:t,configurable:!0}),o.name=t&&t.name||"Error",i&&Object.assign(o,i),o};var rf=null;function ns(t){return h.isPlainObject(t)||h.isArray(t)}function ra(t){return h.endsWith(t,"[]")?t.slice(0,-2):t}function Oo(t,e,n){return t?t.concat(e).map(function(s,i){return s=ra(s),!n&&i?"["+s+"]":s}).join(n?".":""):e}function sf(t){return h.isArray(t)&&!t.some(ns)}var of=h.toFlatObject(h,{},null,function(e){return/^is[A-Z]/.test(e)});function In(t,e,n){if(!h.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,n=h.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(y,g){return!h.isUndefined(g[y])});let r=n.metaTokens,s=n.visitor||d,i=n.dots,o=n.indexes,l=(n.Blob||typeof Blob!="undefined"&&Blob)&&h.isSpecCompliantForm(e);if(!h.isFunction(s))throw new TypeError("visitor must be a function");function c(f){if(f===null)return"";if(h.isDate(f))return f.toISOString();if(h.isBoolean(f))return f.toString();if(!l&&h.isBlob(f))throw new P("Blob is not supported. Use a Buffer instead.");return h.isArrayBuffer(f)||h.isTypedArray(f)?l&&typeof Blob=="function"?new Blob([f]):Buffer.from(f):f}function d(f,y,g){let w=f;if(f&&!g&&typeof f=="object"){if(h.endsWith(y,"{}"))y=r?y:y.slice(0,-2),f=JSON.stringify(f);else if(h.isArray(f)&&sf(f)||(h.isFileList(f)||h.endsWith(y,"[]"))&&(w=h.toArray(f)))return y=ra(y),w.forEach(function(S,C){!(h.isUndefined(S)||S===null)&&e.append(o===!0?Oo([y],C,i):o===null?y:y+"[]",c(S))}),!1}return ns(f)?!0:(e.append(Oo(g,y,i),c(f)),!1)}let u=[],p=Object.assign(of,{defaultVisitor:d,convertValue:c,isVisitable:ns});function m(f,y){if(!h.isUndefined(f)){if(u.indexOf(f)!==-1)throw Error("Circular reference detected in "+y.join("."));u.push(f),h.forEach(f,function(w,v){(!(h.isUndefined(w)||w===null)&&s.call(e,w,h.isString(v)?v.trim():v,y,p))===!0&&m(w,y?y.concat(v):[v])}),u.pop()}}if(!h.isObject(t))throw new TypeError("data must be an object");return m(t),e}function Do(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(r){return e[r]})}function cs(t,e){this._pairs=[],t&&In(t,this,e)}var sa=cs.prototype;sa.append=function(e,n){this._pairs.push([e,n])};sa.toString=function(e){let n=e?function(r){return e.call(this,r,Do)}:Do;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function af(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function ia(t,e,n){if(!e)return t;let r=n&&n.encode||af;h.isFunction(n)&&(n={serialize:n});let s=n&&n.serialize,i;if(s?i=s(e,n):i=h.isURLSearchParams(e)?e.toString():new cs(e,n).toString(r),i){let o=t.indexOf("#");o!==-1&&(t=t.slice(0,o)),t+=(t.indexOf("?")===-1?"?":"&")+i}return t}var rs=class{constructor(){this.handlers=[]}use(e,n,r){return this.handlers.push({fulfilled:e,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){h.forEach(this.handlers,function(r){r!==null&&e(r)})}},No=rs,oa={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},cf=typeof URLSearchParams!="undefined"?URLSearchParams:cs,lf=typeof FormData!="undefined"?FormData:null,uf=typeof Blob!="undefined"?Blob:null,df={isBrowser:!0,classes:{URLSearchParams:cf,FormData:lf,Blob:uf},protocols:["http","https","file","blob","url","data"]},ls=typeof window!="undefined"&&typeof document!="undefined",ss=typeof navigator=="object"&&navigator||void 0,ff=ls&&(!ss||["ReactNative","NativeScript","NS"].indexOf(ss.product)<0),pf=typeof WorkerGlobalScope!="undefined"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",gf=ls&&window.location.href||"http://localhost",mf=Object.freeze({__proto__:null,hasBrowserEnv:ls,hasStandardBrowserWebWorkerEnv:pf,hasStandardBrowserEnv:ff,navigator:ss,origin:gf}),K=b(b({},mf),df);function hf(t,e){return In(t,new K.classes.URLSearchParams,b({visitor:function(n,r,s,i){return K.isNode&&h.isBuffer(n)?(this.append(r,n.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function yf(t){return h.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function bf(t){let e={},n=Object.keys(t),r,s=n.length,i;for(r=0;r<s;r++)i=n[r],e[i]=t[i];return e}function aa(t){function e(n,r,s,i){let o=n[i++];if(o==="__proto__")return!0;let a=Number.isFinite(+o),l=i>=n.length;return o=!o&&h.isArray(s)?s.length:o,l?(h.hasOwnProp(s,o)?s[o]=[s[o],r]:s[o]=r,!a):((!s[o]||!h.isObject(s[o]))&&(s[o]=[]),e(n,r,s[o],i)&&h.isArray(s[o])&&(s[o]=bf(s[o])),!a)}if(h.isFormData(t)&&h.isFunction(t.entries)){let n={};return h.forEachEntry(t,(r,s)=>{e(yf(r),s,n,0)}),n}return null}function wf(t,e,n){if(h.isString(t))try{return(e||JSON.parse)(t),h.trim(t)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(t)}var us={transitional:oa,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){let r=n.getContentType()||"",s=r.indexOf("application/json")>-1,i=h.isObject(e);if(i&&h.isHTMLForm(e)&&(e=new FormData(e)),h.isFormData(e))return s?JSON.stringify(aa(e)):e;if(h.isArrayBuffer(e)||h.isBuffer(e)||h.isStream(e)||h.isFile(e)||h.isBlob(e)||h.isReadableStream(e))return e;if(h.isArrayBufferView(e))return e.buffer;if(h.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return hf(e,this.formSerializer).toString();if((a=h.isFileList(e))||r.indexOf("multipart/form-data")>-1){let l=this.env&&this.env.FormData;return In(a?{"files[]":e}:e,l&&new l,this.formSerializer)}}return i||s?(n.setContentType("application/json",!1),wf(e)):e}],transformResponse:[function(e){let n=this.transitional||us.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(h.isResponse(e)||h.isReadableStream(e))return e;if(e&&h.isString(e)&&(r&&!this.responseType||s)){let o=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(e,this.parseReviver)}catch(a){if(o)throw a.name==="SyntaxError"?P.from(a,P.ERR_BAD_RESPONSE,this,null,this.response):a}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:K.classes.FormData,Blob:K.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};h.forEach(["delete","get","head","post","put","patch"],t=>{us.headers[t]={}});var ds=us,Sf=h.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Ef=t=>{let e={},n,r,s;return t&&t.split("\n").forEach(function(o){s=o.indexOf(":"),n=o.substring(0,s).trim().toLowerCase(),r=o.substring(s+1).trim(),!(!n||e[n]&&Sf[n])&&(n==="set-cookie"?e[n]?e[n].push(r):e[n]=[r]:e[n]=e[n]?e[n]+", "+r:r)}),e},Lo=Symbol("internals");function Bt(t){return t&&String(t).trim().toLowerCase()}function En(t){return t===!1||t==null?t:h.isArray(t)?t.map(En):String(t)}function vf(t){let e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,r;for(;r=n.exec(t);)e[r[1]]=r[2];return e}var Cf=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Xr(t,e,n,r,s){if(h.isFunction(r))return r.call(this,e,n);if(s&&(e=n),!!h.isString(e)){if(h.isString(r))return e.indexOf(r)!==-1;if(h.isRegExp(r))return r.test(e)}}function Tf(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,r)=>n.toUpperCase()+r)}function Pf(t,e){let n=h.toCamelCase(" "+e);["get","set","has"].forEach(r=>{Object.defineProperty(t,r+n,{value:function(s,i,o){return this[r].call(this,e,s,i,o)},configurable:!0})})}var lt=class{constructor(e){e&&this.set(e)}set(e,n,r){let s=this;function i(a,l,c){let d=Bt(l);if(!d)throw new Error("header name must be a non-empty string");let u=h.findKey(s,d);(!u||s[u]===void 0||c===!0||c===void 0&&s[u]!==!1)&&(s[u||l]=En(a))}let o=(a,l)=>h.forEach(a,(c,d)=>i(c,d,l));if(h.isPlainObject(e)||e instanceof this.constructor)o(e,n);else if(h.isString(e)&&(e=e.trim())&&!Cf(e))o(Ef(e),n);else if(h.isObject(e)&&h.isIterable(e)){let a={},l,c;for(let d of e){if(!h.isArray(d))throw TypeError("Object iterator must return a key-value pair");a[c=d[0]]=(l=a[c])?h.isArray(l)?[...l,d[1]]:[l,d[1]]:d[1]}o(a,n)}else e!=null&&i(n,e,r);return this}get(e,n){if(e=Bt(e),e){let r=h.findKey(this,e);if(r){let s=this[r];if(!n)return s;if(n===!0)return vf(s);if(h.isFunction(n))return n.call(this,s,r);if(h.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=Bt(e),e){let r=h.findKey(this,e);return!!(r&&this[r]!==void 0&&(!n||Xr(this,this[r],r,n)))}return!1}delete(e,n){let r=this,s=!1;function i(o){if(o=Bt(o),o){let a=h.findKey(r,o);a&&(!n||Xr(r,r[a],a,n))&&(delete r[a],s=!0)}}return h.isArray(e)?e.forEach(i):i(e),s}clear(e){let n=Object.keys(this),r=n.length,s=!1;for(;r--;){let i=n[r];(!e||Xr(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){let n=this,r={};return h.forEach(this,(s,i)=>{let o=h.findKey(r,i);if(o){n[o]=En(s),delete n[i];return}let a=e?Tf(i):String(i).trim();a!==i&&delete n[i],n[a]=En(s),r[a]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){let n=Object.create(null);return h.forEach(this,(r,s)=>{r!=null&&r!==!1&&(n[s]=e&&h.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,n])=>e+": "+n).join("\n")}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...n){let r=new this(e);return n.forEach(s=>r.set(s)),r}static accessor(e){let r=(this[Lo]=this[Lo]={accessors:{}}).accessors,s=this.prototype;function i(o){let a=Bt(o);r[a]||(Pf(s,o),r[a]=!0)}return h.isArray(e)?e.forEach(i):i(e),this}};lt.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);h.reduceDescriptors(lt.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(r){this[n]=r}}});h.freezeMethods(lt);var le=lt;function Qr(t,e){let n=this||ds,r=e||n,s=le.from(r.headers),i=r.data;return h.forEach(t,function(a){i=a.call(n,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function ca(t){return!!(t&&t.__CANCEL__)}function ft(t,e,n){P.call(this,t==null?"canceled":t,P.ERR_CANCELED,e,n),this.name="CanceledError"}h.inherits(ft,P,{__CANCEL__:!0});function la(t,e,n){let r=n.config.validateStatus;!n.status||!r||r(n.status)?t(n):e(new P("Request failed with status code "+n.status,[P.ERR_BAD_REQUEST,P.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function Rf(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function _f(t,e){t=t||10;let n=new Array(t),r=new Array(t),s=0,i=0,o;return e=e!==void 0?e:1e3,function(l){let c=Date.now(),d=r[i];o||(o=c),n[s]=l,r[s]=c;let u=i,p=0;for(;u!==s;)p+=n[u++],u=u%t;if(s=(s+1)%t,s===i&&(i=(i+1)%t),c-o<e)return;let m=d&&c-d;return m?Math.round(p*1e3/m):void 0}}function If(t,e){let n=0,r=1e3/e,s,i,o=(c,d=Date.now())=>{n=d,s=null,i&&(clearTimeout(i),i=null),t(...c)};return[(...c)=>{let d=Date.now(),u=d-n;u>=r?o(c,d):(s=c,i||(i=setTimeout(()=>{i=null,o(s)},r-u)))},()=>s&&o(s)]}var Tn=(t,e,n=3)=>{let r=0,s=_f(50,250);return If(i=>{let o=i.loaded,a=i.lengthComputable?i.total:void 0,l=o-r,c=s(l),d=o<=a;r=o;let u={loaded:o,total:a,progress:a?o/a:void 0,bytes:l,rate:c||void 0,estimated:c&&a&&d?(a-o)/c:void 0,event:i,lengthComputable:a!=null,[e?"download":"upload"]:!0};t(u)},n)},Bo=(t,e)=>{let n=t!=null;return[r=>e[0]({lengthComputable:n,total:t,loaded:r}),e[1]]},Mo=t=>(...e)=>h.asap(()=>t(...e)),Af=K.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,K.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(K.origin),K.navigator&&/(msie|trident)/i.test(K.navigator.userAgent)):()=>!0,xf=K.hasStandardBrowserEnv?{write(t,e,n,r,s,i,o){if(typeof document=="undefined")return;let a=["".concat(t,"=").concat(encodeURIComponent(e))];h.isNumber(n)&&a.push("expires=".concat(new Date(n).toUTCString())),h.isString(r)&&a.push("path=".concat(r)),h.isString(s)&&a.push("domain=".concat(s)),i===!0&&a.push("secure"),h.isString(o)&&a.push("SameSite=".concat(o)),document.cookie=a.join("; ")},read(t){if(typeof document=="undefined")return null;let e=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function kf(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function Of(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function ua(t,e,n){let r=!kf(e);return t&&(r||n==!1)?Of(t,e):e}var Uo=t=>t instanceof le?b({},t):t;function Fe(t,e){e=e||{};let n={};function r(c,d,u,p){return h.isPlainObject(c)&&h.isPlainObject(d)?h.merge.call({caseless:p},c,d):h.isPlainObject(d)?h.merge({},d):h.isArray(d)?d.slice():d}function s(c,d,u,p){if(h.isUndefined(d)){if(!h.isUndefined(c))return r(void 0,c,u,p)}else return r(c,d,u,p)}function i(c,d){if(!h.isUndefined(d))return r(void 0,d)}function o(c,d){if(h.isUndefined(d)){if(!h.isUndefined(c))return r(void 0,c)}else return r(void 0,d)}function a(c,d,u){if(u in e)return r(c,d);if(u in t)return r(void 0,c)}let l={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:a,headers:(c,d,u)=>s(Uo(c),Uo(d),u,!0)};return h.forEach(Object.keys(b(b({},t),e)),function(d){let u=l[d]||s,p=u(t[d],e[d],d);h.isUndefined(p)&&u!==a||(n[d]=p)}),n}var da=t=>{let e=Fe({},t),{data:n,withXSRFToken:r,xsrfHeaderName:s,xsrfCookieName:i,headers:o,auth:a}=e;if(e.headers=o=le.from(o),e.url=ia(ua(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):""))),h.isFormData(n)){if(K.hasStandardBrowserEnv||K.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if(h.isFunction(n.getHeaders)){let l=n.getHeaders(),c=["content-type","content-length"];Object.entries(l).forEach(([d,u])=>{c.includes(d.toLowerCase())&&o.set(d,u)})}}if(K.hasStandardBrowserEnv&&(r&&h.isFunction(r)&&(r=r(e)),r||r!==!1&&Af(e.url))){let l=s&&i&&xf.read(i);l&&o.set(s,l)}return e},Df=typeof XMLHttpRequest!="undefined",Nf=Df&&function(t){return new Promise(function(n,r){let s=da(t),i=s.data,o=le.from(s.headers).normalize(),{responseType:a,onUploadProgress:l,onDownloadProgress:c}=s,d,u,p,m,f;function y(){m&&m(),f&&f(),s.cancelToken&&s.cancelToken.unsubscribe(d),s.signal&&s.signal.removeEventListener("abort",d)}let g=new XMLHttpRequest;g.open(s.method.toUpperCase(),s.url,!0),g.timeout=s.timeout;function w(){if(!g)return;let S=le.from("getAllResponseHeaders"in g&&g.getAllResponseHeaders()),R={data:!a||a==="text"||a==="json"?g.responseText:g.response,status:g.status,statusText:g.statusText,headers:S,config:t,request:g};la(function(A){n(A),y()},function(A){r(A),y()},R),g=null}"onloadend"in g?g.onloadend=w:g.onreadystatechange=function(){!g||g.readyState!==4||g.status===0&&!(g.responseURL&&g.responseURL.indexOf("file:")===0)||setTimeout(w)},g.onabort=function(){g&&(r(new P("Request aborted",P.ECONNABORTED,t,g)),g=null)},g.onerror=function(C){let R=C&&C.message?C.message:"Network Error",_=new P(R,P.ERR_NETWORK,t,g);_.event=C||null,r(_),g=null},g.ontimeout=function(){let C=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded",R=s.transitional||oa;s.timeoutErrorMessage&&(C=s.timeoutErrorMessage),r(new P(C,R.clarifyTimeoutError?P.ETIMEDOUT:P.ECONNABORTED,t,g)),g=null},i===void 0&&o.setContentType(null),"setRequestHeader"in g&&h.forEach(o.toJSON(),function(C,R){g.setRequestHeader(R,C)}),h.isUndefined(s.withCredentials)||(g.withCredentials=!!s.withCredentials),a&&a!=="json"&&(g.responseType=s.responseType),c&&([p,f]=Tn(c,!0),g.addEventListener("progress",p)),l&&g.upload&&([u,m]=Tn(l),g.upload.addEventListener("progress",u),g.upload.addEventListener("loadend",m)),(s.cancelToken||s.signal)&&(d=S=>{g&&(r(!S||S.type?new ft(null,t,g):S),g.abort(),g=null)},s.cancelToken&&s.cancelToken.subscribe(d),s.signal&&(s.signal.aborted?d():s.signal.addEventListener("abort",d)));let v=Rf(s.url);if(v&&K.protocols.indexOf(v)===-1){r(new P("Unsupported protocol "+v+":",P.ERR_BAD_REQUEST,t));return}g.send(i||null)})},Lf=(t,e)=>{let{length:n}=t=t?t.filter(Boolean):[];if(e||n){let r=new AbortController,s,i=function(c){if(!s){s=!0,a();let d=c instanceof Error?c:this.reason;r.abort(d instanceof P?d:new ft(d instanceof Error?d.message:d))}},o=e&&setTimeout(()=>{o=null,i(new P("timeout ".concat(e," of ms exceeded"),P.ETIMEDOUT))},e),a=()=>{t&&(o&&clearTimeout(o),o=null,t.forEach(c=>{c.unsubscribe?c.unsubscribe(i):c.removeEventListener("abort",i)}),t=null)};t.forEach(c=>c.addEventListener("abort",i));let{signal:l}=r;return l.unsubscribe=()=>h.asap(a),l}},Bf=Lf,Mf=function*(t,e){let n=t.byteLength;if(!e||n<e){yield t;return}let r=0,s;for(;r<n;)s=r+e,yield t.slice(r,s),r=s},Uf=function(t,e){return Rr(this,null,function*(){try{for(var n=Di($f(t)),r,s,i;r=!(s=yield new Ne(n.next())).done;r=!1){let o=s.value;yield*Ke(Mf(o,e))}}catch(s){i=[s]}finally{try{r&&(s=n.return)&&(yield new Ne(s.call(n)))}finally{if(i)throw i[0]}}})},$f=function(t){return Rr(this,null,function*(){if(t[Symbol.asyncIterator]){yield*Ke(t);return}let e=t.getReader();try{for(;;){let{done:n,value:r}=yield new Ne(e.read());if(n)break;yield r}}finally{yield new Ne(e.cancel())}})},$o=(t,e,n,r)=>{let s=Uf(t,e),i=0,o,a=l=>{o||(o=!0,r&&r(l))};return new ReadableStream({async pull(l){try{let{done:c,value:d}=await s.next();if(c){a(),l.close();return}let u=d.byteLength;if(n){let p=i+=u;n(p)}l.enqueue(new Uint8Array(d))}catch(c){throw a(c),c}},cancel(l){return a(l),s.return()}},{highWaterMark:2})},Fo=64*1024,{isFunction:wn}=h,Ff=(({Request:t,Response:e})=>({Request:t,Response:e}))(h.global),{ReadableStream:qo,TextEncoder:jo}=h.global,Ko=(t,...e)=>{try{return!!t(...e)}catch(n){return!1}},qf=t=>{t=h.merge.call({skipUndefined:!0},Ff,t);let{fetch:e,Request:n,Response:r}=t,s=e?wn(e):typeof fetch=="function",i=wn(n),o=wn(r);if(!s)return!1;let a=s&&wn(qo),l=s&&(typeof jo=="function"?(f=>y=>f.encode(y))(new jo):async f=>new Uint8Array(await new n(f).arrayBuffer())),c=i&&a&&Ko(()=>{let f=!1,y=new n(K.origin,{body:new qo,method:"POST",get duplex(){return f=!0,"half"}}).headers.has("Content-Type");return f&&!y}),d=o&&a&&Ko(()=>h.isReadableStream(new r("").body)),u={stream:d&&(f=>f.body)};s&&["text","arrayBuffer","blob","formData","stream"].forEach(f=>{!u[f]&&(u[f]=(y,g)=>{let w=y&&y[f];if(w)return w.call(y);throw new P("Response type '".concat(f,"' is not supported"),P.ERR_NOT_SUPPORT,g)})});let p=async f=>{if(f==null)return 0;if(h.isBlob(f))return f.size;if(h.isSpecCompliantForm(f))return(await new n(K.origin,{method:"POST",body:f}).arrayBuffer()).byteLength;if(h.isArrayBufferView(f)||h.isArrayBuffer(f))return f.byteLength;if(h.isURLSearchParams(f)&&(f=f+""),h.isString(f))return(await l(f)).byteLength},m=async(f,y)=>{let g=h.toFiniteNumber(f.getContentLength());return g==null?p(y):g};return async f=>{let{url:y,method:g,data:w,signal:v,cancelToken:S,timeout:C,onDownloadProgress:R,onUploadProgress:_,responseType:A,headers:N,withCredentials:W="same-origin",fetchOptions:U}=da(f),q=e||fetch;A=A?(A+"").toLowerCase():"text";let $=Bf([v,S&&S.toAbortSignal()],C),Ae=null,he=$&&$.unsubscribe&&(()=>{$.unsubscribe()}),yt;try{if(_&&c&&g!=="get"&&g!=="head"&&(yt=await m(N,w))!==0){let j=new n(y,{method:"POST",body:w,duplex:"half"}),te;if(h.isFormData(w)&&(te=j.headers.get("content-type"))&&N.setContentType(te),j.body){let[Ce,ye]=Bo(yt,Tn(Mo(_)));w=$o(j.body,Fo,Ce,ye)}}h.isString(W)||(W=W?"include":"omit");let Q=i&&"credentials"in n.prototype,bt=O(b({},U),{signal:$,method:g.toUpperCase(),headers:N.normalize().toJSON(),body:w,duplex:"half",credentials:Q?W:void 0});Ae=i&&new n(y,bt);let k=await(i?q(Ae,U):q(y,bt)),xe=d&&(A==="stream"||A==="response");if(d&&(R||xe&&he)){let j={};["status","statusText","headers"].forEach(ke=>{j[ke]=k[ke]});let te=h.toFiniteNumber(k.headers.get("content-length")),[Ce,ye]=R&&Bo(te,Tn(Mo(R),!0))||[];k=new r($o(k.body,Fo,Ce,()=>{ye&&ye(),he&&he()}),j)}A=A||"text";let B=await u[h.findKey(u,A)||"text"](k,f);return!xe&&he&&he(),await new Promise((j,te)=>{la(j,te,{data:B,headers:le.from(k.headers),status:k.status,statusText:k.statusText,config:f,request:Ae})})}catch(Q){throw he&&he(),Q&&Q.name==="TypeError"&&/Load failed|fetch/i.test(Q.message)?Object.assign(new P("Network Error",P.ERR_NETWORK,f,Ae),{cause:Q.cause||Q}):P.from(Q,Q&&Q.code,f,Ae)}}},jf=new Map,fa=t=>{let e=t&&t.env||{},{fetch:n,Request:r,Response:s}=e,i=[r,s,n],o=i.length,a=o,l,c,d=jf;for(;a--;)l=i[a],c=d.get(l),c===void 0&&d.set(l,c=a?new Map:qf(e)),d=c;return c};fa();var fs={http:rf,xhr:Nf,fetch:{get:fa}};h.forEach(fs,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch(n){}Object.defineProperty(t,"adapterName",{value:e})}});var Ho=t=>"- ".concat(t),Kf=t=>h.isFunction(t)||t===null||t===!1;function Hf(t,e){t=h.isArray(t)?t:[t];let{length:n}=t,r,s,i={};for(let o=0;o<n;o++){r=t[o];let a;if(s=r,!Kf(r)&&(s=fs[(a=String(r)).toLowerCase()],s===void 0))throw new P("Unknown adapter '".concat(a,"'"));if(s&&(h.isFunction(s)||(s=s.get(e))))break;i[a||"#"+o]=s}if(!s){let o=Object.entries(i).map(([l,c])=>"adapter ".concat(l," ")+(c===!1?"is not supported by the environment":"is not available in the build")),a=n?o.length>1?"since :\n"+o.map(Ho).join("\n"):" "+Ho(o[0]):"as no adapter specified";throw new P("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return s}var pa={getAdapter:Hf,adapters:fs};function es(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new ft(null,t)}function zo(t){return es(t),t.headers=le.from(t.headers),t.data=Qr.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),pa.getAdapter(t.adapter||ds.adapter,t)(t).then(function(r){return es(t),r.data=Qr.call(t,t.transformResponse,r),r.headers=le.from(r.headers),r},function(r){return ca(r)||(es(t),r&&r.response&&(r.response.data=Qr.call(t,t.transformResponse,r.response),r.response.headers=le.from(r.response.headers))),Promise.reject(r)})}var ga="1.13.2",An={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{An[t]=function(r){return typeof r===t||"a"+(e<1?"n ":" ")+t}});var Vo={};An.transitional=function(e,n,r){function s(i,o){return"[Axios v"+ga+"] Transitional option '"+i+"'"+o+(r?". "+r:"")}return(i,o,a)=>{if(e===!1)throw new P(s(o," has been removed"+(n?" in "+n:"")),P.ERR_DEPRECATED);return n&&!Vo[o]&&(Vo[o]=!0,console.warn(s(o," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(i,o,a):!0}};An.spelling=function(e){return(n,r)=>(console.warn("".concat(r," is likely a misspelling of ").concat(e)),!0)};function zf(t,e,n){if(typeof t!="object")throw new P("options must be an object",P.ERR_BAD_OPTION_VALUE);let r=Object.keys(t),s=r.length;for(;s-- >0;){let i=r[s],o=e[i];if(o){let a=t[i],l=a===void 0||o(a,i,t);if(l!==!0)throw new P("option "+i+" must be "+l,P.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new P("Unknown option "+i,P.ERR_BAD_OPTION)}}var vn={assertOptions:zf,validators:An},Se=vn.validators,ut=class{constructor(e){this.defaults=e||{},this.interceptors={request:new No,response:new No}}async request(e,n){try{return await this._request(e,n)}catch(r){if(r instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;let i=s.stack?s.stack.replace(/^.+\n/,""):"";try{r.stack?i&&!String(r.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(r.stack+="\n"+i):r.stack=i}catch(o){}}throw r}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=Fe(this.defaults,n);let{transitional:r,paramsSerializer:s,headers:i}=n;r!==void 0&&vn.assertOptions(r,{silentJSONParsing:Se.transitional(Se.boolean),forcedJSONParsing:Se.transitional(Se.boolean),clarifyTimeoutError:Se.transitional(Se.boolean)},!1),s!=null&&(h.isFunction(s)?n.paramsSerializer={serialize:s}:vn.assertOptions(s,{encode:Se.function,serialize:Se.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),vn.assertOptions(n,{baseUrl:Se.spelling("baseURL"),withXsrfToken:Se.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=i&&h.merge(i.common,i[n.method]);i&&h.forEach(["delete","get","head","post","put","patch","common"],f=>{delete i[f]}),n.headers=le.concat(o,i);let a=[],l=!0;this.interceptors.request.forEach(function(y){typeof y.runWhen=="function"&&y.runWhen(n)===!1||(l=l&&y.synchronous,a.unshift(y.fulfilled,y.rejected))});let c=[];this.interceptors.response.forEach(function(y){c.push(y.fulfilled,y.rejected)});let d,u=0,p;if(!l){let f=[zo.bind(this),void 0];for(f.unshift(...a),f.push(...c),p=f.length,d=Promise.resolve(n);u<p;)d=d.then(f[u++],f[u++]);return d}p=a.length;let m=n;for(;u<p;){let f=a[u++],y=a[u++];try{m=f(m)}catch(g){y.call(this,g);break}}try{d=zo.call(this,m)}catch(f){return Promise.reject(f)}for(u=0,p=c.length;u<p;)d=d.then(c[u++],c[u++]);return d}getUri(e){e=Fe(this.defaults,e);let n=ua(e.baseURL,e.url,e.allowAbsoluteUrls);return ia(n,e.params,e.paramsSerializer)}};h.forEach(["delete","get","head","options"],function(e){ut.prototype[e]=function(n,r){return this.request(Fe(r||{},{method:e,url:n,data:(r||{}).data}))}});h.forEach(["post","put","patch"],function(e){function n(r){return function(i,o,a){return this.request(Fe(a||{},{method:e,headers:r?{"Content-Type":"multipart/form-data"}:{},url:i,data:o}))}}ut.prototype[e]=n(),ut.prototype[e+"Form"]=n(!0)});var Cn=ut,is=class t{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(i){n=i});let r=this;this.promise.then(s=>{if(!r._listeners)return;let i=r._listeners.length;for(;i-- >0;)r._listeners[i](s);r._listeners=null}),this.promise.then=s=>{let i,o=new Promise(a=>{r.subscribe(a),i=a}).then(s);return o.cancel=function(){r.unsubscribe(i)},o},e(function(i,o,a){r.reason||(r.reason=new ft(i,o,a),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){let e=new AbortController,n=r=>{e.abort(r)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new t(function(s){e=s}),cancel:e}}},Vf=is;function Gf(t){return function(n){return t.apply(null,n)}}function Wf(t){return h.isObject(t)&&t.isAxiosError===!0}var os={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(os).forEach(([t,e])=>{os[e]=t});var Yf=os;function ma(t){let e=new Cn(t),n=Go(Cn.prototype.request,e);return h.extend(n,Cn.prototype,e,{allOwnKeys:!0}),h.extend(n,e,null,{allOwnKeys:!0}),n.create=function(s){return ma(Fe(t,s))},n}var M=ma(ds);M.Axios=Cn;M.CanceledError=ft;M.CancelToken=Vf;M.isCancel=ca;M.VERSION=ga;M.toFormData=In;M.AxiosError=P;M.Cancel=M.CanceledError;M.all=function(e){return Promise.all(e)};M.spread=Gf;M.isAxiosError=Wf;M.mergeConfig=Fe;M.AxiosHeaders=le;M.formToJSON=t=>aa(h.isHTMLForm(t)?new FormData(t):t);M.getAdapter=pa.getAdapter;M.HttpStatusCode=Yf;M.default=M;ha.exports=M});var hs=E((Yy,ms)=>{"use strict";var ba=t=>typeof t=="object"&&t!==null,wa=Symbol("skip"),ya=t=>ba(t)&&!(t instanceof RegExp)&&!(t instanceof Error)&&!(t instanceof Date),gs=(t,e,n,r=new WeakMap)=>{if(n=b({deep:!1,target:{}},n),r.has(t))return r.get(t);r.set(t,n.target);let{target:s}=n;delete n.target;let i=o=>o.map(a=>ya(a)?gs(a,e,n,r):a);if(Array.isArray(t))return i(t);for(let[o,a]of Object.entries(t)){let l=e(o,a,t);if(l===wa)continue;let[c,d,{shouldRecurse:u=!0}={}]=l;c!=="__proto__"&&(n.deep&&u&&ya(d)&&(d=Array.isArray(d)?i(d):gs(d,e,n,r)),s[c]=d)}return s};ms.exports=(t,e,n)=>{if(!ba(t))throw new TypeError("Expected an object, got `".concat(t,"` (").concat(typeof t,")"));return gs(t,e,n)};ms.exports.mapObjectSkip=wa});var Ea=E((Zy,ys)=>{"use strict";var Jf=t=>{let e=!1,n=!1,r=!1;for(let s=0;s<t.length;s++){let i=t[s];e&&/[a-zA-Z]/.test(i)&&i.toUpperCase()===i?(t=t.slice(0,s)+"-"+t.slice(s),e=!1,r=n,n=!0,s++):n&&r&&/[a-zA-Z]/.test(i)&&i.toLowerCase()===i?(t=t.slice(0,s-1)+"-"+t.slice(s-1),r=n,n=!1,e=!0):(e=i.toLowerCase()===i&&i.toUpperCase()!==i,r=n,n=i.toUpperCase()===i&&i.toLowerCase()!==i)}return t},Sa=(t,e)=>{if(!(typeof t=="string"||Array.isArray(t)))throw new TypeError("Expected the input to be `string | string[]`");e=Object.assign({pascalCase:!1},e);let n=s=>e.pascalCase?s.charAt(0).toUpperCase()+s.slice(1):s;return Array.isArray(t)?t=t.map(s=>s.trim()).filter(s=>s.length).join("-"):t=t.trim(),t.length===0?"":t.length===1?e.pascalCase?t.toUpperCase():t.toLowerCase():(t!==t.toLowerCase()&&(t=Jf(t)),t=t.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(s,i)=>i.toUpperCase()).replace(/\d+(\w|$)/g,s=>s.toUpperCase()),n(t))};ys.exports=Sa;ys.exports.default=Sa});var Ca=E((Xy,va)=>{"use strict";var bs=class{constructor(e={}){if(!(e.maxSize&&e.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=e.maxSize,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(e,n){this.cache.set(e,n),this._size++,this._size>=this.maxSize&&(this._size=0,this.oldCache=this.cache,this.cache=new Map)}get(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.has(e)){let n=this.oldCache.get(e);return this.oldCache.delete(e),this._set(e,n),n}}set(e,n){return this.cache.has(e)?this.cache.set(e,n):this._set(e,n),this}has(e){return this.cache.has(e)||this.oldCache.has(e)}peek(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.has(e))return this.oldCache.get(e)}delete(e){let n=this.cache.delete(e);return n&&this._size--,this.oldCache.delete(e)||n}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[e]of this)yield e}*values(){for(let[,e]of this)yield e}*[Symbol.iterator](){for(let e of this.cache)yield e;for(let e of this.oldCache){let[n]=e;this.cache.has(n)||(yield e)}}get size(){let e=0;for(let n of this.oldCache.keys())this.cache.has(n)||e++;return this._size+e}};va.exports=bs});var Ia=E((Qy,_a)=>{"use strict";var Ta=hs(),Zf=Ea(),Xf=Ca(),Qf=(t,e)=>t.some(n=>typeof n=="string"?n===e:(n.lastIndex=0,n.test(e))),ws=new Xf({maxSize:1e5}),Pa=t=>typeof t=="object"&&t!==null&&!(t instanceof RegExp)&&!(t instanceof Error)&&!(t instanceof Date),Ra=(t,e)=>{if(!Pa(t))return t;e=b({deep:!1,pascalCase:!1},e);let{exclude:n,pascalCase:r,stopPaths:s,deep:i}=e,o=new Set(s),a=l=>(c,d)=>{if(i&&Pa(d)){let u=l===void 0?c:"".concat(l,".").concat(c);o.has(u)||(d=Ta(d,a(u)))}if(!(n&&Qf(n,c))){let u=r?"".concat(c,"_"):c;if(ws.has(u))c=ws.get(u);else{let p=Zf(c,{pascalCase:r});c.length<100&&ws.set(u,p),c=p}}return[c,d]};return Ta(t,a(void 0))};_a.exports=(t,e)=>Array.isArray(t)?Object.keys(t).map(n=>Ra(t[n],e)):Ra(t,e)});var Ss=E((tb,Aa)=>{Aa.exports=Ss()});var Ts={};St(Ts,{__addDisposableResource:()=>ec,__assign:()=>xn,__asyncDelegator:()=>Va,__asyncGenerator:()=>za,__asyncValues:()=>Ga,__await:()=>pt,__awaiter:()=>$a,__classPrivateFieldGet:()=>Za,__classPrivateFieldIn:()=>Qa,__classPrivateFieldSet:()=>Xa,__createBinding:()=>On,__decorate:()=>Oa,__disposeResources:()=>tc,__esDecorate:()=>Na,__exportStar:()=>qa,__extends:()=>xa,__generator:()=>Fa,__importDefault:()=>Ja,__importStar:()=>Ya,__makeTemplateObject:()=>Wa,__metadata:()=>Ua,__param:()=>Da,__propKey:()=>Ba,__read:()=>Cs,__rest:()=>ka,__rewriteRelativeImportExtension:()=>nc,__runInitializers:()=>La,__setFunctionName:()=>Ma,__spread:()=>ja,__spreadArray:()=>Ha,__spreadArrays:()=>Ka,__values:()=>kn,default:()=>np});function xa(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Es(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}function ka(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,r=Object.getOwnPropertySymbols(t);s<r.length;s++)e.indexOf(r[s])<0&&Object.prototype.propertyIsEnumerable.call(t,r[s])&&(n[r[s]]=t[r[s]]);return n}function Oa(t,e,n,r){var s=arguments.length,i=s<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,n,r);else for(var a=t.length-1;a>=0;a--)(o=t[a])&&(i=(s<3?o(i):s>3?o(e,n,i):o(e,n))||i);return s>3&&i&&Object.defineProperty(e,n,i),i}function Da(t,e){return function(n,r){e(n,r,t)}}function Na(t,e,n,r,s,i){function o(w){if(w!==void 0&&typeof w!="function")throw new TypeError("Function expected");return w}for(var a=r.kind,l=a==="getter"?"get":a==="setter"?"set":"value",c=!e&&t?r.static?t:t.prototype:null,d=e||(c?Object.getOwnPropertyDescriptor(c,r.name):{}),u,p=!1,m=n.length-1;m>=0;m--){var f={};for(var y in r)f[y]=y==="access"?{}:r[y];for(var y in r.access)f.access[y]=r.access[y];f.addInitializer=function(w){if(p)throw new TypeError("Cannot add initializers after decoration has completed");i.push(o(w||null))};var g=(0,n[m])(a==="accessor"?{get:d.get,set:d.set}:d[l],f);if(a==="accessor"){if(g===void 0)continue;if(g===null||typeof g!="object")throw new TypeError("Object expected");(u=o(g.get))&&(d.get=u),(u=o(g.set))&&(d.set=u),(u=o(g.init))&&s.unshift(u)}else(u=o(g))&&(a==="field"?s.unshift(u):d[l]=u)}c&&Object.defineProperty(c,r.name,d),p=!0}function La(t,e,n){for(var r=arguments.length>2,s=0;s<e.length;s++)n=r?e[s].call(t,n):e[s].call(t);return r?n:void 0}function Ba(t){return typeof t=="symbol"?t:"".concat(t)}function Ma(t,e,n){return typeof e=="symbol"&&(e=e.description?"[".concat(e.description,"]"):""),Object.defineProperty(t,"name",{configurable:!0,value:n?"".concat(n," ",e):e})}function Ua(t,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,e)}function $a(t,e,n,r){function s(i){return i instanceof n?i:new n(function(o){o(i)})}return new(n||(n=Promise))(function(i,o){function a(d){try{c(r.next(d))}catch(u){o(u)}}function l(d){try{c(r.throw(d))}catch(u){o(u)}}function c(d){d.done?i(d.value):s(d.value).then(a,l)}c((r=r.apply(t,e||[])).next())})}function Fa(t,e){var n={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},r,s,i,o=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(c){return function(d){return l([c,d])}}function l(c){if(r)throw new TypeError("Generator is already executing.");for(;o&&(o=0,c[0]&&(n=0)),n;)try{if(r=1,s&&(i=c[0]&2?s.return:c[0]?s.throw||((i=s.return)&&i.call(s),0):s.next)&&!(i=i.call(s,c[1])).done)return i;switch(s=0,i&&(c=[c[0]&2,i.value]),c[0]){case 0:case 1:i=c;break;case 4:return n.label++,{value:c[1],done:!1};case 5:n.label++,s=c[1],c=[0];continue;case 7:c=n.ops.pop(),n.trys.pop();continue;default:if(i=n.trys,!(i=i.length>0&&i[i.length-1])&&(c[0]===6||c[0]===2)){n=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]<i[3])){n.label=c[1];break}if(c[0]===6&&n.label<i[1]){n.label=i[1],i=c;break}if(i&&n.label<i[2]){n.label=i[2],n.ops.push(c);break}i[2]&&n.ops.pop(),n.trys.pop();continue}c=e.call(t,n)}catch(d){c=[6,d],s=0}finally{r=i=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}function qa(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&On(e,t,n)}function kn(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Cs(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),s,i=[],o;try{for(;(e===void 0||e-- >0)&&!(s=r.next()).done;)i.push(s.value)}catch(a){o={error:a}}finally{try{s&&!s.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return i}function ja(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Cs(arguments[e]));return t}function Ka(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;for(var r=Array(t),s=0,e=0;e<n;e++)for(var i=arguments[e],o=0,a=i.length;o<a;o++,s++)r[s]=i[o];return r}function Ha(t,e,n){if(n||arguments.length===2)for(var r=0,s=e.length,i;r<s;r++)(i||!(r in e))&&(i||(i=Array.prototype.slice.call(e,0,r)),i[r]=e[r]);return t.concat(i||Array.prototype.slice.call(e))}function pt(t){return this instanceof pt?(this.v=t,this):new pt(t)}function za(t,e,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),s,i=[];return s=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",o),s[Symbol.asyncIterator]=function(){return this},s;function o(m){return function(f){return Promise.resolve(f).then(m,u)}}function a(m,f){r[m]&&(s[m]=function(y){return new Promise(function(g,w){i.push([m,y,g,w])>1||l(m,y)})},f&&(s[m]=f(s[m])))}function l(m,f){try{c(r[m](f))}catch(y){p(i[0][3],y)}}function c(m){m.value instanceof pt?Promise.resolve(m.value.v).then(d,u):p(i[0][2],m)}function d(m){l("next",m)}function u(m){l("throw",m)}function p(m,f){m(f),i.shift(),i.length&&l(i[0][0],i[0][1])}}function Va(t){var e,n;return e={},r("next"),r("throw",function(s){throw s}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(s,i){e[s]=t[s]?function(o){return(n=!n)?{value:pt(t[s](o)),done:!1}:i?i(o):o}:i}}function Ga(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof kn=="function"?kn(t):t[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(i){n[i]=t[i]&&function(o){return new Promise(function(a,l){o=t[i](o),s(a,l,o.done,o.value)})}}function s(i,o,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},o)}}function Wa(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function Ya(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n=vs(t),r=0;r<n.length;r++)n[r]!=="default"&&On(e,t,n[r]);return ep(e,t),e}function Ja(t){return t&&t.__esModule?t:{default:t}}function Za(t,e,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(t):r?r.value:e.get(t)}function Xa(t,e,n,r,s){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!s:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?s.call(t,n):s?s.value=n:e.set(t,n),n}function Qa(t,e){if(e===null||typeof e!="object"&&typeof e!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof t=="function"?e===t:t.has(e)}function ec(t,e,n){if(e!=null){if(typeof e!="object"&&typeof e!="function")throw new TypeError("Object expected.");var r,s;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=e[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=e[Symbol.dispose],n&&(s=r)}if(typeof r!="function")throw new TypeError("Object not disposable.");s&&(r=function(){try{s.call(this)}catch(i){return Promise.reject(i)}}),t.stack.push({value:e,dispose:r,async:n})}else n&&t.stack.push({async:!0});return e}function tc(t){function e(i){t.error=t.hasError?new tp(i,t.error,"An error was suppressed during disposal."):i,t.hasError=!0}var n,r=0;function s(){for(;n=t.stack.pop();)try{if(!n.async&&r===1)return r=0,t.stack.push(n),Promise.resolve().then(s);if(n.dispose){var i=n.dispose.call(n.value);if(n.async)return r|=2,Promise.resolve(i).then(s,function(o){return e(o),s()})}else r|=1}catch(o){e(o)}if(r===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return s()}function nc(t,e){return typeof t=="string"&&/^\.\.?\//.test(t)?t.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(n,r,s,i,o){return r?e?".jsx":".js":s&&(!i||!o)?n:s+i+"."+o.toLowerCase()+"js"}):t}var Es,xn,On,ep,vs,tp,np,Ps=be(()=>{Es=function(t,e){return Es=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(n[s]=r[s])},Es(t,e)};xn=function(){return xn=Object.assign||function(e){for(var n,r=1,s=arguments.length;r<s;r++){n=arguments[r];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e},xn.apply(this,arguments)};On=Object.create?function(t,e,n,r){r===void 0&&(r=n);var s=Object.getOwnPropertyDescriptor(e,n);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,s)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]};ep=Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e},vs=function(t){return vs=Object.getOwnPropertyNames||function(e){var n=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(n[n.length]=r);return n},vs(t)};tp=typeof SuppressedError=="function"?SuppressedError:function(t,e,n){var r=new Error(n);return r.name="SuppressedError",r.error=t,r.suppressed=e,r};np={__extends:xa,__assign:xn,__rest:ka,__decorate:Oa,__param:Da,__esDecorate:Na,__runInitializers:La,__propKey:Ba,__setFunctionName:Ma,__metadata:Ua,__awaiter:$a,__generator:Fa,__createBinding:On,__exportStar:qa,__values:kn,__read:Cs,__spread:ja,__spreadArrays:Ka,__spreadArray:Ha,__await:pt,__asyncGenerator:za,__asyncDelegator:Va,__asyncValues:Ga,__makeTemplateObject:Wa,__importStar:Ya,__importDefault:Ja,__classPrivateFieldGet:Za,__classPrivateFieldSet:Xa,__classPrivateFieldIn:Qa,__addDisposableResource:ec,__disposeResources:tc,__rewriteRelativeImportExtension:nc}});var rc=E(gt=>{"use strict";Object.defineProperty(gt,"__esModule",{value:!0});gt.lowerCase=gt.localeLowerCase=void 0;var rp={tr:{regexp:/\u0130|\u0049|\u0049\u0307/g,map:{\u0130:"i",I:"\u0131",I\u0307:"i"}},az:{regexp:/\u0130/g,map:{\u0130:"i",I:"\u0131",I\u0307:"i"}},lt:{regexp:/\u0049|\u004A|\u012E|\u00CC|\u00CD|\u0128/g,map:{I:"i\u0307",J:"j\u0307",\u012E:"\u012F\u0307",\u00CC:"i\u0307\u0300",\u00CD:"i\u0307\u0301",\u0128:"i\u0307\u0303"}}};function sp(t,e){var n=rp[e.toLowerCase()];return Rs(n?t.replace(n.regexp,function(r){return n.map[r]}):t)}gt.localeLowerCase=sp;function Rs(t){return t.toLowerCase()}gt.lowerCase=Rs});var ic=E(Dn=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.noCase=void 0;var ip=rc(),op=[/([a-z0-9])([A-Z])/g,/([A-Z])([A-Z][a-z])/g],ap=/[^A-Z0-9]+/gi;function cp(t,e){e===void 0&&(e={});for(var n=e.splitRegexp,r=n===void 0?op:n,s=e.stripRegexp,i=s===void 0?ap:s,o=e.transform,a=o===void 0?ip.lowerCase:o,l=e.delimiter,c=l===void 0?" ":l,d=sc(sc(t,r,"$1\0$2"),i,"\0"),u=0,p=d.length;d.charAt(u)==="\0";)u++;for(;d.charAt(p-1)==="\0";)p--;return d.slice(u,p).split("\0").map(a).join(c)}Dn.noCase=cp;function sc(t,e,n){return e instanceof RegExp?t.replace(e,n):e.reduce(function(r,s){return r.replace(s,n)},t)}});var oc=E(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.dotCase=void 0;var lp=(Ps(),Pr(Ts)),up=ic();function dp(t,e){return e===void 0&&(e={}),up.noCase(t,lp.__assign({delimiter:"."},e))}Nn.dotCase=dp});var ac=E(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.snakeCase=void 0;var fp=(Ps(),Pr(Ts)),pp=oc();function gp(t,e){return e===void 0&&(e={}),pp.dotCase(t,fp.__assign({delimiter:"_"},e))}Ln.snakeCase=gp});var lc=E((ob,cc)=>{cc.exports=bp;var mp=/\s/,hp=/(_|-|\.|:)/,yp=/([a-z][A-Z]|[A-Z][a-z])/;function bp(t){return mp.test(t)?t.toLowerCase():hp.test(t)?(Sp(t)||t).toLowerCase():yp.test(t)?vp(t).toLowerCase():t.toLowerCase()}var wp=/[\W_]+(.|$)/g;function Sp(t){return t.replace(wp,function(e,n){return n?" "+n:""})}var Ep=/(.)([A-Z]+)/g;function vp(t){return t.replace(Ep,function(e,n,r){return n+" "+r.toLowerCase().split("").join(" ")})}});var dc=E((ab,uc)=>{var Cp=lc();uc.exports=Tp;function Tp(t){return Cp(t).replace(/[\W_]+(.|$)/g,function(e,n){return n?" "+n:""}).trim()}});var pc=E((cb,fc)=>{var Pp=dc();fc.exports=Rp;function Rp(t){return Pp(t).replace(/\s/g,"_")}});var mc=E((lb,gc)=>{"use strict";var _p=hs(),Ip=pc();gc.exports=function(t,e){return e=Object.assign({deep:!0,exclude:[]},e),_p(t,function(n,r){return[Ap(e.exclude,n)?n:Ip(n),r]},e)};function Ap(t,e){return t.some(function(n){return typeof n=="string"?n===e:n.test(e)})}});var Is=E(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.BasisTheoryApiError=void 0;function xp(t){function e(){var n=Reflect.construct(t,Array.from(arguments));return Object.setPrototypeOf(n,Object.getPrototypeOf(this)),n}return e.prototype=Object.create(t.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t,e}var _s=class t extends xp(Error){constructor(e,n,r,s){super(e),this.status=n,this.data=r,this._debug=s,this.name="BasisTheoryApiError",Object.setPrototypeOf(this,t.prototype)}};Bn.BasisTheoryApiError=_s});var Un=E(Mn=>{"use strict";Object.defineProperty(Mn,"__esModule",{value:!0});Mn.logger=void 0;var hc=bn(),kp=(()=>{let t="pubb96b84a13912504f4354f2d794ea4fab",e=!0,n=async(s,i,o={})=>{if(e)try{var a,l,c,d,u,p;let m;hc.DEFAULT_BASE_URL.includes("localhost")?m="local":hc.DEFAULT_BASE_URL.includes("dev")?m="dev":m="prod";let f=b({level:i,message:s,service:"js-sdk",env:m,referrer:(a=document)===null||a===void 0?void 0:a.referrer,origin:(l=window)===null||l===void 0||(c=l.location)===null||c===void 0?void 0:c.origin,url:(d=window)===null||d===void 0||(u=d.location)===null||u===void 0?void 0:u.href,userAgent:(p=navigator)===null||p===void 0?void 0:p.userAgent},o);await fetch("https://http-intake.logs.datadoghq.com/v1/input/".concat(t),{method:"POST",body:JSON.stringify(f),headers:{"Content-Type":"application/json"}})}catch(m){console.warn("There was an error sending telemetry.")}};return{setTelemetryEnabled:s=>{e=s},log:{error:(s,i={})=>n(s,"error",i),info:(s,i={})=>n(s,"info",i),warn:(s,i={})=>n(s,"warn",i)}}})();Mn.logger=kp});var mt=E(T=>{"use strict";Object.defineProperty(T,"__esModule",{value:!0});T.transformTokenResponseCamelCase=T.transformTokenRequestSnakeCase=T.transformResponseCamelCase=T.transformRequestSnakeCase=T.transformReactorResponseCamelCase=T.transformReactorRequestSnakeCase=T.transformProxyResponseCamelCase=T.transformProxyRequestSnakeCase=T.proxyRaw=T.getRuntime=T.getQueryParams=T.getOSVersion=T.getBrowser=T.errorInterceptorDebug=T.errorInterceptor=T.debugTransform=T.dataExtractor=T.dataAndHeadersExtractor=T.createRequestConfig=T.concatResponseTransformerWithDefault=T.concatRequestTransformerWithDefault=T.buildUserAgentString=T.buildClientUserAgentString=T.assertInit=void 0;var bc=$n(ps()),Ee=$n(Ia()),yc=$n(Ss()),Op=ac(),Ft=$n(mc()),Dp=Is(),de=bn(),Np=Un();function $n(t){return t&&t.__esModule?t:{default:t}}var Lp=t=>{if(t==null)throw new Error("BasisTheory has not yet been properly initialized.");return t};T.assertInit=Lp;var Bp=t=>{if(typeof t!="undefined")return(0,Ft.default)(t,{deep:!0})};T.transformRequestSnakeCase=Bp;var Mp=t=>t;T.proxyRaw=Mp;var Up=t=>{if(typeof t!="undefined")return b(b({},(0,Ft.default)(t,{deep:!0})),t.configuration!==void 0?{configuration:t.configuration}:{})};T.transformReactorRequestSnakeCase=Up;var $p=t=>{if(typeof t!="undefined")return b(b({},(0,Ft.default)(t,{deep:!0})),t.configuration!==void 0?{configuration:t.configuration}:{})};T.transformProxyRequestSnakeCase=$p;var Fp=t=>{if(typeof t!="undefined")return b(b(b({},(0,Ft.default)(t,{deep:!0})),t.data!==void 0?{data:t.data}:{}),t.metadata!==void 0?{metadata:t.metadata}:{})};T.transformTokenRequestSnakeCase=Fp;var ks=t=>t&&(t==null?void 0:t.pagination)!==void 0&&(t==null?void 0:t.data)!==void 0,qp=t=>{if(typeof t!="undefined")return ks(t)?{data:t.data.map(r=>b(b(b({},(0,Ee.default)(r,{deep:!0})),r.data!==void 0?{data:r.data}:{}),r.metadata!==void 0?{metadata:r.metadata}:{})),pagination:(0,Ee.default)(t.pagination,{deep:!0})}:b(b(b({},(0,Ee.default)(t,{deep:!0})),t.data!==void 0?{data:t.data}:{}),t.metadata!==void 0?{metadata:t.metadata}:{})};T.transformTokenResponseCamelCase=qp;var jp=t=>{if(typeof t!="undefined")return ks(t)?{data:t.data.map(r=>b(b({},(0,Ee.default)(r,{deep:!0})),r.configuration!==void 0?{configuration:r.configuration}:{})),pagination:(0,Ee.default)(t.pagination,{deep:!0})}:b(b({},(0,Ee.default)(t,{deep:!0})),t.configuration!==void 0?{configuration:t.configuration}:{})};T.transformReactorResponseCamelCase=jp;var Kp=t=>{if(typeof t!="undefined")return ks(t)?{data:t.data.map(r=>b(b({},(0,Ee.default)(r,{deep:!0})),r.configuration!==void 0?{configuration:r.configuration}:{})),pagination:(0,Ee.default)(t.pagination,{deep:!0})}:b(b({},(0,Ee.default)(t,{deep:!0})),t.configuration!==void 0?{configuration:t.configuration}:{})};T.transformProxyResponseCamelCase=Kp;var Hp=t=>{if(typeof t!="undefined")return(0,Ee.default)(t,{deep:!0})};T.transformResponseCamelCase=Hp;var zp=t=>t==null?void 0:t.data;T.dataExtractor=zp;var Vp=t=>({data:t==null?void 0:t.data,headers:t==null?void 0:t.headers});T.dataAndHeadersExtractor=Vp;var As=t=>[t,...bc.default.defaults.transformRequest];T.concatRequestTransformerWithDefault=As;var xs=t=>[...bc.default.defaults.transformResponse,t];T.concatResponseTransformerWithDefault=xs;var Gp=(t,e)=>{if(!t)return e?b(b({},e.transformRequest!==void 0?{transformRequest:As(e.transformRequest)}:{}),e.transformResponse!==void 0?{transformResponse:xs(e.transformResponse)}:{}):void 0;let{apiKey:n,correlationId:r,idempotencyKey:s,query:i,headers:o}=t,a=n?{[de.API_KEY_HEADER]:n}:{},l=r?{[de.BT_TRACE_ID_HEADER]:r}:{},c=s?{[de.BT_IDEMPOTENCY_KEY_HEADER]:s}:{};return b(b(b({headers:b(b(b(b({},a),l),c),typeof o!="undefined"&&b({},o))},typeof i!="undefined"&&{params:i}),(e==null?void 0:e.transformRequest)!==void 0?{transformRequest:As(e.transformRequest)}:{}),(e==null?void 0:e.transformResponse)!==void 0?{transformResponse:xs(e.transformResponse)}:{})};T.createRequestConfig=Gp;var wc=(t,e)=>{var n,r,s,i,o,a,l,c,d,u,p,m,f,y,g;let w=(n=t==null||(r=t.response)===null||r===void 0?void 0:r.status)!==null&&n!==void 0?n:-1,v=t==null||(s=t.response)===null||s===void 0?void 0:s.data,S;if(e){var C,R,_,A;S={cfRay:t==null||(C=t.response)===null||C===void 0||(R=C.headers)===null||R===void 0?void 0:R[de.CF_RAY_HEADER],btTraceId:t==null||(_=t.response)===null||_===void 0||(A=_.headers)===null||A===void 0?void 0:A[de.BT_TRACE_ID_HEADER]}}let N=w>-1&&w<499?"warn":"error";throw Np.logger.log[N]("Error when making ".concat(t==null||(i=t.config)===null||i===void 0||(o=i.method)===null||o===void 0?void 0:o.toUpperCase()," request to ").concat(t==null||(a=t.config)===null||a===void 0?void 0:a.baseURL," from the JS SDK"),{apiStatus:w,logType:"axiosError",logOrigin:"axiosErrorInterceptor",requestDetails:{url:t==null||(l=t.config)===null||l===void 0?void 0:l.baseURL,method:t==null||(c=t.config)===null||c===void 0||(d=c.method)===null||d===void 0?void 0:d.toUpperCase(),btUserAgent:t==null||(u=t.config)===null||u===void 0||(p=u.headers)===null||p===void 0?void 0:p[de.CLIENT_USER_AGENT_HEADER]},errorDetails:{code:t==null?void 0:t.code,name:t==null?void 0:t.name,stack:t==null?void 0:t.stack,headers:t==null||(m=t.response)===null||m===void 0?void 0:m.headers,message:t==null?void 0:t.message,status:t==null||(f=t.response)===null||f===void 0?void 0:f.status,statusText:t==null||(y=t.response)===null||y===void 0?void 0:y.statusText,data:t==null||(g=t.response)===null||g===void 0?void 0:g.data}}),new Dp.BasisTheoryApiError(t.message,w,v,S)},Wp=t=>wc(t,!1);T.errorInterceptor=Wp;var Yp=t=>wc(t,!0);T.errorInterceptorDebug=Yp;var Jp=(t={})=>{let e=Object.keys(t);if(e.length){let n=new URLSearchParams,r=(s,i,o=!1)=>{let a=typeof i,l=o?s:(0,Op.snakeCase)(s);(i===null||["boolean","number","string"].includes(a))&&n.append(l,i)};return e.forEach(s=>{let i=t[s];Array.isArray(i)?i.forEach(o=>{r(String(s),o)}):i&&typeof i=="object"?Object.keys(i).forEach(a=>{r("".concat(String(s),".").concat(a),i[a],!0)}):r(String(s),i)}),"?".concat(n.toString())}return""};T.getQueryParams=Jp;var Zp=t=>"(".concat(t.name||"","; ").concat(t.version||"","; ").concat(t.url||"",")"),Xp=t=>{let e="".concat(de.USER_AGENT_CLIENT,"/unknown");return t&&Object.keys(t||{}).length&&(e+=" ".concat(Zp(t))),e};T.buildUserAgentString=Xp;var Sc=()=>{let{userAgent:t}=window.navigator,e="unknown",n=de.BROWSER_LIST.find(r=>t.includes(r.browserUA));if(n)try{e=t.split("".concat(n.browserUA,"/"))[1]}catch(r){e="unknown"}return"".concat((n==null?void 0:n.browserName)||"unknown","/").concat(e)};T.getBrowser=Sc;var Ec=()=>typeof window=="object"&&window.navigator.product==="ReactNative",vc=()=>{if(Ec())return"ReactNative";if(typeof window=="undefined")try{return"".concat(yc.default.type(),"/").concat(yc.default.version())}catch(t){return"unknown"}try{let e=window.navigator.appVersion.match(new RegExp("\\(([^)]+)\\)","u"));return e&&e.length>1?e[1]:"unknown"}catch(t){return"unknown"}};T.getOSVersion=vc;var Cc=()=>Ec()?"ReactNative":typeof window=="undefined"?"NodeJS/".concat(process.version):Sc();T.getRuntime=Cc;var Qp=t=>{let e={client:de.USER_AGENT_CLIENT,clientVersion:"unknown",osVersion:vc(),runtimeVersion:Cc(),application:{}};return t&&(e.application=t),JSON.stringify((0,Ft.default)(e))};T.buildClientUserAgentString=Qp;var eg=(t,e)=>(e&&typeof t=="object"&&t!==void 0&&(t._debug=O(b({},t._debug),{cfRay:e[de.CF_RAY_HEADER],btTraceId:e[de.BT_TRACE_ID_HEADER]})),t);T.debugTransform=eg});var Tc=E(Fn=>{"use strict";Object.defineProperty(Fn,"__esModule",{value:!0});Fn.BasisTheoryValidationError=void 0;function tg(t){function e(){var n=Reflect.construct(t,Array.from(arguments));return Object.setPrototypeOf(n,Object.getPrototypeOf(this)),n}return e.prototype=Object.create(t.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t,e}var Os=class t extends tg(Error){constructor(e,n,r){super(e),this.details=n,this.validation=r,this.name="BasisTheoryValidationError",Object.setPrototypeOf(this,t.prototype)}};Fn.BasisTheoryValidationError=Os});var Pc=E(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.HttpClientError=void 0;function ng(t){function e(){var n=Reflect.construct(t,Array.from(arguments));return Object.setPrototypeOf(n,Object.getPrototypeOf(this)),n}return e.prototype=Object.create(t.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t,e}var Ds=class t extends ng(Error){constructor(e,n,r,s){super(e),this.name="HttpClientError",this.status=n,this.data=r,this.headers=s,Object.setPrototypeOf(this,t.prototype)}};qn.HttpClientError=Ds});var H=E(fe=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});var Rc={BasisTheoryApiError:!0,BasisTheoryValidationError:!0,HttpClientError:!0};Object.defineProperty(fe,"BasisTheoryApiError",{enumerable:!0,get:function(){return rg.BasisTheoryApiError}});Object.defineProperty(fe,"BasisTheoryValidationError",{enumerable:!0,get:function(){return sg.BasisTheoryValidationError}});Object.defineProperty(fe,"HttpClientError",{enumerable:!0,get:function(){return ig.HttpClientError}});var Ns=bn();Object.keys(Ns).forEach(function(t){t==="default"||t==="__esModule"||Object.prototype.hasOwnProperty.call(Rc,t)||t in fe&&fe[t]===Ns[t]||Object.defineProperty(fe,t,{enumerable:!0,get:function(){return Ns[t]}})});var Ls=mt();Object.keys(Ls).forEach(function(t){t==="default"||t==="__esModule"||Object.prototype.hasOwnProperty.call(Rc,t)||t in fe&&fe[t]===Ls[t]||Object.defineProperty(fe,t,{enumerable:!0,get:function(){return Ls[t]}})});var rg=Is(),sg=Tc(),ig=Pc()});var _c=E(()=>{"use strict"});var Ic=E(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.BasisTheoryService=void 0;var jn=og(ps()),ve=H();function og(t){return t&&t.__esModule?t:{default:t}}var Bs=class{constructor(e){let{apiKey:n,baseURL:r,transformRequest:s,transformResponse:i,appInfo:o,debug:a}=e;if(typeof jn.default=="string")throw new Error("basis-theory-js@1.77.0+ and basis-theory-react@1.12.1+ are not supported with CRA 5, go to https://github.com/Basis-Theory/basis-theory-js/issues/365#issuecomment-1662883062 for workarounds.");this.client=jn.default.create({baseURL:r,headers:b({[ve.API_KEY_HEADER]:n,[ve.CLIENT_USER_AGENT_HEADER]:(0,ve.buildClientUserAgentString)(o)},typeof window=="undefined"&&{[ve.USER_AGENT_HEADER]:(0,ve.buildUserAgentString)(o)}),transformRequest:[].concat(s||ve.transformRequestSnakeCase,jn.default.defaults.transformRequest),transformResponse:jn.default.defaults.transformResponse.concat(i||ve.transformResponseCamelCase,a?ve.debugTransform:[])}),this.client.interceptors.response.use(void 0,a?ve.errorInterceptorDebug:ve.errorInterceptor)}};Kn.BasisTheoryService=Bs});var z=E(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});var Ms=_c();Object.keys(Ms).forEach(function(t){t==="default"||t==="__esModule"||t in Oe&&Oe[t]===Ms[t]||Object.defineProperty(Oe,t,{enumerable:!0,get:function(){return Ms[t]}})});var Us=Ic();Object.keys(Us).forEach(function(t){t==="default"||t==="__esModule"||t in Oe&&Oe[t]===Us[t]||Object.defineProperty(Oe,t,{enumerable:!0,get:function(){return Us[t]}})})});var pe=E(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.CrudBuilder=void 0;var Z=H(),ag=t=>class extends t{create(n,r){return this.client.post("/",n,(0,Z.createRequestConfig)(r)).then(Z.dataExtractor)}},cg=t=>class extends t{retrieve(n,r){return this.client.get(n,(0,Z.createRequestConfig)(r)).then(Z.dataExtractor)}},lg=t=>class extends t{update(n,r,s){return this.client.put(n,r,(0,Z.createRequestConfig)(s)).then(Z.dataExtractor)}},ug=t=>class extends t{patch(n,r,s){let i=(0,Z.createRequestConfig)(s);return this.client.patch(n,r,O(b({},i),{headers:O(b({},(i==null?void 0:i.headers)||{}),{[Z.CONTENT_TYPE_HEADER]:Z.MERGE_CONTENT_TYPE})})).then(Z.dataExtractor)}},dg=t=>class extends t{async delete(n,r){await this.client.delete(n,(0,Z.createRequestConfig)(r))}},fg=t=>class extends t{list(n={},r={}){let s="/".concat((0,Z.getQueryParams)(n));return this.client.get(s,(0,Z.createRequestConfig)(r)).then(Z.dataExtractor)}},$s=class{constructor(e){this.BaseService=e}create(){return this.BaseService=ag(this.BaseService),this}retrieve(){return this.BaseService=cg(this.BaseService),this}update(){return this.BaseService=lg(this.BaseService),this}patch(){return this.BaseService=ug(this.BaseService),this}delete(){return this.BaseService=dg(this.BaseService),this}list(){return this.BaseService=fg(this.BaseService),this}build(){return this.BaseService}};Hn.CrudBuilder=$s});var xc=E(zn=>{"use strict";Object.defineProperty(zn,"__esModule",{value:!0});zn.BasisTheoryApplicationTemplates=void 0;var Ac=H(),pg=z(),gg=pe(),mg=new gg.CrudBuilder(class extends pg.BasisTheoryService{list(e){return this.client.get("/",(0,Ac.createRequestConfig)(e)).then(Ac.dataExtractor)}}).retrieve().build();zn.BasisTheoryApplicationTemplates=mg});var kc=E(Fs=>{"use strict";Object.defineProperty(Fs,"__esModule",{value:!0});Object.defineProperty(Fs,"BasisTheoryApplicationTemplates",{enumerable:!0,get:function(){return hg.BasisTheoryApplicationTemplates}});var hg=xc()});var Oc=E(Gn=>{"use strict";Object.defineProperty(Gn,"__esModule",{value:!0});Gn.BasisTheoryApplicationKeys=void 0;var Vn=H(),yg=z(),bg=pe(),wg=new bg.CrudBuilder(class extends yg.BasisTheoryService{create(e){return this.client.post("".concat(e,"/keys")).then(Vn.dataExtractor)}get(e){return this.client.get("".concat(e,"/keys")).then(Vn.dataExtractor)}getById(e,n){return this.client.get("".concat(e,"/keys/").concat(n)).then(Vn.dataExtractor)}delete(e,n){return this.client.delete("".concat(e,"/keys/").concat(n)).then(Vn.dataExtractor)}}).build();Gn.BasisTheoryApplicationKeys=wg});var Dc=E(qs=>{"use strict";Object.defineProperty(qs,"__esModule",{value:!0});Object.defineProperty(qs,"BasisTheoryApplicationKeys",{enumerable:!0,get:function(){return Sg.BasisTheoryApplicationKeys}});var Sg=Oc()});var Nc=E(Yn=>{"use strict";Object.defineProperty(Yn,"__esModule",{value:!0});Yn.BasisTheoryApplications=void 0;var Wn=H(),Eg=z(),vg=pe(),Cg=new vg.CrudBuilder(class extends Eg.BasisTheoryService{getApplicationByKey(){return this.retrieveByKey()}retrieveByKey(e){return this.client.get("/key",(0,Wn.createRequestConfig)(e)).then(Wn.dataExtractor)}regenerateKey(e,n){return this.client.post("".concat(e,"/regenerate"),void 0,(0,Wn.createRequestConfig)(n)).then(Wn.dataExtractor)}}).create().retrieve().update().delete().list().build();Yn.BasisTheoryApplications=Cg});var Ks=E(js=>{"use strict";Object.defineProperty(js,"__esModule",{value:!0});Object.defineProperty(js,"BasisTheoryApplications",{enumerable:!0,get:function(){return Tg.BasisTheoryApplications}});var Tg=Nc()});var Lc=E(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.BasisTheoryTokenize=void 0;var Jn=H(),Pg=z(),Hs=class extends Pg.BasisTheoryService{tokenize(e,n={}){return this.client.post("/",e,(0,Jn.createRequestConfig)(n,{transformRequest:Jn.proxyRaw,transformResponse:Jn.proxyRaw})).then(Jn.dataExtractor)}};Zn.BasisTheoryTokenize=Hs});var Bc=E(zs=>{"use strict";Object.defineProperty(zs,"__esModule",{value:!0});Object.defineProperty(zs,"BasisTheoryTokenize",{enumerable:!0,get:function(){return Rg.BasisTheoryTokenize}});var Rg=Lc()});var Mc=E(Xn=>{"use strict";Object.defineProperty(Xn,"__esModule",{value:!0});Xn.delegateTokenize=void 0;var _g=Bc(),Ig=t=>class extends _g.BasisTheoryTokenize{tokenize(n,r){return t!=null&&t.hasElement(n)?t.tokenize(n,r):super.tokenize(n,r)}};Xn.delegateTokenize=Ig});var Uc=E(Qn=>{"use strict";Object.defineProperty(Qn,"__esModule",{value:!0});Qn.BasisTheoryTokens=void 0;var qt=H(),jt=mt(),Ag=z(),xg=pe(),kg=new xg.CrudBuilder(class extends Ag.BasisTheoryService{constructor(e){let n=e;n.transformRequest=[].concat(jt.transformTokenRequestSnakeCase,e.transformRequest||[]),n.transformResponse=[].concat(jt.transformTokenResponseCamelCase,e.transformResponse||[]),super(n)}retrieve(e,n={}){let r="/".concat(e);return this.client.get(r,(0,qt.createRequestConfig)(n)).then(jt.dataExtractor)}update(e,n,r={}){let s="/".concat(e),i=(0,qt.createRequestConfig)(r);return this.client.patch(s,n,O(b({},i),{headers:O(b({},(i==null?void 0:i.headers)||{}),{[qt.CONTENT_TYPE_HEADER]:qt.MERGE_CONTENT_TYPE})})).then(jt.dataExtractor)}search(e,n){return this.client.post("/search",e,(0,qt.createRequestConfig)(n)).then(jt.dataExtractor)}}).create().delete().list().build();Qn.BasisTheoryTokens=kg});var Gs=E(Vs=>{"use strict";Object.defineProperty(Vs,"__esModule",{value:!0});Object.defineProperty(Vs,"BasisTheoryTokens",{enumerable:!0,get:function(){return Og.BasisTheoryTokens}});var Og=Uc()});var $c=E(er=>{"use strict";Object.defineProperty(er,"__esModule",{value:!0});er.delegateTokens=void 0;var Dg=Gs(),Ng=t=>class extends Dg.BasisTheoryTokens{create(n,r){return t!=null&&t.hasElement(n)?t.tokens.create(n,r):super.create(n,r)}update(n,r,s){return t!=null&&t.hasElement(r)?t.tokens.update(n,r,s):super.update(n,r,s)}retrieve(n,r){return t!==void 0?t.tokens.retrieve(n,r):super.retrieve(n,r)}};er.delegateTokens=Ng});var Fc=E(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.BasisTheoryProxy=void 0;var Re=H(),Lg=z(),Ws=class extends Lg.BasisTheoryService{get(e){return this.proxyRequest("get",e)}post(e){return this.proxyRequest("post",e)}put(e){return this.proxyRequest("put",e)}patch(e){return this.proxyRequest("patch",e)}delete(e){return this.proxyRequest("delete",e)}proxyRequest(e,n){var r;if(e==="post"||e==="put"||e==="patch"){var s,i;let o=n!=null&&n.includeResponseHeaders&&e==="post"?Re.dataAndHeadersExtractor:Re.dataExtractor;return this.client[e]((s=n==null?void 0:n.path)!==null&&s!==void 0?s:"",(i=n==null?void 0:n.body)!==null&&i!==void 0?i:void 0,(0,Re.createRequestConfig)(n,{transformRequest:Re.proxyRaw,transformResponse:Re.proxyRaw})).then(o)}return this.client[e]((r=n==null?void 0:n.path)!==null&&r!==void 0?r:"/",(0,Re.createRequestConfig)(n,{transformRequest:Re.proxyRaw,transformResponse:Re.proxyRaw})).then(Re.dataExtractor)}};tr.BasisTheoryProxy=Ws});var qc=E(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});var Ys=Fc();Object.keys(Ys).forEach(function(t){t==="default"||t==="__esModule"||t in Kt&&Kt[t]===Ys[t]||Object.defineProperty(Kt,t,{enumerable:!0,get:function(){return Ys[t]}})})});var jc=E(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.delegateProxy=void 0;var Bg=qc(),Mg=t=>class extends Bg.BasisTheoryProxy{get(n){return t!==void 0?t.proxy.get(n):super.get(n)}post(n){return t!==void 0?t.proxy.post(n):super.post(n)}put(n){return t!==void 0?t.proxy.put(n):super.put(n)}patch(n){return t!==void 0?t.proxy.patch(n):super.patch(n)}delete(n){return t!==void 0?t.proxy.delete(n):super.delete(n)}};nr.delegateProxy=Mg});var Hc=E(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.BasisTheoryTokenIntents=void 0;var Kc=H(),Ug=z(),$g=pe(),Fg=new $g.CrudBuilder(class extends Ug.BasisTheoryService{constructor(e){let n=e;n.transformRequest=[].concat(Kc.transformTokenRequestSnakeCase,e.transformRequest||[]),n.transformResponse=[].concat(Kc.transformTokenResponseCamelCase,e.transformResponse||[]),super(n)}}).create().delete().build();rr.BasisTheoryTokenIntents=Fg});var zc=E(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});Object.defineProperty(Js,"BasisTheoryTokenIntents",{enumerable:!0,get:function(){return qg.BasisTheoryTokenIntents}});var qg=Hc()});var Vc=E(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.delegateTokenIntents=void 0;var jg=zc(),Kg=t=>class extends jg.BasisTheoryTokenIntents{create(n,r){return t!=null&&t.hasElement(n)?t.tokenIntents.create(n,r):super.create(n,r)}};sr.delegateTokenIntents=Kg});var Gc=E(X=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0});var Zs=Mc();Object.keys(Zs).forEach(function(t){t==="default"||t==="__esModule"||t in X&&X[t]===Zs[t]||Object.defineProperty(X,t,{enumerable:!0,get:function(){return Zs[t]}})});var Xs=$c();Object.keys(Xs).forEach(function(t){t==="default"||t==="__esModule"||t in X&&X[t]===Xs[t]||Object.defineProperty(X,t,{enumerable:!0,get:function(){return Xs[t]}})});var Qs=jc();Object.keys(Qs).forEach(function(t){t==="default"||t==="__esModule"||t in X&&X[t]===Qs[t]||Object.defineProperty(X,t,{enumerable:!0,get:function(){return Qs[t]}})});var ei=Vc();Object.keys(ei).forEach(function(t){t==="default"||t==="__esModule"||t in X&&X[t]===ei[t]||Object.defineProperty(X,t,{enumerable:!0,get:function(){return ei[t]}})})});var ti=E(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.injectScript=ht.findScript=void 0;var Hg=t=>document.querySelector('script[src^="'.concat(t,'"]'));ht.findScript=Hg;var zg=t=>{let e=document.createElement("script");e.src=t;let n=document.head||document.body;if(!n)throw new Error("No <head> or <body> elements found in document.");return n.append(e),e};ht.injectScript=zg});var ni=E(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.ELEMENTS_SCRIPT_UNKNOWN_ERROR_MESSAGE=F.ELEMENTS_SCRIPT_LOAD_ERROR_MESSAGE=F.ELEMENTS_SCRIPT_FAILED_TO_DELIVER=F.ELEMENTS_NOM_DOM_ERROR_MESSAGE=F.ELEMENTS_INIT_ERROR_MESSAGE=F.CARD_ICON_POSITIONS=F.CARD_BRANDS=F.AUTOCOMPLETE_VALUES=void 0;var Vg="BasisTheory Elements was not properly initialized.";F.ELEMENTS_INIT_ERROR_MESSAGE=Vg;var Gg="Tried to load BasisTheoryElements in a non-DOM environment.";F.ELEMENTS_NOM_DOM_ERROR_MESSAGE=Gg;var Wg="Basis Theory Elements did not load properly. Check network tab for more details.";F.ELEMENTS_SCRIPT_LOAD_ERROR_MESSAGE=Wg;var Yg="Unable to load the Elements script. This may be due to network restrictions or browser extensions like ad blockers interfering with script loading. Check browser settings or network connection and try again.";F.ELEMENTS_SCRIPT_UNKNOWN_ERROR_MESSAGE=Yg;var Jg="Failed to deliver Elements script from Basis Theory. Check your network connection and try again or contact support@basistheory.com";F.ELEMENTS_SCRIPT_FAILED_TO_DELIVER=Jg;var Zg=["visa","mastercard","american-express","discover","diners-club","jcb","unionpay","maestro","elo","hiper","hipercard","mir","unknown"];F.CARD_BRANDS=Zg;var Xg=["left","right","none"];F.CARD_ICON_POSITIONS=Xg;var Qg=["additional-name","address-level1","address-level2","address-level3","address-level4","address-line1","address-line2","address-line3","bday-day","bday-month","bday-year","bday","billing","cc-additional-name","cc-csc","cc-exp-month","cc-exp-year","cc-exp","cc-family-name","cc-given-name","cc-name","cc-number","cc-type","country-name","country","current-password","email","family-name","fax","given-name","home","honorific-prefix","honorific-suffix","language","mobile","name","new-password","nickname","off","on","one-time-code","organization-title","organization","page","postal-code","sex","shipping","street-address","tel-area-code","tel-country-code","tel-extension","tel-local-prefix","tel-local-suffix","tel-local","tel-national","tel","transaction-amount","transaction-currency","url","username","work"];F.AUTOCOMPLETE_VALUES=Qg});var Yc=E(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.loadElements=void 0;var De=Un(),qe=ni(),ri=ti(),si,Wc=(t,e)=>new Promise((n,r)=>{let s=(0,ri.findScript)(t);if(!s)s=(0,ri.injectScript)(t);else{if(window.BasisTheoryElements){n(window.BasisTheoryElements);return}if(e>0){try{var i;(i=s)===null||i===void 0||i.remove()}catch(o){(async()=>await De.logger.log.error("Error removing script from DOM on retry attempt ".concat(e),{logType:"scriptRemovalError",logOrigin:"loadScript",retryCount:e,removalError:o}))(),r(new Error(qe.ELEMENTS_SCRIPT_UNKNOWN_ERROR_MESSAGE));return}s=(0,ri.injectScript)(t)}}s.addEventListener("load",()=>{if(window.BasisTheoryElements){n(window.BasisTheoryElements);return}(async()=>await De.logger.log.error("Elements not found on window on load",{logType:"elementsNotFoundOnWindow",logOrigin:"loadScript",retryCount:e}))(),r(new Error(qe.ELEMENTS_SCRIPT_LOAD_ERROR_MESSAGE))}),s.addEventListener("error",async o=>{if(await De.logger.log.error("Elements script onError event",{logType:"elementsScriptOnError",logOrigin:"loadScript",retryCount:e,event:{message:o==null?void 0:o.message,source:o==null?void 0:o.filename,lineno:o==null?void 0:o.lineno,colno:o==null?void 0:o.colno,error:o==null?void 0:o.error,target:o==null?void 0:o.target}}),e===0){Wc(t,e+1).then(n).catch(r);return}try{let l=await fetch(t),c,d;try{d=await l.text(),c=JSON.parse(d)}catch(u){var a;c=(a=d)!==null&&a!==void 0?a:""}if(!l.ok){await De.logger.log.error("Second attempt to load elements script failed, fetch failed with status: ".concat(l.status,"."),{logType:"elementsScriptFetchFailure",logOrigin:"loadScript",retryCount:e,fetchResult:"error",fetchResponse:c,fetchHeaders:l.headers,fetchStatusText:l.statusText}),r(new Error(qe.ELEMENTS_SCRIPT_FAILED_TO_DELIVER));return}await De.logger.log.error("Second attempt to load elements script failed, fetch success",{logType:"elementsScriptFetchFailure",logOrigin:"loadScript",retryCount:e,fetchResult:"success",fetchResponse:c,fetchHeaders:l.headers,fetchStatusText:l.statusText}),r(new Error(qe.ELEMENTS_SCRIPT_UNKNOWN_ERROR_MESSAGE));return}catch(l){await De.logger.log.error("Second attempt failed to load elements script failed, fetch network error.",{logType:"elementsScriptFetchError",logOrigin:"loadScript",retryCount:e,fetchResult:"error",fetchError:JSON.stringify(l!=null?l:"Unknown Error")}),r(new Error(qe.ELEMENTS_SCRIPT_UNKNOWN_ERROR_MESSAGE));return}})}),em=t=>(si||(si=new Promise((e,n)=>{if(typeof window!="object"){(async()=>(await De.logger.log.warn(qe.ELEMENTS_NOM_DOM_ERROR_MESSAGE,{logType:"elementsNonDomError",logOrigin:"loadElements"}),n(new Error(qe.ELEMENTS_NOM_DOM_ERROR_MESSAGE))))();return}if(window.BasisTheoryElements){e(window.BasisTheoryElements);return}let r="https://js.basistheory.com/web-elements/1.5.0/client/index.js";if(typeof t!="undefined")try{r=new URL(t).toString().replace(new RegExp("\\/$","u"),"")}catch(s){throw(async()=>await De.logger.log.warn("Invalid format for the given Elements client url.",{logType:"invalidClientUrlError",logOrigin:"loadElements"}))(),new Error("Invalid format for the given Elements client url.")}Wc(r,0).then(e).catch(s=>{n(s)})})),si);ir.loadElements=em});var Jc=E(ge=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});var ii=Gc();Object.keys(ii).forEach(function(t){t==="default"||t==="__esModule"||t in ge&&ge[t]===ii[t]||Object.defineProperty(ge,t,{enumerable:!0,get:function(){return ii[t]}})});var oi=ti();Object.keys(oi).forEach(function(t){t==="default"||t==="__esModule"||t in ge&&ge[t]===oi[t]||Object.defineProperty(ge,t,{enumerable:!0,get:function(){return oi[t]}})});var ai=Yc();Object.keys(ai).forEach(function(t){t==="default"||t==="__esModule"||t in ge&&ge[t]===ai[t]||Object.defineProperty(ge,t,{enumerable:!0,get:function(){return ai[t]}})})});var Zc=E(or=>{"use strict";Object.defineProperty(or,"__esModule",{value:!0});or.BasisTheoryLogs=void 0;var tm=z(),nm=pe(),rm=new nm.CrudBuilder(class extends tm.BasisTheoryService{}).list().build();or.BasisTheoryLogs=rm});var Xc=E(ci=>{"use strict";Object.defineProperty(ci,"__esModule",{value:!0});Object.defineProperty(ci,"BasisTheoryLogs",{enumerable:!0,get:function(){return sm.BasisTheoryLogs}});var sm=Zc()});var Qc=E(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.BasisTheoryPermissions=void 0;var li=H(),im=z(),ui=class extends im.BasisTheoryService{list(e,n){let r="/".concat((0,li.getQueryParams)(e));return this.client.get(r,(0,li.createRequestConfig)(n)).then(li.dataExtractor)}};ar.BasisTheoryPermissions=ui});var el=E(di=>{"use strict";Object.defineProperty(di,"__esModule",{value:!0});Object.defineProperty(di,"BasisTheoryPermissions",{enumerable:!0,get:function(){return om.BasisTheoryPermissions}});var om=Qc()});var nl=E(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.BasisTheoryProxies=void 0;var tl=mt(),am=z(),cm=pe(),lm=new cm.CrudBuilder(class extends am.BasisTheoryService{constructor(e){let n=b({},e);n.transformRequest=[].concat(tl.transformProxyRequestSnakeCase,e.transformRequest||[]),n.transformResponse=[].concat(tl.transformProxyResponseCamelCase,e.transformResponse||[]),super(n)}}).create().retrieve().update().patch().delete().list().build();cr.BasisTheoryProxies=lm});var rl=E(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});var fi=nl();Object.keys(fi).forEach(function(t){t==="default"||t==="__esModule"||t in Ht&&Ht[t]===fi[t]||Object.defineProperty(Ht,t,{enumerable:!0,get:function(){return fi[t]}})})});var sl=E(lr=>{"use strict";Object.defineProperty(lr,"__esModule",{value:!0});lr.BasisTheoryReactorFormulas=void 0;var um=z(),dm=pe(),fm=new dm.CrudBuilder(class extends um.BasisTheoryService{}).create().retrieve().update().delete().list().build();lr.BasisTheoryReactorFormulas=fm});var il=E(pi=>{"use strict";Object.defineProperty(pi,"__esModule",{value:!0});Object.defineProperty(pi,"BasisTheoryReactorFormulas",{enumerable:!0,get:function(){return pm.BasisTheoryReactorFormulas}});var pm=sl()});var al=E(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.BasisTheoryReactors=void 0;var ur=H(),ol=mt(),gm=z(),mm=pe(),hm=new mm.CrudBuilder(class extends gm.BasisTheoryService{constructor(e){let n=b({},e);n.transformRequest=[].concat(ol.transformReactorRequestSnakeCase,e.transformRequest||[]),n.transformResponse=[].concat(ol.transformReactorResponseCamelCase,e.transformResponse||[]),super(n)}react(e,n,r){return this.client.post("/".concat(e,"/react"),n,(0,ur.createRequestConfig)(r,{transformRequest:ur.proxyRaw,transformResponse:ur.proxyRaw})).then(ur.dataExtractor)}}).create().retrieve().update().patch().delete().list().build();dr.BasisTheoryReactors=hm});var cl=E(gi=>{"use strict";Object.defineProperty(gi,"__esModule",{value:!0});Object.defineProperty(gi,"BasisTheoryReactors",{enumerable:!0,get:function(){return ym.BasisTheoryReactors}});var ym=al()});var ul=E(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.BasisTheorySessions=void 0;var ll=H(),fr=mt(),bm=z(),mi=class extends bm.BasisTheoryService{constructor(e){let n=b({},e);n.transformRequest=[].concat(fr.transformProxyRequestSnakeCase,e.transformRequest||[]),n.transformResponse=[].concat(fr.transformProxyResponseCamelCase,e.transformResponse||[]),super(n)}create(e={}){return this.client.post("/",void 0,(0,ll.createRequestConfig)(e)).then(fr.dataExtractor)}authorize(e,n={}){return this.client.post("/authorize",e,(0,ll.createRequestConfig)(n)).then(fr.dataExtractor)}};pr.BasisTheorySessions=mi});var dl=E(hi=>{"use strict";Object.defineProperty(hi,"__esModule",{value:!0});Object.defineProperty(hi,"BasisTheorySessions",{enumerable:!0,get:function(){return wm.BasisTheorySessions}});var wm=ul()});var fl=E(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.BasisTheoryTenants=void 0;var L=H(),Sm=z(),Em=pe(),vm=new Em.CrudBuilder(class extends Sm.BasisTheoryService{retrieve(e){return this.client.get("/",(0,L.createRequestConfig)(e)).then(L.dataExtractor)}update(e,n){return this.client.put("/",e,(0,L.createRequestConfig)(n)).then(L.dataExtractor)}async delete(e){await this.client.delete("/",(0,L.createRequestConfig)(e))}retrieveUsageReport(e){return this.client.get("/reports/usage",(0,L.createRequestConfig)(e)).then(L.dataExtractor)}createInvitation(e,n){return this.client.post("/invitations",e,(0,L.createRequestConfig)(n)).then(L.dataExtractor)}resendInvitation(e,n){return this.client.post("/invitations/".concat(e,"/resend"),{},(0,L.createRequestConfig)(n)).then(L.dataExtractor)}listInvitations(e,n){let r="/invitations".concat((0,L.getQueryParams)(e));return this.client.get(r,(0,L.createRequestConfig)(n)).then(L.dataExtractor)}retrieveInvitation(e,n){return this.client.get("/invitations/".concat(e),(0,L.createRequestConfig)(n)).then(L.dataExtractor)}async deleteInvitation(e,n){await this.client.delete("/invitations/".concat(e),(0,L.createRequestConfig)(n))}listMembers(e,n){let r="/members".concat((0,L.getQueryParams)(e));return this.client.get(r,(0,L.createRequestConfig)(n)).then(L.dataExtractor)}async deleteMember(e,n){await this.client.delete("/members/".concat(e),(0,L.createRequestConfig)(n))}}).build();gr.BasisTheoryTenants=vm});var pl=E(yi=>{"use strict";Object.defineProperty(yi,"__esModule",{value:!0});Object.defineProperty(yi,"BasisTheoryTenants",{enumerable:!0,get:function(){return Cm.BasisTheoryTenants}});var Cm=fl()});var gl=E(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.BasisTheoryThreeDS=void 0;var mr=H(),Tm=z(),bi=class extends Tm.BasisTheoryService{createSession(e){return this.client.post("/sessions",e).then(mr.dataExtractor)}getSessionById(e){return this.client.get("/sessions/".concat(e)).then(mr.dataExtractor)}authenticateSession(e,n){return this.client.post("/sessions/".concat(e,"/authenticate"),n).then(mr.dataExtractor)}getChallengeResult(e){return this.client.get("/sessions/".concat(e,"/challenge-result")).then(mr.dataExtractor)}};hr.BasisTheoryThreeDS=bi});var ml=E(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});var wi=gl();Object.keys(wi).forEach(function(t){t==="default"||t==="__esModule"||t in zt&&zt[t]===wi[t]||Object.defineProperty(zt,t,{enumerable:!0,get:function(){return wi[t]}})})});var hl=E(yr=>{"use strict";Object.defineProperty(yr,"__esModule",{value:!0});yr.BasisTheory=void 0;var Pm=kc(),Rm=Dc(),_m=Ks(),x=H(),Im=Un(),Vt=Jc(),Am=ni(),xm=Xc(),km=el(),Om=rl(),Dm=il(),Nm=cl(),Lm=dl(),Bm=pl(),Mm=ml();function Um(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var $m={apiBaseUrl:x.DEFAULT_BASE_URL,elements:!1,disableTelemetry:!1,debug:!1,appInfo:{}},Si=class{constructor(){Um(this,"_initStatus","not-started")}async init(e,n={}){if(this._initStatus!=="not-started"&&this._initStatus!=="error")throw new Error("This BasisTheory instance has been already initialized.");this._initStatus="in-progress";try{this._initOptions=Object.freeze(b(b({},$m),n));let r=this._initOptions.apiBaseUrl;try{let i=new URL(this.initOptions.apiBaseUrl);i.hostname==="localhost"?i.protocol="http":i.protocol="https",r="".concat(i.toString().replace(new RegExp("\\/$","u"),""),"/")}catch(i){throw new Error("Invalid format for the given API base url.")}let s=this._initOptions.appInfo;this._initOptions.elements&&await this.loadElements(e),this._tokens=new((0,Vt.delegateTokens)(this._elements))({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.tokens,r).toString(),appInfo:s,debug:this._initOptions.debug}),this._tokenize=new((0,Vt.delegateTokenize)(this._elements))({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.tokenize,r).toString(),appInfo:s,debug:this._initOptions.debug}),this._applications=new _m.BasisTheoryApplications({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.applications,r).toString(),appInfo:s}),this._applicationKeys=new Rm.BasisTheoryApplicationKeys({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.applicationKeys,r).toString(),appInfo:s}),this._applicationTemplates=new Pm.BasisTheoryApplicationTemplates({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.applicationTemplates,r).toString(),appInfo:s}),this._tenants=new Bm.BasisTheoryTenants({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.tenants,r).toString(),appInfo:s}),this._logs=new xm.BasisTheoryLogs({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.logs,r).toString(),appInfo:s}),this._reactorFormulas=new Dm.BasisTheoryReactorFormulas({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.reactorFormulas,r).toString(),appInfo:s}),this._reactors=new Nm.BasisTheoryReactors({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.reactors,r).toString(),appInfo:s}),this._permissions=new km.BasisTheoryPermissions({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.permissions,r).toString(),appInfo:s}),this._proxies=new Om.BasisTheoryProxies({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.proxies,r).toString(),appInfo:s}),this._proxy=new((0,Vt.delegateProxy)(this._elements))({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.proxy,r).toString(),appInfo:s,debug:this._initOptions.debug}),this._sessions=new Lm.BasisTheorySessions({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.sessions,r).toString(),appInfo:s,debug:this._initOptions.debug}),this._threeds=new Mm.BasisTheoryThreeDS({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.threeds,r).toString(),appInfo:s}),this._tokenIntents=new((0,Vt.delegateTokenIntents)(this._elements))({apiKey:e,baseURL:new URL(x.CLIENT_BASE_PATHS.tokenIntents,r).toString(),appInfo:s,debug:this._initOptions.debug}),n.disableTelemetry&&Im.logger.setTelemetryEnabled(!1),this._initStatus="done"}catch(r){throw this._initStatus="error",r}return this}createElement(e,n){if(!this._elements)throw new Error(Am.ELEMENTS_INIT_ERROR_MESSAGE);return this._elements.createElement(e,n)}tokenize(e,n){return(0,x.assertInit)(this._tokenize).tokenize(e,n)}async loadElements(e){let n;try{n=new URL(this.initOptions.elementsBaseUrl||x.DEFAULT_ELEMENTS_BASE_URL)}catch(l){throw new Error("Invalid format for the given Elements base url.")}let r=await(0,Vt.loadElements)(this.initOptions.elementsClientUrl),s=this.initOptions.elementsUseNgApi||!1,i=this.initOptions.elementsUseSameOriginApi||!1,o=this.initOptions.disableTelemetry||!1,a=this.initOptions.debug||!1;await r.init(e,n.toString().replace(new RegExp("\\/$","u"),""),s,i,o,a),this.elements=r}get initOptions(){return(0,x.assertInit)(this._initOptions)}get tokens(){return(0,x.assertInit)(this._tokens)}get applications(){return(0,x.assertInit)(this._applications)}get applicationKeys(){return(0,x.assertInit)(this._applicationKeys)}get applicationTemplates(){return(0,x.assertInit)(this._applicationTemplates)}get client(){if(this._elements){var e;return(e=this._elements)===null||e===void 0?void 0:e.client}console.error("Elements are not initialized. Either initialize elements or use a regular HTTP client if no elements are needed.")}get tenants(){return(0,x.assertInit)(this._tenants)}get logs(){return(0,x.assertInit)(this._logs)}get reactorFormulas(){return(0,x.assertInit)(this._reactorFormulas)}get reactors(){return(0,x.assertInit)(this._reactors)}get permissions(){return(0,x.assertInit)(this._permissions)}get proxies(){return(0,x.assertInit)(this._proxies)}get proxy(){return(0,x.assertInit)(this._proxy)}get sessions(){return(0,x.assertInit)(this._sessions)}get threeds(){return(0,x.assertInit)(this._threeds)}get tokenIntents(){return(0,x.assertInit)(this._tokenIntents)}get elements(){return(0,x.assertInit)(this._elements)}set elements(e){this._elements=e}};yr.BasisTheory=Si});var yl=E(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});var Ci={_instance:!0};ee._instance=void 0;var br=hl();Object.keys(br).forEach(function(t){t==="default"||t==="__esModule"||Object.prototype.hasOwnProperty.call(Ci,t)||t in ee&&ee[t]===br[t]||Object.defineProperty(ee,t,{enumerable:!0,get:function(){return br[t]}})});var Ei=Ks();Object.keys(Ei).forEach(function(t){t==="default"||t==="__esModule"||Object.prototype.hasOwnProperty.call(Ci,t)||t in ee&&ee[t]===Ei[t]||Object.defineProperty(ee,t,{enumerable:!0,get:function(){return Ei[t]}})});var vi=Gs();Object.keys(vi).forEach(function(t){t==="default"||t==="__esModule"||Object.prototype.hasOwnProperty.call(Ci,t)||t in ee&&ee[t]===vi[t]||Object.defineProperty(ee,t,{enumerable:!0,get:function(){return vi[t]}})});var Fm=new br.BasisTheory;ee._instance=Fm});var Nl={};St(Nl,{BasisTheory3ds:()=>Dl,sdkBaseUrl:()=>Cr});function oh(t){let{messageType:e,messageVersion:n,threeDSServerTransID:r,acsTransID:s,challengeWindowSize:i}=t;return typeof t=="object"&&t!==null&&typeof e=="string"&&typeof n=="string"&&typeof r=="string"&&typeof s=="string"&&Object.values(Er).includes(i)}var _e,Ie,Sr,qm,vl,jm,Cl,Km,Hm,Tl,zm,me,Er,wr,Vm,Gm,Wm,Pl,Ym,Rl,_l,Il,bl,Gt,Al,Jm,xl,vr,kl,V,Ti,Ol,wl,Zm,Sl,El,Xm,Qm,eh,th,nh,rh,sh,ih,ah,ch,lh,uh,Cr,Dl,Ll=be(()=>{_e={FRAME_CONTAINER_ID:"methodFrameContainer",IFRAME_NAME:"methodIframe",FORM_NAME:"threeDSMethodForm",INPUT_NAME:"threeDSMethodData"},Ie={FRAME_CONTAINER_ID:"challengeFrameContainer",IFRAME_NAME:"challengeIframe",FORM_NAME:"threeDSCReqForm"},Sr={IFRAME:"iframe",REDIRECT:"redirect"},qm="BT-API-KEY",vl="BT-TRACE-ID",jm="https://api.basistheory.com",Cl="https://3ds.basistheory.com",Km="pages/method.html",Hm="pages/challenge.html",Tl=!1,zm=({disableTelemetry:t})=>{Tl=t},me=(()=>{let t="pubb96b84a13912504f4354f2d794ea4fab",e=async(n,r,s,i={})=>{if(Tl)return;let o=O(b({application:"3ds-web",ddsource:"3ds-web",service:"3ds-web"},i),{level:r,message:r==="error"&&s?"".concat(n,": ").concat(s.message):n});try{if(!(await fetch("https://http-intake.logs.datadoghq.com/v1/input/".concat(t),{method:"POST",body:JSON.stringify(o),headers:{"Content-Type":"application/json"}})).ok)throw new Error("Network response was not ok")}catch(a){}};return{log:{error:(n,r,s)=>e(n,"error",r,s),info:(n,r)=>e(n,"info",void 0,r),warn:(n,r)=>e(n,"warn",void 0,r)}}})();(function(t){t.ONE="01",t.TWO="02",t.THREE="03",t.FOUR="04",t.FIVE="05"})(Er||(Er={}));wr=t=>t==null?"":JSON.stringify(t),Vm=()=>{let t=[1,4,8,15,16,24,32,48],e=window.screen.colorDepth,n=t.filter(r=>r<=e);return n.length===0?t[0]:Math.max(...n)},Gm=t=>t==null?void 0:t.split("-").slice(0,2).join("-"),Wm=()=>({browserColorDepth:wr(Vm()),browserJavascriptEnabled:!0,browserJavaEnabled:window.navigator.javaEnabled(),browserLanguage:Gm(window.navigator.language),browserScreenHeight:wr(window.screen.height),browserScreenWidth:wr(window.screen.width),browserTZ:wr(new Date().getTimezoneOffset()),browserUserAgent:window.navigator.userAgent}),Pl=(t="05")=>{let n={"01":["250px","400px"],"02":["390px","400px"],"03":["500px","600px"],"04":["600px","400px"],"05":["100%","100%"]}[t];if(n)return n;{let r=new Error("Window size ".concat(t," is not supported"));throw me.log.error("Unsupported window size",r),r}},Ym=t=>!t||t instanceof HTMLElement,Rl=(t,e,n,r="0",s="0",i)=>{if(!Ym(t)||!e||!n){let a="Unable to create iframe. Container must be a HTML element ".concat(JSON.stringify(t)," ").concat(e," ").concat(n);throw me.log.error("Unable to create iframe",new Error),Error(a)}let o=document.createElement("iframe");return o.name=e,o.width=r,o.height=s,o.setAttribute("id",n),o.setAttribute("frameborder","0"),o.setAttribute("border","0"),i&&typeof i=="function"&&o.addEventListener("onload",i),t.appendChild(o),o},_l=(t,e,n)=>{let r=document.createElement("form");return r.name=t,r.action=e,r.method="POST",r.target=n,r},Il=(t,e)=>{let n=document.createElement("input");return n.name=t,n.value=e,n},bl=(t,e=!1)=>{let n;if(n=document.getElementById(t),n){n.innerHTML="",e&&n.setAttribute("style","display:none;");return}n=document.createElement("div"),n.id=t,e&&n.setAttribute("style","display:none;"),document.body.appendChild(n)},Gt=t=>t==null?void 0:t.map(e=>{var n;return(n=document.getElementById(e))==null?void 0:n.remove()}),Al=(t,e)=>{let n=r=>typeof r=="string"?e(r):typeof r!="object"||r===null?r:Array.isArray(r)?r.map(n):Object.fromEntries(Object.entries(r).map(([s,i])=>[e(s),typeof i=="object"||Array.isArray(i)?n(i):i]));return n(t)},Jm=t=>Al(t,e=>e.replace(/([a-z])([A-Z])/g,"$1_$2").toLowerCase()),xl=t=>Al(t,e=>e.replace(/_./g,n=>n[1].toUpperCase())),vr=t=>btoa(JSON.stringify(t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,""),kl=(()=>{let t,e;return{client:async(s,i,o,a)=>{if(!t)throw Error("Missing api key");e&&me.log.info("Using custom api base url in 3DS SDK ".concat(e));let l={};return a&&(l[vl]=a),await fetch("".concat(e!=null?e:jm,"/3ds").concat(i),{method:s,body:JSON.stringify(o),headers:b({[qm]:t,"Content-Type":"application/json"},l)})},init:(s,i)=>{t=s,e=i}}})();(function(t){t.METHOD="method",t.CHALLENGE="challenge",t.METHOD_TIME_OUT="methodTimeout",t.START_METHOD_TIME_OUT="startMethodTimeout",t.ERROR="error"})(V||(V={}));Ti=t=>window.postMessage(t,"*"),Ol=t=>typeof t=="object"&&t!==null&&"isCompleted"in t&&typeof t.isCompleted=="boolean"&&"id"in t&&typeof t.id=="string"&&"type"in t&&Object.values(V).includes(t.type),wl=t=>{var e;return(e={[V.CHALLENGE]:Ie.IFRAME_NAME,[V.METHOD]:_e.IFRAME_NAME,[V.METHOD_TIME_OUT]:_e.IFRAME_NAME,[V.ERROR]:"".concat(_e.IFRAME_NAME,",").concat(Ie.IFRAME_NAME),[V.START_METHOD_TIME_OUT]:""}[t])==null?void 0:e.split(",")},Zm=t=>{let e;return new Promise((n,r)=>{let s=i=>{var o,a,l,c;if(Ol(i.data)){if(i.data.type===V.ERROR)me.log.error("Error occurred during session creation: ".concat((o=i==null?void 0:i.data)==null?void 0:o.details)),r(new Error("An error occurred during session creation: ".concat((a=i==null?void 0:i.data)==null?void 0:a.details))),Gt(wl((l=i.data)==null?void 0:l.type)),clearTimeout(e);else if(i.data.type===V.START_METHOD_TIME_OUT)e=setTimeout(()=>{Ti({id:i.data.id,type:V.METHOD_TIME_OUT,isCompleted:!1})},1e4);else if(i.data.type!==V.CHALLENGE){if(i.isTrusted){window.removeEventListener("message",s);let u=(p=>{let m=xl(t),f={id:p.data.id,cardBrand:m.cardBrand,correlationId:m.correlationId};return m.additionalCardBrands&&(f.additionalCardBrands=m.additionalCardBrands),f})(i);n(u),Gt(wl((c=i.data)==null?void 0:c.type)),clearTimeout(e)}}}};window.addEventListener("message",s)})},Sl={},El={"The card was not supported by any card schemes":"3DS is not supported for the provided card"},Xm=t=>"errors"in t&&t.errors!==void 0&&typeof t.errors=="object"&&t.errors!==null,Qm=t=>typeof t=="object"&&t!==null&&("title"in t||"status"in t||"detail"in t),eh=t=>{if(Xm(t)){for(let e of Object.keys(t.errors))if(El[e])throw new Error(El[e])}else if(t.status===424&&t.error){let e=[];t.error.message&&e.push(t.error.message),t.error.details&&e.push("details: "+t.error.details);let n=e.length>0?e.join(" - "):t.title||"An unknown 3DS service error occurred";throw new Error(n)}else if(t.title&&Sl[t.title])throw new Error(Sl[t.title]);throw new Error(t.title||"An unknown error occurred")},th=(t,e,n)=>{let r=vr({threeDSServerTransID:e,threeDSMethodNotificationURL:"".concat(n,"?mode=redirect")}),s=window.open("","threeDSMethodForm");if(!s){console.error("Popup blocked or unable to open the window.");return}let i=_l(_e.FORM_NAME,t,"threeDSMethodForm");i.appendChild(Il(_e.INPUT_NAME,r)),document.body.appendChild(i),i.submit();let o=window.setInterval(()=>{s.closed&&(clearInterval(o),Ti({isCompleted:!0,id:e,type:V.METHOD}))},500)},nh=(t,e,n)=>{let r=vr({threeDSServerTransID:e,threeDSMethodNotificationURL:n}),s=document.getElementById(_e.FRAME_CONTAINER_ID),i=Rl(s,_e.IFRAME_NAME,_e.IFRAME_NAME,"0","0");i.src="".concat(Cr,"/").concat(Km),i.onload=()=>{var o;(o=i.contentWindow)==null||o.postMessage({type:"startMethod",threeDSMethodURL:t,threeDSMethodData:r},"*")}},rh=async({tokenId:t,tokenIntentId:e,pan:n,skipMethodRequest:r=!1,methodRequestMode:s,challengeMode:i,correlationId:o})=>{var m;let a=[n,t,e].filter(f=>f!==void 0);if(a.length===0)throw new Error("One of pan, tokenId, or tokenIntentId is required.");if(a.length>1)throw new Error("Only one of pan, tokenId, or tokenIntentId should be provided.");let l=n?"pan":t?"tokenId":"tokenIntentId",c=n||t||e,d=Wm(),u=await kl.client("POST","/sessions",Jm({[l]:c,device:"browser",deviceInfo:d,webChallengeMode:i}),o);if(!u.ok){let f;try{f=await u.json()}catch(y){let g="Failed to parse error response. HTTP Status: ".concat(u.status);throw me.log.error(g),new Error(g)}if(Qm(f))eh(f);else{let y="An unknown error occurred while creating session. Status: ".concat(u.status,".");throw me.log.error("".concat(y," Response: ").concat(JSON.stringify(f,null,2))),new Error(y)}}let p=xl(await u.json());return p.correlationId=((m=u.headers)==null?void 0:m.get(vl))||"",me.log.info("3DS session response received with ID ".concat(p.id)),p.methodUrl&&!r&&(Ti({isCompleted:!1,id:p.id,type:V.START_METHOD_TIME_OUT}),s===Sr.REDIRECT?th(p.methodUrl,p.id,p.methodNotificationUrl):nh(p.methodUrl,p.id,p.methodNotificationUrl)),p},sh=async({tokenId:t,tokenIntentId:e,pan:n,skipMethodRequest:r=!1,methodRequestMode:s=Sr.IFRAME,challengeMode:i=Sr.IFRAME,correlationId:o=""})=>{let a=await rh({tokenId:t,tokenIntentId:e,pan:n,skipMethodRequest:r,methodRequestMode:s,challengeMode:i,correlationId:o}).catch(l=>Promise.reject(l.message));if(!a.methodUrl||r){let l={id:a.id,cardBrand:a.cardBrand};return a.additionalCardBrands&&(l.additionalCardBrands=a.additionalCardBrands),l}return await Zm(a)},ih=(t=6e4)=>{let e;return new Promise((n,r)=>{let s=i=>{var o,a;if(Ol(i.data))if(i.data.type===V.ERROR)me.log.error("Error occurred during challenge: ".concat((o=i==null?void 0:i.data)==null?void 0:o.details)),r(new Error("An error occurred during challenge: ".concat((a=i==null?void 0:i.data)==null?void 0:a.details))),Gt([Ie.IFRAME_NAME]),clearTimeout(t);else if(i.data.type===V.CHALLENGE){clearTimeout(e),window.removeEventListener("message",s);let c=(d=>({id:d.data.id,isCompleted:d.data.isCompleted,authenticationStatus:d.data.authenticationStatus}))(i);me.log.info("".concat(i.data.type," notification received for session: ").concat(c.id)),n(c),Gt([Ie.IFRAME_NAME])}else i.isTrusted};window.addEventListener("message",s),e=setTimeout(()=>{window.removeEventListener("message",s),r(new Error("Timed out waiting for a challenge response. Please try again.")),Gt([Ie.IFRAME_NAME])},t)})};ah=(t,e,n)=>{let r=document.getElementById(n!=null?n:Ie.FRAME_CONTAINER_ID),s=Pl(e.challengeWindowSize),i=vr(e),o=Ie.IFRAME_NAME,a=Rl(r,o,o,s[0],s[1]);a.src="".concat(Cr,"/").concat(Hm),a.onload=()=>{var l;(l=a.contentWindow)==null||l.postMessage({type:"startChallenge",acsURL:t,creq:i},"*")}},ch=(t,e)=>{let n=Pl(e.challengeWindowSize);if(!window.open("","threeDSChallenge","width=".concat(n[0],",height=").concat(n[1])))throw new Error("Popup blocked or unable to open the window.");let s=vr(e),i=_l(Ie.FORM_NAME,t,"threeDSChallenge"),o=Il("creq",s);i.appendChild(o),document.body.appendChild(i),i.submit()},lh=({sessionId:t,acsTransactionId:e,acsChallengeUrl:n,threeDSVersion:r,windowSize:s,mode:i,containerId:o})=>{if(!t)throw new Error("Session ID is required");let a={messageType:"CReq",messageVersion:r,threeDSServerTransID:t,acsTransID:e,challengeWindowSize:s!=null?s:Er.THREE};if(oh(a))i===Sr.REDIRECT?ch(n,a):ah(n,a,o);else{let l="Invalid challenge request payload for session: ".concat(t);return me.log.error(l),Promise.reject(new Error(l))}return Promise.resolve({id:t})},uh=async({sessionId:t,acsTransactionId:e,acsChallengeUrl:n,threeDSVersion:r,windowSize:s,mode:i="iframe",timeout:o=6e4,containerId:a})=>(await lh({sessionId:t,acsTransactionId:e,acsChallengeUrl:n,threeDSVersion:r,windowSize:s,mode:i,containerId:a}).catch(l=>Promise.reject(l.message)),ih(o)),Cr=Cl,Dl=(t,e)=>{var n,r;try{zm({disableTelemetry:(n=e==null?void 0:e.disableTelemetry)!=null?n:!1}),bl(_e.FRAME_CONTAINER_ID,!0),bl(Ie.FRAME_CONTAINER_ID)}catch(s){me.log.error("Unable to create iframe container",s)}return Cr=(r=e==null?void 0:e.sdkBaseUrl)!=null?r:Cl,kl.init(t,e==null?void 0:e.apiBaseUrl),{createSession:sh,startChallenge:uh}};window.BasisTheory3ds=Dl});var yh={};St(yh,{ApiClient:()=>et,CheckoutResource:()=>an,CheckoutUtils:()=>Kr,CurrencyUtils:()=>Nt,ExpressPaymentMethodsResource:()=>un,FunnelActionType:()=>Zt,GoogleAutocompleteCore:()=>ot,ISODataCore:()=>pn,OrderBumpUtils:()=>Vr,OrderUtils:()=>jr,OrdersResource:()=>ln,PaymentService:()=>Tr,PaymentsResource:()=>nt,PluginConfigUtils:()=>Nr,PostPurchasesUtils:()=>zr,ProductsUtils:()=>qr,PromotionsUtils:()=>Hr,ShippingRatesResource:()=>cn,StoreConfigResource:()=>rt,TagadaApiError:()=>Te,TagadaAuthError:()=>Xe,TagadaCircuitBreakerError:()=>Qe,TagadaClient:()=>Ot,TagadaError:()=>oe,TagadaErrorCode:()=>ne,TagadaExternalTracker:()=>Wt,TagadaNetworkError:()=>Ze,TagadaTracker:()=>Pi,TagadaValidationError:()=>sn,ThreedsResource:()=>st,broadcastConfigUpdate:()=>$u,clearFunnelSessionCookie:()=>Tt,createRawPluginConfig:()=>ao,createTagadaClient:()=>Ri,debounceConfigUpdate:()=>qu,formatMoney:()=>Mu,funnelQueryKeys:()=>Uu,getAssignedPaymentFlowId:()=>xt,getAssignedStepConfig:()=>ie,getBasisTheoryApiKey:()=>mh,getBasisTheoryTenantId:()=>hh,getFunnelSessionCookie:()=>Qt,getFunnelVariantId:()=>Yl,getInternalPath:()=>Lt,getPathInfo:()=>Ao,getPluginConfig:()=>Au,hasFunnelSessionCookie:()=>Wl,injectStepConfigScripts:()=>_i,isPathRemapped:()=>Io,loadLocalConfig:()=>oo,loadPluginConfig:()=>Lr,matchRoute:()=>xo,onConfigUpdate:()=>Fu,sendConfigUpdate:()=>So,setFunnelSessionCookie:()=>xr});Yt();Je();var ne={NETWORK_ERROR:"network_error",API_ERROR:"api_error",AUTH_REQUIRED:"auth_required",TOKEN_EXPIRED:"token_expired",NOT_FOUND:"not_found",VALIDATION_ERROR:"validation_error",CIRCUIT_BREAKER:"circuit_breaker",PAYMENT_FAILED:"payment_failed",CARD_DECLINED:"card_declined",SESSION_EXPIRED:"session_expired",RATE_LIMITED:"rate_limited",TIMEOUT:"timeout",UNKNOWN:"unknown"},oe=class extends Error{constructor(e,n){var r;super(e),this.name="TagadaError",this.code=n.code,this.statusCode=n.statusCode,this.retryable=(r=n.retryable)!=null?r:!1,this.details=n.details,Object.setPrototypeOf(this,new.target.prototype)}},Te=class extends oe{constructor(e,n,r){var s,i;super(e,{code:(s=r==null?void 0:r.code)!=null?s:ne.API_ERROR,statusCode:n,retryable:(i=r==null?void 0:r.retryable)!=null?i:n>=500,details:r==null?void 0:r.details}),this.name="TagadaApiError"}},Ze=class extends oe{constructor(e="Network request failed"){super(e,{code:ne.NETWORK_ERROR,retryable:!0}),this.name="TagadaNetworkError"}},Xe=class extends oe{constructor(e="Authentication required",n=401){super(e,{code:ne.AUTH_REQUIRED,statusCode:n,retryable:!1}),this.name="TagadaAuthError"}},sn=class extends oe{constructor(e,n){super(e,{code:ne.VALIDATION_ERROR,statusCode:400,retryable:!1,details:n}),this.name="TagadaValidationError"}},Qe=class extends oe{constructor(e){super(e,{code:ne.CIRCUIT_BREAKER,retryable:!1}),this.name="TagadaCircuitBreakerError"}};var et=class{constructor(e){this.currentToken=null;this.tokenProvider=null;this.requestHistory=new Map;this.WINDOW_MS=5e3;this.MAX_REQUESTS=30;this.baseURL=e.baseURL,this.timeout=e.timeout||6e4,this.defaultHeaders=b({"Content-Type":"application/json"},e.headers),typeof setInterval!="undefined"&&setInterval(()=>this.cleanupHistory(),1e4)}setTokenProvider(e){this.tokenProvider=e}async get(e,n){return this.request("GET",e,void 0,n)}async post(e,n,r){return this.request("POST",e,n,r)}async put(e,n,r){return this.request("PUT",e,n,r)}async patch(e,n,r){return this.request("PATCH",e,n,r)}async delete(e,n){return this.request("DELETE",e,void 0,n)}setHeader(e,n){this.defaultHeaders[e]=n}removeHeader(e){delete this.defaultHeaders[e]}updateToken(e){this.currentToken=e,e?this.setHeader("x-cms-token",e):(this.removeHeader("x-cms-token"),console.log("[SDK] Token removed from ApiClient"))}getCurrentToken(){return this.currentToken}updateConfig(e){e.baseURL&&(this.baseURL=e.baseURL),e.timeout&&(this.timeout=e.timeout),e.headers&&Object.assign(this.defaultHeaders,e.headers),console.log("[SDK] ApiClient configuration updated")}async request(e,n,r,s){let i="".concat(e,":").concat(n);try{this.checkRequestLimit(i)}catch(u){throw console.error("[SDK] \u{1F6D1} Request blocked by Circuit Breaker:",u),u}if(!(s!=null&&s.skipAuth)&&!this.currentToken&&this.tokenProvider)try{console.log("[SDK] Waiting for token...");let u=await this.tokenProvider();u&&this.updateToken(u)}catch(u){console.error("[SDK] Failed to get token from provider:",u)}let o=b({},this.defaultHeaders);s!=null&&s.headers&&Object.assign(o,s.headers),!(s!=null&&s.skipAuth)&&this.currentToken&&(o["x-cms-token"]=this.currentToken);let a="".concat(this.baseURL).concat(n);if(s!=null&&s.params){let u=new URLSearchParams(s.params);a+="?".concat(u.toString())}console.log("[SDK] Making ".concat(e," request to: ").concat(a));let l=new AbortController,c=setTimeout(()=>l.abort(),this.timeout),d=s!=null&&s.signal?gu([s.signal,l.signal]):l.signal;try{let u={method:e,headers:o,signal:d};r!==void 0&&(u.body=JSON.stringify(r));let p=await fetch(a,u);if(!p.ok){let f=await this.safeParseJson(p);throw this.toTagadaError(p.status,f,p.statusText)}return await p.json()}catch(u){throw u instanceof oe?u:u instanceof DOMException&&u.name==="AbortError"?new Te("Request timed out",0,{code:ne.TIMEOUT,retryable:!0}):u instanceof TypeError?new Ze(u.message):u instanceof Error?u:new Error(String(u))}finally{clearTimeout(c)}}toTagadaError(e,n,r){var i,o,a;let s=(o=(i=n==null?void 0:n.message)!=null?i:n==null?void 0:n.error)!=null?o:r;return e===401||e===403?new Xe(s,e):e===429?new Te(s,429,{code:ne.RATE_LIMITED,retryable:!0}):e===404?new Te(s,404,{code:ne.NOT_FOUND,retryable:!1}):new Te(s,e,{code:(a=n==null?void 0:n.code)!=null?a:ne.API_ERROR,details:n,retryable:e>=500})}async safeParseJson(e){try{return await e.json()}catch(n){return}}checkRequestLimit(e){let n=Date.now(),r=this.requestHistory.get(e);if(!r){this.requestHistory.set(e,{count:1,firstRequestTime:n});return}if(n-r.firstRequestTime>this.WINDOW_MS){this.requestHistory.set(e,{count:1,firstRequestTime:n});return}if(r.count++,r.count>this.MAX_REQUESTS)throw new Qe("Circuit Breaker: Too many requests to ".concat(e," (").concat(r.count," in ").concat(this.WINDOW_MS,"ms)"))}cleanupHistory(){let e=Date.now();for(let[n,r]of this.requestHistory.entries())e-r.firstRequestTime>this.WINDOW_MS&&this.requestHistory.delete(n)}};function gu(t){let e=new AbortController;for(let n of t){if(n.aborted)return e.abort(n.reason),e.signal;n.addEventListener("abort",()=>e.abort(n.reason),{once:!0,signal:e.signal})}return e.signal}function mu(){return{width:window.screen.width,height:window.screen.height}}function hu(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(t){return"UTC"}}function to(){try{return navigator.language||"en-US"}catch(t){return"en-US"}}var Be=typeof navigator!="undefined"?navigator.userAgent:"";function ae(t,...e){for(let n of e){let r=t.match(n);if(r)return r}return null}function yu(t){let e=[[/EdgA?\/([\d.]+)/i,"Edge"],[/OPR\/([\d.]+)/i,"Opera"],[/Brave\/([\d.]+)/i,"Brave"],[/Vivaldi\/([\d.]+)/i,"Vivaldi"],[/SamsungBrowser\/([\d.]+)/i,"Samsung Internet"],[/UCBrowser\/([\d.]+)/i,"UC Browser"],[/Firefox\/([\d.]+)/i,"Firefox"],[/CriOS\/([\d.]+)/i,"Chrome"],[/FxiOS\/([\d.]+)/i,"Firefox"],[/Chrome\/([\d.]+)/i,"Chrome"],[/Version\/([\d.]+).*Safari/i,"Safari"],[/Safari\/([\d.]+)/i,"Safari"]];for(let[n,r]of e){let s=t.match(n);if(s){let i=s[1]||"";return{name:r,version:i,major:i.split(".")[0]||""}}}return{name:"",version:"",major:""}}function bu(t){let e=ae(t,/Windows NT ([\d.]+)/i)||ae(t,/Mac OS X ([\d_.]+)/i)||ae(t,/Android ([\d.]+)/i)||ae(t,/iPhone OS ([\d_]+)/i)||ae(t,/iPad.*OS ([\d_]+)/i)||ae(t,/CrOS[\w ]*\/([\d.]+)/i)||ae(t,/Linux/i);if(!e)return{name:"",version:""};let n=e[0],r=(e[1]||"").replace(/_/g,".");return/Windows/i.test(n)?{name:"Windows",version:{"10.0":"10","6.3":"8.1","6.2":"8","6.1":"7","6.0":"Vista","5.1":"XP"}[r]||r}:/Mac OS X/i.test(n)?{name:"macOS",version:r}:/Android/i.test(n)?{name:"Android",version:r}:/iPhone|iPad/i.test(n)?{name:"iOS",version:r}:/CrOS/i.test(n)?{name:"Chrome OS",version:r}:/Linux/i.test(n)?{name:"Linux",version:""}:{name:"",version:""}}function wu(t){var e;if(/iPad/i.test(t))return{type:"tablet",vendor:"Apple",model:"iPad"};if(/iPhone/i.test(t))return{type:"mobile",vendor:"Apple",model:"iPhone"};if(/iPod/i.test(t))return{type:"mobile",vendor:"Apple",model:"iPod"};if(/Android/i.test(t)){let n=t.match(/Android[\s\d.]+;\s*([^)]+?)(?:\s+Build)/i);return{type:/Mobile/i.test(t)?"mobile":"tablet",model:(e=n==null?void 0:n[1])==null?void 0:e.trim()}}}function Su(t){let e=ae(t,/AppleWebKit\/([\d.]+)/i)||ae(t,/Gecko\/([\d.]+)/i)||ae(t,/Trident\/([\d.]+)/i)||ae(t,/Presto\/([\d.]+)/i);if(!e)return{name:"",version:""};let n=e[0],r=e[1]||"";return/AppleWebKit/i.test(n)?{name:"WebKit",version:r}:/Gecko/i.test(n)?{name:"Gecko",version:r}:/Trident/i.test(n)?{name:"Trident",version:r}:/Presto/i.test(n)?{name:"Presto",version:r}:{name:"",version:""}}function Eu(t){return/x86_64|x64|amd64|Win64/i.test(t)?{architecture:"amd64"}:/ia32|x86/i.test(t)?{architecture:"ia32"}:/aarch64|arm64/i.test(t)?{architecture:"arm64"}:/arm/i.test(t)?{architecture:"arm"}:{architecture:""}}function vu(){return navigator.webdriver?!0:/bot|crawl|spider|slurp|Googlebot|bingbot|yandex|baidu|duckduck|facebookexternalhit|Twitterbot|linkedinbot|embedly|quora|pinterest|redditbot|Slackbot|Discordbot|WhatsApp|TelegramBot|Applebot/i.test(Be)}function Cu(t){return/Chrome|Chromium|Edge|Brave|Opera|Vivaldi|Arc/i.test(t)}function Tu(){return window.matchMedia("(display-mode: standalone)").matches||navigator.standalone===!0}function Pu(t){return/mac/i.test(t)?navigator.maxTouchPoints>0:!1}function no(){if(typeof window=="undefined")return{userAgent:{name:"",browser:{major:"",name:"",version:""},os:{name:"",version:""},device:void 0,engine:{name:"",version:""},cpu:{architecture:""}},screenResolution:{width:0,height:0},timeZone:"UTC",flags:{isBot:!1,isChromeFamily:!1,isStandalonePWA:!1,isAppleSilicon:!1}};let t=yu(Be),e=bu(Be),n=wu(Be),r=Su(Be),s=Eu(Be),i;try{i={isBot:vu(),isChromeFamily:Cu(t.name),isStandalonePWA:Tu(),isAppleSilicon:Pu(e.name)}}catch(o){i={isBot:!1,isChromeFamily:!1,isStandalonePWA:!1,isAppleSilicon:!1}}return{userAgent:{name:Be,browser:t,os:e,device:n,engine:r,cpu:s},screenResolution:mu(),timeZone:hu(),flags:i}}function ro(){if(typeof window=="undefined")return{};let t=new URLSearchParams(window.location.search);return{locale:t.get("locale")||void 0,currency:t.get("currency")||void 0,utmSource:t.get("utm_source")||void 0,utmMedium:t.get("utm_medium")||void 0,utmCampaign:t.get("utm_campaign")||void 0,gclid:t.get("gclid")||void 0}}var on=class{constructor(){this.listeners=new Map}on(e,n){return this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(n),()=>this.off(e,n)}off(e,n){this.listeners.has(e)&&this.listeners.get(e).delete(n)}async emit(e,n){if(this.listeners.has(e)){let r=Array.from(this.listeners.get(e));await Promise.all(r.map(s=>{try{return Promise.resolve(s(n))}catch(i){return console.error('[EventBus] Error in listener for event "'.concat(e,'":'),i),Promise.resolve()}}))}}clear(){this.listeners.clear()}};Ir();function kt(t){try{let e=t.split(".");if(e.length!==3)return console.error("Invalid JWT token format"),null;let n=e[1],r=n+"=".repeat((4-n.length%4)%4),s=atob(r),i=JSON.parse(s);return i.exp&&Date.now()>=i.exp*1e3?(console.warn("JWT token is expired"),null):{sessionId:i.sessionId,storeId:i.storeId,accountId:i.accountId,customerId:i.customerId,role:i.role,isValid:!0,isLoading:!1}}catch(e){return console.error("Failed to decode JWT token:",e),null}}function so(t){try{let e=t.split(".");if(e.length!==3)return!0;let n=e[1],r=n+"=".repeat((4-n.length%4)%4),s=atob(r),i=JSON.parse(s);return i.exp?Date.now()>=i.exp*1e3:!1}catch(e){return console.error("Failed to check token expiration:",e),!0}}Yt();var tt={},Ru=["","VITE_","REACT_APP_","NEXT_PUBLIC_"];function Pe(t,e=Ru){var n,r,s;for(let i of e){let o=i?"".concat(i).concat(t):t;if(typeof process!="undefined"&&((n=process==null?void 0:process.env)!=null&&n[o]))return console.log("process.env[".concat(o,"]"),process.env[o]),process.env[o];if(typeof tt!="undefined"&&((r=tt==null?void 0:tt.env)!=null&&r[o]))return console.log("import.meta.env[".concat(o,"]"),tt.env[o]),tt.env[o];if(typeof window!="undefined"&&((s=window==null?void 0:window.__TAGADA_ENV__)!=null&&s[o]))return console.log("window.__TAGADA_ENV__[".concat(o,"]"),window.__TAGADA_ENV__[o]),window.__TAGADA_ENV__[o]}}var _u=async(t="default")=>{try{if((Pe("TAGADA_ENV")||Pe("TAGADA_ENVIRONMENT"))==="production"||!vt(!0))return null;let n=await fetch("/.local.json");if(!n.ok)return null;let r=await n.json(),s={},i=!1;try{let a=await fetch("/config/".concat(t,".tgd.json"));a.ok||(a=await fetch("/config/".concat(t,".json"))),a.ok&&(s=await a.json(),i=!0)}catch(a){}if(!i&&t!=="default"){console.warn("\u26A0\uFE0F Config variant '".concat(t,"' not found, falling back to 'default'"));try{let a=await fetch("/config/default.tgd.json");a.ok||(a=await fetch("/config/default.json")),a.ok&&(s=await a.json(),i=!0,console.log("\u2705 Fallback to 'default' config successful"))}catch(a){}}i||console.warn(t==="default"?"\u26A0\uFE0F No 'default' config found. Create /config/default.tgd.json":"\u26A0\uFE0F Neither '".concat(t,"' nor 'default' config found. Create /config/default.tgd.json"));let o={storeId:r.storeId,accountId:r.accountId,basePath:r.basePath,config:s};return console.log("\u{1F6E0}\uFE0F Using local development plugin config:",o),o}catch(e){return null}},Iu=async()=>{try{if((Pe("TAGADA_ENV")||Pe("TAGADA_ENVIRONMENT"))==="production"||!vt(!0))return null;try{console.log("\u{1F6E0}\uFE0F [V2] Attempting to load /config/funnel.local.json...");let r=await fetch("/config/funnel.local.json");if(r.ok){let s=await r.json();console.log("\u{1F6E0}\uFE0F [V2] \u2705 Loaded local funnel config (NEW format):",s);let{loadLocalFunnelConfig:i}=await Promise.resolve().then(()=>(Je(),eo));if(await i(),s.staticResources){let o={};for(let[a,l]of Object.entries(s.staticResources))o[a]={id:l};return o}return null}}catch(r){console.log("\u{1F6E0}\uFE0F [V2] funnel.local.json not found, trying legacy format...")}console.log("\u{1F6E0}\uFE0F [V2] Attempting to load /config/resources.static.json (legacy)...");let e=await fetch("/config/resources.static.json");if(!e.ok)return console.log("\u{1F6E0}\uFE0F [V2] No local static resources found"),null;let n=await e.json();return console.log("\u{1F6E0}\uFE0F [V2] \u2705 Loaded legacy static resources:",n),n}catch(t){return console.error("\u{1F6E0}\uFE0F [V2] \u274C Error loading static resources:",t),null}},Me=t=>{if(typeof document=="undefined")return;let e=document.querySelector('meta[name="'.concat(t,'"]'));return(e==null?void 0:e.getAttribute("content"))||void 0},io=()=>{if(typeof window!="undefined"&&window.__TAGADA_PLUGIN_CONFIG__)return window.__TAGADA_PLUGIN_CONFIG__;try{let t=Me("x-plugin-config");if(t)return JSON.parse(decodeURIComponent(t))}catch(t){}return{}};function Au(){if(typeof document=="undefined")return{basePath:"/",config:{}};let t=Me("x-plugin-store-id"),e=Me("x-plugin-account-id"),n=Me("x-plugin-base-path")||"/",r=io();return{storeId:t,accountId:e,basePath:n,config:r}}var xu=async()=>{try{if(typeof document=="undefined")return null;let t=Me("x-plugin-store-id"),e=Me("x-plugin-account-id");if(!t)return null;let n=Me("x-plugin-base-path")||"/",r=io();e||console.warn("\u26A0\uFE0F Plugin config: Account ID not found in meta tags");let s={storeId:t,accountId:e,basePath:n,config:r};return console.log("\u{1F680} [HIGHEST PRIORITY] Plugin config loaded from meta tags (runtime injected config):",{storeId:t,accountId:e,basePath:n,configKeys:Object.keys(r),configSize:JSON.stringify(r).length}),s}catch(t){return console.warn("\u26A0\uFE0F Error loading production config from meta tags:",t),null}},Lr=async(t="default",e)=>{var o,a;console.log("\u{1F527} [V2] loadPluginConfig called with variant:",t);let n=await Iu(),r=await xu();if(r){let l=O(b({},r),{staticResources:n!=null?n:void 0});return console.log("\u2705 [V2] Using INJECTED config from meta tags (HIGHEST PRIORITY)"),l}if(e){let l={storeId:e.storeId,accountId:e.accountId,basePath:(o=e.basePath)!=null?o:"/",config:(a=e.config)!=null?a:{},staticResources:n!=null?n:void 0};return console.log("\u2705 [V2] Using raw config parameter (PRIORITY 2)"),l}let s=await ao();if(s){let l=O(b({},s),{staticResources:n!=null?n:void 0});return console.log("\u2705 [V2] Using environment variables config (PRIORITY 3 - build time)"),l}let i=await _u(t);if(i){let l=O(b({},i),{staticResources:n!=null?n:void 0});return console.log("\u2705 [V2] Using local dev config files (PRIORITY 4)"),l}return console.warn("\u26A0\uFE0F [V2] No plugin config found - using defaults"),{basePath:"/",config:{},staticResources:n!=null?n:void 0}};async function oo(t="default",e){try{if(!vt())return null;if(e)return e;let n=["/config/".concat(t,".config.json"),"/config/".concat(t,".tgd.json"),"/config/".concat(t,".json")];for(let r of n)try{let s=await fetch(r);if(s.ok)return await s.json()}catch(s){continue}return console.warn("\u26A0\uFE0F [loadLocalConfig] No config found for '".concat(t,"'")),null}catch(n){return console.error("[loadLocalConfig] Error loading config:",n),null}}async function ao(){try{if(!vt())return;let t=Pe("TAGADA_STORE_ID"),e=Pe("TAGADA_ACCOUNT_ID"),n=Pe("TAGADA_BASE_PATH"),r=Pe("TAGADA_CONFIG_NAME");if(!t||!e)return;let s=await oo(r);if(!s)return;let i={storeId:t,accountId:e,basePath:n||"/",config:s};return console.log("\u{1F6E0}\uFE0F [createRawPluginConfig] Using environment variables (build-time config):",{hasStoreId:!!i.storeId,hasAccountId:!!i.accountId,basePath:i.basePath,hasConfig:!!i.config}),i}catch(t){console.error("[createRawPluginConfig] Error creating config:",t);return}}var Nr=class{static getPluginConfig(e,n){return{storeId:(e==null?void 0:e.storeId)||(n==null?void 0:n.storeId),accountId:(e==null?void 0:e.accountId)||(n==null?void 0:n.accountId),basePath:(e==null?void 0:e.basePath)||(n==null?void 0:n.basePath)||"/",config:(e==null?void 0:e.config)||{}}}static validateConfig(e){return!!(e.storeId&&e.accountId)}};tn();Ve();Ve();var Br=new Map,Mr=new Set;function ku(){return typeof window=="undefined"?null:new URLSearchParams(window.location.search).get("authCode")}async function co(t,e,n,r=!1){if(Mr.has(t))throw r&&console.log("[AuthHandoff] Code already resolved, skipping duplicate request"),new Error("Auth code already resolved");let s=Br.get(t);if(s)return r&&console.log("[AuthHandoff] Resolution already in progress, waiting for existing request"),s;r&&console.log("[AuthHandoff] Resolving authCode:",t.substring(0,15)+"...");let i=(async()=>{try{let o=await fetch("".concat(n,"/api/v1/cms/auth/resolve-handoff"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t,storeId:e})});if(!o.ok){let l=await o.json().catch(()=>({message:"Unknown error"}));throw new Error(l.message||"Failed to resolve auth handoff: ".concat(o.status))}let a=await o.json();return r&&console.log("[AuthHandoff] \u2705 Resolved successfully:",{customerId:a.customer.id,role:a.customer.role,hasContext:Object.keys(a.context).length>0}),r&&console.log("[AuthHandoff] Storing new token (overriding existing)"),re(a.token),Ou(r),Mr.add(t),a}catch(o){throw console.error("[AuthHandoff] \u274C Failed to resolve:",o),o}finally{Br.delete(t)}})();return Br.set(t,i),i}function Ou(t=!1){if(typeof window=="undefined")return;let e=new URL(window.location.href);e.searchParams.has("authCode")&&(e.searchParams.delete("authCode"),window.history.replaceState({},"",e.pathname+e.search+e.hash),t&&console.log("[AuthHandoff] Cleaned authCode from URL"))}function lo(){let t=ku();return!(!t||!t.startsWith("ah_")||Mr.has(t))}var Ot=class{constructor(e={}){this.bus=new on;this.eventDispatcher=new He;this.tokenPromise=null;this.tokenResolver=null;this.isInitializingSession=!1;this.lastSessionInitError=null;this.sessionInitRetryCount=0;this.MAX_SESSION_INIT_RETRIES=3;var a,l,c,d;this.config=e,this.instanceId=Math.random().toString(36).substr(2,9),this.boundHandleStorageChange=this.handleStorageChange.bind(this),this.boundHandlePageshow=u=>{if(u.persisted)if(this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Page restored from BFcache (back button), re-initializing funnel...")),this.funnel&&this.state.session&&this.state.store){this.funnel.resetInitialization();let p=this.getAccountId(),f=new URLSearchParams(typeof window!="undefined"?window.location.search:"").get("funnelId")||void 0;this.funnel.autoInitialize({customerId:this.state.session.customerId,sessionId:this.state.session.sessionId},{id:this.state.store.id,accountId:p},f).catch(y=>{console.error("[TagadaClient] Funnel re-initialization failed:",y)})}else this.sessionInitRetryCount=0,this.initialize()},console.log("[TagadaClient ".concat(this.instanceId,"] Initializing...")),console.log("[TagadaClient ".concat(this.instanceId,"] Config:"),{debugMode:e.debugMode,hasRawPluginConfig:!!e.rawPluginConfig,rawPluginConfig:e.rawPluginConfig,features:e.features}),$i(this.config.debugMode)&&this.config.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Preview mode active - state cleared"));let r=this.resolveEnvironment(),s=Bi(r);e.customApiConfig&&(s=O(b(b({},s),e.customApiConfig),{apiConfig:b(b({},s.apiConfig),e.customApiConfig.apiConfig)}),this.config.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Applied custom API config:"),s.apiConfig.baseUrl)),this.state={auth:{isAuthenticated:!1,isLoading:!1,customer:null,session:null},session:null,customer:null,locale:{locale:"en-US",language:"en",region:"US",messages:{}},currency:{code:"USD",symbol:"$",name:"US Dollar"},store:null,environment:s,isLoading:!0,isInitialized:!1,isSessionInitialized:!1,pluginConfig:{basePath:"/",config:{}},pluginConfigLoading:!0,debugMode:(a=e.debugMode)!=null?a:r!=="production",token:null},console.log("[TagadaClient ".concat(this.instanceId,"] Initial state:"),{pluginConfigLoading:this.state.pluginConfigLoading,hasRawPluginConfig:!!e.rawPluginConfig}),this.apiClient=new et({baseURL:s.apiConfig.baseUrl});let i=(l=e.features)==null?void 0:l.funnel;if(i!==!1){let u=typeof i=="object"?i:{};this.funnel=new At({apiClient:this.apiClient,debugMode:this.state.debugMode,pluginConfig:this.state.pluginConfig,environment:this.state.environment,autoRedirect:u.autoRedirect,funnelId:(c=e.rawPluginConfig)==null?void 0:c.funnelId,stepId:(d=e.rawPluginConfig)==null?void 0:d.stepId})}this.apiClient.setTokenProvider(this.waitForToken.bind(this)),typeof window!="undefined"&&(window.addEventListener("storage",this.boundHandleStorageChange),window.addEventListener("pageshow",this.boundHandlePageshow)),this.setupConfigHotReload(),this.initialize()}destroy(){typeof window!="undefined"&&(window.removeEventListener("storage",this.boundHandleStorageChange),window.removeEventListener("pageshow",this.boundHandlePageshow)),this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Destroyed")),this.eventDispatcher.clear(),this.bus.clear()}handleStorageChange(){if(Ct()===this.state.token){this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Token unchanged (ignoring event)"));return}if(this.isInitializingSession){this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Session initialization in progress, skipping storage change"));return}if(this.sessionInitRetryCount>=this.MAX_SESSION_INIT_RETRIES&&this.lastSessionInitError){this.state.debugMode&&console.error("[TagadaClient ".concat(this.instanceId,"] Max session init retries reached, giving up"),this.lastSessionInitError);return}this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Storage changed, re-initializing token...")),this.initializeToken()}subscribe(e){return this.eventDispatcher.subscribe(e)}getState(){return this.state}updateState(e){this.state=b(b({},this.state),e),this.eventDispatcher.notify(this.state)}resolveEnvironment(){return this.config.environment?this.config.environment:Et()}async initialize(){try{await this.initializePluginConfig(),this.state.pluginConfig.storeId?await this.initializeToken():(console.warn("[TagadaClient] No store ID found in plugin config. Skipping token initialization."),this.updateState({isLoading:!1,isInitialized:!0}))}catch(e){console.error("[TagadaClient] Initialization failed:",e),this.updateState({isLoading:!1,isInitialized:!0})}}async initializePluginConfig(){if(console.log("[TagadaClient ".concat(this.instanceId,"] initializePluginConfig called"),{pluginConfigLoading:this.state.pluginConfigLoading,hasRawPluginConfig:!!this.config.rawPluginConfig}),!this.state.pluginConfigLoading){console.log("[TagadaClient ".concat(this.instanceId,"] Plugin config already loading or loaded, skipping..."));return}try{let e=this.config.localConfig||"default";console.log("[TagadaClient ".concat(this.instanceId,"] Loading plugin config with variant: ").concat(e));let n=await Lr(e,this.config.rawPluginConfig);console.log("[TagadaClient ".concat(this.instanceId,"] Plugin config loaded:"),n),this.updateState({pluginConfig:n,pluginConfigLoading:!1}),this.funnel&&this.funnel.setConfig({pluginConfig:n,environment:this.state.environment})}catch(e){console.error("[TagadaClient] Failed to load plugin config:",e),this.updateState({pluginConfig:{basePath:"/",config:{}},pluginConfigLoading:!1})}}async initializeToken(){var e;if(lo()){let n=this.state.pluginConfig.storeId;if(!n)return console.error("[TagadaClient] Cannot resolve authCode: storeId not found in config"),this.fallbackToNormalFlow();console.log("[TagadaClient ".concat(this.instanceId,"] \u{1F510} Cross-domain auth detected, resolving..."));try{let r=new URLSearchParams(window.location.search).get("authCode");if(!r)return this.fallbackToNormalFlow();let s=await co(r,n,this.state.environment.apiConfig.baseUrl,this.state.debugMode);console.log("[TagadaClient ".concat(this.instanceId,"] \u2705 Auth handoff resolved:"),{customerId:s.customer.id,role:s.customer.role,hasContext:Object.keys(s.context).length>0}),this.setToken(s.token);let i=kt(s.token);i?(this.updateState({session:i}),await this.initializeSession(i),(e=s.context)!=null&&e.funnelSessionId&&this.funnel&&this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Restoring funnel session from handoff context:"),s.context.funnelSessionId)):(console.error("[TagadaClient] Failed to decode token from handoff"),this.updateState({isInitialized:!0,isLoading:!1}));return}catch(r){console.error("[TagadaClient ".concat(this.instanceId,"] \u274C Auth handoff failed, falling back to normal flow:"),r)}}await this.fallbackToNormalFlow()}async fallbackToNormalFlow(){let n=new URLSearchParams(typeof window!="undefined"?window.location.search:"").get("token");n&&(this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] \u{1F512} URL token detected, setting immediately to prevent race condition")),this.apiClient.updateToken(n),re(n));let r=Ct();console.log("[TagadaClient ".concat(this.instanceId,"] Initializing token (normal flow)..."),{hasExistingToken:!!r,hasQueryToken:!!n,storeId:this.state.pluginConfig.storeId});let s=null,i=!1;if(n?(s=n,i=!0):r&&!so(r)&&(s=r),s){this.setToken(s),i&&(this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Persisting query token to storage...")),re(s));let o=kt(s);o?(this.updateState({session:o}),await this.initializeSession(o)):(console.error("[TagadaClient] Failed to decode token"),this.updateState({isInitialized:!0,isLoading:!1}))}else{let o=this.state.pluginConfig.storeId;console.log("[TagadaClient ".concat(this.instanceId,"] No existing token, creating anonymous token..."),{hasStoreId:!!o,storeId:o}),o?await this.createAnonymousToken(o):(console.warn("[TagadaClient ".concat(this.instanceId,"] No storeId in plugin config, skipping anonymous token creation")),this.updateState({isInitialized:!0,isLoading:!1}))}}setToken(e){this.apiClient.updateToken(e),this.updateState({token:e}),this.tokenResolver&&(this.tokenResolver(e),this.tokenPromise=null,this.tokenResolver=null)}waitForToken(){return this.apiClient.getCurrentToken()?Promise.resolve(this.apiClient.getCurrentToken()):(this.tokenPromise||(this.tokenPromise=new Promise(e=>{this.tokenResolver=e})),this.tokenPromise)}async createAnonymousToken(e){if(typeof window!="undefined"){let r=new URLSearchParams(window.location.search).get("token");if(r){this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] \u{1F512} URL has token, skipping anonymous token creation")),this.setToken(r),re(r);let s=kt(r);s&&(this.updateState({session:s}),await this.initializeSession(s));return}}if(this.isInitializingSession){this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Session initialization in progress, skipping anonymous token creation"));return}try{let n=_t();this.state.debugMode&&console.log("[TagadaClient] Creating anonymous token for store:",e,{draft:n});let r=await this.apiClient.post("/api/v1/cms/session/anonymous",{storeId:e,role:"anonymous",draft:n},{skipAuth:!0});this.setToken(r.token),re(r.token);let s=kt(r.token);s&&(this.updateState({session:s}),await this.initializeSession(s)),this.updateState({isSessionInitialized:!0})}catch(n){console.error("[TagadaClient] Failed to create anonymous token:",n),this.updateState({isInitialized:!0,isLoading:!1})}}async initializeSession(e){var n,r,s,i,o,a,l,c,d,u,p;if(this.isInitializingSession){this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Session initialization already in progress, skipping"));return}this.isInitializingSession=!0;try{this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Initializing session..."),{sessionId:e.sessionId});let m=await no(),f=ro(),y=to(),g=_t(),w=new URLSearchParams(window.location.search).get("draft");w!==null&&kr(w==="true");let v={storeId:e.storeId,accountId:e.accountId,customerId:e.customerId,role:e.role,browserLocale:y,queryLocale:f.locale,queryCurrency:f.currency,utmSource:f.utmSource,utmMedium:f.utmMedium,utmCampaign:f.utmCampaign,gclid:f.gclid,browser:m.userAgent.browser.name,browserVersion:m.userAgent.browser.version,os:m.userAgent.os.name,osVersion:m.userAgent.os.version,deviceType:(n=m.userAgent.device)==null?void 0:n.type,deviceModel:(r=m.userAgent.device)==null?void 0:r.model,deviceVendor:(s=m.userAgent.device)==null?void 0:s.vendor,userAgent:m.userAgent.name,engineName:m.userAgent.engine.name,engineVersion:m.userAgent.engine.version,cpuArchitecture:m.userAgent.cpu.architecture,isBot:(o=(i=m.flags)==null?void 0:i.isBot)!=null?o:!1,isChromeFamily:(l=(a=m.flags)==null?void 0:a.isChromeFamily)!=null?l:!1,isStandalonePWA:(d=(c=m.flags)==null?void 0:c.isStandalonePWA)!=null?d:!1,isAppleSilicon:(p=(u=m.flags)==null?void 0:u.isAppleSilicon)!=null?p:!1,screenWidth:m.screenResolution.width,screenHeight:m.screenResolution.height,timeZone:m.timeZone,draft:g,fetchMessages:!1},S=await this.apiClient.post("/api/v1/cms/session/v2/init",v);this.lastSessionInitError=null,this.sessionInitRetryCount=0,this.updateSessionState(S,e),this.updateState({isInitialized:!0,isSessionInitialized:!0,isLoading:!1}),this.state.debugMode&&console.log("[TagadaClient] Session initialized successfully")}catch(m){this.lastSessionInitError=m,this.sessionInitRetryCount++,console.error("[TagadaClient] Error initializing session (attempt ".concat(this.sessionInitRetryCount,"/").concat(this.MAX_SESSION_INIT_RETRIES,"):"),m),this.updateState({isInitialized:!0,isLoading:!1})}finally{this.isInitializingSession=!1}}updateSessionState(e,n){var o,a,l,c,d,u,p,m,f,y;if(e.store){let g=e.store,w=O(b({},e.store),{accountId:g.accountId||((o=this.state.pluginConfig)==null?void 0:o.accountId)||n.accountId||"",presentmentCurrencies:g.presentmentCurrencies||[e.store.currency||"USD"],chargeCurrencies:g.chargeCurrencies||[e.store.currency||"USD"]});this.updateState({store:w})}if(e.locale){let g={locale:e.locale,language:e.locale.split("-")[0],region:(a=e.locale.split("-")[1])!=null?a:"US",messages:(l=e.messages)!=null?l:{}};this.updateState({locale:g})}if(e.store){let g={code:e.store.currency,symbol:this.getCurrencySymbol(e.store.currency),name:this.getCurrencyName(e.store.currency)};this.updateState({currency:g})}let r={isAuthenticated:(d=(c=e.customer)==null?void 0:c.isAuthenticated)!=null?d:!1,isLoading:!1,customer:(u=e.customer)!=null?u:null,session:n};this.updateState({customer:(p=e.customer)!=null?p:null,auth:r});let s=(m=this.config.features)==null?void 0:m.funnel,i=typeof s=="object"&&s.skipAutoInit;if(this.funnel&&!i&&n.customerId&&((f=e.store)!=null&&f.id)){let g=e.store.accountId||((y=this.state.pluginConfig)==null?void 0:y.accountId)||n.accountId||"";if(g){let v=new URLSearchParams(typeof window!="undefined"?window.location.search:"").get("funnelId")||void 0;this.state.debugMode&&console.log("[TagadaClient] Auto-initializing funnel...",{customerId:n.customerId,storeId:e.store.id,accountId:g,funnelId:v||"auto-detect"}),this.funnel.autoInitialize({customerId:n.customerId,sessionId:n.sessionId},{id:e.store.id,accountId:g},v).catch(S=>{console.error("[TagadaClient] Funnel auto-initialization failed:",S)})}else console.warn("[TagadaClient] Cannot auto-initialize funnel: accountId is missing")}}getCurrencySymbol(e){return{USD:"$",EUR:"\u20AC",GBP:"\xA3",JPY:"\xA5",CAD:"C$",AUD:"A$"}[e]||e}getCurrencyName(e){return{USD:"US Dollar",EUR:"Euro",GBP:"British Pound",JPY:"Japanese Yen",CAD:"Canadian Dollar",AUD:"Australian Dollar"}[e]||e}getAccountId(){var e,n,r;return((e=this.state.store)==null?void 0:e.accountId)||((n=this.state.pluginConfig)==null?void 0:n.accountId)||((r=this.state.session)==null?void 0:r.accountId)||""}updatePluginConfig(e){this.state.debugMode&&console.log("[TagadaClient] Hot-reloading config:",e);let n=b(b({},this.state.pluginConfig.config),e);this.updateState({pluginConfig:O(b({},this.state.pluginConfig),{config:n})}),this.bus.emit("CONFIG_UPDATED",n),this.state.debugMode&&console.log("[TagadaClient] Config updated successfully")}setupConfigHotReload(){if(typeof window=="undefined")return;let e=n=>{var r,s;if(((r=n.data)==null?void 0:r.type)==="TAGADAPAY_CONFIG_UPDATE"){let{config:i}=n.data;this.state.debugMode&&console.log("[TagadaClient] Received config update from parent:",i),this.updatePluginConfig(i)}else if(((s=n.data)==null?void 0:s.type)==="APPLY_STYLES_TO_ELEMENT"){let{elementId:i,styles:o}=n.data;this.state.debugMode&&console.log("[TagadaClient] Received style application request:",{elementId:i,styles:o}),this.applyStylesToElement(i,o)}};window.addEventListener("message",e),this.state.debugMode&&console.log("[TagadaClient] Config hot-reload and style manipulation listeners enabled")}applyStylesToElement(e,n){if(typeof document=="undefined")return;let r="tagada-editor-highlight",s=document.getElementById(r);s&&s.remove();let i=u=>{var S;let m=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]).has(u.tagName.toLowerCase()),f=u;if(m){let C=u.parentElement;if((C==null?void 0:C.getAttribute("data-tagada-highlight-wrapper"))==="true"&&C instanceof HTMLElement)f=C;else{let _=document.createElement("div");_.setAttribute("data-tagada-highlight-wrapper","true");let A=window.getComputedStyle(u),N=A.display;if(N==="inline"?_.style.display="inline-block":_.style.display=N,_.style.position="relative",N==="inline"||N.includes("inline")){let U=A.verticalAlign;U&&U!=="baseline"&&(_.style.verticalAlign=U)}["width","height","minWidth","minHeight","maxWidth","maxHeight","flex","flexGrow","flexShrink","flexBasis","gridColumn","gridRow","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","gridArea","alignSelf","justifySelf","boxSizing","gap","rowGap","columnGap","order","aspectRatio"].forEach(U=>{let q=U.replace(/([A-Z])/g,"-$1").toLowerCase(),$=A.getPropertyValue(q);$&&$.trim()!==""&&(U==="flex"&&$!=="none"&&$!=="0 1 auto"?_.style.flex=$:U==="boxSizing"?_.style.boxSizing=$:_.style.setProperty(q,$))}),u.style&&["width","height","min-width","min-height","max-width","max-height","flex","flex-grow","flex-shrink","flex-basis","grid-column","grid-row","grid-column-start","grid-column-end","grid-row-start","grid-row-end","grid-area","align-self","justify-self","box-sizing","gap","row-gap","column-gap","order","aspect-ratio"].forEach(q=>{let $=u.style.getPropertyValue(q);$&&_.style.setProperty(q,$)}),(S=u.parentNode)==null||S.insertBefore(_,u),_.appendChild(u),f=_}}let y=getComputedStyle(m?u:f);(f.style.position==="static"||!f.style.position)&&(f.style.position="relative");let g=document.createElement("div");g.id=r,g.style.position="absolute",g.style.inset="0",g.style.pointerEvents="none",g.style.zIndex="9999",g.style.boxSizing="border-box",g.style.background="none",g.style.border="none",g.style.outline="none",g.style.margin="0",g.style.padding="0";let w=y.borderRadius;w&&(g.style.borderRadius=w),f.appendChild(g);let v=n||{boxShadow:"0 0 0 2px rgb(239 68 68)"};if(Object.entries(v).forEach(([C,R])=>{let _=C.includes("-")?C.replace(/-([a-z])/g,(A,N)=>N.toUpperCase()):C;C.includes("-")?g.style.setProperty(C,R):g.style[_]=R}),u.scrollIntoView({behavior:"smooth",block:"center"}),this.state.debugMode){let C=Object.entries(v).map(([R,_])=>"".concat(R,": ").concat(_)).join("; ");console.log("[TagadaClient] Applied styles to highlight div of element #".concat(e,":"),C)}},o=5,a=1e3,l=0,c=u=>{let p=window.getComputedStyle(u);return p.display==="none"||p.visibility==="hidden"||p.opacity==="0"||u.hidden||u.offsetWidth===0||u.offsetHeight===0},d=()=>{let u=document.querySelectorAll('[editor-id~="'.concat(e,'"]'));if(u.length===0){if(l+=1,l>=o){this.state.debugMode&&console.warn('[TagadaClient] Element with editor-id containing "'.concat(e,'" not found after ').concat(o," attempts"));return}this.state.debugMode&&console.warn('[TagadaClient] Element with editor-id containing "'.concat(e,'" not found (attempt ').concat(l,"/").concat(o,"), retrying in ").concat(a/1e3,"s")),setTimeout(d,a);return}let p=null;if(u.length===1)p=u[0];else{for(let m=0;m<u.length;m++)if(!c(u[m])){p=u[m];break}p||(p=u[0])}p&&i(p)};d()}};var an=class{constructor(e){this.apiClient=e}async initCheckout(e){return this.apiClient.post("/api/v1/checkout/session/init",e)}async initCheckoutAsync(e){return this.apiClient.post("/api/v1/checkout/session/init-async",e)}async preloadCheckout(e,n){let r=e.funnelSessionId;!r&&n&&(r=n()||void 0);let s=typeof e.navigationEvent=="string"?{type:e.navigationEvent}:e.navigationEvent,i=O(b(b(b({},e),r&&{funnelSessionId:r}),s&&{navigationEvent:s}),{currentUrl:e.currentUrl||(typeof window!="undefined"?window.location.href:void 0)});return this.apiClient.post("/api/v1/checkout/session/preload",i)}async checkAsyncStatus(e){return this.apiClient.get("/api/public/v1/checkout/async-status/".concat(e))}async getCheckout(e,n){let r=new URLSearchParams;n&&r.set("currency",n),r.set("skipAsyncWait","false");let s="/api/v1/checkout-sessions/".concat(e,"/v2").concat(r.toString()?"?".concat(r.toString()):"");return this.apiClient.get(s)}async getCheckoutRaw(e,n){let r=new URLSearchParams;n&&r.set("currency",n),r.set("skipAsyncWait","true");let s="/api/v1/checkout-sessions/".concat(e,"/v2").concat(r.toString()?"?".concat(r.toString()):"");return this.apiClient.get(s)}async updateAddress(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/address"),{data:n})}async setCheckoutInfo(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/checkout-info"),{shippingAddress:n.shippingAddress,billingAddress:n.differentBillingAddress?n.billingAddress:n.shippingAddress,differentBillingAddress:n.differentBillingAddress||!1})}async applyPromotionCode(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/promotions/apply"),{code:n})}async removePromotion(e,n){return this.apiClient.delete("/api/v1/checkout-sessions/".concat(e,"/promotions/").concat(n))}async getAppliedPromotions(e){return this.apiClient.get("/api/v1/checkout-sessions/".concat(e,"/promotions"))}async replaceSessionLineItems(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items"),{lineItems:n})}async updateLineItems(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items"),{lineItems:n})}async addLineItems(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items/add"),{lineItems:n})}async removeLineItems(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items/remove"),{lineItems:n})}async setItemQuantity(e,n,r,s){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items/set-quantity"),{variantId:n,quantity:r,priceId:s})}async toggleOrderBump(e,n,r){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/toggle-order-bump"),{orderBumpOfferId:n,selected:r})}async updateCustomer(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/customer"),n)}async updateCustomerAndSessionInfo(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/customer-and-session-info"),n)}async previewCheckoutSession(e){return this.apiClient.post("/api/v1/checkout-sessions/preview",e)}async setPaymentMethod(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/payment-method"),{paymentMethodName:n})}};Je();var uo={production:{tenantId:"b1636929-db11-4b01-b2c2-6a97b3444061",publicKey:"key_prod_us_pub_PNMB2AiaECJ463K6QAPNU6"},test:{tenantId:"99821999-faf5-4427-a92c-9267cb930540",publicKey:"key_test_us_pub_VExdfbFQARn821iqP8zNaq"}};function Ur(t){let e=t?uo.production:uo.test;return{tenantId:e.tenantId,apiKey:e.publicKey}}function fo(){if(typeof window=="undefined")return!1;let t=window.location.hostname;return t.includes("app-dev.tagadapay.com")||t.includes("cdn-dev.tagadapay.com")?!1:t.includes("tagadapay.com")?!0:!(t.includes("tagadapay.dev")||t==="localhost"||t.startsWith("127.")||t.startsWith("192.168.")||t.startsWith("10.")||t.includes(".local")||t===""||t==="0.0.0.0"||t.includes("ngrok")||t.includes(".loclx.io")||t.includes("vercel.app")||t.includes("netlify.app"))}function Dt(){return Ur(fo()).apiKey}function po(){return Ur(fo()).tenantId}var cn=class{constructor(e){this.apiClient=e}async getShippingRates(e){return this.apiClient.get("/api/v1/checkout-sessions/".concat(e,"/shipping-rates"))}async setShippingRate(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/shipping-rate"),{shippingRateId:n})}async previewShippingRates(e,n){let r=new URLSearchParams({countryCode:n.countryCode});return n.stateCode&&r.set("stateCode",n.stateCode),this.apiClient.get("/api/v1/checkout-sessions/".concat(e,"/shipping-rates/preview?").concat(r.toString()))}};var nt=class{constructor(e){this.apiClient=e}async createPaymentInstrument(e){return this.apiClient.post("/api/v1/payment/create-payment-instrument",{paymentInstrumentData:e})}async createCardPaymentInstrument(e,n){var l,c;if(!e)throw new Error("Payment processor not initialized");console.log("Creating card payment instrument");let r=await e.tokens.create({type:"card",data:b({cvc:n.cvc,number:Number(n.cardNumber.replace(/\s+/g,""))},this.getCardMonthAndYear(n.expiryDate)),metadata:{nonSensitiveField:"nonSensitiveValue"}}),{expiration_month:s,expiration_year:i}=this.getCardMonthAndYear(n.expiryDate),o={type:r.type,card:{maskedCardNumber:(c=(l=r.enrichments)==null?void 0:l.cardDetails)!=null&&c.bin?"".concat(r.enrichments.cardDetails.bin,"****").concat(r.enrichments.cardDetails.last4):n.cardNumber.replace(/\d(?=\d{4})/g,"*"),expirationMonth:s,expirationYear:i},token:r.id},a=await this.apiClient.post("/api/v1/payment/create-payment-instrument",{paymentInstrumentData:o});return console.log("Payment instrument created:",a),a}async createApplePayPaymentInstrument(e,n){if(!e)throw new Error("Payment processor not initialized");if(!n.id)throw new Error("Apple Pay token is missing");let r={type:"apple_pay",token:n.id,dpanType:n.type,card:{bin:n.card.bin,last4:n.card.last4,expirationMonth:n.card.expiration_month,expirationYear:n.card.expiration_year,brand:n.card.brand}};return await this.apiClient.post("/api/v1/payment/create-payment-instrument",{paymentInstrumentData:r})}async createGooglePayPaymentInstrument(e,n){var i;if(!e)throw new Error("Payment processor not initialized");if(!n.id)throw new Error("Google Pay token is missing");let r={type:"google_pay",token:n.id,dpanType:n.type,card:{bin:n.card.bin,last4:n.card.last4,expirationMonth:n.card.expiration_month,expirationYear:n.card.expiration_year,brand:n.card.brand},authMethod:(i=n==null?void 0:n.details)==null?void 0:i.auth_method};return await this.apiClient.post("/api/v1/payment/create-payment-instrument",{paymentInstrumentData:r})}async createApmPaymentInstrument(e){console.log("Creating APM payment instrument:",e);let n={type:"apm",provider:e.provider,paymentMethod:e.paymentMethod,processorId:e.processorId},r=await this.apiClient.post("/api/v1/payment/create-payment-instrument",{paymentInstrumentData:n});return console.log("APM payment instrument created:",r),r}getCardMonthAndYear(e){let[n,r]=e.split("/"),s=new Date().getFullYear(),i=Math.floor(s/100)*100,o=Number(r)+i;return{expiration_month:Number(n),expiration_year:o}}async processPaymentDirect(e,n,r,s={}){console.log("[PaymentsResource] processPaymentDirect START",s.paymentFlowId?"(flow: ".concat(s.paymentFlowId,")"):""),console.log("[PaymentsResource] Full options object:",JSON.stringify(s,null,2)),console.log("[PaymentsResource] processorId:",s.processorId,"paymentMethod:",s.paymentMethod);try{let i=b(b(b(b(b(b(b({checkoutSessionId:e,paymentInstrumentId:n},r&&{threedsSessionId:r}),s.initiatedBy&&{initiatedBy:s.initiatedBy}),s.source&&{source:s.source}),s.paymentFlowId&&{paymentFlowId:s.paymentFlowId}),s.processorId&&{processorId:s.processorId}),s.paymentMethod&&{paymentMethod:s.paymentMethod}),s.isExpress&&{isExpress:s.isExpress});console.log("[PaymentsResource] Request body being sent:",JSON.stringify(i,null,2));let o=await this.apiClient.post("/api/public/v1/checkout/pay-v2",i);return console.log("[PaymentsResource] processPaymentDirect SUCCESS:",o),o}catch(i){throw console.error("[PaymentsResource] processPaymentDirect ERROR:",i),i}}async getCardPaymentInstruments(){return this.apiClient.get("/api/v1/payment-instruments/customer")}async markPaymentActionProcessed(e){return this.apiClient.post("/api/v1/payments/require-action/processed",{paymentId:e})}async getPaymentStatus(e){return this.apiClient.get("/api/v1/payments/".concat(e))}async retrievePayment(e){return this.apiClient.post("/api/v1/payments/retrieve",{paymentId:e})}async saveRadarSession(e){return this.apiClient.post("/api/v1/radar-sessions",e)}async completePaymentAfterAction(e){return this.apiClient.post("/api/v1/payments/complete-after-3ds",{paymentId:e})}async updateThreedsStatus(e){return this.apiClient.post("/api/v1/threeds/status",e)}};var ln=class{constructor(e){this.apiClient=e}async getOrder(e){let n=await this.apiClient.get("/api/v1/orders/".concat(e));if(typeof n=="object"&&n!==null&&"success"in n&&n.success===!1)throw new Error(n.error||"Failed to fetch order");let r=typeof n=="object"&&n!==null&&"order"in n?n.order:n;if(!r)throw new Error("Order not found");return r}async createOrder(e){return this.apiClient.post("/api/v1/orders",{checkoutSessionId:e})}async updateOrderStatus(e,n){return this.apiClient.patch("/api/v1/orders/".concat(e,"/status"),{status:n})}async addOrderItems(e,n){return this.apiClient.post("/api/v1/orders/".concat(e,"/items"),{items:n})}async getOrderLineItems(e){return(await this.getOrder(e)).items||[]}};var un=class{constructor(e){this.apiClient=e}async getPaymentMethods(e){return this.apiClient.get("/api/v1/payment-methods?checkoutSessionId=".concat(encodeURIComponent(e)))}async updateCheckoutSessionAddress(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/address"),n)}async updateCustomerEmail(e,n){return this.apiClient.post("/api/v1/customers/".concat(e),n)}};var rt=class{constructor(e){this.apiClient=e}async getStoreConfig(e){return await this.apiClient.get("/api/v1/checkout/config?storeId=".concat(e))}};var st=class{constructor(e){this.apiClient=e}async createSession(e){return this.apiClient.post("/api/v1/threeds/create-session",e)}};var go="https://cvwnizdbugpz6jwk.public.blob.vercel-storage.com/geodata/v1";var it=new Map,dn=new Map,$r=new Map,Fr=new Map;async function Du(t){let e=it.get(t);if(e)return e;let n=$r.get(t);return n||(n=(async()=>{let r="".concat(go,"/").concat(t,"/countries.json"),s=await fetch(r);if(!s.ok)throw new Error("Geodata fetch failed: ".concat(r," (").concat(s.status,")"));let i=await s.json();return it.set(t,i),$r.delete(t),i})(),$r.set(t,n),n)}async function Nu(t){let e=dn.get(t);if(e)return e;let n=Fr.get(t);return n||(n=(async()=>{let r="".concat(go,"/").concat(t,"/regions.json"),s=await fetch(r);if(!s.ok)throw new Error("Geodata fetch failed: ".concat(r," (").concat(s.status,")"));let i=await s.json();return dn.set(t,i),Fr.delete(t),i})(),Fr.set(t,n),n)}function Lu(t){return it.get(t)||it.get("en")||{}}function Bu(t){return dn.get(t)||dn.get("en")||{}}async function fn(t="en"){await Promise.all([Du(t),Nu(t)])}var mo=(t="en")=>{let e=Lu(t);return Object.entries(e).map(([n,r])=>({code:n,name:r.n,iso3:r.i3,numeric:r.nu,uniqueKey:"country-".concat(n)})).sort((n,r)=>n.name.localeCompare(r.name))},ho=(t,e="en")=>{let r=Bu(e)[t];return r?r.map(([s,i],o)=>({code:s,name:i,countryCode:t,uniqueKey:"state-".concat(t,"-").concat(s,"-").concat(o)})).sort((s,i)=>s.name.localeCompare(i.name)):[]};function yo(t){return it.has(t)}function bo(){return[...it.keys()]}async function wo(t){await fn(t)}typeof globalThis!="undefined"&&typeof fetch!="undefined"&&fn("en").catch(()=>{});var pn=class{static getCountriesData(e="en"){try{let n=mo(e),r={};return n.forEach(s=>{r[s.code]={iso:s.code,iso3:s.iso3||"",numeric:s.numeric||0,name:s.name}}),r}catch(n){return console.error("Failed to load ISO data for language: ".concat(e),n),{}}}static getRegions(e,n="en"){try{return ho(e,n).map(s=>({iso:s.code,name:s.name}))}catch(r){return[]}}static findRegion(e,n,r="en"){var i;return(i=this.getRegions(e,r).find(o=>o.iso===n))!=null?i:null}static mapGoogleToISO(e,n,r,s="en"){let i=this.getRegions(r,s);if(i.length===0)return null;let o=i.find(a=>a.iso===e);return o||(o=i.find(a=>a.name.toLowerCase()===e.toLowerCase()),o)||(o=i.find(a=>a.name.toLowerCase()===n.toLowerCase()),o)?o:(o=i.find(a=>a.name.toLowerCase().includes(n.toLowerCase())||n.toLowerCase().includes(a.name.toLowerCase())),o!=null?o:null)}static isLanguageRegistered(e){return yo(e)}static getRegisteredLanguages(){return bo()}static async importLanguage(e){return wo(e)}static async ensureLoaded(e="en"){return fn(e)}static getAvailableLanguages(){return["en","ru","de","fr","es","zh","hi","pt","ja","ar","it","he"]}};var ot=class{static initialize(e){var n,r;this.apiKey=e,typeof window!="undefined"&&((r=(n=window.google)==null?void 0:n.maps)!=null&&r.places)&&(this.service=new window.google.maps.places.AutocompleteService)}static async searchPlaces(e,n={}){return!this.service||!e.trim()?[]:new Promise((r,s)=>{this.service.getPlacePredictions({input:e,types:n.types||["address"],componentRestrictions:n.componentRestrictions},(i,o)=>{var a,l,c;o===((c=(l=(a=window.google)==null?void 0:a.maps)==null?void 0:l.places)==null?void 0:c.PlacesServiceStatus.OK)&&i?r(i):r([])})})}static async getPlaceDetails(e){var n,r;return typeof window=="undefined"||!((r=(n=window.google)==null?void 0:n.maps)!=null&&r.places)?null:new Promise((s,i)=>{new window.google.maps.places.PlacesService(document.createElement("div")).getDetails({placeId:e,fields:["place_id","formatted_address","address_components","geometry"]},(a,l)=>{var c,d,u;l===((u=(d=(c=window.google)==null?void 0:c.maps)==null?void 0:d.places)==null?void 0:u.PlacesServiceStatus.OK)&&a?s(a):s(null)})})}static extractAddressComponents(e){let n={};for(let r of e.address_components){let s=r.types;s.includes("street_number")?n.streetNumber=r.long_name:s.includes("route")?n.route=r.long_name:s.includes("locality")?(n.city=r.long_name,n.locality=r.long_name):s.includes("administrative_area_level_2")?(n.administrativeAreaLevel2=r.short_name,n.administrativeAreaLevel2Long=r.long_name,n.city||(n.city=r.long_name,n.locality=r.long_name)):s.includes("administrative_area_level_1")?(n.state=r.long_name,n.administrativeAreaLevel1=r.short_name,n.administrativeAreaLevel1Long=r.long_name):s.includes("postal_code")?n.postalCode=r.long_name:s.includes("country")&&(n.country=r.long_name,n.countryCode=r.short_name,n.iso=r.short_name)}return!n.administrativeAreaLevel1&&n.administrativeAreaLevel2&&(n.state=n.administrativeAreaLevel2Long||n.administrativeAreaLevel2,n.administrativeAreaLevel1=n.administrativeAreaLevel2,n.administrativeAreaLevel1Long=n.administrativeAreaLevel2Long),n}};ot.apiKey=null,ot.service=null;_r();var qr=class{static findVariant(e,n){for(let r of e){let s=r.variants.find(i=>i.id===n);if(s)return s}return null}static getVariantPrice(e,n="USD"){let r=e.prices.find(i=>i.currency===n);if(r)return r;let s=e.prices.find(i=>i.default);return s||e.prices[0]||null}static getAllVariants(e){let n=[];for(let r of e)if(r.variants)for(let s of r.variants)n.push({product:r,variant:s});return n}static filterVariants(e,n){let r=[];for(let s of e)if(s.variants)for(let i of s.variants)n(i,s)&&r.push({product:s,variant:i});return r}};var jr=class{static getOrderLineItems(e){return e.items||[]}static getOrderTotal(e){return e.paidAmount||0}static getOrderStatus(e){return e.status||"unknown"}static isOrderCompleted(e){return e.status==="completed"||e.status==="fulfilled"}static isOrderPending(e){return e.status==="pending"||e.status==="processing"}static isOrderCancelled(e){return e.status==="cancelled"||e.status==="refunded"}};function Mu(t,e="USD",n="en-US"){let r=Nt.getDecimalPlaces(e),s;r===0?s=t/100:s=t/Math.pow(10,r);try{return new Intl.NumberFormat(n,{style:"currency",currency:e,minimumFractionDigits:r,maximumFractionDigits:r}).format(s)}catch(i){let o=Nt.getCurrencySymbol(e);return"".concat(o).concat(s.toFixed(r))}}var Nt=class t{static getCurrency(e,n="USD"){var l,c,d,u;let r,s=!1,i=typeof window!="undefined"?new URLSearchParams(window.location.search).get("currency"):null,o=typeof window!="undefined"?localStorage.getItem("tgd_currency")||t.getCookieValue("tgd_currency"):null;i?(r=i.toUpperCase(),s=!0):o?(r=o.toUpperCase(),s=!0):typeof(e==null?void 0:e.currency)=="string"?r=e.currency:(l=e==null?void 0:e.currency)!=null&&l.code?r=e.currency.code:(d=(c=e==null?void 0:e.store)==null?void 0:c.presentmentCurrencies)!=null&&d[0]?r=e.store.presentmentCurrencies[0]:r=n;let a=(u=e==null?void 0:e.store)==null?void 0:u.presentmentCurrencies;if(a!=null&&a.length&&!a.includes(r)&&(console.warn('[CurrencyUtils] Currency "'.concat(r,'" is not in store presentmentCurrencies [').concat(a.join(", "),"]. Falling back to ").concat(a[0],".")),r=a[0],s&&typeof window!="undefined"))try{localStorage.setItem("tgd_currency",r)}catch(p){}return{code:r,symbol:this.getCurrencySymbol(r),name:this.getCurrencyName(r),decimalPlaces:this.getDecimalPlaces(r),isExplicit:s}}static getCookieValue(e){if(typeof document=="undefined")return null;let n=document.cookie.match(new RegExp("(?:^|; )".concat(e,"=([^;]*)")));return n?decodeURIComponent(n[1]):null}static getCurrencySymbol(e){return{USD:"$",EUR:"\u20AC",GBP:"\xA3",JPY:"\xA5",CAD:"C$",AUD:"A$",CHF:"CHF",CNY:"\xA5",SEK:"kr",NOK:"kr",DKK:"kr",PLN:"z\u0142",CZK:"K\u010D",HUF:"Ft",RON:"lei",BGN:"\u043B\u0432",HRK:"kn",RUB:"\u20BD",UAH:"\u20B4",TRY:"\u20BA",BRL:"R$",ARS:"$",CLP:"$",COP:"$",MXN:"$",PEN:"S/",UYU:"$U",VEF:"Bs",ZAR:"R",EGP:"\xA3",MAD:"\u062F.\u0645.",TND:"\u062F.\u062A",DZD:"\u062F.\u062C",LYD:"\u0644.\u062F",NGN:"\u20A6",GHS:"\u20B5",KES:"KSh",UGX:"USh",TZS:"TSh",ETB:"Br",ZMW:"ZK",BWP:"P",SZL:"L",LSL:"L",NAD:"N$",MUR:"\u20A8",SCR:"\u20A8",KWD:"\u062F.\u0643",BHD:"\u062F.\u0628",QAR:"\u0631.\u0642",AED:"\u062F.\u0625",OMR:"\u0631.\u0639.",YER:"\uFDFC",SAR:"\u0631.\u0633",JOD:"\u062F.\u0627",LBP:"\u0644.\u0644",ILS:"\u20AA",INR:"\u20B9",PKR:"\u20A8",BDT:"\u09F3",LKR:"\u20A8",NPR:"\u20A8",AFN:"\u060B",KZT:"\u20B8",UZS:"\u043B\u0432",KGS:"\u043B\u0432",TJS:"SM",TMT:"T",AZN:"\u20BC",GEL:"\u20BE",AMD:"\u058F",KRW:"\u20A9",THB:"\u0E3F",VND:"\u20AB",IDR:"Rp",MYR:"RM",SGD:"S$",PHP:"\u20B1",TWD:"NT$",HKD:"HK$",MOP:"MOP$",BND:"B$",LAK:"\u20AD",KHR:"\u17DB",MMK:"K",BOB:"Bs",PYG:"\u20B2",GTQ:"Q",HNL:"L",NIO:"C$",CRC:"\u20A1",PAB:"B/.",DOP:"RD$",JMD:"J$",TTD:"TT$",BBD:"Bds$",XCD:"EC$",AWG:"\u0192",ANG:"\u0192",SRD:"$",GYD:"G$",VES:"Bs.S",VED:"Bs.D"}[e]||e}static getCurrencyName(e){return{USD:"US Dollar",EUR:"Euro",GBP:"British Pound",JPY:"Japanese Yen",CAD:"Canadian Dollar",AUD:"Australian Dollar",CHF:"Swiss Franc",CNY:"Chinese Yuan",SEK:"Swedish Krona",NOK:"Norwegian Krone",DKK:"Danish Krone",PLN:"Polish Zloty",CZK:"Czech Koruna",HUF:"Hungarian Forint",RON:"Romanian Leu",BGN:"Bulgarian Lev",HRK:"Croatian Kuna",RUB:"Russian Ruble",UAH:"Ukrainian Hryvnia",TRY:"Turkish Lira",BRL:"Brazilian Real",ARS:"Argentine Peso",CLP:"Chilean Peso",COP:"Colombian Peso",MXN:"Mexican Peso",PEN:"Peruvian Sol",UYU:"Uruguayan Peso",VEF:"Venezuelan Bolivar",ZAR:"South African Rand",EGP:"Egyptian Pound",MAD:"Moroccan Dirham",TND:"Tunisian Dinar",DZD:"Algerian Dinar",LYD:"Libyan Dinar",NGN:"Nigerian Naira",GHS:"Ghanaian Cedi",KES:"Kenyan Shilling",UGX:"Ugandan Shilling",TZS:"Tanzanian Shilling",ETB:"Ethiopian Birr",ZMW:"Zambian Kwacha",BWP:"Botswana Pula",SZL:"Swazi Lilangeni",LSL:"Lesotho Loti",NAD:"Namibian Dollar",MUR:"Mauritian Rupee",SCR:"Seychellois Rupee",KWD:"Kuwaiti Dinar",BHD:"Bahraini Dinar",QAR:"Qatari Riyal",AED:"UAE Dirham",OMR:"Omani Rial",YER:"Yemeni Rial",SAR:"Saudi Riyal",JOD:"Jordanian Dinar",LBP:"Lebanese Pound",ILS:"Israeli Shekel",INR:"Indian Rupee",PKR:"Pakistani Rupee",BDT:"Bangladeshi Taka",LKR:"Sri Lankan Rupee",NPR:"Nepalese Rupee",AFN:"Afghan Afghani",KZT:"Kazakhstani Tenge",UZS:"Uzbekistani Som",KGS:"Kyrgyzstani Som",TJS:"Tajikistani Somoni",TMT:"Turkmenistani Manat",AZN:"Azerbaijani Manat",GEL:"Georgian Lari",AMD:"Armenian Dram",KRW:"South Korean Won",THB:"Thai Baht",VND:"Vietnamese Dong",IDR:"Indonesian Rupiah",MYR:"Malaysian Ringgit",SGD:"Singapore Dollar",PHP:"Philippine Peso",TWD:"Taiwan Dollar",HKD:"Hong Kong Dollar",MOP:"Macanese Pataca",BND:"Brunei Dollar",LAK:"Lao Kip",KHR:"Cambodian Riel",MMK:"Myanmar Kyat",BOB:"Bolivian Boliviano",PYG:"Paraguayan Guarani",GTQ:"Guatemalan Quetzal",HNL:"Honduran Lempira",NIO:"Nicaraguan Cordoba",CRC:"Costa Rican Colon",PAB:"Panamanian Balboa",DOP:"Dominican Peso",JMD:"Jamaican Dollar",TTD:"Trinidad and Tobago Dollar",BBD:"Barbadian Dollar",XCD:"East Caribbean Dollar",AWG:"Aruban Florin",ANG:"Netherlands Antillean Guilder",SRD:"Surinamese Dollar",GYD:"Guyanese Dollar",VES:"Venezuelan Bolivar Soberano",VED:"Venezuelan Bolivar Digital"}[e]||e}static getDecimalPlaces(e){var r;return(r={JPY:0,KRW:0,VND:0,IDR:0,LAK:0,KHR:0,MMK:0,PYG:0,VEF:0,VES:0,VED:0}[e])!=null?r:2}};var Kr=class{static getCheckoutSessionId(e){var n;return((n=e.checkoutSession)==null?void 0:n.id)||""}static getLineItems(e){var r;let n=(r=e.checkoutSession)==null?void 0:r.lineItems;return Array.isArray(n)?n:[]}static getTotal(e){var r;let n=(r=e.checkoutSession)==null?void 0:r.totalPrice;return typeof n=="number"?n:0}static isClubMember(e){return e.customerIsClubMember||!1}};var Hr=class{static isValidPromotion(e){return!!(e.id&&e.name)}static getPromotionType(e){return e.type||"unknown"}static hasRules(e){return!!(e.rules&&e.rules.length>0)}static hasActions(e){return!!(e.actions&&e.actions.length>0)}};var zr=class{static isValidOffer(e){return!!(e.id&&e.summaries&&e.summaries.length>0)}static getOfferTotal(e){var n,r;return((r=(n=e.summaries)==null?void 0:n[0])==null?void 0:r.totalAmount)||0}static getOfferAdjustedTotal(e){var n,r;return((r=(n=e.summaries)==null?void 0:n[0])==null?void 0:r.totalAdjustedAmount)||0}static hasItems(e){return!!(e.offerLineItems&&e.offerLineItems.length>0)}static getOfferCurrency(e){var n,r;return((r=(n=e.summaries)==null?void 0:n[0])==null?void 0:r.currency)||"USD"}static getOfferTitle(e,n="en"){var r,s;return((r=e.titleTrans)==null?void 0:r[n])||((s=e.titleTrans)==null?void 0:s.en)||"Offer ".concat(e.id)}};var Vr=class{static isValidOffer(e){return!!(e.id&&e.name&&e.price>0)}static toggleSelection(e){return O(b({},e),{isSelected:!e.isSelected})}static calculatePreview(e,n=0){let r=n+e.price,s=e.isSelected?r:n;return{offer:e,totalAmount:r,adjustedAmount:s}}static getSelectedOffers(e){return e.filter(n=>n.isSelected)}static getSelectedTotal(e){return e.filter(n=>n.isSelected).reduce((n,r)=>n+r.price,0)}};var Uu={session:t=>["funnel","session",t],allSessions:()=>["funnel","sessions"],funnelMeta:t=>["funnel","meta",t]};function So(t,e,n="*"){let r={type:"TAGADAPAY_CONFIG_UPDATE",config:e,timestamp:Date.now()};t.postMessage(r,n)}function $u(t,e="iframe"){if(typeof document=="undefined")return;let n=document.querySelectorAll(e);n.forEach(r=>{r.contentWindow&&So(r.contentWindow,t)}),console.log("[ConfigHotReload] Broadcasted config update to ".concat(n.length," iframe(s)"))}function Fu(t){if(typeof window=="undefined")return()=>{};let e=n=>{var r;((r=n.data)==null?void 0:r.type)==="TAGADAPAY_CONFIG_UPDATE"&&t(n.data.config)};return window.addEventListener("message",e),()=>{window.removeEventListener("message",e)}}function qu(t,e=150){let n=null;return r=>{n&&clearTimeout(n),n=setTimeout(()=>{t(r),n=null},e)}}var Zr=Oi(Ro()),Y,at=typeof window!="undefined"&&typeof document!="undefined",Xu=at?history.pushState.bind(history):null,Qu=at?history.replaceState.bind(history):null;function hn(){Y=void 0}at&&(window.addEventListener("popstate",hn),window.addEventListener("hashchange",hn),history.pushState=function(...t){return hn(),Xu.apply(this,t)},history.replaceState=function(...t){return hn(),Qu.apply(this,t)});function Lt(){if(!at)return null;if(Y!==void 0)return console.log("[TagadaPay SDK] \u{1F4E6} Returning cached internal path:",Y),Y;console.log("[TagadaPay SDK] \u{1F50D} getInternalPath() called for:",window.location.pathname);try{let t=window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"||window.location.hostname.endsWith(".localhost");if(console.log("[TagadaPay SDK] \u{1F3E0} isLocalhost:",t),t){let o=new URLSearchParams(window.location.search).get("__remap");if(console.log("[TagadaPay SDK] \u{1F50D} Query parameter __remap:",o),o)return Y=o,o;try{let a=localStorage.getItem("tagadapay-remap");if(console.log("[TagadaPay SDK] \u{1F50D} localStorage tagadapay-remap:",a),a)try{let l=JSON.parse(a);if(console.log("[TagadaPay SDK] \u{1F4DD} Parsed remap config:",l),l.externalPath&&l.internalPath){let c=window.location.pathname;console.log("[TagadaPay SDK] \u{1F50D} Checking if",c,"matches pattern",l.externalPath);let u=(0,Zr.match)(l.externalPath,{decode:decodeURIComponent,end:!0})(c);return console.log("[TagadaPay SDK] \u{1F3AF} Match result:",u),u!==!1?(Y=l.internalPath,console.log("[TagadaPay SDK] \u2705 Path remap: ".concat(l.externalPath," \u2192 ").concat(l.internalPath)),console.log("[TagadaPay SDK] \u2705 Current URL ".concat(c," matches external pattern")),console.log("[TagadaPay SDK] \u{1F4E6} Caching and returning:",l.internalPath),l.internalPath):(console.log("[TagadaPay SDK] \u274C Current URL ".concat(c," does NOT match external pattern ").concat(l.externalPath)),Y=null,null)}else console.log("[TagadaPay SDK] \u26A0\uFE0F Parsed config missing externalPath or internalPath")}catch(l){return console.log("[TagadaPay SDK] \u26A0\uFE0F Failed to parse as JSON, using legacy format:",l),Y=a,a}else console.log("[TagadaPay SDK] \u{1F4ED} No localStorage tagadapay-remap found")}catch(a){console.log("[TagadaPay SDK] \u274C localStorage error:",a)}}let e=document.querySelector('meta[name="tagadapay-path-remap"]');if(e)try{let i=e.getAttribute("content");if(i){let o=decodeURIComponent(i),a=JSON.parse(o);if(a.internal)return console.log("[TagadaPay SDK] \u2705 Got internal path from full remap config:",a.internal),Y=a.internal,a.internal}}catch(i){console.error("[TagadaPay SDK] Error parsing full remap config:",i)}let n=document.querySelector('meta[name="x-plugin-internal-path"]');if(!n)return console.log("[TagadaPay SDK] \u2139\uFE0F No path remap meta tags found"),Y=null,null;let r=n.getAttribute("content");if(!r||r.trim()==="")return Y=null,null;let s=r.trim();return s.startsWith("/")?(console.log("[TagadaPay SDK] \u2705 Got internal path from legacy meta tag:",s),Y=s,s):(Y=null,null)}catch(t){return Y=null,null}}function Io(){return Lt()!==null}function Ao(){if(!at)throw new Error("[TagadaPay SDK] getPathInfo() cannot be called in SSR context");try{let t=window.location.pathname,e=Lt(),n=new URLSearchParams(window.location.search),r=window.location.hash.replace(/^#/,"");return{externalPath:t,internalPath:e,isRemapped:e!==null,fullUrl:window.location.href,query:n,hash:r}}catch(t){return{externalPath:"/",internalPath:null,isRemapped:!1,fullUrl:"",query:new URLSearchParams,hash:""}}}function yn(t,e){try{if(t===e)return{matched:!0,params:{}};if(!(e.includes(":")||e.includes("*")||e.includes("{")))return{matched:t===e,params:{}};let s=(0,Zr.match)(e,{decode:decodeURIComponent,end:!0})(t);if(s===!1)return{matched:!1,params:{}};let i={};return typeof s=="object"&&s.params&&Object.keys(s.params).forEach(o=>{let a=s.params[o];i[o]=Array.isArray(a)?a.join("/"):String(a)}),{matched:!0,params:i}}catch(n){return{matched:t===e,params:{}}}}function ed(t,e,n){let r=_o(e),s=_o(n);if(r.length===0||r.length!==s.length)return t;let i={};return r.forEach((o,a)=>{let l=s[a],c=t[o];c!==void 0&&(i[l]=c)}),i}function _o(t){let e=t.match(/:([a-zA-Z0-9_]+)/g);return e?e.map(n=>n.substring(1)):[]}function xo(t){if(typeof t!="string")throw new Error("[TagadaPay SDK] internalPath must be a string, got ".concat(typeof t));if(t.trim()==="")throw new Error("[TagadaPay SDK] internalPath cannot be empty");if(!t.startsWith("/"))throw new Error('[TagadaPay SDK] internalPath must start with /, got "'.concat(t,'"'));if(!at)return{matched:!1,params:{}};try{let e=window.location.pathname,n=Lt();if(n){if(!yn(n,t).matched)return{matched:!1,params:{}};let s=null;if(typeof localStorage!="undefined")try{let o=localStorage.getItem("tagadapay-remap");if(o){let a=JSON.parse(o);a.externalPath&&a.internalPath===n&&(s=a.externalPath)}}catch(o){}if(!s&&typeof document!="undefined"){console.log("[TagadaPay SDK] \u{1F50D} Checking for production path remap meta tag...");let o=document.querySelector('meta[name="tagadapay-path-remap"]');if(o)try{let a=o.getAttribute("content");if(console.log("[TagadaPay SDK] \u{1F4C4} Found meta tag content (encoded):",(a==null?void 0:a.substring(0,100))+"..."),a){let l=decodeURIComponent(a);console.log("[TagadaPay SDK] \u{1F4C4} Decoded content:",l);let c=JSON.parse(l);console.log("[TagadaPay SDK] \u{1F4E6} Parsed remap config:",c),console.log("[TagadaPay SDK] \u{1F50D} Checking if internal path matches:",{parsedInternal:c.internal,remappedInternalPath:n}),c.external&&c.internal===n?(s=c.external,console.log("[TagadaPay SDK] \u2705 Using external pattern from meta tag:",s)):console.log("[TagadaPay SDK] \u26A0\uFE0F Internal path mismatch - not using meta tag config")}}catch(a){console.error("[TagadaPay SDK] \u274C Error parsing path remap meta tag:",a)}else console.log("[TagadaPay SDK] \u274C No tagadapay-path-remap meta tag found")}if(s){let o=yn(e,s);if(o.matched){console.log("[TagadaPay SDK] \u{1F504} Mapping params from external to internal pattern"),console.log("[TagadaPay SDK] External params:",o.params),console.log("[TagadaPay SDK] External pattern:",s),console.log("[TagadaPay SDK] Internal pattern:",t);let a=ed(o.params,s,t);return console.log("[TagadaPay SDK] Mapped params:",a),{matched:!0,params:a}}}return{matched:!0,params:yn(e,t).params}}return yn(e,t)}catch(e){return{matched:!1,params:{}}}}Je();Je();var Tr=class{constructor(e){this.callbacks={};this.basisTheory=null;this.btInitPromise=null;this.bt3dsClass=null;this.bt3dsInitPromise=null;this.storeConfig=null;this.storeConfigPromise=null;this.pollTimer=null;this.pollAttempts=0;this.isPollingActive=!1;this.redirectReturnProcessed=!1;this.paymentsResource=new nt(e.apiClient),this.threedsResource=new st(e.apiClient),this.storeConfigResource=new rt(e.apiClient),this.storeId=e.storeId}get payments(){return this.paymentsResource}setCallbacks(e){this.callbacks=e}warmup(){this.initBasisTheory(),this.initBt3ds(),this.storeId&&this.fetchStoreConfig()}destroy(){this.stopPolling(),this.basisTheory=null,this.btInitPromise=null,this.bt3dsClass=null,this.bt3dsInitPromise=null,this.storeConfig=null,this.storeConfigPromise=null}initBasisTheory(){return this.basisTheory?Promise.resolve(this.basisTheory):this.btInitPromise?this.btInitPromise:(this.btInitPromise=(async()=>{try{let e=Dt(),{BasisTheory:n}=await Promise.resolve().then(()=>Oi(yl())),r=await new n().init(e,{elements:!1});return this.basisTheory=r,console.log("[PaymentService] BasisTheory initialized"),this.basisTheory}catch(e){return console.error("[PaymentService] BasisTheory init failed:",e),null}})(),this.btInitPromise)}getBtApiKey(){return Dt()}initBt3ds(){return this.bt3dsClass?Promise.resolve(this.bt3dsClass):this.bt3dsInitPromise?this.bt3dsInitPromise:(this.bt3dsInitPromise=(async()=>{try{let{BasisTheory3ds:e}=await Promise.resolve().then(()=>(Ll(),Nl));return this.bt3dsClass=e,console.log("[PaymentService] BasisTheory 3DS loaded"),this.bt3dsClass}catch(e){return console.error("[PaymentService] BasisTheory 3DS load failed:",e),null}})(),this.bt3dsInitPromise)}fetchStoreConfig(){return this.storeConfig?Promise.resolve(this.storeConfig):this.storeConfigPromise?this.storeConfigPromise:this.storeId?(this.storeConfigPromise=(async()=>{try{return this.storeConfig=await this.storeConfigResource.getStoreConfig(this.storeId),this.storeConfig}catch(e){return null}})(),this.storeConfigPromise):Promise.resolve(null)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null),this.isPollingActive=!1,this.pollAttempts=0}startPolling(e,n,r=20,s=1500){this.stopPolling(),this.isPollingActive=!0,this.pollAttempts=0,console.log("[PaymentService] Starting payment polling:",e);let i=async()=>{var o;if(this.isPollingActive){this.pollAttempts++;try{let a=await this.paymentsResource.getPaymentStatus(e);if(console.log("[PaymentService] Poll #".concat(this.pollAttempts,": ").concat(a.status," / ").concat(a.subStatus)),!this.isPollingActive)return;if(a.status==="succeeded"||a.status==="pending"&&a.subStatus==="authorized"){this.stopPolling(),n.onSuccess(a);return}if(a.requireAction!=="none"&&a.requireActionData&&!a.requireActionData.processed){this.stopPolling(),(o=n.onRequireAction)==null||o.call(n,a);return}if(a.status!=="succeeded"&&a.status!=="pending"){this.stopPolling(),n.onFailure(a.status||"Payment failed");return}this.pollAttempts>=r&&(this.stopPolling(),n.onFailure("Payment verification timeout"))}catch(a){this.pollAttempts>=3&&(this.stopPolling(),n.onFailure("Payment verification failed due to network errors"))}}};i(),this.pollTimer=setInterval(()=>void i(),s)}async processAndHandle(e,n,r,s){var a,l,c,d,u,p,m,f;let i=xt(),o=await this.paymentsResource.processPaymentDirect(e,n,r,{initiatedBy:(s==null?void 0:s.initiatedBy)||"customer",source:(s==null?void 0:s.source)||"checkout",paymentFlowId:i,processorId:s==null?void 0:s.processorId,paymentMethod:s==null?void 0:s.paymentMethod});return console.log("[PaymentService] Payment response:",{paymentId:(a=o.payment)==null?void 0:a.id,status:(l=o.payment)==null?void 0:l.status,requireAction:(c=o.payment)==null?void 0:c.requireAction}),(p=(u=this.callbacks).onCurrentPaymentId)==null||p.call(u,((d=o.payment)==null?void 0:d.id)||null),o.payment.requireAction!=="none"?(await this.handlePaymentAction(o.payment),{success:!0,payment:o.payment,order:o.order,redirecting:!0}):o.payment.status==="succeeded"?((f=(m=this.callbacks).onProcessing)==null||f.call(m,!1),{success:!0,payment:o.payment,order:o.order}):new Promise(y=>{this.startPolling(o.payment.id,{onSuccess:g=>{var w,v;(v=(w=this.callbacks).onProcessing)==null||v.call(w,!1),y({success:!0,payment:g,order:o.order})},onFailure:g=>{var w,v,S,C;(v=(w=this.callbacks).onError)==null||v.call(w,g),(C=(S=this.callbacks).onProcessing)==null||C.call(S,!1),y({success:!1,error:g})},onRequireAction:g=>{this.handlePaymentAction(g)}})})}async handleResumedPayment(e){var n,r,s,i,o,a,l,c,d,u,p,m;if(e.status==="declined"||e.status==="failed"){let f=((n=e.error)==null?void 0:n.message)||((r=e.error)==null?void 0:r.processorMessage)||"Payment declined";(i=(s=this.callbacks).onError)==null||i.call(s,f),(a=(o=this.callbacks).onProcessing)==null||a.call(o,!1),(c=(l=this.callbacks).onFailure)==null||c.call(l,f);return}if(e.status==="succeeded"){(u=(d=this.callbacks).onProcessing)==null||u.call(d,!1),(m=(p=this.callbacks).onSuccess)==null||m.call(p,e);return}if(e.requireAction!=="none"&&e.requireActionData){await this.handlePaymentAction(e);return}this.startPolling(e.id,{onSuccess:f=>{var y,g,w,v;(g=(y=this.callbacks).onProcessing)==null||g.call(y,!1),(v=(w=this.callbacks).onSuccess)==null||v.call(w,f)},onFailure:f=>{var y,g,w,v;(g=(y=this.callbacks).onError)==null||g.call(y,f),(v=(w=this.callbacks).onProcessing)==null||v.call(w,!1)},onRequireAction:f=>{this.handlePaymentAction(f)}})}async handlePaymentAction(e){var r,s,i,o,a,l,c,d,u,p,m,f,y;if(e.requireAction==="none"||(r=e.requireActionData)!=null&&r.processed)return;let n=e.requireActionData;if(n){try{await this.paymentsResource.markPaymentActionProcessed(e.id)}catch(g){}switch(n.type){case"redirect":case"redirect_to_payment":case"processor_auth":{let g=((i=(s=n.metadata)==null?void 0:s.redirect)==null?void 0:i.redirectUrl)||n.redirectUrl||n.url;g?(console.log("[PaymentService] Redirecting:",g),window.location.href=g):e.status==="succeeded"&&((a=(o=this.callbacks).onProcessing)==null||a.call(o,!1),(c=(l=this.callbacks).onSuccess)==null||c.call(l,e));break}case"threeds_auth":{let g=(d=n.metadata)==null?void 0:d.threedsSession;g!=null&&g.acsChallengeUrl&&(console.log("[PaymentService] 3DS challenge redirect:",g.acsChallengeUrl),window.location.href=g.acsChallengeUrl);break}case"error":{let g=n.message||"Payment action failed";(p=(u=this.callbacks).onError)==null||p.call(u,g),(f=(m=this.callbacks).onProcessing)==null||f.call(m,!1);break}case"kesspay_auth":this.handleKessPayAuth(n);break;case"trustflow_auth":this.handleTrustFlowAuth(n);break;case"finix_radar":await this.handleFinixRadar(e,n);break;case"stripe_radar":await this.handleStripeRadar(e,n);break;case"radar":((y=n.metadata)==null?void 0:y.provider)==="airwallex"&&await this.handleAirwallexRadar(e,n);break;case"mastercard_auth":await this.handleMasterCardAuth(e,n);break;default:{console.log("[PaymentService] Unhandled action, starting polling:",n.type),this.startPolling(e.id,{onSuccess:g=>{var w,v,S,C;(v=(w=this.callbacks).onProcessing)==null||v.call(w,!1),(C=(S=this.callbacks).onSuccess)==null||C.call(S,g)},onFailure:g=>{var w,v,S,C;(v=(w=this.callbacks).onError)==null||v.call(w,g),(C=(S=this.callbacks).onProcessing)==null||C.call(S,!1)},onRequireAction:g=>{this.handlePaymentAction(g)}});break}}}}handleKessPayAuth(e){var r,s,i,o,a,l,c,d,u,p,m;let n=(r=e==null?void 0:e.metadata)==null?void 0:r.threeds;if(!(n!=null&&n.challengeHtml)){(i=(s=this.callbacks).onError)==null||i.call(s,"Missing KessPay 3DS challenge HTML"),(a=(o=this.callbacks).onProcessing)==null||a.call(o,!1);return}try{(c=(l=this.callbacks).onProcessing)==null||c.call(l,!1);let f=document.implementation.createHTMLDocument("KessPay 3DS");f.body.innerHTML=n.challengeHtml;let y=f.querySelector("form");if(y){let g=document.createElement("form");g.method=y.method||"POST",g.action=y.action||"",g.style.display="none",y.querySelectorAll("input").forEach(w=>{let v=document.createElement("input");v.type=w.type,v.name=w.name,v.value=w.value,g.appendChild(v)}),document.body.appendChild(g),g.submit()}else document.open(),document.write(n.challengeHtml),document.close()}catch(f){(u=(d=this.callbacks).onError)==null||u.call(d,f instanceof Error?f.message:"KessPay 3DS failed"),(m=(p=this.callbacks).onProcessing)==null||m.call(p,!1)}}handleTrustFlowAuth(e){var r,s,i,o,a,l,c,d,u,p,m;let n=(r=e==null?void 0:e.metadata)==null?void 0:r.trustflow;if(!(n!=null&&n.appId)||!(n!=null&&n.txnId)||!(n!=null&&n.hash)){(i=(s=this.callbacks).onError)==null||i.call(s,"Missing Trust Flow 3DS data"),(a=(o=this.callbacks).onProcessing)==null||a.call(o,!1);return}try{(c=(l=this.callbacks).onProcessing)==null||c.call(l,!1);let f=document.createElement("form");f.method="POST",f.action=n.captureUrl,f.style.display="none";for(let[y,g]of[["APP_ID",n.appId],["TXN_ID",n.txnId],["HASH",n.hash]]){let w=document.createElement("input");w.type="hidden",w.name=y,w.value=g,f.appendChild(w)}document.body.appendChild(f),f.submit()}catch(f){(u=(d=this.callbacks).onError)==null||u.call(d,f instanceof Error?f.message:"Trust Flow 3DS failed"),(m=(p=this.callbacks).onProcessing)==null||m.call(p,!1)}}async handleFinixRadar(e,n){var s,i,o,a,l,c,d,u,p;let r=(s=n.metadata)==null?void 0:s.radar;if(!r){(o=(i=this.callbacks).onError)==null||o.call(i,"Finix radar config missing"),(l=(a=this.callbacks).onProcessing)==null||l.call(a,!1);return}try{await this.loadScript("https://js.finix.com/v/1/finix.js",()=>{var y;return typeof((y=window.Finix)==null?void 0:y.Auth)=="function"});let m=await new Promise((y,g)=>{let w=setTimeout(()=>g(new Error("Timeout waiting for Finix Auth")),1e4),v=window.Finix.Auth(r.environment,r.merchantId,()=>{clearTimeout(w);let C=v.getSessionKey();C?y(C):g(new Error("No Finix session key"))}),S=v.getSessionKey();S&&(clearTimeout(w),y(S))});await this.paymentsResource.saveRadarSession({orderId:r.orderId,finixRadarSessionId:m,finixRadarSessionData:{sessionKey:m,merchantId:r.merchantId,environment:r.environment,createdAt:new Date().toISOString()}});let f=await this.paymentsResource.completePaymentAfterAction(e.id);await this.handleResumedPayment(f)}catch(m){(d=(c=this.callbacks).onError)==null||d.call(c,m instanceof Error?m.message:"Finix radar failed"),(p=(u=this.callbacks).onProcessing)==null||p.call(u,!1)}}async handleStripeRadar(e,n){var s,i,o,a,l,c,d,u,p;let r=(s=n.metadata)==null?void 0:s.radar;if(!(r!=null&&r.publishableKey)){(o=(i=this.callbacks).onError)==null||o.call(i,"Stripe radar config missing"),(l=(a=this.callbacks).onProcessing)==null||l.call(a,!1);return}try{await this.loadScript("https://js.stripe.com/v3/",()=>typeof window.Stripe=="function");let f=await window.Stripe(r.publishableKey).createRadarSession();if(f.error)throw new Error(f.error.message||"Failed to create Radar session");if(!f.radarSession)throw new Error("No radar session returned from Stripe");await this.paymentsResource.saveRadarSession({orderId:r.orderId,stripeRadarSessionId:f.radarSession.id,stripeRadarSessionData:f.radarSession});let y=await this.paymentsResource.completePaymentAfterAction(e.id);await this.handleResumedPayment(y)}catch(m){(d=(c=this.callbacks).onError)==null||d.call(c,m instanceof Error?m.message:"Stripe radar failed"),(p=(u=this.callbacks).onProcessing)==null||p.call(u,!1)}}async handleAirwallexRadar(e,n){var o,a,l,c,d,u,p,m,f,y,g;let r=((o=n.metadata)==null?void 0:o.isTest)||!1,s=(a=e.order)==null?void 0:a.id,i=(l=e.order)==null?void 0:l.checkoutSessionId;if(!s||!i){(d=(c=this.callbacks).onError)==null||d.call(c,"Missing order info for Airwallex radar"),(p=(u=this.callbacks).onProcessing)==null||p.call(u,!1);return}try{let w=crypto.randomUUID(),v=document.getElementById("airwallex-fraud-api");if(v)v.setAttribute("data-order-session-id",w);else{let C=r?"https://static-demo.airwallex.com":"https://static.airwallex.com",R=document.createElement("script");R.type="text/javascript",R.async=!0,R.id="airwallex-fraud-api",R.setAttribute("data-order-session-id",w),R.src="".concat(C,"/webapp/fraud/device-fingerprint/index.js"),await new Promise((_,A)=>{R.onload=()=>_(),R.onerror=()=>A(new Error("Failed to load Airwallex fraud script")),document.body.appendChild(R)})}await this.paymentsResource.saveRadarSession({paymentId:e.id,checkoutSessionId:i,orderId:s,airwallexRadarSessionId:w});let S=await this.paymentsResource.completePaymentAfterAction(e.id);await this.handleResumedPayment(S)}catch(w){(f=(m=this.callbacks).onError)==null||f.call(m,w instanceof Error?w.message:"Airwallex radar failed"),(g=(y=this.callbacks).onProcessing)==null||g.call(y,!1)}}async handleMasterCardAuth(e,n){var s,i,o,a,l,c,d,u,p,m,f,y,g,w;let r=(s=n==null?void 0:n.metadata)==null?void 0:s.threeds;if(!(r!=null&&r.sessionId)||!(r!=null&&r.merchantId)){(o=(i=this.callbacks).onError)==null||o.call(i,"Missing MasterCard 3DS data"),(l=(a=this.callbacks).onProcessing)==null||l.call(a,!1);return}try{(d=(c=this.callbacks).onProcessing)==null||d.call(c,!1),await this.loadScript(r.scriptUrl,()=>!!window.ThreeDS);let v="mastercard-3ds-container",S=document.getElementById(v);S||(S=document.createElement("div"),S.id=v,S.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;overflow:hidden",document.body.appendChild(S)),await new Promise((A,N)=>{window.ThreeDS.configure({merchantId:r.merchantId,sessionId:r.sessionId,containerId:v,callback:()=>{window.ThreeDS.isConfigured()?A():N(new Error("ThreeDS configuration failed"))},configuration:{userLanguage:"en-US",wsVersion:r.version?parseInt(r.version,10):72}})});let C=await new Promise(A=>{window.ThreeDS.authenticatePayer(r.orderId,r.transactionId,A)}),R=(C==null?void 0:C.htmlRedirectCode)||((m=(p=(u=C==null?void 0:C.restApiResponse)==null?void 0:u.authentication)==null?void 0:p.redirect)==null?void 0:m.html);if(R){let A=document.implementation.createHTMLDocument("MasterCard 3DS");A.body.innerHTML=R;let N=A.querySelector("form");if(N){let W=document.createElement("form");W.method=N.method||"POST",W.action=N.action||"",W.style.display="none",N.querySelectorAll("input").forEach(U=>{let q=document.createElement("input");q.type=U.type,q.name=U.name,q.value=U.value,W.appendChild(q)}),document.body.appendChild(W),W.submit()}else document.open(),document.write(R),document.close()}else if(r.paymentId){let A=await this.paymentsResource.completePaymentAfterAction(r.paymentId);await this.handleResumedPayment(A)}let _=document.getElementById(v);_&&_.remove()}catch(v){(y=(f=this.callbacks).onError)==null||y.call(f,v instanceof Error?v.message:"MasterCard 3DS failed"),(w=(g=this.callbacks).onProcessing)==null||w.call(g,!1)}}async loadScript(e,n){if(typeof window=="undefined"||n())return;if(document.querySelector('script[src="'.concat(e,'"]'))){await this.waitFor(n,1e4);return}let s=document.createElement("script");s.src=e,s.async=!0,await new Promise((i,o)=>{s.onload=()=>i(),s.onerror=()=>o(new Error("Failed to load script: ".concat(e))),document.head.appendChild(s)})}waitFor(e,n){return new Promise((r,s)=>{if(e()){r();return}let i=setTimeout(()=>s(new Error("Timeout")),n),o=()=>{e()?(clearTimeout(i),r()):setTimeout(o,100)};o()})}detectRedirectReturn(){return typeof window=="undefined"||this.redirectReturnProcessed?!1:this.detectAirwallex3dsReturn()?!0:this.detectGenericRedirectReturn()}detectGenericRedirectReturn(){var o,a,l,c,d,u;let e=new URLSearchParams(window.location.search),n=e.get("paymentAction"),r=e.get("paymentActionStatus"),s=e.get("paymentId");return e.get("mode")==="retrieve"||n!=="requireAction"||r!=="completed"||!s?!1:(console.log("[PaymentService] Generic redirect return detected:",s),this.redirectReturnProcessed=!0,(a=(o=this.callbacks).onProcessing)==null||a.call(o,!0),(c=(l=this.callbacks).onCurrentPaymentId)==null||c.call(l,s),(u=(d=this.callbacks).onRedirectReturn)==null||u.call(d,s),this.startPolling(s,{onSuccess:p=>{var m,f,y,g;(f=(m=this.callbacks).onProcessing)==null||f.call(m,!1),this.cleanPaymentUrlParams(),(g=(y=this.callbacks).onSuccess)==null||g.call(y,p)},onFailure:p=>{var m,f,y,g;(f=(m=this.callbacks).onError)==null||f.call(m,p),(g=(y=this.callbacks).onProcessing)==null||g.call(y,!1),this.cleanPaymentUrlParams()},onRequireAction:p=>{this.handlePaymentAction(p)}}),!0)}detectAirwallex3dsReturn(){var a,l,c,d;let e=new URLSearchParams(window.location.search),n=e.get("paymentId"),r=e.get("payment_intent_id"),s=e.get("succeeded"),i=e.get("processorType");return!(r||s!==null)||i!=="airwallex"||!n?!1:(console.log("[PaymentService] Airwallex 3DS return detected:",n),this.redirectReturnProcessed=!0,(l=(a=this.callbacks).onProcessing)==null||l.call(a,!0),(d=(c=this.callbacks).onCurrentPaymentId)==null||d.call(c,n),this.handleAirwallex3dsRedirectReturn(n,r,s),!0)}async handleAirwallex3dsRedirectReturn(e,n,r){var i,o,a,l,c,d,u,p,m,f,y,g,w,v,S,C,R,_,A,N,W,U,q,$,Ae,he,yt,Q,bt;let s=()=>{let k=new URLSearchParams(window.location.search);["payment_intent_id","succeeded","processorType","paymentId","paymentAction","paymentActionStatus","error_code","error_message","mode"].forEach(B=>k.delete(B));let xe=k.toString()?"".concat(window.location.pathname,"?").concat(k.toString()):window.location.pathname;window.history.replaceState({},document.title,xe)};if(r==="true")try{await this.paymentsResource.updateThreedsStatus({paymentId:e,status:"succeeded",paymentIntentId:n||""}),s();let k=await this.paymentsResource.retrievePayment(e),xe=((i=k==null?void 0:k.retrieveResult)==null?void 0:i.status)||(k==null?void 0:k.status);if((o=k==null?void 0:k.retrieveResult)!=null&&o.success&&xe==="succeeded"){let B=await this.paymentsResource.getPaymentStatus(e);(l=(a=this.callbacks).onProcessing)==null||l.call(a,!1),(d=(c=this.callbacks).onSuccess)==null||d.call(c,B)}else if(xe==="declined"||xe==="error"){let B=((u=k==null?void 0:k.retrieveResult)==null?void 0:u.message)||(k==null?void 0:k.message)||"Payment failed";(m=(p=this.callbacks).onError)==null||m.call(p,B),(y=(f=this.callbacks).onProcessing)==null||y.call(f,!1)}else{let B=await this.paymentsResource.getPaymentStatus(e);if(B.status==="declined"||B.status==="failed"){let j=((g=B.error)==null?void 0:g.message)||((w=B.error)==null?void 0:w.processorMessage)||"Payment declined";(S=(v=this.callbacks).onError)==null||S.call(v,j),(R=(C=this.callbacks).onProcessing)==null||R.call(C,!1)}else B.status==="succeeded"||B.status==="pending"&&B.subStatus==="authorized"?((A=(_=this.callbacks).onProcessing)==null||A.call(_,!1),(W=(N=this.callbacks).onSuccess)==null||W.call(N,B)):B.requireAction!=="none"&&B.requireActionData&&!B.requireActionData.processed?this.handlePaymentAction(B):this.startPolling(e,{onSuccess:j=>{var te,Ce,ye,ke;(Ce=(te=this.callbacks).onProcessing)==null||Ce.call(te,!1),(ke=(ye=this.callbacks).onSuccess)==null||ke.call(ye,j)},onFailure:j=>{var te,Ce,ye,ke;(Ce=(te=this.callbacks).onError)==null||Ce.call(te,j),(ke=(ye=this.callbacks).onProcessing)==null||ke.call(ye,!1)},onRequireAction:j=>{this.handlePaymentAction(j)}})}}catch(k){(q=(U=this.callbacks).onError)==null||q.call(U,k instanceof Error?k.message:"Failed to process Airwallex 3DS"),(Ae=($=this.callbacks).onProcessing)==null||Ae.call($,!1)}else{let k=new URLSearchParams(window.location.search).get("error_message")||"Authentication failed";(yt=(he=this.callbacks).onError)==null||yt.call(he,k),(bt=(Q=this.callbacks).onProcessing)==null||bt.call(Q,!1),s()}}cleanPaymentUrlParams(){if(typeof window=="undefined")return;let e=new URLSearchParams(window.location.search);["paymentAction","paymentActionStatus","paymentId","payment_intent","payment_intent_client_secret","source_type","redirect_status"].forEach(r=>e.delete(r));let n=e.toString()?"".concat(window.location.pathname,"?").concat(e.toString()):window.location.pathname;window.history.replaceState({},document.title,n)}async createCardPaymentInstrument(e){let n=await this.initBasisTheory();return this.paymentsResource.createCardPaymentInstrument(n!=null?n:void 0,e)}async createApplePayPaymentInstrument(e){let n=await this.initBasisTheory();return this.paymentsResource.createApplePayPaymentInstrument(n!=null?n:void 0,e)}async createGooglePayPaymentInstrument(e){let n=await this.initBasisTheory();return this.paymentsResource.createGooglePayPaymentInstrument(n!=null?n:void 0,e)}async getCardPaymentInstruments(){return this.paymentsResource.getCardPaymentInstruments()}async createThreedsSession(e){let n=await this.initBt3ds();if(!n)throw new Error("BasisTheory 3DS not loaded");let s=await n(this.getBtApiKey()).createSession({tokenId:e.token});return this.threedsResource.createSession({provider:"basis_theory",sessionData:s,paymentInstrumentId:e.id})}async processCardPayment(e,n){var r,s,i,o,a,l,c,d,u;(s=(r=this.callbacks).onProcessing)==null||s.call(r,!0),(o=(i=this.callbacks).onError)==null||o.call(i,null);try{let p=await this.createCardPaymentInstrument({cardNumber:n.cardNumber,expiryDate:n.expiryDate,cvc:n.cvc});if(!(p!=null&&p.id))throw new Error("Failed to create payment instrument");let m,f=await this.fetchStoreConfig();if((a=f==null?void 0:f.computed)!=null&&a.threedsEnabled)try{m=(await this.createThreedsSession(p)).id}catch(y){}return await this.processAndHandle(e,p.id,m)}catch(p){let m=p instanceof Error?p.message:String(p);return(c=(l=this.callbacks).onError)==null||c.call(l,m),(u=(d=this.callbacks).onProcessing)==null||u.call(d,!1),{success:!1,error:m}}}async processApplePayPayment(e,n){var r,s,i,o,a,l,c,d;(s=(r=this.callbacks).onProcessing)==null||s.call(r,!0),(o=(i=this.callbacks).onError)==null||o.call(i,null);try{let u=await this.createApplePayPaymentInstrument(n);return await this.processAndHandle(e,u.id)}catch(u){let p=u instanceof Error?u.message:String(u);return(l=(a=this.callbacks).onError)==null||l.call(a,p),(d=(c=this.callbacks).onProcessing)==null||d.call(c,!1),{success:!1,error:p}}}async processGooglePayPayment(e,n){var r,s,i,o,a,l,c,d;(s=(r=this.callbacks).onProcessing)==null||s.call(r,!0),(o=(i=this.callbacks).onError)==null||o.call(i,null);try{let u=await this.createGooglePayPaymentInstrument(n);return await this.processAndHandle(e,u.id)}catch(u){let p=u instanceof Error?u.message:String(u);return(l=(a=this.callbacks).onError)==null||l.call(a,p),(d=(c=this.callbacks).onProcessing)==null||d.call(c,!1),{success:!1,error:p}}}async processPaymentWithInstrument(e,n){var r,s,i,o,a,l,c,d;(s=(r=this.callbacks).onProcessing)==null||s.call(r,!0),(o=(i=this.callbacks).onError)==null||o.call(i,null);try{return await this.processAndHandle(e,n)}catch(u){let p=u instanceof Error?u.message:String(u);return(l=(a=this.callbacks).onError)==null||l.call(a,p),(d=(c=this.callbacks).onProcessing)==null||d.call(c,!1),{success:!1,error:p}}}async processApmPayment(e,n){var r,s,i,o,a,l,c,d;(s=(r=this.callbacks).onProcessing)==null||s.call(r,!0),(o=(i=this.callbacks).onError)==null||o.call(i,null);try{return await this.processAndHandle(e,"",void 0,{processorId:n.processorId,paymentMethod:n.paymentMethod,initiatedBy:n.initiatedBy,source:n.source})}catch(u){let p=u instanceof Error?u.message:String(u);return(l=(a=this.callbacks).onError)==null||l.call(a,p),(d=(c=this.callbacks).onProcessing)==null||d.call(c,!1),{success:!1,error:p}}}};Ve();var Bl="1.0.0";function Ml(t){return typeof window=="undefined"?null:new URLSearchParams(window.location.search).get(t)}function G(t,...e){t&&console.log("[TagadaTracker]",...e)}function Ul(...t){console.warn("[TagadaTracker]",...t)}function dh(t){if(!t.storeId||typeof t.storeId!="string")throw new Error("TagadaTracker: storeId is required and must be a non-empty string.");if(!t.accountId||typeof t.accountId!="string")throw new Error("TagadaTracker: accountId is required and must be a non-empty string.");if(!t.stepId||typeof t.stepId!="string")throw new Error("TagadaTracker: stepId is required and must be a non-empty string.");if(t.apiBaseUrl)try{new URL(t.apiBaseUrl)}catch(e){throw new Error('TagadaTracker: apiBaseUrl is not a valid URL: "'.concat(t.apiBaseUrl,'"'))}}async function fh(t,e,n){let r;for(let s=0;s<=e;s++)try{return await t()}catch(i){if(r=i instanceof Error?i:new Error(String(i)),s<e){let o=Math.min(1e3*2**s,8e3);G(n,"Retry ".concat(s+1,"/").concat(e," in ").concat(o,"ms...")),await new Promise(a=>setTimeout(a,o))}}throw r}var Wt=class{constructor(){this.config=null;this.client=null;this.initialized=!1;this.initializing=!1;this.unsubscribe=null;this.version=Bl}async init(e){var r,s;if(this.initialized)return G(e.debug||!1,"Already initialized \u2014 returning existing session."),this.getSession();if(this.initializing)return G(e.debug||!1,"Initialization in progress \u2014 skipping duplicate call."),null;this.initializing=!0,this.config=b({debug:!1},e);let n=this.config.debug;try{dh(this.config)}catch(i){this.initializing=!1;let o=i instanceof Error?i:new Error(String(i));if(this.config.onError)return this.config.onError(o),null;throw o}G(n,"\u{1F680} Initializing external tracker v".concat(Bl),{storeId:e.storeId,accountId:e.accountId,stepId:e.stepId,funnelId:e.funnelId});try{let i=Ml("token");i&&(re(i),G(n,"\u{1F511} Bootstrapped token from URL")),this.client=Ri({debugMode:n,features:{funnel:{skipAutoInit:!0}},rawPluginConfig:{storeId:this.config.storeId,accountId:this.config.accountId},customApiConfig:this.config.apiBaseUrl?{apiConfig:{baseUrl:this.config.apiBaseUrl.trim()}}:void 0}),await this.waitForClientReady();let o=await fh(()=>this.initializeFunnel(),2,n);G(n,"\u2705 Session initialized:",o),this.initialized=!0;let a=this.getSession();return a&&((s=(r=this.config).onReady)==null||s.call(r,a)),a}catch(i){let o=i instanceof Error?i:new Error(String(i));if(G(n,"\u274C Initialization failed:",o),this.config.onError)return this.config.onError(o),null;throw o}finally{this.initializing=!1}}getSession(){var n,r;if(!((r=(n=this.client)==null?void 0:n.funnel)!=null&&r.state.context))return null;let e=this.client.funnel.state.context;return{sessionId:e.sessionId,customerId:e.customerId,storeId:e.storeId,funnelId:e.funnelId,currentStepId:e.currentStepId,cmsToken:this.client.state.token||void 0}}isReady(){var e,n;return this.initialized&&!!((n=(e=this.client)==null?void 0:e.funnel)!=null&&n.state.context)}async navigate(e){if(!this.isReady())throw new Error("TagadaTracker: not initialized. Call init() first.");G(this.config.debug,"\u{1F680} Navigating:",e);let n=e.autoRedirect!==!1;try{let r=await this.client.funnel.navigate({type:e.eventType,data:e.eventData||{}},{autoRedirect:!1});return r!=null&&r.url?(G(this.config.debug,"\u2705 Navigation result:",r.url),n&&typeof window!="undefined"&&(window.location.href=e.returnUrl||r.url),{url:r.url}):null}catch(r){throw G(this.config.debug,"\u274C Navigation failed:",r),r}}async trackEvent(e){if(!this.isReady()){Ul("trackEvent called before init \u2014 event dropped:",e.name);return}G(this.config.debug,"\u{1F4CA} Tracking event:",e.name,e.data);try{await this.client.funnel.navigate({type:e.name,data:e.data||{}},{autoRedirect:!1})}catch(n){G(this.config.debug,"\u26A0\uFE0F Event tracking failed (non-critical):",e.name)}}getCustomerId(){var e,n,r,s,i;return((n=(e=this.client)==null?void 0:e.state.auth.customer)==null?void 0:n.id)||((i=(s=(r=this.client)==null?void 0:r.funnel)==null?void 0:s.state.context)==null?void 0:i.customerId)||null}getFunnelSessionId(){var e,n,r;return((r=(n=(e=this.client)==null?void 0:e.funnel)==null?void 0:n.state.context)==null?void 0:r.sessionId)||null}buildUrl(e,n){let r=this.getSession();if(!r)return e;let s=new URL(e,typeof window!="undefined"?window.location.origin:void 0);return s.searchParams.set("funnelSessionId",r.sessionId),r.cmsToken&&s.searchParams.set("token",r.cmsToken),r.funnelId&&s.searchParams.set("funnelId",r.funnelId),s.searchParams.set("storeId",r.storeId),n&&Object.entries(n).forEach(([i,o])=>{s.searchParams.set(i,o)}),s.toString()}getClient(){return this.client}async reset(e){var s,i;if(!this.client||!this.config)throw new Error("TagadaTracker: not initialized. Call init() first.");G(this.config.debug,"\u{1F504} Resetting to step:",e),this.config.stepId=e;let n=await this.initializeFunnel(),r=this.getSession();return r&&((i=(s=this.config).onReady)==null||i.call(s,r)),r}destroy(){var e,n;this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null),this.client&&((n=(e=this.client).destroy)==null||n.call(e)),this.client=null,this.config=null,this.initialized=!1,this.initializing=!1,G(!1,"\u{1F5D1}\uFE0F Tracker destroyed")}async waitForClientReady(){if(this.client)return new Promise(e=>{var s;if((s=this.client)!=null&&s.state.isInitialized){e();return}let n=!1,r=setTimeout(()=>{var i;n||(n=!0,G(((i=this.config)==null?void 0:i.debug)||!1,"\u23F1\uFE0F Client ready timeout \u2014 proceeding"),e())},1e4);this.unsubscribe=this.client.subscribe(()=>{var i;!n&&((i=this.client)!=null&&i.state.isInitialized)&&(n=!0,clearTimeout(r),e())})})}async initializeFunnel(){var o,a,l;if(!((o=this.client)!=null&&o.funnel))return null;let e=(a=this.client.state.auth.customer)==null?void 0:a.id,n=(l=this.client.state.auth.session)==null?void 0:l.sessionId;!e&&!n&&Ul("No auth session available \u2014 funnel init may fail.");let r={customerId:e||"anon_placeholder",sessionId:n||"sess_placeholder"},s={id:this.config.storeId,accountId:this.config.accountId},i=this.config.stepId;return G(this.config.debug,"\u{1F50D} Initializing funnel at step:",i),this.client.funnel.initialize(r,s,this.config.funnelId||Ml("funnelId")||void 0,i)}},Pi=new Wt;typeof window!="undefined"&&(window.TagadaTracker=Pi);function ph(){if(typeof window=="undefined"||typeof document=="undefined")return[];let t=ie();return t!=null&&t.scripts?t.scripts.filter(e=>e.enabled):[]}function gh(t,e){let n=t.position||"body-end",r="tagada-stepconfig-script-".concat(e);if(document.getElementById(r))return;let s=t.content.trim(),i=s.match(/^<script[^>]*>([\s\S]*)<\/script>$/i);if(i&&(s=i[1].trim()),!s)return;let o="(function() {\n try {\n // Script: "+t.name+"\n"+s+'\n } catch (error) {\n console.error("[TagadaPay] StepConfig script error:", error);\n }\n})();',a=document.createElement("script");switch(a.id=r,a.setAttribute("data-tagada-stepconfig-script","true"),a.setAttribute("data-script-name",t.name),a.textContent=o,n){case"head-start":document.head.firstChild?document.head.insertBefore(a,document.head.firstChild):document.head.appendChild(a);break;case"head-end":document.head.appendChild(a);break;case"body-start":document.body.firstChild?document.body.insertBefore(a,document.body.firstChild):document.body.appendChild(a);break;case"body-end":default:document.body.appendChild(a);break}}function _i(){let t=ph();t.length!==0&&t.forEach((e,n)=>{gh(e,n)})}if(typeof window!="undefined"&&typeof document!="undefined"){let t=()=>{document.body?_i():document.addEventListener("DOMContentLoaded",_i,{once:!0})};"requestIdleCallback"in window?window.requestIdleCallback(t,{timeout:100}):setTimeout(t,0)}function Ri(t={}){return new Ot(t)}function mh(){return Dt()}function hh(){return po()}return Pr(yh);})();
7
+ "use strict";var TagadaSDKBundle=(()=>{var gu=Object.create;var Ct=Object.defineProperty,fu=Object.defineProperties,hu=Object.getOwnPropertyDescriptor,yu=Object.getOwnPropertyDescriptors,Su=Object.getOwnPropertyNames,Jo=Object.getOwnPropertySymbols,bu=Object.getPrototypeOf,Xo=Object.prototype.hasOwnProperty,Pu=Object.prototype.propertyIsEnumerable;var We=(t,e)=>(e=Symbol[t])?e:Symbol.for("Symbol."+t),wu=t=>{throw TypeError(t)};var Zo=(t,e,n)=>e in t?Ct(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,S=(t,e)=>{for(var n in e||(e={}))Xo.call(e,n)&&Zo(t,n,e[n]);if(Jo)for(var n of Jo(e))Pu.call(e,n)&&Zo(t,n,e[n]);return t},_=(t,e)=>fu(t,yu(e));var Ie=(t,e)=>()=>(t&&(e=t(t=0)),e);var v=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Tt=(t,e)=>{for(var n in e)Ct(t,n,{get:e[n],enumerable:!0})},Qo=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Su(e))!Xo.call(t,i)&&i!==n&&Ct(t,i,{get:()=>e[i],enumerable:!(r=hu(e,i))||r.enumerable});return t};var Br=(t,e,n)=>(n=t!=null?gu(bu(t)):{},Qo(e||!t||!t.__esModule?Ct(n,"default",{value:t,enumerable:!0}):n,t)),Lr=t=>Qo(Ct({},"__esModule",{value:!0}),t);var Fe=function(t,e){this[0]=t,this[1]=e},Mr=(t,e,n)=>{var r=(s,a,c,l)=>{try{var u=n[s](a),d=(a=u.value)instanceof Fe,p=u.done;Promise.resolve(d?a[0]:a).then(g=>d?r(s==="return"?s:"next",a[1]?{done:g.done,value:g.value}:g,c,l):c({value:g,done:p})).catch(g=>r("throw",g,c,l))}catch(g){l(g)}},i=s=>o[s]=a=>new Promise((c,l)=>r(s,a,c,l)),o={};return n=n.apply(t,e),o[We("asyncIterator")]=()=>o,i("next"),i("throw"),i("return"),o},Ye=t=>{var e=t[We("asyncIterator")],n=!1,r,i={};return e==null?(e=t[We("iterator")](),r=o=>i[o]=s=>e[o](s)):(e=e.call(t),r=o=>i[o]=s=>{if(n){if(n=!1,o==="throw")throw s;return s}return n=!0,{done:!1,value:new Fe(new Promise(a=>{var c=e[o](s);c instanceof Object||wu("Object expected"),a(c)}),1)}}),i[We("iterator")]=()=>i,r("next"),"throw"in e?r("throw"):i.throw=o=>{throw o},"return"in e&&r("return"),i},es=(t,e,n)=>(e=t[We("asyncIterator")])?e.call(t):(t=t[We("iterator")](),e={},n=(r,i)=>(i=t[r])&&(e[r]=o=>new Promise((s,a,c)=>(o=i.call(t,o),c=o.done,Promise.resolve(o.value).then(l=>s({value:l,done:c}),a)))),n("next"),n("return"),e);function ns(t){var r;if(typeof document=="undefined")return null;let n="; ".concat(document.cookie).split("; ".concat(t,"="));return n.length===2&&((r=n.pop())==null?void 0:r.split(";").shift())||null}function rs(t="local"){let e=ts[t];if(!e)return console.warn("Unknown environment: ".concat(t,". Falling back to local.")),{environment:"local",apiConfig:ts.local};let n=null;if(typeof window!="undefined"&&(n=new URLSearchParams(window.location.search).get("tagadaClientBaseUrl"),!n))try{n=localStorage.getItem("tgd_client_base_url")||ns("tgd_client_base_url")}catch(i){}return n?(console.log("[SDK] Using custom API base URL override: ".concat(n)),{environment:t,apiConfig:_(S({},e),{baseUrl:n})}):{environment:t,apiConfig:e}}function Et(){var i;if(console.log("[SDK] detectEnvironment() called"),typeof window=="undefined")return"local";let e=new URLSearchParams(window.location.search).get("tagadaClientEnv");if(e&&(e==="production"||e==="development"||e==="local"))return console.log("[SDK] Using explicit environment override: ".concat(e)),e;try{let o=localStorage.getItem("tgd_client_env")||ns("tgd_client_env");if(o&&(o==="production"||o==="development"||o==="local"))return console.log("[SDK] Using persisted environment override: ".concat(o)),o}catch(o){}let n=window.location.hostname,r=window.location.href;if(console.log('[SDK] detectEnvironment() - hostname: "'.concat(n,'"')),n==="localhost"||n.startsWith("127.")||n.startsWith("192.168.")||n.startsWith("10.")||n.includes(".local")||n===""||n==="0.0.0.0"||n.includes("ngrok-free.dev")||n.includes("ngrok-free.app")||n.includes("ngrok.io")||n.includes("ngrok.app")||n.includes(".loclx.io")){if(console.log("[SDK] detectEnvironment() - returning LOCAL"),typeof window!="undefined"&&((i=window==null?void 0:window.__TAGADA_ENV__)!=null&&i.TAGADA_ENVIRONMENT)){let o=window.__TAGADA_ENV__.TAGADA_ENVIRONMENT.toLowerCase();if(o==="production"||o==="development"||o==="local")return console.log("[SDK] Local override detected: ".concat(o)),o}return"local"}return n.includes("tagada.io")||n.includes("tagadapay.com")||n.includes("yourproductiondomain.com")?"production":n.includes("tagada.dev")||n.includes("tagadapay.dev")||n.includes("vercel.app")||n.includes("netlify.app")||n.includes("surge.sh")||n.includes("github.io")||n.includes("herokuapp.com")||n.includes("railway.app")||r.includes("?env=dev")||r.includes("?dev=true")||r.includes("#dev")?"development":(console.warn("[SDK] Unknown domain: ".concat(n,", defaulting to production")),"production")}function Rt(t=!1){return Et()!=="local"?!1:t&&typeof window!="undefined"?!window.location.hostname.includes(".cdn."):!0}var ts,Qt=Ie(()=>{"use strict";ts={production:{baseUrl:"https://api.tagada.io",endpoints:{checkout:{sessionInit:"/api/v1/checkout/session/init",sessionInitAsync:"/api/v1/checkout/session/init-async",sessionStatus:"/api/v1/checkout/session/status",asyncStatus:"/api/public/v1/checkout/async-status"},customer:{profile:"/api/v1/customer/profile",session:"/api/v1/customer/session"},store:{config:"/api/v1/store/config"}}},development:{baseUrl:"https://api.tagada.dev",endpoints:{checkout:{sessionInit:"/api/v1/checkout/session/init",sessionInitAsync:"/api/v1/checkout/session/init-async",sessionStatus:"/api/v1/checkout/session/status",asyncStatus:"/api/public/v1/checkout/async-status"},customer:{profile:"/api/v1/customer/profile",session:"/api/v1/customer/session"},store:{config:"/api/v1/store/config"}}},local:{baseUrl:"http://app.localhost:3000",endpoints:{checkout:{sessionInit:"/api/v1/checkout/session/init",sessionInitAsync:"/api/v1/checkout/session/init-async",sessionStatus:"/api/v1/checkout/session/status",asyncStatus:"/api/public/v1/checkout/async-status"},customer:{profile:"/api/v1/customer/profile",session:"/api/v1/customer/session"},store:{config:"/api/v1/store/config"}}}}});var tn,en,jr=Ie(()=>{"use strict";tn=(p=>(p.DIRECT_NAVIGATION="direct_navigation",p.BACK_NAVIGATION="back_navigation",p.CONTINUE_CLICKED="continue_clicked",p.BUTTON_CLICK="button_click",p.FORM_SUBMIT="form_submit",p.PAYMENT_SUCCESS="payment_success",p.PAYMENT_FAILED="payment_failed",p.OFFER_ACCEPTED="offer_accepted",p.OFFER_DECLINED="offer_declined",p.CART_UPDATED="cart_updated",p.CART_ITEM_ADDED="cart_item_added",p.CUSTOM="custom",p))(tn||{}),en=class{constructor(e){this.apiClient=e}async initialize(e){return this.apiClient.post("/api/v1/funnel/initialize",e)}async navigate(e){return this.apiClient.post("/api/v1/funnel/navigate",e)}async updateContext(e,n){return this.apiClient.patch("/api/v1/funnel/context/".concat(e),n)}async endSession(e){return this.apiClient.delete("/api/v1/funnel/session/".concat(e))}async getSession(e,n,r){let i=new URLSearchParams;n&&i.append("currentUrl",n),r&&i.append("includeDebugData","true");let o="/api/v1/funnel/session/".concat(e).concat(i.toString()?"?".concat(i):"");return this.apiClient.get(o)}}});var Je,Ur=Ie(()=>{"use strict";Je=class{constructor(){this.listeners=new Set}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}notify(e){this.listeners.forEach(n=>{try{n(e)}catch(r){console.error("Error in event listener:",r)}})}clear(){this.listeners.clear()}}});function ue(t){if(typeof window!="undefined")try{let n=localStorage.getItem(nn)!==t;localStorage.setItem(nn,t),n&&window.dispatchEvent(new Event("storage"))}catch(e){console.error("Failed to save token to localStorage:",e)}}function At(){if(typeof window!="undefined")try{return localStorage.getItem(nn)}catch(t){return console.error("Failed to get token from localStorage:",t),null}return null}function Ze(){if(typeof window!="undefined")try{localStorage.removeItem(nn)}catch(t){console.error("Failed to clear token from localStorage:",t)}}var nn,Xe=Ie(()=>{"use strict";nn="cms_token"});function $r(t){typeof document!="undefined"&&(document.cookie="".concat(Fr,"=").concat(t,"; path=/; max-age=2592000; SameSite=Lax"))}function rn(){if(typeof document=="undefined")return;let t=document.cookie.split("; ").find(e=>e.startsWith("".concat(Fr,"=")));return t?t.split("=")[1]:void 0}function _t(){typeof document!="undefined"&&(document.cookie="".concat(Fr,"=; path=/; max-age=0"))}function Iu(){return!!rn()}function Cu(){var t;if(typeof document!="undefined")try{let e=document.cookie.split("; ").find(r=>r.startsWith("".concat(vu,"=")));if(!e)return;let n=JSON.parse(decodeURIComponent(e.split("=")[1]));return(t=n==null?void 0:n.metadata)==null?void 0:t.funnelVariantId}catch(e){console.warn("Failed to parse sticky session for variant ID:",e);return}}var Fr,vu,on=Ie(()=>{"use strict";Fr="tgd-funnel-session-id",vu="tgd-session-id"});function Qe(t){if(typeof window=="undefined")return null;try{return localStorage.getItem(t)}catch(e){return null}}function et(t,e){if(typeof window!="undefined")try{localStorage.setItem(t,e)}catch(n){}}function Ot(t){var r;if(typeof document=="undefined")return null;let n=document.cookie.split(";").find(i=>i.trim().startsWith("".concat(t,"=")));return n?(r=n.split("=")[1])==null?void 0:r.trim():null}function xt(t,e,n=86400){if(typeof document!="undefined"){if(t==="tgd_draft"||t==="tgd-draft"){console.warn("\u{1F6E1}\uFE0F [SDK] Blocked attempt to set ".concat(t," as cookie - this should only be in localStorage"));return}document.cookie="".concat(t,"=").concat(e,"; path=/; max-age=").concat(n)}}function os(t){typeof document!="undefined"&&(document.cookie="".concat(t,"=; path=/; max-age=0"))}function $e(){if(typeof window=="undefined")return{};let t=new URLSearchParams(window.location.search),e,n=t.get("draft");if(n!==null)e=n==="true";else{let w=Qe(F.DRAFT);w!==null&&(e=w==="true")}let r,i=t.get("funnelTracking");if(i!==null)r=i!=="false";else{let w=Qe(F.FUNNEL_TRACKING)||Ot(F.FUNNEL_TRACKING);w!==null&&(r=w!=="false")}let o=t.get("token")||At()||null,s=t.get("funnelSessionId")||null,a=t.get("funnelId")||null,c,l=t.get("funnelEnv");l&&(l==="staging"||l==="production")&&(c=l);let u=t.get("forceReset")==="true",d,p=t.get("tagadaClientEnv");if(p&&(p==="production"||p==="development"||p==="local"))d=p;else{let w=Qe(F.CLIENT_ENV)||Ot(F.CLIENT_ENV);w&&(w==="production"||w==="development"||w==="local")&&(d=w)}let g,m=t.get("tagadaClientBaseUrl");if(m)g=m;else{let w=Qe(F.CLIENT_BASE_URL)||Ot(F.CLIENT_BASE_URL);w&&(g=w)}let h,f=t.get("currency");if(f)h=f;else{let w=Qe(F.CURRENCY)||Ot(F.CURRENCY);w&&(h=w)}let b,P=t.get("locale");if(P)b=P;else{let w=Qe(F.LOCALE)||Ot(F.LOCALE);w&&(b=w)}return{forceReset:u,token:o,funnelSessionId:s,funnelId:a,draft:e,funnelTracking:r,funnelEnv:c,tagadaClientEnv:d,tagadaClientBaseUrl:g,currency:h,locale:b}}function _e(){var e;return(e=$e().draft)!=null?e:!1}function qr(t){if(typeof window!="undefined")if(t)et(F.DRAFT,"true");else try{localStorage.removeItem(F.DRAFT)}catch(e){}}function ss(t=!1){let e=null;typeof window!="undefined"&&(e=new URLSearchParams(window.location.search).get("token"));let n=$e(),r=n.forceReset||!1;if(!r&&!n.token)return is(),!1;t&&(console.log("[SDK] Detected params:",n),console.log("[SDK] URL token (direct read):",e?e.substring(0,20)+"...":"none")),r&&(t&&console.log("[SDK] Force reset: Clearing all stored state"),Ze(),_t(),typeof window!="undefined"&&window.localStorage&&Object.keys(localStorage).forEach(s=>{(s.startsWith("tagadapay_")||s.startsWith("tgd_"))&&(t&&console.log("[SDK] Clearing localStorage: ".concat(s)),localStorage.removeItem(s))}));let i=e||n.token;return i!=null?(t&&console.log("[SDK] Setting token from URL:",i.substring(0,20)+"..."),i===""||i==="null"?Ze():(ue(i),t&&console.log("[SDK] \u2705 Token set in localStorage immediately after clear"))):r&&(t&&console.log("[SDK] Force reset mode (no token in URL)"),Ze()),is(),n.funnelSessionId&&t&&console.log("[SDK] Using funnelSessionId from URL:",n.funnelSessionId),r}function is(){if(typeof window=="undefined")return;let t=new URLSearchParams(window.location.search),e=t.get("draft");e!==null&&qr(e==="true");let n=t.get("funnelTracking");n!==null&&Tu(n!=="false");let r=t.get("tagadaClientEnv");r&&(r==="production"||r==="development"||r==="local")&&Eu(r);let i=t.get("tagadaClientBaseUrl");i&&Ru(i);let o=t.get("currency");o&&(et(F.CURRENCY,o.toUpperCase()),xt(F.CURRENCY,o.toUpperCase(),86400));let s=t.get("locale");s&&(et(F.LOCALE,s),xt(F.LOCALE,s,86400))}function Tu(t){if(typeof window=="undefined")return;let e=t?"true":"false";et(F.FUNNEL_TRACKING,e),xt(F.FUNNEL_TRACKING,e,86400)}function Eu(t){typeof window!="undefined"&&(et(F.CLIENT_ENV,t),xt(F.CLIENT_ENV,t,86400))}function as(){if(typeof window!="undefined")try{localStorage.removeItem(F.CLIENT_ENV),os(F.CLIENT_ENV)}catch(t){}}function Ru(t){typeof window!="undefined"&&(et(F.CLIENT_BASE_URL,t),xt(F.CLIENT_BASE_URL,t,86400))}function ls(){if(typeof window!="undefined")try{localStorage.removeItem(F.CLIENT_BASE_URL),os(F.CLIENT_BASE_URL)}catch(t){}}function cs(){var e;return(e=$e().funnelTracking)!=null?e:!0}var F,kt=Ie(()=>{"use strict";Xe();on();F={DRAFT:"tgd_draft",FUNNEL_TRACKING:"tgd_funnel_tracking",FORCE_RESET:"tgd_force_reset",CLIENT_ENV:"tgd_client_env",CLIENT_BASE_URL:"tgd_client_base_url",CURRENCY:"tgd_currency",LOCALE:"tgd_locale"}});var us={};Tt(us,{injectPreviewModeIndicator:()=>_u,isIndicatorInjected:()=>xu,removePreviewModeIndicator:()=>Ou});function Kr(t){if(typeof window=="undefined"||typeof document=="undefined")return;let e=window.location.hostname,n=e.split("."),r=["",e,"."+e];for(let a=1;a<n.length;a++){let c=n.slice(a).join(".");r.push(c),r.push("."+c)}let i=window.location.pathname.split("/").filter(a=>a),o=["/"],s="";i.forEach(a=>{s+="/"+a,o.push(s)}),r.forEach(a=>{o.forEach(c=>{let l="".concat(t,"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=").concat(c),u=a?"; domain=".concat(a):"";document.cookie=l+u,document.cookie=l+u+"; secure",document.cookie=l+u+"; SameSite=None; secure",document.cookie=l+u+"; SameSite=Lax",document.cookie=l+u+"; SameSite=Strict"})})}function Au(){if(typeof window=="undefined"||!confirm("\u{1F6AA} Leave Preview Mode?\n\nThis will clear ALL cookies and localStorage (including Shopify session, cart, and preview settings) and reload the page.\n\nAre you sure?"))return;let e=new URL(window.location.href);["draft","funnelEnv","funnelTracking","tagadaClientEnv","tagadaClientBaseUrl","forceReset","funnelId","funnelSessionId","token"].forEach(o=>e.searchParams.delete(o)),window.history.replaceState({},"",e.href);try{let o=Object.getOwnPropertyDescriptor(Document.prototype,"cookie")||Object.getOwnPropertyDescriptor(HTMLDocument.prototype,"cookie");o&&o.set&&Object.defineProperty(document,"cookie",{configurable:!0,enumerable:!0,get:function(){return o.get?o.get.call(this):""},set:function(s){if(typeof s=="string"){let a=s.toLowerCase();if(a.includes("tgd_draft")||a.includes("tgd-draft")||a.includes("tgd.draft")||a.includes("tgddraft")){if(a.includes("max-age=0")||a.includes("expires=thu, 01 jan 1970")){o.set&&o.set.call(this,s);return}console.warn("\u{1F6E1}\uFE0F [TagadaPay] BLOCKED: tgd_draft should never be a cookie");return}}o.set&&o.set.call(this,s)}})}catch(o){console.warn("[TagadaPay] Could not install cookie blocker:",o)}if(window.localStorage)try{localStorage.removeItem("tgd_draft"),localStorage.removeItem("tgd_funnel_tracking"),localStorage.removeItem("tgd_client_env"),localStorage.removeItem("tgd_client_base_url"),localStorage.removeItem("cms_token")}catch(o){console.warn("[TagadaPay] Failed to clear some localStorage keys:",o)}Ze(),_t(),as(),ls(),window.localStorage&&localStorage.clear(),window.sessionStorage&&sessionStorage.clear(),["tgd-funnel-session-id","tgd_draft","tgd_funnel_tracking","tgd_client_env","tgd_client_base_url","cms_token","tagadapay_session"].forEach(o=>Kr(o)),["tgd-draft","tgd_draft","tgd.draft","tgddraft"].forEach(o=>Kr(o)),document.cookie&&document.cookie.split(";").forEach(s=>{let a=s.split("=")[0].trim();if(!a)return;let c=window.location.hostname,l=c.split("."),u=["",c,"."+c];for(let m=1;m<l.length;m++){let h=l.slice(m).join(".");u.push(h),u.push("."+h)}let d=window.location.pathname.split("/").filter(m=>m),p=["/"],g="";d.forEach(m=>{g+="/"+m,p.push(g)}),u.forEach(m=>{p.forEach(h=>{let f="".concat(a,"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=").concat(h),b=m?"; domain=".concat(m):"";document.cookie=f+b,document.cookie=f+b+"; secure",document.cookie=f+b+"; SameSite=None; secure",document.cookie=f+b+"; SameSite=Lax",document.cookie=f+b+"; SameSite=Strict",document.cookie=f+b+"; secure; SameSite=None",document.cookie=f+b+"; secure; SameSite=Lax",document.cookie=f+b+"; secure; SameSite=Strict"})})}),setTimeout(()=>{window.localStorage&&localStorage.length>0&&localStorage.clear(),Kr("tgd_draft"),typeof window.stop=="function"&&window.stop(),window.location.replace(e.href)},10)}function _u(){if(sn||typeof window=="undefined"||typeof document=="undefined")return;let t=$e(),e=_e(),n=!cs(),r=!!(t.tagadaClientEnv||t.tagadaClientBaseUrl);if(!e&&!n&&!r)return;let i=document.createElement("div");i.id="tgd-preview-indicator",i.style.cssText='\n position: fixed;\n bottom: 16px;\n right: 16px;\n z-index: 999999;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;\n ';let o=document.createElement("div");o.style.cssText="\n background: ".concat(e?"#ff9500":"#007aff",";\n color: white;\n padding: 8px 12px;\n border-radius: 8px;\n font-size: 13px;\n font-weight: 600;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);\n cursor: pointer;\n transition: all 0.2s ease;\n display: flex;\n align-items: center;\n gap: 6px;\n "),o.innerHTML='\n <span style="font-size: 16px;">\u{1F50D}</span>\n <span>'.concat(e?"Preview Mode":"Dev Mode","</span>\n ");let s=document.createElement("div");s.style.cssText="\n position: absolute;\n bottom: calc(100% + 8px);\n right: 0;\n background: white;\n border: 1px solid #e5e5e5;\n border-radius: 8px;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\n padding: 12px;\n min-width: 250px;\n font-size: 12px;\n line-height: 1.5;\n display: none;\n ",s.style.paddingTop="20px";let a=document.createElement("div");a.style.cssText="\n position: absolute;\n bottom: 100%;\n left: 0;\n right: 0;\n height: 8px;\n display: none;\n ";let c='<div style="margin-bottom: 8px; font-weight: 600; color: #1d1d1f;">Current Environment</div>';c+='<div style="display: flex; flex-direction: column; gap: 6px;">',e&&(c+='\n <div style="display: flex; justify-content: space-between; color: #86868b;">\n <span>Draft Mode:</span>\n <span style="color: #ff9500; font-weight: 600;">ON</span>\n </div>\n '),n&&(c+='\n <div style="display: flex; justify-content: space-between; color: #86868b;">\n <span>Tracking:</span>\n <span style="color: #ff3b30; font-weight: 600;">DISABLED</span>\n </div>\n '),t.funnelEnv&&(c+='\n <div style="display: flex; justify-content: space-between; color: #86868b;">\n <span>Funnel Env:</span>\n <span style="color: #1d1d1f; font-weight: 600; font-family: monospace; font-size: 11px;">\n '.concat(t.funnelEnv,"\n </span>\n </div>\n ")),t.tagadaClientEnv&&(c+='\n <div style="display: flex; justify-content: space-between; color: #86868b;">\n <span>API Env:</span>\n <span style="color: #1d1d1f; font-weight: 600; font-family: monospace; font-size: 11px;">\n '.concat(t.tagadaClientEnv,"\n </span>\n </div>\n ")),t.tagadaClientBaseUrl&&(c+='\n <div style="color: #86868b;">\n <div style="margin-bottom: 4px;">API URL:</div>\n <div style="color: #1d1d1f; font-weight: 600; font-family: monospace; font-size: 10px; word-break: break-all; background: #f5f5f7; padding: 4px 6px; border-radius: 4px;">\n '.concat(t.tagadaClientBaseUrl,"\n </div>\n </div>\n ")),t.funnelId&&(c+='\n <div style="color: #86868b; margin-top: 4px; padding-top: 8px; border-top: 1px solid #e5e5e5;">\n <div style="margin-bottom: 4px;">Funnel ID:</div>\n <div style="color: #1d1d1f; font-family: monospace; font-size: 10px; word-break: break-all; background: #f5f5f7; padding: 4px 6px; border-radius: 4px;">\n '.concat(t.funnelId,"\n </div>\n </div>\n ")),c+="</div>",c+='\n <div style="margin-top: 12px; padding-top: 8px; border-top: 1px solid #e5e5e5; font-size: 11px; color: #86868b; text-align: center;">\n Add <code style="background: #f5f5f7; padding: 2px 4px; border-radius: 3px;">?forceReset=true</code> to reset\n </div>\n ',c+='\n <div style="margin-top: 12px; padding-top: 8px; border-top: 1px solid #e5e5e5;">\n <button id="tgd-leave-preview" style="\n background: #ff3b30;\n color: white;\n border: none;\n border-radius: 6px;\n padding: 10px 12px;\n font-size: 13px;\n font-weight: 600;\n cursor: pointer;\n transition: opacity 0.2s;\n width: 100%;\n ">\n \u{1F6AA} Leave Preview Mode\n </button>\n </div>\n ',s.innerHTML=c;let l=!1,u=()=>{l=!0,s.style.display="block",a.style.display="block"},d=()=>{l=!1,setTimeout(()=>{l||(s.style.display="none",a.style.display="none")},100)};o.addEventListener("mouseenter",u),o.addEventListener("mouseleave",d),a.addEventListener("mouseenter",u),a.addEventListener("mouseleave",d),s.addEventListener("mouseenter",u),s.addEventListener("mouseleave",d);let p=s.querySelector("#tgd-leave-preview");p&&(p.addEventListener("mouseenter",()=>{p.style.opacity="0.8"}),p.addEventListener("mouseleave",()=>{p.style.opacity="1"}),p.addEventListener("click",g=>{g.stopPropagation(),Au()})),i.appendChild(o),i.appendChild(a),i.appendChild(s),document.body.appendChild(i),tt=i,sn=!0}function Ou(){tt&&tt.parentNode&&(tt.parentNode.removeChild(tt),tt=null,sn=!1)}function xu(){return sn}var tt,sn,ds=Ie(()=>{"use strict";kt();Xe();on();tt=null,sn=!1});var ws={};Tt(ws,{FunnelClient:()=>Dt,TrackingProvider:()=>fs,findMethod:()=>Ss,getAssignedCheckoutOfferDefault:()=>Gu,getAssignedCheckoutOfferIds:()=>zu,getAssignedOrderBumpOfferIds:()=>qu,getAssignedPaymentFlowId:()=>nt,getAssignedPaymentInitiator:()=>ju,getAssignedPixels:()=>$u,getAssignedResources:()=>Ps,getAssignedScripts:()=>Fu,getAssignedStaticResources:()=>Uu,getAssignedStepConfig:()=>ee,getAssignedUpsellOfferIds:()=>Ku,getEnabledMethods:()=>hs,getExpressMethods:()=>ys,getExpressMethodsByProcessor:()=>ku,getLocalFunnelConfig:()=>bs,isMethodEnabled:()=>Nu,loadLocalFunnelConfig:()=>Lu});function hs(t){return t?Object.values(t).filter(e=>e.enabled):[]}function ys(t){return hs(t).filter(e=>e.express)}function ku(t){let e={};for(let n of ys(t)){let r=n.processorId||n.integrationId||n.provider;e[r]||(e[r]=[]),e[r].push(n)}return e}function Ss(t,e){if(t){for(let n of Object.values(t))if(n.method===e&&n.enabled)return n}}function Nu(t,e){return!!Ss(t,e)}function Du(){if(typeof window!="undefined"){if(window.__TGD_FUNNEL_ID__)return window.__TGD_FUNNEL_ID__;if(typeof document!="undefined"){let t=document.querySelector('meta[name="x-funnel-id"]');return(t==null?void 0:t.getAttribute("content"))||void 0}}}function an(){if(typeof window!="undefined"){if(window.__TGD_FUNNEL_VARIANT_ID__)return window.__TGD_FUNNEL_VARIANT_ID__;if(typeof document!="undefined"){let t=document.querySelector('meta[name="x-funnel-variant-id"]');return(t==null?void 0:t.getAttribute("content"))||void 0}}}function Nt(){if(typeof window!="undefined"){if(window.__TGD_FUNNEL_STEP_ID__)return window.__TGD_FUNNEL_STEP_ID__;if(typeof document!="undefined"){let t=document.querySelector('meta[name="x-funnel-step-id"]');return(t==null?void 0:t.getAttribute("content"))||void 0}}}function ps(t){if(!t||typeof t!="string")return;let e=t.trim();if(!e)return;let n=[()=>JSON.parse(e),()=>JSON.parse(decodeURIComponent(e)),()=>JSON.parse(decodeURIComponent(decodeURIComponent(e)))];for(let r of n)try{let i=r();if(i&&typeof i=="object")return i}catch(i){}typeof console!="undefined"&&console.warn("[SDK] Failed to parse stepConfig:",e.substring(0,100))}function Bu(){if(typeof window=="undefined")return!1;let t=window.location.hostname;return t==="localhost"||t==="127.0.0.1"||t.endsWith(".localhost")&&!t.includes(".cdn.")}async function Lu(){if(!Bu())return null;if(de!==void 0)return de;if(zr)return await new Promise(t=>setTimeout(t,100)),de!=null?de:null;zr=!0;try{console.log("\u{1F6E0}\uFE0F [SDK] Loading local funnel config from /config/funnel.local.json...");let t=await fetch("/config/funnel.local.json");if(!t.ok)return console.log("\u{1F6E0}\uFE0F [SDK] funnel.local.json not found (this is fine in production)"),de=null,null;let e=await t.json();return console.log("\u{1F6E0}\uFE0F [SDK] \u2705 Loaded local funnel config:",e),de=e,e}catch(t){return console.log("\u{1F6E0}\uFE0F [SDK] funnel.local.json not available:",t),de=null,null}finally{zr=!1}}function bs(){return de!=null?de:null}function Mu(t){let e=S(S({},t.staticResources),t.resources);return{payment:t.paymentFlowId?{paymentFlowId:t.paymentFlowId}:void 0,resources:Object.keys(e).length>0?e:void 0,scripts:t.scripts,pixels:t.pixels,orderBumps:t.orderBumps,upsellOffers:t.upsellOffers,checkoutOffers:t.checkoutOffers}}function ee(){if(typeof window=="undefined")return;let t=bs();if(t)return console.log("\u{1F6E0}\uFE0F [SDK] Using local funnel.local.json (overrides injected)"),Mu(t);let e=window.__TGD_STEP_CONFIG__;if(e){let n=ps(e);if(n)return n}if(typeof document!="undefined"){let n=document.querySelector('meta[name="x-step-config"]'),r=n==null?void 0:n.getAttribute("content");if(r){let i=ps(r);if(i)return i}}}function nt(){var n,r;let t=ee(),e=(n=t==null?void 0:t.paymentSetupConfig)==null?void 0:n.card;if(e!=null&&e.paymentFlowId)return e.paymentFlowId;if((r=t==null?void 0:t.payment)!=null&&r.paymentFlowId)return t.payment.paymentFlowId;if(typeof window!="undefined"){if(window.__TGD_PAYMENT_FLOW_ID__)return window.__TGD_PAYMENT_FLOW_ID__;if(typeof document!="undefined"){let i=document.querySelector('meta[name="x-payment-flow-id"]');return(i==null?void 0:i.getAttribute("content"))||void 0}}}function ju(){let t=ee();return t==null?void 0:t.paymentInitiator}function Ps(){let t=ee(),e=t==null?void 0:t.staticResources,n=t==null?void 0:t.resources;if(!(!e&&!n))return S(S({},e),n)}function Uu(){return Ps()}function Fu(t){let e=ee();if(!(e!=null&&e.scripts))return;let n=e.scripts.filter(r=>r.enabled);return t&&(n=n.filter(r=>r.position===t||!r.position&&t==="head-end")),n.length>0?n:void 0}function gs(t){let e="containerId"in t?"containerId":"pixelId",n=t[e];if(!n||!n.includes(";")&&!n.includes(","))return[t];let r=n.split(/[;,]/).map(i=>i.trim()).filter(i=>i.length>0);return r.length<=1?[t]:r.map(i=>_(S({},t),{[e]:i}))}function $u(){let t=ee(),e=t==null?void 0:t.pixels;if(!e||typeof e!="object")return;let n={};for(let[r,i]of Object.entries(e))i&&(Array.isArray(i)?n[r]=i.flatMap(o=>gs(o)):typeof i=="object"&&(n[r]=gs(i)));return Object.keys(n).length>0?n:void 0}function qu(){let t=ee();if(t!=null&&t.orderBumps&&t.orderBumps.mode==="custom")return t.orderBumps.enabledOfferIds}function Ku(){let t=ee();if(t!=null&&t.upsellOffers&&t.upsellOffers.mode==="custom")return t.upsellOffers.enabledUpsellIds}function zu(){let t=ee();if(t!=null&&t.checkoutOffers&&t.checkoutOffers.mode==="custom")return t.checkoutOffers.enabledOfferIds}function Gu(){var e;let t=ee();return(e=t==null?void 0:t.checkoutOffers)==null?void 0:e.defaultOfferId}var ms,fs,de,zr,Dt,rt=Ie(()=>{"use strict";Qt();jr();Ur();kt();on();ms=()=>Promise.resolve().then(()=>(ds(),us)).then(t=>t.injectPreviewModeIndicator()),fs=(o=>(o.FACEBOOK="facebook",o.TIKTOK="tiktok",o.SNAPCHAT="snapchat",o.PINTEREST="pinterest",o.GTM="gtm",o))(fs||{});zr=!1;Dt=class{constructor(e){this.eventDispatcher=new Je;this.isInitializing=!1;this.initializationAttempted=!1;this.config=e,this.resource=new en(e.apiClient),this.state={context:null,isLoading:!1,isInitialized:!1,isNavigating:!1,error:null,sessionError:null}}setConfig(e){this.config=S(S({},this.config),e)}subscribe(e){return this.eventDispatcher.subscribe(e)}getState(){return this.state}getDetectedSessionId(){var r;if((r=this.state.context)!=null&&r.sessionId)return this.state.context.sessionId;if(typeof window=="undefined")return null;let n=new URLSearchParams(window.location.search).get("funnelSessionId");return n||rn()||null}resetInitialization(){this.initializationAttempted=!1,this.isInitializing=!1,this.updateState({context:null,isInitialized:!1})}async autoInitialize(e,n,r){if(this.state.context)return this.state.context;if(this.isInitializing||this.initializationAttempted)return null;this.initializationAttempted=!0,this.isInitializing=!0,this.updateState({isLoading:!0,error:null});try{let i=this.getDetectedSessionId(),a=new URLSearchParams(typeof window!="undefined"?window.location.search:"").get("funnelId")||r,c=Du(),l=an(),u=Nt(),d=$e(),p=this.config.funnelId||c||a,g=this.config.stepId||u,m=typeof window!="undefined"?new URLSearchParams(window.location.search):null,h=m==null?void 0:m.get("funnelEnv");this.config.debugMode&&console.log("\u{1F680} [FunnelClient] Auto-initializing...",{existingSessionId:i,effectiveFunnelId:p,funnelVariantId:l,funnelStepId:g,draft:d.draft,funnelTracking:d.funnelTracking,funnelEnv:h,tagadaClientEnv:d.tagadaClientEnv,tagadaClientBaseUrl:d.tagadaClientBaseUrl,source:{funnelId:this.config.funnelId?"config":c?"injected":a?"url/prop":"none",stepId:this.config.stepId?"config":u?"injected":"none"}});let f=await this.resource.initialize({cmsSession:{customerId:e.customerId,sessionId:e.sessionId,storeId:n.id,accountId:n.accountId},funnelId:p,existingSessionId:i||void 0,currentUrl:typeof window!="undefined"?window.location.href:void 0,funnelVariantId:l,funnelStepId:g,draft:d.draft,funnelTracking:d.funnelTracking,funnelEnv:h||void 0,tagadaClientEnv:d.tagadaClientEnv,tagadaClientBaseUrl:d.tagadaClientBaseUrl,currency:d.currency,locale:d.locale});if(f.success&&f.context){let b=this.enrichContext(f.context);return this.handleSessionSuccess(b),ms(),b}else throw new Error(f.error||"Failed to initialize funnel session")}catch(i){let o=i instanceof Error?i:new Error(String(i));throw this.updateState({error:o,isLoading:!1}),this.config.debugMode&&console.error("\u274C [FunnelClient] Init failed:",o),o}finally{this.isInitializing=!1}}async initialize(e,n,r,i){this.updateState({isLoading:!0,error:null});try{let o=an(),s=Nt();this.config.debugMode&&(o&&console.log("\u{1F3AF} [FunnelClient] Detected A/B test variant:",o),s&&console.log("\u{1F3AF} [FunnelClient] Detected step ID:",s));let a=await this.resource.initialize({cmsSession:{customerId:e.customerId,sessionId:e.sessionId,storeId:n.id,accountId:n.accountId},funnelId:r,entryStepId:i,currentUrl:typeof window!="undefined"?window.location.href:void 0,funnelVariantId:o,funnelStepId:s});if(a.success&&a.context){let c=this.enrichContext(a.context);return this.handleSessionSuccess(c),ms(),c}else throw new Error(a.error||"Failed to initialize")}catch(o){let s=o instanceof Error?o:new Error(String(o));throw this.updateState({error:s,isLoading:!1}),s}}async navigate(e,n){var r,i,o,s,a,c;if(n!=null&&n.waitForSession&&!((r=this.state.context)!=null&&r.sessionId)){this.config.debugMode&&console.log("\u23F3 [FunnelClient] Waiting for session before navigation...");let l=5e3,u=Date.now();for(;!((i=this.state.context)!=null&&i.sessionId)&&Date.now()-u<l;)await new Promise(d=>setTimeout(d,100));(o=this.state.context)!=null&&o.sessionId&&this.config.debugMode&&console.log("\u2705 [FunnelClient] Session ready, proceeding with navigation")}if(!((s=this.state.context)!=null&&s.sessionId))throw new Error("No active session");this.updateState({isNavigating:!0,isLoading:!0});try{let l=an(),u=Nt(),d=typeof window!="undefined"?window.location.href:void 0;!u&&this.config.stepId&&(u=this.config.stepId,this.config.debugMode&&console.log("\u{1F50D} [FunnelClient.navigate] Using stepId from config (no injection):",u)),!l&&this.config.variantId&&(l=this.config.variantId,this.config.debugMode&&console.log("\u{1F50D} [FunnelClient.navigate] Using variantId from config (no injection):",l)),this.config.debugMode&&console.log("\u{1F50D} [FunnelClient.navigate] Sending to backend:",{sessionId:this.state.context.sessionId,currentUrl:d,funnelStepId:u||"(not found)",funnelVariantId:l||"(not found)",hasInjectedStepId:!!Nt(),hasInjectedVariantId:!!an(),usedConfigFallback:!Nt()&&!!this.config.stepId,customerTags:(n==null?void 0:n.customerTags)||"(none)",deviceId:(n==null?void 0:n.deviceId)||"(none)"});let p=(n==null?void 0:n.fireAndForget)||!1,g=await this.resource.navigate({sessionId:this.state.context.sessionId,event:e,currentUrl:d,funnelStepId:u,funnelVariantId:l,fireAndForget:p,customerTags:n==null?void 0:n.customerTags,deviceId:n==null?void 0:n.deviceId});if(!g.success||!g.result)throw new Error(g.error||"Navigation failed");let m=g.result;if(m.queued)return this.updateState({isNavigating:!1,isLoading:!1}),m.sessionId&&m.sessionId!==((a=this.state.context)==null?void 0:a.sessionId)&&(this.config.debugMode&&console.log("\u{1F525} [FunnelClient] Session ID updated: ".concat((c=this.state.context)==null?void 0:c.sessionId," \u2192 ").concat(m.sessionId)),this.state.context&&(this.state.context.sessionId=m.sessionId)),this.config.debugMode&&console.log("\u{1F525} [FunnelClient] Navigation queued (fire-and-forget mode)"),m;let h=(n==null?void 0:n.autoRedirect)!==void 0?n.autoRedirect:this.config.autoRedirect!==!1;return this.updateState({isNavigating:!1,isLoading:!1}),h&&(m!=null&&m.url)&&typeof window!="undefined"&&(this.config.debugMode&&console.log("\u{1F680} [FunnelClient] Auto-redirecting to:",m.url,"(skipped session refresh - next page will initialize)"),window.location.replace(m.url)),m}catch(l){let u=l instanceof Error?l:new Error(String(l));throw this.updateState({error:u,isNavigating:!1,isLoading:!1}),u}}async goToStep(e,n){return this.navigate({type:"direct_navigation",data:{targetStepId:e}},n)}async refreshSession(){var e;if((e=this.state.context)!=null&&e.sessionId)try{let n=await this.resource.getSession(this.state.context.sessionId);if(n.success&&n.context){let r=this.enrichContext(n.context);return this.updateState({context:r,sessionError:null}),r}}catch(n){this.updateState({sessionError:n instanceof Error?n:new Error(String(n))})}}async updateContext(e){var n;if(!((n=this.state.context)!=null&&n.sessionId))throw new Error("No active session");this.updateState({isLoading:!0});try{let r=await this.resource.updateContext(this.state.context.sessionId,{contextUpdates:e});if(r.success)await this.refreshSession();else throw new Error(r.error||"Failed to update context")}finally{this.updateState({isLoading:!1})}}async endSession(){var e;if((e=this.state.context)!=null&&e.sessionId)try{await this.resource.endSession(this.state.context.sessionId)}finally{this.state.context=null,this.updateState({context:null,isInitialized:!1})}}updateState(e){this.state=S(S({},this.state),e),this.eventDispatcher.notify(this.state)}handleSessionSuccess(e){$r(e.sessionId),this.updateState({context:e,isLoading:!1,isInitialized:!0,error:null,sessionError:null})}enrichContext(e){var s,a;if((((s=this.config.environment)==null?void 0:s.environment)||Et())!=="local")return e;let r=((a=this.config.pluginConfig)==null?void 0:a.staticResources)||{};if(Object.keys(r).length===0)return e;let i=e.static||{};return Object.keys(r).every(c=>i[c]===r[c])&&Object.keys(i).length===Object.keys(r).length?e:_(S({},e),{static:S(S({},r),i)})}}});var Ws=v(ge=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});ge.PathError=ge.TokenData=void 0;ge.parse=di;ge.compile=Cd;ge.match=Ed;ge.pathToRegexp=Gs;ge.stringify=_d;var li="/",ci=t=>t,Ks=new RegExp("^[$_\\p{ID_Start}]$","u"),ui=new RegExp("^[$\\u200c\\u200d\\p{ID_Continue}]$","u"),vd={"{":"{","}":"}","(":"(",")":")","[":"[","]":"]","+":"+","?":"?","!":"!"};function Id(t){return t.replace(/[{}()\[\]+?!:*\\]/g,"\\$&")}function Ce(t){return t.replace(/[.+*?^${}()[\]|/\\]/g,"\\$&")}var wn=class{constructor(e,n){this.tokens=e,this.originalPath=n}};ge.TokenData=wn;var ze=class extends TypeError{constructor(e,n){let r=e;n&&(r+=": ".concat(n)),r+="; visit https://git.new/pathToRegexpError for info",super(r),this.originalPath=n}};ge.PathError=ze;function di(t,e={}){let{encodePath:n=ci}=e,r=[...t],i=[],o=0,s=0;function a(){let l="";if(Ks.test(r[o]))do l+=r[o++];while(ui.test(r[o]));else if(r[o]==='"'){let u=o;for(;o++<r.length;){if(r[o]==='"'){o++,u=0;break}r[o]==="\\"&&o++,l+=r[o]}if(u)throw new ze("Unterminated quote at index ".concat(u),t)}if(!l)throw new ze("Missing parameter name at index ".concat(o),t);return l}for(;o<r.length;){let l=r[o],u=vd[l];u?i.push({type:u,index:o++,value:l}):l==="\\"?i.push({type:"escape",index:o++,value:r[o++]}):l===":"?i.push({type:"param",index:o++,value:a()}):l==="*"?i.push({type:"wildcard",index:o++,value:a()}):i.push({type:"char",index:o++,value:l})}i.push({type:"end",index:o,value:""});function c(l){let u=[];for(;;){let d=i[s++];if(d.type===l)break;if(d.type==="char"||d.type==="escape"){let p=d.value,g=i[s];for(;g.type==="char"||g.type==="escape";)p+=g.value,g=i[++s];u.push({type:"text",value:n(p)});continue}if(d.type==="param"||d.type==="wildcard"){u.push({type:d.type,name:d.value});continue}if(d.type==="{"){u.push({type:"group",tokens:c("}")});continue}throw new ze("Unexpected ".concat(d.type," at index ").concat(d.index,", expected ").concat(l),t)}return u}return new wn(c("end"),t)}function Cd(t,e={}){let{encode:n=encodeURIComponent,delimiter:r=li}=e,i=typeof t=="object"?t:di(t,e),o=zs(i.tokens,r,n);return function(a={}){let[c,...l]=o(a);if(l.length)throw new TypeError("Missing parameters: ".concat(l.join(", ")));return c}}function zs(t,e,n){let r=t.map(i=>Td(i,e,n));return i=>{let o=[""];for(let s of r){let[a,...c]=s(i);o[0]+=a,o.push(...c)}return o}}function Td(t,e,n){if(t.type==="text")return()=>[t.value];if(t.type==="group"){let i=zs(t.tokens,e,n);return o=>{let[s,...a]=i(o);return a.length?[""]:[s]}}let r=n||ci;return t.type==="wildcard"&&n!==!1?i=>{let o=i[t.name];if(o==null)return["",t.name];if(!Array.isArray(o)||o.length===0)throw new TypeError('Expected "'.concat(t.name,'" to be a non-empty array'));return[o.map((s,a)=>{if(typeof s!="string")throw new TypeError('Expected "'.concat(t.name,"/").concat(a,'" to be a string'));return r(s)}).join(e)]}:i=>{let o=i[t.name];if(o==null)return["",t.name];if(typeof o!="string")throw new TypeError('Expected "'.concat(t.name,'" to be a string'));return[r(o)]}}function Ed(t,e={}){let{decode:n=decodeURIComponent,delimiter:r=li}=e,{regexp:i,keys:o}=Gs(t,e),s=o.map(a=>n===!1?ci:a.type==="param"?n:c=>c.split(r).map(n));return function(c){let l=i.exec(c);if(!l)return!1;let u=l[0],d=Object.create(null);for(let p=1;p<l.length;p++){if(l[p]===void 0)continue;let g=o[p-1],m=s[p-1];d[g.name]=m(l[p])}return{path:u,params:d}}}function Gs(t,e={}){let{delimiter:n=li,end:r=!0,sensitive:i=!1,trailing:o=!0}=e,s=[],a=i?"":"i",c=[];for(let d of Hs(t,[])){let p=typeof d=="object"?d:di(d,e);for(let g of Pn(p.tokens,0,[]))c.push(Rd(g,n,s,p.originalPath))}let l="^(?:".concat(c.join("|"),")");return o&&(l+="(?:".concat(Ce(n),"$)?")),l+=r?"$":"(?=".concat(Ce(n),"|$)"),{regexp:new RegExp(l,a),keys:s}}function Hs(t,e){if(Array.isArray(t))for(let n of t)Hs(n,e);else e.push(t);return e}function*Pn(t,e,n){if(e===t.length)return yield n;let r=t[e];if(r.type==="group")for(let i of Pn(r.tokens,0,n.slice()))yield*Ye(Pn(t,e+1,i));else n.push(r);yield*Ye(Pn(t,e+1,n))}function Rd(t,e,n,r){let i="",o="",s=!0;for(let a of t){if(a.type==="text"){i+=Ce(a.value),o+=a.value,s||(s=a.value.includes(e));continue}if(a.type==="param"||a.type==="wildcard"){if(!s&&!o)throw new ze('Missing text before "'.concat(a.name,'" ').concat(a.type),r);a.type==="param"?i+="(".concat(Ad(e,s?"":o),"+)"):i+="([\\s\\S]+)",n.push(a),o="",s=!1;continue}}return i}function Ad(t,e){return e.length<2?t.length<2?"[^".concat(Ce(t+e),"]"):"(?:(?!".concat(Ce(t),")[^").concat(Ce(e),"])"):t.length<2?"(?:(?!".concat(Ce(e),")[^").concat(Ce(t),"])"):"(?:(?!".concat(Ce(e),"|").concat(Ce(t),")[\\s\\S])")}function Vs(t){let e="",n=0;function r(i){return Od(i)&&xd(t[n])?i:JSON.stringify(i)}for(;n<t.length;){let i=t[n++];if(i.type==="text"){e+=Id(i.value);continue}if(i.type==="group"){e+="{".concat(Vs(i.tokens),"}");continue}if(i.type==="param"){e+=":".concat(r(i.name));continue}if(i.type==="wildcard"){e+="*".concat(r(i.name));continue}throw new TypeError("Unknown token type: ".concat(i.type))}return e}function _d(t){return Vs(t.tokens)}function Od(t){let[e,...n]=t;return Ks.test(e)&&n.every(r=>ui.test(r))}function xd(t){return t&&t.type==="text"?!ui.test(t.value[0]):!0}});var Cn=v(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.WEB_ELEMENTS_VERSION=B.USER_AGENT_HEADER=B.USER_AGENT_CLIENT=B.MERGE_CONTENT_TYPE=B.DEFAULT_ELEMENTS_BASE_URL=B.DEFAULT_BASE_URL=B.DD_TOKEN=B.DD_GIT_SHA=B.CONTENT_TYPE_HEADER=B.CLIENT_USER_AGENT_HEADER=B.CLIENT_BASE_PATHS=B.CF_RAY_HEADER=B.BT_TRACE_ID_HEADER=B.BT_IDEMPOTENCY_KEY_HEADER=B.BT_EXPOSE_PROXY_RESPONSE_HEADER=B.BROWSER_LIST=B.API_KEY_HEADER=void 0;var Bd="1.7.2";B.WEB_ELEMENTS_VERSION=Bd;var Ld="BT-API-KEY";B.API_KEY_HEADER=Ld;var Md="bt-trace-id";B.BT_TRACE_ID_HEADER=Md;var jd="cf-ray";B.CF_RAY_HEADER=jd;var Ud="bt-idempotency-key";B.BT_IDEMPOTENCY_KEY_HEADER=Ud;var Fd="BT-EXPOSE-RAW-PROXY-RESPONSE";B.BT_EXPOSE_PROXY_RESPONSE_HEADER=Fd;var $d="Content-Type";B.CONTENT_TYPE_HEADER=$d;var qd="application/merge-patch+json";B.MERGE_CONTENT_TYPE=qd;var Kd="User-Agent";B.USER_AGENT_HEADER=Kd;var zd="BT-CLIENT-USER-AGENT";B.CLIENT_USER_AGENT_HEADER=zd;var Gd="BasisTheoryJS";B.USER_AGENT_CLIENT=Gd;var Hd="https://api.basistheory.com";B.DEFAULT_BASE_URL=Hd;var Vd="https://js.basistheory.com/hosted-elements";B.DEFAULT_ELEMENTS_BASE_URL=Vd;var Wd="pub5f53501515584007899577554c4aeda6";B.DD_TOKEN=Wd;var Yd="b862d8e634020f77c61023ffeee4f0e01c36e871";B.DD_GIT_SHA=Yd;var Jd={tokens:"tokens",tokenize:"tokenize",applications:"applications",applicationKeys:"applications",applicationTemplates:"application-templates",tenants:"tenants/self",logs:"logs",reactorFormulas:"reactor-formulas",reactors:"reactors",permissions:"permissions",proxies:"proxies",proxy:"proxy",sessions:"sessions",threeds:"3ds",tokenIntents:"token-intents"};B.CLIENT_BASE_PATHS=Jd;var Zd=[{browserName:"Firefox",browserUA:"Firefox"},{browserName:"SamsungBrowser",browserUA:"SamsungBrowser"},{browserName:"Opera",browserUA:"Opera"},{browserName:"Opera",browserUA:"OPR"},{browserName:"Microsoft Internet Explorer",browserUA:"Trident"},{browserName:"Microsoft Edge (Legacy)",browserUA:"Edge"},{browserName:"Microsoft Edge (Chromium)",browserUA:"Edg"},{browserName:"Google Chrome/Chromium",browserUA:"Chrome"},{browserName:"Safari",browserUA:"Safari"}];B.BROWSER_LIST=Zd});var Ai=v((YS,ja)=>{"use strict";function fa(t,e){return function(){return t.apply(e,arguments)}}var{toString:Xd}=Object.prototype,{getPrototypeOf:vi}=Object,{iterator:xn,toStringTag:ha}=Symbol,kn=(t=>e=>{let n=Xd.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),he=t=>(t=t.toLowerCase(),e=>kn(e)===t),Nn=t=>e=>typeof e===t,{isArray:St}=Array,ft=Nn("undefined");function Ft(t){return t!==null&&!ft(t)&&t.constructor!==null&&!ft(t.constructor)&&ne(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var ya=he("ArrayBuffer");function Qd(t){let e;return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&ya(t.buffer),e}var em=Nn("string"),ne=Nn("function"),Sa=Nn("number"),$t=t=>t!==null&&typeof t=="object",tm=t=>t===!0||t===!1,En=t=>{if(kn(t)!=="object")return!1;let e=vi(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(ha in t)&&!(xn in t)},nm=t=>{if(!$t(t)||Ft(t))return!1;try{return Object.keys(t).length===0&&Object.getPrototypeOf(t)===Object.prototype}catch(e){return!1}},rm=he("Date"),im=he("File"),om=he("Blob"),sm=he("FileList"),am=t=>$t(t)&&ne(t.pipe),lm=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||ne(t.append)&&((e=kn(t))==="formdata"||e==="object"&&ne(t.toString)&&t.toString()==="[object FormData]"))},cm=he("URLSearchParams"),[um,dm,mm,pm]=["ReadableStream","Request","Response","Headers"].map(he),gm=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function qt(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t=="undefined")return;let r,i;if(typeof t!="object"&&(t=[t]),St(t))for(r=0,i=t.length;r<i;r++)e.call(null,t[r],r,t);else{if(Ft(t))return;let o=n?Object.getOwnPropertyNames(t):Object.keys(t),s=o.length,a;for(r=0;r<s;r++)a=o[r],e.call(null,t[a],a,t)}}function ba(t,e){if(Ft(t))return null;e=e.toLowerCase();let n=Object.keys(t),r=n.length,i;for(;r-- >0;)if(i=n[r],e===i.toLowerCase())return i;return null}var Ge=typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:typeof window!="undefined"?window:global,Pa=t=>!ft(t)&&t!==Ge;function hi(){let{caseless:t,skipUndefined:e}=Pa(this)&&this||{},n={},r=(i,o)=>{let s=t&&ba(n,o)||o;En(n[s])&&En(i)?n[s]=hi(n[s],i):En(i)?n[s]=hi({},i):St(i)?n[s]=i.slice():(!e||!ft(i))&&(n[s]=i)};for(let i=0,o=arguments.length;i<o;i++)arguments[i]&&qt(arguments[i],r);return n}var fm=(t,e,n,{allOwnKeys:r}={})=>(qt(e,(i,o)=>{n&&ne(i)?t[o]=fa(i,n):t[o]=i},{allOwnKeys:r}),t),hm=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),ym=(t,e,n,r)=>{t.prototype=Object.create(e.prototype,r),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},Sm=(t,e,n,r)=>{let i,o,s,a={};if(e=e||{},t==null)return e;do{for(i=Object.getOwnPropertyNames(t),o=i.length;o-- >0;)s=i[o],(!r||r(s,t,e))&&!a[s]&&(e[s]=t[s],a[s]=!0);t=n!==!1&&vi(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},bm=(t,e,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=e.length;let r=t.indexOf(e,n);return r!==-1&&r===n},Pm=t=>{if(!t)return null;if(St(t))return t;let e=t.length;if(!Sa(e))return null;let n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},wm=(t=>e=>t&&e instanceof t)(typeof Uint8Array!="undefined"&&vi(Uint8Array)),vm=(t,e)=>{let r=(t&&t[xn]).call(t),i;for(;(i=r.next())&&!i.done;){let o=i.value;e.call(t,o[0],o[1])}},Im=(t,e)=>{let n,r=[];for(;(n=t.exec(e))!==null;)r.push(n);return r},Cm=he("HTMLFormElement"),Tm=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,i){return r.toUpperCase()+i}),Qs=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),Em=he("RegExp"),wa=(t,e)=>{let n=Object.getOwnPropertyDescriptors(t),r={};qt(n,(i,o)=>{let s;(s=e(i,o,t))!==!1&&(r[o]=s||i)}),Object.defineProperties(t,r)},Rm=t=>{wa(t,(e,n)=>{if(ne(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;let r=t[n];if(ne(r)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},Am=(t,e)=>{let n={},r=i=>{i.forEach(o=>{n[o]=!0})};return St(t)?r(t):r(String(t).split(e)),n},_m=()=>{},Om=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function xm(t){return!!(t&&ne(t.append)&&t[ha]==="FormData"&&t[xn])}var km=t=>{let e=new Array(10),n=(r,i)=>{if($t(r)){if(e.indexOf(r)>=0)return;if(Ft(r))return r;if(!("toJSON"in r)){e[i]=r;let o=St(r)?[]:{};return qt(r,(s,a)=>{let c=n(s,i+1);!ft(c)&&(o[a]=c)}),e[i]=void 0,o}}return r};return n(t,0)},Nm=he("AsyncFunction"),Dm=t=>t&&($t(t)||ne(t))&&ne(t.then)&&ne(t.catch),va=((t,e)=>t?setImmediate:e?((n,r)=>(Ge.addEventListener("message",({source:i,data:o})=>{i===Ge&&o===n&&r.length&&r.shift()()},!1),i=>{r.push(i),Ge.postMessage(n,"*")}))("axios@".concat(Math.random()),[]):n=>setTimeout(n))(typeof setImmediate=="function",ne(Ge.postMessage)),Bm=typeof queueMicrotask!="undefined"?queueMicrotask.bind(Ge):typeof process!="undefined"&&process.nextTick||va,Lm=t=>t!=null&&ne(t[xn]),y={isArray:St,isArrayBuffer:ya,isBuffer:Ft,isFormData:lm,isArrayBufferView:Qd,isString:em,isNumber:Sa,isBoolean:tm,isObject:$t,isPlainObject:En,isEmptyObject:nm,isReadableStream:um,isRequest:dm,isResponse:mm,isHeaders:pm,isUndefined:ft,isDate:rm,isFile:im,isBlob:om,isRegExp:Em,isFunction:ne,isStream:am,isURLSearchParams:cm,isTypedArray:wm,isFileList:sm,forEach:qt,merge:hi,extend:fm,trim:gm,stripBOM:hm,inherits:ym,toFlatObject:Sm,kindOf:kn,kindOfTest:he,endsWith:bm,toArray:Pm,forEachEntry:vm,matchAll:Im,isHTMLForm:Cm,hasOwnProperty:Qs,hasOwnProp:Qs,reduceDescriptors:wa,freezeMethods:Rm,toObjectSet:Am,toCamelCase:Tm,noop:_m,toFiniteNumber:Om,findKey:ba,global:Ge,isContextDefined:Pa,isSpecCompliantForm:xm,toJSONObject:km,isAsyncFn:Nm,isThenable:Dm,setImmediate:va,asap:Bm,isIterable:Lm};function O(t,e,n,r,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),r&&(this.request=r),i&&(this.response=i,this.status=i.status?i.status:null)}y.inherits(O,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:y.toJSONObject(this.config),code:this.code,status:this.status}}});var Ia=O.prototype,Ca={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{Ca[t]={value:t}});Object.defineProperties(O,Ca);Object.defineProperty(Ia,"isAxiosError",{value:!0});O.from=(t,e,n,r,i,o)=>{let s=Object.create(Ia);y.toFlatObject(t,s,function(u){return u!==Error.prototype},l=>l!=="isAxiosError");let a=t&&t.message?t.message:"Error",c=e==null&&t?t.code:e;return O.call(s,a,c,n,r,i),t&&s.cause==null&&Object.defineProperty(s,"cause",{value:t,configurable:!0}),s.name=t&&t.name||"Error",o&&Object.assign(s,o),s};var Mm=null;function yi(t){return y.isPlainObject(t)||y.isArray(t)}function Ta(t){return y.endsWith(t,"[]")?t.slice(0,-2):t}function ea(t,e,n){return t?t.concat(e).map(function(i,o){return i=Ta(i),!n&&o?"["+i+"]":i}).join(n?".":""):e}function jm(t){return y.isArray(t)&&!t.some(yi)}var Um=y.toFlatObject(y,{},null,function(e){return/^is[A-Z]/.test(e)});function Dn(t,e,n){if(!y.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,n=y.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,f){return!y.isUndefined(f[h])});let r=n.metaTokens,i=n.visitor||u,o=n.dots,s=n.indexes,c=(n.Blob||typeof Blob!="undefined"&&Blob)&&y.isSpecCompliantForm(e);if(!y.isFunction(i))throw new TypeError("visitor must be a function");function l(m){if(m===null)return"";if(y.isDate(m))return m.toISOString();if(y.isBoolean(m))return m.toString();if(!c&&y.isBlob(m))throw new O("Blob is not supported. Use a Buffer instead.");return y.isArrayBuffer(m)||y.isTypedArray(m)?c&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function u(m,h,f){let b=m;if(m&&!f&&typeof m=="object"){if(y.endsWith(h,"{}"))h=r?h:h.slice(0,-2),m=JSON.stringify(m);else if(y.isArray(m)&&jm(m)||(y.isFileList(m)||y.endsWith(h,"[]"))&&(b=y.toArray(m)))return h=Ta(h),b.forEach(function(w,I){!(y.isUndefined(w)||w===null)&&e.append(s===!0?ea([h],I,o):s===null?h:h+"[]",l(w))}),!1}return yi(m)?!0:(e.append(ea(f,h,o),l(m)),!1)}let d=[],p=Object.assign(Um,{defaultVisitor:u,convertValue:l,isVisitable:yi});function g(m,h){if(!y.isUndefined(m)){if(d.indexOf(m)!==-1)throw Error("Circular reference detected in "+h.join("."));d.push(m),y.forEach(m,function(b,P){(!(y.isUndefined(b)||b===null)&&i.call(e,b,y.isString(P)?P.trim():P,h,p))===!0&&g(b,h?h.concat(P):[P])}),d.pop()}}if(!y.isObject(t))throw new TypeError("data must be an object");return g(t),e}function ta(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(r){return e[r]})}function Ii(t,e){this._pairs=[],t&&Dn(t,this,e)}var Ea=Ii.prototype;Ea.append=function(e,n){this._pairs.push([e,n])};Ea.toString=function(e){let n=e?function(r){return e.call(this,r,ta)}:ta;return this._pairs.map(function(i){return n(i[0])+"="+n(i[1])},"").join("&")};function Fm(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Ra(t,e,n){if(!e)return t;let r=n&&n.encode||Fm;y.isFunction(n)&&(n={serialize:n});let i=n&&n.serialize,o;if(i?o=i(e,n):o=y.isURLSearchParams(e)?e.toString():new Ii(e,n).toString(r),o){let s=t.indexOf("#");s!==-1&&(t=t.slice(0,s)),t+=(t.indexOf("?")===-1?"?":"&")+o}return t}var Si=class{constructor(){this.handlers=[]}use(e,n,r){return this.handlers.push({fulfilled:e,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){y.forEach(this.handlers,function(r){r!==null&&e(r)})}},na=Si,Aa={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},$m=typeof URLSearchParams!="undefined"?URLSearchParams:Ii,qm=typeof FormData!="undefined"?FormData:null,Km=typeof Blob!="undefined"?Blob:null,zm={isBrowser:!0,classes:{URLSearchParams:$m,FormData:qm,Blob:Km},protocols:["http","https","file","blob","url","data"]},Ci=typeof window!="undefined"&&typeof document!="undefined",bi=typeof navigator=="object"&&navigator||void 0,Gm=Ci&&(!bi||["ReactNative","NativeScript","NS"].indexOf(bi.product)<0),Hm=typeof WorkerGlobalScope!="undefined"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Vm=Ci&&window.location.href||"http://localhost",Wm=Object.freeze({__proto__:null,hasBrowserEnv:Ci,hasStandardBrowserWebWorkerEnv:Hm,hasStandardBrowserEnv:Gm,navigator:bi,origin:Vm}),W=S(S({},Wm),zm);function Ym(t,e){return Dn(t,new W.classes.URLSearchParams,S({visitor:function(n,r,i,o){return W.isNode&&y.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},e))}function Jm(t){return y.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function Zm(t){let e={},n=Object.keys(t),r,i=n.length,o;for(r=0;r<i;r++)o=n[r],e[o]=t[o];return e}function _a(t){function e(n,r,i,o){let s=n[o++];if(s==="__proto__")return!0;let a=Number.isFinite(+s),c=o>=n.length;return s=!s&&y.isArray(i)?i.length:s,c?(y.hasOwnProp(i,s)?i[s]=[i[s],r]:i[s]=r,!a):((!i[s]||!y.isObject(i[s]))&&(i[s]=[]),e(n,r,i[s],o)&&y.isArray(i[s])&&(i[s]=Zm(i[s])),!a)}if(y.isFormData(t)&&y.isFunction(t.entries)){let n={};return y.forEachEntry(t,(r,i)=>{e(Jm(r),i,n,0)}),n}return null}function Xm(t,e,n){if(y.isString(t))try{return(e||JSON.parse)(t),y.trim(t)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(t)}var Ti={transitional:Aa,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){let r=n.getContentType()||"",i=r.indexOf("application/json")>-1,o=y.isObject(e);if(o&&y.isHTMLForm(e)&&(e=new FormData(e)),y.isFormData(e))return i?JSON.stringify(_a(e)):e;if(y.isArrayBuffer(e)||y.isBuffer(e)||y.isStream(e)||y.isFile(e)||y.isBlob(e)||y.isReadableStream(e))return e;if(y.isArrayBufferView(e))return e.buffer;if(y.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let a;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return Ym(e,this.formSerializer).toString();if((a=y.isFileList(e))||r.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return Dn(a?{"files[]":e}:e,c&&new c,this.formSerializer)}}return o||i?(n.setContentType("application/json",!1),Xm(e)):e}],transformResponse:[function(e){let n=this.transitional||Ti.transitional,r=n&&n.forcedJSONParsing,i=this.responseType==="json";if(y.isResponse(e)||y.isReadableStream(e))return e;if(e&&y.isString(e)&&(r&&!this.responseType||i)){let s=!(n&&n.silentJSONParsing)&&i;try{return JSON.parse(e,this.parseReviver)}catch(a){if(s)throw a.name==="SyntaxError"?O.from(a,O.ERR_BAD_RESPONSE,this,null,this.response):a}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:W.classes.FormData,Blob:W.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};y.forEach(["delete","get","head","post","put","patch"],t=>{Ti.headers[t]={}});var Ei=Ti,Qm=y.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),ep=t=>{let e={},n,r,i;return t&&t.split("\n").forEach(function(s){i=s.indexOf(":"),n=s.substring(0,i).trim().toLowerCase(),r=s.substring(i+1).trim(),!(!n||e[n]&&Qm[n])&&(n==="set-cookie"?e[n]?e[n].push(r):e[n]=[r]:e[n]=e[n]?e[n]+", "+r:r)}),e},ra=Symbol("internals");function Ut(t){return t&&String(t).trim().toLowerCase()}function Rn(t){return t===!1||t==null?t:y.isArray(t)?t.map(Rn):String(t)}function tp(t){let e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,r;for(;r=n.exec(t);)e[r[1]]=r[2];return e}var np=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function pi(t,e,n,r,i){if(y.isFunction(r))return r.call(this,e,n);if(i&&(e=n),!!y.isString(e)){if(y.isString(r))return e.indexOf(r)!==-1;if(y.isRegExp(r))return r.test(e)}}function rp(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,r)=>n.toUpperCase()+r)}function ip(t,e){let n=y.toCamelCase(" "+e);["get","set","has"].forEach(r=>{Object.defineProperty(t,r+n,{value:function(i,o,s){return this[r].call(this,e,i,o,s)},configurable:!0})})}var ht=class{constructor(e){e&&this.set(e)}set(e,n,r){let i=this;function o(a,c,l){let u=Ut(c);if(!u)throw new Error("header name must be a non-empty string");let d=y.findKey(i,u);(!d||i[d]===void 0||l===!0||l===void 0&&i[d]!==!1)&&(i[d||c]=Rn(a))}let s=(a,c)=>y.forEach(a,(l,u)=>o(l,u,c));if(y.isPlainObject(e)||e instanceof this.constructor)s(e,n);else if(y.isString(e)&&(e=e.trim())&&!np(e))s(ep(e),n);else if(y.isObject(e)&&y.isIterable(e)){let a={},c,l;for(let u of e){if(!y.isArray(u))throw TypeError("Object iterator must return a key-value pair");a[l=u[0]]=(c=a[l])?y.isArray(c)?[...c,u[1]]:[c,u[1]]:u[1]}s(a,n)}else e!=null&&o(n,e,r);return this}get(e,n){if(e=Ut(e),e){let r=y.findKey(this,e);if(r){let i=this[r];if(!n)return i;if(n===!0)return tp(i);if(y.isFunction(n))return n.call(this,i,r);if(y.isRegExp(n))return n.exec(i);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=Ut(e),e){let r=y.findKey(this,e);return!!(r&&this[r]!==void 0&&(!n||pi(this,this[r],r,n)))}return!1}delete(e,n){let r=this,i=!1;function o(s){if(s=Ut(s),s){let a=y.findKey(r,s);a&&(!n||pi(r,r[a],a,n))&&(delete r[a],i=!0)}}return y.isArray(e)?e.forEach(o):o(e),i}clear(e){let n=Object.keys(this),r=n.length,i=!1;for(;r--;){let o=n[r];(!e||pi(this,this[o],o,e,!0))&&(delete this[o],i=!0)}return i}normalize(e){let n=this,r={};return y.forEach(this,(i,o)=>{let s=y.findKey(r,o);if(s){n[s]=Rn(i),delete n[o];return}let a=e?rp(o):String(o).trim();a!==o&&delete n[o],n[a]=Rn(i),r[a]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){let n=Object.create(null);return y.forEach(this,(r,i)=>{r!=null&&r!==!1&&(n[i]=e&&y.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,n])=>e+": "+n).join("\n")}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...n){let r=new this(e);return n.forEach(i=>r.set(i)),r}static accessor(e){let r=(this[ra]=this[ra]={accessors:{}}).accessors,i=this.prototype;function o(s){let a=Ut(s);r[a]||(ip(i,s),r[a]=!0)}return y.isArray(e)?e.forEach(o):o(e),this}};ht.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);y.reduceDescriptors(ht.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(r){this[n]=r}}});y.freezeMethods(ht);var fe=ht;function gi(t,e){let n=this||Ei,r=e||n,i=fe.from(r.headers),o=r.data;return y.forEach(t,function(a){o=a.call(n,o,i.normalize(),e?e.status:void 0)}),i.normalize(),o}function Oa(t){return!!(t&&t.__CANCEL__)}function bt(t,e,n){O.call(this,t==null?"canceled":t,O.ERR_CANCELED,e,n),this.name="CanceledError"}y.inherits(bt,O,{__CANCEL__:!0});function xa(t,e,n){let r=n.config.validateStatus;!n.status||!r||r(n.status)?t(n):e(new O("Request failed with status code "+n.status,[O.ERR_BAD_REQUEST,O.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function op(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function sp(t,e){t=t||10;let n=new Array(t),r=new Array(t),i=0,o=0,s;return e=e!==void 0?e:1e3,function(c){let l=Date.now(),u=r[o];s||(s=l),n[i]=c,r[i]=l;let d=o,p=0;for(;d!==i;)p+=n[d++],d=d%t;if(i=(i+1)%t,i===o&&(o=(o+1)%t),l-s<e)return;let g=u&&l-u;return g?Math.round(p*1e3/g):void 0}}function ap(t,e){let n=0,r=1e3/e,i,o,s=(l,u=Date.now())=>{n=u,i=null,o&&(clearTimeout(o),o=null),t(...l)};return[(...l)=>{let u=Date.now(),d=u-n;d>=r?s(l,u):(i=l,o||(o=setTimeout(()=>{o=null,s(i)},r-d)))},()=>i&&s(i)]}var On=(t,e,n=3)=>{let r=0,i=sp(50,250);return ap(o=>{let s=o.loaded,a=o.lengthComputable?o.total:void 0,c=s-r,l=i(c),u=s<=a;r=s;let d={loaded:s,total:a,progress:a?s/a:void 0,bytes:c,rate:l||void 0,estimated:l&&a&&u?(a-s)/l:void 0,event:o,lengthComputable:a!=null,[e?"download":"upload"]:!0};t(d)},n)},ia=(t,e)=>{let n=t!=null;return[r=>e[0]({lengthComputable:n,total:t,loaded:r}),e[1]]},oa=t=>(...e)=>y.asap(()=>t(...e)),lp=W.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,W.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(W.origin),W.navigator&&/(msie|trident)/i.test(W.navigator.userAgent)):()=>!0,cp=W.hasStandardBrowserEnv?{write(t,e,n,r,i,o,s){if(typeof document=="undefined")return;let a=["".concat(t,"=").concat(encodeURIComponent(e))];y.isNumber(n)&&a.push("expires=".concat(new Date(n).toUTCString())),y.isString(r)&&a.push("path=".concat(r)),y.isString(i)&&a.push("domain=".concat(i)),o===!0&&a.push("secure"),y.isString(s)&&a.push("SameSite=".concat(s)),document.cookie=a.join("; ")},read(t){if(typeof document=="undefined")return null;let e=document.cookie.match(new RegExp("(?:^|; )"+t+"=([^;]*)"));return e?decodeURIComponent(e[1]):null},remove(t){this.write(t,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function up(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function dp(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function ka(t,e,n){let r=!up(e);return t&&(r||n==!1)?dp(t,e):e}var sa=t=>t instanceof fe?S({},t):t;function He(t,e){e=e||{};let n={};function r(l,u,d,p){return y.isPlainObject(l)&&y.isPlainObject(u)?y.merge.call({caseless:p},l,u):y.isPlainObject(u)?y.merge({},u):y.isArray(u)?u.slice():u}function i(l,u,d,p){if(y.isUndefined(u)){if(!y.isUndefined(l))return r(void 0,l,d,p)}else return r(l,u,d,p)}function o(l,u){if(!y.isUndefined(u))return r(void 0,u)}function s(l,u){if(y.isUndefined(u)){if(!y.isUndefined(l))return r(void 0,l)}else return r(void 0,u)}function a(l,u,d){if(d in e)return r(l,u);if(d in t)return r(void 0,l)}let c={url:o,method:o,data:o,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(l,u,d)=>i(sa(l),sa(u),d,!0)};return y.forEach(Object.keys(S(S({},t),e)),function(u){let d=c[u]||i,p=d(t[u],e[u],u);y.isUndefined(p)&&d!==a||(n[u]=p)}),n}var Na=t=>{let e=He({},t),{data:n,withXSRFToken:r,xsrfHeaderName:i,xsrfCookieName:o,headers:s,auth:a}=e;if(e.headers=s=fe.from(s),e.url=Ra(ka(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),a&&s.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):""))),y.isFormData(n)){if(W.hasStandardBrowserEnv||W.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(y.isFunction(n.getHeaders)){let c=n.getHeaders(),l=["content-type","content-length"];Object.entries(c).forEach(([u,d])=>{l.includes(u.toLowerCase())&&s.set(u,d)})}}if(W.hasStandardBrowserEnv&&(r&&y.isFunction(r)&&(r=r(e)),r||r!==!1&&lp(e.url))){let c=i&&o&&cp.read(o);c&&s.set(i,c)}return e},mp=typeof XMLHttpRequest!="undefined",pp=mp&&function(t){return new Promise(function(n,r){let i=Na(t),o=i.data,s=fe.from(i.headers).normalize(),{responseType:a,onUploadProgress:c,onDownloadProgress:l}=i,u,d,p,g,m;function h(){g&&g(),m&&m(),i.cancelToken&&i.cancelToken.unsubscribe(u),i.signal&&i.signal.removeEventListener("abort",u)}let f=new XMLHttpRequest;f.open(i.method.toUpperCase(),i.url,!0),f.timeout=i.timeout;function b(){if(!f)return;let w=fe.from("getAllResponseHeaders"in f&&f.getAllResponseHeaders()),E={data:!a||a==="text"||a==="json"?f.responseText:f.response,status:f.status,statusText:f.statusText,headers:w,config:t,request:f};xa(function(A){n(A),h()},function(A){r(A),h()},E),f=null}"onloadend"in f?f.onloadend=b:f.onreadystatechange=function(){!f||f.readyState!==4||f.status===0&&!(f.responseURL&&f.responseURL.indexOf("file:")===0)||setTimeout(b)},f.onabort=function(){f&&(r(new O("Request aborted",O.ECONNABORTED,t,f)),f=null)},f.onerror=function(I){let E=I&&I.message?I.message:"Network Error",R=new O(E,O.ERR_NETWORK,t,f);R.event=I||null,r(R),f=null},f.ontimeout=function(){let I=i.timeout?"timeout of "+i.timeout+"ms exceeded":"timeout exceeded",E=i.transitional||Aa;i.timeoutErrorMessage&&(I=i.timeoutErrorMessage),r(new O(I,E.clarifyTimeoutError?O.ETIMEDOUT:O.ECONNABORTED,t,f)),f=null},o===void 0&&s.setContentType(null),"setRequestHeader"in f&&y.forEach(s.toJSON(),function(I,E){f.setRequestHeader(E,I)}),y.isUndefined(i.withCredentials)||(f.withCredentials=!!i.withCredentials),a&&a!=="json"&&(f.responseType=i.responseType),l&&([p,m]=On(l,!0),f.addEventListener("progress",p)),c&&f.upload&&([d,g]=On(c),f.upload.addEventListener("progress",d),f.upload.addEventListener("loadend",g)),(i.cancelToken||i.signal)&&(u=w=>{f&&(r(!w||w.type?new bt(null,t,f):w),f.abort(),f=null)},i.cancelToken&&i.cancelToken.subscribe(u),i.signal&&(i.signal.aborted?u():i.signal.addEventListener("abort",u)));let P=op(i.url);if(P&&W.protocols.indexOf(P)===-1){r(new O("Unsupported protocol "+P+":",O.ERR_BAD_REQUEST,t));return}f.send(o||null)})},gp=(t,e)=>{let{length:n}=t=t?t.filter(Boolean):[];if(e||n){let r=new AbortController,i,o=function(l){if(!i){i=!0,a();let u=l instanceof Error?l:this.reason;r.abort(u instanceof O?u:new bt(u instanceof Error?u.message:u))}},s=e&&setTimeout(()=>{s=null,o(new O("timeout ".concat(e," of ms exceeded"),O.ETIMEDOUT))},e),a=()=>{t&&(s&&clearTimeout(s),s=null,t.forEach(l=>{l.unsubscribe?l.unsubscribe(o):l.removeEventListener("abort",o)}),t=null)};t.forEach(l=>l.addEventListener("abort",o));let{signal:c}=r;return c.unsubscribe=()=>y.asap(a),c}},fp=gp,hp=function*(t,e){let n=t.byteLength;if(!e||n<e){yield t;return}let r=0,i;for(;r<n;)i=r+e,yield t.slice(r,i),r=i},yp=function(t,e){return Mr(this,null,function*(){try{for(var n=es(Sp(t)),r,i,o;r=!(i=yield new Fe(n.next())).done;r=!1){let s=i.value;yield*Ye(hp(s,e))}}catch(i){o=[i]}finally{try{r&&(i=n.return)&&(yield new Fe(i.call(n)))}finally{if(o)throw o[0]}}})},Sp=function(t){return Mr(this,null,function*(){if(t[Symbol.asyncIterator]){yield*Ye(t);return}let e=t.getReader();try{for(;;){let{done:n,value:r}=yield new Fe(e.read());if(n)break;yield r}}finally{yield new Fe(e.cancel())}})},aa=(t,e,n,r)=>{let i=yp(t,e),o=0,s,a=c=>{s||(s=!0,r&&r(c))};return new ReadableStream({async pull(c){try{let{done:l,value:u}=await i.next();if(l){a(),c.close();return}let d=u.byteLength;if(n){let p=o+=d;n(p)}c.enqueue(new Uint8Array(u))}catch(l){throw a(l),l}},cancel(c){return a(c),i.return()}},{highWaterMark:2})},la=64*1024,{isFunction:Tn}=y,bp=(({Request:t,Response:e})=>({Request:t,Response:e}))(y.global),{ReadableStream:ca,TextEncoder:ua}=y.global,da=(t,...e)=>{try{return!!t(...e)}catch(n){return!1}},Pp=t=>{t=y.merge.call({skipUndefined:!0},bp,t);let{fetch:e,Request:n,Response:r}=t,i=e?Tn(e):typeof fetch=="function",o=Tn(n),s=Tn(r);if(!i)return!1;let a=i&&Tn(ca),c=i&&(typeof ua=="function"?(m=>h=>m.encode(h))(new ua):async m=>new Uint8Array(await new n(m).arrayBuffer())),l=o&&a&&da(()=>{let m=!1,h=new n(W.origin,{body:new ca,method:"POST",get duplex(){return m=!0,"half"}}).headers.has("Content-Type");return m&&!h}),u=s&&a&&da(()=>y.isReadableStream(new r("").body)),d={stream:u&&(m=>m.body)};i&&["text","arrayBuffer","blob","formData","stream"].forEach(m=>{!d[m]&&(d[m]=(h,f)=>{let b=h&&h[m];if(b)return b.call(h);throw new O("Response type '".concat(m,"' is not supported"),O.ERR_NOT_SUPPORT,f)})});let p=async m=>{if(m==null)return 0;if(y.isBlob(m))return m.size;if(y.isSpecCompliantForm(m))return(await new n(W.origin,{method:"POST",body:m}).arrayBuffer()).byteLength;if(y.isArrayBufferView(m)||y.isArrayBuffer(m))return m.byteLength;if(y.isURLSearchParams(m)&&(m=m+""),y.isString(m))return(await c(m)).byteLength},g=async(m,h)=>{let f=y.toFiniteNumber(m.getContentLength());return f==null?p(h):f};return async m=>{let{url:h,method:f,data:b,signal:P,cancelToken:w,timeout:I,onDownloadProgress:E,onUploadProgress:R,responseType:A,headers:C,withCredentials:M="same-origin",fetchOptions:k}=Na(m),N=e||fetch;A=A?(A+"").toLowerCase():"text";let x=fp([P,w&&w.toAbortSignal()],I),q=null,G=x&&x.unsubscribe&&(()=>{x.unsubscribe()}),V;try{if(R&&l&&f!=="get"&&f!=="head"&&(V=await g(C,b))!==0){let K=new n(h,{method:"POST",body:b,duplex:"half"}),Q;if(y.isFormData(b)&&(Q=K.headers.get("content-type"))&&C.setContentType(Q),K.body){let[ae,oe]=ia(V,On(oa(R)));b=aa(K.body,la,ae,oe)}}y.isString(M)||(M=M?"include":"omit");let U=o&&"credentials"in n.prototype,Me=_(S({},k),{signal:x,method:f.toUpperCase(),headers:C.normalize().toJSON(),body:b,duplex:"half",credentials:U?M:void 0});q=o&&new n(h,Me);let D=await(o?N(q,k):N(h,Me)),ve=u&&(A==="stream"||A==="response");if(u&&(E||ve&&G)){let K={};["status","statusText","headers"].forEach(ce=>{K[ce]=D[ce]});let Q=y.toFiniteNumber(D.headers.get("content-length")),[ae,oe]=E&&ia(Q,On(oa(E),!0))||[];D=new r(aa(D.body,la,ae,()=>{oe&&oe(),G&&G()}),K)}A=A||"text";let j=await d[y.findKey(d,A)||"text"](D,m);return!ve&&G&&G(),await new Promise((K,Q)=>{xa(K,Q,{data:j,headers:fe.from(D.headers),status:D.status,statusText:D.statusText,config:m,request:q})})}catch(U){throw G&&G(),U&&U.name==="TypeError"&&/Load failed|fetch/i.test(U.message)?Object.assign(new O("Network Error",O.ERR_NETWORK,m,q),{cause:U.cause||U}):O.from(U,U&&U.code,m,q)}}},wp=new Map,Da=t=>{let e=t&&t.env||{},{fetch:n,Request:r,Response:i}=e,o=[r,i,n],s=o.length,a=s,c,l,u=wp;for(;a--;)c=o[a],l=u.get(c),l===void 0&&u.set(c,l=a?new Map:Pp(e)),u=l;return l};Da();var Ri={http:Mm,xhr:pp,fetch:{get:Da}};y.forEach(Ri,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch(n){}Object.defineProperty(t,"adapterName",{value:e})}});var ma=t=>"- ".concat(t),vp=t=>y.isFunction(t)||t===null||t===!1;function Ip(t,e){t=y.isArray(t)?t:[t];let{length:n}=t,r,i,o={};for(let s=0;s<n;s++){r=t[s];let a;if(i=r,!vp(r)&&(i=Ri[(a=String(r)).toLowerCase()],i===void 0))throw new O("Unknown adapter '".concat(a,"'"));if(i&&(y.isFunction(i)||(i=i.get(e))))break;o[a||"#"+s]=i}if(!i){let s=Object.entries(o).map(([c,l])=>"adapter ".concat(c," ")+(l===!1?"is not supported by the environment":"is not available in the build")),a=n?s.length>1?"since :\n"+s.map(ma).join("\n"):" "+ma(s[0]):"as no adapter specified";throw new O("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return i}var Ba={getAdapter:Ip,adapters:Ri};function fi(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new bt(null,t)}function pa(t){return fi(t),t.headers=fe.from(t.headers),t.data=gi.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),Ba.getAdapter(t.adapter||Ei.adapter,t)(t).then(function(r){return fi(t),r.data=gi.call(t,t.transformResponse,r),r.headers=fe.from(r.headers),r},function(r){return Oa(r)||(fi(t),r&&r.response&&(r.response.data=gi.call(t,t.transformResponse,r.response),r.response.headers=fe.from(r.response.headers))),Promise.reject(r)})}var La="1.13.2",Bn={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{Bn[t]=function(r){return typeof r===t||"a"+(e<1?"n ":" ")+t}});var ga={};Bn.transitional=function(e,n,r){function i(o,s){return"[Axios v"+La+"] Transitional option '"+o+"'"+s+(r?". "+r:"")}return(o,s,a)=>{if(e===!1)throw new O(i(s," has been removed"+(n?" in "+n:"")),O.ERR_DEPRECATED);return n&&!ga[s]&&(ga[s]=!0,console.warn(i(s," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(o,s,a):!0}};Bn.spelling=function(e){return(n,r)=>(console.warn("".concat(r," is likely a misspelling of ").concat(e)),!0)};function Cp(t,e,n){if(typeof t!="object")throw new O("options must be an object",O.ERR_BAD_OPTION_VALUE);let r=Object.keys(t),i=r.length;for(;i-- >0;){let o=r[i],s=e[o];if(s){let a=t[o],c=a===void 0||s(a,o,t);if(c!==!0)throw new O("option "+o+" must be "+c,O.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new O("Unknown option "+o,O.ERR_BAD_OPTION)}}var An={assertOptions:Cp,validators:Bn},Te=An.validators,yt=class{constructor(e){this.defaults=e||{},this.interceptors={request:new na,response:new na}}async request(e,n){try{return await this._request(e,n)}catch(r){if(r instanceof Error){let i={};Error.captureStackTrace?Error.captureStackTrace(i):i=new Error;let o=i.stack?i.stack.replace(/^.+\n/,""):"";try{r.stack?o&&!String(r.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(r.stack+="\n"+o):r.stack=o}catch(s){}}throw r}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=He(this.defaults,n);let{transitional:r,paramsSerializer:i,headers:o}=n;r!==void 0&&An.assertOptions(r,{silentJSONParsing:Te.transitional(Te.boolean),forcedJSONParsing:Te.transitional(Te.boolean),clarifyTimeoutError:Te.transitional(Te.boolean)},!1),i!=null&&(y.isFunction(i)?n.paramsSerializer={serialize:i}:An.assertOptions(i,{encode:Te.function,serialize:Te.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),An.assertOptions(n,{baseUrl:Te.spelling("baseURL"),withXsrfToken:Te.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s=o&&y.merge(o.common,o[n.method]);o&&y.forEach(["delete","get","head","post","put","patch","common"],m=>{delete o[m]}),n.headers=fe.concat(s,o);let a=[],c=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(n)===!1||(c=c&&h.synchronous,a.unshift(h.fulfilled,h.rejected))});let l=[];this.interceptors.response.forEach(function(h){l.push(h.fulfilled,h.rejected)});let u,d=0,p;if(!c){let m=[pa.bind(this),void 0];for(m.unshift(...a),m.push(...l),p=m.length,u=Promise.resolve(n);d<p;)u=u.then(m[d++],m[d++]);return u}p=a.length;let g=n;for(;d<p;){let m=a[d++],h=a[d++];try{g=m(g)}catch(f){h.call(this,f);break}}try{u=pa.call(this,g)}catch(m){return Promise.reject(m)}for(d=0,p=l.length;d<p;)u=u.then(l[d++],l[d++]);return u}getUri(e){e=He(this.defaults,e);let n=ka(e.baseURL,e.url,e.allowAbsoluteUrls);return Ra(n,e.params,e.paramsSerializer)}};y.forEach(["delete","get","head","options"],function(e){yt.prototype[e]=function(n,r){return this.request(He(r||{},{method:e,url:n,data:(r||{}).data}))}});y.forEach(["post","put","patch"],function(e){function n(r){return function(o,s,a){return this.request(He(a||{},{method:e,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:s}))}}yt.prototype[e]=n(),yt.prototype[e+"Form"]=n(!0)});var _n=yt,Pi=class t{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});let r=this;this.promise.then(i=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](i);r._listeners=null}),this.promise.then=i=>{let o,s=new Promise(a=>{r.subscribe(a),o=a}).then(i);return s.cancel=function(){r.unsubscribe(o)},s},e(function(o,s,a){r.reason||(r.reason=new bt(o,s,a),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){let e=new AbortController,n=r=>{e.abort(r)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new t(function(i){e=i}),cancel:e}}},Tp=Pi;function Ep(t){return function(n){return t.apply(null,n)}}function Rp(t){return y.isObject(t)&&t.isAxiosError===!0}var wi={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(wi).forEach(([t,e])=>{wi[e]=t});var Ap=wi;function Ma(t){let e=new _n(t),n=fa(_n.prototype.request,e);return y.extend(n,_n.prototype,e,{allOwnKeys:!0}),y.extend(n,e,null,{allOwnKeys:!0}),n.create=function(i){return Ma(He(t,i))},n}var z=Ma(Ei);z.Axios=_n;z.CanceledError=bt;z.CancelToken=Tp;z.isCancel=Oa;z.VERSION=La;z.toFormData=Dn;z.AxiosError=O;z.Cancel=z.CanceledError;z.all=function(e){return Promise.all(e)};z.spread=Ep;z.isAxiosError=Rp;z.mergeConfig=He;z.AxiosHeaders=fe;z.formToJSON=t=>_a(y.isHTMLForm(t)?new FormData(t):t);z.getAdapter=Ba.getAdapter;z.HttpStatusCode=Ap;z.default=z;ja.exports=z});var xi=v((ZS,Oi)=>{"use strict";var Fa=t=>typeof t=="object"&&t!==null,$a=Symbol("skip"),Ua=t=>Fa(t)&&!(t instanceof RegExp)&&!(t instanceof Error)&&!(t instanceof Date),_i=(t,e,n,r=new WeakMap)=>{if(n=S({deep:!1,target:{}},n),r.has(t))return r.get(t);r.set(t,n.target);let{target:i}=n;delete n.target;let o=s=>s.map(a=>Ua(a)?_i(a,e,n,r):a);if(Array.isArray(t))return o(t);for(let[s,a]of Object.entries(t)){let c=e(s,a,t);if(c===$a)continue;let[l,u,{shouldRecurse:d=!0}={}]=c;l!=="__proto__"&&(n.deep&&d&&Ua(u)&&(u=Array.isArray(u)?o(u):_i(u,e,n,r)),i[l]=u)}return i};Oi.exports=(t,e,n)=>{if(!Fa(t))throw new TypeError("Expected an object, got `".concat(t,"` (").concat(typeof t,")"));return _i(t,e,n)};Oi.exports.mapObjectSkip=$a});var Ka=v((QS,ki)=>{"use strict";var _p=t=>{let e=!1,n=!1,r=!1;for(let i=0;i<t.length;i++){let o=t[i];e&&/[a-zA-Z]/.test(o)&&o.toUpperCase()===o?(t=t.slice(0,i)+"-"+t.slice(i),e=!1,r=n,n=!0,i++):n&&r&&/[a-zA-Z]/.test(o)&&o.toLowerCase()===o?(t=t.slice(0,i-1)+"-"+t.slice(i-1),r=n,n=!1,e=!0):(e=o.toLowerCase()===o&&o.toUpperCase()!==o,r=n,n=o.toUpperCase()===o&&o.toLowerCase()!==o)}return t},qa=(t,e)=>{if(!(typeof t=="string"||Array.isArray(t)))throw new TypeError("Expected the input to be `string | string[]`");e=Object.assign({pascalCase:!1},e);let n=i=>e.pascalCase?i.charAt(0).toUpperCase()+i.slice(1):i;return Array.isArray(t)?t=t.map(i=>i.trim()).filter(i=>i.length).join("-"):t=t.trim(),t.length===0?"":t.length===1?e.pascalCase?t.toUpperCase():t.toLowerCase():(t!==t.toLowerCase()&&(t=_p(t)),t=t.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(i,o)=>o.toUpperCase()).replace(/\d+(\w|$)/g,i=>i.toUpperCase()),n(t))};ki.exports=qa;ki.exports.default=qa});var Ga=v((eb,za)=>{"use strict";var Ni=class{constructor(e={}){if(!(e.maxSize&&e.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");this.maxSize=e.maxSize,this.cache=new Map,this.oldCache=new Map,this._size=0}_set(e,n){this.cache.set(e,n),this._size++,this._size>=this.maxSize&&(this._size=0,this.oldCache=this.cache,this.cache=new Map)}get(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.has(e)){let n=this.oldCache.get(e);return this.oldCache.delete(e),this._set(e,n),n}}set(e,n){return this.cache.has(e)?this.cache.set(e,n):this._set(e,n),this}has(e){return this.cache.has(e)||this.oldCache.has(e)}peek(e){if(this.cache.has(e))return this.cache.get(e);if(this.oldCache.has(e))return this.oldCache.get(e)}delete(e){let n=this.cache.delete(e);return n&&this._size--,this.oldCache.delete(e)||n}clear(){this.cache.clear(),this.oldCache.clear(),this._size=0}*keys(){for(let[e]of this)yield e}*values(){for(let[,e]of this)yield e}*[Symbol.iterator](){for(let e of this.cache)yield e;for(let e of this.oldCache){let[n]=e;this.cache.has(n)||(yield e)}}get size(){let e=0;for(let n of this.oldCache.keys())this.cache.has(n)||e++;return this._size+e}};za.exports=Ni});var Ja=v((tb,Ya)=>{"use strict";var Ha=xi(),Op=Ka(),xp=Ga(),kp=(t,e)=>t.some(n=>typeof n=="string"?n===e:(n.lastIndex=0,n.test(e))),Di=new xp({maxSize:1e5}),Va=t=>typeof t=="object"&&t!==null&&!(t instanceof RegExp)&&!(t instanceof Error)&&!(t instanceof Date),Wa=(t,e)=>{if(!Va(t))return t;e=S({deep:!1,pascalCase:!1},e);let{exclude:n,pascalCase:r,stopPaths:i,deep:o}=e,s=new Set(i),a=c=>(l,u)=>{if(o&&Va(u)){let d=c===void 0?l:"".concat(c,".").concat(l);s.has(d)||(u=Ha(u,a(d)))}if(!(n&&kp(n,l))){let d=r?"".concat(l,"_"):l;if(Di.has(d))l=Di.get(d);else{let p=Op(l,{pascalCase:r});l.length<100&&Di.set(d,p),l=p}}return[l,u]};return Ha(t,a(void 0))};Ya.exports=(t,e)=>Array.isArray(t)?Object.keys(t).map(n=>Wa(t[n],e)):Wa(t,e)});var Bi=v((rb,Za)=>{Za.exports=Bi()});var Ui={};Tt(Ui,{__addDisposableResource:()=>vl,__assign:()=>Ln,__asyncDelegator:()=>gl,__asyncGenerator:()=>pl,__asyncValues:()=>fl,__await:()=>Pt,__awaiter:()=>al,__classPrivateFieldGet:()=>bl,__classPrivateFieldIn:()=>wl,__classPrivateFieldSet:()=>Pl,__createBinding:()=>jn,__decorate:()=>el,__disposeResources:()=>Il,__esDecorate:()=>nl,__exportStar:()=>cl,__extends:()=>Xa,__generator:()=>ll,__importDefault:()=>Sl,__importStar:()=>yl,__makeTemplateObject:()=>hl,__metadata:()=>sl,__param:()=>tl,__propKey:()=>il,__read:()=>ji,__rest:()=>Qa,__rewriteRelativeImportExtension:()=>Cl,__runInitializers:()=>rl,__setFunctionName:()=>ol,__spread:()=>ul,__spreadArray:()=>ml,__spreadArrays:()=>dl,__values:()=>Mn,default:()=>Bp});function Xa(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");Li(t,e);function n(){this.constructor=t}t.prototype=e===null?Object.create(e):(n.prototype=e.prototype,new n)}function Qa(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]]);return n}function el(t,e,n,r){var i=arguments.length,o=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,n):r,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(t,e,n,r);else for(var a=t.length-1;a>=0;a--)(s=t[a])&&(o=(i<3?s(o):i>3?s(e,n,o):s(e,n))||o);return i>3&&o&&Object.defineProperty(e,n,o),o}function tl(t,e){return function(n,r){e(n,r,t)}}function nl(t,e,n,r,i,o){function s(b){if(b!==void 0&&typeof b!="function")throw new TypeError("Function expected");return b}for(var a=r.kind,c=a==="getter"?"get":a==="setter"?"set":"value",l=!e&&t?r.static?t:t.prototype:null,u=e||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,p=!1,g=n.length-1;g>=0;g--){var m={};for(var h in r)m[h]=h==="access"?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(b){if(p)throw new TypeError("Cannot add initializers after decoration has completed");o.push(s(b||null))};var f=(0,n[g])(a==="accessor"?{get:u.get,set:u.set}:u[c],m);if(a==="accessor"){if(f===void 0)continue;if(f===null||typeof f!="object")throw new TypeError("Object expected");(d=s(f.get))&&(u.get=d),(d=s(f.set))&&(u.set=d),(d=s(f.init))&&i.unshift(d)}else(d=s(f))&&(a==="field"?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),p=!0}function rl(t,e,n){for(var r=arguments.length>2,i=0;i<e.length;i++)n=r?e[i].call(t,n):e[i].call(t);return r?n:void 0}function il(t){return typeof t=="symbol"?t:"".concat(t)}function ol(t,e,n){return typeof e=="symbol"&&(e=e.description?"[".concat(e.description,"]"):""),Object.defineProperty(t,"name",{configurable:!0,value:n?"".concat(n," ",e):e})}function sl(t,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,e)}function al(t,e,n,r){function i(o){return o instanceof n?o:new n(function(s){s(o)})}return new(n||(n=Promise))(function(o,s){function a(u){try{l(r.next(u))}catch(d){s(d)}}function c(u){try{l(r.throw(u))}catch(d){s(d)}}function l(u){u.done?o(u.value):i(u.value).then(a,c)}l((r=r.apply(t,e||[])).next())})}function ll(t,e){var n={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},r,i,o,s=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function a(l){return function(u){return c([l,u])}}function c(l){if(r)throw new TypeError("Generator is already executing.");for(;s&&(s=0,l[0]&&(n=0)),n;)try{if(r=1,i&&(o=l[0]&2?i.return:l[0]?i.throw||((o=i.return)&&o.call(i),0):i.next)&&!(o=o.call(i,l[1])).done)return o;switch(i=0,o&&(l=[l[0]&2,o.value]),l[0]){case 0:case 1:o=l;break;case 4:return n.label++,{value:l[1],done:!1};case 5:n.label++,i=l[1],l=[0];continue;case 7:l=n.ops.pop(),n.trys.pop();continue;default:if(o=n.trys,!(o=o.length>0&&o[o.length-1])&&(l[0]===6||l[0]===2)){n=0;continue}if(l[0]===3&&(!o||l[1]>o[0]&&l[1]<o[3])){n.label=l[1];break}if(l[0]===6&&n.label<o[1]){n.label=o[1],o=l;break}if(o&&n.label<o[2]){n.label=o[2],n.ops.push(l);break}o[2]&&n.ops.pop(),n.trys.pop();continue}l=e.call(t,n)}catch(u){l=[6,u],i=0}finally{r=o=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}function cl(t,e){for(var n in t)n!=="default"&&!Object.prototype.hasOwnProperty.call(e,n)&&jn(e,t,n)}function Mn(t){var e=typeof Symbol=="function"&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function ji(t,e){var n=typeof Symbol=="function"&&t[Symbol.iterator];if(!n)return t;var r=n.call(t),i,o=[],s;try{for(;(e===void 0||e-- >0)&&!(i=r.next()).done;)o.push(i.value)}catch(a){s={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(s)throw s.error}}return o}function ul(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(ji(arguments[e]));return t}function dl(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;for(var r=Array(t),i=0,e=0;e<n;e++)for(var o=arguments[e],s=0,a=o.length;s<a;s++,i++)r[i]=o[s];return r}function ml(t,e,n){if(n||arguments.length===2)for(var r=0,i=e.length,o;r<i;r++)(o||!(r in e))&&(o||(o=Array.prototype.slice.call(e,0,r)),o[r]=e[r]);return t.concat(o||Array.prototype.slice.call(e))}function Pt(t){return this instanceof Pt?(this.v=t,this):new Pt(t)}function pl(t,e,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(t,e||[]),i,o=[];return i=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",s),i[Symbol.asyncIterator]=function(){return this},i;function s(g){return function(m){return Promise.resolve(m).then(g,d)}}function a(g,m){r[g]&&(i[g]=function(h){return new Promise(function(f,b){o.push([g,h,f,b])>1||c(g,h)})},m&&(i[g]=m(i[g])))}function c(g,m){try{l(r[g](m))}catch(h){p(o[0][3],h)}}function l(g){g.value instanceof Pt?Promise.resolve(g.value.v).then(u,d):p(o[0][2],g)}function u(g){c("next",g)}function d(g){c("throw",g)}function p(g,m){g(m),o.shift(),o.length&&c(o[0][0],o[0][1])}}function gl(t){var e,n;return e={},r("next"),r("throw",function(i){throw i}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(i,o){e[i]=t[i]?function(s){return(n=!n)?{value:Pt(t[i](s)),done:!1}:o?o(s):s}:o}}function fl(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],n;return e?e.call(t):(t=typeof Mn=="function"?Mn(t):t[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(o){n[o]=t[o]&&function(s){return new Promise(function(a,c){s=t[o](s),i(a,c,s.done,s.value)})}}function i(o,s,a,c){Promise.resolve(c).then(function(l){o({value:l,done:a})},s)}}function hl(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function yl(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n=Mi(t),r=0;r<n.length;r++)n[r]!=="default"&&jn(e,t,n[r]);return Np(e,t),e}function Sl(t){return t&&t.__esModule?t:{default:t}}function bl(t,e,n,r){if(n==="a"&&!r)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!r:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?r:n==="a"?r.call(t):r?r.value:e.get(t)}function Pl(t,e,n,r,i){if(r==="m")throw new TypeError("Private method is not writable");if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return r==="a"?i.call(t,n):i?i.value=n:e.set(t,n),n}function wl(t,e){if(e===null||typeof e!="object"&&typeof e!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof t=="function"?e===t:t.has(e)}function vl(t,e,n){if(e!=null){if(typeof e!="object"&&typeof e!="function")throw new TypeError("Object expected.");var r,i;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=e[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=e[Symbol.dispose],n&&(i=r)}if(typeof r!="function")throw new TypeError("Object not disposable.");i&&(r=function(){try{i.call(this)}catch(o){return Promise.reject(o)}}),t.stack.push({value:e,dispose:r,async:n})}else n&&t.stack.push({async:!0});return e}function Il(t){function e(o){t.error=t.hasError?new Dp(o,t.error,"An error was suppressed during disposal."):o,t.hasError=!0}var n,r=0;function i(){for(;n=t.stack.pop();)try{if(!n.async&&r===1)return r=0,t.stack.push(n),Promise.resolve().then(i);if(n.dispose){var o=n.dispose.call(n.value);if(n.async)return r|=2,Promise.resolve(o).then(i,function(s){return e(s),i()})}else r|=1}catch(s){e(s)}if(r===1)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}return i()}function Cl(t,e){return typeof t=="string"&&/^\.\.?\//.test(t)?t.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(n,r,i,o,s){return r?e?".jsx":".js":i&&(!o||!s)?n:i+o+"."+s.toLowerCase()+"js"}):t}var Li,Ln,jn,Np,Mi,Dp,Bp,Fi=Ie(()=>{Li=function(t,e){return Li=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(n[i]=r[i])},Li(t,e)};Ln=function(){return Ln=Object.assign||function(e){for(var n,r=1,i=arguments.length;r<i;r++){n=arguments[r];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},Ln.apply(this,arguments)};jn=Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]};Np=Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e},Mi=function(t){return Mi=Object.getOwnPropertyNames||function(e){var n=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(n[n.length]=r);return n},Mi(t)};Dp=typeof SuppressedError=="function"?SuppressedError:function(t,e,n){var r=new Error(n);return r.name="SuppressedError",r.error=t,r.suppressed=e,r};Bp={__extends:Xa,__assign:Ln,__rest:Qa,__decorate:el,__param:tl,__esDecorate:nl,__runInitializers:rl,__propKey:il,__setFunctionName:ol,__metadata:sl,__awaiter:al,__generator:ll,__createBinding:jn,__exportStar:cl,__values:Mn,__read:ji,__spread:ul,__spreadArrays:dl,__spreadArray:ml,__await:Pt,__asyncGenerator:pl,__asyncDelegator:gl,__asyncValues:fl,__makeTemplateObject:hl,__importStar:yl,__importDefault:Sl,__classPrivateFieldGet:bl,__classPrivateFieldSet:Pl,__classPrivateFieldIn:wl,__addDisposableResource:vl,__disposeResources:Il,__rewriteRelativeImportExtension:Cl}});var Tl=v(wt=>{"use strict";Object.defineProperty(wt,"__esModule",{value:!0});wt.lowerCase=wt.localeLowerCase=void 0;var Lp={tr:{regexp:/\u0130|\u0049|\u0049\u0307/g,map:{\u0130:"i",I:"\u0131",I\u0307:"i"}},az:{regexp:/\u0130/g,map:{\u0130:"i",I:"\u0131",I\u0307:"i"}},lt:{regexp:/\u0049|\u004A|\u012E|\u00CC|\u00CD|\u0128/g,map:{I:"i\u0307",J:"j\u0307",\u012E:"\u012F\u0307",\u00CC:"i\u0307\u0300",\u00CD:"i\u0307\u0301",\u0128:"i\u0307\u0303"}}};function Mp(t,e){var n=Lp[e.toLowerCase()];return $i(n?t.replace(n.regexp,function(r){return n.map[r]}):t)}wt.localeLowerCase=Mp;function $i(t){return t.toLowerCase()}wt.lowerCase=$i});var Rl=v(Un=>{"use strict";Object.defineProperty(Un,"__esModule",{value:!0});Un.noCase=void 0;var jp=Tl(),Up=[/([a-z0-9])([A-Z])/g,/([A-Z])([A-Z][a-z])/g],Fp=/[^A-Z0-9]+/gi;function $p(t,e){e===void 0&&(e={});for(var n=e.splitRegexp,r=n===void 0?Up:n,i=e.stripRegexp,o=i===void 0?Fp:i,s=e.transform,a=s===void 0?jp.lowerCase:s,c=e.delimiter,l=c===void 0?" ":c,u=El(El(t,r,"$1\0$2"),o,"\0"),d=0,p=u.length;u.charAt(d)==="\0";)d++;for(;u.charAt(p-1)==="\0";)p--;return u.slice(d,p).split("\0").map(a).join(l)}Un.noCase=$p;function El(t,e,n){return e instanceof RegExp?t.replace(e,n):e.reduce(function(r,i){return r.replace(i,n)},t)}});var Al=v(Fn=>{"use strict";Object.defineProperty(Fn,"__esModule",{value:!0});Fn.dotCase=void 0;var qp=(Fi(),Lr(Ui)),Kp=Rl();function zp(t,e){return e===void 0&&(e={}),Kp.noCase(t,qp.__assign({delimiter:"."},e))}Fn.dotCase=zp});var _l=v($n=>{"use strict";Object.defineProperty($n,"__esModule",{value:!0});$n.snakeCase=void 0;var Gp=(Fi(),Lr(Ui)),Hp=Al();function Vp(t,e){return e===void 0&&(e={}),Hp.dotCase(t,Gp.__assign({delimiter:"_"},e))}$n.snakeCase=Vp});var xl=v((lb,Ol)=>{Ol.exports=Zp;var Wp=/\s/,Yp=/(_|-|\.|:)/,Jp=/([a-z][A-Z]|[A-Z][a-z])/;function Zp(t){return Wp.test(t)?t.toLowerCase():Yp.test(t)?(Qp(t)||t).toLowerCase():Jp.test(t)?tg(t).toLowerCase():t.toLowerCase()}var Xp=/[\W_]+(.|$)/g;function Qp(t){return t.replace(Xp,function(e,n){return n?" "+n:""})}var eg=/(.)([A-Z]+)/g;function tg(t){return t.replace(eg,function(e,n,r){return n+" "+r.toLowerCase().split("").join(" ")})}});var Nl=v((cb,kl)=>{var ng=xl();kl.exports=rg;function rg(t){return ng(t).replace(/[\W_]+(.|$)/g,function(e,n){return n?" "+n:""}).trim()}});var Bl=v((ub,Dl)=>{var ig=Nl();Dl.exports=og;function og(t){return ig(t).replace(/\s/g,"_")}});var Ml=v((db,Ll)=>{"use strict";var sg=xi(),ag=Bl();Ll.exports=function(t,e){return e=Object.assign({deep:!0,exclude:[]},e),sg(t,function(n,r){return[lg(e.exclude,n)?n:ag(n),r]},e)};function lg(t,e){return t.some(function(n){return typeof n=="string"?n===e:n.test(e)})}});var Ki=v(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.BasisTheoryApiError=void 0;function cg(t){function e(){var n=Reflect.construct(t,Array.from(arguments));return Object.setPrototypeOf(n,Object.getPrototypeOf(this)),n}return e.prototype=Object.create(t.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t,e}var qi=class t extends cg(Error){constructor(e,n,r,i){super(e),this.status=n,this.data=r,this._debug=i,this.name="BasisTheoryApiError",Object.setPrototypeOf(this,t.prototype)}};qn.BasisTheoryApiError=qi});var zn=v(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.logger=void 0;var jl=Cn(),ug=(()=>{let t="pubb96b84a13912504f4354f2d794ea4fab",e=!0,n=async(i,o,s={})=>{if(e)try{var a,c,l,u,d,p;let g;jl.DEFAULT_BASE_URL.includes("localhost")?g="local":jl.DEFAULT_BASE_URL.includes("dev")?g="dev":g="prod";let m=S({level:o,message:i,service:"js-sdk",env:g,referrer:(a=document)===null||a===void 0?void 0:a.referrer,origin:(c=window)===null||c===void 0||(l=c.location)===null||l===void 0?void 0:l.origin,url:(u=window)===null||u===void 0||(d=u.location)===null||d===void 0?void 0:d.href,userAgent:(p=navigator)===null||p===void 0?void 0:p.userAgent},s);await fetch("https://http-intake.logs.datadoghq.com/v1/input/".concat(t),{method:"POST",body:JSON.stringify(m),headers:{"Content-Type":"application/json"}})}catch(g){console.warn("There was an error sending telemetry.")}};return{setTelemetryEnabled:i=>{e=i},log:{error:(i,o={})=>n(i,"error",o),info:(i,o={})=>n(i,"info",o),warn:(i,o={})=>n(i,"warn",o)}}})();Kn.logger=ug});var vt=v(T=>{"use strict";Object.defineProperty(T,"__esModule",{value:!0});T.transformTokenResponseCamelCase=T.transformTokenRequestSnakeCase=T.transformResponseCamelCase=T.transformRequestSnakeCase=T.transformReactorResponseCamelCase=T.transformReactorRequestSnakeCase=T.transformProxyResponseCamelCase=T.transformProxyRequestSnakeCase=T.proxyRaw=T.getRuntime=T.getQueryParams=T.getOSVersion=T.getBrowser=T.errorInterceptorDebug=T.errorInterceptor=T.debugTransform=T.dataExtractor=T.dataAndHeadersExtractor=T.createRequestConfig=T.concatResponseTransformerWithDefault=T.concatRequestTransformerWithDefault=T.buildUserAgentString=T.buildClientUserAgentString=T.assertInit=void 0;var Fl=Gn(Ai()),Ee=Gn(Ja()),Ul=Gn(Bi()),dg=_l(),Kt=Gn(Ml()),mg=Ki(),ye=Cn(),pg=zn();function Gn(t){return t&&t.__esModule?t:{default:t}}var gg=t=>{if(t==null)throw new Error("BasisTheory has not yet been properly initialized.");return t};T.assertInit=gg;var fg=t=>{if(typeof t!="undefined")return(0,Kt.default)(t,{deep:!0})};T.transformRequestSnakeCase=fg;var hg=t=>t;T.proxyRaw=hg;var yg=t=>{if(typeof t!="undefined")return S(S({},(0,Kt.default)(t,{deep:!0})),t.configuration!==void 0?{configuration:t.configuration}:{})};T.transformReactorRequestSnakeCase=yg;var Sg=t=>{if(typeof t!="undefined")return S(S({},(0,Kt.default)(t,{deep:!0})),t.configuration!==void 0?{configuration:t.configuration}:{})};T.transformProxyRequestSnakeCase=Sg;var bg=t=>{if(typeof t!="undefined")return S(S(S({},(0,Kt.default)(t,{deep:!0})),t.data!==void 0?{data:t.data}:{}),t.metadata!==void 0?{metadata:t.metadata}:{})};T.transformTokenRequestSnakeCase=bg;var Hi=t=>t&&(t==null?void 0:t.pagination)!==void 0&&(t==null?void 0:t.data)!==void 0,Pg=t=>{if(typeof t!="undefined")return Hi(t)?{data:t.data.map(r=>S(S(S({},(0,Ee.default)(r,{deep:!0})),r.data!==void 0?{data:r.data}:{}),r.metadata!==void 0?{metadata:r.metadata}:{})),pagination:(0,Ee.default)(t.pagination,{deep:!0})}:S(S(S({},(0,Ee.default)(t,{deep:!0})),t.data!==void 0?{data:t.data}:{}),t.metadata!==void 0?{metadata:t.metadata}:{})};T.transformTokenResponseCamelCase=Pg;var wg=t=>{if(typeof t!="undefined")return Hi(t)?{data:t.data.map(r=>S(S({},(0,Ee.default)(r,{deep:!0})),r.configuration!==void 0?{configuration:r.configuration}:{})),pagination:(0,Ee.default)(t.pagination,{deep:!0})}:S(S({},(0,Ee.default)(t,{deep:!0})),t.configuration!==void 0?{configuration:t.configuration}:{})};T.transformReactorResponseCamelCase=wg;var vg=t=>{if(typeof t!="undefined")return Hi(t)?{data:t.data.map(r=>S(S({},(0,Ee.default)(r,{deep:!0})),r.configuration!==void 0?{configuration:r.configuration}:{})),pagination:(0,Ee.default)(t.pagination,{deep:!0})}:S(S({},(0,Ee.default)(t,{deep:!0})),t.configuration!==void 0?{configuration:t.configuration}:{})};T.transformProxyResponseCamelCase=vg;var Ig=t=>{if(typeof t!="undefined")return(0,Ee.default)(t,{deep:!0})};T.transformResponseCamelCase=Ig;var Cg=t=>t==null?void 0:t.data;T.dataExtractor=Cg;var Tg=t=>({data:t==null?void 0:t.data,headers:t==null?void 0:t.headers});T.dataAndHeadersExtractor=Tg;var zi=t=>[t,...Fl.default.defaults.transformRequest];T.concatRequestTransformerWithDefault=zi;var Gi=t=>[...Fl.default.defaults.transformResponse,t];T.concatResponseTransformerWithDefault=Gi;var Eg=(t,e)=>{if(!t)return e?S(S({},e.transformRequest!==void 0?{transformRequest:zi(e.transformRequest)}:{}),e.transformResponse!==void 0?{transformResponse:Gi(e.transformResponse)}:{}):void 0;let{apiKey:n,correlationId:r,idempotencyKey:i,query:o,headers:s}=t,a=n?{[ye.API_KEY_HEADER]:n}:{},c=r?{[ye.BT_TRACE_ID_HEADER]:r}:{},l=i?{[ye.BT_IDEMPOTENCY_KEY_HEADER]:i}:{};return S(S(S({headers:S(S(S(S({},a),c),l),typeof s!="undefined"&&S({},s))},typeof o!="undefined"&&{params:o}),(e==null?void 0:e.transformRequest)!==void 0?{transformRequest:zi(e.transformRequest)}:{}),(e==null?void 0:e.transformResponse)!==void 0?{transformResponse:Gi(e.transformResponse)}:{})};T.createRequestConfig=Eg;var $l=(t,e)=>{var n,r,i,o,s,a,c,l,u,d,p,g,m,h,f;let b=(n=t==null||(r=t.response)===null||r===void 0?void 0:r.status)!==null&&n!==void 0?n:-1,P=t==null||(i=t.response)===null||i===void 0?void 0:i.data,w;if(e){var I,E,R,A;w={cfRay:t==null||(I=t.response)===null||I===void 0||(E=I.headers)===null||E===void 0?void 0:E[ye.CF_RAY_HEADER],btTraceId:t==null||(R=t.response)===null||R===void 0||(A=R.headers)===null||A===void 0?void 0:A[ye.BT_TRACE_ID_HEADER]}}let C=b>-1&&b<499?"warn":"error";throw pg.logger.log[C]("Error when making ".concat(t==null||(o=t.config)===null||o===void 0||(s=o.method)===null||s===void 0?void 0:s.toUpperCase()," request to ").concat(t==null||(a=t.config)===null||a===void 0?void 0:a.baseURL," from the JS SDK"),{apiStatus:b,logType:"axiosError",logOrigin:"axiosErrorInterceptor",requestDetails:{url:t==null||(c=t.config)===null||c===void 0?void 0:c.baseURL,method:t==null||(l=t.config)===null||l===void 0||(u=l.method)===null||u===void 0?void 0:u.toUpperCase(),btUserAgent:t==null||(d=t.config)===null||d===void 0||(p=d.headers)===null||p===void 0?void 0:p[ye.CLIENT_USER_AGENT_HEADER]},errorDetails:{code:t==null?void 0:t.code,name:t==null?void 0:t.name,stack:t==null?void 0:t.stack,headers:t==null||(g=t.response)===null||g===void 0?void 0:g.headers,message:t==null?void 0:t.message,status:t==null||(m=t.response)===null||m===void 0?void 0:m.status,statusText:t==null||(h=t.response)===null||h===void 0?void 0:h.statusText,data:t==null||(f=t.response)===null||f===void 0?void 0:f.data}}),new mg.BasisTheoryApiError(t.message,b,P,w)},Rg=t=>$l(t,!1);T.errorInterceptor=Rg;var Ag=t=>$l(t,!0);T.errorInterceptorDebug=Ag;var _g=(t={})=>{let e=Object.keys(t);if(e.length){let n=new URLSearchParams,r=(i,o,s=!1)=>{let a=typeof o,c=s?i:(0,dg.snakeCase)(i);(o===null||["boolean","number","string"].includes(a))&&n.append(c,o)};return e.forEach(i=>{let o=t[i];Array.isArray(o)?o.forEach(s=>{r(String(i),s)}):o&&typeof o=="object"?Object.keys(o).forEach(a=>{r("".concat(String(i),".").concat(a),o[a],!0)}):r(String(i),o)}),"?".concat(n.toString())}return""};T.getQueryParams=_g;var Og=t=>"(".concat(t.name||"","; ").concat(t.version||"","; ").concat(t.url||"",")"),xg=t=>{let e="".concat(ye.USER_AGENT_CLIENT,"/unknown");return t&&Object.keys(t||{}).length&&(e+=" ".concat(Og(t))),e};T.buildUserAgentString=xg;var ql=()=>{let{userAgent:t}=window.navigator,e="unknown",n=ye.BROWSER_LIST.find(r=>t.includes(r.browserUA));if(n)try{e=t.split("".concat(n.browserUA,"/"))[1]}catch(r){e="unknown"}return"".concat((n==null?void 0:n.browserName)||"unknown","/").concat(e)};T.getBrowser=ql;var Kl=()=>typeof window=="object"&&window.navigator.product==="ReactNative",zl=()=>{if(Kl())return"ReactNative";if(typeof window=="undefined")try{return"".concat(Ul.default.type(),"/").concat(Ul.default.version())}catch(t){return"unknown"}try{let e=window.navigator.appVersion.match(new RegExp("\\(([^)]+)\\)","u"));return e&&e.length>1?e[1]:"unknown"}catch(t){return"unknown"}};T.getOSVersion=zl;var Gl=()=>Kl()?"ReactNative":typeof window=="undefined"?"NodeJS/".concat(process.version):ql();T.getRuntime=Gl;var kg=t=>{let e={client:ye.USER_AGENT_CLIENT,clientVersion:"unknown",osVersion:zl(),runtimeVersion:Gl(),application:{}};return t&&(e.application=t),JSON.stringify((0,Kt.default)(e))};T.buildClientUserAgentString=kg;var Ng=(t,e)=>(e&&typeof t=="object"&&t!==void 0&&(t._debug=_(S({},t._debug),{cfRay:e[ye.CF_RAY_HEADER],btTraceId:e[ye.BT_TRACE_ID_HEADER]})),t);T.debugTransform=Ng});var Hl=v(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.BasisTheoryValidationError=void 0;function Dg(t){function e(){var n=Reflect.construct(t,Array.from(arguments));return Object.setPrototypeOf(n,Object.getPrototypeOf(this)),n}return e.prototype=Object.create(t.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t,e}var Vi=class t extends Dg(Error){constructor(e,n,r){super(e),this.details=n,this.validation=r,this.name="BasisTheoryValidationError",Object.setPrototypeOf(this,t.prototype)}};Hn.BasisTheoryValidationError=Vi});var Vl=v(Vn=>{"use strict";Object.defineProperty(Vn,"__esModule",{value:!0});Vn.HttpClientError=void 0;function Bg(t){function e(){var n=Reflect.construct(t,Array.from(arguments));return Object.setPrototypeOf(n,Object.getPrototypeOf(this)),n}return e.prototype=Object.create(t.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t,e}var Wi=class t extends Bg(Error){constructor(e,n,r,i){super(e),this.name="HttpClientError",this.status=n,this.data=r,this.headers=i,Object.setPrototypeOf(this,t.prototype)}};Vn.HttpClientError=Wi});var Y=v(Se=>{"use strict";Object.defineProperty(Se,"__esModule",{value:!0});var Wl={BasisTheoryApiError:!0,BasisTheoryValidationError:!0,HttpClientError:!0};Object.defineProperty(Se,"BasisTheoryApiError",{enumerable:!0,get:function(){return Lg.BasisTheoryApiError}});Object.defineProperty(Se,"BasisTheoryValidationError",{enumerable:!0,get:function(){return Mg.BasisTheoryValidationError}});Object.defineProperty(Se,"HttpClientError",{enumerable:!0,get:function(){return jg.HttpClientError}});var Yi=Cn();Object.keys(Yi).forEach(function(t){t==="default"||t==="__esModule"||Object.prototype.hasOwnProperty.call(Wl,t)||t in Se&&Se[t]===Yi[t]||Object.defineProperty(Se,t,{enumerable:!0,get:function(){return Yi[t]}})});var Ji=vt();Object.keys(Ji).forEach(function(t){t==="default"||t==="__esModule"||Object.prototype.hasOwnProperty.call(Wl,t)||t in Se&&Se[t]===Ji[t]||Object.defineProperty(Se,t,{enumerable:!0,get:function(){return Ji[t]}})});var Lg=Ki(),Mg=Hl(),jg=Vl()});var Yl=v(()=>{"use strict"});var Jl=v(Yn=>{"use strict";Object.defineProperty(Yn,"__esModule",{value:!0});Yn.BasisTheoryService=void 0;var Wn=Ug(Ai()),Re=Y();function Ug(t){return t&&t.__esModule?t:{default:t}}var Zi=class{constructor(e){let{apiKey:n,baseURL:r,transformRequest:i,transformResponse:o,appInfo:s,debug:a}=e;if(typeof Wn.default=="string")throw new Error("basis-theory-js@1.77.0+ and basis-theory-react@1.12.1+ are not supported with CRA 5, go to https://github.com/Basis-Theory/basis-theory-js/issues/365#issuecomment-1662883062 for workarounds.");this.client=Wn.default.create({baseURL:r,headers:S({[Re.API_KEY_HEADER]:n,[Re.CLIENT_USER_AGENT_HEADER]:(0,Re.buildClientUserAgentString)(s)},typeof window=="undefined"&&{[Re.USER_AGENT_HEADER]:(0,Re.buildUserAgentString)(s)}),transformRequest:[].concat(i||Re.transformRequestSnakeCase,Wn.default.defaults.transformRequest),transformResponse:Wn.default.defaults.transformResponse.concat(o||Re.transformResponseCamelCase,a?Re.debugTransform:[])}),this.client.interceptors.response.use(void 0,a?Re.errorInterceptorDebug:Re.errorInterceptor)}};Yn.BasisTheoryService=Zi});var J=v(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});var Xi=Yl();Object.keys(Xi).forEach(function(t){t==="default"||t==="__esModule"||t in je&&je[t]===Xi[t]||Object.defineProperty(je,t,{enumerable:!0,get:function(){return Xi[t]}})});var Qi=Jl();Object.keys(Qi).forEach(function(t){t==="default"||t==="__esModule"||t in je&&je[t]===Qi[t]||Object.defineProperty(je,t,{enumerable:!0,get:function(){return Qi[t]}})})});var be=v(Jn=>{"use strict";Object.defineProperty(Jn,"__esModule",{value:!0});Jn.CrudBuilder=void 0;var re=Y(),Fg=t=>class extends t{create(n,r){return this.client.post("/",n,(0,re.createRequestConfig)(r)).then(re.dataExtractor)}},$g=t=>class extends t{retrieve(n,r){return this.client.get(n,(0,re.createRequestConfig)(r)).then(re.dataExtractor)}},qg=t=>class extends t{update(n,r,i){return this.client.put(n,r,(0,re.createRequestConfig)(i)).then(re.dataExtractor)}},Kg=t=>class extends t{patch(n,r,i){let o=(0,re.createRequestConfig)(i);return this.client.patch(n,r,_(S({},o),{headers:_(S({},(o==null?void 0:o.headers)||{}),{[re.CONTENT_TYPE_HEADER]:re.MERGE_CONTENT_TYPE})})).then(re.dataExtractor)}},zg=t=>class extends t{async delete(n,r){await this.client.delete(n,(0,re.createRequestConfig)(r))}},Gg=t=>class extends t{list(n={},r={}){let i="/".concat((0,re.getQueryParams)(n));return this.client.get(i,(0,re.createRequestConfig)(r)).then(re.dataExtractor)}},eo=class{constructor(e){this.BaseService=e}create(){return this.BaseService=Fg(this.BaseService),this}retrieve(){return this.BaseService=$g(this.BaseService),this}update(){return this.BaseService=qg(this.BaseService),this}patch(){return this.BaseService=Kg(this.BaseService),this}delete(){return this.BaseService=zg(this.BaseService),this}list(){return this.BaseService=Gg(this.BaseService),this}build(){return this.BaseService}};Jn.CrudBuilder=eo});var Xl=v(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.BasisTheoryApplicationTemplates=void 0;var Zl=Y(),Hg=J(),Vg=be(),Wg=new Vg.CrudBuilder(class extends Hg.BasisTheoryService{list(e){return this.client.get("/",(0,Zl.createRequestConfig)(e)).then(Zl.dataExtractor)}}).retrieve().build();Zn.BasisTheoryApplicationTemplates=Wg});var Ql=v(to=>{"use strict";Object.defineProperty(to,"__esModule",{value:!0});Object.defineProperty(to,"BasisTheoryApplicationTemplates",{enumerable:!0,get:function(){return Yg.BasisTheoryApplicationTemplates}});var Yg=Xl()});var ec=v(Qn=>{"use strict";Object.defineProperty(Qn,"__esModule",{value:!0});Qn.BasisTheoryApplicationKeys=void 0;var Xn=Y(),Jg=J(),Zg=be(),Xg=new Zg.CrudBuilder(class extends Jg.BasisTheoryService{create(e){return this.client.post("".concat(e,"/keys")).then(Xn.dataExtractor)}get(e){return this.client.get("".concat(e,"/keys")).then(Xn.dataExtractor)}getById(e,n){return this.client.get("".concat(e,"/keys/").concat(n)).then(Xn.dataExtractor)}delete(e,n){return this.client.delete("".concat(e,"/keys/").concat(n)).then(Xn.dataExtractor)}}).build();Qn.BasisTheoryApplicationKeys=Xg});var tc=v(no=>{"use strict";Object.defineProperty(no,"__esModule",{value:!0});Object.defineProperty(no,"BasisTheoryApplicationKeys",{enumerable:!0,get:function(){return Qg.BasisTheoryApplicationKeys}});var Qg=ec()});var nc=v(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.BasisTheoryApplications=void 0;var er=Y(),ef=J(),tf=be(),nf=new tf.CrudBuilder(class extends ef.BasisTheoryService{getApplicationByKey(){return this.retrieveByKey()}retrieveByKey(e){return this.client.get("/key",(0,er.createRequestConfig)(e)).then(er.dataExtractor)}regenerateKey(e,n){return this.client.post("".concat(e,"/regenerate"),void 0,(0,er.createRequestConfig)(n)).then(er.dataExtractor)}}).create().retrieve().update().delete().list().build();tr.BasisTheoryApplications=nf});var io=v(ro=>{"use strict";Object.defineProperty(ro,"__esModule",{value:!0});Object.defineProperty(ro,"BasisTheoryApplications",{enumerable:!0,get:function(){return rf.BasisTheoryApplications}});var rf=nc()});var rc=v(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.BasisTheoryTokenize=void 0;var nr=Y(),of=J(),oo=class extends of.BasisTheoryService{tokenize(e,n={}){return this.client.post("/",e,(0,nr.createRequestConfig)(n,{transformRequest:nr.proxyRaw,transformResponse:nr.proxyRaw})).then(nr.dataExtractor)}};rr.BasisTheoryTokenize=oo});var ic=v(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});Object.defineProperty(so,"BasisTheoryTokenize",{enumerable:!0,get:function(){return sf.BasisTheoryTokenize}});var sf=rc()});var oc=v(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.delegateTokenize=void 0;var af=ic(),lf=t=>class extends af.BasisTheoryTokenize{tokenize(n,r){return t!=null&&t.hasElement(n)?t.tokenize(n,r):super.tokenize(n,r)}};ir.delegateTokenize=lf});var sc=v(or=>{"use strict";Object.defineProperty(or,"__esModule",{value:!0});or.BasisTheoryTokens=void 0;var zt=Y(),Gt=vt(),cf=J(),uf=be(),df=new uf.CrudBuilder(class extends cf.BasisTheoryService{constructor(e){let n=e;n.transformRequest=[].concat(Gt.transformTokenRequestSnakeCase,e.transformRequest||[]),n.transformResponse=[].concat(Gt.transformTokenResponseCamelCase,e.transformResponse||[]),super(n)}retrieve(e,n={}){let r="/".concat(e);return this.client.get(r,(0,zt.createRequestConfig)(n)).then(Gt.dataExtractor)}update(e,n,r={}){let i="/".concat(e),o=(0,zt.createRequestConfig)(r);return this.client.patch(i,n,_(S({},o),{headers:_(S({},(o==null?void 0:o.headers)||{}),{[zt.CONTENT_TYPE_HEADER]:zt.MERGE_CONTENT_TYPE})})).then(Gt.dataExtractor)}search(e,n){return this.client.post("/search",e,(0,zt.createRequestConfig)(n)).then(Gt.dataExtractor)}}).create().delete().list().build();or.BasisTheoryTokens=df});var lo=v(ao=>{"use strict";Object.defineProperty(ao,"__esModule",{value:!0});Object.defineProperty(ao,"BasisTheoryTokens",{enumerable:!0,get:function(){return mf.BasisTheoryTokens}});var mf=sc()});var ac=v(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.delegateTokens=void 0;var pf=lo(),gf=t=>class extends pf.BasisTheoryTokens{create(n,r){return t!=null&&t.hasElement(n)?t.tokens.create(n,r):super.create(n,r)}update(n,r,i){return t!=null&&t.hasElement(r)?t.tokens.update(n,r,i):super.update(n,r,i)}retrieve(n,r){return t!==void 0?t.tokens.retrieve(n,r):super.retrieve(n,r)}};sr.delegateTokens=gf});var lc=v(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.BasisTheoryProxy=void 0;var ke=Y(),ff=J(),co=class extends ff.BasisTheoryService{get(e){return this.proxyRequest("get",e)}post(e){return this.proxyRequest("post",e)}put(e){return this.proxyRequest("put",e)}patch(e){return this.proxyRequest("patch",e)}delete(e){return this.proxyRequest("delete",e)}proxyRequest(e,n){var r;if(e==="post"||e==="put"||e==="patch"){var i,o;let s=n!=null&&n.includeResponseHeaders&&e==="post"?ke.dataAndHeadersExtractor:ke.dataExtractor;return this.client[e]((i=n==null?void 0:n.path)!==null&&i!==void 0?i:"",(o=n==null?void 0:n.body)!==null&&o!==void 0?o:void 0,(0,ke.createRequestConfig)(n,{transformRequest:ke.proxyRaw,transformResponse:ke.proxyRaw})).then(s)}return this.client[e]((r=n==null?void 0:n.path)!==null&&r!==void 0?r:"/",(0,ke.createRequestConfig)(n,{transformRequest:ke.proxyRaw,transformResponse:ke.proxyRaw})).then(ke.dataExtractor)}};ar.BasisTheoryProxy=co});var cc=v(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});var uo=lc();Object.keys(uo).forEach(function(t){t==="default"||t==="__esModule"||t in Ht&&Ht[t]===uo[t]||Object.defineProperty(Ht,t,{enumerable:!0,get:function(){return uo[t]}})})});var uc=v(lr=>{"use strict";Object.defineProperty(lr,"__esModule",{value:!0});lr.delegateProxy=void 0;var hf=cc(),yf=t=>class extends hf.BasisTheoryProxy{get(n){return t!==void 0?t.proxy.get(n):super.get(n)}post(n){return t!==void 0?t.proxy.post(n):super.post(n)}put(n){return t!==void 0?t.proxy.put(n):super.put(n)}patch(n){return t!==void 0?t.proxy.patch(n):super.patch(n)}delete(n){return t!==void 0?t.proxy.delete(n):super.delete(n)}};lr.delegateProxy=yf});var mc=v(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.BasisTheoryTokenIntents=void 0;var dc=Y(),Sf=J(),bf=be(),Pf=new bf.CrudBuilder(class extends Sf.BasisTheoryService{constructor(e){let n=e;n.transformRequest=[].concat(dc.transformTokenRequestSnakeCase,e.transformRequest||[]),n.transformResponse=[].concat(dc.transformTokenResponseCamelCase,e.transformResponse||[]),super(n)}}).create().delete().build();cr.BasisTheoryTokenIntents=Pf});var pc=v(mo=>{"use strict";Object.defineProperty(mo,"__esModule",{value:!0});Object.defineProperty(mo,"BasisTheoryTokenIntents",{enumerable:!0,get:function(){return wf.BasisTheoryTokenIntents}});var wf=mc()});var gc=v(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.delegateTokenIntents=void 0;var vf=pc(),If=t=>class extends vf.BasisTheoryTokenIntents{create(n,r){return t!=null&&t.hasElement(n)?t.tokenIntents.create(n,r):super.create(n,r)}};ur.delegateTokenIntents=If});var fc=v(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});var po=oc();Object.keys(po).forEach(function(t){t==="default"||t==="__esModule"||t in ie&&ie[t]===po[t]||Object.defineProperty(ie,t,{enumerable:!0,get:function(){return po[t]}})});var go=ac();Object.keys(go).forEach(function(t){t==="default"||t==="__esModule"||t in ie&&ie[t]===go[t]||Object.defineProperty(ie,t,{enumerable:!0,get:function(){return go[t]}})});var fo=uc();Object.keys(fo).forEach(function(t){t==="default"||t==="__esModule"||t in ie&&ie[t]===fo[t]||Object.defineProperty(ie,t,{enumerable:!0,get:function(){return fo[t]}})});var ho=gc();Object.keys(ho).forEach(function(t){t==="default"||t==="__esModule"||t in ie&&ie[t]===ho[t]||Object.defineProperty(ie,t,{enumerable:!0,get:function(){return ho[t]}})})});var yo=v(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.injectScript=It.findScript=void 0;var Cf=t=>document.querySelector('script[src^="'.concat(t,'"]'));It.findScript=Cf;var Tf=t=>{let e=document.createElement("script");e.src=t;let n=document.head||document.body;if(!n)throw new Error("No <head> or <body> elements found in document.");return n.append(e),e};It.injectScript=Tf});var So=v(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.ELEMENTS_SCRIPT_UNKNOWN_ERROR_MESSAGE=H.ELEMENTS_SCRIPT_LOAD_ERROR_MESSAGE=H.ELEMENTS_SCRIPT_FAILED_TO_DELIVER=H.ELEMENTS_NOM_DOM_ERROR_MESSAGE=H.ELEMENTS_INIT_ERROR_MESSAGE=H.CARD_ICON_POSITIONS=H.CARD_BRANDS=H.AUTOCOMPLETE_VALUES=void 0;var Ef="BasisTheory Elements was not properly initialized.";H.ELEMENTS_INIT_ERROR_MESSAGE=Ef;var Rf="Tried to load BasisTheoryElements in a non-DOM environment.";H.ELEMENTS_NOM_DOM_ERROR_MESSAGE=Rf;var Af="Basis Theory Elements did not load properly. Check network tab for more details.";H.ELEMENTS_SCRIPT_LOAD_ERROR_MESSAGE=Af;var _f="Unable to load the Elements script. This may be due to network restrictions or browser extensions like ad blockers interfering with script loading. Check browser settings or network connection and try again.";H.ELEMENTS_SCRIPT_UNKNOWN_ERROR_MESSAGE=_f;var Of="Failed to deliver Elements script from Basis Theory. Check your network connection and try again or contact support@basistheory.com";H.ELEMENTS_SCRIPT_FAILED_TO_DELIVER=Of;var xf=["visa","mastercard","american-express","discover","diners-club","jcb","unionpay","maestro","elo","hiper","hipercard","mir","unknown"];H.CARD_BRANDS=xf;var kf=["left","right","none"];H.CARD_ICON_POSITIONS=kf;var Nf=["additional-name","address-level1","address-level2","address-level3","address-level4","address-line1","address-line2","address-line3","bday-day","bday-month","bday-year","bday","billing","cc-additional-name","cc-csc","cc-exp-month","cc-exp-year","cc-exp","cc-family-name","cc-given-name","cc-name","cc-number","cc-type","country-name","country","current-password","email","family-name","fax","given-name","home","honorific-prefix","honorific-suffix","language","mobile","name","new-password","nickname","off","on","one-time-code","organization-title","organization","page","postal-code","sex","shipping","street-address","tel-area-code","tel-country-code","tel-extension","tel-local-prefix","tel-local-suffix","tel-local","tel-national","tel","transaction-amount","transaction-currency","url","username","work"];H.AUTOCOMPLETE_VALUES=Nf});var yc=v(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.loadElements=void 0;var Ue=zn(),Ve=So(),bo=yo(),Po,hc=(t,e)=>new Promise((n,r)=>{let i=(0,bo.findScript)(t);if(!i)i=(0,bo.injectScript)(t);else{if(window.BasisTheoryElements){n(window.BasisTheoryElements);return}if(e>0){try{var o;(o=i)===null||o===void 0||o.remove()}catch(s){(async()=>await Ue.logger.log.error("Error removing script from DOM on retry attempt ".concat(e),{logType:"scriptRemovalError",logOrigin:"loadScript",retryCount:e,removalError:s}))(),r(new Error(Ve.ELEMENTS_SCRIPT_UNKNOWN_ERROR_MESSAGE));return}i=(0,bo.injectScript)(t)}}i.addEventListener("load",()=>{if(window.BasisTheoryElements){n(window.BasisTheoryElements);return}(async()=>await Ue.logger.log.error("Elements not found on window on load",{logType:"elementsNotFoundOnWindow",logOrigin:"loadScript",retryCount:e}))(),r(new Error(Ve.ELEMENTS_SCRIPT_LOAD_ERROR_MESSAGE))}),i.addEventListener("error",async s=>{if(await Ue.logger.log.error("Elements script onError event",{logType:"elementsScriptOnError",logOrigin:"loadScript",retryCount:e,event:{message:s==null?void 0:s.message,source:s==null?void 0:s.filename,lineno:s==null?void 0:s.lineno,colno:s==null?void 0:s.colno,error:s==null?void 0:s.error,target:s==null?void 0:s.target}}),e===0){hc(t,e+1).then(n).catch(r);return}try{let c=await fetch(t),l,u;try{u=await c.text(),l=JSON.parse(u)}catch(d){var a;l=(a=u)!==null&&a!==void 0?a:""}if(!c.ok){await Ue.logger.log.error("Second attempt to load elements script failed, fetch failed with status: ".concat(c.status,"."),{logType:"elementsScriptFetchFailure",logOrigin:"loadScript",retryCount:e,fetchResult:"error",fetchResponse:l,fetchHeaders:c.headers,fetchStatusText:c.statusText}),r(new Error(Ve.ELEMENTS_SCRIPT_FAILED_TO_DELIVER));return}await Ue.logger.log.error("Second attempt to load elements script failed, fetch success",{logType:"elementsScriptFetchFailure",logOrigin:"loadScript",retryCount:e,fetchResult:"success",fetchResponse:l,fetchHeaders:c.headers,fetchStatusText:c.statusText}),r(new Error(Ve.ELEMENTS_SCRIPT_UNKNOWN_ERROR_MESSAGE));return}catch(c){await Ue.logger.log.error("Second attempt failed to load elements script failed, fetch network error.",{logType:"elementsScriptFetchError",logOrigin:"loadScript",retryCount:e,fetchResult:"error",fetchError:JSON.stringify(c!=null?c:"Unknown Error")}),r(new Error(Ve.ELEMENTS_SCRIPT_UNKNOWN_ERROR_MESSAGE));return}})}),Df=t=>(Po||(Po=new Promise((e,n)=>{if(typeof window!="object"){(async()=>(await Ue.logger.log.warn(Ve.ELEMENTS_NOM_DOM_ERROR_MESSAGE,{logType:"elementsNonDomError",logOrigin:"loadElements"}),n(new Error(Ve.ELEMENTS_NOM_DOM_ERROR_MESSAGE))))();return}if(window.BasisTheoryElements){e(window.BasisTheoryElements);return}let r="https://js.basistheory.com/web-elements/1.5.0/client/index.js";if(typeof t!="undefined")try{r=new URL(t).toString().replace(new RegExp("\\/$","u"),"")}catch(i){throw(async()=>await Ue.logger.log.warn("Invalid format for the given Elements client url.",{logType:"invalidClientUrlError",logOrigin:"loadElements"}))(),new Error("Invalid format for the given Elements client url.")}hc(r,0).then(e).catch(i=>{n(i)})})),Po);dr.loadElements=Df});var Sc=v(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});var wo=fc();Object.keys(wo).forEach(function(t){t==="default"||t==="__esModule"||t in Pe&&Pe[t]===wo[t]||Object.defineProperty(Pe,t,{enumerable:!0,get:function(){return wo[t]}})});var vo=yo();Object.keys(vo).forEach(function(t){t==="default"||t==="__esModule"||t in Pe&&Pe[t]===vo[t]||Object.defineProperty(Pe,t,{enumerable:!0,get:function(){return vo[t]}})});var Io=yc();Object.keys(Io).forEach(function(t){t==="default"||t==="__esModule"||t in Pe&&Pe[t]===Io[t]||Object.defineProperty(Pe,t,{enumerable:!0,get:function(){return Io[t]}})})});var bc=v(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.BasisTheoryLogs=void 0;var Bf=J(),Lf=be(),Mf=new Lf.CrudBuilder(class extends Bf.BasisTheoryService{}).list().build();mr.BasisTheoryLogs=Mf});var Pc=v(Co=>{"use strict";Object.defineProperty(Co,"__esModule",{value:!0});Object.defineProperty(Co,"BasisTheoryLogs",{enumerable:!0,get:function(){return jf.BasisTheoryLogs}});var jf=bc()});var wc=v(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.BasisTheoryPermissions=void 0;var To=Y(),Uf=J(),Eo=class extends Uf.BasisTheoryService{list(e,n){let r="/".concat((0,To.getQueryParams)(e));return this.client.get(r,(0,To.createRequestConfig)(n)).then(To.dataExtractor)}};pr.BasisTheoryPermissions=Eo});var vc=v(Ro=>{"use strict";Object.defineProperty(Ro,"__esModule",{value:!0});Object.defineProperty(Ro,"BasisTheoryPermissions",{enumerable:!0,get:function(){return Ff.BasisTheoryPermissions}});var Ff=wc()});var Cc=v(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.BasisTheoryProxies=void 0;var Ic=vt(),$f=J(),qf=be(),Kf=new qf.CrudBuilder(class extends $f.BasisTheoryService{constructor(e){let n=S({},e);n.transformRequest=[].concat(Ic.transformProxyRequestSnakeCase,e.transformRequest||[]),n.transformResponse=[].concat(Ic.transformProxyResponseCamelCase,e.transformResponse||[]),super(n)}}).create().retrieve().update().patch().delete().list().build();gr.BasisTheoryProxies=Kf});var Tc=v(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});var Ao=Cc();Object.keys(Ao).forEach(function(t){t==="default"||t==="__esModule"||t in Vt&&Vt[t]===Ao[t]||Object.defineProperty(Vt,t,{enumerable:!0,get:function(){return Ao[t]}})})});var Ec=v(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.BasisTheoryReactorFormulas=void 0;var zf=J(),Gf=be(),Hf=new Gf.CrudBuilder(class extends zf.BasisTheoryService{}).create().retrieve().update().delete().list().build();fr.BasisTheoryReactorFormulas=Hf});var Rc=v(_o=>{"use strict";Object.defineProperty(_o,"__esModule",{value:!0});Object.defineProperty(_o,"BasisTheoryReactorFormulas",{enumerable:!0,get:function(){return Vf.BasisTheoryReactorFormulas}});var Vf=Ec()});var _c=v(yr=>{"use strict";Object.defineProperty(yr,"__esModule",{value:!0});yr.BasisTheoryReactors=void 0;var hr=Y(),Ac=vt(),Wf=J(),Yf=be(),Jf=new Yf.CrudBuilder(class extends Wf.BasisTheoryService{constructor(e){let n=S({},e);n.transformRequest=[].concat(Ac.transformReactorRequestSnakeCase,e.transformRequest||[]),n.transformResponse=[].concat(Ac.transformReactorResponseCamelCase,e.transformResponse||[]),super(n)}react(e,n,r){return this.client.post("/".concat(e,"/react"),n,(0,hr.createRequestConfig)(r,{transformRequest:hr.proxyRaw,transformResponse:hr.proxyRaw})).then(hr.dataExtractor)}}).create().retrieve().update().patch().delete().list().build();yr.BasisTheoryReactors=Jf});var Oc=v(Oo=>{"use strict";Object.defineProperty(Oo,"__esModule",{value:!0});Object.defineProperty(Oo,"BasisTheoryReactors",{enumerable:!0,get:function(){return Zf.BasisTheoryReactors}});var Zf=_c()});var kc=v(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.BasisTheorySessions=void 0;var xc=Y(),Sr=vt(),Xf=J(),xo=class extends Xf.BasisTheoryService{constructor(e){let n=S({},e);n.transformRequest=[].concat(Sr.transformProxyRequestSnakeCase,e.transformRequest||[]),n.transformResponse=[].concat(Sr.transformProxyResponseCamelCase,e.transformResponse||[]),super(n)}create(e={}){return this.client.post("/",void 0,(0,xc.createRequestConfig)(e)).then(Sr.dataExtractor)}authorize(e,n={}){return this.client.post("/authorize",e,(0,xc.createRequestConfig)(n)).then(Sr.dataExtractor)}};br.BasisTheorySessions=xo});var Nc=v(ko=>{"use strict";Object.defineProperty(ko,"__esModule",{value:!0});Object.defineProperty(ko,"BasisTheorySessions",{enumerable:!0,get:function(){return Qf.BasisTheorySessions}});var Qf=kc()});var Dc=v(Pr=>{"use strict";Object.defineProperty(Pr,"__esModule",{value:!0});Pr.BasisTheoryTenants=void 0;var $=Y(),eh=J(),th=be(),nh=new th.CrudBuilder(class extends eh.BasisTheoryService{retrieve(e){return this.client.get("/",(0,$.createRequestConfig)(e)).then($.dataExtractor)}update(e,n){return this.client.put("/",e,(0,$.createRequestConfig)(n)).then($.dataExtractor)}async delete(e){await this.client.delete("/",(0,$.createRequestConfig)(e))}retrieveUsageReport(e){return this.client.get("/reports/usage",(0,$.createRequestConfig)(e)).then($.dataExtractor)}createInvitation(e,n){return this.client.post("/invitations",e,(0,$.createRequestConfig)(n)).then($.dataExtractor)}resendInvitation(e,n){return this.client.post("/invitations/".concat(e,"/resend"),{},(0,$.createRequestConfig)(n)).then($.dataExtractor)}listInvitations(e,n){let r="/invitations".concat((0,$.getQueryParams)(e));return this.client.get(r,(0,$.createRequestConfig)(n)).then($.dataExtractor)}retrieveInvitation(e,n){return this.client.get("/invitations/".concat(e),(0,$.createRequestConfig)(n)).then($.dataExtractor)}async deleteInvitation(e,n){await this.client.delete("/invitations/".concat(e),(0,$.createRequestConfig)(n))}listMembers(e,n){let r="/members".concat((0,$.getQueryParams)(e));return this.client.get(r,(0,$.createRequestConfig)(n)).then($.dataExtractor)}async deleteMember(e,n){await this.client.delete("/members/".concat(e),(0,$.createRequestConfig)(n))}}).build();Pr.BasisTheoryTenants=nh});var Bc=v(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});Object.defineProperty(No,"BasisTheoryTenants",{enumerable:!0,get:function(){return rh.BasisTheoryTenants}});var rh=Dc()});var Lc=v(vr=>{"use strict";Object.defineProperty(vr,"__esModule",{value:!0});vr.BasisTheoryThreeDS=void 0;var wr=Y(),ih=J(),Do=class extends ih.BasisTheoryService{createSession(e){return this.client.post("/sessions",e).then(wr.dataExtractor)}getSessionById(e){return this.client.get("/sessions/".concat(e)).then(wr.dataExtractor)}authenticateSession(e,n){return this.client.post("/sessions/".concat(e,"/authenticate"),n).then(wr.dataExtractor)}getChallengeResult(e){return this.client.get("/sessions/".concat(e,"/challenge-result")).then(wr.dataExtractor)}};vr.BasisTheoryThreeDS=Do});var Mc=v(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});var Bo=Lc();Object.keys(Bo).forEach(function(t){t==="default"||t==="__esModule"||t in Wt&&Wt[t]===Bo[t]||Object.defineProperty(Wt,t,{enumerable:!0,get:function(){return Bo[t]}})})});var jc=v(Ir=>{"use strict";Object.defineProperty(Ir,"__esModule",{value:!0});Ir.BasisTheory=void 0;var oh=Ql(),sh=tc(),ah=io(),L=Y(),lh=zn(),Yt=Sc(),ch=So(),uh=Pc(),dh=vc(),mh=Tc(),ph=Rc(),gh=Oc(),fh=Nc(),hh=Bc(),yh=Mc();function Sh(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var bh={apiBaseUrl:L.DEFAULT_BASE_URL,elements:!1,disableTelemetry:!1,debug:!1,appInfo:{}},Lo=class{constructor(){Sh(this,"_initStatus","not-started")}async init(e,n={}){if(this._initStatus!=="not-started"&&this._initStatus!=="error")throw new Error("This BasisTheory instance has been already initialized.");this._initStatus="in-progress";try{this._initOptions=Object.freeze(S(S({},bh),n));let r=this._initOptions.apiBaseUrl;try{let o=new URL(this.initOptions.apiBaseUrl);o.hostname==="localhost"?o.protocol="http":o.protocol="https",r="".concat(o.toString().replace(new RegExp("\\/$","u"),""),"/")}catch(o){throw new Error("Invalid format for the given API base url.")}let i=this._initOptions.appInfo;this._initOptions.elements&&await this.loadElements(e),this._tokens=new((0,Yt.delegateTokens)(this._elements))({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.tokens,r).toString(),appInfo:i,debug:this._initOptions.debug}),this._tokenize=new((0,Yt.delegateTokenize)(this._elements))({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.tokenize,r).toString(),appInfo:i,debug:this._initOptions.debug}),this._applications=new ah.BasisTheoryApplications({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.applications,r).toString(),appInfo:i}),this._applicationKeys=new sh.BasisTheoryApplicationKeys({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.applicationKeys,r).toString(),appInfo:i}),this._applicationTemplates=new oh.BasisTheoryApplicationTemplates({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.applicationTemplates,r).toString(),appInfo:i}),this._tenants=new hh.BasisTheoryTenants({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.tenants,r).toString(),appInfo:i}),this._logs=new uh.BasisTheoryLogs({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.logs,r).toString(),appInfo:i}),this._reactorFormulas=new ph.BasisTheoryReactorFormulas({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.reactorFormulas,r).toString(),appInfo:i}),this._reactors=new gh.BasisTheoryReactors({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.reactors,r).toString(),appInfo:i}),this._permissions=new dh.BasisTheoryPermissions({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.permissions,r).toString(),appInfo:i}),this._proxies=new mh.BasisTheoryProxies({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.proxies,r).toString(),appInfo:i}),this._proxy=new((0,Yt.delegateProxy)(this._elements))({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.proxy,r).toString(),appInfo:i,debug:this._initOptions.debug}),this._sessions=new fh.BasisTheorySessions({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.sessions,r).toString(),appInfo:i,debug:this._initOptions.debug}),this._threeds=new yh.BasisTheoryThreeDS({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.threeds,r).toString(),appInfo:i}),this._tokenIntents=new((0,Yt.delegateTokenIntents)(this._elements))({apiKey:e,baseURL:new URL(L.CLIENT_BASE_PATHS.tokenIntents,r).toString(),appInfo:i,debug:this._initOptions.debug}),n.disableTelemetry&&lh.logger.setTelemetryEnabled(!1),this._initStatus="done"}catch(r){throw this._initStatus="error",r}return this}createElement(e,n){if(!this._elements)throw new Error(ch.ELEMENTS_INIT_ERROR_MESSAGE);return this._elements.createElement(e,n)}tokenize(e,n){return(0,L.assertInit)(this._tokenize).tokenize(e,n)}async loadElements(e){let n;try{n=new URL(this.initOptions.elementsBaseUrl||L.DEFAULT_ELEMENTS_BASE_URL)}catch(c){throw new Error("Invalid format for the given Elements base url.")}let r=await(0,Yt.loadElements)(this.initOptions.elementsClientUrl),i=this.initOptions.elementsUseNgApi||!1,o=this.initOptions.elementsUseSameOriginApi||!1,s=this.initOptions.disableTelemetry||!1,a=this.initOptions.debug||!1;await r.init(e,n.toString().replace(new RegExp("\\/$","u"),""),i,o,s,a),this.elements=r}get initOptions(){return(0,L.assertInit)(this._initOptions)}get tokens(){return(0,L.assertInit)(this._tokens)}get applications(){return(0,L.assertInit)(this._applications)}get applicationKeys(){return(0,L.assertInit)(this._applicationKeys)}get applicationTemplates(){return(0,L.assertInit)(this._applicationTemplates)}get client(){if(this._elements){var e;return(e=this._elements)===null||e===void 0?void 0:e.client}console.error("Elements are not initialized. Either initialize elements or use a regular HTTP client if no elements are needed.")}get tenants(){return(0,L.assertInit)(this._tenants)}get logs(){return(0,L.assertInit)(this._logs)}get reactorFormulas(){return(0,L.assertInit)(this._reactorFormulas)}get reactors(){return(0,L.assertInit)(this._reactors)}get permissions(){return(0,L.assertInit)(this._permissions)}get proxies(){return(0,L.assertInit)(this._proxies)}get proxy(){return(0,L.assertInit)(this._proxy)}get sessions(){return(0,L.assertInit)(this._sessions)}get threeds(){return(0,L.assertInit)(this._threeds)}get tokenIntents(){return(0,L.assertInit)(this._tokenIntents)}get elements(){return(0,L.assertInit)(this._elements)}set elements(e){this._elements=e}};Ir.BasisTheory=Lo});var Fo=v(se=>{"use strict";Object.defineProperty(se,"__esModule",{value:!0});var Uo={_instance:!0};se._instance=void 0;var Cr=jc();Object.keys(Cr).forEach(function(t){t==="default"||t==="__esModule"||Object.prototype.hasOwnProperty.call(Uo,t)||t in se&&se[t]===Cr[t]||Object.defineProperty(se,t,{enumerable:!0,get:function(){return Cr[t]}})});var Mo=io();Object.keys(Mo).forEach(function(t){t==="default"||t==="__esModule"||Object.prototype.hasOwnProperty.call(Uo,t)||t in se&&se[t]===Mo[t]||Object.defineProperty(se,t,{enumerable:!0,get:function(){return Mo[t]}})});var jo=lo();Object.keys(jo).forEach(function(t){t==="default"||t==="__esModule"||Object.prototype.hasOwnProperty.call(Uo,t)||t in se&&se[t]===jo[t]||Object.defineProperty(se,t,{enumerable:!0,get:function(){return jo[t]}})});var Ph=new Cr.BasisTheory;se._instance=Ph});var tu={};Tt(tu,{BasisTheory3ds:()=>eu,sdkBaseUrl:()=>_r});function Fh(t){let{messageType:e,messageVersion:n,threeDSServerTransID:r,acsTransID:i,challengeWindowSize:o}=t;return typeof t=="object"&&t!==null&&typeof e=="string"&&typeof n=="string"&&typeof r=="string"&&typeof i=="string"&&Object.values(Rr).includes(o)}var Ne,De,Er,wh,Kc,vh,zc,Ih,Ch,Gc,Th,we,Rr,Tr,Eh,Rh,Ah,Hc,_h,Vc,Wc,Yc,Uc,Jt,Jc,Oh,Zc,Ar,Xc,Z,$o,Qc,Fc,xh,$c,qc,kh,Nh,Dh,Bh,Lh,Mh,jh,Uh,$h,qh,Kh,zh,_r,eu,nu=Ie(()=>{Ne={FRAME_CONTAINER_ID:"methodFrameContainer",IFRAME_NAME:"methodIframe",FORM_NAME:"threeDSMethodForm",INPUT_NAME:"threeDSMethodData"},De={FRAME_CONTAINER_ID:"challengeFrameContainer",IFRAME_NAME:"challengeIframe",FORM_NAME:"threeDSCReqForm"},Er={IFRAME:"iframe",REDIRECT:"redirect"},wh="BT-API-KEY",Kc="BT-TRACE-ID",vh="https://api.basistheory.com",zc="https://3ds.basistheory.com",Ih="pages/method.html",Ch="pages/challenge.html",Gc=!1,Th=({disableTelemetry:t})=>{Gc=t},we=(()=>{let t="pubb96b84a13912504f4354f2d794ea4fab",e=async(n,r,i,o={})=>{if(Gc)return;let s=_(S({application:"3ds-web",ddsource:"3ds-web",service:"3ds-web"},o),{level:r,message:r==="error"&&i?"".concat(n,": ").concat(i.message):n});try{if(!(await fetch("https://http-intake.logs.datadoghq.com/v1/input/".concat(t),{method:"POST",body:JSON.stringify(s),headers:{"Content-Type":"application/json"}})).ok)throw new Error("Network response was not ok")}catch(a){}};return{log:{error:(n,r,i)=>e(n,"error",r,i),info:(n,r)=>e(n,"info",void 0,r),warn:(n,r)=>e(n,"warn",void 0,r)}}})();(function(t){t.ONE="01",t.TWO="02",t.THREE="03",t.FOUR="04",t.FIVE="05"})(Rr||(Rr={}));Tr=t=>t==null?"":JSON.stringify(t),Eh=()=>{let t=[1,4,8,15,16,24,32,48],e=window.screen.colorDepth,n=t.filter(r=>r<=e);return n.length===0?t[0]:Math.max(...n)},Rh=t=>t==null?void 0:t.split("-").slice(0,2).join("-"),Ah=()=>({browserColorDepth:Tr(Eh()),browserJavascriptEnabled:!0,browserJavaEnabled:window.navigator.javaEnabled(),browserLanguage:Rh(window.navigator.language),browserScreenHeight:Tr(window.screen.height),browserScreenWidth:Tr(window.screen.width),browserTZ:Tr(new Date().getTimezoneOffset()),browserUserAgent:window.navigator.userAgent}),Hc=(t="05")=>{let n={"01":["250px","400px"],"02":["390px","400px"],"03":["500px","600px"],"04":["600px","400px"],"05":["100%","100%"]}[t];if(n)return n;{let r=new Error("Window size ".concat(t," is not supported"));throw we.log.error("Unsupported window size",r),r}},_h=t=>!t||t instanceof HTMLElement,Vc=(t,e,n,r="0",i="0",o)=>{if(!_h(t)||!e||!n){let a="Unable to create iframe. Container must be a HTML element ".concat(JSON.stringify(t)," ").concat(e," ").concat(n);throw we.log.error("Unable to create iframe",new Error),Error(a)}let s=document.createElement("iframe");return s.name=e,s.width=r,s.height=i,s.setAttribute("id",n),s.setAttribute("frameborder","0"),s.setAttribute("border","0"),o&&typeof o=="function"&&s.addEventListener("onload",o),t.appendChild(s),s},Wc=(t,e,n)=>{let r=document.createElement("form");return r.name=t,r.action=e,r.method="POST",r.target=n,r},Yc=(t,e)=>{let n=document.createElement("input");return n.name=t,n.value=e,n},Uc=(t,e=!1)=>{let n;if(n=document.getElementById(t),n){n.innerHTML="",e&&n.setAttribute("style","display:none;");return}n=document.createElement("div"),n.id=t,e&&n.setAttribute("style","display:none;"),document.body.appendChild(n)},Jt=t=>t==null?void 0:t.map(e=>{var n;return(n=document.getElementById(e))==null?void 0:n.remove()}),Jc=(t,e)=>{let n=r=>typeof r=="string"?e(r):typeof r!="object"||r===null?r:Array.isArray(r)?r.map(n):Object.fromEntries(Object.entries(r).map(([i,o])=>[e(i),typeof o=="object"||Array.isArray(o)?n(o):o]));return n(t)},Oh=t=>Jc(t,e=>e.replace(/([a-z])([A-Z])/g,"$1_$2").toLowerCase()),Zc=t=>Jc(t,e=>e.replace(/_./g,n=>n[1].toUpperCase())),Ar=t=>btoa(JSON.stringify(t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,""),Xc=(()=>{let t,e;return{client:async(i,o,s,a)=>{if(!t)throw Error("Missing api key");e&&we.log.info("Using custom api base url in 3DS SDK ".concat(e));let c={};return a&&(c[Kc]=a),await fetch("".concat(e!=null?e:vh,"/3ds").concat(o),{method:i,body:JSON.stringify(s),headers:S({[wh]:t,"Content-Type":"application/json"},c)})},init:(i,o)=>{t=i,e=o}}})();(function(t){t.METHOD="method",t.CHALLENGE="challenge",t.METHOD_TIME_OUT="methodTimeout",t.START_METHOD_TIME_OUT="startMethodTimeout",t.ERROR="error"})(Z||(Z={}));$o=t=>window.postMessage(t,"*"),Qc=t=>typeof t=="object"&&t!==null&&"isCompleted"in t&&typeof t.isCompleted=="boolean"&&"id"in t&&typeof t.id=="string"&&"type"in t&&Object.values(Z).includes(t.type),Fc=t=>{var e;return(e={[Z.CHALLENGE]:De.IFRAME_NAME,[Z.METHOD]:Ne.IFRAME_NAME,[Z.METHOD_TIME_OUT]:Ne.IFRAME_NAME,[Z.ERROR]:"".concat(Ne.IFRAME_NAME,",").concat(De.IFRAME_NAME),[Z.START_METHOD_TIME_OUT]:""}[t])==null?void 0:e.split(",")},xh=t=>{let e;return new Promise((n,r)=>{let i=o=>{var s,a,c,l;if(Qc(o.data)){if(o.data.type===Z.ERROR)we.log.error("Error occurred during session creation: ".concat((s=o==null?void 0:o.data)==null?void 0:s.details)),r(new Error("An error occurred during session creation: ".concat((a=o==null?void 0:o.data)==null?void 0:a.details))),Jt(Fc((c=o.data)==null?void 0:c.type)),clearTimeout(e);else if(o.data.type===Z.START_METHOD_TIME_OUT)e=setTimeout(()=>{$o({id:o.data.id,type:Z.METHOD_TIME_OUT,isCompleted:!1})},1e4);else if(o.data.type!==Z.CHALLENGE){if(o.isTrusted){window.removeEventListener("message",i);let d=(p=>{let g=Zc(t),m={id:p.data.id,cardBrand:g.cardBrand,correlationId:g.correlationId};return g.additionalCardBrands&&(m.additionalCardBrands=g.additionalCardBrands),m})(o);n(d),Jt(Fc((l=o.data)==null?void 0:l.type)),clearTimeout(e)}}}};window.addEventListener("message",i)})},$c={},qc={"The card was not supported by any card schemes":"3DS is not supported for the provided card"},kh=t=>"errors"in t&&t.errors!==void 0&&typeof t.errors=="object"&&t.errors!==null,Nh=t=>typeof t=="object"&&t!==null&&("title"in t||"status"in t||"detail"in t),Dh=t=>{if(kh(t)){for(let e of Object.keys(t.errors))if(qc[e])throw new Error(qc[e])}else if(t.status===424&&t.error){let e=[];t.error.message&&e.push(t.error.message),t.error.details&&e.push("details: "+t.error.details);let n=e.length>0?e.join(" - "):t.title||"An unknown 3DS service error occurred";throw new Error(n)}else if(t.title&&$c[t.title])throw new Error($c[t.title]);throw new Error(t.title||"An unknown error occurred")},Bh=(t,e,n)=>{let r=Ar({threeDSServerTransID:e,threeDSMethodNotificationURL:"".concat(n,"?mode=redirect")}),i=window.open("","threeDSMethodForm");if(!i){console.error("Popup blocked or unable to open the window.");return}let o=Wc(Ne.FORM_NAME,t,"threeDSMethodForm");o.appendChild(Yc(Ne.INPUT_NAME,r)),document.body.appendChild(o),o.submit();let s=window.setInterval(()=>{i.closed&&(clearInterval(s),$o({isCompleted:!0,id:e,type:Z.METHOD}))},500)},Lh=(t,e,n)=>{let r=Ar({threeDSServerTransID:e,threeDSMethodNotificationURL:n}),i=document.getElementById(Ne.FRAME_CONTAINER_ID),o=Vc(i,Ne.IFRAME_NAME,Ne.IFRAME_NAME,"0","0");o.src="".concat(_r,"/").concat(Ih),o.onload=()=>{var s;(s=o.contentWindow)==null||s.postMessage({type:"startMethod",threeDSMethodURL:t,threeDSMethodData:r},"*")}},Mh=async({tokenId:t,tokenIntentId:e,pan:n,skipMethodRequest:r=!1,methodRequestMode:i,challengeMode:o,correlationId:s})=>{var g;let a=[n,t,e].filter(m=>m!==void 0);if(a.length===0)throw new Error("One of pan, tokenId, or tokenIntentId is required.");if(a.length>1)throw new Error("Only one of pan, tokenId, or tokenIntentId should be provided.");let c=n?"pan":t?"tokenId":"tokenIntentId",l=n||t||e,u=Ah(),d=await Xc.client("POST","/sessions",Oh({[c]:l,device:"browser",deviceInfo:u,webChallengeMode:o}),s);if(!d.ok){let m;try{m=await d.json()}catch(h){let f="Failed to parse error response. HTTP Status: ".concat(d.status);throw we.log.error(f),new Error(f)}if(Nh(m))Dh(m);else{let h="An unknown error occurred while creating session. Status: ".concat(d.status,".");throw we.log.error("".concat(h," Response: ").concat(JSON.stringify(m,null,2))),new Error(h)}}let p=Zc(await d.json());return p.correlationId=((g=d.headers)==null?void 0:g.get(Kc))||"",we.log.info("3DS session response received with ID ".concat(p.id)),p.methodUrl&&!r&&($o({isCompleted:!1,id:p.id,type:Z.START_METHOD_TIME_OUT}),i===Er.REDIRECT?Bh(p.methodUrl,p.id,p.methodNotificationUrl):Lh(p.methodUrl,p.id,p.methodNotificationUrl)),p},jh=async({tokenId:t,tokenIntentId:e,pan:n,skipMethodRequest:r=!1,methodRequestMode:i=Er.IFRAME,challengeMode:o=Er.IFRAME,correlationId:s=""})=>{let a=await Mh({tokenId:t,tokenIntentId:e,pan:n,skipMethodRequest:r,methodRequestMode:i,challengeMode:o,correlationId:s}).catch(c=>Promise.reject(c.message));if(!a.methodUrl||r){let c={id:a.id,cardBrand:a.cardBrand};return a.additionalCardBrands&&(c.additionalCardBrands=a.additionalCardBrands),c}return await xh(a)},Uh=(t=6e4)=>{let e;return new Promise((n,r)=>{let i=o=>{var s,a;if(Qc(o.data))if(o.data.type===Z.ERROR)we.log.error("Error occurred during challenge: ".concat((s=o==null?void 0:o.data)==null?void 0:s.details)),r(new Error("An error occurred during challenge: ".concat((a=o==null?void 0:o.data)==null?void 0:a.details))),Jt([De.IFRAME_NAME]),clearTimeout(t);else if(o.data.type===Z.CHALLENGE){clearTimeout(e),window.removeEventListener("message",i);let l=(u=>({id:u.data.id,isCompleted:u.data.isCompleted,authenticationStatus:u.data.authenticationStatus}))(o);we.log.info("".concat(o.data.type," notification received for session: ").concat(l.id)),n(l),Jt([De.IFRAME_NAME])}else o.isTrusted};window.addEventListener("message",i),e=setTimeout(()=>{window.removeEventListener("message",i),r(new Error("Timed out waiting for a challenge response. Please try again.")),Jt([De.IFRAME_NAME])},t)})};$h=(t,e,n)=>{let r=document.getElementById(n!=null?n:De.FRAME_CONTAINER_ID),i=Hc(e.challengeWindowSize),o=Ar(e),s=De.IFRAME_NAME,a=Vc(r,s,s,i[0],i[1]);a.src="".concat(_r,"/").concat(Ch),a.onload=()=>{var c;(c=a.contentWindow)==null||c.postMessage({type:"startChallenge",acsURL:t,creq:o},"*")}},qh=(t,e)=>{let n=Hc(e.challengeWindowSize);if(!window.open("","threeDSChallenge","width=".concat(n[0],",height=").concat(n[1])))throw new Error("Popup blocked or unable to open the window.");let i=Ar(e),o=Wc(De.FORM_NAME,t,"threeDSChallenge"),s=Yc("creq",i);o.appendChild(s),document.body.appendChild(o),o.submit()},Kh=({sessionId:t,acsTransactionId:e,acsChallengeUrl:n,threeDSVersion:r,windowSize:i,mode:o,containerId:s})=>{if(!t)throw new Error("Session ID is required");let a={messageType:"CReq",messageVersion:r,threeDSServerTransID:t,acsTransID:e,challengeWindowSize:i!=null?i:Rr.THREE};if(Fh(a))o===Er.REDIRECT?qh(n,a):$h(n,a,s);else{let c="Invalid challenge request payload for session: ".concat(t);return we.log.error(c),Promise.reject(new Error(c))}return Promise.resolve({id:t})},zh=async({sessionId:t,acsTransactionId:e,acsChallengeUrl:n,threeDSVersion:r,windowSize:i,mode:o="iframe",timeout:s=6e4,containerId:a})=>(await Kh({sessionId:t,acsTransactionId:e,acsChallengeUrl:n,threeDSVersion:r,windowSize:i,mode:o,containerId:a}).catch(c=>Promise.reject(c.message)),Uh(s)),_r=zc,eu=(t,e)=>{var n,r;try{Th({disableTelemetry:(n=e==null?void 0:e.disableTelemetry)!=null?n:!1}),Uc(Ne.FRAME_CONTAINER_ID,!0),Uc(De.FRAME_CONTAINER_ID)}catch(i){we.log.error("Unable to create iframe container",i)}return _r=(r=e==null?void 0:e.sdkBaseUrl)!=null?r:zc,Xc.init(t,e==null?void 0:e.apiBaseUrl),{createSession:jh,startChallenge:zh}};window.BasisTheory3ds=eu});var ly={};Tt(ly,{ApiClient:()=>at,CLICK_ID_COOKIES:()=>Zr,CLICK_ID_URL_PARAMS:()=>Jr,CheckoutResource:()=>un,CheckoutUtils:()=>ii,CurrencyUtils:()=>ri,ExpressPaymentMethodsResource:()=>fn,FunnelActionType:()=>tn,GeoResource:()=>hn,GoogleAutocompleteCore:()=>pt,ISODataCore:()=>bn,OffersResource:()=>gn,OrderBumpUtils:()=>ai,OrderUtils:()=>ni,OrdersResource:()=>pn,PaymentService:()=>Or,PaymentsResource:()=>ct,PluginConfigUtils:()=>Gr,PostPurchasesUtils:()=>si,ProductsUtils:()=>ti,PromotionsUtils:()=>oi,ShippingRatesResource:()=>mn,StoreConfigResource:()=>ut,TagadaApiError:()=>Oe,TagadaAuthError:()=>ot,TagadaCircuitBreakerError:()=>st,TagadaClient:()=>Lt,TagadaError:()=>me,TagadaErrorCode:()=>le,TagadaExternalTracker:()=>Xt,TagadaNetworkError:()=>it,TagadaTracker:()=>zo,TagadaValidationError:()=>ln,ThreedsResource:()=>dt,broadcastConfigUpdate:()=>Sd,clearFunnelSessionCookie:()=>_t,createRawPluginConfig:()=>As,createTagadaClient:()=>Go,debounceConfigUpdate:()=>Pd,formatMoney:()=>au,funnelQueryKeys:()=>yd,getAssignedPaymentFlowId:()=>nt,getAssignedStepConfig:()=>ee,getBasisTheoryApiKey:()=>sy,getBasisTheoryTenantId:()=>ay,getCurrencyInfo:()=>lu,getFunnelSessionCookie:()=>rn,getFunnelVariantId:()=>Cu,getInternalPath:()=>jt,getPathInfo:()=>Zs,getPluginConfig:()=>ad,hasFunnelSessionCookie:()=>Iu,injectStepConfigScripts:()=>Ho,isApplePayAvailable:()=>xr,isGooglePayAvailable:()=>Nr,isPathRemapped:()=>Js,loadLocalConfig:()=>Rs,loadPluginConfig:()=>Hr,makeMetaEventId:()=>wd,matchRoute:()=>Xs,minorUnitsToMajorUnits:()=>uu,moneyStringOrNumberToMinorUnits:()=>cu,onConfigUpdate:()=>bd,publishTrackingGlobal:()=>dn,resolveClickId:()=>Xr,sendConfigUpdate:()=>qs,setFunnelSessionCookie:()=>$r,startApplePaySession:()=>kr,startGooglePaySession:()=>Dr});Qt();rt();var le={NETWORK_ERROR:"network_error",API_ERROR:"api_error",AUTH_REQUIRED:"auth_required",TOKEN_EXPIRED:"token_expired",NOT_FOUND:"not_found",VALIDATION_ERROR:"validation_error",CIRCUIT_BREAKER:"circuit_breaker",PAYMENT_FAILED:"payment_failed",CARD_DECLINED:"card_declined",SESSION_EXPIRED:"session_expired",RATE_LIMITED:"rate_limited",TIMEOUT:"timeout",UNKNOWN:"unknown"},me=class extends Error{constructor(e,n){var r;super(e),this.name="TagadaError",this.code=n.code,this.statusCode=n.statusCode,this.retryable=(r=n.retryable)!=null?r:!1,this.details=n.details,Object.setPrototypeOf(this,new.target.prototype)}},Oe=class extends me{constructor(e,n,r){var i,o;super(e,{code:(i=r==null?void 0:r.code)!=null?i:le.API_ERROR,statusCode:n,retryable:(o=r==null?void 0:r.retryable)!=null?o:n>=500,details:r==null?void 0:r.details}),this.name="TagadaApiError"}},it=class extends me{constructor(e="Network request failed"){super(e,{code:le.NETWORK_ERROR,retryable:!0}),this.name="TagadaNetworkError"}},ot=class extends me{constructor(e="Authentication required",n=401){super(e,{code:le.AUTH_REQUIRED,statusCode:n,retryable:!1}),this.name="TagadaAuthError"}},ln=class extends me{constructor(e,n){super(e,{code:le.VALIDATION_ERROR,statusCode:400,retryable:!1,details:n}),this.name="TagadaValidationError"}},st=class extends me{constructor(e){super(e,{code:le.CIRCUIT_BREAKER,retryable:!1}),this.name="TagadaCircuitBreakerError"}};var at=class{constructor(e){this.currentToken=null;this.tokenProvider=null;this.requestHistory=new Map;this.WINDOW_MS=5e3;this.MAX_REQUESTS=30;this.baseURL=e.baseURL,this.timeout=e.timeout||6e4,this.defaultHeaders=S({"Content-Type":"application/json"},e.headers),typeof setInterval!="undefined"&&setInterval(()=>this.cleanupHistory(),1e4)}setTokenProvider(e){this.tokenProvider=e}async get(e,n){return this.request("GET",e,void 0,n)}async post(e,n,r){return this.request("POST",e,n,r)}async put(e,n,r){return this.request("PUT",e,n,r)}async patch(e,n,r){return this.request("PATCH",e,n,r)}async delete(e,n){return this.request("DELETE",e,void 0,n)}setHeader(e,n){this.defaultHeaders[e]=n}removeHeader(e){delete this.defaultHeaders[e]}updateToken(e){this.currentToken=e,e?this.setHeader("x-cms-token",e):(this.removeHeader("x-cms-token"),console.log("[SDK] Token removed from ApiClient"))}getCurrentToken(){return this.currentToken}updateConfig(e){e.baseURL&&(this.baseURL=e.baseURL),e.timeout&&(this.timeout=e.timeout),e.headers&&Object.assign(this.defaultHeaders,e.headers),console.log("[SDK] ApiClient configuration updated")}async request(e,n,r,i){let o="".concat(e,":").concat(n);try{this.checkRequestLimit(o)}catch(d){throw console.error("[SDK] \u{1F6D1} Request blocked by Circuit Breaker:",d),d}if(!(i!=null&&i.skipAuth)&&!this.currentToken&&this.tokenProvider)try{console.log("[SDK] Waiting for token...");let d=await this.tokenProvider();d&&this.updateToken(d)}catch(d){console.error("[SDK] Failed to get token from provider:",d)}let s=S({},this.defaultHeaders);i!=null&&i.headers&&Object.assign(s,i.headers),!(i!=null&&i.skipAuth)&&this.currentToken&&(s["x-cms-token"]=this.currentToken);let a="".concat(this.baseURL).concat(n);if(i!=null&&i.params){let d=new URLSearchParams(i.params);a+="?".concat(d.toString())}console.log("[SDK] Making ".concat(e," request to: ").concat(a));let c=new AbortController,l=setTimeout(()=>c.abort(),this.timeout),u=i!=null&&i.signal?Hu([i.signal,c.signal]):c.signal;try{let d={method:e,headers:s,signal:u};r!==void 0&&(d.body=JSON.stringify(r));let p=await fetch(a,d);if(!p.ok){let m=await this.safeParseJson(p);throw this.toTagadaError(p.status,m,p.statusText)}return await p.json()}catch(d){throw d instanceof me?d:d instanceof DOMException&&d.name==="AbortError"?new Oe("Request timed out",0,{code:le.TIMEOUT,retryable:!0}):d instanceof TypeError?new it(d.message):d instanceof Error?d:new Error(String(d))}finally{clearTimeout(l)}}toTagadaError(e,n,r){var o,s,a;let i=(s=(o=n==null?void 0:n.message)!=null?o:n==null?void 0:n.error)!=null?s:r;return e===401||e===403?new ot(i,e):e===429?new Oe(i,429,{code:le.RATE_LIMITED,retryable:!0}):e===404?new Oe(i,404,{code:le.NOT_FOUND,retryable:!1}):new Oe(i,e,{code:(a=n==null?void 0:n.code)!=null?a:le.API_ERROR,details:n,retryable:e>=500})}async safeParseJson(e){try{return await e.json()}catch(n){return}}checkRequestLimit(e){let n=Date.now(),r=this.requestHistory.get(e);if(!r){this.requestHistory.set(e,{count:1,firstRequestTime:n});return}if(n-r.firstRequestTime>this.WINDOW_MS){this.requestHistory.set(e,{count:1,firstRequestTime:n});return}if(r.count++,r.count>this.MAX_REQUESTS)throw new st("Circuit Breaker: Too many requests to ".concat(e," (").concat(r.count," in ").concat(this.WINDOW_MS,"ms)"))}cleanupHistory(){let e=Date.now();for(let[n,r]of this.requestHistory.entries())e-r.firstRequestTime>this.WINDOW_MS&&this.requestHistory.delete(n)}};function Hu(t){let e=new AbortController;for(let n of t){if(n.aborted)return e.abort(n.reason),e.signal;n.addEventListener("abort",()=>e.abort(n.reason),{once:!0,signal:e.signal})}return e.signal}function Vu(){return{width:window.screen.width,height:window.screen.height}}function Wu(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(t){return"UTC"}}function vs(){try{return navigator.language||"en-US"}catch(t){return"en-US"}}var qe=typeof navigator!="undefined"?navigator.userAgent:"";function pe(t,...e){for(let n of e){let r=t.match(n);if(r)return r}return null}function Yu(t){let e=[[/EdgA?\/([\d.]+)/i,"Edge"],[/OPR\/([\d.]+)/i,"Opera"],[/Brave\/([\d.]+)/i,"Brave"],[/Vivaldi\/([\d.]+)/i,"Vivaldi"],[/SamsungBrowser\/([\d.]+)/i,"Samsung Internet"],[/UCBrowser\/([\d.]+)/i,"UC Browser"],[/Firefox\/([\d.]+)/i,"Firefox"],[/CriOS\/([\d.]+)/i,"Chrome"],[/FxiOS\/([\d.]+)/i,"Firefox"],[/Chrome\/([\d.]+)/i,"Chrome"],[/Version\/([\d.]+).*Safari/i,"Safari"],[/Safari\/([\d.]+)/i,"Safari"]];for(let[n,r]of e){let i=t.match(n);if(i){let o=i[1]||"";return{name:r,version:o,major:o.split(".")[0]||""}}}return{name:"",version:"",major:""}}function Ju(t){let e=pe(t,/Windows NT ([\d.]+)/i)||pe(t,/Mac OS X ([\d_.]+)/i)||pe(t,/Android ([\d.]+)/i)||pe(t,/iPhone OS ([\d_]+)/i)||pe(t,/iPad.*OS ([\d_]+)/i)||pe(t,/CrOS[\w ]*\/([\d.]+)/i)||pe(t,/Linux/i);if(!e)return{name:"",version:""};let n=e[0],r=(e[1]||"").replace(/_/g,".");return/Windows/i.test(n)?{name:"Windows",version:{"10.0":"10","6.3":"8.1","6.2":"8","6.1":"7","6.0":"Vista","5.1":"XP"}[r]||r}:/Mac OS X/i.test(n)?{name:"macOS",version:r}:/Android/i.test(n)?{name:"Android",version:r}:/iPhone|iPad/i.test(n)?{name:"iOS",version:r}:/CrOS/i.test(n)?{name:"Chrome OS",version:r}:/Linux/i.test(n)?{name:"Linux",version:""}:{name:"",version:""}}function Zu(t){var e;if(/iPad/i.test(t))return{type:"tablet",vendor:"Apple",model:"iPad"};if(/iPhone/i.test(t))return{type:"mobile",vendor:"Apple",model:"iPhone"};if(/iPod/i.test(t))return{type:"mobile",vendor:"Apple",model:"iPod"};if(/Android/i.test(t)){let n=t.match(/Android[\s\d.]+;\s*([^)]+?)(?:\s+Build)/i);return{type:/Mobile/i.test(t)?"mobile":"tablet",model:(e=n==null?void 0:n[1])==null?void 0:e.trim()}}}function Xu(t){let e=pe(t,/AppleWebKit\/([\d.]+)/i)||pe(t,/Gecko\/([\d.]+)/i)||pe(t,/Trident\/([\d.]+)/i)||pe(t,/Presto\/([\d.]+)/i);if(!e)return{name:"",version:""};let n=e[0],r=e[1]||"";return/AppleWebKit/i.test(n)?{name:"WebKit",version:r}:/Gecko/i.test(n)?{name:"Gecko",version:r}:/Trident/i.test(n)?{name:"Trident",version:r}:/Presto/i.test(n)?{name:"Presto",version:r}:{name:"",version:""}}function Qu(t){return/x86_64|x64|amd64|Win64/i.test(t)?{architecture:"amd64"}:/ia32|x86/i.test(t)?{architecture:"ia32"}:/aarch64|arm64/i.test(t)?{architecture:"arm64"}:/arm/i.test(t)?{architecture:"arm"}:{architecture:""}}function ed(){return navigator.webdriver?!0:/bot|crawl|spider|slurp|Googlebot|bingbot|yandex|baidu|duckduck|facebookexternalhit|Twitterbot|linkedinbot|embedly|quora|pinterest|redditbot|Slackbot|Discordbot|WhatsApp|TelegramBot|Applebot/i.test(qe)}function td(t){return/Chrome|Chromium|Edge|Brave|Opera|Vivaldi|Arc/i.test(t)}function nd(){return window.matchMedia("(display-mode: standalone)").matches||navigator.standalone===!0}function rd(t){return/mac/i.test(t)?navigator.maxTouchPoints>0:!1}function Is(){if(typeof window=="undefined")return{userAgent:{name:"",browser:{major:"",name:"",version:""},os:{name:"",version:""},device:void 0,engine:{name:"",version:""},cpu:{architecture:""}},screenResolution:{width:0,height:0},timeZone:"UTC",flags:{isBot:!1,isChromeFamily:!1,isStandalonePWA:!1,isAppleSilicon:!1}};let t=Yu(qe),e=Ju(qe),n=Zu(qe),r=Xu(qe),i=Qu(qe),o;try{o={isBot:ed(),isChromeFamily:td(t.name),isStandalonePWA:nd(),isAppleSilicon:rd(e.name)}}catch(s){o={isBot:!1,isChromeFamily:!1,isStandalonePWA:!1,isAppleSilicon:!1}}return{userAgent:{name:qe,browser:t,os:e,device:n,engine:r,cpu:i},screenResolution:Vu(),timeZone:Wu(),flags:o}}function Cs(){if(typeof window=="undefined")return{};let t=new URLSearchParams(window.location.search);return{locale:t.get("locale")||void 0,currency:t.get("currency")||void 0,utmSource:t.get("utm_source")||void 0,utmMedium:t.get("utm_medium")||void 0,utmCampaign:t.get("utm_campaign")||void 0,gclid:t.get("gclid")||void 0}}var cn=class{constructor(){this.listeners=new Map}on(e,n){return this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(n),()=>this.off(e,n)}off(e,n){this.listeners.has(e)&&this.listeners.get(e).delete(n)}async emit(e,n){if(this.listeners.has(e)){let r=Array.from(this.listeners.get(e));await Promise.all(r.map(i=>{try{return Promise.resolve(i(n))}catch(o){return console.error('[EventBus] Error in listener for event "'.concat(e,'":'),o),Promise.resolve()}}))}}clear(){this.listeners.clear()}};Ur();function Bt(t){try{let e=t.split(".");if(e.length!==3)return console.error("Invalid JWT token format"),null;let n=e[1],r=n+"=".repeat((4-n.length%4)%4),i=atob(r),o=JSON.parse(i);return o.exp&&Date.now()>=o.exp*1e3?(console.warn("JWT token is expired"),null):{sessionId:o.sessionId,storeId:o.storeId,accountId:o.accountId,customerId:o.customerId,role:o.role,isValid:!0,isLoading:!1}}catch(e){return console.error("Failed to decode JWT token:",e),null}}function Ts(t){try{let e=t.split(".");if(e.length!==3)return!0;let n=e[1],r=n+"=".repeat((4-n.length%4)%4),i=atob(r),o=JSON.parse(i);return o.exp?Date.now()>=o.exp*1e3:!1}catch(e){return console.error("Failed to check token expiration:",e),!0}}Qt();var lt={},id=["","VITE_","REACT_APP_","NEXT_PUBLIC_"];function xe(t,e=id){var n,r,i;for(let o of e){let s=o?"".concat(o).concat(t):t;if(typeof process!="undefined"&&((n=process==null?void 0:process.env)!=null&&n[s]))return console.log("process.env[".concat(s,"]"),process.env[s]),process.env[s];if(typeof lt!="undefined"&&((r=lt==null?void 0:lt.env)!=null&&r[s]))return console.log("import.meta.env[".concat(s,"]"),lt.env[s]),lt.env[s];if(typeof window!="undefined"&&((i=window==null?void 0:window.__TAGADA_ENV__)!=null&&i[s]))return console.log("window.__TAGADA_ENV__[".concat(s,"]"),window.__TAGADA_ENV__[s]),window.__TAGADA_ENV__[s]}}var od=async(t="default")=>{try{if((xe("TAGADA_ENV")||xe("TAGADA_ENVIRONMENT"))==="production"||!Rt(!0))return null;let n=await fetch("/.local.json");if(!n.ok)return null;let r=await n.json(),i={},o=!1;try{let a=await fetch("/config/".concat(t,".tgd.json"));a.ok||(a=await fetch("/config/".concat(t,".json"))),a.ok&&(i=await a.json(),o=!0)}catch(a){}if(!o&&t!=="default"){console.warn("\u26A0\uFE0F Config variant '".concat(t,"' not found, falling back to 'default'"));try{let a=await fetch("/config/default.tgd.json");a.ok||(a=await fetch("/config/default.json")),a.ok&&(i=await a.json(),o=!0,console.log("\u2705 Fallback to 'default' config successful"))}catch(a){}}o||console.warn(t==="default"?"\u26A0\uFE0F No 'default' config found. Create /config/default.tgd.json":"\u26A0\uFE0F Neither '".concat(t,"' nor 'default' config found. Create /config/default.tgd.json"));let s={storeId:r.storeId,accountId:r.accountId,basePath:r.basePath,config:i};return console.log("\u{1F6E0}\uFE0F Using local development plugin config:",s),s}catch(e){return null}},sd=async()=>{try{if((xe("TAGADA_ENV")||xe("TAGADA_ENVIRONMENT"))==="production"||!Rt(!0))return null;try{console.log("\u{1F6E0}\uFE0F [V2] Attempting to load /config/funnel.local.json...");let r=await fetch("/config/funnel.local.json");if(r.ok){let i=await r.json();console.log("\u{1F6E0}\uFE0F [V2] \u2705 Loaded local funnel config (NEW format):",i);let{loadLocalFunnelConfig:o}=await Promise.resolve().then(()=>(rt(),ws));if(await o(),i.staticResources){let s={};for(let[a,c]of Object.entries(i.staticResources))s[a]={id:c};return s}return null}}catch(r){console.log("\u{1F6E0}\uFE0F [V2] funnel.local.json not found, trying legacy format...")}console.log("\u{1F6E0}\uFE0F [V2] Attempting to load /config/resources.static.json (legacy)...");let e=await fetch("/config/resources.static.json");if(!e.ok)return console.log("\u{1F6E0}\uFE0F [V2] No local static resources found"),null;let n=await e.json();return console.log("\u{1F6E0}\uFE0F [V2] \u2705 Loaded legacy static resources:",n),n}catch(t){return console.error("\u{1F6E0}\uFE0F [V2] \u274C Error loading static resources:",t),null}},Ke=t=>{if(typeof document=="undefined")return;let e=document.querySelector('meta[name="'.concat(t,'"]'));return(e==null?void 0:e.getAttribute("content"))||void 0},Es=()=>{if(typeof window!="undefined"&&window.__TAGADA_PLUGIN_CONFIG__)return window.__TAGADA_PLUGIN_CONFIG__;try{let t=Ke("x-plugin-config");if(t)return JSON.parse(decodeURIComponent(t))}catch(t){}return{}};function ad(){if(typeof document=="undefined")return{basePath:"/",config:{}};let t=Ke("x-plugin-store-id"),e=Ke("x-plugin-account-id"),n=Ke("x-plugin-base-path")||"/",r=Es();return{storeId:t,accountId:e,basePath:n,config:r}}var ld=async()=>{try{if(typeof document=="undefined")return null;let t=Ke("x-plugin-store-id"),e=Ke("x-plugin-account-id");if(!t)return null;let n=Ke("x-plugin-base-path")||"/",r=Es();e||console.warn("\u26A0\uFE0F Plugin config: Account ID not found in meta tags");let i={storeId:t,accountId:e,basePath:n,config:r};return console.log("\u{1F680} [HIGHEST PRIORITY] Plugin config loaded from meta tags (runtime injected config):",{storeId:t,accountId:e,basePath:n,configKeys:Object.keys(r),configSize:JSON.stringify(r).length}),i}catch(t){return console.warn("\u26A0\uFE0F Error loading production config from meta tags:",t),null}},Hr=async(t="default",e)=>{var s,a;console.log("\u{1F527} [V2] loadPluginConfig called with variant:",t);let n=await sd(),r=await ld();if(r){let c=_(S({},r),{staticResources:n!=null?n:void 0});return console.log("\u2705 [V2] Using INJECTED config from meta tags (HIGHEST PRIORITY)"),c}if(e){let c={storeId:e.storeId,accountId:e.accountId,basePath:(s=e.basePath)!=null?s:"/",config:(a=e.config)!=null?a:{},staticResources:n!=null?n:void 0};return console.log("\u2705 [V2] Using raw config parameter (PRIORITY 2)"),c}let i=await As();if(i){let c=_(S({},i),{staticResources:n!=null?n:void 0});return console.log("\u2705 [V2] Using environment variables config (PRIORITY 3 - build time)"),c}let o=await od(t);if(o){let c=_(S({},o),{staticResources:n!=null?n:void 0});return console.log("\u2705 [V2] Using local dev config files (PRIORITY 4)"),c}return console.warn("\u26A0\uFE0F [V2] No plugin config found - using defaults"),{basePath:"/",config:{},staticResources:n!=null?n:void 0}};async function Rs(t="default",e){try{if(!Rt())return null;if(e)return e;let n=["/config/".concat(t,".config.json"),"/config/".concat(t,".tgd.json"),"/config/".concat(t,".json")];for(let r of n)try{let i=await fetch(r);if(i.ok)return await i.json()}catch(i){continue}return console.warn("\u26A0\uFE0F [loadLocalConfig] No config found for '".concat(t,"'")),null}catch(n){return console.error("[loadLocalConfig] Error loading config:",n),null}}async function As(){try{if(!Rt())return;let t=xe("TAGADA_STORE_ID"),e=xe("TAGADA_ACCOUNT_ID"),n=xe("TAGADA_BASE_PATH"),r=xe("TAGADA_CONFIG_NAME");if(!t||!e)return;let i=await Rs(r);if(!i)return;let o={storeId:t,accountId:e,basePath:n||"/",config:i};return console.log("\u{1F6E0}\uFE0F [createRawPluginConfig] Using environment variables (build-time config):",{hasStoreId:!!o.storeId,hasAccountId:!!o.accountId,basePath:o.basePath,hasConfig:!!o.config}),o}catch(t){console.error("[createRawPluginConfig] Error creating config:",t);return}}var Gr=class{static getPluginConfig(e,n){return{storeId:(e==null?void 0:e.storeId)||(n==null?void 0:n.storeId),accountId:(e==null?void 0:e.accountId)||(n==null?void 0:n.accountId),basePath:(e==null?void 0:e.basePath)||(n==null?void 0:n.basePath)||"/",config:(e==null?void 0:e.config)||{}}}static validateConfig(e){return!!(e.storeId&&e.accountId)}};kt();Xe();Xe();var Vr=new Map,Wr=new Set;function cd(){return typeof window=="undefined"?null:new URLSearchParams(window.location.search).get("authCode")}async function _s(t,e,n,r=!1){if(Wr.has(t))throw r&&console.log("[AuthHandoff] Code already resolved, skipping duplicate request"),new Error("Auth code already resolved");let i=Vr.get(t);if(i)return r&&console.log("[AuthHandoff] Resolution already in progress, waiting for existing request"),i;r&&console.log("[AuthHandoff] Resolving authCode:",t.substring(0,15)+"...");let o=(async()=>{try{let s=await fetch("".concat(n,"/api/v1/cms/auth/resolve-handoff"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t,storeId:e})});if(!s.ok){let c=await s.json().catch(()=>({message:"Unknown error"}));throw new Error(c.message||"Failed to resolve auth handoff: ".concat(s.status))}let a=await s.json();return r&&console.log("[AuthHandoff] \u2705 Resolved successfully:",{customerId:a.customer.id,role:a.customer.role,hasContext:Object.keys(a.context).length>0}),r&&console.log("[AuthHandoff] Storing new token (overriding existing)"),ue(a.token),ud(r),Wr.add(t),a}catch(s){throw console.error("[AuthHandoff] \u274C Failed to resolve:",s),s}finally{Vr.delete(t)}})();return Vr.set(t,o),o}function ud(t=!1){if(typeof window=="undefined")return;let e=new URL(window.location.href);e.searchParams.has("authCode")&&(e.searchParams.delete("authCode"),window.history.replaceState({},"",e.pathname+e.search+e.hash),t&&console.log("[AuthHandoff] Cleaned authCode from URL"))}function Os(){let t=cd();return!(!t||!t.startsWith("ah_")||Wr.has(t))}var Lt=class{constructor(e={}){this.bus=new cn;this.eventDispatcher=new Je;this.tokenPromise=null;this.tokenResolver=null;this.isInitializingSession=!1;this.lastSessionInitError=null;this.sessionInitRetryCount=0;this.MAX_SESSION_INIT_RETRIES=3;var a,c,l,u;this.config=e,this.instanceId=Math.random().toString(36).substr(2,9),this.boundHandleStorageChange=this.handleStorageChange.bind(this),this.boundHandlePageshow=d=>{if(d.persisted)if(this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Page restored from BFcache (back button), re-initializing funnel...")),this.funnel&&this.state.session&&this.state.store){this.funnel.resetInitialization();let p=this.getAccountId(),m=new URLSearchParams(typeof window!="undefined"?window.location.search:"").get("funnelId")||void 0;this.funnel.autoInitialize({customerId:this.state.session.customerId,sessionId:this.state.session.sessionId},{id:this.state.store.id,accountId:p},m).catch(h=>{console.error("[TagadaClient] Funnel re-initialization failed:",h)})}else this.sessionInitRetryCount=0,this.initialize()},console.log("[TagadaClient ".concat(this.instanceId,"] Initializing...")),console.log("[TagadaClient ".concat(this.instanceId,"] Config:"),{debugMode:e.debugMode,hasRawPluginConfig:!!e.rawPluginConfig,rawPluginConfig:e.rawPluginConfig,features:e.features}),ss(this.config.debugMode)&&this.config.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Preview mode active - state cleared"));let r=this.resolveEnvironment(),i=rs(r);e.customApiConfig&&(i=_(S(S({},i),e.customApiConfig),{apiConfig:S(S({},i.apiConfig),e.customApiConfig.apiConfig)}),this.config.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Applied custom API config:"),i.apiConfig.baseUrl)),this.state={auth:{isAuthenticated:!1,isLoading:!1,customer:null,session:null},session:null,customer:null,locale:{locale:"en-US",language:"en",region:"US",messages:{}},currency:{code:"USD",symbol:"$",name:"US Dollar"},store:null,environment:i,isLoading:!0,isInitialized:!1,isSessionInitialized:!1,pluginConfig:{basePath:"/",config:{}},pluginConfigLoading:!0,debugMode:(a=e.debugMode)!=null?a:r!=="production",token:null},console.log("[TagadaClient ".concat(this.instanceId,"] Initial state:"),{pluginConfigLoading:this.state.pluginConfigLoading,hasRawPluginConfig:!!e.rawPluginConfig}),this.apiClient=new at({baseURL:i.apiConfig.baseUrl});let o=(c=e.features)==null?void 0:c.funnel;if(o!==!1){let d=typeof o=="object"?o:{};this.funnel=new Dt({apiClient:this.apiClient,debugMode:this.state.debugMode,pluginConfig:this.state.pluginConfig,environment:this.state.environment,autoRedirect:d.autoRedirect,funnelId:(l=e.rawPluginConfig)==null?void 0:l.funnelId,stepId:(u=e.rawPluginConfig)==null?void 0:u.stepId})}this.apiClient.setTokenProvider(this.waitForToken.bind(this)),typeof window!="undefined"&&(window.addEventListener("storage",this.boundHandleStorageChange),window.addEventListener("pageshow",this.boundHandlePageshow)),this.setupConfigHotReload(),this.initialize()}destroy(){typeof window!="undefined"&&(window.removeEventListener("storage",this.boundHandleStorageChange),window.removeEventListener("pageshow",this.boundHandlePageshow)),this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Destroyed")),this.eventDispatcher.clear(),this.bus.clear()}handleStorageChange(){if(At()===this.state.token){this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Token unchanged (ignoring event)"));return}if(this.isInitializingSession){this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Session initialization in progress, skipping storage change"));return}if(this.sessionInitRetryCount>=this.MAX_SESSION_INIT_RETRIES&&this.lastSessionInitError){this.state.debugMode&&console.error("[TagadaClient ".concat(this.instanceId,"] Max session init retries reached, giving up"),this.lastSessionInitError);return}this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Storage changed, re-initializing token...")),this.initializeToken()}subscribe(e){return this.eventDispatcher.subscribe(e)}getState(){return this.state}updateState(e){this.state=S(S({},this.state),e),this.eventDispatcher.notify(this.state)}resolveEnvironment(){return this.config.environment?this.config.environment:Et()}async initialize(){try{await this.initializePluginConfig(),this.state.pluginConfig.storeId?await this.initializeToken():(console.warn("[TagadaClient] No store ID found in plugin config. Skipping token initialization."),this.updateState({isLoading:!1,isInitialized:!0}))}catch(e){console.error("[TagadaClient] Initialization failed:",e),this.updateState({isLoading:!1,isInitialized:!0})}}async initializePluginConfig(){if(console.log("[TagadaClient ".concat(this.instanceId,"] initializePluginConfig called"),{pluginConfigLoading:this.state.pluginConfigLoading,hasRawPluginConfig:!!this.config.rawPluginConfig}),!this.state.pluginConfigLoading){console.log("[TagadaClient ".concat(this.instanceId,"] Plugin config already loading or loaded, skipping..."));return}try{let e=this.config.localConfig||"default";console.log("[TagadaClient ".concat(this.instanceId,"] Loading plugin config with variant: ").concat(e));let n=await Hr(e,this.config.rawPluginConfig);console.log("[TagadaClient ".concat(this.instanceId,"] Plugin config loaded:"),n),this.updateState({pluginConfig:n,pluginConfigLoading:!1}),this.funnel&&this.funnel.setConfig({pluginConfig:n,environment:this.state.environment})}catch(e){console.error("[TagadaClient] Failed to load plugin config:",e),this.updateState({pluginConfig:{basePath:"/",config:{}},pluginConfigLoading:!1})}}async initializeToken(){var e;if(Os()){let n=this.state.pluginConfig.storeId;if(!n)return console.error("[TagadaClient] Cannot resolve authCode: storeId not found in config"),this.fallbackToNormalFlow();console.log("[TagadaClient ".concat(this.instanceId,"] \u{1F510} Cross-domain auth detected, resolving..."));try{let r=new URLSearchParams(window.location.search).get("authCode");if(!r)return this.fallbackToNormalFlow();let i=await _s(r,n,this.state.environment.apiConfig.baseUrl,this.state.debugMode);console.log("[TagadaClient ".concat(this.instanceId,"] \u2705 Auth handoff resolved:"),{customerId:i.customer.id,role:i.customer.role,hasContext:Object.keys(i.context).length>0}),this.setToken(i.token);let o=Bt(i.token);o?(this.updateState({session:o}),await this.initializeSession(o),(e=i.context)!=null&&e.funnelSessionId&&this.funnel&&this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Restoring funnel session from handoff context:"),i.context.funnelSessionId)):(console.error("[TagadaClient] Failed to decode token from handoff"),this.updateState({isInitialized:!0,isLoading:!1}));return}catch(r){console.error("[TagadaClient ".concat(this.instanceId,"] \u274C Auth handoff failed, falling back to normal flow:"),r)}}await this.fallbackToNormalFlow()}async fallbackToNormalFlow(){let n=new URLSearchParams(typeof window!="undefined"?window.location.search:"").get("token");n&&(this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] \u{1F512} URL token detected, setting immediately to prevent race condition")),this.apiClient.updateToken(n),ue(n));let r=At();console.log("[TagadaClient ".concat(this.instanceId,"] Initializing token (normal flow)..."),{hasExistingToken:!!r,hasQueryToken:!!n,storeId:this.state.pluginConfig.storeId});let i=null,o=!1;if(n?(i=n,o=!0):r&&!Ts(r)&&(i=r),i){this.setToken(i),o&&(this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Persisting query token to storage...")),ue(i));let s=Bt(i);s?(this.updateState({session:s}),await this.initializeSession(s)):(console.error("[TagadaClient] Failed to decode token"),this.updateState({isInitialized:!0,isLoading:!1}))}else{let s=this.state.pluginConfig.storeId;console.log("[TagadaClient ".concat(this.instanceId,"] No existing token, creating anonymous token..."),{hasStoreId:!!s,storeId:s}),s?await this.createAnonymousToken(s):(console.warn("[TagadaClient ".concat(this.instanceId,"] No storeId in plugin config, skipping anonymous token creation")),this.updateState({isInitialized:!0,isLoading:!1}))}}setToken(e){this.apiClient.updateToken(e),this.updateState({token:e}),this.tokenResolver&&(this.tokenResolver(e),this.tokenPromise=null,this.tokenResolver=null)}waitForToken(){return this.apiClient.getCurrentToken()?Promise.resolve(this.apiClient.getCurrentToken()):(this.tokenPromise||(this.tokenPromise=new Promise(e=>{this.tokenResolver=e})),this.tokenPromise)}async createAnonymousToken(e){if(typeof window!="undefined"){let r=new URLSearchParams(window.location.search).get("token");if(r){this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] \u{1F512} URL has token, skipping anonymous token creation")),this.setToken(r),ue(r);let i=Bt(r);i&&(this.updateState({session:i}),await this.initializeSession(i));return}}if(this.isInitializingSession){this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Session initialization in progress, skipping anonymous token creation"));return}try{let n=_e();this.state.debugMode&&console.log("[TagadaClient] Creating anonymous token for store:",e,{draft:n});let r=await this.apiClient.post("/api/v1/cms/session/anonymous",{storeId:e,role:"anonymous",draft:n},{skipAuth:!0});this.setToken(r.token),ue(r.token);let i=Bt(r.token);i&&(this.updateState({session:i}),await this.initializeSession(i)),this.updateState({isSessionInitialized:!0})}catch(n){console.error("[TagadaClient] Failed to create anonymous token:",n),this.updateState({isInitialized:!0,isLoading:!1})}}async initializeSession(e){var n,r,i,o,s,a,c,l,u,d,p;if(this.isInitializingSession){this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Session initialization already in progress, skipping"));return}this.isInitializingSession=!0;try{this.state.debugMode&&console.log("[TagadaClient ".concat(this.instanceId,"] Initializing session..."),{sessionId:e.sessionId});let g=await Is(),m=Cs(),h=vs(),f=_e(),b=new URLSearchParams(window.location.search).get("draft");b!==null&&qr(b==="true");let P={storeId:e.storeId,accountId:e.accountId,customerId:e.customerId,role:e.role,browserLocale:h,queryLocale:m.locale,queryCurrency:m.currency,utmSource:m.utmSource,utmMedium:m.utmMedium,utmCampaign:m.utmCampaign,gclid:m.gclid,browser:g.userAgent.browser.name,browserVersion:g.userAgent.browser.version,os:g.userAgent.os.name,osVersion:g.userAgent.os.version,deviceType:(n=g.userAgent.device)==null?void 0:n.type,deviceModel:(r=g.userAgent.device)==null?void 0:r.model,deviceVendor:(i=g.userAgent.device)==null?void 0:i.vendor,userAgent:g.userAgent.name,engineName:g.userAgent.engine.name,engineVersion:g.userAgent.engine.version,cpuArchitecture:g.userAgent.cpu.architecture,isBot:(s=(o=g.flags)==null?void 0:o.isBot)!=null?s:!1,isChromeFamily:(c=(a=g.flags)==null?void 0:a.isChromeFamily)!=null?c:!1,isStandalonePWA:(u=(l=g.flags)==null?void 0:l.isStandalonePWA)!=null?u:!1,isAppleSilicon:(p=(d=g.flags)==null?void 0:d.isAppleSilicon)!=null?p:!1,screenWidth:g.screenResolution.width,screenHeight:g.screenResolution.height,timeZone:g.timeZone,draft:f,fetchMessages:!1},w=await this.apiClient.post("/api/v1/cms/session/v2/init",P);this.lastSessionInitError=null,this.sessionInitRetryCount=0,this.updateSessionState(w,e),this.updateState({isInitialized:!0,isSessionInitialized:!0,isLoading:!1}),this.state.debugMode&&console.log("[TagadaClient] Session initialized successfully")}catch(g){this.lastSessionInitError=g,this.sessionInitRetryCount++,console.error("[TagadaClient] Error initializing session (attempt ".concat(this.sessionInitRetryCount,"/").concat(this.MAX_SESSION_INIT_RETRIES,"):"),g),this.updateState({isInitialized:!0,isLoading:!1})}finally{this.isInitializingSession=!1}}updateSessionState(e,n){var s,a,c,l,u,d,p,g,m,h;if(e.store){let f=e.store,b=_(S({},e.store),{accountId:f.accountId||((s=this.state.pluginConfig)==null?void 0:s.accountId)||n.accountId||"",presentmentCurrencies:f.presentmentCurrencies||[e.store.currency||"USD"],chargeCurrencies:f.chargeCurrencies||[e.store.currency||"USD"]});this.updateState({store:b})}if(e.locale){let f={locale:e.locale,language:e.locale.split("-")[0],region:(a=e.locale.split("-")[1])!=null?a:"US",messages:(c=e.messages)!=null?c:{}};this.updateState({locale:f})}if(e.store){let f={code:e.store.currency,symbol:this.getCurrencySymbol(e.store.currency),name:this.getCurrencyName(e.store.currency)};this.updateState({currency:f})}let r={isAuthenticated:(u=(l=e.customer)==null?void 0:l.isAuthenticated)!=null?u:!1,isLoading:!1,customer:(d=e.customer)!=null?d:null,session:n};this.updateState({customer:(p=e.customer)!=null?p:null,auth:r});let i=(g=this.config.features)==null?void 0:g.funnel,o=typeof i=="object"&&i.skipAutoInit;if(this.funnel&&!o&&n.customerId&&((m=e.store)!=null&&m.id)){let f=e.store.accountId||((h=this.state.pluginConfig)==null?void 0:h.accountId)||n.accountId||"";if(f){let P=new URLSearchParams(typeof window!="undefined"?window.location.search:"").get("funnelId")||void 0;this.state.debugMode&&console.log("[TagadaClient] Auto-initializing funnel...",{customerId:n.customerId,storeId:e.store.id,accountId:f,funnelId:P||"auto-detect"}),this.funnel.autoInitialize({customerId:n.customerId,sessionId:n.sessionId},{id:e.store.id,accountId:f},P).catch(w=>{console.error("[TagadaClient] Funnel auto-initialization failed:",w)})}else console.warn("[TagadaClient] Cannot auto-initialize funnel: accountId is missing")}}getCurrencySymbol(e){return{USD:"$",EUR:"\u20AC",GBP:"\xA3",JPY:"\xA5",CAD:"C$",AUD:"A$"}[e]||e}getCurrencyName(e){return{USD:"US Dollar",EUR:"Euro",GBP:"British Pound",JPY:"Japanese Yen",CAD:"Canadian Dollar",AUD:"Australian Dollar"}[e]||e}getAccountId(){var e,n,r;return((e=this.state.store)==null?void 0:e.accountId)||((n=this.state.pluginConfig)==null?void 0:n.accountId)||((r=this.state.session)==null?void 0:r.accountId)||""}updatePluginConfig(e){this.state.debugMode&&console.log("[TagadaClient] Hot-reloading config:",e);let n=S(S({},this.state.pluginConfig.config),e);this.updateState({pluginConfig:_(S({},this.state.pluginConfig),{config:n})}),this.bus.emit("CONFIG_UPDATED",n),this.state.debugMode&&console.log("[TagadaClient] Config updated successfully")}setupConfigHotReload(){if(typeof window=="undefined")return;let e=n=>{var r,i;if(((r=n.data)==null?void 0:r.type)==="TAGADAPAY_CONFIG_UPDATE"){let{config:o}=n.data;this.state.debugMode&&console.log("[TagadaClient] Received config update from parent:",o),this.updatePluginConfig(o)}else if(((i=n.data)==null?void 0:i.type)==="APPLY_STYLES_TO_ELEMENT"){let{elementId:o,styles:s}=n.data;this.state.debugMode&&console.log("[TagadaClient] Received style application request:",{elementId:o,styles:s}),this.applyStylesToElement(o,s)}};window.addEventListener("message",e),this.state.debugMode&&console.log("[TagadaClient] Config hot-reload and style manipulation listeners enabled")}applyStylesToElement(e,n){if(typeof document=="undefined")return;let r="tagada-editor-highlight",i=document.getElementById(r);i&&i.remove();let o=d=>{var w;let g=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr"]).has(d.tagName.toLowerCase()),m=d;if(g){let I=d.parentElement;if((I==null?void 0:I.getAttribute("data-tagada-highlight-wrapper"))==="true"&&I instanceof HTMLElement)m=I;else{let R=document.createElement("div");R.setAttribute("data-tagada-highlight-wrapper","true");let A=window.getComputedStyle(d),C=A.display;if(C==="inline"?R.style.display="inline-block":R.style.display=C,R.style.position="relative",C==="inline"||C.includes("inline")){let k=A.verticalAlign;k&&k!=="baseline"&&(R.style.verticalAlign=k)}["width","height","minWidth","minHeight","maxWidth","maxHeight","flex","flexGrow","flexShrink","flexBasis","gridColumn","gridRow","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","gridArea","alignSelf","justifySelf","boxSizing","gap","rowGap","columnGap","order","aspectRatio"].forEach(k=>{let N=k.replace(/([A-Z])/g,"-$1").toLowerCase(),x=A.getPropertyValue(N);x&&x.trim()!==""&&(k==="flex"&&x!=="none"&&x!=="0 1 auto"?R.style.flex=x:k==="boxSizing"?R.style.boxSizing=x:R.style.setProperty(N,x))}),d.style&&["width","height","min-width","min-height","max-width","max-height","flex","flex-grow","flex-shrink","flex-basis","grid-column","grid-row","grid-column-start","grid-column-end","grid-row-start","grid-row-end","grid-area","align-self","justify-self","box-sizing","gap","row-gap","column-gap","order","aspect-ratio"].forEach(N=>{let x=d.style.getPropertyValue(N);x&&R.style.setProperty(N,x)}),(w=d.parentNode)==null||w.insertBefore(R,d),R.appendChild(d),m=R}}let h=getComputedStyle(g?d:m);(m.style.position==="static"||!m.style.position)&&(m.style.position="relative");let f=document.createElement("div");f.id=r,f.style.position="absolute",f.style.inset="0",f.style.pointerEvents="none",f.style.zIndex="9999",f.style.boxSizing="border-box",f.style.background="none",f.style.border="none",f.style.outline="none",f.style.margin="0",f.style.padding="0";let b=h.borderRadius;b&&(f.style.borderRadius=b),m.appendChild(f);let P=n||{boxShadow:"0 0 0 2px rgb(239 68 68)"};if(Object.entries(P).forEach(([I,E])=>{let R=I.includes("-")?I.replace(/-([a-z])/g,(A,C)=>C.toUpperCase()):I;I.includes("-")?f.style.setProperty(I,E):f.style[R]=E}),d.scrollIntoView({behavior:"smooth",block:"center"}),this.state.debugMode){let I=Object.entries(P).map(([E,R])=>"".concat(E,": ").concat(R)).join("; ");console.log("[TagadaClient] Applied styles to highlight div of element #".concat(e,":"),I)}},s=5,a=1e3,c=0,l=d=>{let p=window.getComputedStyle(d);return p.display==="none"||p.visibility==="hidden"||p.opacity==="0"||d.hidden||d.offsetWidth===0||d.offsetHeight===0},u=()=>{let d=document.querySelectorAll('[editor-id~="'.concat(e,'"]'));if(d.length===0){if(c+=1,c>=s){this.state.debugMode&&console.warn('[TagadaClient] Element with editor-id containing "'.concat(e,'" not found after ').concat(s," attempts"));return}this.state.debugMode&&console.warn('[TagadaClient] Element with editor-id containing "'.concat(e,'" not found (attempt ').concat(c,"/").concat(s,"), retrying in ").concat(a/1e3,"s")),setTimeout(u,a);return}let p=null;if(d.length===1)p=d[0];else{for(let g=0;g<d.length;g++)if(!l(d[g])){p=d[g];break}p||(p=d[0])}p&&o(p)};u()}};var xs="PROMOTION_APPLIED",ks="PROMOTION_REMOVED";var un=class{constructor(e,n){this.apiClient=e;this.bus=n}async initCheckout(e){return this.apiClient.post("/api/v1/checkout/session/init",e)}async initCheckoutAsync(e){return this.apiClient.post("/api/v1/checkout/session/init-async",e)}async preloadCheckout(e,n){let r=e.funnelSessionId;!r&&n&&(r=n()||void 0);let i=typeof e.navigationEvent=="string"?{type:e.navigationEvent}:e.navigationEvent,o=_(S(S(S({},e),r&&{funnelSessionId:r}),i&&{navigationEvent:i}),{currentUrl:e.currentUrl||(typeof window!="undefined"?window.location.href:void 0)});return this.apiClient.post("/api/v1/checkout/session/preload",o)}async checkAsyncStatus(e){return this.apiClient.get("/api/public/v1/checkout/async-status/".concat(e))}async getCheckout(e,n){let r=new URLSearchParams;n&&r.set("currency",n),r.set("skipAsyncWait","false");let i="/api/v1/checkout-sessions/".concat(e,"/v2").concat(r.toString()?"?".concat(r.toString()):"");return this.apiClient.get(i)}async getCheckoutRaw(e,n){let r=new URLSearchParams;n&&r.set("currency",n),r.set("skipAsyncWait","true");let i="/api/v1/checkout-sessions/".concat(e,"/v2").concat(r.toString()?"?".concat(r.toString()):"");return this.apiClient.get(i)}async updateAddress(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/address"),{data:n})}async setCheckoutInfo(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/checkout-info"),{shippingAddress:n.shippingAddress,billingAddress:n.differentBillingAddress?n.billingAddress:n.shippingAddress,differentBillingAddress:n.differentBillingAddress||!1})}async applyPromotionCode(e,n){var i;let r=await this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/promotions/apply"),{code:n});return r.success&&((i=this.bus)==null||i.emit(xs,{checkoutSessionId:e})),r}async removePromotion(e,n){var i;let r=await this.apiClient.delete("/api/v1/checkout-sessions/".concat(e,"/promotions/").concat(n));return r.success&&((i=this.bus)==null||i.emit(ks,{checkoutSessionId:e})),r}async getAppliedPromotions(e){return this.apiClient.get("/api/v1/checkout-sessions/".concat(e,"/promotions"))}async replaceSessionLineItems(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items"),{lineItems:n})}async updateLineItems(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items"),{lineItems:n})}async addLineItems(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items/add"),{lineItems:n})}async removeLineItems(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items/remove"),{lineItems:n})}async setItemQuantity(e,n,r,i){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items/set-quantity"),{variantId:n,quantity:r,priceId:i})}async toggleOrderBump(e,n,r){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/toggle-order-bump"),{orderBumpOfferId:n,selected:r})}async updateCustomer(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/customer"),n)}async updateCustomerAndSessionInfo(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/customer-and-session-info"),n)}async previewCheckoutSession(e){return this.apiClient.post("/api/v1/checkout-sessions/preview",e)}async setPaymentMethod(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/payment-method"),{paymentMethodName:n})}};rt();var Ns={production:{tenantId:"b1636929-db11-4b01-b2c2-6a97b3444061",publicKey:"key_prod_us_pub_PNMB2AiaECJ463K6QAPNU6"},test:{tenantId:"99821999-faf5-4427-a92c-9267cb930540",publicKey:"key_test_us_pub_VExdfbFQARn821iqP8zNaq"}};function Yr(t){let e=t?Ns.production:Ns.test;return{tenantId:e.tenantId,apiKey:e.publicKey}}function Ds(){if(typeof window=="undefined")return!1;let t=window.location.hostname;return t.includes("app-dev.tagadapay.com")||t.includes("cdn-dev.tagadapay.com")?!1:t.includes("tagada.io")||t.includes("tagadapay.com")?!0:!(t.includes("tagada.dev")||t.includes("tagadapay.dev")||t==="localhost"||t.startsWith("127.")||t.startsWith("192.168.")||t.startsWith("10.")||t.includes(".local")||t===""||t==="0.0.0.0"||t.includes("ngrok")||t.includes(".loclx.io")||t.includes("vercel.app")||t.includes("netlify.app"))}function Mt(){return Yr(Ds()).apiKey}function Bs(){return Yr(Ds()).tenantId}var Jr=Object.freeze(["cf_click_id","cid","rtkclickid","cmc_tid","cmc_id","cmcid","clickid","click_id","gclid","gbraid","wbraid","fbclid","msclkid","ttclid","twclid","li_fat_id","epik","dclid","yclid","irclickid"]),Zr=Object.freeze(["cf_click_id","cfclid","rtkclickid-store","_rtkclickid","rtkclickid","_voluum","_voluumclickid","_binom","_binomclickid","_mck","cmcid","skro-click-id","click_id"]);function dd(t){if(typeof document=="undefined"||!document.cookie)return null;let e=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),n=document.cookie.match(new RegExp("(?:^|; )"+e+"=([^;]*)"));if(!n)return null;try{return decodeURIComponent(n[1])}catch(r){return n[1]}}function md(t,e){if(!t)return null;try{return new URLSearchParams(t).get(e)}catch(n){return null}}function Xr(){var o,s;let t={},e=null,n=null,r=null,i=typeof window!="undefined"&&(s=(o=window.location)==null?void 0:o.search)!=null?s:"";for(let a of Jr){let c=md(i,a);c&&(t["url:".concat(a)]=c,e===null&&(e=c,n="url",r=a))}for(let a of Zr){let c=dd(a);c&&(t["cookie:".concat(a)]=c,e===null&&(e=c,n="cookie",r=a))}return{clickId:e,source:n,key:r,all:t}}function dn(){var n;if(typeof window=="undefined")return null;let t=Xr(),e=_(S({},t),{resolvedAt:Date.now()});return window.TagadaPay=_(S({},(n=window.TagadaPay)!=null?n:{}),{tracking:e}),e}var mn=class{constructor(e){this.apiClient=e}async getShippingRates(e){return this.apiClient.get("/api/v1/checkout-sessions/".concat(e,"/shipping-rates"))}async setShippingRate(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/shipping-rate"),{shippingRateId:n})}async previewShippingRates(e,n){let r=new URLSearchParams({countryCode:n.countryCode});return n.stateCode&&r.set("stateCode",n.stateCode),this.apiClient.get("/api/v1/checkout-sessions/".concat(e,"/shipping-rates/preview?").concat(r.toString()))}async selectPreviewShippingRate(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/shipping-rates/select-preview"),S({countryCode:n.countryCode},n.stateCode?{stateCode:n.stateCode}:{}))}};var ct=class{constructor(e){this.apiClient=e}async createPaymentInstrument(e){return this.apiClient.post("/api/v1/payment/create-payment-instrument",{paymentInstrumentData:e})}async createCardPaymentInstrument(e,n){var c,l;if(!e)throw new Error("Payment processor not initialized");console.log("Creating card payment instrument");let r=await e.tokens.create({type:"card",data:S({cvc:n.cvc,number:Number(n.cardNumber.replace(/\s+/g,""))},this.getCardMonthAndYear(n.expiryDate)),metadata:{nonSensitiveField:"nonSensitiveValue"}}),{expiration_month:i,expiration_year:o}=this.getCardMonthAndYear(n.expiryDate),s={type:r.type,card:{maskedCardNumber:(l=(c=r.enrichments)==null?void 0:c.cardDetails)!=null&&l.bin?"".concat(r.enrichments.cardDetails.bin,"****").concat(r.enrichments.cardDetails.last4):n.cardNumber.replace(/\d(?=\d{4})/g,"*"),expirationMonth:i,expirationYear:o},token:r.id},a=await this.apiClient.post("/api/v1/payment/create-payment-instrument",{paymentInstrumentData:s});return console.log("Payment instrument created:",a),a}async createApplePayPaymentInstrument(e,n){if(!e)throw new Error("Payment processor not initialized");if(!n.id)throw new Error("Apple Pay token is missing");let r={type:"apple_pay",token:n.id,dpanType:n.type,card:{bin:n.card.bin,last4:n.card.last4,expirationMonth:n.card.expiration_month,expirationYear:n.card.expiration_year,brand:n.card.brand}};return await this.apiClient.post("/api/v1/payment/create-payment-instrument",{paymentInstrumentData:r})}async createGooglePayPaymentInstrument(e,n){var o;if(!e)throw new Error("Payment processor not initialized");if(!n.id)throw new Error("Google Pay token is missing");let r={type:"google_pay",token:n.id,dpanType:n.type,card:{bin:n.card.bin,last4:n.card.last4,expirationMonth:n.card.expiration_month,expirationYear:n.card.expiration_year,brand:n.card.brand},authMethod:(o=n==null?void 0:n.details)==null?void 0:o.auth_method};return await this.apiClient.post("/api/v1/payment/create-payment-instrument",{paymentInstrumentData:r})}async createApmPaymentInstrument(e){console.log("Creating APM payment instrument:",e);let n={type:"apm",provider:e.provider,paymentMethod:e.paymentMethod,processorId:e.processorId},r=await this.apiClient.post("/api/v1/payment/create-payment-instrument",{paymentInstrumentData:n});return console.log("APM payment instrument created:",r),r}getCardMonthAndYear(e){let[n,r]=e.split("/"),i=new Date().getFullYear(),o=Math.floor(i/100)*100,s=Number(r)+o;return{expiration_month:Number(n),expiration_year:s}}async processPaymentDirect(e,n,r,i={}){console.log("[PaymentsResource] processPaymentDirect START",i.paymentFlowId?"(flow: ".concat(i.paymentFlowId,")"):""),console.log("[PaymentsResource] Full options object:",JSON.stringify(i,null,2)),console.log("[PaymentsResource] processorId:",i.processorId,"paymentMethod:",i.paymentMethod);try{let o=S(S(S(S(S(S(S(S({checkoutSessionId:e,paymentInstrumentId:n},r&&{threedsSessionId:r}),i.initiatedBy&&{initiatedBy:i.initiatedBy}),i.source&&{source:i.source}),i.paymentFlowId&&{paymentFlowId:i.paymentFlowId}),i.processorId&&{processorId:i.processorId}),i.paymentMethod&&{paymentMethod:i.paymentMethod}),i.isExpress&&{isExpress:i.isExpress}),i.shippingRateId&&{shippingRateId:i.shippingRateId});console.log("[PaymentsResource] Request body being sent:",JSON.stringify(o,null,2));let s=await this.apiClient.post("/api/public/v1/checkout/pay-v2",o);return console.log("[PaymentsResource] processPaymentDirect SUCCESS:",s),s}catch(o){throw console.error("[PaymentsResource] processPaymentDirect ERROR:",o),o}}async getCardPaymentInstruments(){return this.apiClient.get("/api/v1/payment-instruments/customer")}async markPaymentActionProcessed(e){return this.apiClient.post("/api/v1/payments/require-action/processed",{paymentId:e})}async getPaymentStatus(e){return this.apiClient.get("/api/v1/payments/".concat(e))}async retrievePayment(e){return this.apiClient.post("/api/v1/payments/retrieve",{paymentId:e})}async saveRadarSession(e){return this.apiClient.post("/api/v1/radar-sessions",e)}async completePaymentAfterAction(e){return this.apiClient.post("/api/v1/payments/complete-after-3ds",{paymentId:e})}async updateThreedsStatus(e){return this.apiClient.post("/api/v1/threeds/status",e)}async ngeniusThreedsComplete(e){return this.apiClient.post("/api/v1/payments/ngenius/threeds-complete",e)}};var pn=class{constructor(e){this.apiClient=e}async getOrder(e){let n=await this.apiClient.get("/api/v1/orders/".concat(e));if(typeof n=="object"&&n!==null&&"success"in n&&n.success===!1)throw new Error(n.error||"Failed to fetch order");let r=typeof n=="object"&&n!==null&&"order"in n?n.order:n;if(!r)throw new Error("Order not found");return r}async createOrder(e){return this.apiClient.post("/api/v1/orders",{checkoutSessionId:e})}async updateOrderStatus(e,n){return this.apiClient.patch("/api/v1/orders/".concat(e,"/status"),{status:n})}async addOrderItems(e,n){return this.apiClient.post("/api/v1/orders/".concat(e,"/items"),{items:n})}async getOrderLineItems(e){return(await this.getOrder(e)).items||[]}};kt();var gn=class{constructor(e){this.apiClient=e}async getOfferById(e){return await this.apiClient.get("/api/v1/offers/".concat(e))}async getOffers(e,n){let r="/api/v1/stores/".concat(e,"/offers");if(n&&n.length>0){let o=n.map(s=>"ids=".concat(encodeURIComponent(s))).join("&");r+="?".concat(o)}return(await this.apiClient.get(r)).offers||[]}async getOffersByIds(e,n){return await this.getOffers(e,n)}async previewOffer(e,n="",r){console.log("\u{1F4E1} [OffersResource] Calling preview API:",{offerId:e,currency:n,lineItems:r,endpoint:"/api/v1/offers/".concat(e,"/preview")});let i=await this.apiClient.post("/api/v1/offers/".concat(e,"/preview"),{offerId:e,currency:n,lineItems:r});return console.log("\u{1F4E5} [OffersResource] Preview API response:",i),i}async payPreviewedOffer(e,n="",r,i,o,s){console.log("\u{1F4B3} [OffersResource] Calling pay-preview API:",{offerId:e,currency:n,lineItems:r,returnUrl:i,mainOrderId:o,initiatedBy:s,endpoint:"/api/v1/offers/".concat(e,"/pay-preview")});let a=await this.apiClient.post("/api/v1/offers/".concat(e,"/pay-preview"),S({offerId:e,currency:n,lineItems:r,returnUrl:i||(typeof window!="undefined"?window.location.href:""),mainOrderId:o},s?{initiatedBy:s}:{}));return console.log("\u{1F4E5} [OffersResource] Pay-preview API response:",a),a}async toCheckout(e,n="",r,i,o){console.log("\u{1F6D2} [OffersResource] Calling to-checkout API:",{offerId:e,currency:n,lineItems:r,returnUrl:i,mainOrderId:o,endpoint:"/api/v1/offers/".concat(e,"/to-checkout")});let s=await this.apiClient.post("/api/v1/offers/".concat(e,"/to-checkout"),{offerId:e,currency:n,lineItems:r,returnUrl:i||(typeof window!="undefined"?window.location.href:""),mainOrderId:o});return console.log("\u{1F4E5} [OffersResource] To-checkout API response:",s),s}async initCheckoutSession(e,n,r){let i=_e(),o={offerId:e,returnUrl:typeof window!="undefined"?window.location.href:"",customerId:r||"",draft:i};return n&&(o.orderId=n),{checkoutSessionId:(await this.apiClient.post("/api/v1/checkout/offer/init",o)).checkoutSessionId}}async createCheckoutSession(e,n){return{checkoutUrl:(await this.apiClient.post("/api/v1/offers/".concat(e,"/checkout"),{returnUrl:n||(typeof window!="undefined"?window.location.origin:"")})).checkoutUrl}}async payWithCheckoutSession(e,n){let r=_e();await this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/pay"),{checkoutSessionId:e,draft:r,returnUrl:typeof window!="undefined"?window.location.href:"",metadata:{comingFromPostPurchase:!0,postOrder:n,upsell:!0,source:"offer"}})}async payOffer(e,n){let r=_e();return this.apiClient.post("/api/v1/offers/".concat(e,"/pay"),{offerId:e,draft:r,returnUrl:typeof window!="undefined"?window.location.href:"",metadata:n?{comingFromPostPurchase:!0,postOrder:n,upsell:!0,source:"offer"}:{upsell:!0,source:"offer"}})}async transformToCheckoutSession(e,n,r,i){let o=await this.apiClient.post("/api/v1/offers/".concat(e,"/transform-to-checkout"),{offerId:e,lineItems:n,mainOrderId:r,returnUrl:i||(typeof window!="undefined"?window.location.origin:"")});return{checkoutUrl:o.checkoutUrl,checkoutSessionId:o.checkoutSessionId,customerId:o.customerId}}async toCheckoutAsync(e,n="",r,i,o){console.log("\u{1F6D2} [OffersResource] Calling to-checkout-async API:",{offerId:e,currency:n,lineItems:r,returnUrl:i,mainOrderId:o,endpoint:"/api/v1/offers/".concat(e,"/to-checkout-async")});let s=await this.apiClient.post("/api/v1/offers/".concat(e,"/to-checkout-async"),{offerId:e,lineItems:(r==null?void 0:r.map(a=>({variantId:a.variantId,quantity:a.quantity})))||[],returnUrl:i||(typeof window!="undefined"?window.location.href:""),mainOrderId:o||""});return console.log("\u{1F4E5} [OffersResource] To-checkout-async API response:",s),s}async transformToCheckout(e,n){return{checkoutUrl:(await this.apiClient.post("/api/v1/offers/".concat(e,"/transform-to-checkout"),{returnUrl:n||(typeof window!="undefined"?window.location.origin:"")})).checkoutUrl}}async initCheckoutSessionWithVariants(e,n,r){return{checkoutSessionId:(await this.apiClient.post("/api/v1/offers/".concat(e,"/transform-to-checkout"),{offerId:e,lineItems:n,returnUrl:r||(typeof window!="undefined"?window.location.href:"")})).checkoutSessionId}}async getOrderSummary(e,n=!1){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/order-summary"),{includeVariantOptions:n})}async updateLineItems(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/line-items"),{lineItems:n})}};var fn=class{constructor(e){this.apiClient=e}async getPaymentMethods(e){return this.apiClient.get("/api/v1/payment-methods?checkoutSessionId=".concat(encodeURIComponent(e)))}async updateCheckoutSessionAddress(e,n){return this.apiClient.post("/api/v1/checkout-sessions/".concat(e,"/address"),n)}async updateCustomerEmail(e,n){return this.apiClient.post("/api/v1/customers/".concat(e),n)}};var ut=class{constructor(e){this.apiClient=e}async getStoreConfig(e){return await this.apiClient.get("/api/v1/checkout/config?storeId=".concat(e))}};var hn=class{constructor(e){this.apiClient=e}async getGeoLocation(){return this.apiClient.get("/api/v1/geo")}async getGeoLocationByIp(e){return this.apiClient.get("/api/v1/geo?ip=".concat(encodeURIComponent(e)))}async detectCountry(){try{let e=await this.getGeoLocation(),n=e==null?void 0:e.country_code;return n&&typeof n=="string"&&n.length===2?n:null}catch(e){return null}}};var dt=class{constructor(e){this.apiClient=e}async createSession(e){return this.apiClient.post("/api/v1/threeds/create-session",e)}};var Ls="https://cvwnizdbugpz6jwk.public.blob.vercel-storage.com/geodata/v1";var mt=new Map,yn=new Map,Qr=new Map,ei=new Map;async function pd(t){let e=mt.get(t);if(e)return e;let n=Qr.get(t);return n||(n=(async()=>{let r="".concat(Ls,"/").concat(t,"/countries.json"),i=await fetch(r);if(!i.ok)throw new Error("Geodata fetch failed: ".concat(r," (").concat(i.status,")"));let o=await i.json();return mt.set(t,o),Qr.delete(t),o})(),Qr.set(t,n),n)}async function gd(t){let e=yn.get(t);if(e)return e;let n=ei.get(t);return n||(n=(async()=>{let r="".concat(Ls,"/").concat(t,"/regions.json"),i=await fetch(r);if(!i.ok)throw new Error("Geodata fetch failed: ".concat(r," (").concat(i.status,")"));let o=await i.json();return yn.set(t,o),ei.delete(t),o})(),ei.set(t,n),n)}function fd(t){return mt.get(t)||mt.get("en")||{}}function hd(t){return yn.get(t)||yn.get("en")||{}}async function Sn(t="en"){await Promise.all([pd(t),gd(t)])}var Ms=(t="en")=>{let e=fd(t);return Object.entries(e).map(([n,r])=>({code:n,name:r.n,iso3:r.i3,numeric:r.nu,uniqueKey:"country-".concat(n)})).sort((n,r)=>n.name.localeCompare(r.name))},js=(t,e="en")=>{let r=hd(e)[t];return r?r.map(([i,o],s)=>({code:i,name:o,countryCode:t,uniqueKey:"state-".concat(t,"-").concat(i,"-").concat(s)})).sort((i,o)=>i.name.localeCompare(o.name)):[]};function Us(t){return mt.has(t)}function Fs(){return[...mt.keys()]}async function $s(t){await Sn(t)}typeof globalThis!="undefined"&&typeof fetch!="undefined"&&Sn("en").catch(()=>{});var bn=class{static getCountriesData(e="en"){try{let n=Ms(e),r={};return n.forEach(i=>{r[i.code]={iso:i.code,iso3:i.iso3||"",numeric:i.numeric||0,name:i.name}}),r}catch(n){return console.error("Failed to load ISO data for language: ".concat(e),n),{}}}static getRegions(e,n="en"){try{return js(e,n).map(i=>({iso:i.code,name:i.name}))}catch(r){return[]}}static findRegion(e,n,r="en"){var o;return(o=this.getRegions(e,r).find(s=>s.iso===n))!=null?o:null}static mapGoogleToISO(e,n,r,i="en"){let o=this.getRegions(r,i);if(o.length===0)return null;let s=o.find(a=>a.iso===e);return s||(s=o.find(a=>a.name.toLowerCase()===e.toLowerCase()),s)||(s=o.find(a=>a.name.toLowerCase()===n.toLowerCase()),s)?s:(s=o.find(a=>a.name.toLowerCase().includes(n.toLowerCase())||n.toLowerCase().includes(a.name.toLowerCase())),s!=null?s:null)}static isLanguageRegistered(e){return Us(e)}static getRegisteredLanguages(){return Fs()}static async importLanguage(e){return $s(e)}static async ensureLoaded(e="en"){return Sn(e)}static getAvailableLanguages(){return["en","ru","de","fr","es","zh","hi","pt","ja","ar","it","he"]}};var pt=class{static initialize(e){var n,r;this.apiKey=e,typeof window!="undefined"&&((r=(n=window.google)==null?void 0:n.maps)!=null&&r.places)&&(this.service=new window.google.maps.places.AutocompleteService)}static async searchPlaces(e,n={}){return!this.service||!e.trim()?[]:new Promise((r,i)=>{this.service.getPlacePredictions({input:e,types:n.types||["address"],componentRestrictions:n.componentRestrictions},(o,s)=>{var a,c,l;s===((l=(c=(a=window.google)==null?void 0:a.maps)==null?void 0:c.places)==null?void 0:l.PlacesServiceStatus.OK)&&o?r(o):r([])})})}static async getPlaceDetails(e){var n,r;return typeof window=="undefined"||!((r=(n=window.google)==null?void 0:n.maps)!=null&&r.places)?null:new Promise((i,o)=>{new window.google.maps.places.PlacesService(document.createElement("div")).getDetails({placeId:e,fields:["place_id","formatted_address","address_components","geometry"]},(a,c)=>{var l,u,d;c===((d=(u=(l=window.google)==null?void 0:l.maps)==null?void 0:u.places)==null?void 0:d.PlacesServiceStatus.OK)&&a?i(a):i(null)})})}static extractAddressComponents(e){let n={};for(let r of e.address_components){let i=r.types;i.includes("street_number")?n.streetNumber=r.long_name:i.includes("route")?n.route=r.long_name:i.includes("locality")?(n.city=r.long_name,n.locality=r.long_name):i.includes("administrative_area_level_2")?(n.administrativeAreaLevel2=r.short_name,n.administrativeAreaLevel2Long=r.long_name,n.city||(n.city=r.long_name,n.locality=r.long_name)):i.includes("administrative_area_level_1")?(n.state=r.long_name,n.administrativeAreaLevel1=r.short_name,n.administrativeAreaLevel1Long=r.long_name):i.includes("postal_code")?n.postalCode=r.long_name:i.includes("country")&&(n.country=r.long_name,n.countryCode=r.short_name,n.iso=r.short_name)}return!n.administrativeAreaLevel1&&n.administrativeAreaLevel2&&(n.state=n.administrativeAreaLevel2Long||n.administrativeAreaLevel2,n.administrativeAreaLevel1=n.administrativeAreaLevel2,n.administrativeAreaLevel1Long=n.administrativeAreaLevel2Long),n}};pt.apiKey=null,pt.service=null;jr();var ti=class{static findVariant(e,n){for(let r of e){let i=r.variants.find(o=>o.id===n);if(i)return i}return null}static getVariantPrice(e,n="USD"){let r=e.prices.find(o=>o.currency===n);if(r)return r;let i=e.prices.find(o=>o.default);return i||e.prices[0]||null}static getAllVariants(e){let n=[];for(let r of e)if(r.variants)for(let i of r.variants)n.push({product:r,variant:i});return n}static filterVariants(e,n){let r=[];for(let i of e)if(i.variants)for(let o of i.variants)n(o,i)&&r.push({product:i,variant:o});return r}};var ni=class{static getOrderLineItems(e){return e.items||[]}static getOrderTotal(e){return e.paidAmount||0}static getOrderStatus(e){return e.status||"unknown"}static isOrderCompleted(e){return e.status==="completed"||e.status==="fulfilled"}static isOrderPending(e){return e.status==="pending"||e.status==="processing"}static isOrderCancelled(e){return e.status==="cancelled"||e.status==="refunded"}};var ri=class t{static getCurrency(e,n="USD"){var c,l,u,d;let r,i=!1,o=typeof window!="undefined"?new URLSearchParams(window.location.search).get("currency"):null,s=typeof window!="undefined"?localStorage.getItem("tgd_currency")||t.getCookieValue("tgd_currency"):null;o?(r=o.toUpperCase(),i=!0):s?(r=s.toUpperCase(),i=!0):typeof(e==null?void 0:e.currency)=="string"?r=e.currency:(c=e==null?void 0:e.currency)!=null&&c.code?r=e.currency.code:(u=(l=e==null?void 0:e.store)==null?void 0:l.presentmentCurrencies)!=null&&u[0]?r=e.store.presentmentCurrencies[0]:r=n;let a=(d=e==null?void 0:e.store)==null?void 0:d.presentmentCurrencies;if(a!=null&&a.length&&!a.includes(r)&&(console.warn('[CurrencyUtils] Currency "'.concat(r,'" is not in store presentmentCurrencies [').concat(a.join(", "),"]. Falling back to ").concat(a[0],".")),r=a[0],i&&typeof window!="undefined"))try{localStorage.setItem("tgd_currency",r)}catch(p){}return{code:r,symbol:this.getCurrencySymbol(r),name:this.getCurrencyName(r),decimalPlaces:this.getDecimalPlaces(r),isExplicit:i}}static getCookieValue(e){if(typeof document=="undefined")return null;let n=document.cookie.match(new RegExp("(?:^|; )".concat(e,"=([^;]*)")));return n?decodeURIComponent(n[1]):null}static getCurrencySymbol(e){return{USD:"$",EUR:"\u20AC",GBP:"\xA3",JPY:"\xA5",CAD:"C$",AUD:"A$",CHF:"CHF",CNY:"\xA5",SEK:"kr",NOK:"kr",DKK:"kr",PLN:"z\u0142",CZK:"K\u010D",HUF:"Ft",RON:"lei",BGN:"\u043B\u0432",HRK:"kn",RUB:"\u20BD",UAH:"\u20B4",TRY:"\u20BA",BRL:"R$",ARS:"$",CLP:"$",COP:"$",MXN:"$",PEN:"S/",UYU:"$U",VEF:"Bs",ZAR:"R",EGP:"\xA3",MAD:"\u062F.\u0645.",TND:"\u062F.\u062A",DZD:"\u062F.\u062C",LYD:"\u0644.\u062F",NGN:"\u20A6",GHS:"\u20B5",KES:"KSh",UGX:"USh",TZS:"TSh",ETB:"Br",ZMW:"ZK",BWP:"P",SZL:"L",LSL:"L",NAD:"N$",MUR:"\u20A8",SCR:"\u20A8",KWD:"\u062F.\u0643",BHD:"\u062F.\u0628",QAR:"\u0631.\u0642",AED:"\u062F.\u0625",OMR:"\u0631.\u0639.",YER:"\uFDFC",SAR:"\u0631.\u0633",JOD:"\u062F.\u0627",LBP:"\u0644.\u0644",ILS:"\u20AA",INR:"\u20B9",PKR:"\u20A8",BDT:"\u09F3",LKR:"\u20A8",NPR:"\u20A8",AFN:"\u060B",KZT:"\u20B8",UZS:"\u043B\u0432",KGS:"\u043B\u0432",TJS:"SM",TMT:"T",AZN:"\u20BC",GEL:"\u20BE",AMD:"\u058F",KRW:"\u20A9",THB:"\u0E3F",VND:"\u20AB",IDR:"Rp",MYR:"RM",SGD:"S$",PHP:"\u20B1",TWD:"NT$",HKD:"HK$",MOP:"MOP$",BND:"B$",LAK:"\u20AD",KHR:"\u17DB",MMK:"K",BOB:"Bs",PYG:"\u20B2",GTQ:"Q",HNL:"L",NIO:"C$",CRC:"\u20A1",PAB:"B/.",DOP:"RD$",JMD:"J$",TTD:"TT$",BBD:"Bds$",XCD:"EC$",AWG:"\u0192",ANG:"\u0192",SRD:"$",GYD:"G$",VES:"Bs.S",VED:"Bs.D"}[e]||e}static getCurrencyName(e){return{USD:"US Dollar",EUR:"Euro",GBP:"British Pound",JPY:"Japanese Yen",CAD:"Canadian Dollar",AUD:"Australian Dollar",CHF:"Swiss Franc",CNY:"Chinese Yuan",SEK:"Swedish Krona",NOK:"Norwegian Krone",DKK:"Danish Krone",PLN:"Polish Zloty",CZK:"Czech Koruna",HUF:"Hungarian Forint",RON:"Romanian Leu",BGN:"Bulgarian Lev",HRK:"Croatian Kuna",RUB:"Russian Ruble",UAH:"Ukrainian Hryvnia",TRY:"Turkish Lira",BRL:"Brazilian Real",ARS:"Argentine Peso",CLP:"Chilean Peso",COP:"Colombian Peso",MXN:"Mexican Peso",PEN:"Peruvian Sol",UYU:"Uruguayan Peso",VEF:"Venezuelan Bolivar",ZAR:"South African Rand",EGP:"Egyptian Pound",MAD:"Moroccan Dirham",TND:"Tunisian Dinar",DZD:"Algerian Dinar",LYD:"Libyan Dinar",NGN:"Nigerian Naira",GHS:"Ghanaian Cedi",KES:"Kenyan Shilling",UGX:"Ugandan Shilling",TZS:"Tanzanian Shilling",ETB:"Ethiopian Birr",ZMW:"Zambian Kwacha",BWP:"Botswana Pula",SZL:"Swazi Lilangeni",LSL:"Lesotho Loti",NAD:"Namibian Dollar",MUR:"Mauritian Rupee",SCR:"Seychellois Rupee",KWD:"Kuwaiti Dinar",BHD:"Bahraini Dinar",QAR:"Qatari Riyal",AED:"UAE Dirham",OMR:"Omani Rial",YER:"Yemeni Rial",SAR:"Saudi Riyal",JOD:"Jordanian Dinar",LBP:"Lebanese Pound",ILS:"Israeli Shekel",INR:"Indian Rupee",PKR:"Pakistani Rupee",BDT:"Bangladeshi Taka",LKR:"Sri Lankan Rupee",NPR:"Nepalese Rupee",AFN:"Afghan Afghani",KZT:"Kazakhstani Tenge",UZS:"Uzbekistani Som",KGS:"Kyrgyzstani Som",TJS:"Tajikistani Somoni",TMT:"Turkmenistani Manat",AZN:"Azerbaijani Manat",GEL:"Georgian Lari",AMD:"Armenian Dram",KRW:"South Korean Won",THB:"Thai Baht",VND:"Vietnamese Dong",IDR:"Indonesian Rupiah",MYR:"Malaysian Ringgit",SGD:"Singapore Dollar",PHP:"Philippine Peso",TWD:"Taiwan Dollar",HKD:"Hong Kong Dollar",MOP:"Macanese Pataca",BND:"Brunei Dollar",LAK:"Lao Kip",KHR:"Cambodian Riel",MMK:"Myanmar Kyat",BOB:"Bolivian Boliviano",PYG:"Paraguayan Guarani",GTQ:"Guatemalan Quetzal",HNL:"Honduran Lempira",NIO:"Nicaraguan Cordoba",CRC:"Costa Rican Colon",PAB:"Panamanian Balboa",DOP:"Dominican Peso",JMD:"Jamaican Dollar",TTD:"Trinidad and Tobago Dollar",BBD:"Barbadian Dollar",XCD:"East Caribbean Dollar",AWG:"Aruban Florin",ANG:"Netherlands Antillean Guilder",SRD:"Surinamese Dollar",GYD:"Guyanese Dollar",VES:"Venezuelan Bolivar Soberano",VED:"Venezuelan Bolivar Digital"}[e]||e}static getDecimalPlaces(e){var r;return(r={JPY:0,KRW:0,VND:0,IDR:0,LAK:0,KHR:0,MMK:0,PYG:0,VEF:0,VES:0,VED:0}[e])!=null?r:2}};var ii=class{static getCheckoutSessionId(e){var n;return((n=e.checkoutSession)==null?void 0:n.id)||""}static getLineItems(e){var r;let n=(r=e.checkoutSession)==null?void 0:r.lineItems;return Array.isArray(n)?n:[]}static getTotal(e){var r;let n=(r=e.checkoutSession)==null?void 0:r.totalPrice;return typeof n=="number"?n:0}static isClubMember(e){return e.customerIsClubMember||!1}};var oi=class{static isValidPromotion(e){return!!(e.id&&e.name)}static getPromotionType(e){return e.type||"unknown"}static hasRules(e){return!!(e.rules&&e.rules.length>0)}static hasActions(e){return!!(e.actions&&e.actions.length>0)}};var si=class{static isValidOffer(e){return!!(e.id&&e.summaries&&e.summaries.length>0)}static getOfferTotal(e){var n,r;return((r=(n=e.summaries)==null?void 0:n[0])==null?void 0:r.totalAmount)||0}static getOfferAdjustedTotal(e){var n,r;return((r=(n=e.summaries)==null?void 0:n[0])==null?void 0:r.totalAdjustedAmount)||0}static hasItems(e){return!!(e.offerLineItems&&e.offerLineItems.length>0)}static getOfferCurrency(e){var n,r;return((r=(n=e.summaries)==null?void 0:n[0])==null?void 0:r.currency)||"USD"}static getOfferTitle(e,n="en"){var r,i;return((r=e.titleTrans)==null?void 0:r[n])||((i=e.titleTrans)==null?void 0:i.en)||"Offer ".concat(e.id)}};var ai=class{static isValidOffer(e){return!!(e.id&&e.name&&e.price>0)}static toggleSelection(e){return _(S({},e),{isSelected:!e.isSelected})}static calculatePreview(e,n=0){let r=n+e.price,i=e.isSelected?r:n;return{offer:e,totalAmount:r,adjustedAmount:i}}static getSelectedOffers(e){return e.filter(n=>n.isSelected)}static getSelectedTotal(e){return e.filter(n=>n.isSelected).reduce((n,r)=>n+r.price,0)}};var yd={session:t=>["funnel","session",t],allSessions:()=>["funnel","sessions"],funnelMeta:t=>["funnel","meta",t]};function qs(t,e,n="*"){let r={type:"TAGADAPAY_CONFIG_UPDATE",config:e,timestamp:Date.now()};t.postMessage(r,n)}function Sd(t,e="iframe"){if(typeof document=="undefined")return;let n=document.querySelectorAll(e);n.forEach(r=>{r.contentWindow&&qs(r.contentWindow,t)}),console.log("[ConfigHotReload] Broadcasted config update to ".concat(n.length," iframe(s)"))}function bd(t){if(typeof window=="undefined")return()=>{};let e=n=>{var r;((r=n.data)==null?void 0:r.type)==="TAGADAPAY_CONFIG_UPDATE"&&t(n.data.config)};return window.addEventListener("message",e),()=>{window.removeEventListener("message",e)}}function Pd(t,e=150){let n=null;return r=>{n&&clearTimeout(n),n=setTimeout(()=>{t(r),n=null},e)}}function wd(t,e){return"".concat(t,"_").concat(e)}var mi=Br(Ws()),te,gt=typeof window!="undefined"&&typeof document!="undefined",kd=gt?history.pushState.bind(history):null,Nd=gt?history.replaceState.bind(history):null;function vn(){te=void 0}gt&&(window.addEventListener("popstate",vn),window.addEventListener("hashchange",vn),history.pushState=function(...t){return vn(),kd.apply(this,t)},history.replaceState=function(...t){return vn(),Nd.apply(this,t)});function jt(){if(!gt)return null;if(te!==void 0)return console.log("[TagadaPay SDK] \u{1F4E6} Returning cached internal path:",te),te;console.log("[TagadaPay SDK] \u{1F50D} getInternalPath() called for:",window.location.pathname);try{let t=window.location.hostname==="localhost"||window.location.hostname==="127.0.0.1"||window.location.hostname.endsWith(".localhost");if(console.log("[TagadaPay SDK] \u{1F3E0} isLocalhost:",t),t){let s=new URLSearchParams(window.location.search).get("__remap");if(console.log("[TagadaPay SDK] \u{1F50D} Query parameter __remap:",s),s)return te=s,s;try{let a=localStorage.getItem("tagadapay-remap");if(console.log("[TagadaPay SDK] \u{1F50D} localStorage tagadapay-remap:",a),a)try{let c=JSON.parse(a);if(console.log("[TagadaPay SDK] \u{1F4DD} Parsed remap config:",c),c.externalPath&&c.internalPath){let l=window.location.pathname;console.log("[TagadaPay SDK] \u{1F50D} Checking if",l,"matches pattern",c.externalPath);let d=(0,mi.match)(c.externalPath,{decode:decodeURIComponent,end:!0})(l);return console.log("[TagadaPay SDK] \u{1F3AF} Match result:",d),d!==!1?(te=c.internalPath,console.log("[TagadaPay SDK] \u2705 Path remap: ".concat(c.externalPath," \u2192 ").concat(c.internalPath)),console.log("[TagadaPay SDK] \u2705 Current URL ".concat(l," matches external pattern")),console.log("[TagadaPay SDK] \u{1F4E6} Caching and returning:",c.internalPath),c.internalPath):(console.log("[TagadaPay SDK] \u274C Current URL ".concat(l," does NOT match external pattern ").concat(c.externalPath)),te=null,null)}else console.log("[TagadaPay SDK] \u26A0\uFE0F Parsed config missing externalPath or internalPath")}catch(c){return console.log("[TagadaPay SDK] \u26A0\uFE0F Failed to parse as JSON, using legacy format:",c),te=a,a}else console.log("[TagadaPay SDK] \u{1F4ED} No localStorage tagadapay-remap found")}catch(a){console.log("[TagadaPay SDK] \u274C localStorage error:",a)}}let e=document.querySelector('meta[name="tagadapay-path-remap"]');if(e)try{let o=e.getAttribute("content");if(o){let s=decodeURIComponent(o),a=JSON.parse(s);if(a.internal)return console.log("[TagadaPay SDK] \u2705 Got internal path from full remap config:",a.internal),te=a.internal,a.internal}}catch(o){console.error("[TagadaPay SDK] Error parsing full remap config:",o)}let n=document.querySelector('meta[name="x-plugin-internal-path"]');if(!n)return console.log("[TagadaPay SDK] \u2139\uFE0F No path remap meta tags found"),te=null,null;let r=n.getAttribute("content");if(!r||r.trim()==="")return te=null,null;let i=r.trim();return i.startsWith("/")?(console.log("[TagadaPay SDK] \u2705 Got internal path from legacy meta tag:",i),te=i,i):(te=null,null)}catch(t){return te=null,null}}function Js(){return jt()!==null}function Zs(){if(!gt)throw new Error("[TagadaPay SDK] getPathInfo() cannot be called in SSR context");try{let t=window.location.pathname,e=jt(),n=new URLSearchParams(window.location.search),r=window.location.hash.replace(/^#/,"");return{externalPath:t,internalPath:e,isRemapped:e!==null,fullUrl:window.location.href,query:n,hash:r}}catch(t){return{externalPath:"/",internalPath:null,isRemapped:!1,fullUrl:"",query:new URLSearchParams,hash:""}}}function In(t,e){try{if(t===e)return{matched:!0,params:{}};if(!(e.includes(":")||e.includes("*")||e.includes("{")))return{matched:t===e,params:{}};let i=(0,mi.match)(e,{decode:decodeURIComponent,end:!0})(t);if(i===!1)return{matched:!1,params:{}};let o={};return typeof i=="object"&&i.params&&Object.keys(i.params).forEach(s=>{let a=i.params[s];o[s]=Array.isArray(a)?a.join("/"):String(a)}),{matched:!0,params:o}}catch(n){return{matched:t===e,params:{}}}}function Dd(t,e,n){let r=Ys(e),i=Ys(n);if(r.length===0||r.length!==i.length)return t;let o={};return r.forEach((s,a)=>{let c=i[a],l=t[s];l!==void 0&&(o[c]=l)}),o}function Ys(t){let e=t.match(/:([a-zA-Z0-9_]+)/g);return e?e.map(n=>n.substring(1)):[]}function Xs(t){if(typeof t!="string")throw new Error("[TagadaPay SDK] internalPath must be a string, got ".concat(typeof t));if(t.trim()==="")throw new Error("[TagadaPay SDK] internalPath cannot be empty");if(!t.startsWith("/"))throw new Error('[TagadaPay SDK] internalPath must start with /, got "'.concat(t,'"'));if(!gt)return{matched:!1,params:{}};try{let e=window.location.pathname,n=jt();if(n){if(!In(n,t).matched)return{matched:!1,params:{}};let i=null;if(typeof localStorage!="undefined")try{let s=localStorage.getItem("tagadapay-remap");if(s){let a=JSON.parse(s);a.externalPath&&a.internalPath===n&&(i=a.externalPath)}}catch(s){}if(!i&&typeof document!="undefined"){console.log("[TagadaPay SDK] \u{1F50D} Checking for production path remap meta tag...");let s=document.querySelector('meta[name="tagadapay-path-remap"]');if(s)try{let a=s.getAttribute("content");if(console.log("[TagadaPay SDK] \u{1F4C4} Found meta tag content (encoded):",(a==null?void 0:a.substring(0,100))+"..."),a){let c=decodeURIComponent(a);console.log("[TagadaPay SDK] \u{1F4C4} Decoded content:",c);let l=JSON.parse(c);console.log("[TagadaPay SDK] \u{1F4E6} Parsed remap config:",l),console.log("[TagadaPay SDK] \u{1F50D} Checking if internal path matches:",{parsedInternal:l.internal,remappedInternalPath:n}),l.external&&l.internal===n?(i=l.external,console.log("[TagadaPay SDK] \u2705 Using external pattern from meta tag:",i)):console.log("[TagadaPay SDK] \u26A0\uFE0F Internal path mismatch - not using meta tag config")}}catch(a){console.error("[TagadaPay SDK] \u274C Error parsing path remap meta tag:",a)}else console.log("[TagadaPay SDK] \u274C No tagadapay-path-remap meta tag found")}if(i){let s=In(e,i);if(s.matched){console.log("[TagadaPay SDK] \u{1F504} Mapping params from external to internal pattern"),console.log("[TagadaPay SDK] External params:",s.params),console.log("[TagadaPay SDK] External pattern:",i),console.log("[TagadaPay SDK] Internal pattern:",t);let a=Dd(s.params,i,t);return console.log("[TagadaPay SDK] Mapped params:",a),{matched:!0,params:a}}}return{matched:!0,params:In(e,t).params}}return In(e,t)}catch(e){return{matched:!1,params:{}}}}rt();rt();var Or=class{constructor(e){this.callbacks={};this.basisTheory=null;this.btInitPromise=null;this.bt3dsClass=null;this.bt3dsInitPromise=null;this.storeConfig=null;this.storeConfigPromise=null;this.pollTimer=null;this.pollAttempts=0;this.isPollingActive=!1;this.redirectReturnProcessed=!1;this.paymentsResource=new ct(e.apiClient),this.threedsResource=new dt(e.apiClient),this.storeConfigResource=new ut(e.apiClient),this.storeId=e.storeId}get payments(){return this.paymentsResource}setCallbacks(e){this.callbacks=e}warmup(){this.initBasisTheory(),this.initBt3ds(),this.storeId&&this.fetchStoreConfig()}destroy(){this.stopPolling(),this.basisTheory=null,this.btInitPromise=null,this.bt3dsClass=null,this.bt3dsInitPromise=null,this.storeConfig=null,this.storeConfigPromise=null}initBasisTheory(){return this.basisTheory?Promise.resolve(this.basisTheory):this.btInitPromise?this.btInitPromise:(this.btInitPromise=(async()=>{try{let e=Mt(),{BasisTheory:n}=await Promise.resolve().then(()=>Br(Fo())),r=await new n().init(e,{elements:!1});return this.basisTheory=r,console.log("[PaymentService] BasisTheory initialized"),this.basisTheory}catch(e){return console.error("[PaymentService] BasisTheory init failed:",e),null}})(),this.btInitPromise)}getBtApiKey(){return Mt()}initBt3ds(){return this.bt3dsClass?Promise.resolve(this.bt3dsClass):this.bt3dsInitPromise?this.bt3dsInitPromise:(this.bt3dsInitPromise=(async()=>{try{let{BasisTheory3ds:e}=await Promise.resolve().then(()=>(nu(),tu));return this.bt3dsClass=e,console.log("[PaymentService] BasisTheory 3DS loaded"),this.bt3dsClass}catch(e){return console.error("[PaymentService] BasisTheory 3DS load failed:",e),null}})(),this.bt3dsInitPromise)}fetchStoreConfig(){return this.storeConfig?Promise.resolve(this.storeConfig):this.storeConfigPromise?this.storeConfigPromise:this.storeId?(this.storeConfigPromise=(async()=>{try{return this.storeConfig=await this.storeConfigResource.getStoreConfig(this.storeId),this.storeConfig}catch(e){return null}})(),this.storeConfigPromise):Promise.resolve(null)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null),this.isPollingActive=!1,this.pollAttempts=0}startPolling(e,n,r=20,i=1500){this.stopPolling(),this.isPollingActive=!0,this.pollAttempts=0,console.log("[PaymentService] Starting payment polling:",e);let o=async()=>{var s;if(this.isPollingActive){this.pollAttempts++;try{let a=await this.paymentsResource.getPaymentStatus(e);if(console.log("[PaymentService] Poll #".concat(this.pollAttempts,": ").concat(a.status," / ").concat(a.subStatus)),!this.isPollingActive)return;if(a.status==="succeeded"||a.status==="pending"&&a.subStatus==="authorized"){this.stopPolling(),n.onSuccess(a);return}if(a.requireAction!=="none"&&a.requireActionData&&!a.requireActionData.processed){this.stopPolling(),(s=n.onRequireAction)==null||s.call(n,a);return}if(a.status!=="succeeded"&&a.status!=="pending"){this.stopPolling(),n.onFailure(a.status||"Payment failed");return}this.pollAttempts>=r&&(this.stopPolling(),n.onFailure("Payment verification timeout"))}catch(a){this.pollAttempts>=3&&(this.stopPolling(),n.onFailure("Payment verification failed due to network errors"))}}};o(),this.pollTimer=setInterval(()=>void o(),i)}async processAndHandle(e,n,r,i){var a,c,l,u,d,p,g,m,h,f,b,P,w,I,E,R,A,C,M;let o=nt(),s=await this.paymentsResource.processPaymentDirect(e,n,r,{initiatedBy:(i==null?void 0:i.initiatedBy)||"customer",source:(i==null?void 0:i.source)||"checkout",paymentFlowId:o,processorId:i==null?void 0:i.processorId,paymentMethod:i==null?void 0:i.paymentMethod,shippingRateId:i==null?void 0:i.shippingRateId});if(console.log("[PaymentService] Payment response:",{paymentId:(a=s.payment)==null?void 0:a.id,status:(c=s.payment)==null?void 0:c.status,requireAction:(l=s.payment)==null?void 0:l.requireAction}),(p=(d=this.callbacks).onCurrentPaymentId)==null||p.call(d,((u=s.payment)==null?void 0:u.id)||null),s.payment.requireAction!=="none"){if(s.payment.requireAction==="error"||s.payment.status==="declined"||s.payment.status==="failed"){let x=((g=s.payment.requireActionData)==null?void 0:g.message)||((m=s.payment.error)==null?void 0:m.message)||"Payment declined";return(f=(h=this.callbacks).onError)==null||f.call(h,x),(P=(b=this.callbacks).onProcessing)==null||P.call(b,!1),{success:!1,error:x,payment:s.payment,order:s.order}}let k=await this.handlePaymentAction(s.payment),N=this.settleActionOutcome(k,s.payment,s.order);if(N)return N}if(s.payment.status==="succeeded")return(I=(w=this.callbacks).onProcessing)==null||I.call(w,!1),{success:!0,payment:s.payment,order:s.order};if(s.payment.status==="declined"||s.payment.status==="failed"){let k=((E=s.payment.error)==null?void 0:E.message)||"Payment declined";return(A=(R=this.callbacks).onError)==null||A.call(R,k),(M=(C=this.callbacks).onProcessing)==null||M.call(C,!1),{success:!1,error:k,payment:s.payment,order:s.order}}return new Promise(k=>{this.startPolling(s.payment.id,{onSuccess:N=>{var x,q;(q=(x=this.callbacks).onProcessing)==null||q.call(x,!1),k({success:!0,payment:N,order:s.order})},onFailure:N=>{var x,q,G,V;(q=(x=this.callbacks).onError)==null||q.call(x,N),(V=(G=this.callbacks).onProcessing)==null||V.call(G,!1),k({success:!1,error:N})},onRequireAction:async N=>{var G,V;let x=await this.handlePaymentAction(N),q=this.settleActionOutcome(x,N,s.order);q&&((V=(G=this.callbacks).onProcessing)==null||V.call(G,!1),k(q))}})})}settleActionOutcome(e,n,r){var i;switch(e.kind){case"redirected":return{success:!0,payment:n,order:r,redirecting:!0};case"completed":return{success:!0,payment:e.payment,order:r};case"failed":return{success:!1,error:e.error,payment:(i=e.payment)!=null?i:n,order:r};case"pending":return null}}async handleResumedPayment(e){var n,r,i,o,s,a,c,l,u,d,p,g;if(e.status==="declined"||e.status==="failed"){let m=((n=e.error)==null?void 0:n.message)||((r=e.error)==null?void 0:r.processorMessage)||"Payment declined";return(o=(i=this.callbacks).onError)==null||o.call(i,m),(a=(s=this.callbacks).onProcessing)==null||a.call(s,!1),(l=(c=this.callbacks).onFailure)==null||l.call(c,m),{kind:"failed",error:m,payment:e}}return e.status==="succeeded"?((d=(u=this.callbacks).onProcessing)==null||d.call(u,!1),(g=(p=this.callbacks).onSuccess)==null||g.call(p,e),{kind:"completed",payment:e}):e.requireAction!=="none"&&e.requireActionData?this.handlePaymentAction(e):(this.startPolling(e.id,{onSuccess:m=>{var h,f,b,P;(f=(h=this.callbacks).onProcessing)==null||f.call(h,!1),(P=(b=this.callbacks).onSuccess)==null||P.call(b,m)},onFailure:m=>{var h,f,b,P;(f=(h=this.callbacks).onError)==null||f.call(h,m),(P=(b=this.callbacks).onProcessing)==null||P.call(b,!1)},onRequireAction:m=>{this.handlePaymentAction(m)}}),{kind:"pending"})}async handlePaymentAction(e){var r,i,o,s,a,c,l,u,d,p,g,m,h,f,b,P,w,I,E,R,A;if(e.requireAction==="none")return{kind:"pending"};if((r=e.requireActionData)!=null&&r.processed)return{kind:"pending"};let n=e.requireActionData;if(!n)return{kind:"pending"};try{await this.paymentsResource.markPaymentActionProcessed(e.id)}catch(C){}switch(n.type){case"redirect":case"redirect_to_payment":case"processor_auth":{let C=((o=(i=n.metadata)==null?void 0:i.redirect)==null?void 0:o.redirectUrl)||n.redirectUrl||n.url;if(C)return console.log("[PaymentService] Redirecting:",C),this.callbacks.onBeforeRedirect&&await this.callbacks.onBeforeRedirect(e,C),window.location.href=C,{kind:"redirected"};if(e.status==="succeeded")return(a=(s=this.callbacks).onProcessing)==null||a.call(s,!1),(l=(c=this.callbacks).onSuccess)==null||l.call(c,e),{kind:"completed",payment:e};let M="Payment redirect URL missing";return(d=(u=this.callbacks).onError)==null||d.call(u,M),(g=(p=this.callbacks).onProcessing)==null||g.call(p,!1),{kind:"failed",error:M,payment:e}}case"threeds_auth":{let C=(m=n.metadata)==null?void 0:m.threedsSession;if(C!=null&&C.acsChallengeUrl)return console.log("[PaymentService] 3DS challenge redirect:",C.acsChallengeUrl),window.location.href=C.acsChallengeUrl,{kind:"redirected"};let M="3DS challenge URL missing";return(f=(h=this.callbacks).onError)==null||f.call(h,M),(P=(b=this.callbacks).onProcessing)==null||P.call(b,!1),{kind:"failed",error:M,payment:e}}case"error":{let C=n.message||"Payment action failed";return(I=(w=this.callbacks).onError)==null||I.call(w,C),(R=(E=this.callbacks).onProcessing)==null||R.call(E,!1),{kind:"failed",error:C,payment:e}}case"kesspay_auth":return this.handleKessPayAuth(n);case"trustflow_auth":return this.handleTrustFlowAuth(n);case"finix_radar":return this.handleFinixRadar(e,n);case"stripe_radar":return this.handleStripeRadar(e,n);case"radar":return((A=n.metadata)==null?void 0:A.provider)==="airwallex"?this.handleAirwallexRadar(e,n):{kind:"pending"};case"mastercard_auth":return this.handleMasterCardAuth(e,n);case"ngenius_3ds":return this.handleNgeniusThreeds(e,n);default:return console.log("[PaymentService] Unhandled action, starting polling:",n.type),this.startPolling(e.id,{onSuccess:C=>{var M,k,N,x;(k=(M=this.callbacks).onProcessing)==null||k.call(M,!1),(x=(N=this.callbacks).onSuccess)==null||x.call(N,C)},onFailure:C=>{var M,k,N,x;(k=(M=this.callbacks).onError)==null||k.call(M,C),(x=(N=this.callbacks).onProcessing)==null||x.call(N,!1)},onRequireAction:C=>{this.handlePaymentAction(C)}}),{kind:"pending"}}}handleKessPayAuth(e){var r,i,o,s,a,c,l,u,d,p,g;let n=(r=e==null?void 0:e.metadata)==null?void 0:r.threeds;if(!(n!=null&&n.challengeHtml)){let m="Missing KessPay 3DS challenge HTML";return(o=(i=this.callbacks).onError)==null||o.call(i,m),(a=(s=this.callbacks).onProcessing)==null||a.call(s,!1),{kind:"failed",error:m}}try{(l=(c=this.callbacks).onProcessing)==null||l.call(c,!1);let m=document.implementation.createHTMLDocument("KessPay 3DS");m.body.innerHTML=n.challengeHtml;let h=m.querySelector("form");if(h){let f=document.createElement("form");f.method=h.method||"POST",f.action=h.action||"",f.style.display="none",h.querySelectorAll("input").forEach(b=>{let P=document.createElement("input");P.type=b.type,P.name=b.name,P.value=b.value,f.appendChild(P)}),document.body.appendChild(f),f.submit()}else document.open(),document.write(n.challengeHtml),document.close();return{kind:"redirected"}}catch(m){let h=m instanceof Error?m.message:"KessPay 3DS failed";return(d=(u=this.callbacks).onError)==null||d.call(u,h),(g=(p=this.callbacks).onProcessing)==null||g.call(p,!1),{kind:"failed",error:h}}}handleTrustFlowAuth(e){var r,i,o,s,a,c,l,u,d,p,g;let n=(r=e==null?void 0:e.metadata)==null?void 0:r.trustflow;if(!(n!=null&&n.appId)||!(n!=null&&n.txnId)||!(n!=null&&n.hash)){let m="Missing Trust Flow 3DS data";return(o=(i=this.callbacks).onError)==null||o.call(i,m),(a=(s=this.callbacks).onProcessing)==null||a.call(s,!1),{kind:"failed",error:m}}try{(l=(c=this.callbacks).onProcessing)==null||l.call(c,!1);let m=document.createElement("form");m.method="POST",m.action=n.captureUrl,m.style.display="none";for(let[h,f]of[["APP_ID",n.appId],["TXN_ID",n.txnId],["HASH",n.hash]]){let b=document.createElement("input");b.type="hidden",b.name=h,b.value=f,m.appendChild(b)}return document.body.appendChild(m),m.submit(),{kind:"redirected"}}catch(m){let h=m instanceof Error?m.message:"Trust Flow 3DS failed";return(d=(u=this.callbacks).onError)==null||d.call(u,h),(g=(p=this.callbacks).onProcessing)==null||g.call(p,!1),{kind:"failed",error:h}}}async handleFinixRadar(e,n){var i,o,s,a,c,l,u,d,p;let r=(i=n.metadata)==null?void 0:i.radar;if(!r){let g="Finix radar config missing";return(s=(o=this.callbacks).onError)==null||s.call(o,g),(c=(a=this.callbacks).onProcessing)==null||c.call(a,!1),{kind:"failed",error:g,payment:e}}try{await this.loadScript("https://js.finix.com/v/1/finix.js",()=>{var h;return typeof((h=window.Finix)==null?void 0:h.Auth)=="function"});let g=await new Promise((h,f)=>{let b=setTimeout(()=>f(new Error("Timeout waiting for Finix Auth")),1e4),P=window.Finix.Auth(r.environment,r.merchantId,()=>{clearTimeout(b);let I=P.getSessionKey();I?h(I):f(new Error("No Finix session key"))}),w=P.getSessionKey();w&&(clearTimeout(b),h(w))});await this.paymentsResource.saveRadarSession({orderId:r.orderId,finixRadarSessionId:g,finixRadarSessionData:{sessionKey:g,merchantId:r.merchantId,environment:r.environment,createdAt:new Date().toISOString()}});let m=await this.paymentsResource.completePaymentAfterAction(e.id);return await this.handleResumedPayment(m)}catch(g){let m=g instanceof Error?g.message:"Finix radar failed";return(u=(l=this.callbacks).onError)==null||u.call(l,m),(p=(d=this.callbacks).onProcessing)==null||p.call(d,!1),{kind:"failed",error:m,payment:e}}}async handleStripeRadar(e,n){var i,o,s,a,c,l,u,d,p;let r=(i=n.metadata)==null?void 0:i.radar;if(!(r!=null&&r.publishableKey)){let g="Stripe radar config missing";return(s=(o=this.callbacks).onError)==null||s.call(o,g),(c=(a=this.callbacks).onProcessing)==null||c.call(a,!1),{kind:"failed",error:g,payment:e}}try{await this.loadScript("https://js.stripe.com/v3/",()=>typeof window.Stripe=="function");let m=await window.Stripe(r.publishableKey).createRadarSession();if(m.error)throw new Error(m.error.message||"Failed to create Radar session");if(!m.radarSession)throw new Error("No radar session returned from Stripe");await this.paymentsResource.saveRadarSession({orderId:r.orderId,stripeRadarSessionId:m.radarSession.id,stripeRadarSessionData:m.radarSession});let h=await this.paymentsResource.completePaymentAfterAction(e.id);return await this.handleResumedPayment(h)}catch(g){let m=g instanceof Error?g.message:"Stripe radar failed";return(u=(l=this.callbacks).onError)==null||u.call(l,m),(p=(d=this.callbacks).onProcessing)==null||p.call(d,!1),{kind:"failed",error:m,payment:e}}}async handleNgeniusThreeds(e,n){var i,o,s,a,c,l,u,d,p;let r=(i=n.metadata)==null?void 0:i.sdk;if(!(r!=null&&r.paymentResponse)||!r.orderReference||!r.paymentReference){let g="N-Genius 3DS: missing SDK metadata";return(s=(o=this.callbacks).onError)==null||s.call(o,g),(c=(a=this.callbacks).onProcessing)==null||c.call(a,!1),{kind:"failed",error:g,payment:e}}try{let g=r.isSandboxed?"https://paypage.sandbox.ngenius-payments.com/hosted-sessions/sdk.js":"https://paypage.ngenius-payments.com/hosted-sessions/sdk.js";document.getElementById("ngenius-websdk")||await new Promise((b,P)=>{let w=document.createElement("script");w.id="ngenius-websdk",w.src=g,w.onload=()=>b(),w.onerror=()=>P(new Error("Failed to load N-Genius WebSDK")),document.head.appendChild(w)});let m=window.NI;if(!(m!=null&&m.handlePaymentResponse))throw new Error("N-Genius WebSDK did not expose window.NI.handlePaymentResponse");console.log("[N-Genius 3DS] Starting WebSDK challenge");let h=await m.handlePaymentResponse(r.paymentResponse,{mountId:"ngenius-3ds-container",style:{width:"100%",height:500}});console.log("[N-Genius 3DS] WebSDK outcome:",h.status);let f=await this.paymentsResource.ngeniusThreedsComplete({paymentId:e.id,orderReference:r.orderReference,paymentReference:r.paymentReference});return await this.handleResumedPayment(f)}catch(g){let m=g instanceof Error?g.message:"N-Genius 3DS failed";return console.error("[N-Genius 3DS] Error:",g),(u=(l=this.callbacks).onError)==null||u.call(l,m),(p=(d=this.callbacks).onProcessing)==null||p.call(d,!1),{kind:"failed",error:m,payment:e}}}async handleAirwallexRadar(e,n){var s,a,c,l,u,d,p,g,m,h,f;let r=((s=n.metadata)==null?void 0:s.isTest)||!1,i=(a=e.order)==null?void 0:a.id,o=(c=e.order)==null?void 0:c.checkoutSessionId;if(!i||!o){let b="Missing order info for Airwallex radar";return(u=(l=this.callbacks).onError)==null||u.call(l,b),(p=(d=this.callbacks).onProcessing)==null||p.call(d,!1),{kind:"failed",error:b,payment:e}}try{let b=crypto.randomUUID(),P=document.getElementById("airwallex-fraud-api");if(P)P.setAttribute("data-order-session-id",b);else{let I=r?"https://static-demo.airwallex.com":"https://static.airwallex.com",E=document.createElement("script");E.type="text/javascript",E.async=!0,E.id="airwallex-fraud-api",E.setAttribute("data-order-session-id",b),E.src="".concat(I,"/webapp/fraud/device-fingerprint/index.js"),await new Promise((R,A)=>{E.onload=()=>R(),E.onerror=()=>A(new Error("Failed to load Airwallex fraud script")),document.body.appendChild(E)})}await this.paymentsResource.saveRadarSession({paymentId:e.id,checkoutSessionId:o,orderId:i,airwallexRadarSessionId:b});let w=await this.paymentsResource.completePaymentAfterAction(e.id);return await this.handleResumedPayment(w)}catch(b){let P=b instanceof Error?b.message:"Airwallex radar failed";return(m=(g=this.callbacks).onError)==null||m.call(g,P),(f=(h=this.callbacks).onProcessing)==null||f.call(h,!1),{kind:"failed",error:P,payment:e}}}async handleMasterCardAuth(e,n){var i,o,s,a,c,l,u,d,p,g,m,h,f,b;let r=(i=n==null?void 0:n.metadata)==null?void 0:i.threeds;if(!(r!=null&&r.sessionId)||!(r!=null&&r.merchantId)){let P="Missing MasterCard 3DS data";return(s=(o=this.callbacks).onError)==null||s.call(o,P),(c=(a=this.callbacks).onProcessing)==null||c.call(a,!1),{kind:"failed",error:P,payment:e}}try{(u=(l=this.callbacks).onProcessing)==null||u.call(l,!1),await this.loadScript(r.scriptUrl,()=>!!window.ThreeDS);let P="mastercard-3ds-container",w=document.getElementById(P);w||(w=document.createElement("div"),w.id=P,w.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;overflow:hidden",document.body.appendChild(w)),await new Promise((A,C)=>{window.ThreeDS.configure({merchantId:r.merchantId,sessionId:r.sessionId,containerId:P,callback:()=>{window.ThreeDS.isConfigured()?A():C(new Error("ThreeDS configuration failed"))},configuration:{userLanguage:"en-US",wsVersion:r.version?parseInt(r.version,10):72}})});let I=await new Promise(A=>{window.ThreeDS.authenticatePayer(r.orderId,r.transactionId,A)}),E=(I==null?void 0:I.htmlRedirectCode)||((g=(p=(d=I==null?void 0:I.restApiResponse)==null?void 0:d.authentication)==null?void 0:p.redirect)==null?void 0:g.html);if(E){let A=document.implementation.createHTMLDocument("MasterCard 3DS");A.body.innerHTML=E;let C=A.querySelector("form");if(C){let M=document.createElement("form");M.method=C.method||"POST",M.action=C.action||"",M.style.display="none",C.querySelectorAll("input").forEach(k=>{let N=document.createElement("input");N.type=k.type,N.name=k.name,N.value=k.value,M.appendChild(N)}),document.body.appendChild(M),M.submit()}else document.open(),document.write(E),document.close();return{kind:"redirected"}}if(r.paymentId){let A=await this.paymentsResource.completePaymentAfterAction(r.paymentId),C=document.getElementById(P);return C&&C.remove(),await this.handleResumedPayment(A)}let R=document.getElementById(P);return R&&R.remove(),{kind:"pending"}}catch(P){let w=P instanceof Error?P.message:"MasterCard 3DS failed";return(h=(m=this.callbacks).onError)==null||h.call(m,w),(b=(f=this.callbacks).onProcessing)==null||b.call(f,!1),{kind:"failed",error:w,payment:e}}}async loadScript(e,n){if(typeof window=="undefined"||n())return;if(document.querySelector('script[src="'.concat(e,'"]'))){await this.waitFor(n,1e4);return}let i=document.createElement("script");i.src=e,i.async=!0,await new Promise((o,s)=>{i.onload=()=>o(),i.onerror=()=>s(new Error("Failed to load script: ".concat(e))),document.head.appendChild(i)})}waitFor(e,n){return new Promise((r,i)=>{if(e()){r();return}let o=setTimeout(()=>i(new Error("Timeout")),n),s=()=>{e()?(clearTimeout(o),r()):setTimeout(s,100)};s()})}detectRedirectReturn(){return typeof window=="undefined"||this.redirectReturnProcessed?!1:this.detectAirwallex3dsReturn()?!0:this.detectGenericRedirectReturn()}detectGenericRedirectReturn(){var s,a,c,l,u,d;let e=new URLSearchParams(window.location.search),n=e.get("paymentAction"),r=e.get("paymentActionStatus"),i=e.get("paymentId");return e.get("mode")==="retrieve"||n!=="requireAction"||r!=="completed"||!i?!1:(console.log("[PaymentService] Generic redirect return detected:",i),this.redirectReturnProcessed=!0,(a=(s=this.callbacks).onProcessing)==null||a.call(s,!0),(l=(c=this.callbacks).onCurrentPaymentId)==null||l.call(c,i),(d=(u=this.callbacks).onRedirectReturn)==null||d.call(u,i),this.startPolling(i,{onSuccess:p=>{var g,m,h,f;(m=(g=this.callbacks).onProcessing)==null||m.call(g,!1),this.cleanPaymentUrlParams(),(f=(h=this.callbacks).onSuccess)==null||f.call(h,p)},onFailure:p=>{var g,m,h,f;(m=(g=this.callbacks).onError)==null||m.call(g,p),(f=(h=this.callbacks).onProcessing)==null||f.call(h,!1),this.cleanPaymentUrlParams()},onRequireAction:p=>{this.handlePaymentAction(p)}}),!0)}detectAirwallex3dsReturn(){var a,c,l,u;let e=new URLSearchParams(window.location.search),n=e.get("paymentId"),r=e.get("payment_intent_id"),i=e.get("succeeded"),o=e.get("processorType");return!(r||i!==null)||o!=="airwallex"||!n?!1:(console.log("[PaymentService] Airwallex 3DS return detected:",n),this.redirectReturnProcessed=!0,(c=(a=this.callbacks).onProcessing)==null||c.call(a,!0),(u=(l=this.callbacks).onCurrentPaymentId)==null||u.call(l,n),this.handleAirwallex3dsRedirectReturn(n,r,i),!0)}async handleAirwallex3dsRedirectReturn(e,n,r){var o,s,a,c,l,u,d,p,g,m,h,f,b,P,w,I,E,R,A,C,M,k,N,x,q,G,V,U,Me;let i=()=>{let D=new URLSearchParams(window.location.search);["payment_intent_id","succeeded","processorType","paymentId","paymentAction","paymentActionStatus","error_code","error_message","mode"].forEach(j=>D.delete(j));let ve=D.toString()?"".concat(window.location.pathname,"?").concat(D.toString()):window.location.pathname;window.history.replaceState({},document.title,ve)};if(r==="true")try{await this.paymentsResource.updateThreedsStatus({paymentId:e,status:"succeeded",paymentIntentId:n||""}),i();let D=await this.paymentsResource.retrievePayment(e),ve=((o=D==null?void 0:D.retrieveResult)==null?void 0:o.status)||(D==null?void 0:D.status);if((s=D==null?void 0:D.retrieveResult)!=null&&s.success&&ve==="succeeded"){let j=await this.paymentsResource.getPaymentStatus(e);(c=(a=this.callbacks).onProcessing)==null||c.call(a,!1),(u=(l=this.callbacks).onSuccess)==null||u.call(l,j)}else if(ve==="declined"||ve==="error"){let j=((d=D==null?void 0:D.retrieveResult)==null?void 0:d.message)||(D==null?void 0:D.message)||"Payment failed";(g=(p=this.callbacks).onError)==null||g.call(p,j),(h=(m=this.callbacks).onProcessing)==null||h.call(m,!1)}else{let j=await this.paymentsResource.getPaymentStatus(e);if(j.status==="declined"||j.status==="failed"){let K=((f=j.error)==null?void 0:f.message)||((b=j.error)==null?void 0:b.processorMessage)||"Payment declined";(w=(P=this.callbacks).onError)==null||w.call(P,K),(E=(I=this.callbacks).onProcessing)==null||E.call(I,!1)}else j.status==="succeeded"||j.status==="pending"&&j.subStatus==="authorized"?((A=(R=this.callbacks).onProcessing)==null||A.call(R,!1),(M=(C=this.callbacks).onSuccess)==null||M.call(C,j)):j.requireAction!=="none"&&j.requireActionData&&!j.requireActionData.processed?this.handlePaymentAction(j):this.startPolling(e,{onSuccess:K=>{var Q,ae,oe,ce;(ae=(Q=this.callbacks).onProcessing)==null||ae.call(Q,!1),(ce=(oe=this.callbacks).onSuccess)==null||ce.call(oe,K)},onFailure:K=>{var Q,ae,oe,ce;(ae=(Q=this.callbacks).onError)==null||ae.call(Q,K),(ce=(oe=this.callbacks).onProcessing)==null||ce.call(oe,!1)},onRequireAction:K=>{this.handlePaymentAction(K)}})}}catch(D){(N=(k=this.callbacks).onError)==null||N.call(k,D instanceof Error?D.message:"Failed to process Airwallex 3DS"),(q=(x=this.callbacks).onProcessing)==null||q.call(x,!1)}else{let D=new URLSearchParams(window.location.search).get("error_message")||"Authentication failed";(V=(G=this.callbacks).onError)==null||V.call(G,D),(Me=(U=this.callbacks).onProcessing)==null||Me.call(U,!1),i()}}cleanPaymentUrlParams(){if(typeof window=="undefined")return;let e=new URLSearchParams(window.location.search);["paymentAction","paymentActionStatus","paymentId","payment_intent","payment_intent_client_secret","source_type","redirect_status"].forEach(r=>e.delete(r));let n=e.toString()?"".concat(window.location.pathname,"?").concat(e.toString()):window.location.pathname;window.history.replaceState({},document.title,n)}async createCardPaymentInstrument(e){let n=await this.initBasisTheory();return this.paymentsResource.createCardPaymentInstrument(n!=null?n:void 0,e)}async createApplePayPaymentInstrument(e){let n=await this.initBasisTheory();return this.paymentsResource.createApplePayPaymentInstrument(n!=null?n:void 0,e)}async createGooglePayPaymentInstrument(e){let n=await this.initBasisTheory();return this.paymentsResource.createGooglePayPaymentInstrument(n!=null?n:void 0,e)}async getCardPaymentInstruments(){return this.paymentsResource.getCardPaymentInstruments()}async createThreedsSession(e){let n=await this.initBt3ds();if(!n)throw new Error("BasisTheory 3DS not loaded");let i=await n(this.getBtApiKey()).createSession({tokenId:e.token});return this.threedsResource.createSession({provider:"basis_theory",sessionData:i,paymentInstrumentId:e.id})}async processCardPayment(e,n,r){var i,o,s,a,c,l,u,d,p;(o=(i=this.callbacks).onProcessing)==null||o.call(i,!0),(a=(s=this.callbacks).onError)==null||a.call(s,null);try{let g=await this.createCardPaymentInstrument({cardNumber:n.cardNumber,expiryDate:n.expiryDate,cvc:n.cvc});if(!(g!=null&&g.id))throw new Error("Failed to create payment instrument");let m,h=await this.fetchStoreConfig();if((c=h==null?void 0:h.computed)!=null&&c.threedsEnabled)try{m=(await this.createThreedsSession(g)).id}catch(f){}return await this.processAndHandle(e,g.id,m,{shippingRateId:r==null?void 0:r.shippingRateId})}catch(g){let m=g instanceof Error?g.message:String(g);return(u=(l=this.callbacks).onError)==null||u.call(l,m),(p=(d=this.callbacks).onProcessing)==null||p.call(d,!1),{success:!1,error:m}}}async processApplePayPayment(e,n,r){var i,o,s,a,c,l,u,d;(o=(i=this.callbacks).onProcessing)==null||o.call(i,!0),(a=(s=this.callbacks).onError)==null||a.call(s,null);try{let p=await this.createApplePayPaymentInstrument(n);return await this.processAndHandle(e,p.id,void 0,{shippingRateId:r==null?void 0:r.shippingRateId})}catch(p){let g=p instanceof Error?p.message:String(p);return(l=(c=this.callbacks).onError)==null||l.call(c,g),(d=(u=this.callbacks).onProcessing)==null||d.call(u,!1),{success:!1,error:g}}}async processGooglePayPayment(e,n,r){var i,o,s,a,c,l,u,d;(o=(i=this.callbacks).onProcessing)==null||o.call(i,!0),(a=(s=this.callbacks).onError)==null||a.call(s,null);try{let p=await this.createGooglePayPaymentInstrument(n);return await this.processAndHandle(e,p.id,void 0,{shippingRateId:r==null?void 0:r.shippingRateId})}catch(p){let g=p instanceof Error?p.message:String(p);return(l=(c=this.callbacks).onError)==null||l.call(c,g),(d=(u=this.callbacks).onProcessing)==null||d.call(u,!1),{success:!1,error:g}}}async processPaymentWithInstrument(e,n,r){var i,o,s,a,c,l,u,d;(o=(i=this.callbacks).onProcessing)==null||o.call(i,!0),(a=(s=this.callbacks).onError)==null||a.call(s,null);try{return await this.processAndHandle(e,n,void 0,{shippingRateId:r==null?void 0:r.shippingRateId})}catch(p){let g=p instanceof Error?p.message:String(p);return(l=(c=this.callbacks).onError)==null||l.call(c,g),(d=(u=this.callbacks).onProcessing)==null||d.call(u,!1),{success:!1,error:g}}}async processApmPayment(e,n,r){var i,o,s,a,c,l,u,d;(o=(i=this.callbacks).onProcessing)==null||o.call(i,!0),(a=(s=this.callbacks).onError)==null||a.call(s,null);try{return await this.processAndHandle(e,"",void 0,{processorId:n.processorId,paymentMethod:n.paymentMethod,initiatedBy:n.initiatedBy,source:n.source,shippingRateId:r==null?void 0:r.shippingRateId})}catch(p){let g=p instanceof Error?p.message:String(p);return(l=(c=this.callbacks).onError)==null||l.call(c,g),(d=(u=this.callbacks).onProcessing)==null||d.call(u,!1),{success:!1,error:g}}}async processStripeExpressPayment(e,n,r,i,o,s){var a,c,l,u,d,p,g,m,h,f,b,P,w,I,E,R,A,C,M,k,N,x,q,G;(c=(a=this.callbacks).onProcessing)==null||c.call(a,!0),(u=(l=this.callbacks).onError)==null||u.call(l,null);try{let V=nt(),U=await this.paymentsResource.processPaymentDirect(e,"",void 0,{processorId:r,paymentMethod:n,isExpress:!0,paymentFlowId:V,shippingRateId:s==null?void 0:s.shippingRateId});(g=(p=this.callbacks).onCurrentPaymentId)==null||g.call(p,((d=U.payment)==null?void 0:d.id)||null);let Me=(b=(f=(h=(m=U==null?void 0:U.payment)==null?void 0:m.requireActionData)==null?void 0:h.metadata)==null?void 0:f.stripeExpressCheckout)==null?void 0:b.clientSecret;if(!Me){let j="Express checkout configuration missing \u2014 no client secret returned";return(w=(P=this.callbacks).onError)==null||w.call(P,j),(E=(I=this.callbacks).onProcessing)==null||E.call(I,!1),{success:!1,error:j,payment:U.payment,order:U.order}}let{error:D}=await i.confirmPayment({elements:o,clientSecret:Me,confirmParams:{return_url:window.location.href},redirect:"if_required"});if(D){let j=(R=D.message)!=null?R:"Payment confirmation failed";return(C=(A=this.callbacks).onError)==null||C.call(A,j),(k=(M=this.callbacks).onProcessing)==null||k.call(M,!1),{success:!1,error:j,payment:U.payment,order:U.order}}let ve=U.payment.id;return await new Promise(j=>{let K=async()=>{var Q,ae,oe,ce,Vo,Wo;try{let Ae=await this.paymentsResource.getPaymentStatus(ve);if(Ae.status==="succeeded"||Ae.status==="pending"&&Ae.subStatus==="authorized"){(ae=(Q=this.callbacks).onProcessing)==null||ae.call(Q,!1),j({success:!0,payment:Ae,order:U.order});return}if(Ae.status!=="succeeded"&&Ae.status!=="pending"){let Yo=Ae.status||"Payment failed";(ce=(oe=this.callbacks).onError)==null||ce.call(oe,Yo),(Wo=(Vo=this.callbacks).onProcessing)==null||Wo.call(Vo,!1),j({success:!1,error:Yo,payment:Ae,order:U.order});return}setTimeout(K,1500)}catch(Ae){setTimeout(K,1500)}};K()})}catch(V){let U=V instanceof Error?V.message:String(V);return(x=(N=this.callbacks).onError)==null||x.call(N,U),(G=(q=this.callbacks).onProcessing)==null||G.call(q,!1),{success:!1,error:U}}}};var Hh=Br(Fo());var qo;(function(t){t.SCRIPT_LOAD_FAILED="SCRIPT_LOAD_FAILED",t.SESSION_SAVE_FAILED="SESSION_SAVE_FAILED",t.RESUME_FAILED="RESUME_FAILED",t.NO_API_CLIENT="NO_API_CLIENT",t.SSR_NOT_SUPPORTED="SSR_NOT_SUPPORTED"})(qo||(qo={}));var Ko;(function(t){t.CONTINUE_PAYMENT_FAILED="CONTINUE_PAYMENT_FAILED",t.MISSING_PAYMENT_ID="MISSING_PAYMENT_ID"})(Ko||(Ko={}));var ru="https://applepay.cdn-apple.com/jsapi/1.latest/apple-pay-sdk.js";var Be=null;function Vh(){if(Be)return Be;if(typeof window=="undefined")return Promise.reject(new Error("[ApplePayService] No window \u2014 not in browser"));if(window.ApplePaySession)return Be=Promise.resolve(),Be;let t=document.querySelector('script[src="'.concat(ru,'"]'));return t?(Be=new Promise(e=>{if(window.ApplePaySession)return e();t.addEventListener("load",()=>e());let n=setInterval(()=>{window.ApplePaySession&&(clearInterval(n),e())},100);setTimeout(()=>{clearInterval(n),e()},5e3)}),Be):(Be=new Promise((e,n)=>{let r=document.createElement("script");r.src=ru,r.crossOrigin="anonymous",r.async=!0,r.onload=()=>e(),r.onerror=()=>{Be=null,n(new Error("[ApplePayService] Failed to load Apple Pay SDK"))},document.head.appendChild(r)}),Be)}async function xr(){try{await Vh();let t=window.ApplePaySession;return!!t&&t.canMakePayments()}catch(t){return!1}}async function Wh(t,e,n){let r=await fetch("https://api.basistheory.com/apple-pay/session",{method:"POST",headers:{"Content-Type":"application/json","BT-API-KEY":t},body:JSON.stringify({display_name:e,domain:n})});if(!r.ok)throw new Error("[ApplePayService] Merchant validation failed: HTTP ".concat(r.status));return r.json()}async function Yh(t,e){let n=await fetch("https://api.basistheory.com/apple-pay",{method:"POST",headers:{"Content-Type":"application/json","BT-API-KEY":t},body:JSON.stringify({apple_payment_data:e})});if(!n.ok)throw new Error("[ApplePayService] Tokenization failed: HTTP ".concat(n.status));return(await n.json()).apple_pay}function Jh(t,e){return["BIF","CLP","DJF","GNF","JPY","KMF","KRW","MGA","PYG","RWF","UGX","VND","VUV","XAF","XOF","XPF"].includes(e.toUpperCase())?String(t):(t/100).toFixed(2)}function kr(t,e,n){var c,l;let r=window.ApplePaySession;if(!r){(c=n.onError)==null||c.call(n,"Apple Pay is not available on this device");return}let i=t.countryCode||"US",o=t.storeName||"Store",s=Jh(e.totalAmountMinor,e.currency),a={countryCode:i,currencyCode:e.currency,supportedNetworks:["visa","masterCard","amex","discover"],merchantCapabilities:["supports3DS"],total:{label:o,amount:s,type:"final"},requiredShippingContactFields:["name","phone","email","postalAddress"],requiredBillingContactFields:["postalAddress"]};e.lineItems&&(a.lineItems=e.lineItems.map(u=>_(S({},u),{type:"final"}))),e.shippingMethods&&(a.shippingMethods=e.shippingMethods),e.supportedCountries&&e.supportedCountries.length>0&&(a.supportedCountries=e.supportedCountries.map(u=>u.toUpperCase()));try{let u=new r(3,a);u.onvalidatemerchant=()=>{(async()=>{var d;try{let p=await Wh(t.basisTheoryApiKey,o,window.location.host);u.completeMerchantValidation(p)}catch(p){console.error("[ApplePayService] Merchant validation failed:",p),u.abort(),(d=n.onError)==null||d.call(n,"Merchant validation failed")}})()},u.onpaymentauthorized=d=>{(async()=>{var p;try{let g=await Yh(t.basisTheoryApiKey,d.payment.token);u.completePayment(r.STATUS_SUCCESS),await n.onSuccess(g,{shipping:d.payment.shippingContact,billing:d.payment.billingContact})}catch(g){console.error("[ApplePayService] Payment processing failed:",g),u.completePayment(r.STATUS_FAILURE),(p=n.onError)==null||p.call(n,"Payment failed")}})()},n.onShippingContactSelected&&(u.onshippingcontactselected=d=>{(async()=>{try{let p=await n.onShippingContactSelected(d.shippingContact);if(!p){u.abort();return}if(p.errors&&p.errors.length>0){let g=window.ApplePayError,m=p.errors.map(h=>g?new g(h.code,h.contactField,h.message):{code:h.code,contactField:h.contactField,message:h.message});u.completeShippingContactSelection({newTotal:_(S({},p.total),{type:"final"}),newLineItems:p.lineItems.map(h=>_(S({},h),{type:"final"})),newShippingMethods:p.shippingMethods||[],errors:m});return}u.completeShippingContactSelection(r.STATUS_SUCCESS,p.shippingMethods||[],_(S({},p.total),{type:"final"}),p.lineItems.map(g=>_(S({},g),{type:"final"})))}catch(p){u.abort()}})()}),n.onShippingMethodSelected&&(u.onshippingmethodselected=d=>{(async()=>{try{let p=await n.onShippingMethodSelected(d.shippingMethod.identifier);if(!p){u.abort();return}u.completeShippingMethodSelection(r.STATUS_SUCCESS,_(S({},p.total),{type:"final"}),p.lineItems.map(g=>_(S({},g),{type:"final"})))}catch(p){u.abort()}})()}),u.oncancel=()=>{var d;(d=n.onCancel)==null||d.call(n)},u.onerror=d=>{var p;console.error("[ApplePayService] Session error:",d),(p=n.onError)==null||p.call(n,"Apple Pay session error")},u.begin()}catch(u){console.error("[ApplePayService] Failed to start Apple Pay session:",u),(l=n.onError)==null||l.call(n,"Failed to start Apple Pay")}}var iu="https://pay.google.com/gp/p/js/pay.js",Le=null;function Zh(){var e,n,r;if(Le)return Le;if(typeof window=="undefined")return Promise.reject(new Error("[GooglePayService] No window \u2014 not in browser"));if((r=(n=(e=window.google)==null?void 0:e.payments)==null?void 0:n.api)!=null&&r.PaymentsClient)return Le=Promise.resolve(),Le;let t=document.querySelector('script[src="'.concat(iu,'"]'));return t?(Le=new Promise(i=>{var s,a,c;if((c=(a=(s=window.google)==null?void 0:s.payments)==null?void 0:a.api)!=null&&c.PaymentsClient)return i();t.addEventListener("load",()=>i());let o=setInterval(()=>{var l,u,d;(d=(u=(l=window.google)==null?void 0:l.payments)==null?void 0:u.api)!=null&&d.PaymentsClient&&(clearInterval(o),i())},100);setTimeout(()=>{clearInterval(o),i()},5e3)}),Le):(Le=new Promise((i,o)=>{let s=document.createElement("script");s.src=iu,s.async=!0,s.onload=()=>i(),s.onerror=()=>{Le=null,o(new Error("[GooglePayService] Failed to load Google Pay SDK"))},document.head.appendChild(s)}),Le)}var su={type:"CARD",parameters:{allowedAuthMethods:["PAN_ONLY","CRYPTOGRAM_3DS"],allowedCardNetworks:["VISA","MASTERCARD","AMEX","DISCOVER","JCB"]}};async function Nr(t=!1){var e,n,r;try{await Zh();let i=(r=(n=(e=window.google)==null?void 0:e.payments)==null?void 0:n.api)==null?void 0:r.PaymentsClient;return i?(await new i({environment:t?"TEST":"PRODUCTION"}).isReadyToPay({apiVersion:2,apiVersionMinor:0,allowedPaymentMethods:[su]})).result===!0:!1}catch(i){return!1}}async function Xh(t,e){let n;try{n=typeof e=="string"?JSON.parse(e):e}catch(o){n=e}let r=await fetch("https://api.basistheory.com/google-pay",{method:"POST",headers:{"Content-Type":"application/json","BT-API-KEY":t},body:JSON.stringify({google_payment_data:n})});if(!r.ok)throw new Error("[GooglePayService] Tokenization failed: HTTP ".concat(r.status));return(await r.json()).google_pay}function Qh(t,e){return["BIF","CLP","DJF","GNF","JPY","KMF","KRW","MGA","PYG","RWF","UGX","VND","VUV","XAF","XOF","XPF"].includes(e.toUpperCase())?String(t):(t/100).toFixed(2)}function ou(t){if(t)return{name:t.name,phoneNumber:t.phoneNumber,address1:t.address1,address2:t.address2,address3:t.address3,locality:t.locality,administrativeArea:t.administrativeArea,postalCode:t.postalCode,countryCode:t.countryCode,sortingCode:t.sortingCode}}function Dr(t,e,n){var l,u,d,p,g;let r=(d=(u=(l=window.google)==null?void 0:l.payments)==null?void 0:u.api)==null?void 0:d.PaymentsClient;if(!r){(p=n.onError)==null||p.call(n,"Google Pay is not available on this device");return}let i=t.countryCode||"US",o=t.merchantName||"Store",s=Qh(e.totalAmountMinor,e.currency),a=new r({environment:t.sandboxed?"TEST":"PRODUCTION"}),c={apiVersion:2,apiVersionMinor:0,allowedPaymentMethods:[_(S({},su),{tokenizationSpecification:{type:"PAYMENT_GATEWAY",parameters:{gateway:"basistheory",gatewayMerchantId:t.basisTheoryTenantId}}})],merchantInfo:{merchantId:t.sandboxed?"12345678901234567890":t.merchantId,merchantName:o},transactionInfo:{totalPriceStatus:e.totalPriceStatus||"FINAL",totalPrice:s,currencyCode:e.currency,countryCode:i},emailRequired:!0,shippingAddressRequired:!0,shippingAddressParameters:{phoneNumberRequired:!0}};e.displayItems&&(c.transactionInfo.displayItems=e.displayItems);try{a.loadPaymentData(c).then(async m=>{var h,f,b;try{let P=m.paymentMethodData,w=(h=P==null?void 0:P.tokenizationData)==null?void 0:h.token;if(!w)throw new Error("No payment token received from Google Pay");let I=await Xh(t.basisTheoryApiKey,w);P!=null&&P.info&&(I.details=S({auth_method:P.info.cardNetwork},I.details));let E=ou(m.shippingAddress),R=ou((f=P==null?void 0:P.info)==null?void 0:f.billingAddress),A=m.email;await n.onSuccess(I,{shipping:E,billing:R,email:A})}catch(P){console.error("[GooglePayService] Payment processing failed:",P),(b=n.onError)==null||b.call(n,"Payment failed")}}).catch(m=>{var h,f;m.statusCode==="CANCELED"?(h=n.onCancel)==null||h.call(n):(console.error("[GooglePayService] Google Pay error:",m),(f=n.onError)==null||f.call(n,m.statusMessage||"Google Pay failed"))})}catch(m){console.error("[GooglePayService] Failed to start Google Pay session:",m),(g=n.onError)==null||g.call(n,"Failed to start Google Pay")}}var Zt={AED:{name:"United Arab Emirates Dirham",demonym:"UAE",majorSingle:"Dirham",majorPlural:"Dirhams",ISOnum:784,symbol:"\u062F.\u0625.",symbolNative:"\u062F.\u0625.",minorSingle:"Fils",minorPlural:"Fils",ISOdigits:2,decimals:2,numToBasic:100},AFN:{name:"Afghan Afghani",demonym:"Afghan",majorSingle:"Afghani",majorPlural:"Afghani",ISOnum:971,symbol:"Af",symbolNative:"\u060B",minorSingle:"Pul",minorPlural:"Pul",ISOdigits:2,decimals:2,numToBasic:100},ALL:{name:"Albanian Lek",demonym:"Albanian",majorSingle:"Lek",majorPlural:"Lek\xEB",ISOnum:8,symbol:"L",symbolNative:"L",minorSingle:"Qindarka",minorPlural:"Qindarka",ISOdigits:2,decimals:2,numToBasic:100},AMD:{name:"Armenian Dram",demonym:"Armenian",majorSingle:"Dram",majorPlural:"Dram",ISOnum:51,symbol:"\u058F",symbolNative:"\u0564\u0580",minorSingle:"Luma",minorPlural:"Luma",ISOdigits:2,decimals:2,numToBasic:100},ANG:{name:"Netherlands Antillean Guilder",demonym:"Netherlands Antillean",majorSingle:"Guilder",majorPlural:"Guilders",ISOnum:532,symbol:"\u0192",symbolNative:"\u0192",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},AOA:{name:"Angolan Kwanza",demonym:"Angolan",majorSingle:"Kwanza",majorPlural:"Kwanza",ISOnum:973,symbol:"Kz",symbolNative:"Kz",minorSingle:"Centimo",minorPlural:"Centimos",ISOdigits:2,decimals:2,numToBasic:100},ARS:{name:"Argentine Peso",demonym:"Argentine",majorSingle:"Peso",majorPlural:"Pesos",ISOnum:32,symbol:"AR$",symbolNative:"$",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},AUD:{name:"Australian Dollar",demonym:"Australian",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:36,symbol:"AU$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},AWG:{name:"Aruban Florin",demonym:"Aruban",majorSingle:"Florin",majorPlural:"Florin",ISOnum:533,symbol:"\u0192",symbolNative:"\u0192",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},AZN:{name:"Azerbaijani Manat",demonym:"Azerbaijani",majorSingle:"Manat",majorPlural:"Manat",ISOnum:944,symbol:"\u043C\u0430\u043D",symbolNative:"\u20BC",minorSingle:"Qapik",minorPlural:"Qapik",ISOdigits:2,decimals:2,numToBasic:100},BAM:{name:"Bosnia and Herzegovina Convertible Mark",demonym:"Bosnia-Herzegovina",majorSingle:"Convertible Mark",majorPlural:"Marks",ISOnum:977,symbol:"KM",symbolNative:"\u041A\u041C",minorSingle:"Fening",minorPlural:"Fening",ISOdigits:2,decimals:2,numToBasic:100},BBD:{name:"Barbadian Dollar",demonym:"Barbadian",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:52,symbol:"BBD$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},BDT:{name:"Bangladeshi Taka",demonym:"Bangladeshi",majorSingle:"Taka",majorPlural:"Taka",ISOnum:50,symbol:"\u09F3",symbolNative:"\u09F3",minorSingle:"Poisha",minorPlural:"Poisha",ISOdigits:2,decimals:2,numToBasic:100},BGN:{name:"Bulgarian Lev",demonym:"Bulgarian",majorSingle:"Lev",majorPlural:"Leva",ISOnum:975,symbol:"\u043B\u0432.",symbolNative:"\u043B\u0432.",minorSingle:"Stotinka",minorPlural:"Stotinki",ISOdigits:2,decimals:2,numToBasic:100},BHD:{name:"Bahraini Dinar",demonym:"Bahraini",majorSingle:"Dinar",majorPlural:"Dinars",ISOnum:48,symbol:"BD",symbolNative:"\u062F.\u0628.",minorSingle:"Fils",minorPlural:"Fils",ISOdigits:3,decimals:3,numToBasic:1e3},BIF:{name:"Burundian Franc",demonym:"Burundian",majorSingle:"Franc",majorPlural:"Francs",ISOnum:108,symbol:"FBu",symbolNative:"FBu",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:0,decimals:2,numToBasic:100},BMD:{name:"Bermudian Dollar",demonym:"Bermudian",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:60,symbol:"$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},BND:{name:"Brunei Dollar",demonym:"Brunei",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:96,symbol:"B$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},BOB:{name:"Bolivian Boliviano",demonym:"Bolivian",majorSingle:"Boliviano",majorPlural:"Bolivianos",ISOnum:68,symbol:"Bs.",symbolNative:"Bs.",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},BRL:{name:"Brazilian Real",demonym:"Brazilian",majorSingle:"Real",majorPlural:"Reais",ISOnum:986,symbol:"R$",symbolNative:"R$",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},BSD:{name:"Bahamian Dollar",demonym:"Bahamian",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:44,symbol:"$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},BTN:{name:"Bhutanese Ngultrum",demonym:"Bhutanese",majorSingle:"Ngultrum",majorPlural:"Ngultrums",ISOnum:64,symbol:"Nu.",symbolNative:"Nu.",minorSingle:"Chetrum",minorPlural:"Chetrums",ISOdigits:2,decimals:2,numToBasic:100},BWP:{name:"Botswana Pula",demonym:"Botswana",majorSingle:"Pula",majorPlural:"Pula",ISOnum:72,symbol:"P",symbolNative:"P",minorSingle:"Thebe",minorPlural:"Thebe",ISOdigits:2,decimals:2,numToBasic:100},BYN:{name:"Belarusian Ruble",demonym:"Belarusian",majorSingle:"Ruble",majorPlural:"Rubles",ISOnum:933,symbol:"Br",symbolNative:"\u0440\u0443\u0431.",minorSingle:"Kapiejka",minorPlural:"Kapiejka",ISOdigits:2,decimals:2,numToBasic:100},BZD:{name:"Belize Dollar",demonym:"Belize",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:84,symbol:"BZ$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},CAD:{name:"Canadian Dollar",demonym:"Canadian",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:124,symbol:"CA$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},CDF:{name:"Congolese Franc",demonym:"Congolese",majorSingle:"Franc",majorPlural:"Francs",ISOnum:976,symbol:"FC",symbolNative:"\u20A3",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:2,decimals:2,numToBasic:100},CHF:{name:"Swiss Franc",demonym:"Swiss",majorSingle:"Franc",majorPlural:"Francs",ISOnum:756,symbol:"Fr.",symbolNative:"\u20A3",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:2,decimals:2,numToBasic:100},CKD:{name:"Cook Islands Dollar",demonym:"Cook Islands",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:null,symbol:"$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},CLP:{name:"Chilean Peso",demonym:"Chilean",majorSingle:"Peso",majorPlural:"Pesos",ISOnum:152,symbol:"CL$",symbolNative:"$",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:0,decimals:0,numToBasic:100},CNY:{name:"Chinese Yuan",demonym:"Chinese",majorSingle:"Yuan",majorPlural:"Yuan",ISOnum:156,symbol:"CN\xA5",symbolNative:"\xA5\u5143",minorSingle:"Fen",minorPlural:"Fen",ISOdigits:2,decimals:2,numToBasic:100},COP:{name:"Colombian Peso",demonym:"Colombian",majorSingle:"Peso",majorPlural:"Pesos",ISOnum:170,symbol:"CO$",symbolNative:"$",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},CRC:{name:"Costa Rican Colon",demonym:"Costa Rican",majorSingle:"Col\xF3n",majorPlural:"Colones",ISOnum:188,symbol:"\u20A1",symbolNative:"\u20A1",minorSingle:"Centimo",minorPlural:"Centimos",ISOdigits:2,decimals:2,numToBasic:100},CUC:{name:"Cuban convertible Peso",demonym:"Cuban Convertible",majorSingle:"Peso",majorPlural:"Pesos",ISOnum:931,symbol:"CUC$",symbolNative:"$",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},CUP:{name:"Cuban Peso",demonym:"Cuban",majorSingle:"Peso",majorPlural:"Pesos",ISOnum:192,symbol:"$MN",symbolNative:"\u20B1",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},CVE:{name:"Cabo Verdean Escudo",demonym:"Cabo Verdean",majorSingle:"Escudo",majorPlural:"Escudo",ISOnum:132,symbol:"CV$",symbolNative:"$",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},CZK:{name:"Czech Koruna",demonym:"Czech",majorSingle:"Koruna",majorPlural:"Koruny",ISOnum:203,symbol:"K\u010D",symbolNative:"K\u010D",minorSingle:"Hal\xE9\u0159",minorPlural:"Hal\xE9\u0159",ISOdigits:2,decimals:2,numToBasic:100},DJF:{name:"Djiboutian Franc",demonym:"Djiboutian",majorSingle:"Franc",majorPlural:"Francs",ISOnum:262,symbol:"Fdj",symbolNative:"\u0641.\u062C.",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:0,decimals:2,numToBasic:100},DKK:{name:"Danish Krone",demonym:"Danish",majorSingle:"Krone",majorPlural:"Kroner",ISOnum:208,symbol:"kr.",symbolNative:"kr.",minorSingle:"\xD8re",minorPlural:"\xD8re",ISOdigits:2,decimals:2,numToBasic:100},DOP:{name:"Dominican Peso",demonym:"Dominican",majorSingle:"Peso",majorPlural:"Pesos",ISOnum:214,symbol:"RD$",symbolNative:"$",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},DZD:{name:"Algerian Dinar",demonym:"Algerian",majorSingle:"Dinar",majorPlural:"Dinars",ISOnum:12,symbol:"DA",symbolNative:"\u062F.\u062C.",minorSingle:"Santeem",minorPlural:"Santeems",ISOdigits:2,decimals:2,numToBasic:100},EGP:{name:"Egyptian Pound",demonym:"Egyptian",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:818,symbol:"E\xA3",symbolNative:"\u062C.\u0645.",minorSingle:"Qirsh",minorPlural:"Qirsh",ISOdigits:2,decimals:2,numToBasic:100},EHP:{name:"Sahrawi Peseta",demonym:"Sahrawi",majorSingle:"Peseta",majorPlural:"Pesetas",ISOnum:null,symbol:"Ptas.",symbolNative:"Ptas.",minorSingle:"C\xE9ntimo",minorPlural:"C\xE9ntimos",ISOdigits:2,decimals:2,numToBasic:100},ERN:{name:"Eritrean Nakfa",demonym:"Eritrean",majorSingle:"Nakfa",majorPlural:"Nakfa",ISOnum:232,symbol:"Nkf",symbolNative:"\u0646\u0627\u0643\u0641\u0627",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},ETB:{name:"Ethiopian Birr",demonym:"Ethiopian",majorSingle:"Birr",majorPlural:"Birr",ISOnum:230,symbol:"Br",symbolNative:"\u1265\u122D",minorSingle:"Santim",minorPlural:"Santim",ISOdigits:2,decimals:2,numToBasic:100},EUR:{name:"Euro",demonym:"",majorSingle:"Euro",majorPlural:"Euros",ISOnum:978,symbol:"\u20AC",symbolNative:"\u20AC",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},FJD:{name:"Fijian Dollar",demonym:"Fijian",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:242,symbol:"FJ$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},FKP:{name:"Falkland Islands Pound",demonym:"Falkland Islands",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:238,symbol:"FK\xA3",symbolNative:"\xA3",minorSingle:"Penny",minorPlural:"Pence",ISOdigits:2,decimals:2,numToBasic:100},FOK:{name:"Faroese Kr\xF3na",demonym:"Faroese",majorSingle:"Kr\xF3na",majorPlural:"Kr\xF3nas",ISOnum:null,symbol:"kr",symbolNative:"kr",minorSingle:"Oyra",minorPlural:"Oyra",ISOdigits:2,decimals:2,numToBasic:100},GBP:{name:"Pound Sterling",demonym:"Pound Sterling",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:826,symbol:"\xA3",symbolNative:"\xA3",minorSingle:"Penny",minorPlural:"Pence",ISOdigits:2,decimals:2,numToBasic:100},GEL:{name:"Georgian Lari",demonym:"Georgian",majorSingle:"Lari",majorPlural:"Lari",ISOnum:981,symbol:"\u20BE",symbolNative:"\u20BE",minorSingle:"Tetri",minorPlural:"Tetri",ISOdigits:2,decimals:2,numToBasic:100},GGP:{name:"Guernsey Pound",demonym:"Guernsey",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:null,symbol:"\xA3",symbolNative:"\xA3",minorSingle:"Penny",minorPlural:"Pence",ISOdigits:2,decimals:2,numToBasic:100},GHS:{name:"Ghanaian Cedi",demonym:"Ghanaian",majorSingle:"Cedi",majorPlural:"Cedis",ISOnum:936,symbol:"GH\u20B5",symbolNative:"\u20B5",minorSingle:"Pesewa",minorPlural:"Pesewas",ISOdigits:2,decimals:2,numToBasic:100},GIP:{name:"Gibraltar Pound",demonym:"Gibraltar",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:292,symbol:"\xA3",symbolNative:"\xA3",minorSingle:"Penny",minorPlural:"Pence",ISOdigits:2,decimals:2,numToBasic:100},GMD:{name:"Gambian Dalasi",demonym:"Gambian",majorSingle:"Dalasi",majorPlural:"Dalasis",ISOnum:270,symbol:"D",symbolNative:"D",minorSingle:"Butut",minorPlural:"Bututs",ISOdigits:2,decimals:2,numToBasic:100},GNF:{name:"Guinean Franc",demonym:"Guinean",majorSingle:"Franc",majorPlural:"Francs",ISOnum:324,symbol:"FG",symbolNative:"FG",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:0,decimals:2,numToBasic:100},GTQ:{name:"Guatemalan Quetzal",demonym:"Guatemalan",majorSingle:"Quetzal",majorPlural:"Quetzales",ISOnum:320,symbol:"Q",symbolNative:"$",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},GYD:{name:"Guyanese Dollar",demonym:"Guyanese",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:328,symbol:"G$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},HKD:{name:"Hong Kong Dollar",demonym:"Hong Kong",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:344,symbol:"HK$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},HNL:{name:"Honduran Lempira",demonym:"Honduran",majorSingle:"Lempira",majorPlural:"Lempiras",ISOnum:340,symbol:"L",symbolNative:"L",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},HRK:{name:"Croatian Kuna",demonym:"Croatian",majorSingle:"Kuna",majorPlural:"Kuna",ISOnum:191,symbol:"kn",symbolNative:"kn",minorSingle:"Lipa",minorPlural:"Lipa",ISOdigits:2,decimals:2,numToBasic:100},HTG:{name:"Haitian Gourde",demonym:"Haitian",majorSingle:"Gourde",majorPlural:"Gourdes",ISOnum:332,symbol:"G",symbolNative:"G",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:2,decimals:2,numToBasic:100},HUF:{name:"Hungarian Forint",demonym:"Hungarian",majorSingle:"Forint",majorPlural:"Forint",ISOnum:348,symbol:"Ft",symbolNative:"Ft",minorSingle:"fill\xE9r",minorPlural:"fill\xE9r",ISOdigits:2,decimals:2,numToBasic:100},IDR:{name:"Indonesian Rupiah",demonym:"Indonesian",majorSingle:"Rupiah",majorPlural:"Rupiah",ISOnum:360,symbol:"Rp",symbolNative:"Rp",minorSingle:"Sen",minorPlural:"Sen",ISOdigits:2,decimals:2,numToBasic:100},ILS:{name:"Israeli new Shekel",demonym:"Israeli",majorSingle:"Shekel",majorPlural:"Shekels",ISOnum:376,symbol:"\u20AA",symbolNative:"\u20AA",minorSingle:"Agora",minorPlural:"Agoras",ISOdigits:2,decimals:2,numToBasic:100},IMP:{name:"Manx Pound",demonym:"Manx",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:null,symbol:"\xA3",symbolNative:"\xA3",minorSingle:"Penny",minorPlural:"Pence",ISOdigits:2,decimals:2,numToBasic:100},INR:{name:"Indian Rupee",demonym:"Indian",majorSingle:"Rupee",majorPlural:"Rupees",ISOnum:356,symbol:"Rs.",symbolNative:"\u20B9",minorSingle:"Paisa",minorPlural:"Paise",ISOdigits:2,decimals:2,numToBasic:100},IQD:{name:"Iraqi Dinar",demonym:"Iraqi",majorSingle:"Dinar",majorPlural:"Dinars",ISOnum:368,symbol:"\u062F.\u0639.",symbolNative:"\u062F.\u0639.",minorSingle:"Fils",minorPlural:"Fils",ISOdigits:3,decimals:3,numToBasic:1e3},IRR:{name:"Iranian Rial",demonym:"Iranian",majorSingle:"Rial",majorPlural:"Rials",ISOnum:364,symbol:"\uFDFC",symbolNative:"\uFDFC",minorSingle:"Dinar",minorPlural:"Dinars",ISOdigits:2,decimals:2,numToBasic:100},ISK:{name:"Icelandic Krona",demonym:"Icelandic",majorSingle:"Krona",majorPlural:"Kr\xF3nur",ISOnum:352,symbol:"kr",symbolNative:"kr",minorSingle:"Aurar",minorPlural:"Aurar",ISOdigits:0,decimals:2,numToBasic:100},JEP:{name:"Jersey Pound",demonym:"Jersey",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:null,symbol:"\xA3",symbolNative:"\xA3",minorSingle:"Penny",minorPlural:"Pence",ISOdigits:2,decimals:2,numToBasic:100},JMD:{name:"Jamaican Dollar",demonym:"Jamaican",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:388,symbol:"J$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},JOD:{name:"Jordanian Dinar",demonym:"Jordanian",majorSingle:"Dinar",majorPlural:"Dinars",ISOnum:400,symbol:"JD",symbolNative:"\u062F.\u0623.",minorSingle:"Fils",minorPlural:"Fils",ISOdigits:3,decimals:3,numToBasic:1e3},JPY:{name:"Japanese Yen",demonym:"Japanese",majorSingle:"Yen",majorPlural:"Yen",ISOnum:392,symbol:"\xA5",symbolNative:"\xA5",minorSingle:"Sen",minorPlural:"Sen",ISOdigits:0,decimals:2,numToBasic:100},KES:{name:"Kenyan Shilling",demonym:"Kenyan",majorSingle:"Shilling",majorPlural:"Shillings",ISOnum:404,symbol:"KSh",symbolNative:"KSh",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},KGS:{name:"Kyrgyzstani Som",demonym:"Kyrgyzstani",majorSingle:"Som",majorPlural:"Som",ISOnum:417,symbol:"\u0441",symbolNative:"\u0441",minorSingle:"Tyiyn",minorPlural:"Tyiyn",ISOdigits:2,decimals:2,numToBasic:100},KHR:{name:"Cambodian Riel",demonym:"Cambodian",majorSingle:"Riel",majorPlural:"Riels",ISOnum:116,symbol:"\u17DB",symbolNative:"\u17DB",minorSingle:"Sen",minorPlural:"Sen",ISOdigits:2,decimals:2,numToBasic:100},KID:{name:"Kiribati Dollar",demonym:"Kiribati",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:null,symbol:"$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},KMF:{name:"Comorian Franc",demonym:"Comorian",majorSingle:"Franc",majorPlural:"Francs",ISOnum:174,symbol:"CF",symbolNative:"CF",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:0,decimals:2,numToBasic:100},KPW:{name:"North Korean Won",demonym:"North Korean",majorSingle:"Won",majorPlural:"Won",ISOnum:408,symbol:"\u20A9",symbolNative:"\u20A9",minorSingle:"Chon",minorPlural:"Chon",ISOdigits:2,decimals:2,numToBasic:100},KRW:{name:"South Korean Won",demonym:"South Korean",majorSingle:"Won",majorPlural:"Won",ISOnum:410,symbol:"\u20A9",symbolNative:"\u20A9",minorSingle:"Jeon",minorPlural:"Jeon",ISOdigits:0,decimals:2,numToBasic:100},KWD:{name:"Kuwaiti Dinar",demonym:"Kuwaiti",majorSingle:"Dinar",majorPlural:"Dinars",ISOnum:414,symbol:"KD",symbolNative:"\u062F.\u0643.",minorSingle:"Fils",minorPlural:"Fils",ISOdigits:3,decimals:3,numToBasic:1e3},KYD:{name:"Cayman Islands Dollar",demonym:"Cayman Islands",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:136,symbol:"CI$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},KZT:{name:"Kazakhstani Tenge",demonym:"Kazakhstani",majorSingle:"Tenge",majorPlural:"Tenge",ISOnum:398,symbol:"\u20B8",symbolNative:"\u20B8",minorSingle:"T\u0131yn",minorPlural:"T\u0131yn",ISOdigits:2,decimals:2,numToBasic:100},LAK:{name:"Lao Kip",demonym:"Lao",majorSingle:"Kip",majorPlural:"Kip",ISOnum:418,symbol:"\u20ADN",symbolNative:"\u20AD",minorSingle:"Att",minorPlural:"Att",ISOdigits:2,decimals:2,numToBasic:100},LBP:{name:"Lebanese Pound",demonym:"Lebanese",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:422,symbol:"LL.",symbolNative:"\u0644.\u0644.",minorSingle:"Qirsh",minorPlural:"Qirsh",ISOdigits:2,decimals:2,numToBasic:100},LKR:{name:"Sri Lankan Rupee",demonym:"Sri Lankan",majorSingle:"Rupee",majorPlural:"Rupees",ISOnum:144,symbol:"Rs.",symbolNative:"\u0DBB\u0DD4 or \u0BB0\u0BC2",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},LRD:{name:"Liberian Dollar",demonym:"Liberian",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:430,symbol:"L$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},LSL:{name:"Lesotho Loti",demonym:"Lesotho",majorSingle:"Loti",majorPlural:"maLoti",ISOnum:426,symbol:"L",symbolNative:"L",minorSingle:"Sente",minorPlural:"Lisente",ISOdigits:2,decimals:2,numToBasic:100},LYD:{name:"Libyan Dinar",demonym:"Libyan",majorSingle:"Dinar",majorPlural:"Dinars",ISOnum:434,symbol:"LD",symbolNative:"\u0644.\u062F.",minorSingle:"Dirham",minorPlural:"Dirhams",ISOdigits:3,decimals:3,numToBasic:1e3},MAD:{name:"Moroccan Dirham",demonym:"Moroccan",majorSingle:"Dirham",majorPlural:"Dirhams",ISOnum:504,symbol:"DH",symbolNative:"\u062F.\u0645.",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:2,decimals:2,numToBasic:100},MDL:{name:"Moldovan Leu",demonym:"Moldovan",majorSingle:"Leu",majorPlural:"Lei",ISOnum:498,symbol:"L",symbolNative:"L",minorSingle:"Ban",minorPlural:"Bani",ISOdigits:2,decimals:2,numToBasic:100},MGA:{name:"Malagasy Ariary",demonym:"Malagasy",majorSingle:"Ariary",majorPlural:"Ariary",ISOnum:969,symbol:"Ar",symbolNative:"Ar",minorSingle:"Iraimbilanja",minorPlural:"Iraimbilanja",ISOdigits:2,decimals:0,numToBasic:5},MKD:{name:"Macedonian Denar",demonym:"Macedonian",majorSingle:"Denar",majorPlural:"Denars",ISOnum:807,symbol:"den",symbolNative:"\u0434\u0435\u043D",minorSingle:"Deni",minorPlural:"Deni",ISOdigits:2,decimals:2,numToBasic:100},MMK:{name:"Myanmar Kyat",demonym:"Myanmar",majorSingle:"Kyat",majorPlural:"Kyat",ISOnum:104,symbol:"Ks",symbolNative:"Ks",minorSingle:"Pya",minorPlural:"Pya",ISOdigits:2,decimals:2,numToBasic:100},MNT:{name:"Mongolian T\xF6gr\xF6g",demonym:"Mongolian",majorSingle:"T\xF6gr\xF6g",majorPlural:"T\xF6gr\xF6g",ISOnum:496,symbol:"\u20AE",symbolNative:"\u20AE",minorSingle:"m\xF6ng\xF6",minorPlural:"m\xF6ng\xF6",ISOdigits:2,decimals:2,numToBasic:100},MOP:{name:"Macanese Pataca",demonym:"Macanese",majorSingle:"Pataca",majorPlural:"Patacas",ISOnum:446,symbol:"MOP$",symbolNative:"MOP$",minorSingle:"Avo",minorPlural:"Avos",ISOdigits:2,decimals:2,numToBasic:100},MRU:{name:"Mauritanian Ouguiya",demonym:"Mauritanian",majorSingle:"Ouguiya",majorPlural:"Ouguiya",ISOnum:929,symbol:"UM",symbolNative:"\u0623.\u0645.",minorSingle:"Khoums",minorPlural:"Khoums",ISOdigits:2,decimals:0,numToBasic:5},MUR:{name:"Mauritian Rupee",demonym:"Mauritian",majorSingle:"Rupee",majorPlural:"Rupees",ISOnum:480,symbol:"Rs.",symbolNative:"\u0930\u0941 ",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},MVR:{name:"Maldivian Rufiyaa",demonym:"Maldivian",majorSingle:"Rufiyaa",majorPlural:"Rufiyaa",ISOnum:462,symbol:"MRf",symbolNative:".\u0783",minorSingle:"laari",minorPlural:"laari",ISOdigits:2,decimals:2,numToBasic:100},MWK:{name:"Malawian Kwacha",demonym:"Malawian",majorSingle:"Kwacha",majorPlural:"Kwacha",ISOnum:454,symbol:"MK",symbolNative:"MK",minorSingle:"Tambala",minorPlural:"Tambala",ISOdigits:2,decimals:2,numToBasic:100},MXN:{name:"Mexican Peso",demonym:"Mexican",majorSingle:"Peso",majorPlural:"Pesos",ISOnum:484,symbol:"MX$",symbolNative:"$",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},MYR:{name:"Malaysian Ringgit",demonym:"Malaysian",majorSingle:"Ringgit",majorPlural:"Ringgit",ISOnum:458,symbol:"RM",symbolNative:"RM",minorSingle:"Sen",minorPlural:"Sen",ISOdigits:2,decimals:2,numToBasic:100},MZN:{name:"Mozambican Metical",demonym:"Mozambican",majorSingle:"Metical",majorPlural:"Meticais",ISOnum:943,symbol:"MTn",symbolNative:"MT",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},NAD:{name:"Namibian Dollar",demonym:"Namibian",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:516,symbol:"N$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},NGN:{name:"Nigerian Naira",demonym:"Nigerian",majorSingle:"Naira",majorPlural:"Naira",ISOnum:566,symbol:"\u20A6",symbolNative:"\u20A6",minorSingle:"Kobo",minorPlural:"Kobo",ISOdigits:2,decimals:2,numToBasic:100},NIO:{name:"Nicaraguan C\xF3rdoba",demonym:"Nicaraguan",majorSingle:"C\xF3rdoba Oro",majorPlural:"C\xF3rdoba Oro",ISOnum:558,symbol:"C$",symbolNative:"C$",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},NOK:{name:"Norwegian Krone",demonym:"Norwegian",majorSingle:"Krone",majorPlural:"Kroner",ISOnum:578,symbol:"kr",symbolNative:"kr",minorSingle:"\xF8re",minorPlural:"\xF8re",ISOdigits:2,decimals:2,numToBasic:100},NPR:{name:"Nepalese Rupee",demonym:"Nepalese",majorSingle:"Rupee",majorPlural:"Rupees",ISOnum:524,symbol:"Rs.",symbolNative:"\u0930\u0942",minorSingle:"Paisa",minorPlural:"Paise",ISOdigits:2,decimals:2,numToBasic:100},NZD:{name:"New Zealand Dollar",demonym:"New Zealand",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:554,symbol:"NZ$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},OMR:{name:"Omani Rial",demonym:"Omani",majorSingle:"Rial",majorPlural:"Rials",ISOnum:512,symbol:"OR",symbolNative:"\u0631.\u0639.",minorSingle:"Baisa",minorPlural:"Baisa",ISOdigits:3,decimals:3,numToBasic:1e3},PAB:{name:"Panamanian Balboa",demonym:"Panamanian",majorSingle:"Balboa",majorPlural:"Balboa",ISOnum:590,symbol:"B/.",symbolNative:"B/.",minorSingle:"Cent\xE9simo",minorPlural:"Cent\xE9simos",ISOdigits:2,decimals:2,numToBasic:100},PEN:{name:"Peruvian Sol",demonym:"Peruvian",majorSingle:"Sol",majorPlural:"Soles",ISOnum:604,symbol:"S/.",symbolNative:"S/.",minorSingle:"C\xE9ntimo",minorPlural:"C\xE9ntimos",ISOdigits:2,decimals:2,numToBasic:100},PGK:{name:"Papua New Guinean Kina",demonym:"Papua New Guinean",majorSingle:"Kina",majorPlural:"Kina",ISOnum:598,symbol:"K",symbolNative:"K",minorSingle:"Toea",minorPlural:"Toea",ISOdigits:2,decimals:2,numToBasic:100},PHP:{name:"Philippine Peso",demonym:"Philippine",majorSingle:"Peso",majorPlural:"Pesos",ISOnum:608,symbol:"\u20B1",symbolNative:"\u20B1",minorSingle:"Sentimo",minorPlural:"Sentimo",ISOdigits:2,decimals:2,numToBasic:100},PKR:{name:"Pakistani Rupee",demonym:"Pakistani",majorSingle:"Rupee",majorPlural:"Rupees",ISOnum:586,symbol:"Rs.",symbolNative:"Rs",minorSingle:"Paisa",minorPlural:"Paise",ISOdigits:2,decimals:2,numToBasic:100},PLN:{name:"Polish Zloty",demonym:"Polish",majorSingle:"Zloty",majorPlural:"Zlotys",ISOnum:985,symbol:"z\u0142",symbolNative:"z\u0142",minorSingle:"Grosz",minorPlural:"Groszy",ISOdigits:2,decimals:2,numToBasic:100},PND:{name:"Pitcairn Islands Dollar",demonym:"Pitcairn Islands",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:null,symbol:"$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},PRB:{name:"Transnistrian Ruble",demonym:"Transnistrian",majorSingle:"Ruble",majorPlural:"Rubles",ISOnum:null,symbol:"\u0440.",symbolNative:"\u0440.",minorSingle:"Kopek",minorPlural:"Kopeks",ISOdigits:2,decimals:2,numToBasic:100},PYG:{name:"Paraguayan Guaran\xED",demonym:"Paraguayan",majorSingle:"Guaran\xED",majorPlural:"Guaran\xEDes",ISOnum:600,symbol:"\u20B2",symbolNative:"\u20B2",minorSingle:"Centimo",minorPlural:"Centimos",ISOdigits:0,decimals:2,numToBasic:100},QAR:{name:"Qatari Riyal",demonym:"Qatari",majorSingle:"Riyal",majorPlural:"Riyals",ISOnum:634,symbol:"QR",symbolNative:"\u0631.\u0642.",minorSingle:"Dirham",minorPlural:"Dirhams",ISOdigits:2,decimals:2,numToBasic:100},RON:{name:"Romanian Leu",demonym:"Romanian",majorSingle:"Leu",majorPlural:"Lei",ISOnum:946,symbol:"L",symbolNative:"L",minorSingle:"Ban",minorPlural:"Bani",ISOdigits:2,decimals:2,numToBasic:100},RSD:{name:"Serbian Dinar",demonym:"Serbian",majorSingle:"Dinar",majorPlural:"Dinars",ISOnum:941,symbol:"din",symbolNative:"\u0434\u0438\u043D",minorSingle:"Para",minorPlural:"Para",ISOdigits:2,decimals:2,numToBasic:100},RUB:{name:"Russian Ruble",demonym:"Russian",majorSingle:"Ruble",majorPlural:"Rubles",ISOnum:643,symbol:"\u20BD",symbolNative:"\u20BD",minorSingle:"Kopek",minorPlural:"Kopeks",ISOdigits:2,decimals:2,numToBasic:100},RWF:{name:"Rwandan Franc",demonym:"Rwandan",majorSingle:"Franc",majorPlural:"Francs",ISOnum:646,symbol:"FRw",symbolNative:"R\u20A3",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:0,decimals:2,numToBasic:100},SAR:{name:"Saudi Riyal",demonym:"Saudi",majorSingle:"Riyal",majorPlural:"Riyals",ISOnum:682,symbol:"SR",symbolNative:"\u0631.\u0633.",minorSingle:"Halalah",minorPlural:"Halalahs",ISOdigits:2,decimals:2,numToBasic:100},SBD:{name:"Solomon Islands Dollar",demonym:"Solomon Islands",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:90,symbol:"SI$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},SCR:{name:"Seychellois Rupee",demonym:"Seychellois",majorSingle:"Rupee",majorPlural:"Rupees",ISOnum:690,symbol:"Rs.",symbolNative:"Rs",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},SDG:{name:"Sudanese Pound",demonym:"Sudanese",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:938,symbol:"\xA3SD",symbolNative:"\u062C.\u0633.",minorSingle:"Qirsh",minorPlural:"Qirsh",ISOdigits:2,decimals:2,numToBasic:100},SEK:{name:"Swedish Krona",demonym:"Swedish",majorSingle:"Krona",majorPlural:"Kronor",ISOnum:752,symbol:"kr",symbolNative:"kr",minorSingle:"\xD6re",minorPlural:"\xD6re",ISOdigits:2,decimals:2,numToBasic:100},SGD:{name:"Singapore Dollar",demonym:"Singapore",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:702,symbol:"S$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},SHP:{name:"Saint Helena Pound",demonym:"Saint Helena",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:654,symbol:"\xA3",symbolNative:"\xA3",minorSingle:"Penny",minorPlural:"Pence",ISOdigits:2,decimals:2,numToBasic:100},SLL:{name:"Sierra Leonean Leone",demonym:"Sierra Leonean",majorSingle:"Leone",majorPlural:"Leones",ISOnum:694,symbol:"Le",symbolNative:"Le",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},SLS:{name:"Somaliland Shilling",demonym:"Somaliland",majorSingle:"Shilling",majorPlural:"Shillings",ISOnum:null,symbol:"Sl",symbolNative:"Sl",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},SOS:{name:"Somali Shilling",demonym:"Somali",majorSingle:"Shilling",majorPlural:"Shillings",ISOnum:706,symbol:"Sh.So.",symbolNative:"Ssh",minorSingle:"Senti",minorPlural:"Senti",ISOdigits:2,decimals:2,numToBasic:100},SRD:{name:"Surinamese Dollar",demonym:"Surinamese",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:968,symbol:"Sr$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},SSP:{name:"South Sudanese Pound",demonym:"South Sudanese",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:728,symbol:"SS\xA3",symbolNative:"SS\xA3",minorSingle:"Qirsh",minorPlural:"Qirsh",ISOdigits:2,decimals:2,numToBasic:100},STN:{name:"Sao Tome and Pr\xEDncipe Dobra",demonym:"Sao Tome",majorSingle:"Dobra",majorPlural:"Dobras",ISOnum:930,symbol:"Db",symbolNative:"Db",minorSingle:"Centimo",minorPlural:"Centimos",ISOdigits:2,decimals:2,numToBasic:100},SVC:{name:"Salvadoran Col\xF3n",demonym:"Salvadoran",majorSingle:"Col\xF3n",majorPlural:"Colones",ISOnum:222,symbol:"\u20A1",symbolNative:"\u20A1",minorSingle:"Centavo",minorPlural:"Centavos",ISOdigits:2,decimals:2,numToBasic:100},SYP:{name:"Syrian Pound",demonym:"Syrian",majorSingle:"Pound",majorPlural:"Pounds",ISOnum:760,symbol:"LS",symbolNative:"\u0644.\u0633.",minorSingle:"Qirsh",minorPlural:"Qirsh",ISOdigits:2,decimals:2,numToBasic:100},SZL:{name:"Swazi Lilangeni",demonym:"Swazi",majorSingle:"Lilangeni",majorPlural:"Emalangeni",ISOnum:748,symbol:"L",symbolNative:"L",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},THB:{name:"Thai Baht",demonym:"Thai",majorSingle:"Baht",majorPlural:"Baht",ISOnum:764,symbol:"\u0E3F",symbolNative:"\u0E3F",minorSingle:"Satang",minorPlural:"Satang",ISOdigits:2,decimals:2,numToBasic:100},TJS:{name:"Tajikistani Somoni",demonym:"Tajikistani",majorSingle:"Somoni",majorPlural:"Somoni",ISOnum:972,symbol:"SM",symbolNative:"SM",minorSingle:"Diram",minorPlural:"Diram",ISOdigits:2,decimals:2,numToBasic:100},TMT:{name:"Turkmenistan Manat",demonym:"Turkmenistan",majorSingle:"Manat",majorPlural:"Manat",ISOnum:934,symbol:"m.",symbolNative:"T",minorSingle:"Tenge",minorPlural:"Tenge",ISOdigits:2,decimals:2,numToBasic:100},TND:{name:"Tunisian Dinar",demonym:"Tunisian",majorSingle:"Dinar",majorPlural:"Dinars",ISOnum:788,symbol:"DT",symbolNative:"\u062F.\u062A.",minorSingle:"Millime",minorPlural:"Millime",ISOdigits:3,decimals:3,numToBasic:1e3},TOP:{name:"Tongan Pa\u02BBanga",demonym:"Tongan",majorSingle:"Pa'anga",majorPlural:"Pa'anga",ISOnum:776,symbol:"T$",symbolNative:"PT",minorSingle:"Seniti",minorPlural:"Seniti",ISOdigits:2,decimals:2,numToBasic:100},TRY:{name:"Turkish Lira",demonym:"Turkish",majorSingle:"Lira",majorPlural:"Lira",ISOnum:949,symbol:"TL",symbolNative:"\u20BA",minorSingle:"Kuru\u015F",minorPlural:"Kuru\u015F",ISOdigits:2,decimals:2,numToBasic:100},TTD:{name:"Trinidad and Tobago Dollar",demonym:"Trinidad and Tobago",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:780,symbol:"TT$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},TVD:{name:"Tuvaluan Dollar",demonym:"Tuvaluan",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:null,symbol:"$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},TWD:{name:"New Taiwan Dollar",demonym:"New Taiwan",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:901,symbol:"NT$",symbolNative:"\u5713",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},TZS:{name:"Tanzanian Shilling",demonym:"Tanzanian",majorSingle:"Shilling",majorPlural:"Shillings",ISOnum:834,symbol:"TSh",symbolNative:"TSh",minorSingle:"Senti",minorPlural:"Senti",ISOdigits:2,decimals:2,numToBasic:100},UAH:{name:"Ukrainian Hryvnia",demonym:"Ukrainian",majorSingle:"Hryvnia",majorPlural:"Hryvnias",ISOnum:980,symbol:"\u20B4",symbolNative:"\u0433\u0440\u043D",minorSingle:"Kopiyka",minorPlural:"kopiyky",ISOdigits:2,decimals:2,numToBasic:100},UGX:{name:"Ugandan Shilling",demonym:"Ugandan",majorSingle:"Shilling",majorPlural:"Shillings",ISOnum:800,symbol:"USh",symbolNative:"Sh",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:0,decimals:2,numToBasic:100},USD:{name:"United States Dollar",demonym:"US",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:840,symbol:"$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},UYU:{name:"Uruguayan Peso",demonym:"Uruguayan",majorSingle:"Peso",majorPlural:"Pesos",ISOnum:858,symbol:"$U",symbolNative:"$",minorSingle:"Cent\xE9simo",minorPlural:"Cent\xE9simos",ISOdigits:2,decimals:2,numToBasic:100},UZS:{name:"Uzbekistani Som",demonym:"Uzbekistani",majorSingle:"Som",majorPlural:"Som",ISOnum:860,symbol:"\u0441\u0443\u043C",symbolNative:"\u0441\u0443\u043C",minorSingle:"Tiyin",minorPlural:"Tiyin",ISOdigits:2,decimals:2,numToBasic:100},VED:{name:"Venezuelan bol\xEDvar digital",demonym:"Venezuelan",majorSingle:"Bol\xEDvar Digital",majorPlural:"Bol\xEDvars Digital",ISOnum:null,symbol:"Bs.",symbolNative:"Bs.",minorSingle:"C\xE9ntimo",minorPlural:"C\xE9ntimos",ISOdigits:2,decimals:2,numToBasic:100},VES:{name:"Venezuelan Bol\xEDvar Soberano",demonym:"Venezuelan",majorSingle:"Bol\xEDvar",majorPlural:"Bol\xEDvares",ISOnum:928,symbol:"Bs.F",symbolNative:"Bs.F",minorSingle:"Centimo",minorPlural:"Centimos",ISOdigits:2,decimals:2,numToBasic:100},VND:{name:"Vietnamese Dong",demonym:"Vietnamese",majorSingle:"Dong",majorPlural:"Dong",ISOnum:704,symbol:"\u20AB",symbolNative:"\u20AB",minorSingle:"H\xE0o",minorPlural:"H\xE0o",ISOdigits:0,decimals:2,numToBasic:10},VUV:{name:"Vanuatu Vatu",demonym:"Vanuatu",majorSingle:"Vatu",majorPlural:"Vatu",ISOnum:548,symbol:"VT",symbolNative:"VT",minorSingle:"",minorPlural:"",ISOdigits:0,decimals:0,numToBasic:null},WST:{name:"Samoan Tala",demonym:"Samoan",majorSingle:"Tala",majorPlural:"Tala",ISOnum:882,symbol:"T",symbolNative:"ST",minorSingle:"Sene",minorPlural:"Sene",ISOdigits:2,decimals:2,numToBasic:100},XAF:{name:"Central African CFA Franc BEAC",demonym:"Central African CFA",majorSingle:"Franc",majorPlural:"Francs",ISOnum:950,symbol:"Fr",symbolNative:"Fr.",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:0,decimals:2,numToBasic:100},XCD:{name:"East Caribbean Dollar",demonym:"East Caribbean",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:951,symbol:"$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},XOF:{name:"West African CFA Franc BCEAO",demonym:"West African CFA",majorSingle:"Franc",majorPlural:"Francs",ISOnum:952,symbol:"\u20A3",symbolNative:"\u20A3",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:0,decimals:2,numToBasic:100},XPF:{name:"CFP Franc (Franc Pacifique)",demonym:"CFP",majorSingle:"Franc",majorPlural:"Francs",ISOnum:953,symbol:"\u20A3",symbolNative:"\u20A3",minorSingle:"Centime",minorPlural:"Centimes",ISOdigits:0,decimals:0,numToBasic:100},YER:{name:"Yemeni Rial",demonym:"Yemeni",majorSingle:"Rial",majorPlural:"Rials",ISOnum:886,symbol:"YR",symbolNative:"\u0631.\u064A.",minorSingle:"Fils",minorPlural:"Fils",ISOdigits:2,decimals:2,numToBasic:100},ZAR:{name:"South African Rand",demonym:"South African",majorSingle:"Rand",majorPlural:"Rand",ISOnum:710,symbol:"R",symbolNative:"R",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},ZMW:{name:"Zambian Kwacha",demonym:"Zambian",majorSingle:"Kwacha",majorPlural:"Kwacha",ISOnum:967,symbol:"ZK",symbolNative:"ZK",minorSingle:"Ngwee",minorPlural:"Ngwee",ISOdigits:2,decimals:2,numToBasic:100},ZWB:{name:"RTGS Dollar",demonym:"RTGS",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:null,symbol:"",symbolNative:"",minorSingle:"",minorPlural:"",ISOdigits:0,decimals:0,numToBasic:null},ZWL:{name:"Zimbabwean Dollar",demonym:"Zimbabwean",majorSingle:"Dollar",majorPlural:"Dollars",ISOnum:932,symbol:"Z$",symbolNative:"$",minorSingle:"Cent",minorPlural:"Cents",ISOdigits:2,decimals:2,numToBasic:100},Abkhazia:{name:"Abkhazian Apsar",demonym:"Abkhazian",majorSingle:"Apsar",majorPlural:"Apsark",ISOnum:null,symbol:"",symbolNative:"",minorSingle:"",minorPlural:"",ISOdigits:0,decimals:0,numToBasic:null},Artsakh:{name:"Artsakh Dram",demonym:"Artsakh",majorSingle:"Dram",majorPlural:"Dram",ISOnum:null,symbol:"\u0564\u0580.",symbolNative:"\u0564\u0580.",minorSingle:"Luma",minorPlural:"Luma",ISOdigits:2,decimals:2,numToBasic:100}};function ty(t,e,n){let r={AUD:"A$",CAD:"CA$",USD:"$"};try{let o=new Intl.NumberFormat(e,{style:"currency",currency:n}).format(t);if(n in r){let s=r[n];o=o.replace(/^[^\d\s.,]+/,s)}return o}catch(i){return console.error("Intl.NumberFormat Error:",i),"".concat(n in r?r[n]:"").concat(t.toFixed(2))}}function au(t,e="USD",n){let r=n||"en-US",i=Zt[e];if(!i)throw new Error("Currency ".concat(e," not found in currency data."));let o;return i.ISOdigits===0||i.ISOdigits===3?o=t/100:o=t/Math.pow(10,i.ISOdigits),ty(o,r,e)}function lu(t){return Zt[t]||null}function cu(t,e){let n=Zt[e];if(!n)throw new Error("Currency ".concat(e," not found in currency data."));let r=typeof t=="string"?parseFloat(t):t;return Math.round(r*Math.pow(10,n.ISOdigits))}function uu(t,e){let n=Zt[e];if(!n)throw new Error("Currency ".concat(e," not found in currency data."));return n.ISOdigits===0||n.ISOdigits===3?t/100:t/Math.pow(10,n.ISOdigits)}Xe();var du="1.0.0";function mu(t){return typeof window=="undefined"?null:new URLSearchParams(window.location.search).get(t)}function X(t,...e){t&&console.log("[TagadaTracker]",...e)}function pu(...t){console.warn("[TagadaTracker]",...t)}function ny(t){if(!t.storeId||typeof t.storeId!="string")throw new Error("TagadaTracker: storeId is required and must be a non-empty string.");if(!t.accountId||typeof t.accountId!="string")throw new Error("TagadaTracker: accountId is required and must be a non-empty string.");if(!t.stepId||typeof t.stepId!="string")throw new Error("TagadaTracker: stepId is required and must be a non-empty string.");if(t.apiBaseUrl)try{new URL(t.apiBaseUrl)}catch(e){throw new Error('TagadaTracker: apiBaseUrl is not a valid URL: "'.concat(t.apiBaseUrl,'"'))}}async function ry(t,e,n){let r;for(let i=0;i<=e;i++)try{return await t()}catch(o){if(r=o instanceof Error?o:new Error(String(o)),i<e){let s=Math.min(1e3*2**i,8e3);X(n,"Retry ".concat(i+1,"/").concat(e," in ").concat(s,"ms...")),await new Promise(a=>setTimeout(a,s))}}throw r}var Xt=class{constructor(){this.config=null;this.client=null;this.initialized=!1;this.initializing=!1;this.unsubscribe=null;this.version=du}async init(e){var r,i;if(this.initialized)return X(e.debug||!1,"Already initialized \u2014 returning existing session."),this.getSession();if(this.initializing)return X(e.debug||!1,"Initialization in progress \u2014 skipping duplicate call."),null;this.initializing=!0,this.config=S({debug:!1},e);let n=this.config.debug;try{ny(this.config)}catch(o){this.initializing=!1;let s=o instanceof Error?o:new Error(String(o));if(this.config.onError)return this.config.onError(s),null;throw s}X(n,"\u{1F680} Initializing external tracker v".concat(du),{storeId:e.storeId,accountId:e.accountId,stepId:e.stepId,funnelId:e.funnelId});try{let o=mu("token");o&&(ue(o),X(n,"\u{1F511} Bootstrapped token from URL")),this.client=Go({debugMode:n,features:{funnel:{skipAutoInit:!0}},rawPluginConfig:{storeId:this.config.storeId,accountId:this.config.accountId},customApiConfig:this.config.apiBaseUrl?{apiConfig:{baseUrl:this.config.apiBaseUrl.trim()}}:void 0}),await this.waitForClientReady();let s=await ry(()=>this.initializeFunnel(),2,n);X(n,"\u2705 Session initialized:",s),this.initialized=!0;let a=this.getSession();return a&&((i=(r=this.config).onReady)==null||i.call(r,a)),a}catch(o){let s=o instanceof Error?o:new Error(String(o));if(X(n,"\u274C Initialization failed:",s),this.config.onError)return this.config.onError(s),null;throw s}finally{this.initializing=!1}}getSession(){var n,r;if(!((r=(n=this.client)==null?void 0:n.funnel)!=null&&r.state.context))return null;let e=this.client.funnel.state.context;return{sessionId:e.sessionId,customerId:e.customerId,storeId:e.storeId,funnelId:e.funnelId,currentStepId:e.currentStepId,cmsToken:this.client.state.token||void 0}}isReady(){var e,n;return this.initialized&&!!((n=(e=this.client)==null?void 0:e.funnel)!=null&&n.state.context)}async navigate(e){if(!this.isReady())throw new Error("TagadaTracker: not initialized. Call init() first.");X(this.config.debug,"\u{1F680} Navigating:",e);let n=e.autoRedirect!==!1;try{let r=await this.client.funnel.navigate({type:e.eventType,data:e.eventData||{}},{autoRedirect:!1});return r!=null&&r.url?(X(this.config.debug,"\u2705 Navigation result:",r.url),n&&typeof window!="undefined"&&(window.location.href=e.returnUrl||r.url),{url:r.url}):null}catch(r){throw X(this.config.debug,"\u274C Navigation failed:",r),r}}async trackEvent(e){if(!this.isReady()){pu("trackEvent called before init \u2014 event dropped:",e.name);return}X(this.config.debug,"\u{1F4CA} Tracking event:",e.name,e.data);try{await this.client.funnel.navigate({type:e.name,data:e.data||{}},{autoRedirect:!1})}catch(n){X(this.config.debug,"\u26A0\uFE0F Event tracking failed (non-critical):",e.name)}}getCustomerId(){var e,n,r,i,o;return((n=(e=this.client)==null?void 0:e.state.auth.customer)==null?void 0:n.id)||((o=(i=(r=this.client)==null?void 0:r.funnel)==null?void 0:i.state.context)==null?void 0:o.customerId)||null}getFunnelSessionId(){var e,n,r;return((r=(n=(e=this.client)==null?void 0:e.funnel)==null?void 0:n.state.context)==null?void 0:r.sessionId)||null}buildUrl(e,n){let r=this.getSession();if(!r)return e;let i=new URL(e,typeof window!="undefined"?window.location.origin:void 0);return i.searchParams.set("funnelSessionId",r.sessionId),r.cmsToken&&i.searchParams.set("token",r.cmsToken),r.funnelId&&i.searchParams.set("funnelId",r.funnelId),i.searchParams.set("storeId",r.storeId),n&&Object.entries(n).forEach(([o,s])=>{i.searchParams.set(o,s)}),i.toString()}getClient(){return this.client}async reset(e){var i,o;if(!this.client||!this.config)throw new Error("TagadaTracker: not initialized. Call init() first.");X(this.config.debug,"\u{1F504} Resetting to step:",e),this.config.stepId=e;let n=await this.initializeFunnel(),r=this.getSession();return r&&((o=(i=this.config).onReady)==null||o.call(i,r)),r}destroy(){var e,n;this.unsubscribe&&(this.unsubscribe(),this.unsubscribe=null),this.client&&((n=(e=this.client).destroy)==null||n.call(e)),this.client=null,this.config=null,this.initialized=!1,this.initializing=!1,X(!1,"\u{1F5D1}\uFE0F Tracker destroyed")}async waitForClientReady(){if(this.client)return new Promise(e=>{var i;if((i=this.client)!=null&&i.state.isInitialized){e();return}let n=!1,r=setTimeout(()=>{var o;n||(n=!0,X(((o=this.config)==null?void 0:o.debug)||!1,"\u23F1\uFE0F Client ready timeout \u2014 proceeding"),e())},1e4);this.unsubscribe=this.client.subscribe(()=>{var o;!n&&((o=this.client)!=null&&o.state.isInitialized)&&(n=!0,clearTimeout(r),e())})})}async initializeFunnel(){var s,a,c;if(!((s=this.client)!=null&&s.funnel))return null;let e=(a=this.client.state.auth.customer)==null?void 0:a.id,n=(c=this.client.state.auth.session)==null?void 0:c.sessionId;!e&&!n&&pu("No auth session available \u2014 funnel init may fail.");let r={customerId:e||"anon_placeholder",sessionId:n||"sess_placeholder"},i={id:this.config.storeId,accountId:this.config.accountId},o=this.config.stepId;return X(this.config.debug,"\u{1F50D} Initializing funnel at step:",o),this.client.funnel.initialize(r,i,this.config.funnelId||mu("funnelId")||void 0,o)}},zo=new Xt;typeof window!="undefined"&&(window.TagadaTracker=zo);function iy(){if(typeof window=="undefined"||typeof document=="undefined")return[];let t=ee();return t!=null&&t.scripts?t.scripts.filter(e=>e.enabled):[]}function oy(t,e){let n=t.position||"body-end",r="tagada-stepconfig-script-".concat(e);if(document.getElementById(r))return;let i=t.content.trim(),o=i.match(/^<script[^>]*>([\s\S]*)<\/script>$/i);if(o&&(i=o[1].trim()),!i)return;let s="(function() {\n try {\n // Script: "+t.name+"\n"+i+'\n } catch (error) {\n console.error("[TagadaPay] StepConfig script error:", error);\n }\n})();',a=document.createElement("script");switch(a.id=r,a.setAttribute("data-tagada-stepconfig-script","true"),a.setAttribute("data-script-name",t.name),a.textContent=s,n){case"head-start":document.head.firstChild?document.head.insertBefore(a,document.head.firstChild):document.head.appendChild(a);break;case"head-end":document.head.appendChild(a);break;case"body-start":document.body.firstChild?document.body.insertBefore(a,document.body.firstChild):document.body.appendChild(a);break;case"body-end":default:document.body.appendChild(a);break}}function Ho(){let t=iy();t.length!==0&&t.forEach((e,n)=>{oy(e,n)})}if(typeof window!="undefined"&&typeof document!="undefined"){try{dn()}catch(e){console.error("[TagadaPay] Failed to publish tracking global:",e)}let t=()=>{document.body?Ho():document.addEventListener("DOMContentLoaded",Ho,{once:!0})};"requestIdleCallback"in window?window.requestIdleCallback(t,{timeout:100}):setTimeout(t,0)}function Go(t={}){return new Lt(t)}function sy(){return Mt()}function ay(){return Bs()}return Lr(ly);})();
8
8
  /*! Bundled license information:
9
9
 
10
10
  axios/dist/browser/axios.cjs: