1import { a as __toESM } from "./rolldown-runtime-Cql5ZV07.js"; 2import { l as require_prop_types, p as require_react } from "./vendor-charts-D81iZKCV.js"; 3var RELEASE_TRAIN = "clover"; 4var runtimeVersionToUrlVersion = function runtimeVersionToUrlVersion$1(version) { 5 return version === 3 ? "v3" : version; 6}; 7var ORIGIN = "https://js.stripe.com"; 8var STRIPE_JS_URL = "".concat(ORIGIN, "/").concat(RELEASE_TRAIN, "/stripe.js"); 9var V3_URL_REGEX = /^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/; 10var STRIPE_JS_URL_REGEX = /^https:\/\/js\.stripe\.com\/(v3|[a-z]+)\/stripe\.js(\?.*)?$/; 11var EXISTING_SCRIPT_MESSAGE = "loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used"; 12var isStripeJSURL = function isStripeJSURL$1(url) { 13 return V3_URL_REGEX.test(url) || STRIPE_JS_URL_REGEX.test(url); 14}; 15var findScript = function findScript$1() { 16 var scripts = document.querySelectorAll("script[src^=\"".concat(ORIGIN, "\"]")); 17 for (var i = 0; i < scripts.length; i++) { 18 var script = scripts[i]; 19 if (!isStripeJSURL(script.src)) continue; 20 return script; 21 } 22 return null; 23}; 24var injectScript = function injectScript$1(params) { 25 var queryString = params && !params.advancedFraudSignals ? "?advancedFraudSignals=false" : ""; 26 var script = document.createElement("script"); 27 script.src = "".concat(STRIPE_JS_URL).concat(queryString); 28 var headOrBody = document.head || document.body; 29 if (!headOrBody) throw new Error("Expected document.body not to be null. Stripe.js requires a <body> element."); 30 headOrBody.appendChild(script); 31 return script; 32}; 33var registerWrapper = function registerWrapper$1(stripe, startTime) { 34 if (!stripe || !stripe._registerWrapper) return; 35 stripe._registerWrapper({ 36 name: "stripe-js", 37 version: "8.6.0", 38 startTime 39 }); 40}; 41var stripePromise$1 = null; 42var onErrorListener = null; 43var onLoadListener = null; 44var onError = function onError$1(reject) { 45 return function(cause) { 46 reject(new Error("Failed to load Stripe.js", { cause })); 47 }; 48}; 49var onLoad = function onLoad$1(resolve, reject) { 50 return function() { 51 if (window.Stripe) resolve(window.Stripe); 52 else reject(/* @__PURE__ */ new Error("Stripe.js not available")); 53 }; 54}; 55var loadScript = function loadScript$1(params) { 56 if (stripePromise$1 !== null) return stripePromise$1; 57 stripePromise$1 = new Promise(function(resolve, reject) { 58 if (typeof window === "undefined" || typeof document === "undefined") { 59 resolve(null); 60 return; 61 } 62 if (window.Stripe && params) console.warn(EXISTING_SCRIPT_MESSAGE); 63 if (window.Stripe) { 64 resolve(window.Stripe); 65 return; 66 } 67 try { 68 var script = findScript(); 69 if (script && params) console.warn(EXISTING_SCRIPT_MESSAGE); 70 else if (!script) script = injectScript(params); 71 else if (script && onLoadListener !== null && onErrorListener !== null) { 72 var _script$parentNode; 73 script.removeEventListener("load", onLoadListener); 74 script.removeEventListener("error", onErrorListener); 75 (_script$parentNode = script.parentNode) === null || _script$parentNode === void 0 || _script$parentNode.removeChild(script); 76 script = injectScript(params); 77 } 78 onLoadListener = onLoad(resolve, reject); 79 onErrorListener = onError(reject); 80 script.addEventListener("load", onLoadListener); 81 script.addEventListener("error", onErrorListener); 82 } catch (error) { 83 reject(error); 84 return; 85 } 86 }); 87 return stripePromise$1["catch"](function(error) { 88 stripePromise$1 = null; 89 return Promise.reject(error); 90 }); 91}; 92var initStripe = function initStripe$1(maybeStripe, args, startTime) { 93 if (maybeStripe === null) return null; 94 var isTestKey = args[0].match(/^pk_test/); 95 var version = runtimeVersionToUrlVersion(maybeStripe.version); 96 var expectedVersion = RELEASE_TRAIN; 97 if (isTestKey && version !== expectedVersion) console.warn("Stripe.js@".concat(version, " was loaded on the page, but @stripe/stripe-js@").concat("8.6.0", " expected Stripe.js@").concat(expectedVersion, ". This may result in unexpected behavior. For more information, see https://docs.stripe.com/sdks/stripejs-versioning")); 98 var stripe = maybeStripe.apply(void 0, args); 99 registerWrapper(stripe, startTime); 100 return stripe; 101}; 102var stripePromise; 103var loadCalled = false;
104var getStripePromise = function getStripePromise$1() { 105 if (stripePromise) return stripePromise; 106 stripePromise = loadScript(null)["catch"](function(error) { 107 stripePromise = null; 108 return Promise.reject(error); 109 }); 110 return stripePromise; 111}; 112Promise.resolve().then(function() { 113 return getStripePromise(); 114})["catch"](function(error) { 115 if (!loadCalled) console.warn(error); 116}); 117var loadStripe = function loadStripe$1() { 118 for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key]; 119 loadCalled = true; 120 var startTime = Date.now(); 121 return getStripePromise().then(function(maybeStripe) { 122 return initStripe(maybeStripe, args, startTime); 123 }); 124}; 125var import_react = /* @__PURE__ */ __toESM(require_react(), 1); 126var import_prop_types = /* @__PURE__ */ __toESM(require_prop_types(), 1); 127function ownKeys(object, enumerableOnly) { 128 var keys = Object.keys(object); 129 if (Object.getOwnPropertySymbols) { 130 var symbols = Object.getOwnPropertySymbols(object); 131 if (enumerableOnly) symbols = symbols.filter(function(sym) { 132 return Object.getOwnPropertyDescriptor(object, sym).enumerable; 133 }); 134 keys.push.apply(keys, symbols); 135 } 136 return keys; 137} 138function _objectSpread2(target) { 139 for (var i = 1; i < arguments.length; i++) { 140 var source = arguments[i] != null ? arguments[i] : {}; 141 if (i % 2) ownKeys(Object(source), true).forEach(function(key) { 142 _defineProperty(target, key, source[key]); 143 }); 144 else if (Object.getOwnPropertyDescriptors) Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); 145 else ownKeys(Object(source)).forEach(function(key) { 146 Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); 147 }); 148 } 149 return target; 150} 151function _typeof(obj) { 152 "@babel/helpers - typeof"; 153 if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") _typeof = function(obj$1) { 154 return typeof obj$1; 155 }; 156 else _typeof = function(obj$1) { 157 return obj$1 && typeof Symbol === "function" && obj$1.constructor === Symbol && obj$1 !== Symbol.prototype ? "symbol" : typeof obj$1; 158 }; 159 return _typeof(obj); 160} 161function _defineProperty(obj, key, value) { 162 if (key in obj) Object.defineProperty(obj, key, { 163 value, 164 enumerable: true, 165 configurable: true, 166 writable: true 167 }); 168 else obj[key] = value; 169 return obj; 170} 171function _objectWithoutPropertiesLoose(source, excluded) { 172 if (source == null) return {}; 173 var target = {}; 174 var sourceKeys = Object.keys(source); 175 var key, i; 176 for (i = 0; i < sourceKeys.length; i++) { 177 key = sourceKeys[i]; 178 if (excluded.indexOf(key) >= 0) continue; 179 target[key] = source[key]; 180 } 181 return target; 182} 183function _objectWithoutProperties(source, excluded) { 184 if (source == null) return {}; 185 var target = _objectWithoutPropertiesLoose(source, excluded); 186 var key, i; 187 if (Object.getOwnPropertySymbols) { 188 var sourceSymbolKeys = Object.getOwnPropertySymbols(source); 189 for (i = 0; i < sourceSymbolKeys.length; i++) { 190 key = sourceSymbolKeys[i]; 191 if (excluded.indexOf(key) >= 0) continue; 192 if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; 193 target[key] = source[key]; 194 } 195 } 196 return target; 197} 198function _slicedToArray(arr, i) { 199 return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); 200} 201function _arrayWithHoles(arr) { 202 if (Array.isArray(arr)) return arr; 203} 204function _iterableToArrayLimit(arr, i) { 205 var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]); 206 if (_i == null) return; 207 var _arr = []; 208 var _n = true; 209 var _d = false; 210 var _s, _e; 211 try { 212 for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { 213 _arr.push(_s.value); 214 if (i && _arr.length === i) break; 215 } 216 } catch (err) { 217 _d = true; 218 _e = err; 219 } finally { 220 try { 221 if (!_n && _i["return"] != null) _i["return"](); 222 } finally { 223 if (_d) throw _e; 224 } 225 } 226 return _arr; 227} 228function _unsupportedIterableToArray(o, minLen) { 229 if (!o) return; 230 if (typeof o === "string") return _arrayLikeToArray(o, minLen); 231 var n = Object.prototype.toString.call(o).slice(8, -1); 232 if (n === "Object" && o.constructor) n = o.constructor.name; 233 if (n === "Map" || n === "Set") return Array.from(o); 234 if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); 235} 236function _arrayLikeToArray(arr, len) { 237 if (len == null || len > arr.length) len = arr.length; 238 for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; 239 return arr2; 240} 241function _nonIterableRest() {
242 throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); 243} 244var useAttachEvent = function useAttachEvent$1(element, event, cb) { 245 var cbDefined = !!cb; 246 var cbRef = import_react.useRef(cb); 247 import_react.useEffect(function() { 248 cbRef.current = cb; 249 }, [cb]); 250 import_react.useEffect(function() { 251 if (!cbDefined || !element) return function() {}; 252 var decoratedCb = function decoratedCb$1() { 253 if (cbRef.current) cbRef.current.apply(cbRef, arguments); 254 }; 255 element.on(event, decoratedCb); 256 return function() { 257 element.off(event, decoratedCb); 258 }; 259 }, [ 260 cbDefined, 261 event, 262 element, 263 cbRef 264 ]); 265}; 266var usePrevious = function usePrevious$1(value) { 267 var ref = import_react.useRef(value); 268 import_react.useEffect(function() { 269 ref.current = value; 270 }, [value]); 271 return ref.current; 272}; 273var isUnknownObject = function isUnknownObject$1(raw) { 274 return raw !== null && _typeof(raw) === "object"; 275}; 276var isPromise = function isPromise$1(raw) { 277 return isUnknownObject(raw) && typeof raw.then === "function"; 278}; 279var isStripe = function isStripe$1(raw) { 280 return isUnknownObject(raw) && typeof raw.elements === "function" && typeof raw.createToken === "function" && typeof raw.createPaymentMethod === "function" && typeof raw.confirmCardPayment === "function"; 281}; 282var PLAIN_OBJECT_STR = "[object Object]"; 283var isEqual = function isEqual$1(left, right) { 284 if (!isUnknownObject(left) || !isUnknownObject(right)) return left === right; 285 var leftArray = Array.isArray(left); 286 if (leftArray !== Array.isArray(right)) return false; 287 var leftPlainObject = Object.prototype.toString.call(left) === PLAIN_OBJECT_STR; 288 var rightPlainObject = Object.prototype.toString.call(right) === PLAIN_OBJECT_STR; 289 if (leftPlainObject !== rightPlainObject) return false; 290 if (!leftPlainObject && !leftArray) return left === right; 291 var leftKeys = Object.keys(left); 292 var rightKeys = Object.keys(right); 293 if (leftKeys.length !== rightKeys.length) return false; 294 var keySet = {}; 295 for (var i = 0; i < leftKeys.length; i += 1) keySet[leftKeys[i]] = true; 296 for (var _i = 0; _i < rightKeys.length; _i += 1) keySet[rightKeys[_i]] = true; 297 var allKeys = Object.keys(keySet); 298 if (allKeys.length !== leftKeys.length) return false; 299 var l = left; 300 var r = right; 301 return allKeys.every(function pred(key) { 302 return isEqual$1(l[key], r[key]); 303 }); 304}; 305var extractAllowedOptionsUpdates = function extractAllowedOptionsUpdates$1(options, prevOptions, immutableKeys) { 306 if (!isUnknownObject(options)) return null; 307 return Object.keys(options).reduce(function(newOptions, key) { 308 var isUpdated = !isUnknownObject(prevOptions) || !isEqual(options[key], prevOptions[key]); 309 if (immutableKeys.includes(key)) { 310 if (isUpdated) console.warn("Unsupported prop change: options.".concat(key, " is not a mutable property.")); 311 return newOptions; 312 } 313 if (!isUpdated) return newOptions; 314 return _objectSpread2(_objectSpread2({}, newOptions || {}), {}, _defineProperty({}, key, options[key])); 315 }, null); 316}; 317var INVALID_STRIPE_ERROR$1 = "Invalid prop `stripe` supplied to `Elements`. We recommend using the `loadStripe` utility from `@stripe/stripe-js`. See https://stripe.com/docs/stripe-js/react#elements-props-stripe for details."; 318var validateStripe = function validateStripe$1(maybeStripe) { 319 var errorMsg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : INVALID_STRIPE_ERROR$1; 320 if (maybeStripe === null || isStripe(maybeStripe)) return maybeStripe; 321 throw new Error(errorMsg); 322}; 323var parseStripeProp = function parseStripeProp$1(raw) { 324 var errorMsg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : INVALID_STRIPE_ERROR$1; 325 if (isPromise(raw)) return { 326 tag: "async", 327 stripePromise: Promise.resolve(raw).then(function(result) { 328 return validateStripe(result, errorMsg); 329 }) 330 }; 331 var stripe = validateStripe(raw, errorMsg); 332 if (stripe === null) return { tag: "empty" }; 333 return { 334 tag: "sync", 335 stripe 336 }; 337}; 338var registerWithStripeJs = function registerWithStripeJs$1(stripe) { 339 if (!stripe || !stripe._registerWrapper || !stripe.registerAppInfo) return; 340 stripe._registerWrapper({ 341 name: "react-stripe-js", 342 version: "5.4.1" 343 }); 344 stripe.registerAppInfo({ 345 name: "react-stripe-js", 346 version: "5.4.1", 347 url: "https://stripe.com/docs/stripe-js/react" 348 }); 349}; 350var ElementsContext = /* @__PURE__ */ import_react.createContext(null); 351ElementsContext.displayName = "ElementsContext"; 352var parseElementsContext = function parseElementsContext$1(ctx, useCase) { 353 if (!ctx) throw new Error("Could not find Elements context; You need to wrap the part of your app that ".concat(useCase, " in an <Elements> provider.")); 354 return ctx; 355}; 356var Elements = function Elements$1(_ref) { 357 var rawStripeProp = _ref.stripe, options = _ref.options, children = _ref.children; 358 var parsed = import_react.useMemo(function() { 359 return parseStripeProp(rawStripeProp); 360 }, [rawStripeProp]); 361 var _React$useState = import_react.useState(function() { 362 return { 363 stripe: parsed.tag === "sync" ? parsed.stripe : null, 364 elements: parsed.tag === "sync" ? parsed.stripe.elements(options) : null 365 }; 366 }), _React$useState2 = _slicedToArray(_React$useState, 2), ctx = _React$useState2[0], setContext = _React$useState2[1]; 367 import_react.useEffect(function() { 368 var isMounted = true; 369 var safeSetContext = function safeSetContext$1(stripe) { 370 setContext(function(ctx$1) { 371 if (ctx$1.stripe) return ctx$1; 372 return { 373 stripe, 374 elements: stripe.elements(options) 375 }; 376 }); 377 }; 378 if (parsed.tag === "async" && !ctx.stripe) parsed.stripePromise.then(function(stripe) { 379 if (stripe && isMounted) safeSetContext(stripe); 380 }); 381 else if (parsed.tag === "sync" && !ctx.stripe) safeSetContext(parsed.stripe); 382 return function() { 383 isMounted = false;
384 }; 385 }, [ 386 parsed, 387 ctx, 388 options 389 ]); 390 var prevStripe = usePrevious(rawStripeProp); 391 import_react.useEffect(function() { 392 if (prevStripe !== null && prevStripe !== rawStripeProp) console.warn("Unsupported prop change on Elements: You cannot change the `stripe` prop after setting it."); 393 }, [prevStripe, rawStripeProp]); 394 var prevOptions = usePrevious(options); 395 import_react.useEffect(function() { 396 if (!ctx.elements) return; 397 var updates = extractAllowedOptionsUpdates(options, prevOptions, ["clientSecret", "fonts"]); 398 if (updates) ctx.elements.update(updates); 399 }, [ 400 options, 401 prevOptions, 402 ctx.elements 403 ]); 404 import_react.useEffect(function() { 405 registerWithStripeJs(ctx.stripe); 406 }, [ctx.stripe]); 407 return /* @__PURE__ */ import_react.createElement(ElementsContext.Provider, { value: ctx }, children); 408}; 409Elements.propTypes = { 410 stripe: import_prop_types.default.any, 411 options: import_prop_types.default.object 412}; 413var useElementsContextWithUseCase = function useElementsContextWithUseCase$1(useCaseMessage) { 414 var ctx = import_react.useContext(ElementsContext); 415 return parseElementsContext(ctx, useCaseMessage); 416}; 417var useElements = function useElements$1() { 418 return useElementsContextWithUseCase("calls useElements()").elements; 419}; 420var ElementsConsumer = function ElementsConsumer$1(_ref2) { 421 var children = _ref2.children; 422 var ctx = useElementsContextWithUseCase("mounts <ElementsConsumer>"); 423 return children(ctx); 424}; 425ElementsConsumer.propTypes = { children: import_prop_types.default.func.isRequired }; 426var CheckoutContext = /* @__PURE__ */ import_react.createContext(null); 427CheckoutContext.displayName = "CheckoutContext"; 428import_prop_types.default.any, import_prop_types.default.shape({ 429 clientSecret: import_prop_types.default.oneOfType([import_prop_types.default.string, import_prop_types.default.instanceOf(Promise)]).isRequired, 430 elementsOptions: import_prop_types.default.object 431}).isRequired; 432var useElementsOrCheckoutContextWithUseCase = function useElementsOrCheckoutContextWithUseCase$1(useCaseString) { 433 var checkout = import_react.useContext(CheckoutContext); 434 var elements = import_react.useContext(ElementsContext); 435 if (checkout) if (elements) throw new Error("You cannot wrap the part of your app that ".concat(useCaseString, " in both <CheckoutProvider> and <Elements> providers.")); 436 else return checkout; 437 else return parseElementsContext(elements, useCaseString); 438}; 439var _excluded = ["mode"]; 440var capitalized = function capitalized$1(str) { 441 return str.charAt(0).toUpperCase() + str.slice(1); 442}; 443var createElementComponent = function createElementComponent$1(type, isServer$1) { 444 var displayName = "".concat(capitalized(type), "Element"); 445 var Element = isServer$1 ? function ServerElement(props) { 446 useElementsOrCheckoutContextWithUseCase("mounts <".concat(displayName, ">")); 447 var id = props.id, className = props.className; 448 return /* @__PURE__ */ import_react.createElement("div", { 449 id, 450 className 451 }); 452 } : function ClientElement(_ref) { 453 var id = _ref.id, className = _ref.className, _ref$options = _ref.options, options = _ref$options === void 0 ? {} : _ref$options, onBlur = _ref.onBlur, onFocus = _ref.onFocus, onReady = _ref.onReady, onChange = _ref.onChange, onEscape = _ref.onEscape, onClick = _ref.onClick, onLoadError = _ref.onLoadError, onLoaderStart = _ref.onLoaderStart, onNetworksChange = _ref.onNetworksChange, onConfirm = _ref.onConfirm, onCancel = _ref.onCancel, onShippingAddressChange = _ref.onShippingAddressChange, onShippingRateChange = _ref.onShippingRateChange, onSavedPaymentMethodRemove = _ref.onSavedPaymentMethodRemove, onSavedPaymentMethodUpdate = _ref.onSavedPaymentMethodUpdate; 454 var ctx = useElementsOrCheckoutContextWithUseCase("mounts <".concat(displayName, ">")); 455 var elements = "elements" in ctx ? ctx.elements : null; 456 var checkoutState = "checkoutState" in ctx ? ctx.checkoutState : null; 457 var checkoutSdk = (checkoutState === null || checkoutState === void 0 ? void 0 : checkoutState.type) === "success" || (checkoutState === null || checkoutState === void 0 ? void 0 : checkoutState.type) === "loading" ? checkoutState.sdk : null; 458 var _React$useState = import_react.useState(null), _React$useState2 = _slicedToArray(_React$useState, 2), element = _React$useState2[0], setElement = _React$useState2[1]; 459 var elementRef = import_react.useRef(null);
460 var domNode = import_react.useRef(null); 461 useAttachEvent(element, "blur", onBlur); 462 useAttachEvent(element, "focus", onFocus); 463 useAttachEvent(element, "escape", onEscape); 464 useAttachEvent(element, "click", onClick); 465 useAttachEvent(element, "loaderror", onLoadError); 466 useAttachEvent(element, "loaderstart", onLoaderStart); 467 useAttachEvent(element, "networkschange", onNetworksChange); 468 useAttachEvent(element, "confirm", onConfirm); 469 useAttachEvent(element, "cancel", onCancel); 470 useAttachEvent(element, "shippingaddresschange", onShippingAddressChange); 471 useAttachEvent(element, "shippingratechange", onShippingRateChange); 472 useAttachEvent(element, "savedpaymentmethodremove", onSavedPaymentMethodRemove); 473 useAttachEvent(element, "savedpaymentmethodupdate", onSavedPaymentMethodUpdate); 474 useAttachEvent(element, "change", onChange); 475 var readyCallback; 476 if (onReady) if (type === "expressCheckout") readyCallback = onReady; 477 else readyCallback = function readyCallback$1() { 478 onReady(element); 479 }; 480 useAttachEvent(element, "ready", readyCallback); 481 import_react.useLayoutEffect(function() { 482 if (elementRef.current === null && domNode.current !== null && (elements || checkoutSdk)) { 483 var newElement = null; 484 if (checkoutSdk) switch (type) { 485 case "paymentForm": 486 newElement = checkoutSdk.createPaymentFormElement(); 487 break; 488 case "payment": 489 newElement = checkoutSdk.createPaymentElement(options); 490 break; 491 case "address": 492 if ("mode" in options) { 493 var mode = options.mode, restOptions = _objectWithoutProperties(options, _excluded); 494 if (mode === "shipping") newElement = checkoutSdk.createShippingAddressElement(restOptions); 495 else if (mode === "billing") newElement = checkoutSdk.createBillingAddressElement(restOptions); 496 else throw new Error("Invalid options.mode. mode must be 'billing' or 'shipping'."); 497 } else throw new Error("You must supply options.mode. mode must be 'billing' or 'shipping'."); 498 break; 499 case "expressCheckout": 500 newElement = checkoutSdk.createExpressCheckoutElement(options); 501 break; 502 case "currencySelector": 503 newElement = checkoutSdk.createCurrencySelectorElement(); 504 break; 505 case "taxId": 506 newElement = checkoutSdk.createTaxIdElement(options); 507 break; 508 default: throw new Error("Invalid Element type ".concat(displayName, ". You must use either the <PaymentElement />, <AddressElement options={{mode: 'shipping'}} />, <AddressElement options={{mode: 'billing'}} />, or <ExpressCheckoutElement />.")); 509 } 510 else if (elements) newElement = elements.create(type, options); 511 elementRef.current = newElement; 512 setElement(newElement); 513 if (newElement) newElement.mount(domNode.current); 514 } 515 }, [ 516 elements, 517 checkoutSdk, 518 options 519 ]); 520 var prevOptions = usePrevious(options); 521 import_react.useEffect(function() { 522 if (!elementRef.current) return; 523 var updates = extractAllowedOptionsUpdates(options, prevOptions, ["paymentRequest"]); 524 if (updates && "update" in elementRef.current) elementRef.current.update(updates); 525 }, [options, prevOptions]); 526 import_react.useLayoutEffect(function() { 527 return function() { 528 if (elementRef.current && typeof elementRef.current.destroy === "function") try { 529 elementRef.current.destroy(); 530 elementRef.current = null; 531 } catch (error) {} 532 }; 533 }, []); 534 return /* @__PURE__ */ import_react.createElement("div", { 535 id, 536 className, 537 ref: domNode 538 }); 539 }; 540 Element.propTypes = { 541 id: import_prop_types.default.string, 542 className: import_prop_types.default.string, 543 onChange: import_prop_types.default.func, 544 onBlur: import_prop_types.default.func, 545 onFocus: import_prop_types.default.func, 546 onReady: import_prop_types.default.func, 547 onEscape: import_prop_types.default.func, 548 onClick: import_prop_types.default.func, 549 onLoadError: import_prop_types.default.func, 550 onLoaderStart: import_prop_types.default.func, 551 onNetworksChange: import_prop_types.default.func, 552 onConfirm: import_prop_types.default.func, 553 onCancel: import_prop_types.default.func, 554 onShippingAddressChange: import_prop_types.default.func, 555 onShippingRateChange: import_prop_types.default.func, 556 onSavedPaymentMethodRemove: import_prop_types.default.func, 557 onSavedPaymentMethodUpdate: import_prop_types.default.func, 558 options: import_prop_types.default.object 559 }; 560 Element.displayName = displayName; 561 Element.__elementType = type; 562 return Element; 563}; 564var isServer = typeof window === "undefined"; 565var EmbeddedCheckoutContext = /* @__PURE__ */ import_react.createContext(null); 566EmbeddedCheckoutContext.displayName = "EmbeddedCheckoutProviderContext"; 567var useStripe = function useStripe$1() { 568 return useElementsOrCheckoutContextWithUseCase("calls useStripe()").stripe; 569}; 570createElementComponent("auBankAccount", isServer); 571createElementComponent("card", isServer); 572var CardNumberElement = createElementComponent("cardNumber", isServer); 573var CardExpiryElement = createElementComponent("cardExpiry", isServer); 574var CardCvcElement = createElementComponent("cardCvc", isServer); 575createElementComponent("iban", isServer); 576createElementComponent("payment", isServer); 577createElementComponent("expressCheckout", isServer); 578createElementComponent("paymentRequestButton", isServer); 579createElementComponent("linkAuthentication", isServer); 580createElementComponent("address", isServer); 581createElementComponent("shippingAddress", isServer); 582createElementComponent("paymentMethodMessaging", isServer); 583createElementComponent("taxId", isServer); 584export { useElements as a, Elements as i, CardExpiryElement as n, useStripe as o, CardNumberElement as r, loadStripe as s, CardCvcElement as t };
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.