@appfunnel-dev/sdk 2.0.0-canary.8 → 2.0.0-canary.9

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 (37) hide show
  1. package/dist/{capabilities-CsnkVwna.d.cts → capabilities-Dq22RCr_.d.cts} +34 -1
  2. package/dist/{capabilities-CsnkVwna.d.ts → capabilities-Dq22RCr_.d.ts} +34 -1
  3. package/dist/{checkout-3PkKwPd7.d.ts → checkout-ClaO5IYV.d.ts} +17 -4
  4. package/dist/{checkout-Cg20l53c.d.cts → checkout-DBp4bCpC.d.cts} +17 -4
  5. package/dist/{chunk-RY3LOSVZ.cjs → chunk-7JLOF6CJ.cjs} +27 -5
  6. package/dist/chunk-7JLOF6CJ.cjs.map +1 -0
  7. package/dist/{chunk-PWXMQGO6.js → chunk-JAO6AA4R.js} +3 -3
  8. package/dist/{chunk-PWXMQGO6.js.map → chunk-JAO6AA4R.js.map} +1 -1
  9. package/dist/{chunk-RVJLR4RS.js → chunk-OXQBEKZ5.js} +25 -6
  10. package/dist/chunk-OXQBEKZ5.js.map +1 -0
  11. package/dist/{chunk-FY3TMSRU.cjs → chunk-VV7TFC64.cjs} +7 -7
  12. package/dist/{chunk-FY3TMSRU.cjs.map → chunk-VV7TFC64.cjs.map} +1 -1
  13. package/dist/driver-paddle.cjs +26 -24
  14. package/dist/driver-paddle.cjs.map +1 -1
  15. package/dist/driver-paddle.d.cts +2 -2
  16. package/dist/driver-paddle.d.ts +2 -2
  17. package/dist/driver-paddle.js +6 -4
  18. package/dist/driver-paddle.js.map +1 -1
  19. package/dist/driver-stripe.cjs +32 -26
  20. package/dist/driver-stripe.cjs.map +1 -1
  21. package/dist/driver-stripe.d.cts +2 -2
  22. package/dist/driver-stripe.d.ts +2 -2
  23. package/dist/driver-stripe.js +10 -4
  24. package/dist/driver-stripe.js.map +1 -1
  25. package/dist/index.cjs +48 -21
  26. package/dist/index.cjs.map +1 -1
  27. package/dist/index.d.cts +3 -3
  28. package/dist/index.d.ts +3 -3
  29. package/dist/index.js +18 -3
  30. package/dist/index.js.map +1 -1
  31. package/dist/manifest-entry.cjs +24 -12
  32. package/dist/manifest-entry.d.cts +2 -2
  33. package/dist/manifest-entry.d.ts +2 -2
  34. package/dist/manifest-entry.js +1 -1
  35. package/package.json +1 -1
  36. package/dist/chunk-RVJLR4RS.js.map +0 -1
  37. package/dist/chunk-RY3LOSVZ.cjs.map +0 -1
@@ -1,5 +1,5 @@
1
- import { completeWithPoll, postComplete, settlementToResult, postSession, leaveForRedirect, toCheckoutError } from './chunk-PWXMQGO6.js';
2
- import { checkoutError } from './chunk-RVJLR4RS.js';
1
+ import { completeWithPoll, postComplete, settlementToResult, postSession, leaveForRedirect, toCheckoutError } from './chunk-JAO6AA4R.js';
2
+ import { checkoutError } from './chunk-OXQBEKZ5.js';
3
3
  import './chunk-G3PMV62Z.js';
4
4
  import { createElement, useState, useId, useRef, useEffect } from 'react';
5
5
 
@@ -762,12 +762,14 @@ function PaddleInline({
762
762
  switch (session.step) {
763
763
  case "provider_checkout": {
764
764
  cbRef.current.onStart?.();
765
+ const express = req.surface === "express";
765
766
  const result = await openCheckout(ctx, session, correlationId, {
766
767
  displayMode: "inline",
767
768
  frameTarget: frameClass,
768
- frameInitialHeight: 450,
769
+ frameInitialHeight: express ? 182 : 450,
769
770
  // Paddle's documented inline-frame baseline: fluid width, no chrome.
770
- frameStyle: "width: 100%; min-width: 286px; background-color: transparent; border: none;"
771
+ frameStyle: "width: 100%; min-width: 286px; background-color: transparent; border: none;",
772
+ ...express ? { variant: "express" } : {}
771
773
  });
772
774
  if (disposed) return;
773
775
  if (result.ok) cbRef.current.onSuccess(result);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/@paddle/paddle-js/dist/index.esm.js","../src/drivers/paddle.tsx"],"names":["n","r","t","e","i","a","c","o","u","h","p","CheckoutEventNames","CheckoutEventsTimePeriodInterval","CheckoutEventsPaymentMethodTypes","CheckoutEventsPaymentMethodCardTypes","CheckoutEventsStatus"],"mappings":"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","file":"driver-paddle.js","sourcesContent":["function asyncGeneratorStep(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c),\n u = i.value;\n } catch (n) {\n return void e(n);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator(n) {\n return function () {\n var t = this,\n e = arguments;\n return new Promise(function (r, o) {\n var a = n.apply(t, e);\n function _next(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n);\n }\n function _throw(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n);\n }\n _next(void 0);\n });\n };\n}\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = _objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nfunction _regeneratorRuntime() {\n _regeneratorRuntime = function () {\n return e;\n };\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function (t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == typeof h && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function (t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator.return && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(typeof e + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function (e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function () {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function (e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function (t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function (t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function (t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n catch: function (t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw Error(\"illegal catch attempt\");\n },\n delegateYield: function (e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\n\nvar Versions = {\n CLASSIC: 'classic',\n V1: 'v1'\n};\nvar DefaultVersion = Versions.V1;\nvar PaddleClassicCDNUrl = 'https://cdn.paddle.com/paddle/paddle.js';\nvar PaddleBillingCDNUrl = 'https://cdn.paddle.com/paddle/v2/paddle.js';\nvar PaddleClassicInfo = {\n url: PaddleClassicCDNUrl\n};\nvar PaddleBillingV1Info = {\n url: PaddleBillingCDNUrl\n};\n\nfunction findScript(cdnUrl) {\n return document.querySelector(\"script[src=\\\"\".concat(cdnUrl, \"\\\"]\")) || undefined;\n}\nfunction injectScript(src) {\n var script = document.createElement('script');\n script.src = src;\n var headOrBody = document.head || document.body;\n if (!headOrBody) {\n throw new Error('Cannot inject Paddle.js. It needs a <head> or <body> element.');\n }\n headOrBody.appendChild(script);\n return script;\n}\nvar promiseMap = {\n classic: undefined,\n v1: undefined\n};\nvar VersionToPaddleMap = {\n classic: 'PaddleClassic',\n v1: 'PaddleBillingV1'\n};\nfunction loadFromCDN(version) {\n var _getCDNInfoBasedOnVer;\n var cdnUrl = (_getCDNInfoBasedOnVer = getCDNInfoBasedOnVersion(version)) === null || _getCDNInfoBasedOnVer === void 0 ? void 0 : _getCDNInfoBasedOnVer.url;\n if (!cdnUrl) {\n return;\n }\n // Return promise on re-renders\n var existingPromise = promiseMap[version];\n var paddleInstanceName = VersionToPaddleMap[version];\n if (existingPromise !== undefined) {\n return existingPromise;\n }\n promiseMap[version] = new Promise(function (resolve, reject) {\n if (typeof window === 'undefined') {\n // Return undefined in a server side environment\n resolve(undefined);\n return;\n }\n // Return Paddle instance if it is already initialized\n if (window[paddleInstanceName]) {\n resolve(window[paddleInstanceName]);\n return;\n }\n try {\n // Inject if paddle.js script tag is not found\n var script = findScript(cdnUrl);\n if (!script) {\n script = injectScript(cdnUrl);\n }\n // Wait for `load` event before returning\n script.addEventListener('load', function () {\n if (window[paddleInstanceName]) {\n resolve(window[paddleInstanceName]);\n } else {\n reject(new Error('Paddle.js not available'));\n }\n });\n // Show an error if loading fails\n script.addEventListener('error', function () {\n reject(new Error(\"Failed to load Paddle.js - \".concat(version)));\n });\n } catch (error) {\n reject(error);\n return;\n }\n });\n return promiseMap[version];\n}\nfunction getCDNInfoBasedOnVersion(version) {\n if (version === Versions.CLASSIC) {\n return PaddleClassicInfo;\n }\n if (version === Versions.V1) {\n return PaddleBillingV1Info;\n } else {\n console.error('[Paddle] Unknown Paddle Version');\n return;\n }\n}\n\nvar _excluded = [\"environment\", \"version\"],\n _excluded2 = [\"environment\", \"version\"];\nfunction initializePaddleBillingV1(options, paddle) {\n var environment = options.environment;\n options.version;\n var rest = _objectWithoutProperties(options, _excluded);\n try {\n if (environment) {\n paddle.Environment.set(environment);\n }\n if (paddle.Initialized) {\n paddle.Update(_objectSpread2({}, rest));\n } else {\n paddle.Initialize(_objectSpread2({}, rest));\n }\n } catch (e) {\n console.warn('[Paddle] Paddle Initialization failed. Please check the inputs', e);\n }\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction initializePaddleClassic(options, paddle) {\n var environment = options.environment;\n options.version;\n var rest = _objectWithoutProperties(options, _excluded2);\n try {\n if (environment) {\n paddle.Environment.set(environment);\n }\n paddle.Setup(_objectSpread2({}, rest));\n } catch (e) {\n console.warn('[Paddle] Paddle Initialization failed. Please check the inputs', e);\n }\n}\n\n// Note: The enums in this file is only for `src`. Typescript will also need it added to the `types` directory for usage.\nvar CheckoutEventNames;\n(function (CheckoutEventNames) {\n CheckoutEventNames[\"CHECKOUT_LOADED\"] = \"checkout.loaded\";\n CheckoutEventNames[\"CHECKOUT_CLOSED\"] = \"checkout.closed\";\n CheckoutEventNames[\"CHECKOUT_UPDATED\"] = \"checkout.updated\";\n CheckoutEventNames[\"CHECKOUT_COMPLETED\"] = \"checkout.completed\";\n CheckoutEventNames[\"CHECKOUT_ERROR\"] = \"checkout.error\";\n CheckoutEventNames[\"CHECKOUT_FAILED\"] = \"checkout.failed\";\n CheckoutEventNames[\"CHECKOUT_ITEMS_UPDATED\"] = \"checkout.items.updated\";\n CheckoutEventNames[\"CHECKOUT_ITEMS_REMOVED\"] = \"checkout.items.removed\";\n CheckoutEventNames[\"CHECKOUT_CUSTOMER_CREATED\"] = \"checkout.customer.created\";\n CheckoutEventNames[\"CHECKOUT_CUSTOMER_UPDATED\"] = \"checkout.customer.updated\";\n CheckoutEventNames[\"CHECKOUT_CUSTOMER_REMOVED\"] = \"checkout.customer.removed\";\n CheckoutEventNames[\"CHECKOUT_PAYMENT_SELECTED\"] = \"checkout.payment.selected\";\n CheckoutEventNames[\"CHECKOUT_PAYMENT_INITIATED\"] = \"checkout.payment.initiated\";\n CheckoutEventNames[\"CHECKOUT_PAYMENT_FAILED\"] = \"checkout.payment.failed\";\n CheckoutEventNames[\"CHECKOUT_PAYMENT_ERROR\"] = \"checkout.payment.error\";\n CheckoutEventNames[\"CHECKOUT_DISCOUNT_APPLIED\"] = \"checkout.discount.applied\";\n CheckoutEventNames[\"CHECKOUT_DISCOUNT_REMOVED\"] = \"checkout.discount.removed\";\n CheckoutEventNames[\"CHECKOUT_UPSELL_CANCELED\"] = \"checkout.upsell.canceled\";\n})(CheckoutEventNames || (CheckoutEventNames = {}));\nvar CheckoutEventsTimePeriodInterval;\n(function (CheckoutEventsTimePeriodInterval) {\n CheckoutEventsTimePeriodInterval[\"DAY\"] = \"day\";\n CheckoutEventsTimePeriodInterval[\"WEEK\"] = \"week\";\n CheckoutEventsTimePeriodInterval[\"MONTH\"] = \"month\";\n CheckoutEventsTimePeriodInterval[\"YEAR\"] = \"year\";\n})(CheckoutEventsTimePeriodInterval || (CheckoutEventsTimePeriodInterval = {}));\nvar CheckoutEventsPaymentMethodTypes;\n(function (CheckoutEventsPaymentMethodTypes) {\n CheckoutEventsPaymentMethodTypes[\"ALIPAY\"] = \"alipay\";\n CheckoutEventsPaymentMethodTypes[\"APPLE_PAY\"] = \"apple-pay\";\n CheckoutEventsPaymentMethodTypes[\"CARD\"] = \"card\";\n CheckoutEventsPaymentMethodTypes[\"GOOGLE_PAY\"] = \"google-pay\";\n CheckoutEventsPaymentMethodTypes[\"IDEAL\"] = \"ideal\";\n CheckoutEventsPaymentMethodTypes[\"PAYPAL\"] = \"paypal\";\n CheckoutEventsPaymentMethodTypes[\"WECHAT_PAY\"] = \"wechat-pay\";\n CheckoutEventsPaymentMethodTypes[\"WIRE_TRANSFER\"] = \"wire-transfer\";\n CheckoutEventsPaymentMethodTypes[\"NONE\"] = \"none\";\n})(CheckoutEventsPaymentMethodTypes || (CheckoutEventsPaymentMethodTypes = {}));\nvar CheckoutEventsPaymentMethodCardTypes;\n(function (CheckoutEventsPaymentMethodCardTypes) {\n CheckoutEventsPaymentMethodCardTypes[\"AMERICAN_EXPRESS\"] = \"american_express\";\n CheckoutEventsPaymentMethodCardTypes[\"DINERS_CLUB\"] = \"diners_club\";\n CheckoutEventsPaymentMethodCardTypes[\"DISCOVER\"] = \"discover\";\n CheckoutEventsPaymentMethodCardTypes[\"JCB\"] = \"jcb\";\n CheckoutEventsPaymentMethodCardTypes[\"MADA\"] = \"mada\";\n CheckoutEventsPaymentMethodCardTypes[\"MAESTRO\"] = \"maestro\";\n CheckoutEventsPaymentMethodCardTypes[\"MASTER_CARD\"] = \"mastercard\";\n CheckoutEventsPaymentMethodCardTypes[\"UNION_PAY\"] = \"union_pay\";\n CheckoutEventsPaymentMethodCardTypes[\"VISA\"] = \"visa\";\n CheckoutEventsPaymentMethodCardTypes[\"UNKNOWN\"] = \"unknown\";\n})(CheckoutEventsPaymentMethodCardTypes || (CheckoutEventsPaymentMethodCardTypes = {}));\nvar CheckoutEventsStatus;\n(function (CheckoutEventsStatus) {\n CheckoutEventsStatus[\"DRAFT\"] = \"draft\";\n CheckoutEventsStatus[\"READY\"] = \"ready\";\n CheckoutEventsStatus[\"COMPLETED\"] = \"completed\";\n CheckoutEventsStatus[\"BILLED\"] = \"billed\";\n CheckoutEventsStatus[\"canceled\"] = \"canceled\";\n CheckoutEventsStatus[\"PAST_DUE\"] = \"past_due\";\n})(CheckoutEventsStatus || (CheckoutEventsStatus = {}));\n\nfunction initializePaddle(_x) {\n return _initializePaddle.apply(this, arguments);\n}\nfunction _initializePaddle() {\n _initializePaddle = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(options) {\n var requestedVersion, paddle;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n requestedVersion = (options === null || options === void 0 ? void 0 : options.version) || DefaultVersion;\n _context.next = 3;\n return loadFromCDN(requestedVersion);\n case 3:\n paddle = _context.sent;\n if (!paddle) {\n _context.next = 9;\n break;\n }\n if (options) {\n if (requestedVersion === Versions.V1) {\n initializePaddleBillingV1(options, paddle);\n } else if (requestedVersion === Versions.CLASSIC) {\n initializePaddleClassic(options, paddle);\n }\n }\n return _context.abrupt(\"return\", paddle);\n case 9:\n console.error('[Paddle] Error Loading Paddle');\n return _context.abrupt(\"return\");\n case 11:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n return _initializePaddle.apply(this, arguments);\n}\nfunction getPaddleInstance() {\n var version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : DefaultVersion;\n if (version === Versions.V1) {\n return window.PaddleBillingV1;\n } else if (version === Versions.CLASSIC) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return window.PaddleClassic;\n } else {\n console.error('[Paddle] Unknown Paddle Version');\n return;\n }\n}\n\nexport { CheckoutEventNames, CheckoutEventsPaymentMethodCardTypes, CheckoutEventsPaymentMethodTypes, CheckoutEventsStatus, CheckoutEventsTimePeriodInterval, getPaddleInstance, initializePaddle };\n","/**\n * `@appfunnel-dev/sdk/driver-paddle` — the Paddle {@link CheckoutDriver}.\n *\n * A separate subpath entry, mirroring driver-stripe: `@paddle/paddle-js` is an\n * OPTIONAL peer dep, imported **dynamically** only when a `provider_checkout`\n * step arrives — non-Paddle funnels never download it.\n *\n * Paddle is Merchant-of-Record and card entry is always Paddle's own frame\n * (capability matrix: `embedded`/`popup`/`redirect` only — no element/express/\n * sheet). The driver therefore never renders a payment form itself:\n * - `start` (popup/redirect triggers + off-session) → `Paddle.Checkout.open`\n * as an overlay, or the hosted page hand-off, or a server-settled result;\n * - `renderInline` (`embedded`) → the same open with `displayMode: 'inline'`\n * into our stable frame-target div.\n *\n * Paddle settles ASYNC (webhook → server writes the money facts), so after\n * `checkout.completed` the driver polls `…/complete` a bounded number of times;\n * a timeout is `retryable` and tells the buyer the receipt may still arrive by\n * email — the server's facts never depend on this browser.\n *\n * Paid trials are NATIVE on the Paddle price (doc 09 §4.4) — the driver does\n * nothing special for trials; the server resolves the trial-bearing price id.\n */\nimport { createElement, useEffect, useId, useRef, useState, type ReactNode } from 'react'\nimport { initializePaddle, type Paddle } from '@paddle/paddle-js'\nimport type {\n CheckoutCallbacks,\n CheckoutDriver,\n CheckoutDriverContext,\n CheckoutRequest,\n CheckoutResult,\n} from '../commerce/checkout'\nimport { checkoutError } from '../commerce/capabilities'\nimport type { StepProviderCheckout } from '../commerce/checkout-api'\nimport {\n completeWithPoll,\n leaveForRedirect,\n postComplete,\n postSession,\n settlementToResult,\n toCheckoutError,\n} from './wire'\n\nexport type { CheckoutDriver, CheckoutDriverContext } from '../commerce/checkout'\n\nconst PADDLE_TIMEOUT_MESSAGE =\n 'The payment is still being confirmed — if you completed checkout, your receipt will arrive by email.'\n\n// The off-session tail has no checkout the buyer \"completed\" — same retryable\n// semantics, but the message speaks to a server-side charge still in flight.\nconst PADDLE_PENDING_TIMEOUT_MESSAGE =\n 'The charge is still being confirmed — it may still complete; please check back shortly.'\n\n// paddle.js has ONE global event callback (registered at initializePaddle time,\n// not per-open), so completion events fan out to per-attempt listeners here. Each\n// listener DISCRIMINATES by the event payload's `custom_data.af_correlation_id`\n// (the id our server stamps into every checkout's customData) — without it, any\n// concurrent listener would accept any attempt's completion (cross-talk).\ntype PaddleEvent = {\n name?: string\n data?: { custom_data?: Record<string, unknown> | object | null; transaction_id?: string }\n}\nconst listeners = new Set<(event: PaddleEvent) => void>()\n\n/**\n * Does this event belong to the attempt identified by `correlationId`?\n *\n * ITEMS path (`transactionId` undefined): `@paddle/paddle-js` types (checked\n * 2026-07-03): `PaddleEventData.data` is `CheckoutEventsData` whose\n * `custom_data?: object | null` echoes the checkout's custom data — OUR item\n * checkouts always open with `af_correlation_id` in it (paddle-checkout.ts), so a\n * mismatch is definitively another attempt/integration and is rejected.\n * `custom_data` IS nullable in the payload type though, so a genuinely absent\n * block falls back to ACCEPT: Paddle.js renders one checkout per page at a time,\n * and stranding the only live attempt on a missing echo would regress\n * dismissal/settlement into a stuck `loading` state.\n *\n * EXISTING-TRANSACTION path (`transactionId` set — the wire's transactionId\n * provider_checkout, e.g. Paddle's payment-method-change re-collect): custom_data\n * CANNOT discriminate here — the transaction already exists provider-side and a\n * payment-method-change transaction INHERITS the subscription's custom data, i.e.\n * the ORIGINAL purchase's `af_correlation_id` (verified against the Paddle model\n * 2026-07-04; same inheritance paddle-upsell.ts documents for subscription\n * charge/update transactions) — matching on it would wrongly REJECT our own\n * completion. `CheckoutEventsData.transaction_id` (non-optional in the paddle-js\n * types) is the truthful discriminator instead: the event is ours iff it carries\n * the very transaction id we opened; an absent echo falls back to ACCEPT for the\n * same one-checkout-per-page reason as above.\n */\nfunction eventMatchesAttempt(event: PaddleEvent, correlationId: string, transactionId?: string): boolean {\n if (transactionId) {\n const eventTransactionId = event.data?.transaction_id\n if (eventTransactionId == null) return true\n return eventTransactionId === transactionId\n }\n const customData = event.data?.custom_data as Record<string, unknown> | null | undefined\n if (customData == null) return true\n return customData.af_correlation_id === correlationId\n}\n\n// C8: the double-charge window. Paddle settles via webhook, so a slow webhook can\n// time the completion poll out while the charge is still landing — remember the\n// attempt per (product, intent) and let the NEXT start() for the same pair verify\n// it (one /complete) before opening a second checkout. In-memory per page load on\n// purpose: the double-click-after-timeout window IS a single page load.\nconst pendingTimeouts = new Map<string, string>()\nconst pendingKeyOf = (req: CheckoutRequest) => `${req.product}::${req.intent}`\n\n/** Remember a poll-exhausted attempt (still pending server-side) for the guard above. */\nfunction rememberIfStillPending(req: CheckoutRequest, correlationId: string, result: CheckoutResult): CheckoutResult {\n if (!result.ok && result.error?.declineCode === 'completion_timeout') {\n pendingTimeouts.set(pendingKeyOf(req), correlationId)\n }\n return result\n}\n\n/** TEST-ONLY: clear the page-load-scoped pending-attempt memory (mirrors __resetContextCache). */\nexport function __resetPaddleDriverState(): void {\n pendingTimeouts.clear()\n}\n\n// One Paddle instance per (environment, token) for the page's lifetime —\n// re-initializing per attempt would inject the script again and stack event\n// callbacks (double-firing completions).\nconst paddleInstances = new Map<string, Promise<Paddle | undefined>>()\n\nfunction getPaddle(clientToken: string, environment: 'sandbox' | 'production'): Promise<Paddle | undefined> {\n const key = `${environment}:${clientToken}`\n let instance = paddleInstances.get(key)\n if (!instance) {\n // initializePaddle is statically imported (direct dep); it still injects paddle.js from\n // Paddle's CDN lazily on first call — only into funnels that import this driver.\n instance = initializePaddle({\n token: clientToken,\n environment,\n eventCallback: (event) => {\n // Copy before iterating — listeners remove themselves on completion. The\n // data payload rides along so listeners can discriminate by custom_data.\n for (const listener of Array.from(listeners)) listener({ name: event.name, data: event.data })\n },\n })\n paddleInstances.set(key, instance)\n }\n return instance\n}\n\n/**\n * Open Paddle's checkout (overlay or inline) and resolve when the attempt ends:\n * `checkout.completed` → server-verified settlement (bounded poll — MoR/async),\n * `checkout.closed` before completing → `canceled`.\n *\n * The wire step carries EXACTLY ONE of `items` | `transactionId` (checkout-api.ts):\n * items opens a NEW checkout for the resolved prices; transactionId opens Paddle's\n * checkout for an EXISTING server-created transaction (`Checkout.open({ transactionId })`,\n * verified against @paddle/paddle-js 1.6.4's CheckoutOpenOptions union — e.g. the\n * payment-method-change transaction of an upgrade recovery). Completion/close/poll\n * handling is identical; only the event discrimination differs (see\n * {@link eventMatchesAttempt}).\n */\nasync function openCheckout(\n ctx: CheckoutDriverContext,\n session: StepProviderCheckout,\n correlationId: string,\n display:\n | { displayMode: 'overlay' }\n | { displayMode: 'inline'; frameTarget: string; frameInitialHeight: number; frameStyle: string },\n): Promise<CheckoutResult> {\n if (!session.transactionId && !session.items) {\n // Exactly-one contract violated — nothing openable arrived.\n return {\n ok: false,\n error: checkoutError('processing_error', 'provider_checkout carried neither items nor a transactionId'),\n }\n }\n const paddle = await getPaddle(session.clientToken, session.providerEnvironment)\n if (!paddle) {\n return { ok: false, error: checkoutError('processing_error', 'Paddle.js failed to initialize') }\n }\n return await new Promise<CheckoutResult>((resolve) => {\n let done = false\n const listener = (event: PaddleEvent) => {\n if (done) return\n // Only THIS attempt's events resolve this attempt (custom_data discrimination\n // for item checkouts, transaction-id discrimination for existing transactions).\n if (!eventMatchesAttempt(event, correlationId, session.transactionId)) return\n if (event.name === 'checkout.completed') {\n done = true\n listeners.delete(listener)\n // Paddle settles via webhook — give it a real window (~10×3s) before giving\n // up; a shorter poll times out on ordinary webhook latency and invites the\n // buyer to re-buy while the first charge is still landing (double-charge).\n void completeWithPoll(ctx, correlationId, {\n attempts: 10,\n intervalMs: 3000,\n timeoutMessage: PADDLE_TIMEOUT_MESSAGE,\n }).then(resolve)\n } else if (event.name === 'checkout.closed') {\n done = true\n listeners.delete(listener)\n resolve({ ok: false, error: checkoutError('canceled', 'Checkout was closed before completing') })\n }\n }\n listeners.add(listener)\n if (session.transactionId) {\n // An EXISTING transaction (e.g. payment-method-change): it already carries its\n // own custom data provider-side — sending customData here could clobber the\n // subscription-inherited attribution keys, so only the id and presentation go.\n paddle.Checkout.open({ transactionId: session.transactionId, settings: display })\n } else {\n paddle.Checkout.open({\n // Provider-native line items resolved by the server from the binding —\n // the browser never sees or chooses raw price ids beyond passing these through.\n items: session.items!,\n // Carries the correlationId into Paddle's transaction custom data — the\n // webhook links back to this attempt through it.\n customData: session.customData,\n settings: display,\n })\n }\n })\n}\n\n/** Build the Paddle checkout driver for a funnel mount (pass to `createFunnelTree`). */\nexport function paddleCheckoutDriver(ctx: CheckoutDriverContext): CheckoutDriver {\n return {\n provider: 'paddle',\n async start(req: CheckoutRequest): Promise<CheckoutResult> {\n // Double-charge guard (C8): a previous attempt for the SAME (product, intent)\n // timed out still-pending — verify IT first. Settled ⇒ that charge landed;\n // resolve with it instead of charging again. Failed/still-absent ⇒ fresh start.\n const priorKey = pendingKeyOf(req)\n const prior = pendingTimeouts.get(priorKey)\n if (prior) {\n pendingTimeouts.delete(priorKey)\n try {\n const check = await postComplete(ctx, prior)\n if (check.step === 'settled') return settlementToResult(check.result)\n } catch {\n // Unreachable/absent — proceed with a fresh attempt.\n }\n }\n const correlationId = crypto.randomUUID()\n try {\n const session = await postSession(ctx, req, correlationId)\n switch (session.step) {\n case 'settled': // off-session upsell (upgrade/one-time) — server charged via Paddle API\n return settlementToResult(session.result)\n case 'pending':\n // Off-session tail (MoR/async): Paddle's confirmation outlasted the open\n // request — the attempt stays PENDING server-side. Converge on the webhook\n // through the same bounded /complete poll the overlay path uses.\n return rememberIfStillPending(\n req,\n correlationId,\n await completeWithPoll(ctx, correlationId, {\n timeoutMessage: PADDLE_PENDING_TIMEOUT_MESSAGE,\n }),\n )\n case 'failed':\n return { ok: false, error: session.error }\n case 'redirect':\n return leaveForRedirect(session.url)\n case 'provider_checkout':\n return rememberIfStillPending(\n req,\n correlationId,\n await openCheckout(ctx, session, correlationId, { displayMode: 'overlay' }),\n )\n default:\n return {\n ok: false,\n error: checkoutError(\n 'processing_error',\n `Paddle returned '${session.step}' for a trigger start — Paddle has no in-page confirm step`,\n ),\n }\n }\n } catch (e) {\n return { ok: false, error: toCheckoutError(e) }\n }\n },\n renderInline(req: CheckoutRequest, cb: CheckoutCallbacks): ReactNode {\n return createElement(PaddleInline, { ctx, req, cb })\n },\n // Redirect-return resume: verify an existing attempt. Webhook-dependent, so it\n // gets the same ~10×3s window the overlay completion poll uses.\n resume(correlationId: string): Promise<CheckoutResult> {\n return completeWithPoll(ctx, correlationId, {\n attempts: 10,\n intervalMs: 3000,\n timeoutMessage: PADDLE_TIMEOUT_MESSAGE,\n })\n },\n }\n}\n\n// ── Inline surface (`embedded` — Paddle's frame in our container) ────────────\n\nfunction PaddleInline({\n ctx,\n req,\n cb,\n}: {\n ctx: CheckoutDriverContext\n req: CheckoutRequest\n cb: CheckoutCallbacks\n}): ReactNode {\n // One correlation/idempotency id per MOUNTED surface (product change remounts).\n const [correlationId] = useState(() => crypto.randomUUID())\n // Paddle mounts its inline frame into the FIRST element carrying the frameTarget\n // class — derive a per-instance class from useId (SSR-stable → hydration-safe)\n // so two surfaces on one page can't collide. Sanitized: useId emits ':r0:'.\n const uid = useId().replace(/[^a-zA-Z0-9_-]/g, '')\n const frameClass = `af-paddle-frame-${uid}`\n const cbRef = useRef(cb)\n cbRef.current = cb\n\n useEffect(() => {\n let disposed = false\n void (async () => {\n try {\n const session = await postSession(ctx, req, correlationId)\n if (disposed) return\n switch (session.step) {\n case 'provider_checkout': {\n // Card entry lives inside Paddle's frame (no observable submit) — the\n // inline checkout OPENING is the closest user-intent signal, so it is\n // when `checkout.start` fires for this surface (C5, documented choice).\n cbRef.current.onStart?.()\n const result = await openCheckout(ctx, session, correlationId, {\n displayMode: 'inline',\n frameTarget: frameClass,\n frameInitialHeight: 450,\n // Paddle's documented inline-frame baseline: fluid width, no chrome.\n frameStyle: 'width: 100%; min-width: 286px; background-color: transparent; border: none;',\n })\n if (disposed) return\n if (result.ok) cbRef.current.onSuccess(result)\n else cbRef.current.onError(result.error ?? checkoutError('unknown', 'Checkout failed'))\n return\n }\n case 'settled': // defensive — a surfaced attempt shouldn't settle server-side\n cbRef.current.onSuccess(settlementToResult(session.result))\n return\n case 'failed':\n cbRef.current.onError(session.error)\n return\n case 'redirect': {\n // The binding may force the hosted page even for an inline author. The\n // hand-off settles only on a bfcache Back-return (canceled) — report it\n // so the placeholder recovers instead of spinning forever.\n const result = await leaveForRedirect(session.url)\n if (!disposed && !result.ok) {\n cbRef.current.onError(result.error ?? checkoutError('canceled', 'Checkout was canceled'))\n }\n return\n }\n default:\n cbRef.current.onError(\n checkoutError('processing_error', 'unexpected step for a Paddle inline surface'),\n )\n }\n } catch (e) {\n if (!disposed) cbRef.current.onError(toCheckoutError(e))\n }\n })()\n return () => {\n disposed = true\n }\n // One attempt per mount by design (see correlationId) — deps intentionally empty.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n // The stable frame-target container — identical on SSR and first client paint\n // (Paddle injects its iframe into it client-side only). Hydration-safe.\n return createElement('div', {\n 'data-appfunnel-checkout': 'paddle',\n 'data-checkout-surface': req.surface,\n className: frameClass,\n })\n}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/@paddle/paddle-js/dist/index.esm.js","../src/drivers/paddle.tsx"],"names":["n","r","t","e","i","a","c","o","u","h","p","CheckoutEventNames","CheckoutEventsTimePeriodInterval","CheckoutEventsPaymentMethodTypes","CheckoutEventsPaymentMethodCardTypes","CheckoutEventsStatus"],"mappings":"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","file":"driver-paddle.js","sourcesContent":["function asyncGeneratorStep(n, t, e, r, o, a, c) {\n try {\n var i = n[a](c),\n u = i.value;\n } catch (n) {\n return void e(n);\n }\n i.done ? t(u) : Promise.resolve(u).then(r, o);\n}\nfunction _asyncToGenerator(n) {\n return function () {\n var t = this,\n e = arguments;\n return new Promise(function (r, o) {\n var a = n.apply(t, e);\n function _next(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"next\", n);\n }\n function _throw(n) {\n asyncGeneratorStep(a, r, o, _next, _throw, \"throw\", n);\n }\n _next(void 0);\n });\n };\n}\nfunction _defineProperty(e, r, t) {\n return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread2(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _objectWithoutProperties(e, t) {\n if (null == e) return {};\n var o,\n r,\n i = _objectWithoutPropertiesLoose(e, t);\n if (Object.getOwnPropertySymbols) {\n var s = Object.getOwnPropertySymbols(e);\n for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]);\n }\n return i;\n}\nfunction _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nfunction _regeneratorRuntime() {\n _regeneratorRuntime = function () {\n return e;\n };\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function (t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == typeof h && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function (t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator.return && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(typeof e + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function (e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function () {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function (e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function (t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function (t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function (t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n catch: function (t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw Error(\"illegal catch attempt\");\n },\n delegateYield: function (e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nfunction _toPrimitive(t, r) {\n if (\"object\" != typeof t || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != typeof i) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nfunction _toPropertyKey(t) {\n var i = _toPrimitive(t, \"string\");\n return \"symbol\" == typeof i ? i : i + \"\";\n}\n\nvar Versions = {\n CLASSIC: 'classic',\n V1: 'v1'\n};\nvar DefaultVersion = Versions.V1;\nvar PaddleClassicCDNUrl = 'https://cdn.paddle.com/paddle/paddle.js';\nvar PaddleBillingCDNUrl = 'https://cdn.paddle.com/paddle/v2/paddle.js';\nvar PaddleClassicInfo = {\n url: PaddleClassicCDNUrl\n};\nvar PaddleBillingV1Info = {\n url: PaddleBillingCDNUrl\n};\n\nfunction findScript(cdnUrl) {\n return document.querySelector(\"script[src=\\\"\".concat(cdnUrl, \"\\\"]\")) || undefined;\n}\nfunction injectScript(src) {\n var script = document.createElement('script');\n script.src = src;\n var headOrBody = document.head || document.body;\n if (!headOrBody) {\n throw new Error('Cannot inject Paddle.js. It needs a <head> or <body> element.');\n }\n headOrBody.appendChild(script);\n return script;\n}\nvar promiseMap = {\n classic: undefined,\n v1: undefined\n};\nvar VersionToPaddleMap = {\n classic: 'PaddleClassic',\n v1: 'PaddleBillingV1'\n};\nfunction loadFromCDN(version) {\n var _getCDNInfoBasedOnVer;\n var cdnUrl = (_getCDNInfoBasedOnVer = getCDNInfoBasedOnVersion(version)) === null || _getCDNInfoBasedOnVer === void 0 ? void 0 : _getCDNInfoBasedOnVer.url;\n if (!cdnUrl) {\n return;\n }\n // Return promise on re-renders\n var existingPromise = promiseMap[version];\n var paddleInstanceName = VersionToPaddleMap[version];\n if (existingPromise !== undefined) {\n return existingPromise;\n }\n promiseMap[version] = new Promise(function (resolve, reject) {\n if (typeof window === 'undefined') {\n // Return undefined in a server side environment\n resolve(undefined);\n return;\n }\n // Return Paddle instance if it is already initialized\n if (window[paddleInstanceName]) {\n resolve(window[paddleInstanceName]);\n return;\n }\n try {\n // Inject if paddle.js script tag is not found\n var script = findScript(cdnUrl);\n if (!script) {\n script = injectScript(cdnUrl);\n }\n // Wait for `load` event before returning\n script.addEventListener('load', function () {\n if (window[paddleInstanceName]) {\n resolve(window[paddleInstanceName]);\n } else {\n reject(new Error('Paddle.js not available'));\n }\n });\n // Show an error if loading fails\n script.addEventListener('error', function () {\n reject(new Error(\"Failed to load Paddle.js - \".concat(version)));\n });\n } catch (error) {\n reject(error);\n return;\n }\n });\n return promiseMap[version];\n}\nfunction getCDNInfoBasedOnVersion(version) {\n if (version === Versions.CLASSIC) {\n return PaddleClassicInfo;\n }\n if (version === Versions.V1) {\n return PaddleBillingV1Info;\n } else {\n console.error('[Paddle] Unknown Paddle Version');\n return;\n }\n}\n\nvar _excluded = [\"environment\", \"version\"],\n _excluded2 = [\"environment\", \"version\"];\nfunction initializePaddleBillingV1(options, paddle) {\n var environment = options.environment;\n options.version;\n var rest = _objectWithoutProperties(options, _excluded);\n try {\n if (environment) {\n paddle.Environment.set(environment);\n }\n if (paddle.Initialized) {\n paddle.Update(_objectSpread2({}, rest));\n } else {\n paddle.Initialize(_objectSpread2({}, rest));\n }\n } catch (e) {\n console.warn('[Paddle] Paddle Initialization failed. Please check the inputs', e);\n }\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction initializePaddleClassic(options, paddle) {\n var environment = options.environment;\n options.version;\n var rest = _objectWithoutProperties(options, _excluded2);\n try {\n if (environment) {\n paddle.Environment.set(environment);\n }\n paddle.Setup(_objectSpread2({}, rest));\n } catch (e) {\n console.warn('[Paddle] Paddle Initialization failed. Please check the inputs', e);\n }\n}\n\n// Note: The enums in this file is only for `src`. Typescript will also need it added to the `types` directory for usage.\nvar CheckoutEventNames;\n(function (CheckoutEventNames) {\n CheckoutEventNames[\"CHECKOUT_LOADED\"] = \"checkout.loaded\";\n CheckoutEventNames[\"CHECKOUT_CLOSED\"] = \"checkout.closed\";\n CheckoutEventNames[\"CHECKOUT_UPDATED\"] = \"checkout.updated\";\n CheckoutEventNames[\"CHECKOUT_COMPLETED\"] = \"checkout.completed\";\n CheckoutEventNames[\"CHECKOUT_ERROR\"] = \"checkout.error\";\n CheckoutEventNames[\"CHECKOUT_FAILED\"] = \"checkout.failed\";\n CheckoutEventNames[\"CHECKOUT_ITEMS_UPDATED\"] = \"checkout.items.updated\";\n CheckoutEventNames[\"CHECKOUT_ITEMS_REMOVED\"] = \"checkout.items.removed\";\n CheckoutEventNames[\"CHECKOUT_CUSTOMER_CREATED\"] = \"checkout.customer.created\";\n CheckoutEventNames[\"CHECKOUT_CUSTOMER_UPDATED\"] = \"checkout.customer.updated\";\n CheckoutEventNames[\"CHECKOUT_CUSTOMER_REMOVED\"] = \"checkout.customer.removed\";\n CheckoutEventNames[\"CHECKOUT_PAYMENT_SELECTED\"] = \"checkout.payment.selected\";\n CheckoutEventNames[\"CHECKOUT_PAYMENT_INITIATED\"] = \"checkout.payment.initiated\";\n CheckoutEventNames[\"CHECKOUT_PAYMENT_FAILED\"] = \"checkout.payment.failed\";\n CheckoutEventNames[\"CHECKOUT_PAYMENT_ERROR\"] = \"checkout.payment.error\";\n CheckoutEventNames[\"CHECKOUT_DISCOUNT_APPLIED\"] = \"checkout.discount.applied\";\n CheckoutEventNames[\"CHECKOUT_DISCOUNT_REMOVED\"] = \"checkout.discount.removed\";\n CheckoutEventNames[\"CHECKOUT_UPSELL_CANCELED\"] = \"checkout.upsell.canceled\";\n})(CheckoutEventNames || (CheckoutEventNames = {}));\nvar CheckoutEventsTimePeriodInterval;\n(function (CheckoutEventsTimePeriodInterval) {\n CheckoutEventsTimePeriodInterval[\"DAY\"] = \"day\";\n CheckoutEventsTimePeriodInterval[\"WEEK\"] = \"week\";\n CheckoutEventsTimePeriodInterval[\"MONTH\"] = \"month\";\n CheckoutEventsTimePeriodInterval[\"YEAR\"] = \"year\";\n})(CheckoutEventsTimePeriodInterval || (CheckoutEventsTimePeriodInterval = {}));\nvar CheckoutEventsPaymentMethodTypes;\n(function (CheckoutEventsPaymentMethodTypes) {\n CheckoutEventsPaymentMethodTypes[\"ALIPAY\"] = \"alipay\";\n CheckoutEventsPaymentMethodTypes[\"APPLE_PAY\"] = \"apple-pay\";\n CheckoutEventsPaymentMethodTypes[\"CARD\"] = \"card\";\n CheckoutEventsPaymentMethodTypes[\"GOOGLE_PAY\"] = \"google-pay\";\n CheckoutEventsPaymentMethodTypes[\"IDEAL\"] = \"ideal\";\n CheckoutEventsPaymentMethodTypes[\"PAYPAL\"] = \"paypal\";\n CheckoutEventsPaymentMethodTypes[\"WECHAT_PAY\"] = \"wechat-pay\";\n CheckoutEventsPaymentMethodTypes[\"WIRE_TRANSFER\"] = \"wire-transfer\";\n CheckoutEventsPaymentMethodTypes[\"NONE\"] = \"none\";\n})(CheckoutEventsPaymentMethodTypes || (CheckoutEventsPaymentMethodTypes = {}));\nvar CheckoutEventsPaymentMethodCardTypes;\n(function (CheckoutEventsPaymentMethodCardTypes) {\n CheckoutEventsPaymentMethodCardTypes[\"AMERICAN_EXPRESS\"] = \"american_express\";\n CheckoutEventsPaymentMethodCardTypes[\"DINERS_CLUB\"] = \"diners_club\";\n CheckoutEventsPaymentMethodCardTypes[\"DISCOVER\"] = \"discover\";\n CheckoutEventsPaymentMethodCardTypes[\"JCB\"] = \"jcb\";\n CheckoutEventsPaymentMethodCardTypes[\"MADA\"] = \"mada\";\n CheckoutEventsPaymentMethodCardTypes[\"MAESTRO\"] = \"maestro\";\n CheckoutEventsPaymentMethodCardTypes[\"MASTER_CARD\"] = \"mastercard\";\n CheckoutEventsPaymentMethodCardTypes[\"UNION_PAY\"] = \"union_pay\";\n CheckoutEventsPaymentMethodCardTypes[\"VISA\"] = \"visa\";\n CheckoutEventsPaymentMethodCardTypes[\"UNKNOWN\"] = \"unknown\";\n})(CheckoutEventsPaymentMethodCardTypes || (CheckoutEventsPaymentMethodCardTypes = {}));\nvar CheckoutEventsStatus;\n(function (CheckoutEventsStatus) {\n CheckoutEventsStatus[\"DRAFT\"] = \"draft\";\n CheckoutEventsStatus[\"READY\"] = \"ready\";\n CheckoutEventsStatus[\"COMPLETED\"] = \"completed\";\n CheckoutEventsStatus[\"BILLED\"] = \"billed\";\n CheckoutEventsStatus[\"canceled\"] = \"canceled\";\n CheckoutEventsStatus[\"PAST_DUE\"] = \"past_due\";\n})(CheckoutEventsStatus || (CheckoutEventsStatus = {}));\n\nfunction initializePaddle(_x) {\n return _initializePaddle.apply(this, arguments);\n}\nfunction _initializePaddle() {\n _initializePaddle = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(options) {\n var requestedVersion, paddle;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n requestedVersion = (options === null || options === void 0 ? void 0 : options.version) || DefaultVersion;\n _context.next = 3;\n return loadFromCDN(requestedVersion);\n case 3:\n paddle = _context.sent;\n if (!paddle) {\n _context.next = 9;\n break;\n }\n if (options) {\n if (requestedVersion === Versions.V1) {\n initializePaddleBillingV1(options, paddle);\n } else if (requestedVersion === Versions.CLASSIC) {\n initializePaddleClassic(options, paddle);\n }\n }\n return _context.abrupt(\"return\", paddle);\n case 9:\n console.error('[Paddle] Error Loading Paddle');\n return _context.abrupt(\"return\");\n case 11:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n return _initializePaddle.apply(this, arguments);\n}\nfunction getPaddleInstance() {\n var version = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : DefaultVersion;\n if (version === Versions.V1) {\n return window.PaddleBillingV1;\n } else if (version === Versions.CLASSIC) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return window.PaddleClassic;\n } else {\n console.error('[Paddle] Unknown Paddle Version');\n return;\n }\n}\n\nexport { CheckoutEventNames, CheckoutEventsPaymentMethodCardTypes, CheckoutEventsPaymentMethodTypes, CheckoutEventsStatus, CheckoutEventsTimePeriodInterval, getPaddleInstance, initializePaddle };\n","/**\n * `@appfunnel-dev/sdk/driver-paddle` — the Paddle {@link CheckoutDriver}.\n *\n * A separate subpath entry, mirroring driver-stripe: `@paddle/paddle-js` is an\n * OPTIONAL peer dep, imported **dynamically** only when a `provider_checkout`\n * step arrives — non-Paddle funnels never download it.\n *\n * Paddle is Merchant-of-Record and card entry is always Paddle's own frame\n * (capability matrix: `embedded`/`express`/`popup`/`redirect` — no element/sheet).\n * The driver therefore never renders a payment form itself:\n * - `start` (popup/redirect triggers + off-session) → `Paddle.Checkout.open`\n * as an overlay, or the hosted page hand-off, or a server-settled result;\n * - `renderInline` (`embedded`/`express`) → the same open with `displayMode:\n * 'inline'` into our stable frame-target div; `express` adds `variant: 'express'`\n * for Paddle's Apple-Pay-first Express Checkout (shipped 2026-04-27).\n *\n * Paddle settles ASYNC (webhook → server writes the money facts), so after\n * `checkout.completed` the driver polls `…/complete` a bounded number of times;\n * a timeout is `retryable` and tells the buyer the receipt may still arrive by\n * email — the server's facts never depend on this browser.\n *\n * Paid trials are NATIVE on the Paddle price (doc 09 §4.4) — the driver does\n * nothing special for trials; the server resolves the trial-bearing price id.\n */\nimport { createElement, useEffect, useId, useRef, useState, type ReactNode } from 'react'\nimport { initializePaddle, type Paddle } from '@paddle/paddle-js'\nimport type {\n CheckoutCallbacks,\n CheckoutDriver,\n CheckoutDriverContext,\n CheckoutRequest,\n CheckoutResult,\n} from '../commerce/checkout'\nimport { checkoutError } from '../commerce/capabilities'\nimport type { StepProviderCheckout } from '../commerce/checkout-api'\nimport {\n completeWithPoll,\n leaveForRedirect,\n postComplete,\n postSession,\n settlementToResult,\n toCheckoutError,\n} from './wire'\n\nexport type { CheckoutDriver, CheckoutDriverContext } from '../commerce/checkout'\n\nconst PADDLE_TIMEOUT_MESSAGE =\n 'The payment is still being confirmed — if you completed checkout, your receipt will arrive by email.'\n\n// The off-session tail has no checkout the buyer \"completed\" — same retryable\n// semantics, but the message speaks to a server-side charge still in flight.\nconst PADDLE_PENDING_TIMEOUT_MESSAGE =\n 'The charge is still being confirmed — it may still complete; please check back shortly.'\n\n// paddle.js has ONE global event callback (registered at initializePaddle time,\n// not per-open), so completion events fan out to per-attempt listeners here. Each\n// listener DISCRIMINATES by the event payload's `custom_data.af_correlation_id`\n// (the id our server stamps into every checkout's customData) — without it, any\n// concurrent listener would accept any attempt's completion (cross-talk).\ntype PaddleEvent = {\n name?: string\n data?: { custom_data?: Record<string, unknown> | object | null; transaction_id?: string }\n}\nconst listeners = new Set<(event: PaddleEvent) => void>()\n\n/**\n * Does this event belong to the attempt identified by `correlationId`?\n *\n * ITEMS path (`transactionId` undefined): `@paddle/paddle-js` types (checked\n * 2026-07-03): `PaddleEventData.data` is `CheckoutEventsData` whose\n * `custom_data?: object | null` echoes the checkout's custom data — OUR item\n * checkouts always open with `af_correlation_id` in it (paddle-checkout.ts), so a\n * mismatch is definitively another attempt/integration and is rejected.\n * `custom_data` IS nullable in the payload type though, so a genuinely absent\n * block falls back to ACCEPT: Paddle.js renders one checkout per page at a time,\n * and stranding the only live attempt on a missing echo would regress\n * dismissal/settlement into a stuck `loading` state.\n *\n * EXISTING-TRANSACTION path (`transactionId` set — the wire's transactionId\n * provider_checkout, e.g. Paddle's payment-method-change re-collect): custom_data\n * CANNOT discriminate here — the transaction already exists provider-side and a\n * payment-method-change transaction INHERITS the subscription's custom data, i.e.\n * the ORIGINAL purchase's `af_correlation_id` (verified against the Paddle model\n * 2026-07-04; same inheritance paddle-upsell.ts documents for subscription\n * charge/update transactions) — matching on it would wrongly REJECT our own\n * completion. `CheckoutEventsData.transaction_id` (non-optional in the paddle-js\n * types) is the truthful discriminator instead: the event is ours iff it carries\n * the very transaction id we opened; an absent echo falls back to ACCEPT for the\n * same one-checkout-per-page reason as above.\n */\nfunction eventMatchesAttempt(event: PaddleEvent, correlationId: string, transactionId?: string): boolean {\n if (transactionId) {\n const eventTransactionId = event.data?.transaction_id\n if (eventTransactionId == null) return true\n return eventTransactionId === transactionId\n }\n const customData = event.data?.custom_data as Record<string, unknown> | null | undefined\n if (customData == null) return true\n return customData.af_correlation_id === correlationId\n}\n\n// C8: the double-charge window. Paddle settles via webhook, so a slow webhook can\n// time the completion poll out while the charge is still landing — remember the\n// attempt per (product, intent) and let the NEXT start() for the same pair verify\n// it (one /complete) before opening a second checkout. In-memory per page load on\n// purpose: the double-click-after-timeout window IS a single page load.\nconst pendingTimeouts = new Map<string, string>()\nconst pendingKeyOf = (req: CheckoutRequest) => `${req.product}::${req.intent}`\n\n/** Remember a poll-exhausted attempt (still pending server-side) for the guard above. */\nfunction rememberIfStillPending(req: CheckoutRequest, correlationId: string, result: CheckoutResult): CheckoutResult {\n if (!result.ok && result.error?.declineCode === 'completion_timeout') {\n pendingTimeouts.set(pendingKeyOf(req), correlationId)\n }\n return result\n}\n\n/** TEST-ONLY: clear the page-load-scoped pending-attempt memory (mirrors __resetContextCache). */\nexport function __resetPaddleDriverState(): void {\n pendingTimeouts.clear()\n}\n\n// One Paddle instance per (environment, token) for the page's lifetime —\n// re-initializing per attempt would inject the script again and stack event\n// callbacks (double-firing completions).\nconst paddleInstances = new Map<string, Promise<Paddle | undefined>>()\n\nfunction getPaddle(clientToken: string, environment: 'sandbox' | 'production'): Promise<Paddle | undefined> {\n const key = `${environment}:${clientToken}`\n let instance = paddleInstances.get(key)\n if (!instance) {\n // initializePaddle is statically imported (direct dep); it still injects paddle.js from\n // Paddle's CDN lazily on first call — only into funnels that import this driver.\n instance = initializePaddle({\n token: clientToken,\n environment,\n eventCallback: (event) => {\n // Copy before iterating — listeners remove themselves on completion. The\n // data payload rides along so listeners can discriminate by custom_data.\n for (const listener of Array.from(listeners)) listener({ name: event.name, data: event.data })\n },\n })\n paddleInstances.set(key, instance)\n }\n return instance\n}\n\n/**\n * Open Paddle's checkout (overlay or inline) and resolve when the attempt ends:\n * `checkout.completed` → server-verified settlement (bounded poll — MoR/async),\n * `checkout.closed` before completing → `canceled`.\n *\n * The wire step carries EXACTLY ONE of `items` | `transactionId` (checkout-api.ts):\n * items opens a NEW checkout for the resolved prices; transactionId opens Paddle's\n * checkout for an EXISTING server-created transaction (`Checkout.open({ transactionId })`,\n * verified against @paddle/paddle-js 1.6.4's CheckoutOpenOptions union — e.g. the\n * payment-method-change transaction of an upgrade recovery). Completion/close/poll\n * handling is identical; only the event discrimination differs (see\n * {@link eventMatchesAttempt}).\n */\nasync function openCheckout(\n ctx: CheckoutDriverContext,\n session: StepProviderCheckout,\n correlationId: string,\n display:\n | { displayMode: 'overlay' }\n | {\n displayMode: 'inline'\n frameTarget: string\n frameInitialHeight: number\n frameStyle: string\n // Paddle **Express Checkout** (Apple-Pay-first) — `variant: 'express'` on an INLINE frame\n // (the changelog's requirement; `Variant` is a real @paddle/paddle-js CheckoutSettings field).\n // Omitted for the standard `embedded` inline frame.\n variant?: 'express'\n },\n): Promise<CheckoutResult> {\n if (!session.transactionId && !session.items) {\n // Exactly-one contract violated — nothing openable arrived.\n return {\n ok: false,\n error: checkoutError('processing_error', 'provider_checkout carried neither items nor a transactionId'),\n }\n }\n const paddle = await getPaddle(session.clientToken, session.providerEnvironment)\n if (!paddle) {\n return { ok: false, error: checkoutError('processing_error', 'Paddle.js failed to initialize') }\n }\n return await new Promise<CheckoutResult>((resolve) => {\n let done = false\n const listener = (event: PaddleEvent) => {\n if (done) return\n // Only THIS attempt's events resolve this attempt (custom_data discrimination\n // for item checkouts, transaction-id discrimination for existing transactions).\n if (!eventMatchesAttempt(event, correlationId, session.transactionId)) return\n if (event.name === 'checkout.completed') {\n done = true\n listeners.delete(listener)\n // Paddle settles via webhook — give it a real window (~10×3s) before giving\n // up; a shorter poll times out on ordinary webhook latency and invites the\n // buyer to re-buy while the first charge is still landing (double-charge).\n void completeWithPoll(ctx, correlationId, {\n attempts: 10,\n intervalMs: 3000,\n timeoutMessage: PADDLE_TIMEOUT_MESSAGE,\n }).then(resolve)\n } else if (event.name === 'checkout.closed') {\n done = true\n listeners.delete(listener)\n resolve({ ok: false, error: checkoutError('canceled', 'Checkout was closed before completing') })\n }\n }\n listeners.add(listener)\n if (session.transactionId) {\n // An EXISTING transaction (e.g. payment-method-change): it already carries its\n // own custom data provider-side — sending customData here could clobber the\n // subscription-inherited attribution keys, so only the id and presentation go.\n paddle.Checkout.open({ transactionId: session.transactionId, settings: display })\n } else {\n paddle.Checkout.open({\n // Provider-native line items resolved by the server from the binding —\n // the browser never sees or chooses raw price ids beyond passing these through.\n items: session.items!,\n // Carries the correlationId into Paddle's transaction custom data — the\n // webhook links back to this attempt through it.\n customData: session.customData,\n settings: display,\n })\n }\n })\n}\n\n/** Build the Paddle checkout driver for a funnel mount (pass to `createFunnelTree`). */\nexport function paddleCheckoutDriver(ctx: CheckoutDriverContext): CheckoutDriver {\n return {\n provider: 'paddle',\n async start(req: CheckoutRequest): Promise<CheckoutResult> {\n // Double-charge guard (C8): a previous attempt for the SAME (product, intent)\n // timed out still-pending — verify IT first. Settled ⇒ that charge landed;\n // resolve with it instead of charging again. Failed/still-absent ⇒ fresh start.\n const priorKey = pendingKeyOf(req)\n const prior = pendingTimeouts.get(priorKey)\n if (prior) {\n pendingTimeouts.delete(priorKey)\n try {\n const check = await postComplete(ctx, prior)\n if (check.step === 'settled') return settlementToResult(check.result)\n } catch {\n // Unreachable/absent — proceed with a fresh attempt.\n }\n }\n const correlationId = crypto.randomUUID()\n try {\n const session = await postSession(ctx, req, correlationId)\n switch (session.step) {\n case 'settled': // off-session upsell (upgrade/one-time) — server charged via Paddle API\n return settlementToResult(session.result)\n case 'pending':\n // Off-session tail (MoR/async): Paddle's confirmation outlasted the open\n // request — the attempt stays PENDING server-side. Converge on the webhook\n // through the same bounded /complete poll the overlay path uses.\n return rememberIfStillPending(\n req,\n correlationId,\n await completeWithPoll(ctx, correlationId, {\n timeoutMessage: PADDLE_PENDING_TIMEOUT_MESSAGE,\n }),\n )\n case 'failed':\n return { ok: false, error: session.error }\n case 'redirect':\n return leaveForRedirect(session.url)\n case 'provider_checkout':\n return rememberIfStillPending(\n req,\n correlationId,\n await openCheckout(ctx, session, correlationId, { displayMode: 'overlay' }),\n )\n default:\n return {\n ok: false,\n error: checkoutError(\n 'processing_error',\n `Paddle returned '${session.step}' for a trigger start — Paddle has no in-page confirm step`,\n ),\n }\n }\n } catch (e) {\n return { ok: false, error: toCheckoutError(e) }\n }\n },\n renderInline(req: CheckoutRequest, cb: CheckoutCallbacks): ReactNode {\n return createElement(PaddleInline, { ctx, req, cb })\n },\n // Redirect-return resume: verify an existing attempt. Webhook-dependent, so it\n // gets the same ~10×3s window the overlay completion poll uses.\n resume(correlationId: string): Promise<CheckoutResult> {\n return completeWithPoll(ctx, correlationId, {\n attempts: 10,\n intervalMs: 3000,\n timeoutMessage: PADDLE_TIMEOUT_MESSAGE,\n })\n },\n }\n}\n\n// ── Inline surface (`embedded` — Paddle's frame in our container) ────────────\n\nfunction PaddleInline({\n ctx,\n req,\n cb,\n}: {\n ctx: CheckoutDriverContext\n req: CheckoutRequest\n cb: CheckoutCallbacks\n}): ReactNode {\n // One correlation/idempotency id per MOUNTED surface (product change remounts).\n const [correlationId] = useState(() => crypto.randomUUID())\n // Paddle mounts its inline frame into the FIRST element carrying the frameTarget\n // class — derive a per-instance class from useId (SSR-stable → hydration-safe)\n // so two surfaces on one page can't collide. Sanitized: useId emits ':r0:'.\n const uid = useId().replace(/[^a-zA-Z0-9_-]/g, '')\n const frameClass = `af-paddle-frame-${uid}`\n const cbRef = useRef(cb)\n cbRef.current = cb\n\n useEffect(() => {\n let disposed = false\n void (async () => {\n try {\n const session = await postSession(ctx, req, correlationId)\n if (disposed) return\n switch (session.step) {\n case 'provider_checkout': {\n // Card entry lives inside Paddle's frame (no observable submit) — the\n // inline checkout OPENING is the closest user-intent signal, so it is\n // when `checkout.start` fires for this surface (C5, documented choice).\n cbRef.current.onStart?.()\n // `express` = Paddle's Apple-Pay-first Express Checkout: the same inline frame with\n // `variant: 'express'` and a compact initial height (the changelog's example — the\n // frame is the wallet button, not the full form). Paddle itself falls back to the\n // regular payment methods when no wallet is enrolled (its `showNonExpressPaymentMethods`\n // defaults on — not settable in @paddle/paddle-js 1.6.4's types, so we rely on the\n // provider default; nothing to wire on our side). `embedded` opens the standard frame.\n const express = req.surface === 'express'\n const result = await openCheckout(ctx, session, correlationId, {\n displayMode: 'inline',\n frameTarget: frameClass,\n frameInitialHeight: express ? 182 : 450,\n // Paddle's documented inline-frame baseline: fluid width, no chrome.\n frameStyle: 'width: 100%; min-width: 286px; background-color: transparent; border: none;',\n ...(express ? { variant: 'express' as const } : {}),\n })\n if (disposed) return\n if (result.ok) cbRef.current.onSuccess(result)\n else cbRef.current.onError(result.error ?? checkoutError('unknown', 'Checkout failed'))\n return\n }\n case 'settled': // defensive — a surfaced attempt shouldn't settle server-side\n cbRef.current.onSuccess(settlementToResult(session.result))\n return\n case 'failed':\n cbRef.current.onError(session.error)\n return\n case 'redirect': {\n // The binding may force the hosted page even for an inline author. The\n // hand-off settles only on a bfcache Back-return (canceled) — report it\n // so the placeholder recovers instead of spinning forever.\n const result = await leaveForRedirect(session.url)\n if (!disposed && !result.ok) {\n cbRef.current.onError(result.error ?? checkoutError('canceled', 'Checkout was canceled'))\n }\n return\n }\n default:\n cbRef.current.onError(\n checkoutError('processing_error', 'unexpected step for a Paddle inline surface'),\n )\n }\n } catch (e) {\n if (!disposed) cbRef.current.onError(toCheckoutError(e))\n }\n })()\n return () => {\n disposed = true\n }\n // One attempt per mount by design (see correlationId) — deps intentionally empty.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n // The stable frame-target container — identical on SSR and first client paint\n // (Paddle injects its iframe into it client-side only). Hydration-safe.\n return createElement('div', {\n 'data-appfunnel-checkout': 'paddle',\n 'data-checkout-surface': req.surface,\n className: frameClass,\n })\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var chunkFY3TMSRU_cjs = require('./chunk-FY3TMSRU.cjs');
4
- var chunkRY3LOSVZ_cjs = require('./chunk-RY3LOSVZ.cjs');
3
+ var chunkVV7TFC64_cjs = require('./chunk-VV7TFC64.cjs');
4
+ var chunk7JLOF6CJ_cjs = require('./chunk-7JLOF6CJ.cjs');
5
5
  var chunkEMMSS5I5_cjs = require('./chunk-EMMSS5I5.cjs');
6
6
  var React = require('react');
7
7
 
@@ -2055,13 +2055,13 @@ function fromStripeError(err) {
2055
2055
  const decline = err.decline_code;
2056
2056
  const code = err.code;
2057
2057
  const message = err.message ?? "Payment failed";
2058
- if (decline === "insufficient_funds") return chunkRY3LOSVZ_cjs.checkoutError("insufficient_funds", message, { declineCode: decline });
2058
+ if (decline === "insufficient_funds") return chunk7JLOF6CJ_cjs.checkoutError("insufficient_funds", message, { declineCode: decline });
2059
2059
  if (code === "expired_card" || decline === "expired_card")
2060
- return chunkRY3LOSVZ_cjs.checkoutError("expired_card", message, { declineCode: decline ?? code });
2061
- if (code === "card_declined") return chunkRY3LOSVZ_cjs.checkoutError("card_declined", message, { declineCode: decline ?? code });
2060
+ return chunk7JLOF6CJ_cjs.checkoutError("expired_card", message, { declineCode: decline ?? code });
2061
+ if (code === "card_declined") return chunk7JLOF6CJ_cjs.checkoutError("card_declined", message, { declineCode: decline ?? code });
2062
2062
  if (code === "payment_intent_authentication_failure" || code === "setup_intent_authentication_failure")
2063
- return chunkRY3LOSVZ_cjs.checkoutError("authentication_required", message, { declineCode: code });
2064
- return chunkRY3LOSVZ_cjs.checkoutError("processing_error", message, { declineCode: decline ?? code });
2063
+ return chunk7JLOF6CJ_cjs.checkoutError("authentication_required", message, { declineCode: code });
2064
+ return chunk7JLOF6CJ_cjs.checkoutError("processing_error", message, { declineCode: decline ?? code });
2065
2065
  }
2066
2066
  function stripeCheckoutDriver(ctx) {
2067
2067
  return {
@@ -2069,18 +2069,18 @@ function stripeCheckoutDriver(ctx) {
2069
2069
  async start(req) {
2070
2070
  const correlationId = crypto.randomUUID();
2071
2071
  try {
2072
- const session = await chunkFY3TMSRU_cjs.postSession(ctx, req, correlationId);
2072
+ const session = await chunkVV7TFC64_cjs.postSession(ctx, req, correlationId);
2073
2073
  switch (session.step) {
2074
2074
  case "settled":
2075
- return chunkFY3TMSRU_cjs.settlementToResult(session.result);
2075
+ return chunkVV7TFC64_cjs.settlementToResult(session.result);
2076
2076
  case "failed":
2077
2077
  return { ok: false, error: session.error };
2078
2078
  case "redirect":
2079
- return chunkFY3TMSRU_cjs.leaveForRedirect(session.url);
2079
+ return chunkVV7TFC64_cjs.leaveForRedirect(session.url);
2080
2080
  case "pending":
2081
2081
  return {
2082
2082
  ok: false,
2083
- error: chunkRY3LOSVZ_cjs.checkoutError(
2083
+ error: chunk7JLOF6CJ_cjs.checkoutError(
2084
2084
  "processing_error",
2085
2085
  "Stripe returned 'pending' for a trigger start \u2014 Stripe opens settle synchronously"
2086
2086
  )
@@ -2088,14 +2088,14 @@ function stripeCheckoutDriver(ctx) {
2088
2088
  default:
2089
2089
  return {
2090
2090
  ok: false,
2091
- error: chunkRY3LOSVZ_cjs.checkoutError(
2091
+ error: chunk7JLOF6CJ_cjs.checkoutError(
2092
2092
  "processing_error",
2093
2093
  `Stripe returned '${session.step}' for a trigger start \u2014 use an inline surface (element/express/sheet) instead`
2094
2094
  )
2095
2095
  };
2096
2096
  }
2097
2097
  } catch (e) {
2098
- return { ok: false, error: chunkFY3TMSRU_cjs.toCheckoutError(e) };
2098
+ return { ok: false, error: chunkVV7TFC64_cjs.toCheckoutError(e) };
2099
2099
  }
2100
2100
  },
2101
2101
  renderInline(req, cb) {
@@ -2104,7 +2104,7 @@ function stripeCheckoutDriver(ctx) {
2104
2104
  // Redirect-return resume: verify an existing attempt (Stripe settles /complete
2105
2105
  // synchronously — the bounded poll only covers a `processing` intent tail).
2106
2106
  resume(correlationId) {
2107
- return chunkFY3TMSRU_cjs.completeWithPoll(ctx, correlationId);
2107
+ return chunkVV7TFC64_cjs.completeWithPoll(ctx, correlationId);
2108
2108
  }
2109
2109
  };
2110
2110
  }
@@ -2121,7 +2121,7 @@ function StripeInline({
2121
2121
  let disposed = false;
2122
2122
  void (async () => {
2123
2123
  try {
2124
- const session = await chunkFY3TMSRU_cjs.postSession(ctx, req, correlationId);
2124
+ const session = await chunkVV7TFC64_cjs.postSession(ctx, req, correlationId);
2125
2125
  if (disposed) return;
2126
2126
  switch (session.step) {
2127
2127
  case "client_confirm":
@@ -2134,25 +2134,25 @@ function StripeInline({
2134
2134
  return;
2135
2135
  }
2136
2136
  case "settled":
2137
- cbRef.current.onSuccess(chunkFY3TMSRU_cjs.settlementToResult(session.result));
2137
+ cbRef.current.onSuccess(chunkVV7TFC64_cjs.settlementToResult(session.result));
2138
2138
  return;
2139
2139
  case "failed":
2140
2140
  cbRef.current.onError(session.error);
2141
2141
  return;
2142
2142
  case "redirect": {
2143
- const result = await chunkFY3TMSRU_cjs.leaveForRedirect(session.url);
2143
+ const result = await chunkVV7TFC64_cjs.leaveForRedirect(session.url);
2144
2144
  if (!disposed && !result.ok) {
2145
- cbRef.current.onError(result.error ?? chunkRY3LOSVZ_cjs.checkoutError("canceled", "Checkout was canceled"));
2145
+ cbRef.current.onError(result.error ?? chunk7JLOF6CJ_cjs.checkoutError("canceled", "Checkout was canceled"));
2146
2146
  }
2147
2147
  return;
2148
2148
  }
2149
2149
  default:
2150
2150
  cbRef.current.onError(
2151
- chunkRY3LOSVZ_cjs.checkoutError("processing_error", "unexpected step for a Stripe inline surface")
2151
+ chunk7JLOF6CJ_cjs.checkoutError("processing_error", "unexpected step for a Stripe inline surface")
2152
2152
  );
2153
2153
  }
2154
2154
  } catch (e) {
2155
- if (!disposed) cbRef.current.onError(chunkFY3TMSRU_cjs.toCheckoutError(e));
2155
+ if (!disposed) cbRef.current.onError(chunkVV7TFC64_cjs.toCheckoutError(e));
2156
2156
  }
2157
2157
  })();
2158
2158
  return () => {
@@ -2160,12 +2160,12 @@ function StripeInline({
2160
2160
  };
2161
2161
  }, []);
2162
2162
  const finish = async (providerRef) => {
2163
- const result = await chunkFY3TMSRU_cjs.completeWithPoll(ctx, correlationId, { providerRef });
2163
+ const result = await chunkVV7TFC64_cjs.completeWithPoll(ctx, correlationId, { providerRef });
2164
2164
  if (result.ok) cbRef.current.onSuccess(result);
2165
- else cbRef.current.onError(result.error ?? chunkRY3LOSVZ_cjs.checkoutError("unknown", "Checkout failed"));
2165
+ else cbRef.current.onError(result.error ?? chunk7JLOF6CJ_cjs.checkoutError("unknown", "Checkout failed"));
2166
2166
  };
2167
2167
  const reportFailure = (providerRef) => {
2168
- void chunkFY3TMSRU_cjs.postComplete(ctx, correlationId, providerRef).catch(() => {
2168
+ void chunkVV7TFC64_cjs.postComplete(ctx, correlationId, providerRef).catch(() => {
2169
2169
  });
2170
2170
  };
2171
2171
  let inner = null;
@@ -2216,6 +2216,7 @@ function ConfirmForm({
2216
2216
  const elements = rsj.useElements();
2217
2217
  const [submitting, setSubmitting] = React.useState(false);
2218
2218
  const addedRef = React.useRef(false);
2219
+ const [walletUnavailable, setWalletUnavailable] = React.useState(false);
2219
2220
  const confirm = async () => {
2220
2221
  if (!stripe || !elements || submitting) return;
2221
2222
  onStart();
@@ -2237,13 +2238,18 @@ function ConfirmForm({
2237
2238
  await finish(paymentIntent?.id);
2238
2239
  }
2239
2240
  } catch (e) {
2240
- onError(chunkFY3TMSRU_cjs.toCheckoutError(e));
2241
+ onError(chunkVV7TFC64_cjs.toCheckoutError(e));
2241
2242
  } finally {
2242
2243
  setSubmitting(false);
2243
2244
  }
2244
2245
  };
2245
- if (surface === "express") {
2246
- return React.createElement(rsj.ExpressCheckoutElement, { onConfirm: () => void confirm() });
2246
+ if (surface === "express" && !walletUnavailable) {
2247
+ return React.createElement(rsj.ExpressCheckoutElement, {
2248
+ onConfirm: () => void confirm(),
2249
+ onReady: (event) => {
2250
+ if (!event?.availablePaymentMethods) setWalletUnavailable(true);
2251
+ }
2252
+ });
2247
2253
  }
2248
2254
  return React.createElement(
2249
2255
  "div",