@finyxpay/ui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/api/client.d.ts +36 -0
  2. package/dist/api/client.d.ts.map +1 -0
  3. package/dist/api/country.d.ts +2 -0
  4. package/dist/api/country.d.ts.map +1 -0
  5. package/dist/api/resolveApiBase.d.ts +3 -0
  6. package/dist/api/resolveApiBase.d.ts.map +1 -0
  7. package/dist/api/resolveElementType.d.ts +6 -0
  8. package/dist/api/resolveElementType.d.ts.map +1 -0
  9. package/dist/api/status.d.ts +4 -0
  10. package/dist/api/status.d.ts.map +1 -0
  11. package/dist/api/walletSupport.d.ts +7 -0
  12. package/dist/api/walletSupport.d.ts.map +1 -0
  13. package/dist/components/core/Checkout.d.ts +16 -0
  14. package/dist/components/core/Checkout.d.ts.map +1 -0
  15. package/dist/components/core/PaymentMethodList.d.ts +9 -0
  16. package/dist/components/core/PaymentMethodList.d.ts.map +1 -0
  17. package/dist/components/core/PaymentResult.d.ts +5 -0
  18. package/dist/components/core/PaymentResult.d.ts.map +1 -0
  19. package/dist/components/core/methodElements.d.ts +42 -0
  20. package/dist/components/core/methodElements.d.ts.map +1 -0
  21. package/dist/components/core/payUi.d.ts +32 -0
  22. package/dist/components/core/payUi.d.ts.map +1 -0
  23. package/dist/components/shared/ThreeDSModal.d.ts +22 -0
  24. package/dist/components/shared/ThreeDSModal.d.ts.map +1 -0
  25. package/dist/components/shared/icons.d.ts +3 -0
  26. package/dist/components/shared/icons.d.ts.map +1 -0
  27. package/dist/components/shared/timer.d.ts +2 -0
  28. package/dist/components/shared/timer.d.ts.map +1 -0
  29. package/dist/components/shared/ui.d.ts +9 -0
  30. package/dist/components/shared/ui.d.ts.map +1 -0
  31. package/dist/core/BaseElement.d.ts +27 -0
  32. package/dist/core/BaseElement.d.ts.map +1 -0
  33. package/dist/core/Finyx.d.ts +18 -0
  34. package/dist/core/Finyx.d.ts.map +1 -0
  35. package/dist/core/dom.d.ts +7 -0
  36. package/dist/core/dom.d.ts.map +1 -0
  37. package/dist/core/instantiate.d.ts +4 -0
  38. package/dist/core/instantiate.d.ts.map +1 -0
  39. package/dist/core/theme.d.ts +3 -0
  40. package/dist/core/theme.d.ts.map +1 -0
  41. package/dist/finyx.css +1 -0
  42. package/dist/finyx.umd.cjs +142 -0
  43. package/dist/finyx.umd.cjs.map +1 -0
  44. package/dist/index.d.ts +21 -0
  45. package/dist/index.d.ts.map +1 -0
  46. package/dist/index.js +9841 -0
  47. package/dist/index.js.map +1 -0
  48. package/dist/providers/adyen.d.ts +16 -0
  49. package/dist/providers/adyen.d.ts.map +1 -0
  50. package/dist/providers/airwallex.d.ts +27 -0
  51. package/dist/providers/airwallex.d.ts.map +1 -0
  52. package/dist/types.d.ts +174 -0
  53. package/dist/types.d.ts.map +1 -0
  54. package/package.json +50 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../src/api/client.ts","../src/api/resolveApiBase.ts","../src/core/theme.ts","../src/core/dom.ts","../src/core/BaseElement.ts","../src/api/walletSupport.ts","../src/assets/methods/card.svg?raw","../src/assets/methods/applepay.svg?raw","../src/assets/methods/googlepay.svg?raw","../src/assets/methods/alipaycn.svg?raw","../src/assets/methods/alipayhk.svg?raw","../src/assets/methods/alipay.svg?raw","../src/assets/methods/wechatpay.svg?raw","../src/assets/methods/paynow.svg?raw","../src/assets/brands/visa.svg?raw","../src/assets/brands/mastercard.svg?raw","../src/assets/brands/amex.svg?raw","../src/assets/brands/jcb.svg?raw","../src/assets/brands/cup.svg?raw","../src/components/shared/icons.ts","../src/assets/wordmark.svg?raw","../src/components/shared/ui.ts","../../../node_modules/.pnpm/qr@0.5.5/node_modules/qr/index.js","../src/api/status.ts","../src/api/resolveElementType.ts","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/external/preact/dist/preact.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/external/preact/hooks/dist/hooks.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/SFP/SFPUtils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/AbstractCSF.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/commonUtils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/getCardGroupTypes.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/utilities/logger.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleConfig.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/extensions/configureCallbacks.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/callbackUtils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/hasOwnProperty.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/processErrors.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleValidation.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageToIframe.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/iframes/getIframeContentWin.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleEncryption.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/utilities/dom.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/cardType.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/securedField/utils/createIframe.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/listenerUtils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/iframes/postMessageValidation.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/utilities/commonUtils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/securedField/AbstractSecuredField.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/utilities/addContextTranslations.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/securedField/utils/processAriaConfig.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/securedField/utils/processPlaceholders.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/uuid.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Analytics/events/AbstractAnalyticsEvent.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Analytics/events/AnalyticsErrorEvent.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/securedField/SecuredField.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/AdyenCheckoutError.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/textUtils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/extensions/createSecuredFields.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/userAgent.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleIOSTouchEvents.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/tabbing/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/tabbing/tabScenarioCreditCard.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/tabbing/tabScenarioGiftCard.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/tabbing/tabScenarioKCP.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleTab.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/extensions/handleBrandFromBinLookup.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/partials/setFocusOnFrame.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/partials/postMessageToAllIframes.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/partials/processBrand.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/partials/processAutoComplete.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/partials/handleFocus.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/partials/handleIframeConfigFeedback.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/partials/isConfigured.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/partials/validateForm.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/partials/handleBinValue.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/utils/destroySecuredFields.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/CSF.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/lib/CSF/initCSF.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProviderHandlers.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/SFP/defaultProps.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/types.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/layouts.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Context/CoreProvider.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Context/useImage.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/tx-variants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/SFP/SecuredFieldsProvider.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/defaultProps.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SocialSecurityNumberBrazil/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SocialSecurityNumberBrazil/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SocialSecurityNumberBrazil/validate.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/validator-utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/validate.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/binLookup/createCardVariantSwitcher.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/binLookup/extensions.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/Validator/ValidationRuleResult.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/Validator/Validator.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/useForm/reducer.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/useForm/useForm.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/Specifications.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/_virtual/_commonjsHelpers.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/_virtual/index2.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/external/classnames/index.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/_virtual/index.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Spinner/Spinner.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/SRPanelContext.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/useSRPanelContext.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/useA11yReporter.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/useLoadingA11yReporter.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/LoadingWrapper/LoadingWrapper.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/CVCHint.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Img/Img.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Icon/Icon.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/idGenerator.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Icon/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/Field/Field.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/DataSfSpan.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/FieldLabelAlternative.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/CVC.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/InputBase.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/InputText.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/Fieldset/Fieldset.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/StoredCardFields.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/RadioGroup/RadioGroup.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Tag/Tag.module.scss.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Tag/types.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Tag/Tag.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Tag/TagList.module.scss.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Tag/TagList.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/Select/components/SelectButton.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/Select/components/SelectListItem.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/Select/components/SelectList.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/Select/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Button/stopPropagationForActionKeys.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/Select/Select.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Context/AmountProvider.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/Installments/Installments.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/isValidURL.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/language/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/language/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Link/Link.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/DisclaimerMessage/DisclaimerMessage.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/StoredCardFieldsWrapper.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/BrandImage/BrandImage.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/BrandIcon.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/DualBrandSelector.module.scss.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/DualBrandSelector.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/CardNumber.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/ExpirationDate.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/BrandIcons/BrandIcons.module.scss.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/BrandIcons/BrandIcons.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/AvailableBrands/AvailableBrands.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/CardFields.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/InputTelephone.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/KCPAuthentication.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/Checkbox/Checkbox.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/StoreDetails/StoreDetails.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/components/ReadOnlyAddress.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/validate.formats.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/validate.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/config.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/http.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/get-dataset.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/components/StateField.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/components/CountryField.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/components/FieldContainer.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/debounce.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/components/AddressSearch.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Address/Address.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/CardHolderName.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/components/CardFieldsWrapper.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/windowScrollTo.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/handlers.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/arrayUtils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormInstruction/FormInstruction.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/hookUtils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/useSRPanelForCardInputErrors.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Toggle/Toggle.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/Fastlane/utils/mobile-number-formatter.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/Fastlane/USOnlyPhoneInput.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Modal/useTrapFocus.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Modal/useModal.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Modal/Modal.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/Button/Button.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/Fastlane/InfoModal.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/Fastlane/InfoButton.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/Fastlane/utils/validate-configuration.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Analytics/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/Formatters/formatters.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Analytics/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Analytics/events/AnalyticsInfoEvent.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/Fastlane/FastlaneSignup.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/CardInput/CardInput.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/browserInfo.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/SecuredFields/binLookup/triggerBinLookUp.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/sdks/config.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/sdks/SrciError.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/Script.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/sdks/AbstractSrcInitiator.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/sdks/VisaSdk.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/sdks/MastercardSdk.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/promise-util.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/sdks/SrcSdkLoader.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/sdks/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/models/ShopperCard.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/errors/TimeoutError.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/execute-with-timeout.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/ClickToPayService.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/services/create-clicktopay-service.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/context/ClickToPayContext.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/context/ClickToPayProvider.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/context/useClickToPayContext.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/validate.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPResendOtpLink.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/setFocus.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/useForm/useErrorFocus.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/useForm/useFormWithA11y.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/getErrorMessage.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePasswordInput/CtPOneTimePasswordInput.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPBrand/CtPBrand.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfoModal/CtPInfoModal.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPInfo/CtPInfo.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPSection/CtPLogoutLink.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPSection/CtPSection.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/isScreenSmall.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPSaveCookiesCheckbox/CtPSaveCookiesCheckbox.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPOneTimePassword/CtPOneTimePassword.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPCards/CtPSingleCard/CtPSingleCard.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/PayButton/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/PayButton/components/SecondaryButtonLabel.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/constants/currency-decimals.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/constants/currency-minor-units.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/amount-util.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/PayButton/PayButton.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/isMobile.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCardsList/CtPCardsList.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/IFrame/Iframe.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPCards/CtPCards.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPLoader/CtPLoader.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPLogin/validate.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/FormFields/InputEmail.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPLogin/CtPLoginInput.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/components/CtPLogin/CtPLogin.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ClickToPay/ClickToPayComponent.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ContentSeparator/ContentSeparator.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/ClickToPayHolder.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/components/ClickToPayWrapper.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/base64.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/createSdkData.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/components-name-map.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/BaseElement/BaseElement.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/UIElement/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Analytics/events/AnalyticsLogEvent.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/CancelError.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/SRPanelProvider.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/UIElement/UIElement.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Card/Card.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ThreeDS2/components/Form/ThreeDS2Form.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/get-process-message-handler.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ThreeDS2/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/getOrigin.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ThreeDS2/components/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/promiseTimeout.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ThreeDS2/components/Challenge/DoChallenge3DS2.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ThreeDS2/components/Challenge/PrepareChallenge3DS2.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ThreeDS2/ThreeDS2Challenge.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ThreeDS2/components/DeviceFingerprint/DoFingerprint3DS2.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ThreeDS2/components/DeviceFingerprint/PrepareFingerprint3DS2.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/sessions/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ThreeDS2/callSubmit3DS2Fingerprint.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ThreeDS2/ThreeDS2DeviceFingerprint.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/RedirectButton/RedirectButton.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ApplePay/components/ApplePayButton.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ApplePay/services/ApplePayService.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ApplePay/defaultProps.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ApplePay/utils/payment-request.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ApplePay/utils/resolve-supported-version.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ApplePay/utils/format-applepay-contact-to-adyen-format.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ApplePay/utils/map-adyen-brands-to-applepay-brands.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ApplePay/services/ApplePaySdkLoader.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/detectInIframe.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/ApplePay/ApplePay.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/GooglePay/config.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/GooglePay/requests.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/GooglePay/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/GooglePay/GooglePayService.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/GooglePay/components/GooglePayButton.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/GooglePay/defaultProps.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/GooglePay/utils/map-adyen-brands-to-googlepay-brands.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/GooglePay/GooglePay.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/detectInIframeInSameOrigin.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Redirect/components/RedirectShopper/RedirectShopper.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Redirect/Redirect.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Environment/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Environment/Environment.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Donation/components/CampaignInfo.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Donation/components/CampaignContent.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/internal/ButtonGroup/ButtonGroup.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Donation/components/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Donation/components/FixedAmounts.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Donation/components/Roundup.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Donation/components/DonationComponent.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Donation/DonationCampaignService.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/components/Donation/Donation.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/utils/Storage.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Analytics/Analytics.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Analytics/AnalyticsEventQueue.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Analytics/AnalyticsService.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/packages/server/translations/en-US.json.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/language/Language.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/RiskModule/constants.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/RiskModule/components/DeviceFingerprint/GetDeviceFingerprint.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/RiskModule/components/DeviceFingerprint/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/RiskModule/components/DeviceFingerprint/DeviceFingerprint.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/RiskModule/RiskModule.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/ProcessResponse/PaymentMethods/filters.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/ProcessResponse/PaymentMethods/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/ProcessResponse/PaymentMethods/PaymentMethods.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/ProcessResponse/PaymentAction/actionTypes.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/ProcessResponse/PaymentAction/PaymentAction.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/sessions/make-payment.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/sessions/submit-details.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/sessions/fetch-donation-campaigns.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/sessions/make-donation.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/sessions/setup-session.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/sessions/check-balance.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/sessions/create-order.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/CheckoutSession/utils.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Services/sessions/cancel-order.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/CheckoutSession/CheckoutSession.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Context/Resources.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/SRMessages.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/Errors/SRPanel.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/core.registry.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/core.defaultProps.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/language/LanguageService.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/core.js","../../../node_modules/.pnpm/@adyen+adyen-web@6.44.0/node_modules/@adyen/adyen-web/dist/es/core/AdyenCheckout.js","../src/api/country.ts","../src/components/shared/ThreeDSModal.ts","../src/providers/adyen.ts","../../../node_modules/.pnpm/@airwallex+airtracker@3.2.0/node_modules/@airwallex/airtracker/lib/index.mjs","../../../node_modules/.pnpm/@airwallex+components-sdk@1.35.1/node_modules/@airwallex/components-sdk/lib/index.mjs","../src/providers/airwallex.ts","../src/components/shared/timer.ts","../src/components/core/payUi.ts","../src/components/core/Checkout.ts","../src/components/core/PaymentMethodList.ts","../src/components/core/methodElements.ts","../src/components/core/PaymentResult.ts","../src/core/instantiate.ts","../src/core/Finyx.ts","../src/index.ts"],"sourcesContent":["import type {\n CheckoutItem,\n CheckoutPaymentResponse,\n ConfirmPaymentRequest,\n PaymentInfoResponse,\n PaymentMethod,\n} from '../types';\n\nconst methodsCache = new Map<string, PaymentMethod[]>();\nconst methodsInflight = new Map<string, Promise<PaymentMethod[]>>();\n\nexport function _resetPaymentMethodsCache() {\n methodsCache.clear();\n methodsInflight.clear();\n}\n\nexport class FinyxClient {\n constructor(\n private readonly apiKey: string,\n private readonly apiBase: string,\n ) {}\n\n private headers(): HeadersInit {\n return {\n 'Content-Type': 'application/json',\n 'x-api-key': this.apiKey,\n };\n }\n\n private methodsKey(): string {\n return `${this.apiBase}\\0${this.apiKey}`;\n }\n\n async getPaymentMethods(): Promise<PaymentMethod[]> {\n const key = this.methodsKey();\n const cached = methodsCache.get(key);\n if (cached) return cached;\n const pending = methodsInflight.get(key);\n if (pending) return pending;\n\n const request = this.fetchPaymentMethods()\n .then((methods) => {\n methodsCache.set(key, methods);\n return methods;\n })\n .finally(() => {\n methodsInflight.delete(key);\n });\n methodsInflight.set(key, request);\n return request;\n }\n\n private async fetchPaymentMethods(): Promise<PaymentMethod[]> {\n const res = await fetch(`${this.apiBase}/api/v4/payment-methods`, {\n headers: this.headers(),\n });\n const body = await res.json().catch(() => null);\n if (!res.ok) {\n throw new Error(messageFromBody(body) || `Failed to load payment methods (${res.status})`);\n }\n if (Array.isArray(body)) return body as PaymentMethod[];\n if (Array.isArray(body?.data)) return body.data as PaymentMethod[];\n return [];\n }\n\n async createPayment(payload: {\n amount: number;\n currency: string;\n orderId: string;\n paymentMethod: PaymentMethod;\n items: CheckoutItem[];\n returnUrl: string;\n autoCapture?: boolean;\n metadata?: Record<string, string>;\n }): Promise<{ ok: true; data: CheckoutPaymentResponse } | { ok: false; message: string }> {\n try {\n const res = await fetch(`${this.apiBase}/api/v4/payments`, {\n method: 'POST',\n headers: this.headers(),\n body: JSON.stringify({\n ...payload,\n iframe3ds: true,\n autoCapture: payload.autoCapture ?? true,\n metadata: payload.metadata ?? { source: 'finyx-js', version: '0.1.0' },\n }),\n });\n const body = await res.json().catch(() => null);\n if (!res.ok) {\n return { ok: false, message: messageFromBody(body) || 'Checkout failed' };\n }\n return { ok: true, data: body as CheckoutPaymentResponse };\n } catch (error) {\n return {\n ok: false,\n message: error instanceof Error ? error.message : 'Checkout failed',\n };\n }\n }\n\n async confirmPayment(\n paymentId: string,\n payload: ConfirmPaymentRequest,\n ): Promise<{ ok: true; data: CheckoutPaymentResponse } | { ok: false; message: string }> {\n try {\n const res = await fetch(`${this.apiBase}/api/v4/payments/${paymentId}/confirm`, {\n method: 'POST',\n headers: this.headers(),\n body: JSON.stringify(payload),\n });\n const body = await res.json().catch(() => null);\n if (!res.ok) {\n return { ok: false, message: messageFromBody(body) || 'Confirm failed' };\n }\n return { ok: true, data: body as CheckoutPaymentResponse };\n } catch (error) {\n return {\n ok: false,\n message: error instanceof Error ? error.message : 'Confirm failed',\n };\n }\n }\n\n async getPayment(paymentId: string): Promise<PaymentInfoResponse | null> {\n try {\n const res = await fetch(`${this.apiBase}/api/v4/payments/${paymentId}`, {\n headers: this.headers(),\n });\n if (!res.ok) return null;\n return (await res.json()) as PaymentInfoResponse;\n } catch {\n return null;\n }\n }\n}\n\nfunction messageFromBody(body: unknown): string | null {\n if (!body || typeof body !== 'object') return null;\n const record = body as { message?: unknown; error?: unknown };\n if (typeof record.message === 'string' && record.message.trim()) return record.message;\n if (typeof record.error === 'string' && record.error.trim()) return record.error;\n return null;\n}\n","const API_BASE_BY_PREFIX: Record<string, string> = {\n dev: 'http://localhost:32022',\n test: 'https://awx-api-pay-demo.koomi.app',\n playground: 'https://awx-api-pay-demo.koomi.app',\n sandbox: 'https://api-sandbox.koomipay.com',\n live: 'https://api.koomipay.com',\n};\n\nexport function resolveApiBase(apiKey: string, apiBase?: string): string {\n const custom = apiBase?.trim();\n if (custom) return custom.replace(/\\/$/, '');\n\n const [mode] = apiKey.split('.');\n const resolved = mode ? API_BASE_BY_PREFIX[mode] : undefined;\n if (!resolved) {\n throw new Error(\n '[@finyxpay/ui] Invalid API Key. Expected a prefix of dev, test, playground, sandbox, or live — or pass apiBase.',\n );\n }\n return resolved;\n}\n\nexport function resolveAirwallexEnv(apiBase: string): 'demo' | 'prod' {\n try {\n const host = new URL(apiBase).hostname;\n if (host === 'api.koomipay.com') return 'prod';\n } catch {\n /* ignore */\n }\n return 'demo';\n}\n","import type { Appearance } from '../types';\n\nconst VAR_MAP: Record<string, string> = {\n colorPrimary: '--fy-color-primary',\n colorBackground: '--fy-color-bg',\n colorText: '--fy-color-text',\n colorMuted: '--fy-color-muted',\n colorDanger: '--fy-color-danger',\n borderRadius: '--fy-radius',\n fontFamily: '--fy-font',\n};\n\nexport function applyAppearance(root: HTMLElement, appearance?: Appearance) {\n const theme = appearance?.theme ?? 'default';\n root.dataset.fyTheme = theme;\n const vars = appearance?.variables;\n if (!vars) return;\n for (const [key, value] of Object.entries(vars)) {\n const cssVar = VAR_MAP[key];\n if (cssVar && value) root.style.setProperty(cssVar, value);\n }\n}\n","export function cn(...parts: Array<string | false | null | undefined>): string {\n return parts.filter(Boolean).join(' ');\n}\n\nexport function el<K extends keyof HTMLElementTagNameMap>(\n tag: K,\n attrs: Record<string, string | number | boolean | undefined> = {},\n children: Array<Node | string | null | undefined> = [],\n): HTMLElementTagNameMap[K] {\n const node = document.createElement(tag);\n for (const [key, value] of Object.entries(attrs)) {\n if (value === undefined || value === false) continue;\n if (key === 'class') {\n node.className = String(value);\n } else if (key === 'text') {\n node.textContent = String(value);\n } else if (value === true) {\n node.setAttribute(key, '');\n } else {\n node.setAttribute(key, String(value));\n }\n }\n for (const child of children) {\n if (!child) continue;\n node.append(typeof child === 'string' ? document.createTextNode(child) : child);\n }\n return node;\n}\n\nexport function clear(node: HTMLElement) {\n while (node.firstChild) node.removeChild(node.firstChild);\n}\n\nexport function formatMoney(amount: number, currency: string): string {\n try {\n return new Intl.NumberFormat('en-SG', { style: 'currency', currency }).format(amount);\n } catch {\n return `${currency} ${amount.toFixed(2)}`;\n }\n}\n\nexport function parseSafeHttpUrl(url: string | undefined): string | undefined {\n if (!url) return undefined;\n try {\n const parsed = new URL(url);\n if (parsed.protocol === 'http:' || parsed.protocol === 'https:') return parsed.href;\n } catch {\n /* invalid */\n }\n return undefined;\n}\n\nexport function uid(prefix = 'fy'): string {\n return `${prefix}-${Math.random().toString(36).slice(2, 10)}`;\n}\n","import type {\n Appearance,\n ElementEventHandler,\n ElementEventMap,\n ElementEventType,\n ElementOptionsMap,\n ElementType,\n FinyxElement,\n} from '../types';\nimport { applyAppearance } from './theme';\nimport { clear } from './dom';\n\nexport interface ElementContext {\n apiKey: string;\n apiBase: string;\n locale: string;\n appearance: Appearance;\n}\n\nexport abstract class BaseElement<T extends ElementType> implements FinyxElement<T> {\n readonly type: T;\n protected container: HTMLElement | null = null;\n protected root: HTMLElement | null = null;\n protected options: ElementOptionsMap[T];\n protected readonly ctx: ElementContext;\n private listeners = new Map<ElementEventType, Set<ElementEventHandler<ElementEventType>>>();\n\n constructor(type: T, options: ElementOptionsMap[T], ctx: ElementContext) {\n this.type = type;\n this.options = { ...options };\n this.ctx = ctx;\n }\n\n mount(container: string | HTMLElement): this {\n if (this.container) {\n console.warn(`[@finyxpay/ui] Element \"${this.type}\" is already mounted.`);\n return this;\n }\n const el =\n typeof container === 'string'\n ? document.querySelector<HTMLElement>(container)\n : container;\n if (!el) {\n throw new Error(`[@finyxpay/ui] Cannot mount \"${this.type}\": container not found.`);\n }\n this.container = el;\n this.root = document.createElement('div');\n this.root.className = 'fy';\n applyAppearance(this.root, this.ctx.appearance);\n el.appendChild(this.root);\n this.render();\n this.emit('ready', undefined as ElementEventMap['ready']);\n return this;\n }\n\n unmount(): this {\n if (!this.container || !this.root) return this;\n this.onUnmount();\n this.container.removeChild(this.root);\n this.root = null;\n this.container = null;\n return this;\n }\n\n destroy(): void {\n this.unmount();\n this.listeners.clear();\n }\n\n update(options: Partial<ElementOptionsMap[T]>): this {\n this.options = { ...this.options, ...options };\n if (this.root) this.render();\n return this;\n }\n\n on<E extends ElementEventType>(event: E, handler: ElementEventHandler<E>): this {\n if (!this.listeners.has(event)) this.listeners.set(event, new Set());\n this.listeners.get(event)!.add(handler as ElementEventHandler<ElementEventType>);\n return this;\n }\n\n off<E extends ElementEventType>(event: E, handler: ElementEventHandler<E>): this {\n this.listeners.get(event)?.delete(handler as ElementEventHandler<ElementEventType>);\n return this;\n }\n\n protected emit<E extends ElementEventType>(event: E, data: ElementEventMap[E]): void {\n this.listeners.get(event)?.forEach((handler) => {\n (handler as ElementEventHandler<E>)(data);\n });\n }\n\n protected get showWordmark(): boolean {\n return this.ctx.appearance.showWordmark !== false;\n }\n\n protected abstract render(): void;\n\n protected onUnmount(): void {\n if (this.root) clear(this.root);\n }\n}\n","function isIosDevice(): boolean {\n if (typeof navigator === 'undefined') return false;\n const ua = navigator.userAgent;\n const isIpadOs = navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1;\n return /iPad|iPhone|iPod/.test(ua) || isIpadOs;\n}\n\nexport function isApplePaySupported(): boolean {\n if (typeof window === 'undefined') return false;\n if (typeof ApplePaySession === 'undefined') return false;\n try {\n return ApplePaySession.canMakePayments() && ApplePaySession.supportsVersion(4);\n } catch {\n return false;\n }\n}\n\nexport function isGooglePaySupported(): boolean {\n if (typeof window === 'undefined') return false;\n if (isIosDevice()) return false;\n if (!window.isSecureContext) return false;\n return typeof window.PaymentRequest === 'function';\n}\n\nexport function isPaymentMethodSupportedInBrowser(type: string): boolean {\n if (type === 'applepay') return isApplePaySupported();\n if (type === 'googlepay') return isGooglePaySupported();\n return true;\n}\n\nexport function filterPaymentMethodsByBrowserSupport<T extends { type: string }>(\n methods: T[],\n): T[] {\n return methods.filter((method) => isPaymentMethodSupportedInBrowser(method.type));\n}\n","export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 24 24\\\" role=\\\"img\\\" aria-label=\\\"Card\\\">\\n <rect x=\\\"1\\\" y=\\\"4\\\" width=\\\"22\\\" height=\\\"16\\\" rx=\\\"2\\\" fill=\\\"none\\\" stroke=\\\"currentColor\\\" stroke-width=\\\"1.5\\\"/>\\n <rect x=\\\"1\\\" y=\\\"8\\\" width=\\\"22\\\" height=\\\"3\\\" fill=\\\"currentColor\\\"/>\\n <rect x=\\\"3\\\" y=\\\"14\\\" width=\\\"6\\\" height=\\\"1.5\\\" rx=\\\"0.5\\\" fill=\\\"currentColor\\\" opacity=\\\"0.6\\\"/>\\n</svg>\\n\"","export default \"<svg width=\\\"70\\\" height=\\\"48\\\" viewBox=\\\"0 0 70 48\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n<g clip-path=\\\"url(#clip0_2881_6359)\\\">\\n<path d=\\\"M63.729 2H6.2686C6.02929 2 5.78955 2 5.55066 2.0014C5.34873 2.00283 5.14726 2.00507 4.9458 2.01057C4.50641 2.02246 4.06326 2.04838 3.62938 2.12636C3.18855 2.20569 2.77835 2.3351 2.37817 2.53885C1.98475 2.73892 1.62457 3.0006 1.31244 3.31287C1.00017 3.62513 0.738486 3.98472 0.538458 4.37856C0.334667 4.77874 0.205177 5.18907 0.126392 5.63023C0.0479923 6.06425 0.0218957 6.50731 0.0100547 6.94623C0.00464166 7.1477 0.00231999 7.34916 0.00100479 7.55059C-0.000390752 7.78998 7.4429e-05 8.02921 7.4429e-05 8.26904V40.5432C7.4429e-05 40.7831 -0.000390752 41.0219 0.00100479 41.2617C0.00231999 41.4632 0.00464166 41.6646 0.0100547 41.8661C0.0218957 42.3046 0.0479923 42.7477 0.126392 43.1816C0.205177 43.6229 0.334667 44.0331 0.538458 44.4333C0.738486 44.8271 1.00017 45.1872 1.31244 45.499C1.62457 45.8117 1.98475 46.0734 2.37817 46.273C2.77835 46.4773 3.18855 46.6067 3.62938 46.686C4.06326 46.7635 4.50641 46.7899 4.9458 46.8017C5.14726 46.8063 5.34873 46.809 5.55066 46.8099C5.78955 46.8118 6.02929 46.8118 6.2686 46.8118H63.729C63.9679 46.8118 64.2076 46.8118 64.4465 46.8099C64.648 46.809 64.8494 46.8063 65.0518 46.8017C65.4903 46.7899 65.9333 46.7635 66.3683 46.686C66.8085 46.6067 67.2188 46.4773 67.619 46.273C68.0129 46.0734 68.372 45.8117 68.6848 45.499C68.9965 45.1872 69.2582 44.8271 69.4587 44.4333C69.663 44.0331 69.7924 43.6229 69.8708 43.1816C69.9492 42.7477 69.9747 42.3046 69.9865 41.8661C69.992 41.6646 69.9948 41.4632 69.9957 41.2617C69.9975 41.0219 69.9975 40.7831 69.9975 40.5432V8.26904C69.9975 8.02921 69.9975 7.78998 69.9957 7.55059C69.9948 7.34916 69.992 7.1477 69.9865 6.94623C69.9747 6.50731 69.9492 6.06425 69.8708 5.63023C69.7924 5.18907 69.663 4.77874 69.4587 4.37856C69.2582 3.98472 68.9965 3.62513 68.6848 3.31287C68.372 3.0006 68.0129 2.73892 67.619 2.53885C67.2188 2.3351 66.8085 2.20569 66.3683 2.12636C65.9333 2.04838 65.4903 2.02246 65.0518 2.01057C64.8494 2.00507 64.648 2.00283 64.4465 2.0014C64.2076 2 63.9679 2 63.729 2Z\\\" fill=\\\"black\\\"/>\\n<path d=\\\"M63.7295 3.4931L64.4364 3.49446C64.6279 3.49581 64.8194 3.49788 65.0119 3.50313C65.3469 3.51218 65.7387 3.53032 66.1039 3.59578C66.4213 3.65296 66.6876 3.7399 66.9431 3.86998C67.1953 3.99816 67.4265 4.16614 67.6283 4.36764C67.8308 4.57051 67.999 4.802 68.1289 5.05704C68.2582 5.31057 68.3446 5.57555 68.4015 5.89534C68.4668 6.25658 68.4848 6.64944 68.494 6.98644C68.4992 7.17666 68.5017 7.36688 68.5026 7.56162C68.5044 7.79713 68.5044 8.03251 68.5044 8.26848V40.5427C68.5044 40.7787 68.5044 41.0136 68.5026 41.2542C68.5017 41.4443 68.4992 41.6345 68.494 41.8251C68.4848 42.1616 68.4668 42.5542 68.4007 42.9198C68.3446 43.2351 68.2583 43.5002 68.1282 43.755C67.9987 44.0094 67.8308 44.2406 67.6291 44.4422C67.4262 44.6452 67.1958 44.8127 66.9406 44.942C66.687 45.0715 66.4212 45.1583 66.1068 45.2149C65.7342 45.2813 65.326 45.2996 65.0186 45.3079C64.8251 45.3123 64.6326 45.3149 64.4354 45.3158C64.2004 45.3176 63.9646 45.3176 63.7295 45.3176H6.26912C6.26599 45.3176 6.26294 45.3176 6.25977 45.3176C6.02744 45.3176 5.79463 45.3176 5.55807 45.3158C5.36519 45.3149 5.17273 45.3123 4.98666 45.3081C4.67219 45.2996 4.26372 45.2814 3.89416 45.2153C3.57712 45.1583 3.31133 45.0715 3.05438 44.9403C2.80153 44.8121 2.57135 44.6448 2.36832 44.4414C2.16685 44.2403 1.99943 44.0098 1.86998 43.755C1.74041 43.5005 1.65372 43.2346 1.59672 42.9155C1.53082 42.5507 1.51272 42.1596 1.50368 41.8254C1.49852 41.634 1.49636 41.4427 1.49513 41.2525L1.4942 40.6909L1.49424 40.5427V8.26848L1.4942 8.12022L1.49509 7.55984C1.49636 7.36849 1.49852 7.17717 1.50368 6.98598C1.51272 6.65143 1.53082 6.26017 1.59726 5.89234C1.65376 5.57606 1.74041 5.31023 1.87066 5.05442C1.99909 4.80157 2.16681 4.57076 2.36934 4.36828C2.57106 4.16647 2.802 3.99871 3.05645 3.86931C3.31065 3.73986 3.57695 3.65296 3.89399 3.59591C4.25928 3.53028 4.65135 3.51218 4.98712 3.50308C5.17852 3.49788 5.36992 3.49581 5.55989 3.4945L6.26912 3.4931H63.7295Z\\\" fill=\\\"white\\\"/>\\n<path d=\\\"M19.109 17.0964C19.7084 16.3467 20.1151 15.3402 20.0078 14.3116C19.1305 14.3552 18.0598 14.8904 17.44 15.6406C16.8834 16.2831 16.3908 17.3318 16.5192 18.3172C17.5041 18.4027 18.4881 17.825 19.109 17.0964Z\\\" fill=\\\"black\\\"/>\\n<path d=\\\"M19.9965 18.5089C18.5662 18.4237 17.3502 19.3206 16.6671 19.3206C15.9837 19.3206 14.9378 18.5518 13.8065 18.5725C12.3341 18.5942 10.9679 19.4267 10.2207 20.7508C8.68387 23.3996 9.81514 27.3287 11.3096 29.486C12.0354 30.5533 12.9101 31.7285 14.0626 31.6863C15.1515 31.6436 15.5783 30.9812 16.9019 30.9812C18.2246 30.9812 18.609 31.6863 19.7617 31.6649C20.9571 31.6436 21.7044 30.5971 22.4302 29.5288C23.2628 28.3121 23.6036 27.1373 23.625 27.0728C23.6036 27.0515 21.32 26.1754 21.2988 23.5486C21.2773 21.3492 23.0917 20.303 23.1771 20.2381C22.1525 18.7227 20.5515 18.5518 19.9965 18.5089Z\\\" fill=\\\"black\\\"/>\\n<path d=\\\"M32.4502 15.5333C35.5589 15.5333 37.7235 17.6761 37.7235 20.7959C37.7235 23.9268 35.5143 26.0808 32.3722 26.0808H28.9304V31.5544H26.4436V15.5333H32.4502V15.5333ZM28.9304 23.9934H31.7837C33.9488 23.9934 35.1811 22.8278 35.1811 20.807C35.1811 18.7865 33.9488 17.6318 31.7949 17.6318H28.9304V23.9934Z\\\" fill=\\\"black\\\"/>\\n<path d=\\\"M38.373 28.2342C38.373 26.1912 39.9385 24.9367 42.7143 24.7812L45.9116 24.5925V23.6933C45.9116 22.3942 45.0345 21.6171 43.5692 21.6171C42.1811 21.6171 41.315 22.2831 41.1043 23.3269H38.8394C38.9726 21.2172 40.7711 19.6629 43.6579 19.6629C46.489 19.6629 48.2986 21.1618 48.2986 23.5044V31.5538H46.0003V29.6331H45.9451C45.2679 30.9321 43.7911 31.7536 42.259 31.7536C39.9719 31.7536 38.373 30.3325 38.373 28.2342ZM45.9116 27.1795V26.258L43.036 26.4355C41.6037 26.5355 40.7934 27.1684 40.7934 28.1676C40.7934 29.1889 41.6371 29.8551 42.9251 29.8551C44.6015 29.8551 45.9116 28.7004 45.9116 27.1795Z\\\" fill=\\\"black\\\"/>\\n<path d=\\\"M50.4683 35.8512V33.9081C50.6456 33.9525 51.0452 33.9525 51.2452 33.9525C52.3554 33.9525 52.955 33.4863 53.3212 32.2872C53.3212 32.2649 53.5324 31.5766 53.5324 31.5655L49.3135 19.8744H51.9112L54.8648 29.3783H54.909L57.8626 19.8744H60.3939L56.0191 32.1649C55.0203 34.9963 53.8656 35.9066 51.4452 35.9066C51.2452 35.9066 50.6456 35.8843 50.4683 35.8512Z\\\" fill=\\\"black\\\"/>\\n</g>\\n<defs>\\n<clipPath id=\\\"clip0_2881_6359\\\">\\n<rect width=\\\"70\\\" height=\\\"48\\\" rx=\\\"6.5\\\" fill=\\\"white\\\"/>\\n</clipPath>\\n</defs>\\n</svg>\\n\"","export default \"<svg width=\\\"70\\\" height=\\\"48\\\" viewBox=\\\"0 0 70 48\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n<g clip-path=\\\"url(#clip0_2881_7564)\\\">\\n<path d=\\\"M51.3812 6H18.6164C8.37737 6 0 14.321 0 24.4912C0 34.6613 8.37737 42.9824 18.6164 42.9824H51.3812C61.6202 42.9824 69.9975 34.6613 69.9975 24.4912C69.9975 14.321 61.6202 6 51.3812 6Z\\\" fill=\\\"white\\\"/>\\n<path d=\\\"M51.3812 7.49779C53.6803 7.49779 55.9143 7.95082 58.0179 8.8384C60.0564 9.69824 61.8808 10.9279 63.4632 12.4904C65.0363 14.0529 66.2743 15.8743 67.1399 17.8991C68.0335 19.9886 68.4896 22.2075 68.4896 24.4912C68.4896 26.7748 68.0335 28.9938 67.1399 31.0833C66.2743 33.1081 65.0363 34.9202 63.4632 36.492C61.8901 38.0545 60.0564 39.2841 58.0179 40.144C55.9143 41.0315 53.6803 41.4846 51.3812 41.4846H18.6164C16.3172 41.4846 14.0833 41.0315 11.9796 40.144C9.94114 39.2841 8.11674 38.0545 6.53434 36.492C4.96126 34.9295 3.72327 33.1081 2.85761 31.0833C1.96403 28.9938 1.50793 26.7748 1.50793 24.4912C1.50793 22.2075 1.96403 19.9886 2.85761 17.8991C3.72327 15.8743 4.96126 14.0622 6.53434 12.4904C8.10743 10.9279 9.94114 9.69824 11.9796 8.8384C14.0833 7.95082 16.3172 7.49779 18.6164 7.49779H51.3812ZM51.3812 6H18.6164C8.37737 6 0 14.321 0 24.4912C0 34.6613 8.37737 42.9824 18.6164 42.9824H51.3812C61.6202 42.9824 69.9975 34.6613 69.9975 24.4912C69.9975 14.321 61.6202 6 51.3812 6Z\\\" fill=\\\"#3C4043\\\"/>\\n<path d=\\\"M33.4542 25.8041V31.3976H31.6671V17.5847H36.4049C37.6057 17.5847 38.6296 17.9823 39.4673 18.7774C40.3237 19.5725 40.7518 20.5433 40.7518 21.6898C40.7518 22.864 40.3237 23.8347 39.4673 24.6206C38.6389 25.4065 37.615 25.7948 36.4049 25.7948H33.4542V25.8041ZM33.4542 19.2859V24.1029H36.4421C37.1496 24.1029 37.7453 23.8625 38.2107 23.391C38.6854 22.9194 38.9274 22.3462 38.9274 21.699C38.9274 21.0611 38.6854 20.4971 38.2107 20.0256C37.7453 19.5355 37.1589 19.2952 36.4421 19.2952H33.4542V19.2859Z\\\" fill=\\\"#3C4043\\\"/>\\n<path d=\\\"M45.4246 21.6343C46.7463 21.6343 47.7888 21.9856 48.5521 22.6883C49.3154 23.3909 49.697 24.3525 49.697 25.5729V31.3976H47.9936V30.0848H47.9192C47.1838 31.1665 46.1971 31.7027 44.9685 31.7027C43.9166 31.7027 43.0417 31.3976 42.3342 30.7782C41.6268 30.1587 41.2731 29.3913 41.2731 28.4668C41.2731 27.4867 41.6454 26.7101 42.3901 26.1369C43.1347 25.5544 44.1307 25.2678 45.3687 25.2678C46.4298 25.2678 47.3048 25.462 47.9843 25.8503V25.4435C47.9843 24.824 47.7423 24.3063 47.249 23.8717C46.7556 23.4372 46.1785 23.2245 45.5176 23.2245C44.5217 23.2245 43.7305 23.6406 43.1534 24.4819L41.5803 23.5019C42.4459 22.2537 43.7305 21.6343 45.4246 21.6343ZM43.1161 28.4945C43.1161 28.9568 43.3116 29.3451 43.7118 29.6502C44.1028 29.9553 44.5682 30.1125 45.0988 30.1125C45.8527 30.1125 46.5229 29.8351 47.1093 29.2804C47.6958 28.7257 47.9936 28.0785 47.9936 27.3296C47.4351 26.895 46.6625 26.6731 45.6666 26.6731C44.9405 26.6731 44.3355 26.8488 43.8515 27.1909C43.3581 27.5515 43.1161 27.986 43.1161 28.4945Z\\\" fill=\\\"#3C4043\\\"/>\\n<path d=\\\"M59.4148 21.9394L53.4575 35.5489H51.6145L53.8298 30.7874L49.9018 21.9394H51.8472L54.6769 28.7257H54.7141L57.4693 21.9394H59.4148Z\\\" fill=\\\"#3C4043\\\"/>\\n<path d=\\\"M26.3456 24.6761C26.3456 24.0973 26.2934 23.5435 26.1966 23.0109H18.7054V26.062L23.0198 26.0629C22.8448 27.0781 22.2816 27.9434 21.4187 28.5204V30.4999H23.9869C25.4864 29.1213 26.3456 27.0836 26.3456 24.6761Z\\\" fill=\\\"#4285F4\\\"/>\\n<path d=\\\"M21.4197 28.5204C20.7048 28.9993 19.7842 29.2795 18.7073 29.2795C16.6269 29.2795 14.8621 27.8871 14.23 26.0102H11.5809V28.0517C12.8934 30.6386 15.5909 32.4137 18.7073 32.4137C20.8612 32.4137 22.6707 31.7101 23.9878 30.499L21.4197 28.5204Z\\\" fill=\\\"#34A853\\\"/>\\n<path d=\\\"M13.9806 24.4958C13.9806 23.9688 14.069 23.4594 14.23 22.9805V20.939H11.5809C11.0382 22.0087 10.7329 23.2162 10.7329 24.4958C10.7329 25.7754 11.0392 26.9829 11.5809 28.0526L14.23 26.0112C14.069 25.5322 13.9806 25.0228 13.9806 24.4958Z\\\" fill=\\\"#FABB05\\\"/>\\n<path d=\\\"M18.7073 19.7112C19.8829 19.7112 20.9357 20.1134 21.7669 20.8993L24.0427 18.6406C22.6605 17.3619 20.8584 16.577 18.7073 16.577C15.5918 16.577 12.8934 18.3521 11.5809 20.939L14.23 22.9805C14.8621 21.1036 16.6269 19.7112 18.7073 19.7112Z\\\" fill=\\\"#E94235\\\"/>\\n</g>\\n<defs>\\n<clipPath id=\\\"clip0_2881_7564\\\">\\n<rect width=\\\"70\\\" height=\\\"48\\\" rx=\\\"6.5\\\" fill=\\\"white\\\"/>\\n</clipPath>\\n</defs>\\n</svg>\\n\"","export default \"<svg width=\\\"70\\\" height=\\\"48\\\" viewBox=\\\"0 0 70 48\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n<rect width=\\\"70\\\" height=\\\"48\\\" rx=\\\"6.5\\\" fill=\\\"#00A0E9\\\"/>\\n<path d=\\\"M23.3525 36.9587C16.3335 36.9587 14.2584 31.3828 17.7272 28.3321C18.8847 27.3011 20.9999 26.7978 22.1276 26.6848C26.2971 26.2693 30.1567 27.8735 34.7115 30.1157C31.5099 34.3278 27.432 36.9587 23.3525 36.9587ZM48.3079 30.5385C46.5026 29.9286 44.0801 28.9961 41.3818 28.0116C43.0022 25.1705 44.2966 21.9353 45.1473 18.4192H36.2539V15.1886H47.1483V13.3854H36.2539V8H31.8078C31.0279 8 31.0279 8.77652 31.0279 8.77652V13.3854H20.0094V15.1886H31.0279V18.4192H21.9307V20.222H39.5743C38.9287 22.4655 38.0618 24.5717 37.0329 26.4854C31.3079 24.5803 25.1988 23.0362 21.3609 23.9866C18.9064 24.5965 17.3257 25.685 16.397 26.8255C12.1346 32.0557 15.1917 40 24.1934 40C29.5157 40 34.6428 37.0073 38.6167 32.0753C44.5438 34.9487 56.2786 39.8824 56.2786 39.8824V32.851C56.2786 32.851 54.8049 32.7325 48.3079 30.5385Z\\\" fill=\\\"white\\\"/>\\n</svg>\\n\"","export default \"<svg width=\\\"70\\\" height=\\\"48\\\" viewBox=\\\"0 0 70 48\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n<rect x=\\\"1\\\" y=\\\"1\\\" width=\\\"68\\\" height=\\\"46\\\" rx=\\\"5.5\\\" fill=\\\"white\\\"/>\\n<rect x=\\\"1\\\" y=\\\"1\\\" width=\\\"68\\\" height=\\\"46\\\" rx=\\\"5.5\\\" stroke=\\\"#F6F7F8\\\" stroke-width=\\\"2\\\"/>\\n<path fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\" d=\\\"M10.7255 20.7423L12.6702 24.872H8.70309L10.7255 20.7423ZM13.7398 27.2011H16.1123L11.659 17.6303H11.095C10.9996 17.6036 10.8987 17.6036 10.8033 17.6303C10.708 17.6824 10.6327 17.7651 10.5894 17.8652L6 27.2011H7.59463L8.39194 25.6353H13.0397L13.7398 27.2011Z\\\" fill=\\\"#373530\\\"/>\\n<path fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\" d=\\\"M19.1848 27.2012H17.0263V18.0414C17.024 17.9851 17.0351 17.929 17.0588 17.8779C17.0825 17.8268 17.118 17.7822 17.1624 17.7478C17.2002 17.7089 17.2457 17.6783 17.2959 17.6581C17.3462 17.6379 17.4 17.6285 17.4541 17.6304H19.1848V27.2012Z\\\" fill=\\\"#373530\\\"/>\\n<path fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\" d=\\\"M21.0906 20.5466C21.1079 20.465 21.1485 20.3902 21.2073 20.3313C21.2941 20.2566 21.4042 20.215 21.5184 20.2139H23.2686V27.2011H21.0906V20.5466Z\\\" fill=\\\"#35322C\\\"/>\\n<path fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\" d=\\\"M27.2746 25.244C27.2746 25.4056 27.3077 25.5655 27.3719 25.7137C27.4396 25.8649 27.5315 26.0037 27.6441 26.1247C27.7723 26.2321 27.9167 26.318 28.072 26.3792C28.2531 26.4434 28.4438 26.4765 28.6359 26.477C28.825 26.4757 29.0089 26.414 29.161 26.3009C29.3382 26.1641 29.4841 25.9906 29.5888 25.792C29.7289 25.5493 29.8275 25.2847 29.8805 25.0091C29.9598 24.6824 29.999 24.3472 29.9972 24.0109C30.0309 23.6137 30.0309 23.2143 29.9972 22.817C29.9504 22.5115 29.8586 22.2146 29.7249 21.9363C29.631 21.7364 29.491 21.5619 29.3165 21.4274C29.1632 21.3166 28.9802 21.2552 28.7915 21.2513C28.6561 21.2309 28.5185 21.2309 28.3831 21.2513L28.0136 21.447L27.6636 21.721L27.3719 22.0733L27.2746 25.244ZM25.0966 20.5467C25.1159 20.4658 25.1561 20.3915 25.2133 20.3314C25.2922 20.2564 25.3965 20.2144 25.505 20.2139H27.2746V20.762C27.5435 20.5605 27.8377 20.3959 28.1497 20.2726C28.5088 20.1316 28.8924 20.065 29.2776 20.0769C29.7126 20.0658 30.1445 20.1527 30.5417 20.3314C30.9071 20.5109 31.2366 20.7563 31.514 21.0555C31.7801 21.3694 31.9906 21.7269 32.1363 22.1124C32.2764 22.5286 32.3486 22.9648 32.3502 23.4042C32.3484 23.9491 32.2631 24.4904 32.0974 25.0091C31.9293 25.4745 31.6789 25.9055 31.3584 26.2813C31.0248 26.6323 30.6291 26.9177 30.1916 27.1229C29.7046 27.3244 29.1819 27.4243 28.6554 27.4165H27.9164C27.7043 27.3851 27.4959 27.3327 27.2941 27.2599V30H25.0966V20.5467Z\\\" fill=\\\"#332D28\\\"/>\\n<path fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\" d=\\\"M34.8588 24.872C34.8735 24.4737 35.0387 24.096 35.3205 23.816C35.6024 23.536 35.9797 23.3747 36.3757 23.365C36.727 23.3218 37.0833 23.3759 37.4063 23.5215V25.9485C37.1266 26.2115 36.7584 26.3583 36.3757 26.3595C36.179 26.3621 35.9838 26.3257 35.8011 26.2523C35.6185 26.179 35.452 26.0701 35.3111 25.932C35.1702 25.7939 35.0578 25.6292 34.9802 25.4473C34.9026 25.2654 34.8614 25.0699 34.8588 24.872ZM37.9703 20.2138C36.5982 19.8717 35.1595 19.9123 33.8087 20.3313C33.8087 20.5074 33.9448 20.8206 34.0032 21.0163C36.8424 20.5074 37.4063 20.8989 37.4063 22.1123V22.5038C36.8813 22.5038 36.259 22.3668 35.7534 22.3668C35.4162 22.3427 35.0778 22.3885 34.759 22.5013C34.4402 22.6141 34.1477 22.7916 33.8998 23.0228C33.6519 23.254 33.4538 23.5339 33.3177 23.8453C33.1816 24.1566 33.1104 24.4927 33.1086 24.8329C33.1086 26.5161 34.7421 28.1014 37.4063 26.9271V27.2011H39.6427V22.0536C39.5997 21.606 39.4134 21.1845 39.1118 20.8526C38.8101 20.5208 38.4095 20.2966 37.9703 20.2138Z\\\" fill=\\\"#332D28\\\"/>\\n<path fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\" d=\\\"M40.265 19.9986H42.5597L44.835 24.3632L46.6824 20.3313C46.7234 20.2469 46.7833 20.1732 46.8574 20.116C46.9471 20.0964 47.04 20.0964 47.1297 20.116H48.3548L44.7377 27.9449C44.4602 28.5889 43.9758 29.1203 43.3621 29.454C42.7485 29.7876 42.0413 29.9041 41.354 29.7847V28.6104C41.9532 28.6678 42.5532 28.5082 43.0459 28.1602C43.1525 28.0312 43.2379 27.8858 43.2987 27.7296C43.2987 27.5926 43.4154 27.4752 43.4737 27.3577L43.7265 26.8097L40.265 19.9986Z\\\" fill=\\\"#332D28\\\"/>\\n<path fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\" d=\\\"M23.3464 18.0414C23.3096 18.3292 23.1698 18.5937 22.9533 18.7853C22.7367 18.977 22.4583 19.0827 22.1699 19.0827C21.8815 19.0827 21.6031 18.977 21.3865 18.7853C21.17 18.5937 21.0302 18.3292 20.9934 18.0414C21.0302 17.7535 21.17 17.489 21.3865 17.2974C21.6031 17.1057 21.8815 17 22.1699 17C22.4583 17 22.7367 17.1057 22.9533 17.2974C23.1698 17.489 23.3096 17.7535 23.3464 18.0414Z\\\" fill=\\\"#00AEEF\\\"/>\\n<path fill-rule=\\\"evenodd\\\" clip-rule=\\\"evenodd\\\" d=\\\"M63.7565 27.2794H62.1619C62.1404 27.2886 62.1172 27.2933 62.0939 27.2933C62.0705 27.2933 62.0473 27.2886 62.0258 27.2794L60.1784 24.05L59.206 25.1656V27.2794H57.9226C57.8845 27.2797 57.8476 27.2659 57.8189 27.2407C57.7902 27.2154 57.7717 27.1805 57.767 27.1424V20.1747C57.7717 20.1367 57.7902 20.1017 57.8189 20.0765C57.8476 20.0512 57.8845 20.0374 57.9226 20.0377H59.206V22.9931L61.6369 20.0573C61.6746 20.0439 61.7158 20.0439 61.7535 20.0573H63.601L61.1312 22.9148L63.7565 27.2794ZM55.9779 27.2794H54.6555C54.6174 27.2797 54.5805 27.2659 54.5518 27.2407C54.5232 27.2154 54.5047 27.1805 54.4999 27.1424V24.4023C54.5039 24.3714 54.4987 24.34 54.4848 24.3121C54.471 24.2842 54.4491 24.2611 54.4222 24.2457H52.0302V27.2794H50.7078C50.6697 27.2797 50.6329 27.2659 50.6042 27.2407C50.5755 27.2154 50.557 27.1805 50.5523 27.1424V20.1747C50.557 20.1367 50.5755 20.1017 50.6042 20.0765C50.6329 20.0512 50.6697 20.0374 50.7078 20.0377H52.0302V22.9931H54.4222C54.44 22.9931 54.4577 22.9896 54.4743 22.9827C54.4908 22.9758 54.5058 22.9657 54.5184 22.953C54.5311 22.9403 54.5411 22.9252 54.5479 22.9085C54.5548 22.8919 54.5583 22.8741 54.5583 22.8561V20.1747C54.563 20.1367 54.5815 20.1017 54.6102 20.0765C54.6389 20.0512 54.6758 20.0374 54.7139 20.0377H56.0362L55.9779 27.2794Z\\\" fill=\\\"#00AEEF\\\"/>\\n</svg>\\n\"","export default \"<svg width=\\\"70\\\" height=\\\"48\\\" viewBox=\\\"0 0 70 48\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n<rect width=\\\"70\\\" height=\\\"48\\\" rx=\\\"6.5\\\" fill=\\\"#00A0E9\\\"/>\\n<path d=\\\"M23.3525 36.9587C16.3335 36.9587 14.2584 31.3828 17.7272 28.3321C18.8847 27.3011 20.9999 26.7978 22.1276 26.6848C26.2971 26.2693 30.1567 27.8735 34.7115 30.1157C31.5099 34.3278 27.432 36.9587 23.3525 36.9587ZM48.3079 30.5385C46.5026 29.9286 44.0801 28.9961 41.3818 28.0116C43.0022 25.1705 44.2966 21.9353 45.1473 18.4192H36.2539V15.1886H47.1483V13.3854H36.2539V8H31.8078C31.0279 8 31.0279 8.77652 31.0279 8.77652V13.3854H20.0094V15.1886H31.0279V18.4192H21.9307V20.222H39.5743C38.9287 22.4655 38.0618 24.5717 37.0329 26.4854C31.3079 24.5803 25.1988 23.0362 21.3609 23.9866C18.9064 24.5965 17.3257 25.685 16.397 26.8255C12.1346 32.0557 15.1917 40 24.1934 40C29.5157 40 34.6428 37.0073 38.6167 32.0753C44.5438 34.9487 56.2786 39.8824 56.2786 39.8824V32.851C56.2786 32.851 54.8049 32.7325 48.3079 30.5385Z\\\" fill=\\\"white\\\"/>\\n</svg>\\n\"","export default \"<svg width=\\\"70\\\" height=\\\"48\\\" viewBox=\\\"0 0 70 48\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n<g clip-path=\\\"url(#clip0_2881_8937)\\\">\\n<rect width=\\\"70\\\" height=\\\"48\\\" rx=\\\"6.5\\\" fill=\\\"#00C250\\\"/>\\n<path d=\\\"M30.6325 27.8714C30.1238 28.1309 29.501 27.9406 29.2244 27.441L29.1556 27.289L26.2467 20.8919C26.2348 20.8151 26.2348 20.7368 26.2467 20.6599C26.2462 20.5186 26.3029 20.3832 26.4039 20.2843C26.5048 20.1855 26.6415 20.1317 26.7827 20.1351C26.8964 20.1327 27.0073 20.1701 27.0963 20.2407L30.5845 22.684C30.8431 22.857 31.1469 22.95 31.4581 22.9512C31.6457 22.9522 31.8316 22.9164 32.0053 22.8456L48.0811 15.6453C44.7452 11.9609 39.9763 9.90302 35.007 10.0035C26.1651 10.0035 19 15.9718 19 23.3928C19.1051 27.4492 21.1683 31.2035 24.5362 33.4668C24.8982 33.7337 25.0522 34.2001 24.9202 34.6301L24.2002 37.3518C24.1564 37.4757 24.129 37.6048 24.1186 37.7358C24.1155 37.8785 24.1708 38.0162 24.2717 38.1171C24.3726 38.218 24.5104 38.2733 24.653 38.2702C24.7604 38.2644 24.8647 38.2326 24.957 38.1774L28.4452 36.1533C28.7012 35.9965 28.994 35.9117 29.2948 35.9101C29.4532 35.9101 29.61 35.9325 29.7588 35.9789C31.4597 36.459 33.2166 36.7022 34.983 36.699C43.8234 36.699 50.9997 30.7323 50.9997 23.3704C51.0164 21.1748 50.4076 19.0197 49.2444 17.1574L30.7605 27.801L30.6325 27.8714Z\\\" fill=\\\"white\\\"/>\\n</g>\\n<defs>\\n<clipPath id=\\\"clip0_2881_8937\\\">\\n<rect width=\\\"70\\\" height=\\\"48\\\" rx=\\\"6.5\\\" fill=\\\"white\\\"/>\\n</clipPath>\\n</defs>\\n</svg>\\n\"","export default \"<svg width=\\\"70\\\" height=\\\"48\\\" viewBox=\\\"0 0 70 48\\\" fill=\\\"none\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\">\\n<g clip-path=\\\"url(#clip0_2881_8157)\\\">\\n<rect x=\\\"1\\\" y=\\\"1\\\" width=\\\"68\\\" height=\\\"46\\\" rx=\\\"5.5\\\" fill=\\\"white\\\"/>\\n<rect x=\\\"1\\\" y=\\\"1\\\" width=\\\"68\\\" height=\\\"46\\\" rx=\\\"5.5\\\" stroke=\\\"#F6F7F8\\\" stroke-width=\\\"2\\\"/>\\n<g clip-path=\\\"url(#clip1_2881_8157)\\\">\\n<path d=\\\"M7.07129 6.85789C7.07129 6.72002 7.10938 6.61278 7.17796 6.52853C7.24653 6.44427 7.36081 6.40598 7.49796 6.40598H13.7532C14.2027 6.40598 14.6294 6.46725 15.0256 6.58981C15.4218 6.71236 15.7875 6.88853 16.1227 7.103C16.458 7.32512 16.7551 7.58555 17.0218 7.89193C17.2884 8.19832 17.517 8.52768 17.6999 8.88002C17.8827 9.23236 18.0275 9.60768 18.1265 9.99832C18.2256 10.389 18.2713 10.7873 18.2713 11.1855C18.2713 11.7753 18.1646 12.3498 17.9513 12.9166C17.738 13.4834 17.4408 13.9813 17.0446 14.4255C16.6561 14.8621 16.1837 15.2221 15.6351 15.4902C15.0865 15.766 14.477 15.9038 13.8141 15.9115H10.8503V20.5992C10.8503 20.8826 10.698 21.0204 10.4008 21.0204H7.50557C7.37605 21.0204 7.26938 20.9898 7.19319 20.9209C7.117 20.8519 7.07891 20.7447 7.07891 20.5992V6.85789H7.07129ZM14.4465 11.1626C14.4465 10.9634 14.4161 10.7719 14.3475 10.5728C14.2789 10.3736 14.1799 10.1975 14.0503 10.0443C13.9208 9.89108 13.7608 9.76087 13.578 9.66895C13.3951 9.56938 13.1818 9.52342 12.9456 9.52342H10.8732V12.8094H12.9456C13.1818 12.8094 13.3951 12.7634 13.5856 12.6638C13.7761 12.5719 13.9361 12.4494 14.058 12.2962C14.1875 12.143 14.2865 11.9745 14.3551 11.7753C14.4237 11.5762 14.4541 11.377 14.4541 11.1626H14.4465Z\\\" fill=\\\"#8F2889\\\"/>\\n<path d=\\\"M23.315 6.78895C23.315 6.75066 23.3455 6.7047 23.376 6.65874C23.4141 6.61278 23.4522 6.56683 23.5055 6.52853C23.5588 6.49023 23.6122 6.45959 23.6731 6.43661C23.7341 6.41363 23.7874 6.40598 23.8407 6.40598H26.3474C26.4617 6.40598 26.5531 6.43661 26.6293 6.50555C26.7055 6.57449 26.7664 6.63576 26.8045 6.68938L27.0483 7.24853L32.1912 20.5762C32.2445 20.7064 32.2369 20.8136 32.1607 20.8979C32.0922 20.9821 31.9626 21.0204 31.7874 21.0204H28.976C28.8236 21.0204 28.7093 20.9898 28.6255 20.9362C28.5417 20.8826 28.4807 20.7907 28.435 20.6528C28.3055 20.3158 28.176 19.9864 28.0541 19.657C27.9322 19.3277 27.8026 18.9907 27.6807 18.6613H22.4845C22.3626 18.9983 22.2331 19.3277 22.1112 19.657C21.9817 19.9864 21.8598 20.3234 21.7379 20.6528C21.6541 20.8979 21.4864 21.0204 21.235 21.0204H18.3474C18.2255 21.0204 18.1188 20.9898 18.035 20.9209C17.9512 20.8519 17.936 20.76 17.9893 20.6221L23.315 6.78895ZM25.0979 11.0017C24.976 11.3387 24.8464 11.6987 24.7245 12.0817C24.595 12.4724 24.4731 12.863 24.3512 13.2536C24.2293 13.6443 24.0998 14.0349 23.9779 14.4179C23.8483 14.8009 23.7264 15.1609 23.6045 15.4979H26.6141L25.1131 11.0017H25.0979Z\\\" fill=\\\"#8F2889\\\"/>\\n<path d=\\\"M36.5341 11.7983L38.896 6.71236C38.9341 6.63576 38.9646 6.57449 38.995 6.54385C39.0179 6.50555 39.0484 6.48257 39.0712 6.46725C39.0941 6.45193 39.1246 6.44427 39.155 6.43661C39.1855 6.43661 39.216 6.42895 39.2541 6.41363H43.0255C43.0712 6.41363 43.1093 6.42895 43.1398 6.45959C43.1703 6.49023 43.1855 6.52087 43.1855 6.56683C43.1855 6.63576 43.1398 6.72002 43.0484 6.81193L38.4084 15.069V20.5685C38.4084 20.8749 38.256 21.0281 37.9588 21.0281H35.0255C34.896 21.0281 34.7969 20.9898 34.7207 20.9055C34.6446 20.8213 34.6141 20.7141 34.6141 20.5685V15.046L29.9817 6.80427C29.8979 6.72002 29.8522 6.63576 29.8522 6.55917C29.8522 6.52087 29.8674 6.48257 29.8903 6.45193C29.9131 6.42129 29.9512 6.40598 29.9969 6.40598H33.7684C33.8141 6.42129 33.8522 6.42895 33.875 6.42895C33.8979 6.42895 33.9284 6.44427 33.9512 6.45959C33.9741 6.47491 34.0046 6.50555 34.0274 6.53619C34.0503 6.57449 34.0884 6.6281 34.1341 6.7047L36.5188 11.7907L36.5341 11.7983Z\\\" fill=\\\"#8F2889\\\"/>\\n<path d=\\\"M7.07129 23.6936C7.07129 23.5788 7.10938 23.4715 7.17796 23.3873C7.24653 23.303 7.36081 23.257 7.49795 23.257H10.698C10.7894 23.257 10.8808 23.28 10.9799 23.326C11.0789 23.3719 11.1627 23.4485 11.2313 23.5634C12.0618 24.9115 12.8846 26.2366 13.6999 27.5388C14.5151 28.8485 15.338 30.1736 16.1761 31.5141V23.6324C16.1989 23.5175 16.2522 23.4256 16.3361 23.3566C16.4122 23.2877 16.5037 23.257 16.6103 23.257H19.3989C19.536 23.257 19.6503 23.2953 19.7418 23.3719C19.8332 23.4485 19.8789 23.5558 19.8789 23.6936V37.4962C19.8789 37.6264 19.8408 37.726 19.7646 37.7873C19.6884 37.8485 19.5818 37.8792 19.4446 37.8792H16.3208C16.237 37.8792 16.1608 37.8485 16.0922 37.7873C16.0237 37.726 15.9551 37.6494 15.8865 37.5498C15.018 36.1098 14.157 34.6775 13.3113 33.2681C12.4656 31.8588 11.6046 30.4264 10.7284 28.9864V37.4426C10.7284 37.5881 10.698 37.6953 10.6294 37.7643C10.5608 37.8332 10.4465 37.8715 10.2789 37.8715H7.49795C7.34557 37.8715 7.23891 37.8332 7.17034 37.749C7.10177 37.6647 7.07129 37.5651 7.07129 37.4502V23.6936Z\\\" fill=\\\"#8F2889\\\"/>\\n<path d=\\\"M46.6826 37.6724C46.6141 37.5575 46.5531 37.4426 46.4998 37.3277C46.4388 37.2128 46.3855 37.0902 46.3398 36.9753C45.4941 34.7464 44.656 32.5328 43.8255 30.3422C42.9874 28.1515 42.1493 25.9379 41.3112 23.709C41.3112 23.6783 41.3112 23.6477 41.296 23.617C41.2884 23.5941 41.2807 23.5634 41.2807 23.5405C41.2807 23.3566 41.4026 23.2647 41.6464 23.2647H44.8007C45.0522 23.2647 45.2198 23.3873 45.3112 23.64L48.3055 32.6094L51.0788 23.64C51.1703 23.3873 51.3531 23.2647 51.6198 23.2647H54.8045C54.9569 23.2647 55.0636 23.2953 55.1245 23.349C55.1855 23.4026 55.216 23.4792 55.216 23.5711C55.216 23.6247 55.216 23.663 55.2083 23.6783V23.709L53.4636 28.726L54.7741 32.5941L57.9436 23.64C58.035 23.3873 58.2179 23.2647 58.4845 23.2647H61.5703C61.7226 23.2647 61.8293 23.2953 61.8903 23.349C61.9512 23.4026 61.9817 23.4792 61.9817 23.5711C61.9817 23.6247 61.9817 23.663 61.9741 23.6783V23.709C61.5322 24.8656 61.075 26.0145 60.6103 27.1634C60.1455 28.3124 59.6807 29.4613 59.216 30.6102C58.7512 31.7592 58.2864 32.9081 57.8293 34.057C57.3722 35.206 56.9226 36.3549 56.4807 37.5039C56.4579 37.5728 56.3969 37.657 56.3055 37.7413C56.2141 37.8332 56.0998 37.8715 55.9703 37.8715H53.5703C53.4255 37.8715 53.3188 37.8409 53.2426 37.7873C53.1664 37.7336 53.1131 37.657 53.0826 37.5651L51.536 33.4673C51.315 34.0647 51.0941 34.6468 50.8807 35.2213C50.6674 35.7958 50.4464 36.3779 50.2331 36.9753C50.2026 37.0673 50.1645 37.1668 50.1188 37.2664C50.0731 37.366 50.0274 37.4656 49.9664 37.5498C49.9055 37.6417 49.8445 37.7107 49.7683 37.7719C49.6922 37.8332 49.6084 37.8639 49.5093 37.8639H47.1093C46.9036 37.8639 46.7664 37.7949 46.6979 37.657L46.6826 37.6724Z\\\" fill=\\\"#8F2889\\\"/>\\n<path d=\\\"M39.654 24.1737C39.2206 23.5876 38.7227 23.0591 38.1879 22.5786C38.0772 22.4729 37.9297 22.4249 37.7821 22.4249C37.5793 22.4249 37.3949 22.5306 37.275 22.6939L31.5856 30.8326L28.7363 27.2005C28.6257 27.0563 28.4597 26.9698 28.2845 26.9698C28.1001 26.9698 27.9341 27.0659 27.8142 27.2293L26.6063 28.9589C26.4126 29.2375 26.4219 29.6411 26.6339 29.9005L31.2629 35.8003C31.3735 35.9445 31.5395 36.0309 31.7147 36.0309C31.8991 36.0309 32.0651 35.9348 32.185 35.7715L38.1325 27.2581C39.737 30.5155 38.9071 34.5512 36.0947 36.8381C34.7853 37.9046 33.2177 38.462 31.558 38.462C29.2619 38.462 27.1319 37.3762 25.7211 35.4928C24.5131 33.869 23.9783 31.8511 24.218 29.814C24.4578 27.7674 25.4537 25.9513 27.0028 24.683C28.3122 23.6164 29.8797 23.0591 31.5395 23.0591C32.5538 23.0591 33.5313 23.2705 34.4534 23.674C34.7484 23.8086 35.1357 23.6932 35.3201 23.4242L36.2791 22.0501C36.3898 21.8964 36.4267 21.7042 36.3806 21.5217C36.3344 21.3487 36.2238 21.195 36.0578 21.1181C34.647 20.3974 33.1255 20.0323 31.5303 20.0323C29.225 20.0323 27.0397 20.8202 25.2139 22.3C20.7417 25.9321 19.9395 32.6871 23.425 37.3473C25.3891 39.9705 28.3491 41.4791 31.5487 41.4791C33.854 41.4791 36.0394 40.7008 37.8651 39.2114C40.0321 37.453 41.406 34.9163 41.7472 32.0721C42.0884 29.2279 41.3414 26.4221 39.654 24.1641V24.1737Z\\\" fill=\\\"url(#paint0_linear_2881_8157)\\\"/>\\n</g>\\n</g>\\n<defs>\\n<linearGradient id=\\\"paint0_linear_2881_8157\\\" x1=\\\"41.8025\\\" y1=\\\"20.138\\\" x2=\\\"23.2496\\\" y2=\\\"37.8224\\\" gradientUnits=\\\"userSpaceOnUse\\\">\\n<stop stop-color=\\\"#EE4269\\\"/>\\n<stop offset=\\\"1\\\" stop-color=\\\"#95288C\\\"/>\\n</linearGradient>\\n<clipPath id=\\\"clip0_2881_8157\\\">\\n<rect width=\\\"70\\\" height=\\\"48\\\" rx=\\\"6.5\\\" fill=\\\"white\\\"/>\\n</clipPath>\\n<clipPath id=\\\"clip1_2881_8157\\\">\\n<rect width=\\\"54.8571\\\" height=\\\"36\\\" fill=\\\"white\\\" transform=\\\"translate(7.07129 6)\\\"/>\\n</clipPath>\\n</defs>\\n</svg>\\n\"","export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" fill=\\\"none\\\" viewBox=\\\"0 0 40 26\\\"><path fill=\\\"#fff\\\" d=\\\"M0 0h40v26H0z\\\"/><path fill=\\\"#1434CB\\\" d=\\\"m15.9 7.7-4.43 10.6h-2.9l-2.2-8.47c-.13-.52-.25-.71-.65-.93C5.05 8.55 3.96 8.2 3 8l.07-.32h4.67c.6 0 1.13.4 1.27 1.09l1.15 6.14 2.86-7.23h2.89Zm11.39 7.15c0-2.8-3.88-2.96-3.85-4.21 0-.38.37-.79 1.16-.9a5.2 5.2 0 0 1 2.71.48l.48-2.25a7.4 7.4 0 0 0-2.57-.47c-2.71 0-4.62 1.44-4.64 3.51-.02 1.53 1.36 2.38 2.4 2.9 1.08.51 1.44.85 1.43 1.31 0 .71-.85 1.03-1.64 1.04-1.39.02-2.19-.37-2.82-.67l-.5 2.33c.64.29 1.82.55 3.05.56 2.89 0 4.78-1.42 4.79-3.63Zm7.17 3.46H37L34.78 7.7h-2.34c-.53 0-.98.3-1.17.78l-4.12 9.84h2.88l.57-1.58h3.53l.33 1.58Zm-3.07-3.76 1.45-3.99.83 4H31.4ZM19.83 7.7l-2.27 10.62h-2.74L17.09 7.7h2.74Z\\\"/></svg>\"","export default \"<svg enable-background=\\\"new 0 0 780 500\\\" viewBox=\\\"0 0 780 500\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><path d=\\\"m449.01 250c0 99.143-80.371 179.5-179.51 179.5s-179.5-80.361-179.5-179.5c0-99.133 80.362-179.5 179.5-179.5 99.137 0 179.51 80.371 179.51 179.5\\\" fill=\\\"#d9222a\\\"/><path d=\\\"m510.49 70.496c-46.379 0-88.643 17.596-120.5 46.467-6.49 5.889-12.548 12.237-18.125 18.996h36.267c4.965 6.037 9.536 12.387 13.685 19.012h-63.635c-3.827 6.122-7.281 12.469-10.342 19.008h84.313c2.894 6.185 5.431 12.53 7.601 19.004h-99.513c-2.09 6.234-3.832 12.58-5.217 19.008h109.94c2.689 12.49 4.045 25.231 4.042 38.008 0 19.935-3.254 39.112-9.254 57.021h-99.513c2.164 6.477 4.7 12.824 7.596 19.008h84.316c-3.063 6.541-6.519 12.889-10.347 19.013h-63.625c4.147 6.62 8.719 12.966 13.685 18.996h36.259c-5.57 6.772-11.63 13.127-18.13 19.013 31.857 28.866 74.117 46.454 120.5 46.454 99.139 0 179.51-80.361 179.51-179.5 0-99.129-80.371-179.5-179.51-179.5\\\" fill=\\\"#ee9f2d\\\"/><path d=\\\"m666.07 350.06c0-3.199 2.592-5.801 5.796-5.801s5.796 2.602 5.796 5.801-2.592 5.801-5.796 5.801-5.796-2.602-5.796-5.801zm5.796 4.408c2.434-.001 4.407-1.974 4.408-4.408 0-2.432-1.971-4.402-4.402-4.404h-.006c-2.429-.003-4.4 1.963-4.404 4.391v.014c-.002 2.433 1.968 4.406 4.4 4.408.001-.001.003-.001.004-.001zm-.783-1.86h-1.187v-5.096h2.149c.45 0 .908 0 1.305.254.413.279.646.771.646 1.279 0 .571-.338 1.104-.884 1.312l.938 2.25h-1.315l-.779-2.017h-.871zm0-2.89h.658c.246 0 .505.021.726-.1.195-.125.296-.359.296-.584-.005-.209-.112-.402-.288-.518-.207-.129-.536-.101-.758-.101h-.634zm-443.5-80.063c-2.046-.238-2.945-.301-4.35-.301-11.046 0-16.638 3.787-16.638 11.268 0 4.611 2.729 7.545 6.987 7.545 7.939 0 13.659-7.559 14.001-18.512zm14.171 32.996h-16.146l.371-7.676c-4.926 6.065-11.496 8.949-20.426 8.949-10.563 0-17.804-8.25-17.804-20.229 0-18.024 12.596-28.541 34.217-28.541 2.208 0 5.042.199 7.941.57.604-2.441.763-3.488.763-4.801 0-4.908-3.396-6.737-12.5-6.737-9.533-.108-17.396 2.271-20.625 3.333.204-1.229 2.7-16.659 2.7-16.659 9.712-2.846 16.116-3.917 23.325-3.917 16.732 0 25.596 7.513 25.579 21.712.033 3.805-.597 8.5-1.579 14.671-1.691 10.734-5.32 33.721-5.816 39.325zm-62.158 0h-19.487l11.162-69.997-24.925 69.997h-13.279l-1.642-69.597-11.733 69.597h-18.242l15.237-91.056h28.021l1.7 50.968 17.092-50.968h31.167zm354.97-32.996c-2.037-.238-2.941-.301-4.342-.301-11.041 0-16.634 3.787-16.634 11.268 0 4.611 2.726 7.545 6.983 7.545 7.94 0 13.664-7.559 13.993-18.512zm14.184 32.996h-16.146l.366-7.676c-4.926 6.065-11.5 8.949-20.422 8.949-10.565 0-17.8-8.25-17.8-20.229 0-18.024 12.588-28.541 34.213-28.541 2.208 0 5.037.199 7.934.57.604-2.441.763-3.488.763-4.801 0-4.908-3.392-6.737-12.496-6.737-9.533-.108-17.387 2.271-20.629 3.333.204-1.229 2.709-16.659 2.709-16.659 9.712-2.846 16.112-3.917 23.313-3.917 16.74 0 25.604 7.513 25.587 21.712.032 3.805-.597 8.5-1.579 14.671-1.684 10.734-5.321 33.721-5.813 39.325zm-220.39-1.125c-5.333 1.679-9.491 2.398-14 2.398-9.962 0-15.399-5.725-15.399-16.267-.142-3.271 1.433-11.88 2.671-19.737 1.125-6.917 8.449-50.529 8.449-50.529h19.371l-2.263 11.208h11.699l-2.642 17.796h-11.742c-2.25 14.083-5.454 31.625-5.491 33.95 0 3.816 2.037 5.483 6.671 5.483 2.221 0 3.94-.227 5.254-.7zm59.392-.6c-6.654 2.034-13.075 3.017-19.879 3-21.684-.021-32.987-11.346-32.987-33.032 0-25.313 14.38-43.947 33.899-43.947 15.971 0 26.171 10.433 26.171 26.796 0 5.429-.7 10.729-2.388 18.212h-38.574c-1.305 10.741 5.57 15.217 16.837 15.217 6.935 0 13.188-1.429 20.142-4.663zm-10.888-43.9c.107-1.543 2.055-13.217-9.013-13.217-6.171 0-10.583 4.704-12.38 13.217zm-123.42-5.017c0 9.367 4.542 15.826 14.842 20.676 7.892 3.709 9.112 4.81 9.112 8.17 0 4.617-3.479 6.701-11.191 6.701-5.813 0-11.221-.908-17.458-2.922 0 0-2.563 16.321-2.68 17.102 4.43.967 8.38 1.861 20.279 2.19 20.563 0 30.059-7.829 30.059-24.75 0-10.175-3.976-16.146-13.737-20.634-8.171-3.75-9.108-4.587-9.108-8.045 0-4.004 3.237-6.046 9.537-6.046 3.825 0 9.05.408 14 1.112l2.775-17.175c-5.046-.8-12.696-1.442-17.15-1.442-21.801.001-29.347 11.388-29.28 25.063m229.09-23.116c5.412 0 10.458 1.421 17.412 4.921l3.188-19.763c-2.854-1.121-12.904-7.7-21.417-7.7-13.041 0-24.065 6.471-31.82 17.15-11.309-3.746-15.958 3.825-21.657 11.367l-5.063 1.179c.383-2.483.729-4.95.612-7.446h-17.896c-2.445 22.917-6.778 46.128-10.171 69.075l-.884 4.976h19.496c3.254-21.143 5.037-34.68 6.121-43.842l7.341-4.084c1.097-4.078 4.529-5.458 11.417-5.291-.926 5.008-1.389 10.091-1.383 15.184 0 24.225 13.07 39.308 34.05 39.308 5.404 0 10.041-.712 17.221-2.658l3.43-20.759c-6.458 3.181-11.759 4.677-16.559 4.677-11.329 0-18.184-8.363-18.184-22.185 0-20.051 10.196-34.109 24.746-34.109\\\"/><path d=\\\"m185.21 297.24h-19.491l11.171-69.988-24.926 69.988h-13.283l-1.642-69.588-11.733 69.588h-18.241l15.237-91.042h28.021l.788 56.362 18.904-56.362h30.267z\\\" fill=\\\"#fff\\\"/><path d=\\\"m647.52 211.6-4.321 26.309c-5.329-7.013-11.054-12.088-18.612-12.088-9.833 0-18.783 7.455-24.642 18.425-8.158-1.692-16.597-4.563-16.597-4.563l-.004.067c.658-6.134.921-9.875.862-11.146h-17.9c-2.438 22.917-6.771 46.128-10.157 69.075l-.893 4.976h19.492c2.633-17.096 4.648-31.291 6.133-42.551 6.658-6.016 9.992-11.266 16.721-10.916-2.979 7.205-4.725 15.503-4.725 24.017 0 18.513 9.366 30.725 23.533 30.725 7.142 0 12.621-2.462 17.967-8.171l-.913 6.884h18.435l14.842-91.042zm-24.371 73.941c-6.634 0-9.983-4.908-9.983-14.596 0-14.555 6.271-24.875 15.112-24.875 6.695 0 10.32 5.104 10.32 14.509.001 14.679-6.37 24.962-15.449 24.962z\\\"/><path d=\\\"m233.19 264.26c-2.042-.236-2.946-.299-4.346-.299-11.046 0-16.634 3.787-16.634 11.266 0 4.604 2.729 7.547 6.979 7.547 7.947-.001 13.668-7.559 14.001-18.514zm14.178 32.984h-16.146l.367-7.663c-4.921 6.054-11.5 8.95-20.421 8.95-10.567 0-17.805-8.25-17.805-20.229 0-18.032 12.592-28.542 34.217-28.542 2.208 0 5.042.2 7.938.571.604-2.441.763-3.487.763-4.808 0-4.909-3.392-6.729-12.496-6.729-9.537-.108-17.396 2.271-20.629 3.321.204-1.225 2.7-16.637 2.7-16.637 9.708-2.858 16.12-3.929 23.32-3.929 16.737 0 25.604 7.517 25.588 21.704.029 3.821-.604 8.513-1.584 14.675-1.687 10.724-5.319 33.724-5.812 39.316zm261.38-88.592-3.191 19.767c-6.95-3.496-12-4.92-17.407-4.92-14.551 0-24.75 14.058-24.75 34.106 0 13.821 6.857 22.181 18.184 22.181 4.8 0 10.096-1.492 16.554-4.675l-3.421 20.75c-7.184 1.957-11.816 2.67-17.225 2.67-20.977 0-34.051-15.084-34.051-39.309 0-32.55 18.059-55.3 43.888-55.3 8.507.001 18.561 3.609 21.419 4.73m31.443 55.608c-2.041-.236-2.941-.299-4.347-.299-11.041 0-16.633 3.787-16.633 11.266 0 4.604 2.729 7.547 6.983 7.547 7.938-.001 13.663-7.559 13.997-18.514zm14.178 32.984h-16.15l.371-7.663c-4.925 6.054-11.5 8.95-20.421 8.95-10.563 0-17.804-8.25-17.804-20.229 0-18.032 12.596-28.542 34.212-28.542 2.213 0 5.042.2 7.941.571.601-2.441.763-3.487.763-4.808 0-4.909-3.393-6.729-12.495-6.729-9.533-.108-17.396 2.271-20.63 3.321.204-1.225 2.704-16.637 2.704-16.637 9.709-2.858 16.116-3.929 23.316-3.929 16.741 0 25.604 7.517 25.583 21.704.033 3.821-.596 8.513-1.579 14.675-1.682 10.724-5.323 33.724-5.811 39.316zm-220.39-1.121c-5.338 1.679-9.496 2.408-14 2.408-9.962 0-15.399-5.726-15.399-16.268-.138-3.279 1.438-11.88 2.675-19.736 1.12-6.926 8.445-50.534 8.445-50.534h19.368l-2.26 11.212h9.941l-2.646 17.788h-9.975c-2.25 14.092-5.463 31.62-5.496 33.95 0 3.83 2.041 5.482 6.671 5.482 2.221 0 3.938-.216 5.254-.691zm59.391-.592c-6.65 2.033-13.079 3.012-19.879 3-21.685-.021-32.987-11.346-32.987-33.033 0-25.321 14.379-43.95 33.899-43.95 15.971 0 26.171 10.429 26.171 26.8 0 5.434-.7 10.733-2.384 18.212h-38.574c-1.306 10.741 5.569 15.222 16.837 15.222 6.93 0 13.188-1.435 20.138-4.677zm-10.891-43.912c.116-1.538 2.06-13.217-9.013-13.217-6.167 0-10.579 4.717-12.375 13.217zm-123.42-5.005c0 9.367 4.542 15.818 14.842 20.675 7.892 3.709 9.112 4.812 9.112 8.172 0 4.616-3.483 6.699-11.188 6.699-5.816 0-11.225-.908-17.467-2.921 0 0-2.554 16.321-2.671 17.101 4.421.967 8.375 1.85 20.275 2.191 20.566 0 30.059-7.829 30.059-24.746 0-10.18-3.971-16.15-13.737-20.637-8.167-3.759-9.113-4.584-9.113-8.046 0-4 3.246-6.059 9.542-6.059 3.821 0 9.046.421 14.004 1.125l2.771-17.179c-5.042-.8-12.692-1.441-17.146-1.441-21.804 0-29.346 11.379-29.283 25.066m398.45 50.63h-18.438l.917-6.893c-5.347 5.717-10.825 8.18-17.968 8.18-14.166 0-23.528-12.213-23.528-30.726 0-24.63 14.521-45.392 31.708-45.392 7.559 0 13.279 3.087 18.604 10.096l4.325-26.308h19.221zm-28.746-17.109c9.075 0 15.45-10.283 15.45-24.953 0-9.405-3.629-14.509-10.325-14.509-8.837 0-15.115 10.315-15.115 24.875-.001 9.686 3.357 14.587 9.99 14.587zm-56.842-56.929c-2.441 22.917-6.773 46.13-10.162 69.063l-.892 4.976h19.491c6.972-45.275 8.658-54.117 19.588-53.009 1.742-9.267 4.982-17.383 7.399-21.479-8.163-1.7-12.721 2.913-18.688 11.675.471-3.788 1.333-7.467 1.162-11.225zm-160.42 0c-2.446 22.917-6.779 46.13-10.167 69.063l-.888 4.976h19.5c6.963-45.275 8.646-54.117 19.57-53.009 1.75-9.267 4.991-17.383 7.399-21.479-8.154-1.7-12.717 2.913-18.679 11.675.471-3.788 1.324-7.467 1.162-11.225zm254.57 68.241c-.004-3.199 2.586-5.795 5.784-5.799h.012c3.197-.004 5.793 2.586 5.796 5.783v.016c-.001 3.201-2.595 5.795-5.796 5.797-3.201-.002-5.795-2.596-5.796-5.797zm5.796 4.405c2.431.002 4.402-1.969 4.403-4.399v-.004c.003-2.433-1.968-4.406-4.399-4.408h-.004c-2.435.001-4.407 1.974-4.408 4.408.002 2.432 1.975 4.403 4.408 4.403zm-.784-1.871h-1.188v-5.082h2.153c.446 0 .909.009 1.296.254.417.283.654.767.654 1.274 0 .575-.337 1.112-.888 1.317l.941 2.236h-1.32l-.779-2.009h-.87zm0-2.879h.653c.246 0 .513.019.729-.1.196-.125.296-.361.296-.588-.009-.21-.114-.404-.287-.523-.204-.117-.542-.084-.763-.084h-.629z\\\" fill=\\\"#fff\\\"/></svg>\"","export default \"<svg enable-background=\\\"new 0 0 780 500\\\" viewBox=\\\"0 0 780 500\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"><path d=\\\"m40 .001h700c22.092 0 40 17.909 40 40v420c0 22.092-17.908 40-40 40h-700c-22.091 0-40-17.908-40-40v-420c0-22.091 17.909-40 40-40z\\\" fill=\\\"#2557d6\\\"/><path d=\\\"m.253 235.69h37.441l8.442-19.51h18.9l8.42 19.51h73.668v-14.915l6.576 14.98h38.243l6.576-15.202v15.138h183.08l-.085-32.026h3.542c2.479.083 3.204.302 3.204 4.226v27.8h94.689v-7.455c7.639 3.92 19.518 7.455 35.148 7.455h39.836l8.525-19.51h18.9l8.337 19.51h76.765v-18.532l11.626 18.532h61.515v-122.51h-60.88v14.468l-8.522-14.468h-62.471v14.468l-7.828-14.468h-84.38c-14.123 0-26.539 1.889-36.569 7.153v-7.153h-58.229v7.153c-6.383-5.426-15.079-7.153-24.75-7.153h-212.74l-14.274 31.641-14.659-31.641h-67.005v14.468l-7.362-14.468h-57.145l-26.539 58.246v64.261h.003zm236.34-17.67h-22.464l-.083-68.794-31.775 68.793h-19.24l-31.858-68.854v68.854h-44.57l-8.42-19.592h-45.627l-8.505 19.592h-23.801l39.241-87.837h32.559l37.269 83.164v-83.164h35.766l28.678 59.587 26.344-59.587h36.485zm-165.9-37.823-14.998-35.017-14.915 35.017zm255.3 37.821h-73.203v-87.837h73.203v18.291h-51.289v15.833h50.06v18.005h-50.061v17.542h51.289zm103.16-64.18c0 14.004-9.755 21.24-15.439 23.412 4.794 1.748 8.891 4.838 10.84 7.397 3.094 4.369 3.628 8.271 3.628 16.116v17.255h-22.104l-.083-11.077c0-5.285.528-12.886-3.458-17.112-3.202-3.09-8.083-3.76-15.973-3.76h-23.523v31.95h-21.914v-87.838h50.401c11.199 0 19.451.283 26.535 4.207 6.933 3.924 11.09 9.652 11.09 19.45zm-27.699 13.042c-3.013 1.752-6.573 1.81-10.841 1.81h-26.62v-19.51h26.982c3.818 0 7.804.164 10.393 1.584 2.842 1.28 4.601 4.003 4.601 7.765 0 3.84-1.674 6.929-4.515 8.351zm62.844 51.138h-22.358v-87.837h22.358zm259.56 0h-31.053l-41.535-65.927v65.927h-44.628l-8.527-19.592h-45.521l-8.271 19.592h-25.648c-10.649 0-24.138-2.257-31.773-9.715-7.701-7.458-11.708-17.56-11.708-33.533 0-13.027 2.395-24.936 11.812-34.347 7.085-7.01 18.18-10.242 33.28-10.242h21.215v18.821h-20.771c-7.997 0-12.514 1.14-16.862 5.203-3.735 3.699-6.298 10.69-6.298 19.897 0 9.41 1.951 16.196 6.023 20.628 3.373 3.476 9.506 4.53 15.272 4.53h9.842l30.884-69.076h32.835l37.102 83.081v-83.08h33.366l38.519 61.174v-61.174h22.445zm-133.2-37.82-15.165-35.017-15.081 35.017zm189.04 178.08c-5.322 7.457-15.694 11.238-29.736 11.238h-42.319v-18.84h42.147c4.181 0 7.106-.527 8.868-2.175 1.665-1.474 2.605-3.554 2.591-5.729 0-2.561-1.064-4.593-2.677-5.811-1.59-1.342-3.904-1.95-7.722-1.95-20.574-.67-46.244.608-46.244-27.194 0-12.742 8.443-26.156 31.439-26.156h43.649v-17.479h-40.557c-12.237 0-21.129 2.81-27.425 7.174v-7.175h-59.985c-9.595 0-20.854 2.279-26.179 7.175v-7.175h-107.12v7.175c-8.524-5.892-22.908-7.175-29.549-7.175h-70.656v7.175c-6.745-6.258-21.742-7.175-30.886-7.175h-79.077l-18.094 18.764-16.949-18.764h-118.13v122.59h115.9l18.646-19.062 17.565 19.062 71.442.061v-28.838h7.021c9.479.14 20.66-.228 30.523-4.312v33.085h58.928v-31.952h2.842c3.628 0 3.985.144 3.985 3.615v28.333h179.01c11.364 0 23.244-2.786 29.824-7.845v7.845h56.78c11.815 0 23.354-1.587 32.134-5.649l.002-22.84zm-354.94-47.155c0 24.406-19.005 29.445-38.159 29.445h-27.343v29.469h-42.591l-26.984-29.086-28.042 29.086h-86.802v-87.859h88.135l26.961 28.799 27.875-28.799h70.021c17.389 0 36.929 4.613 36.929 28.945zm-174.22 40.434h-53.878v-17.48h48.11v-17.926h-48.11v-15.974h54.939l23.969 25.604zm86.81 10.06-33.644-35.789 33.644-34.65zm49.757-39.066h-28.318v-22.374h28.572c7.912 0 13.404 3.09 13.404 10.772 0 7.599-5.238 11.602-13.658 11.602zm148.36-40.373h73.138v18.17h-51.315v15.973h50.062v17.926h-50.062v17.48l51.314.08v18.23h-73.139zm-28.119 47.029c4.878 1.725 8.865 4.816 10.734 7.375 3.095 4.291 3.542 8.294 3.631 16.037v17.418h-22.002v-10.992c0-5.286.531-13.112-3.542-17.198-3.201-3.147-8.083-3.899-16.076-3.899h-23.42v32.09h-22.02v-87.859h50.594c11.093 0 19.173.47 26.366 4.146 6.915 4.004 11.266 9.487 11.266 19.511-.001 14.022-9.764 21.178-15.531 23.371zm-12.385-11.107c-2.932 1.667-6.556 1.811-10.818 1.811h-26.622v-19.732h26.982c3.902 0 7.807.08 10.458 1.587 2.84 1.423 4.538 4.146 4.538 7.903 0 3.758-1.699 6.786-4.538 8.431zm197.82 5.597c4.27 4.229 6.554 9.571 6.554 18.613 0 18.9-12.322 27.723-34.425 27.723h-42.68v-18.84h42.51c4.157 0 7.104-.525 8.95-2.175 1.508-1.358 2.589-3.333 2.589-5.729 0-2.561-1.17-4.592-2.675-5.811-1.675-1.34-3.986-1.949-7.803-1.949-20.493-.67-46.157.609-46.157-27.192 0-12.744 8.355-26.158 31.33-26.158h43.932v18.7h-40.198c-3.984 0-6.575.145-8.779 1.587-2.4 1.422-3.29 3.534-3.29 6.319 0 3.314 2.037 5.57 4.795 6.546 2.311.77 4.795.995 8.526.995l11.797.306c11.895.276 20.061 2.248 25.024 7.065zm86.955-23.52h-39.938c-3.986 0-6.638.144-8.867 1.587-2.312 1.423-3.202 3.534-3.202 6.322 0 3.314 1.951 5.568 4.791 6.544 2.312.771 4.795.996 8.444.996l11.878.304c11.983.284 19.982 2.258 24.86 7.072.891.67 1.422 1.422 2.033 2.175v-25z\\\" fill=\\\"#fff\\\"/></svg>\"","export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 40 26\\\"><path fill=\\\"#fff\\\" d=\\\"M0 0h40v26H0z\\\"/><path fill=\\\"#55b147\\\" d=\\\"M28.38 13.41h2.44l.04.01h.04l.03.01h.03l.01.01.04.01.04.01.04.02.04.01.04.02.03.02.04.02.04.02.04.02.04.03.04.03.03.04c.02 0 .03.02.04.03l.04.04.04.05.04.05.04.06.04.08.03.09a1.05 1.05 0 0 1 .04.13 1.13 1.13 0 0 1 0 .49 1.05 1.05 0 0 1-.04.13l-.03.09-.04.07-.04.06-.04.06-.04.04-.04.04c0 .02-.02.03-.04.04l-.03.03-.04.03-.04.03-.04.03-.04.02-.04.02-.03.02-.04.02-.04.01-.04.01-.04.01-.04.01h-.01l-.03.01h-.03l-.04.01h-.04l-.04.01h-2.4v-2.1zm3.1-2.38a1.07 1.07 0 0 1 0 .45.96.96 0 0 1-.05.13.93.93 0 0 1-.03.09l-.04.07-.04.06-.04.05-.04.04-.04.04-.03.03-.04.03-.04.03-.04.02-.04.03-.04.02-.04.02-.03.01-.04.02h-.04l-.04.02h-.04l-.04.02h-.07l-.04.01h-2.22V10.3h2.31l.02.01h.01l.04.01.04.01.04.01.04.01.04.02.03.01.04.02.04.02.04.03.04.02.04.03.04.03.03.03.04.04.04.05.04.04.04.06.04.07a.93.93 0 0 1 .03.1.96.96 0 0 1 .04.12zM36.23.97h.02V20.9c0 .12 0 .23-.02.35l-.04.3-.03.2-.04.17-.04.13a4.12 4.12 0 0 1-.08.23l-.04.1-.03.1-.04.08-.04.08-.04.08-.04.07-.04.07-.04.07-.03.06-.04.06-.04.06-.04.06-.04.05-.04.05-.03.05-.04.05-.04.05-.04.05-.04.04-.04.05-.04.04-.03.04-.04.04-.04.04-.04.04-.04.03-.04.04-.03.03-.04.04-.04.03-.04.03-.04.04-.04.03-.04.03-.03.03-.04.02-.04.03-.04.03-.04.03-.04.02-.03.03-.04.02-.04.03-.04.02-.04.02-.04.02-.04.03-.03.02-.04.02-.04.02-.04.02-.04.02-.04.01-.03.02-.04.02-.04.02-.04.01-.04.02-.04.01-.04.02-.03.01-.04.02-.04.01-.04.01-.04.02-.04.01-.04.01-.03.01-.04.01-.04.01-.04.01-.04.01-.04.01-.03.01-.04.01-.04.01h-.04l-.04.02h-.08l-.03.02h-.08l-.04.01h-.04l-.04.01h-.07l-.04.01h-.12l-.04.01h-6v-8.12h6.39l.04-.01h.12l.04-.01h.04l.04-.01h.04l.04-.01h.03l.04-.01.04-.01h.04l.04-.02h.04l.04-.01.03-.01.04-.01.04-.01.04-.01.04-.02h.04l.03-.02.04-.01.04-.02.04-.01.04-.02.04-.01.04-.02.03-.02.04-.02.04-.01.04-.02.04-.02.04-.03.03-.02.04-.02.04-.03.04-.02.04-.03.04-.03.04-.03.03-.03.04-.03.04-.03.04-.04.04-.04.04-.04.03-.04.04-.04.04-.05a1.87 1.87 0 0 0 .08-.11l.04-.06.04-.07.03-.07.04-.1.04-.1.04-.13a1.8 1.8 0 0 0 .04-.2 1.93 1.93 0 0 0 .01-.25 1.8 1.8 0 0 0-.01-.25 1.7 1.7 0 0 0-.04-.2l-.04-.12-.04-.1-.04-.09-.03-.07-.04-.07-.04-.05a1.7 1.7 0 0 0-.08-.1l-.04-.06-.04-.04-.03-.04-.04-.04-.04-.03-.04-.04-.04-.03-.04-.03-.03-.03-.04-.03-.04-.03-.04-.02-.04-.03-.04-.02-.04-.03-.03-.02-.04-.02-.04-.02-.04-.02-.04-.02-.04-.01-.03-.02-.04-.02-.04-.01-.04-.02-.04-.01-.04-.01-.04-.02h-.03l-.04-.02-.04-.01-.04-.01-.04-.01-.04-.01-.04-.01-.03-.01h-.04l-.04-.02h-.04l-.04-.01h-.04l-.03-.01h-.04l-.04-.01h-.04l-.04-.01h-.04l-.04-.01h-.07v-.05h.04l.03-.01.04-.01h.04l.04-.02h.04l.04-.01.04-.01.03-.01.04-.01.04-.02h.04l.04-.02.04-.01.04-.02.03-.01.04-.02.04-.01.04-.02.04-.02.04-.02.03-.02.04-.02.04-.02.04-.02.04-.03.04-.02.04-.03.03-.03.04-.03.04-.03.04-.03.04-.04.04-.03.03-.04.04-.05.04-.04.04-.05.04-.05.04-.05.04-.07.03-.06.04-.08.04-.09.04-.1.04-.14a1.75 1.75 0 0 0 .04-.23 1.82 1.82 0 0 0 0-.18v-.2a1.77 1.77 0 0 0-.04-.23l-.04-.13-.04-.1-.04-.1-.04-.07-.03-.07-.04-.06-.04-.05-.04-.05a1.66 1.66 0 0 0-.04-.05l-.04-.04-.04-.04-.03-.04-.04-.03-.04-.04-.04-.03-.04-.03-.04-.03-.03-.03-.04-.02-.04-.03-.04-.02-.04-.02-.04-.02-.04-.02-.03-.02-.04-.02-.04-.02-.04-.01-.04-.02-.04-.02-.03-.01-.04-.01-.04-.02-.04-.01-.04-.01-.04-.01-.04-.01-.03-.01-.04-.01-.04-.01-.04-.01-.04-.01h-.04l-.04-.02h-.07l-.04-.01-.04-.01h-.04l-.04-.01h-.07l-.04-.01h-.12l-.01-.01h-.18l-.04-.01h-5.81V4.95a4 4 0 0 1 .08-.82l.04-.16.04-.14.04-.13.03-.11.04-.1.04-.1.04-.08.04-.09.04-.07.04-.08.03-.07.04-.07.04-.06.04-.06.04-.06.04-.06.03-.05.04-.06.04-.05.04-.05.04-.05.04-.04.04-.05.03-.04.04-.04.04-.05.04-.04.04-.03.04-.04.03-.04.04-.04.04-.03.04-.04.04-.03.04-.03.04-.03.03-.03.04-.03.04-.03.04-.03.04-.03.04-.03.03-.03.04-.02.04-.03.04-.02.04-.03.04-.02.04-.02.03-.02.04-.03.04-.02.04-.02.04-.02.04-.02.03-.02.04-.02.04-.01.04-.02.04-.02.04-.01.04-.02.03-.02.04-.01.04-.02.04-.01.04-.01.04-.02.03-.01.04-.01.04-.01.04-.02h.04l.04-.02h.04l.03-.02h.04l.04-.02h.04l.04-.01.04-.01.04-.01h.03l.04-.01.04-.01h.04l.04-.01h.04l.03-.01h.04l.04-.01h.08l.04-.01h.23l.04-.01h5.84z\\\"/><path fill=\\\"#0d6db5\\\" d=\\\"M4.38 14.8V4.96a4 4 0 0 1 .08-.81l.04-.17.03-.14.04-.13a3.87 3.87 0 0 1 .08-.21l.04-.1.04-.08.03-.09.04-.07.04-.08.04-.07.04-.06.04-.07.04-.06.03-.06.04-.06.04-.05.04-.05.04-.06.04-.05.03-.04.04-.05.04-.05.04-.04.04-.04.04-.04.03-.04.04-.04.04-.04.04-.04.04-.03.04-.04.03-.03.04-.04.04-.03.04-.03.04-.03.04-.03.04-.03.03-.03.04-.03.04-.03.04-.02.04-.03.04-.02.03-.03.04-.02.04-.03.04-.02.04-.02.04-.02.03-.03.04-.02.04-.02.04-.02.04-.01.04-.02.03-.02.04-.02.04-.02.04-.01.04-.02.04-.01.04-.02.03-.01L7 1.2l.04-.01.04-.02h.04l.04-.02.03-.01.04-.01.04-.02h.04l.04-.02h.04l.03-.02h.04l.04-.01.04-.01.04-.01h.04l.03-.02h.08L7.76 1h.19L8 .98h.08L8.1.97h.2l.04-.01h5.87V20.9a4.03 4.03 0 0 1-.04.51c0 .08-.02.16-.04.24l-.03.18-.04.15-.04.12-.04.12-.04.1-.04.1-.03.09-.04.08-.04.08-.04.08-.04.07-.04.07-.03.06a3.9 3.9 0 0 1-.04.07l-.04.06-.04.05-.04.06-.04.05-.04.05-.03.05-.04.05-.04.05-.04.05-.04.04-.04.04-.03.04-.04.05-.04.03-.04.04-.04.04-.04.04-.03.03-.04.04-.04.03-.04.03-.04.04-.04.03-.03.03-.04.03-.04.03-.04.02-.04.03-.04.03-.04.03-.03.02-.04.03-.04.02-.04.02-.04.03-.04.02-.03.02-.04.02-.04.02-.04.02-.04.02-.04.02-.03.02-.04.02-.04.02-.04.01-.04.02-.04.02-.03.01-.04.02-.04.01-.04.02-.04.01-.04.02h-.04l-.03.02-.04.01-.04.02h-.04l-.04.02h-.04l-.03.02h-.04l-.04.02h-.04l-.04.01-.04.01-.03.01h-.04l-.04.01-.04.01h-.04l-.04.01h-.03l-.04.01h-.04l-.04.01h-.08l-.04.01h-.11l-.04.01H4.38v-8.4l.08.03h.04l.03.01.04.01.04.01.04.01.04.01h.04l.03.02h.04l.04.01.04.01.04.01h.04l.04.02h.03l.04.01.04.01h.04l.04.01.04.01h.03l.04.02h.04l.04.01h.04l.04.01.03.01h.04l.04.01.04.01h.04l.04.01h.03l.04.01.04.01h.04l.04.01h.04l.04.01h.03l.04.01.04.01h.04l.04.01h.04l.03.01h.04l.04.01h.04l.04.01h.07l.04.01h.04l.04.01h.04l.04.01h.07l.04.01h.04l.04.01h.08l.03.01h.08l.04.01h.08l.03.01h.12l.04.01h.11l.04.01h.15l.04.01h.2l.03.01h1.27l.04-.01h.11l.04-.01h.08l.04-.01h.07l.04-.01h.08l.04-.01h.08l.03-.01h.04l.04-.01h.04l.04-.01h.04l.03-.01h.04l.04-.01.04-.01h.04l.04-.01.03-.01h.04l.04-.01.04-.01h.04l.04-.02h.03l.04-.01h.04l.04-.02h.04l.04-.02h.04l.03-.01.04-.01.04-.01.04-.01.04-.01.04-.01.03-.02h.04l.04-.02.04-.01.04-.01.04-.02h.03l.04-.02.04-.02.04-.01.04-.01.04-.02.03-.01.04-.02.04-.02.04-.01.04-.02.04-.02.04-.01.03-.02.04-.02.04-.02.04-.02.04-.02.04-.02.03-.02.04-.03.04-.02.04-.02.04-.03.04-.02.03-.03.04-.03.04-.02.04-.03.04-.03.04-.03.03-.04.04-.03.04-.03.04-.04.04-.04.04-.04.04-.04.03-.04.04-.04.04-.05.04-.05a2.63 2.63 0 0 0 .08-.1l.03-.06.04-.06.04-.07.04-.07.04-.08.04-.08.03-.1.04-.1.04-.12.04-.14.04-.18.04-.27.02-.4V9.09h-3.4l-.03 4.63-.01.21a2.21 2.21 0 0 1-.04.26l-.04.16-.04.11-.03.1-.04.09a1.77 1.77 0 0 1-.08.14l-.04.06-.04.05a1.7 1.7 0 0 1-.07.1l-.04.05-.04.04-.04.04-.04.03-.04.04-.03.03-.04.03-.04.03-.04.03-.04.02-.04.03-.03.02-.04.02-.04.02-.04.02-.04.02-.04.02-.03.02-.04.01-.04.02-.04.01-.04.01-.04.02H8.6l-.03.02h-.04l-.04.02h-.04l-.04.02h-.04l-.03.01H8.3l-.04.01h-.04l-.04.01h-.04l-.03.01h-.12l-.04.01h-.5l-.04-.01h-.07l-.04-.01h-.08l-.04-.01h-.07l-.04-.01h-.04l-.04-.01h-.04l-.03-.01-.04-.01h-.04l-.04-.01h-.04l-.04-.02h-.04l-.03-.01H6.6l-.04-.01-.04-.01-.04-.01h-.04l-.03-.02h-.04l-.04-.01-.04-.01-.04-.01-.04-.01-.03-.01-.04-.01-.04-.01-.04-.01-.04-.01-.04-.01-.03-.01-.04-.02h-.04l-.04-.02-.04-.01-.04-.01-.04-.01-.03-.02-.04-.01-.04-.01-.04-.02h-.04l-.04-.02-.03-.02h-.04l-.04-.02-.04-.02-.04-.01-.04-.02-.03-.01-.04-.02-.04-.01-.04-.02-.04-.01-.04-.02-.03-.01-.04-.02-.04-.01-.04-.02-.04-.02L4.8 15l-.04-.02-.03-.02-.04-.01-.04-.02-.04-.02-.04-.02-.04-.02-.03-.01-.04-.02z\\\"/><path fill=\\\"#e01d3b\\\" d=\\\"m15.48 10.1-.08.07V4.96a4 4 0 0 1 .08-.81l.04-.17.04-.14.04-.13.04-.1.04-.11.03-.1.04-.08.04-.08.04-.08.04-.08.04-.07.03-.06.04-.07.04-.06.04-.06.04-.06.04-.05.04-.05.03-.06.04-.05.04-.04.04-.05.04-.04.04-.05.03-.04.04-.04.04-.04.04-.04.04-.04.04-.04.03-.03.04-.04.04-.03.04-.04.04-.03.04-.03.03-.03.04-.03.04-.03.04-.03.04-.03.04-.03.04-.02.03-.03.04-.02.04-.03.04-.02.04-.03.04-.02.03-.02.04-.02.04-.03.04-.02.04-.02.04-.02.03-.01.04-.02.04-.02.04-.02.04-.02.04-.01.03-.02.04-.01.04-.02.04-.01.04-.02.04-.01.04-.02h.03l.04-.02.04-.01.04-.01.04-.02h.04l.03-.02h.04l.04-.02h.04l.04-.01.04-.01.03-.01h.04l.04-.02h.08l.04-.01.04-.01h.03L18.9 1h.08l.04-.01h.07l.04-.01h.19l.04-.01h5.87V20.9a4.02 4.02 0 0 1-.03.5l-.04.25-.04.18-.04.15-.03.12-.04.12-.04.1-.04.1-.04.09-.04.08-.03.08-.04.08-.04.07-.04.07-.04.06-.04.07-.03.06-.04.05-.04.06-.04.05-.04.05-.04.05-.03.05-.04.05-.04.05-.04.04-.04.04-.04.04-.04.05-.03.03-.04.04-.04.04-.04.04-.04.03-.04.04-.03.03-.04.03-.04.04-.04.03-.04.03-.04.03-.03.03-.04.02-.04.03-.04.03-.04.03-.04.02-.04.03-.03.02-.04.02-.04.03-.04.02-.04.02-.04.02-.03.02-.04.02-.04.02-.04.02-.04.02-.04.02-.03.02-.04.01-.04.02-.04.02-.04.01-.04.02-.03.01-.04.02-.04.01-.04.02h-.04l-.04.02-.04.01-.03.01-.04.02h-.04l-.04.02h-.04l-.04.02h-.03l-.04.02h-.04l-.04.01-.04.01h-.04l-.03.01-.04.01h-.04l-.04.01h-.04l-.04.01h-.03l-.04.01h-.08l-.04.01h-.11l-.04.01h-6v-9.2l.08.07.04.03.04.03.04.03.04.03.04.03.03.02.04.03.04.02.04.03.04.02.04.03.03.02.04.02.04.03.04.02.04.02.04.02.04.02.03.02.04.02.04.02.04.02.04.02.04.01.03.02.04.02.04.01.04.02.04.02.04.01.03.02.04.01.04.02.04.01.04.02.04.01.03.01.04.02.04.01.04.01.04.02h.04l.04.02.03.01.04.01.04.01.04.01.04.02h.04l.03.02h.04l.04.02h.04l.04.01.04.01.03.01.04.01.04.01h.04l.04.02h.04l.03.01.04.01h.04l.04.02h.08l.04.02h.07l.04.02h.08l.04.01h.03l.04.01.04.01h.04l.04.01h.07l.04.01h.04l.04.01h.04l.04.01h.07l.04.01h.08l.04.01h.07l.04.01h.08l.04.01h.15l.04.01h.19l.04.01h.46l.04.01h.58l.03-.01H21l.02-.01h.16l.04-.01h.1l.04-.01h.08l.03-.01h.08l.04-.01h.08l.04-.01h.03l.04-.01h.04l.04-.01h.08l.03-.01h.04l.04-.01h.04l.04-.01h.04l.03-.01h.04l.04-.01h.04l.04-.01.04-.01h.03l.04-.01h.04l.04-.01h.04l.04-.02h.07l.04-.01.04-.01h.04l.04-.01.04-.01h.03l.04-.01.04-.01h.04l.04-.01.04-.01h.03l.04-.02h.04l.04-.01h.04l.04-.02h.04l.03-.01h.04l.04-.02h.04l.04-.01.04-.01.03-.01h.04l.04-.02h.04l.04-.01.04-.01.03-.01h.04l.04-.02h.04l.04-.02h.04l.03-.01v-1.7l-.03.03-.04.02-.04.02-.04.01-.04.02-.04.02-.03.02-.04.02-.04.01-.04.02-.04.02-.04.02-.03.01-.04.02-.04.02-.04.01-.04.02-.04.02-.04.01-.03.02-.04.01-.04.02-.04.01-.04.02-.04.01-.03.02h-.04l-.04.02-.04.02-.04.01-.04.01-.03.02h-.04l-.04.02-.04.01-.04.02h-.04l-.03.02-.04.01-.04.01-.04.01-.04.01-.04.01-.04.01-.03.01-.04.01-.04.01-.04.01-.04.01-.04.01-.03.01h-.04l-.04.02h-.04l-.04.01-.04.01h-.03l-.04.02h-.08l-.04.02h-.07l-.04.01-.04.01h-.04l-.04.01h-.04l-.04.01h-.03l-.04.01h-.08l-.04.01h-.04l-.03.01h-.1l-.02.01h-.15l-.04.01h-.58l-.04-.01h-.07l-.04-.01h-.04l-.04-.01h-.04l-.03-.01h-.04l-.04-.01-.04-.01h-.04l-.04-.01-.03-.01-.04-.01h-.04l-.04-.02h-.04l-.04-.02h-.04l-.03-.02-.04-.01-.04-.01-.04-.02h-.04l-.04-.02-.03-.02-.04-.01-.04-.02-.04-.01-.04-.02-.04-.02-.03-.02-.04-.01-.04-.02-.04-.02-.04-.03-.04-.02-.03-.02-.04-.03-.04-.02-.04-.03-.04-.02-.04-.03-.04-.03-.03-.03-.04-.03-.04-.04-.04-.03-.04-.04-.04-.04-.03-.04-.04-.04-.04-.05-.04-.04-.04-.05a2.28 2.28 0 0 1-.04-.06l-.03-.05-.04-.06-.04-.07-.04-.06-.04-.08-.04-.08a2.58 2.58 0 0 1-.07-.2l-.04-.11-.04-.14-.04-.19-.04-.28-.01-.34.01-.35.04-.28.04-.18.04-.14.04-.12a2.63 2.63 0 0 1 .07-.2l.04-.08.04-.07.04-.07.04-.06.04-.06.03-.06.04-.05.04-.05.04-.05.04-.04.04-.05.03-.04.04-.04.04-.03.04-.04.04-.03.04-.03.03-.03.04-.03.04-.03.04-.03.04-.03.04-.02.04-.02.03-.03.04-.02.04-.02.04-.02.04-.02.04-.02.03-.02.04-.02.04-.01.04-.02.04-.01.04-.02.03-.01.04-.02.04-.01.04-.01.04-.02h.04l.03-.02h.04l.04-.02h.04l.04-.02h.04l.04-.01.03-.01h.04l.04-.02h.08l.04-.02h.07l.04-.01h.08l.04-.01h.07l.04-.01h.15l.04-.01h.46l.04.01h.08l.04.01h.07l.04.01h.08l.04.01h.04l.03.01h.04l.04.01h.04l.04.01h.04l.04.01.03.01h.04l.04.01.04.01h.04l.04.01.03.01h.04l.04.02h.04l.04.01.04.01.03.01.04.01h.04l.04.02h.04l.04.02h.03l.04.02h.04l.04.02.04.01.04.01.04.01.03.01.04.02h.04l.04.02.04.01.04.02h.03l.04.02.04.01.04.02.04.01.04.02.03.01.04.02.04.01.04.01.04.02.04.02.03.01.04.02.04.01.04.02.04.02.04.01.04.02.03.02.04.01.04.02.04.02.04.02.04.01.03.02.04.02.04.02.04.02.04.02.04.02.03.02v-1.7h-.03l-.04-.01H24l-.04-.02h-.04l-.04-.02h-.03l-.04-.01-.04-.01-.04-.01h-.04l-.04-.02h-.03l-.04-.01-.04-.01h-.04l-.04-.02h-.04l-.04-.01-.03-.01h-.04l-.04-.01-.04-.01-.04-.01h-.04l-.03-.01-.04-.01h-.04L23 9.12h-.08l-.03-.02h-.08l-.04-.02h-.08l-.03-.01-.04-.01h-.04l-.04-.01h-.04l-.04-.01-.04-.01h-.03l-.04-.01h-.04l-.04-.01h-.04L22.2 9h-.11l-.04-.01h-.04l-.04-.01h-.03l-.04-.01h-.04l-.04-.01h-.08l-.03-.01h-.04l-.04-.01h-.08l-.04-.01h-.07l-.04-.01h-.08l-.04-.01h-.11l-.04-.01h-.19l-.04-.01h-.27l-.04-.01h-1.04l-.03.01h-.16l-.04.01h-.11l-.04.01h-.11l-.04.01h-.08l-.04.01h-.04l-.03.01h-.08l-.04.01h-.04l-.04.01h-.04l-.03.01h-.04l-.04.01h-.04L18.4 9h-.04l-.03.01h-.04l-.04.01h-.04l-.04.02h-.07l-.04.02h-.08l-.04.02h-.04l-.04.01-.03.01h-.04l-.04.02h-.04l-.04.01-.04.01-.03.01-.04.01h-.04l-.04.02h-.04l-.04.02h-.03l-.04.02-.04.01-.04.01-.04.01-.04.01-.03.02h-.04l-.04.02-.04.01-.04.01-.04.02-.04.01-.03.01-.04.02-.04.01-.04.02-.04.01-.04.02-.03.01-.04.02-.04.01-.04.02-.04.02-.04.01-.03.02-.04.02-.04.02-.04.02-.04.02-.04.01-.03.02-.04.03-.04.02-.04.02-.04.02-.04.02-.04.02-.03.03-.04.02-.04.03-.04.02-.04.03-.04.02-.03.03-.04.03-.04.03-.04.02-.04.03-.04.04z\\\"/></svg>\"","export default \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\" viewBox=\\\"0 0 40 26\\\"><rect width=\\\"45.3\\\" height=\\\"27\\\" x=\\\"-3.3\\\" y=\\\"-.79\\\" fill=\\\"#fff\\\" rx=\\\"2.82\\\"/><path fill=\\\"#01798a\\\" d=\\\"M27.27-.79a4.06 4.06 0 0 0-3.6 2.8l-4.96 23.42a2.14 2.14 0 0 0 2 2.8h18.35a2.81 2.81 0 0 0 2.8-2.82V1.15A2.25 2.25 0 0 0 40-.8\\\"/><rect width=\\\"20.38\\\" height=\\\"29.02\\\" x=\\\"-4\\\" y=\\\"-.79\\\" fill=\\\"#dc1f2b\\\" rx=\\\"2.82\\\"/><path fill=\\\"#1a4580\\\" d=\\\"M24.37 2.02a3.98 3.98 0 0 1 3.48-2.8H14.18a3.97 3.97 0 0 0-3.5 2.8l-4.85 23.4a2.13 2.13 0 0 0 1.94 2.81h13.7a2.13 2.13 0 0 1-1.94-2.8z\\\"/><path fill=\\\"#fff\\\" d=\\\"M16.63 15.04h.18a.32.32 0 0 0 .32-.17l.46-.7h1.24l-.26.47h1.49l-.2.7H18.1a.82.82 0 0 1-.75.44h-.92zm-.2 1h3.25l-.21.77h-1.3l-.2.74h1.27l-.21.77h-1.27l-.3 1.09c-.07.18.02.26.29.24h1.03l-.19.71H16.6q-.57 0-.39-.65l.38-1.4h-.81l.2-.76h.82l.2-.74h-.78l.2-.76zm5.19-1.87-.06.45a2.37 2.37 0 0 1 1.18-.47h2.05l-.78 2.88q-.1.5-.84.5h-2.34l-.54 2.01c-.03.11.01.17.13.17h.46l-.17.62h-1.17q-.67 0-.56-.4l1.54-5.76zm1.74.81h-1.84l-.22.78a1.52 1.52 0 0 1 .82-.23h1.1zm-.67 1.8c.14.02.22-.03.22-.16l.12-.4h-1.84l-.16.57zm-1.24.93h1.06l-.02.47h.29c.14 0 .2-.05.2-.14l.1-.3h.87l-.11.44a.76.76 0 0 1-.8.57h-.56v.8c-.01.12.1.18.33.18h.53l-.17.63H21.9c-.36.02-.53-.15-.53-.52zM8.6 10.34a2.62 2.62 0 0 1-1 1.64 3.24 3.24 0 0 1-1.98.58 2.16 2.16 0 0 1-1.68-.59 1.54 1.54 0 0 1-.37-1.06 2.86 2.86 0 0 1 .06-.57l.87-4.2h1.3l-.85 4.15a1.35 1.35 0 0 0-.04.32.82.82 0 0 0 .16.52.89.89 0 0 0 .75.3 1.56 1.56 0 0 0 1-.3 1.37 1.37 0 0 0 .5-.84l.84-4.15h1.3zm5.47-1.65h1.02l-.8 3.74h-1.02zm.32-1.37h1.03l-.2.91H14.2l.19-.9M16 12.15a1.39 1.39 0 0 1-.41-1.05 2.45 2.45 0 0 1 .01-.25l.04-.27a2.55 2.55 0 0 1 .78-1.45 2.07 2.07 0 0 1 1.43-.54 1.5 1.5 0 0 1 1.1.39 1.4 1.4 0 0 1 .4 1.06 2.59 2.59 0 0 1-.02.26l-.05.28a2.48 2.48 0 0 1-.77 1.42 2.08 2.08 0 0 1-1.43.53 1.5 1.5 0 0 1-1.09-.38m1.95-.74a1.84 1.84 0 0 0 .38-.9.58.58 0 0 0 .03-.19 1.74 1.74 0 0 0 .01-.17.76.76 0 0 0-.17-.54.64.64 0 0 0-.5-.2.89.89 0 0 0-.7.3 1.9 1.9 0 0 0-.38.92l-.03.18a1.36 1.36 0 0 0-.01.17.75.75 0 0 0 .17.54.64.64 0 0 0 .5.18.9.9 0 0 0 .7-.3m8.02 3.67.25-.87h1.24l-.05.32a3.1 3.1 0 0 1 1.09-.32h1.54l-.25.87h-.24l-1.16 4.12h.24l-.23.82h-.24l-.1.36h-1.2l.1-.36h-2.38l.23-.82h.24l1.16-4.12zm1.34 0L27 16.2a5.13 5.13 0 0 1 1-.27c.1-.4.24-.85.24-.85zm-.46 1.64-.32 1.17a3.44 3.44 0 0 1 1.01-.33l.24-.84zm.23 2.48.24-.84h-.93l-.24.84zm3.01-5.05h1.17l.05.44c0 .11.06.16.2.16h.2l-.2.74h-.87c-.32.02-.5-.1-.5-.38zm-.34 1.59h3.79l-.23.79h-1.2l-.2.74h1.2l-.23.79h-1.34l-.3.46h.65l.16.93c.01.09.1.13.23.13h.2l-.2.77h-.73c-.37.02-.57-.1-.58-.38l-.18-.85-.6.9a.65.65 0 0 1-.65.36h-1.1l.22-.77h.34a.46.46 0 0 0 .36-.19l.94-1.36h-1.2l.22-.8h1.3l.21-.73h-1.3l.22-.8zM9.8 8.69h.92l-.1.54.12-.16a1.43 1.43 0 0 1 1.1-.48 1 1 0 0 1 .83.34 1.15 1.15 0 0 1 .14.95l-.5 2.56h-.95l.46-2.32a.74.74 0 0 0-.04-.53.44.44 0 0 0-.4-.17.88.88 0 0 0-.62.23 1.14 1.14 0 0 0-.34.63L10 12.44h-.94zm10.55 0h.92l-.1.54.13-.16a1.43 1.43 0 0 1 1.08-.48.99.99 0 0 1 .85.34 1.14 1.14 0 0 1 .13.95l-.5 2.56h-.95l.46-2.32a.75.75 0 0 0-.04-.53.45.45 0 0 0-.4-.17.89.89 0 0 0-.62.23 1.12 1.12 0 0 0-.33.63l-.43 2.16h-.94zm4.55-2.33h2.67a1.8 1.8 0 0 1 1.19.35 1.25 1.25 0 0 1 .4 1v.02a3.77 3.77 0 0 1-.06.59 2.38 2.38 0 0 1-.81 1.4 2.29 2.29 0 0 1-1.5.52h-1.44l-.44 2.2h-1.24zm.67 2.82h1.19a1.14 1.14 0 0 0 .73-.21 1.14 1.14 0 0 0 .36-.67l.03-.15v-.13a.52.52 0 0 0-.22-.47 1.35 1.35 0 0 0-.72-.15h-1zm9.15 3.98a5.91 5.91 0 0 1-.98 1.56 1.99 1.99 0 0 1-1.7.71l.08-.64c.89-.27 1.36-1.51 1.64-2.06l-.33-4.03.68-.01h.58l.06 2.53 1.07-2.53h1.09zM31.68 9l-.43.3a1.35 1.35 0 0 0-1.66-.21c-1.08.5-1.98 4.4 1 3.11l.17.2 1.17.04.77-3.54zm-.66 1.92c-.2.56-.61.94-.94.83-.33-.1-.45-.64-.26-1.2.19-.57.61-.94.94-.83.33.1.45.64.26 1.2\\\"/></svg>\"","import card from '../../assets/methods/card.svg?raw';\nimport applepay from '../../assets/methods/applepay.svg?raw';\nimport googlepay from '../../assets/methods/googlepay.svg?raw';\nimport alipaycn from '../../assets/methods/alipaycn.svg?raw';\nimport alipayhk from '../../assets/methods/alipayhk.svg?raw';\nimport alipay from '../../assets/methods/alipay.svg?raw';\nimport wechatpay from '../../assets/methods/wechatpay.svg?raw';\nimport paynow from '../../assets/methods/paynow.svg?raw';\nimport visa from '../../assets/brands/visa.svg?raw';\nimport mastercard from '../../assets/brands/mastercard.svg?raw';\nimport amex from '../../assets/brands/amex.svg?raw';\nimport jcb from '../../assets/brands/jcb.svg?raw';\nimport cup from '../../assets/brands/cup.svg?raw';\nimport { cn, el } from '../../core/dom';\n\nconst METHOD_SVG: Record<string, string> = {\n card,\n applepay,\n googlepay,\n alipay,\n alipaycn,\n alipayhk,\n wechatpay,\n paynow,\n};\n\nconst BRAND_SVG: Record<string, string> = {\n visa,\n mastercard,\n amex,\n jcb,\n cup,\n unionpay: cup,\n mc: mastercard,\n};\n\nfunction initialsFromName(name: string): string {\n const parts = name.trim().split(/\\s+/).filter(Boolean);\n if (parts.length === 0) return '?';\n if (parts.length === 1) return parts[0].slice(0, 2).toUpperCase();\n return (parts[0][0] + parts[1][0]).toUpperCase();\n}\n\nexport function methodIcon(type: string, name: string): HTMLElement {\n const svg = METHOD_SVG[type.toLowerCase()];\n if (!svg) {\n return el('span', {\n class:\n 'inline-flex size-10 shrink-0 items-center justify-center rounded-lg bg-zinc-100 text-[10px] font-semibold uppercase text-zinc-600',\n text: initialsFromName(name),\n });\n }\n const wrap = el('span', {\n class: 'inline-flex size-12 shrink-0 items-center justify-center overflow-hidden rounded-lg',\n });\n wrap.innerHTML = svg;\n const inner = wrap.firstElementChild as SVGElement | null;\n if (inner) {\n inner.setAttribute('width', '48');\n inner.setAttribute('height', '48');\n inner.classList.add('size-12', 'object-contain');\n }\n return wrap;\n}\n\nexport function brandIcons(brands: string[] | undefined): HTMLElement | null {\n if (!brands?.length) return null;\n const row = el('span', { class: 'mt-1 flex flex-wrap items-center gap-1.5' });\n for (const brand of brands) {\n const key = brand.toLowerCase();\n const svg = BRAND_SVG[key];\n if (!svg) {\n row.append(\n el('span', {\n class: 'rounded bg-zinc-100 px-1.5 py-0.5 text-[10px] font-medium uppercase text-zinc-600',\n text: brand,\n }),\n );\n continue;\n }\n const box = el('span', { class: cn('inline-flex h-6 w-10 items-center justify-center') });\n box.innerHTML = svg;\n const inner = box.firstElementChild as SVGElement | null;\n if (inner) {\n inner.setAttribute('width', '40');\n inner.setAttribute('height', '24');\n inner.classList.add('h-6', 'w-10', 'object-contain');\n }\n row.append(box);\n }\n return row;\n}\n","export default \"<?xml version=\\\"1.0\\\" standalone=\\\"no\\\"?>\\n<!DOCTYPE svg PUBLIC \\\"-//W3C//DTD SVG 20010904//EN\\\"\\n \\\"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd\\\">\\n<svg version=\\\"1.0\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\"\\n width=\\\"1149.000000pt\\\" height=\\\"1152.000000pt\\\" viewBox=\\\"0 0 1149.000000 1152.000000\\\"\\n preserveAspectRatio=\\\"xMidYMid meet\\\">\\n<rect x=\\\"120\\\" y=\\\"120\\\" width=\\\"960\\\" height=\\\"960\\\" fill=\\\"#ffffff\\\"/>\\n<g transform=\\\"translate(0.000000,1152.000000) scale(0.100000,-0.100000)\\\"\\nfill=\\\"#000000\\\" stroke=\\\"none\\\">\\n<path d=\\\"M1570 11503 c-465 -75 -789 -236 -1081 -540 -238 -248 -389 -540\\n-461 -893 l-23 -115 0 -4195 c0 -3979 1 -4200 18 -4287 88 -460 327 -846 686\\n-1114 220 -163 446 -264 734 -326 78 -17 298 -18 4312 -18 l4230 0 95 22 c202\\n46 434 137 575 225 365 230 626 560 759 958 19 58 44 151 55 207 21 101 21\\n102 21 4332 l0 4231 -24 113 c-90 424 -320 790 -662 1048 -237 179 -497 290\\n-799 339 -118 20 -191 20 -4265 19 -2280 -1 -4156 -4 -4170 -6z m6695 -1224\\nc51 -24 110 -85 132 -137 13 -30 15 -136 14 -736 l-1 -701 -26 -52 c-14 -29\\n-38 -63 -53 -76 -25 -21 -155 -106 -538 -352 -51 -33 -692 -447 -1425 -920\\n-732 -473 -1380 -891 -1439 -930 -60 -38 -429 -276 -819 -528 l-710 -459 -59\\n0 c-103 0 -190 53 -235 144 l-26 52 0 683 c0 666 1 684 20 726 31 66 68 96\\n337 272 304 200 488 320 838 550 149 97 343 225 432 283 194 127 835 548 1666\\n1092 765 501 1095 718 1379 905 296 196 314 205 400 205 48 0 81 -6 113 -21z\\nm1 -2937 c48 -24 110 -91 130 -138 12 -28 14 -159 14 -761 l0 -728 -24 -50\\nc-13 -27 -34 -60 -47 -72 -13 -11 -140 -97 -281 -190 -510 -333 -858 -561\\n-1133 -741 -154 -101 -352 -231 -440 -289 -88 -58 -298 -195 -467 -306 -169\\n-111 -439 -287 -599 -392 -272 -177 -389 -263 -389 -288 0 -5 -12 -35 -27 -66\\n-22 -44 -28 -69 -27 -121 1 -115 52 -192 169 -254 l60 -31 1525 0 1525 0 44\\n-30 c24 -16 58 -50 75 -73 l31 -44 3 -684 c2 -659 2 -685 -17 -722 -22 -43\\n-73 -93 -116 -115 -26 -13 -334 -16 -2536 -22 -2365 -7 -2507 -7 -2542 10 -20\\n9 -55 37 -77 61 l-41 44 3 1203 3 1202 23 80 c28 100 89 230 146 309 78 109\\n169 183 434 356 139 91 390 255 557 365 168 110 425 279 572 375 147 96 350\\n229 450 295 100 66 296 194 435 285 269 176 506 332 813 533 105 69 467 306\\n805 527 338 222 632 416 653 433 88 68 205 84 293 39z\\\"/>\\n</g>\\n</svg>\\n\"","import wordmarkSvg from '../../assets/wordmark.svg?raw';\nimport { cn, el } from '../../core/dom';\n\nexport function wordmark(): HTMLElement {\n const mark = el('span', {\n class: 'inline-flex items-center gap-1.5 text-xs text-zinc-500',\n });\n const icon = el('span', {\n class: 'inline-flex size-4 shrink-0 overflow-hidden',\n });\n const svgMarkup = wordmarkSvg.match(/<svg[\\s\\S]*<\\/svg>/i)?.[0] ?? wordmarkSvg;\n icon.innerHTML = svgMarkup;\n const svg = icon.querySelector('svg');\n if (svg) {\n svg.setAttribute('width', '16');\n svg.setAttribute('height', '16');\n svg.setAttribute('aria-hidden', 'true');\n svg.classList.add('size-4', 'block');\n }\n const label = el('span');\n label.append(\n document.createTextNode('Powered by '),\n el('strong', { class: 'font-semibold text-zinc-700', text: 'Finyx' }),\n );\n mark.append(icon, label);\n return mark;\n}\n\nexport function button(\n label: string,\n opts: { onClick?: () => void; disabled?: boolean; variant?: 'primary' | 'ghost' } = {},\n): HTMLButtonElement {\n const variant = opts.variant ?? 'primary';\n const btn = el('button', {\n type: 'button',\n class: cn(\n 'inline-flex items-center justify-center rounded-lg px-4 py-2 text-sm font-medium transition',\n variant === 'primary' &&\n 'bg-[var(--fy-color-primary)] text-white hover:opacity-90 disabled:opacity-50',\n variant === 'ghost' && 'text-blue-600 hover:underline',\n ),\n }) as HTMLButtonElement;\n btn.textContent = label;\n btn.disabled = Boolean(opts.disabled);\n if (opts.onClick) btn.addEventListener('click', opts.onClick);\n return btn;\n}\n\nexport function spinner(label = 'Loading…'): HTMLElement {\n const wrap = el('div', { class: 'flex items-center gap-2 py-4 text-sm text-zinc-500' });\n wrap.innerHTML = `<svg class=\"h-5 w-5 animate-spin text-zinc-400\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\"><circle class=\"opacity-25\" cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" stroke-width=\"4\"></circle><path class=\"opacity-75\" fill=\"currentColor\" d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z\"></path></svg>`;\n wrap.append(el('span', { text: label }));\n return wrap;\n}\n\nexport function errorText(message: string): HTMLElement {\n return el('p', { class: 'mt-3 text-sm text-red-600', text: message });\n}\n","/*!\nCopyright (c) 2023 Paul Miller (paulmillr.com)\nThe library paulmillr-qr is dual-licensed under the Apache 2.0 OR MIT license.\nYou can select a license of your choice.\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n/**\n * Methods for encoding (generating) QR code patterns.\n * Check out decode.ts for decoding (reading).\n * @module\n * @example\n```js\nimport encodeQR from 'qr';\nconst txt = 'Hello world';\nconst ascii = encodeQR(txt, 'ascii'); // Not all fonts are supported\nconst terminalFriendly = encodeQR(txt, 'term'); // 2x larger, all fonts are OK\nconst gifBytes = encodeQR(txt, 'gif'); // Uncompressed GIF\nconst svgElement = encodeQR(txt, 'svg'); // SVG vector image element\nconst array = encodeQR(txt, 'raw'); // 2d array for canvas or other libs\n// import decodeQR from 'qr/decode.js';\n```\n */\n// We do not use newline escape code directly in strings because it's not parser-friendly\nconst chCodes = { newline: 10, reset: 27 };\nfunction assertNumber(n) {\n if (!Number.isSafeInteger(n))\n throw new Error(`integer expected: ${n}`);\n}\nfunction validateVersion(ver) {\n if (!Number.isSafeInteger(ver) || ver < 1 || ver > 40)\n throw new Error(`Invalid version=${ver}. Expected number [1..40]`);\n}\nfunction bin(dec, pad) {\n return dec.toString(2).padStart(pad, '0');\n}\nfunction mod(a, b) {\n const result = a % b;\n return result >= 0 ? result : b + result;\n}\nfunction fillArr(length, val) {\n return new Array(length).fill(val);\n}\nfunction popcnt(n) {\n n = n - ((n >>> 1) & 0x55555555);\n n = (n & 0x33333333) + ((n >>> 2) & 0x33333333);\n return (((n + (n >>> 4)) & 0x0f0f0f0f) * 0x01010101) >>> 24;\n}\n/**\n * Interleaves byte blocks.\n * @param blocks [[1, 2, 3], [4, 5, 6]]\n * @returns [1, 4, 2, 5, 3, 6]\n */\nfunction interleaveBytes(blocks) {\n let maxLen = 0;\n let totalLen = 0;\n for (const block of blocks) {\n maxLen = Math.max(maxLen, block.length);\n totalLen += block.length;\n }\n const result = new Uint8Array(totalLen);\n let idx = 0;\n for (let i = 0; i < maxLen; i++) {\n for (const block of blocks) {\n if (i < block.length)\n result[idx++] = block[i];\n }\n }\n return result;\n}\n// Optimize for minimal score/penalty\nfunction best() {\n let best;\n let bestScore = Infinity;\n return {\n add(score, value) {\n if (score >= bestScore)\n return;\n best = value;\n bestScore = score;\n },\n get: () => best,\n score: () => bestScore,\n };\n}\n// Based on https://github.com/paulmillr/scure-base/blob/main/index.ts\nfunction alphabet(alphabet) {\n return {\n has: (char) => alphabet.includes(char),\n decode: (input) => {\n if (!Array.isArray(input) || (input.length && typeof input[0] !== 'string'))\n throw new Error('alphabet.decode input should be array of strings');\n return input.map((letter) => {\n if (typeof letter !== 'string')\n throw new Error(`alphabet.decode: not string element=${letter}`);\n const index = alphabet.indexOf(letter);\n if (index === -1)\n throw new Error(`Unknown letter: \"${letter}\". Allowed: ${alphabet}`);\n return index;\n });\n },\n encode: (digits) => {\n if (!Array.isArray(digits) || (digits.length && typeof digits[0] !== 'number'))\n throw new Error('alphabet.encode input should be an array of numbers');\n return digits.map((i) => {\n assertNumber(i);\n if (i < 0 || i >= alphabet.length)\n throw new Error(`Digit index outside alphabet: ${i} (alphabet: ${alphabet.length})`);\n return alphabet[i];\n });\n },\n };\n}\n// Transpose 32x32 bit matrix in-place\n// a[0..31] are 32 rows of 32 bits each; after transpose they become 32 columns.\nfunction transpose32(a) {\n if (a.length !== 32)\n throw new Error('expects 32 element matrix');\n const masks = [0x55555555, 0x33333333, 0x0f0f0f0f, 0x00ff00ff, 0x0000ffff];\n // Hello again, FFT\n for (let stage = 0; stage < 5; stage++) {\n const m = masks[stage] >>> 0;\n const s = 1 << stage; // 1,2,4,8,16\n const step = s << 1; // 2,4,8,16,32\n for (let i = 0; i < 32; i += step) {\n for (let k = 0; k < s; k++) {\n const i0 = i + k;\n const i1 = i0 + s;\n const x = a[i0] >>> 0;\n const y = a[i1] >>> 0;\n const t = ((x >>> s) ^ y) & m;\n a[i0] = (x ^ (t << s)) >>> 0;\n a[i1] = (y ^ t) >>> 0;\n }\n }\n }\n}\nconst bitMask = (x) => (1 << (x & 31)) >>> 0;\nconst rangeMask = (shift, len) => {\n // len in [0..32], shift in [0..31]\n if (len === 0)\n return 0;\n if (len === 32)\n return 0xffffffff;\n return (((1 << len) - 1) << shift) >>> 0;\n};\nexport class Bitmap {\n static size(size, limit) {\n if (typeof size === 'number')\n size = { height: size, width: size };\n if (!Number.isSafeInteger(size.height) && size.height !== Infinity)\n throw new Error(`Bitmap: invalid height=${size.height} (${typeof size.height})`);\n if (!Number.isSafeInteger(size.width) && size.width !== Infinity)\n throw new Error(`Bitmap: invalid width=${size.width} (${typeof size.width})`);\n if (limit !== undefined) {\n // Clamp length, so it won't overflow, also allows to use Infinity, so we draw until end\n size = {\n width: Math.min(size.width, limit.width),\n height: Math.min(size.height, limit.height),\n };\n }\n return size;\n }\n static fromString(s) {\n // Remove linebreaks on start and end, so we draw in `` section\n s = s.replace(/^\\n+/g, '').replace(/\\n+$/g, '');\n const lines = s.split(String.fromCharCode(chCodes.newline));\n const height = lines.length;\n let width;\n const rows = [];\n for (const line of lines) {\n const row = line.split('').map((i) => {\n if (i === 'X')\n return true;\n if (i === ' ')\n return false;\n if (i === '?')\n return undefined;\n throw new Error(`Bitmap.fromString: unknown symbol=${i}`);\n });\n if (width !== undefined && row.length !== width)\n throw new Error(`Bitmap.fromString different row sizes: width=${width} cur=${row.length}`);\n width = row.length;\n rows.push(row);\n }\n if (width === undefined)\n width = 0;\n return new Bitmap({ height, width }, rows);\n }\n // Two bitsets:\n // defined=0 -> undefined\n // defined=1,value=0 -> false\n // defined=1,value=1 -> true\n defined;\n value;\n tailMask;\n words;\n fullWords;\n height;\n width;\n constructor(size, data) {\n const { height, width } = Bitmap.size(size);\n this.height = height;\n this.width = width;\n this.tailMask = rangeMask(0, width & 31 || 32);\n this.words = Math.ceil(width / 32) | 0;\n this.fullWords = Math.floor(width / 32) | 0;\n this.value = new Uint32Array(this.words * height);\n this.defined = new Uint32Array(this.value.length);\n if (data) {\n // accept same semantics as old version\n if (data.length !== height)\n throw new Error(`Bitmap: data height mismatch: exp=${height} got=${data.length}`);\n for (let y = 0; y < height; y++) {\n const row = data[y];\n if (!row || row.length !== width)\n throw new Error(`Bitmap: data width mismatch at y=${y}: exp=${width} got=${row?.length}`);\n for (let x = 0; x < width; x++)\n this.set(x, y, row[x]);\n }\n }\n }\n point(p) {\n return this.get(p.x, p.y);\n }\n isInside(p) {\n return 0 <= p.x && p.x < this.width && 0 <= p.y && p.y < this.height;\n }\n size(offset) {\n if (!offset)\n return { height: this.height, width: this.width };\n const { x, y } = this.xy(offset);\n return { height: this.height - y, width: this.width - x };\n }\n xy(c) {\n if (typeof c === 'number')\n c = { x: c, y: c };\n if (!Number.isSafeInteger(c.x))\n throw new Error(`Bitmap: invalid x=${c.x}`);\n if (!Number.isSafeInteger(c.y))\n throw new Error(`Bitmap: invalid y=${c.y}`);\n // Do modulo, so we can use negative positions\n c.x = mod(c.x, this.width);\n c.y = mod(c.y, this.height);\n return c;\n }\n /**\n * Return pixel bit index\n */\n wordIndex(x, y) {\n return y * this.words + (x >>> 5);\n }\n bitIndex(x, y) {\n return { word: this.wordIndex(x, y), bit: x & 31 };\n }\n isDefined(x, y) {\n const wi = this.wordIndex(x, y);\n const m = bitMask(x);\n return (this.defined[wi] & m) !== 0;\n }\n get(x, y) {\n const wi = this.wordIndex(x, y);\n const m = bitMask(x);\n return (this.value[wi] & m) !== 0;\n }\n maskWord(wi, mask, v) {\n const { defined, value } = this;\n defined[wi] |= mask;\n value[wi] = (value[wi] & ~mask) | (-v & mask);\n }\n set(x, y, v) {\n if (v === undefined)\n return;\n this.maskWord(this.wordIndex(x, y), bitMask(x), v);\n }\n // word-span fill for constant values (fast path)\n fillRectConst(x0, y0, w, h, v) {\n if (w <= 0 || h <= 0)\n return;\n if (v === undefined)\n return;\n const { value, defined, words } = this;\n const startWord = x0 >>> 5;\n const endWord = (x0 + w - 1) >>> 5;\n const startBit = x0 & 31;\n const endBit = (x0 + w - 1) & 31;\n for (let ry = 0; ry < h; ry++) {\n const rowBase = (y0 + ry) * words;\n if (startWord === endWord) {\n const mask = rangeMask(startBit, endBit - startBit + 1);\n this.maskWord(rowBase + startWord, mask, v);\n continue;\n }\n this.maskWord(rowBase + startWord, rangeMask(startBit, 32 - startBit), v);\n for (let i = startWord + 1; i < endWord; i++) {\n defined[rowBase + i] = 0xffffffff;\n value[rowBase + i] = v ? 0xffffffff : 0;\n }\n this.maskWord(rowBase + endWord, rangeMask(0, endBit + 1), v);\n }\n }\n rectWords(x, y, width, height, cb) {\n for (let yPos = 0; yPos < height; yPos++) {\n const Py = y + yPos;\n for (let xPos = 0; xPos < width;) {\n const bitX = x + xPos;\n const { bit, word } = this.bitIndex(bitX, Py);\n const bitsPerWord = Math.min(32 - bit, width - xPos);\n cb(word, bitX, xPos, yPos, bitsPerWord);\n xPos += bitsPerWord;\n }\n }\n }\n // Basically every operation can be represented as rect\n rect(c, size, fn) {\n const { x, y } = this.xy(c);\n const { height, width } = Bitmap.size(size, this.size({ x, y }));\n if (typeof fn !== 'function') {\n this.fillRectConst(x, y, width, height, fn);\n return this;\n }\n const { defined, value } = this;\n this.rectWords(x, y, width, height, (wi, bitX, xPos, yPos, n) => {\n let defWord = 0;\n let valWord = value[wi];\n for (let b = 0; b < n; b++) {\n const mask = bitMask(bitX + b);\n const res = fn({ x: xPos + b, y: yPos }, (valWord & mask) !== 0);\n if (res === undefined)\n continue;\n defWord |= mask;\n valWord = (valWord & ~mask) | (-res & mask);\n }\n defined[wi] |= defWord;\n value[wi] = valWord;\n });\n return this;\n }\n // returns rectangular part of bitmap\n rectRead(c, size, fn) {\n const { x, y } = this.xy(c);\n const { height, width } = Bitmap.size(size, this.size({ x, y }));\n const { value } = this;\n this.rectWords(x, y, width, height, (wi, bitX, xPos, yPos, n) => {\n const valWord = value[wi];\n for (let b = 0; b < n; b++) {\n const mask = bitMask(bitX + b);\n fn({ x: xPos + b, y: yPos }, (valWord & mask) !== 0);\n }\n });\n return this;\n }\n // Horizontal & vertical lines\n hLine(c, len, value) {\n return this.rect(c, { width: len, height: 1 }, value);\n }\n vLine(c, len, value) {\n return this.rect(c, { width: 1, height: len }, value);\n }\n // add border\n border(border = 2, value) {\n const height = this.height + 2 * border;\n const width = this.width + 2 * border;\n const out = new Bitmap({ height, width });\n // fill everything with border value, then embed original\n out.rect(0, Infinity, value);\n out.embed({ x: border, y: border }, this);\n return out;\n }\n // Embed another bitmap on coordinates\n embed(c, src) {\n const { x, y } = this.xy(c);\n const { height, width } = Bitmap.size(src.size(), this.size({ x, y }));\n if (width <= 0 || height <= 0)\n return this;\n const { value, defined } = this;\n const { words: srcStride, value: srcValue } = src;\n for (let yPos = 0; yPos < height; yPos++) {\n const srcRow = yPos * srcStride;\n for (let xPos = 0; xPos < width;) {\n const dstX = x + xPos;\n const { word: dstWord, bit: dstBit } = this.bitIndex(dstX, y + yPos);\n const { word: srcWord, bit: srcBit } = src.bitIndex(xPos, yPos);\n const len = Math.min(32 - dstBit, width - xPos);\n const w0 = srcValue[srcWord];\n const w1 = srcBit && srcWord + 1 < srcRow + srcStride ? srcValue[srcWord + 1] : 0;\n const sVal = srcBit ? ((w0 >>> srcBit) | (w1 << (32 - srcBit))) >>> 0 : w0;\n const dstMask = rangeMask(dstBit, len);\n const valBits = ((sVal & rangeMask(0, len)) << dstBit) >>> 0;\n defined[dstWord] |= dstMask;\n value[dstWord] = (value[dstWord] & ~dstMask) | valBits;\n xPos += len;\n }\n }\n return this;\n }\n // returns rectangular part of bitmap\n rectSlice(c, size = this.size()) {\n const { x, y } = this.xy(c);\n const { height, width } = Bitmap.size(size, this.size({ x, y }));\n const rect = new Bitmap({ height, width });\n this.rectRead({ x, y }, { height, width }, (p, cur) => {\n if (this.isDefined(x + p.x, y + p.y)) {\n rect.set(p.x, p.y, cur);\n }\n });\n return rect;\n }\n // Change shape, replace rows with columns (data[y][x] -> data[x][y])\n transpose() {\n const { height, width, value, defined, words } = this;\n const dst = new Bitmap({ height: width, width: height });\n const { words: dstStride, value: dstValue, defined: dstDefined, tailMask: dstTail } = dst;\n const tmpV = new Uint32Array(32);\n const tmpD = new Uint32Array(32);\n // Process src in blocks: y in [by..by+31], x in 32-bit words\n for (let by = 0; by < height; by += 32) {\n for (let bx = 0; bx < words; bx++) {\n const rows = Math.min(32, height - by);\n for (let r = 0; r < rows; r++) {\n const wi = this.wordIndex(32 * bx, by + r);\n tmpV[r] = value[wi];\n tmpD[r] = defined[wi];\n }\n // zero-pad remainder\n tmpV.fill(0, rows);\n tmpD.fill(0, rows);\n transpose32(tmpV);\n transpose32(tmpD);\n for (let i = 0; i < 32; i++) {\n const dstY = bx * 32 + i;\n if (dstY >= width)\n break;\n const dstPos = dst.wordIndex(by, dstY);\n const curMask = by >>> 5 === dstStride - 1 ? dstTail : 0xffffffff;\n dstValue[dstPos] = tmpV[i] & curMask;\n dstDefined[dstPos] = tmpD[i] & curMask;\n }\n }\n }\n return dst;\n }\n // black <-> white (inplace)\n negate() {\n const n = this.defined.length;\n for (let i = 0; i < n; i++) {\n this.value[i] = ~this.value[i];\n this.defined[i] = 0xffffffff;\n }\n return this;\n }\n // Each pixel size is multiplied by factor\n scale(factor) {\n if (!Number.isSafeInteger(factor) || factor > 1024)\n throw new Error(`invalid scale factor: ${factor}`);\n const { height, width } = this;\n const res = new Bitmap({ height: factor * height, width: factor * width });\n return res.rect({ x: 0, y: 0 }, Infinity, ({ x, y }) => this.get((x / factor) | 0, (y / factor) | 0));\n }\n clone() {\n const res = new Bitmap(this.size());\n res.defined.set(this.defined);\n res.value.set(this.value);\n return res;\n }\n // Ensure that there is no undefined values left\n assertDrawn() {\n const { height, width, defined, tailMask, fullWords, words } = this;\n if (!height || !width)\n return;\n for (let y = 0; y < height; y++) {\n const rowBase = y * words;\n for (let wi = 0; wi < fullWords; wi++) {\n if (defined[rowBase + wi] !== 0xffffffff)\n throw new Error(`Invalid color type=undefined`);\n }\n if (words !== fullWords && (defined[rowBase + fullWords] & tailMask) !== tailMask)\n throw new Error(`Invalid color type=undefined`);\n }\n }\n countPatternInRow(y, patternLen, ...patterns) {\n if (patternLen <= 0 || patternLen >= 32)\n throw new Error('wrong patternLen');\n const mask = (1 << patternLen) - 1;\n const { width, value, words } = this;\n let count = 0;\n const rowBase = this.wordIndex(0, y);\n for (let i = 0, window = 0; i < words; i++) {\n const w = value[rowBase + i];\n const bitEnd = i === words - 1 ? width & 31 || 32 : 32;\n for (let b = 0; b < bitEnd; b++) {\n window = ((window << 1) | ((w >>> b) & 1)) & mask;\n if (i * 32 + b + 1 < patternLen)\n continue;\n for (const p of patterns) {\n if (window !== p)\n continue;\n count++;\n break;\n }\n }\n }\n return count;\n }\n getRuns(y, fn) {\n const { width, value, words } = this;\n if (width === 0)\n return;\n let runLen = 0;\n let runValue;\n const rowBase = this.wordIndex(0, y);\n for (let i = 0; i < words; i++) {\n const word = value[rowBase + i];\n const bitEnd = i === words - 1 ? width & 31 || 32 : 32;\n for (let b = 0; b < bitEnd; b++) {\n const bit = (word & (1 << b)) !== 0;\n if (bit === runValue) {\n runLen++;\n continue;\n }\n if (runValue !== undefined)\n fn(runLen, runValue);\n runValue = bit;\n runLen = 1;\n }\n }\n if (runValue !== undefined)\n fn(runLen, runValue);\n }\n popcnt() {\n const { height, width, words, fullWords, tailMask } = this;\n if (!height || !width)\n return 0;\n let count = 0;\n for (let y = 0; y < height; y++) {\n const rowBase = y * words;\n for (let wi = 0; wi < fullWords; wi++)\n count += popcnt(this.value[rowBase + wi]);\n if (words !== fullWords)\n count += popcnt(this.value[rowBase + fullWords] & tailMask);\n }\n return count;\n }\n countBoxes2x2(y) {\n const { width, words } = this;\n if (width < 2 || (y | 0) < 0 || y + 1 >= this.height)\n return 0;\n const base0 = this.wordIndex(0, y) | 0;\n const base1 = this.wordIndex(0, y + 1) | 0;\n // valid \"left-edge\" positions x in [0 .. W-2]\n const tailBits = width & 31;\n const validLast = tailBits === 0 ? 0x7fffffff : rangeMask(0, (width - 1) & 31);\n let boxes = 0;\n for (let wi = 0; wi < words; wi++) {\n const a0 = this.value[base0 + wi];\n const a1 = this.value[base1 + wi];\n // Compare bit x with bit x+1 at same bit position.\n const eqV = ~(a0 ^ a1) >>> 0; // row0[x] == row1[x]\n const n0 = wi + 1 < words ? this.value[base0 + wi + 1] >>> 0 : 0;\n const eqH0 = ~(a0 ^ (((a0 >>> 1) | ((n0 & 1) << 31)) >>> 0)) >>> 0; // row0[x] == row0[x+1]\n const n1 = wi + 1 < words ? this.value[base1 + wi + 1] >>> 0 : 0;\n const eqH1 = ~(a1 ^ (((a1 >>> 1) | ((n1 & 1) << 31)) >>> 0)) >>> 0; // row1[x] == row1[x+1]\n let m = (eqV & eqH0 & eqH1) >>> 0;\n if (wi === words - 1)\n m &= validLast;\n boxes += popcnt(m);\n }\n return boxes;\n }\n // Export\n toString() {\n const nl = String.fromCharCode(chCodes.newline);\n let out = '';\n for (let y = 0; y < this.height; y++) {\n let line = '';\n for (let x = 0; x < this.width; x++) {\n const v = this.get(x, y);\n line += !this.isDefined(x, y) ? '?' : v ? 'X' : ' ';\n }\n out += line + (y + 1 === this.height ? '' : nl);\n }\n return out;\n }\n toRaw() {\n const out = Array.from({ length: this.height }, () => new Array(this.width));\n for (let y = 0; y < this.height; y++) {\n const row = out[y];\n for (let x = 0; x < this.width; x++)\n row[x] = this.get(x, y);\n }\n return out;\n }\n toASCII() {\n const { height, width } = this;\n let out = '';\n // Terminal character height is x2 of character width, so we process two rows of bitmap\n // to produce one row of ASCII\n for (let y = 0; y < height; y += 2) {\n for (let x = 0; x < width; x++) {\n const first = this.get(x, y);\n const second = y + 1 >= height ? true : this.get(x, y + 1); // if last row outside bitmap, make it black\n if (!first && !second)\n out += '█'; // both rows white (empty)\n else if (!first && second)\n out += '▀'; // top row white\n else if (first && !second)\n out += '▄'; // down row white\n else if (first && second)\n out += ' '; // both rows black\n }\n out += String.fromCharCode(chCodes.newline);\n }\n return out;\n }\n toTerm() {\n const cc = String.fromCharCode(chCodes.reset);\n const reset = cc + '[0m';\n const whiteBG = cc + '[1;47m ' + reset;\n const darkBG = cc + `[40m ` + reset;\n const nl = String.fromCharCode(chCodes.newline);\n let out = '';\n for (let y = 0; y < this.height; y++) {\n for (let x = 0; x < this.width; x++) {\n const v = this.get(x, y); // undefined -> white\n out += v ? darkBG : whiteBG;\n }\n out += nl;\n }\n return out;\n }\n toSVG(optimize = true) {\n let out = `<svg viewBox=\"0 0 ${this.width} ${this.height}\" xmlns=\"http://www.w3.org/2000/svg\">`;\n // Construct optimized SVG path data.\n let pathData = '';\n let prevPoint;\n this.rectRead(0, Infinity, (point, val) => {\n if (!val)\n return;\n const { x, y } = point;\n if (!optimize) {\n out += `<rect x=\"${x}\" y=\"${y}\" width=\"1\" height=\"1\" />`;\n return;\n }\n // https://developer.mozilla.org/en-US/docs/Web/SVG/Reference/Attribute/d#path_commands\n // Determine the shortest way to represent the initial cursor movement.\n // M - Move cursor (without drawing) to absolute coordinate pair.\n let m = `M${x} ${y}`;\n // Only allow using the relative cursor move command if previous points\n // were drawn.\n if (prevPoint) {\n // m - Move cursor (without drawing) to relative coordinate pair.\n const relM = `m${x - prevPoint.x} ${y - prevPoint.y}`;\n if (relM.length <= m.length)\n m = relM;\n }\n // Determine the shortest way to represent the cell's bottom line draw.\n // H - Draw line from cursor position to absolute x coordinate.\n // h - Draw line from cursor position to relative x coordinate.\n const bH = x < 10 ? `H${x}` : 'h-1';\n // v - Draw line from cursor position to relative y coordinate.\n // Z - Close path (draws line from cursor position to M coordinate).\n pathData += `${m}h1v1${bH}Z`;\n prevPoint = point;\n });\n if (optimize)\n out += `<path d=\"${pathData}\"/>`;\n out += `</svg>`;\n return out;\n }\n toGIF() {\n // NOTE: Small, but inefficient implementation.\n // Uses 1 byte per pixel.\n const u16le = (i) => [i & 0xff, (i >>> 8) & 0xff];\n const dims = [...u16le(this.width), ...u16le(this.height)];\n const data = [];\n this.rectRead(0, Infinity, (_, cur) => data.push(+(cur === true)));\n const N = 126; // Block size\n // prettier-ignore\n const bytes = [\n 0x47, 0x49, 0x46, 0x38, 0x37, 0x61, ...dims, 0xf6, 0x00, 0x00, 0xff, 0xff, 0xff,\n ...fillArr(3 * 127, 0x00), 0x2c, 0x00, 0x00, 0x00, 0x00, ...dims, 0x00, 0x07\n ];\n const fullChunks = Math.floor(data.length / N);\n // Full blocks\n for (let i = 0; i < fullChunks; i++)\n bytes.push(N + 1, 0x80, ...data.slice(N * i, N * (i + 1)).map((i) => +i));\n // Remaining bytes\n bytes.push((data.length % N) + 1, 0x80, ...data.slice(fullChunks * N).map((i) => +i));\n bytes.push(0x01, 0x81, 0x00, 0x3b);\n return new Uint8Array(bytes);\n }\n toImage(isRGB = false) {\n const { height, width } = this.size();\n const data = new Uint8Array(height * width * (isRGB ? 3 : 4));\n let i = 0;\n for (let y = 0; y < height; y++) {\n for (let x = 0; x < width; x++) {\n const value = this.get(x, y) ? 0 : 255; // undefined -> white\n data[i++] = value;\n data[i++] = value;\n data[i++] = value;\n if (!isRGB)\n data[i++] = 255; // alpha channel\n }\n }\n return { height, width, data };\n }\n}\n// End of utils\n// Runtime type-checking\n/** Error correction mode. low: 7%, medium: 15%, quartile: 25%, high: 30% */\nexport const ECMode = ['low', 'medium', 'quartile', 'high'];\n/** QR Code encoding */\nexport const Encoding = ['numeric', 'alphanumeric', 'byte', 'kanji', 'eci'];\n// Various constants & tables\n// prettier-ignore\nconst BYTES = [\n // 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,\n 26, 44, 70, 100, 134, 172, 196, 242, 292, 346, 404, 466, 532, 581, 655, 733, 815, 901, 991, 1085,\n // 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40\n 1156, 1258, 1364, 1474, 1588, 1706, 1828, 1921, 2051, 2185, 2323, 2465, 2611, 2761, 2876, 3034, 3196, 3362, 3532, 3706,\n];\n// prettier-ignore\nconst WORDS_PER_BLOCK = {\n // Version 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40\n low: [7, 10, 15, 20, 26, 18, 20, 24, 30, 18, 20, 24, 26, 30, 22, 24, 28, 30, 28, 28, 28, 28, 30, 30, 26, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],\n medium: [10, 16, 26, 18, 24, 16, 18, 22, 22, 26, 30, 22, 22, 24, 24, 28, 28, 26, 26, 26, 26, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28],\n quartile: [13, 22, 18, 26, 18, 24, 18, 22, 20, 24, 28, 26, 24, 20, 30, 24, 28, 28, 26, 30, 28, 30, 30, 30, 30, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],\n high: [17, 28, 22, 16, 22, 28, 26, 26, 24, 28, 24, 28, 22, 24, 24, 30, 28, 28, 26, 28, 30, 24, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],\n};\n// prettier-ignore\nconst ECC_BLOCKS = {\n // Version 1, 2, 3, 4, 5, 6, 7, 8, 9,10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40\n low: [1, 1, 1, 1, 1, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6, 6, 6, 7, 8, 8, 9, 9, 10, 12, 12, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 24, 25],\n medium: [1, 1, 1, 2, 2, 4, 4, 4, 5, 5, 5, 8, 9, 9, 10, 10, 11, 13, 14, 16, 17, 17, 18, 20, 21, 23, 25, 26, 28, 29, 31, 33, 35, 37, 38, 40, 43, 45, 47, 49],\n quartile: [1, 1, 2, 2, 4, 4, 6, 6, 8, 8, 8, 10, 12, 16, 12, 17, 16, 18, 21, 20, 23, 23, 25, 27, 29, 34, 34, 35, 38, 40, 43, 45, 48, 51, 53, 56, 59, 62, 65, 68],\n high: [1, 1, 2, 4, 4, 4, 5, 6, 8, 8, 11, 11, 16, 16, 18, 16, 19, 21, 25, 25, 25, 34, 30, 32, 35, 37, 40, 42, 45, 48, 51, 54, 57, 60, 63, 66, 70, 74, 77, 81],\n};\nconst info = {\n size: {\n encode: (ver) => 21 + 4 * (ver - 1), // ver1 = 21, ver40=177 blocks\n decode: (size) => (size - 17) / 4,\n },\n sizeType: (ver) => Math.floor((ver + 7) / 17),\n // Based on https://codereview.stackexchange.com/questions/74925/algorithm-to-generate-this-alignment-pattern-locations-table-for-qr-codes\n alignmentPatterns(ver) {\n if (ver === 1)\n return [];\n const first = 6;\n const last = info.size.encode(ver) - first - 1;\n const distance = last - first;\n const count = Math.ceil(distance / 28);\n let interval = Math.floor(distance / count);\n if (interval % 2)\n interval += 1;\n else if ((distance % count) * 2 >= count)\n interval += 2;\n const res = [first];\n for (let m = 1; m < count; m++)\n res.push(last - (count - m) * interval);\n res.push(last);\n return res;\n },\n ECCode: {\n low: 0b01,\n medium: 0b00,\n quartile: 0b11,\n high: 0b10,\n },\n formatMask: 0b101010000010010,\n formatBits(ecc, maskIdx) {\n const data = (info.ECCode[ecc] << 3) | maskIdx;\n let d = data;\n for (let i = 0; i < 10; i++)\n d = (d << 1) ^ ((d >> 9) * 0b10100110111);\n return ((data << 10) | d) ^ info.formatMask;\n },\n versionBits(ver) {\n let d = ver;\n for (let i = 0; i < 12; i++)\n d = (d << 1) ^ ((d >> 11) * 0b1111100100101);\n return (ver << 12) | d;\n },\n alphabet: {\n numeric: alphabet('0123456789'),\n alphanumerc: alphabet('0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:'),\n }, // as Record<EncodingType, ReturnType<typeof alphabet>>,\n lengthBits(ver, type) {\n const table = {\n numeric: [10, 12, 14],\n alphanumeric: [9, 11, 13],\n byte: [8, 16, 16],\n kanji: [8, 10, 12],\n eci: [0, 0, 0],\n };\n return table[type][info.sizeType(ver)];\n },\n modeBits: {\n numeric: '0001',\n alphanumeric: '0010',\n byte: '0100',\n kanji: '1000',\n eci: '0111',\n },\n capacity(ver, ecc) {\n const bytes = BYTES[ver - 1];\n const words = WORDS_PER_BLOCK[ecc][ver - 1];\n const numBlocks = ECC_BLOCKS[ecc][ver - 1];\n const blockLen = Math.floor(bytes / numBlocks) - words;\n const shortBlocks = numBlocks - (bytes % numBlocks);\n return {\n words,\n numBlocks,\n shortBlocks,\n blockLen,\n capacity: (bytes - words * numBlocks) * 8,\n total: (words + blockLen) * numBlocks + numBlocks - shortBlocks,\n };\n },\n};\nconst PATTERNS = [\n (x, y) => (x + y) % 2 == 0,\n (_x, y) => y % 2 == 0,\n (x, _y) => x % 3 == 0,\n (x, y) => (x + y) % 3 == 0,\n (x, y) => (Math.floor(y / 2) + Math.floor(x / 3)) % 2 == 0,\n (x, y) => ((x * y) % 2) + ((x * y) % 3) == 0,\n (x, y) => (((x * y) % 2) + ((x * y) % 3)) % 2 == 0,\n (x, y) => (((x + y) % 2) + ((x * y) % 3)) % 2 == 0,\n];\n// Galois field && reed-solomon encoding\nconst GF = {\n tables: ((p_poly) => {\n const exp = fillArr(256, 0);\n const log = fillArr(256, 0);\n for (let i = 0, x = 1; i < 256; i++) {\n exp[i] = x;\n log[x] = i;\n x <<= 1;\n if (x & 0x100)\n x ^= p_poly;\n }\n return { exp, log };\n })(0x11d),\n exp: (x) => GF.tables.exp[x],\n log(x) {\n if (x === 0)\n throw new Error(`GF.log: invalid arg=${x}`);\n return GF.tables.log[x] % 255;\n },\n mul(x, y) {\n if (x === 0 || y === 0)\n return 0;\n return GF.tables.exp[(GF.tables.log[x] + GF.tables.log[y]) % 255];\n },\n add: (x, y) => x ^ y,\n pow: (x, e) => GF.tables.exp[(GF.tables.log[x] * e) % 255],\n inv(x) {\n if (x === 0)\n throw new Error(`GF.inverse: invalid arg=${x}`);\n return GF.tables.exp[255 - GF.tables.log[x]];\n },\n polynomial(poly) {\n if (poly.length == 0)\n throw new Error('GF.polymomial: invalid length');\n if (poly[0] !== 0)\n return poly;\n // Strip leading zeros\n let i = 0;\n for (; i < poly.length - 1 && poly[i] == 0; i++)\n ;\n return poly.slice(i);\n },\n monomial(degree, coefficient) {\n if (degree < 0)\n throw new Error(`GF.monomial: invalid degree=${degree}`);\n if (coefficient == 0)\n return [0];\n let coefficients = fillArr(degree + 1, 0);\n coefficients[0] = coefficient;\n return GF.polynomial(coefficients);\n },\n degree: (a) => a.length - 1,\n coefficient: (a, degree) => a[GF.degree(a) - degree],\n mulPoly(a, b) {\n if (a[0] === 0 || b[0] === 0)\n return [0];\n const res = fillArr(a.length + b.length - 1, 0);\n for (let i = 0; i < a.length; i++) {\n for (let j = 0; j < b.length; j++) {\n res[i + j] = GF.add(res[i + j], GF.mul(a[i], b[j]));\n }\n }\n return GF.polynomial(res);\n },\n mulPolyScalar(a, scalar) {\n if (scalar == 0)\n return [0];\n if (scalar == 1)\n return a;\n const res = fillArr(a.length, 0);\n for (let i = 0; i < a.length; i++)\n res[i] = GF.mul(a[i], scalar);\n return GF.polynomial(res);\n },\n mulPolyMonomial(a, degree, coefficient) {\n if (degree < 0)\n throw new Error('GF.mulPolyMonomial: invalid degree');\n if (coefficient == 0)\n return [0];\n const res = fillArr(a.length + degree, 0);\n for (let i = 0; i < a.length; i++)\n res[i] = GF.mul(a[i], coefficient);\n return GF.polynomial(res);\n },\n addPoly(a, b) {\n if (a[0] === 0)\n return b;\n if (b[0] === 0)\n return a;\n let smaller = a;\n let larger = b;\n if (smaller.length > larger.length)\n [smaller, larger] = [larger, smaller];\n let sumDiff = fillArr(larger.length, 0);\n let lengthDiff = larger.length - smaller.length;\n let s = larger.slice(0, lengthDiff);\n for (let i = 0; i < s.length; i++)\n sumDiff[i] = s[i];\n for (let i = lengthDiff; i < larger.length; i++)\n sumDiff[i] = GF.add(smaller[i - lengthDiff], larger[i]);\n return GF.polynomial(sumDiff);\n },\n remainderPoly(data, divisor) {\n const out = Array.from(data);\n for (let i = 0; i < data.length - divisor.length + 1; i++) {\n const elm = out[i];\n if (elm === 0)\n continue;\n for (let j = 1; j < divisor.length; j++) {\n if (divisor[j] !== 0)\n out[i + j] = GF.add(out[i + j], GF.mul(divisor[j], elm));\n }\n }\n return out.slice(data.length - divisor.length + 1, out.length);\n },\n divisorPoly(degree) {\n let g = [1];\n for (let i = 0; i < degree; i++)\n g = GF.mulPoly(g, [1, GF.pow(2, i)]);\n return g;\n },\n evalPoly(poly, a) {\n if (a == 0)\n return GF.coefficient(poly, 0); // Just return the x^0 coefficient\n let res = poly[0];\n for (let i = 1; i < poly.length; i++)\n res = GF.add(GF.mul(a, res), poly[i]);\n return res;\n },\n // TODO: cleanup\n euclidian(a, b, R) {\n // Force degree(a) >= degree(b)\n if (GF.degree(a) < GF.degree(b))\n [a, b] = [b, a];\n let rLast = a;\n let r = b;\n let tLast = [0];\n let t = [1];\n // while degree of Ri ≥ t/2\n while (2 * GF.degree(r) >= R) {\n let rLastLast = rLast;\n let tLastLast = tLast;\n rLast = r;\n tLast = t;\n if (rLast[0] === 0)\n throw new Error('rLast[0] === 0');\n r = rLastLast;\n let q = [0];\n const dltInverse = GF.inv(rLast[0]);\n while (GF.degree(r) >= GF.degree(rLast) && r[0] !== 0) {\n const degreeDiff = GF.degree(r) - GF.degree(rLast);\n const scale = GF.mul(r[0], dltInverse);\n q = GF.addPoly(q, GF.monomial(degreeDiff, scale));\n r = GF.addPoly(r, GF.mulPolyMonomial(rLast, degreeDiff, scale));\n }\n q = GF.mulPoly(q, tLast);\n t = GF.addPoly(q, tLastLast);\n if (GF.degree(r) >= GF.degree(rLast))\n throw new Error(`Division failed r: ${r}, rLast: ${rLast}`);\n }\n const sigmaTildeAtZero = GF.coefficient(t, 0);\n if (sigmaTildeAtZero == 0)\n throw new Error('sigmaTilde(0) was zero');\n const inverse = GF.inv(sigmaTildeAtZero);\n return [GF.mulPolyScalar(t, inverse), GF.mulPolyScalar(r, inverse)];\n },\n};\nfunction RS(eccWords) {\n return {\n encode(from) {\n const d = GF.divisorPoly(eccWords);\n const pol = Array.from(from);\n pol.push(...d.slice(0, -1).fill(0));\n return Uint8Array.from(GF.remainderPoly(pol, d));\n },\n decode(to) {\n const res = to.slice();\n const poly = GF.polynomial(Array.from(to));\n // Find errors\n let syndrome = fillArr(eccWords, 0);\n let hasError = false;\n for (let i = 0; i < eccWords; i++) {\n const evl = GF.evalPoly(poly, GF.exp(i));\n syndrome[syndrome.length - 1 - i] = evl;\n if (evl !== 0)\n hasError = true;\n }\n if (!hasError)\n return res;\n syndrome = GF.polynomial(syndrome);\n const monomial = GF.monomial(eccWords, 1);\n const [errorLocator, errorEvaluator] = GF.euclidian(monomial, syndrome, eccWords);\n // Error locations\n const locations = fillArr(GF.degree(errorLocator), 0);\n let e = 0;\n for (let i = 1; i < 256 && e < locations.length; i++) {\n if (GF.evalPoly(errorLocator, i) === 0)\n locations[e++] = GF.inv(i);\n }\n if (e !== locations.length)\n throw new Error('RS.decode: invalid errors number');\n for (let i = 0; i < locations.length; i++) {\n const pos = res.length - 1 - GF.log(locations[i]);\n if (pos < 0)\n throw new Error('RS.decode: invalid error location');\n const xiInverse = GF.inv(locations[i]);\n let denominator = 1;\n for (let j = 0; j < locations.length; j++) {\n if (i === j)\n continue;\n denominator = GF.mul(denominator, GF.add(1, GF.mul(locations[j], xiInverse)));\n }\n res[pos] = GF.add(res[pos], GF.mul(GF.evalPoly(errorEvaluator, xiInverse), GF.inv(denominator)));\n }\n return res;\n },\n };\n}\n// Interleaves blocks\nfunction interleave(ver, ecc) {\n const { words, shortBlocks, numBlocks, blockLen, total } = info.capacity(ver, ecc);\n const rs = RS(words);\n return {\n encode(bytes) {\n // Add error correction to bytes\n const blocks = [];\n const eccBlocks = [];\n for (let i = 0; i < numBlocks; i++) {\n const isShort = i < shortBlocks;\n const len = blockLen + (isShort ? 0 : 1);\n blocks.push(bytes.subarray(0, len));\n eccBlocks.push(rs.encode(bytes.subarray(0, len)));\n bytes = bytes.subarray(len);\n }\n const resBlocks = interleaveBytes(blocks);\n const resECC = interleaveBytes(eccBlocks);\n const res = new Uint8Array(resBlocks.length + resECC.length);\n res.set(resBlocks);\n res.set(resECC, resBlocks.length);\n return res;\n },\n decode(data) {\n if (data.length !== total)\n throw new Error(`interleave.decode: len(data)=${data.length}, total=${total}`);\n const blocks = [];\n for (let i = 0; i < numBlocks; i++) {\n const isShort = i < shortBlocks;\n blocks.push(new Uint8Array(words + blockLen + (isShort ? 0 : 1)));\n }\n // Short blocks\n let pos = 0;\n for (let i = 0; i < blockLen; i++) {\n for (let j = 0; j < numBlocks; j++)\n blocks[j][i] = data[pos++];\n }\n // Long blocks\n for (let j = shortBlocks; j < numBlocks; j++)\n blocks[j][blockLen] = data[pos++];\n // ECC\n for (let i = blockLen; i < blockLen + words; i++) {\n for (let j = 0; j < numBlocks; j++) {\n const isShort = j < shortBlocks;\n blocks[j][i + (isShort ? 0 : 1)] = data[pos++];\n }\n }\n // Decode\n // Error-correct and copy data blocks together into a stream of bytes\n const res = [];\n for (const block of blocks)\n res.push(...Array.from(rs.decode(block)).slice(0, -words));\n return Uint8Array.from(res);\n },\n };\n}\n// Draw\n// Generic template per version+ecc+mask. Can be cached, to speedup calculations.\nfunction drawTemplate(ver, ecc, maskIdx, test = false) {\n const size = info.size.encode(ver);\n let b = new Bitmap(size + 2);\n // Finder patterns\n // We draw full pattern and later slice, since before addition of borders finder is truncated by one pixel on sides\n const finder = new Bitmap(3).rect(0, 3, true).border(1, false).border(1, true).border(1, false);\n b = b\n .embed(0, finder) // top left\n .embed({ x: -finder.width, y: 0 }, finder) // top right\n .embed({ x: 0, y: -finder.height }, finder); // bottom left\n b = b.rectSlice(1, size);\n // Alignment patterns\n const align = new Bitmap(1).rect(0, 1, true).border(1, false).border(1, true);\n const alignPos = info.alignmentPatterns(ver);\n for (const y of alignPos) {\n for (const x of alignPos) {\n if (b.isDefined(x, y))\n continue;\n b.embed({ x: x - 2, y: y - 2 }, align); // center of pattern should be at position\n }\n }\n // Timing patterns\n b = b\n .hLine({ x: 0, y: 6 }, Infinity, ({ x }) => (b.isDefined(x, 6) ? undefined : x % 2 == 0))\n .vLine({ x: 6, y: 0 }, Infinity, ({ y }) => (b.isDefined(6, y) ? undefined : y % 2 == 0));\n // Format information\n {\n const bits = info.formatBits(ecc, maskIdx);\n const getBit = (i) => !test && ((bits >> i) & 1) == 1;\n // vertical\n for (let i = 0; i < 6; i++)\n b.set(8, i, getBit(i)); // right of top-left finder\n // TODO: re-write as lines, like:\n // b.vLine({ x: 8, y: 0 }, 6, ({ x, y }) => getBit(y));\n for (let i = 6; i < 8; i++)\n b.set(8, i + 1, getBit(i)); // after timing pattern\n for (let i = 8; i < 15; i++)\n b.set(8, size - 15 + i, getBit(i)); // right of bottom-left finder\n // horizontal\n for (let i = 0; i < 8; i++)\n b.set(size - i - 1, 8, getBit(i)); // under top-right finder\n for (let i = 8; i < 9; i++)\n b.set(15 - i - 1 + 1, 8, getBit(i)); // VVV, after timing\n for (let i = 9; i < 15; i++)\n b.set(15 - i - 1, 8, getBit(i)); // under top-left finder\n b.set(8, size - 8, !test); // bottom-left finder, right\n }\n // Version information\n if (ver >= 7) {\n const bits = info.versionBits(ver);\n for (let i = 0; i < 18; i += 1) {\n const bit = !test && ((bits >> i) & 1) == 1;\n const x = Math.floor(i / 3);\n const y = (i % 3) + size - 8 - 3;\n // two copies\n b.set(y, x, bit);\n b.set(x, y, bit);\n }\n }\n return b;\n}\n// zigzag: bottom->top && top->bottom\nfunction zigzag(tpl, maskIdx, fn) {\n const size = tpl.height;\n const pattern = PATTERNS[maskIdx];\n // zig-zag pattern\n let dir = -1;\n let y = size - 1;\n // two columns at time\n for (let xOffset = size - 1; xOffset > 0; xOffset -= 2) {\n if (xOffset == 6)\n xOffset = 5; // skip vertical timing pattern\n for (;; y += dir) {\n for (let j = 0; j < 2; j += 1) {\n const x = xOffset - j;\n if (tpl.isDefined(x, y))\n continue; // skip already written elements\n fn(x, y, pattern(x, y));\n }\n if (y + dir < 0 || y + dir >= size)\n break;\n }\n dir = -dir; // change direction\n }\n}\n// NOTE: byte encoding is just representation, QR works with strings only. Most decoders will fail on raw byte array,\n// since they expect unicode or other text encoding inside bytes\nfunction detectType(str) {\n let type = 'numeric';\n for (let x of str) {\n if (info.alphabet.numeric.has(x))\n continue;\n type = 'alphanumeric';\n if (!info.alphabet.alphanumerc.has(x))\n return 'byte';\n }\n return type;\n}\n/**\n * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])\n */\nexport function utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error(`utf8ToBytes expected string, got ${typeof str}`);\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\nfunction encode(ver, ecc, data, type, encoder = utf8ToBytes) {\n let encoded = '';\n let dataLen = data.length;\n if (type === 'numeric') {\n const t = info.alphabet.numeric.decode(data.split(''));\n const n = t.length;\n for (let i = 0; i < n - 2; i += 3)\n encoded += bin(t[i] * 100 + t[i + 1] * 10 + t[i + 2], 10);\n if (n % 3 === 1) {\n encoded += bin(t[n - 1], 4);\n }\n else if (n % 3 === 2) {\n encoded += bin(t[n - 2] * 10 + t[n - 1], 7);\n }\n }\n else if (type === 'alphanumeric') {\n const t = info.alphabet.alphanumerc.decode(data.split(''));\n const n = t.length;\n for (let i = 0; i < n - 1; i += 2)\n encoded += bin(t[i] * 45 + t[i + 1], 11);\n if (n % 2 == 1)\n encoded += bin(t[n - 1], 6); // pad if odd number of chars\n }\n else if (type === 'byte') {\n const utf8 = encoder(data);\n dataLen = utf8.length;\n encoded = Array.from(utf8)\n .map((i) => bin(i, 8))\n .join('');\n }\n else {\n throw new Error('encode: unsupported type');\n }\n const { capacity } = info.capacity(ver, ecc);\n const len = bin(dataLen, info.lengthBits(ver, type));\n let bits = info.modeBits[type] + len + encoded;\n if (bits.length > capacity)\n throw new Error('Capacity overflow');\n // Terminator\n bits += '0'.repeat(Math.min(4, Math.max(0, capacity - bits.length)));\n // Pad bits string untill full byte\n if (bits.length % 8)\n bits += '0'.repeat(8 - (bits.length % 8));\n // Add padding until capacity is full\n const padding = '1110110000010001';\n for (let idx = 0; bits.length !== capacity; idx++)\n bits += padding[idx % padding.length];\n // Convert a bitstring to array of bytes\n const bytes = Uint8Array.from(bits.match(/(.{8})/g).map((i) => Number(`0b${i}`)));\n return interleave(ver, ecc).encode(bytes);\n}\n// DRAW\nfunction drawQR(ver, ecc, data, maskIdx, test = false) {\n const b = drawTemplate(ver, ecc, maskIdx, test);\n let i = 0;\n const need = 8 * data.length;\n zigzag(b, maskIdx, (x, y, mask) => {\n let value = false;\n if (i < need) {\n value = ((data[i >>> 3] >> ((7 - i) & 7)) & 1) !== 0;\n i++;\n }\n b.set(x, y, value !== mask); // !== as xor\n });\n if (i !== need)\n throw new Error('QR: bytes left after draw');\n return b;\n}\nconst mkPattern = (pattern) => {\n const s = pattern.map((i) => (i ? '1' : '0')).join('');\n return { len: s.length, n: Number(`0b${s}`) };\n};\n// 1:1:3:1:1 ratio (dark:light:dark:light:dark) pattern in row/column, preceded or followed by light area 4 modules wide\nconst finderPattern = [true, false, true, true, true, false, true]; // dark:light:dark:light:dark\nconst lightPattern = [false, false, false, false]; // light area 4 modules wide\nconst P1 = mkPattern([...finderPattern, ...lightPattern]);\nconst P2 = mkPattern([...lightPattern, ...finderPattern]);\nfunction penalty(bm) {\n const { width, height } = bm;\n const transposed = bm.transpose();\n // Adjacent modules in row/column in same | No. of modules = (5 + i) color\n let adjacent = 0;\n for (let y = 0; y < height; y++) {\n bm.getRuns(y, (len) => {\n if (len >= 5)\n adjacent += 3 + (len - 5);\n });\n }\n for (let y = 0; y < width; y++) {\n transposed.getRuns(y, (len) => {\n if (len >= 5)\n adjacent += 3 + (len - 5);\n });\n }\n // Block of modules in same color (Block size = 2x2)\n let box = 0;\n for (let y = 0; y < height - 1; y++)\n box += 3 * bm.countBoxes2x2(y);\n let finder = 0;\n for (let y = 0; y < height; y++)\n finder += 40 * bm.countPatternInRow(y, P1.len, P1.n, P2.n);\n for (let y = 0; y < width; y++)\n finder += 40 * transposed.countPatternInRow(y, P1.len, P1.n, P2.n);\n // Proportion of dark modules in entire symbol\n // Add 10 points to a deviation of 5% increment or decrement in the proportion\n // ratio of dark module from the referential 50%\n let darkPixels = 0;\n darkPixels = bm.popcnt();\n //bm.rectRead(0, Infinity, (_c, val) => (darkPixels += val ? 1 : 0));\n // for (let y = 0; y < height; y++) {\n // for (let x = 0; x < width; x++) if (bm.get(x, y)) darkPixels++;\n // }\n const darkPercent = (darkPixels / (height * width)) * 100;\n const dark = 10 * Math.floor(Math.abs(darkPercent - 50) / 5);\n return adjacent + box + finder + dark;\n}\n// Selects best mask according to penalty, if no mask is provided\nfunction drawQRBest(ver, ecc, data, maskIdx) {\n if (maskIdx === undefined) {\n const bestMask = best();\n for (let mask = 0; mask < PATTERNS.length; mask++)\n bestMask.add(penalty(drawQR(ver, ecc, data, mask, true)), mask);\n maskIdx = bestMask.get();\n }\n if (maskIdx === undefined)\n throw new Error('Cannot find mask'); // Should never happen\n return drawQR(ver, ecc, data, maskIdx);\n}\nfunction validateECC(ec) {\n if (!ECMode.includes(ec))\n throw new Error(`Invalid error correction mode=${ec}. Expected: ${ECMode}`);\n}\nfunction validateEncoding(enc) {\n if (!Encoding.includes(enc))\n throw new Error(`Encoding: invalid mode=${enc}. Expected: ${Encoding}`);\n if (enc === 'kanji' || enc === 'eci')\n throw new Error(`Encoding: ${enc} is not supported (yet?).`);\n}\nfunction validateMask(mask) {\n if (![0, 1, 2, 3, 4, 5, 6, 7].includes(mask) || !PATTERNS[mask])\n throw new Error(`Invalid mask=${mask}. Expected number [0..7]`);\n}\nexport function encodeQR(text, output = 'raw', opts = {}) {\n const ecc = opts.ecc !== undefined ? opts.ecc : 'medium';\n validateECC(ecc);\n const encoding = opts.encoding !== undefined ? opts.encoding : detectType(text);\n validateEncoding(encoding);\n if (opts.mask !== undefined)\n validateMask(opts.mask);\n let ver = opts.version;\n let data, err = new Error('Unknown error');\n if (ver !== undefined) {\n validateVersion(ver);\n data = encode(ver, ecc, text, encoding, opts.textEncoder);\n }\n else {\n // If no version is provided, try to find smallest one which fits\n // Currently just scans all version, can be significantly speedup if needed\n for (let i = 1; i <= 40; i++) {\n try {\n data = encode(i, ecc, text, encoding, opts.textEncoder);\n ver = i;\n break;\n }\n catch (e) {\n err = e;\n }\n }\n }\n if (!ver || !data)\n throw err;\n let res = drawQRBest(ver, ecc, data, opts.mask);\n res.assertDrawn();\n const border = opts.border === undefined ? 2 : opts.border;\n if (!Number.isSafeInteger(border))\n throw new Error(`invalid border type=${typeof border}`);\n res = res.border(border, false); // Add border\n if (opts.scale !== undefined)\n res = res.scale(opts.scale); // Scale image\n if (output === 'raw')\n return res.toRaw();\n else if (output === 'ascii')\n return res.toASCII();\n else if (output === 'svg')\n return res.toSVG(opts.optimize);\n else if (output === 'gif')\n return res.toGIF();\n else if (output === 'term')\n return res.toTerm();\n else\n throw new Error(`Unknown output: ${output}`);\n}\nexport default encodeQR;\nexport const utils = {\n best,\n bin,\n popcnt,\n drawTemplate,\n fillArr,\n info,\n interleave,\n validateVersion,\n zigzag,\n};\n// Unsafe API utils, exported only for tests\nexport const _tests = {\n Bitmap,\n info,\n detectType,\n encode,\n drawQR,\n penalty,\n PATTERNS,\n};\n// Type tests\n// const o1 = qr('test', 'ascii');\n// const o2 = qr('test', 'raw');\n// const o3 = qr('test', 'gif');\n// const o4 = qr('test', 'svg');\n// const o5 = qr('test', 'term');\n//# sourceMappingURL=index.js.map","import type { PaymentInfoResponse } from '../types';\n\nconst SUCCESS_TX = new Set([\n 'Authorised',\n 'Scheduled',\n 'Processing Settlement',\n 'Settled',\n 'Paid Out',\n]);\nconst FAILED_TX = new Set(['Cancelled', 'Failed']);\nconst SUCCESS_INTENT = new Set(['SUCCEEDED', 'REQUIRES_CAPTURE']);\nconst FAILED_INTENT = new Set(['CANCELLED']);\nconst SUCCESS_ATTEMPT = new Set(['AUTHORIZED', 'CAPTURED', 'SETTLED']);\nconst FAILED_ATTEMPT = new Set(['FAILED', 'CANCELLED', 'EXPIRED', 'AUTHENTICATION_FAILED']);\n\nexport function interpretPaymentInfo(\n info: PaymentInfoResponse,\n): 'success' | 'failed' | 'pending' {\n const tx = info.payment?.transactionStatus;\n const intent = info.paymentIntent?.status;\n const attempt = info.paymentAttempt?.status;\n\n if (tx && SUCCESS_TX.has(tx)) return 'success';\n if (intent && SUCCESS_INTENT.has(intent)) return 'success';\n if (typeof attempt === 'string' && SUCCESS_ATTEMPT.has(attempt)) return 'success';\n if (tx && FAILED_TX.has(tx)) return 'failed';\n if (intent && FAILED_INTENT.has(intent)) return 'failed';\n if (typeof attempt === 'string' && FAILED_ATTEMPT.has(attempt)) return 'failed';\n return 'pending';\n}\n\nexport function failureCode(info: PaymentInfoResponse): string {\n const tx = info.payment?.transactionStatus;\n const attempt = info.paymentAttempt?.status;\n if (tx && FAILED_TX.has(tx)) return tx;\n if (typeof attempt === 'string' && FAILED_ATTEMPT.has(attempt)) return attempt;\n return 'Failed';\n}\n","import type { ElementType } from '../types';\n\nconst FAMILY: Record<string, ElementType> = {\n card: 'card',\n paynow: 'qr',\n wechatpay: 'qr',\n applepay: 'wallet',\n googlepay: 'wallet',\n alipay: 'alipay',\n alipaycn: 'alipay',\n alipayhk: 'alipay',\n};\n\nexport function resolveElementType(methodType: string): ElementType {\n return FAMILY[methodType.toLowerCase()] ?? 'redirect';\n}\n\nexport function isWalletMethodType(type: string): type is 'applepay' | 'googlepay' {\n return type === 'applepay' || type === 'googlepay';\n}\n\nexport function isQrMethodType(type: string): boolean {\n return type === 'paynow' || type === 'wechatpay';\n}\n\nexport function isAlipayMethodType(type: string): boolean {\n return type === 'alipay' || type === 'alipaycn' || type === 'alipayhk';\n}\n","var e,n,t,_,l,o,r,u,i,s,c,f,p,a,h,d={},v=[],y=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,m=Array.isArray;function g(e,n){for(var t in n)e[t]=n[t];return e}function k(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function b(n,t,_){var l,o,r,u={};for(r in t)\"key\"==r?l=t[r]:\"ref\"==r?o=t[r]:u[r]=t[r];if(arguments.length>2&&(u.children=arguments.length>3?e.call(arguments,2):_),\"function\"==typeof n&&null!=n.defaultProps)for(r in n.defaultProps)void 0===u[r]&&(u[r]=n.defaultProps[r]);return w(n,u,l,o,null)}function w(e,_,l,o,r){var u={type:e,props:_,key:l,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:null==r?++t:r,__i:-1,__u:0};return null==r&&null!=n.vnode&&n.vnode(u),u}function x(){return{current:null}}function C(e){return e.children}function P(e,n){this.props=e,this.context=n}function S(e,n){if(null==n)return e.__?S(e.__,e.__i+1):null;for(var t;n<e.__k.length;n++)if(null!=(t=e.__k[n])&&null!=t.__e)return t.__e;return\"function\"==typeof e.type?S(e):null}function U(e){if(e.__P&&e.__d){var t=e.__v,_=t.__e,l=[],o=[],r=g({},t);r.__v=t.__v+1,n.vnode&&n.vnode(r),I(e.__P,r,t,e.__n,e.__P.namespaceURI,32&t.__u?[_]:null,l,null==_?S(t):_,!!(32&t.__u),o),r.__v=t.__v,r.__.__k[r.__i]=r,B(l,r,o),t.__e=t.__=null,r.__e!=_&&T(r)}}function T(e){if(null!=(e=e.__)&&null!=e.__c)return e.__e=e.__c.base=null,e.__k.some(function(n){if(null!=n&&null!=n.__e)return e.__e=e.__c.base=n.__e}),T(e)}function M(e){(!e.__d&&(e.__d=!0)&&_.push(e)&&!D.__r++||l!=n.debounceRendering)&&((l=n.debounceRendering)||o)(D)}function D(){try{for(var e,n=1;_.length;)_.length>n&&_.sort(r),e=_.shift(),n=_.length,U(e)}finally{_.length=D.__r=0}}function E(e,n,t,_,l,o,r,u,i,s,c){var f,p,a,h,y,m,g,k=_&&_.__k||v,b=n.length;for(i=W(t,n,k,i,b),f=0;f<b;f++)null!=(a=t.__k[f])&&(p=-1!=a.__i&&k[a.__i]||d,a.__i=f,m=I(e,a,p,l,o,r,u,i,s,c),h=a.__e,a.ref&&p.ref!=a.ref&&(p.ref&&V(p.ref,null,a),c.push(a.ref,a.__c||h,a)),null==y&&null!=h&&(y=h),(g=!!(4&a.__u))||p.__k===a.__k?(i=F(a,i,e,g),g&&p.__e&&(p.__e=null)):\"function\"==typeof a.type&&void 0!==m?i=m:h&&(i=h.nextSibling),a.__u&=-7);return t.__e=y,i}function W(e,n,t,_,l){var o,r,u,i,s,c=t.length,f=c,p=0;for(e.__k=new Array(l),o=0;o<l;o++)null!=(r=n[o])&&\"boolean\"!=typeof r&&\"function\"!=typeof r?(\"string\"==typeof r||\"number\"==typeof r||\"bigint\"==typeof r||r.constructor==String?r=e.__k[o]=w(null,r,null,null,null):m(r)?r=e.__k[o]=w(C,{children:r},null,null,null):void 0===r.constructor&&r.__b>0?r=e.__k[o]=w(r.type,r.props,r.key,r.ref?r.ref:null,r.__v):e.__k[o]=r,i=o+p,r.__=e,r.__b=e.__b+1,u=null,-1!=(s=r.__i=N(r,t,i,f))&&(f--,(u=t[s])&&(u.__u|=2)),null==u||null==u.__v?(-1==s&&(l>c?p--:l<c&&p++),\"function\"!=typeof r.type&&(r.__u|=4)):s!=i&&(s==i-1?p--:s==i+1?p++:(s>i?p--:p++,r.__u|=4))):e.__k[o]=null;if(f)for(o=0;o<c;o++)null!=(u=t[o])&&!(2&u.__u)&&(u.__e==_&&(_=S(u)),z(u,u));return _}function F(e,n,t,_){var l,o;if(\"function\"==typeof e.type){for(l=e.__k,o=0;l&&o<l.length;o++)l[o]&&(l[o].__=e,n=F(l[o],n,t,_));return n}e.__e!=n&&(_&&(n&&e.type&&!n.parentNode&&(n=S(e)),t.insertBefore(e.__e,n||null)),n=e.__e);do{n=n&&n.nextSibling}while(null!=n&&8==n.nodeType);return n}function L(e,n){return n=n||[],null==e||\"boolean\"==typeof e||(m(e)?e.some(function(e){L(e,n)}):n.push(e)),n}function N(e,n,t,_){var l,o,r,u=e.key,i=e.type,s=n[t],c=null!=s&&!(2&s.__u);if(null===s&&null==u||c&&u==s.key&&i==s.type)return t;if(_>(c?1:0))for(l=t-1,o=t+1;l>=0||o<n.length;)if(null!=(s=n[r=l>=0?l--:o++])&&!(2&s.__u)&&u==s.key&&i==s.type)return r;return-1}function A(e,n,t){\"-\"==n[0]?e.setProperty(n,null==t?\"\":t):e[n]=null==t?\"\":\"number\"!=typeof t||y.test(n)?t:t+\"px\"}function R(e,n,t,_,l){var o,r;e:if(\"style\"==n)if(\"string\"==typeof t)e.style.cssText=t;else{if(\"string\"==typeof _&&(e.style.cssText=_=\"\"),_)for(n in _)t&&n in t||A(e.style,n,\"\");if(t)for(n in t)_&&t[n]==_[n]||A(e.style,n,t[n])}else if(\"o\"==n[0]&&\"n\"==n[1])o=n!=(n=n.replace(c,\"$1\")),r=n.toLowerCase(),n=r in e||\"onFocusOut\"==n||\"onFocusIn\"==n?r.slice(2):n.slice(2),e.l||(e.l={}),e.l[n+o]=t,t?_?t[s]=_[s]:(t[s]=f,e.addEventListener(n,o?a:p,o)):e.removeEventListener(n,o?a:p,o);else{if(\"http://www.w3.org/2000/svg\"==l)n=n.replace(/xlink(H|:h)/,\"h\").replace(/sName$/,\"s\");else if(\"width\"!=n&&\"height\"!=n&&\"href\"!=n&&\"list\"!=n&&\"form\"!=n&&\"tabIndex\"!=n&&\"download\"!=n&&\"rowSpan\"!=n&&\"colSpan\"!=n&&\"role\"!=n&&\"popover\"!=n&&n in e)try{e[n]=null==t?\"\":t;break e}catch(e){}\"function\"==typeof t||(null==t||!1===t&&\"-\"!=n[4]?e.removeAttribute(n):e.setAttribute(n,\"popover\"==n&&1==t?\"\":t))}}function H(e){return function(t){if(this.l){var _=this.l[t.type+e];if(null==t[i])t[i]=f++;else if(t[i]<_[s])return;return _(n.event?n.event(t):t)}}}function I(e,t,_,l,o,r,u,i,s,c){var f,p,a,h,d,y,b,w,x,S,U,T,M,D,W,F,L=t.type;if(void 0!==t.constructor)return null;128&_.__u&&(s=!!(32&_.__u),r=[i=t.__e=_.__e]),(f=n.__b)&&f(t);e:if(\"function\"==typeof L){p=u.length;try{if(x=t.props,S=L.prototype&&L.prototype.render,U=(f=L.contextType)&&l[f.__c],T=f?U?U.props.value:f.__:l,_.__c?w=(a=t.__c=_.__c).__=a.__E:(S?t.__c=a=new L(x,T):(t.__c=a=new P(x,T),a.constructor=L,a.render=q),U&&U.sub(a),a.state||(a.state={}),a.__n=l,h=a.__d=!0,a.__h=[],a._sb=[]),S&&null==a.__s&&(a.__s=a.state),S&&null!=L.getDerivedStateFromProps&&(a.__s==a.state&&(a.__s=g({},a.__s)),g(a.__s,L.getDerivedStateFromProps(x,a.__s))),d=a.props,y=a.state,a.__v=t,h)S&&null==L.getDerivedStateFromProps&&null!=a.componentWillMount&&a.componentWillMount(),S&&null!=a.componentDidMount&&a.__h.push(a.componentDidMount);else{if(S&&null==L.getDerivedStateFromProps&&x!==d&&null!=a.componentWillReceiveProps&&a.componentWillReceiveProps(x,T),t.__v==_.__v||!a.__e&&null!=a.shouldComponentUpdate&&!1===a.shouldComponentUpdate(x,a.__s,T)){t.__v!=_.__v&&(a.props=x,a.state=a.__s,a.__d=!1),t.__e=_.__e,t.__k=_.__k,t.__k.some(function(e){e&&(e.__=t)}),v.push.apply(a.__h,a._sb),a._sb=[],a.__h.length&&u.push(a);break e}null!=a.componentWillUpdate&&a.componentWillUpdate(x,a.__s,T),S&&null!=a.componentDidUpdate&&a.__h.push(function(){a.componentDidUpdate(d,y,b)})}if(a.context=T,a.props=x,a.__P=e,a.__e=!1,M=n.__r,D=0,S)a.state=a.__s,a.__d=!1,M&&M(t),f=a.render(a.props,a.state,a.context),v.push.apply(a.__h,a._sb),a._sb=[];else do{a.__d=!1,M&&M(t),f=a.render(a.props,a.state,a.context),a.state=a.__s}while(a.__d&&++D<25);a.state=a.__s,null!=a.getChildContext&&(l=g(g({},l),a.getChildContext())),S&&!h&&null!=a.getSnapshotBeforeUpdate&&(b=a.getSnapshotBeforeUpdate(d,y)),W=null!=f&&f.type===C&&null==f.key?O(f.props.children):f,i=E(e,m(W)?W:[W],t,_,l,o,r,u,i,s,c),a.base=t.__e,t.__u&=-161,a.__h.length&&u.push(a),w&&(a.__E=a.__=null)}catch(e){if(u.length=p,t.__v=null,s||null!=r){if(e.then){for(t.__u|=s?160:128;i&&8==i.nodeType&&i.nextSibling;)i=i.nextSibling;null!=r&&(r[r.indexOf(i)]=null),t.__e=i}else if(null!=r)for(F=r.length;F--;)k(r[F])}else t.__e=_.__e;null==t.__k&&(t.__k=_.__k||[]),e.then||$(t),n.__e(e,t,_)}}else null==r&&t.__v==_.__v?(t.__k=_.__k,t.__e=_.__e):i=t.__e=j(_.__e,t,_,l,o,r,u,s,c);return(f=n.diffed)&&f(t),128&t.__u?void 0:i}function $(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some($))}function B(e,t,_){for(var l=0;l<_.length;l++)V(_[l],_[++l],_[++l]);n.__c&&n.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){n.__e(e,t.__v)}})}function O(e){return\"object\"!=typeof e||null==e||e.__b>0?e:m(e)?e.map(O):void 0!==e.constructor?null:g({},e)}function j(t,_,l,o,r,u,i,s,c){var f,p,a,h,v,y,g,b=l.props||d,w=_.props,x=_.type;if(\"svg\"==x?r=\"http://www.w3.org/2000/svg\":\"math\"==x?r=\"http://www.w3.org/1998/Math/MathML\":r||(r=\"http://www.w3.org/1999/xhtml\"),null!=u)for(f=0;f<u.length;f++)if((v=u[f])&&\"setAttribute\"in v==!!x&&(x?v.localName==x:3==v.nodeType)){t=v,u[f]=null;break}if(null==t){if(null==x)return document.createTextNode(w);t=document.createElementNS(r,x,w.is&&w),s&&(n.__m&&n.__m(_,u),s=!1),u=null}if(null==x)b===w||s&&t.data==w||(t.data=w);else{if(u=\"textarea\"==x&&null!=w.defaultValue?null:u&&e.call(t.childNodes),!s&&null!=u)for(b={},f=0;f<t.attributes.length;f++)b[(v=t.attributes[f]).name]=v.value;for(f in b)v=b[f],\"dangerouslySetInnerHTML\"==f?a=v:\"children\"==f||f in w||\"value\"==f&&\"defaultValue\"in w||\"checked\"==f&&\"defaultChecked\"in w||R(t,f,null,v,r);for(f in w)v=w[f],\"children\"==f?h=v:\"dangerouslySetInnerHTML\"==f?p=v:\"value\"==f?y=v:\"checked\"==f?g=v:s&&\"function\"!=typeof v||b[f]===v||R(t,f,v,b[f],r);if(p)s||a&&(p.__html==a.__html||p.__html==t.innerHTML)||(t.innerHTML=p.__html),_.__k=[];else if(a&&(t.innerHTML=\"\"),E(\"template\"==_.type?t.content:t,m(h)?h:[h],_,l,o,\"foreignObject\"==x?\"http://www.w3.org/1999/xhtml\":r,u,i,u?u[0]:l.__k&&S(l,0),s,c),null!=u)for(f=u.length;f--;)k(u[f]);s&&\"textarea\"!=x||(f=\"value\",\"progress\"==x&&null==y?t.removeAttribute(\"value\"):null!=y&&(y!==t[f]||\"progress\"==x&&!y||\"option\"==x&&y!=b[f])&&R(t,f,y,b[f],r),f=\"checked\",null!=g&&g!=t[f]&&R(t,f,g,b[f],r))}return t}function V(e,t,_){try{if(\"function\"==typeof e){var l=\"function\"==typeof e.__u;l&&e.__u(),l&&null==t||(e.__u=e(t))}else e.current=t}catch(e){n.__e(e,_)}}function z(e,t,_){var l,o;if(n.unmount&&n.unmount(e),(l=e.ref)&&(l.current&&l.current!=e.__e||V(l,null,t)),null!=(l=e.__c)){if(l.componentWillUnmount)try{l.componentWillUnmount()}catch(e){n.__e(e,t)}l.base=l.__P=l.__n=null}if(l=e.__k)for(o=0;o<l.length;o++)l[o]&&z(l[o],t,_||\"function\"!=typeof e.type);_||k(e.__e),e.__c=e.__=e.__e=void 0}function q(e,n,t){return this.constructor(e,t)}function G(t,_,l){var o,r,u;_==document&&(_=document.documentElement),n.__&&n.__(t,_),o=!1?null:_.__k,r=[],u=[],I(_,t=_.__k=b(C,null,[t]),o||d,d,_.namespaceURI,o?null:_.firstChild?e.call(_.childNodes):null,r,o?o.__e:_.firstChild,false,u),B(r,t,u),t.props.children=null}function J(n,t,_){var l,o,r,u,i=g({},n.props);for(r in n.type&&n.type.defaultProps&&(u=n.type.defaultProps),t)\"key\"==r?l=t[r]:\"ref\"==r?o=t[r]:i[r]=void 0===t[r]&&null!=u?u[r]:t[r];return arguments.length>2&&(i.children=arguments.length>3?e.call(arguments,2):_),w(n.type,i,l||n.key,o||n.ref,null)}function K(e){function n(e){var t,_;return this.getChildContext||(t=new Set,(_={})[n.__c]=this,this.getChildContext=function(){return _},this.componentWillUnmount=function(){t=null},this.shouldComponentUpdate=function(e){this.props.value!=e.value&&t.forEach(function(e){e.__e=!0,M(e)})},this.sub=function(e){t.add(e);var n=e.componentWillUnmount;e.componentWillUnmount=function(){t&&t.delete(e),n&&n.call(e)}}),e.children}return n.__c=\"__cC\"+h++,n.__=e,n.Provider=n.__l=(n.Consumer=function(e,n){return e.children(n)}).contextType=n,n}e=v.slice,n={__e:function(e,n,t,_){for(var l,o,r;n=n.__;)if((l=n.__c)&&!l.__)try{if((o=l.constructor)&&null!=o.getDerivedStateFromError&&(l.setState(o.getDerivedStateFromError(e)),r=l.__d),null!=l.componentDidCatch&&(l.componentDidCatch(e,_||{}),r=l.__d),r)return l.__E=l}catch(n){e=n}throw e}},t=0,P.prototype.setState=function(e,n){var t;t=null!=this.__s&&this.__s!=this.state?this.__s:this.__s=g({},this.state),\"function\"==typeof e&&(e=e(g({},t),this.props)),e&&g(t,e),null!=e&&this.__v&&(n&&this._sb.push(n),M(this))},P.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),M(this))},P.prototype.render=C,_=[],o=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,r=function(e,n){return e.__v.__b-n.__v.__b},D.__r=0,u=Math.random().toString(8),i=\"__d\"+u,s=\"__a\"+u,c=/(PointerCapture)$|Capture$/i,f=0,p=H(!1),a=H(!0),h=0;export{P as Component,C as Fragment,J as cloneElement,K as createContext,b as createElement,x as createRef,b as h,n as options,G as render,L as toChildArray};\n//# sourceMappingURL=preact.js.map\n","import{options as _}from\"../../dist/preact.js\";var n,t,u,e,o=0,r=[],i=_,c=i.__b,f=i.__r,a=i.diffed,s=i.__c,h=i.unmount,m=i.__;function v(_,n){i.__h&&i.__h(t,_,o||n),o=0;var u=t.__H||(t.__H={__:[],__h:[]});return _>=u.__.length&&u.__.push({}),u.__[_]}function l(_){return o=1,p(T,_)}function p(_,u,e){var o=v(n++,2);if(o.t=_,!o.__c&&(o.__=[e?e(u):T(void 0,u),function(_){var n=o.__N?o.__N[0]:o.__[0],t=o.t(n,_);n!==t&&(o.__N=[t,o.__[1]],o.__c.setState({}))}],o.__c=t,!t.__f)){var r=function(_,n,t){if(!o.__c.__H)return!0;var u=!1,e=o.__c.props!==_;if(o.__c.__H.__.some(function(_){if(_.__N){u=!0;var n=_.__[0];_.__=_.__N,_.__N=void 0,n!==_.__[0]&&(e=!0)}}),i){var r=i.call(this,_,n,t);return u?r||e:r}return!u||e};t.__f=!0;var i=t.shouldComponentUpdate,c=t.componentWillUpdate;t.componentWillUpdate=function(_,n,t){if(this.__e){var u=i;i=void 0,r(_,n,t),i=u}c&&c.call(this,_,n,t)},t.shouldComponentUpdate=r}return o.__N||o.__}function d(_,u){var e=v(n++,3);!i.__s&&x(e.__H,u)&&(e.__=_,e.u=u,t.__H.__h.push(e))}function H(_,u){var e=v(n++,4);!i.__s&&x(e.__H,u)&&(e.__=_,e.u=u,t.__h.push(e))}function N(_){return o=5,A(function(){return{current:_}},[])}function y(_,n,t){o=6,H(function(){if(\"function\"==typeof _){var t=_(n());return function(){_(null),t&&\"function\"==typeof t&&t()}}if(_)return _.current=n(),function(){return _.current=null}},null==t?t:t.concat(_))}function A(_,t){var u=v(n++,7);return x(u.__H,t)&&(u.__=_(),u.__H=t,u.__h=_),u.__}function F(_,n){return o=8,A(function(){return _},n)}function b(_){var u=t.context[_.__c],e=v(n++,9);return e.c=_,u?(null==e.__&&(e.__=!0,u.sub(t)),u.props.value):_.__}function g(){for(var _;_=r.shift();){var n=_.__H;if(_.__P&&n)try{n.__h.some(C),n.__h.some(U),n.__h=[]}catch(t){n.__h=[],i.__e(t,_.__v)}}}i.__b=function(_){t=null,c&&c(_)},i.__=function(_,n){_&&n.__k&&n.__k.__m&&(_.__m=n.__k.__m),m&&m(_,n)},i.__r=function(_){f&&f(_),n=0;var e=(t=_.__c).__H;e&&(u===t?(e.__h=[],t.__h=[],e.__.some(function(_){_.__N&&(_.__=_.__N),_.u=_.__N=void 0})):(e.__h.some(C),e.__h.some(U),e.__h=[],n=0)),u=t},i.diffed=function(_){a&&a(_);var n=_.__c;n&&n.__H&&(n.__H.__h.length&&(1!==r.push(n)&&e===i.requestAnimationFrame||((e=i.requestAnimationFrame)||q)(g)),n.__H.__.some(function(_){_.u&&(_.__H=_.u,_.u=void 0)})),u=t=null},i.__c=function(_,n){n.some(function(_){try{_.__h.some(C),_.__h=_.__h.filter(function(_){return!_.__||U(_)})}catch(t){n.some(function(_){_.__h&&(_.__h=[])}),n=[],i.__e(t,_.__v)}}),s&&s(_,n)},i.unmount=function(_){h&&h(_);var n,t=_.__c;t&&t.__H&&(t.__H.__.some(function(_){try{C(_)}catch(_){n=_}}),t.__H=void 0,n&&i.__e(n,t.__v))};var k=\"function\"==typeof requestAnimationFrame;function q(_){var n,t=function(){clearTimeout(u),k&&cancelAnimationFrame(n),setTimeout(_)},u=setTimeout(t,35);k&&(n=requestAnimationFrame(t))}function C(_){var n=t,u=_.__c;\"function\"==typeof u&&(_.__c=void 0,u()),t=n}function U(_){var n=t;_.__c=_.__(),t=n}function x(_,n){return!_||_.length!==n.length||n.some(function(n,t){return n!==_[t]})}function T(_,n){return\"function\"==typeof n?n(_):n}export{F as useCallback,b as useContext,d as useEffect,y as useImperativeHandle,H as useLayoutEffect,A as useMemo,p as useReducer,N as useRef,l as useState};\n//# sourceMappingURL=hooks.js.map\n","const e=\"encrypted\",r=\"encryptedCardNumber\",i=\"encryptedExpiryDate\",c=\"encryptedExpiryMonth\",d=\"encryptedExpiryYear\",t=\"encryptedSecurityCode\",a=\"encryptedPassword\",n=\"encryptedSecurityCode3digits\",s=\"encryptedSecurityCode4digits\",o=\"giftcard\",y=\"6.3.0\",p=[\"amex\",\"mc\",\"visa\"],u=[o],C=[r,i,c,d,t,a],m=C,x=[\"bcmc\"],b=\"required\",D=\"optional\",g=\"hidden\",h=b,l=D,v=g,E=b,M=D,S=g,f=\"data-cse\",j=\"data-info\",B=\"data-uid\",k=[\"accel\",\"pulse\",\"star\",\"nyce\"],w={visa:\"VISA\",mc:\"MasterCard\",amex:\"American Express\",discover:\"Discover\",cup:\"China Union Pay\",jcb:\"JCB\",diners:\"Diners Club\",maestro:\"Maestro\",bcmc:\"Bancontact card\",bijcard:\"de Bijenkorf Card\"},A={[r]:\"cardNumber\",[i]:\"expiryDate\",[t]:\"securityCode\",[c]:\"expiryMonth\",[d]:\"expiryYear\",[a]:\"password\",[n]:\"securityCodeThreeDigits\",[s]:\"securityCodeFourDigits\"},N=6e3,P=\"bin-lookup\";export{m as ALL_SECURED_FIELDS,P as BIN_LOOKUP_MODE,k as BRAND_ICON_UI_EXCLUSION_LIST,w as BRAND_READABLE_NAME_MAP,C as CREDIT_CARD_SF_FIELDS,v as CVC_POLICY_HIDDEN,l as CVC_POLICY_OPTIONAL,h as CVC_POLICY_REQUIRED,f as DATA_ENCRYPTED_FIELD_ATTR,j as DATA_INFO,B as DATA_UID,S as DATE_POLICY_HIDDEN,M as DATE_POLICY_OPTIONAL,E as DATE_POLICY_REQUIRED,x as DEDICATED_CARD_COMPONENTS,p as DEFAULT_CARD_GROUP_TYPES,e as ENCRYPTED,r as ENCRYPTED_CARD_NUMBER,i as ENCRYPTED_EXPIRY_DATE,c as ENCRYPTED_EXPIRY_MONTH,d as ENCRYPTED_EXPIRY_YEAR,a as ENCRYPTED_PWD_FIELD,t as ENCRYPTED_SECURITY_CODE,n as ENCRYPTED_SECURITY_CODE_3_DIGITS,s as ENCRYPTED_SECURITY_CODE_4_DIGITS,o as GIFT_CARD,g as HIDDEN,u as NON_CREDIT_CARD_TYPE_SECURED_FIELDS,D as OPTIONAL,b as REQUIRED,N as SF_CONFIG_TIMEOUT,A as SF_FIELDS_MAP,y as SF_VERSION};\n//# sourceMappingURL=constants.js.map\n","import{ENCRYPTED_PWD_FIELD as _,ENCRYPTED_SECURITY_CODE as R,ENCRYPTED_EXPIRY_YEAR as c,ENCRYPTED_EXPIRY_MONTH as E,ENCRYPTED_EXPIRY_DATE as C,ENCRYPTED_CARD_NUMBER as r}from\"../../components/internal/SecuredFields/lib/constants.js\";const O=\"-ariaError\",e=\"-ariaContext\",t=\"focusField\",M=\"notValidating:blurScenario\",n=\"field.error.required\",a=\"field.error.invalid\",i=\"invalid.format.expects\",d=\"creditCard.holderName.invalid\",S=\"creditCard.taxNumber.invalid\",L=\"boleto.socialSecurityNumber.invalid\";var T=function(_){return _.CC_NUM=\"cc.num\",_.CC_DAT=\"cc.dat\",_.CC_MTH=\"cc.mth\",_.CC_YR=\"cc.yr\",_.CC_CVC=\"cc.cvc\",_.KCP_PWD=\"kcp.pwd\",_}({}),D=function(_){return _.ERROR_MSG_INCOMPLETE_FIELD=\"err.gen.9100\",_.ERROR_MSG_INVALID_FIELD=\"err.gen.9101\",_.ERROR_MSG_LUHN_CHECK_FAILED=\"cc.num.902\",_.ERROR_MSG_EMPTY_PAN=\"cc.num.900\",_.ERROR_MSG_UNSUPPORTED_CARD_ENTERED=\"cc.num.903\",_.ERROR_MSG_INCORRECTLY_FILLED_PAN=\"cc.num.901\",_.ERROR_MSG_CARD_TOO_OLD=\"cc.dat.912\",_.ERROR_MSG_CARD_TOO_FAR_IN_FUTURE=\"cc.dat.913\",_.ERROR_MSG_CARD_EXPIRES_TOO_SOON=\"cc.dat.914\",_.ERROR_MSG_EMPTY_DATE=\"cc.dat.910\",_.ERROR_MSG_INCORRECTLY_FILLED__DATE=\"cc.dat.911\",_.ERROR_MSG_EMPTY_YEAR=\"cc.yr.917\",_.ERROR_MSG_INCORRECTLY_FILLED_YEAR=\"cc.yr.918\",_.ERROR_MSG_EMPTY_MONTH=\"cc.mth.915\",_.ERROR_MSG_EMPTY_CVC=\"cc.cvc.920\",_.ERROR_MSG_INCORRECTLY_FILLED_CVC=\"cc.cvc.921\",_.ERROR_MSG_EMPTY_CVC_AMEX=\"cc.cvc.920.amex\",_.ERROR_MSG_INCORRECTLY_FILLED_CVC_AMEX=\"cc.cvc.921.amex\",_.ERROR_MSG_EMPTY_KCP_PWD=\"kcp.pwd.940\",_.ERROR_MSG_INCORRECTLY_FILLED_KCP_PWD=\"kcp.pwd.941\",_}({});const o={[r]:\"cc.num.900\",[C]:\"cc.dat.910\",[E]:\"cc.mth.915\",[c]:\"cc.yr.917\",[R]:\"cc.cvc.920\",[_]:\"kcp.pwd.940\"};export{e as ARIA_CONTEXT_SUFFIX,O as ARIA_ERROR_SUFFIX,L as BOLETO_SOCIAL_SECURITY_NUMBER_INVALID,d as CREDITCARD_HOLDER_NAME_INVALID,S as CREDITCARD_TAX_NUMBER_INVALID,o as EMPTY_FIELD_ERROR_MESSAGES,M as ERROR_ACTION_BLUR_SCENARIO,t as ERROR_ACTION_FOCUS_FIELD,a as ERROR_FIELD_INVALID,n as ERROR_FIELD_REQUIRED,i as ERROR_INVALID_FORMAT_EXPECTS,T as ErrorCodePrefixes,D as SF_ErrorCodes};\n//# sourceMappingURL=constants.js.map\n","import{ENCRYPTED_EXPIRY_DATE as e,ENCRYPTED_EXPIRY_MONTH as r,ENCRYPTED_EXPIRY_YEAR as l,ENCRYPTED_SECURITY_CODE as i,CVC_POLICY_OPTIONAL as t,DATE_POLICY_OPTIONAL as c,CVC_POLICY_HIDDEN as o,DATE_POLICY_HIDDEN as s}from\"../lib/constants.js\";import{EMPTY_FIELD_ERROR_MESSAGES as d}from\"../../../../core/Errors/constants.js\";const a=e=>e?Array.prototype.slice.call(e.querySelectorAll('[data-cse*=\"encrypted\"]')).map(e=>e.getAttribute(\"data-cse\")):[],p=(i,t)=>(t===e?(i[r]=!1,i[l]=!1):i[t]=!1,i),y=(d,a)=>(p,y)=>{let n=!0!==a.valid[y]?((i,t)=>1!==t||i!==r&&i!==l?i:e)(y,d):null;return n=((e,r,l)=>{const{isFieldOfType:d,fieldIsValid:a}=l.reduce((l,i)=>(l.isFieldOfType||(l.isFieldOfType=e===i,l.fieldIsValid=!r.errors?.[i]),l),{isFieldOfType:!1,fieldIsValid:!1}),p=e===i?\"cvcPolicy\":\"expiryDatePolicy\",y=\"cvcPolicy\"===p?t:c,n=\"cvcPolicy\"===p?o:s;return(r[p]===y||r[p]===n)&&a&&d?null:e})(n,a,[i,e,r,l]),n&&!p.includes(n)&&p.push(n),p},n=(e,r,l)=>({rootNode:r,fieldType:e,error:l.errors?.[e]||d[e],type:\"card\"});export{n as getErrorObject,y as getErrorReducer,a as getFields,p as validFieldsReducer};\n//# sourceMappingURL=SFPUtils.js.map\n","function i(i,e,t){return e in i?Object.defineProperty(i,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[e]=t,i}class e{constructor(e){i(this,\"callbacks\",void 0),i(this,\"config\",void 0),i(this,\"props\",void 0),i(this,\"state\",void 0),i(this,\"validateForm\",void 0),i(this,\"handleBrandFromBinLookup\",void 0),i(this,\"callbacksHandler\",void 0),i(this,\"configHandler\",void 0),i(this,\"createCardSecuredFields\",void 0),i(this,\"createNonCardSecuredFields\",void 0),i(this,\"createSecuredFields\",void 0),i(this,\"destroySecuredFields\",void 0),i(this,\"handleIOSTouchEvents\",void 0),i(this,\"destroyTouchendListener\",void 0),i(this,\"destroyTouchstartListener\",void 0),i(this,\"handleBinValue\",void 0),i(this,\"handleEncryption\",void 0),i(this,\"handleFocus\",void 0),i(this,\"handleIframeConfigFeedback\",void 0),i(this,\"handleValidation\",void 0),i(this,\"handleSFShiftTab\",void 0),i(this,\"handleShiftTab\",void 0),i(this,\"isConfigured\",void 0),i(this,\"postMessageToAllIframes\",void 0),i(this,\"processAutoComplete\",void 0),i(this,\"processBrand\",void 0),i(this,\"sendBrandToCardSF\",void 0),i(this,\"sendExpiryDatePolicyToSF\",void 0),i(this,\"setFocusOnFrame\",void 0),i(this,\"setupSecuredField\",void 0),i(this,\"touchendListener\",void 0),i(this,\"touchstartListener\",void 0),i(this,\"hasGenuineTouchEvents\",void 0),i(this,\"encryptedAttrName\",void 0),i(this,\"hasRedundantCVCField\",void 0),i(this,\"isSingleBrandedCard\",void 0),i(this,\"securityCode\",void 0),this.props=e,this.state={},this.config={},this.callbacks={}}}export{e as default};\n//# sourceMappingURL=AbstractCSF.js.map\n","const t=Object.prototype.toString;function n(t){return\"object\"==typeof t&&null!==t&&\"[object Array]\"===Object.prototype.toString.call(t)}function e(t){return null!=t}function r(t){return!1!==t&&e(t)}function o(t){return!!t&&\"object\"==typeof t}function c(e){return!r(e)||(!(!(\"number\"==typeof(c=e)||o(c)&&\"[object Number]\"===t.call(c))||0!==e&&!Number.isNaN(e))||(!(!n(e)&&!function(n){return\"string\"==typeof n||o(n)&&\"[object String]\"===t.call(n)}(e)||0!==e.length)||!(!o(e)||0!==Object.keys(e).length)));var c}function u(t){return!c(t)}function f(...t){const e=n(t[0])?t[0]:t;return{from:t=>e.map(n=>n in t?{[n]:t[n]}:{}).reduce((t,n)=>({...t,...n}),{})}}function i(...t){const e=n(t[0])?t[0]:t;return{from:t=>f(...Object.keys(t).filter(t=>!e.includes(t))).from(t)}}export{e as existy,c as falsy,n as isArray,u as notFalsy,f as pick,i as reject,r as truthy};\n//# sourceMappingURL=commonUtils.js.map\n","import{isArray as o}from\"../../../../../../utils/commonUtils.js\";import{DEFAULT_CARD_GROUP_TYPES as t}from\"../../constants.js\";const s=s=>o(s)&&s.length?s:t;export{s as getCardGroupTypes};\n//# sourceMappingURL=getCardGroupTypes.js.map\n","let o=\"undefined\"!=typeof window&&window.console&&window.console.error&&window.console.error.bind(window.console);\"undefined\"!=typeof window&&window.console&&window.console.info&&window.console.info.bind(window.console);let n=\"undefined\"!=typeof window&&window.console&&window.console.log&&window.console.log.bind(window.console),w=\"undefined\"!=typeof window&&window.console&&window.console.warn&&window.console.warn.bind(window.console);export{o as error,n as log,w as warn};\n//# sourceMappingURL=logger.js.map\n","import{getCardGroupTypes as i}from\"../utils/getCardGroupTypes.js\";import{NON_CREDIT_CARD_TYPE_SECURED_FIELDS as o,SF_VERSION as t}from\"../../constants.js\";import{warn as n}from\"../../utilities/logger.js\";function e(e){this.config.cardGroupTypes=i(e.cardGroupTypes);const r=e.loadingContext;if(!r)return void n(\"WARNING Config :: no loadingContext has been specified!\");var s;this.config.loadingContext=\"/\"===(s=r).charAt(s.length-1)?r:`${r}/`,this.config.isCreditCardType=!1===o.includes(e.type),this.config.iframeUIConfig=e.iframeUIConfig??{},this.config.autoFocus=!(!1===e.autoFocus||\"false\"===e.autoFocus),this.config.showWarnings=!0===e.showWarnings||\"true\"===e.showWarnings,this.config.trimTrailingSeparator=!(!1===e.trimTrailingSeparator||\"false\"===e.trimTrailingSeparator),this.config.keypadFix=!(!1===e.keypadFix||\"false\"===e.keypadFix),this.config.legacyInputMode=e.legacyInputMode||null,this.config.minimumExpiryDate=e.minimumExpiryDate||null,this.config.sfLogAtStart=!0===window._b$dl;const a=this.config.isCreditCardType?\"card\":e.type,c=btoa(window.location.origin),g=`${a}${!this.config.loadingContext.includes(\"live\")&&e.forceCompat?\"Compat\":\"\"}`;this.config.iframeSrc=`${this.config.loadingContext}securedfields/${e.clientKey}/${t}/securedFields.html?type=${g}&d=${c}`}export{e as handleConfig};\n//# sourceMappingURL=handleConfig.js.map\n","const o=()=>{};function n(n={}){this.callbacks.onLoad=n.onLoad?n.onLoad:o,this.callbacks.onConfigSuccess=n.onConfigSuccess?n.onConfigSuccess:o,this.callbacks.onFieldValid=n.onFieldValid?n.onFieldValid:o,this.callbacks.onAllValid=n.onAllValid?n.onAllValid:o,this.callbacks.onBrand=n.onBrand?n.onBrand:o,this.callbacks.onError=n.onError?n.onError:o,this.callbacks.onFocus=n.onFocus?n.onFocus:o,this.callbacks.onBinValue=n.onBinValue?n.onBinValue:o,this.callbacks.onAutoComplete=n.onAutoComplete?n.onAutoComplete:o,this.callbacks.onAdditionalSFConfig=n.onAdditionalSFConfig?n.onAdditionalSFConfig:o,this.callbacks.onAdditionalSFRemoved=n.onAdditionalSFRemoved?n.onAdditionalSFRemoved:o,this.callbacks.onTouchstartIOS=n.onTouchstartIOS?n.onTouchstartIOS:o,this.callbacks.onKeyDown=n.onKeyDown?n.onKeyDown:o}export{n as configureCallbacks};\n//# sourceMappingURL=configureCallbacks.js.map\n","import{ENCRYPTED_EXPIRY_DATE as e}from\"../../constants.js\";const t=({fieldType:e,encryptedFieldName:t,uuid:d,isValid:r,txVariant:o,rootNode:i})=>({fieldType:e,encryptedFieldName:t,uid:d,valid:r,type:o,rootNode:i}),d=({fieldType:d,txVariant:r,rootNode:o})=>{const i=d===e,n=[],p=[\"encryptedExpiryMonth\",\"encryptedExpiryYear\"];let a,l,y,c;const s=i?2:1;for(a=0;a<s;a+=1){y=i?p[a]:d,l=`${r}-encrypted-${y}`,c=i?y:d;const e=t({fieldType:d,encryptedFieldName:c,uuid:l,isValid:!1,txVariant:r,rootNode:o});n.push(e)}return n},r=({fieldType:e,txVariant:d,rootNode:r,encryptedObjArr:o})=>{let i,n,p,a,l;const y=[];for(i=0;i<o.length;i+=1){p=o[i],a=p.encryptedFieldName,n=`${d}-encrypted-${a}`,l=p.blob;const c=t({fieldType:e,encryptedFieldName:a,uuid:n,isValid:!0,txVariant:d,rootNode:r});c.blob=l,y.push(c)}return y};export{r as makeCallbackObjectsEncryption,d as makeCallbackObjectsValidation};\n//# sourceMappingURL=callbackUtils.js.map\n","function t(t={},r){return Object.prototype.hasOwnProperty.call(t,r)}export{t as hasOwnProperty};\n//# sourceMappingURL=hasOwnProperty.js.map\n","import{hasOwnProperty as r}from\"../../../../../../utils/hasOwnProperty.js\";const e=(e,o,l,t,n)=>{if(!r(e,\"error\"))return null;const p=o,s={rootNode:t,fieldType:e.fieldType,error:null,type:null},u=\"\"!==e.error;return u||p.hasError?(s.error=u?e.error:\"\",s.type=l,p.hasError=u,p.errorType=s.error,n(s),s):null};export{e as processErrors};\n//# sourceMappingURL=processErrors.js.map\n","import{makeCallbackObjectsValidation as t}from\"../utils/callbackUtils.js\";import{processErrors as s}from\"../utils/processErrors.js\";import{existy as i}from\"../../../../../../utils/commonUtils.js\";import{ENCRYPTED_SECURITY_CODE as e,ENCRYPTED_CARD_NUMBER as o}from\"../../constants.js\";import{hasOwnProperty as r}from\"../../../../../../utils/hasOwnProperty.js\";function c(c){let l;const a=c.fieldType;if(\"card\"===this.state.type&&r(c,\"cvcPolicy\")&&i(c.cvcPolicy)&&r(this.state.securedFields,e)&&(this.state.securedFields[e].cvcPolicy=c.cvcPolicy),s(c,this.state.securedFields[a],this.state.type,this.props.rootNode,this.callbacks.onError),this.state.securedFields[a].isEncrypted){l=t({fieldType:a,txVariant:this.state.type,rootNode:this.props.rootNode}),a===o&&(l[0].endDigits=\"\");for(let t=0,s=l.length;t<s;t+=1)this.callbacks.onFieldValid(l[t]);this.state.securedFields[a].isEncrypted=!1}this.validateForm(),r(c,\"brand\")&&this.processBrand(c)}export{c as handleValidation};\n//# sourceMappingURL=handleValidation.js.map\n","const s=(s,t,e)=>{if(t){const o=JSON.stringify(s);t.postMessage(o,e)}};export{s as default};\n//# sourceMappingURL=postMessageToIframe.js.map\n","function e(e,n){return e.securedFields[n]?.iframeContentWindow||null}export{e as default};\n//# sourceMappingURL=getIframeContentWin.js.map\n","import{makeCallbackObjectsEncryption as t}from\"../utils/callbackUtils.js\";import{ENCRYPTED_EXPIRY_YEAR as s,ENCRYPTED_SECURITY_CODE as e,ENCRYPTED_EXPIRY_MONTH as i,ENCRYPTED_CARD_NUMBER as o,ENCRYPTED_EXPIRY_DATE as r}from\"../../constants.js\";import{processErrors as a}from\"../utils/processErrors.js\";import{truthy as n}from\"../../../../../../utils/commonUtils.js\";import l from\"../utils/iframes/postMessageToIframe.js\";import{hasOwnProperty as p}from\"../../../../../../utils/hasOwnProperty.js\";import c from\"../utils/iframes/getIframeContentWin.js\";function d(d){const m=d.fieldType;let f,u;this.config.autoFocus&&(\"year\"!==d.type&&m!==s||this.setFocusOnFrame(e),m===i&&this.setFocusOnFrame(s));const h=d[m];this.state.securedFields[m].isEncrypted=!0,a({error:\"\",fieldType:d.fieldType},this.state.securedFields[m],this.state.type,this.props.rootNode,this.callbacks.onError);const y=t({fieldType:m,txVariant:this.state.type,rootNode:this.props.rootNode,encryptedObjArr:h});if(m===i&&p(this.state.securedFields,s)){const t={txVariant:this.state.type,code:d.code,blob:h[0].blob,fieldType:s,numKey:this.state.securedFields[s].numKey};l(t,c(this.state,s),this.config.loadingContext)}for(m===o&&n(d.endDigits)&&(y[0].endDigits=d.endDigits),m===o&&n(d.issuerBin)&&(y[0].issuerBin=+d.issuerBin),m===r&&n(d.expiryDate)&&(y[1].expiryDate=d.expiryDate),f=0,u=y.length;f<u;f+=1)this.callbacks.onFieldValid(y[f]);this.validateForm()}export{d as handleEncryption};\n//# sourceMappingURL=handleEncryption.js.map\n","const e=(e,r)=>{let t=[];return e&&\"function\"==typeof e.querySelectorAll&&(t=[].slice.call(e.querySelectorAll(r))),t},r=(e,r)=>{if(e)return e.querySelector(r)},t=(e,r)=>{if(e)return e.getAttribute(r)},l=e=>{for(;e.firstChild;)e.removeChild(e.firstChild)};export{t as getAttribute,l as removeAllChildren,e as select,r as selectOne};\n//# sourceMappingURL=dom.js.map\n","import{hasOwnProperty as e}from\"../../../../../../utils/hasOwnProperty.js\";let t;const r={__NO_BRAND:\"noBrand\",cards:[]};r.cards.push({cardType:\"mc\",permittedLengths:[16],pattern:/^(5[1-5][0-9]{0,14}|2[2-7][0-9]{0,14})$/,securityCode:\"CVC\"}),r.cards.push({cardType:\"visadankort\",permittedLengths:[16],pattern:/^(4571)[0-9]{0,12}$/}),r.cards.push({cardType:\"visa\",permittedLengths:[13,16,19],pattern:/^4[0-9]{0,18}$/,securityCode:\"CVV\"}),r.cards.push({cardType:\"amex\",permittedLengths:[15],pattern:/^3[47][0-9]{0,13}$/,securityCode:\"CID\"}),r.cards.push({cardType:\"diners\",permittedLengths:[14,15,16,17,18,19],pattern:/^(36)[0-9]{0,12}$/}),r.cards.push({cardType:\"maestrouk\",permittedLengths:[16,18,19],pattern:/^(6759)[0-9]{0,15}$/}),r.cards.push({cardType:\"solo\",permittedLengths:[16,18,19],pattern:/^(6767)[0-9]{0,15}$/}),r.cards.push({cardType:\"laser\",permittedLengths:[16,17,18,19],pattern:/^(6304|6706|6709|6771)[0-9]{0,15}$/,cvcPolicy:\"optional\"}),r.cards.push({cardType:\"discover\",permittedLengths:[16,17,18,19],pattern:/^(6011[0-9]{0,12}|(644|645|646|647|648|649)[0-9]{0,13}|65[0-9]{0,14})$/}),r.cards.push({cardType:\"jcb\",permittedLengths:[16,19],pattern:/^(352[8,9]{1}[0-9]{0,15}|35[4-8]{1}[0-9]{0,16})$/,securityCode:\"CAV\"}),r.cards.push({cardType:\"bcmc\",permittedLengths:[16,17,18,19],pattern:/^((6703)[0-9]{0,15}|(479658|606005)[0-9]{0,13})$/,cvcPolicy:\"hidden\"}),r.cards.push({cardType:\"bijcard\",permittedLengths:[16],pattern:/^(5100081)[0-9]{0,9}$/}),r.cards.push({cardType:\"dankort\",permittedLengths:[16],pattern:/^(5|50|501|5019[0-9]{0,12}|4|45|457|4571[0-9]{0,12}|3|35|357|3571[0-9]{0,12})$/}),r.cards.push({cardType:\"hipercard\",permittedLengths:[16],pattern:/^(606282)[0-9]{0,10}$/}),r.cards.push({cardType:\"cup\",permittedLengths:[14,15,16,17,18,19],pattern:/^(62|81)[0-9]{0,17}$/}),r.cards.push({cardType:\"maestro\",permittedLengths:[16,17,18,19],pattern:/^(5[0|6-8][0-9]{0,17}|6[0-9]{0,18})$/,cvcPolicy:\"optional\"}),r.cards.push({cardType:\"elo\",permittedLengths:[16],pattern:/^((((506699)|(506770)|(506771)|(506772)|(506773)|(506774)|(506775)|(506776)|(506777)|(506778)|(401178)|(438935)|(451416)|(457631)|(457632)|(504175)|(627780)|(636368)|(636297))[0-9]{0,10})|((50676)|(50675)|(50674)|(50673)|(50672)|(50671)|(50670))[0-9]{0,11})$/}),r.cards.push({cardType:\"uatp\",permittedLengths:[15],pattern:/^1[0-9]{0,14}$/,cvcPolicy:\"optional\"}),r.cards.push({cardType:\"cartebancaire\",permittedLengths:[16],pattern:/^[4-6][0-9]{0,15}$/}),r.cards.push({cardType:\"visaalphabankbonus\",permittedLengths:[16],pattern:/^(450903)[0-9]{0,10}$/}),r.cards.push({cardType:\"mcalphabankbonus\",permittedLengths:[16],pattern:/^(510099)[0-9]{0,10}$/}),r.cards.push({cardType:\"hiper\",permittedLengths:[16],pattern:/^(637095|637568|637599|637609|637612)[0-9]{0,10}$/}),r.cards.push({cardType:\"oasis\",permittedLengths:[16],pattern:/^(982616)[0-9]{0,10}$/,cvcPolicy:\"optional\"}),r.cards.push({cardType:\"karenmillen\",permittedLengths:[16],pattern:/^(98261465)[0-9]{0,8}$/,cvcPolicy:\"optional\"}),r.cards.push({cardType:\"warehouse\",permittedLengths:[16],pattern:/^(982633)[0-9]{0,10}$/,cvcPolicy:\"optional\"}),r.cards.push({cardType:\"mir\",permittedLengths:[16,17,18,19],pattern:/^(220)[0-9]{0,16}$/}),r.cards.push({cardType:\"codensa\",permittedLengths:[16],pattern:/^(590712)[0-9]{0,10}$/}),r.cards.push({cardType:\"naranja\",permittedLengths:[16,17,18,19],pattern:/^(37|40|5[28])([279])\\d*$/}),r.cards.push({cardType:\"cabal\",permittedLengths:[16,17,18,19],pattern:/^(58|6[03])([03469])\\d*$/}),r.cards.push({cardType:\"shopping\",permittedLengths:[16,17,18,19],pattern:/^(27|58|60)([39])\\d*$/}),r.cards.push({cardType:\"argencard\",permittedLengths:[16,17,18,19],pattern:/^(50)(1)\\d*$/}),r.cards.push({cardType:\"troy\",permittedLengths:[16],pattern:/^(97)(9)\\d*$/}),r.cards.push({cardType:\"forbrugsforeningen\",permittedLengths:[16],pattern:/^(60)(0)\\d*$/}),r.cards.push({cardType:\"vpay\",permittedLengths:[13,14,15,16,17,18,19],pattern:/^(40[1,8]|413|43[4,5]|44[1,2,3,4,6,7]|45[5,8]|46[0,1,3,6]|47[1,9]|48[2,3,7])[0-9]{0,16}$/}),r.cards.push({cardType:\"rupay\",permittedLengths:[16],pattern:/^(100003|508(2|[5-9])|60(69|[7-8])|652(1[5-9]|[2-5][0-9]|8[5-9])|65300[3-4]|8172([0-1]|[3-5]|7|9)|817(3[3-8]|40[6-9]|410)|35380([0-2]|[5-6]|9))[0-9]{0,12}$/}),r.cards.push({cardType:\"ticket\",expiryDatePolicy:\"hidden\"});var a={detectCard:(t,a)=>{let p;return a?(p=r.cards.filter(e=>a.includes(e.cardType)).filter(r=>e(r,\"pattern\")&&t.match(r.pattern)),p.length?(1===p.length||p.sort((e,t)=>a.indexOf(e.cardType)-a.indexOf(t.cardType)),p[0]):{cardType:r.__NO_BRAND}):{cardType:r.__NO_BRAND}},detectCardLength:(e,t)=>{let a,p,d=0,s=!1,c=t;const n=e.cardType!==r.__NO_BRAND?e.permittedLengths[e.permittedLengths.length-1]:0;if(n&&c>n&&(d=c.length-n,d>0&&(c=c.substring(0,c.length-d),p=c)),e.permittedLengths.forEach(e=>{c.length===e&&(s=!0)}),c.length===n){const t=Math.floor(c.length/4);a=n+(c.length%4>0?t:t-1),\"amex\"===e.cardType.toLowerCase()&&(a=n+2)}return{shortenedNewValue:p,maxLength:a,reachedValidLength:s}},getShortestPermittedCardLength:()=>{if(!t){let e=[];r.cards.forEach(t=>{e=e.concat(t.permittedLengths??[])}),t=Math.min.apply(null,e)}return t},getCardByBrand:e=>r.cards.filter(t=>t.cardType===e)[0],isGenericCardType:e=>{if(!e)throw new Error(\"Error: isGenericCardType: type param has not been specified\");return\"card\"===e||\"scheme\"===e},__NO_BRAND:r.__NO_BRAND,allCards:r.cards};export{a as default};\n//# sourceMappingURL=cardType.js.map\n","function t({src:t,title:e=\"iframe element\",policy:r=\"origin\"}){const i=document.createElement(\"iframe\");i.setAttribute(\"src\",t),i.classList.add(\"js-iframe\"),\"\"!==e&&e.trim().length>0&&i.setAttribute(\"title\",e),i.setAttribute(\"allowtransparency\",\"true\"),i.setAttribute(\"referrerpolicy\",r);const s=document.createTextNode(\"<p>Your browser does not support iframes.</p>\");return i.appendChild(s),i}export{t as default};\n//# sourceMappingURL=createIframe.js.map\n","const e=(e,t,n,o=!1)=>!(!e||\"function\"!=typeof e.addEventListener)&&(e.addEventListener(t,n,o),!0),t=(e,t,n,o=!1)=>!(!e||\"function\"!=typeof e.removeEventListener)&&(e.removeEventListener(t,n,o),!0);export{t as off,e as on};\n//# sourceMappingURL=listenerUtils.js.map\n","import{warn as t}from\"../../../utilities/logger.js\";const e=(e,a,s)=>{const i=e.origin,o=a.indexOf(\"/checkoutshopper/\");let n=o>-1?a.substring(0,o):a;const r=n.length-1;return\"/\"===n.charAt(r)&&(n=n.substring(0,r)),i===n||(s&&t(\"WARNING postMessageValidation: postMessage listener for iframe::origin mismatch!\\n Received message with origin:\",i,\"but the only allowed origin for messages to CSF is\",n,\"### event.data=\",e.data),!1)},a=t=>t.data&&t.data.type&&\"string\"==typeof t.data.type&&t.data.type.includes(\"webpack\"),s=t=>t.data&&\"string\"==typeof t.data&&t.data.includes(\"cvox\");export{s as isChromeVoxPostMsg,a as isWebpackPostMsg,e as originCheckPassed};\n//# sourceMappingURL=postMessageValidation.js.map\n","function t(){if(!window.crypto)return 4294967296*Math.random()|0;const t=new Uint32Array(1);return window.crypto.getRandomValues(t),t[0]}function n(t,e){const o=typeof t;return t&&e&&\"object\"===o&&o===typeof e?Object.keys(t).length===Object.keys(e).length&&Object.keys(t).every(o=>n(t[o],e[o])):t===e}function e(...t){const n=t,e=n.shift();return function(...t){return e.apply(this,n.concat(t))}}export{t as generateRandomNumber,n as objectsDeepEqual,e as partial};\n//# sourceMappingURL=commonUtils.js.map\n","function i(i,o,t){return o in i?Object.defineProperty(i,o,{value:t,enumerable:!0,configurable:!0,writable:!0}):i[o]=t,i}class o{constructor(){i(this,\"sfConfig\",void 0),i(this,\"componentType\",void 0),i(this,\"loadingContext\",void 0),i(this,\"holderEl\",void 0),i(this,\"iframeRef\",void 0),i(this,\"loadToConfigTimeout\",void 0),i(this,\"_isValid\",void 0),i(this,\"_iframeContentWindow\",void 0),i(this,\"_numKey\",void 0),i(this,\"_isEncrypted\",void 0),i(this,\"_hasError\",void 0),i(this,\"_errorType\",void 0),i(this,\"_cvcPolicy\",void 0),i(this,\"_expiryDatePolicy\",void 0),i(this,\"_iframeOnLoadListener\",void 0),i(this,\"_postMessageListener\",void 0),i(this,\"submitAnalytics\",void 0),i(this,\"onIframeLoadedCallback\",void 0),i(this,\"onConfigCallback\",void 0),i(this,\"onEncryptionCallback\",void 0),i(this,\"onValidationCallback\",void 0),i(this,\"onFocusCallback\",void 0),i(this,\"onBinValueCallback\",void 0),i(this,\"onTouchstartCallback\",void 0),i(this,\"onShiftTabCallback\",void 0),i(this,\"onAutoCompleteCallback\",void 0),i(this,\"onKeyDownCallback\",void 0),this.sfConfig={}}}export{o as default};\n//# sourceMappingURL=AbstractSecuredField.js.map\n","import{SF_ErrorCodes as e,ERROR_ACTION_FOCUS_FIELD as r,ERROR_ACTION_BLUR_SCENARIO as s,ErrorCodePrefixes as t}from\"./constants.js\";import{ENCRYPTED_PWD_FIELD as o,ENCRYPTED_SECURITY_CODE as n,ENCRYPTED_EXPIRY_YEAR as a,ENCRYPTED_EXPIRY_MONTH as i,ENCRYPTED_EXPIRY_DATE as c,ENCRYPTED_CARD_NUMBER as l}from\"../../components/internal/SecuredFields/lib/constants.js\";const u=(r,s)=>Object.values(e).reduce((e,t)=>(t.includes(s)&&(e[t]=r.get(t)),e),{}),f=(e,r,s)=>{const t={...e},o=p(s);return t.error=u(r,o),t},d=(e,r)=>{let s=e;for(const[t,o]of Object.entries(r))if(o===e){s=t;break}return s?.toLowerCase().replace(/[_.\\s]/g,\"-\")},p=e=>{let r;switch(e){case l:r=t.CC_NUM;break;case c:r=t.CC_DAT;break;case i:r=t.CC_MTH;break;case a:r=t.CC_YR;break;case n:r=t.CC_CVC;break;case o:r=t.KCP_PWD}return r},g=({errors:e,i18n:r,layout:s,countrySpecificLabels:t,fieldTypeMappingFn:o})=>Object.entries(e).reduce((n,[a,i])=>{if(i){const i=e[a],c=\"errorI18n\"in i&&\"rootNode\"in i,l=\"object\"==typeof i.errorMessage;let u,f;if(u=c?i.error:l?i.errorMessage.translationKey:i.errorMessage,c&&\"errorI18n\"in i)f=i.errorI18n+\"\";else{const e=o?o(a,r,t):\"\";if(l){const s=i.errorMessage.translationKey,t=i.errorMessage.translationObject.values.format;f=`${r.get(s,{values:{label:e,format:t}})}`}else f=r.get(i.errorMessage,{values:{label:e}})+\"\"}n.push({field:a,errorMessage:f,errorCode:u}),s&&n.sort((e,r)=>s.indexOf(e.field)-s.indexOf(r.field))}return n},[]),y=({i18n:e,fieldTypeMappingFn:t,SRPanelRef:o},{errors:n,isValidating:a,layout:i,countrySpecificLabels:c,hasDisplayedErrors:l=!0})=>{const u=g({errors:n,i18n:e,fieldTypeMappingFn:t,countrySpecificLabels:c,layout:i});if(u.length){if(a){const e=u.map(e=>e.errorMessage);o.setMessages(e);const s=u.map(e=>e.field);return{currentErrorsSortedByLayout:u,action:r,fieldToFocus:s[0]}}return o?.setMessages(null),{currentErrorsSortedByLayout:u,action:s}}return l&&o?.setMessages(null),{currentErrorsSortedByLayout:u,action:\"none\"}},b=(e,r)=>{if(!e)return null;return Object.entries(e).reduce((e,[s,t])=>{if(t){e[`${r}${s}`]=t}return e},{})};export{f as addErrorTranslationsToObject,b as enhanceErrorObjectKeys,d as getErrorMessageFromCode,u as getTranslatedErrors,y as setSRMessagesFromErrors,g as sortErrorsByLayout};\n//# sourceMappingURL=utils.js.map\n","import{SF_FIELDS_MAP as t,ENCRYPTED_SECURITY_CODE as e,GIFT_CARD as c,ENCRYPTED_SECURITY_CODE_3_DIGITS as a,ENCRYPTED_SECURITY_CODE_4_DIGITS as s}from\"../constants.js\";var r=(r,d,i,o)=>{const n={...r},u={};switch(i){case\"ach\":case c:break;default:if(o===e)u[a]=d.get(\"creditCard.securityCode.contextualText.3digits\"),u[s]=d.get(\"creditCard.securityCode.contextualText.4digits\");else{const e=`creditCard.${t[o]}.contextualText`,c=d.get(e);c!==e&&(u[o]=c)}}return Object.keys(u).length&&(n.contextualTexts=u),n};export{r as default};\n//# sourceMappingURL=addContextTranslations.js.map\n","import{addErrorTranslationsToObject as t}from\"../../../../../../core/Errors/utils.js\";import r from\"../../utilities/addContextTranslations.js\";import{SF_FIELDS_MAP as e}from\"../../constants.js\";function i(i,o,l,a){const n=[\"giftcard\"].includes(i)?i:\"creditCard\";let s=l.get(`${n}.${o}.aria.iframeTitle`);\"none\"===s&&(s=\"\");const c=l.get(`${n}.${e[o]}.label`),m=l.locale;let f=t({iframeTitle:s,label:c},l,o);return a&&(f=r(f,l,i,o)),{...m&&{lang:m},[o]:f}}export{i as processAriaConfig};\n//# sourceMappingURL=processAriaConfig.js.map\n","import{SF_FIELDS_MAP as t,ENCRYPTED_SECURITY_CODE as r,ENCRYPTED_SECURITY_CODE_4_DIGITS as e,ENCRYPTED_SECURITY_CODE_3_DIGITS as i,GIFT_CARD as o}from\"../../constants.js\";function s(s,n,u){return s===o?{[n]:u[t[n]]??\"\"}:n===r?{[i]:u.securityCodeThreeDigits??\"\",[e]:u.securityCodeFourDigits??\"\"}:{[n]:u[t[n]]??\"\"}}export{s as processPlaceholders};\n//# sourceMappingURL=processPlaceholders.js.map\n","function x(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,x=>{let t=16*Math.random()|0;return(\"x\"==x?t:3&t|8).toString(16)})}export{x as default};\n//# sourceMappingURL=uuid.js.map\n","import t from\"../../../utils/uuid.js\";function i(t,i,o){return i in t?Object.defineProperty(t,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[i]=o,t}var o=function(t){return t.info=\"info\",t.error=\"error\",t.log=\"log\",t}({});class r{constructor(o){i(this,\"timestamp\",void 0),i(this,\"id\",void 0),i(this,\"component\",void 0),this.component=o,this.id=t(),this.timestamp=String(Date.now())}}export{r as AbstractAnalyticsEvent,o as AnalyticsEventCategory};\n//# sourceMappingURL=AbstractAnalyticsEvent.js.map\n","import{AbstractAnalyticsEvent as E,AnalyticsEventCategory as _}from\"./AbstractAnalyticsEvent.js\";function e(E,_,e){return _ in E?Object.defineProperty(E,_,{value:e,enumerable:!0,configurable:!0,writable:!0}):E[_]=e,E}var r=function(E){return E.network=\"Network\",E.implementation=\"Implementation\",E.internal=\"Internal\",E.apiError=\"ApiError\",E.sdkError=\"SdkError\",E.thirdParty=\"ThirdParty\",E.generic=\"Generic\",E.redirect=\"Redirect\",E.threeDS2=\"ThreeDS2\",E}({}),S=function(E){return E.SECURED_FIELDS_IFRAME_CONTENT_WINDOW_NOT_FOUND=\"500\",E.REDIRECT=\"600\",E.SECURED_FIELDS_KEY_NOT_FOUND=\"608\",E.SECURED_FIELDS_ENCRYPTION_KEY_GEN_FAILED=\"609\",E.SECURED_FIELDS_ENCRYPTION_ERROR=\"610\",E.THREEDS2_ACTION_IS_MISSING_PAYMENT_DATA=\"700\",E.THREEDS2_ACTION_IS_MISSING_TOKEN=\"701\",E.THREEDS2_TOKEN_IS_MISSING_THREEDSMETHODURL=\"702\",E.THREEDS2_TOKEN_IS_MISSING_OTHER_PROPS=\"703\",E.THREEDS2_TOKEN_DECODE_OR_PARSING_FAILED=\"704\",E.THREEDS2_TIMEOUT=\"710\",E.THREEDS2_TOKEN_IS_MISSING_ACSURL=\"800\",E.THREEDS2_NO_TRANSSTATUS=\"801\",E.THREEDS2_NO_DETAILS_FOR_FRICTIONLESS_OR_REFUSED=\"802\",E.THREEDS2_NO_COMPONENT_FOR_ACTION=\"803\",E.THREEDS2_NO_ACTION_FOR_CHALLENGE=\"804\",E.THREEDS2_CHALLENGE_RESOLVED_WITHOUT_RESULT_PROP=\"805\",E.THREEDS2_CHALLENGE_TOKEN_IS_MISSING_THREEDSNOTIFICATIONURL=\"806\",E}({});class T extends E{getEventCategory(){return _.error}constructor(E){super(E.component),e(this,\"errorType\",void 0),e(this,\"code\",void 0),e(this,\"message\",void 0),this.errorType=E.errorType,this.code=E.code,E.message&&(this.message=E.message)}}export{T as AnalyticsErrorEvent,S as ErrorEventCode,r as ErrorEventType};\n//# sourceMappingURL=AnalyticsErrorEvent.js.map\n","import{log as e,warn as i}from\"../utilities/logger.js\";import t from\"./utils/createIframe.js\";import{selectOne as s,removeAllChildren as r}from\"../utilities/dom.js\";import{on as n,off as o}from\"../../../../../utils/listenerUtils.js\";import a from\"../CSF/utils/iframes/postMessageToIframe.js\";import{originCheckPassed as l,isWebpackPostMsg as h,isChromeVoxPostMsg as f}from\"../CSF/utils/iframes/postMessageValidation.js\";import{ENCRYPTED_EXPIRY_DATE as c,ENCRYPTED_EXPIRY_MONTH as d,ENCRYPTED_EXPIRY_YEAR as m,DATE_POLICY_OPTIONAL as u,DATE_POLICY_HIDDEN as p,ENCRYPTED_SECURITY_CODE as y,CVC_POLICY_OPTIONAL as g,CVC_POLICY_HIDDEN as C}from\"../constants.js\";import{generateRandomNumber as b}from\"../utilities/commonUtils.js\";import E from\"./AbstractSecuredField.js\";import{reject as T}from\"../../../../../utils/commonUtils.js\";import{processAriaConfig as w}from\"./utils/processAriaConfig.js\";import{processPlaceholders as L}from\"./utils/processPlaceholders.js\";import{hasOwnProperty as k}from\"../../../../../utils/hasOwnProperty.js\";import{AnalyticsErrorEvent as F,ErrorEventType as _,ErrorEventCode as P}from\"../../../../../core/Analytics/events/AnalyticsErrorEvent.js\";class O extends E{init(e,i,r,o){const a=w(this.sfConfig.txVariant,this.sfConfig.fieldType,e,o);this.sfConfig.iframeUIConfig.ariaConfig=a,this.sfConfig.iframeUIConfig.placeholders=L(this.sfConfig.txVariant,this.sfConfig.fieldType,r);const l={src:i,title:a[this.sfConfig.fieldType].iframeTitle,policy:\"origin\"},h=t(l);this.holderEl.appendChild(h);const f=s(this.holderEl,\".js-iframe\");if(f){if(!f.contentWindow){console.error(\"ERROR: Trying to initialise a securedField iframe, but the iframe.contentWindow is undefined. Are you sure the element into which the Card component is being mounted already exists in the DOM *before* the Card component is mounted?\");const e=new F({component:this.componentType,code:P.SECURED_FIELDS_IFRAME_CONTENT_WINDOW_NOT_FOUND,errorType:_.implementation,message:`Trying to initialise an iframe for ${this.sfConfig.fieldType}, but the iframe.contentWindow is undefined`});this.submitAnalytics?.(e)}this.iframeContentWindow=f.contentWindow,this.iframeOnLoadListener=this.iframeOnLoadListenerFn,n(f,\"load\",this.iframeOnLoadListener,!1)}return this.iframeRef=f,this}iframeOnLoadListenerFn(){this.postMessageListener=this.postMessageListenerFn,n(window,\"message\",this.postMessageListener,!1);const e={...this.sfConfig,numKey:this.numKey};window._b$dl&&console.log(\"### SecuredField:::: onIframeLoaded:: created configObj=\",e),a(e,this.iframeContentWindow,this.loadingContext),this.onIframeLoadedCallback()}postMessageListenerFn(t){if(!l(t,this.loadingContext,this.sfConfig.showWarnings))return;let s;try{s=JSON.parse(t.data)}catch(i){return h(t)?void(this.sfConfig.showWarnings&&e(\"### SecuredField::postMessageListenerFn:: PARSE FAIL - WEBPACK\")):f(t)?void(this.sfConfig.showWarnings&&e(\"### SecuredField::postMessageListenerFn:: PARSE FAIL - CHROMEVOX\")):void(this.sfConfig.showWarnings&&e(\"### SecuredField::postMessageListenerFn:: PARSE FAIL - UNKNOWN REASON: event.data=\",t.data))}if(k(s,\"action\")&&k(s,\"numKey\"))if(this.numKey===s.numKey)switch(s.action){case\"encryption\":this.isValid=!0,this.onEncryptionCallback(s);break;case\"config\":window._b$dl&&console.log(\"### SecuredField::postMessageListenerFn:: configured - calling onConfigCallback\",s.fieldType),this.onConfigCallback(s);break;case\"focus\":this.onFocusCallback(s);break;case\"binValue\":this.onBinValueCallback(s);break;case\"touch\":this.onTouchstartCallback(s);break;case\"shifttab\":this.onShiftTabCallback(s);break;case\"autoComplete\":this.onAutoCompleteCallback(s);break;case\"enterKeyPressed\":this.onKeyDownCallback(s);break;case\"encryptionError\":{const e=new F({component:this.componentType,code:s.code,errorType:_.internal,message:`${s.error}. Field= ${this.sfConfig.fieldType}`});this.submitAnalytics?.(e);break}default:this.isValid=!1,this.onValidationCallback(s)}else this.sfConfig.showWarnings&&i(\"WARNING SecuredField :: postMessage listener for iframe :: data mismatch! (Probably a message from an unrelated securedField)\");else this.sfConfig.showWarnings&&i(\"WARNING SecuredField :: postMessage listener for iframe :: data mismatch!\")}destroy(){o(window,\"message\",this.postMessageListener,!1),o(this.iframeRef,\"load\",this.iframeOnLoadListener,!1),this.iframeContentWindow=null,r(this.holderEl)}isOptionalOrHidden(){if(this.sfConfig.fieldType===c||this.sfConfig.fieldType===d||this.sfConfig.fieldType===m)switch(this.expiryDatePolicy){case p:return!0;case u:return!this.hasError;default:return!1}if(this.sfConfig.fieldType===y)switch(this.cvcPolicy){case C:return!0;case g:return!this.hasError;default:return!1}return!1}onIframeLoaded(e){return this.onIframeLoadedCallback=e,this}onEncryption(e){return this.onEncryptionCallback=e,this}onValidation(e){return this.onValidationCallback=e,this}onConfig(e){return this.onConfigCallback=e,this}onFocus(e){return this.onFocusCallback=e,this}onBinValue(e){return this.onBinValueCallback=e,this}onTouchstart(e){return this.onTouchstartCallback=e,this}onShiftTab(e){return this.onShiftTabCallback=e,this}onAutoComplete(e){return this.onAutoCompleteCallback=e,this}onKeyDown(e){return this.onKeyDownCallback=e,this}get errorType(){return this._errorType}set errorType(e){this._errorType=e}get hasError(){return this._hasError}set hasError(e){this._hasError=e}get isValid(){if(this.sfConfig.fieldType===y)switch(this.cvcPolicy){case C:return!0;case g:return!this.hasError;default:return this._isValid}if(this.sfConfig.fieldType===c||this.sfConfig.fieldType===d||this.sfConfig.fieldType===m)switch(this.expiryDatePolicy){case p:return!0;case u:return!this.hasError;default:return this._isValid}return this._isValid}set isValid(e){this._isValid=e}get cvcPolicy(){return this._cvcPolicy}set cvcPolicy(e){this.sfConfig.fieldType===y&&e!==this.cvcPolicy&&(this._cvcPolicy=e,this.hasError&&\"isValidated\"===this.errorType&&(this.hasError=!1))}get expiryDatePolicy(){return this._expiryDatePolicy}set expiryDatePolicy(e){this.sfConfig.fieldType!==c&&this.sfConfig.fieldType!==d&&this.sfConfig.fieldType!==m||e!==this.expiryDatePolicy&&(this._expiryDatePolicy=e,this.hasError&&\"isValidated\"===this.errorType&&(this.hasError=!1))}get iframeContentWindow(){return this._iframeContentWindow}set iframeContentWindow(e){this._iframeContentWindow=e}get isEncrypted(){return this._isEncrypted}set isEncrypted(e){this._isEncrypted=e}get numKey(){return this._numKey}set numKey(e){this._numKey=e}get iframeOnLoadListener(){return this._iframeOnLoadListener}set iframeOnLoadListener(e){this._iframeOnLoadListener=e.bind(this)}get postMessageListener(){return this._postMessageListener}set postMessageListener(e){this._postMessageListener=e.bind(this)}constructor(e,i){var t,s,r;super(),r=void 0,(s=\"sfConfig\")in(t=this)?Object.defineProperty(t,s,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[s]=r;const n=T([\"loadingContext\",\"holderEl\",\"iframeSrc\",\"showContextualElement\",\"placeholders\"]).from(e);this.sfConfig={...n,iframeUIConfig:{...n.iframeUIConfig}};const{iframeSrc:o,placeholders:a,showContextualElement:l}=e;return this.loadingContext=e.loadingContext,this.holderEl=e.holderEl,this.submitAnalytics=e.submitAnalytics,this.componentType=e.componentType,this.isValid=!1,this.iframeContentWindow=null,this.numKey=b(),this.isEncrypted=!1,this.hasError=!1,this.errorType=\"\",this.cvcPolicy=e.cvcPolicy,this.expiryDatePolicy=e.expiryDatePolicy,this.init(i,o,a,l)}}export{O as default};\n//# sourceMappingURL=SecuredField.js.map\n","function R(R,e,s){return e in R?Object.defineProperty(R,e,{value:s,enumerable:!0,configurable:!0,writable:!0}):R[e]=s,R}const e=\"NETWORK_ERROR\",s=\"CANCEL\",E=\"IMPLEMENTATION_ERROR\",r=\"API_ERROR\",t=\"ERROR\",o=\"SCRIPT_ERROR\",O=\"SDK_ERROR\";class i extends Error{constructor(e,s,E){super(s),R(this,\"cause\",void 0),R(this,\"options\",void 0),this.name=i.errorTypes[e],this.options=E||{},this.cause=this.options.cause}}R(i,\"errorTypes\",{NETWORK_ERROR:e,CANCEL:s,IMPLEMENTATION_ERROR:E,API_ERROR:r,ERROR:t,SCRIPT_ERROR:o,SDK_ERROR:O});export{r as API_ERROR,s as CANCEL,t as ERROR,E as IMPLEMENTATION_ERROR,e as NETWORK_ERROR,o as SCRIPT_ERROR,O as SDK_ERROR,i as default};\n//# sourceMappingURL=AdyenCheckoutError.js.map\n","const e=e=>e.replace(/([a-z])([A-Z])/g,\"$1_$2\").toLowerCase();export{e as camelCaseToSnakeCase};\n//# sourceMappingURL=textUtils.js.map\n","import{camelCaseToSnakeCase as t}from\"../../../utils/textUtils.js\";import{ENCRYPTED as n,ALL_SECURED_FIELDS as r}from\"./lib/constants.js\";const e=(t,n)=>{const r=\"card\"===t?\"nocard\":t||\"nocard\",e={type:r,extension:\"svg\"};return n.getImage(e)(r)},s=r=>{let e=t(r);return o(r)&&(e=e.substring(n.length+1)),e};function o(t){return r.includes(t)}export{s as fieldTypeToSnakeCase,e as getCardImageUrl,o as isSecuredField};\n//# sourceMappingURL=utils.js.map\n","import{select as e,getAttribute as t}from\"../../utilities/dom.js\";import{DATA_ENCRYPTED_FIELD_ATTR as i,CVC_POLICY_REQUIRED as o,DATE_POLICY_REQUIRED as s,ENCRYPTED_EXPIRY_YEAR as n,SF_CONFIG_TIMEOUT as r,DATA_UID as a,DATA_INFO as d}from\"../../constants.js\";import{existy as l}from\"../../../../../../utils/commonUtils.js\";import c from\"../utils/cardType.js\";import h from\"../../securedField/SecuredField.js\";import p from\"../../../../../../core/Errors/AdyenCheckoutError.js\";import{isSecuredField as u}from\"../../../utils.js\";function f(){this.encryptedAttrName=i;const n=e(this.props.rootNode,`[${this.encryptedAttrName}]`).filter(e=>{const i=t(e,this.encryptedAttrName),o=u(i);return o||console.warn(`WARNING: '${i}' is not a valid type for the '${this.encryptedAttrName}' attribute. A SecuredField will not be created for this element.`),o}),r=o,a=s;return this.config.isCreditCardType?(this.isSingleBrandedCard=!1,this.securityCode=\"\",this.createCardSecuredFields(n,r,a),n.length):(this.createNonCardSecuredFields(n),n.length)}async function m(e){for(let t=0;t<e.length;t++){const i=e[t];await this.setupSecuredField(i).catch(e=>{window._b$dl&&console.log(\"Secured fields setup failure. e=\",e)})}}async function y(e,t,i){let n=this.state.type;if(\"card\"===n&&1===this.config.cardGroupTypes.length&&(n=this.config.cardGroupTypes[0],this.state.type=n),this.isSingleBrandedCard=\"card\"!==n,this.isSingleBrandedCard){const e=c.getCardByBrand(n);l(e)?(t=e.cvcPolicy||o,i=e.expiryDatePolicy||s,this.securityCode=e.securityCode):this.state.type=\"unrecognised-single-brand\"}for(let o=0;o<e.length;o++){const s=e[o];window._b$dl&&console.log(\"\\nAbout to set up securedField:\",s),await this.setupSecuredField(s,t,i).catch(e=>{window._b$dl&&console.log(\"Secured fields setup failure. e=\",e)}),window._b$dl&&console.log(\"Finished setting up securedField:\",s)}if(window._b$dl&&console.log(\"Finished setting up all securedFields\"),this.isSingleBrandedCard){const e={type:this.state.type,rootNode:this.props.rootNode,brand:n,cvcPolicy:t,expiryDatePolicy:i,cvcText:this.securityCode};setTimeout(()=>{this.callbacks.onBrand(e)},0)}}function g(e,i,o){return new Promise((s,l)=>{const c=t(e,this.encryptedAttrName);c===n&&(this.state.hasSeparateDateFields=!0);const u={fieldType:c,extraFieldData:t(e,d),uid:t(e,a),cvcPolicy:i,holderEl:e,expiryDatePolicy:o,txVariant:this.state.type,cardGroupTypes:this.config.cardGroupTypes,iframeUIConfig:this.config.iframeUIConfig,sfLogAtStart:this.config.sfLogAtStart,trimTrailingSeparator:this.config.trimTrailingSeparator,isCreditCardType:this.config.isCreditCardType,iframeSrc:this.config.iframeSrc,loadingContext:this.config.loadingContext,showWarnings:this.config.showWarnings,legacyInputMode:this.config.legacyInputMode,minimumExpiryDate:this.config.minimumExpiryDate,maskSecurityCode:this.props.maskSecurityCode,exposeExpiryDate:this.props.exposeExpiryDate,disableIOSArrowKeys:this.props.shouldDisableIOSArrowKeys,implementationType:this.props.implementationType,showContextualElement:this.props.showContextualElement,placeholders:this.props.placeholders,submitAnalytics:this.props.onSubmitAnalytics,componentType:this.props.componentType},f=new h(u,this.props.i18n).onIframeLoaded(()=>{if(this.state.iframeCount+=1,window._b$dl&&console.log(\"### createSecuredFields::onIframeLoaded:: this.state.iframeCount=\",this.state.iframeCount),this.state.iframeCount>this.state.numIframes)throw this.destroySecuredFields(),new p(\"ERROR\",`One or more securedFields has just loaded new content. This should never happen. securedFields have been removed.\\n iframe load count=${this.state.iframeCount}. Expected count:${this.state.numIframes}`);if(f.loadToConfigTimeout=setTimeout(()=>{l({type:u.fieldType,failReason:\"sf took too long to config\"})},r),this.state.iframeCount===this.state.originalNumIframes){const e={iframesLoaded:!0};this.callbacks.onLoad(e)}}).onConfig(e=>{this.handleIframeConfigFeedback(e),clearTimeout(f.loadToConfigTimeout),f.loadToConfigTimeout=null,s(e)}).onFocus(e=>{this.handleFocus(e)}).onBinValue(e=>{this.handleBinValue(e)}).onTouchstart(e=>{this.props.shouldDisableIOSArrowKeys&&(this.hasGenuineTouchEvents||e.hasGenuineTouchEvents)&&this.callbacks.onTouchstartIOS({fieldType:e.fieldType}),(e.hasGenuineTouchEvents||this.hasGenuineTouchEvents)&&this.postMessageToAllIframes({fieldType:e.fieldType,fieldClick:!0})}).onShiftTab(e=>{this.handleSFShiftTab(e.fieldType)}).onEncryption(e=>{this.handleEncryption(e)}).onValidation(e=>{this.handleValidation(e)}).onAutoComplete(e=>{this.processAutoComplete(e)}).onKeyDown(e=>{const{numKey:t,...i}=e;this.callbacks.onKeyDown(i)});this.state.securedFields[c]=f})}export{y as createCardSecuredFields,m as createNonCardSecuredFields,f as createSecuredFields,g as setupSecuredField};\n//# sourceMappingURL=createSecuredFields.js.map\n","let e=\"undefined\"!=typeof navigator&&/(android)/i.test(navigator.userAgent),n=\"undefined\"!=typeof navigator&&function(){const e=navigator.userAgent,n=e.indexOf(\"MSIE \");if(n>0)return parseInt(e.substring(n+5,e.indexOf(\".\",n)),10);if(e.indexOf(\"Trident/\")>0){const n=e.indexOf(\"rv:\");return parseInt(e.substring(n+3,e.indexOf(\".\",n)),10)}const t=e.indexOf(\"Edge/\");return t>0&&parseInt(e.substring(t+5,e.indexOf(\".\",t)),10)}();var t={__IS_ANDROID:e,__IS_IE:n,__IS_IOS:\"undefined\"!=typeof navigator&&/iphone|ipod|ipad/i.test(navigator.userAgent),__IS_FIREFOX:\"undefined\"!=typeof navigator&&/(firefox)/i.test(navigator.userAgent),__IS_SAFARI:\"undefined\"!=typeof navigator&&/(safari)/i.test(navigator.userAgent)&&!/(chrome)/i.test(navigator.userAgent)};export{t as default};\n//# sourceMappingURL=userAgent.js.map\n","import{selectOne as t}from\"../../utilities/dom.js\";import e from\"../utils/userAgent.js\";import{on as n,off as s}from\"../../../../../../utils/listenerUtils.js\";var o={touchendListener:function(t){const e=t.target;if(e instanceof HTMLInputElement||HTMLTextAreaElement&&e instanceof HTMLTextAreaElement){const s=e.value;let o=\"selectionStart\"in(n=e)?n.selectionStart:0,i=!1;o===s.length&&(o-=1,i=!0),e.value=s;try{e.setSelectionRange&&(e.focus(),e.setSelectionRange(o,o),i&&(o+=1,setTimeout(()=>{e.setSelectionRange(o,o)},0)))}catch(t){}}else{if(this.config.keypadFix){const t=this.props.rootNode,e=document.createElement(\"input\");e.style.width=\"1px\",e.style.height=\"1px\",e.style.opacity=\"0\",e.style.fontSize=\"18px\",t.appendChild(e),e.focus(),t.removeChild(e)}}var n;this.destroyTouchendListener(),this.state.registerFieldForIos=!1,this.postMessageToAllIframes({fieldType:\"webInternalElement\",fieldClick:!0})},touchstartListener:function(t){this.hasGenuineTouchEvents=!0;const e=t.target;if(e instanceof HTMLInputElement||e instanceof HTMLSpanElement){this.postMessageToAllIframes({fieldType:\"webInternalElement\",checkoutTouchEvent:!0});const t=e.getAttribute(\"name\")??e.getAttribute(\"data-id\");this.callbacks.onTouchstartIOS?.({fieldType:\"webInternalElement\",name:t})}},handleTouchend:function(){const e=t(document,\"body\");e.style.cursor=\"pointer\",n(e,\"touchend\",this.touchendListener),this.state.registerFieldForIos=!0},destroyTouchendListener:function(){if(!e.__IS_IOS)return!1;const n=t(document,\"body\");return n.style.cursor=\"auto\",s(n,\"touchend\",this.touchendListener),!0},destroyTouchstartListener:function(){return!!e.__IS_IOS&&(s(document,\"touchstart\",this.touchstartListener),!0)}};export{o as default};\n//# sourceMappingURL=handleIOSTouchEvents.js.map\n","import{selectOne as t,select as e}from\"../../../utilities/dom.js\";const n=(n,o,a)=>((t,n=!0)=>{const o=Array.prototype.slice.call(e(document,\"*[data-cse], a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), object, embed, *[tabindex], *[contenteditable]\")),a=[];o.forEach(t=>{const e=t.getAttribute(\"tabindex\"),n=!e||parseInt(e,10)>=0,o=t.getBoundingClientRect(),r=o.width>0&&o.height>0;n&&r&&a.push(t)});const r=((t,e)=>{for(let n=0;n<t.length;n+=1)if(e(t[n]))return n;return-1})(a,e=>e===t||t.contains(e));return a[r+(n?-1:1)]})(t(o,`[data-cse=${n}]`),a),o=t=>{t&&(t.focus(),t.blur(),t.focus())};export{o as focusExternalField,n as getPreviousTabbableNonSFElement};\n//# sourceMappingURL=utils.js.map\n","import{ENCRYPTED_SECURITY_CODE as e,ENCRYPTED_EXPIRY_YEAR as s,ENCRYPTED_EXPIRY_MONTH as a,ENCRYPTED_EXPIRY_DATE as t,ENCRYPTED_CARD_NUMBER as o}from\"../../../constants.js\";import{getPreviousTabbableNonSFElement as r}from\"./utils.js\";function c(c,i,n,l){let d,f;switch(c){case o:d=r(o,i);break;case t:case a:f=o;break;case s:f=a;break;case e:1===l?d=r(e,i):f=n?s:t}return{fieldToFocus:f,additionalField:d}}export{c as shiftTabCreditCard};\n//# sourceMappingURL=tabScenarioCreditCard.js.map\n","import{ENCRYPTED_CARD_NUMBER as t,ENCRYPTED_SECURITY_CODE as o}from\"../../../constants.js\";import{getPreviousTabbableNonSFElement as i}from\"./utils.js\";function s(s,e){let r,a;switch(s){case t:r=i(t,e);break;case o:a=t}return{fieldToFocus:a,additionalField:r}}export{s as shiftTabGiftCard};\n//# sourceMappingURL=tabScenarioGiftCard.js.map\n","import{ENCRYPTED_PWD_FIELD as e,ENCRYPTED_SECURITY_CODE as a,ENCRYPTED_EXPIRY_YEAR as s,ENCRYPTED_EXPIRY_MONTH as r,ENCRYPTED_EXPIRY_DATE as t,ENCRYPTED_CARD_NUMBER as c}from\"../../../constants.js\";import{getPreviousTabbableNonSFElement as o}from\"./utils.js\";function i(i,n,l){let b,d;switch(i){case c:b=o(c,n);break;case t:case r:d=c;break;case s:d=r;break;case a:d=l?s:t;break;case e:b=o(i,n)}return{fieldToFocus:d,additionalField:b}}export{i as shiftTabKCP};\n//# sourceMappingURL=tabScenarioKCP.js.map\n","import t from\"../utils/userAgent.js\";import\"../../utilities/logger.js\";import{shiftTabCreditCard as i}from\"../utils/tabbing/tabScenarioCreditCard.js\";import{shiftTabGiftCard as s}from\"../utils/tabbing/tabScenarioGiftCard.js\";import{shiftTabKCP as a}from\"../utils/tabbing/tabScenarioKCP.js\";import{focusExternalField as e}from\"../utils/tabbing/utils.js\";var o={handleShiftTab:function(t){let o;if(\"giftcard\"===this.state.type)o=s(t,this.props.rootNode);else o=this.state.isKCP?a(t,this.props.rootNode,this.state.hasSeparateDateFields):i(t,this.props.rootNode,this.state.hasSeparateDateFields,this.state.numIframes);const r=o.fieldToFocus,l=o.additionalField;r?this.setFocusOnFrame(r,false):l&&e(l)},handleSFShiftTab:function(i){(t.__IS_FIREFOX||t.__IS_IE&&t.__IS_IE<=11)&&this.handleShiftTab(i)}};export{o as default};\n//# sourceMappingURL=handleTab.js.map\n","import{DATE_POLICY_REQUIRED as e,ENCRYPTED_CARD_NUMBER as t,ENCRYPTED_EXPIRY_DATE as s,DATE_POLICY_HIDDEN as i,BIN_LOOKUP_MODE as a,ENCRYPTED_SECURITY_CODE as r,ENCRYPTED_EXPIRY_MONTH as c,ENCRYPTED_EXPIRY_YEAR as d}from\"../../constants.js\";import o from\"../utils/iframes/postMessageToIframe.js\";import{hasOwnProperty as n}from\"../../../../../../utils/hasOwnProperty.js\";import l from\"../utils/iframes/getIframeContentWin.js\";function h(e){if(n(this.state.securedFields,t)){const s={txVariant:this.state.type,...e,fieldType:t,numKey:this.state.securedFields[t].numKey};o(s,l(this.state,t),this.config.loadingContext)}}function y(e){(n(this.state.securedFields,c)&&n(this.state.securedFields,d)?[c,d]:[s]).forEach(t=>{const s={txVariant:this.state.type,...e,fieldType:t,numKey:this.state.securedFields[t].numKey};o(s,l(this.state,t),this.config.loadingContext)})}function u(o,l){const h=\"card\"===this.state.type;if(!o||!Object.keys(o).length)return h?(this.sendBrandToCardSF({brand:\"reset\"}),this.sendExpiryDatePolicyToSF({expiryDatePolicy:e})):l&&this.processBrand({...l,fieldType:t}),void(\"card\"===this.state.type&&n(this.state.securedFields,s)&&(this.state.securedFields[s].expiryDatePolicy=e));const y=o.supportedBrands[0],u=y.brand,p=y.expiryDatePolicy??(!0===y.showExpiryDate?e:i),f={brand:u,cvcPolicy:y.cvcPolicy,expiryDatePolicy:p,cvcText:\"Security code\",showSocialSecurityNumber:y.showSocialSecurityNumber??!1,fieldType:t,mode:a};if(this.processBrand(f),h){const e={brand:u,enableLuhnCheck:!1!==o.supportedBrands[0].enableLuhnCheck,...y?.panLength&&!o.isDualBrandSelection&&{panLength:y?.panLength}};this.sendBrandToCardSF(e),this.sendExpiryDatePolicyToSF({expiryDatePolicy:p})}n(this.state.securedFields,r)&&(this.state.securedFields[r].cvcPolicy=y.cvcPolicy),n(this.state.securedFields,s)?this.state.securedFields[s].expiryDatePolicy=p:n(this.state.securedFields,c)&&n(this.state.securedFields,d)&&(this.state.securedFields[c].expiryDatePolicy=p,this.state.securedFields[d].expiryDatePolicy=p),this.validateForm()}export{u as default,h as sendBrandToCardSF,y as sendExpiryDatePolicyToSF};\n//# sourceMappingURL=handleBrandFromBinLookup.js.map\n","import e from\"../utils/iframes/postMessageToIframe.js\";import{hasOwnProperty as t}from\"../../../../../../utils/hasOwnProperty.js\";import s from\"../utils/iframes/getIframeContentWin.js\";function r({csfState:r,csfConfig:i},o,f){if(!t(r.securedFields,o))return;const n={txVariant:r.type,fieldType:o,focus:!0,numKey:r.securedFields[o].numKey};e(n,s(r,o),i.loadingContext)}export{r as setFocusOnFrame};\n//# sourceMappingURL=setFocusOnFrame.js.map\n","import e from\"../utils/iframes/postMessageToIframe.js\";import t from\"../utils/iframes/getIframeContentWin.js\";function s({csfState:s,csfConfig:r},n){const o=Object.keys(n||{});if(!o.length)return!1;return Object.keys(s.securedFields).forEach(i=>{const f={txVariant:s.type,fieldType:i,numKey:s.securedFields[i].numKey};o.forEach(e=>{f[e]=n[e]}),e(f,t(s,i),r.loadingContext)}),!0}export{s as postMessageToAllIframes};\n//# sourceMappingURL=postMessageToAllIframes.js.map\n","import{ENCRYPTED_CARD_NUMBER as o,ENCRYPTED_SECURITY_CODE as r}from\"../../constants.js\";import t from\"../utils/iframes/postMessageToIframe.js\";import{objectsDeepEqual as e}from\"../../utilities/commonUtils.js\";import{pick as i}from\"../../../../../../utils/commonUtils.js\";import{hasOwnProperty as c}from\"../../../../../../utils/hasOwnProperty.js\";import s from\"../utils/iframes/getIframeContentWin.js\";function n({csfState:n,csfConfig:a,csfProps:l,csfCallbacks:m},f){if(f.fieldType===o){const o={brand:f.brand,cvcPolicy:f.cvcPolicy,expiryDatePolicy:f.expiryDatePolicy,showSocialSecurityNumber:f.showSocialSecurityNumber},d=(y=o,u=n.brand,!e(y,u));if(!d)return null;const p=\"card\"===n.type||\"bcmc\"===n.type;if(p&&d&&(n.brand=o,c(n.securedFields,r))){const e={txVariant:n.type,brand:o.brand,fieldType:r,cvcPolicy:f.cvcPolicy,numKey:n.securedFields[r].numKey};t(e,s(n,r),a.loadingContext)}const b=p?i([\"brand\",\"cvcPolicy\",\"cvcText\",\"expiryDatePolicy\",\"showSocialSecurityNumber\",\"mode\"]).from(f):null;if(b&&b.brand){const o=b;o.type=n.type,o.rootNode=l.rootNode,m.onBrand(o)}return!0}var y,u;return!1}export{n as default};\n//# sourceMappingURL=processBrand.js.map\n","import e from\"../utils/iframes/postMessageToIframe.js\";import{ENCRYPTED_EXPIRY_DATE as t,ENCRYPTED_EXPIRY_MONTH as n,ENCRYPTED_EXPIRY_YEAR as s}from\"../../constants.js\";import{hasOwnProperty as o}from\"../../../../../../utils/hasOwnProperty.js\";import i from\"../utils/iframes/getIframeContentWin.js\";function r({csfState:r,csfConfig:l,csfCallbacks:a},u){if(\"cc-name\"===u.name){const e={...u};delete e.numKey;const t=e;return a.onAutoComplete(t),!0}if(\"cc-exp\"===u.name){const a=u.value.replace(/[^0-9]/gi,\"/\").split(\"/\");if(2!==a.length)return!1;1===a[0].length&&(a[0]=`0${a[0]}`);const m=a[0],c=a[1];if(!((4===c?.length||2===c?.length)&&!isNaN(parseInt(c))))return!1;const f=c.slice(-2),p=`${m}/${f}`;if(o(r.securedFields,t)){const n={txVariant:r.type,fieldType:t,autoComplete:p,numKey:r.securedFields[t].numKey};return e(n,i(r,t),l.loadingContext),!0}if(o(r.securedFields,n)){const t={txVariant:r.type,fieldType:n,autoComplete:m,numKey:r.securedFields[n].numKey};e(t,i(r,n),l.loadingContext)}return o(r.securedFields,s)&&setTimeout(()=>{const t={txVariant:r.type,fieldType:s,autoComplete:f,numKey:r.securedFields[s].numKey};e(t,i(r,s),l.loadingContext)},0),!0}return!1}export{r as processAutoComplete};\n//# sourceMappingURL=processAutoComplete.js.map\n","import e from\"../utils/userAgent.js\";function c({csfState:c,csfProps:t,csfCallbacks:o},r,s){const u={...s};delete u.numKey,u.rootNode=t.rootNode,u.type=c.type;const n=u.fieldType;if(u.focus)c.currentFocusObject!==n&&(c.currentFocusObject=n,e.__IS_IOS&&!c.registerFieldForIos&&r());else{c.currentFocusObject===n&&(c.currentFocusObject=null)}const l=u;l.currentFocusObject=c.currentFocusObject,o.onFocus(l)}export{c as handleFocus};\n//# sourceMappingURL=handleFocus.js.map\n","function e({csfState:e,csfCallbacks:i},f,n){if(e.iframeConfigCount+=1,window._b$dl&&console.log(\"### handleIframeConfigFeedback::csfState.iframeConfigCount:: \",e.iframeConfigCount,\"who=\",n.fieldType),e.isConfigured){const f={additionalIframeConfigured:!0,fieldType:n.fieldType,type:e.type};i.onAdditionalSFConfig(f)}else if(e.iframeConfigCount===e.originalNumIframes)return f(),!0;return!1}export{e as handleIframeConfigFeedback};\n//# sourceMappingURL=handleIframeConfigFeedback.js.map\n","import t from\"../utils/cardType.js\";import{error as e}from\"../../utilities/logger.js\";import{CVC_POLICY_REQUIRED as r}from\"../../constants.js\";function o({csfState:o,csfConfig:i,csfProps:s,csfCallbacks:n},a){o.isConfigured=!0;const c={iframesConfigured:!0,type:o.type,rootNode:s.rootNode};if(n.onConfigSuccess(c),1===o.numIframes&&i.isCreditCardType){if(\"card\"===o.type)return e(\"ERROR: Payment method with a single secured field - but 'brands' has not been set to an array containing the specific card brand\"),!1;const i=t.getCardByBrand(o.type);if(i){(i.cvcPolicy??r)!==r&&a()}}return!0}export{o as isConfigured};\n//# sourceMappingURL=isConfigured.js.map\n","function l({csfState:l,csfProps:t,csfCallbacks:e}){const o=(l=>{const t=Object.keys(l);for(let e=0,o=t.length;e<o;e+=1)if(!l[t[e]].isValid)return!1;return!0})(l.securedFields),a=o!==l.allValid;if(l.allValid=o,!o&&!a)return;const s={allValid:o,type:l.type,rootNode:t.rootNode};e.onAllValid(s)}export{l as default};\n//# sourceMappingURL=validateForm.js.map\n","function e({csfState:e,csfCallbacks:n},t){const{binValue:i,encryptedBin:u,uuid:c}=t,a={binValue:i,type:e.type};u&&(a.encryptedBin=u,a.uuid=c),n.onBinValue(a)}export{e as handleBinValue};\n//# sourceMappingURL=handleBinValue.js.map\n","function s(){this.postMessageToAllIframes({destroy:!0});Object.keys(this.state.securedFields).forEach(s=>{const e=this.state.securedFields[s];e&&e.destroy(),this.state.securedFields[s]=null}),this.destroyTouchendListener(),this.destroyTouchstartListener(),this.state.securedFields={}}export{s as destroySecuredFields};\n//# sourceMappingURL=destroySecuredFields.js.map\n","import s from\"./AbstractCSF.js\";import{handleConfig as e}from\"./extensions/handleConfig.js\";import{configureCallbacks as t}from\"./extensions/configureCallbacks.js\";import{handleValidation as i}from\"./extensions/handleValidation.js\";import{handleEncryption as r}from\"./extensions/handleEncryption.js\";import{createSecuredFields as o,createNonCardSecuredFields as a,createCardSecuredFields as n,setupSecuredField as d}from\"./extensions/createSecuredFields.js\";import h from\"./extensions/handleIOSTouchEvents.js\";import l from\"./extensions/handleTab.js\";import c,{sendBrandToCardSF as u,sendExpiryDatePolicyToSF as p}from\"./extensions/handleBrandFromBinLookup.js\";import{setFocusOnFrame as m}from\"./partials/setFocusOnFrame.js\";import{postMessageToAllIframes as f}from\"./partials/postMessageToAllIframes.js\";import F from\"./partials/processBrand.js\";import{processAutoComplete as y}from\"./partials/processAutoComplete.js\";import{handleFocus as b}from\"./partials/handleFocus.js\";import{handleIframeConfigFeedback as C}from\"./partials/handleIframeConfigFeedback.js\";import{isConfigured as g}from\"./partials/isConfigured.js\";import S from\"./partials/validateForm.js\";import{handleBinValue as j}from\"./partials/handleBinValue.js\";import{destroySecuredFields as T}from\"./utils/destroySecuredFields.js\";import I from\"./utils/iframes/postMessageToIframe.js\";import k from\"./utils/iframes/getIframeContentWin.js\";import{warn as O}from\"../utilities/logger.js\";import{selectOne as x}from\"../utilities/dom.js\";import{on as v}from\"../../../../../utils/listenerUtils.js\";import{partial as L}from\"../utilities/commonUtils.js\";import{hasOwnProperty as B}from\"../../../../../utils/hasOwnProperty.js\";import K from\"./utils/userAgent.js\";const P=(s=\"You cannot use secured fields\")=>{O(`${s} - they are not yet configured. Use the 'onConfigSuccess' callback to know when this has happened.`)};class V extends s{init(){this.configHandler(this.props),this.callbacksHandler(this.props.callbacks);const s=this.createSecuredFields();this.state.numIframes=this.state.originalNumIframes=s,this.state.isKCP=!!this.props.isKCP,K.__IS_IOS&&this.props.shouldDisableIOSArrowKeys&&(this.hasGenuineTouchEvents=!1,v(document,\"touchstart\",this.touchstartListener))}createReturnObject(){return{updateStyles:s=>{this.state.isConfigured?this.postMessageToAllIframes({styleObject:s}):O(\"You cannot update the secured fields styling - they are not yet configured. Use the 'onConfigSuccess' callback to know when this has happened.\")},setFocusOnFrame:s=>{this.state.isConfigured?this.setFocusOnFrame(s):P(\"You cannot set focus on any secured field\")},isValidated:(s,e)=>{if(this.state.isConfigured){if(B(this.state.securedFields,s)){this.state.securedFields[s].hasError=!0,\"\"===this.state.securedFields[s].errorType&&(this.state.securedFields[s].errorType=\"isValidated\");const t={txVariant:this.state.type,fieldType:s,externalValidation:!0,code:e,numKey:this.state.securedFields[s].numKey};I(t,k(this.state,s),this.config.loadingContext)}}else P(\"You cannot set validated on any secured field\")},hasUnsupportedCard:(s,e)=>{if(this.state.isConfigured){if(B(this.state.securedFields,s)){this.state.securedFields[s].hasError=!!e,this.state.securedFields[s].errorType=e;const t={txVariant:this.state.type,fieldType:s,unsupportedCard:!!e,code:e,numKey:this.state.securedFields[s].numKey};I(t,k(this.state,s),this.config.loadingContext)}}else P(\"You cannot set hasUnsupportedCard on any secured field\")},destroy:()=>{this.state.isConfigured?this.destroySecuredFields():P(\"You cannot destroy secured fields\")},brandsFromBinLookup:(s,e)=>{if(!this.config.isCreditCardType)return null;this.state.isConfigured?this.handleBrandFromBinLookup(s,e):P(\"You cannot set pass brands to secured fields\")},addSecuredField:s=>{const e=x(this.props.rootNode,`[data-cse=\"${s}\"]`);e&&(this.state.numIframes+=1,this.setupSecuredField(e))},removeSecuredField:s=>{if(this.state.securedFields[s]){this.state.securedFields[s].destroy(),delete this.state.securedFields[s],this.state.numIframes-=1,this.state.iframeCount-=1;const e={additionalIframeRemoved:!0,fieldType:s,type:this.state.type};this.callbacks.onAdditionalSFRemoved(e)}},setKCPStatus:s=>{this.state.isKCP=s},sfIsOptionalOrHidden:s=>this.state.securedFields[s].isOptionalOrHidden()}}constructor(s){super(s),this.state={type:this.props.type,brand:\"card\"!==this.props.type?{brand:this.props.type,cvcPolicy:\"required\"}:{brand:null,cvcPolicy:\"required\"},allValid:void 0,numIframes:0,originalNumIframes:0,iframeCount:0,iframeConfigCount:0,isConfigured:!1,hasSeparateDateFields:!1,currentFocusObject:null,registerFieldForIos:!1,securedFields:{},isKCP:!1};const I={csfState:this.state,csfConfig:this.config,csfProps:this.props,csfCallbacks:this.callbacks};this.configHandler=e.bind(this),this.callbacksHandler=t.bind(this),this.validateForm=L(S,I),this.isConfigured=L(g,I,this.validateForm),this.handleIframeConfigFeedback=L(C,I,this.isConfigured),this.processBrand=L(F,I),this.handleValidation=i.bind(this),this.handleEncryption=r.bind(this),this.createSecuredFields=o.bind(this),this.createNonCardSecuredFields=a.bind(this),this.createCardSecuredFields=n.bind(this),this.setupSecuredField=d.bind(this),this.postMessageToAllIframes=L(f,I),this.handleIOSTouchEvents=h.handleTouchend.bind(this),this.touchendListener=h.touchendListener.bind(this),this.destroyTouchendListener=h.destroyTouchendListener.bind(this),this.touchstartListener=h.touchstartListener.bind(this),this.destroyTouchstartListener=h.destroyTouchstartListener.bind(this),this.setFocusOnFrame=L(m,I),this.handleFocus=L(b,I,this.handleIOSTouchEvents),this.handleSFShiftTab=l.handleSFShiftTab.bind(this),this.handleShiftTab=l.handleShiftTab.bind(this),this.destroySecuredFields=T.bind(this),this.processAutoComplete=L(y,I),this.handleBinValue=L(j,I),this.handleBrandFromBinLookup=c.bind(this),this.sendBrandToCardSF=u.bind(this),this.sendExpiryDatePolicyToSF=p.bind(this),this.init()}}export{V as default};\n//# sourceMappingURL=CSF.js.map\n","import e from\"./CSF.js\";import t from\"./utils/cardType.js\";import{error as o,warn as r}from\"../utilities/logger.js\";import{falsy as i}from\"../../../../../utils/commonUtils.js\";import{hasOwnProperty as n}from\"../../../../../utils/hasOwnProperty.js\";import{selectOne as s}from\"../utilities/dom.js\";const c=s=>{if(!s)throw new Error(\"No securedFields configuration object defined\");const c={...s};try{const e=t.isGenericCardType(c.type);c.type=e?\"card\":c.type}catch(e){c.type=\"card\"}if(!n(c,\"rootNode\"))return o('ERROR: SecuredFields configuration object is missing a \"rootNode\" property');if(i(c.clientKey))return r('WARNING: AdyenCheckout configuration object is missing a \"clientKey\" property.');const p=d(c.rootNode);if(!p)return o(`ERROR: SecuredFields cannot find a valid rootNode element for ${c.type}`);c.rootNode=p;return new e(c).createReturnObject()},d=e=>{let t;return\"object\"==typeof e&&(t=e),\"string\"!=typeof e||(t=s(document,e),t)?t:null};export{c as default};\n//# sourceMappingURL=initCSF.js.map\n","import{getCardImageUrl as e}from\"../utils.js\";import{ENCRYPTED_CARD_NUMBER as t,ENCRYPTED_SECURITY_CODE as i,ENCRYPTED_EXPIRY_DATE as s,ENCRYPTED_EXPIRY_MONTH as n,ENCRYPTED_EXPIRY_YEAR as o,DATE_POLICY_REQUIRED as r,CVC_POLICY_REQUIRED as a,OPTIONAL as l,HIDDEN as d}from\"../lib/constants.js\";import{existy as h}from\"../../../../utils/commonUtils.js\";import u from\"../../../../core/Errors/AdyenCheckoutError.js\";function p(e,t,i,s){return(t!==l&&t!==d||0!==i[e])&&s[e]}var c={handleFocus:function(e){this.numCharsInField[e.fieldType]=e.numChars,this.props.onFocus(e)},handleOnAllValid:function(e){return!this.state.detectedUnsupportedBrands&&(this.setState({isSfpValid:e.allValid},()=>{this.props.onChange(this.state,{event:\"handleOnAllValid\"}),this.props.onAllValid(e)}),!0)},handleOnAutoComplete:function(e){this.setState({autoCompleteName:e.value},()=>{this.props.onChange(this.state,{event:\"handleOnAutoComplete\",fieldType:e.fieldType}),this.setState({autoCompleteName:null})}),this.props.onAutoComplete(e)},handleOnFieldValid:function(e){return(!this.state.detectedUnsupportedBrands||e.fieldType!==t)&&(this.setState(t=>({data:{...t.data,[e.encryptedFieldName]:e.blob},valid:{...t.valid,[e.encryptedFieldName]:e.valid},errors:{...t.errors,[e.fieldType]:t.errors[e.fieldType]??null}}),()=>{this.props.onChange(this.state,{event:\"handleOnFieldValid\",fieldType:e.fieldType}),this.props.onFieldValid(e)}),!0)},handleOnLoad:function(e){clearTimeout(this.csfLoadFailTimeout),this.csfLoadFailTimeout=null,this.props.onLoad(e),this.csfConfigFailTimeout=setTimeout(()=>{\"ready\"!==this.state.status&&(this.setState({status:\"csfConfigFailure\"}),this.props.onError(new u(\"ERROR\",\"secured fields have failed to configure\")))},this.csfConfigFailTimeoutMS)},handleOnConfigSuccess:function(e){clearTimeout(this.csfConfigFailTimeout),this.csfConfigFailTimeout=null,this.setState({status:\"ready\"},()=>{this.props.onConfigSuccess(e)})},handleOnBrand:function(t){this.setState(e=>{const l=p(i,t.cvcPolicy,this.numCharsInField,e.errors),d=1===this.numDateFields?p(s,t.expiryDatePolicy,this.numCharsInField,e.errors):null,u=2===this.numDateFields?p(n,t.expiryDatePolicy,this.numCharsInField,e.errors):null,c=2===this.numDateFields?p(o,t.expiryDatePolicy,this.numCharsInField,e.errors):null;return{brand:t.brand,cvcPolicy:t.cvcPolicy??a,showSocialSecurityNumber:t.showSocialSecurityNumber,errors:{...e.errors,...h(l)&&{[i]:l},...h(d)&&{[s]:d},...h(u)&&{[n]:u},...h(c)&&{[o]:c}},expiryDatePolicy:t.expiryDatePolicy??r}},()=>{this.props.onChange(this.state,{event:\"handleOnBrand\"});const i=this.props.brandsConfiguration[t.brand]?.icon??e(t.brand,this.props.resources);this.props.onBrand({...t,brandImageUrl:i})})},handleOnError:function(e,i=null){const s=e.error;return this.setState(n=>({errors:{...n.errors,[e.fieldType]:s||null},...i&&{data:{...n.data,[t]:void 0}},...i&&{valid:{...n.valid,[t]:!1}},...i&&{isSfpValid:!1}}),()=>{this.props.onChange(this.state,{event:\"handleOnError\",fieldType:e.fieldType})}),!0},handleOnNoDataRequired:function(){this.setState({status:\"ready\"},()=>this.props.onChange({isSfpValid:!0}))},handleOnTouchstartIOS:function(e){this.props.disableIOSArrowKeys?.(e)},handleKeyDown:function(e){if(\"enterKeyPressed\"===e.action){const e=new KeyboardEvent(\"keydown\",{bubbles:!0,cancelable:!0,key:\"Enter\",code:\"Enter\"});this.props.handleKeyDown?.(e)}}};export{c as default};\n//# sourceMappingURL=SecuredFieldsProviderHandlers.js.map\n","var o={type:\"card\",keypadFix:!0,rootNode:null,loadingContext:null,brands:[],showWarnings:!1,autoFocus:!0,trimTrailingSeparator:!0,onChange:()=>{},onLoad:()=>{},onConfigSuccess:()=>{},onAllValid:()=>{},onFieldValid:()=>{},onBrand:()=>{},onError:()=>{},onBinValue:()=>{},onFocus:()=>{},onAutoComplete:()=>{},handleKeyDown:()=>{},styles:{}};export{o as default};\n//# sourceMappingURL=defaultProps.js.map\n","var n=function(n){return n.full=\"full\",n.partial=\"partial\",n.none=\"none\",n}({});export{n as AddressModeOptions};\n//# sourceMappingURL=types.js.map\n","import{ENCRYPTED_CARD_NUMBER as c,ENCRYPTED_EXPIRY_DATE as t,ENCRYPTED_SECURITY_CODE as o,ENCRYPTED_PWD_FIELD as a}from\"../../../internal/SecuredFields/lib/constants.js\";const n=\"holderName\",e=\"socialSecurityNumber\",r=[c,t,o],i=[n,c,t,o],s=[c,t,o,n],l=[\"taxNumber\",a],m=r.concat(l),u=i.concat(l),b=s.concat(l),d=r.concat([e]),N=i.concat([e]),p=s.concat([e]);export{r as CREDIT_CARD,s as CREDIT_CARD_NAME_BOTTOM,i as CREDIT_CARD_NAME_TOP,m as KCP_CARD,b as KCP_CARD_NAME_BOTTOM,u as KCP_CARD_NAME_TOP,d as SSN_CARD,p as SSN_CARD_NAME_BOTTOM,N as SSN_CARD_NAME_TOP};\n//# sourceMappingURL=layouts.js.map\n","const e=\"N/A\",s=[\"street\",\"houseNumberOrName\",\"postalCode\",\"city\",\"stateOrProvince\",\"country\"],[a,t,l,r,o,c]=s,d={street:\"address-line1\",houseNumberOrName:\"address-line2\",postalCode:\"postal-code\",city:\"address-level2\"},i={AU:{hasDataset:!0,labels:{[t]:\"apartmentSuite\",[o]:\"state\",[a]:\"address\"},optionalFields:[t],placeholders:{[o]:\"select.state\"},schema:[c,a,t,r,[[o,50],[l,50]]]},BR:{hasDataset:!0,labels:{[o]:\"state\"},placeholders:{[o]:\"select.state\"}},CA:{hasDataset:!0,labels:{[t]:\"apartmentSuite\",[o]:\"provinceOrTerritory\",[a]:\"address\"},optionalFields:[t],schema:[c,a,t,[[r,70],[l,30]],o]},GB:{labels:{[r]:\"cityTown\"},schema:[c,[[t,30],[a,70]],[[r,70],[l,30]],o]},US:{hasDataset:!0,labels:{[l]:\"zipCode\",[t]:\"apartmentSuite\",[o]:\"state\",[a]:\"address\"},optionalFields:[t],placeholders:{[o]:\"select.state\"},schema:[c,a,t,r,[[o,50],[l,50]]]},default:{optionalFields:[],placeholders:{[o]:\"select.provinceOrTerritory\"},schema:[c,[[a,70],[t,30]],[[l,30],[r,70]],o]}},p=Object.keys(i).reduce((e,s)=>(e[s]={labels:i[s].labels,schema:[l]},e),{}),h=Object.keys(i);export{d as ADDRESS_FIELD_TOKEN_MAP,s as ADDRESS_SCHEMA,i as ADDRESS_SPECIFICATIONS,r as CITY,h as COUNTRIES_WITH_CUSTOM_SPECIFICATION,c as COUNTRY,e as FALLBACK_VALUE,t as HOUSE_NUMBER_OR_NAME,p as PARTIAL_ADDRESS_SCHEMA,l as POSTAL_CODE,o as STATE_OR_PROVINCE,a as STREET};\n//# sourceMappingURL=constants.js.map\n","import{createContext as e,createElement as r,toChildArray as o,Fragment as t}from\"../../external/preact/dist/preact.js\";import{useContext as s,useEffect as n}from\"../../external/preact/hooks/dist/hooks.js\";const i=e(void 0),a=({i18n:e,loadingContext:a,resources:c,analytics:d,children:l})=>{const u=s(i);return n(()=>{e&&a&&c||console.warn(`CoreProvider - WARNING core provider is missing:${e?\"\":\"i18n\"} ${a?\"\":\"loadingContext\"} ${c?\"\":\"resources\"}`)},[e,a,c]),u?r(t,null,o(l)):r(i.Provider,{value:{i18n:e,loadingContext:a,resources:c,analytics:d}},o(l))},c=()=>{const e=s(i);if(void 0===e)throw new Error('\"useCoreContext\" must be used within a CoreProvider');return e};export{a as CoreProvider,c as useCoreContext};\n//# sourceMappingURL=CoreProvider.js.map\n","import{useCoreContext as o}from\"./CoreProvider.js\";import{useCallback as r}from\"../../external/preact/hooks/dist/hooks.js\";function e(){const{resources:e}=o();return r(o=>e?.getImage(o),[])}export{e as default};\n//# sourceMappingURL=useImage.js.map\n","import{AddressModeOptions as e}from\"./types.js\";import{CREDIT_CARD_NAME_TOP as o,CREDIT_CARD_NAME_BOTTOM as n,KCP_CARD_NAME_TOP as i,KCP_CARD_NAME_BOTTOM as r,SSN_CARD_NAME_TOP as t,SSN_CARD_NAME_BOTTOM as a,CREDIT_CARD as s,KCP_CARD as l,SSN_CARD as d}from\"./layouts.js\";import{PARTIAL_ADDRESS_SCHEMA as c}from\"../../../internal/Address/constants.js\";import{BRAND_READABLE_NAME_MAP as u}from\"../../../internal/SecuredFields/lib/constants.js\";import m from\"../../../../core/Context/useImage.js\";import{SF_ErrorCodes as p}from\"../../../../core/Errors/constants.js\";const C=(e,o)=>o({type:\"card\"===e?\"nocard\":e||\"nocard\",extension:\"svg\"})(e),g=e=>[\"revolving\",\"bonus\"].includes(e?.plan)||e?.value>1,h=({props:e,showKCP:c,showBrazilianSSN:u,countrySpecificSchemas:m=null,billingAddressRequiredFields:p=null})=>{let C=s;const g=e.hasHolderName&&e.holderNameRequired;if(g&&(C=e.positionHolderNameOnTop?o:n),c&&(C=l,g&&(C=e.positionHolderNameOnTop?i:r)),u&&(C=d,g&&(C=e.positionHolderNameOnTop?t:a)),m){const i=m.flat(2).filter(e=>\"number\"!=typeof e);let r=i;p&&(r=i.filter(e=>p.includes(e))),C=s.concat(r),g&&(C=e.positionHolderNameOnTop?o.concat(r):n.concat(r))}return C},R=(e,o,n)=>{switch(e){case\"socialSecurityNumber\":return o.get(`boleto.${e}`);case\"street\":case\"houseNumberOrName\":case\"postalCode\":case\"stateOrProvince\":case\"city\":case\"country\":return n?.[e]?o.get(n?.[e]):o.get(e);default:return null}},y=e=>({billingAddressRequired:e.billingAddressRequired,billingAddressRequiredFields:e.billingAddressRequiredFields,billingAddressAllowedCountries:e.billingAddressAllowedCountries,brandsConfiguration:e.brandsConfiguration,showStoreDetailsCheckbox:e.showStoreDetailsCheckbox,hasCVC:e.hasCVC,hasHolderName:e.hasHolderName,holderNameRequired:e.holderNameRequired,installmentOptions:e.installmentOptions,placeholders:e.placeholders,positionHolderNameOnTop:e.positionHolderNameOnTop,showBrandIcon:e.showBrandIcon,showContextualElement:e.showContextualElement,lastFour:e.lastFour,expiryMonth:e.expiryMonth,expiryYear:e.expiryYear,disclaimerMessage:e.disclaimerMessage}),O=e=>({autoFocus:e.autoFocus,brands:e.brands,brandsConfiguration:e.brandsConfiguration,clientKey:e.clientKey,countryCode:e.countryCode,forceCompat:e.forceCompat,i18n:e.i18n,implementationType:e.implementationType,keypadFix:e.keypadFix,legacyInputMode:e.legacyInputMode,loadingContext:e.loadingContext,maskSecurityCode:e.maskSecurityCode,exposeExpiryDate:e.exposeExpiryDate,minimumExpiryDate:e.minimumExpiryDate,onAdditionalSFConfig:e.onAdditionalSFConfig,onAdditionalSFRemoved:e.onAdditionalSFRemoved,onAllValid:e.onAllValid,onAutoComplete:e.onAutoComplete,onBinValue:e.onBinValue,onConfigSuccess:e.onConfigSuccess,handleKeyDown:e.handleKeyDown,onError:e.onError,onFieldValid:e.onFieldValid,onLoad:e.onLoad,placeholders:e.placeholders,resources:e.resources,showContextualElement:e.showContextualElement,showWarnings:e.showWarnings,trimTrailingSeparator:e.trimTrailingSeparator}),b=o=>o==e.partial?c:null;function f(e){return![p.ERROR_MSG_UNSUPPORTED_CARD_ENTERED,p.ERROR_MSG_CARD_TOO_OLD,p.ERROR_MSG_CARD_TOO_FAR_IN_FUTURE,p.ERROR_MSG_CARD_EXPIRES_TOO_SOON].includes(e)}function S(e){return u[e]??e}const x={\"cc.cvc.920\":\"cc.cvc.920.amex\",\"cc.cvc.921\":\"cc.cvc.921.amex\"};function A(e,o){return o&&x[e]||e}const E=(e,o)=>e.map(e=>{const n=e.id,i=m(),r=\"card\"===n?\"nocard\":n,t=o?.[n]?.icon??C(r,i);return{id:e.id,name:e.brandObject.localeBrand||e.brandObject.brand,imageURL:t,altName:S(n)}}),N=(e,o,n)=>o.some(o=>e.includes(o[n])),_=({installmentOptions:e,fundingSource:o,amount:n})=>!(!e||0===Object.keys(e).length)&&(!(!n||0===n.value)&&(!o||\"credit\"===o));export{x as CVC_AMEX_ERROR_KEYS,y as extractPropsForCardFields,O as extractPropsForSFP,C as getCardImageUrl,S as getFullBrandName,h as getLayout,b as handlePartialAddressMode,f as lookupBlurBasedErrors,E as mapDualBrandButtons,R as mapFieldKey,N as requiresDualBrandSelection,A as resolveCVCErrorKey,g as shouldIncludeInstallmentsInPaymentData,_ as shouldShowInstallmentsComponent};\n//# sourceMappingURL=utils.js.map\n","var a=function(a){return a.address=\"address\",a.bankTransfer_IBAN=\"bankTransfer_IBAN\",a.bankTransfer_BE=\"bankTransfer_BE\",a.bankTransfer_NL=\"bankTransfer_NL\",a.bankTransfer_PL=\"bankTransfer_PL\",a.bankTransfer_FR=\"bankTransfer_FR\",a.bankTransfer_CH=\"bankTransfer_CH\",a.bankTransfer_IE=\"bankTransfer_IE\",a.bankTransfer_GB=\"bankTransfer_GB\",a.bankTransfer_DE=\"bankTransfer_DE\",a.bankTransfer_AE=\"bankTransfer_AE\",a.bankTransfer_AT=\"bankTransfer_AT\",a.bankTransfer_AU=\"bankTransfer_AU\",a.bankTransfer_BG=\"bankTransfer_BG\",a.bankTransfer_CA=\"bankTransfer_CA\",a.bankTransfer_EE=\"bankTransfer_EE\",a.bankTransfer_ES=\"bankTransfer_ES\",a.bankTransfer_FI=\"bankTransfer_FI\",a.bankTransfer_HK=\"bankTransfer_HK\",a.bankTransfer_HU=\"bankTransfer_HU\",a.bankTransfer_IT=\"bankTransfer_IT\",a.bankTransfer_JP=\"bankTransfer_JP\",a.bankTransfer_LU=\"bankTransfer_LU\",a.bankTransfer_NZ=\"bankTransfer_NZ\",a.bankTransfer_PT=\"bankTransfer_PT\",a.bankTransfer_SG=\"bankTransfer_SG\",a.bankTransfer_SK=\"bankTransfer_SK\",a.bankTransfer_US=\"bankTransfer_US\",a.donation=\"donation\",a.personal_details=\"personal_details\",a.dropin=\"dropin\",a.bcmc=\"bcmc\",a.card=\"card\",a.scheme=\"scheme\",a.storedCard=\"storedCard\",a.customCard=\"customcard\",a.threeDS2Challenge=\"threeDS2Challenge\",a.threeDS2Fingerprint=\"threeDS2Fingerprint\",a.threeDS2DeviceFingerprint=\"threeDS2DeviceFingerprint\",a.ach=\"ach\",a.directdebit_GB=\"directdebit_GB\",a.sepadirectdebit=\"sepadirectdebit\",a.eft_directdebit_CA=\"eft_directdebit_CA\",a.affirm=\"affirm\",a.afterpay=\"afterpay\",a.afterpay_default=\"afterpay_default\",a.afterpay_b2b=\"afterpay_b2b\",a.atome=\"atome\",a.facilypay_3x=\"facilypay_3x\",a.facilypay_4x=\"facilypay_4x\",a.facilypay_6x=\"facilypay_6x\",a.facilypay_10x=\"facilypay_10x\",a.facilypay_12x=\"facilypay_12x\",a.ratepay=\"ratepay\",a.ratepay_directdebit=\"ratepay_directdebit\",a.amazonpay=\"amazonpay\",a.applepay=\"applepay\",a.cashapp=\"cashapp\",a.clicktopay=\"clicktopay\",a.googlepay=\"googlepay\",a.paypal=\"paypal\",a.fastlane=\"fastlane\",a.paywithgoogle=\"paywithgoogle\",a.boletobancario=\"boletobancario\",a.boletobancario_itau=\"boletobancario_itau\",a.boletobancario_santander=\"boletobancario_santander\",a.primeiropay_boleto=\"primeiropay_boleto\",a.doku=\"doku\",a.doku_alfamart=\"doku_alfamart\",a.doku_permata_lite_atm=\"doku_permata_lite_atm\",a.doku_indomaret=\"doku_indomaret\",a.doku_atm_mandiri_va=\"doku_atm_mandiri_va\",a.doku_sinarmas_va=\"doku_sinarmas_va\",a.doku_mandiri_va=\"doku_mandiri_va\",a.doku_cimb_va=\"doku_cimb_va\",a.doku_danamon_va=\"doku_danamon_va\",a.doku_bri_va=\"doku_bri_va\",a.doku_bni_va=\"doku_bni_va\",a.doku_bca_va=\"doku_bca_va\",a.doku_wallet=\"doku_wallet\",a.oxxo=\"oxxo\",a.billdesk_online=\"billdesk_online\",a.billdesk_wallet=\"billdesk_wallet\",a.dotpay=\"dotpay\",a.eps=\"eps\",a.iris=\"iris\",a.molpay_ebanking_fpx_MY=\"molpay_ebanking_fpx_MY\",a.molpay_ebanking_TH=\"molpay_ebanking_TH\",a.molpay_ebanking_VN=\"molpay_ebanking_VN\",a.onlineBanking_CZ=\"onlineBanking_CZ\",a.onlinebanking_IN=\"onlinebanking_IN\",a.onlineBanking_PL=\"onlineBanking_PL\",a.onlineBanking_SK=\"onlineBanking_SK\",a.paybybank=\"paybybank\",a.payu_IN_cashcard=\"payu_IN_cashcard\",a.payu_IN_nb=\"payu_IN_nb\",a.wallet_IN=\"wallet_IN\",a.dragonpay=\"dragonpay\",a.dragonpay_ebanking=\"dragonpay_ebanking\",a.dragonpay_otc_banking=\"dragonpay_otc_banking\",a.dragonpay_otc_non_banking=\"dragonpay_otc_non_banking\",a.dragonpay_otc_philippines=\"dragonpay_otc_philippines\",a.econtext=\"econtext\",a.econtext_atm=\"econtext_atm\",a.econtext_online=\"econtext_online\",a.econtext_seven_eleven=\"econtext_seven_eleven\",a.econtext_stores=\"econtext_stores\",a.giropay=\"giropay\",a.multibanco=\"multibanco\",a.redirect=\"redirect\",a.twint=\"twint\",a.vipps=\"vipps\",a.trustly=\"trustly\",a.paybybank_AIS_DD=\"paybybank_AIS_DD\",a.riverty=\"riverty\",a.paybybank_pix=\"paybybank_pix\",a.klarna=\"klarna\",a.klarna_account=\"klarna_account\",a.klarna_paynow=\"klarna_paynow\",a.klarna_b2b=\"klarna_b2b\",a.bcmc_mobile=\"bcmc_mobile\",a.bcmc_mobile_QR=\"bcmc_mobile_QR\",a.pix=\"pix\",a.swish=\"swish\",a.wechatpay=\"wechatpay\",a.wechatpayQR=\"wechatpayQR\",a.promptpay=\"promptpay\",a.paynow=\"paynow\",a.duitnow=\"duitnow\",a.blik=\"blik\",a.mbway=\"mbway\",a.ancv=\"ancv\",a.payto=\"payto\",a.upi=\"upi\",a.upi_qr=\"upi_qr\",a.upi_intent=\"upi_intent\",a.giftcard=\"giftcard\",a.mealVoucher_FR=\"mealVoucher_FR\",a.mealVoucher_FR_natixis=\"mealVoucher_FR_natixis\",a.mealVoucher_FR_sodexo=\"mealVoucher_FR_sodexo\",a.mealVoucher_FR_groupeup=\"mealVoucher_FR_groupeup\",a}({});export{a as TxVariants};\n//# sourceMappingURL=tx-variants.js.map\n","import{Component as t}from\"../../../../external/preact/dist/preact.js\";import{getFields as s,validFieldsReducer as e,getErrorReducer as i,getErrorObject as o}from\"./SFPUtils.js\";import n from\"../lib/CSF/initCSF.js\";import r from\"./SecuredFieldsProviderHandlers.js\";import d from\"./defaultProps.js\";import{ENCRYPTED_PWD_FIELD as a,ENCRYPTED_CARD_NUMBER as h,DEDICATED_CARD_COMPONENTS as l,DATE_POLICY_REQUIRED as p,CVC_POLICY_REQUIRED as c}from\"../lib/constants.js\";import u from\"../../../../core/Errors/AdyenCheckoutError.js\";import{resolveCVCErrorKey as m}from\"../../../Card/components/CardInput/utils.js\";import{getErrorMessageFromCode as f}from\"../../../../core/Errors/utils.js\";import{SF_ErrorCodes as C}from\"../../../../core/Errors/constants.js\";import{TxVariants as y}from\"../../../tx-variants.js\";function F(t,s,e){return s in t?Object.defineProperty(t,s,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[s]=e,t}class O extends t{componentDidMount(){this.props.rootNode&&this.setRootNode(this.props.rootNode);const t=s(this.rootNode),i=t.reduce(e,{});this.setState({valid:i}),t.forEach(t=>{this.numCharsInField[t]=0}),this.numDateFields=t.filter(t=>t.match(/Expiry/)).length,t.length?(this.destroy(),this.initializeCSF(this.rootNode)):(this.props.componentType===y.customCard&&console.debug('You are trying to create a CustomCard component but the element into which you are trying to mount the CustomCard component does not contain any elements with a \"data-cse\" attribute e.g. <div data-cse=\"encryptedCardNumber\"></div>'),this.handleOnNoDataRequired())}componentDidUpdate(){this.checkForKCPFields(),this.props.onStateUpdate?.(this.state)}componentWillUnmount(){this.csf=null,clearTimeout(this.csfLoadFailTimeout),clearTimeout(this.csfConfigFailTimeout)}initializeCSF(t){let s=this.props.loadingContext;const e={rootNode:t,type:this.props.type,componentType:this.props.componentType,clientKey:this.props.clientKey,cardGroupTypes:this.props.brands,autoFocus:this.props.autoFocus,trimTrailingSeparator:this.props.trimTrailingSeparator,loadingContext:s,keypadFix:this.props.keypadFix,showWarnings:this.props.showWarnings,iframeUIConfig:{sfStyles:this.props.styles},i18n:this.props.i18n,onSubmitAnalytics:this.props.onSubmitAnalytics,callbacks:{onLoad:this.handleOnLoad,onConfigSuccess:this.handleOnConfigSuccess,onFieldValid:this.handleOnFieldValid,onAllValid:this.handleOnAllValid,onBrand:this.handleOnBrand,onError:this.handleOnError,onFocus:this.handleFocus,onBinValue:this.props.onBinValue,onAutoComplete:this.handleOnAutoComplete,onAdditionalSFConfig:this.props.onAdditionalSFConfig,onAdditionalSFRemoved:this.props.onAdditionalSFRemoved,onTouchstartIOS:this.handleOnTouchstartIOS,onKeyDown:this.handleKeyDown},isKCP:this.state.hasKoreanFields,legacyInputMode:this.props.legacyInputMode,minimumExpiryDate:this.props.minimumExpiryDate,implementationType:this.props.implementationType||\"components\",forceCompat:this.props.forceCompat,maskSecurityCode:this.props.maskSecurityCode,exposeExpiryDate:this.props.exposeExpiryDate,shouldDisableIOSArrowKeys:!!this.props.disableIOSArrowKeys,placeholders:this.props.placeholders??{},showContextualElement:this.props.showContextualElement};this.csf=n(e),this.csfLoadFailTimeout=setTimeout(()=>{\"ready\"!==this.state.status&&(this.setState({status:\"csfLoadFailure\"}),this.props.onError(new u(\"ERROR\",\"secured field iframes have failed to load\")))},this.csfLoadFailTimeoutMS)}checkForKCPFields(){let t=!1;if(this.props.koreanAuthenticationRequired&&(t=this.issuingCountryCode?\"kr\"===this.issuingCountryCode:\"kr\"===this.props.countryCode),this.state.hasKoreanFields&&!t){const t=t=>({data:{...t.data,[a]:void 0},valid:{...t.valid,[a]:!1},errors:{...t.errors,[a]:null},hasKoreanFields:!1});this.setState(t,()=>{this.props.onChange(this.state)}),this.csf.removeSecuredField(a),this.csf.setKCPStatus(!1)}if(!this.state.hasKoreanFields&&t){const t=t=>({valid:{...t.valid,[a]:!1},hasKoreanFields:!0,isSfpValid:!1});this.setState(t,()=>{this.props.onChange(this.state)}),this.csf.addSecuredField(a),this.csf.setKCPStatus(!0)}}getChildContext(){return{i18n:this.props.i18n}}handleUnsupportedCard(t){const s=!!t.error;return s&&this.setState({detectedUnsupportedBrands:t.detectedBrands}),t.rootNode=this.rootNode,this.handleOnError(t,s),this.csf&&this.csf.hasUnsupportedCard(h,t.error),s}setFocusOn(t){this.csf&&this.csf.setFocusOnFrame(t)}updateStyles(t){this.csf&&this.csf.updateStyles(t)}sfIsOptionalOrHidden(t){return this.csf.sfIsOptionalOrHidden(t)}destroy(){this.csf&&this.csf.destroy()}getRootNode(){return this.rootNode}showValidation(){const{numDateFields:t,state:s}=this;Object.keys(s.valid).reduce(i(t,s),[]).forEach(t=>{const e=o(t,this.rootNode,s);this.handleOnError(e,!!s.detectedUnsupportedBrands),this.csf&&this.csf.isValidated&&this.csf.isValidated(t,e.error)})}mapErrorsToValidationRuleResult(){return Object.keys(this.state.errors).reduce((t,s)=>{const e=this.state.errors[s];return t[s]=e?{isValid:!1,errorMessage:f(e,C),errorI18n:this.props.i18n.get(m(e,\"amex\"===this.state.brand)),error:e,rootNode:this.rootNode,...this.state.detectedUnsupportedBrands&&{detectedBrands:this.state.detectedUnsupportedBrands}}:null,t},{})}processBinLookupResponse(t,s){if(this.state.detectedUnsupportedBrands&&(this.setState(t=>({errors:{...t.errors,[h]:null},detectedUnsupportedBrands:null})),this.csf&&t)){const t={type:\"card\",fieldType:\"encryptedCardNumber\",error:\"\"};this.handleUnsupportedCard(t)}this.issuingCountryCode=t?.issuingCountryCode?.toLowerCase();const e=s?.brand,i=e&&l.includes(s.brand);i&&this.setState(s,()=>{this.props.onChange(this.state)}),this.csf&&this.csf.brandsFromBinLookup(t,i?s:null)}render(t,s){return t.render({setRootNode:this.setRootNode,setFocusOn:this.setFocusOn},s)}constructor(t){super(t),F(this,\"csfLoadFailTimeout\",void 0),F(this,\"csfLoadFailTimeoutMS\",void 0),F(this,\"csfConfigFailTimeout\",void 0),F(this,\"csfConfigFailTimeoutMS\",void 0),F(this,\"numCharsInField\",void 0),F(this,\"rootNode\",void 0),F(this,\"numDateFields\",void 0),F(this,\"csf\",void 0),F(this,\"handleOnLoad\",void 0),F(this,\"handleOnConfigSuccess\",void 0),F(this,\"handleOnFieldValid\",void 0),F(this,\"handleOnAllValid\",void 0),F(this,\"handleOnBrand\",void 0),F(this,\"handleFocus\",void 0),F(this,\"handleOnError\",void 0),F(this,\"handleOnAutoComplete\",void 0),F(this,\"handleOnNoDataRequired\",void 0),F(this,\"handleOnTouchstartIOS\",void 0),F(this,\"handleKeyDown\",void 0),F(this,\"state\",void 0),F(this,\"props\",void 0),F(this,\"issuingCountryCode\",void 0),F(this,\"setRootNode\",t=>{this.rootNode=t});const s={status:\"loading\",brand:t.type,errors:{},valid:{},data:{},cvcPolicy:c,expiryDatePolicy:p,isSfpValid:!1,hasKoreanFields:t.hasKoreanFields};this.state=s,this.csfLoadFailTimeout=null,this.csfLoadFailTimeoutMS=3e4,this.csfConfigFailTimeout=null,this.csfConfigFailTimeoutMS=15e3,this.numCharsInField={},this.handleOnLoad=r.handleOnLoad.bind(this),this.handleOnConfigSuccess=r.handleOnConfigSuccess.bind(this),this.handleOnFieldValid=r.handleOnFieldValid.bind(this),this.handleOnAllValid=r.handleOnAllValid.bind(this),this.handleOnBrand=r.handleOnBrand.bind(this),this.handleFocus=r.handleFocus.bind(this),this.handleOnError=r.handleOnError.bind(this),this.handleOnNoDataRequired=r.handleOnNoDataRequired.bind(this),this.handleOnAutoComplete=r.handleOnAutoComplete.bind(this),this.handleOnTouchstartIOS=r.handleOnTouchstartIOS.bind(this),this.handleKeyDown=r.handleKeyDown.bind(this),this.processBinLookupResponse=this.processBinLookupResponse.bind(this),this.setFocusOn=this.setFocusOn.bind(this),this.updateStyles=this.updateStyles.bind(this),this.handleUnsupportedCard=this.handleUnsupportedCard.bind(this),this.showValidation=this.showValidation.bind(this),this.destroy=this.destroy.bind(this)}}F(O,\"defaultProps\",d);export{O as default};\n//# sourceMappingURL=SecuredFieldsProvider.js.map\n","import{AddressModeOptions as e}from\"./types.js\";var o={type:\"scheme\",setComponentRef:()=>{},autoFocus:!0,billingAddressAllowedCountries:[],billingAddressMode:e.full,billingAddressRequired:!1,billingAddressRequiredFields:[\"street\",\"houseNumberOrName\",\"postalCode\",\"city\",\"stateOrProvince\",\"country\"],configuration:{koreanAuthenticationRequired:!1,socialSecurityNumberMode:\"auto\"},data:{billingAddress:{}},disableIOSArrowKeys:!1,enableStoreDetails:!1,exposeExpiryDate:!1,forceCompat:!1,hasHolderName:!1,holderNameRequired:!1,hasCVC:!0,hideCVC:!1,installmentOptions:{},keypadFix:!0,legacyInputMode:!1,maskSecurityCode:!1,minimumExpiryDate:null,name:null,placeholders:{},positionHolderNameOnTop:!1,showBrandIcon:!0,showInstallmentAmounts:null,styles:{},trimTrailingSeparator:!0,isPayButtonPrimaryVariant:!0,showContextualElement:!0,onLoad:e=>{},onConfigSuccess:e=>{},onAllValid:e=>{},onFieldValid:e=>{},onBrand:e=>{},onError:e=>{},onBinValue:e=>{},onBlur:e=>{},onFocus:e=>{},onChange:()=>{}};export{o as default};\n//# sourceMappingURL=defaultProps.js.map\n","const o=11;export{o as CPF_LENGTH};\n//# sourceMappingURL=constants.js.map\n","import{CPF_LENGTH as r}from\"./constants.js\";function e(r){return r.replace(/\\W/gi,\"\").replace(/(\\d{3})(?!$)/g,\"$1.\").replace(/(.{11}).(\\d{1,2})$/g,\"$1-$2\")}function n(r){return r.replace(/^(\\d{2})(\\d{3})(\\d{3})?(\\d{4})?(\\d{1,2})?$/g,(r,e,n,t,$=\"\",c=\"\")=>`${e}.${n}.${t}/${$}${c.length?`-${c}`:\"\"}`)}function t(r){return r.replace(/[^0-9]/g,\"\").trim()}function $($=\"\"){if(\"string\"!=typeof $)return\"\";const c=t($);return c.length>r?n(c):e(c)}export{t as cleanCPFCNPJ,$ as formatCPFCNPJ,n as maskCNPJ,e as maskCPF};\n//# sourceMappingURL=utils.js.map\n","function d(d){return/(^\\d{3}\\.\\d{3}\\.\\d{3}-\\d{2}$)|(^\\d{2}\\.\\d{3}\\.\\d{3}\\/\\d{4}-\\d{2}$)/.test(d)}export{d as default};\n//# sourceMappingURL=validate.js.map\n","const t=(t,e,n,r)=>{if(t[n]?.[e]?.formatterFn)return null;const l=t[n]?.[e]?.maxlength;return l||30},e=t=>!(null!=t&&!/^[\\s]*$/.test(t)),n=\"?\\\\+_=!@#$%^&*(){}~<>\\\\[\\\\]\\\\\\\\\",r=(t,e=\"g\")=>new RegExp(`[${t}]`,e),l=t=>t.trim().replace(/\\s+/g,\" \");export{n as SPECIAL_CHARS,r as getFormattingRegEx,t as getMaxLengthByFieldAndCountry,e as isEmpty,l as trimValWithOneSpace};\n//# sourceMappingURL=validator-utils.js.map\n","import{formatCPFCNPJ as r}from\"../../../internal/SocialSecurityNumberBrazil/utils.js\";import e from\"../../../internal/SocialSecurityNumberBrazil/validate.js\";import{isEmpty as l}from\"../../../../utils/validator-utils.js\";import{CREDITCARD_HOLDER_NAME_INVALID as t,CREDITCARD_TAX_NUMBER_INVALID as a,BOLETO_SOCIAL_SECURITY_NUMBER_INVALID as i}from\"../../../../core/Errors/constants.js\";const o={socialSecurityNumber:r},s={socialSecurityNumber:[{modes:[\"blur\"],validate:r=>l(r)?null:e(r),errorMessage:i}],taxNumber:[{modes:[\"blur\"],validate:r=>l(r)?null:6===r?.length||10===r?.length,errorMessage:a}],holderName:[{modes:[\"blur\"],validate:r=>!l(r)||null,errorMessage:t}],default:[{modes:[\"blur\"],validate:r=>!!r&&\"string\"==typeof r&&r.trim().length>0}]},u=(r,e)=>{const l=s[r];return(Array.isArray(l)?l:[l]).reduce((r,l)=>(r.length||l.modes.includes(e)&&r.push(l.validate),r),[])[0]??(()=>!0)};export{o as cardInputFormatters,s as cardInputValidationRules,u as getRuleByNameAndMode};\n//# sourceMappingURL=validate.js.map\n","function d(d,e){const[a,n]=d;return{dualBrandSelectElements:[{id:a.brand,brandObject:a},{id:n.brand,brandObject:n}],selectedBrandValue:e?a.brand:\"\",leadBrand:a}}export{d as default};\n//# sourceMappingURL=createCardVariantSwitcher.js.map\n","const c=[\"cartebancaire\",\"bcmc\",\"dankort\"];export{c as DUAL_BRANDS_THAT_NEED_SELECTION_MECHANISM};\n//# sourceMappingURL=constants.js.map\n","import e from\"./createCardVariantSwitcher.js\";import{BRAND_ICON_UI_EXCLUSION_LIST as n}from\"../lib/constants.js\";import{requiresDualBrandSelection as r}from\"../../../Card/components/CardInput/utils.js\";import{DUAL_BRANDS_THAT_NEED_SELECTION_MECHANISM as s}from\"../../../Card/constants.js\";const t=(e,n)=>e.reduce((e,r)=>e||n.includes(r.brand),!1),o=e=>e.map(e=>({...e})),d=(e,n=\"mc\",r=\"visa\")=>{const s=o(e);return s[0].brand!==n&&s[0].brand!==r&&s.reverse(),s.length=1,s};function u(u,a,c,p={}){const{type:i,cvcPolicy:l}=u,{sfp:C}=a,{dualBrandSelectElements:B,setDualBrandSelectElements:g,setSelectedBrandValue:m,issuingCountryCode:b,setIssuingCountryCode:y}=c;return{processBinLookup:(u,a)=>{const c=u?.issuingCountryCode?u.issuingCountryCode.toLowerCase():null;if(y(c),!u||!Object.keys(u).length){g([]),m(\"\");const e=a&&\"card\"!==i?i:null;return C.current.processBinLookupResponse(u,{brand:e,cvcPolicy:l}),void(p.current=0)}if(u.supportedBrands?.length){const a=t(u.supportedBrands,n),c=a?d(u.supportedBrands):o(u.supportedBrands);if(c.length>1){const n=r(s,c,\"brand\"),t=e(c,n);g(t.dualBrandSelectElements),m(t.selectedBrandValue),C.current.processBinLookupResponse({issuingCountryCode:u.issuingCountryCode,supportedBrands:[t.leadBrand]}),t.leadBrand.panLength>0&&(p.current=t.leadBrand.panLength)}else g([]),m(\"\"),a||m(c[0].brand),C.current.processBinLookupResponse({issuingCountryCode:u.issuingCountryCode,supportedBrands:c}),c[0].panLength>0&&(p.current=c[0].panLength)}},handleDualBrandSelection:e=>{let n=[];e&&(n=B.reduce((n,r)=>(r.brandObject.brand===e&&n.push(r.brandObject),n),[]),n.length&&(m(e),C.current.processBinLookupResponse({issuingCountryCode:b,supportedBrands:n,isDualBrandSelection:!0})))}}}export{o as cloneBrandsArr,t as containsExcludedBrand,u as default,d as removeExcludedBrand};\n//# sourceMappingURL=extensions.js.map\n","function e(e,r,s){return r in e?Object.defineProperty(e,r,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[r]=s,e}class r{hasError(e=!1){return e?!this.isValid&&this.shouldValidate:null!=this.isValid&&!this.isValid&&this.shouldValidate}constructor(r,s,i,t,a){e(this,\"shouldValidate\",void 0),e(this,\"isValid\",void 0),e(this,\"errorMessage\",void 0),e(this,\"errorI18n\",void 0),this.shouldValidate=r.modes.includes(i),this.isValid=r.validate(s,t),this.errorMessage=r.errorMessage,\"string\"==typeof r.errorMessage?this.errorI18n=a.get(r.errorMessage):r.errorMessage&&(this.errorI18n=a.get(r.errorMessage.translationKey,r.errorMessage.translationObject))}}export{r as ValidationRuleResult};\n//# sourceMappingURL=ValidationRuleResult.js.map\n","import{ValidationRuleResult as t}from\"./ValidationRuleResult.js\";function r(t,r,e){return r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}class e{get isValid(){return this.validationResults.reduce((t,r)=>t&&r.isValid,!0)}hasError(t=!1){return Boolean(this.getError(t))}getError(t=!1){return this.validationResults.find(r=>r.hasError(t))}getAllErrors(){return this.validationResults.filter(t=>t.hasError())}constructor(t){r(this,\"validationResults\",void 0),this.validationResults=t}}class s{setRules(t){this.rules={...this.rules,...t}}getRulesFor(t){let r=this.rules[t]??this.rules.default;return Array.isArray(r)||(r=[r]),r}validate({key:r,value:s,mode:i=\"blur\"},l){const u=this.getRulesFor(r).map(r=>new t(r,s,i,l,this.i18n));return new e(u)}constructor(t,e){r(this,\"rules\",{default:{validate:()=>!0,modes:[\"blur\",\"input\"]}}),r(this,\"i18n\",void 0),this.setRules(t),this.i18n=e}}export{s as default};\n//# sourceMappingURL=Validator.js.map\n","const r=(r,e)=>Object.keys(r).filter(r=>!e.includes(r)).reduce((e,a)=>(e[a]=r[a],e),{}),e=(r,e,a,l,d)=>e.reduce((r,e)=>({...r,[e]:r[e]??d?.[e]??l?.[e]??a}),r);function a({schema:r,defaultData:e,processField:a,fieldProblems:l}){const d=r=>{if(void 0===e[r])return{valid:!1,errors:null,data:null,fieldProblems:l?.[r]??null};const[d,s]=a({key:r,value:e[r],mode:\"blur\"},{state:{data:e}});return{valid:s.isValid&&!l?.[r]||!1,errors:s.hasError()?s.getError():null,data:d,fieldProblems:l?.[r]??null}},s=r.reduce((r,e)=>{const{valid:a,errors:l,data:s,fieldProblems:t}=d(e);return{valid:{...r.valid,[e]:a},errors:{...r.errors,[e]:l},data:{...r.data,[e]:s},fieldProblems:{...r.fieldProblems,[e]:t}}},{data:{},valid:{},errors:{},fieldProblems:{}});return{schema:r,data:s.data,valid:s.valid,errors:s.errors,fieldProblems:s.fieldProblems}}function l(l){return function(d,{type:s,key:t,value:o,mode:i,schema:c,defaultData:u,formValue:n,selectedSchema:m,fieldProblems:v,data:f}){const b=m||d.schema;switch(s){case\"setData\":return{...d,data:{...d.data,[t]:o}};case\"mergeData\":return{...d,data:{...d.data,...f}};case\"setValid\":return{...d,valid:{...d.valid,[t]:o}};case\"setErrors\":return{...d,errors:{...d.errors,[t]:o}};case\"setFieldProblems\":return d?.schema?.reduce((r,e)=>({...r,fieldProblems:{...d.fieldProblems,[e]:v?.[e]??null},valid:{...d.valid,[e]:d.valid?.[e]&&!v[e]}}),d)??d;case\"updateField\":{const[r,e]=l({key:t,value:o,mode:i},{state:d}),a=d.data[t],s={...d.fieldProblems};return a!==r&&(s[t]=null),{...d,data:{...d.data,[t]:r},errors:{...d.errors,[t]:e.hasError()?e.getError():null},valid:{...d.valid,[t]:e.isValid&&!s[t]||!1},fieldProblems:s}}case\"mergeForm\":{const r={...d,data:{...d.data,...n.data},errors:{...d.errors,...n.errors},valid:{...d.valid,...n.valid},fieldProblems:{...d.fieldProblems,...n.fieldProblems}};return r.valid&&(r.isValid=Object.values(r.valid).every(r=>r)),r}case\"setSchema\":{const s=a({schema:c,defaultData:u,processField:l,fieldProblems:v}),t=d.schema.filter(r=>!c.includes(r)),o=c.filter(r=>!d.schema.includes(r)),i={data:r(d.data,o),errors:r(d.errors,o),valid:r(d.valid,o)},n=e(r(d.data,t),o,null,s.data,d.local?.data),m=e(r(d.valid,t),o,!1,s.valid,d.local?.valid),f=e(r(d.errors,t),o,null,s.errors,d.local?.errors);return{...d,schema:c,data:n,valid:m,errors:f,local:i}}case\"validateForm\":{const r=b.reduce((r,e)=>{const[,a]=l({key:e,value:d.data[e],mode:\"blur\"},{state:d});return{valid:{...r.valid,[e]:a.isValid&&!d.fieldProblems[e]||!1},errors:{...r.errors,[e]:a.hasError(!0)?a.getError(!0):null}}},{valid:d.valid,errors:d.errors});return{...d,valid:r.valid,errors:r.errors}}default:throw new Error(\"Undefined useForm action\")}}}export{l as getReducer,a as init};\n//# sourceMappingURL=reducer.js.map\n","import{useMemo as e,useReducer as a,useCallback as t,useEffect as r}from\"../../external/preact/hooks/dist/hooks.js\";import s from\"../Validator/Validator.js\";import{init as o,getReducer as l}from\"./reducer.js\";import{useCoreContext as m}from\"../../core/Context/CoreProvider.js\";function d(d){const{rules:i,formatters:c,defaultData:u,fieldProblems:f,schema:n}=d,p=i??{},y=c??{},h=u??{},v=f??{},g=n??[],{i18n:k}=m(),F=e(()=>new s(p,k),[p]),b=({key:e,value:a,mode:t},r)=>{const s=y?.[e],o=function(e){return e&&\"formatterFn\"in e}(s)?s.formatterFn:s,l=o&&\"function\"==typeof o?o(a??\"\",r):a;return[l,F.validate({key:e,value:l,mode:t},r)]},[P,D]=a(l(b),{defaultData:h,schema:g,processField:b,fieldProblems:v},o),V=e(()=>P.schema.reduce((e,a)=>e&&P.valid[a],!0),[P.schema,P.valid]),j=t((e=null)=>{D({type:\"validateForm\",selectedSchema:e})},[]),x=t((e,a)=>D({type:\"setErrors\",key:e,value:a}),[]),C=t((e,a)=>D({type:\"setValid\",key:e,value:a}),[]),S=t((e,a)=>D({type:\"setData\",key:e,value:a}),[]),E=t(e=>D({type:\"mergeData\",data:e}),[]),w=t(e=>D({type:\"setSchema\",schema:e,defaultData:h}),[P.schema]),J=t(e=>D({type:\"mergeForm\",formValue:e}),[]),M=t(e=>D({type:\"setFieldProblems\",fieldProblems:e}),[P.schema]);return r(()=>{M(v??{})},[JSON.stringify(v)]),{handleChangeFor:(e,a)=>t=>{const r=((e,a)=>a.target?\"checkbox\"===a.target.type?!P.data[e]:a.target.value:a)(e,t);D({type:\"updateField\",key:e,value:r,mode:a})},triggerValidation:j,setSchema:w,setData:S,mergeData:E,setValid:C,setErrors:x,isValid:V,mergeForm:J,setFieldProblems:M,schema:P.schema,valid:P.valid,errors:P.errors,data:P.data,fieldProblems:P.fieldProblems}}export{d as default};\n//# sourceMappingURL=useForm.js.map\n","import{ADDRESS_SPECIFICATIONS as e}from\"./constants.js\";class t{countryHasDataset(e){return!!this.specifications?.[e]?.hasDataset}countryHasOptionalField(e,t){return!!this.specifications?.[e]?.optionalFields?.includes(t)}getAddressSchemaForCountry(e){return this.specifications?.[e]?.schema||this.specifications.default.schema}getAddressLabelsForCountry(e){return this.specifications?.[e]?.labels||this.specifications.default.labels}getOptionalFieldsForCountry(e){return this.specifications?.[e]?.optionalFields||this.specifications.default?.optionalFields||[]}getKeyForField(e,t){return this.specifications?.[t]?.labels?.[e]||this.specifications?.default?.labels?.[e]||e}getPlaceholderKeyForField(e,t){return this.specifications?.[t]?.placeholders?.[e]||this.specifications?.default?.placeholders?.[e]}getAddressSchemaForCountryFlat(e){return this.getAddressSchemaForCountry(e).flat(2).filter(e=>\"string\"==typeof e)}constructor(t){var i,s,a;a=void 0,(s=\"specifications\")in(i=this)?Object.defineProperty(i,s,{value:a,enumerable:!0,configurable:!0,writable:!0}):i[s]=a,this.specifications={...e,...t}}}export{t as default};\n//# sourceMappingURL=Specifications.js.map\n","function e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,\"default\")?e.default:e}export{e as getDefaultExportFromCjs};\n//# sourceMappingURL=_commonjsHelpers.js.map\n","var e={exports:{}};export{e as __module};\n//# sourceMappingURL=index2.js.map\n","import{__module as r}from\"../../_virtual/index2.js\";\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/var t;function n(){return t||(t=1,n=r,function(){var r={}.hasOwnProperty;function t(){for(var r=\"\",t=0;t<arguments.length;t++){var n=arguments[t];n&&(r=o(r,e(n)))}return r}function e(n){if(\"string\"==typeof n||\"number\"==typeof n)return n;if(\"object\"!=typeof n)return\"\";if(Array.isArray(n))return t.apply(null,n);if(n.toString!==Object.prototype.toString&&!n.toString.toString().includes(\"[native code]\"))return n.toString();var e=\"\";for(var i in n)r.call(n,i)&&n[i]&&(e=o(e,i));return e}function o(r,t){return t?r?r+\" \"+t:r+t:r}n.exports?(t.default=t,n.exports=t):window.classNames=t}()),r.exports;var n}export{n as __require};\n//# sourceMappingURL=index.js.map\n","import{getDefaultExportFromCjs as e}from\"./_commonjsHelpers.js\";import{__require as r}from\"../external/classnames/index.js\";var s=e(r());export{s as default};\n//# sourceMappingURL=index.js.map\n","import{createElement as e}from\"../../../external/preact/dist/preact.js\";const n=({inline:n=!1,size:a=\"large\"})=>e(\"div\",{\"data-testid\":\"spinner\",className:\"adyen-checkout__spinner__wrapper \"+(n?\"adyen-checkout__spinner__wrapper--inline\":\"\")},e(\"div\",{className:`adyen-checkout__spinner adyen-checkout__spinner--${a}`}));export{n as default};\n//# sourceMappingURL=Spinner.js.map\n","import{createContext as e}from\"../../external/preact/dist/preact.js\";const s=e({srPanel:null,setSRMessagesFromObjects:null,setSRMessagesFromStrings:null,clearSRPanel:null,shouldMoveFocusSR:null});export{s as SRPanelContext};\n//# sourceMappingURL=SRPanelContext.js.map\n","import{useContext as t}from\"../../external/preact/hooks/dist/hooks.js\";import{SRPanelContext as o}from\"./SRPanelContext.js\";function e(){return t(o)}export{e as default};\n//# sourceMappingURL=useSRPanelContext.js.map\n","import{useEffect as t}from\"../../external/preact/hooks/dist/hooks.js\";import e from\"./useSRPanelContext.js\";const r=r=>{const{srPanel:s}=e();t(()=>{if(s)return s.setAriaProps({\"aria-relevant\":\"additions text\"}),()=>{s.setAriaProps({\"aria-relevant\":s.constructor.defaultProps.ariaAttributes[\"aria-relevant\"]})}},[s]),t(()=>{s&&void 0!==r&&s.setMessages(r)},[s,r])};export{r as useA11yReporter};\n//# sourceMappingURL=useA11yReporter.js.map\n","import{useRef as o}from\"../../external/preact/hooks/dist/hooks.js\";import{useCoreContext as r}from\"../Context/CoreProvider.js\";import{useA11yReporter as e}from\"./useA11yReporter.js\";const t=(t,s)=>{const{i18n:n}=r(),i=o(t);t&&(i.current=!0);const c=t?n.get(\"loading\"):s??(i.current?n.get(\"loaded\"):void 0);e(c)};export{t as useLoadingA11yReporter};\n//# sourceMappingURL=useLoadingA11yReporter.js.map\n","import{createElement as i}from\"../../../external/preact/dist/preact.js\";import n from\"../../../_virtual/index.js\";import r from\"../Spinner/Spinner.js\";import{useLoadingA11yReporter as o}from\"../../../core/Errors/useLoadingA11yReporter.js\";const e=({children:e,status:t})=>{o(\"loading\"===t);const a=n(\"adyen-checkout__loading-input__form\",\"loading-input__form\",{\"loading-input__form--loading\":\"loading\"===t}),s=n({\"loading-input__spinner\":!0,\"loading-input__spinner--active\":\"loading\"===t});return i(\"div\",{style:{position:\"relative\"}},i(\"div\",{className:s},i(r,null)),i(\"div\",{className:a},e))};export{e as default};\n//# sourceMappingURL=LoadingWrapper.js.map\n","import{createElement as t}from\"../../../../../external/preact/dist/preact.js\";import c from\"../../../../../_virtual/index.js\";function e({frontCVC:e=!1}){const _=c({\"adyen-checkout__card__cvc__hint__wrapper\":!0,\"adyen-checkout__field__cvc--front-hint\":!!e,\"adyen-checkout__field__cvc--back-hint\":!e});return t(\"span\",{className:_},t(\"svg\",{className:\"adyen-checkout__card__cvc__hint adyen-checkout__card__cvc__hint--front\",\"data-testid\":\"cvc-hint-front\",width:\"27\",height:\"18\",viewBox:\"0 0 27 18\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",\"aria-hidden\":!0},t(\"path\",{d:\"M0 3C0 1.34315 1.34315 0 3 0H24C25.6569 0 27 1.34315 27 3V15C27 16.6569 25.6569 18 24 18H3C1.34315 18 0 16.6569 0 15V3Z\",fill:\"#E6E9EB\"}),t(\"rect\",{x:\"4\",y:\"12\",width:\"19\",height:\"2\",fill:\"#B9C4C9\"}),t(\"rect\",{x:\"4\",y:\"4\",width:\"4\",height:\"4\",rx:\"1\",fill:\"white\"}),t(\"rect\",{className:\"adyen-checkout__card__cvc__hint__location\",x:\"16.5\",y:\"4.5\",width:\"7\",height:\"5\",rx:\"2.5\",stroke:\"#C12424\"})),t(\"svg\",{className:\"adyen-checkout__card__cvc__hint adyen-checkout__card__cvc__hint--back\",\"data-testid\":\"cvc-hint-back\",width:\"27\",height:\"18\",viewBox:\"0 0 27 18\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",\"aria-hidden\":!0},t(\"path\",{d:\"M27 4.00001V3.37501C27 2.4799 26.6444 1.62146 26.0115 0.988518C25.3786 0.355581 24.5201 0 23.625 0H3.375C2.47989 0 1.62145 0.355581 0.988514 0.988518C0.355579 1.62146 0 2.4799 0 3.37501V4.00001H27Z\",fill:\"#E6E9EB\"}),t(\"path\",{d:\"M0 6.99994V14.6666C0 15.5507 0.355579 16.3985 0.988514 17.0237C1.62145 17.6488 2.47989 18 3.375 18H23.625C24.5201 18 25.3786 17.6488 26.0115 17.0237C26.6444 16.3985 27 15.5507 27 14.6666V6.99994H0Z\",fill:\"#E6E9EB\"}),t(\"rect\",{y:\"4.00012\",width:\"27\",height:\"3.00001\",fill:\"#687282\"}),t(\"path\",{d:\"M4 11C4 10.4477 4.44772 10 5 10H21C22.1046 10 23 10.8954 23 12C23 13.1046 22.1046 14 21 14H5C4.44771 14 4 13.5523 4 13V11Z\",fill:\"white\"}),t(\"rect\",{className:\"adyen-checkout__card__cvc__hint__location\",x:\"16.5\",y:\"9.5\",width:\"7\",height:\"5\",rx:\"2.5\",stroke:\"#C12424\"})))}export{e as default};\n//# sourceMappingURL=CVCHint.js.map\n","import{useState as e,useRef as a,useEffect as r}from\"../../../external/preact/hooks/dist/hooks.js\";import t from\"../../../_virtual/index.js\";import{createElement as o}from\"../../../external/preact/dist/preact.js\";function s(s){const{backgroundUrl:c=\"\",className:n=\"\",classNameModifiers:l=[],src:m=\"\",alt:d=\"\",showOnError:i=!1}=s,[u,f]=e(!1),p=a(null),g=()=>{f(!0)},k=t([n],\"adyen-checkout__image\",{\"adyen-checkout__image--loaded\":u},...l.map(e=>`adyen-checkout__image--${e}`));return r(()=>{const e=c?new Image:p.current;e.src=c||m,e.onload=g,f(!!e.complete)},[]),c?o(\"div\",{\"data-testid\":\"background\",style:{backgroundUrl:c},...s,className:k}):o(\"img\",{...s,alt:d,ref:p,className:k,onError:e=>{f(i),s?.onError?.(e)}})}export{s as default};\n//# sourceMappingURL=Img.js.map\n","import{createElement as t}from\"../../../external/preact/dist/preact.js\";import e from\"../../../_virtual/index.js\";import r from\"../../../core/Context/useImage.js\";import o from\"../Img/Img.js\";const a=({type:a,className:m=\"\",alt:s=\"\",height:c,width:i})=>{const n=r(),l=n({imageFolder:\"components/\"})?.(a);return t(o,{className:e(\"adyen-checkout__icon\",m),alt:s,src:l,height:c,width:i})};export{a as default};\n//# sourceMappingURL=Icon.js.map\n","let e=Date.now();const t=(t=\"field\")=>(e+=1,`${t}-${e}`);export{t as getUniqueId};\n//# sourceMappingURL=idGenerator.js.map\n","const o=\"bento_\";export{o as PREFIX};\n//# sourceMappingURL=constants.js.map\n","import e from\"../../../../_virtual/index.js\";import{createElement as a,Fragment as n,toChildArray as t,cloneElement as l}from\"../../../../external/preact/dist/preact.js\";import i from\"../../Spinner/Spinner.js\";import o from\"../../Icon/Icon.js\";import{ARIA_ERROR_SUFFIX as r,ARIA_CONTEXT_SUFFIX as d}from\"../../../../core/Errors/constants.js\";import{useRef as s,useMemo as c,useState as u,useCallback as m}from\"../../../../external/preact/hooks/dist/hooks.js\";import{getUniqueId as p}from\"../../../../utils/idGenerator.js\";import{PREFIX as _}from\"../../Icon/constants.js\";import h from\"../../../../utils/uuid.js\";const f=f=>{const{children:k,className:y,classNameModifiers:b,dir:v,disabled:x,readOnly:E,errorMessage:N,helper:F,inputWrapperModifiers:$,isLoading:g,isValid:L,label:j,labelEndAdornment:w,name:I,onBlur:C,onFieldBlur:A,onFocus:M,onFocusField:S,showValidIcon:T,useLabelElement:V,showErrorElement:q,showContextualElement:B,staticValue:H,contextualText:R,filled:W,focused:z,i18n:G,contextVisibleToScreenReader:O,renderAlternativeToLabel:P,onInputContainerClick:D,errorLive:J}=f,K=O??!0,Q=q&&\"string\"==typeof N&&N.length>0,U=B&&!Q&&R&&R.length>0,X=s(p(`adyen-checkout-${I}`)),Y=c(()=>H?`input-static-value-${h()}`:null,[H]),[Z,ee]=u(!1),[ae,ne]=u(!1);null!=z&&ee(!!z),null!=W&&ne(!!W);const te=m(e=>{ee(!0),M?.(e)},[M]),le=m(e=>{ee(!1),C?.(e),A?.(e)},[C,A]),ie=m(()=>a(n,null,\"string\"==typeof j&&a(\"span\",{className:e({\"adyen-checkout__label__text\":!0,\"adyen-checkout__label__text--error\":N}),\"data-id\":I,\"data-testid\":I},j),\"function\"==typeof j&&j(),w&&a(\"span\",{className:\"adyen-checkout__label-adornment--end\"},w),F&&a(\"span\",{className:\"adyen-checkout__helper-text\"},F)),[j,N,w,F]),oe=m(()=>{const s=a(\"span\",{className:e({\"adyen-checkout-contextual-text--error\":!0,\"adyen-checkout-contextual-text--hidden\":!Q}),...K&&{id:`${X.current}${r}`},\"aria-hidden\":K?void 0:\"true\",...K&&J&&{\"aria-live\":\"polite\"}},N),c=a(\"span\",{className:e({\"adyen-checkout-contextual-text\":!0,\"adyen-checkout-contextual-text--hidden\":!U}),...K&&{id:`${X.current}${d}`},\"aria-hidden\":K?void 0:\"true\"},R);return a(n,null,a(\"div\",{className:e([\"adyen-checkout__input-wrapper\",...$.map(e=>`adyen-checkout__input-wrapper--${e}`)]),dir:v,onClick:D},H&&a(\"span\",{id:Y,className:\"adyen-checkout__field-static-value\"},H),t(k).map(e=>{const a={isValid:L,onFocusHandler:te,onBlurHandler:le,isInvalid:!!N,\"aria-owns\":Y,...I&&{uniqueId:X.current},showErrorElement:q};return l(e,a)}),g&&a(\"span\",{className:\"adyen-checkout-input__inline-validation adyen-checkout-input__inline-validation--loading\"},a(i,{size:\"small\"})),L&&!1!==T&&a(\"span\",{className:\"adyen-checkout-input__inline-validation adyen-checkout-input__inline-validation--valid\"},a(o,{type:`${_}checkmark_black`,alt:G?.get(\"field.valid\")})),N&&a(\"span\",{className:\"adyen-checkout-input__inline-validation adyen-checkout-input__inline-validation--invalid\"},a(o,{type:`${_}field_error`,alt:G?.get(\"error.title\")}))),s,c)},[k,N,R,g,L,te,le]),re=m(({onFocusField:n,focused:t,filled:l,disabled:i,name:o,uniqueId:r,useLabelElement:d,isSecuredField:s,children:c,renderAlternativeToLabel:u})=>{const m={onClick:n,className:e({\"adyen-checkout__label\":!0,\"adyen-checkout__label--focused\":t,\"adyen-checkout__label--filled\":l,\"adyen-checkout__label--disabled\":i})};return d?a(\"label\",{...m,...!s&&o&&{htmlFor:r,id:`${r}-label`}},c):u(m,c,r)},[]);return a(\"div\",{\"data-testid\":\"form-field\",className:e(\"adyen-checkout__field\",y,b?.map(e=>`adyen-checkout__field--${e}`),{\"adyen-checkout__field--error\":N,\"adyen-checkout__field--valid\":L,\"adyen-checkout__field--inactive\":E||x})},a(re,{onFocusField:S,name:I,disabled:x,filled:ae,focused:Z,useLabelElement:V,uniqueId:X.current,isSecuredField:!K,renderAlternativeToLabel:P},ie()),oe())};f.defaultProps={className:\"\",classNameModifiers:[],inputWrapperModifiers:[],useLabelElement:!0,showErrorElement:!0,showContextualElement:!0,renderAlternativeToLabel:()=>null};export{f as default};\n//# sourceMappingURL=Field.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import{DATA_UID as t,DATA_INFO as a,DATA_ENCRYPTED_FIELD_ATTR as n}from\"../../../../internal/SecuredFields/lib/constants.js\";function r(r){const s={[n]:r.encryptedFieldType,[a]:r[\"data-info\"],[t]:r.uniqueId,className:r.className};return e(\"span\",s,r.children)}export{r as default};\n//# sourceMappingURL=DataSfSpan.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";const t=(t,r)=>e(\"div\",{...t,\"aria-hidden\":\"true\"},r);export{t as alternativeLabelContent};\n//# sourceMappingURL=FieldLabelAlternative.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import t from\"../../../../../_virtual/index.js\";import o from\"./CVCHint.js\";import i from\"../../../../internal/FormFields/Field/Field.js\";import{useCoreContext as r}from\"../../../../../core/Context/CoreProvider.js\";import{CVC_POLICY_REQUIRED as n,CVC_POLICY_OPTIONAL as a,CVC_POLICY_HIDDEN as c,ENCRYPTED_SECURITY_CODE as l}from\"../../../../internal/SecuredFields/lib/constants.js\";import d from\"./DataSfSpan.js\";import{alternativeLabelContent as s}from\"./FieldLabelAlternative.js\";import{resolveCVCErrorKey as u}from\"../utils.js\";function _(_){const{label:m,onFocusField:p=()=>{},errorCode:f=\"\",className:C=\"\",classNameModifiers:y=[],focused:h,filled:x,isValid:F,frontCVC:k=!1,cvcPolicy:v=n,showContextualElement:j,contextualText:b}=_,{i18n:V}=r(),N=f?V.get(u(f,k)):\"\",T=t(C,{\"adyen-checkout__field__cvc\":!0,\"adyen-checkout__card__cvc__input--hidden\":v===c,\"adyen-checkout__field__cvc--optional\":v===a}),E=t({\"adyen-checkout__input\":!0,\"adyen-checkout__input--small\":!0,\"adyen-checkout__card__cvc__input\":!0,\"adyen-checkout__input--error\":N,\"adyen-checkout__input--focus\":h,\"adyen-checkout__input--valid\":F}),S=v!==a?m:V.get(\"creditCard.securityCode.label.optional\");return e(i,{label:S,focused:h,filled:x,classNameModifiers:[...y,\"securityCode\"],onFocusField:()=>p(l),className:T,errorMessage:N,isValid:F,dir:\"ltr\",name:l,i18n:V,contextVisibleToScreenReader:!1,useLabelElement:!1,renderAlternativeToLabel:s,showContextualElement:j,contextualText:b,onInputContainerClick:()=>{p(l)}},e(d,{encryptedFieldType:l,className:E}),e(o,{frontCVC:k}))}export{_ as default};\n//# sourceMappingURL=CVC.js.map\n","import{createElement as e}from\"../../../external/preact/dist/preact.js\";import{useCallback as o}from\"../../../external/preact/hooks/dist/hooks.js\";import n from\"../../../_virtual/index.js\";import{ARIA_ERROR_SUFFIX as a,ARIA_CONTEXT_SUFFIX as t}from\"../../../core/Errors/constants.js\";import{trimValWithOneSpace as r}from\"../../../utils/validator-utils.js\";function l({setRef:l,...i}){const{autoCorrect:s,classNameModifiers:u,isInvalid:d,isValid:c,readonly:p=null,spellcheck:m,type:y,uniqueId:f,disabled:h}=i,_=i.className;Object.prototype.hasOwnProperty.call(i,\"onChange\")&&console.error(\"Error: Form fields that rely on InputBase may not have an onChange property\");const k=o(e=>{i.onInput?.(e)},[i.onInput]),v=o(e=>{i?.onKeyDown&&i.onKeyDown(e)},[i?.onKeyDown]),b=o(e=>{if(i?.onBlurHandler?.(e),i.trimOnBlur){const o=e.target;o.value=r(o.value)}i?.onBlur?.(e)},[i.onBlur,i.onBlurHandler]),B=o(e=>{i?.onFocusHandler?.(e)},[i.onFocusHandler]),I=n(\"adyen-checkout__input\",[`adyen-checkout__input--${y}`],_,{\"adyen-checkout__input--invalid\":d,\"adyen-checkout__input--valid\":c},(u??[]).map(e=>`adyen-checkout__input--${e}`)),{classNameModifiers:j,uniqueId:x,isInvalid:C,isValid:w,addContextualElement:N,\"aria-describedby\":g,autocomplete:q,...D}=i,E=[\"string\"==typeof g&&g?g:null,f?`${f}${d?a:t}`:null].filter(Boolean).join(\" \")||null;return e(\"input\",{id:f,...D,autocomplete:q,\"aria-required\":D.required,type:y,className:I,readOnly:p,spellcheck:m,autoCorrect:s,\"aria-describedby\":E,\"aria-invalid\":d,onInput:k,onBlur:b,onFocus:B,onKeyDown:v,disabled:h,ref:l})}l.defaultProps={type:\"text\",classNameModifiers:[]};export{l as default};\n//# sourceMappingURL=InputBase.js.map\n","import{createElement as e}from\"../../../external/preact/dist/preact.js\";import r from\"./InputBase.js\";function t(t){return e(r,{classNameModifiers:[\"large\"],...t,\"aria-required\":t.required,type:\"text\"})}export{t as default};\n//# sourceMappingURL=InputText.js.map\n","import{createElement as e}from\"../../../../external/preact/dist/preact.js\";import t from\"../../../../_virtual/index.js\";import{useCoreContext as s}from\"../../../../core/Context/CoreProvider.js\";import{getUniqueId as i}from\"../../../../utils/idGenerator.js\";import{useMemo as d}from\"../../../../external/preact/hooks/dist/hooks.js\";function a({children:a,classNameModifiers:o=[],classNamesFields:r=[],label:c,readonly:l=!1,description:n,id:_,renderLabelAsSectionHeading:m=!1,descriptionId:f}){const{i18n:p}=s(),u=d(()=>i(\"fieldset-description\"),[]),h=f??u;return e(\"fieldset\",{id:_,className:t([\"adyen-checkout__fieldset\",...o.map(e=>`adyen-checkout__fieldset--${e}`),{\"adyen-checkout__fieldset--readonly\":l}])},c&&e(\"legend\",{className:\"adyen-checkout__fieldset__title\"},m?e(\"h2\",{className:\"adyen-checkout__fieldset__title-heading\"},p.get(c)):p.get(c)),n&&e(\"p\",{id:h,className:\"adyen-checkout__fieldset__description\"},p.get(n)),e(\"div\",{className:t(\"adyen-checkout__fieldset__fields\",r)},a))}export{a as default};\n//# sourceMappingURL=Fieldset.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import t from\"./CVC.js\";import r from\"../../../../internal/FormFields/Field/Field.js\";import{useCoreContext as d}from\"../../../../../core/Context/CoreProvider.js\";import{ENCRYPTED_SECURITY_CODE as a}from\"../../../../internal/SecuredFields/lib/constants.js\";import i from\"../../../../internal/FormFields/InputText.js\";import o from\"../../../../internal/FormFields/Fieldset/Fieldset.js\";function c({brand:c,hasCVC:l,onFocusField:s,errors:n,valid:u,cvcPolicy:m,focusedElement:p,lastFour:C,expiryMonth:y,expiryYear:_,showContextualElement:x}){const{i18n:F}=d(),f=`${F.get(\"creditCard.storedCard.description.ariaLabel\").replace(\"%@\",C)}${y&&_?` ${F.get(\"creditCard.expiryDate.label\")} ${y}/${_}`:\"\"}`,b=\"amex\"===c,h=b?F.get(\"creditCard.securityCode.contextualText.4digits\"):F.get(\"creditCard.securityCode.contextualText.3digits\");return e(\"div\",{className:\"adyen-checkout__card__form adyen-checkout__card__form--oneClick\",\"aria-label\":f},e(o,{classNamesFields:[\"adyen-checkout__card__exp-cvc\"]},y&&_&&e(r,{label:F.get(\"creditCard.expiryDate.label\"),classNameModifiers:[\"col-50\",\"storedCard\"],name:\"expiryDateField\",disabled:!0},e(i,{name:\"expiryDateField\",className:\"adyen-checkout__input adyen-checkout__input--disabled adyen-checkout__card__exp-date__input--oneclick\",value:`${y} / ${_}`,disabled:!0,dir:\"ltr\",autocomplete:void 0})),l&&e(t,{cvcPolicy:m,errorCode:n[a],focused:\"encryptedSecurityCode\"===p,filled:!!u.encryptedSecurityCode||!!n.encryptedSecurityCode,isValid:!!u.encryptedSecurityCode,label:F.get(\"creditCard.securityCode.label\"),onFocusField:s,classNameModifiers:[...y&&_?[\"col-50\",\"storedCard\"]:[\"storedCard\"]],frontCVC:b,showContextualElement:x,contextualText:h})))}export{c as default};\n//# sourceMappingURL=StoredCardFields.js.map\n","import{createElement as e}from\"../../../../external/preact/dist/preact.js\";import a from\"../../../../_virtual/index.js\";import{getUniqueId as o}from\"../../../../utils/idGenerator.js\";import{useCoreContext as r}from\"../../../../core/Context/CoreProvider.js\";function t(t){const{items:i,name:n,onChange:l,value:c,isInvalid:d,uniqueId:_,ariaLabel:s,style:u=\"classic\"}=t,{i18n:p}=r(),m=_?.replace(/[0-9]/g,\"\").substring(0,_.lastIndexOf(\"-\"));return e(\"div\",{className:a([\"adyen-checkout__radio_group\",`adyen-checkout__radio_group--${u}`]),role:\"radiogroup\",...s&&{\"aria-label\":s}},i.map(r=>{const i=o(m);return e(\"div\",{key:r.id,className:\"adyen-checkout__radio_group__input-wrapper\"},e(\"input\",{id:i,type:\"radio\",checked:c===r.id,className:\"adyen-checkout__radio_group__input\",name:n,onChange:l,onClick:l,value:r.id}),e(\"label\",{className:a([\"adyen-checkout__label__text\",\"adyen-checkout__radio_group__label\",t.className,{\"adyen-checkout__radio_group__label--invalid\":d}]),htmlFor:i},p.get(r.name)))}))}t.defaultProps={onChange:()=>{},items:[],autocomplete:void 0};export{t as default};\n//# sourceMappingURL=RadioGroup.js.map\n","var _={tag:\"Tag-module_tag__zTym4\",success:\"Tag-module_success__UU5x9\",info:\"Tag-module_info__iyn3C\"};export{_ as default};\n//# sourceMappingURL=Tag.module.scss.js.map\n","var n=function(n){return n.SUCCESS=\"success\",n.INFO=\"info\",n}({});export{n as TagVariant};\n//# sourceMappingURL=types.js.map\n","import{createElement as s}from\"../../../external/preact/dist/preact.js\";import t from\"../../../_virtual/index.js\";import e from\"./Tag.module.scss.js\";import{TagVariant as r}from\"./types.js\";const a={[r.SUCCESS]:e.success,[r.INFO]:e.info},o=({label:o,variant:m=r.INFO})=>s(\"span\",{className:t(e.tag,a[m])},o);export{o as Tag};\n//# sourceMappingURL=Tag.js.map\n","var t={tagList:\"TagList-module_tagList__qCdT0\"};export{t as default};\n//# sourceMappingURL=TagList.module.scss.js.map\n","import{createElement as a}from\"../../../external/preact/dist/preact.js\";import t from\"../../../_virtual/index.js\";import{Tag as e}from\"./Tag.js\";import s from\"./TagList.module.scss.js\";const r=({tags:r,className:l})=>r?.length?a(\"div\",{className:t(s.tagList,l)},r.map((t,s)=>a(e,{key:`${s}-${t.label}`,label:t.label,variant:t.variant}))):null;export{r as TagList};\n//# sourceMappingURL=TagList.js.map\n","import{createElement as e,Fragment as t}from\"../../../../../external/preact/dist/preact.js\";import a from\"../../../../../_virtual/index.js\";import o from\"../../../Img/Img.js\";import{TagList as d}from\"../../../Tag/TagList.js\";import{useMemo as n}from\"../../../../../external/preact/hooks/dist/hooks.js\";function i({filterable:t,toggleButtonRef:a,showList:o,selectListId:d,readonly:n,...i}){if(t){const{id:t,...o}=i;return e(\"div\",{...o,ref:a})}return e(\"button\",{role:\"combobox\",type:\"button\",id:i.id,className:i.className,\"aria-haspopup\":\"listbox\",\"aria-expanded\":o,\"aria-controls\":d,\"aria-activedescendant\":i[\"aria-activedescendant\"]||void 0,disabled:i.disabled,\"aria-disabled\":n,\"aria-describedby\":i[\"aria-describedby\"],\"aria-labelledby\":i.id?`${i.id}-label ${i.id}-value`:void 0,onClick:i.onClick,onKeyDown:i.onKeyDown,ref:a},i.children)}function r(r){const{active:l,selected:s,inputText:c,readonly:u,showList:_,required:p}=r,b=n(()=>{const e=s.selectedOptionName||s.name;return!0!==(\"string\"==typeof e&&\"\"!==e.trim())},[s,r.placeholder]),m=s.selectedOptionName||s.name||r.placeholder||\"\",y=_?c??\"\":m,f=e=>{e.preventDefault(),r.filterInputRef.current?.focus(),e.target===r.filterInputRef.current&&r.showList||r.toggleList(e)},h=l.id?`listItem-${l.id}`:\"\";return e(i,{className:a({\"adyen-checkout__dropdown__button\":!0,\"adyen-checkout__dropdown__button--readonly\":u,\"adyen-checkout__dropdown__button--active\":_,\"adyen-checkout__dropdown__button--invalid\":r.isInvalid,\"adyen-checkout__dropdown__button--valid\":r.isValid,\"adyen-checkout__dropdown__button--disabled\":s.disabled}),disabled:r.disabled,filterable:r.filterable,readonly:u,onClick:u?null:r.filterable?f:r.toggleList,onKeyDown:u?null:r.onButtonKeyDown,toggleButtonRef:r.toggleButtonRef,id:r.id,showList:_,selectListId:r.selectListId,\"aria-activedescendant\":!r.filterable&&_&&h||void 0,\"aria-describedby\":r.ariaDescribedBy},r.filterable?e(t,null,!_&&s.icon&&e(o,{className:\"adyen-checkout__dropdown__button__icon\",src:s.icon,alt:s.name}),e(\"input\",{value:y,\"aria-autocomplete\":\"list\",\"aria-controls\":r.selectListId,\"aria-expanded\":_,\"aria-owns\":r.selectListId,autoComplete:\"off\",className:a(\"adyen-checkout__filter-input\",{\"adyen-checkout__filter-input--placeholder\":!_&&b}),onInput:r.onInput,ref:r.filterInputRef,role:\"combobox\",\"aria-activedescendant\":h,type:\"text\",readOnly:r.readonly,\"aria-disabled\":r.readonly,id:r.id,\"aria-describedby\":r.ariaDescribedBy,required:p}),!_&&e(d,{tags:s.tags,className:\"adyen-checkout__dropdown__button__tags\"})):e(t,null,s.icon&&e(o,{className:\"adyen-checkout__dropdown__button__icon\",src:s.icon,alt:s.name}),e(\"span\",{id:r.id?`${r.id}-value`:void 0,className:a(\"adyen-checkout__dropdown__button__text\",{\"adyen-checkout__dropdown__button__text-placeholder\":b})},m),e(d,{tags:s.tags,className:\"adyen-checkout__dropdown__button__tags\"})))}export{r as default};\n//# sourceMappingURL=SelectButton.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import a from\"../../../../../_virtual/index.js\";import t from\"../../../Img/Img.js\";import o from\"../../../Icon/Icon.js\";import{PREFIX as d}from\"../../../Icon/constants.js\";import{TagList as n}from\"../../../Tag/TagList.js\";const c=({item:c,active:_,selected:s,...r})=>e(\"li\",{\"aria-disabled\":!!c.disabled,\"aria-selected\":s,className:a([\"adyen-checkout__dropdown__element\",{\"adyen-checkout__dropdown__element--active\":_,\"adyen-checkout__dropdown__element--disabled\":!!c.disabled}]),\"data-disabled\":!0===c.disabled||null,\"data-value\":c.id,onClick:r.onSelect,onMouseEnter:r.onHover,role:\"option\",id:`listItem-${c.id}`},e(\"div\",{className:\"adyen-checkout__dropdown__element__content\"},e(\"div\",{className:\"adyen-checkout__dropdown__element__primary\"},c.icon&&e(t,{className:\"adyen-checkout__dropdown__element__icon\",alt:c.name,src:c.icon}),e(\"span\",{className:\"adyen-checkout__dropdown__element__text\"},c.name)),c.secondaryText&&e(\"span\",{className:\"adyen-checkout__dropdown__element__secondary-text\"},c.secondaryText)),e(n,{tags:c.tags,className:\"adyen-checkout__dropdown__element__tags\"}),s&&e(o,{type:`${d}checkmark_black`,height:14,width:14}));export{c as default};\n//# sourceMappingURL=SelectListItem.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import t from\"../../../../../_virtual/index.js\";import o from\"./SelectListItem.js\";import{useCoreContext as i}from\"../../../../../core/Context/CoreProvider.js\";function n({selected:n,active:r,filteredItems:d,showList:s,...c}){const{i18n:l}=i();return e(\"ul\",{className:t({\"adyen-checkout__dropdown__list\":!0,\"adyen-checkout__dropdown__list--active\":s}),id:c.selectListId,ref:c.selectListRef,role:\"listbox\"},d.length?d.map(t=>e(o,{active:t.id===r.id,item:t,key:t.id,onSelect:c.onSelect,onHover:c.onHover,selected:t.id===n.id})):e(\"li\",null,e(\"div\",{className:\"adyen-checkout__dropdown__element adyen-checkout__dropdown__element--no-options\"},l.get(\"select.noOptionsFound\"))))}export{n as default};\n//# sourceMappingURL=SelectList.js.map\n","const r={arrowDown:\"ArrowDown\",arrowUp:\"ArrowUp\",enter:\"Enter\",escape:\"Escape\",space:\" \",tab:\"Tab\"};export{r as keys};\n//# sourceMappingURL=constants.js.map\n","const o=o=>{const t=o.parentNode,e=window.getComputedStyle(t,null),p=parseInt(e.getPropertyValue(\"border-top-width\")),l=o.offsetTop-t.offsetTop<t.scrollTop,f=o.offsetTop-t.offsetTop+o.clientHeight-p>t.scrollTop+t.clientHeight;(l||f)&&(t.scrollTop=o.offsetTop-t.offsetTop-t.clientHeight/2-p+o.clientHeight/2)};export{o as simulateFocusScroll};\n//# sourceMappingURL=utils.js.map\n","const e=e=>{\"Enter\"!==e.key&&\"Enter\"!==e.code&&\" \"!==e.key&&\"Space\"!==e.code||e.stopPropagation()};export{e as stopPropagationForActionKeys};\n//# sourceMappingURL=stopPropagationForActionKeys.js.map\n","import{createElement as e}from\"../../../../external/preact/dist/preact.js\";import{useRef as t,useState as n,useMemo as r,useEffect as o}from\"../../../../external/preact/hooks/dist/hooks.js\";import s from\"../../../../_virtual/index.js\";import l from\"./components/SelectButton.js\";import a from\"./components/SelectList.js\";import i from\"../../../../utils/uuid.js\";import{keys as c}from\"./constants.js\";import{ARIA_ERROR_SUFFIX as u,ARIA_CONTEXT_SUFFIX as d}from\"../../../../core/Errors/constants.js\";import{simulateFocusScroll as m}from\"../utils.js\";import{useCoreContext as f}from\"../../../../core/Context/CoreProvider.js\";import{stopPropagationForActionKeys as p}from\"../../Button/stopPropagationForActionKeys.js\";function g({items:g=[],className:v=\"\",classNameModifiers:h=[],filterable:y=!0,readonly:b=!1,onChange:k=()=>{},onInput:w,selectedValue:I,name:L,isInvalid:j,isValid:D,placeholder:x,uniqueId:T,disabled:_,disableTextFilter:B,clearOnSelect:C,blurOnClose:E,onListToggle:N,required:P,additionalDescribedBy:S}){const{i18n:$}=f(),M=t(null),R=t(null),q=t(null),A=t(null),[F,K]=n(null),[O,V]=n(!1),[H,U]=n(null),z=r(()=>`select-${i()}`,[]),G=g.find(e=>e.id===I)||{},[J,Q]=n(),[W,X]=n(G),Y=G,Z=B?g:g.filter(e=>!F||e.name.toLowerCase().includes(F.toLowerCase())),ee=[T?`${T}${j?u:d}`:null,S].filter(Boolean).join(\" \")||null,te=e=>{if(!e)return;const t=document.getElementById(`listItem-${e.id}`);m(t)},ne=()=>{E&&M.current.blur(),V(!1)},re=()=>{V(!0)},oe=e=>{const t=e.currentTarget.getAttribute(\"data-value\");return Z.find(e=>e.id==t)},se=e=>{let t;e.preventDefault(),t=e.currentTarget instanceof HTMLElement&&\"option\"===e.currentTarget.getAttribute(\"role\")?oe(e):W.id&&Z.some(e=>e.id===W.id)?W:F?Z[0]:{id:I},t&&!t.disabled&&(k({target:{value:t.id,name:L}}),C&&Q(null),ne())},le=e=>{switch(e.key){case c.space:case c.enter:se(e);break;case c.arrowDown:e.preventDefault(),(()=>{if(!Z||Z.length<1)return;const e=Z.findIndex(e=>e.id===W.id)+1,t=e<Z.length?e:0,n=Z[t];te(n),X(n)})();break;case c.arrowUp:e.preventDefault(),(()=>{if(!Z||Z.length<1)return;const e=Z.findIndex(e=>e.id===W.id)-1,t=e<0?Z.length-1:e,n=Z[t];te(n),X(n)})()}};return o(()=>{O?Q(null):K(null)},[O]),o(()=>{O&&y&&M.current&&M.current.focus(),N?.(O)},[O]),o(()=>{function e(e){(e.composedPath?!e.composedPath().includes(R.current):!R.current.contains(e.target))&&ne()}return document.addEventListener(\"click\",e,!1),()=>{document.removeEventListener(\"click\",e,!1)}},[R]),o(()=>{const e=setTimeout(()=>{0===Z.length?U($.get(\"select.noOptionsFound\")):U($.get(\"select.results\",{values:{count:Z.length}}))},500);return()=>clearTimeout(e)},[O,Z.length,$]),e(\"div\",{className:s([\"adyen-checkout__dropdown\",v,...h.map(e=>`adyen-checkout__dropdown--${e}`)]),ref:R},e(l,{inputText:J,id:T??null,active:W,selected:Y,filterInputRef:M,filterable:y,isInvalid:j,isValid:D,onButtonKeyDown:e=>{p(e),e.key===c.enter&&y&&O&&F?se(e):e.key===c.escape?ne():![c.arrowUp,c.arrowDown,c.enter].includes(e.key)&&(e.key!==c.space||y&&O)?(e.shiftKey&&e.key===c.tab||e.key===c.tab)&&ne():(e.preventDefault(),O?le(e):re())},onInput:e=>{const t=e.target.value;Q(t),K(t),O||re(),w&&w(t)},placeholder:x,readonly:b,selectListId:z,showList:O,toggleButtonRef:q,toggleList:e=>{e.preventDefault(),O?(Q(Y.name),ne()):(Q(null),re())},disabled:_,ariaDescribedBy:ee,required:P}),e(a,{active:W,filteredItems:Z,onHover:e=>{e.preventDefault();const t=oe(e);X(t)},onSelect:se,selected:Y,selectListId:z,selectListRef:A,showList:O}),e(\"div\",{key:J,role:\"status\",\"aria-live\":\"polite\",\"aria-relevant\":\"additions text\",className:\"adyen-checkout__dropdown__status\"},H))}g.defaultProps={className:\"\",classNameModifiers:[],filterable:!0,items:[],readonly:!1,onChange:()=>{}};export{g as default};\n//# sourceMappingURL=Select.js.map\n","import{createContext as e,createElement as t,Fragment as o}from\"../../external/preact/dist/preact.js\";import{useContext as r,useState as n,useEffect as s,useImperativeHandle as a,useMemo as u}from\"../../external/preact/hooks/dist/hooks.js\";const m=e(void 0),i=()=>{const e=r(m);if(!e)throw new Error(\"useAmount must be used within an AmountProvider\");return{amount:e.amount,isZeroAuth:0===e.amount?.value}},c=()=>{const e=r(m);if(!e)throw new Error(\"useAmount must be used within an AmountProvider\");return{secondaryAmount:e.secondaryAmount}},d=({amount:e,secondaryAmount:i,providerRef:c,children:d})=>{const l=r(m),[p,A]=n(e),[h,v]=n(i);s(()=>{A(e)},[e]),a(c,()=>({update:(e,t)=>{A(e),v(t)}}));const f=u(()=>({amount:p,secondaryAmount:h}),[p,h]);return l?t(o,null,d):t(m.Provider,{value:f},d)};export{d as AmountProvider,i as useAmount,c as useSecondaryAmount};\n//# sourceMappingURL=AmountProvider.js.map\n","import{createElement as e}from\"../../../../../../external/preact/dist/preact.js\";import{useState as l,useMemo as n,useEffect as t}from\"../../../../../../external/preact/hooks/dist/hooks.js\";import a from\"../../../../../internal/FormFields/Field/Field.js\";import{useCoreContext as s}from\"../../../../../../core/Context/CoreProvider.js\";import i from\"../../../../../internal/FormFields/Fieldset/Fieldset.js\";import o from\"../../../../../internal/FormFields/RadioGroup/RadioGroup.js\";import m from\"../../../../../internal/FormFields/Select/Select.js\";import{alternativeLabelContent as r}from\"../FieldLabelAlternative.js\";import{useAmount as u}from\"../../../../../../core/Context/AmountProvider.js\";function d(d){const{i18n:v}=s(),{amount:c}=u(),{brand:p,onChange:b,type:g}=d,f=d.installmentOptions[p]||d.installmentOptions.card,h=1===f?.values?.length,[F,C]=l(f?.preselectedValue||f?.values[0]),[j,x]=l(\"onetime\"),N=f?.plans?.includes(\"revolving\")||f?.plans?.includes(\"bonus\"),_=n(()=>function(e,l){return e?[{id:\"onetime\",name:\"installments.oneTime\"},{id:\"installments\",name:\"installments.installments\"},...l?.includes(\"revolving\")?[{id:\"revolving\",name:\"installments.revolving\"}]:[],...l?.includes(\"bonus\")?[{id:\"bonus\",name:\"installments.bonus\"}]:[]]:[]}(N,f?.plans),[N,f]),E=e=>{const l=e.target.value;C(Number(l))},y=e=>{const l=e.currentTarget.getAttribute(\"value\");x(l)},L=e=>{let l,n;if(\"amount\"===g){l=\"installmentOption\",n={count:e,values:{times:e,partialValue:(e=>v.amount(c.value/e,c.currency))(e)}}}else l=\"installmentOptionMonths\",n={count:e,values:{times:e}};return{id:e,name:c.value?v.get(l,n):`${e}`}};return t(()=>{f?.values?.includes(F)||C(f?.preselectedValue??f?.values[0])},[p]),t(()=>{const e={value:F,...N&&\"onetime\"===j&&{value:1},...N&&\"revolving\"===j&&{value:1,plan:\"revolving\"},...N&&\"bonus\"===j&&{value:1,plan:\"bonus\"}};b(f?e:{value:null})},[b,N,F,f,j]),f&&c&&0!==c.value?N?e(\"div\",{className:\"adyen-checkout__installments adyen-checkout__installments--revolving-plan\"},e(a,{label:v.get(\"installments\"),classNameModifiers:[\"installments\"],name:\"installmentsPseudoLabel\",useLabelElement:!1,showContextualElement:!1,renderAlternativeToLabel:r},e(i,{classNameModifiers:[\"revolving-plan\"],label:\"\"},e(o,{items:_,onChange:y,value:j,ariaLabel:v.get(\"installments\")}),e(a,{className:\"installments\"!==j?\"revolving-plan-installments__disabled\":\"revolving-plan-installments\",classNameModifiers:[\"revolving-plan-installments\"],name:\"\",useLabelElement:!1,showContextualElement:!1},e(m,{filterable:!1,items:f.values.map(L),selectedValue:F,onChange:E,name:\"installments\",disabled:\"installments\"!==j}))))):e(\"div\",{className:\"adyen-checkout__installments\"},e(a,{label:v.get(\"installments\"),classNameModifiers:[\"installments\"],name:\"installments\",showContextualElement:!1},e(m,{filterable:!1,items:f.values.map(L),selectedValue:F,onChange:E,name:\"installments\",readonly:h,disabled:h}))):null}d.defaultProps={brand:\"\",onChange:()=>{}};export{d as default};\n//# sourceMappingURL=Installments.js.map\n","const t=(t,o=!1)=>{let r;try{r=new URL(t)}catch(t){return!1}return o&&\"http:\"===r.protocol||\"https:\"===r.protocol};export{t as isValidHttpUrl};\n//# sourceMappingURL=isValidURL.js.map\n","const S=[\"ar\",\"bg-BG\",\"ca-ES\",\"cs-CZ\",\"da-DK\",\"de-DE\",\"el-GR\",\"en-US\",\"es-ES\",\"et-EE\",\"fi-FI\",\"fr-FR\",\"hr-HR\",\"hu-HU\",\"is-IS\",\"it-IT\",\"ja-JP\",\"ko-KR\",\"lt-LT\",\"lv-LV\",\"nl-NL\",\"no-NO\",\"pl-PL\",\"pt-BR\",\"pt-PT\",\"ro-RO\",\"ru-RU\",\"sk-SK\",\"sl-SI\",\"sv-SE\",\"zh-CN\",\"zh-TW\"],e=\"en-US\",s=2,t=5;export{S as CDN_SUPPORTED_LOCALES,e as DEFAULT_LOCALE,t as LOCALE_NAME_MAX_LENGTH,s as LOCALE_NAME_MIN_LENGTH};\n//# sourceMappingURL=constants.js.map\n","import{DEFAULT_LOCALE as t,LOCALE_NAME_MIN_LENGTH as n,LOCALE_NAME_MAX_LENGTH as e}from\"./constants.js\";const r=t=>t.toLowerCase().substring(0,2),o=t=>Boolean(t)&&t.length>=n&&t.length<=e;function s(t,n){if(!t||\"string\"!=typeof t)return null;const e=t.toLowerCase(),o=n.find(t=>t.toLowerCase()===e);if(o)return o;const s=r(t);return n.find(t=>r(t)===s)||null}function l(t){const n=t.replace(\"_\",\"-\");if(/^([a-z]{2})(-)([A-Z]{2})$/.test(n))return n;const[e,r]=n.split(\"-\");if(!e||!r)return null;const o=[e.toLowerCase(),r.toUpperCase()].join(\"-\");return 5===o.length?o:null}function u(n,e){if(!o(n))return t;const r=l(n);return r&&e.includes(r)?r:s(r||n,e)||t}function c(t={}){return Object.keys(t).reduce((n,e)=>{if(!o(e))return n;return n[l(e)||r(e)]=t[e],n},{})}const i=(t,n)=>t.replace(/%{(\\w+)}/g,(t,e)=>n[e]||\"\"),a=(t,n,e={})=>{const{values:r={},count:o=0}=e,s=`${n}__plural`,l=t=>`${n}__${t}`;return Object.prototype.hasOwnProperty.call(t,l(o))?i(t[l(o)],r):Object.prototype.hasOwnProperty.call(t,s)&&o>1?i(t[s],r):Object.prototype.hasOwnProperty.call(t,n)?i(t[n],r):null},p=(t,n)=>{const e=t.split(/%#(.*?)%#/gm);if(n.length!==Math.floor(e.length/2))throw Error(\"The number of functions provided does not match the number of elements in the translation string.\");return e.map((t,e)=>{const r=Math.floor(e/2);return e%2==0?t:n[r](t)})};export{c as formatCustomTranslations,l as formatLocaleToLanguageCountryLocale,a as getTranslation,p as interpolateElement,s as matchLocale,u as parseLocale};\n//# sourceMappingURL=utils.js.map\n","import{createElement as e}from\"../../../external/preact/dist/preact.js\";const r=({to:r,children:t})=>e(\"a\",{className:\"adyen-checkout-link\",href:r,target:\"_blank\",rel:\"noopener noreferrer\"},t);export{r as default};\n//# sourceMappingURL=Link.js.map\n","import{createElement as e,Fragment as t}from\"../../../external/preact/dist/preact.js\";import{isValidHttpUrl as r}from\"../../../utils/isValidURL.js\";import{interpolateElement as s}from\"../../../language/utils.js\";import n from\"../Link/Link.js\";function a({message:t,urls:r=[]}){return e(\"span\",{className:\"adyen-checkout-disclaimer__label\"},e(l,{message:t,urls:r}))}function l({message:a,urls:l}){const i=\"string\"==typeof a,o=l.every(e=>\"string\"==typeof e&&r(e));if(!i||!o)return null;let u;try{u=s(a,l.map(t=>function(r){return e(n,{to:t},r)}))}catch(e){u=a,console.warn(e)}return e(t,null,u)}export{l as LabelOnlyDisclaimerMessage,a as default};\n//# sourceMappingURL=DisclaimerMessage.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import s from\"../../../../internal/LoadingWrapper/LoadingWrapper.js\";import t from\"./StoredCardFields.js\";import a from\"./Installments/Installments.js\";import n from\"../../../../internal/DisclaimerMessage/DisclaimerMessage.js\";const r=({sfpState:r,setFocusOn:l,cvcPolicy:o,focusedElement:i,hasInstallments:m,handleInstallments:p,showAmountsInInstallments:c,showContextualElement:d,hasCVC:u,installmentOptions:h,lastFour:x,expiryMonth:f,expiryYear:g,disclaimerMessage:C})=>e(s,{status:r.status},e(t,{errors:r.errors,brand:r.brand,hasCVC:u,cvcPolicy:o,onFocusField:l,focusedElement:i,valid:r.valid,lastFour:x,expiryMonth:f,expiryYear:g,showContextualElement:d}),m&&e(a,{brand:r.brand,installmentOptions:h,onChange:p,type:c?\"amount\":\"months\"}),C&&e(n,{message:C.message.replace(\"%{linkText}\",`%#${C.linkText}%#`),urls:[C.link]}));export{r as StoredCardFieldsWrapper};\n//# sourceMappingURL=StoredCardFieldsWrapper.js.map\n","import{createElement as r}from\"../../../external/preact/dist/preact.js\";import{useState as a}from\"../../../external/preact/hooks/dist/hooks.js\";import e from\"../../../_virtual/index.js\";import s from\"../Img/Img.js\";const t=({src:t,alt:o,wrapperClassName:m=\"\",imgClassName:p=\"\",showOnError:n,as:c})=>{const[i,d]=a(!1),l=e(\"adyen-checkout-brand-wrapper\",m,n?{}:{\"adyen-checkout-brand-wrapper--error\":i});return r(c??\"span\",{className:l,\"data-testid\":\"brand-image-wrapper\"},r(s,{className:p,src:t,alt:o,onError:()=>d(!0)}))};export{t as BrandImage};\n//# sourceMappingURL=BrandImage.js.map\n","import{createElement as r}from\"../../../../../external/preact/dist/preact.js\";import{getCardImageUrl as a,getFullBrandName as e}from\"../utils.js\";import t from\"../../../../../core/Context/useImage.js\";import{BrandImage as n}from\"../../../../internal/BrandImage/BrandImage.js\";function o({brand:o,brandsConfiguration:c}){const m=t(),d=\"card\"===o,i=d?\"nocard\":o,s=c?.[o]?.icon??a(i,m);return r(n,{imgClassName:\"adyen-checkout-card-input__icon adyen-checkout__card__cardNumber__brandIcon\",alt:d?\"\":e(o),src:s})}export{o as default};\n//# sourceMappingURL=BrandIcon.js.map\n","var e={dualBrandSelector:\"DualBrandSelector-module_dualBrandSelector__Fz7UW\",dualBrandSelectorButton:\"DualBrandSelector-module_dualBrandSelectorButton__3Dxem\",dualBrandSelectorButtonSelected:\"DualBrandSelector-module_dualBrandSelectorButtonSelected__EswTK\",dualBrandSelectorIcon:\"DualBrandSelector-module_dualBrandSelectorIcon__qeN0L\"};export{e as default};\n//# sourceMappingURL=DualBrandSelector.module.scss.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import{useState as r}from\"../../../../../external/preact/hooks/dist/hooks.js\";import a from\"../../../../../_virtual/index.js\";import{mapDualBrandButtons as t}from\"../utils.js\";import o from\"./DualBrandSelector.module.scss.js\";import{useCoreContext as n}from\"../../../../../core/Context/CoreProvider.js\";import{stopPropagationForActionKeys as l}from\"../../../../internal/Button/stopPropagationForActionKeys.js\";function i({dualBrandingElements:i,brandsConfiguration:d,dualBrandingChangeHandler:s,selectedBrandValue:u}){const{i18n:m}=n(),c=t(i,d),[p,B]=r(u);return e(\"div\",{className:o.dualBrandSelector,role:\"group\",\"aria-label\":m.get(\"creditCard.dualBrand.description\")},c.map(r=>e(\"button\",{key:r.id,type:\"button\",className:a(o.dualBrandSelectorButton,{[o.dualBrandSelectorButtonSelected]:p===r.id}),onMouseDown:e=>e.preventDefault(),onClick:()=>{return e=r.id,B(e),void s(e);var e},onKeyDown:l,\"aria-label\":r.altName,\"aria-pressed\":p===r.id},e(\"img\",{src:r.imageURL,alt:r.altName,className:o.dualBrandSelectorIcon}))))}export{i as default};\n//# sourceMappingURL=DualBrandSelector.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import n from\"../../../../../_virtual/index.js\";import r from\"./BrandIcon.js\";import a from\"../../../../internal/FormFields/Field/Field.js\";import{useCoreContext as d}from\"../../../../../core/Context/CoreProvider.js\";import o from\"./DataSfSpan.js\";import{ENCRYPTED_CARD_NUMBER as i}from\"../../../../internal/SecuredFields/lib/constants.js\";import{alternativeLabelContent as t}from\"./FieldLabelAlternative.js\";import{requiresDualBrandSelection as l}from\"../utils.js\";import{DUAL_BRANDS_THAT_NEED_SELECTION_MECHANISM as s}from\"../../../constants.js\";import c from\"./DualBrandSelector.js\";function u(u){const{i18n:m}=d(),{error:_=\"\",isValid:p=!1,onFocusField:f=()=>{},dualBrandingElements:b,dualBrandingChangeHandler:g,brandsConfiguration:h,selectedBrandValue:y}=u,C=!!b&&l(s,b,\"id\"),B=C?m.get(\"creditCard.dualBrand.description\"):void 0;return e(a,{label:u.label,focused:u.focused,filled:u.filled,classNameModifiers:[\"cardNumber\"],onFocusField:()=>f(i),errorMessage:_,isValid:p,dir:\"ltr\",name:i,showValidIcon:!1,i18n:m,contextVisibleToScreenReader:!1,useLabelElement:!1,renderAlternativeToLabel:t,onInputContainerClick:()=>{f(i)},contextualText:B},e(o,{encryptedFieldType:i,className:n({\"adyen-checkout__input\":!0,\"adyen-checkout__input--large\":!0,\"adyen-checkout__card__cardNumber__input\":!0,\"adyen-checkout__input--error\":_,\"adyen-checkout__input--focus\":u.focused,\"adyen-checkout__input--valid\":p,\"adyen-checkout__card__cardNumber__input--noBrand\":!u.showBrandIcon})}),u.showBrandIcon&&!b&&e(r,{brandsConfiguration:u.brandsConfiguration,brand:u.brand}),b&&!_&&e(\"div\",{className:n([\"adyen-checkout__card__dual-branding__icons\"])},C?e(c,{dualBrandingElements:b,dualBrandingChangeHandler:g,brandsConfiguration:h,selectedBrandValue:y}):b.map(n=>e(r,{key:n.id,brand:n.id,brandsConfiguration:u.brandsConfiguration}))),e(\"span\",{className:\"adyen-checkout__card__dual-branding__sr-only\",\"aria-live\":\"polite\"},B))}export{u as default};\n//# sourceMappingURL=CardNumber.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import t from\"../../../../../_virtual/index.js\";import a from\"../../../../internal/FormFields/Field/Field.js\";import{useCoreContext as i}from\"../../../../../core/Context/CoreProvider.js\";import r from\"./DataSfSpan.js\";import{DATE_POLICY_REQUIRED as n,DATE_POLICY_OPTIONAL as o,DATE_POLICY_HIDDEN as d,ENCRYPTED_EXPIRY_DATE as l}from\"../../../../internal/SecuredFields/lib/constants.js\";import c from\"../../../../../core/Context/useImage.js\";import{alternativeLabelContent as _}from\"./FieldLabelAlternative.js\";import{BrandImage as s}from\"../../../../internal/BrandImage/BrandImage.js\";function p(p){const{label:m,focused:u,filled:f,onFocusField:x,className:h=\"\",classNameModifiers:y=[],error:k=\"\",isValid:F=!1,expiryDatePolicy:j=n,showContextualElement:C,contextualText:b}=p,{i18n:g}=i(),N=c(),w=t(h,{\"adyen-checkout__field__exp-date\":!0,\"adyen-checkout__card__exp-date__input--hidden\":j===d,\"adyen-checkout__field__exp-date--optional\":j===o}),v=j!==o?m:`${m} ${g.get(\"field.title.optional\")}`;return e(a,{label:v,classNameModifiers:[...y,\"expiryDate\"],className:w,focused:u,filled:f,onFocusField:()=>x(l),errorMessage:k,isValid:F,dir:\"ltr\",name:\"encryptedExpiryDate\",i18n:g,contextVisibleToScreenReader:!1,useLabelElement:!1,renderAlternativeToLabel:_,showContextualElement:C,contextualText:b,onInputContainerClick:()=>{x(l)}},e(r,{encryptedFieldType:l,className:t(\"adyen-checkout__input\",\"adyen-checkout__input--small\",\"adyen-checkout__card__exp-date__input\",{\"adyen-checkout__input--error\":k,\"adyen-checkout__input--focus\":u,\"adyen-checkout__input--valid\":F})}),e(s,{wrapperClassName:k||F?t(\"adyen-checkout__field__exp-date_hint_wrapper\",\"adyen-checkout__field__exp-date_hint_wrapper--hidden\"):\"adyen-checkout__field__exp-date_hint_wrapper\",imgClassName:\"adyen-checkout__field__exp-date_hint\",alt:\"\",src:N({imageFolder:\"components/\"})(\"expiry_date_hint\")}))}export{p as default};\n//# sourceMappingURL=ExpirationDate.js.map\n","var n={container:\"BrandIcons-module_container__FeCxK\",grid:\"BrandIcons-module_grid__wb0DE\",smallImgGrid:\"BrandIcons-module_smallImgGrid__iCMqT\",remainingBrandsLabel:\"BrandIcons-module_remainingBrandsLabel__v0FKS\",img:\"BrandIcons-module_img__Oe3i-\",smallImg:\"BrandIcons-module_smallImg__GwOZ0\"};export{n as default};\n//# sourceMappingURL=BrandIcons.module.scss.js.map\n","import{createElement as a}from\"../../../external/preact/dist/preact.js\";import{useMemo as r}from\"../../../external/preact/hooks/dist/hooks.js\";import e from\"../../../_virtual/index.js\";import{BrandImage as s}from\"../BrandImage/BrandImage.js\";import n from\"./BrandIcons.module.scss.js\";const m=({brandIcons:m,maxBrandsToShow:l=m.length,remainingBrandsLabel:o,className:i,containerType:t=\"flex\",remainingBrandsLabelClassName:d,brandImageClassName:c,brandImageWrapperClassName:g,showIconOnError:p,smallIcons:I,renderBrandIcon:h,ariaHidden:B})=>{const N=r(()=>m.slice(0,l),[m,l]),b=r(()=>m.slice(l),[m,l]),f=Boolean(o)||b.length>0;return a(\"ul\",{className:e(n.container,{[n.grid]:\"grid\"===t,[n.smallImgGrid]:I&&\"grid\"===t},i),\"aria-hidden\":B},N.map(r=>h?h(r):a(s,{as:\"li\",key:r.alt,src:r.src,alt:r.alt,wrapperClassName:g,imgClassName:e(n.img,{[n.smallImg]:I},c),showOnError:p})),f&&a(\"li\",{className:e(n.remainingBrandsLabel,d)},o||`+ ${b.length}`))};export{m as BrandIcons};\n//# sourceMappingURL=BrandIcons.js.map\n","import{createElement as r}from\"../../../../../../external/preact/dist/preact.js\";import{useMemo as a}from\"../../../../../../external/preact/hooks/dist/hooks.js\";import n from\"../../../../../../_virtual/index.js\";import{getFullBrandName as e}from\"../../utils.js\";import{BrandIcons as o}from\"../../../../../internal/BrandIcons/BrandIcons.js\";const t=({brands:t,activeBrand:s})=>{if(!t?.length)return null;const c=\"card\"!==s,d=a(()=>t.map(r=>({src:r.icon,alt:e(r.name)})),[t]);return r(o,{className:n(\"adyen-checkout__card__brands\",{\"adyen-checkout__card__brands--hidden\":c}),brandIcons:d,smallIcons:!0,showIconOnError:!0,containerType:\"grid\",ariaHidden:c||void 0})};export{t as default};\n//# sourceMappingURL=AvailableBrands.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import r from\"./CardNumber.js\";import t from\"./CVC.js\";import a from\"./ExpirationDate.js\";import{useCoreContext as d}from\"../../../../../core/Context/CoreProvider.js\";import n from\"../../../../../_virtual/index.js\";import{BRAND_ICON_UI_EXCLUSION_LIST as o,ENCRYPTED_CARD_NUMBER as i,DATE_POLICY_HIDDEN as c,ENCRYPTED_EXPIRY_DATE as l,ENCRYPTED_SECURITY_CODE as s}from\"../../../../internal/SecuredFields/lib/constants.js\";import u from\"./AvailableBrands/AvailableBrands.js\";function m({brand:m,brandsIcons:p,brandsConfiguration:C,dualBrandingElements:y,selectedBrandValue:x,dualBrandingChangeHandler:f,errors:b,focusedElement:g,hasCVC:_,cvcPolicy:h,expiryDatePolicy:v,onFocusField:E,showBrandIcon:B,valid:F,showContextualElement:N}){const{i18n:j}=d(),V=(e,r)=>{const t=e[r];return t?j.get(t):null},D=p?.filter(e=>!o?.includes(e.name)),w=\"amex\"===m,P=w?j.get(\"creditCard.securityCode.contextualText.4digits\"):j.get(\"creditCard.securityCode.contextualText.3digits\");return e(\"div\",{className:\"adyen-checkout__card__form\"},e(r,{brand:m,brandsConfiguration:C,error:V(b,i),focused:g===i,isValid:!!F.encryptedCardNumber,label:j.get(\"creditCard.cardNumber.label\"),onFocusField:E,filled:!!b.encryptedCardNumber||!!F.encryptedCardNumber,showBrandIcon:B,dualBrandingElements:y,selectedBrandValue:x,dualBrandingChangeHandler:f}),e(u,{activeBrand:m,brands:D}),e(\"div\",{className:n(\"adyen-checkout__card__exp-cvc\",{\"adyen-checkout__card__exp-cvc__exp-date__input--hidden\":v===c})},e(a,{classNameModifiers:[\"col-50\"],error:V(b,l),focused:g===l,isValid:!!F.encryptedExpiryMonth&&!!F.encryptedExpiryYear,filled:!!b.encryptedExpiryDate||!!F.encryptedExpiryYear,label:j.get(\"creditCard.expiryDate.label\"),onFocusField:E,expiryDatePolicy:v,showContextualElement:N,contextualText:j.get(\"creditCard.expiryDate.contextualText\")}),_&&e(t,{classNameModifiers:[\"col-50\"],errorCode:b[s],focused:g===s,cvcPolicy:h,isValid:!!F.encryptedSecurityCode,filled:!!b.encryptedSecurityCode||!!F.encryptedSecurityCode,label:j.get(\"creditCard.securityCode.label\"),onFocusField:E,frontCVC:w,showContextualElement:N,contextualText:P})))}export{m as default};\n//# sourceMappingURL=CardFields.js.map\n","import{createElement as t}from\"../../../external/preact/dist/preact.js\";import e from\"./InputBase.js\";function r(r){return t(e,{...r,type:\"tel\"})}export{r as default};\n//# sourceMappingURL=InputTelephone.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import{useMemo as r}from\"../../../../../external/preact/hooks/dist/hooks.js\";import t from\"../../../../../_virtual/index.js\";import a from\"../../../../internal/FormFields/Field/Field.js\";import{useCoreContext as o}from\"../../../../../core/Context/CoreProvider.js\";import s from\"./DataSfSpan.js\";import d from\"../../../../internal/FormFields/InputTelephone.js\";import{alternativeLabelContent as n}from\"./FieldLabelAlternative.js\";import{CREDITCARD_TAX_NUMBER_INVALID as l}from\"../../../../../core/Errors/constants.js\";function i(i){const{i18n:c}=o(),u=r(()=>i.value?.length>6?c.get(\"creditCard.taxNumber.labelAlt\"):c.get(\"creditCard.taxNumber.label\"),[i.value]);return e(\"div\",{className:\"adyen-checkout__card__kcp-authentication\"},e(a,{label:u,filled:i.filled,classNameModifiers:[\"kcp-taxNumber\"],errorMessage:i.error&&c.get(l),isValid:i.isValid,dir:\"ltr\",name:\"kcpTaxNumberOrDOB\",onFocus:e=>i.onFieldFocusAnalytics(\"taxNumber\",e),onBlur:e=>i.onFieldBlurAnalytics(\"taxNumber\",e)},e(d,{name:\"kcpTaxNumberOrDOB\",className:\"adyen-checkout__card__kcp-taxNumber__input adyen-checkout__input\",maxLength:10,minLength:6,autoComplete:\"false\",value:i.value,required:!0,onBlur:i.onBlur,onInput:i.onInput,disabled:i.disabled,placeholder:i.placeholder})),e(a,{label:c.get(\"creditCard.password.label\"),focused:\"encryptedPassword\"===i.focusedElement,filled:i.filled,classNameModifiers:[\"50\",\"koreanAuthentication-encryptedPassword\"],onFocusField:()=>i.onFocusField(\"encryptedPassword\"),errorMessage:i.encryptedPasswordState.errors&&c.get(String(i.encryptedPasswordState.errors)),isValid:i.encryptedPasswordState.valid,dir:\"ltr\",name:\"encryptedPassword\",useLabelElement:!1,renderAlternativeToLabel:n},e(s,{encryptedFieldType:\"encryptedPassword\",className:t({\"adyen-checkout__input\":!0,\"adyen-checkout__input--large\":!0,\"adyen-checkout__input--error\":i.encryptedPasswordState.errors,\"adyen-checkout__input--valid\":i.encryptedPasswordState.valid,\"adyen-checkout__input--focus\":\"encryptedPassword\"===i.focusedElement})})))}export{i as default};\n//# sourceMappingURL=KCPAuthentication.js.map\n","import{createElement as e}from\"../../../external/preact/dist/preact.js\";import r from\"../FormFields/Field/Field.js\";import{useCoreContext as o}from\"../../../core/Context/CoreProvider.js\";import l from\"../FormFields/InputText.js\";const t=({onBlur:t,onInput:i,valid:a=!1,error:s=null,data:u=\"\",required:c=!1,disabled:n=!1,onFieldFocusAnalytics:m=null,onFieldBlurAnalytics:d=null})=>{const{i18n:p}=o();return e(r,{label:`${p.get(\"boleto.socialSecurityNumber\")}`,classNameModifiers:[\"socialSecurityNumber\"],errorMessage:s&&s.errorMessage?p.get(s.errorMessage):!!s,isValid:Boolean(a),name:\"socialSecurityNumber\",onFocus:e=>m?.(\"socialSecurityNumber\",e),onBlur:e=>d?.(\"socialSecurityNumber\",e)},e(l,{name:\"socialSecurityNumber\",autocorrect:\"off\",spellcheck:!1,value:u,maxlength:18,onInput:i,onBlur:t,required:c,disabled:n,autocomplete:void 0}))};export{t as default};\n//# sourceMappingURL=SocialSecurityNumberBrazil.js.map\n","import{createElement as e}from\"../../../../external/preact/dist/preact.js\";import a from\"../../../../_virtual/index.js\";import{ARIA_CONTEXT_SUFFIX as c,ARIA_ERROR_SUFFIX as t}from\"../../../../core/Errors/constants.js\";function o({classNameModifiers:o=[],label:n,isInvalid:s,onChange:r,disabled:i=!1,...l}){const{uniqueId:d,showErrorElement:u,showContextualElement:_,...h}=l;return e(\"label\",{className:\"adyen-checkout__checkbox\",htmlFor:d},e(\"input\",{id:d,...h,...u&&{\"aria-describedby\":`${d}${t}`},..._&&{\"aria-describedby\":`${d}${c}`},className:a([\"adyen-checkout__checkbox__input\",[l.className],{\"adyen-checkout__checkbox__input--invalid\":s},o.map(e=>`adyen-checkout__input--${e}`)]),type:\"checkbox\",disabled:i,onChange:r}),e(\"span\",{className:\"adyen-checkout__checkbox__label\"},n))}o.defaultProps={onChange:()=>{}};export{o as default};\n//# sourceMappingURL=Checkbox.js.map\n","import{useState as e,useEffect as t}from\"../../../external/preact/hooks/dist/hooks.js\";import{createElement as o}from\"../../../external/preact/dist/preact.js\";import{useCoreContext as s}from\"../../../core/Context/CoreProvider.js\";import r from\"../FormFields/Checkbox/Checkbox.js\";import a from\"../../../_virtual/index.js\";function i({storeDetails:i=!1,disabled:c=!1,className:l=\"\",...n}){const{i18n:m}=s(),[d,f]=e(i);return t(()=>{n.onChange(d)},[d]),o(\"div\",{className:a(\"adyen-checkout__store-details\",l)},o(r,{onChange:e=>{f(e.target.checked)},disabled:c,label:m.get(\"storeDetails\"),name:\"storeDetails\"}))}export{i as default};\n//# sourceMappingURL=StoreDetails.js.map\n","import{createElement as e,Fragment as t}from\"../../../../external/preact/dist/preact.js\";import r from\"../../FormFields/Fieldset/Fieldset.js\";import{FALLBACK_VALUE as s}from\"../constants.js\";const a=({data:a,label:o})=>{const{street:l,houseNumberOrName:n,city:m,postalCode:i,stateOrProvince:c,country:d}=a;return e(r,{classNameModifiers:[o],label:o,readonly:!0},e(t,null,!!l&&l,n&&`, ${n},`,e(\"br\",null),i&&`${i}`,m&&`, ${m}`,c&&c!==s&&`, ${c}`,d&&`, ${d} `))};export{a as default};\n//# sourceMappingURL=ReadOnlyAddress.js.map\n","import{getFormattingRegEx as o,SPECIAL_CHARS as t}from\"../../../utils/validator-utils.js\";const a=t=>({formatterFn:a=>a.replace(o(\"^\\\\d\",\"g\"),\"\").substring(0,t),format:new Array(t).fill(\"9\").join(\"\"),maxlength:t}),e=o(t),r=o=>o.replace(e,\"\"),l={postalCode:{formatterFn:(o,t)=>{const a=t.state.data.country,e=s[a]?.postalCode.formatterFn;return e?e(o):o}},street:{formatterFn:r},houseNumberOrName:{formatterFn:r},city:{formatterFn:r}},s={AT:{postalCode:a(4)},AU:{postalCode:a(4)},BE:{postalCode:a(4)},BG:{postalCode:a(4)},BR:{postalCode:{formatterFn:t=>{const a=t.replace(o(\"^\\\\d-\",\"g\"),\"\"),e=a.includes(\"-\")?9:8;return a.substring(0,e)},format:\"12345678 or 12345-678\",maxlength:9}},CA:{postalCode:{format:\"A9A 9A9 or A9A9A9\",maxlength:7}},CH:{postalCode:a(4)},CY:{postalCode:a(4)},CZ:{postalCode:{format:\"999 99\",maxlength:6}},DE:{postalCode:a(5)},DK:{postalCode:{format:\"9999\",maxlength:7}},EE:{postalCode:a(5)},ES:{postalCode:a(5)},FI:{postalCode:a(5)},FR:{postalCode:a(5)},GB:{postalCode:{formatterFn:a=>a.replace(o(t),\"\").substring(0,8),format:\"AA99 9AA or A99 9AA or A9 9AA\",maxlength:8}},GR:{postalCode:{format:\"999 99\",maxlength:6}},HR:{postalCode:{format:\"[1-5]9999\",maxlength:5}},HU:{postalCode:a(4)},IE:{postalCode:{format:\"A99 A999\",maxlength:8}},IS:{postalCode:a(3)},IT:{postalCode:a(5)},LI:{postalCode:a(4)},LT:{postalCode:{format:\"9999 or 99999 or LT-99999\",maxlength:8}},LU:{postalCode:a(4)},LV:{postalCode:{format:\"9999 or LV-9999\",maxlength:7}},MC:{postalCode:{format:\"980NN\",maxlength:5}},MT:{postalCode:{format:\"AA99 or AAA99 or AA9999 or AAA9999\",maxlength:8}},MY:{postalCode:a(5)},NL:{postalCode:{format:\"9999AA\",maxlength:7}},NZ:{postalCode:a(4)},NO:{postalCode:a(4)},PL:{postalCode:{formatterFn:t=>{const a=t.replace(o(\"^\\\\d-\",\"g\"),\"\"),e=a.includes(\"-\")?6:5;return a.substring(0,e)},format:\"99999 or 99-999\",maxlength:6}},PT:{postalCode:{formatterFn:t=>t.replace(o(\"^\\\\d-\",\"g\"),\"\").substring(0,8),format:\"9999-999\",maxlength:8}},RO:{postalCode:a(6)},SI:{postalCode:{format:\"9999 or SI-9999\",maxlength:7}},SE:{postalCode:a(5)},SG:{postalCode:a(6)},SK:{postalCode:{format:\"99999 or SK-99999\",maxlength:8}},JP:{postalCode:{format:\"999-9999\",maxlength:8}},US:{postalCode:{formatterFn:t=>{const a=t.replace(o(\"^\\\\d-\",\"g\"),\"\"),e=a.includes(\"-\")?10:5;return a.substring(0,e)},format:\"99999 or 99999-9999\"}}};export{l as addressFormatters,s as countrySpecificFormatters};\n//# sourceMappingURL=validate.formats.js.map\n","import{countrySpecificFormatters as t}from\"./validate.formats.js\";import{ERROR_FIELD_REQUIRED as r,ERROR_INVALID_FORMAT_EXPECTS as e}from\"../../../core/Errors/constants.js\";import{isEmpty as a}from\"../../../utils/validator-utils.js\";const n=t=>({pattern:new RegExp(`\\\\d{${t}}`)}),o=(r,n,o)=>{if(n){if(a(r))return null;o.postalCode.errorMessage={translationKey:e,translationObject:{values:{format:t[n]?.postalCode.format||null}}};const d=s[n]?.pattern;return d?d.test(r):!!r}return!a(r)||null},s={AT:n(4),AU:n(4),BE:{pattern:/(?:(?:[1-9])(?:\\d{3}))/},BG:n(4),BR:{pattern:/^\\d{5}-?\\d{3}$/},CA:{pattern:/(?:[ABCEGHJ-NPRSTVXY]\\d[A-Z][ -]?\\d[A-Z]\\d)/},CH:{pattern:/[1-9]\\d{3}/},CY:n(4),CZ:{pattern:/\\d{3}\\s?\\d{2}/},DE:n(5),DK:n(4),EE:n(5),ES:{pattern:/(?:0[1-9]|[1-4]\\d|5[0-2])\\d{3}/},FI:n(5),FR:n(5),GB:{pattern:/^([A-Za-z][A-Ha-hK-Yk-y]?[0-9][A-Za-z0-9]? ?[0-9][A-Za-z]{2}|[Gg][Ii][Rr] ?0[Aa]{2})$/},GE:n(4),GR:{pattern:/^\\d{3}\\s{0,1}\\d{2}$/},HR:{pattern:/^([1-5])[0-9]{4}$/},HU:n(4),IE:{pattern:/(?:^[AC-FHKNPRTV-Y][0-9]{2}|D6W)[ -]?[0-9AC-FHKNPRTV-Y]{4}/},IS:n(3),IT:n(5),LI:n(4),LT:{pattern:/^(LT-\\d{5}|\\d{4,5})$/},LU:n(4),LV:{pattern:/^(LV-)[0-9]{4}$/},MC:{pattern:/^980\\d{2}$/},MT:{pattern:/^[A-Za-z]{3}\\d{4}$/},MY:n(5),NL:{pattern:/(?:NL-)?(?:[1-9]\\d{3} ?(?:[A-EGHJ-NPRTVWXZ][A-EGHJ-NPRSTVWXZ]|S[BCEGHJ-NPRTVWXZ]))/},NO:n(4),PL:{pattern:/^\\d{2}[-]{0,1}\\d{3}$/},PT:{pattern:/^([1-9]\\d{3})([- ]?(\\d{3})? *)$/},RO:n(6),SI:n(4),SE:n(5),SG:n(6),SK:n(5),US:{pattern:/^\\d{5}(?:-\\d{4})?$/}},d=t=>{const e={postalCode:{modes:[\"blur\"],validate:r=>o(r,t,e),errorMessage:r}};return e},l=t=>{const e={postalCode:{modes:[\"blur\"],validate:(t,r)=>{const a=r.state.data.country;return o(t,a,e)},errorMessage:r},houseNumberOrName:{validate:(r,e)=>{const n=e.state?.data?.country;return n&&t.countryHasOptionalField(n,\"houseNumberOrName\")||!a(r)||null},modes:[\"blur\"],errorMessage:r},default:{validate:t=>!a(t)||null,modes:[\"blur\"],errorMessage:r}};return e};export{l as getAddressValidationRules,d as getPartialAddressValidationRules,o as validatePostalCode};\n//# sourceMappingURL=validate.js.map\n","function e(e,n){if(null==e)throw new Error(n);return e}const n=\"https://checkoutshopper-live.adyen.com/checkoutshopper/\",o=e(\"6.44.0\",\"LIBRARY_VERSION is not defined\"),t=e(\"esm\",\"BUNDLE_TYPE is not defined\"),r=[\"amount\",\"secondaryAmount\",\"countryCode\",\"environment\",\"_environmentUrls\",\"loadingContext\",\"i18n\",\"modules\",\"order\",\"session\",\"clientKey\",\"showPayButton\",\"redirectFromTopWhenInIframe\",\"donation\",\"onPaymentCompleted\",\"onPaymentFailed\",\"beforeRedirect\",\"beforeSubmit\",\"onSubmit\",\"onActionHandled\",\"onAdditionalDetails\",\"onChange\",\"onEnterKeyPressed\",\"onError\",\"onBalanceCheck\",\"onOrderCancel\",\"onOrderRequest\",\"onOrderUpdated\",\"onPaymentMethodsRequest\"],i=6e4;var d=function(e){return e.WEB=\"web\",e}({});const a=\"web\";var s=function(e){return e.NATIVE=\"nativeComponent\",e.GENERIC=\"genericComponent\",e}({});export{d as CHANNEL,i as DEFAULT_HTTP_TIMEOUT,n as FALLBACK_CONTEXT,r as GENERIC_OPTIONS,t as LIBRARY_BUNDLE_TYPE,o as LIBRARY_VERSION,s as PAYMENT_METHOD_BEHAVIOR,a as PLATFORM};\n//# sourceMappingURL=config.js.map\n","import{DEFAULT_HTTP_TIMEOUT as e,FALLBACK_CONTEXT as r}from\"../config.js\";import o from\"../Errors/AdyenCheckoutError.js\";function t(t,n){const{headers:s=[],errorLevel:i=\"warn\",errorCode:c,loadingContext:l=r,method:d=\"GET\",path:u,timeout:f=e}=t,m={method:d,mode:\"cors\",cache:\"default\",credentials:\"same-origin\",headers:{Accept:\"application/json, text/plain, */*\",\"Content-Type\":\"POST\"===d?\"application/json\":\"text/plain\",...s},redirect:\"follow\",referrerPolicy:\"no-referrer-when-downgrade\",...AbortSignal?.timeout&&{signal:AbortSignal?.timeout(f)},...n&&{body:JSON.stringify(n)}},g=`${l}${u}`;return fetch(g,m).then(async e=>{if(204===e.status)return;const r=await e.json();if(e.ok)return r;if(function(e){return e&&e.errorCode&&e.errorType&&e.message&&e.status}(r))return void a({message:r.message,level:i,cause:r,code:c});a({message:t.errorMessage||`Service at ${g} is not available`,level:i,cause:r,code:c})}).catch(e=>{if(e instanceof o)throw e;a({message:t.errorMessage||`Call to ${g} failed. Error= ${e}`,level:i,cause:e,code:c})})}function a({message:e,level:r,cause:t,code:a}){switch(r){case\"silent\":break;case\"info\":case\"warn\":case\"error\":console[r](e);break;default:throw new o(\"NETWORK_ERROR\",e,{cause:t,code:a})}}function n(e,r){return t({...e,method:\"GET\"},r)}function s(e,r){return t({...e,method:\"POST\"},r)}export{t as http,n as httpGet,s as httpPost};\n//# sourceMappingURL=http.js.map\n","import{httpGet as t}from\"./http.js\";function a(a,e,r){return t({loadingContext:e,errorLevel:\"warn\",errorMessage:`Dataset ${a} is not available`,path:r?`datasets/${a}/${r}.json`:`datasets/${a}.json`})}export{a as default};\n//# sourceMappingURL=get-dataset.js.map\n","import{createElement as e}from\"../../../../external/preact/dist/preact.js\";import{useState as r,useLayoutEffect as t}from\"../../../../external/preact/hooks/dist/hooks.js\";import o from\"../../FormFields/Field/Field.js\";import{useCoreContext as s}from\"../../../../core/Context/CoreProvider.js\";import a from\"../../../../core/Services/get-dataset.js\";import i from\"../../FormFields/Select/Select.js\";function n(n){const{classNameModifiers:l,label:c,onDropdownChange:d,readOnly:m,selectedCountry:f,specifications:u,value:p,required:h}=n,{i18n:g,loadingContext:j}=s(),[v,y]=r([]),[C,F]=r(!1);return t(()=>{if(!f||!u.countryHasDataset(f))return y([]),void F(!0);a(`states/${f}`,j,g.locale).then(e=>{const r=e&&e.length?e:[];y(r),F(!0)}).catch(()=>{y([]),F(!0)})},[f]),C&&v.length?e(o,{label:c,classNameModifiers:l,errorMessage:n.errorMessage,isValid:!!p,showValidIcon:!1,name:\"stateOrProvince\",i18n:g,readOnly:m&&!!p},e(i,{name:\"stateOrProvince\",onChange:d,selectedValue:p,items:v,required:h,readonly:m&&!!p})):null}export{n as default};\n//# sourceMappingURL=StateField.js.map\n","import{createElement as e}from\"../../../../external/preact/dist/preact.js\";import{useState as r,useLayoutEffect as o}from\"../../../../external/preact/hooks/dist/hooks.js\";import t from\"../../FormFields/Field/Field.js\";import{useCoreContext as a}from\"../../../../core/Context/CoreProvider.js\";import s from\"../../../../core/Services/get-dataset.js\";import n from\"../../FormFields/Select/Select.js\";function l(l){const{allowedCountries:i=[],classNameModifiers:c=[],errorMessage:m,onDropdownChange:d,value:u,required:p}=l,{i18n:f,loadingContext:g}=a(),[h,y]=r([]),[j,C]=r(!1),[F,x]=r(l.readOnly);return o(()=>{s(\"countries\",g,f.locale).then(e=>{const r=((e,r)=>{const o=e=>({...e,name:e.name,selectedOptionName:e.name});return r.length?e.filter(e=>r.includes(e.id)).map(o):e.map(o)})(e,i);y(r||[]),x(1===r.length||F),C(!0)}).catch(e=>{console.error(e),y([]),C(!0)})},[]),j?e(t,{name:\"country\",label:f.get(\"country\"),errorMessage:m,classNameModifiers:c,isValid:!!u,showValidIcon:!1,i18n:f,readOnly:F&&!!u},e(n,{onChange:d,name:\"country\",selectedValue:u,items:h,readonly:F&&!!u,required:p})):null}export{l as default};\n//# sourceMappingURL=CountryField.js.map\n","import{createElement as e}from\"../../../../external/preact/dist/preact.js\";import r from\"../../FormFields/Field/Field.js\";import o from\"./StateField.js\";import s from\"./CountryField.js\";import{useCoreContext as t}from\"../../../../core/Context/CoreProvider.js\";import i from\"../../FormFields/InputText.js\";import{ADDRESS_FIELD_TOKEN_MAP as n}from\"../constants.js\";function a(e,r){const o=n[e];if(o)return\"billingAddress\"===r?`billing ${o}`:\"deliveryAddress\"===r?`shipping ${o}`:o}function l(n){const{i18n:l}=t(),{classNameModifiers:d=[],data:c,errors:u,valid:m,fieldName:p,onInput:f,onBlur:g,trimOnBlur:F,maxLength:y,disabled:C,addressType:M}=n,b=c[p],j=c.country,h=n.specifications.countryHasOptionalField(j,p),v=n.specifications.getKeyForField(p,j),w=h?` ${l.get(\"field.title.optional\")}`:\"\",x=`${l.get(v)}${w}`,B=function(e,r,o,s){if(\"object\"==typeof e[r]?.errorMessage){const{translationKey:s,translationObject:t}=e[r].errorMessage;return o.get(s,t)}return o.get(e[r]?.errorMessage,{values:{label:s.toLowerCase()}})||!!e[r]}(u,p,l,x);switch(p){case\"country\":return e(s,{allowedCountries:n.allowedCountries,classNameModifiers:d,label:x,errorMessage:B,onDropdownChange:n.onDropdownChange,value:b,required:!h});case\"stateOrProvince\":return e(o,{classNameModifiers:d,label:x,errorMessage:B,onDropdownChange:n.onDropdownChange,selectedCountry:j,specifications:n.specifications,value:b,required:!h});default:return e(r,{label:x,classNameModifiers:d,errorMessage:B,isValid:m[p],name:p,i18n:l,onFocus:e=>n.onFieldFocusAnalytics(p,e),onBlur:e=>n.onFieldBlurAnalytics(p,e)},e(i,{name:p,classNameModifiers:d,value:b,onInput:f,onBlur:g,maxlength:y,trimOnBlur:F,disabled:C,required:!h,autocomplete:a(p,M)}))}}export{l as default};\n//# sourceMappingURL=FieldContainer.js.map\n","const t=300,e=(t,e=300)=>{let o;return function(...i){clearTimeout(o),o=setTimeout(()=>t.apply(this,i),e)}};export{t as DEFAULT_DEBOUNCE_TIME_MS,e as debounce};\n//# sourceMappingURL=debounce.js.map\n","import e from\"../../FormFields/Field/Field.js\";import{createElement as s}from\"../../../../external/preact/dist/preact.js\";import{useState as a,useCallback as t,useEffect as r,useMemo as o}from\"../../../../external/preact/hooks/dist/hooks.js\";import{useCoreContext as n}from\"../../../../core/Context/CoreProvider.js\";import{debounce as d}from\"../../../../utils/debounce.js\";import c from\"../../FormFields/Select/Select.js\";function l({onAddressLookup:l,onAddressSelected:u,onSelect:i,onManualAddress:m,externalErrorMessage:h,hideManualButton:_,showContextualElement:p,contextualText:f,placeholder:k,addressSearchDebounceMs:b}){const[x,g]=a([]),[y,M]=a([]),[j,v]=a(\"\"),{i18n:C}=n(),F=t(e=>{e?.errorMessage&&v(e.errorMessage)},[]),S=t(e=>{new Promise((s,a)=>{l(e,{resolve:s,reject:a})}).then(e=>{M(e),g(e.map(({id:e,name:s})=>({id:e,name:s}))),v(\"\")}).catch(e=>F(e))},[l]);r(()=>{v(h)},[h]);const w=o(()=>d(S,b),[]);return s(\"div\",{className:\"adyen-checkout__address-search adyen-checkout__field-group\"},s(e,{label:C.get(\"address\"),classNameModifiers:[\"address-search\"],errorMessage:j,name:\"address-search\",showContextualElement:p,contextualText:f},s(c,{name:\"address-search\",className:\"adyen-checkout__address-search__dropdown\",placeholder:k,onInput:w,items:x,onChange:e=>{if(!e.target.value)return void v(C.get(\"address.errors.incomplete\"));const s=y.find(s=>s.id===e.target.value);if(\"function\"!=typeof u)return i(s),void g([]);new Promise((e,a)=>{u(s,{resolve:e,reject:a})}).then(e=>{i(e),g([])}).catch(e=>F(e))},disableTextFilter:!0,blurOnClose:!0})),!_&&s(\"span\",{className:\"adyen-checkout__address-search__manual-add\"},s(\"button\",{type:\"button\",className:\"adyen-checkout__button adyen-checkout__button--inline adyen-checkout__button--link adyen-checkout__address-search__manual-add__button\",onClick:m},\"+ \"+C.get(\"address.enterManually\"))))}export{l as default};\n//# sourceMappingURL=AddressSearch.js.map\n","import{ADDRESS_SCHEMA as s}from\"./constants.js\";const e=(e,d,t)=>s.includes(e)?t?.[e]?d.get(t?.[e]):d.get(e):null,d=(s,e)=>s||(\"billingAddress\"===e||\"deliveryAddress\"===e?e:void 0);export{d as getAddressTypeFromLabel,e as mapFieldKey};\n//# sourceMappingURL=utils.js.map\n","import{createElement as e,Fragment as s}from\"../../../external/preact/dist/preact.js\";import{useRef as t,useMemo as o,useState as r,useCallback as n,useEffect as a}from\"../../../external/preact/hooks/dist/hooks.js\";import i from\"../FormFields/Fieldset/Fieldset.js\";import l from\"./components/ReadOnlyAddress.js\";import{getAddressValidationRules as d}from\"./validate.js\";import{countrySpecificFormatters as c,addressFormatters as u}from\"./validate.formats.js\";import m from\"./components/FieldContainer.js\";import p from\"../../../utils/useForm/useForm.js\";import\"../SecuredFields/lib/CSF/utils/userAgent.js\";import f from\"./Specifications.js\";import{COUNTRY as y,ADDRESS_SCHEMA as F,FALLBACK_VALUE as h}from\"./constants.js\";import{getMaxLengthByFieldAndCountry as C}from\"../../../utils/validator-utils.js\";import{useCoreContext as g}from\"../../../core/Context/CoreProvider.js\";import A from\"./components/AddressSearch.js\";import{getAddressTypeFromLabel as v}from\"./utils.js\";const b={};function j(j){const{i18n:S}=g(),{label:x=\"\",requiredFields:k,visibility:M,iOSFocusedField:O=null,showContextualElement:D}=j,w=v(j.addressType,x),B=t({});Object.keys(B.current).length||j.setComponentRef?.(B.current);const E=o(()=>new f(j.specifications),[j.specifications]),L=E.getAddressSchemaForCountryFlat(j.countryCode).filter(e=>k.includes(e)),[N,P]=r(!1),[R,T]=r(!1),[V,H]=r(\"\"),q=!!j.onAddressLookup,[_,I]=r(!1),U=!j.onAddressLookup||(N||R),$=j.data??b,z=$.country,G=z&&!L.includes(y)?[...L,y]:L,J=o(()=>z?{...$,country:z.toUpperCase()}:$,[$,z]),{data:K,errors:Q,valid:W,isValid:X,handleChangeFor:Y,triggerValidation:Z,setData:ee,mergeData:se}=p({schema:G,defaultData:J,rules:{...d(E),...j.validationRules},formatters:u}),te=n(e=>{const s=F.reduce((s,t)=>{const o=e[t];return null!=o&&(s[t]=String(o)),s},{});se(s),I(!0),Z(),P(!0)},[P,Z,ee]),oe=n(()=>{T(!0)},[]);B.current.showValidation=()=>{Z(),H(!q||U||X?\"\":S.get(\"address.errors.incomplete\"))};const re=L.filter(e=>!O||e===O);if(a(()=>{if(_)return void I(!1);const e=E.countryHasDataset(K.country)?\"\":h,s={...K,stateOrProvince:e};k.forEach(e=>{Y(e,\"input\")(s[e]??\"\")}),s.postalCode&&Y(\"postalCode\",\"blur\")(K.postalCode)},[K.country]),a(()=>{const e=k.includes(\"stateOrProvince\"),s=K.country&&E.countryHasDataset(K.country),t=e&&s,o=K.stateOrProvince||(t?\"\":h);Y(\"stateOrProvince\",\"input\")(o)},[]),a(()=>{const e=E.getOptionalFieldsForCountry(K.country),s=F.reduce((s,t)=>{const o=e.includes(t),r=k.includes(t),n=K[t],a=J[t],i=o&&!n||!r?!r&&a?a:h:n;return i?.length&&(s[t]=i),s},{});j.onChange({data:s,valid:W,errors:Q,isValid:X})},[K,W,Q,X]),\"hidden\"===M)return null;if(\"readOnly\"===M)return e(l,{data:K,label:x});const ne=(s,{classNameModifiers:t=[]})=>k.includes(s)?e(m,{key:s,allowedCountries:j.allowedCountries,classNameModifiers:[...t,s],data:K,errors:Q,valid:W,fieldName:s,onInput:Y(s,\"input\"),onBlur:Y(s,\"blur\"),onDropdownChange:Y(s,\"blur\"),specifications:E,maxLength:C(c,s,K.country),trimOnBlur:!0,disabled:!re.includes(s),addressType:w,onFieldFocusAnalytics:j.onFieldFocusAnalytics,onFieldBlurAnalytics:j.onFieldBlurAnalytics}):null,ae=E.getAddressSchemaForCountry(K.country);return e(s,null,e(i,{classNameModifiers:[x,\"address\"],label:x,renderLabelAsSectionHeading:!0},q&&e(A,{onAddressLookup:j.onAddressLookup,onAddressSelected:j.onAddressSelected,onSelect:te,onManualAddress:oe,externalErrorMessage:V,hideManualButton:U,showContextualElement:D,contextualText:S.get(\"address.search.contextualText\"),addressSearchDebounceMs:j.addressSearchDebounceMs}),U&&e(s,null,ae.map(s=>s instanceof Array?e(\"div\",{className:\"adyen-checkout__field-group\"},s.map(([e,s])=>ne(e,{classNameModifiers:[`col-${s}`]}))):ne(s,{})))))}j.defaultProps={countryCode:null,validationRules:null,data:{},onChange:()=>{},visibility:\"editable\",requiredFields:F,specifications:{},onFieldFocusAnalytics:()=>{},onFieldBlurAnalytics:()=>{}};export{j as default};\n//# sourceMappingURL=Address.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import r from\"../../../../internal/FormFields/Field/Field.js\";import{useCoreContext as o}from\"../../../../../core/Context/CoreProvider.js\";import a from\"../../../../internal/FormFields/InputText.js\";import{CREDITCARD_HOLDER_NAME_INVALID as l}from\"../../../../../core/Errors/constants.js\";function t({onBlur:t,onInput:n,placeholder:d,value:i,required:c,error:s=!1,isValid:m,disabled:u,onFieldFocusAnalytics:p,onFieldBlurAnalytics:h}){const{i18n:_}=o();return e(r,{label:_.get(\"creditCard.holderName\"),className:\"adyen-checkout__card__holderName\",errorMessage:s&&_.get(l),isValid:!!m,name:\"holderName\",i18n:_,onFocus:e=>p(\"holderName\",e),onBlur:e=>h(\"holderName\",e)},e(a,{name:\"holderName\",className:\"adyen-checkout__card__holderName__input adyen-checkout__input\",placeholder:d,autocomplete:\"cc-name\",value:i,required:c,onBlur:t,onInput:n,disabled:u}))}export{t as default};\n//# sourceMappingURL=CardHolderName.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import r from\"../../../../internal/LoadingWrapper/LoadingWrapper.js\";import s from\"./CardFields.js\";import a from\"./KCPAuthentication.js\";import l from\"../../../../internal/SocialSecurityNumberBrazil/SocialSecurityNumberBrazil.js\";import n from\"../../../../internal/StoreDetails/StoreDetails.js\";import o from\"../../../../internal/Address/Address.js\";import i from\"./CardHolderName.js\";import d from\"./Installments/Installments.js\";import t from\"../../../../internal/DisclaimerMessage/DisclaimerMessage.js\";const u=({data:u,valid:c,errors:m,handleChangeFor:p,sfpState:h,setFocusOn:b,cvcPolicy:y,focusedElement:N,hasInstallments:A,handleInstallments:F,showAmountsInInstallments:S,brandsIcons:g,formData:f,formErrors:C,formValid:B,expiryDatePolicy:x,dualBrandSelectElements:w,extensions:v,selectedBrandValue:D,showKCP:I,showBrazilianSSN:j,socialSecurityNumber:E,handleOnStoreDetails:P,billingAddress:O,handleAddress:k,setAddressRef:V,partialAddressSchema:R,onAddressLookup:q,onAddressSelected:M,addressSearchDebounceMs:H,billingAddressRequired:L,billingAddressRequiredFields:T,billingAddressAllowedCountries:_,billingAddressValidationRules:z=null,brandsConfiguration:K,showStoreDetailsCheckbox:W,hasCVC:$,hasHolderName:G,holderNameRequired:J,installmentOptions:Q,placeholders:U,positionHolderNameOnTop:X,showBrandIcon:Y,showContextualElement:Z,iOSFocusedField:ee,disclaimerMessage:re,onFieldFocusAnalytics:se,onFieldBlurAnalytics:ae})=>{const le=e(i,{required:J,placeholder:U.holderName,value:f.holderName,error:!!C.holderName&&J,isValid:!!B.holderName,onBlur:p(\"holderName\",\"blur\"),onInput:p(\"holderName\",\"input\"),disabled:ee&&\"holderName\"!==ee,onFieldFocusAnalytics:se,onFieldBlurAnalytics:ae});return e(r,{status:h.status},G&&X&&le,e(s,{showBrandIcon:Y,showContextualElement:Z,brand:h.brand??\"card\",brandsIcons:g,brandsConfiguration:K,focusedElement:N,onFocusField:b,hasCVC:$,cvcPolicy:y,expiryDatePolicy:x,errors:h.errors,valid:h.valid,dualBrandingElements:w.length>0&&w,dualBrandingChangeHandler:v.handleDualBrandSelection,selectedBrandValue:D}),G&&!X&&le,I&&e(a,{onFocusField:b,focusedElement:N,encryptedPasswordState:{data:h.encryptedPassword,valid:!!h.valid&&h.valid.encryptedPassword,errors:!!h.errors&&h.errors.encryptedPassword},value:u.taxNumber,error:!!m.taxNumber,isValid:!!c.taxNumber,onBlur:p(\"taxNumber\",\"blur\"),onInput:p(\"taxNumber\",\"input\"),disabled:ee&&\"kcpTaxNumberOrDOB\"!==ee,placeholder:U.taxNumber,onFieldFocusAnalytics:se,onFieldBlurAnalytics:ae}),j&&e(\"div\",{className:\"adyen-checkout__card__socialSecurityNumber\"},e(l,{onBlur:p(\"socialSecurityNumber\",\"blur\"),onInput:p(\"socialSecurityNumber\",\"input\"),error:m?.socialSecurityNumber,valid:c?.socialSecurityNumber,data:E,required:!0,disabled:ee&&\"socialSecurityNumber\"!==ee,onFieldFocusAnalytics:se,onFieldBlurAnalytics:ae})),W&&e(n,{onChange:P}),A&&e(d,{brand:h.brand,installmentOptions:Q,onChange:F,type:S?\"amount\":\"months\"}),L&&e(o,{label:\"billingAddress\",data:O,onChange:k,allowedCountries:_,requiredFields:T,setComponentRef:V,validationRules:z,specifications:R,iOSFocusedField:ee,onAddressLookup:q,showContextualElement:Z,onAddressSelected:M,addressSearchDebounceMs:H,onFieldFocusAnalytics:se,onFieldBlurAnalytics:ae}),re&&e(t,{message:re.message.replace(\"%{linkText}\",`%#${re.linkText}%#`),urls:[re.link]}))};export{u as CardFieldsWrapper};\n//# sourceMappingURL=CardFieldsWrapper.js.map\n","const o=o=>{if(o){const t=document.body.getBoundingClientRect().top,n=o.getBoundingClientRect().top-t-100;window.scrollTo({top:n,behavior:\"smooth\"})}};export{o as windowScrollTo};\n//# sourceMappingURL=windowScrollTo.js.map\n","import{ENCRYPTED_CARD_NUMBER as e}from\"../../../internal/SecuredFields/lib/constants.js\";import{selectOne as r}from\"../../../internal/SecuredFields/lib/utilities/dom.js\";import t from\"../../../internal/SecuredFields/lib/CSF/utils/userAgent.js\";import{windowScrollTo as i}from\"../../../../utils/windowScrollTo.js\";import{isSecuredField as o}from\"../../../internal/SecuredFields/utils.js\";const n=(e,r,n)=>{if(e){if(t.__IS_IOS){const e=r.current.getRootNode?.(),t=e?.querySelector(`[data-id=\"${n}\"]`);i(t)}o(n)?r.current.setFocusOn(n):d(n,r,t.__IS_IOS)}},s=(e,r,t)=>i=>{e(\"billingAddress\",i.data),r(\"billingAddress\",i.isValid),t(\"billingAddress\",i.errors)},c=(e,r,t)=>i=>{e(i.currentFocusObject),!0===i.focus?r(i.fieldType,i):t(i.fieldType,i)},l=(r,t,i)=>()=>{r.current||(r.current=!0,Promise.resolve().then(()=>{const n=i.findIndex(r=>r===e),s=i.slice(n+1);for(const e of s){if(!o(e)){d(e,t,!1);break}if(!t.current.sfIsOptionalOrHidden(e)){t.current.setFocusOn(e);break}}r.current=!1}))},d=(e,t,i)=>{\"taxNumber\"===e&&(e=\"kcpTaxNumberOrDOB\");const o=t.current.getRootNode?.();if(\"country\"===e||\"stateOrProvince\"===e){const t=r(o,`.adyen-checkout__field--${e} .adyen-checkout__filter-input`);t?.focus({preventScroll:i})}else{const t=r(o,`[name=\"${e}\"]`);t?.focus({preventScroll:i})}};export{s as getAddressHandler,l as getAutoJumpHandler,c as getFocusHandler,n as setFocusOnFirstField};\n//# sourceMappingURL=handlers.js.map\n","function t(t,e,n){let l;const o=n;return 1!==t.length||e||(l=t),t.length>e?.length&&(l=t.filter(({[o]:t})=>!e.some(({[o]:e})=>e===t))),l}export{t as getArrayDifferences};\n//# sourceMappingURL=arrayUtils.js.map\n","import{createElement as t}from\"../../../external/preact/dist/preact.js\";import{useCoreContext as e}from\"../../../core/Context/CoreProvider.js\";const r=()=>{const{i18n:r}=e();return t(\"p\",{className:\"adyen-checkout-form-instruction\"},r.get(\"form.instruction\"))};export{r as default};\n//# sourceMappingURL=FormInstruction.js.map\n","import{useRef as e,useEffect as r}from\"../external/preact/hooks/dist/hooks.js\";function t(t){const o=e();return r(()=>{o.current=t},[t]),o.current}export{t as usePrevious};\n//# sourceMappingURL=hookUtils.js.map\n","import{useState as r,useEffect as s}from\"../../../../external/preact/hooks/dist/hooks.js\";import e from\"../../../../core/Errors/useSRPanelContext.js\";import{mapFieldKey as o,handlePartialAddressMode as t,lookupBlurBasedErrors as i}from\"./utils.js\";import{usePrevious as a}from\"../../../../utils/hookUtils.js\";import{ERROR_ACTION_BLUR_SCENARIO as l,ERROR_ACTION_FOCUS_FIELD as n}from\"../../../../core/Errors/constants.js\";import{setFocusOnFirstField as c}from\"./handlers.js\";import{getArrayDifferences as u}from\"../../../../utils/arrayUtils.js\";const d=({errors:d,props:p,isValidating:f,retrieveLayout:m,specifications:g,billingAddress:y,sfp:S})=>{const{setSRMessagesFromObjects:b,setSRMessagesFromStrings:h,clearSRPanel:j,shouldMoveFocusSR:E}=e(),R=b?.({fieldTypeMappingFn:o}),F=t(p.billingAddressMode),[M,k]=r(null),L=a(M),T=S.current?.mapErrorsToValidationRuleResult(),A={...d,...T};return s(()=>{try{const{billingAddress:r,...s}=A,e={...s,...r},o=R?.({errors:e,isValidating:f.current,layout:m(),countrySpecificLabels:g.getAddressLabelsForCountry(y?.country)??F?.default?.labels,hasDisplayedErrors:!!M?.length}),t=o?.currentErrorsSortedByLayout;switch(k(t),o?.action){case n:E&&o?.fieldToFocus&&c(f.current,S,o?.fieldToFocus),setTimeout(()=>{f.current=!1},300);break;case l:{const r=u(t,L,\"field\"),s=r?.[0];if(s){const r=i(s.errorCode)?s.errorMessage:null;h(r)}else j();break}}}catch(r){}},[d]),{sortedErrorList:M,previousSortedErrors:L,clearSRPanel:j}};export{d as default};\n//# sourceMappingURL=useSRPanelForCardInputErrors.js.map\n","import{createElement as e}from\"../../../external/preact/dist/preact.js\";import{useMemo as a,useCallback as t}from\"../../../external/preact/hooks/dist/hooks.js\";import l from\"../../../_virtual/index.js\";import o from\"../../../utils/uuid.js\";const s=({label:s,labelPosition:c=\"after\",ariaLabel:n,description:i,checked:d,disabled:r=!1,readonly:g=!1,onChange:h})=>{const p=a(()=>i?`toggle-description-${o()}`:null,[i]),u=a(()=>n||(\"string\"==typeof s?s:null),[n,s]),m=l({\"adyen-checkout-toggle--label-first\":\"before\"===c,\"adyen-checkout-toggle--disabled\":r,\"adyen-checkout-toggle--readonly\":g}),k=t(e=>{h(e.target.checked)},[h]);return e(\"label\",{className:`adyen-checkout-toggle ${m}`},e(\"input\",{disabled:r,checked:d,onChange:k,\"aria-label\":u,\"aria-readonly\":g,\"aria-describedby\":p,role:\"switch\",type:\"checkbox\",className:\"adyen-checkout-toggle__input\"}),e(\"span\",{\"aria-hidden\":!0,className:\"adyen-checkout-toggle__track\"},e(\"span\",{className:\"adyen-checkout-toggle__handle\"},d&&e(\"svg\",{role:\"img\",xmlns:\"http://www.w3.org/2000/svg\",width:\"16\",height:\"16\",fill:\"none\"},e(\"path\",{fill:\"#00112C\",d:\"M12.0608 6.00011L11.0001 4.93945L7.00011 8.93945L5.00011 6.93945L3.93945 8.00011L7.00011 11.0608L12.0608 6.00011Z\"})))),s&&e(\"span\",{className:\"adyen-checkout-toggle__label-container\"},e(\"span\",{className:\"adyen-checkout-toggle__label-text\",\"data-testid\":\"inner-label\"},s),i&&e(\"span\",{\"data-testid\":\"description\",className:\"adyen-checkout-toggle__description\",id:p},i)))};export{s as default};\n//# sourceMappingURL=Toggle.js.map\n","function e(e){if(!e)return\"\";let l=e;return l=l.replace(/\\D/g,\"\"),l.length>3&&l.length<=6?l=l.slice(0,3)+\" \"+l.slice(3):l.length>6&&(l=l.slice(0,3)+\" \"+l.slice(3,6)+\" \"+l.slice(6,10)),l}export{e as default};\n//# sourceMappingURL=mobile-number-formatter.js.map\n","import{createElement as e}from\"../../../../external/preact/dist/preact.js\";import{useRef as r,useCallback as t,useEffect as o}from\"../../../../external/preact/hooks/dist/hooks.js\";import l from\"../../../internal/FormFields/Field/Field.js\";import m from\"../../../../utils/useForm/useForm.js\";import\"../../../internal/SecuredFields/lib/CSF/utils/userAgent.js\";import a from\"../../../internal/FormFields/InputTelephone.js\";import{useCoreContext as i}from\"../../../../core/Context/CoreProvider.js\";import n from\"./utils/mobile-number-formatter.js\";const u=({initialValue:u,onChange:s})=>{const{i18n:b}=i(),{handleChangeFor:c,data:p}=m({schema:[\"mobileNumber\"],defaultData:{mobileNumber:u},formatters:{mobileNumber:n}}),f=r(null),d=t(()=>{f.current?.focus()},[f.current]);return o(()=>{s(p.mobileNumber?.replaceAll(\" \",\"\"))},[p.mobileNumber,s]),e(l,{name:\"mobile-number\",label:b.get(\"card.fastlane.mobileInputLabel\"),staticValue:\"+1\",onInputContainerClick:d},e(a,{name:\"mobile-number\",autocorrect:\"off\",spellcheck:!1,maxlength:12,value:p.mobileNumber,onInput:c(\"mobileNumber\",\"input\"),onBlur:c(\"mobileNumber\",\"blur\"),setRef:f}))};export{u as default};\n//# sourceMappingURL=USOnlyPhoneInput.js.map\n","import{useState as e,useEffect as t}from\"../../../external/preact/hooks/dist/hooks.js\";const o=({rootElement:o,focusFirst:n,shouldTrap:s=!0})=>{const[d,i]=e(n);t(()=>{s&&d?.focus()},[d,s]),t(()=>{if(!s)return;const e=o.querySelectorAll('a[href]:not([disabled]), button:not([disabled]), textarea:not([disabled]), input[type=\"text\"]:not([disabled]), input[type=\"radio\"]:not([disabled]), input[type=\"checkbox\"]:not([disabled]), select:not([disabled])'),t=e[0],d=e[e.length-1];i(n||t);const r=e=>{if(\"Tab\"===e.key||9===e.keyCode)return e.shiftKey&&document.activeElement===t?(d.focus(),void e.preventDefault()):document.activeElement===d?(t.focus(),void e.preventDefault()):void 0};return o.addEventListener(\"keydown\",r),()=>{i(null),o.removeEventListener(\"keydown\",r)}},[o,n,s])};export{o as useTrapFocus};\n//# sourceMappingURL=useTrapFocus.js.map\n","import{useTrapFocus as e}from\"./useTrapFocus.js\";import{useCallback as s,useEffect as o}from\"../../../external/preact/hooks/dist/hooks.js\";const t=({modalElement:t,isOpen:r,isDismissible:n,focusFirst:a,focusAfterClose:c,onClose:i})=>{e({rootElement:t,shouldTrap:r,focusFirst:a});const l=s(()=>{c.focus(),i()},[i,c]),u=s(e=>{n&&e.target instanceof HTMLElement&&!t.contains(e.target)&&l()},[l,n,t]);return o(()=>{if(!r||!t)return;const e=e=>{(\"Escape\"===e.key||\"Esc\"===e.key||27===e.keyCode)&&l()};return t.addEventListener(\"keydown\",e),()=>t.removeEventListener(\"keydown\",e)},[r,t,l]),{closeModal:l,handleClickOutside:u}};export{t as useModal};\n//# sourceMappingURL=useModal.js.map\n","import{createElement as e}from\"../../../external/preact/dist/preact.js\";import{useRef as r,useEffect as o}from\"../../../external/preact/hooks/dist/hooks.js\";import s from\"../../../_virtual/index.js\";import{useModal as a}from\"./useModal.js\";const t=({children:t,classNameModifiers:i=[],isOpen:n,onClose:l,isDismissible:c=!0,labelledBy:d,describedBy:m,focusFirst:u,focusAfterClose:p,...f})=>{const k=r(),{closeModal:y,handleClickOutside:h}=a({modalElement:k.current,isOpen:n,isDismissible:c,focusFirst:u,focusAfterClose:p,onClose:l});return o(()=>{if(!k.current)return;const e=e=>{\"Enter\"!==e.key&&\"Enter\"!==e.code||e.stopPropagation()};return k.current.addEventListener(\"keydown\",e,{capture:!0}),()=>{k.current.removeEventListener(\"keydown\",e)}},[k.current]),e(\"div\",{className:s(\"adyen-checkout__modal-wrapper\",i.map(e=>`adyen-checkout__modal-wrapper--${e}`),{\"adyen-checkout__modal-wrapper--open\":n}),role:\"dialog\",\"aria-labelledby\":d,\"aria-describedby\":m,\"aria-modal\":\"true\",\"aria-hidden\":!n,onClick:h,...f},e(\"div\",{className:\"adyen-checkout__modal\",ref:k},t({onCloseModal:y})))};export{t as Modal};\n//# sourceMappingURL=Modal.js.map\n","import{Component as e,createElement as t}from\"../../../external/preact/dist/preact.js\";import a from\"../../../_virtual/index.js\";import n from\"../Spinner/Spinner.js\";import{useCoreContext as i}from\"../../../core/Context/CoreProvider.js\";function o(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}class r extends e{render(){const{id:e,classNameModifiers:o=[],disabled:r,href:s,icon:l,onClickCompletedIcon:c,inline:d,label:u,ariaLabel:p,ariaLabelledBy:m,ariaDescribedBy:b,ariaExpanded:h,ariaControls:_,status:y,variant:f,buttonRef:g,onClickCompletedLabel:k,onMouseEnter:C,onMouseLeave:v,onFocus:x,onBlur:N,onKeyDown:S}=this.props,{completed:L}=this.state,{i18n:B}=i(),j=c||l?t(\"img\",{className:\"adyen-checkout__button__icon\",src:this.state.completed?c??l:l,alt:\"\",\"aria-hidden\":\"true\"}):\"\",D=[...o,...\"primary\"===f?[]:[f],...d?[\"inline\"]:[],...L?[\"completed\"]:[],...\"loading\"===y||\"redirect\"===y?[\"loading\"]:[]],M=a([\"adyen-checkout__button\",...D.map(e=>`adyen-checkout__button--${e}`)]),E={loading:t(\"span\",{\"aria-hidden\":\"true\",className:\"adyen-checkout__button__content\"},t(n,{size:\"medium\",inline:!0})),redirect:t(\"span\",{\"aria-hidden\":\"true\",className:\"adyen-checkout__button__content\"},t(n,{size:\"medium\",inline:!0}),B.get(\"payButton.redirecting\")),default:t(\"span\",{className:\"adyen-checkout__button__content\"},j,t(\"span\",{className:\"adyen-checkout__button__text\"},this.state.completed?k??u:u))},w=E[y]||E.default;return s?t(\"a\",{className:M,href:s,target:this.props.target,rel:this.props.rel,\"aria-disabled\":r,onClick:e=>{r&&e.preventDefault()}},w):t(\"button\",{ref:g,id:e,className:M,type:\"button\",disabled:r,onClick:this.onClick,\"aria-label\":p,\"aria-labelledby\":m,\"aria-describedby\":b,\"aria-expanded\":h,\"aria-controls\":_,onMouseEnter:C,onMouseLeave:v,onKeyDown:S,onFocus:x,onBlur:N},w,\"loading\"!==y&&\"redirect\"!==y&&this.props.children,t(\"span\",{role:\"status\",\"aria-live\":\"polite\",className:\"adyen-checkout__button__text--sr-only\"},B.get(this.buttonStatusSRLabel(y))))}constructor(...e){super(...e),o(this,\"onClick\",e=>{e.preventDefault(),this.props.disabled||this.props.onClick?.(e,{complete:this.complete})}),o(this,\"complete\",(e=1e3)=>{this.setState({completed:!0}),setTimeout(()=>{this.setState({completed:!1})},e)}),o(this,\"buttonStatusSRLabel\",e=>({loading:\"loading\",redirect:\"payButton.redirecting\"}[e]||\"\"))}}o(r,\"defaultProps\",{status:\"default\",variant:\"primary\",disabled:!1,label:\"\",inline:!1,target:\"_self\"});export{r as default};\n//# sourceMappingURL=Button.js.map\n","import{createElement as e}from\"../../../../external/preact/dist/preact.js\";import{useRef as a}from\"../../../../external/preact/hooks/dist/hooks.js\";import t from\"../../../../core/Context/useImage.js\";import{Modal as l}from\"../../../internal/Modal/Modal.js\";import d from\"../../../internal/Img/Img.js\";import o from\"../../../internal/Button/Button.js\";import{useCoreContext as s}from\"../../../../core/Context/CoreProvider.js\";import n from\"../../../../utils/uuid.js\";const r=[{headerKey:\"card.fastlane.modal.benefit1.header\",labelById:`adyen-fastlane-modal-label-${n()}`,descriptionTextKey:\"card.fastlane.modal.benefit1.text\",describedById:`adyen-fastlane-modal-describedBy-${n()}`,image:\"fastlane_autofill\",altImage:\"\"},{headerKey:\"card.fastlane.modal.benefit2.header\",labelById:`adyen-fastlane-modal-label-${n()}`,descriptionTextKey:\"card.fastlane.modal.benefit2.text\",describedById:`adyen-fastlane-modal-describedBy-${n()}`,image:\"fastlane_protection\",altImage:\"\"},{headerKey:\"card.fastlane.modal.benefit3.header\",labelById:`adyen-fastlane-modal-label-${n()}`,descriptionTextKey:\"card.fastlane.modal.benefit3.text\",describedById:`adyen-fastlane-modal-describedBy-${n()}`,image:\"fastlane_ubiquity\",altImage:\"\"}],i=({isOpen:n,onClose:i,focusAfterClose:c})=>{const{i18n:m}=s(),f=a(),y=t(),b=r.map(e=>e.labelById).join(\" \"),p=r.map(e=>e.describedById).join(\" \");return e(l,{onClose:i,isOpen:n,labelledBy:b,describedBy:p,focusFirst:f.current,focusAfterClose:c},({onCloseModal:a})=>e(\"div\",{className:\"adyen-checkout-card-fastlane__modal\"},e(\"div\",{className:\"adyen-checkout-card-fastlane__modal-button-container\"},e(o,{onClick:a,inline:!0,variant:\"link\",ariaLabel:m.get(\"card.fastlane.a11y.closeDialog\"),label:e(d,{height:\"10\",width:\"10\",src:y({imageFolder:\"components/\"})(\"cross_black\"),\"aria-hidden\":!0,alt:\"\"})})),r.map(a=>e(\"div\",{key:a.labelById,className:\"adyen-checkout-card-fastlane__modal-section\"},e(d,{className:\"adyen-checkout-card-fastlane__modal-section-image\",src:y({imageFolder:\"components/\"})(a.image),alt:a.altImage}),e(\"h1\",{id:a.labelById,className:\"adyen-checkout-card-fastlane__modal-section-header\"},m.get(a.headerKey)),e(\"div\",{id:a.describedById,className:\"adyen-checkout-card-fastlane__modal-section-text\"},m.get(a.descriptionTextKey)))),e(d,{className:\"adyen-checkout-card-fastlane__modal-brand\",src:y({imageFolder:\"components/\"})(\"paypal_fastlane_black\"),alt:m.get(\"card.fastlane.a11y.logo\")})))};export{i as InfoModal};\n//# sourceMappingURL=InfoModal.js.map\n","import{createElement as e,Fragment as o}from\"../../../../external/preact/dist/preact.js\";import{useState as t,useRef as a,useCallback as r}from\"../../../../external/preact/hooks/dist/hooks.js\";import{useCoreContext as n}from\"../../../../core/Context/CoreProvider.js\";import s from\"../../../../core/Context/useImage.js\";import{InfoModal as i}from\"./InfoModal.js\";import l from\"../../../internal/Img/Img.js\";import m from\"../../../internal/Button/Button.js\";const f=()=>{const[f,c]=t(!1),{i18n:p}=n(),d=s(),u=a(),g=r(()=>{c(!1)},[]),j=r(()=>{c(!0)},[]);return e(o,null,e(m,{buttonRef:u,onClick:j,classNameModifiers:[\"fastlane-info-modal\"],variant:\"link\",ariaLabel:p.get(\"card.fastlane.a11y.openDialog\"),label:e(l,{height:\"14\",width:\"14\",src:d({imageFolder:\"components/\"})(\"fastlane_info\"),alt:\"\",\"aria-hidden\":!0})}),e(i,{isOpen:f,onClose:g,focusAfterClose:u.current}))};export{f as InfoButton};\n//# sourceMappingURL=InfoButton.js.map\n","import{isValidHttpUrl as n}from\"../../../../../utils/isValidURL.js\";const o=[\"showConsent\",\"defaultToggleState\",\"termsAndConditionsLink\",\"privacyPolicyLink\",\"termsAndConditionsVersion\",\"fastlaneSessionId\"],e=e=>{if(!e)return!1;Object.keys(e).forEach(n=>!o.includes(n)&&console.warn(`Fastlane: '${n}' is not valid Fastlane config property`));const{showConsent:t,defaultToggleState:i,termsAndConditionsLink:s,privacyPolicyLink:a,termsAndConditionsVersion:l}=e;let r=!1;return r=t?n(a)&&n(s)&&\"boolean\"==typeof t&&\"boolean\"==typeof i&&!!l:\"boolean\"==typeof t,r||console.warn(\"Fastlane: Component configuration is not valid. Fastlane will not be displayed\"),r};export{e as isConfigurationValid};\n//# sourceMappingURL=validate-configuration.js.map\n","import{ERROR_INVALID_FORMAT_EXPECTS as t,ERROR_FIELD_REQUIRED as o,BOLETO_SOCIAL_SECURITY_NUMBER_INVALID as e,CREDITCARD_TAX_NUMBER_INVALID as r,CREDITCARD_HOLDER_NAME_INVALID as c}from\"../Errors/constants.js\";const s=3e3,n={[c]:\"925\",[r]:\"942\",[e]:\"926\",[`${o}.country`]:\"930\",[`${o}.street`]:\"931\",[`${o}.house_number_or_name`]:\"932\",[`${o}.postal_code`]:\"933\",[`${o}.city`]:\"935\",[`${o}.state_or_province`]:\"936\",[`${t}.postal_code`]:\"934\"},$=\"fetch-checkoutAttemptId-failed\";export{s as ANALYTICS_SEARCH_DEBOUNCE_TIME,$ as NO_CHECKOUT_ATTEMPT_ID,n as errorCodeMapping};\n//# sourceMappingURL=constants.js.map\n","const e=e=>e.replace(/[^0-9]/g,\"\");export{e as digitsOnlyFormatter};\n//# sourceMappingURL=formatters.js.map\n","import{errorCodeMapping as t}from\"./constants.js\";import{digitsOnlyFormatter as o}from\"../../utils/Formatters/formatters.js\";import{ERROR_FIELD_REQUIRED as r,ERROR_INVALID_FORMAT_EXPECTS as c}from\"../Errors/constants.js\";const e=(e,p)=>{if(e===r||e===c)return t[`${e}.${p}`]??e;let i=t[e]??e;return isNaN(Number(i))&&(i=o(i)),i},p=t=>t?[\"applicationInfo\",\"checkoutAttemptId\"].reduce((o,r)=>\"applicationInfo\"===r?(void 0!==t.applicationInfo&&(o.applicationInfo=t.applicationInfo),o):(\"checkoutAttemptId\"===r&&void 0!==t.checkoutAttemptId&&(o.checkoutAttemptId=t.checkoutAttemptId),o),{}):{};export{e as mapErrorCodesForAnalytics,p as processAnalyticsData};\n//# sourceMappingURL=utils.js.map\n","import{AbstractAnalyticsEvent as e,AnalyticsEventCategory as t}from\"./AbstractAnalyticsEvent.js\";import{mapErrorCodesForAnalytics as o}from\"../utils.js\";function a(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}var i=function(e){return e.instantPaymentButton=\"instant_payment_button\",e.dualBrandButton=\"dual_brand_button\",e.fastlaneSignupConsentToggle=\"fastlane_signup_consent_toggle\",e.otherPaymentMethodButton=\"otherpaymentmethod_button\",e.featuredIssuer=\"featured_issuer\",e.list=\"list\",e.listSearch=\"list_search\",e.qrDownloadButton=\"qr_download_button\",e.segmentedControl=\"segmented_control\",e.cardNumber=\"card_number\",e.expiryDate=\"expiry_date\",e.expiryMonth=\"expiry_month\",e.expiryYear=\"expiry_year\",e.securityCode=\"security_code\",e.donationAmountButton=\"donation_amount_button\",e}({}),d=function(e){return e.clicked=\"clicked\",e.rendered=\"rendered\",e.selected=\"selected\",e.validationError=\"validationError\",e.focus=\"focus\",e.unfocus=\"unfocus\",e.configured=\"configured\",e.displayed=\"displayed\",e.input=\"input\",e.download=\"download\",e.sdkDownloadInitiated=\"sdkDownloadInitiated\",e.sdkDownloadFailed=\"sdkDownloadFailed\",e.sdkDownloadAborted=\"sdkDownloadAborted\",e.sdkDownloadCompleted=\"sdkDownloadCompleted\",e.Initialized=\"initialized\",e.LookupStarted=\"lookupStarted\",e.LookupUserNotFound=\"lookupUserNotFound\",e.OtpStarted=\"otpStarted\",e.OtpSucceeded=\"otpSucceeded\",e.OtpCanceled=\"otpCanceled\",e.OtpFailed=\"otpFailed\",e.AddressSelectorClicked=\"addressSelectorClicked\",e.AddressSelectorClosed=\"addressSelectorClosed\",e.AddressChanged=\"addressChanged\",e.PaymentListDisplayed=\"paymentListDisplayed\",e}({});class s extends e{get configDataExcludedFields(){return[\"paymentMethodsConfiguration\",\"elementRef\",\"isDropin\",\"oneClick\",\"storedPaymentMethodId\",\"paymentMethodId\",\"isInstantPayment\",\"type\",\"data\",\"holderName\",\"shopperEmail\",\"email\",\"telephoneNumber\",\"clickToPayConfiguration\",\"modules\",\"i18n\"]}createAnalyticsConfigData(e){if(!e)return{};const t={};try{for(const[o,a]of Object.entries(e))this.configDataExcludedFields.includes(o)||(\"function\"==typeof a?t[o]=\"function\":Array.isArray(a)?t[o]=a.join(\", \").substring(0,128):t[o]=\"object\"==typeof a&&null!==a?JSON.stringify(a).substring(0,128):a);return t}catch(e){return t}}getEventCategory(){return t.info}constructor(e){super(e.component),a(this,\"type\",void 0),a(this,\"configData\",void 0),a(this,\"target\",void 0),a(this,\"issuer\",void 0),a(this,\"isExpress\",void 0),a(this,\"expressPage\",void 0),a(this,\"isStoredPaymentMethod\",void 0),a(this,\"brand\",void 0),a(this,\"selectedValue\",void 0),a(this,\"validationErrorCode\",void 0),a(this,\"validationErrorMessage\",void 0),a(this,\"presentedValues\",void 0),a(this,\"availablePaymentMethods\",void 0),a(this,\"unavailablePaymentMethods\",void 0),a(this,\"cdnUrl\",void 0),this.type=e.type,e.target&&(this.target=e.target),e.issuer&&(this.issuer=e.issuer),void 0!==e.isStoredPaymentMethod&&(this.isStoredPaymentMethod=e.isStoredPaymentMethod),void 0!==e.isExpress&&(this.isExpress=e.isExpress),e.expressPage&&(this.expressPage=e.expressPage),e.brand&&(this.brand=e.brand),e.cdnUrl&&(this.cdnUrl=e.cdnUrl),e.selectedValue&&(this.selectedValue=e.selectedValue),e.validationErrorCode&&(this.validationErrorCode=e.validationErrorCode),e.validationErrorMessage&&(this.validationErrorMessage=e.validationErrorMessage),e.presentedValues&&(this.presentedValues=e.presentedValues),e.availablePaymentMethods&&(this.availablePaymentMethods=e.availablePaymentMethods),e.unavailablePaymentMethods&&(this.unavailablePaymentMethods=e.unavailablePaymentMethods),\"rendered\"===this.type&&(this.configData=this.createAnalyticsConfigData(e?.configData)),\"validationError\"===this.type&&(this.validationErrorCode=o(this.validationErrorCode,this.target))}}export{s as AnalyticsInfoEvent,d as InfoEventType,i as UiTarget};\n//# sourceMappingURL=AnalyticsInfoEvent.js.map\n","import{createElement as e,Fragment as n}from\"../../../../external/preact/dist/preact.js\";import{useMemo as t,useState as a,useCallback as o,useEffect as s}from\"../../../../external/preact/hooks/dist/hooks.js\";import r from\"../../../../_virtual/index.js\";import i from\"../../../internal/Toggle/Toggle.js\";import l from\"../../../internal/Img/Img.js\";import c from\"../../../../core/Context/useImage.js\";import m from\"./USOnlyPhoneInput.js\";import{InfoButton as d}from\"./InfoButton.js\";import{useCoreContext as g}from\"../../../../core/Context/CoreProvider.js\";import{LabelOnlyDisclaimerMessage as f}from\"../../../internal/DisclaimerMessage/DisclaimerMessage.js\";import{isConfigurationValid as u}from\"./utils/validate-configuration.js\";import p from\"./utils/mobile-number-formatter.js\";import{AnalyticsInfoEvent as y,UiTarget as h,InfoEventType as k}from\"../../../../core/Analytics/events/AnalyticsInfoEvent.js\";const C=[\"mc\",\"visa\"],j=({showConsent:j,defaultToggleState:v,termsAndConditionsLink:_,privacyPolicyLink:S,termsAndConditionsVersion:b,fastlaneSessionId:I,currentDetectedBrand:T,telephoneNumber:x,onChange:A,onSubmitAnalytics:D,type:N})=>{const w=t(()=>j&&C.includes(T),[j,T]),[L,P]=a(w),[V,E]=a(v),F=c(),[M,B]=a(\"\"),{i18n:O}=g(),G=t(()=>u({showConsent:j,defaultToggleState:v,termsAndConditionsLink:_,privacyPolicyLink:S,termsAndConditionsVersion:b,fastlaneSessionId:I}),[j,v,_,S,b,I]),R=o(()=>{const e=!V;E(e);const n=new y({component:N,type:k.clicked,target:h.fastlaneSignupConsentToggle,configData:{isToggleOn:e}});D(n)},[V,D,N]);return s(()=>{G&&A({fastlaneData:{consentShown:L,fastlaneSessionId:I,consentGiven:!!w&&V,...b&&{consentVersion:b},...M&&{telephoneNumber:M}}})},[w,L,b,V,I,M,A,G]),s(()=>{w&&P(!0)},[w]),s(()=>{if(!G)return;const e=new y({component:N,type:k.rendered,configData:{isFastlaneSignupRendered:w}});D(e)},[w,G,D,N]),w&&G?e(\"div\",{className:\"adyen-checkout-card__fastlane\",\"data-testid\":\"fastlane-signup-component\"},e(\"div\",{className:r(\"adyen-checkout-card__fastlane-consent-toggle\",{\"adyen-checkout-card__fastlane-consent-toggle--active\":V})},e(i,{checked:V,onChange:R,ariaLabel:O.get(\"card.fastlane.consentToggle\"),label:e(\"span\",null,O.get(\"card.fastlane.consentToggle\"))}),e(d,null)),V&&e(n,null,e(m,{initialValue:p(x),onChange:B}),e(\"div\",{className:\"adyen-checkout-card__fastlane-consent-text\"},e(f,{message:O.get(\"card.fastlane.consentText\"),urls:[_,S]})),e(l,{className:\"adyen-checkout-card__fastlane-brand\",src:F({imageFolder:\"components/\"})(\"paypal_fastlane_black\"),alt:O.get(\"card.fastlane.a11y.logo\")}))):null};export{j as default};\n//# sourceMappingURL=FastlaneSignup.js.map\n","import{createElement as e,Fragment as r}from\"../../../../external/preact/dist/preact.js\";import{useRef as t,useMemo as o,useState as n,useCallback as s,useEffect as a}from\"../../../../external/preact/hooks/dist/hooks.js\";import i from\"../../../internal/SecuredFields/SFP/SecuredFieldsProvider.js\";import l from\"./defaultProps.js\";import{AddressModeOptions as d}from\"./types.js\";import{ENCRYPTED_CARD_NUMBER as u,DATE_POLICY_REQUIRED as c,CVC_POLICY_REQUIRED as m}from\"../../../internal/SecuredFields/lib/constants.js\";import{cardInputValidationRules as p,getRuleByNameAndMode as y,cardInputFormatters as f}from\"./validate.js\";import h from\"../../../internal/SecuredFields/binLookup/extensions.js\";import b from\"../../../../utils/useForm/useForm.js\";import\"../../../internal/SecuredFields/lib/CSF/utils/userAgent.js\";import{handlePartialAddressMode as S,shouldShowInstallmentsComponent as g,extractPropsForCardFields as N,extractPropsForSFP as A,getLayout as C,requiresDualBrandSelection as F}from\"./utils.js\";import j from\"../../../internal/Address/Specifications.js\";import{StoredCardFieldsWrapper as v}from\"./components/StoredCardFieldsWrapper.js\";import{CardFieldsWrapper as w}from\"./components/CardFieldsWrapper.js\";import{getAutoJumpHandler as x,getFocusHandler as B,getAddressHandler as E}from\"./handlers.js\";import P from\"../../../../_virtual/index.js\";import{getPartialAddressValidationRules as k}from\"../../../internal/Address/validate.js\";import R from\"../../../../core/Context/useImage.js\";import{getArrayDifferences as I}from\"../../../../utils/arrayUtils.js\";import V from\"../../../internal/FormInstruction/FormInstruction.js\";import{PREFIX as D}from\"../../../internal/Icon/constants.js\";import O from\"./useSRPanelForCardInputErrors.js\";import q from\"../Fastlane/FastlaneSignup.js\";import{fieldTypeToSnakeCase as M}from\"../../../internal/SecuredFields/utils.js\";import{getErrorMessageFromCode as _}from\"../../../../core/Errors/utils.js\";import{SF_ErrorCodes as L}from\"../../../../core/Errors/constants.js\";import{usePrevious as T}from\"../../../../utils/hookUtils.js\";import{AnalyticsInfoEvent as U,InfoEventType as K,UiTarget as H}from\"../../../../core/Analytics/events/AnalyticsInfoEvent.js\";import{useAmount as z}from\"../../../../core/Context/AmountProvider.js\";import{DUAL_BRANDS_THAT_NEED_SELECTION_MECHANISM as W}from\"../../constants.js\";const $=l=>{const $=t(null),G=t(!1),J=R(),Q=t(null),X=e=>{Q.current=e},Y=t({});Object.keys(Y.current).length||l.setComponentRef(Y.current);const Z=t(0),ee=t(!1),re=o(()=>new j(l.specifications),[l.specifications]),{amount:te}=z();Y.current.sfp=$;const[oe,ne]=n(\"ready\"),[se,ae]=n({}),[ie,le]=n({...l.holderNameRequired&&{holderName:!1}}),[de,ue]=n({...l.hasHolderName&&{holderName:l.data?.holderName??\"\"}}),[ce,me]=n(\"\"),[pe,ye]=n(!1),[fe,he]=n(c),[be,Se]=n(m),[ge,Ne]=n(null),[Ae,Ce]=n([]),[Fe,je]=n(l.storedPaymentMethodId?l.brand:\"\"),ve=l.billingAddressMode!==d.none&&l.billingAddressRequired,we=S(l.billingAddressMode),xe=l.data?.billingAddress??null,Be=t(we?xe?.country?.toUpperCase()??null:null),[Ee,Pe]=n(!1),[ke,Re]=n(ve?xe:null),[Ie,Ve]=n(!1),[De,Oe]=n(\"\"),[qe,Me]=n({value:null}),[_e,Le]=n(null),[Te,Ue]=n(\"card\"),[Ke,He]=n(!1),{handleChangeFor:ze,triggerValidation:We,data:$e,valid:Ge,errors:Je,setSchema:Qe,setData:Xe,setValid:Ye,setErrors:Ze}=b({schema:[],defaultData:l.data,formatters:f,rules:p}),er=g({installmentOptions:l.installmentOptions,fundingSource:l.fundingSource,amount:te}),rr=l.showInstallmentAmounts??!0,tr=\"kr\"===(ge??l.countryCode),or=!!l.configuration.koreanAuthenticationRequired&&tr,nr=Ie&&\"auto\"===l.configuration.socialSecurityNumberMode||\"show\"===l.configuration.socialSecurityNumberMode,sr=(e,r)=>{l.onFocus({fieldType:e,event:r})},ar=(e,r)=>{l.onBlur({fieldType:e,event:r})},ir=s(e=>{Ue(e.brand),l.onBrand(e)},[]),lr=B(me,sr,ar),dr=()=>C({props:l,showKCP:or,showBrazilianSSN:nr,...l.billingAddressRequired&&{countrySpecificSchemas:re.getAddressSchemaForCountry(ke?.country),billingAddressRequiredFields:l.billingAddressRequiredFields}}),ur=s(e=>{const r=\"webInternalElement\"!==e.fieldType?e.fieldType:e.name;Le(r)},[]),cr=E(Xe,Ye,Ze),mr=x(ee,$,dr()),pr=s(e=>{yr(e)},[Ke,He]),yr=e=>{e.status&&(\"loading\"==e.status?He(!1):He(!0))},fr=o(()=>h(l,{sfp:$},{dualBrandSelectElements:Ae,setDualBrandSelectElements:Ce,setSelectedBrandValue:je,issuingCountryCode:ge,setIssuingCountryCode:Ne},Z),[Ae,ge]);Y.current.showValidation=()=>{G.current=!0,Sr?.(),$.current.showValidation(),We([\"holderName\",\"socialSecurityNumber\",\"taxNumber\"]),Q?.current&&Q.current.showValidation()},Y.current.processBinLookupResponse=(e,r)=>{fr.processBinLookup(e,r)},Y.current.setStatus=ne,a(()=>(Y.current.setFocusOn=$.current.setFocusOn,Y.current.updateStyles=$.current.updateStyles,Y.current.handleUnsupportedCard=$.current.handleUnsupportedCard,()=>{$.current.destroy()}),[]),a(()=>{const e=[...l.hasHolderName?[\"holderName\"]:[],...nr?[\"socialSecurityNumber\"]:[],...or?[\"taxNumber\"]:[],...ve?[\"billingAddress\"]:[]];Qe(e)},[l.hasHolderName,nr,or]),a(()=>{ue({...de,holderName:$e.holderName??\"\",taxNumber:$e.taxNumber}),Oe($e.socialSecurityNumber),ve&&Re({...$e.billingAddress}),le({...ie,holderName:!l.holderNameRequired||Ge.holderName,socialSecurityNumber:!!Ge.socialSecurityNumber&&Ge.socialSecurityNumber,taxNumber:!!Ge.taxNumber&&Ge.taxNumber,billingAddress:!!Ge.billingAddress&&Ge.billingAddress});const e=!!Je.billingAddress&&Object.entries(Je.billingAddress).reduce((e,[,r])=>e||null!=r,!1);ae({...se,holderName:l.holderNameRequired&&Je.holderName?Je.holderName:null,socialSecurityNumber:nr&&Je.socialSecurityNumber?Je.socialSecurityNumber:null,taxNumber:or&&Je.taxNumber?Je.taxNumber:null,billingAddress:ve&&e?Je.billingAddress:null})},[$e,Ge,Je]);const{sortedErrorList:hr,previousSortedErrors:br,clearSRPanel:Sr}=O({errors:se,props:l,isValidating:G,retrieveLayout:dr,specifications:re,billingAddress:ke,sfp:$});a(()=>{if(hr){const e=I(hr,br,\"field\");e?.forEach(e=>{const r=new U({component:l.type,type:K.validationError,target:M(e.field),validationErrorCode:e.errorCode,validationErrorMessage:_(e.errorCode,L)});l.onSubmitAnalytics(r)})}},[hr]),a(()=>{const e=!!ie.holderName,r=pe,t=!ve||!!ie.billingAddress,o=!or||!!ie.taxNumber&&!!ie.encryptedPassword,n=!nr||!!ie.socialSecurityNumber,s=r&&e&&t&&o&&n,a=$.current.mapErrorsToValidationRuleResult(),i={...se,...a};l.onChange({data:de,valid:ie,errors:i,isValid:s,billingAddress:ke,selectedBrandValue:Fe,storePaymentMethod:Ee,socialSecurityNumber:De,installments:qe})},[de,ie,se,Fe,Ee,qe]),a(()=>{if(Ae.length>0&&Ae){const e=Ae.map(e=>e.id),r=e[0],t=e.toString();if(!!Ae&&F(W,Ae,\"id\")){const e=new U({component:l.type,type:K.displayed,target:H.dualBrandButton,brand:r,configData:{dualBrands:t}});l.onSubmitAnalytics(e)}}},[Ae]);const gr=T(Fe);a(()=>{if(gr?.length&&Fe?.length){const e=new U({component:l.type,type:K.selected,target:H.dualBrandButton,brand:Fe});l.onSubmitAnalytics(e)}},[Fe]);const Nr=l.storedPaymentMethodId?v:w;return e(r,null,e(i,{ref:$,...A(l),styles:{...l.styles},koreanAuthenticationRequired:l.configuration.koreanAuthenticationRequired,hasKoreanFields:!(!l.configuration.koreanAuthenticationRequired||\"kr\"!==l.countryCode),onSubmitAnalytics:l.onSubmitAnalytics,onChange:(e,r)=>{if(e.autoCompleteName){if(!l.hasHolderName)return;const r=y(\"holderName\",\"blur\"),t=r?.(e.autoCompleteName,null)?e.autoCompleteName:null;return void(t&&(Xe(\"holderName\",t),Ye(\"holderName\",!0),Ze(\"holderName\",null)))}var t;l.autoFocus&&Z.current>0&&\"handleOnFieldValid\"===r?.event&&r?.fieldType===u&&e.valid.encryptedCardNumber&&mr(),ue({...de,...e.data}),ae({...se,...(t=e.errors,t?{encryptedCardNumber:!!t.encryptedCardNumber,encryptedExpiryDate:!!t.encryptedExpiryDate,encryptedSecurityCode:!!t.encryptedSecurityCode,encryptedPassword:!!t.encryptedPassword}:{})}),le({...ie,...e.valid}),ye(e.isSfpValid),Se(e.cvcPolicy),Ve(e.showSocialSecurityNumber),he(e.expiryDatePolicy)},onBrand:ir,onFocus:lr,onStateUpdate:pr,type:l.brand,componentType:l.type,disableIOSArrowKeys:l.disableIOSArrowKeys?ur:null,render:({setRootNode:r,setFocusOn:t},o)=>e(\"div\",{ref:r,className:P({\"adyen-checkout__card-input\":!0,\"adyen-checkout-card-input__wrapper\":!0,[`adyen-checkout__card-input--${l.fundingSource??\"credit\"}`]:!0,\"adyen-checkout__card-input--loading\":\"loading\"===oe}),role:\"form\"},Ke&&e(V,null),e(Nr,{...N(l),data:de,valid:ie,errors:se,handleChangeFor:ze,focusedElement:ce,setFocusOn:t,sfpState:o,cvcPolicy:be,hasInstallments:er,showAmountsInInstallments:rr,handleInstallments:Me,brandsIcons:l.brandsIcons,formData:$e,formErrors:Je,formValid:Ge,expiryDatePolicy:fe,dualBrandSelectElements:Ae,extensions:fr,selectedBrandValue:Fe,showKCP:or,showBrazilianSSN:nr,socialSecurityNumber:De,handleOnStoreDetails:Pe,setAddressRef:X,billingAddress:ke,billingAddressValidationRules:we&&k(Be.current),partialAddressSchema:we,handleAddress:cr,onAddressLookup:l.onAddressLookup,onAddressSelected:l.onAddressSelected,addressSearchDebounceMs:l.addressSearchDebounceMs,iOSFocusedField:_e,onFieldFocusAnalytics:sr,onFieldBlurAnalytics:ar}))}),l.fastlaneConfiguration&&e(q,{...l.fastlaneConfiguration,currentDetectedBrand:Te,onChange:l.onChange,onSubmitAnalytics:l.onSubmitAnalytics,type:l.type}),Ke&&l.showPayButton&&l.payButton({status:oe,variant:l.isPayButtonPrimaryVariant?\"primary\":\"secondary\",icon:J({imageFolder:\"components/\"})(`${D}lock`)}))};$.defaultProps=l;export{$ as default};\n//# sourceMappingURL=CardInput.js.map\n","function e(){if(\"undefined\"==typeof window)return;const e=window.screen.colorDepth,n=window.screen.height,t=window.screen.width,o=window.navigator.userAgent;return{acceptHeader:\"*/*\",javaEnabled:!1,colorDepth:e,language:window.navigator.language||\"en\",screenHeight:n,screenWidth:t,userAgent:o,timeZoneOffset:(new Date).getTimezoneOffset()}}export{e as default};\n//# sourceMappingURL=browserInfo.js.map\n","import{httpPost as e}from\"../../../../core/Services/http.js\";import{DEFAULT_CARD_GROUP_TYPES as r}from\"../lib/constants.js\";import{SF_ErrorCodes as n}from\"../../../../core/Errors/constants.js\";import{TxVariants as t}from\"../../../tx-variants.js\";const s=s=>{let o=null;return p=>{if(!1!==s.props.doBinLookup){if(p.encryptedBin&&\"clientKey\"in s.props&&s.props.clientKey)o=p.uuid??null,e({loadingContext:s.props.loadingContext,path:`v3/bin/binLookup?token=${s.props.clientKey}`},{type:\"brand\"in s.props?s.props.brand:t.card,supportedBrands:s.props.brands||r,encryptedBin:p.encryptedBin,requestId:p.uuid}).then(e=>{if(e?.requestId===o)if(e.brands?.length){const t=e.brands.reduce((e,r)=>(e.detectedBrands.push(r.brand),e.paymentMethodVariants.push(r.paymentMethodVariant),void 0!==r.healthcare&&e.healthcare.push({[r.brand]:r.healthcare}),!0===r.supported?(e.supportedBrands.push(r),e):e),{supportedBrands:[],detectedBrands:[],paymentMethodVariants:[],healthcare:[]}),o=t.healthcare.length>0;if(t.supportedBrands.length)return s.processBinLookupResponse({issuingCountryCode:e.issuingCountryCode??\"\",supportedBrands:t.supportedBrands,...e.showSocialSecurityNumber?{showSocialSecurityNumber:e.showSocialSecurityNumber}:{}}),void s.onBinLookup({type:p.type,detectedBrands:t.detectedBrands,supportedBrands:t.supportedBrands.map(e=>e.brand),paymentMethodVariants:t.paymentMethodVariants,supportedBrandsRaw:t.supportedBrands,brands:s.props.brands||r,issuingCountryCode:e.issuingCountryCode,...o&&{healthcare:t.healthcare}});if(t.detectedBrands.length){const e={type:\"card\",fieldType:\"encryptedCardNumber\",error:n.ERROR_MSG_UNSUPPORTED_CARD_ENTERED,detectedBrands:t.detectedBrands};return s.handleUnsupportedCard(e),void s.onBinLookup({type:p.type,detectedBrands:t.detectedBrands,supportedBrands:null,paymentMethodVariants:t.paymentMethodVariants,...o&&{healthcare:t.healthcare},brands:s.props.brands||r})}}else s.onBinLookup({type:p.type,detectedBrands:null,supportedBrands:null,brands:s.props.brands||r}),s.processBinLookupResponse({},!0);else e?.requestId||s.props.onError?.(e||{errorType:\"binLookup\",message:\"unknownError\"})});else if(o){s.processBinLookupResponse(null,!0),o=null;const e={type:\"card\",fieldType:\"encryptedCardNumber\",error:\"\"};s.handleUnsupportedCard(e),s.onBinLookup({isReset:!0})}s.props.onBinValue&&s.props.onBinValue(p)}else s.props.onBinValue&&s.props.onBinValue(p)}};export{s as triggerBinLookUp};\n//# sourceMappingURL=triggerBinLookUp.js.map\n","const a=\"https://sandbox-assets.secure.checkout.visa.com/checkout-widget/resources/js/src-i-adapter/visa-sdk.js?v2\",s=\"https://assets.secure.checkout.visa.com/checkout-widget/resources/js/src-i-adapter/visa-sdk.js?v2\",e=\"https://sandbox.src.mastercard.com/sdk/srcsdk.mastercard.js\",t=\"https://src.mastercard.com/sdk/srcsdk.mastercard.js\",c=({dpaLocale:a=\"en_US\",dpaPresentationName:s=\"\"})=>({dpaTransactionOptions:{dpaLocale:a,payloadTypeIndicator:\"NON_PAYMENT\",customInputData:{checkoutOrchestrator:\"merchant\"}},dpaData:{dpaPresentationName:s}}),r=({dpaLocale:a=\"en_US\",dpaPresentationName:s=\"\"})=>({dpaTransactionOptions:{dpaLocale:a,paymentOptions:{dynamicDataType:\"CARD_APPLICATION_CRYPTOGRAM_SHORT_FORM\"},consumerNameRequested:!0,customInputData:{\"com.mastercard.dcfExperience\":\"PAYMENT_SETTINGS\"},confirmPayment:!1},dpaData:{dpaPresentationName:s}});export{t as MC_SDK_PROD,e as MC_SDK_TEST,s as VISA_SDK_PROD,a as VISA_SDK_TEST,r as getMastercardSettings,c as getVisaSetttings};\n//# sourceMappingURL=config.js.map\n","function e(e,r,s){return r in e?Object.defineProperty(e,r,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[r]=s,e}class r extends Error{toString(){return`Reason: ${this.reason} / Source: ${this.source} / Scheme: ${this.scheme} / Message: ${this.message}`}constructor(r,s,o){super(),e(this,\"reason\",void 0),e(this,\"message\",void 0),e(this,\"source\",void 0),e(this,\"scheme\",void 0),e(this,\"errorFromCardSchemeSdk\",void 0);const t=\"error\"in r?r?.error?.message:r?.message,i=\"error\"in r?r?.error?.reason:r?.reason;this.message=t,this.reason=i,this.source=s,this.scheme=o,this.errorFromCardSchemeSdk=r}}export{r as default};\n//# sourceMappingURL=SrciError.js.map\n","import t from\"../core/Errors/AdyenCheckoutError.js\";import{AnalyticsInfoEvent as s,InfoEventType as e}from\"../core/Analytics/events/AnalyticsInfoEvent.js\";function i(t,s,e){return s in t?Object.defineProperty(t,s,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[s]=e,t}class r{removeScript(){this.cleanupListeners(),this.script?.parentNode?.removeChild(this.script),this.script=null}cleanupListeners(){this.script&&(this.script.removeEventListener(\"load\",this.handleOnLoad),this.script.removeEventListener(\"error\",this.handleOnError))}attachListeners(){this.script&&(this.cleanupListeners(),this.script.addEventListener(\"load\",this.handleOnLoad),this.script.addEventListener(\"error\",this.handleOnError))}loadScript(){return new Promise((s,e)=>{const i=document.querySelector(this.node);i?(this.resolveLoadScript=s,this.rejectLoadScript=e,this.script=i.querySelector(`script[src=\"${this.src}\"]`),this.script?.getAttribute(\"data-script-loaded\")?this.resolveLoadScript():this.script?this.attachListeners():(this.script=document.createElement(\"script\"),Object.assign(this.script,this.attributes),Object.assign(this.script.dataset,this.dataAttributes),this.script.src=this.src,this.script.async=!0,this.attachListeners(),i.appendChild(this.script))):e(new t(\"SCRIPT_ERROR\",`Unable to find script container node: ${this.node}`))})}trackEvent(t){const e=new s({type:t,component:this.component,cdnUrl:this.baseUrl});this.analytics?.sendAnalytics(e)}constructor({src:s,component:o,node:n=\"body\",attributes:a,dataAttributes:c,analytics:h}){i(this,\"src\",void 0),i(this,\"component\",void 0),i(this,\"node\",void 0),i(this,\"attributes\",void 0),i(this,\"dataAttributes\",void 0),i(this,\"analytics\",void 0),i(this,\"baseUrl\",void 0),i(this,\"script\",void 0),i(this,\"loadPromise\",null),i(this,\"rejectLoadPromise\",null),i(this,\"resolveLoadScript\",null),i(this,\"rejectLoadScript\",null),i(this,\"handleOnLoad\",()=>{this.script?.setAttribute(\"data-script-loaded\",\"true\"),this.cleanupListeners(),this.resolveLoadScript?.()}),i(this,\"handleOnError\",s=>{this.cleanupListeners();const e=new t(\"SCRIPT_ERROR\",`Unable to load script ${this.src}.${s?.message&&`Message: ${s.message}`}`,{cause:s?.error||s});this.rejectLoadScript?.(e)}),i(this,\"load\",()=>(null!==this.loadPromise||(this.loadPromise=new Promise((t,s)=>{this.rejectLoadPromise=s;let i=0;this.trackEvent(e.sdkDownloadInitiated);const o=async()=>{try{i++,await this.loadScript(),this.trackEvent(e.sdkDownloadCompleted),t()}catch(t){if(null===this.loadPromise)return;this.trackEvent(e.sdkDownloadFailed),this.removeScript(),i<r.MAX_NUMBER_OF_RETRIES?setTimeout(()=>{o()},r.RETRY_DELAY):(this.trackEvent(e.sdkDownloadAborted),this.loadPromise=null,this.rejectLoadPromise=null,s(t))}};o()})),this.loadPromise)),i(this,\"remove\",()=>{this.rejectLoadPromise?.(new t(\"CANCEL\",\"Script loading cancelled.\")),this.removeScript(),this.loadPromise=null}),this.src=s,this.component=o,this.node=n,this.attributes=a,this.dataAttributes=c,this.analytics=h,this.baseUrl=function(t){const s=new URL(t);return s.origin+s.pathname}(this.src)}}i(r,\"RETRY_DELAY\",1e3),i(r,\"MAX_NUMBER_OF_RETRIES\",3);export{r as default};\n//# sourceMappingURL=Script.js.map\n","import t from\"./SrciError.js\";import i from\"../../../../../utils/Script.js\";function e(t,i,e){return i in t?Object.defineProperty(t,i,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[i]=e,t}class s{async loadSdkScript(){this.isSdkIsAvailableOnWindow()||(this.scriptElement=new i({src:this.sdkUrl,component:\"clicktopay\",analytics:this.analytics}),await this.scriptElement.load()),this.assignSdkReference()}removeSdkScript(){this.scriptElement.remove()}async checkout(i){try{return await this.schemeSdk.checkout(i)}catch(i){throw new t(i,\"checkout\",this.schemeName)}}async unbindAppInstance(){try{await this.schemeSdk.unbindAppInstance()}catch(i){throw new t(i,\"unbindAppInstance\",this.schemeName)}}async isRecognized(){try{return await this.schemeSdk.isRecognized()}catch(i){throw new t(i,\"isRecognized\",this.schemeName)}}async initiateIdentityValidation(){try{return await this.schemeSdk.initiateIdentityValidation()}catch(i){throw new t(i,\"initiateIdentityValidation\",this.schemeName)}}async getSrcProfile(i){try{return await this.schemeSdk.getSrcProfile({idTokens:i})}catch(i){throw new t(i,\"getSrcProfile\",this.schemeName)}}constructor(t,i,s){if(e(this,\"schemeSdk\",void 0),e(this,\"customSdkConfiguration\",void 0),e(this,\"analytics\",void 0),e(this,\"sdkUrl\",void 0),e(this,\"scriptElement\",null),!t)throw Error(\"AbstractSrcInitiator: Invalid SDK URL\");this.sdkUrl=t,this.customSdkConfiguration=i,this.analytics=s}}export{s as default};\n//# sourceMappingURL=AbstractSrcInitiator.js.map\n","import{getVisaSetttings as t,VISA_SDK_PROD as e,VISA_SDK_TEST as i}from\"./config.js\";import s from\"./AbstractSrcInitiator.js\";import n from\"./SrciError.js\";const a={email:\"EMAIL\",telephoneNumber:\"MOBILE_NUMBER\"};class r extends s{isSdkIsAvailableOnWindow(){return!!window.vAdapters?.VisaSRCI}assignSdkReference(){this.schemeSdk=new window.vAdapters.VisaSRCI}async init(e,i){try{const s={...e,...t(this.customSdkConfiguration),srciTransactionId:i};await this.schemeSdk.init(s);const n=document.getElementById(\"vcop-src-system-frame\");n?.setAttribute(\"aria-hidden\",\"true\"),n?.setAttribute(\"tabindex\",\"-1\"),n?.setAttribute(\"inert\",\"\")}catch(t){throw new n(t,\"init\",this.schemeName)}}async identityLookup({identityValue:t,type:e}){try{const i={identityValue:t,type:a[e]};return await this.schemeSdk.identityLookup(i)}catch(t){throw new n(t,\"identityLookup\",this.schemeName)}}async completeIdentityValidation(t){try{return await this.schemeSdk.completeIdentityValidation(t)}catch(t){throw new n(t,\"completeIdentityValidation\",this.schemeName)}}constructor(t,s,n){var a,r,o;super(t.toLowerCase().includes(\"live\")?e:i,s,n),o=\"visa\",(r=\"schemeName\")in(a=this)?Object.defineProperty(a,r,{value:o,enumerable:!0,configurable:!0,writable:!0}):a[r]=o}}export{r as default};\n//# sourceMappingURL=VisaSdk.js.map\n","import{getMastercardSettings as t,MC_SDK_PROD as e,MC_SDK_TEST as i}from\"./config.js\";import n from\"./AbstractSrcInitiator.js\";import a from\"./SrciError.js\";const o={email:\"EMAIL_ADDRESS\",telephoneNumber:\"MOBILE_PHONE_NUMBER\"};class s extends n{isSdkIsAvailableOnWindow(){return!!window.SRCSDK_MASTERCARD}assignSdkReference(){this.schemeSdk=window.SRCSDK_MASTERCARD}async init(e,i){try{const n={...e,...t(this.customSdkConfiguration),srciTransactionId:i};await this.schemeSdk.init(n)}catch(t){throw new a(t,\"init\",this.schemeName)}}async identityLookup({identityValue:t,type:e}){try{const i={identityValue:t,identityType:o[e]};return await this.schemeSdk.identityLookup({consumerIdentity:i})}catch(t){throw new a(t,\"identityLookup\",this.schemeName)}}async completeIdentityValidation(t){try{return await this.schemeSdk.completeIdentityValidation({validationData:t})}catch(t){throw new a(t,\"completeIdentityValidation\",this.schemeName)}}constructor(t,n,a){var o,s,r;super(t.toLowerCase().includes(\"live\")?e:i,n,a),r=\"mc\",(s=\"schemeName\")in(o=this)?Object.defineProperty(o,s,{value:r,enumerable:!0,configurable:!0,writable:!0}):o[s]=r}}export{s as default};\n//# sourceMappingURL=MastercardSdk.js.map\n","const t=t=>\"fulfilled\"===t.status,e=t=>\"rejected\"===t.status;export{t as isFulfilled,e as isRejected};\n//# sourceMappingURL=promise-util.js.map\n","import e from\"./VisaSdk.js\";import t from\"./MastercardSdk.js\";import o from\"../../../../../core/Errors/AdyenCheckoutError.js\";import{isRejected as s,isFulfilled as r}from\"../../../../../utils/promise-util.js\";function i(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}const a={visa:e,mc:t,default:null};class n{async load(e,t){if(!this.schemes||0===this.schemes.length)throw new o(\"ERROR\",\"ClickToPay -> SrcSdkLoader: There are no schemes set to be loaded\");return new Promise((i,n)=>{const c=this.schemes.map(o=>((e,t,o,s)=>{const r=a[e]||a.default;return r?new r(t,o,s):null})(o,e,this.customSdkConfiguration,t)),d=c.map(e=>e.loadSdkScript());Promise.allSettled(d).then(e=>{e.every(s)&&n(new o(\"ERROR\",`ClickToPay -> SrcSdkLoader # Unable to load network schemes: ${this.schemes.toString()}`));const t=c.filter((t,o)=>r(e[o]));i(t)})})}constructor(e,{dpaLocale:t=\"en_US\",dpaPresentationName:o=\"\"}){i(this,\"schemes\",void 0),i(this,\"customSdkConfiguration\",void 0),this.schemes=e,this.customSdkConfiguration={dpaLocale:t,dpaPresentationName:o}}}export{n as default};\n//# sourceMappingURL=SrcSdkLoader.js.map\n","const a={mc:\"Mastercard\",visa:\"Visa\"};export{a as SchemeNames};\n//# sourceMappingURL=utils.js.map\n","import{SchemeNames as t}from\"../services/sdks/utils.js\";function i(t,i,a){return i in t?Object.defineProperty(t,i,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[i]=a,t}class a{get title(){return\"visa\"===this.scheme?t[this.scheme]:this.descriptorName||t[this.scheme]}get isDcfPopupEmbedded(){return\"mc\"===this.scheme}confirmCardIsExpired(){if(![\"ACTIVE\",\"PENDING\"].includes(this.status))return!0;if(!this.panExpirationYear&&!this.panExpirationMonth)return!1;const[t,i]=[(new Date).getMonth()+1,(new Date).getFullYear()];return!(Number(this.panExpirationYear)>i)&&!(Number(this.panExpirationYear)===i&&Number(this.panExpirationMonth)>=t)}constructor(t,a,r){i(this,\"dateOfCardLastUsed\",void 0),i(this,\"dateOfCardCreated\",void 0),i(this,\"panLastFour\",void 0),i(this,\"srcDigitalCardId\",void 0),i(this,\"scheme\",void 0),i(this,\"artUri\",void 0),i(this,\"srcCorrelationId\",void 0),i(this,\"tokenId\",void 0),i(this,\"isExpired\",void 0),i(this,\"panExpirationMonth\",void 0),i(this,\"panExpirationYear\",void 0),i(this,\"descriptorName\",void 0),i(this,\"status\",null),this.dateOfCardLastUsed=t.dateOfCardLastUsed,this.dateOfCardCreated=t.dateOfCardCreated,this.panLastFour=t.panLastFour,this.srcDigitalCardId=t.srcDigitalCardId,this.descriptorName=t.digitalCardData.descriptorName,this.tokenId=t.tokenId,this.scheme=a,this.artUri=t.digitalCardData.artUri,this.srcCorrelationId=r,this.panExpirationMonth=t.panExpirationMonth,this.panExpirationYear=t.panExpirationYear,this.status=t.digitalCardData.status,this.isExpired=this.confirmCardIsExpired()}}export{a as default};\n//# sourceMappingURL=ShopperCard.js.map\n","import e from\"../models/ShopperCard.js\";const r=\"ctpIframe\";function s(e,r,s){const{scheme:a,tokenId:d,srcDigitalCardId:t,srcCorrelationId:n}=e;return\"visa\"===a?d?{srcScheme:a,srcCorrelationId:n,srcTokenReference:s.toLowerCase().includes(\"live\")?d:\"987654321\"}:{srcScheme:a,srcCheckoutPayload:r.checkoutResponse,srcCorrelationId:n}:{srcScheme:a,srcDigitalCardId:t,srcCorrelationId:n}}function a(r,s){const{profiles:a,srcCorrelationId:d}=s,t=a.reduce((r,a)=>[...r,...a.maskedCards.map(r=>new e(r,s.scheme,d))],[]);return[...r,...t]}function d(e,r){return new Date(r.dateOfCardLastUsed).getTime()-new Date(e.dateOfCardLastUsed).getTime()}function t(e,r){return new Date(r.dateOfCardCreated).getTime()-new Date(e.dateOfCardCreated).getTime()}function n(e,r){return r.isExpired?e.expiredCards.push(r):e.availableCards.push(r),e}function o(e,r){return r.dateOfCardLastUsed?e.usedCards.push(r):e.unusedCards.push(r),e}function c(e){const r=e.reduce(a,[]),{availableCards:s,expiredCards:c}=r.reduce(n,{availableCards:[],expiredCards:[]}),{unusedCards:u,usedCards:i}=s.reduce(o,{unusedCards:[],usedCards:[]});return[...i.sort(d),...u.sort(t),...c.sort(d)]}function u(e){return!!e.reason}export{r as CTP_IFRAME_NAME,s as createCheckoutPayloadBasedOnScheme,c as createShopperCardsList,u as isSrciError};\n//# sourceMappingURL=utils.js.map\n","function e(e,r,i){return r in e?Object.defineProperty(e,r,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[r]=i,e}class r extends Error{setCorrelationId(e){this.correlationId=e}toString(){return this.message}constructor(r){super(`ClickToPayService - Timeout during ${r.source}() of the scheme '${r.scheme}'`),e(this,\"scheme\",void 0),e(this,\"source\",void 0),e(this,\"isTimeoutTriggeredBySchemeSdk\",void 0),e(this,\"correlationId\",void 0),this.name=\"TimeoutError\",this.source=r.source,this.scheme=r.scheme,this.isTimeoutTriggeredBySchemeSdk=r.isTimeoutTriggeredBySchemeSdk}}export{r as default};\n//# sourceMappingURL=TimeoutError.js.map\n","function e(e,t,r){let o=null;return Promise.race([e(),(c=t,new Promise((e,t)=>{o=setTimeout(()=>t(r),c)}))]).then(e=>(clearTimeout(o),e)).catch(e=>{throw clearTimeout(o),e});var c}export{e as executeWithTimeout};\n//# sourceMappingURL=execute-with-timeout.js.map\n","import{CTP_IFRAME_NAME as e,createCheckoutPayloadBasedOnScheme as i,createShopperCardsList as t}from\"./utils.js\";import s from\"./sdks/SrciError.js\";import{SchemeNames as o}from\"./sdks/utils.js\";import n from\"../../../../utils/uuid.js\";import r from\"../../../../core/Errors/AdyenCheckoutError.js\";import{isRejected as a,isFulfilled as d}from\"../../../../utils/promise-util.js\";import h from\"../errors/TimeoutError.js\";import{executeWithTimeout as c}from\"./execute-with-timeout.js\";function l(e,i,t){return i in e?Object.defineProperty(e,i,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[i]=t,e}var m=function(e){return e.Idle=\"Idle\",e.Loading=\"Loading\",e.ShopperIdentified=\"ShopperIdentified\",e.OneTimePassword=\"OneTimePassword\",e.Ready=\"Ready\",e.Login=\"Login\",e.NotAvailable=\"NotAvailable\",e}({});class S{get shopperAccountFound(){return[\"Ready\",\"ShopperIdentified\"].includes(this.state)}get schemes(){return this.sdkLoader.schemes}updateStoreCookiesConsent(e){this.storeCookies=e}async initialize(){this.setState(\"Loading\");try{this.sdks=await this.sdkLoader.load(this.environment,this.analytics),await this.initiateSdks();const{recognized:e=!1,idTokens:i=null}=await this.verifyIfShopperIsRecognized();if(e)return await this.getShopperProfile(i),void this.setState(\"Ready\");if(!this.shopperIdentity)return void this.setState(\"NotAvailable\");const{isEnrolled:t}=await this.verifyIfShopperIsEnrolled(this.shopperIdentity);if(t)return void this.setState(\"ShopperIdentified\");this.setState(\"NotAvailable\")}catch(e){e instanceof s&&\"REQUEST_TIMEOUT\"===e?.reason||e instanceof h?this.handleTimeout(e):e instanceof s?console.warn(`Error at ClickToPayService # init: ${e.toString()}`):console.warn(e),this.setState(\"NotAvailable\")}}subscribeOnStateChange(e){this.stateSubscriber=e}async startIdentityValidation(){if(!this.validationSchemeSdk)throw Error(\"startIdentityValidation: No ValidationSDK set for the validation process\");try{const{maskedValidationChannel:e}=await this.validationSchemeSdk.initiateIdentityValidation();this.identityValidationData={maskedShopperContact:e.replace(/\\*/g,\"•\"),selectedNetwork:o[this.validationSchemeSdk.schemeName]},this.setState(\"OneTimePassword\")}catch(e){throw this.validationSchemeSdk=null,e}}async finishIdentityValidation(e){if(!this.validationSchemeSdk)throw Error(\"finishIdentityValidation: No ValidationSDK set for the validation process\");const i=await this.validationSchemeSdk.completeIdentityValidation(e);await this.getShopperProfile([i.idToken]),this.setState(\"Ready\"),this.validationSchemeSdk=null}async checkout(t){if(!t)throw Error(\"ClickToPayService # checkout: Missing card data\");const s=this.sdks.find(e=>e.schemeName===t.scheme),o=await s.checkout({srcDigitalCardId:t.srcDigitalCardId,srcCorrelationId:t.srcCorrelationId,...t.isDcfPopupEmbedded&&{windowRef:window.frames[e]},...this.storeCookies&&{complianceSettings:{complianceResources:[{complianceType:\"REMEMBER_ME\",uri:\"\"}]}}});if(\"COMPLETE\"!==o.dcfActionCode)throw new r(\"ERROR\",`Checkout through Scheme DCF did not complete. DCF Action code received: ${o.dcfActionCode}`);return i(t,o,this.environment)}async logout(){if(!this.sdks)throw new r(\"ERROR\",\"ClickToPayService is not initialized\");try{const e=this.sdks.map(e=>e.unbindAppInstance());await Promise.all(e)}catch(e){e instanceof s?console.warn(`Error at ClickToPayService # logout: ${e.toString()}`):console.warn(e)}this.shopperCards=null,this.identityValidationData=null,this.validationSchemeSdk=null,this.setState(\"Login\")}verifyIfShopperIsEnrolled(e){const{shopperEmail:i}=e;return new Promise((e,t)=>{const s=this.sdks.map(s=>c(()=>s.identityLookup({identityValue:i,type:\"email\"}),5e3,new h({source:\"identityLookup\",scheme:s.schemeName,isTimeoutTriggeredBySchemeSdk:!1})).then(i=>{i.consumerPresent&&!this.validationSchemeSdk&&(this.setSdkForPerformingShopperIdentityValidation(s),e({isEnrolled:!0}))}).catch(e=>{t(e)}));Promise.allSettled(s).then(()=>{e({isEnrolled:!1})})})}setState(e){this.state=e,this.stateSubscriber?.(this.state)}setSdkForPerformingShopperIdentityValidation(e){this.validationSchemeSdk=e}handleTimeout(e){const i=e instanceof s?new h({source:e.source,scheme:e.scheme,isTimeoutTriggeredBySchemeSdk:!0}):e;\"visa\"===i.scheme&&(i.setCorrelationId(window.VISA_SDK?.correlationId),window.VISA_SDK?.correlationId?window.VISA_SDK?.buildClientProfile?.():window.VISA_SDK?.buildClientProfile?.(this.schemesConfig.visa.srciDpaId)),this.onTimeout?.(i)}async getShopperProfile(e){return new Promise((i,s)=>{const o=this.sdks.map(i=>i.getSrcProfile(e));Promise.allSettled(o).then(e=>{e.every(a)&&s(e[0].reason);const o=e.map((e,i)=>d(e)&&{...e.value,scheme:this.sdks[i].schemeName}).filter(e=>!!e);this.shopperCards=t(o),i()})})}verifyIfShopperIsRecognized(){return new Promise((e,i)=>{const t=this.sdks.map(t=>c(()=>t.isRecognized(),5e3,new h({source:\"isRecognized\",scheme:t.schemeName,isTimeoutTriggeredBySchemeSdk:!1})).then(i=>{i.recognized&&e(i)}).catch(e=>{i(e)}));Promise.allSettled(t).then(()=>{e({recognized:!1})})})}initiateSdks(){const e=this.sdks.map(e=>{const i=this.schemesConfig[e.schemeName];return c(()=>e.init(i,this.srciTransactionId),5e3,new h({source:\"init\",scheme:e.schemeName,isTimeoutTriggeredBySchemeSdk:!1}))});return Promise.all(e)}constructor(e,i,t,s,o,r){l(this,\"sdkLoader\",void 0),l(this,\"schemesConfig\",void 0),l(this,\"shopperIdentity\",void 0),l(this,\"environment\",void 0),l(this,\"analytics\",void 0),l(this,\"onTimeout\",void 0),l(this,\"srciTransactionId\",n()),l(this,\"sdks\",void 0),l(this,\"validationSchemeSdk\",null),l(this,\"stateSubscriber\",void 0),l(this,\"state\",\"Idle\"),l(this,\"shopperCards\",null),l(this,\"identityValidationData\",null),l(this,\"storeCookies\",!1),this.sdkLoader=i,this.schemesConfig=e,this.shopperIdentity=o,this.environment=t,this.onTimeout=r,this.analytics=s}}export{m as CtpState,S as default};\n//# sourceMappingURL=ClickToPayService.js.map\n","import e from\"./sdks/SrcSdkLoader.js\";import r from\"./ClickToPayService.js\";function t(t,c,i,o){const s=a(t);if(!s)return null;const l=n(c?.shopperEmail,c?.telephoneNumber),p=Object.keys(s),d=new e(p,{dpaLocale:c?.locale,dpaPresentationName:c?.merchantDisplayName});return new r(s,d,i,o,l,c?.onTimeout)}const n=(e,r)=>{const t={...e&&{shopperEmail:e}};return Object.keys(t).length>0?t:null},a=e=>{if(!e)return null;const{visaSrciDpaId:r,visaSrcInitiatorId:t,mcDpaId:n,mcSrcClientId:a}=e,c={...n&&a&&{mc:{srciDpaId:n,srcInitiatorId:a}},...r&&t&&{visa:{srciDpaId:r,srcInitiatorId:t}}};return 0===Object.keys(c).length?null:c};export{t as default};\n//# sourceMappingURL=create-clicktopay-service.js.map\n","import{createContext as t}from\"../../../../external/preact/dist/preact.js\";const l=t({status:null,onSubmit:null,onSetStatus:null,onError:null,onReady:null,configuration:null,isStandaloneComponent:null,isCtpPrimaryPaymentMethod:null,isStoringCookies:!1,setIsCtpPrimaryPaymentMethod:null,logoutShopper:null,updateStoreCookiesConsent:null,ctpState:null,cards:[],schemes:[],otpMaskedContact:null,otpNetwork:null,checkout:null,verifyIfShopperIsEnrolled:null,startIdentityValidation:null,finishIdentityValidation:null});export{l as ClickToPayContext};\n//# sourceMappingURL=ClickToPayContext.js.map\n","import{createElement as t}from\"../../../../external/preact/dist/preact.js\";import{CtpState as e}from\"../services/ClickToPayService.js\";import{ClickToPayContext as a}from\"./ClickToPayContext.js\";import{useState as o,useRef as s,useEffect as i,useCallback as n}from\"../../../../external/preact/hooks/dist/hooks.js\";const r=({isStandaloneComponent:r=!1,clickToPayService:c,configuration:d,children:l,setClickToPayRef:p,onSubmit:u,onSetStatus:y,onError:S})=>{const[m]=o(c),[C,f]=o(c?.state||e.NotAvailable),[h,k]=o(!0),[I,P]=o(\"ready\"),v=s(!1),w=s({setStatus:P});i(()=>{p(w.current)},[]),i(()=>{m?.subscribeOnStateChange(t=>f(t))},[m]);const b=n(()=>{v.current||(d.onReady?.(),v.current=!0)},[d?.onReady]),g=n(async t=>{await(m?.finishIdentityValidation(t))},[m]),E=n(async()=>await(m?.startIdentityValidation()),[m]),V=n(async t=>await(m?.checkout(t)),[m]),R=n(async t=>await(m?.verifyIfShopperIsEnrolled(t)),[m]),j=n(async()=>{await(m?.logout())},[m]),x=n(t=>{m.updateStoreCookiesConsent(t)},[m]);return t(a.Provider,{value:{status:I,onSubmit:u,onError:S,onSetStatus:y,configuration:d,isStoringCookies:m?.storeCookies,isStandaloneComponent:r,isCtpPrimaryPaymentMethod:h,setIsCtpPrimaryPaymentMethod:k,ctpState:C,verifyIfShopperIsEnrolled:R,cards:m?.shopperCards,schemes:m?.schemes,otpMaskedContact:m?.identityValidationData?.maskedShopperContact,otpNetwork:m?.identityValidationData?.selectedNetwork,checkout:V,logoutShopper:j,startIdentityValidation:E,finishIdentityValidation:g,updateStoreCookiesConsent:x,onReady:b}},l)};export{r as default};\n//# sourceMappingURL=ClickToPayProvider.js.map\n","import{useContext as o}from\"../../../../external/preact/hooks/dist/hooks.js\";import{ClickToPayContext as t}from\"./ClickToPayContext.js\";function e(){return o(t)}export{e as default};\n//# sourceMappingURL=useClickToPayContext.js.map\n","const e={otp:{validate:e=>!!e&&e.length>0,errorMessage:\"field.error.required\",modes:[\"blur\"]},default:{validate:e=>!!e&&e.length>0,errorMessage:\"field.error.required\",modes:[\"blur\"]}};export{e as otpValidationRules};\n//# sourceMappingURL=validate.js.map\n","import{createElement as e}from\"../../../../../../external/preact/dist/preact.js\";import{useState as t,useEffect as o,useCallback as r}from\"../../../../../../external/preact/hooks/dist/hooks.js\";import s from\"../../../context/useClickToPayContext.js\";import n from\"../../../../../../_virtual/index.js\";import{useCoreContext as c}from\"../../../../../../core/Context/CoreProvider.js\";import{useA11yReporter as a}from\"../../../../../../core/Errors/useA11yReporter.js\";import i from\"../../../../Icon/Icon.js\";import{isSrciError as d}from\"../../../services/utils.js\";import{PREFIX as p}from\"../../../../Icon/constants.js\";import l from\"../../../../Button/Button.js\";const m=({onError:m,onResendCode:u,disabled:f})=>{const[k,C]=t(null),[h,j]=t(!1),{i18n:y}=c(),{startIdentityValidation:v}=s(),[_,x]=t(null);a(_),o(()=>{let e;return k>0&&(e=setTimeout(()=>C(k-1),1e3)),60===k?x(`${y.get(\"ctp.otp.resendCode\")} - ${k}s`):0===k&&x(y.get(\"ctp.otp.resendCode\")),()=>clearTimeout(e)},[k]),o(()=>{let e;return h&&(e=setTimeout(()=>{j(!1),C(60)},2e3)),()=>clearTimeout(e)},[h]);const b=r(async e=>{e.preventDefault();try{u(),j(!0),await v()}catch(e){if(C(0),j(!1),!d(e))return void console.error(e);m(e.reason)}},[v,m,u]);return h?e(\"div\",{role:\"alert\",className:\"adyen-checkout-ctp__otp-resend-code--confirmation\"},y.get(\"ctp.otp.codeResent\"),e(i,{type:`${p}checkmark_black`,height:14,width:14})):k>0?e(\"div\",{role:\"timer\",className:\"adyen-checkout-ctp__otp-resend-code--disabled\"},y.get(\"ctp.otp.resendCode\"),\" -\",\" \",e(\"span\",{className:\"adyen-checkout-ctp__otp-resend-code-counter\"},\" \",k>0&&`${k}s`,\" \")):e(l,{classNameModifiers:[n(\"otp-resend-code\",{\"otp-resend-code--disabled\":f})],onClick:b,variant:\"link\",inline:!0,disabled:f},y.get(\"ctp.otp.resendCode\"))};export{m as default};\n//# sourceMappingURL=CtPResendOtpLink.js.map\n","import{selectOne as e}from\"../components/internal/SecuredFields/lib/utilities/dom.js\";import{windowScrollTo as t}from\"./windowScrollTo.js\";import o from\"../components/internal/SecuredFields/lib/CSF/utils/userAgent.js\";const n=(n,i,c=\"\")=>{const r=n instanceof Element?n:e(document,n);let s;s=e(r,\"country\"===i||\"stateOrProvince\"===i||\"issuer-list\"===i||\"selectedAccountType\"===i?`${c}.adyen-checkout__field--${i} .adyen-checkout__filter-input`:`${c} [name=\"${i}\"]`),o.__IS_IOS&&t(s),s?.focus({preventScroll:o.__IS_IOS})};export{n as setFocusOnField};\n//# sourceMappingURL=setFocus.js.map\n","import{useCallback as r}from\"../../external/preact/hooks/dist/hooks.js\";import{setFocusOnField as o}from\"../setFocus.js\";function t(t){return{focusFirstError:r((r,n)=>{const e=function(r){return r&&\"object\"==typeof r&&\"current\"in r?r.current??void 0:r}(t);if(!e)return;const s=n.find(o=>r[o]);s&&o(e,s)},[t])}}export{t as useErrorFocus};\n//# sourceMappingURL=useErrorFocus.js.map\n","import{useRef as r,useCallback as o,useEffect as e}from\"../../external/preact/hooks/dist/hooks.js\";import s from\"./useForm.js\";import{useErrorFocus as t}from\"./useErrorFocus.js\";function a(a){const{formHolder:i,...u}=a,n=s(u),{focusFirstError:c}=t(i),f=r(!1),l=o((r=null)=>{f.current=!0,n.triggerValidation(r)},[n.triggerValidation]);return e(()=>{f.current&&(f.current=!1,c(n.errors,n.schema))},[n.errors]),{...n,triggerValidation:l}}export{a as default};\n//# sourceMappingURL=useFormWithA11y.js.map\n","import{ERROR_FIELD_REQUIRED as r,ERROR_FIELD_INVALID as e}from\"../core/Errors/constants.js\";const s=(s,o,t,n=!0)=>{if(o?.errorMessage&&\"string\"==typeof o.errorMessage){const a=o.errorMessage,g=[r,e].includes(a),c={values:{label:n?t?.toLowerCase():t}};return g?s.get(a,c):s.get(a)}return!!o};export{s as getErrorMessage};\n//# sourceMappingURL=getErrorMessage.js.map\n","import{createElement as e}from\"../../../../../../external/preact/dist/preact.js\";import{useState as r,useRef as t,useCallback as o,useEffect as s}from\"../../../../../../external/preact/hooks/dist/hooks.js\";import{otpValidationRules as a}from\"./validate.js\";import n from\"./CtPResendOtpLink.js\";import l from\"../../../context/useClickToPayContext.js\";import{useCoreContext as i}from\"../../../../../../core/Context/CoreProvider.js\";import p from\"../../../../../../utils/useForm/useFormWithA11y.js\";import{setFocusOnField as u}from\"../../../../../../utils/setFocus.js\";import c from\"../../../../FormFields/Field/Field.js\";import d from\"../../../../FormFields/InputText.js\";import{getErrorMessage as m}from\"../../../../../../utils/getErrorMessage.js\";const f=f=>{const{i18n:g}=i(),{configuration:{disableOtpAutoFocus:j}}=l(),[C,F]=r(null),h=t(null),{handleChangeFor:v,data:b,triggerValidation:k,valid:x,errors:E,isValid:M,setData:y}=p({schema:[\"otp\"],rules:a,formHolder:h}),I=t({validateInput:null}),P=t(null),[R,w]=r(!1),L=o(()=>{w(!0),k()},[k]);s(()=>{b.otp&&w(!0)},[b.otp]),s(()=>{!j&&P.current&&P.current.focus()},[P.current,j]),s(()=>{h.current&&f.errorMessage&&u(h.current,\"otp\")},[f.errorMessage]),s(()=>{I.current.validateInput=L,f.onSetInputHandlers(I.current)},[L,f.onSetInputHandlers]);const V=o(()=>{y(\"otp\",\"\"),F(null),j||P.current.focus(),f.onResendCode()},[f.onResendCode,P.current,j]),_=o(e=>{const r=g.get(`ctp.errors.${e}`);r&&F(r)},[g]),H=o(e=>{\"Enter\"===e.key&&f.onPressEnter()},[f.onPressEnter]);s(()=>{f.onChange({data:b,valid:x,errors:E,isValid:M})},[b,x,E]);const N=o(()=>R?C||f.errorMessage||m(g,E.otp,g.get(\"ctp.otp.fieldLabel\")):null,[R,C,f.errorMessage,E.otp,g]);return e(\"div\",{ref:h,className:\"adyen-checkout-ctp__otp-field-wrapper\"},e(c,{name:\"oneTimePassword\",label:g.get(\"ctp.otp.fieldLabel\"),errorMessage:N(),classNameModifiers:[\"otp\"],errorLive:!0},e(d,{name:\"otp\",autocorrect:\"off\",spellcheck:!1,value:b.otp,disabled:f.disabled,onInput:v(\"otp\",\"input\"),onBlur:v(\"otp\",\"blur\"),onKeyDown:H,setRef:e=>{P.current=e},autocomplete:\"off\"})),e(\"div\",{className:\"adyen-checkout-ctp__otp-resend-code-wrapper\"},e(n,{disabled:f.isValidatingOtp,onError:_,onResendCode:V})))};export{f as default};\n//# sourceMappingURL=CtPOneTimePasswordInput.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import t from\"../../../../../_virtual/index.js\";import c from\"../../../Img/Img.js\";import{SchemeNames as a}from\"../../services/sdks/utils.js\";import o from\"../../context/useClickToPayContext.js\";import r from\"../../../../../core/Context/useImage.js\";const s=({classNameModifiers:s=[]})=>{const m=r(),{schemes:p}=o(),n=m()(\"ctp\"),i=m({imageFolder:\"components/\"})(\"pipe\");return e(\"div\",{className:t(\"adyen_checkout-ctp__brand-wrapper\",s.map(e=>`adyen_checkout-ctp__brand-wrapper--${e}`))},e(c,{className:\"adyen_checkout-ctp__brand-logo\",src:n,alt:\"Logo of Click to Pay\"}),e(c,{className:\"adyen_checkout-ctp__brand-pipe\",src:i,alt:\"\"}),p.map(o=>e(c,{key:o,className:t(\"adyen_checkout-ctp__brand-scheme\",`adyen_checkout-ctp__brand-scheme-${o}`),src:m()(o),alt:`Logo of ${a[o]}`})))};export{s as CtPBrand};\n//# sourceMappingURL=CtPBrand.js.map\n","import{createElement as e,Fragment as t}from\"../../../../../../external/preact/dist/preact.js\";import{useRef as o}from\"../../../../../../external/preact/hooks/dist/hooks.js\";import{CtPBrand as s}from\"../../CtPBrand/CtPBrand.js\";import{useCoreContext as a}from\"../../../../../../core/Context/CoreProvider.js\";import l from\"../../../../../../core/Context/useImage.js\";import{Modal as n}from\"../../../../Modal/Modal.js\";import c from\"../../../../Img/Img.js\";import r from\"../../../../Button/Button.js\";let i=Date.now();function p(){return i+=1,`adyen-${i}`}const m=({isOpen:i,onClose:m,focusAfterClose:d})=>{const u=o(),{i18n:f}=a(),g=l(),C=p(),_=p();return e(n,{onClose:m,isOpen:i,classNameModifiers:[\"ctp\"],labelledBy:C,describedBy:_,focusFirst:u.current,focusAfterClose:d},({onCloseModal:o})=>e(t,null,e(c,{className:\"adyen-checkout__ctp-modal-header-image\",src:g({imageFolder:\"components/\"})(\"ctp_landscape\"),alt:\"\"}),e(\"h2\",{id:C,className:\"adyen-checkout__ctp-modal-title\"},f.get(\"ctp.infoPopup.title\")),e(\"div\",{id:_},e(\"p\",{tabIndex:-1,ref:u,className:\"adyen-checkout__ctp-modal-text\"},f.get(\"ctp.infoPopup.subtitle\")),e(\"ul\",{className:\"adyen-checkout__ctp-modal-text adyen-checkout__ctp-modal-benefits\"},e(\"li\",null,f.get(\"ctp.infoPopup.benefit1\")),e(\"li\",null,f.get(\"ctp.infoPopup.benefit2\")),e(\"li\",null,f.get(\"ctp.infoPopup.benefit3\"))),e(s,{classNameModifiers:[\"popup\"]})),e(r,{onClick:o,label:f.get(\"close\")})))};export{m as CtPInfoModal};\n//# sourceMappingURL=CtPInfoModal.js.map\n","import{createElement as o,Fragment as e}from\"../../../../../external/preact/dist/preact.js\";import{useState as t,useRef as r,useCallback as a}from\"../../../../../external/preact/hooks/dist/hooks.js\";import{CtPInfoModal as s}from\"./CtPInfoModal/CtPInfoModal.js\";import n from\"../../../../../core/Context/useImage.js\";import{useCoreContext as i}from\"../../../../../core/Context/CoreProvider.js\";import m from\"../../../Img/Img.js\";const c=()=>{const[c,l]=t(!1),f=r(),{i18n:p}=i(),u=n()({imageFolder:\"components/\"})(\"info\"),d=a(()=>{l(!1)},[]),C=a(()=>{l(!0)},[]);return o(e,null,o(\"button\",{ref:f,onClick:C,className:\"adyen-web__ctp-info-button\",\"aria-label\":p.get(\"ctp.aria.infoModalButton\"),type:\"button\"},o(m,{height:\"15\",src:u,\"aria-hidden\":!0})),o(s,{isOpen:c,onClose:d,focusAfterClose:f.current}))};export{c as CtPInfo};\n//# sourceMappingURL=CtPInfo.js.map\n","import{createElement as t}from\"../../../../../external/preact/dist/preact.js\";import o from\"../../context/useClickToPayContext.js\";import{CtpState as e}from\"../../services/ClickToPayService.js\";import r from\"../../../../../_virtual/index.js\";import{useMemo as n}from\"../../../../../external/preact/hooks/dist/hooks.js\";import{useCoreContext as s}from\"../../../../../core/Context/CoreProvider.js\";import i from\"../../../Button/Button.js\";const a=()=>{const{ctpState:a,logoutShopper:l,status:c,cards:u}=o(),{i18n:d}=s();if(!1===[e.Ready,e.OneTimePassword].includes(a))return null;const m=n(()=>a===e.Ready&&u.length>1?d.get(\"ctp.logout.notYourCards\"):a===e.Ready&&1===u.length?d.get(\"ctp.logout.notYourCard\"):a===e.Ready&&0===u.length?d.get(\"ctp.logout.notYourProfile\"):d.get(\"ctp.logout.notYou\"),[d,a]);return t(i,{classNameModifiers:[r(\"section-logout-button\",{\"section-logout-button--disabled\":\"loading\"===c})],disabled:\"loading\"===c,onClick:l,variant:\"link\",inline:!0},m)};export{a as default};\n//# sourceMappingURL=CtPLogoutLink.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import t from\"../../../../../_virtual/index.js\";import n from\"./CtPLogoutLink.js\";import{CtPBrand as c}from\"../CtPBrand/CtPBrand.js\";import o from\"../../context/useClickToPayContext.js\";const a=({children:a,onEnterKeyPress:s})=>{const{isStandaloneComponent:r}=o();return e(\"div\",{className:t(\"adyen-checkout-ctp__section\",{\"adyen-checkout-ctp__section--standalone\":r}),onKeyDown:s},e(\"div\",{className:\"adyen-checkout-ctp__section-brand\"},e(c,null),e(n,null)),a)};a.Title=({endAdornment:t,children:n})=>e(\"div\",{className:\"adyen-checkout-ctp__section-header\"},e(\"h1\",{className:\"adyen-checkout-ctp__section-header-title\"},n),t&&e(\"span\",{className:\"adyen-checkout-ctp__section-header-adornment\"},t)),a.Text=({children:t})=>e(\"p\",{className:\"adyen-checkout-ctp__section-text\"},t);export{a as default};\n//# sourceMappingURL=CtPSection.js.map\n","const a=()=>window.matchMedia(\"(max-width: 480px)\").matches;export{a as default};\n//# sourceMappingURL=isScreenSmall.js.map\n","import{createElement as e,Fragment as o}from\"../../../../../../external/preact/dist/preact.js\";import t from\"../../../../../../_virtual/index.js\";import c from\"../../../../FormFields/Field/Field.js\";import s from\"../../../../FormFields/Checkbox/Checkbox.js\";import{useCoreContext as a}from\"../../../../../../core/Context/CoreProvider.js\";import{useState as i,useCallback as n}from\"../../../../../../external/preact/hooks/dist/hooks.js\";import r from\"../../../context/useClickToPayContext.js\";import k from\"../../../../../../utils/isScreenSmall.js\";function p(){const{i18n:p}=a(),{updateStoreCookiesConsent:l,isStoringCookies:m}=r(),[d,C]=i(m),[h,b]=i(k()),u=n(()=>{const e=!d;C(e),l(e)},[l,C,d]);return e(\"div\",{className:t(\"adyen-checkout-ctp__otp-checkbox-container\",{\"adyen-checkout-ctp__otp-checkbox-container--checked\":d})},e(c,{classNameModifiers:[\"consentCheckbox\"],name:\"clickToPayCookiesCheckbox\",showContextualElement:!1,useLabelElement:!1,i18n:p},e(s,{name:\"clickToPayCookiesCheckbox\",onInput:u,label:p.get(\"ctp.otp.saveCookiesCheckbox.label\"),checked:d,\"aria-describedby\":\"adyen-ctp-cookies-info\"})),e(\"p\",{className:\"adyen-checkout-ctp__otp-checkbox-info\"},h?e(o,null,e(\"span\",{id:\"adyen-ctp-cookies-info\"},p.get(\"ctp.otp.saveCookiesCheckbox.shorterInfo\"),\" \"),e(\"button\",{className:\"adyen-checkout-ctp__otp-readmore-button\",onClick:()=>b(!1)},p.get(\"readMore\"),\"..\")):e(\"span\",{id:\"adyen-ctp-cookies-info\"},p.get(\"ctp.otp.saveCookiesCheckbox.information\"))))}export{p as default};\n//# sourceMappingURL=CtPSaveCookiesCheckbox.js.map\n","import{createElement as t,Fragment as e}from\"../../../../../external/preact/dist/preact.js\";import{useState as o,useCallback as n}from\"../../../../../external/preact/hooks/dist/hooks.js\";import s from\"../../../Button/Button.js\";import r from\"../../context/useClickToPayContext.js\";import a from\"./CtPOneTimePasswordInput/CtPOneTimePasswordInput.js\";import{CtPInfo as i}from\"../CtPInfo/CtPInfo.js\";import l from\"../CtPSection/CtPSection.js\";import{useCoreContext as p}from\"../../../../../core/Context/CoreProvider.js\";import d from\"./CtPSaveCookiesCheckbox/CtPSaveCookiesCheckbox.js\";import{isSrciError as m}from\"../../services/utils.js\";const c=({onDisplayCardComponent:c})=>{const{i18n:u}=p(),{finishIdentityValidation:C,otpMaskedContact:f,otpNetwork:P,isCtpPrimaryPaymentMethod:h}=r(),[k,y]=o(null),[g,j]=o(!1),[x,I]=o(!1),[b,S]=o(null),[v,T]=o(null),[w,E]=o(!1),B=n(t=>{T(t)},[]),O=n(({data:t,isValid:e})=>{y(t.otp),j(e)},[]),A=n(()=>{S(null)},[]),M=n(async()=>{if(S(null),g){I(!0);try{await C(k)}catch(t){if(!m(t))return void I(!1);S(t?.reason),I(!1),\"ACCT_INACCESSIBLE\"===t?.reason&&(E(!0),c?.())}}else v.validateInput()},[k,g,v,c]),N=n(t=>{\"Enter\"===t.key&&M()},[M]),V=u.get(\"ctp.otp.subtitle\").split(\"%@\");return t(e,null,t(l.Title,{endAdornment:t(i,null)},u.get(\"ctp.otp.title\")),t(l.Text,null,V[0],\" \",P,\" \",V[1],t(\"span\",{className:\"adyen-checkout-ctp__otp-subtitle--highlighted\"},f),V[2]),t(a,{hideResendOtpButton:w,onChange:O,onSetInputHandlers:B,disabled:x,errorMessage:b&&u.get(`ctp.errors.${b}`),onPressEnter:M,onResendCode:A,isValidatingOtp:x}),t(d,null),t(s,{disabled:w,label:u.get(\"continue\"),variant:h?\"primary\":\"secondary\",onClick:M,status:x&&\"loading\",onKeyDown:N}))};export{c as default};\n//# sourceMappingURL=CtPOneTimePassword.js.map\n","import{createElement as e,Fragment as r}from\"../../../../../../external/preact/dist/preact.js\";import t from\"../../../../../../_virtual/index.js\";import a from\"../../../../Img/Img.js\";import{useCoreContext as c}from\"../../../../../../core/Context/CoreProvider.js\";import s from\"../../../../../../core/Context/useImage.js\";const o=({card:o,errorMessage:i})=>{const{i18n:d}=c(),m=s(),n=o.artUri||m()(o.scheme);return e(r,null,e(\"div\",{className:\"adyen-checkout-ctp__card-list-single-card\"},e(a,{src:n,height:24,className:\"adyen-checkout-ctp__card-image\"}),e(\"span\",{className:t({\"adyen-checkout-ctp__card-list-single-card-expired\":o.isExpired})},o.title,\" \",`•••• ${o.panLastFour}`),o.isExpired&&e(\"span\",{className:\"adyen-checkout-ctp__expired-label\"},d.get(\"ctp.cards.expiredCard\"))),i&&e(\"div\",{className:\"adyen-checkout-contextual-text--error\"},i))};export{o as default};\n//# sourceMappingURL=CtPSingleCard.js.map\n","const r=\"/ \",n=(r,n)=>n?.value&&n?.currency?r.amount(n.value,n.currency,{currencyDisplay:n.currencyDisplay||\"symbol\"}):\"\",t=r=>{const n=r.get(\"payAmountFormat\"),t=n.indexOf(\"%@\");return t>=0&&n.substring(t+2).trim().length>0},e=(r,e,c)=>{const o=n(r,e);if(!o)return r.get(\"payButton\");if(c&&t(r)){const n=u(r,c);return r.get(\"payAmountFormat\").replace(\"%@\",`${o}${n}`)}return r.get(\"payAmountFormat\").replace(\"%@\",o)},u=(r,n)=>{const t=n&&n?.value&&n?.currency?r.amount(n.value,n.currency,{currencyDisplay:n.currencyDisplay||\"symbol\"}):\"\";return`${t.length?\"/ \":\"\"}${t}`};function c(r,n,t,u,c,o){return n||(c?e(r,c):u?r.get(\"confirmPreauthorization\"):e(r,t,o))}function o(r,n,e,c,o){return c||o||!e||!n||t(r)?null:u(r,n)}export{r as PAY_BTN_DIVIDER,n as amountLabel,c as createButtonLabel,o as createSecondaryLabel,e as payAmountLabel};\n//# sourceMappingURL=utils.js.map\n","import{createElement as e}from\"../../../../external/preact/dist/preact.js\";const t=({label:t})=>e(\"span\",{className:\"checkout-secondary-button__text\"},t);export{t as default};\n//# sourceMappingURL=SecondaryButtonLabel.js.map\n","const e={IDR:1,JPY:1,KRW:1,VND:1,BYR:1,CVE:1,DJF:1,GHC:1,GNF:1,KMF:1,PYG:1,RWF:1,UGX:1,VUV:1,XAF:1,XOF:1,XPF:1,MRO:10,BHD:1e3,IQD:1e3,JOD:1e3,KWD:1e3,OMR:1e3,LYD:1e3,TND:1e3};export{e as default};\n//# sourceMappingURL=currency-decimals.js.map\n","const i={RSD:{minimumFractionDigits:2},AFN:{minimumFractionDigits:2},ALL:{minimumFractionDigits:2},IRR:{minimumFractionDigits:2},LAK:{minimumFractionDigits:2},LBP:{minimumFractionDigits:2},MMK:{minimumFractionDigits:2},SOS:{minimumFractionDigits:2},SYP:{minimumFractionDigits:2},YER:{minimumFractionDigits:2},IQD:{minimumFractionDigits:3}};export{i as currencyMinorUnitsConfig};\n//# sourceMappingURL=currency-minor-units.js.map\n","import r from\"./constants/currency-decimals.js\";import{currencyMinorUnitsConfig as t}from\"./constants/currency-minor-units.js\";const n=t=>r[t]||100,e=(r,t)=>{const e=n(t);return parseInt(String(r),10)/e},c=(r,n,c,o={})=>{const s=r.toString(),u=e(s,c),y=n.replace(\"_\",\"-\"),i={style:\"currency\",currency:c,currencyDisplay:\"symbol\",...t[c]?{...o,...t[c]}:o};try{return u.toLocaleString(y,i)}catch(r){return s}},o=r=>{if(!r||\"object\"!=typeof r)return!1;const t=\"number\"==typeof r.value&&!Number.isNaN(r.value),n=\"string\"==typeof r.currency&&r.currency.length>0,e=void 0===r.currencyDisplay||\"string\"==typeof r.currencyDisplay;return t&&n&&e};export{e as getDecimalAmount,n as getDivider,c as getLocalisedAmount,o as isAmountValid};\n//# sourceMappingURL=amount-util.js.map\n","import{createElement as o}from\"../../../external/preact/dist/preact.js\";import t from\"../Button/Button.js\";import{useCoreContext as r}from\"../../../core/Context/CoreProvider.js\";import{createButtonLabel as e,createSecondaryLabel as s}from\"./utils.js\";import a from\"./components/SecondaryButtonLabel.js\";import{useAmount as m,useSecondaryAmount as i}from\"../../../core/Context/AmountProvider.js\";import{isAmountValid as n}from\"../../../utils/amount-util.js\";const l=({customAmount:l,classNameModifiers:u=[],label:c,...d})=>{const{amount:p,isZeroAuth:f}=m(),{secondaryAmount:j}=i(),{i18n:b}=r(),x=e(b,c,p,f,l,j),A=s(b,j,n(p),f,c),y=d.disabled||\"loading\"===d.status;return o(t,{...d,disabled:y,classNameModifiers:[...u,\"pay\"],label:x},A&&o(a,{label:A}))};export{l as default};\n//# sourceMappingURL=PayButton.js.map\n","const t=()=>window.matchMedia(\"(max-width: 768px)\").matches&&/Android|iPhone|iPod/.test(navigator.userAgent);export{t as default};\n//# sourceMappingURL=isMobile.js.map\n","import{createElement as e}from\"../../../../../../external/preact/dist/preact.js\";import{useMemo as r,useEffect as a}from\"../../../../../../external/preact/hooks/dist/hooks.js\";import t from\"../../../context/useClickToPayContext.js\";import{useCoreContext as s}from\"../../../../../../core/Context/CoreProvider.js\";import i from\"../../../../../../core/Context/useImage.js\";import o from\"../../../../../../utils/useForm/useForm.js\";import\"../../../../SecuredFields/lib/CSF/utils/userAgent.js\";import d from\"../../../../../../utils/isMobile.js\";import c from\"../../../../FormFields/Field/Field.js\";import l from\"../../../../FormFields/Select/Select.js\";const m=[\"srcDigitalCardId\"],n=({cardSelected:n,cards:p,errorMessage:C,onChangeCard:u})=>{const{i18n:g}=s(),f=i(),{status:F}=t(),{handleChangeFor:x,data:h}=o({schema:m,defaultData:{srcDigitalCardId:n.srcDigitalCardId}}),j=r(()=>p.map(e=>({icon:e.artUri||f()(e.scheme),name:`${d()?\"\":e.title} •••• ${e.panLastFour} `,secondaryText:e.isExpired&&g.get(\"ctp.cards.expiredCard\"),id:e.srcDigitalCardId,disabled:e.isExpired})),[p]);return a(()=>{const{srcDigitalCardId:e}=h,r=p.find(r=>r.srcDigitalCardId===e);u(r)},[h,u]),e(c,{name:\"clickToPayCards\",className:\"adyen-checkout-ctp__cards-list-field\",errorMessage:C,readOnly:\"loading\"===F,label:g.get(\"ctp.cards.subtitle\")},e(l,{items:j,selectedValue:h.srcDigitalCardId,name:\"clickToPayCards\",filterable:!1,className:\"adyen-checkout-ctp__cards-list-dropdown\",readonly:\"loading\"===F,onChange:x(\"srcDigitalCardId\")}))};export{n as default};\n//# sourceMappingURL=CtPCardsList.js.map\n","import{Component as e,createElement as i}from\"../../../external/preact/dist/preact.js\";import t from\"../../../_virtual/index.js\";function a(e,i,t){return i in e?Object.defineProperty(e,i,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[i]=t,e}class n extends e{iframeOnLoad(){this.props.callback&&\"function\"==typeof this.props.callback&&this.props.callback(this.iframeEl.contentWindow)}componentDidMount(){this.iframeEl.addEventListener?this.iframeEl.addEventListener(\"load\",this.iframeOnLoad.bind(this),!1):this.iframeEl.attachEvent?this.iframeEl.attachEvent(\"onload\",this.iframeOnLoad.bind(this)):this.iframeEl.onload=this.iframeOnLoad.bind(this)}componentWillUnmount(){this.iframeEl.removeEventListener?this.iframeEl.removeEventListener(\"load\",this.iframeOnLoad.bind(this),!1):this.iframeEl.detachEvent?this.iframeEl.detachEvent(\"onload\",this.iframeOnLoad.bind(this)):this.iframeEl.onload=null}render({name:e,src:a,width:n,height:r,minWidth:o,minHeight:s,allow:l,title:h,sandbox:m,classNameModifiers:d}){const f=d.filter(e=>!!e);return i(\"iframe\",{ref:e=>{this.iframeEl=e},allow:l,className:t(\"adyen-checkout__iframe\",`adyen-checkout__iframe--${e}`,f.length&&d.map(i=>`adyen-checkout__iframe--${e}-${i}`)),name:e,src:a,width:n,height:r,frameBorder:\"0\",title:h,referrerpolicy:\"origin\",\"min-width\":o,\"min-height\":s,sandbox:m})}constructor(...e){super(...e),a(this,\"iframeEl\",void 0)}}a(n,\"defaultProps\",{width:\"0\",height:\"0\",minWidth:\"0\",minHeight:\"0\",src:null,allow:null,title:\"components iframe\",classNameModifiers:[]});export{n as default};\n//# sourceMappingURL=Iframe.js.map\n","import{createElement as t,Fragment as e}from\"../../../../../external/preact/dist/preact.js\";import{useState as r,useEffect as o,useCallback as s}from\"../../../../../external/preact/hooks/dist/hooks.js\";import n from\"../../context/useClickToPayContext.js\";import a from\"./CtPSingleCard/CtPSingleCard.js\";import i from\"../../../PayButton/PayButton.js\";import{amountLabel as c}from\"../../../PayButton/utils.js\";import m from\"./CtPCardsList/CtPCardsList.js\";import l from\"../../services/sdks/SrciError.js\";import u from\"../CtPSection/CtPSection.js\";import{CTP_IFRAME_NAME as d}from\"../../services/utils.js\";import p from\"../../../IFrame/Iframe.js\";import f from\"../../../../../core/Context/useImage.js\";import{useCoreContext as C}from\"../../../../../core/Context/CoreProvider.js\";import g from\"../../../../../utils/isMobile.js\";import h from\"../../../../../core/Errors/AdyenCheckoutError.js\";import{PREFIX as y}from\"../../../Icon/constants.js\";import{useAmount as P}from\"../../../../../core/Context/AmountProvider.js\";function j(t,e){if(!t)return null;const r=e.get(`ctp.errors.${t}`);return r.includes(\"ctp.errors\")?e.get(\"ctp.errors.UNKNOWN_ERROR\"):r}function k(t,e,r){return r?g()?null:t.get(\"payButton.with\",{values:{value:c(t,e),maskedData:`•••• ${r?.panLastFour}`}}):t.get(\"payButton\")}const E=({onDisplayCardComponent:c})=>{const{i18n:g}=C(),E=f(),{cards:S,checkout:x,isCtpPrimaryPaymentMethod:v,status:b,onSubmit:R,onSetStatus:$,onError:w}=n(),[B,M]=r(S.find(t=>!t.isExpired)||S[0]),[N,D]=r(null),F=S.every(t=>t.isExpired),[I,_]=r(!1),{amount:L}=P();o(()=>{(0===S.length||F)&&c?.()},[c,F,S]);const O=s(async()=>{if(B)try{_(!0),D(null),$(\"loading\");const t=await x(B);R(t)}catch(t){t instanceof l&&(D(t?.reason),console.warn(`CtP - Checkout: Reason: ${t?.reason} / Source: ${t?.source} / Scheme: ${t?.scheme}`)),_(!1),w(t instanceof h?t:new h(\"ERROR\",\"Error during ClickToPay checkout\",{cause:t}))}},[x,B]),T=s(t=>{M(t)},[]),A=I&&\"loading\"===b&&B?.isDcfPopupEmbedded,K=\"loading\"!==b||!A,U=s(t=>{\"Enter\"===t.key&&O()},[O]);return t(e,null,t(p,{name:d,height:\"380\",width:\"100%\",classNameModifiers:[A?\"\":\"hidden\"]}),K&&t(e,null,t(u.Title,null,g.get(\"ctp.cards.title\")),0===S.length&&t(\"div\",{className:\"adyen-checkout-ctp__empty-cards\"},g.get(\"ctp.emptyProfile.message\")),1===S.length&&t(a,{card:S[0],errorMessage:j(N,g)}),S.length>1&&t(m,{cardSelected:B,cards:S,onChangeCard:T,errorMessage:j(N,g)}),t(i,{disabled:F,label:k(g,L,B),status:b,variant:v?\"primary\":\"secondary\",icon:0!==S.length&&E({imageFolder:\"components/\"})(v?`${y}lock`:`${y}lock_black`),onClick:O,onKeyDown:U})))};export{E as default};\n//# sourceMappingURL=CtPCards.js.map\n","import{createElement as a,Fragment as e}from\"../../../../../external/preact/dist/preact.js\";import{useCoreContext as t}from\"../../../../../core/Context/CoreProvider.js\";const c=()=>{const{i18n:c}=t();return a(e,null,a(\"div\",{className:\"adyen-checkout-ctp__card-animation\"},a(\"div\",{className:\"adyen-checkout-ctp__card-animation-layer\"}),a(\"div\",{className:\"adyen-checkout-ctp__card-animation-layer\"}),a(\"div\",{className:\"adyen-checkout-ctp__card-animation-layer\"})),a(\"div\",{className:\"adyen-checkout-ctp__loading-subtitle\"},c.get(\"ctp.loading.intro\")))};export{c as default};\n//# sourceMappingURL=CtPLoader.js.map\n","const e={shopperLogin:{validate:e=>!!e&&e.length>0,errorMessage:\"ctp.errors.INVALID_EMAIL\",modes:[\"blur\"]},default:{validate:e=>!!e&&e.length>0,errorMessage:\"\",modes:[\"blur\"]}};export{e as loginValidationRules};\n//# sourceMappingURL=validate.js.map\n","import{createElement as t}from\"../../../external/preact/dist/preact.js\";import e from\"./InputBase.js\";function a(a){return t(e,{...a,type:\"email\",autoCapitalize:\"off\"})}export{a as default};\n//# sourceMappingURL=InputEmail.js.map\n","import{createElement as e}from\"../../../../../external/preact/dist/preact.js\";import{useRef as r,useState as o,useCallback as s,useEffect as t}from\"../../../../../external/preact/hooks/dist/hooks.js\";import{loginValidationRules as n}from\"./validate.js\";import{useCoreContext as a}from\"../../../../../core/Context/CoreProvider.js\";import i from\"../../../../../utils/useForm/useFormWithA11y.js\";import{setFocusOnField as l}from\"../../../../../utils/setFocus.js\";import p from\"../../../FormFields/Field/Field.js\";import u from\"../../../FormFields/InputEmail.js\";const m=m=>{const{i18n:d}=a(),c=r(null),{handleChangeFor:g,data:h,triggerValidation:f,valid:L,errors:F,isValid:v}=i({schema:[\"shopperLogin\"],rules:n,formHolder:c}),j=r({validateInput:null,focusInput:null}),[I,b]=o(!1),E=s(()=>{b(!0),f()},[f]);t(()=>{c.current&&m.errorMessage&&l(c.current,\"shopperLogin\")},[m.errorMessage]),t(()=>{h.shopperLogin&&b(!0)},[h.shopperLogin]),t(()=>{j.current.validateInput=E,m.onSetInputHandlers(j.current)},[E,m.onSetInputHandlers]);const M=s(e=>{\"Enter\"===e.key&&m.onPressEnter()},[m.onPressEnter]);return t(()=>{m.onChange({data:h,valid:L,errors:F,isValid:v})},[h,L,F]),e(\"div\",{ref:c},e(p,{name:\"shopperLogin\",label:d.get(\"ctp.login.inputLabel\"),errorMessage:I?m.errorMessage||F.shopperLogin&&d.get(F.shopperLogin.errorMessage):null,classNameModifiers:[\"shopperLogin\"],errorLive:!0},e(u,{name:\"shopperLogin\",autocorrect:\"off\",spellcheck:!1,value:h.shopperLogin,disabled:m.disabled,onInput:g(\"shopperLogin\",\"input\"),onBlur:g(\"shopperLogin\",\"blur\"),onKeyDown:M,autocomplete:\"email\"})))};export{m as default};\n//# sourceMappingURL=CtPLoginInput.js.map\n","import{createElement as t,Fragment as o}from\"../../../../../external/preact/dist/preact.js\";import{useState as r,useCallback as e}from\"../../../../../external/preact/hooks/dist/hooks.js\";import n from\"../../../Button/Button.js\";import s from\"../../context/useClickToPayContext.js\";import i from\"./CtPLoginInput.js\";import{CtPInfo as a}from\"../CtPInfo/CtPInfo.js\";import l from\"../CtPSection/CtPSection.js\";import m from\"../../services/sdks/SrciError.js\";import{useCoreContext as p}from\"../../../../../core/Context/CoreProvider.js\";import c from\"../../errors/TimeoutError.js\";import{isSrciError as u}from\"../../services/utils.js\";const d=()=>{const{i18n:d}=p(),{isCtpPrimaryPaymentMethod:f,setIsCtpPrimaryPaymentMethod:g,verifyIfShopperIsEnrolled:C,startIdentityValidation:I}=s(),[P,y]=r(null),[h,j]=r(!1),[E,S]=r(null),[k,x]=r(!1),[L,v]=r(null),A=e(t=>{v(t)},[]),T=e(({data:t,isValid:o})=>{y(t.shopperLogin),j(o),t?.shopperLogin?.length>0&&g(!0)},[]),w=e(async()=>{if(S(null),h){x(!0);try{const{isEnrolled:t}=await C({shopperEmail:P});t?await I():(S(\"NOT_FOUND\"),x(!1))}catch(t){t instanceof m&&console.warn(`CtP - Login error: ${t.toString()}`),t instanceof c&&console.warn(t.toString()),u(t)?S(\"INVALID_PARAMETER\"===t.reason?\"INVALID_EMAIL\":t.reason):console.error(t),x(!1)}}else L.validateInput()},[C,I,P,h,L]),M=e(t=>{\"Enter\"===t.key&&w()},[w]);return t(o,null,t(l.Title,{endAdornment:t(a,null)},d.get(\"ctp.login.title\")),t(l.Text,null,d.get(\"ctp.login.subtitle\")),t(i,{onChange:T,onSetInputHandlers:A,disabled:k,errorMessage:E&&d.get(`ctp.errors.${E}`),onPressEnter:w}),t(n,{label:d.get(\"continue\"),variant:f?\"primary\":\"secondary\",status:k&&\"loading\",onClick:()=>{w()},onKeyDown:M}))};export{d as default};\n//# sourceMappingURL=CtPLogin.js.map\n","import{createElement as o}from\"../../../external/preact/dist/preact.js\";import{useEffect as t,useCallback as e}from\"../../../external/preact/hooks/dist/hooks.js\";import{CtpState as n}from\"./services/ClickToPayService.js\";import r from\"./context/useClickToPayContext.js\";import s from\"./components/CtPOneTimePassword/CtPOneTimePassword.js\";import a from\"./components/CtPCards/CtPCards.js\";import i from\"./components/CtPSection/CtPSection.js\";import p from\"./components/CtPLoader/CtPLoader.js\";import m from\"./components/CtPLogin/CtPLogin.js\";import c from\"./services/sdks/SrciError.js\";const d=({onDisplayCardComponent:d})=>{const{ctpState:l,onReady:C,startIdentityValidation:P,logoutShopper:f}=r();t(()=>{[n.OneTimePassword,n.Login,n.Ready].includes(l)&&C()},[l,C]),t(()=>{l===n.ShopperIdentified&&async function(){try{await P()}catch(o){o instanceof c&&console.warn(`CtP - Identity Validation error: ${o.toString()}`),await f()}}()},[l]);const y=e(o=>{\"Enter\"===o.key&&(o.preventDefault(),o.stopPropagation())},[]);return l===n.NotAvailable?null:o(i,{onEnterKeyPress:y},[n.Loading,n.ShopperIdentified].includes(l)&&o(p,null),l===n.OneTimePassword&&o(s,{onDisplayCardComponent:d}),l===n.Ready&&o(a,{onDisplayCardComponent:d}),l===n.Login&&o(m,null))};export{d as default};\n//# sourceMappingURL=ClickToPayComponent.js.map\n","import{createElement as e}from\"../../../external/preact/dist/preact.js\";import r from\"../../../_virtual/index.js\";import{useCoreContext as t}from\"../../../core/Context/CoreProvider.js\";function o({label:o=\"qrCodeOrApp\",classNames:a=[]}){const{i18n:s}=t();return e(\"div\",{className:r(\"adyen-checkout__content-separator\",...a)},s.get(o))}export{o as default};\n//# sourceMappingURL=ContentSeparator.js.map\n","import{createElement as t,Fragment as e}from\"../../../external/preact/dist/preact.js\";import{useState as a,useEffect as o,useCallback as r}from\"../../../external/preact/hooks/dist/hooks.js\";import n from\"../../internal/ClickToPay/context/useClickToPayContext.js\";import{CtpState as i}from\"../../internal/ClickToPay/services/ClickToPayService.js\";import l from\"../../internal/ClickToPay/ClickToPayComponent.js\";import s from\"../../internal/ContentSeparator/ContentSeparator.js\";import c from\"../../internal/Button/Button.js\";import{useCoreContext as p}from\"../../../core/Context/CoreProvider.js\";const m=({children:m})=>{const{i18n:d}=p(),[C,u]=a(null),{ctpState:y,isCtpPrimaryPaymentMethod:f,setIsCtpPrimaryPaymentMethod:k,status:P}=n(),h=null===C&&null===f;o(()=>{if(h){if(y===i.ShopperIdentified||y===i.Ready)return u(!1),void k(!0);y===i.NotAvailable&&(u(!0),k(!1))}},[y,h]);const j=r(()=>{u(!0),k(!1)},[]),v=r(t=>{\"Enter\"===t.key&&j()},[j]);return y===i.NotAvailable?m():y===i.Loading||y===i.ShopperIdentified?t(l,null):t(e,null,t(l,{onDisplayCardComponent:j}),t(s,{classNames:[\"adyen-checkout-ctp__separator\"],label:d.get(\"ctp.separatorText\")}),C?m(!f):t(c,{variant:\"secondary\",disabled:\"loading\"===P,label:d.get(\"ctp.manualCardEntry\"),onClick:j,onKeyDown:v}))};export{m as default};\n//# sourceMappingURL=ClickToPayHolder.js.map\n","import o from\"../../internal/ClickToPay/context/ClickToPayProvider.js\";import t from\"./ClickToPayHolder.js\";import{createElement as e}from\"../../../external/preact/dist/preact.js\";const n=({configuration:n,clickToPayService:r,setClickToPayRef:i,onSetStatus:a,onSubmit:c,onError:l,isStandaloneComponent:s,...m})=>e(o,{isStandaloneComponent:s,configuration:n,clickToPayService:r,setClickToPayRef:i,onSetStatus:a,onSubmit:c,onError:l},e(t,null,m.children));export{n as default};\n//# sourceMappingURL=ClickToPayWrapper.js.map\n","const e=\"not base64\",r=\"malformed URI sequence\",t={decode:o=>{if(!t.isBase64(o))return{success:!1,error:e};try{return{success:!0,data:(n=o,decodeURIComponent(Array.prototype.map.call(window.atob(n),e=>`%${`00${e.charCodeAt(0).toString(16)}`.slice(-2)}`).join(\"\")))}}catch(e){return{success:!1,error:r}}var n},encode:e=>window.btoa(e),isBase64:e=>{if(!e)return!1;if(e.length%4)return!1;try{return window.btoa(window.atob(e))===e}catch(e){return!1}}};export{r as BASE64_MALFORMED_URI_ERROR,e as NOT_BASE64_ERROR,t as default};\n//# sourceMappingURL=base64.js.map\n","import t from\"./base64.js\";import{LIBRARY_VERSION as e,PLATFORM as o,CHANNEL as n}from\"../core/config.js\";function r(r,a,c){const i={schemaVersion:1,createdAt:Date.now(),channel:n.WEB,platform:o,sdkVersion:e,paymentMethodBehavior:c,analytics:{checkoutAttemptId:r},...a&&{riskData:{clientData:a}}};return t.encode(JSON.stringify(i))}export{r as createSdkData};\n//# sourceMappingURL=createSdkData.js.map\n","import{TxVariants as a}from\"./tx-variants.js\";const n={[a.address]:\"Address\",[a.donation]:\"Donation\",[a.personal_details]:\"PersonalDetails\",[a.bankTransfer_IBAN]:\"BankTransfer\",[a.bankTransfer_BE]:\"BankTransfer\",[a.bankTransfer_NL]:\"BankTransfer\",[a.bankTransfer_PL]:\"BankTransfer\",[a.bankTransfer_FR]:\"BankTransfer\",[a.bankTransfer_CH]:\"BankTransfer\",[a.bankTransfer_IE]:\"BankTransfer\",[a.bankTransfer_GB]:\"BankTransfer\",[a.bankTransfer_DE]:\"BankTransfer\",[a.bcmc]:\"Bancontact\",[a.card]:\"Card\",[a.scheme]:\"Card\",[a.storedCard]:\"Card\",[a.customCard]:\"CustomCard\",[a.ach]:\"Ach\",[a.directdebit_GB]:\"BacsDirectDebit\",[a.sepadirectdebit]:\"SepaDirectDebit\",[a.eft_directdebit_CA]:\"PreAuthorizedDebitCanada\",[a.affirm]:\"Affirm\",[a.afterpay]:\"AfterPay\",[a.afterpay_default]:\"AfterPay\",[a.afterpay_b2b]:\"AfterPayB2B\",[a.atome]:\"Atome\",[a.facilypay_3x]:\"FacilyPay3x\",[a.facilypay_4x]:\"FacilyPay4x\",[a.facilypay_6x]:\"FacilyPay6x\",[a.facilypay_10x]:\"FacilyPay10x\",[a.facilypay_12x]:\"FacilyPay12x\",[a.ratepay]:\"RatePay\",[a.ratepay_directdebit]:\"RatePayDirectDebit\",[a.amazonpay]:\"AmazonPay\",[a.applepay]:\"ApplePay\",[a.cashapp]:\"CashAppPay\",[a.clicktopay]:\"ClickToPay\",[a.googlepay]:\"GooglePay\",[a.paypal]:\"PayPal\",[a.fastlane]:\"Fastlane\",[a.paywithgoogle]:\"GooglePay\",[a.boletobancario]:\"Boleto\",[a.boletobancario_itau]:\"Boleto\",[a.boletobancario_santander]:\"Boleto\",[a.doku]:\"Doku\",[a.doku_alfamart]:\"Doku\",[a.doku_permata_lite_atm]:\"Doku\",[a.doku_indomaret]:\"Doku\",[a.doku_atm_mandiri_va]:\"Doku\",[a.doku_sinarmas_va]:\"Doku\",[a.doku_mandiri_va]:\"Doku\",[a.doku_cimb_va]:\"Doku\",[a.doku_danamon_va]:\"Doku\",[a.doku_bri_va]:\"Doku\",[a.doku_bni_va]:\"Doku\",[a.doku_bca_va]:\"Doku\",[a.doku_wallet]:\"Doku\",[a.oxxo]:\"Oxxo\",[a.primeiropay_boleto]:\"Boleto\",[a.billdesk_online]:\"BillDeskOnline\",[a.billdesk_wallet]:\"BillDeskWallet\",[a.dotpay]:\"Dotpay\",[a.eps]:\"Eps\",[a.iris]:\"Iris\",[a.molpay_ebanking_fpx_MY]:\"MolPayEBankingMY\",[a.molpay_ebanking_TH]:\"MolPayEBankingTH\",[a.molpay_ebanking_VN]:\"MolPayEBankingVN\",[a.onlineBanking_CZ]:\"OnlineBankingCZ\",[a.onlinebanking_IN]:\"OnlineBankingIN\",[a.onlineBanking_PL]:\"OnlineBankingPL\",[a.onlineBanking_SK]:\"OnlineBankingSK\",[a.paybybank]:\"PayByBank\",[a.payu_IN_cashcard]:\"PayuCashcard\",[a.payu_IN_nb]:\"PayuNetBanking\",[a.wallet_IN]:\"WalletINElement\",[a.dragonpay_ebanking]:\"Dragonpay\",[a.dragonpay_otc_banking]:\"Dragonpay\",[a.dragonpay_otc_non_banking]:\"Dragonpay\",[a.dragonpay_otc_philippines]:\"Dragonpay\",[a.econtext_atm]:\"Econtext\",[a.econtext_online]:\"Econtext\",[a.econtext_seven_eleven]:\"Econtext\",[a.econtext_stores]:\"Econtext\",[a.giropay]:\"Giropay\",[a.multibanco]:\"Multibanco\",[a.redirect]:\"Redirect\",[a.twint]:\"Twint\",[a.vipps]:\"Vipps\",[a.trustly]:\"Trustly\",[a.paybybank_AIS_DD]:\"PayByBankUS\",[a.riverty]:\"Riverty\",[a.paybybank_pix]:\"PayByBankPix\",[a.klarna]:\"Klarna\",[a.klarna_account]:\"Klarna\",[a.klarna_paynow]:\"Klarna\",[a.klarna_b2b]:\"Klarna\",[a.bcmc_mobile]:\"BcmcMobile\",[a.bcmc_mobile_QR]:\"BcmcMobile\",[a.pix]:\"Pix\",[a.swish]:\"Swish\",[a.wechatpay]:\"WeChat\",[a.wechatpayQR]:\"WeChat\",[a.promptpay]:\"PromptPay\",[a.paynow]:\"PayNow\",[a.duitnow]:\"DuitNow\",[a.blik]:\"Blik\",[a.mbway]:\"MBWay\",[a.ancv]:\"ANCV\",[a.payto]:\"PayTo\",[a.upi]:\"UPI\",[a.upi_qr]:\"UPI\",[a.upi_intent]:\"UPI\",[a.giftcard]:\"Giftcard\",[a.mealVoucher_FR_natixis]:\"MealVoucherFR\",[a.mealVoucher_FR_sodexo]:\"MealVoucherFR\",[a.mealVoucher_FR_groupeup]:\"MealVoucherFR\"};function e(a){return n[a]}export{e as default};\n//# sourceMappingURL=components-name-map.js.map\n","import{render as t}from\"../../../external/preact/dist/preact.js\";import e from\"../../../utils/uuid.js\";import o from\"../../../core/Errors/AdyenCheckoutError.js\";import{NO_CHECKOUT_ATTEMPT_ID as r}from\"../../../core/Analytics/constants.js\";import{on as n,off as s}from\"../../../utils/listenerUtils.js\";import{createSdkData as i}from\"../../../utils/createSdkData.js\";import a from\"../../components-name-map.js\";import{PAYMENT_METHOD_BEHAVIOR as h}from\"../../../core/config.js\";function c(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class d{buildElementProps(t){this.props=this.formatProps({...this.constructor.defaultProps,...t})}formatProps(t){return t}formatData(){return{}}submitAnalytics(t){return null}handleKeyDown(t){return null}setState(t){this.state={...this.state,...t}}get data(){const t=this.state.order||this.props.order,e=this.formatData(),o=Boolean(a(e.paymentMethod?.type)),n=this.core.modules.risk.data,s=this.core.modules.analytics.checkoutAttemptId??r,c=o?h.NATIVE:h.GENERIC,d=i(s,n,c);return e.paymentMethod&&s&&(e.paymentMethod.checkoutAttemptId=s),e.paymentMethod&&d&&(e.paymentMethod.sdkData=d),{...n&&{riskData:{clientData:n}},...t&&{order:{orderData:t.orderData,pspReference:t.pspReference}},...e,clientStateDataIndicator:!0}}activate(){}render(){throw new Error(\"Payment method cannot be rendered.\")}mount(e){const o=\"string\"==typeof e?document.querySelector(e):e;if(!o)throw new Error(\"Component could not mount. Root node was not found.\");return this._node&&this.unmount(),this._node=o,n(this._node,\"keydown\",this.handleKeyDown,!1),this._component=this.render(),t(this._component,o),this}update(t){return this.props=this.formatProps({...this.props,...t}),this.state={},this.unmount().mount(this._node)}unmount(){return s(this._node,\"keydown\",this.handleKeyDown),this._node&&t(null,this._node),this}remove(){this.unmount(),this.core&&this.core.remove(this)}constructor(t,r){c(this,\"_id\",`${this.constructor.type}-${e()}`),c(this,\"core\",void 0),c(this,\"props\",void 0),c(this,\"state\",{}),c(this,\"_component\",void 0),c(this,\"_node\",null);const n=function(t){return!!t&&(\"function\"==typeof t.initialize&&\"function\"==typeof t.createFromAction)}(t);if(!n)throw new o(\"IMPLEMENTATION_ERROR\",`Trying to initialise the component '${this.constructor.type}' without a reference to an instance of AdyenCheckout`);this.core=t,this.buildElementProps(r),this.handleKeyDown=this.handleKeyDown.bind(this)}}c(d,\"defaultProps\",{});export{d as default};\n//# sourceMappingURL=BaseElement.js.map\n","const e=[\"action\",\"resultCode\",\"sessionData\",\"order\",\"sessionResult\",\"donationToken\",\"error\",\"askDonation\"];function n(n){const o=[],t=Object.keys(n).reduce((t,r)=>(e.includes(r)?t[r]=n[r]:o.push(r),t),{});return o.length&&console.warn(`The following properties should not be passed to the client: ${o.join(\", \")}`),t}function o(e){e&&(delete e.order,delete e.action,e.donationToken&&0!==e.donationToken.length||delete e.donationToken)}function t(e){return[\"Cancelled\",\"Error\",\"Refused\"].includes(e.resultCode)?Promise.reject(e):Promise.resolve(e)}function r(e){if(!e)return!1;return\"object\"==typeof e.activePaymentMethod&&\"function\"==typeof e.closeActivePaymentMethod}function s(e,n){return\"FI\"===e&&n?{openFirstPaymentMethod:!1,openFirstStoredPaymentMethod:!1}:{}}function i(e){return e&&e.orderData&&e.pspReference?{orderData:e.orderData,pspReference:e.pspReference}:null}export{r as assertIsDropin,o as cleanupFinalResult,s as getRegulatoryDefaults,i as sanitizeOrder,n as sanitizeResponse,t as verifyPaymentDidNotFail};\n//# sourceMappingURL=utils.js.map\n","import{AbstractAnalyticsEvent as e,AnalyticsEventCategory as t}from\"./AbstractAnalyticsEvent.js\";function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var n=function(e){return e.action=\"action\",e.submit=\"submit\",e.redirect=\"redirect\",e.threeDS2=\"threeDS2\",e.closed=\"closed\",e.apiRequest=\"apiRequest\",e}({}),a=function(e){return e.challengeIframeLoaded=\"challengeIframeLoaded\",e.challengeDataSentWeb=\"challengeDataSentWeb\",e.challengeCompleted=\"challengeCompleted\",e.fingerprintDataSentWeb=\"fingerprintDataSentWeb\",e.fingerprintCompleted=\"fingerprintCompleted\",e.fingerprintIframeLoaded=\"fingerprintIframeLoaded\",e.threeDS2=\"threeDS2\",e.redirect=\"redirect\",e.voucher=\"voucher\",e.await=\"awat\",e.qrCode=\"qrCode\",e.bankTransfer=\"bankTransfer\",e.sdk=\"sdk\",e.donation=\"donation\",e.donationCampaigns=\"donationCampaigns\",e}({});class i extends e{getEventCategory(){return t.log}static getSubtypeFromActionType(e){return a[e]}constructor(e){super(e.component),r(this,\"type\",void 0),r(this,\"subType\",void 0),r(this,\"message\",void 0),r(this,\"result\",void 0),this.type=e.type,this.message=e.message,e.subType&&(this.subType=e.subType),e.result&&(this.result=e.result)}}export{i as AnalyticsLogEvent,a as LogEventSubtype,n as LogEventType};\n//# sourceMappingURL=AnalyticsLogEvent.js.map\n","class r extends Error{constructor(r){super(r)}}export{r as default};\n//# sourceMappingURL=CancelError.js.map\n","import{createElement as e}from\"../../external/preact/dist/preact.js\";import{SRPanelContext as s}from\"./SRPanelContext.js\";import{useCoreContext as t}from\"../Context/CoreProvider.js\";import{partial as r}from\"../../components/internal/SecuredFields/lib/utilities/commonUtils.js\";import{setSRMessagesFromErrors as o}from\"./utils.js\";const n=({srPanel:n,children:i})=>{const{i18n:l}=t(),a=n.moveFocus;return e(s.Provider,{value:{srPanel:n,setSRMessagesFromObjects:({fieldTypeMappingFn:e})=>r(o,{SRPanelRef:n,i18n:l,fieldTypeMappingFn:e}),setSRMessagesFromStrings:e=>{n.setMessages(e)},clearSRPanel:()=>{n.setMessages(null)},shouldMoveFocusSR:a}},i)};export{n as default};\n//# sourceMappingURL=SRPanelProvider.js.map\n","import{createElement as e,createRef as t}from\"../../../external/preact/dist/preact.js\";import s,{NETWORK_ERROR as n}from\"../../../core/Errors/AdyenCheckoutError.js\";import{hasOwnProperty as i}from\"../../../utils/hasOwnProperty.js\";import o from\"../BaseElement/BaseElement.js\";import r from\"../PayButton/PayButton.js\";import{assertIsDropin as a,getRegulatoryDefaults as h,sanitizeResponse as d,verifyPaymentDidNotFail as l,cleanupFinalResult as m}from\"./utils.js\";import{AnalyticsErrorEvent as p,ErrorEventType as c}from\"../../../core/Analytics/events/AnalyticsErrorEvent.js\";import{AnalyticsInfoEvent as u,InfoEventType as y}from\"../../../core/Analytics/events/AnalyticsInfoEvent.js\";import{AnalyticsLogEvent as f,LogEventType as R}from\"../../../core/Analytics/events/AnalyticsLogEvent.js\";import b from\"../../../core/Errors/CancelError.js\";import{CoreProvider as A}from\"../../../core/Context/CoreProvider.js\";import P from\"../../../core/Errors/SRPanelProvider.js\";import{AmountProvider as E}from\"../../../core/Context/AmountProvider.js\";import{TxVariants as g}from\"../../tx-variants.js\";function v(e,t,s){return t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}class w extends o{createBeforeRenderHook(e){const t=this.render;this.render=(...s)=>(this.beforeRender(e),t.apply(this,s))}beforeRender(e){if(e?.originalAction)return;const t=new u({type:y.rendered,component:this.type,configData:{...e,showPayButton:this.props.showPayButton},...e?.oneClick&&{isStoredPaymentMethod:!0}});this.analytics.sendAnalytics(t)}reportIntegrationFlavor(){this.analytics.sendFlavor(\"components\")}get analytics(){return this.core.modules.analytics}get srPanel(){return this.core.modules.srPanel}getPaymentMethodConfigFromResponse(e){return e?.storedPaymentMethodId?this.getStoredPaymentMethodDetails(e.storedPaymentMethodId):this.getPaymentMethodFromPaymentMethodsResponse(e?.type,e?.paymentMethodId)}buildElementProps(e){const t={showPayButton:!0,...this.core.getCorePropsForComponent(),...this.getPaymentMethodConfigFromResponse(e),...e},s=a(this);this.props=this.formatProps({...this.constructor.defaultProps,...h(this.core.options.countryCode,s),...t})}getStoredPaymentMethodDetails(e){return this.core.paymentMethodsResponse.findStoredPaymentMethod(e)}getPaymentMethodFromPaymentMethodsResponse(e,t){return t?this.core.paymentMethodsResponse.findById(t):this.core.paymentMethodsResponse?.find(e||this.constructor.type)}storeElementRefOnCore(e){e?.isDropin||this.core.storeElementReference(this)}isAvailable(){return Promise.resolve()}setState(e){this.state={...this.state,...e},this.onChange()}showValidation(){return this.componentRef&&this.componentRef.showValidation&&this.componentRef.showValidation(),this}updateAmount(e,t){this.props={...this.props,...e&&{amount:e},...t&&{secondaryAmount:t}},this.amountProviderRef.current?.update(e,t)}setElementStatus(e,t){return this.elementRef?.setStatus(e,t),this}setStatus(e,t){return this.componentRef?.setStatus&&this.componentRef.setStatus(e,t),this}onChange(){this.props.onChange?.({data:this.data,isValid:this.isValid,errors:this.state.errors,valid:this.state.valid},this.elementRef)}submitAnalytics(e){this.analytics.sendAnalytics(e)}submit(){this.isValid?this.makePaymentsCall().then(d).then(l).then(this.handleResponse).catch(e=>{e instanceof b?this.setElementStatus(\"ready\"):this.handleFailedResult(e)}):this.showValidation()}makePaymentsCall(){if(this.setElementStatus(\"loading\"),this.props.onSubmit)return this.submitUsingAdvancedFlow();if(this.core.session){return(this.props.beforeSubmit?new Promise((e,t)=>{this.props.beforeSubmit(this.data,this.elementRef,{resolve:e,reject:()=>t(new b(\"beforeSubmitRejected\"))})}):Promise.resolve(this.data)).then(this.submitUsingSessionsFlow)}this.handleError(new s(\"IMPLEMENTATION_ERROR\",'It can not perform /payments call. Callback \"onSubmit\" is missing or Checkout session is not available'))}async submitUsingAdvancedFlow(){const e=new f({component:this.type,type:R.submit,message:\"Shopper clicked pay\"});return this.submitAnalytics(e),new Promise((e,t)=>{this.props.onSubmit({data:this.data,isValid:this.isValid},this.elementRef,{resolve:e,reject:t})})}async submitUsingSessionsFlow(e){const t=new f({component:this.type,type:R.submit,message:\"Shopper clicked pay\"});this.submitAnalytics(t);try{return await this.core.session.submitPayment(e)}catch(e){return e instanceof s?this.handleError(e):this.handleError(new s(\"ERROR\",\"Error when making /payments call\",{cause:e})),Promise.reject(e)}}onComplete(e){this.handleAdditionalDetails(e)}handleAdditionalDetails(e){this.makeAdditionalDetailsCall(e).then(d).then(l).then(this.handleResponse).catch(this.handleFailedResult)}makeAdditionalDetailsCall(e){return this.props.onAdditionalDetails?new Promise((t,s)=>{this.props.onAdditionalDetails(e,this.elementRef,{resolve:t,reject:s})}):this.core.session?this.submitAdditionalDetailsUsingSessionsFlow(e.data):void this.handleError(new s(\"IMPLEMENTATION_ERROR\",'It can not perform /payments/details call. Callback \"onAdditionalDetails\" is missing or Checkout session is not available'))}async submitAdditionalDetailsUsingSessionsFlow(e){try{return await this.core.session.submitDetails(e)}catch(e){return e instanceof s?this.handleError(e):this.handleError(new s(\"ERROR\",\"Error when making /details call\",{cause:e})),Promise.reject(e)}}handleAction(e,t={}){if(!e||!e.type){if(i(e,\"action\")&&i(e,\"resultCode\"))throw new Error('handleAction::Invalid Action - the passed action object itself has an \"action\" property and a \"resultCode\": have you passed in the whole response object by mistake?');throw new Error('handleAction::Invalid Action - the passed action object does not have a \"type\" property')}const s=this.core.createFromAction(e,{...this.elementRef.props,...t});return s?(this.unmount(),s.mount(this._node)):null}onActionHandled(e){this.props?.onActionHandled?.({originalAction:this.props.originalAction,...e})}setupSessionsDonation(){const{amount:e,donation:t}=this.props;if(!1!==t?.autoMount){const t=a(this.elementRef)?this.elementRef._node:this._node;new(this.core.getComponent(g.donation))(this.core,{rootNode:t,commercialTxAmount:e.value})}}handleResponse(e){e.action?this.elementRef.handleAction(e.action):e.order?.remainingAmount?.value>0?this.handleOrder(e):this.handleSuccessResult(e)}handleKeyDown(e){\"Enter\"!==e.key&&\"Enter\"!==e.code||(e.preventDefault(),this.onEnterKeyPressed(document?.activeElement,this))}onEnterKeyPressed(e,t){this.props.onEnterKeyPressed?this.props.onEnterKeyPressed(e,t):(e.blur(),this.submit())}updateParent(e={}){return this.elementRef.core.update(e)}get isValid(){return!1}get icon(){const e=this.props.paymentMethodType||this.type;return this.props.icon??this.resources.getImage()(e)}get displayName(){const e=this.core.paymentMethodsResponse?.paymentMethods?.find(e=>e.type===this.type);return this.props.name||e?.name||this.type}get accessibleName(){return this.displayName}get additionalInfo(){return null}get type(){return this.props.type||this.constructor.type}async handleAdvanceFlowPaymentMethodsUpdate(e,t){return new Promise((t,s)=>{if(!this.props.onPaymentMethodsRequest)return t();this.props.onPaymentMethodsRequest({...e&&{order:{orderData:e.orderData,pspReference:e.pspReference}},locale:this.core.options.locale},{resolve:t,reject:s})}).catch(e=>{this.handleError(new s(\"IMPLEMENTATION_ERROR\",\"Something failed during payment methods update or onPaymentMethodsRequest was not implemented\",{cause:e}))}).then(s=>this.core.update({...s&&{paymentMethodsResponse:s},order:e,amount:e?e.remainingAmount:t}))}render(){return e(A,{i18n:this.props.i18n,loadingContext:this.props.loadingContext,resources:this.resources,analytics:this.analytics},e(P,{srPanel:this.srPanel},e(E,{amount:this.props.amount,secondaryAmount:this.props.secondaryAmount,providerRef:this.amountProviderRef},this.componentToRender())))}constructor(s,i){super(s,i),v(this,\"componentRef\",void 0),v(this,\"resources\",void 0),v(this,\"elementRef\",void 0),v(this,\"amountProviderRef\",t()),v(this,\"handleError\",e=>{if(this.setElementStatus(\"ready\"),e.name===n&&e.options.code){const t=new p({component:this.type,errorType:c.apiError,code:e.options.code});this.submitAnalytics(t)}this.props.onError&&this.props.onError(e,this.elementRef)}),v(this,\"handleOrder\",e=>{const{order:t}=e;(this.core.session?this.core.update({order:t}):this.handleAdvanceFlowPaymentMethodsUpdate(t)).then(()=>{this.props.onOrderUpdated?.({order:t})})}),v(this,\"handleFailedResult\",e=>{a(this.elementRef)&&this.elementRef.displayFinalAnimation(\"error\"),m(e),this.props.onPaymentFailed?.(e,this.elementRef)}),v(this,\"handleSuccessResult\",e=>{a(this.elementRef)&&this.elementRef.displayFinalAnimation(\"success\"),m(e),this.core.session&&!0===e.askDonation&&this.setupSessionsDonation(),this.props.onPaymentCompleted?.(e,this.elementRef)}),v(this,\"setComponentRef\",e=>{this.componentRef=e}),v(this,\"payButton\",t=>e(r,{...t,onClick:this.submit})),this.core.register(this.constructor),this.submit=this.submit.bind(this),this.setState=this.setState.bind(this),this.onComplete=this.onComplete.bind(this),this.handleAction=this.handleAction.bind(this),this.handleOrder=this.handleOrder.bind(this),this.handleAdditionalDetails=this.handleAdditionalDetails.bind(this),this.handleResponse=this.handleResponse.bind(this),this.setElementStatus=this.setElementStatus.bind(this),this.submitAnalytics=this.submitAnalytics.bind(this),this.makePaymentsCall=this.makePaymentsCall.bind(this),this.makeAdditionalDetailsCall=this.makeAdditionalDetailsCall.bind(this),this.submitUsingSessionsFlow=this.submitUsingSessionsFlow.bind(this),this.updateAmount=this.updateAmount.bind(this),this.setupSessionsDonation=this.setupSessionsDonation.bind(this),this.elementRef=i&&i.elementRef||this,this.resources=this.props.modules?this.props.modules.resources:void 0,this.storeElementRefOnCore(this.props),this.onEnterKeyPressed=this.onEnterKeyPressed.bind(this),this.onActionHandled=this.onActionHandled.bind(this),this.createBeforeRenderHook(i),this.reportIntegrationFlavor()}}v(w,\"type\",void 0),v(w,\"txVariants\",[]);export{w as UIElement,w as default};\n//# sourceMappingURL=UIElement.js.map\n","import{createElement as t}from\"../../external/preact/dist/preact.js\";import e from\"./components/CardInput/CardInput.js\";import o from\"../../utils/browserInfo.js\";import{triggerBinLookUp as s}from\"../internal/SecuredFields/binLookup/triggerBinLookUp.js\";import{fieldTypeToSnakeCase as n,isSecuredField as i}from\"../internal/SecuredFields/utils.js\";import{reject as r,notFalsy as a}from\"../../utils/commonUtils.js\";import{shouldIncludeInstallmentsInPaymentData as p}from\"./components/CardInput/utils.js\";import c from\"../internal/ClickToPay/services/create-clicktopay-service.js\";import u from\"./components/ClickToPayWrapper.js\";import{TxVariants as d}from\"../tx-variants.js\";import{UIElement as l}from\"../internal/UIElement/UIElement.js\";import h from\"../internal/PayButton/PayButton.js\";import m,{IMPLEMENTATION_ERROR as y}from\"../../core/Errors/AdyenCheckoutError.js\";import f from\"./components/CardInput/defaultProps.js\";import{AnalyticsInfoEvent as g,InfoEventType as b}from\"../../core/Analytics/events/AnalyticsInfoEvent.js\";function C(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class P extends l{setStatus(t,e){return this.componentRef?.setStatus&&this.componentRef.setStatus(t,e),this.clickToPayRef?.setStatus&&this.clickToPayRef.setStatus(t),this}getPaymentMethodConfigFromResponse(t){return t?.fundingSource?this.core.paymentMethodsResponse?.findByFundingSource(t.type,t.fundingSource):super.getPaymentMethodConfigFromResponse(t)}formatProps(t){const e=t.session?.configuration?.enableStoreDetails??t.enableStoreDetails,o=!(0===t.amount?.value)&&e,s=t.storedPaymentMethodId||t.id,n=s&&t?.supportedShopperInteractions?.includes(\"Ecommerce\");if(s&&!n)throw new m(y,\"You are trying to create a storedCard from a stored PM that does not support Ecommerce interactions\");const i=t.installmentOptions;t.session&&a(i)&&console.warn(\"WARNING: You have defined installments configuration on the Card component, but you are using a /sessions integration.\\nWith this integration, installments configuration must be defined when you create the session. Any configuration defined elsewhere will be ignored.\\n\\n\");const r=t.session?t.session?.configuration?.installmentOptions??f.installmentOptions:i;return{...t,holderNameRequired:!!t.hasHolderName&&t.holderNameRequired,hasCVC:!(t.brand&&\"bcmc\"===t.brand||t.hideCVC),billingAddressRequired:!t.storedPaymentMethodId&&t.billingAddressRequired,billingAddressMode:t.onAddressLookup?f.billingAddressMode:t.billingAddressMode,brand:t.brand??d.card,countryCode:t.countryCode?t.countryCode.toLowerCase():null,configuration:{...t.configuration,socialSecurityNumberMode:t.configuration?.socialSecurityNumberMode??\"auto\"},brandsConfiguration:t.brandsConfiguration||t.configuration?.brandsConfiguration||{},icon:t.icon||t.configuration?.icon,installmentOptions:r,enableStoreDetails:e,showStoreDetailsCheckbox:o,clickToPayConfiguration:{...t.clickToPayConfiguration,disableOtpAutoFocus:t.clickToPayConfiguration?.disableOtpAutoFocus||!1,shopperEmail:t.clickToPayConfiguration?.shopperEmail||this.core.options?.session?.shopperEmail,telephoneNumber:t.clickToPayConfiguration?.telephoneNumber||this.core.options?.session?.telephoneNumber,locale:t.clickToPayConfiguration?.locale||t.i18n?.locale?.replace(\"-\",\"_\")},...s&&{storedPaymentMethodId:s}}}formatData(){const t=this.state.selectedBrandValue;return{paymentMethod:{type:P.type,...this.state.data,...this.props.storedPaymentMethodId&&{storedPaymentMethodId:this.props.storedPaymentMethodId,holderName:this.props.holderName??\"\"},...t&&{brand:t},...this.props.fundingSource&&{fundingSource:this.props.fundingSource},...this.state.fastlaneData&&{fastlaneData:btoa(JSON.stringify(this.state.fastlaneData))}},...this.state.billingAddress&&{billingAddress:this.state.billingAddress},...this.state.socialSecurityNumber&&{socialSecurityNumber:this.state.socialSecurityNumber},...this.storePaymentMethodPayload,...p(this.state.installments)&&{installments:this.state.installments},browserInfo:this.browserInfo,origin:!!window&&window.location.origin}}beforeRender(t){if(t?.originalAction)return;const e=new g({type:b.rendered,component:this.type,configData:{...t,showPayButton:this.props.showPayButton},...t?.oneClick&&{isStoredPaymentMethod:!0,brand:t.brand}});this.analytics.sendAnalytics(e)}updateStyles(t){return this.componentRef?.updateStyles&&this.componentRef.updateStyles(t),this}setFocusOn(t){return this.componentRef?.setFocusOn&&this.componentRef.setFocusOn(t),this}processBinLookupResponse(t,e=!1){return this.componentRef?.processBinLookupResponse&&this.componentRef.processBinLookupResponse(t,e),this}handleUnsupportedCard(t){return this.componentRef?.handleUnsupportedCard&&this.componentRef.handleUnsupportedCard(t),this}onBinLookup(t){if(!t.isReset){const e=r(\"supportedBrandsRaw\").from(t);this.props.onBinLookup?.(e)}}get storePaymentMethodPayload(){if(this.props.storedPaymentMethodId?.length>0)return{};if(0===this.props.amount?.value)return this.props.enableStoreDetails?{storePaymentMethod:!0}:{};return this.props.showStoreDetailsCheckbox&&void 0!==this.state.storePaymentMethod?{storePaymentMethod:Boolean(this.state.storePaymentMethod)}:{}}get isValid(){return!!this.state.isValid}get icon(){return this.props.icon??this.resources.getImage()(this.props.brand)}get brands(){const{brands:t,brandsConfiguration:e}=this.props;return t?t.map(t=>({icon:e?.[t]?.icon??this.props.modules.resources.getImage()(t),name:t})):[]}get displayName(){return this.props.storedPaymentMethodId?`•••• ${this.props.lastFour}`:this.props.name||P.type}get accessibleName(){return(this.props.name||P.type)+(this.props.storedPaymentMethodId?\" \"+this.props.i18n.get(\"creditCard.storedCard.description.ariaLabel\").replace(\"%@\",this.props.lastFour):\"\")}get browserInfo(){return o()}renderCardInput(o=!0){return t(e,{setComponentRef:this.setComponentRef,...this.props,...this.state,onSubmitAnalytics:this.submitAnalytics,onChange:this.setState,onSubmit:this.submit,handleKeyDown:this.handleKeyDown,payButton:this.payButton,onBrand:this.onBrand,onBinValue:this.onBinValue,brand:this.props.brand,brandsIcons:this.brands,isPayButtonPrimaryVariant:o,resources:this.resources,onFocus:this.onFocus,onBlur:this.onBlur,onConfigSuccess:this.onConfigSuccess})}componentToRender(){return t(u,{configuration:this.props.clickToPayConfiguration,clickToPayService:this.clickToPayService,isStandaloneComponent:!1,setClickToPayRef:this.setClickToPayRef,onSetStatus:this.setElementStatus,onSubmit:this.handleClickToPaySubmit,onError:this.handleError},t=>this.renderCardInput(t))}constructor(e,o){super(e,o),C(this,\"clickToPayService\",void 0),C(this,\"clickToPayRef\",null),C(this,\"setClickToPayRef\",t=>{this.clickToPayRef=t}),C(this,\"onBrand\",t=>{this.props.onBrand?.(t)}),C(this,\"handleClickToPaySubmit\",t=>{this.setState({data:{...t},valid:{},errors:{},isValid:!0}),this.submit()}),C(this,\"onConfigSuccess\",t=>{const e=new g({component:this.type,type:b.configured});this.submitAnalytics(e),this.props.onConfigSuccess?.(t)}),C(this,\"onFocus\",t=>{const e=new g({component:this.type,type:b.focus,target:n(t.fieldType)});this.submitAnalytics(e),i(t.fieldType)?this.props.onFocus?.(t.event):this.props.onFocus?.(t)}),C(this,\"onBlur\",t=>{const e=new g({component:this.type,type:b.unfocus,target:n(t.fieldType)});this.submitAnalytics(e),i(t.fieldType)?this.props.onBlur?.(t.event):this.props.onBlur?.(t)}),C(this,\"onBinValue\",s(this)),C(this,\"payButton\",e=>{const o=0===this.props.amount?.value,s=this.props.storedPaymentMethodId?.length>0;return t(h,{...e,label:o&&!s?this.props.i18n.get(\"payButton.saveDetails\"):\"\",onClick:this.submit})}),o&&!o._disableClickToPay&&\"prepaid\"!==this.props.fundingSource&&(this.clickToPayService=c(this.props.configuration,this.props.clickToPayConfiguration,this.props.environment,this.analytics),this.clickToPayService?.initialize())}}C(P,\"type\",d.scheme),C(P,\"defaultProps\",{showFormInstruction:!0,_disableClickToPay:!1,doBinLookup:!0,...r([\"type\",\"setComponentRef\"]).from(f)});export{P as CardElement,P as default};\n//# sourceMappingURL=Card.js.map\n","import{Component as e,createElement as t}from\"../../../../external/preact/dist/preact.js\";import r from\"../../../../_virtual/index.js\";class a extends e{componentDidMount(){this.formEl.submit(),this.props.onFormSubmit(`${this.props.inputName} sent`)}render({name:e,action:a,target:n,inputName:o,inputValue:s}){return t(\"form\",{ref:e=>{this.formEl=e},method:\"POST\",className:r([\"adyen-checkout__threeds2__form\",`adyen-checkout__threeds2__form--${e}`]),name:e,action:a,target:n,style:{display:\"none\"}},t(\"input\",{name:o,value:s}))}constructor(...e){var t,r,a;super(...e),a=void 0,(r=\"formEl\")in(t=this)?Object.defineProperty(t,r,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[r]=a}}export{a as default};\n//# sourceMappingURL=ThreeDS2Form.js.map\n","import{hasOwnProperty as e}from\"./hasOwnProperty.js\";const t=(t,a,r,n)=>r=>{const o={};if(r.origin!==t)return\"Message was not sent from the expected domain\";if(\"string\"!=typeof r.data)return\"Event data from expected domain but not in expected form\";if(!r.data.length)return\"Event data from expected domain, in expected form, but empty\";try{const t=JSON.parse(r.data);return t&&\"object\"==typeof t&&e(t,\"type\")?t.type===n?(a(t),!0):'Event data has \"type\" but the object is not in the expected form':\"Event data had no type\"}catch(e){return o.type=`${n}-JSON-parse-error`,o.comment=\"failed to JSON parse event.data\",o.extraInfo=`event.data = ${r.data}`,o.eventDataRaw=r.data,console.debug(\"get-process-message-handler::CATCH::Un-parseable JSON:: parseErrorObj=\",o),!1}};export{t as default};\n//# sourceMappingURL=get-process-message-handler.js.map\n","const e=\"threeDS2Fingerprint\",r=\"3DS2Fingerprint_Error\",t=\"callSubmit3DS2Fingerprint_Response\",l=\"threeDS2Challenge\",p=\"3DS2Challenge_Error\",n=\"threeDS2\",o=\"3DS2\",i='Missing \"token\" property from threeDS2 action',a=\"02\",s=1e4,c=6e5,g=\"timeout\",u={result:{transStatus:\"U\"},type:\"challengeResult\",errorCode:g},S={result:{threeDSCompInd:\"N\"},type:\"fingerPrintResult\",errorCode:g},x=\"payment *; publickey-credentials-get *\",D=\"payment *; publickey-credentials-get *; publickey-credentials-create *\",h=\"allow-forms allow-same-origin allow-scripts allow-pointer-lock allow-popups\",m={\"01\":[\"250px\",\"400px\"],\"02\":[\"390px\",\"400px\"],\"03\":[\"500px\",\"600px\"],\"04\":[\"600px\",\"400px\"],\"05\":[\"100%\",\"100%\"]};export{c as CHALLENGE_TIMEOUT,u as CHALLENGE_TIMEOUT_REJECT_OBJECT,m as CHALLENGE_WINDOW_SIZES,a as DEFAULT_CHALLENGE_WINDOW_SIZE,S as FAILED_METHOD_STATUS_RESOLVE_OBJECT_TIMEOUT,i as MISSING_TOKEN_IN_ACTION_MSG,x as PASSKEY_3DS2_IFRAME_ALLOW,D as PASSKEY_VISA_IFRAME_ALLOW,h as PASSKEY_VISA_IFRAME_SANDBOX,l as THREEDS2_CHALLENGE,p as THREEDS2_CHALLENGE_ERROR,e as THREEDS2_FINGERPRINT,r as THREEDS2_FINGERPRINT_ERROR,t as THREEDS2_FINGERPRINT_SUBMIT,n as THREEDS2_FULL,o as THREEDS2_NUM,s as THREEDS_METHOD_TIMEOUT,g as TIMEOUT};\n//# sourceMappingURL=constants.js.map\n","const n=n=>{const t=/^(?:([A-Za-z]+):)?(\\/{0,3})([0-9.\\-A-Za-z]+)(?::(\\d+))?(?:\\/([^?#]*))?(?:\\?([^#]*))?(?:#(.*))?$/.exec(n);if(!t)return null;const[,$,e,r,c]=t;return $&&e&&r?`${$}:${e}${r}${c?`:${c}`:\"\"}`:null};export{n as getOrigin};\n//# sourceMappingURL=getOrigin.js.map\n","import{CHALLENGE_WINDOW_SIZES as e,DEFAULT_CHALLENGE_WINDOW_SIZE as t}from\"../constants.js\";import{getOrigin as r}from\"../../../utils/getOrigin.js\";import n from\"../../../utils/base64.js\";const s=e=>\"success\"in e&&!e.success,o=e=>{const t=n.decode(e);if(t.success&&t.data)try{return JSON.parse(t.data)}catch(e){return{success:!1,error:\"Could not JSON parse token\"}}return t},a=e=>{if(!e||!Object.keys(e).length)throw new Error(\"No (populated) data object to encode\");return n.encode(JSON.stringify(e))},i=r=>{const n=1===r.length?`0${r}`:r;return Object.prototype.hasOwnProperty.call(e,n)?n:t},c=t=>e[i(t)],p=({token:e,size:t})=>{const n=o(e);if(s(n))return n;const{acsTransID:a,acsURL:p,messageVersion:h,threeDSNotificationURL:u,threeDSServerTransID:l}=n,D=r(u??\"\");return{acsURL:p??\"\",cReqData:{acsTransID:a??\"\",messageVersion:h??\"\",threeDSServerTransID:l??\"\",messageType:\"CReq\",challengeWindowSize:i(t)},iframeSizeArr:c(t),postMessageDomain:D}},h=({token:e,notificationURL:t})=>{const n=o(e);if(s(n))return n;const{threeDSMethodNotificationURL:a,threeDSMethodUrl:i,threeDSServerTransID:c}=n,p=t??a??\"\";return{threeDSServerTransID:c??\"\",threeDSMethodURL:i??\"\",threeDSMethodNotificationURL:p,postMessageDomain:r(p)}},u=(e,t,r)=>({data:{[e]:a({threeDSCompInd:t.threeDSCompInd}),paymentData:r}}),l=(e,t,r)=>({data:{details:{[e]:a({transStatus:t,authorisationToken:r})}}}),D=e=>{let t=window.btoa(e).split(\"=\")[0];return t=t.replace(/\\+/g,\"-\"),t=t.replace(/\\//g,\"_\"),t},S=(e,t)=>\"fingerprint\"===e?{showSpinner:!t.isDropin,statusType:\"loading\",...t.elementRef&&{elementRef:t.elementRef}}:{statusType:\"custom\",i18n:t.i18n,elementRef:t.elementRef};export{l as createChallengeResolveData,u as createFingerprintResolveData,o as decodeAndParseToken,D as encodeBase64URL,a as encodeObject,S as get3DS2FlowProps,c as getChallengeWindowSize,s as isErrorObject,p as prepareChallengeData,h as prepareFingerPrintData,i as validateChallengeWindowSize};\n//# sourceMappingURL=utils.js.map\n","const e=(e,t,c)=>{let o;return{promise:new Promise((r,a)=>{o=setTimeout(()=>{a(c)},e),t.then(e=>{clearTimeout(o),r(e)}).catch(e=>{clearTimeout(o),a(e)})}),cancel:()=>{clearTimeout(o)}}};export{e as default};\n//# sourceMappingURL=promiseTimeout.js.map\n","import{Component as e,createElement as s}from\"../../../../external/preact/dist/preact.js\";import t from\"../../../../_virtual/index.js\";import r from\"../../../internal/IFrame/Iframe.js\";import a from\"../../../internal/Spinner/Spinner.js\";import n from\"../Form/ThreeDS2Form.js\";import i from\"../../../../utils/get-process-message-handler.js\";import{encodeBase64URL as o}from\"../utils.js\";import l from\"../../../../utils/promiseTimeout.js\";import{CHALLENGE_TIMEOUT as m,PASSKEY_VISA_IFRAME_SANDBOX as c,PASSKEY_VISA_IFRAME_ALLOW as h,PASSKEY_3DS2_IFRAME_ALLOW as p,CHALLENGE_TIMEOUT_REJECT_OBJECT as d,THREEDS2_NUM as g}from\"../../constants.js\";function u(e,s,t){return s in e?Object.defineProperty(e,s,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[s]=t,e}const f=\"threeDSIframe\";class b extends e{get3DS2ChallengePromise(){return new Promise((e,s)=>{this.processMessageHandler=i(this.props.postMessageDomain,e,s,\"challengeResult\"),window.addEventListener(\"message\",this.processMessageHandler)})}componentDidMount(){this.challengePromise=l(m,this.get3DS2ChallengePromise(),d),this.challengePromise.promise.then(e=>{window.removeEventListener(\"message\",this.processMessageHandler),this.props.onCompleteChallenge(e)}).catch(e=>{window.removeEventListener(\"message\",this.processMessageHandler),this.props.onErrorChallenge(e)})}componentWillUnmount(){this.challengePromise&&this.challengePromise.cancel(),window.removeEventListener(\"message\",this.processMessageHandler)}render({acsURL:e,cReqData:i,iframeSizeArr:o,onFormSubmit:l,usePasskeyIFrameAttributes:m},{base64URLencodedData:d,status:g}){const[u,b]=o;return s(\"div\",{className:t([\"adyen-checkout__threeds2__challenge\",`adyen-checkout__threeds2__challenge--${i.challengeWindowSize}`])},\"iframeLoaded\"!==g&&s(a,null),s(r,{name:f,width:u,height:b,callback:this.iframeCallback,allow:m?h:p,sandbox:m?c:void 0}),s(n,{name:\"cReqForm\",action:e,target:f,inputName:\"creq\",inputValue:d??\"\",onFormSubmit:l}))}constructor(e){super(e),u(this,\"processMessageHandler\",void 0),u(this,\"challengePromise\",void 0),u(this,\"iframeCallback\",()=>{this.setState({status:\"iframeLoaded\"}),\"init\"===this.state.status&&this.props.onActionHandled?.({componentType:\"3DS2Challenge\",actionDescription:`${g} challenge iframe loaded`})});const s=JSON.stringify(this.props.cReqData),t=o(s);this.state={base64URLencodedData:t,status:\"init\"}}}export{b as default};\n//# sourceMappingURL=DoChallenge3DS2.js.map\n","import{Component as e,createElement as r}from\"../../../../external/preact/dist/preact.js\";import t from\"./DoChallenge3DS2.js\";import{isErrorObject as s,createChallengeResolveData as o,prepareChallengeData as n}from\"../utils.js\";import a from\"../../../internal/Img/Img.js\";import{hasOwnProperty as i}from\"../../../../utils/hasOwnProperty.js\";import l from\"../../../../core/Context/useImage.js\";import p,{ERROR as c}from\"../../../../core/Errors/AdyenCheckoutError.js\";import{THREEDS2_CHALLENGE_ERROR as h,MISSING_TOKEN_IN_ACTION_MSG as u,THREEDS2_NUM as m,THREEDS2_CHALLENGE as S}from\"../../constants.js\";import{isValidHttpUrl as g}from\"../../../../utils/isValidURL.js\";import{AnalyticsLogEvent as d,LogEventSubtype as D,LogEventType as E}from\"../../../../core/Analytics/events/AnalyticsLogEvent.js\";import{ErrorEventCode as _,AnalyticsErrorEvent as I,ErrorEventType as T}from\"../../../../core/Analytics/events/AnalyticsErrorEvent.js\";function f(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}class C extends e{componentDidMount(){if(!s(this.state.challengeData)){const e=\"test\"===this.props.environment&&this.props._environmentUrls?.api?.includes(\"http://localhost:8080\"),{acsURL:r,postMessageDomain:t}=this.state.challengeData,s=g(r,e),o=g(t,e);if(!s||!o){const e=s?_.THREEDS2_CHALLENGE_TOKEN_IS_MISSING_THREEDSNOTIFICATIONURL:_.THREEDS2_TOKEN_IS_MISSING_ACSURL,r=s?\"threeDSNotificationURL\":\"acsURL\";this.setError({errorInfo:`${e}: ${this.props.i18n.get(\"err.gen.9102\")}`},!0);const n=new I({component:this.props.type,code:e,errorType:T.threeDS2,message:`${h}: Decoded token is missing a valid ${r} property`});return this.props.onSubmitAnalytics(n),void console.debug(`### PrepareChallenge3DS2::exiting:: no valid ${r}.${o?\"\":` postMessageDomain=${t}`}`)}const{acsTransID:n,messageVersion:a,threeDSServerTransID:i}=this.state.challengeData.cReqData;if(!n||!a||!i){this.setError({errorInfo:`${_.THREEDS2_TOKEN_IS_MISSING_OTHER_PROPS}: ${this.props.i18n.get(\"err.gen.9102\")}`},!0);const e=new I({component:this.props.type,code:_.THREEDS2_TOKEN_IS_MISSING_OTHER_PROPS,errorType:T.threeDS2,message:`${h}: Decoded token is missing one or more of the following properties (acsTransID | messageVersion | threeDSServerTransID)`});return this.props.onSubmitAnalytics(e),void console.debug(\"### PrepareChallenge3DS2::exiting:: missing one or more of the following properties (acsTransID | messageVersion | threeDSServerTransID)\")}this.setState({status:\"performingChallenge\"})}else{const e=this.state.challengeData.error,r=e.includes(u)?_.THREEDS2_ACTION_IS_MISSING_TOKEN:_.THREEDS2_TOKEN_DECODE_OR_PARSING_FAILED;this.setError({errorInfo:`${r}: ${this.props.i18n.get(\"err.gen.9102\")}`},!0);const t=new I({component:this.props.type,code:r,errorType:T.threeDS2,message:`${h}: ${e}`});this.props.onSubmitAnalytics(t),console.debug(\"### PrepareChallenge3DS2::exiting:: no challengeData\")}}setStatusComplete(e,r=null){this.setState({status:\"complete\"},()=>{const t=o(this.props.dataKey,e.transStatus,this.props.paymentData);let s;r&&console.debug(\"### PrepareChallenge3DS2::errorCodeObject::\",r);const n=r||e;if(n.errorCode){const e={code:\"timeout\"===n.errorCode?_.THREEDS2_TIMEOUT:_.THREEDS2_NO_TRANSSTATUS,errorType:T.threeDS2};s=new I({component:this.props.type,message:n.message,...e}),this.props.onSubmitAnalytics(s)}let a;switch(e?.transStatus){case\"Y\":a=\"success\";break;case\"N\":a=\"failed\";break;case\"U\":a=r?\"timeout\":\"cancelled\"}e?.errorCode&&(a=\"noTransStatus\"),s=new d({component:this.props.type,type:E.threeDS2,subType:D.challengeCompleted,message:`${m} challenge has completed`,result:a}),this.props.onSubmitAnalytics(s),this.props.onComplete(t)})}setError(e,r){this.setState({status:\"error\",errorInfo:e.errorInfo}),r&&this.props.onError(new p(c,e.errorInfo,{cause:e.errorObj}))}render(e,{challengeData:s}){const o=s,n=l();return\"performingChallenge\"===this.state.status?r(t,{onCompleteChallenge:e=>{let r=null;if(i(e.result,\"errorCode\")&&e.result.errorCode.length&&(r={errorCode:e.result.errorCode,message:`${h}: ${e.result.errorDescription?e.result.errorDescription:\"no transStatus could be retrieved\"}`},this.props.isMDFlow&&this.props.onError(new p(c,`${h}: ${e.result.errorDescription?e.result.errorDescription:\"no transStatus could be retrieved\"}`,{cause:e.result.errorCode}))),!e.result){this.setError({errorInfo:`${h}: ${this.props.i18n.get(\"3ds.chal.805\",{values:{result:'\"result\"'}})}`,errorObj:e},!0);const r=new I({component:this.props.type,code:_.THREEDS2_CHALLENGE_RESOLVED_WITHOUT_RESULT_PROP,errorType:T.threeDS2,message:`${h}: challenge resolved without a \"result\" object`});return this.props.onSubmitAnalytics(r),void console.debug('### PrepareChallenge3DS2::exiting:: challenge resolved without a \"result\" object')}this.setStatusComplete(e.result,r)},onErrorChallenge:e=>{if(i(e,\"errorCode\")){const r={errorCode:e.errorCode,message:`${S}: ${e.errorCode}`};return this.props.isMDFlow&&this.props.onError(new p(c,`${h}: '3DS2 challenge timed out'`,{cause:e.errorCode})),void this.setStatusComplete(e.result,r)}},...o,onActionHandled:this.props.onActionHandled,onFormSubmit:this.onFormSubmit,usePasskeyIFrameAttributes:this.props.usePasskeyIFrameAttributes}):\"error\"===this.state.status?r(\"div\",{className:\"adyen-checkout__threeds2-challenge-error\"},r(a,{className:\"adyen-checkout__status__icon adyen-checkout__status__icon--error\",src:n({imageFolder:\"components/\"})(\"error\"),alt:\"\"}),r(\"div\",{className:\"adyen-checkout__status__text\"},this.state.errorInfo?this.state.errorInfo:this.props.i18n.get(\"error.message.unknown\"))):null}constructor(e){if(super(e),f(this,\"onFormSubmit\",e=>{const r=new d({component:this.props.type,type:E.threeDS2,subType:D.challengeDataSentWeb,message:e});this.props.onSubmitAnalytics(r)}),this.props.token){const e=n({token:this.props.token,size:this.props.challengeWindowSize||this.props.size});this.state={status:\"init\",challengeData:e}}else this.state={challengeData:{success:!1,error:u}},console.debug(`${h}: ${u}`)}}f(C,\"defaultProps\",{onComplete:()=>{},onError:()=>{},isMDFlow:!1});export{C as default};\n//# sourceMappingURL=PrepareChallenge3DS2.js.map\n","import{createElement as e}from\"../../external/preact/dist/preact.js\";import{UIElement as t}from\"../internal/UIElement/UIElement.js\";import o from\"./components/Challenge/PrepareChallenge3DS2.js\";import{THREEDS2_CHALLENGE_ERROR as n,THREEDS2_CHALLENGE as r,DEFAULT_CHALLENGE_WINDOW_SIZE as s}from\"./constants.js\";import{existy as i}from\"../../utils/commonUtils.js\";import{hasOwnProperty as a}from\"../../utils/hasOwnProperty.js\";import{TxVariants as p}from\"../tx-variants.js\";import l,{API_ERROR as m}from\"../../core/Errors/AdyenCheckoutError.js\";import{AnalyticsLogEvent as c,LogEventSubtype as h,LogEventType as u}from\"../../core/Analytics/events/AnalyticsLogEvent.js\";import{AnalyticsErrorEvent as d,ErrorEventType as y,ErrorEventCode as f}from\"../../core/Analytics/events/AnalyticsErrorEvent.js\";function A(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}class D extends t{beforeRender(){}onComplete(e){this.props.isMDFlow?this.props.on3DS2RedirectFlowComplete?.(e,this.elementRef):super.onComplete(e),this.unmount()}componentToRender(){if(!i(this.props.paymentData)){const e=a(this.props,\"isMDFlow\")?\"paymentData\":\"authorisationToken\";this.props.onError(new l(m,`No ${e} received. 3DS2 Challenge cannot proceed`));const t=new d({component:this.type,code:f.THREEDS2_ACTION_IS_MISSING_PAYMENT_DATA,errorType:y.threeDS2,message:`${n}: Missing 'paymentData' property from threeDS2 action`});return this.submitAnalytics(t),null}return e(o,{...this.props,onComplete:this.onComplete,onSubmitAnalytics:this.submitAnalytics,onActionHandled:this.onActionHandled})}constructor(...e){super(...e),A(this,\"onActionHandled\",e=>{const t=new c({component:this.type,type:u.threeDS2,subType:h.challengeIframeLoaded,message:e.actionDescription});this.submitAnalytics(t),super.onActionHandled(e)})}}A(D,\"type\",p.threeDS2Challenge),A(D,\"defaultProps\",{dataKey:\"threeDSResult\",size:s,type:r});export{D as default};\n//# sourceMappingURL=ThreeDS2Challenge.js.map\n","import{Component as e,createElement as r}from\"../../../../external/preact/dist/preact.js\";import t from\"../../../internal/IFrame/Iframe.js\";import s from\"../../../internal/Spinner/Spinner.js\";import n from\"../Form/ThreeDS2Form.js\";import i from\"../../../../utils/promiseTimeout.js\";import o from\"../../../../utils/get-process-message-handler.js\";import{FAILED_METHOD_STATUS_RESOLVE_OBJECT_TIMEOUT as a,THREEDS_METHOD_TIMEOUT as m,THREEDS2_NUM as p}from\"../../constants.js\";import{encodeBase64URL as d}from\"../utils.js\";function h(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}const c=\"threeDSMethodIframe\";class l extends e{get3DS2MethodPromise(){return new Promise((e,r)=>{this.processMessageHandler=o(this.props.postMessageDomain,e,r,\"fingerPrintResult\"),window.addEventListener(\"message\",this.processMessageHandler)})}componentDidMount(){this.fingerPrintPromise=i(m,this.get3DS2MethodPromise(),a),this.fingerPrintPromise.promise.then(e=>{window.removeEventListener(\"message\",this.processMessageHandler),this.props.onCompleteFingerprint(e)}).catch(e=>{window.removeEventListener(\"message\",this.processMessageHandler),this.props.onErrorFingerprint(e)})}componentWillUnmount(){this.fingerPrintPromise&&this.fingerPrintPromise.cancel(),window.removeEventListener(\"message\",this.processMessageHandler)}render({threeDSMethodURL:e,onActionHandled:i,onFormSubmit:o},{base64URLencodedData:a}){return r(\"div\",{className:\"adyen-checkout__3ds2-device-fingerprint\"},this.props.showSpinner&&r(s,null),r(\"div\",{style:{display:\"none\"}},r(t,{name:c,callback:()=>{i?.({componentType:\"3DS2Fingerprint\",actionDescription:`${p} fingerprint iframe loaded`})}}),r(n,{name:\"threeDSMethodForm\",action:e,target:c,inputName:\"threeDSMethodData\",inputValue:a,onFormSubmit:o})))}constructor(e){super(e),h(this,\"processMessageHandler\",void 0),h(this,\"fingerPrintPromise\",void 0);const{threeDSServerTransID:r,threeDSMethodNotificationURL:t}=this.props,s=JSON.stringify({threeDSServerTransID:r,threeDSMethodNotificationURL:t}),n=d(s);this.state={base64URLencodedData:n}}}h(l,\"defaultProps\",{showSpinner:!0});export{l as default};\n//# sourceMappingURL=DoFingerprint3DS2.js.map\n","import{Component as e,createElement as t}from\"../../../../external/preact/dist/preact.js\";import r from\"./DoFingerprint3DS2.js\";import{isErrorObject as o,createFingerprintResolveData as s,prepareFingerPrintData as n}from\"../utils.js\";import{isValidHttpUrl as i}from\"../../../../utils/isValidURL.js\";import{THREEDS2_FINGERPRINT_ERROR as a,MISSING_TOKEN_IN_ACTION_MSG as p,TIMEOUT as m,THREEDS2_NUM as l,THREEDS2_FINGERPRINT as c}from\"../../constants.js\";import{AnalyticsLogEvent as h,LogEventSubtype as d,LogEventType as S}from\"../../../../core/Analytics/events/AnalyticsLogEvent.js\";import{ErrorEventCode as D,ErrorEventType as u,AnalyticsErrorEvent as g}from\"../../../../core/Analytics/events/AnalyticsErrorEvent.js\";function f(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class E extends e{componentDidMount(){if(!o(this.state.fingerPrintData)){const e=\"test\"===this.props.environment&&this.props._environmentUrls?.api?.includes(\"http://localhost:8080\"),{threeDSMethodURL:t,threeDSMethodNotificationURL:r,postMessageDomain:o,threeDSServerTransID:s}=this.state.fingerPrintData;if(!i(t,e))return this.setStatusComplete({threeDSCompInd:\"U\"},{errorCode:D.THREEDS2_TOKEN_IS_MISSING_THREEDSMETHODURL,message:`${a}: Decoded token is missing a valid threeDSMethodURL property`}),void console.debug(\"### PrepareFingerprint3DS2::exiting:: no valid threeDSMethodURL\");const n=i(r,e),p=i(o,e),m=s?.length;if(!n||!p||!m)return this.setStatusComplete({threeDSCompInd:\"N\"},{errorCode:D.THREEDS2_TOKEN_IS_MISSING_OTHER_PROPS,message:`${a}: Decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)`}),void console.debug(\"### PrepareFingerprint3DS2::exiting:: Decoded token is missing one or more of the following properties (threeDSMethodNotificationURL | postMessageDomain | threeDSServerTransID)\");this.setState({status:\"retrievingFingerPrint\"})}else{const e=this.state.fingerPrintData.error,t=e.includes(p)?D.THREEDS2_ACTION_IS_MISSING_TOKEN:D.THREEDS2_TOKEN_DECODE_OR_PARSING_FAILED;this.setStatusComplete({threeDSCompInd:\"N\"},{errorCode:t,message:`${a}: ${e}`}),console.debug(\"### PrepareFingerprint3DS2:: token does not exist or could not be base64 decoded &/or JSON.parsed\")}}setStatusComplete(e,t=null){this.setState({status:\"complete\"},()=>{const r=s(this.props.dataKey,e,this.props.paymentData);let o;const n=t||e;if(n.errorCode){const e={code:n.errorCode===m?D.THREEDS2_TIMEOUT:n.errorCode,errorType:u.threeDS2};o=new g({component:this.props.type,message:n.message,...e}),this.props.onSubmitAnalytics(o)}let i;switch(e?.threeDSCompInd){case\"Y\":i=\"success\";break;case\"N\":i=t?t.errorCode===m?m:\"failedInternal\":\"failed\";break;case\"U\":i=\"noThreeDSMethodURL\"}o=new h({component:this.props.type,type:S.threeDS2,subType:d.fingerprintCompleted,message:`${l} fingerprinting has completed`,result:i}),this.props.onSubmitAnalytics(o),this.props.onComplete(r)})}render({showSpinner:e},{status:o,fingerPrintData:s}){return\"retrievingFingerPrint\"===o?t(r,{onCompleteFingerprint:e=>{this.setStatusComplete(e.result)},onErrorFingerprint:e=>{const t={errorCode:e.errorCode,message:`${c}: ${e.errorCode}`};this.setStatusComplete(e.result,t)},showSpinner:e,...s,onActionHandled:this.props.onActionHandled,onFormSubmit:this.onFormSubmit}):null}constructor(e){super(e),f(this,\"onFormSubmit\",e=>{const t=new h({component:this.props.type,type:S.threeDS2,subType:d.fingerprintDataSentWeb,message:e});this.props.onSubmitAnalytics(t)});const{token:t,notificationURL:r}=this.props;if(t){const e=n({token:t,notificationURL:r});this.state={status:\"init\",fingerPrintData:e}}else this.state={fingerPrintData:{success:!1,error:p}},console.debug(`${a}: ${p}`)}}f(E,\"type\",\"scheme\"),f(E,\"defaultProps\",{onComplete:()=>{},onError:()=>{},paymentData:\"\",showSpinner:!0,isMDFlow:!1});export{E as default};\n//# sourceMappingURL=PrepareFingerprint3DS2.js.map\n","const e=\"v1\",t={makePayments:\"620\",submitPaymentDetails:\"621\",submitThreeDS2Fingerprint:\"622\",createOrder:\"624\",donationCampaigns:\"627\",donations:\"628\"};export{t as API_ERROR_CODE,e as API_VERSION};\n//# sourceMappingURL=constants.js.map\n","import{httpPost as e}from\"../../core/Services/http.js\";import{pick as t}from\"../../utils/commonUtils.js\";import{THREEDS2_FINGERPRINT_SUBMIT as n}from\"./constants.js\";import{API_ERROR_CODE as o}from\"../../core/Services/sessions/constants.js\";import{AnalyticsErrorEvent as r,ErrorEventType as i,ErrorEventCode as s}from\"../../core/Analytics/events/AnalyticsErrorEvent.js\";function a({data:a}){e({path:`v1/submitThreeDS2Fingerprint?token=${this.props.clientKey}`,loadingContext:this.props.loadingContext,errorLevel:\"fatal\",errorCode:o.submitThreeDS2Fingerprint},{...a}).then(e=>{let o;if(\"completed\"===e.type){const{details:t}=e;return e.details?this.onComplete({data:{details:t}}):(console.debug('Handled Error::callSubmit3DS2Fingerprint::FAILED:: no details object in a response indicating either a \"frictionless\" flow, or a \"refused\" response. resData=',e),o=new r({component:\"threeDS2Fingerprint\",code:s.THREEDS2_NO_DETAILS_FOR_FRICTIONLESS_OR_REFUSED,errorType:i.threeDS2,message:`${n}: no details object in a response indicating either a \"frictionless\" flow, or a \"refused\" response`}),void this.submitAnalytics(o))}if(!e.action)return console.debug('Handled Error::callSubmit3DS2Fingerprint::FAILED:: no action object in a response indicating a \"challenge\". resData=',e),o=new r({component:\"threeDS2Fingerprint\",code:s.THREEDS2_NO_ACTION_FOR_CHALLENGE,errorType:i.threeDS2,message:`${n}: no action object in a response indicating a \"challenge\" flow`}),void this.submitAnalytics(o);const a=this.props.elementRef??this;return a?\"threeDS2\"===e.action?.type?a.handleAction(e.action,t(\"challengeWindowSize\",\"usePasskeyIFrameAttributes\").from(this.props)):\"redirect\"===e.action?.type?a.handleAction(e.action):void 0:(console.debug(\"Handled Error::callSubmit3DS2Fingerprint::FAILED:: no actionHandler\"),o=new r({component:\"threeDS2Fingerprint\",code:s.THREEDS2_NO_COMPONENT_FOR_ACTION,errorType:i.threeDS2,message:`${n}: no component defined to handle the action response`}),void this.submitAnalytics(o))}).catch(e=>{this.handleError(e)})}export{a as default};\n//# sourceMappingURL=callSubmit3DS2Fingerprint.js.map\n","import{createElement as e}from\"../../external/preact/dist/preact.js\";import{UIElement as t}from\"../internal/UIElement/UIElement.js\";import r from\"./components/DeviceFingerprint/PrepareFingerprint3DS2.js\";import n from\"./callSubmit3DS2Fingerprint.js\";import{existy as o}from\"../../utils/commonUtils.js\";import{TxVariants as i}from\"../tx-variants.js\";import s,{API_ERROR as p}from\"../../core/Errors/AdyenCheckoutError.js\";import{THREEDS2_FINGERPRINT_ERROR as a,THREEDS2_FINGERPRINT as m}from\"./constants.js\";import{AnalyticsLogEvent as c,LogEventSubtype as l,LogEventType as u}from\"../../core/Analytics/events/AnalyticsLogEvent.js\";import{AnalyticsErrorEvent as d,ErrorEventType as h,ErrorEventCode as f}from\"../../core/Analytics/events/AnalyticsErrorEvent.js\";function y(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class D extends t{beforeRender(){}onComplete(e){this.props.isMDFlow?this.props.on3DS2RedirectFlowComplete?.(e,this.elementRef):super.onComplete(e),this.unmount()}componentToRender(){if(!o(this.props.paymentData)){this.props.onError(new s(p,\"No paymentData received. 3DS2 Fingerprint cannot proceed\"));const e=new d({component:this.type,code:f.THREEDS2_ACTION_IS_MISSING_PAYMENT_DATA,errorType:h.threeDS2,message:`${a}: Missing 'paymentData' property from threeDS2 action`});return this.submitAnalytics(e),null}return e(r,{...this.props,onComplete:this.props.isMDFlow?this.onComplete:this.callSubmit3DS2Fingerprint,onSubmitAnalytics:this.submitAnalytics,onActionHandled:this.onActionHandled})}constructor(...e){super(...e),y(this,\"callSubmit3DS2Fingerprint\",n.bind(this)),y(this,\"onActionHandled\",e=>{const t=new c({component:this.type,type:u.threeDS2,subType:l.fingerprintIframeLoaded,message:e.actionDescription});this.submitAnalytics(t),super.onActionHandled(e)})}}y(D,\"type\",i.threeDS2Fingerprint),y(D,\"defaultProps\",{dataKey:\"fingerprintResult\",type:m});export{D as default};\n//# sourceMappingURL=ThreeDS2DeviceFingerprint.js.map\n","import{createElement as t,Fragment as e}from\"../../../external/preact/dist/preact.js\";import{useCoreContext as o}from\"../../../core/Context/CoreProvider.js\";import{useState as a}from\"../../../external/preact/hooks/dist/hooks.js\";import{useAmount as r}from\"../../../core/Context/AmountProvider.js\";function n({label:n=null,icon:s=null,payButton:i,onSubmit:l,name:u,showPayButton:m,...c}){const{i18n:p}=o(),[d,f]=a(\"ready\"),{amount:h}=r();this.setStatus=t=>{f(t)};if(m)return t(e,null,i({...c,status:d,icon:s,classNameModifiers:[\"standalone\"],label:n||(h&&{}.hasOwnProperty.call(h,\"value\")&&0===h.value?`${p.get(\"preauthorizeWith\")} ${u}`:`${p.get(\"continueTo\")} ${u}`),onClick:l}))}export{n as default};\n//# sourceMappingURL=RedirectButton.js.map\n","import{createElement as t}from\"../../../external/preact/dist/preact.js\";const e=({buttonStyle:e,buttonType:a,buttonLocale:o,onClick:l})=>t(\"apple-pay-button\",{\"data-testid\":\"apple-pay-button\",buttonstyle:e,type:a,locale:o,onclick:l});export{e as default};\n//# sourceMappingURL=ApplePayButton.js.map\n","function e(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}class n{begin(){return this.session.begin()}onvalidatemerchant(e,n){return new Promise((t,o)=>{n(t,o,e.validationURL)}).then(e=>{this.session.completeMerchantValidation(e)}).catch(e=>{console.error(e),this.session.abort(),this.options.onError(e)})}onpaymentauthorized(e,n){return new Promise((t,o)=>n(t,o,e)).then(e=>{this.session.completePayment(e)}).catch(e=>{this.session.completePayment(e)})}onpaymentmethodselected(e,n){return new Promise((t,o)=>n(t,o,e)).then(e=>{this.session.completePaymentMethodSelection(e)}).catch(e=>{this.session.completePaymentMethodSelection(e)})}onshippingcontactselected(e,n){return new Promise((t,o)=>n(t,o,e)).then(e=>{this.session.completeShippingContactSelection(e)}).catch(e=>{this.session.completeShippingContactSelection(e)})}onshippingmethodselected(e,n){return new Promise((t,o)=>n(t,o,e)).then(e=>{this.session.completeShippingMethodSelection(e)}).catch(e=>{this.session.completeShippingMethodSelection(e)})}oncouponcodechanged(e,n){return new Promise((t,o)=>n(t,o,e)).then(e=>{this.session.completeCouponCodeChange(e)}).catch(e=>{this.session.completeCouponCodeChange(e)})}oncancel(e,n){n(e)}constructor(n,t){e(this,\"session\",void 0),e(this,\"options\",void 0),this.options=t,this.session=new ApplePaySession(t.version,n),this.session.onvalidatemerchant=e=>{this.onvalidatemerchant(e,t.onValidateMerchant)},this.session.onpaymentauthorized=e=>{this.onpaymentauthorized(e,t.onPaymentAuthorized)},this.session.oncancel=e=>{this.oncancel(e,t.onCancel)},\"function\"==typeof t.onPaymentMethodSelected&&(this.session.onpaymentmethodselected=e=>{this.onpaymentmethodselected(e,t.onPaymentMethodSelected)}),\"function\"==typeof t.onShippingContactSelected&&(this.session.onshippingcontactselected=e=>{this.onshippingcontactselected(e,t.onShippingContactSelected)}),\"function\"==typeof t.onShippingMethodSelected&&(this.session.onshippingmethodselected=e=>{this.onshippingmethodselected(e,t.onShippingMethodSelected)}),\"function\"==typeof t.onCouponCodeChanged&&(this.session.oncouponcodechanged=e=>{this.oncouponcodechanged(e,t.onCouponCodeChanged)})}}export{n as default};\n//# sourceMappingURL=ApplePayService.js.map\n","const t={isExpress:!1,amount:{currency:\"USD\",value:0},totalPriceStatus:\"final\",initiative:\"web\",merchantCapabilities:[\"supports3DS\"],supportedNetworks:[\"amex\",\"discover\",\"masterCard\",\"visa\"],buttonType:\"plain\",buttonColor:\"black\",onClick:t=>t()};export{t as default};\n//# sourceMappingURL=defaultProps.js.map\n","import{getDecimalAmount as t}from\"../../../utils/amount-util.js\";const e=e=>{const{countryCode:i,companyName:o,amount:n,...p}=e,r=(e=>String(t(e.value,e.currency)))(n);return i||console.warn(\"Apple Pay - Make sure to set the countryCode in the AdyenCheckout configuration or in the Checkout Session creation\"),{countryCode:i,currencyCode:n.currency,total:{label:p.totalPriceLabel,amount:r,type:p.totalPriceStatus},lineItems:p.lineItems,shippingContactEditingMode:p.shippingContactEditingMode,shippingMethods:p.shippingMethods,shippingType:p.shippingType,recurringPaymentRequest:p.recurringPaymentRequest,merchantCapabilities:p.merchantCapabilities,supportedCountries:p.supportedCountries,supportedNetworks:p.supportedNetworks,requiredShippingContactFields:p.requiredShippingContactFields,requiredBillingContactFields:p.requiredBillingContactFields,billingContact:p.billingContact,shippingContact:p.shippingContact,applicationData:p.applicationData,couponCode:p.couponCode,supportsCouponCode:p.supportsCouponCode}};export{e as preparePaymentRequest};\n//# sourceMappingURL=payment-request.js.map\n","function n(n){try{for(let o=n;o>0;o--)if(\"function\"==typeof ApplePaySession?.supportsVersion&&ApplePaySession.supportsVersion(o))return o}catch(n){console.warn(n)}return null}export{n as resolveSupportedVersion};\n//# sourceMappingURL=resolve-supported-version.js.map\n","function e(e,t){if(e)return{city:e.locality,country:e.countryCode,houseNumberOrName:\"ZZ\",postalCode:e.postalCode,street:e.addressLines?.join(\" \").trim(),...e.administrativeArea&&{stateOrProvince:e.administrativeArea},...t&&{firstName:e.givenName,lastName:e.familyName}}}export{e as formatApplePayContactToAdyenAddressFormat};\n//# sourceMappingURL=format-applepay-contact-to-adyen-format.js.map\n","function e(e){const r={mc:\"masterCard\",amex:\"amex\",visa:\"visa\",elodebit:\"elo\",elo:\"elo\",interac:\"interac\",discover:\"discover\",jcb:\"jcb\",electron:\"electron\",maestro:\"maestro\",girocard:\"girocard\",cartebancaire:\"cartesBancaires\",eftpos_australia:\"eftpos\"};return e.reduce((e,a)=>(r[a]&&!e.includes(r[a])&&e.push(r[a]),e),[])}export{e as mapBrands};\n//# sourceMappingURL=map-adyen-brands-to-applepay-brands.js.map\n","import s from\"../../../utils/Script.js\";import a from\"../../../core/Errors/AdyenCheckoutError.js\";function i(s,a,i){return a in s?Object.defineProperty(s,a,{value:i,enumerable:!0,configurable:!0,writable:!0}):s[a]=i,s}const t=\"https://applepay.cdn-apple.com/jsapi/1.latest/apple-pay-sdk.js\";class o{async load(){try{const a=new s({src:t,component:\"applepay\",attributes:{crossOrigin:\"anonymous\"},analytics:this.analytics});return this.sdkLoadingPromise=a.load(),await this.sdkLoadingPromise,window?.ApplePaySession}catch(s){throw new a(\"SCRIPT_ERROR\",\"ApplePaySDK failed to load\",{cause:s})}}isSdkLoaded(){return void 0===this.sdkLoadingPromise?Promise.reject():this.sdkLoadingPromise}constructor({analytics:s}){i(this,\"sdkLoadingPromise\",void 0),i(this,\"analytics\",void 0),this.analytics=s}}export{t as APPLE_PAY_SDK_URL,o as default};\n//# sourceMappingURL=ApplePaySdkLoader.js.map\n","const n=()=>{if(\"undefined\"==typeof window)return!1;try{return window.self!==window.top}catch(n){return!0}};export{n as detectInIframe};\n//# sourceMappingURL=detectInIframe.js.map\n","import{createElement as e}from\"../../external/preact/dist/preact.js\";import{UIElement as t}from\"../internal/UIElement/UIElement.js\";import s from\"./components/ApplePayButton.js\";import o from\"./services/ApplePayService.js\";import n from\"../../utils/base64.js\";import i from\"./defaultProps.js\";import{httpPost as r}from\"../../core/Services/http.js\";import{preparePaymentRequest as a}from\"./utils/payment-request.js\";import p from\"../../core/Errors/AdyenCheckoutError.js\";import{TxVariants as l}from\"../tx-variants.js\";import{sanitizeResponse as d,verifyPaymentDidNotFail as c}from\"../internal/UIElement/utils.js\";import{resolveSupportedVersion as h}from\"./utils/resolve-supported-version.js\";import{formatApplePayContactToAdyenAddressFormat as y}from\"./utils/format-applepay-contact-to-adyen-format.js\";import{mapBrands as m}from\"./utils/map-adyen-brands-to-applepay-brands.js\";import u from\"./services/ApplePaySdkLoader.js\";import{detectInIframe as P}from\"../../utils/detectInIframe.js\";import{AnalyticsInfoEvent as A,InfoEventType as b,UiTarget as f}from\"../../core/Analytics/events/AnalyticsInfoEvent.js\";function g(e,t,s){return t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}class S extends t{formatProps(e){const t=e.brands?.length?m(e.brands):e.supportedNetworks;return{...e,configuration:e.configuration,supportedNetworks:t,buttonLocale:e.buttonLocale??e.i18n?.locale,totalPriceLabel:e.totalPriceLabel||e.configuration?.merchantName,renderApplePayCodeAs:e.renderApplePayCodeAs??(P()?\"window\":\"modal\")}}formatData(){const{applePayToken:e,billingAddress:t,deliveryAddress:s}=this.state,{isExpress:o}=this.props;return{paymentMethod:{type:S.type,applePayToken:e,...o&&{subtype:\"express\"}},...t&&{billingAddress:t},...s&&{deliveryAddress:s}}}beforeRender(e){const t=new A({type:b.rendered,component:this.type,configData:{...e,showPayButton:this.props.showPayButton},...e?.isExpress&&{isExpress:e.isExpress},...e?.expressPage&&{expressPage:e.expressPage}});this.analytics.sendAnalytics(t)}get isValid(){return!0}async applePayCapabilities(e){const t=e||this.props.configuration.merchantId;try{return await this.sdkLoader.isSdkLoaded(),await(ApplePaySession?.applePayCapabilities(t))}catch(e){throw new p(\"ERROR\",\"Apple Pay: Error when requesting applePayCapabilities()\",{cause:e})}}async isAvailable(){if(\"https:\"!==window.location.protocol)return Promise.reject(new p(\"IMPLEMENTATION_ERROR\",\"Trying to start an Apple Pay session from an insecure document\"));try{return await this.sdkLoader.isSdkLoaded(),ApplePaySession?.canMakePayments()?Promise.resolve():Promise.reject(new p(\"ERROR\",\"Apple Pay is not available on this device\"))}catch(e){return Promise.reject(new p(\"ERROR\",\"Apple Pay SDK failed to load\",{cause:e}))}}defineApplePayVersionNumber(){\"https:\"===window.location.protocol&&(this.applePayVersionNumber=this.props.version||h(14))}configureApplePayWebOptions(){if(window.ApplePayWebOptions){const{renderApplePayCodeAs:e,onApplePayCodeClose:t}=this.props;window.ApplePayWebOptions.set({renderApplePayCodeAs:e,...t&&{onApplePayCodeClose:t}})}}startSession(){const{onValidateMerchant:e,onPaymentMethodSelected:t,onShippingMethodSelected:s,onShippingContactSelected:n,onCouponCodeChanged:i}=this.props,r=a({companyName:this.props.configuration.merchantName,countryCode:this.core.options.countryCode,...this.props}),l=new o(r,{version:this.applePayVersionNumber,onError:e=>{this.handleError(new p(\"ERROR\",\"ApplePay - Something went wrong on ApplePayService\",{cause:e}))},onCancel:e=>{this.handleError(new p(\"CANCEL\",\"ApplePay UI dismissed\",{cause:e}))},onPaymentMethodSelected:t,onShippingMethodSelected:s,onShippingContactSelected:n,onCouponCodeChanged:i,onValidateMerchant:e||this.validateMerchant,onPaymentAuthorized:(e,t,s)=>{const o=y(s.payment.billingContact),n=y(s.payment.shippingContact,!0);this.setState({applePayToken:btoa(JSON.stringify(s.payment.token.paymentData)),authorizedEvent:s,...o&&{billingAddress:o},...n&&{deliveryAddress:n}}),this.handleAuthorization().then(this.makePaymentsCall).then(d).then(c).then(this.collectOrderTrackingDetailsIfNeeded).then(({paymentResponse:t,orderDetails:s})=>(e({status:ApplePaySession.STATUS_SUCCESS,...s&&{orderDetails:s}}),t)).then(e=>{this.handleResponse(e)}).catch(e=>{const s=e?.error?.applePayError;t({status:ApplePaySession.STATUS_FAILURE,errors:s?Array.isArray(s)?s:[s]:void 0});const o={...e,error:{applePayError:s}};this.handleFailedResult(o)})}});return new Promise((e,t)=>this.props.onClick(e,t)).then(()=>{l.begin()}).catch(()=>({}))}async handleAuthorization(){return new Promise((e,t)=>{this.props.onAuthorized||e();const{authorizedEvent:s,billingAddress:o,deliveryAddress:n}=this.state;this.props.onAuthorized({authorizedEvent:s,...o&&{billingAddress:o},...n&&{deliveryAddress:n}},{resolve:e,reject:t})}).catch(e=>{const t={error:{applePayError:e}};return Promise.reject(t)})}async collectOrderTrackingDetailsIfNeeded(e){return new Promise((e,t)=>{if(!this.props.onOrderTrackingRequest)return e();this.props.onOrderTrackingRequest(e,t)}).then(t=>({paymentResponse:e,...t&&{orderDetails:t}})).catch(()=>({paymentResponse:e}))}async validateMerchant(e,t){const{hostname:s}=window.location,{clientKey:o,configuration:i,loadingContext:a,initiative:p,domainName:l}=this.props,{merchantName:d,merchantId:c}=i,h={loadingContext:a,path:`v1/applePay/sessions?clientKey=${o}`},y={displayName:d,domainName:l||s,initiative:p,merchantIdentifier:c};try{const s=await r(h,y),o=n.decode(s.data);if(o.success){e(JSON.parse(o.data))}else t(\"Could not decode Apple Pay session\")}catch(e){t(\"Could not get Apple Pay session\")}}componentToRender(){return this.props.showPayButton?e(s,{buttonStyle:this.props.buttonColor,buttonType:this.props.buttonType,buttonLocale:this.props.buttonLocale,onClick:this.submit}):null}constructor(e,t){super(e,t),g(this,\"sdkLoader\",void 0),g(this,\"applePayVersionNumber\",void 0),g(this,\"submit\",()=>{if(this.props.isInstantPayment){const e=new A({component:this.type,type:b.selected,target:f.instantPaymentButton});this.submitAnalytics(e)}this.startSession()});const{isExpress:s,onShippingContactSelected:o,onShippingMethodSelected:n}=this.props;if(!1===s&&(o||n))throw new p(\"IMPLEMENTATION_ERROR\",'ApplePay - You must set \"isExpress\" flag to \"true\" in order to use \"onShippingContactSelected\" and/or \"onShippingMethodSelected\" callbacks');this.startSession=this.startSession.bind(this),this.submit=this.submit.bind(this),this.validateMerchant=this.validateMerchant.bind(this),this.collectOrderTrackingDetailsIfNeeded=this.collectOrderTrackingDetailsIfNeeded.bind(this),this.handleAuthorization=this.handleAuthorization.bind(this),this.defineApplePayVersionNumber=this.defineApplePayVersionNumber.bind(this),this.configureApplePayWebOptions=this.configureApplePayWebOptions.bind(this),this.sdkLoader=new u({analytics:this.analytics}),this.sdkLoader.load().then(this.defineApplePayVersionNumber).then(this.configureApplePayWebOptions).catch(e=>{this.handleError(e)})}}g(S,\"type\",l.applepay),g(S,\"defaultProps\",i);export{S as default};\n//# sourceMappingURL=ApplePay.js.map\n","var a={API_VERSION:2,API_VERSION_MINOR:0,GATEWAY:\"adyen\",URL:\"https://pay.google.com/gp/p/js/pay.js\"};export{a as default};\n//# sourceMappingURL=config.js.map\n","import{getDecimalAmount as e}from\"../../utils/amount-util.js\";import r from\"./config.js\";function t({allowedAuthMethods:e,allowedCardNetworks:t,existingPaymentMethodRequired:a=!1}){return{apiVersion:r.API_VERSION,apiVersionMinor:r.API_VERSION_MINOR,allowedPaymentMethods:[{type:\"CARD\",parameters:{allowedAuthMethods:e,allowedCardNetworks:t},tokenizationSpecification:{type:\"PAYMENT_GATEWAY\",parameters:{}}}],existingPaymentMethodRequired:a}}function a({amount:r,countryCode:t=\"US\",totalPriceStatus:a=\"FINAL\",...i}){const n=String(e(r.value,r.currency));return{countryCode:t,currencyCode:r.currency,totalPrice:n,totalPriceStatus:a,...i.transactionInfo}}function i({configuration:e,...t},i){return{apiVersion:r.API_VERSION,apiVersionMinor:r.API_VERSION_MINOR,transactionInfo:a({countryCode:i,...t}),merchantInfo:{merchantId:e.merchantId,merchantName:e.merchantName,...e.merchantOrigin?{merchantOrigin:e.merchantOrigin}:{},...e.authJwt?{authJwt:e.authJwt}:{}},allowedPaymentMethods:[{type:\"CARD\",tokenizationSpecification:{type:\"PAYMENT_GATEWAY\",parameters:{gateway:r.GATEWAY,gatewayMerchantId:e.gatewayMerchantId}},parameters:{allowedAuthMethods:t.allowedAuthMethods,allowedCardNetworks:t.allowedCardNetworks,assuranceDetailsRequired:t.assuranceDetailsRequired,allowPrepaidCards:t.allowPrepaidCards,allowCreditCards:t.allowCreditCards,allowedIssuerCountryCodes:t.allowedIssuerCountryCodes,blockedIssuerCountryCodes:t.blockedIssuerCountryCodes,billingAddressRequired:t.billingAddressRequired,billingAddressParameters:t.billingAddressParameters}}],emailRequired:t.emailRequired,shippingAddressRequired:t.shippingAddressRequired,shippingAddressParameters:t.shippingAddressParameters,shippingOptionRequired:t.shippingOptionRequired,shippingOptionParameters:t.shippingOptionParameters,callbackIntents:t.callbackIntents}}export{a as getTransactionInfo,i as initiatePaymentRequest,t as isReadyToPayRequest};\n//# sourceMappingURL=requests.js.map\n","function t(t=\"PRODUCTION\"){switch(t){case\"beta\":case\"test\":return\"TEST\";default:return\"PRODUCTION\"}}function e(t,e){if(t)return{postalCode:t.postalCode,country:t.countryCode,street:[t.address1,t.address2,t.address3].join(\" \").trim(),houseNumberOrName:\"ZZ\",city:t.locality||\"\",...t.administrativeArea&&{stateOrProvince:t.administrativeArea},...e&&{firstName:t.name}}}const r=[\"en\",\"ar\",\"bg\",\"ca\",\"cs\",\"da\",\"de\",\"el\",\"es\",\"et\",\"fi\",\"fr\",\"hr\",\"id\",\"it\",\"ja\",\"ko\",\"ms\",\"nl\",\"no\",\"pl\",\"pt\",\"ru\",\"sk\",\"sl\",\"sr\",\"sv\",\"th\",\"tr\",\"uk\",\"zh\"];function s(t=\"\"){const e=t.toLowerCase().substring(0,2);return r.includes(e)?e:null}export{e as formatGooglePayContactToAdyenAddressFormat,s as getGooglePayLocale,t as resolveEnvironment};\n//# sourceMappingURL=utils.js.map\n","import{isReadyToPayRequest as t,initiatePaymentRequest as e}from\"./requests.js\";import{resolveEnvironment as n}from\"./utils.js\";import a from\"../../utils/Script.js\";import i from\"./config.js\";function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}class s{async getGooglePaymentsClient(t){if(!window.google?.payments){const t=new a({src:i.URL,component:\"googlepay\",analytics:this.analytics});await t.load()}return new google.payments.api.PaymentsClient(t)}isReadyToPay(e){return this.paymentsClient?this.paymentsClient.then(n=>n.isReadyToPay(t(e))):Promise.reject(new Error(\"Google Pay is not available\"))}prefetchPaymentData(t,n){if(!this.paymentsClient)throw new Error(\"Google Pay is not available\");const a=e(t,n);this.paymentsClient.then(t=>t.prefetchPaymentData(a))}initiatePayment(t,n){if(!this.paymentsClient)throw new Error(\"Google Pay is not available\");const a=e(t,n);return this.paymentsClient.then(t=>t.loadPaymentData(a))}constructor(t,e,a){o(this,\"analytics\",void 0),o(this,\"paymentsClient\",void 0);const i=n(t);this.analytics=e,this.paymentsClient=this.getGooglePaymentsClient({environment:i,paymentDataCallbacks:a})}}export{s as default};\n//# sourceMappingURL=GooglePayService.js.map\n","import{createElement as t}from\"../../../external/preact/dist/preact.js\";import{useRef as o,useEffect as e}from\"../../../external/preact/hooks/dist/hooks.js\";const n=n=>{const a=o(void 0);return e(()=>{const{onClick:t,buttonRadius:o,buttonColor:e,buttonType:u,buttonLocale:r,buttonSizeMode:s,buttonRootNode:c,paymentsClient:i}=n;i.then(n=>n.createButton({onClick:t,buttonType:u,buttonColor:e,buttonLocale:r,buttonSizeMode:s,buttonRootNode:c,...void 0!==o&&{buttonRadius:o}})).then(t=>{a.current&&a.current.appendChild(t)})},[n.buttonColor,n.buttonType,n.buttonLocale,n.buttonSizeMode,n.buttonRootNode,n.paymentsClient]),t(\"div\",{\"data-testid\":\"googlepay-button-container\",className:\"adyen-checkout__paywithgoogle\",ref:a})};export{n as default};\n//# sourceMappingURL=GooglePayButton.js.map\n","const e={isExpress:!1,existingPaymentMethodRequired:!1,buttonColor:\"default\",buttonType:\"buy\",buttonSizeMode:\"fill\",configuration:{gatewayMerchantId:\"\",merchantId:\"\",merchantName:\"\"},amount:{value:0,currency:\"USD\"},totalPriceStatus:\"FINAL\",onClick:e=>e(),allowedAuthMethods:[\"PAN_ONLY\",\"CRYPTOGRAM_3DS\"],allowCreditCards:!0,allowPrepaidCards:!0,billingAddressRequired:!1,billingAddressParameters:void 0,assuranceDetailsRequired:!1,emailRequired:!1,shippingAddressRequired:!1,shippingAddressParameters:void 0,shippingOptionRequired:!1,shippingOptionParameters:void 0,callbackIntents:[]};export{e as default};\n//# sourceMappingURL=defaultProps.js.map\n","const e=Object.freeze({mc:\"MASTERCARD\",amex:\"AMEX\",visa:\"VISA\",elodebit:\"ELO_DEBIT\",elo:\"ELO\",interac:\"INTERAC\",discover:\"DISCOVER\",jcb:\"JCB\",electron:\"ELECTRON\",maestro:\"MAESTRO\"});function t(t){const E=t.map(t=>e[t]).filter(e=>!!e);return[...new Set(E)]}export{t as mapGooglePayBrands};\n//# sourceMappingURL=map-adyen-brands-to-googlepay-brands.js.map\n","import{createElement as t}from\"../../external/preact/dist/preact.js\";import{UIElement as e}from\"../internal/UIElement/UIElement.js\";import o from\"./GooglePayService.js\";import s from\"./components/GooglePayButton.js\";import r from\"./defaultProps.js\";import{getGooglePayLocale as n,formatGooglePayContactToAdyenAddressFormat as a}from\"./utils.js\";import i from\"../../utils/browserInfo.js\";import l from\"../../core/Errors/AdyenCheckoutError.js\";import{TxVariants as h}from\"../tx-variants.js\";import{sanitizeResponse as d,verifyPaymentDidNotFail as p}from\"../internal/UIElement/utils.js\";import{AnalyticsInfoEvent as y,InfoEventType as c,UiTarget as g}from\"../../core/Analytics/events/AnalyticsInfoEvent.js\";import{mapGooglePayBrands as u}from\"./utils/map-adyen-brands-to-googlepay-brands.js\";function m(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}const P=[\"AMEX\",\"DISCOVER\",\"JCB\",\"MASTERCARD\",\"VISA\"];class b extends e{getPaymentMethodFromPaymentMethodsResponse(t,e){return e?this.core.paymentMethodsResponse.findById(e):this.core.paymentMethodsResponse.find(t||this.constructor.type)||this.core.paymentMethodsResponse.find(h.paywithgoogle)}formatProps(t){const e=t.buttonSizeMode??(t.isDropin?\"fill\":\"static\"),o=n(t.buttonLocale??t.i18n?.locale),s=[...t.callbackIntents,\"PAYMENT_AUTHORIZATION\"],r=this.createAllowedCardNetworksValues({allowedCardNetworks:t.allowedCardNetworks,brands:t.brands});return{...t,allowedCardNetworks:r,configuration:t.configuration,buttonSizeMode:e,buttonLocale:o,callbackIntents:s}}formatData(){const{googlePayCardNetwork:t,googlePayToken:e,billingAddress:o,deliveryAddress:s}=this.state,{isExpress:r}=this.props;return{paymentMethod:{type:this.type,googlePayCardNetwork:t,googlePayToken:e,...r&&{subtype:\"express\"}},browserInfo:this.browserInfo,origin:!!window&&window.location.origin,...o&&{billingAddress:o},...s&&{deliveryAddress:s}}}createAllowedCardNetworksValues({allowedCardNetworks:t,brands:e}){return t?.length>0?t:e?.length>0?u(e):P}beforeRender(t){if(t?.originalAction)return;const e=new y({type:c.rendered,component:this.type,configData:{...t,showPayButton:this.props.showPayButton},...t?.isExpress&&{isExpress:t.isExpress},...t?.expressPage&&{expressPage:t.expressPage}});this.analytics.sendAnalytics(e)}showGooglePayPaymentSheet(){this.googlePay.initiatePayment(this.props,this.core.options.countryCode).catch(t=>{this.handleError(new l(\"CANCELED\"===t.statusCode?\"CANCEL\":\"ERROR\",t.toString(),{cause:t}))})}async handleAuthorization(){return new Promise((t,e)=>{this.props.onAuthorized||t();const{authorizedEvent:o,billingAddress:s,deliveryAddress:r}=this.state;this.props.onAuthorized({authorizedEvent:o,...s&&{billingAddress:s},...r&&{deliveryAddress:r}},{resolve:t,reject:e})}).catch(t=>{const e={error:{googlePayError:t}};return Promise.reject(e)})}get isValid(){return!0}async isAvailable(){return this.isReadyToPay().then(t=>{if(!t.result)throw new l(\"ERROR\",\"GooglePay is not available\");if(!1===t.paymentMethodPresent)throw new l(\"ERROR\",\"GooglePay - No paymentMethodPresent\");return Promise.resolve()}).catch(t=>Promise.reject(t))}get browserInfo(){return i()}get icon(){return this.props.icon??this.resources.getImage()(\"googlepay\")}componentToRender(){return this.props.showPayButton?t(s,{buttonColor:this.props.buttonColor,buttonType:this.props.buttonType,buttonSizeMode:this.props.buttonSizeMode,buttonLocale:this.props.buttonLocale,buttonRootNode:this.props.buttonRootNode,buttonRadius:this.props.buttonRadius,paymentsClient:this.googlePay.paymentsClient,onClick:this.submit}):null}constructor(t,e){super(t,e),m(this,\"googlePay\",void 0),m(this,\"submit\",()=>{if(this.props.isInstantPayment){const t=new y({component:this.type,type:c.selected,target:g.instantPaymentButton});this.submitAnalytics(t)}new Promise((t,e)=>this.props.onClick(t,e)).then(this.showGooglePayPaymentSheet).catch(()=>{})}),m(this,\"onPaymentAuthorized\",async t=>{const e=a(t.paymentMethodData.info.billingAddress),o=a(t.shippingAddress,!0);return this.setState({authorizedEvent:t,googlePayToken:t.paymentMethodData.tokenizationData.token,googlePayCardNetwork:t.paymentMethodData.info.cardNetwork,...e&&{billingAddress:e},...o&&{deliveryAddress:o}}),new Promise(t=>{this.handleAuthorization().then(this.makePaymentsCall).then(d).then(p).then(e=>(t({transactionState:\"SUCCESS\"}),e)).then(t=>{this.handleResponse(t)}).catch(e=>{this.setElementStatus(\"ready\");const o=e?.error?.googlePayError,s=this.props.i18n.get(\"error.subtitle.payment\"),r=\"string\"==typeof o?{intent:\"PAYMENT_AUTHORIZATION\",reason:\"OTHER_ERROR\",message:o||s}:{intent:o?.intent||\"PAYMENT_AUTHORIZATION\",reason:o?.reason||\"OTHER_ERROR\",message:o?.message||s};t({transactionState:\"ERROR\",error:r});const n={...e,error:{googlePayError:r}};this.handleFailedResult(n)})})}),m(this,\"isReadyToPay\",()=>this.googlePay.isReadyToPay(this.props)),m(this,\"prefetch\",()=>this.googlePay.prefetchPaymentData(this.props,this.core.options.countryCode)),this.handleAuthorization=this.handleAuthorization.bind(this),this.showGooglePayPaymentSheet=this.showGooglePayPaymentSheet.bind(this);const{isExpress:s,paymentDataCallbacks:r}=this.props;if(!1===s&&r?.onPaymentDataChanged)throw new l(\"IMPLEMENTATION_ERROR\",'GooglePay - You must set \"isExpress\" flag to \"true\" in order to use \"onPaymentDataChanged\" callback');if(!this.props.configuration.merchantId)throw new l(\"IMPLEMENTATION_ERROR\",\"GooglePay - Missing merchantId. Please ensure that it is correctly configured in your customer area.\");this.googlePay=new o(this.props.environment,this.analytics,{...s&&r?.onPaymentDataChanged&&{onPaymentDataChanged:r.onPaymentDataChanged},onPaymentAuthorized:this.onPaymentAuthorized})}}m(b,\"type\",h.googlepay),m(b,\"txVariants\",[h.googlepay,h.paywithgoogle]),m(b,\"defaultProps\",r);export{b as default};\n//# sourceMappingURL=GooglePay.js.map\n","var t=()=>{try{if(window.parent.location.href)return window.location!==window.parent.location}catch(t){return!1}};export{t as default};\n//# sourceMappingURL=detectInIframeInSameOrigin.js.map\n","import{Component as e,createElement as t}from\"../../../../external/preact/dist/preact.js\";import r from\"../../../../utils/detectInIframeInSameOrigin.js\";function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class s extends e{componentDidMount(){new Promise((e,t)=>{this.props.beforeRedirect(e,t,{url:this.props.url,method:this.props.method,...this.props.data?{data:this.props.data}:{}})}).then(()=>{this.props.onActionHandled?.({componentType:this.props.paymentMethodType,actionDescription:\"performing-redirect\"}),this.postForm?this.postForm.submit():this.props.redirectFromTopWhenInIframe&&r()?window.top.location.assign?.(this.props.url):window.location.assign(this.props.url)}).catch(()=>{this.props.onRedirectError()})}render({url:e,method:o,data:s={}}){return\"POST\"===o?t(\"form\",{method:\"post\",\"data-testid\":\"redirect-shopper-form\",action:e,style:{display:\"none\"},ref:e=>{this.postForm=e},...this.props.redirectFromTopWhenInIframe&&r()&&{target:\"_top\"}},Object.keys(s).map(e=>t(\"input\",{type:\"hidden\",name:e,key:e,value:s[e]}))):null}constructor(...e){super(...e),o(this,\"postForm\",void 0)}}o(s,\"defaultProps\",{beforeRedirect:e=>e(),onRedirectError:()=>{},method:\"GET\"});export{s as default};\n//# sourceMappingURL=RedirectShopper.js.map\n","import{createElement as t}from\"../../external/preact/dist/preact.js\";import{UIElement as e}from\"../internal/UIElement/UIElement.js\";import r from\"./components/RedirectShopper/RedirectShopper.js\";import o from\"../internal/RedirectButton/RedirectButton.js\";import{TxVariants as n}from\"../tx-variants.js\";import s from\"../../utils/browserInfo.js\";import{AnalyticsErrorEvent as i,ErrorEventCode as p,ErrorEventType as a}from\"../../core/Analytics/events/AnalyticsErrorEvent.js\";function c(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class m extends e{formatData(){return{paymentMethod:{type:this.type},browserInfo:this.browserInfo}}get isRedirecting(){return!!this.props.url&&!!this.props.method}get isValid(){return!0}get browserInfo(){return s()}componentToRender(){return this.isRedirecting?t(r,{url:this.props.url,...this.props,onActionHandled:this.onActionHandled,onRedirectError:this.handleRedirectError}):this.props.showPayButton?t(o,{...this.props,showPayButton:this.props.showPayButton,name:this.displayName,onSubmit:this.submit,payButton:this.payButton,ref:t=>{this.componentRef=t}}):null}constructor(...t){super(...t),c(this,\"handleRedirectError\",()=>{const t=new i({component:this.props.paymentMethodType,errorType:a.redirect,code:p.REDIRECT});super.submitAnalytics(t)})}}c(m,\"type\",n.redirect),c(m,\"defaultProps\",{type:m.type});export{m as default};\n//# sourceMappingURL=Redirect.js.map\n","const e={test:\"https://checkoutshopper-test.adyen.com/checkoutshopper/\",live:\"https://checkoutshopper-live.adyen.com/checkoutshopper/\",\"live-us\":\"https://checkoutshopper-live-us.adyen.com/checkoutshopper/\",\"live-au\":\"https://checkoutshopper-live-au.adyen.com/checkoutshopper/\",\"live-apse\":\"https://checkoutshopper-live-apse.adyen.com/checkoutshopper/\",\"live-in\":\"https://checkoutshopper-live-in.adyen.com/checkoutshopper/\",\"live-nea\":\"https://checkoutshopper-live-nea.adyen.com/checkoutshopper/\",fallback:\"https://checkoutshopper-live.adyen.com/checkoutshopper/\"},c={test:\"https://checkoutshopper-test.cdn.adyen.com/checkoutshopper/\",live:\"https://checkoutshopper-live.cdn.adyen.com/checkoutshopper/\",\"live-us\":\"https://checkoutshopper-live-us.cdn.adyen.com/checkoutshopper/\",\"live-au\":\"https://checkoutshopper-live-au.cdn.adyen.com/checkoutshopper/\",\"live-apse\":\"https://checkoutshopper-live-apse.cdn.adyen.com/checkoutshopper/\",\"live-in\":\"https://checkoutshopper-live-in.cdn.adyen.com/checkoutshopper/\",\"live-nea\":\"https://checkoutshopper-live-nea.cdn.adyen.com/checkoutshopper/\",fallback:\"https://checkoutshopper-live.cdn.adyen.com/checkoutshopper/\"},t={test:\"https://checkoutanalytics-test.adyen.com/checkoutanalytics/\",live:\"https://checkoutanalytics-live.adyen.com/checkoutanalytics/\",\"live-us\":\"https://checkoutanalytics-live-us.adyen.com/checkoutanalytics/\",\"live-au\":\"https://checkoutanalytics-live-au.adyen.com/checkoutanalytics/\",\"live-apse\":\"https://checkoutanalytics-live-apse.adyen.com/checkoutanalytics/\",\"live-in\":\"https://checkoutanalytics-live-in.adyen.com/checkoutanalytics/\",\"live-nea\":\"https://checkoutanalytics-live-nea.adyen.com/checkoutanalytics/\",fallback:\"https://checkoutanalytics-live.adyen.com/checkoutanalytics/\"};export{t as ANALYTICS_ENVIRONMENTS,e as API_ENVIRONMENTS,c as CDN_ENVIRONMENTS};\n//# sourceMappingURL=constants.js.map\n","import{API_ENVIRONMENTS as a,ANALYTICS_ENVIRONMENTS as n,CDN_ENVIRONMENTS as s}from\"./constants.js\";const l=(a,n,s)=>s||(n[a]||n.fallback),t=(t,c)=>({apiUrl:l(t,a,c?.api),analyticsUrl:l(t,n,c?.analytics),cdnImagesUrl:l(t,s,c?.cdn?.images),cdnTranslationsUrl:l(t,s,c?.cdn?.translations)});export{l as getUrlFromMap,t as resolveEnvironments};\n//# sourceMappingURL=Environment.js.map\n","import{GENERIC_OPTIONS as e}from\"./config.js\";function n(n){return Object.keys(n).reduce((o,t)=>(e.includes(t)&&(o[t]=n[t]),o),{})}function o(e){const n=(e=>e)([\"session\",\"environment\",\"_environmentUrls\",\"showPayButton\",\"clientKey\",\"locale\",\"translations\",\"paymentMethodsResponse\",\"amount\",\"secondaryAmount\",\"countryCode\",\"allowPaymentMethods\",\"removePaymentMethods\",\"srConfig\",\"analytics\",\"risk\",\"order\",\"donation\",\"exposeLibraryMetadata\",\"beforeRedirect\",\"beforeSubmit\",\"onPaymentCompleted\",\"onPaymentFailed\",\"onSubmit\",\"onAdditionalDetails\",\"onActionHandled\",\"onChange\",\"onError\",\"onBalanceCheck\",\"onOrderRequest\",\"onPaymentMethodsRequest\",\"onOrderCancel\",\"onOrderUpdated\",\"loadingContext\",\"onEnterKeyPressed\",\"afterAdditionalDetails\"]);Object.keys(e).forEach(e=>{n.includes(e)||console.warn(`AdyenCheckout - Configuration property \"${e}\" is not a valid AdyenCheckout property. If it is a payment method configuration, make sure to pass it directly to the Component. If you are using Drop-in, make sure to pass it to \"paymentMethodsConfiguration\" object`)})}function t(e){const n=Object.values(e);return e=>n.includes(e)}export{o as assertConfigurationPropertiesAreValid,t as createEnumChecker,n as processGlobalOptions};\n//# sourceMappingURL=utils.js.map\n","import{createElement as a,Fragment as e}from\"../../../external/preact/dist/preact.js\";import c from\"../../internal/Img/Img.js\";function n({logoUrl:n=\"\",nonprofitName:t=\"\",causeName:m=\"\",bannerUrl:r=\"\"}){return a(e,null,a(c,{className:\"adyen-checkout__campaign-background-image\",style:{backgroundImage:`url(${r})`},backgroundUrl:r}),a(\"div\",{className:\"adyen-checkout__campaign-content\"},n&&a(\"img\",{src:n,className:\"adyen-checkout__campaign-logo\",alt:t}),a(\"div\",null,t&&a(\"div\",{className:\"adyen-checkout__campaign-title\"},t),m&&a(\"div\",{className:\"adyen-checkout__campaign-cause\"},m))))}export{n as default};\n//# sourceMappingURL=CampaignInfo.js.map\n","import{createElement as e}from\"../../../external/preact/dist/preact.js\";import a from\"./CampaignInfo.js\";function n({logoUrl:n=\"\",nonprofitDescription:r=\"\",nonprofitName:o=\"\",causeName:t=\"\",nonprofitUrl:c=\"\",bannerUrl:i=\"\"}){return e(\"div\",{className:\"adyen-checkout__campaign\"},c?e(\"a\",{href:c,className:\"adyen-checkout__campaign-link\",target:\"_blank\",rel:\"noopener noreferrer\"},e(a,{logoUrl:n,nonprofitName:o,causeName:t,bannerUrl:i})):e(a,{logoUrl:n,nonprofitName:o,causeName:t,bannerUrl:i}),r&&e(\"div\",{className:\"adyen-checkout__campaign-description\"},r))}export{n as default};\n//# sourceMappingURL=CampaignContent.js.map\n","import e from\"../../../_virtual/index.js\";import{createElement as t}from\"../../../external/preact/dist/preact.js\";const a=({options:a=[],name:n,onChange:o})=>t(\"div\",{className:\"adyen-checkout__button-group\"},a.map(({label:a,selected:c,value:s,disabled:d},u)=>t(\"label\",{key:`${n}${u}`,className:e({\"adyen-checkout__button\":!0,\"adyen-checkout__button--selected\":c,\"adyen-checkout__button--disabled\":d})},t(\"input\",{type:\"radio\",className:\"adyen-checkout__button-group__input\",value:s,checked:c,onChange:o,disabled:d}),t(\"span\",{className:\"adyen-checkout__button-text\"},a))));export{a as default};\n//# sourceMappingURL=ButtonGroup.js.map\n","const u=(u,c)=>u-c%u,c=(u,{value:c,currency:n})=>u.amount(c,n),n=(n,{maxRoundupAmount:r,commercialTxAmount:e,currency:o})=>c(n,{value:u(r,e),currency:o});export{c as getAmountLabel,u as getRoundupAmount,n as getRoundupAmountLabel};\n//# sourceMappingURL=utils.js.map\n","import{createElement as t,Fragment as e}from\"../../../external/preact/dist/preact.js\";import o from\"../../internal/ButtonGroup/ButtonGroup.js\";import n from\"../../internal/Button/Button.js\";import{getAmountLabel as a}from\"./utils.js\";import{useCoreContext as r}from\"../../../core/Context/CoreProvider.js\";function l(l){const{currency:s,values:u,selectedAmount:i,status:m,onAmountSelected:c,onDonateButtonClicked:d}=l,{i18n:p}=r();return t(e,null,t(\"div\",{className:\"adyen-checkout__amounts\"},t(o,{options:u.map(t=>({value:t,label:a(p,{value:t,currency:s}),disabled:\"loading\"===m,selected:t===i})),name:\"amount\",onChange:c})),t(n,{classNameModifiers:[\"donate\"],onClick:d,label:p.get(\"donateButton\"),disabled:null===i,status:m}))}export{l as default};\n//# sourceMappingURL=FixedAmounts.js.map\n","import{createElement as t,Fragment as n}from\"../../../external/preact/dist/preact.js\";import{useCoreContext as o}from\"../../../core/Context/CoreProvider.js\";import e from\"../../internal/Button/Button.js\";function a(a){const{status:r,donationAmount:i,originalPaymentAmount:s,onDonateButtonClicked:u}=a,{i18n:m}=o();return t(n,null,t(e,{classNameModifiers:[\"donate\"],onClick:u,label:`${m.get(\"donateButton\")} ${i}`,status:r}),t(\"span\",{className:\"adyen-checkout-roundup-description\"},m.get(\"donationRoundUpDescription\",{values:{donationAmount:i,originalPaymentAmount:s}})))}export{a as default};\n//# sourceMappingURL=Roundup.js.map\n","import{createElement as e}from\"../../../external/preact/dist/preact.js\";import{useState as t,useEffect as o}from\"../../../external/preact/hooks/dist/hooks.js\";import n from\"./CampaignContent.js\";import a from\"../../internal/Button/Button.js\";import s from\"../../internal/Img/Img.js\";import{useCoreContext as r}from\"../../../core/Context/CoreProvider.js\";import u from\"../../internal/DisclaimerMessage/DisclaimerMessage.js\";import c from\"../../../core/Context/useImage.js\";import i from\"./FixedAmounts.js\";import m from\"./Roundup.js\";import{getRoundupAmount as d,getAmountLabel as l,getRoundupAmountLabel as g}from\"./utils.js\";function _(_){const{donation:p,commercialTxAmount:y,onAmountSelected:h,onCancel:v,onDonate:k,showCancelButton:f=!0,termsAndConditionsUrl:C}=_,{i18n:x}=r(),A=c(),{currency:j,type:N}=p,B=\"roundup\"===N,[D,S]=t(\"ready\"),[w,F]=t(B),[I,R]=t({currency:j,value:B?d(p.maxRoundupAmount,y):null});this.setStatus=e=>{S(e)};const M=()=>{S(\"loading\"),k({data:{amount:I}})};return o(()=>{_.onChange({data:{amount:I},isValid:w})},[I,w]),\"error\"===D?e(\"div\",{className:\"adyen-checkout__adyen-giving\"},e(s,{className:\"adyen-checkout__status__icon adyen-checkout__status__icon--error\",src:A({imageFolder:\"components/\"})(\"error\"),alt:x.get(\"error.message.unknown\")}),e(\"div\",{className:\"adyen-checkout__status__text\"},x.get(\"error.message.unknown\"))):\"success\"===D?e(\"div\",{className:\"adyen-checkout__adyen-giving\"},e(s,{className:\"adyen-checkout__status__icon adyen-checkout__status__icon--success\",src:A({imageFolder:\"components/\"})(\"heart\"),alt:x.get(\"thanksForYourSupport\")}),e(\"div\",{className:\"adyen-checkout__status__text\"},x.get(\"thanksForYourSupport\"))):e(\"div\",{className:\"adyen-checkout__adyen-giving\"},e(n,_),e(\"div\",{className:\"adyen-checkout__adyen-giving-actions\"},C&&e(u,{message:x.get(\"donationTermsCondition\"),urls:[C]}),B?e(m,{donationAmount:g(x,{maxRoundupAmount:p.maxRoundupAmount,commercialTxAmount:y,currency:j}),originalPaymentAmount:l(x,{value:y,currency:j}),status:D,onDonateButtonClicked:M}):e(i,{selectedAmount:I.value,values:p.values,currency:j,status:D,onAmountSelected:({target:e})=>{const t=parseInt(e.value,10);F(!0),R(e=>({...e,value:t})),h({data:{amount:{...I,value:t}}})},onDonateButtonClicked:M}),f&&e(a,{classNameModifiers:[\"decline\"],variant:\"ghost\",onClick:()=>{S(\"ready\"),v({data:{amount:I},isValid:w})},disabled:\"loading\"===D,label:`${x.get(\"notNowButton\")} ›`})))}_.defaultProps={onCancel:()=>{},onChange:()=>{},onDonate:()=>{},donation:{},showCancelButton:!0};export{_ as default};\n//# sourceMappingURL=DonationComponent.js.map\n","import{AnalyticsLogEvent as n,LogEventSubtype as o,LogEventType as t}from\"../../core/Analytics/events/AnalyticsLogEvent.js\";function i(n,o,t){return o in n?Object.defineProperty(n,o,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[o]=t,n}const a=3e3,e=\"Donation instantiation error:: You need to set donation.autoMount to false if you wish to display the Donation component in a different container.\\nThe Donation component will be displayed in the default container.\";class s{async initialise(){const[n]=await Promise.all([this.callSessionsDonationCampaigns(),new Promise(n=>setTimeout(n,this.delayMS))]);return n}async callSessionsDonationCampaigns(){const i=new n({component:s.type,type:t.apiRequest,subType:o.donationCampaigns,message:\"Sessions flow: calling donationCampaigns endpoint\"});this.core.modules.analytics.sendAnalytics(i);const a=await this.makeSessionsDonationCampaignsCall(),[e]=a?.donationCampaigns||[];return e?this.handleDonationCampaign(e):null}handleDonationCampaign(n){const{id:o,campaignName:t,...i}=n,a=i.donation.type,e={...i,onCancel:n=>{this.onDonationCompleted?.({didDonate:!1})},onDonate:(n,t)=>{const i={amount:n.data.amount,donationCampaignId:o,donationType:a};this.callSessionsDonations(i,t)},commercialTxAmount:this.commercialTxAmount};if(\"roundup\"===a&&!this.commercialTxAmount)throw new Error('The donation type is \"roundup\" and the commercialTxAmount is not set.\\nIt will not be possible to mount a Donation component.');return e}async callSessionsDonations(n,o){try{const t=await this.makeSessionDonationsCall(n);\"Authorised\"===t.resultCode?(o.setStatus(\"success\"),this.onDonationCompleted?.({didDonate:!0})):(o.setStatus(\"error\"),this.onDonationFailed?.(t.resultCode))}catch(n){o.setStatus(\"error\"),this.onDonationFailed?.(n)}}async makeSessionsDonationCampaignsCall(){if(!this.core.session)throw new Error(\"DonationCampaignService requires a session to be configured\");return await this.core.session.fetchDonationCampaigns()}async makeSessionDonationsCall(n){if(!this.core.session)throw new Error(\"DonationCampaignService requires a session to be configured\");return await this.core.session.makeDonation(n)}constructor(n,o){i(this,\"core\",void 0),i(this,\"commercialTxAmount\",0),i(this,\"onDonationCompleted\",void 0),i(this,\"onDonationFailed\",void 0),i(this,\"delayMS\",void 0),this.core=n,this.onDonationCompleted=n.options.donation?.onDonationSuccess,this.onDonationFailed=n.options.donation?.onDonationFailure,this.commercialTxAmount=o.commercialTxAmount,this.delayMS=n.options.donation?.delay??3e3}}i(s,\"type\",\"donationCampaignService\");export{a as DEFAULT_DONATION_AUTO_START_DELAY_MS,e as REPARENT_WITHOUT_AUTO_START_ERROR_MSG,s as default};\n//# sourceMappingURL=DonationCampaignService.js.map\n","import{createElement as t}from\"../../external/preact/dist/preact.js\";import{UIElement as e}from\"../internal/UIElement/UIElement.js\";import n from\"./components/DonationComponent.js\";import{TxVariants as o}from\"../tx-variants.js\";import{AnalyticsLogEvent as s,LogEventSubtype as i,LogEventType as a}from\"../../core/Analytics/events/AnalyticsLogEvent.js\";import{AnalyticsInfoEvent as r,UiTarget as c,InfoEventType as d}from\"../../core/Analytics/events/AnalyticsInfoEvent.js\";import l,{REPARENT_WITHOUT_AUTO_START_ERROR_MSG as m}from\"./DonationCampaignService.js\";function p(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}class h extends e{static isServiceMode(t){return\"rootNode\"in t&&!!t.rootNode}async initialiseServiceMode(t,e){if(t.session)if(t.session.sessionsDonationInitiated)console.error(m);else{t.session.sessionsDonationInitiated=!0;try{const n=await new l(t,e).initialise();n&&(this.props={...this.props,...n},this.mount(e.rootNode))}catch(e){t.options.donation?.onDonationFailure?.(e)}}}get data(){return this.state.data}get isValid(){return this.state.isValid}setState(t){this.state={...this.state,...t}}donate(){const t=new s({component:h.type,type:a.submit,subType:i.donation,message:\"Making donation\"});this.core.modules.analytics.sendAnalytics(t);const{data:e,isValid:n}=this;this.props.onDonate({data:e,isValid:n},this)}cancel(){const t=new s({component:h.type,type:a.closed,subType:i.donation,message:\"Opting to not make donation\"});this.core.modules.analytics.sendAnalytics(t);const{data:e,isValid:n}=this;this.isInServiceMode&&this.unmount(),this.props.onCancel({data:e,isValid:n})}amountSelected(t){const e=new r({component:h.type,type:d.selected,selectedValue:JSON.stringify(t.data.amount),target:c.donationAmountButton});this.core.modules.analytics.sendAnalytics(e)}componentToRender(){return t(n,{...this.props,ref:t=>{this.componentRef=t},onChange:this.setState,onDonate:this.donate,onCancel:this.cancel,onAmountSelected:this.amountSelected})}constructor(t,e){const n=h.isServiceMode(e);super(t,n?void 0:e),p(this,\"isInServiceMode\",!1),this.donate=this.donate.bind(this),this.cancel=this.cancel.bind(this),this.amountSelected=this.amountSelected.bind(this),this.isInServiceMode=n,t.session&&n&&this.initialiseServiceMode(t,e)}}p(h,\"type\",o.donation),p(h,\"defaultProps\",{onCancel:()=>{},onDonate:()=>{}});export{h as default};\n//# sourceMappingURL=Donation.js.map\n","function t(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class e{get length(){return Object.keys(this.storage).length}key(t){return Object.keys(this.storage)[t]??null}getItem(t){return this.storage[t]||null}setItem(t,e){this.storage[t]=e}removeItem(t){delete this.storage[t]}clear(){this.storage={}}constructor(){t(this,\"storage\",void 0),this.storage={}}}class r{get(){try{const t=this.storage.getItem(this.key);return t?JSON.parse(t):null}catch(t){return null}}set(t){this.storage.setItem(this.key,JSON.stringify(t))}remove(){this.storage.removeItem(this.key)}clear(){this.storage.clear()}keyByIndex(t){return this.storage.key(t)}get length(){return this.storage.length}constructor(r,s){t(this,\"prefix\",\"adyen-checkout__\"),t(this,\"key\",void 0),t(this,\"storage\",void 0);try{if(this.storage=s?window[s]:window.localStorage,!this.storage)throw new Error(\"storage does not exist\")}catch(t){this.storage=new e}this.key=this.prefix+r}}export{r as default};\n//# sourceMappingURL=Storage.js.map\n","import{debounce as t,DEFAULT_DEBOUNCE_TIME_MS as e}from\"../../utils/debounce.js\";import{processAnalyticsData as s}from\"./utils.js\";import{AnalyticsEventCategory as i}from\"./events/AbstractAnalyticsEvent.js\";import n from\"../../utils/Storage.js\";import{PLATFORM as o,CHANNEL as a,LIBRARY_BUNDLE_TYPE as r,LIBRARY_VERSION as c}from\"../config.js\";function d(t,e,s){return e in t?Object.defineProperty(t,e,{value:s,enumerable:!0,configurable:!0,writable:!0}):t[e]=s,t}const h=e;class l{get checkoutAttemptId(){return this._checkoutAttemptId}set checkoutAttemptId(t){this._checkoutAttemptId=t}async setUp({sessionId:t,checkoutStage:e,locale:i}={}){try{const n=this.storage.get(),d=function(t){if(!t?.timestamp)return!1;const e=Date.now()-9e5;return t.timestamp>e}(n),{applicationInfo:h,checkoutAttemptId:l}=s(this.analyticsData)??{},u=d?n?.id:l,v={version:c,buildType:r,channel:a.WEB,platform:o,locale:i,referrer:window.location.href,screenWidth:window.screen.width,checkoutStage:e||\"checkout\",level:this.enabled?\"all\":\"initial\",...h&&{applicationInfo:h},...t&&{sessionId:t},...u&&{checkoutAttemptId:u}};this.checkoutAttemptId=await this.service.requestCheckoutAttemptId(v),this.dispatchPendingAnalytics(),this.storage.set({id:this.checkoutAttemptId,timestamp:d?n.timestamp:Date.now()})}catch(t){this.enabled=!1,console.warn(\"Analytics: Error setting up\",t)}}sendAnalytics(t){if(this.enabled)try{this.addEventToQueue(t)}catch(t){console.warn(\"Analytics: Error adding event to queue\",t)}}async sendFlavor(t){this.isFlavorReported||(this.checkoutAttemptId?await this.dispatchFlavor(t):this.pendingFlavor||(this.pendingFlavor=t))}async dispatchFlavor(t){if(!this.isFlavorReported&&this.checkoutAttemptId){this.isFlavorReported=!0;try{await this.service.reportIntegrationFlavor(t,this.checkoutAttemptId)}catch(t){console.warn(\"Analytics: Error reporting flavor\",t)}}}flush(){this.sendEvents()}addEventToQueue(t){this.eventsQueue.add(t),t.getEventCategory()===i.info?this.debouncedSendInfoEvents():this.debouncedSendEvents()}async sendEvents(){if(!this.checkoutAttemptId||!this.enabled)return;if(!this.eventsQueue.hasEvents)return;const t={channel:a.WEB,platform:o,info:this.eventsQueue.infoEvents,errors:this.eventsQueue.errorEvents,logs:this.eventsQueue.logEvents};this.eventsQueue.clear();try{await this.service.sendEvents(t,this.checkoutAttemptId)}catch(t){console.warn(\"Analytics: Error sending events\",t)}}dispatchPendingAnalytics(){if(!this.isFlavorReported&&this.pendingFlavor){const t=this.pendingFlavor;this.pendingFlavor=void 0,this.dispatchFlavor(t)}this.sendEvents()}constructor({service:e,eventQueue:s,enabled:i,analyticsData:o}){d(this,\"analyticsData\",void 0),d(this,\"service\",void 0),d(this,\"eventsQueue\",void 0),d(this,\"storage\",new n(\"checkout-attempt-id\",\"sessionStorage\")),d(this,\"debouncedSendInfoEvents\",void 0),d(this,\"debouncedSendEvents\",void 0),d(this,\"_checkoutAttemptId\",void 0),d(this,\"enabled\",!0),d(this,\"isFlavorReported\",!1),d(this,\"pendingFlavor\",void 0),this.service=e,this.eventsQueue=s,this.debouncedSendInfoEvents=t(this.sendEvents.bind(this),1e4),this.debouncedSendEvents=t(this.sendEvents.bind(this),h),void 0!==i&&(this.enabled=i),o&&(this.analyticsData=o)}}export{l as default};\n//# sourceMappingURL=Analytics.js.map\n","import{AnalyticsEventCategory as t}from\"./events/AbstractAnalyticsEvent.js\";function r(t,r,e){return r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}class e{add(r){const e=r.getEventCategory();e===t.info&&this.info.push(r),e===t.error&&this.errors.push(r),e===t.log&&this.logs.push(r)}get infoEvents(){return this.info}get errorEvents(){return this.errors}get logEvents(){return this.logs}get hasEvents(){return this.info.length>0||this.errors.length>0||this.logs.length>0}clear(){this.info=[],this.errors=[],this.logs=[]}constructor(){r(this,\"info\",[]),r(this,\"errors\",[]),r(this,\"logs\",[])}}export{e as AnalyticsEventQueue};\n//# sourceMappingURL=AnalyticsEventQueue.js.map\n","import t from\"../Errors/AdyenCheckoutError.js\";import{httpPost as e}from\"../Services/http.js\";function n(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}const o=\"v3/analytics\";class r{async requestCheckoutAttemptId(n){const r={loadingContext:this.analyticsContext,path:`${o}?clientKey=${this.clientKey}`};try{const{checkoutAttemptId:t}=await e(r,n);return t}catch(e){throw new t(\"NETWORK_ERROR\",\"requestCheckoutAttemptId() - failed to get checkout attempt ID\",{cause:e})}}async sendEvents(n,r){if(!r)throw new t(\"IMPLEMENTATION_ERROR\",\"sendEvents() - checkoutAttemptId is required\");if(!n.info.length&&!n.errors.length&&!n.logs.length)return Promise.resolve();const i={loadingContext:this.analyticsContext,path:`${o}/${r}?clientKey=${this.clientKey}`};try{await e(i,n)}catch(e){throw new t(\"NETWORK_ERROR\",\"sendEvents() - failed to send events\",{cause:e})}}async reportIntegrationFlavor(n,r){if(!n||!r)throw new t(\"IMPLEMENTATION_ERROR\",\"reportIntegrationFlavor() - flavor or checkoutAttemptId is required\");const i={loadingContext:this.analyticsContext,path:`${o}?clientKey=${this.clientKey}`},a={flavor:n,checkoutAttemptId:r};try{await e(i,a)}catch(e){throw new t(\"NETWORK_ERROR\",\"reportIntegrationFlavor() - failed to send flavor\",{cause:e})}}constructor({clientKey:t,analyticsContext:e}){n(this,\"clientKey\",void 0),n(this,\"analyticsContext\",void 0),this.clientKey=t,this.analyticsContext=e}}export{r as AnalyticsService};\n//# sourceMappingURL=AnalyticsService.js.map\n","var e={payButton:\"Pay\",\"payButton.redirecting\":\"Redirecting...\",\"payButton.with\":\"Pay %{value} with %{maskedData}\",\"payButton.saveDetails\":\"Save details\",close:\"Close\",storeDetails:\"Save for my next payment\",readMore:\"Read more\",\"creditCard.holderName\":\"Name on card\",\"creditCard.holderName.invalid\":\"Enter name as shown on card\",\"creditCard.expiryDateField.month\":\"Month\",\"creditCard.expiryDateField.year\":\"Year\",\"creditCard.storeDetailsButton\":\"Remember for next time\",\"creditCard.dualBrand.title\":\"Card Brand\",\"creditCard.dualBrand.description\":\"You can select the card brand you prefer to pay with. This is optional.\",installments:\"Number of installments\",installmentOption:\"%{times}x %{partialValue}\",installmentOptionMonths:\"%{times} months\",\"installments.oneTime\":\"One time payment\",\"installments.installments\":\"Installments payment\",\"installments.revolving\":\"Revolving payment\",\"installments.bonus\":\"Bonus payment\",\"sepaDirectDebit.ibanField.invalid\":\"Invalid account number\",\"sepa.ownerName\":\"Holder Name\",\"sepa.ibanNumber\":\"Account Number (IBAN)\",\"error.title\":\"Error\",\"error.subtitle.redirect\":\"Redirect failed\",\"error.subtitle.payment\":\"Payment failed\",\"error.subtitle.refused\":\"Payment refused\",\"error.message.unknown\":\"An unknown error occurred\",\"errorPanel.title\":\"Existing errors\",\"idealIssuer.selectField.title\":\"Bank\",\"creditCard.success\":\"Payment Successful\",loading:\"Loading…\",loaded:\"Loaded\",continue:\"Continue\",continueTo:\"Continue to\",\"wechatpay.timetopay\":\"You have %@ to pay\",\"sr.wechatpay.timetopay\":\"You have %#minutes%# %#seconds%# to pay\",\"wechatpay.scanqrcode\":\"Scan QR code\",personalDetails:\"Personal details\",companyDetails:\"Company details\",\"companyDetails.name\":\"Company name\",\"companyDetails.registrationNumber\":\"Registration number\",socialSecurityNumber:\"Social security number\",firstName:\"First name\",\"firstName.invalid\":\"Enter your first name\",infix:\"Prefix\",lastName:\"Last name\",\"lastName.invalid\":\"Enter your last name\",mobileNumber:\"Mobile number\",\"mobileNumber.invalid\":\"Invalid mobile number\",city:\"City\",postalCode:\"Postal code\",\"postalCode.optional\":\"Postal code (optional)\",countryCode:\"Country Code\",telephoneNumber:\"Telephone number\",telephonePrefix:\"Prefix\",dateOfBirth:\"Date of birth\",shopperEmail:\"Email address\",gender:\"Gender\",\"gender.notselected\":\"Select your gender\",male:\"Male\",female:\"Female\",billingAddress:\"Billing address\",street:\"Street\",stateOrProvince:\"State or province\",country:\"Country/Region\",houseNumberOrName:\"House number\",separateDeliveryAddress:\"Specify a separate delivery address\",deliveryAddress:\"Delivery Address\",\"deliveryAddress.firstName\":\"Recipient first name\",\"deliveryAddress.lastName\":\"Recipient last name\",zipCode:\"Zip code\",apartmentSuite:\"Apartment / Suite\",provinceOrTerritory:\"Province or Territory\",cityTown:\"City / Town\",address:\"Address\",\"address.search.contextualText\":\"Type to start searching your address\",\"address.errors.incomplete\":\"Enter an address to continue\",\"address.enterManually\":\"Enter address manually\",state:\"State\",payAmountFormat:\"Pay %@\",\"field.title.optional\":\"(optional)\",\"issuerList.selectField.contextualText\":\"Select your bank to continue\",\"issuerList.selectField.label\":\"Bank selection\",privacyPolicy:\"Privacy policy\",\"afterPay.agreement\":\"I agree with the %@ of Riverty\",\"riverty.termsAndConditions\":\"I agree with the general %#Terms & Conditions%# for the Riverty Payment Method. The privacy policy of Riverty can be found %#here%#.\",paymentConditions:\"payment conditions\",openApp:\"Open the app\",\"voucher.readInstructions\":\"Read instructions\",\"voucher.introduction\":\"Thank you for your purchase, please use the following coupon to complete your payment.\",\"voucher.expirationDate\":\"Expiration Date\",\"voucher.alternativeReference\":\"Alternative Reference\",\"voucher.paymentReferenceLabel\":\"Payment Reference\",\"voucher.surcharge\":\"Incl. %@ surcharge\",\"voucher.introduction.doku\":\"Thank you for your purchase, please use the following information to complete your payment.\",\"voucher.shopperName\":\"Shopper Name\",\"voucher.merchantName\":\"Merchant\",\"voucher.introduction.econtext\":\"Thank you for your purchase, please use the following information to complete your payment.\",\"voucher.telephoneNumber\":\"Phone Number\",\"voucher.shopperReference\":\"Shopper Reference\",\"voucher.collectionInstitutionNumber\":\"Collection Institution Number\",\"voucher.econtext.telephoneNumber.invalid\":\"Telephone number must be 10 or 11 digits long\",\"boletobancario.btnLabel\":\"Generate Boleto\",\"boleto.sendCopyToEmail\":\"Send a copy to my email\",\"button.copy\":\"Copy\",\"button.copied\":\"Copied!\",\"button.download\":\"Download\",\"boleto.socialSecurityNumber\":\"CPF/CNPJ\",\"boleto.socialSecurityNumber.invalid\":\"Enter a valid CPF/CNPJ number\",\"creditCard.storedCard.description.ariaLabel\":\"Stored card ends in %@\",\"voucher.entity\":\"Entity\",donateButton:\"Donate\",donationTermsCondition:\"By donating you agree to the %#terms and conditions%#\",donationRoundUpDescription:\"%{donationAmount} is a round up from your original payment (%{originalPaymentAmount})\",notNowButton:\"Not now\",thanksForYourSupport:\"Thanks for your support!\",\"resultMessages.preauthorized\":\"Details saved\",preauthorizeWith:\"Preauthorize with\",confirmPreauthorization:\"Confirm preauthorization\",confirmPurchase:\"Confirm purchase\",applyGiftcard:\"Redeem\",giftcardBalance:\"Gift card balance\",deductedBalance:\"Deducted balance\",\"creditCard.taxNumber\":\"Cardholder birthdate or Corporate registration number\",\"creditCard.taxNumber.label\":\"Cardholder birthdate (YYMMDD) or Corporate registration number (10 digits)\",\"creditCard.taxNumber.labelAlt\":\"Corporate registration number (10 digits)\",\"creditCard.taxNumber.invalid\":\"Invalid Cardholder birthdate or Corporate registration number\",\"storedPaymentMethod.disable.button\":\"Remove\",\"storedPaymentMethod.disable.confirmation\":\"Remove stored payment method\",\"storedPaymentMethod.disable.confirmButton\":\"Yes, remove\",\"storedPaymentMethod.disable.cancelButton\":\"Cancel\",\"ach.bankAccount\":\"Bank account\",\"ach.bankAccount.title\":\"Bank account details\",\"ach.bankAccount.label\":\"Account type\",\"ach.bankAccount.placeholder\":\"Choose an account type\",\"ach.bankAccount.nothing-selected-error\":\"Choose an account type\",\"ach.bankAccount.option.personal-checking\":\"Personal Checking Account\",\"ach.bankAccount.option.personal-savings\":\"Personal Savings Account\",\"ach.bankAccount.option.business-checking\":\"Business Checking Account\",\"ach.bankAccount.option.business-savings\":\"Business Savings Account\",\"ach.bankAccountNumberVerification.label\":\"Verify account number\",\"ach.bankAccountNumberVerification.error.not-match\":\"Account number does not match\",\"ach.bankAccountNumberVerification.error.empty\":\"Enter the provided account number to verify the account number\",\"ach.routingNumber.label\":\"Routing number\",\"ach.accountHolderNameField.title\":\"Account holder name\",\"ach.accountHolderNameField.contextualText\":\"Located on the front of your card\",\"ach.accountHolderNameField.invalid\":\"Invalid account holder name\",\"ach.accountNumberField.invalid\":\"Invalid account number\",\"ach.accountLocationField.invalid\":\"Invalid ABA routing number\",\"ach.savedBankAccount\":\"Saved bank account\",\"ach.savings\":\"Savings account\",\"ach.checking\":\"Checking account\",\"select.state\":\"Select state\",\"select.stateOrProvince\":\"Select state or province\",\"select.provinceOrTerritory\":\"Select province or territory\",\"select.country\":\"Select country/region\",\"select.noOptionsFound\":\"No options found\",\"select.results\":\"%{count} results available\",\"telephoneNumber.invalid\":\"Invalid telephone number\",qrCodeOrApp:\"or\",\"paypal.processingPayment\":\"Processing payment...\",generateQRCode:\"Generate QR code\",\"await.waitForConfirmation\":\"Waiting for confirmation\",\"mbway.confirmPayment\":\"Confirm your payment on the MB WAY app\",\"shopperEmail.invalid\":\"Invalid email address\",\"dateOfBirth.format\":\"DD/MM/YYYY\",\"dateOfBirth.invalid\":\"Enter a valid date of birth that indicates you are at least 18 years old\",\"blik.confirmPayment\":\"Open your banking app to confirm the payment.\",\"blik.invalid\":\"Enter 6 numbers\",\"blik.code\":\"6-digit code\",\"blik.help\":\"Get the code from your banking app.\",\"swish.pendingMessage\":\"After you scan, the status can be pending for up to 10 minutes. Attempting to pay again within this time may result in multiple charges.\",\"field.valid\":\"Field valid\",\"field.invalid\":\"Field not valid\",\"field.error.required\":\"Enter the %{label}\",\"field.error.invalid\":\"Enter a valid %{label}\",\"field.error.invalidCharacters\":\"Some special characters are not allowed, enter a valid %{label}\",\"error.giftcard.no-balance\":\"This gift card has zero balance\",\"error.giftcard.card-error\":\"In our records we have no gift card with this number\",\"error.giftcard.currency-error\":\"Gift cards are only valid in the currency they were issued in\",\"err.gen.9100\":\"Incomplete field\",\"err.gen.9101\":\"Field not valid\",\"err.gen.9102\":\"Data parsing error\",\"3ds.chal.805\":\"Challenge resolved without a %{result} object\",\"cc.num.902\":\"Enter a valid card number\",\"cc.num.900\":\"Enter the card number\",\"cc.num.903\":\"Enter a supported card brand\",\"cc.num.901\":\"Enter the complete card number\",\"cc.num.904\":\"This card type is not supported\",\"cc.dat.912\":\"Enter a valid expiry date. Front of card in MM/YY format.\",\"cc.dat.913\":\"Enter a valid expiry date. Front of card in MM/YY format.\",\"cc.dat.914\":\"Credit card about to expire\",\"cc.dat.910\":\"Enter the expiry date. Front of card in MM/YY format.\",\"cc.dat.911\":\"Enter the complete expiry date. Front of card in MM/YY format.\",\"cc.mth.915\":\"Enter the expiry month\",\"cc.yr.917\":\"Enter the expiry year\",\"cc.yr.918\":\"Enter the complete expiry year\",\"cc.cvc.920\":\"Enter the security code. 3 digits on back of card.\",\"cc.cvc.921\":\"Enter the complete security code. 3 digits on back of card.\",\"cc.cvc.920.amex\":\"Enter the security code. 4 digits on front of card.\",\"cc.cvc.921.amex\":\"Enter the complete security code. 4 digits on front of card.\",\"ach.num.945\":\"Enter the bank account number\",\"ach.num.946\":\"Enter the complete bank account number\",\"ach.loc.947\":\"Enter the bank routing number\",\"ach.loc.948\":\"Enter the complete bank routing number\",\"kcp.pwd.940\":\"Enter the password\",\"kcp.pwd.941\":\"Enter the complete password\",\"amazonpay.signout\":\"Sign out from Amazon\",\"amazonpay.changePaymentDetails\":\"Change payment details\",\"order.paymentMethod.description\":\"%{name} ending in %{lastFour}\",\"partialPayment.warning\":\"Select another payment method to pay the remaining\",\"partialPayment.remainingBalance\":\"Remaining balance will be %{amount}\",\"bankTransfer.beneficiary\":\"Beneficiary name\",\"bankTransfer.iban\":\"IBAN\",\"bankTransfer.bic\":\"BIC\",\"bankTransfer.reference\":\"Reference\",\"bankTransfer.accountNumber\":\"Account number\",\"bankTransfer.sortCode\":\"Sort code\",\"bankTransfer.routingNumber\":\"Routing number\",\"bankTransfer.branchCode\":\"Branch code\",\"bankTransfer.bankCode\":\"Bank code\",\"bankTransfer.introduction\":\"Press ‘Continue’ to create a new bank transfer payment. You can use the details in the following screen to finalize this payment.\",\"bankTransfer.instructions\":\"Thank you for your purchase, please use the following information to complete your payment.\",\"bankTransfer.shopperEmail.contextualText\":\"A copy of the payment details will be sent to your email so you can complete the payment later.\",\"bankTransfer.details.title\":\"Payment details\",\"bankTransfer.instruction.title\":\"Payment process\",\"bankTransfer.instruction.step1\":\"Open your banking app\",\"bankTransfer.instruction.step2\":\"Start a new transfer\",\"bankTransfer.instruction.step3\":\"Enter the account details provided below\",\"bankTransfer.instruction.step4\":\"Review and confirm the payment\",\"bacs.accountHolderName\":\"Bank account holder name\",\"bacs.accountHolderName.invalid\":\"Invalid bank account holder name\",\"bacs.accountNumber\":\"Bank account number\",\"bacs.accountNumber.invalid\":\"Invalid bank account number\",\"bacs.bankLocationId\":\"Sort code\",\"bacs.bankLocationId.invalid\":\"Invalid sort code\",\"bacs.consent.amount\":\"I agree that the above amount will be deducted from my bank account.\",\"bacs.consent.account\":\"I confirm the account is in my name and I am the only signatory required to authorise the Direct Debit on this account.\",edit:\"Edit\",\"bacs.confirm\":\"Confirm and pay\",\"bacs.result.introduction\":\"Download your Direct Debit Instruction (DDI / Mandate)\",\"download.pdf\":\"Download PDF\",\"creditCard.encryptedCardNumber.aria.iframeTitle\":\"Card number\",\"creditCard.encryptedExpiryDate.aria.iframeTitle\":\"Expiry date\",\"creditCard.encryptedExpiryMonth.aria.iframeTitle\":\"Expiry month\",\"creditCard.encryptedExpiryYear.aria.iframeTitle\":\"Expiry year\",\"creditCard.encryptedSecurityCode.aria.iframeTitle\":\"Security code\",\"creditCard.encryptedPassword.aria.iframeTitle\":\"Password\",\"giftcard.encryptedCardNumber.aria.iframeTitle\":\"Card number\",\"giftcard.encryptedSecurityCode.aria.iframeTitle\":\"Pin\",giftcardTransactionLimit:\"Max. %{amount} allowed per transaction on this gift card\",\"pix.instructions\":\"Use your banking app to scan the QR code or copy the PIX code below to complete your payment.\",\"pix.code.label\":\"PIX code\",\"pix.code.copy.label\":\"Copy PIX code\",\"pix.code.copied.label\":\"PIX code copied\",\"twint.saved\":\"saved\",orPayWith:\"or pay with\",\"invalid.format.expects\":\"%{label} Invalid format. Expected format: %{format}\",\"upi.qrCodeWaitingMessage\":\"Scan the QR code using your preferred UPI app to complete the payment\",\"upi.vpaWaitingMessage\":\"Open your UPI app to confirm the payment\",\"upi.modeSelection\":\"How would you like to use UPI?\",\"upi.completePayment\":\"Complete your payment\",\"upi.mode.enterUpiId\":\"UPI ID\",\"upi.mode.qrCode\":\"QR code\",\"upi.mode.payByAnyUpi\":\"UPI apps\",\"upi.collect.dropdown.label\":\"Enter UPI ID\",\"upi.collect.instruction\":\"Enter your UPI ID\",\"upi.collect.field.label\":\"UPI ID\",\"upi.collect.field.contextualText\":\"Enter the UPI ID connected to your account and press continue\",\"upi.collect.field.invalid-id-error\":\"Enter a valid UPI\",\"upi.error.noAppSelected\":\"Select your preferred UPI app to continue\",\"upi.intent.instruction\":\"Select your preferred UPI app\",\"upi.qrCode.instruction\":\"After generating the QR code you can use your preferred UPI app to complete the payment.\",\"onlineBanking.termsAndConditions\":\"By continuing you agree with the %#terms and conditions%#\",\"onlineBankingPL.termsAndConditions\":\"By continuing you agree with the %#regulations%# and %#information obligation%# of Przelewy24\",\"ctp.loading.poweredByCtp\":\"Powered by Click to Pay\",\"ctp.loading.intro\":\"We are checking to see if you have any saved cards with Click to Pay...\",\"ctp.login.title\":\"Continue to Click to Pay\",\"ctp.login.subtitle\":\"Enter the email address that is connected to Click to Pay to continue.\",\"ctp.login.inputLabel\":\"Email\",\"ctp.logout.notYou\":\"Not you?\",\"ctp.logout.notYourCards\":\"Not your cards?\",\"ctp.logout.notYourCard\":\"Not your card?\",\"ctp.logout.notYourProfile\":\"Not your profile?\",\"ctp.otp.fieldLabel\":\"One time code\",\"ctp.otp.resendCode\":\"Resend code\",\"ctp.otp.codeResent\":\"Code resent\",\"ctp.otp.title\":\"Access your Click to Pay cards\",\"ctp.otp.subtitle\":\"Enter the code %@ sent to %@ to verify it‘s you.\",\"ctp.otp.saveCookiesCheckbox.label\":\"Skip verification next time\",\"ctp.otp.saveCookiesCheckbox.information\":\"Select to be remembered on your device and browser at participating stores for faster checkout. Not recommended for shared devices.\",\"ctp.otp.saveCookiesCheckbox.shorterInfo\":\"Select to be remembered on your device and browser\",\"ctp.emptyProfile.message\":\"No cards registered in this Click to Pay profile\",\"ctp.separatorText\":\"or use\",\"ctp.cards.title\":\"Complete payment with Click to Pay\",\"ctp.cards.subtitle\":\"Select a card to use.\",\"ctp.cards.expiredCard\":\"Expired\",\"ctp.manualCardEntry\":\"Manual card entry\",\"ctp.aria.infoModalButton\":\"What is Click to Pay\",\"ctp.infoPopup.title\":\"Click to Pay brings the ease of contactless, online\",\"ctp.infoPopup.subtitle\":\"A fast, secure payment method supported by Mastercard, Visa and other payment cards.\",\"ctp.infoPopup.benefit1\":\"Click to Pay uses encryption to keep your information safe and secure\",\"ctp.infoPopup.benefit2\":\"Use it with merchants worldwide\",\"ctp.infoPopup.benefit3\":\"Set up once for hassle-free payments in the future\",\"ctp.errors.AUTH_INVALID\":\"Authentication Invalid\",\"ctp.errors.NOT_FOUND\":\"No account found, enter a valid email or continue using manual card entry\",\"ctp.errors.ID_FORMAT_UNSUPPORTED\":\"Format not supported\",\"ctp.errors.FRAUD\":\"The user account was locked or disabled\",\"ctp.errors.CONSUMER_ID_MISSING\":\"Consumer identity is missing in the request\",\"ctp.errors.ACCT_INACCESSIBLE\":\"This account is currently not available, e.g it is locked\",\"ctp.errors.CODE_INVALID\":\"Incorrect verification code\",\"ctp.errors.CODE_EXPIRED\":\"This code has expired\",\"ctp.errors.RETRIES_EXCEEDED\":\"The limit for the number of retries for OTP generation was exceeded\",\"ctp.errors.OTP_SEND_FAILED\":\"The OTP could not be sent to the recipient\",\"ctp.errors.REQUEST_TIMEOUT\":\"Something went wrong, try again or use the manual card entry\",\"ctp.errors.UNKNOWN_ERROR\":\"Something went wrong, try again or use the manual card entry\",\"ctp.errors.SERVICE_ERROR\":\"Something went wrong, try again or use the manual card entry\",\"ctp.errors.SERVER_ERROR\":\"Something went wrong, try again or use the manual card entry\",\"ctp.errors.INVALID_PARAMETER\":\"Something went wrong, try again or use the manual card entry\",\"ctp.errors.AUTH_ERROR\":\"Something went wrong, try again or use the manual card entry\",\"ctp.errors.INVALID_EMAIL\":\"Enter a valid email address (e.g. name@example.com)\",\"paymentMethodsList.aria.label\":\"Choose a payment method\",\"paymentMethodsList.storedPayments.label\":\"Saved payment methods\",\"paymentMethodsList.otherPayments.label\":\"More payment options\",\"paymentMethodsList.otherPayments.buttonLabel\":\"Show %{count} more\",\"paymentMethodsList.promotedPayments.label\":\"Other\",\"companyDetails.name.invalid\":\"Enter the company name\",\"companyDetails.registrationNumber.invalid\":\"Enter the registration number\",\"consent.checkbox.invalid\":\"You must agree with the terms & conditions\",\"form.instruction\":\"All fields are required unless marked otherwise.\",\"trustly.descriptor\":\"Instant Bank Payment\",\"trustly.description1\":\"Pay directly from any of your bank accounts, backed by bank-level security\",\"trustly.description2\":\"No cards, no app download, no registration\",\"ancv.input.label\":\"Your ANCV identification\",\"ancv.confirmPayment\":\"Use your ANCV application to confirm the payment.\",\"ancv.form.instruction\":\"The Cheque-Vacances application is necessary to validate this payment.\",\"ancv.beneficiaryId.invalid\":\"Enter a valid email address or ANCV ID\",\"creditCard.cardNumber.label\":\"Card number\",\"creditCard.expiryDate.label\":\"Expiry date\",\"creditCard.expiryDate.contextualText\":\"Front of card in MM/YY format\",\"creditCard.securityCode.label\":\"Security code\",\"creditCard.securityCode.label.optional\":\"Security code (optional)\",\"creditCard.securityCode.contextualText.3digits\":\"3 digits on back of card\",\"creditCard.securityCode.contextualText.4digits\":\"4 digits on front of card\",\"creditCard.expiryMonth.label\":\"Expiry month\",\"creditCard.expiryYear.label\":\"Expiry year\",\"creditCard.pin.label\":\"Pin\",\"creditCard.password.label\":\"First 2 digits of card password\",\"giftcard.cardNumber.label\":\"Card Number\",\"giftcard.expiryDate.label\":\"Expiry date\",\"giftcard.securityCode.label\":\"Pin\",\"ach.bankAccountNumber.label\":\"Account number\",\"ach.bankLocationId.label\":\"ABA routing number\",\"dragonpayVoucher.selectField.contextualText.nonBank\":\"Select your provider\",\"dragonpayVoucher.selectField.contextualText.bank\":\"Select your bank\",\"payme.openPayMeApp\":\"Complete your payment in the PayMe app by authorizing the payment in the app and wait for the confirmation.\",\"payme.redirectButtonLabel\":\"Open PayMe app\",\"payme.scanQrCode\":\"Complete your payment by QR code\",\"payme.timeToPay\":\"This QR code is valid for %@\",\"payme.instructions.steps\":\"Open the PayMe app.%@Scan the QR code to authorize the payment.%@Complete the payment in the app and wait for confirmation.\",\"payme.instructions.footnote\":\"Please do not close this page before the payment is completed\",\"payByBankAISDD.disclaimer.header\":\"Use Pay by Bank to pay instantly from any bank account.\",\"payByBankAISDD.disclaimer.body\":\"By connecting your bank account you are authorizing debits to your account for any amount owed for use of our services and/or purchase of our products, until this authorization is revoked.\",\"paymentMethodBrand.other\":\"other\",\"paynow.scanQrCode\":\"Scan the QR code using the PayNow app to complete the payment\",\"paynow.mobileViewInstruction.step1\":\"Take a screenshot of the QR code.\",\"paynow.mobileViewInstruction.step2\":\"Open the PayNow bank or payment app.\",\"paynow.mobileViewInstruction.step3\":\"Select the option to scan a QR code.\",\"paynow.mobileViewInstruction.step4\":\"Choose the option to upload a QR and select the screenshot.\",\"paynow.mobileViewInstruction.step5\":\"Complete the transaction.\",\"payto.payid.description\":\"Enter the PayID and account details that are connected to your PayTo account.\",\"payto.payid.label.identifier\":\"Identifier\",\"payto.payid.label.orgid\":\"Organization ID\",\"payto.payid.option.phone\":\"Mobile\",\"payto.payid.option.email\":\"Email\",\"payto.payid.option.orgid\":\"Organization ID\",\"payto.bsb.description\":\"Enter the bank account number and the Bank State Branch that is connected to your account to continue\",\"payto.bsb.label.bankAccountNumber\":\"Bank account number\",\"payto.instructions.steps\":\"Log into your PayTo banking app@Authorize the PayTo agreement@Approve the payment terms@Complete the transaction\",\"payto.confirmPayment\":\"Thank you for your purchase, complete your payment by following the instructions below.\",\"payto.mandate.amount.label\":\"Amount\",\"payto.mandate.frequency.label\":\"Frequency\",\"payto.mandate.remarks.label\":\"Description\",\"payto.mandate.startsAt.label\":\"First payment date\",\"payto.mandate.endsAt.label\":\"End date\",\"payto.mandate.payee.label\":\"Payee\",\"payto.mandate.amount.max\":\"Up to %{amount} per transaction\",\"payto.mandate.frequency.adhoc-no-count\":\"Ad Hoc\",\"payto.mandate.frequency.adhoc\":\"%{count} time(s)\",\"payto.mandate.frequency.daily\":\"%{count} payment(s) Daily\",\"payto.mandate.frequency.weekly\":\"%{count} payment(s) Weekly\",\"payto.mandate.frequency.biWeekly\":\"%{count} payment(s) Fortnightly\",\"payto.mandate.frequency.monthly\":\"%{count} payment(s) Monthly\",\"payto.mandate.frequency.quarterly\":\"%{count} payment(s) Quarterly\",\"payto.mandate.frequency.halfYearly\":\"%{count} payment(s) Bi-Annual\",\"payto.mandate.frequency.yearly\":\"%{count} payment(s) Yearly\",\"payto.label.firstName\":\"Account holder first name\",\"payto.label.lastName\":\"Account holder last name\",\"payto.await.waitForConfirmation\":\"Awaiting your approval\",\"payto.errors.accountHolderFirstName.invalid\":\"Enter your account holder first name\",\"payto.errors.accountHolderLastName.invalid\":\"Enter your account holder last name\",\"payto.bsb.option.label\":\"BSB and account number\",\"card.fastlane.a11y.logo\":\"Fastlane by Paypal logo\",\"card.fastlane.a11y.openDialog\":\"Read more about Fastlane\",\"card.fastlane.a11y.closeDialog\":\"Close dialog\",\"card.fastlane.mobileInputLabel\":\"Mobile number\",\"card.fastlane.consentToggle\":\"Save your info with Fastlane for faster checkouts and more\",\"card.fastlane.consentText\":\"By saving your info, you agree to get codes by text to use Fastlane everywhere it's available. Fastlane will text the number provided. You also agree to this %#terms%# and %#privacy statement%#.\",\"card.fastlane.modal.benefit1.header\":\"Autofill your checkouts\",\"card.fastlane.modal.benefit1.text\":\"Get one-time codes to use card and addresses you’ve saved.\",\"card.fastlane.modal.benefit2.header\":\"Protect your info\",\"card.fastlane.modal.benefit2.text\":\"Your payment info is encrypted when it’s stored and sent to places you shop.\",\"card.fastlane.modal.benefit3.header\":\"Use across stores\",\"card.fastlane.modal.benefit3.text\":\"Speed through checkout everywhere Fastlane is available.\",\"paybybankpix.redirectBtn.label\":\"Continue to PIX through OpenBanking\",\"paybybankpix.issuerList.disclaimer\":\"By continuing, you agree to the %#Consent Notice%# and will be redirected to your bank.\",\"paybybankpix.issuerList.selectField.label\":\"Bank\",\"paybybankpix.issuerList.introduction.logo.content\":\"Connect your favorite PIX keys to pay through Open Finance\",\"paybybankpix.await.waitForConfirmation\":\"Waiting for your confirmation...\",\"paybybankpix.await.timeToPay\":\"This process will take approximately %{numberOfMin} minute(s)\",\"paybybankpix.await.withOpenFinance\":\"With the ease of Open Finance\",\"paybybankpix.await.logoAlt.openFinance\":\"Open Finance\",\"paybybankpix.storedPayment.payButton.label\":\"Continue payment\",\"paybybankpix.storedPayment.additionalLabel\":\"%{receiver} account through PIX\",\"paybybankpix.await.fetchDetails\":\"Fetching details...\",\"eftpad-canada.input.accountHolderName.label\":\"Account holder name\",\"eftpad-canada.input.accountHolderName.error\":\"Enter an account holder name\",\"eftpad-canada.input.accountNumber.label\":\"Account number\",\"eftpad-canada.input.accountNumber.contextualText\":\"Between 7 and 12 digits\",\"eftpad-canada.input.accountNumber.error\":\"Enter an account number that is between 7 and 12 digits\",\"eftpad-canada.input.institutionNumber.label\":\"Institution number\",\"eftpad-canada.input.institutionNumber.contextualText\":\"3 digits\",\"eftpad-canada.input.institutionNumber.error\":\"Enter an institution number that consists of 3 digits\",\"eftpad-canada.input.transitNumber.label\":\"Transit number\",\"eftpad-canada.input.transitNumber.contextualText\":\"5 digits\",\"eftpad-canada.input.transitNumber.error\":\"Enter a transit number that consists of 5 digits\",\"eftpad-canada.settlement-info\":\"The funds will be withdrawn from your bank account within 1–3 business days.\",\"upi.mandate.intro\":\"You’re setting up a UPI Autopay recurring payment\",\"upi.mandate.max.extraText\":\"You’ll approve a higher limit to allow future plan changes\",\"upi.mandate.upTo\":\"up to %{amount}\",\"upi.mandate.frequency.monthly\":\"/month\",\"upi.mandate.frequency.weekly\":\"/week\",\"upi.mandate.frequency.adhoc\":\" as presented\",bankList:\"Bank list\",qrCode:\"QR code\",\"iris.instructions.generateQrCode\":\"After generating the QR code you can use your preferred banking app to complete the payment.\",\"iris.instructions.payment.step1\":\"Open your preferred banking app.\",\"iris.instructions.payment.step2\":\"Scan the QR code with your banking app.\",\"iris.instructions.payment.step3\":\"Complete the payment in the app and wait for the confirmation here.\",\"econtext.customerNumber\":\"Customer number\",\"econtext.confirmationNumber\":\"Confirmation number\",\"econtext.useBefore\":\"Use before\",\"econtext.paymentInformation\":\"Payment information\",\"issuerList.separatorText\":\"or choose from list\",\"upi.intent.apps.title\":\"Options\",\"upi.intent.apps.dropdown.label\":\"UPI apps\",\"upi.intent.apps.dropdown.placeholder\":\"Choose preferred app\",\"emi.subtitle\":\"Installment plans on credit cards\",\"emi.title\":\"EMI plan\",\"emi.instructions\":\"Choose your preferred combination from the options listed below and continue to enter your card details\",\"emi.provider\":\"Provider\",\"emi.plan\":\"Plan\",\"emi.planSummary\":\"Plan summary\",\"emi.itemPrice\":\"Item price\",\"emi.amountReservedOnCard\":\"Amount reserved on card\",\"emi.interestChargedByBank\":\"Interest charged by bank @%{interest}\",\"emi.totalAmountOverTime\":\"Total amount to be paid over time\",\"emi.upcomingMonthlyPayment\":\"Upcoming monthly payment\",\"emi.discount\":\"Discount\",\"emi.discountApplied\":\"%{amount} discount offer applied for using %{provider}\",\"emi.noCost\":\"No cost\",\"emi.lowCost\":\"Low cost\",\"emi.discountAvailable\":\"discount available\",\"emi.perAnnum\":\"p.a\",\"emi.cardDetailsInstructions\":\"Enter card details that are associated with a %{provider} card\",\"emi.cardDetails\":\"Card details\"};export{e as default};\n//# sourceMappingURL=en-US.json.js.map\n","import{getTranslation as t,formatCustomTranslations as s,parseLocale as e}from\"./utils.js\";import{getLocalisedAmount as i}from\"../utils/amount-util.js\";import{CDN_SUPPORTED_LOCALES as o,DEFAULT_LOCALE as a}from\"./constants.js\";import r from\"../packages/server/translations/en-US.json.js\";function n(t,s,e){return s in t?Object.defineProperty(t,s,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[s]=e,t}class l{async requestTranslations(){const t=await this.service.fetchTranslationsFromCdn(this.locale);this._translations={...r,...t,...Boolean(this.customTranslations[this.locale])&&this.customTranslations[this.locale]}}get translations(){return this._translations}get(s,e){const i=t(this._translations,s,e);return null!==i?i:s}amount(t,s,e){return i(t,this.locale,s,e)}date(t,s={}){if(void 0===t)return\"\";const e={year:\"numeric\",month:\"2-digit\",day:\"2-digit\",...s};return new Date(t).toLocaleDateString(this.locale,e)}dateTime(t){return void 0===t?\"\":this.timeAndDateFormatter.format(new Date(t))}createSupportedLocalesList(t){if(!t)return o;const s=new Set([...o,...Object.keys(t)]);return Array.from(s).sort((t,s)=>t.localeCompare(s))}constructor(t){n(this,\"locale\",void 0),n(this,\"languageCode\",void 0),n(this,\"service\",void 0),n(this,\"customTranslations\",void 0),n(this,\"supportedLocales\",void 0),n(this,\"_translations\",{}),n(this,\"timeFormatOptions\",{hour:\"numeric\",minute:\"numeric\"}),n(this,\"timeAndDateFormatOptions\",{year:\"numeric\",month:\"2-digit\",day:\"2-digit\",...this.timeFormatOptions}),n(this,\"timeAndDateFormatter\",void 0);const{locale:i,customTranslations:o,service:r}=t;this.service=r,this.customTranslations=s(o),this.supportedLocales=this.createSupportedLocalesList(this.customTranslations),this.locale=e(i||a,this.supportedLocales),this.languageCode=this.locale.split(\"-\")[0],this.timeAndDateFormatter=Intl.DateTimeFormat(this.locale,this.timeAndDateFormatOptions)}}export{l as Language,l as default};\n//# sourceMappingURL=Language.js.map\n","const e=\"1.0.0\",t=\"1.0.0\",r=\"deviceFingerprint\",o=2e4,n={result:{type:r,value:\"df-timedOut\"},errorCode:\"timeout\"},i={UNKNOWN:\"unknownError\"},d={timeout:\"iframe loading timed out\",wrongOrigin:\"Result did not come from the expected origin\",wrongDataType:\"Result data was not of the expected type\",missingProperty:\"Result data did not contain the expected properties\",unknownError:\"An unknown error occurred\"};export{r as DEVICE_FINGERPRINT,o as DF_TIMEOUT,t as DF_VERSION,i as ERRORS,d as ERROR_MESSAGES,n as FAILED_DFP_RESOLVE_OBJECT_TIMEOUT,e as RISK_DATA_VERSION};\n//# sourceMappingURL=constants.js.map\n","import{Component as e,createElement as s}from\"../../../../external/preact/dist/preact.js\";import r from\"../../../../components/internal/IFrame/Iframe.js\";import i from\"../../../../utils/promiseTimeout.js\";import{DEVICE_FINGERPRINT as t,FAILED_DFP_RESOLVE_OBJECT_TIMEOUT as o,DF_TIMEOUT as n}from\"../../constants.js\";import a from\"../../../../utils/get-process-message-handler.js\";import{getOrigin as m}from\"../../../../utils/getOrigin.js\";function p(e,s,r){return s in e?Object.defineProperty(e,s,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[s]=r,e}class c extends e{getDfpPromise(){return new Promise((e,s)=>{this.processMessageHandler=a(this.postMessageDomain,e,s,t),window.addEventListener(\"message\",this.processMessageHandler)})}componentDidMount(){this.deviceFingerPrintPromise=i(n,this.getDfpPromise(),o),this.deviceFingerPrintPromise.promise.then(e=>{this.props.onCompleteFingerprint(e),window.removeEventListener(\"message\",this.processMessageHandler)}).catch(e=>{this.props.onErrorFingerprint(e),window.removeEventListener(\"message\",this.processMessageHandler)})}render({dfpURL:e}){return s(\"div\",{className:\"adyen-checkout-risk__device-fingerprint\"},s(r,{name:\"dfIframe\",src:e,allow:\"geolocation; microphone; camera;\",title:\"devicefingerprinting iframe\"}))}constructor(e){super(e),p(this,\"postMessageDomain\",void 0),p(this,\"processMessageHandler\",void 0),p(this,\"deviceFingerPrintPromise\",void 0),this.postMessageDomain=m(this.props.loadingContext)||this.props.loadingContext}}export{c as default};\n//# sourceMappingURL=GetDeviceFingerprint.js.map\n","import{DEVICE_FINGERPRINT as e,ERROR_MESSAGES as o,ERRORS as s}from\"../../constants.js\";const t=t=>({errorCode:t,message:o[t]||o[s.UNKNOWN],type:e});export{t as default};\n//# sourceMappingURL=utils.js.map\n","import{Component as t,createElement as e}from\"../../../../external/preact/dist/preact.js\";import r from\"./GetDeviceFingerprint.js\";import s from\"./utils.js\";import{DF_VERSION as o}from\"../../constants.js\";class i extends t{setStatusComplete(t){this.setState({status:\"complete\"},()=>{this.props.onComplete(t)})}render({loadingContext:t},{dfpURL:o}){return\"retrievingFingerPrint\"===this.state.status?e(\"div\",{className:\"adyen-checkout-risk__device-fingerprint--wrapper\",style:{position:\"absolute\",width:0,height:0}},e(r,{loadingContext:t,dfpURL:o,onCompleteFingerprint:t=>{this.setStatusComplete(t)},onErrorFingerprint:t=>{this.props.onError(s(t.errorCode)),this.setStatusComplete(t.result)}})):null}constructor(t){super(t),t.clientKey&&(this.state={status:\"retrievingFingerPrint\",dfpURL:`${this.props.loadingContext}assets/html/${t.clientKey}/dfp.${o}.html`})}}var n,p,a;a={onComplete:()=>{},onError:()=>{}},(p=\"defaultProps\")in(n=i)?Object.defineProperty(n,p,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[p]=a;export{i as default};\n//# sourceMappingURL=DeviceFingerprint.js.map\n","import{createElement as e}from\"../../external/preact/dist/preact.js\";import t from\"../../components/internal/BaseElement/BaseElement.js\";import n from\"./components/DeviceFingerprint/DeviceFingerprint.js\";import o from\"../../utils/base64.js\";import{RISK_DATA_VERSION as s,DEVICE_FINGERPRINT as r}from\"./constants.js\";function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class a extends t{formatProps(e){return{...e,risk:{...a.defaultProps.risk,...e.risk}}}get isValid(){return this.state.isValid}get data(){if(this.isValid){const e={version:s,...this.state.data};return o.encode(JSON.stringify(e))}return!1}get enabled(){return this.props.risk.enabled}componentWillUnmount(){this.cleanUp()}render(){return e(n,{...this.props,loadingContext:this.props.loadingContext,onComplete:this.onComplete,onError:this.onError})}constructor(e,t){super(e,t),i(this,\"nodeRiskContainer\",null),i(this,\"onComplete\",e=>{const t={...this.state.data,[e.type]:e.value,persistentCookie:e.persistentCookie,components:e.components};this.setState({data:t,isValid:!0}),this.props.risk.onComplete(this.data),this.cleanUp()}),i(this,\"onError\",e=>{this.props.risk.onError(e),this.cleanUp()}),i(this,\"cleanUp\",()=>{this.nodeRiskContainer&&this.nodeRiskContainer.parentNode&&this.nodeRiskContainer.parentNode.removeChild(this.nodeRiskContainer)});const n={[r]:null};this.setState({data:n}),!0===this.props.risk.enabled&&(document.querySelector(this.props.risk.node)?(this.nodeRiskContainer=document.createElement(\"div\"),document.querySelector(this.props.risk.node).appendChild(this.nodeRiskContainer),this.mount(this.nodeRiskContainer)):this.onError({message:\"RiskModule node was not found\"}))}}i(a,\"type\",\"risk\"),i(a,\"defaultProps\",{risk:{enabled:!0,onComplete:()=>{},onError:()=>{},node:\"body\"}});export{a as default};\n//# sourceMappingURL=RiskModule.js.map\n","function t(t){return!this.length||this.includes(t.type)}function e(t){return!this.length||!this.includes(t.type)}function n(t){return!!t&&!!t.supportedShopperInteractions&&t.supportedShopperInteractions.includes(\"Ecommerce\")}const i=[\"scheme\",\"blik\",\"twint\",\"ach\",\"cashapp\",\"paybybank_AIS_DD\",\"payto\",\"paybybank_pix\",\"eft_directdebit_CA\"];function p(t){return!!t&&!!t.type&&i.includes(t.type)}export{t as filterAllowedPaymentMethods,n as filterEcomStoredPaymentMethods,e as filterRemovedPaymentMethods,p as filterSupportedStoredPaymentMethods};\n//# sourceMappingURL=filters.js.map\n","import{filterAllowedPaymentMethods as e,filterRemovedPaymentMethods as t,filterSupportedStoredPaymentMethods as o,filterEcomStoredPaymentMethods as r}from\"./filters.js\";import n from\"../../../utils/uuid.js\";function s(e){return{...e,_id:n()}}const a=(o,{allowPaymentMethods:r=[],removePaymentMethods:n=[]})=>o?o.filter(e,r).filter(t,n).map(s):[],d=(n,{allowPaymentMethods:s=[],removePaymentMethods:a=[]},d=[])=>n?n.filter(o).filter(e,s).filter(t,a).filter(r).map(e=>((e,t)=>{const o=function(e,t){if(\"scheme\"!==e.type)return;const o=e.brand;if(!o)return;const r=t.find(e=>\"scheme\"===e.type&&e.brands?.includes(o));return r?.fundingSource}(e,t);return{...e,storedPaymentMethodId:e.id,isStoredPaymentMethod:!0,...o&&{fundingSource:o}}})(e,d)):[],i=e=>{if(\"string\"==typeof e)throw new Error('paymentMethodsResponse was provided but of an incorrect type (should be an object but a string was provided).Try JSON.parse(\"{...}\") your paymentMethodsResponse.');if(e instanceof Array)throw new Error(\"paymentMethodsResponse was provided but of an incorrect type (should be an object but an array was provided).Please check you are passing the whole response.\");!e||e?.paymentMethods?.length||e?.storedPaymentMethods?.length||console.warn(\"paymentMethodsResponse was provided but no payment methods were found.\")};export{i as checkPaymentMethodsResponse,a as processPaymentMethods,d as processStoredPaymentMethods};\n//# sourceMappingURL=utils.js.map\n","import{checkPaymentMethodsResponse as e,processPaymentMethods as t,processStoredPaymentMethods as n}from\"./utils.js\";function d(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}class o{mapCreatedComponentType(e){return\"card\"===e?\"scheme\":e}has(e){return Boolean(this.paymentMethods.find(t=>t.type===this.mapCreatedComponentType(e)))}find(e){return this.paymentMethods.find(t=>t.type===this.mapCreatedComponentType(e))}findByFundingSource(e,t){const n=this.mapCreatedComponentType(e);return this.paymentMethods.find(e=>e.type===n&&e.fundingSource===t)}findById(e){return this.paymentMethods.find(t=>t._id===e)}findStoredPaymentMethod(e){return this.storedPaymentMethods.find(t=>t.id===e)}constructor(o,s={}){d(this,\"paymentMethods\",[]),d(this,\"storedPaymentMethods\",[]),e(o),this.paymentMethods=o?t(o.paymentMethods,s):[],this.storedPaymentMethods=o?n(o.storedPaymentMethods,s,o.paymentMethods||[]):[]}}export{o as default};\n//# sourceMappingURL=PaymentMethods.js.map\n","import{get3DS2FlowProps as e}from\"../../../components/ThreeDS2/components/utils.js\";import t from\"../../../utils/uuid.js\";const o=(e,o,n,r)=>{const i=o.getComponent(n);if(!i)throw Error(`Action Element of type ${n} not found in the registry`);return new i(e,{...r,id:`${n}-${t()}`})},n=e=>(t,n,r,i)=>{const s={...i,...r,onError:i.onError,statusType:e,originalAction:r};return o(t,n,r.paymentMethodType,s)},r={redirect:(e,t,n,r)=>{const i={...r,...n,statusType:\"redirect\",originalAction:n};return o(e,t,\"redirect\",i)},threeDS2:(t,n,r,i)=>{const s=\"fingerprint\"===r.subtype?\"threeDS2DeviceFingerprint\":\"threeDS2Challenge\",a=\"fingerprint\"===r.subtype||i.isMDFlow?r.paymentData:r.authorisationToken,l={core:t,token:r.token,paymentData:a,onActionHandled:i.onActionHandled,on3DS2RedirectFlowComplete:i.on3DS2RedirectFlowComplete,onAdditionalDetails:i.onAdditionalDetails,onError:i.onError,isDropin:!!i.isDropin,loadingContext:i.loadingContext,clientKey:i.clientKey,paymentMethodType:i.paymentMethodType,challengeWindowSize:i.challengeWindowSize,usePasskeyIFrameAttributes:i.usePasskeyIFrameAttributes,isMDFlow:i.isMDFlow,modules:{analytics:i.modules?.analytics,resources:i.modules?.resources},...e(r.subtype,i)};return o(t,n,s,l)},voucher:n(\"custom\"),qrCode:n(\"custom\"),await:n(\"custom\"),bankTransfer:n(\"custom\"),sdk:n(\"custom\")};export{r as default};\n//# sourceMappingURL=actionTypes.js.map\n","import t from\"./actionTypes.js\";function o(o,n,r,e={}){const i=t[r.type];if(i&&\"function\"==typeof i)return i(o,n,r,e);throw new Error(\"Invalid Action\")}export{o as default,o as getComponentForAction};\n//# sourceMappingURL=PaymentAction.js.map\n","import{httpPost as t}from\"../http.js\";import{API_VERSION as e,API_ERROR_CODE as o}from\"./constants.js\";function n(n,a){const s=`${e}/sessions/${a.id}/payments?clientKey=${a.clientKey}`,r={sessionData:a.data,...n};return t({loadingContext:a.loadingContext,path:s,errorLevel:\"fatal\",errorCode:o.makePayments},r)}export{n as default};\n//# sourceMappingURL=make-payment.js.map\n","import{httpPost as t}from\"../http.js\";import{API_VERSION as e,API_ERROR_CODE as a}from\"./constants.js\";function o(o,n){const s=`${e}/sessions/${n.id}/paymentDetails?clientKey=${n.clientKey}`,i={...n.data&&{sessionData:n.data},...o};return t({loadingContext:n.loadingContext,path:s,errorLevel:\"fatal\",errorCode:a.submitPaymentDetails},i)}export{o as default};\n//# sourceMappingURL=submit-details.js.map\n","import{httpPost as t}from\"../http.js\";import{API_VERSION as o,API_ERROR_CODE as a}from\"./constants.js\";function n(n){const e=`${o}/sessions/${n.id}/donationCampaigns?clientKey=${n.clientKey}`,s={...n.data&&{sessionData:n.data}};return t({loadingContext:n.loadingContext,path:e,errorLevel:\"fatal\",errorCode:a.donationCampaigns},s)}export{n as default};\n//# sourceMappingURL=fetch-donation-campaigns.js.map\n","import{httpPost as t}from\"../http.js\";import{API_VERSION as o,API_ERROR_CODE as n}from\"./constants.js\";function a(a,e){const s=`${o}/sessions/${e.id}/donations?clientKey=${e.clientKey}`,r={...e.data&&{sessionData:e.data},...a};return t({loadingContext:e.loadingContext,path:s,errorLevel:\"fatal\",errorCode:n.donations},r)}export{a as default};\n//# sourceMappingURL=make-donation.js.map\n","import{httpPost as e}from\"../http.js\";import{API_VERSION as r}from\"./constants.js\";function o(o,t){const n=`${r}/sessions/${o.id}/setup?clientKey=${o.clientKey}`,s={browserInfo:t.browserInfo,sessionData:o.data,...t.order?{order:{orderData:t.order.orderData,pspReference:t.order.pspReference}}:{}};return e({loadingContext:o.loadingContext,path:n,errorLevel:\"fatal\"},s)}export{o as default};\n//# sourceMappingURL=setup-session.js.map\n","import{httpPost as t}from\"../http.js\";import{API_VERSION as e}from\"./constants.js\";function n(n,o){const a=`${e}/sessions/${o.id}/paymentMethodBalance?clientKey=${o.clientKey}`,s={sessionData:o.data,...n};return t({loadingContext:o.loadingContext,path:a,errorLevel:\"fatal\"},s)}export{n as default};\n//# sourceMappingURL=check-balance.js.map\n","import{httpPost as t}from\"../http.js\";import{API_VERSION as e,API_ERROR_CODE as o}from\"./constants.js\";function r(r){const n=`${e}/sessions/${r.id}/orders?clientKey=${r.clientKey}`,s={sessionData:r.data};return t({loadingContext:r.loadingContext,path:n,errorLevel:\"fatal\",errorCode:o.createOrder},s)}export{r as default};\n//# sourceMappingURL=create-order.js.map\n","import e from\"../Errors/AdyenCheckoutError.js\";function o(o){if(!o||!o.id)throw new e(\"IMPLEMENTATION_ERROR\",\"Invalid session\");const{shopperLocale:s,shopperEmail:r,telephoneNumber:i,id:n}=o;return{id:n,...o.sessionData?{sessionData:o.sessionData}:{},...s&&{shopperLocale:s},...r&&{shopperEmail:r},...i&&{telephoneNumber:i}}}export{o as sanitizeSession};\n//# sourceMappingURL=utils.js.map\n","import{httpPost as t}from\"../http.js\";import{API_VERSION as e}from\"./constants.js\";function o(o,n){const r=`${e}/sessions/${n.id}/orders/cancel?clientKey=${n.clientKey}`,s={sessionData:n.data,order:o};return t({loadingContext:n.loadingContext,path:r,errorLevel:\"fatal\"},s)}export{o as default};\n//# sourceMappingURL=cancel-order.js.map\n","import s from\"../Services/sessions/make-payment.js\";import t from\"../Services/sessions/submit-details.js\";import e from\"../Services/sessions/fetch-donation-campaigns.js\";import i from\"../Services/sessions/make-donation.js\";import o from\"../Services/sessions/setup-session.js\";import n from\"../Services/sessions/check-balance.js\";import a from\"../../utils/Storage.js\";import r from\"../Services/sessions/create-order.js\";import{sanitizeSession as h}from\"./utils.js\";import d from\"../Services/sessions/cancel-order.js\";import c from\"../../utils/browserInfo.js\";function u(s,t,e){return t in s?Object.defineProperty(s,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):s[t]=e,s}class D{get shopperLocale(){return this.session.shopperLocale}get id(){return this.session.id}get data(){return this.session.sessionData}set sessionsDonationInitiated(s){this._sessionsDonationInitiated=s}get sessionsDonationInitiated(){return this._sessionsDonationInitiated}updateSessionData(s){this.session.sessionData=s,this.storeSession()}setupSession(s){const t={...s,browserInfo:c()};return o(this,t).then(s=>(s.configuration&&(this.configuration={...s.configuration}),s.sessionData&&this.updateSessionData(s.sessionData),s))}submitPayment(t){return s(t,this).then(s=>(s.sessionData&&this.updateSessionData(s.sessionData),s))}submitDetails(s){return t(s,this).then(s=>(s.sessionData&&this.updateSessionData(s.sessionData),s))}fetchDonationCampaigns(){return e(this).then(s=>(s.sessionData&&this.updateSessionData(s.sessionData),s))}makeDonation(s){return i(s,this).then(s=>(s.sessionData&&this.updateSessionData(s.sessionData),s))}checkBalance(s){return n(s,this).then(s=>(s.sessionData&&this.updateSessionData(s.sessionData),s))}createOrder(){return r(this).then(s=>(s.sessionData&&this.updateSessionData(s.sessionData),s))}cancelOrder(s){return d(s.order,this).then(s=>(s.sessionData&&this.updateSessionData(s.sessionData),s))}getStoredSession(){const s=this.storage.get();return this.id===s?.id?s:this.session}storeSession(){this.storage.set({id:this.session.id,sessionData:this.session.sessionData})}removeStoredSession(){this.storage.remove()}constructor(s,t,e){u(this,\"storage\",void 0),u(this,\"session\",void 0),u(this,\"clientKey\",void 0),u(this,\"loadingContext\",void 0),u(this,\"configuration\",void 0),u(this,\"_sessionsDonationInitiated\",void 0);const i=h(s);if(!t)throw new Error(\"No clientKey available\");if(!e)throw new Error(\"No loadingContext available\");this.storage=new a(\"session\",\"localStorage\"),this.clientKey=t,this.loadingContext=e,this.session=i,this._sessionsDonationInitiated=!1,this.session.sessionData?this.storeSession():this.session=this.getStoredSession()}}export{D as default};\n//# sourceMappingURL=CheckoutSession.js.map\n","import e from\"../Errors/AdyenCheckoutError.js\";function r(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}class t{getImage(e={}){return this.getImageUrl({...e,resourceContext:this.resourceContext})}constructor(t){if(r(this,\"resourceContext\",void 0),r(this,\"returnImage\",({name:e,resourceContext:r,imageFolder:t=\"\",parentFolder:o=\"\",extension:n,size:s=\"\",subFolder:i=\"\"})=>`${r}images/${t}${i}${o}${e}${s}.${n}`),r(this,\"getImageUrl\",({resourceContext:e,extension:r=\"svg\",...t})=>o=>{const n={extension:r,resourceContext:e,imageFolder:\"logos/\",parentFolder:\"\",name:o,...t};return this.returnImage(n)}),!t)throw new e(\"IMPLEMENTATION_ERROR\",'Resources module: \"environmentsUrls.cdn\" is not a valid URL');this.resourceContext=t}}export{t as Resources};\n//# sourceMappingURL=Resources.js.map\n","import{createElement as e,Fragment as t}from\"../../external/preact/dist/preact.js\";import{useRef as r,useState as n}from\"../../external/preact/hooks/dist/hooks.js\";function s({setComponentRef:s}){const c=r({});Object.keys(c.current).length||s?.(c.current);const[a,l]=n(null),o=r(null),u=r(0),[m,p]=n(0);return c.current.setMessages=e=>{const t=o.current;!!e?.length&&t?.length===e.length&&t.every((t,r)=>t===e[r])&&(u.current+=1,p(u.current)),l(e)},o.current=a,a?e(t,null,a.map(t=>e(\"div\",{key:`${m}-${t}`,className:\"adyen-checkout-sr-panel__msg\"},t))):null}export{s as SRMessages};\n//# sourceMappingURL=SRMessages.js.map\n","import{createElement as e}from\"../../external/preact/dist/preact.js\";import t from\"../../components/internal/BaseElement/BaseElement.js\";import{SRMessages as s}from\"./SRMessages.js\";function n(e,t,s){return t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}class o extends t{get enabled(){return this._enabled}get moveFocus(){return this._moveFocus}setAriaProps(e){if(!this.props.enabled)return;const t=document.querySelector('[class^=\"adyen-checkout-sr-panel\"]');if(t){for(const[s,n]of Object.entries(e))t.setAttribute(s,n);this.props={...this.props,ariaAttributes:{...this.props.ariaAttributes,...e}}}else console.error(\"SRPanel: Failed to set aria props because no panel was found\")}render(){return this.props.enabled?e(\"div\",{className:this.showPanel?\"adyen-checkout-sr-panel\":\"adyen-checkout-sr-panel--sr-only\",role:\"log\",...this.props.ariaAttributes},e(s,{setComponentRef:this.setComponentRef})):null}constructor(e,t){if(super(e,t),n(this,\"srPanelContainer\",null),n(this,\"id\",void 0),n(this,\"showPanel\",void 0),n(this,\"_enabled\",void 0),n(this,\"_moveFocus\",void 0),n(this,\"componentRef\",void 0),n(this,\"setComponentRef\",e=>{this.componentRef=e}),n(this,\"setMessages\",e=>{if(!this.props.enabled)return;let t=null;e&&(t=Array.isArray(e)?e:[e]),this.componentRef.setMessages(t)}),this.id=this.props.id,this.showPanel=!1,this._enabled=!1,this._moveFocus=this.props.moveFocus??!0,this.props.enabled){this._enabled=!0;const e=document.querySelector(this.props.node);if(!e)throw new Error(\"Component could not mount. Root node was not found.\");{const t=document.getElementById(this.id);t&&e.removeChild(t),this.srPanelContainer=document.createElement(\"div\"),this.srPanelContainer.className=\"sr-panel-holder\",this.srPanelContainer.id=this.id,e.appendChild(this.srPanelContainer),this.mount(this.srPanelContainer)}}}}n(o,\"type\",\"srPanel\"),n(o,\"defaultProps\",{enabled:!0,node:\"body\",showPanel:!1,id:\"ariaLiveSRPanel\",ariaAttributes:{\"aria-relevant\":\"all\",\"aria-live\":\"polite\",\"aria-atomic\":\"true\"}});export{o as SRPanel};\n//# sourceMappingURL=SRPanel.js.map\n","import e from\"../components/ThreeDS2/ThreeDS2Challenge.js\";import t from\"../components/ThreeDS2/ThreeDS2DeviceFingerprint.js\";import r from\"../components/Redirect/Redirect.js\";import{TxVariants as n}from\"../components/tx-variants.js\";import o from\"../components/Donation/Donation.js\";function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const i={[n.redirect]:r,[n.threeDS2Challenge]:e,[n.threeDS2DeviceFingerprint]:t,[n.donation]:o};var a=new class{add(...e){this.componentsMap={...this.componentsMap,...this.createComponentsMap(e)}}getComponent(e){const t=this.componentsMap[e];return t||(this.supportedTxVariants.has(e)?void 0:r)}createComponentsMap(e){return e.reduce((e,t)=>{var r;if(!(\"string\"==typeof(r=t).type&&!!r.type))return console.error(\"CoreRegistry: Attempt to register Class failed. The Class is not a valid UIElement\"),e;if(\"dropin\"===t.type)return e;return[t.type,...t.txVariants].filter(e=>e).forEach(r=>{e={...e,[r]:t}}),e},{})}constructor(){s(this,\"componentsMap\",i),s(this,\"supportedTxVariants\",new Set(Object.values(n)))}};export{a as default};\n//# sourceMappingURL=core.registry.js.map\n","const t={exposeLibraryMetadata:!0,showPayButton:!0};export{t as defaultProps};\n//# sourceMappingURL=core.defaultProps.js.map\n","import{httpGet as r}from\"../core/Services/http.js\";import t from\"../packages/server/translations/en-US.json.js\";import{matchLocale as e}from\"./utils.js\";import{DEFAULT_LOCALE as o,CDN_SUPPORTED_LOCALES as s}from\"./constants.js\";function n(r,t,e){return t in r?Object.defineProperty(r,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):r[t]=e,r}class a{async fetchTranslationsFromCdn(e){const o=this.matchLocaleWithCdnSupportedLocales(e);if(\"en-US\"===o)return t;try{return await r({loadingContext:this.cdnUrl,errorLevel:\"fatal\",errorMessage:`Translations: Failed to fetch translations for locale \"${o}\"`,path:`sdk/${this.sdkVersion}/translations/${o}.json`})}catch(r){return console.warn(`LanguageService - fetchTranslationsFromCdn(): Failed to fetch locale \"${o}.\"`,r),t}}matchLocaleWithCdnSupportedLocales(r){return e(r,s)||o}constructor({cdnUrl:r,sdkVersion:t}){n(this,\"cdnUrl\",void 0),n(this,\"sdkVersion\",void 0),this.cdnUrl=r,this.sdkVersion=t}}export{a as LanguageService};\n//# sourceMappingURL=LanguageService.js.map\n","import{Language as t}from\"../language/Language.js\";import e from\"./RiskModule/RiskModule.js\";import o from\"./ProcessResponse/PaymentMethods/PaymentMethods.js\";import s from\"./ProcessResponse/PaymentAction/PaymentAction.js\";import i from\"./Analytics/Analytics.js\";import{processGlobalOptions as n,assertConfigurationPropertiesAreValid as r}from\"./utils.js\";import a from\"./CheckoutSession/CheckoutSession.js\";import{hasOwnProperty as h}from\"../utils/hasOwnProperty.js\";import{Resources as c}from\"./Context/Resources.js\";import{SRPanel as l}from\"./Errors/SRPanel.js\";import m from\"./core.registry.js\";import{sanitizeResponse as d,verifyPaymentDidNotFail as p,cleanupFinalResult as u}from\"../components/internal/UIElement/utils.js\";import y,{IMPLEMENTATION_ERROR as g}from\"./Errors/AdyenCheckoutError.js\";import{THREEDS2_FULL as f}from\"../components/ThreeDS2/constants.js\";import{defaultProps as C}from\"./core.defaultProps.js\";import{resolveEnvironments as v}from\"./Environment/Environment.js\";import{LIBRARY_BUNDLE_TYPE as A,LIBRARY_VERSION as w}from\"./config.js\";import{AnalyticsLogEvent as j,LogEventType as b}from\"./Analytics/events/AnalyticsLogEvent.js\";import E from\"./Errors/CancelError.js\";import{AnalyticsService as P}from\"./Analytics/AnalyticsService.js\";import{AnalyticsEventQueue as T}from\"./Analytics/AnalyticsEventQueue.js\";import{isAmountValid as M}from\"../utils/amount-util.js\";import{LanguageService as U}from\"../language/LanguageService.js\";function I(t,e,o){return e in t?Object.defineProperty(t,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[e]=o,t}class k{static setBundleType(t){k.metadata.bundleType=t}static register(...t){m.add(...t)}register(...t){m.add(...t)}getComponent(t){return m.getComponent(t)}async initialize(){return await this.initializeCore(),this.validateCoreConfiguration(),this.createCoreModules(),this.assignLocaleToCore(),this.requestAnalyticsAttemptId(),await this.requestTranslations(),this}async initializeCore(){return this.session?this.session.setupSession(this.options).then(t=>{const{amount:e,shopperLocale:o,countryCode:s,paymentMethods:i,...n}=t;return this.setOptions({...n,amount:this.options.order?this.options.order.remainingAmount:e,locale:this.options.locale||o,countryCode:this.options.countryCode||s}),this.createPaymentMethodsList(i),this}).catch(t=>(this.options.onError&&this.options.onError(t),Promise.reject(t))):(this.createPaymentMethodsList(),Promise.resolve(this))}validateCoreConfiguration(){if(this.options.paymentMethodsConfiguration&&console.warn('WARNING: \"paymentMethodsConfiguration\" is supported only by Drop-in.'),!this.options.countryCode)throw new y(g,\"You must specify a countryCode when initializing checkout.\")}submitDetails(t){let e=null;this.options.onAdditionalDetails&&(e=new Promise((e,o)=>{this.options.onAdditionalDetails({data:t},void 0,{resolve:e,reject:o})})),this.session&&(e=this.session.submitDetails(t).catch(t=>(this.options.onError?.(t),Promise.reject(t)))),e?e.then(d).then(p).then(this.afterAdditionalDetails).then(t=>{u(t),this.options.onPaymentCompleted?.(t)}).catch(t=>{t instanceof E||(u(t),this.options.onPaymentFailed?.(t))}):this.options.onError?.(new y(\"IMPLEMENTATION_ERROR\",'It can not submit the details. The callback \"onAdditionalDetails\" or the Session is not setup correctly.'))}createFromAction(t,e={}){if(!t||!t.type){if(h(t,\"action\")&&h(t,\"resultCode\"))throw new Error('createFromAction::Invalid Action - the passed action object itself has an \"action\" property and a \"resultCode\": have you passed in the whole response object by mistake?');throw new Error('createFromAction::Invalid Action - the passed action object does not have a \"type\" property')}if(t.type){const o=t.type===f?`${t.type}${t.subtype}`:t.paymentMethodType,i=new j({type:b.action,subType:j.getSubtypeFromActionType(t.type),message:`${o} action was handled by the SDK`,component:o});this.modules.analytics.sendAnalytics(i);const n={...this.getCorePropsForComponent(),...e};return s(this,m,t,n)}return this.handleCreateError()}update(t={},{shouldReinitializeCheckout:e=!0}={}){if(e)return this.setOptions(t),this.initialize().then(()=>(this.components.forEach(e=>{const o={...t.order?.remainingAmount?{amount:t.order.remainingAmount}:{amount:this.options.amount},...this.session&&{session:this.session},...t};e.update(o)}),this));const{amount:o,secondaryAmount:s}=t;return(o||s)&&this.triggerAmountUpdate(o,s),Promise.resolve(this)}triggerAmountUpdate(t,e){M(t)?!e||M(e)?(this.setOptions({amount:t,...e&&{secondaryAmount:e}}),this.components.forEach(o=>{o.updateAmount(t,e)})):console.warn(\"Core update(): Update canceled. Invalid secondary amount object\"):console.warn(\"Core update(): Update canceled. Invalid amount object\")}getCorePropsForComponent(){return{...n(this.options),core:this,i18n:this.modules.i18n,modules:this.modules,session:this.session,loadingContext:this.loadingContext,cdnContext:this.cdnImagesUrl,createFromAction:this.createFromAction}}storeElementReference(t){t&&this.components.push(t)}handleCreateError(t){const e=t?`${t?.name??\"The passed payment method\"} is not a valid Checkout Component. What was passed as a txVariant was: ${JSON.stringify(t)}. Check if this payment method is configured in the Backoffice or if the txVariant is a valid one`:\"No Payment Method component was passed\";throw new Error(e)}createPaymentMethodsList(t){this.paymentMethodsResponse=new o(this.options.paymentMethodsResponse||t,this.options)}createCoreModules(){this.modules||(this.modules=Object.freeze({risk:new e(this,{...this.options,loadingContext:this.loadingContext}),analytics:new i({eventQueue:new T,service:new P({analyticsContext:this.analyticsContext,clientKey:this.options.clientKey}),enabled:this.options.analytics?.enabled,analyticsData:this.options.analytics?.analyticsData}),resources:new c(this.cdnImagesUrl),i18n:new t({locale:this.options.locale,customTranslations:this.options.translations,service:new U({cdnUrl:this.cdnTranslationsUrl,sdkVersion:k.metadata.version}),onError:this.options?.onError}),srPanel:new l(this,{...this.options.srConfig})}))}assignLocaleToCore(){this.options.locale=this.modules.i18n.locale}async requestTranslations(){try{await this.modules.i18n.requestTranslations()}catch(t){console.warn(\"Core - requestTranslations(): Something went wrong.\",t)}}async requestAnalyticsAttemptId(){await this.modules.analytics.setUp({locale:this.options.locale,...this.session?.id&&{sessionId:this.session.id}})}constructor(t){I(this,\"session\",void 0),I(this,\"paymentMethodsResponse\",void 0),I(this,\"modules\",void 0),I(this,\"options\",void 0),I(this,\"analyticsContext\",void 0),I(this,\"loadingContext\",void 0),I(this,\"cdnImagesUrl\",void 0),I(this,\"cdnTranslationsUrl\",void 0),I(this,\"components\",[]),I(this,\"afterAdditionalDetails\",t=>{if(this.options.afterAdditionalDetails&&t?.action){const e=this.createFromAction(t.action);return this.options.afterAdditionalDetails(e),Promise.reject(new E(\"Handled by afterAdditionalDetails\"))}return Promise.resolve(t)}),I(this,\"remove\",t=>(this.components=this.components.filter(e=>e._id!==t._id),t.unmount(),this)),I(this,\"setOptions\",t=>{this.options={...this.options,...t,locale:t?.locale||this.options?.locale,environment:String.prototype.toLowerCase.apply(t?.environment||this.options?.environment)}}),r(t),this.createFromAction=this.createFromAction.bind(this),this.update=this.update.bind(this),this.setOptions({...C,...t});const{apiUrl:e,analyticsUrl:o,cdnImagesUrl:s,cdnTranslationsUrl:i}=v(this.options.environment,this.options._environmentUrls);this.loadingContext=e,this.analyticsContext=o,this.cdnImagesUrl=s,this.cdnTranslationsUrl=i,this.session=this.options.session&&new a(this.options.session,this.options.clientKey,this.loadingContext);const n=this.options.clientKey?.substring(0,4);if((\"test\"===n||\"live\"===n)&&!this.loadingContext.includes(n))throw new y(\"IMPLEMENTATION_ERROR\",`Error: you are using a ${n} clientKey against the ${this.options._environmentUrls?.api||this.options.environment} environment`);\"pub.\"===n&&console.debug(`The value you are passing as your \"clientKey\" looks like an originKey (${this.options.clientKey?.substring(0,12)}..). Although this is supported it is not the recommended way to integrate. To generate a clientKey, see the documentation (https://docs.adyen.com/development-resources/client-side-authentication/migrate-from-origin-key-to-client-key/) for more details.`),this.options.exposeLibraryMetadata&&(window.AdyenWebMetadata=k.metadata)}}I(k,\"metadata\",{version:w,bundleType:A}),I(k,\"registry\",m);export{k as default};\n//# sourceMappingURL=core.js.map\n","import e from\"./core.js\";async function t(t){const r=new e(t);return await r.initialize()}t.register=(...t)=>{e.register(...t)},t.setBundleType=t=>{e.setBundleType(t)};export{t as AdyenCheckout,e as Core};\n//# sourceMappingURL=AdyenCheckout.js.map\n","const CURRENCY_TO_COUNTRY: Record<string, string> = {\n SGD: 'SG',\n USD: 'US',\n HKD: 'HK',\n AUD: 'AU',\n GBP: 'GB',\n EUR: 'DE',\n CNY: 'CN',\n JPY: 'JP',\n};\n\nexport function countryFromCurrency(currency: string): string {\n return CURRENCY_TO_COUNTRY[currency.toUpperCase()] ?? 'SG';\n}\n","import { wordmark } from './ui';\nimport { el } from '../../core/dom';\n\nexport type ThreeDSMessage =\n | { code: '3DS-Success'; resultCode?: string; pspReference?: string }\n | { code: '3DS-Error'; resultCode?: string; error?: { message?: string } }\n | { success?: boolean; message?: string };\n\nexport function openThreeDSModal(opts: {\n url?: string;\n showWordmark?: boolean;\n onSuccess: () => void;\n onError: (message: string) => void;\n mountAdyen?: (container: HTMLElement) => void;\n}): () => void {\n const overlay = el('div', { class: 'fy fy-threeds-overlay', role: 'dialog', 'aria-modal': 'true' });\n const box = el('div', { class: 'fy-threeds-box' });\n const header = el('div', {\n class: 'flex items-center justify-between border-b border-zinc-200 px-4 py-3',\n });\n const title = el('div', { class: 'flex flex-col gap-0.5' });\n title.append(el('p', { class: 'text-sm font-semibold', text: 'Secure authentication' }));\n if (opts.showWordmark !== false) title.append(wordmark());\n const close = el('button', {\n type: 'button',\n class: 'rounded-md px-2 py-1 text-sm text-zinc-500 hover:bg-zinc-100',\n text: 'Close',\n }) as HTMLButtonElement;\n header.append(title, close);\n const body = el('div', { class: 'relative min-h-0 flex-1 bg-white' });\n\n let iframe: HTMLIFrameElement | null = null;\n if (opts.url) {\n iframe = el('iframe', {\n src: opts.url,\n title: '3-D Secure authentication',\n allow: 'payment',\n }) as HTMLIFrameElement;\n iframe.style.cssText = 'width:100%;height:100%;border:0;display:block;';\n body.append(iframe);\n }\n box.append(header, body);\n overlay.append(box);\n document.body.append(overlay);\n\n const onMessage = (event: MessageEvent) => {\n const data = event.data as ThreeDSMessage | undefined;\n if (!data || typeof data !== 'object') return;\n if ('code' in data && data.code === '3DS-Success') {\n cleanup();\n opts.onSuccess();\n return;\n }\n if ('code' in data && data.code === '3DS-Error') {\n cleanup();\n opts.onError(data.error?.message || data.resultCode || '3-D Secure failed');\n return;\n }\n if ('success' in data && data.success === false) {\n cleanup();\n opts.onError(data.message || '3-D Secure failed');\n }\n };\n\n window.addEventListener('message', onMessage);\n\n function cleanup() {\n window.removeEventListener('message', onMessage);\n overlay.remove();\n }\n\n close.addEventListener('click', () => {\n cleanup();\n opts.onError('Authentication cancelled');\n });\n\n if (opts.mountAdyen) {\n opts.mountAdyen(body);\n }\n\n return cleanup;\n}\n","import { AdyenCheckout, ApplePay, Card, GooglePay } from '@adyen/adyen-web';\nimport type { ConfirmPaymentRequest, PaymentData } from '../types';\nimport { FinyxClient } from '../api/client';\nimport { countryFromCurrency } from '../api/country';\nimport { openThreeDSModal } from '../components/shared/ThreeDSModal';\nimport { parseSafeHttpUrl } from '../core/dom';\n\ntype AdyenComponent = {\n mount: (el: HTMLElement | string) => AdyenComponent;\n unmount?: () => void;\n handleAction?: (action: unknown) => void;\n};\n\ntype AdyenCtor = new (checkout: unknown, config?: Record<string, unknown>) => AdyenComponent;\n\nfunction componentCtor(methodType: string): AdyenCtor {\n if (methodType === 'applepay') return ApplePay as unknown as AdyenCtor;\n if (methodType === 'googlepay') return GooglePay as unknown as AdyenCtor;\n return Card as unknown as AdyenCtor;\n}\n\nexport async function mountAdyenFields(opts: {\n container: HTMLElement;\n client: FinyxClient;\n paymentId: string;\n methodType: string;\n paymentData: PaymentData;\n amount: number;\n currency: string;\n showWordmark: boolean;\n onSuccess: () => void;\n onError: (message: string) => void;\n}): Promise<() => void> {\n const clientKey = opts.paymentData.clientKey;\n if (!clientKey) {\n throw new Error('Adyen client key is missing.');\n }\n\n let component: AdyenComponent | null = null;\n let closeModal: (() => void) | null = null;\n\n const checkout = await AdyenCheckout({\n clientKey,\n environment: (opts.paymentData.environment as 'test' | 'live') || 'test',\n locale: opts.paymentData.locale || 'en-US',\n countryCode: countryFromCurrency(opts.currency),\n amount: {\n value: Math.round(opts.amount * 100),\n currency: opts.currency,\n },\n onSubmit: async (state, cmp) => {\n if (!state.isValid) return;\n const data = state.data as {\n paymentMethod?: Record<string, unknown>;\n browserInfo?: Record<string, unknown>;\n };\n await handleConfirm(\n {\n paymentMethod: data.paymentMethod,\n browserInfo: data.browserInfo,\n },\n cmp as unknown as AdyenComponent,\n );\n },\n onAdditionalDetails: async (state) => {\n const data = state.data as { details?: Record<string, unknown>; paymentData?: string };\n await handleConfirm(\n {\n details: data.details,\n paymentData: data.paymentData,\n },\n component,\n );\n },\n onError: (error) => {\n opts.onError(error?.message || 'Adyen checkout error');\n },\n });\n\n const Ctor = componentCtor(opts.methodType);\n component = new Ctor(checkout, { showPayButton: true }).mount(opts.container);\n\n async function handleConfirm(payload: ConfirmPaymentRequest, cmp: AdyenComponent | null) {\n const result = await opts.client.confirmPayment(opts.paymentId, payload);\n if (!result.ok) {\n opts.onError(result.message);\n return;\n }\n const action = result.data.paymentData?.action;\n const resultCode = result.data.paymentData?.resultCode;\n if (action) {\n const actionType = String(action.type || '');\n const url = parseSafeHttpUrl(action.url);\n if ((actionType === 'redirect' || actionType === 'redirect_iframe') && url) {\n closeModal = openThreeDSModal({\n url,\n showWordmark: opts.showWordmark,\n onSuccess: opts.onSuccess,\n onError: opts.onError,\n });\n return;\n }\n closeModal = openThreeDSModal({\n showWordmark: opts.showWordmark,\n onSuccess: opts.onSuccess,\n onError: opts.onError,\n mountAdyen: (body) => {\n body.append(opts.container);\n try {\n cmp?.handleAction?.(action);\n } catch {\n body.append('Could not present 3-D Secure challenge.');\n }\n },\n });\n return;\n }\n if (resultCode === 'Authorised' || result.data.payment.transactionStatus === 'Authorised') {\n opts.onSuccess();\n return;\n }\n if (resultCode && resultCode !== 'Pending' && resultCode !== 'Received') {\n opts.onError(resultCode);\n }\n }\n\n return () => {\n closeModal?.();\n component?.unmount?.();\n };\n}\n\nexport function isAdyenProvider(provider: string | undefined): boolean {\n return String(provider || '').toUpperCase() === 'ADYEN';\n}\n","// src/constant/common.ts\nfunction _array_like_to_array(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];\n return arr2;\n}\nfunction _array_with_holes(arr) {\n if (Array.isArray(arr)) return arr;\n}\nfunction _array_without_holes(arr) {\n if (Array.isArray(arr)) return _array_like_to_array(arr);\n}\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nfunction _async_to_generator(fn) {\n return function() {\n var self = this, args = arguments;\n return new Promise(function(resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _instanceof(left, right) {\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nfunction _iterable_to_array(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nfunction _iterable_to_array_limit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _s, _e;\n try {\n for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){\n _arr.push(_s.value);\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally{\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally{\n if (_d) throw _e;\n }\n }\n return _arr;\n}\nfunction _non_iterable_rest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _non_iterable_spread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _object_spread(target) {\n for(var i = 1; i < arguments.length; i++){\n var source = arguments[i] != null ? arguments[i] : {};\n var ownKeys = Object.keys(source);\n if (typeof Object.getOwnPropertySymbols === \"function\") {\n ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {\n return Object.getOwnPropertyDescriptor(source, sym).enumerable;\n }));\n }\n ownKeys.forEach(function(key) {\n _define_property(target, key, source[key]);\n });\n }\n return target;\n}\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) {\n symbols = symbols.filter(function(sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _object_spread_props(target, source) {\n source = source != null ? source : {};\n if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function(key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nfunction _sliced_to_array(arr, i) {\n return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();\n}\nfunction _to_consumable_array(arr) {\n return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction _unsupported_iterable_to_array(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _array_like_to_array(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(n);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);\n}\nfunction _ts_generator(thisArg, body) {\n var f, y, t, g, _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n };\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(_)try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\nvar SeverityType = /* @__PURE__ */ function(SeverityType2) {\n SeverityType2[\"VERBOSE\"] = \"verbose\";\n SeverityType2[\"ERROR\"] = \"error\";\n SeverityType2[\"WARN\"] = \"warn\";\n SeverityType2[\"INFO\"] = \"info\";\n SeverityType2[\"HTTP\"] = \"http\";\n SeverityType2[\"AUTO_DETECT_ERROR\"] = \"autoDetectError\";\n SeverityType2[\"PERFORMANCE\"] = \"performance\";\n SeverityType2[\"SPEED\"] = \"speed\";\n SeverityType2[\"AUTO_DETECT_EVENT\"] = \"autoDetectEvent\";\n return SeverityType2;\n}(SeverityType || {});\nvar Environment = /* @__PURE__ */ function(Environment2) {\n Environment2[\"production\"] = \"prod\";\n Environment2[\"demo\"] = \"demo\";\n Environment2[\"staging\"] = \"staging\";\n return Environment2;\n}(Environment || {});\nvar NetworkType = /* @__PURE__ */ function(NetworkType2) {\n NetworkType2[\"unknown\"] = \"unknown\";\n NetworkType2[\"wifi\"] = \"wifi\";\n NetworkType2[\"net2g\"] = \"net2g\";\n NetworkType2[\"net3g\"] = \"net3g\";\n NetworkType2[\"net4g\"] = \"net4g\";\n NetworkType2[\"net5g\"] = \"net5g\";\n return NetworkType2;\n}(NetworkType || {});\nvar AutoDetectedEventType = /* @__PURE__ */ function(AutoDetectedEventType2) {\n AutoDetectedEventType2[\"onPageChange\"] = \"onPageChange\";\n AutoDetectedEventType2[\"onPageRetention\"] = \"onPageRetention\";\n AutoDetectedEventType2[\"httpClientMetrics\"] = \"httpClientMetrics\";\n return AutoDetectedEventType2;\n}(AutoDetectedEventType || {});\n// src/constant/config.ts\nvar UNKNOWN_VALUE = \"airTracker_unknown\";\nvar DEFAULT_CONFIG = {\n appName: UNKNOWN_VALUE,\n appVersion: UNKNOWN_VALUE,\n env: \"staging\" /* staging */ ,\n isWebappContainer: false,\n delay: 2e3,\n errorRepeatTime: 3,\n enableErrorMonitoring: false,\n assetSpeedMonitoringWhiteList: [],\n enableDetectPageChange: false,\n enableRecordPageRetention: false,\n hideSearchParams: false,\n useSessionStorageForSessionId: false,\n assetSpeedMonitoringWhiteListByMFE: {}\n};\nvar DEFAULT_COMMON_DATA = {\n appName: UNKNOWN_VALUE,\n env: \"staging\" /* staging */ ,\n sessionId: UNKNOWN_VALUE,\n deviceId: UNKNOWN_VALUE\n};\n// src/util/jsonHelper.ts\nvar isJSON = function(str) {\n if (!str) {\n return false;\n }\n if (/^\\s*$/.test(str)) return false;\n str = str.replace(/\\\\(?:[\"\\\\\\/bfnrt]|u[0-9a-fA-F]{4})/g, \"@\");\n str = str.replace(/\"[^\"\\\\\\n\\r]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?/g, \"]\");\n str = str.replace(/(?:^|:|,)(?:\\s*\\[)+/g, \"\");\n return /^[\\],:{}\\s]*$/.test(str);\n};\nvar safeReplacer = function() {\n var seen = /* @__PURE__ */ new WeakSet();\n return function(key, value) {\n if (_instanceof(value, Error)) {\n return \"Error.message: \".concat(value.message, \" \\n Error.stack: \").concat(value.stack);\n }\n if ((typeof value === \"undefined\" ? \"undefined\" : _type_of(value)) === \"object\" && value !== null) {\n if (seen.has(value)) {\n return \"[Circular \".concat(key || \"root\", \"]\");\n }\n seen.add(value);\n }\n if (typeof value === \"function\") {\n return \"function\";\n }\n if ((typeof value === \"undefined\" ? \"undefined\" : _type_of(value)) === \"symbol\") {\n return \"symbol\";\n }\n if (typeof value === \"undefined\") {\n return null;\n }\n return value;\n };\n};\nvar safeStringify = function(obj) {\n if (typeof obj === \"string\") {\n return obj;\n }\n try {\n if (_instanceof(obj, Error)) {\n return (JSON.stringify(obj, safeReplacer()) || \"undefined\").replace(/\"/gim, \"\");\n }\n return JSON.stringify(obj, safeReplacer());\n } catch (e) {\n return '{\"error\":\"error happen when airTracker stringify\"}';\n }\n};\n// src/util/http.ts\nvar request = function(param) {\n var _param_method = param.method, method = _param_method === void 0 ? \"post\" : _param_method, url = param.url, data = param.data, success = param.success, fail = param.fail;\n if (!isJSON(data)) {\n return;\n }\n var xhr = new XMLHttpRequest();\n xhr.addEventListener(\"readystatechange\", function() {\n if (xhr.readyState === 4) {\n if (xhr.status >= 400 || xhr.status === 0) {\n fail === null || fail === void 0 ? void 0 : fail(xhr.response);\n } else {\n success === null || success === void 0 ? void 0 : success(xhr.response);\n }\n }\n });\n xhr.open(method, url);\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\n xhr.send(data);\n};\n// src/constant/lifeCycleEventName.ts\nvar lifeCycleEventName = {\n onInit: \"onInit\",\n onConfigInit: \"onConfigInit\",\n onConfigUpdated: \"onConfigUpdated\",\n onCommonDataInit: \"onCommonDataInit\",\n onCommonUpdated: \"onCommonUpdated\",\n onPageChange: \"onPageChange\",\n onDestroy: \"onDestroy,\"\n};\n// src/constant/index.ts\nvar DEVICE_ID_STORAGE_KEY = \"AIR_ANALYTICS_DEVICE_ID\";\nvar SESSION_ID_STORAGE_KEY = \"AIR_ANALYTICS_SESSION_ID\";\nvar RISK_DEVICE_ID_STORAGE_KEY = \"AWX_RISK_ID\";\nvar loggingServiceUrl = function(env) {\n if (env == \"prod\" /* production */ ) {\n return \"https://o11y.airwallex.com/airtracker/logs\";\n }\n if (env == \"demo\" /* demo */ ) {\n return \"https://o11y-demo.airwallex.com/airtracker/logs\";\n }\n return \"https://o11y-staging.airwallex.com/airtracker/logs\";\n};\nvar loggingServiceMetricsUrl = function(env) {\n if (env == \"prod\" /* production */ ) {\n return \"https://o11y.airwallex.com/airtracker/metrics\";\n }\n if (env == \"demo\" /* demo */ ) {\n return \"https://o11y-demo.airwallex.com/airtracker/metrics\";\n }\n return \"https://o11y-staging.airwallex.com/airtracker/metrics\";\n};\n// src/util/index.ts\nvar generateUId = function() {\n var deviceId = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g, function(c) {\n var r = Math.random() * 16 | 0;\n var v = c === \"x\" ? r : r & 3 | 8;\n return v.toString(16);\n });\n return deviceId;\n};\nvar getMFEName = function(airTracker2) {\n var _location_pathname_split, _location_pathname, _location;\n if (airTracker2.config.getMFEName) {\n return airTracker2.config.getMFEName();\n }\n return ((_location = location) === null || _location === void 0 ? void 0 : (_location_pathname = _location.pathname) === null || _location_pathname === void 0 ? void 0 : (_location_pathname_split = _location_pathname.split(\"/\")) === null || _location_pathname_split === void 0 ? void 0 : _location_pathname_split[2]) || \"unknown\";\n};\nvar getSessionId = function() {\n try {\n var sessionId = window.sessionStorage.getItem(SESSION_ID_STORAGE_KEY);\n if (!sessionId) {\n sessionId = generateUId();\n window.sessionStorage.setItem(SESSION_ID_STORAGE_KEY, sessionId);\n }\n return sessionId;\n } catch (e) {\n return generateUId();\n }\n};\nvar getDeviceId = function() {\n try {\n var deviceId = window.localStorage.getItem(DEVICE_ID_STORAGE_KEY);\n if (!deviceId) {\n deviceId = generateUId();\n window.localStorage.setItem(DEVICE_ID_STORAGE_KEY, deviceId);\n }\n return deviceId;\n } catch (e) {}\n};\nvar getRiskDeviceId = function() {\n try {\n var deviceId = window.localStorage.getItem(RISK_DEVICE_ID_STORAGE_KEY);\n return deviceId || void 0;\n } catch (e) {}\n};\nvar getNetworkType = function() {\n var _navigator;\n var netType = \"\";\n var arr = navigator.userAgent.match(/NetType\\/(\\w+)/);\n if (arr) {\n var ref;\n ref = _sliced_to_array(arr, 2), netType = ref[1], ref;\n } else if ((_navigator = navigator) === null || _navigator === void 0 ? void 0 : _navigator.connection) {\n var _navigator_connection, _navigator1, _navigator_connection1, _navigator2;\n netType = ((_navigator1 = navigator) === null || _navigator1 === void 0 ? void 0 : (_navigator_connection = _navigator1.connection) === null || _navigator_connection === void 0 ? void 0 : _navigator_connection.effectiveType) || ((_navigator2 = navigator) === null || _navigator2 === void 0 ? void 0 : (_navigator_connection1 = _navigator2.connection) === null || _navigator_connection1 === void 0 ? void 0 : _navigator_connection1.type);\n }\n if (!netType) {\n netType = \"unknown\";\n }\n return parseNetType(netType);\n};\nvar parseNetType = function(net) {\n net = String(net).toLowerCase();\n if (net.indexOf(\"4g\") >= 0) return \"net4g\" /* net4g */ ;\n if (net.indexOf(\"wifi\") >= 0) return \"wifi\" /* wifi */ ;\n if (net.indexOf(\"5g\") >= 0) return \"net5g\" /* net5g */ ;\n if (net.indexOf(\"3g\") >= 0) return \"net3g\" /* net3g */ ;\n if (net.indexOf(\"2g\") >= 0) return \"net2g\" /* net2g */ ;\n return \"unknown\" /* unknown */ ;\n};\nvar canUseResourceTiming = function canUseResourceTiming() {\n return typeof window.performance !== \"undefined\" && typeof window.performance.clearResourceTimings === \"function\" && typeof window.performance.getEntriesByType === \"function\" && typeof window.performance.now === \"function\";\n};\nvar formatUrl = function(url) {\n if (typeof url === \"string\") {\n var hostUrl = url.split(\"?\")[0] || \"\";\n return hostUrl.slice(0, 200);\n }\n return url;\n};\nvar getQueryString = function(url) {\n if (typeof url === \"string\") {\n return url.split(\"?\")[1] || \"\";\n }\n return url;\n};\nvar urlIsHttps = function(url) {\n var isHostProtocol = typeof url === \"string\" && url.startsWith(\"//\");\n return isHostProtocol ? typeof location !== \"undefined\" && location.protocol === \"https:\" : /^https/.test(url);\n};\nvar getReportVal = function(rawVal, isDefaultByString) {\n if (typeof rawVal === \"number\") {\n return rawVal;\n }\n if (typeof rawVal === \"string\") {\n return rawVal;\n }\n return isDefaultByString ? \"\" /* string */ : -1 /* number */ ;\n};\nvar checkIfInWhiteList = function(url, airTracker2) {\n var _airTracker2_config_assetSpeedMonitoringWhiteListByMFE;\n var isInWhiteList = false;\n if (!airTracker2.config.isWebappContainer) {\n isInWhiteList = checkIfInWhiteListHelper(url, airTracker2.config.assetSpeedMonitoringWhiteList);\n return isInWhiteList;\n }\n var MFEName = getMFEName(airTracker2);\n return isInWhiteList || checkIfInWhiteListHelper(url, (_airTracker2_config_assetSpeedMonitoringWhiteListByMFE = airTracker2.config.assetSpeedMonitoringWhiteListByMFE) === null || _airTracker2_config_assetSpeedMonitoringWhiteListByMFE === void 0 ? void 0 : _airTracker2_config_assetSpeedMonitoringWhiteListByMFE[MFEName]);\n};\nvar checkIfInWhiteListHelper = function(url, whiteList) {\n if (!(whiteList === null || whiteList === void 0 ? void 0 : whiteList.length)) {\n return false;\n }\n for(var i = 0; i < whiteList.length; i++){\n var cur = whiteList[i];\n if (_instanceof(cur, RegExp) && cur.test(url)) {\n return true;\n }\n if (typeof cur == \"string\" && url.includes(cur)) {\n return true;\n }\n }\n return false;\n};\nvar roundSubtract = function(a, b) {\n var precision = 100;\n return Math.round((a - b) * precision) / precision;\n};\n// src/pipes/send.ts\nvar sendNormalLogPipe = function(airTracker2) {\n return function(logs) {\n var _airTracker2_MFECommonDataMap, _navigator;\n var MFEName = getMFEName(airTracker2);\n var commonData = airTracker2.config.isWebappContainer ? _object_spread({}, airTracker2.commonData || {}, ((_airTracker2_MFECommonDataMap = airTracker2.MFECommonDataMap) === null || _airTracker2_MFECommonDataMap === void 0 ? void 0 : _airTracker2_MFECommonDataMap[MFEName]) || {}) : airTracker2.commonData;\n var data = Array.isArray(logs) ? logs : [\n logs\n ];\n if (data.length === 0) {\n return;\n }\n var finalLog = {\n commonData: commonData,\n data: data\n };\n var dataBody = safeStringify(finalLog);\n var sendOptions = {\n method: \"post\",\n url: loggingServiceUrl(airTracker2.commonData.env),\n data: dataBody\n };\n if (typeof ((_navigator = navigator) === null || _navigator === void 0 ? void 0 : _navigator.sendBeacon) === \"function\") {\n var success = navigator.sendBeacon(sendOptions.url, dataBody);\n if (!success) {\n request(sendOptions);\n }\n } else {\n request(sendOptions);\n }\n };\n};\nvar sendMetricsLogPipe = function(airTracker2) {\n return function(logs) {\n var _airTracker2_MFECommonDataMap, _navigator;\n var MFEName = getMFEName(airTracker2);\n var commonData = airTracker2.config.isWebappContainer ? _object_spread({}, airTracker2.commonData || {}, ((_airTracker2_MFECommonDataMap = airTracker2.MFECommonDataMap) === null || _airTracker2_MFECommonDataMap === void 0 ? void 0 : _airTracker2_MFECommonDataMap[MFEName]) || {}) : airTracker2.commonData;\n var finalLog = {\n commonData: commonData,\n data: Array.isArray(logs) ? logs : [\n logs\n ]\n };\n var dataBody = safeStringify(finalLog);\n var sendOptions = {\n method: \"post\",\n url: loggingServiceMetricsUrl(airTracker2.commonData.env),\n data: dataBody\n };\n if (typeof ((_navigator = navigator) === null || _navigator === void 0 ? void 0 : _navigator.sendBeacon) === \"function\") {\n var success = navigator.sendBeacon(sendOptions.url, dataBody);\n if (!success) {\n request(sendOptions);\n }\n } else {\n request(sendOptions);\n }\n };\n};\n// src/pipes/throttle.ts\nvar throttlePipe = function(airTracker2, maxLength) {\n var timer;\n var retainedLogs = [];\n var config = airTracker2.config;\n window.addEventListener(\"beforeunload\", function() {\n if (retainedLogs.length > 0) {\n airTracker2.immediateSendPipe(retainedLogs.splice(0, retainedLogs.length));\n timer && clearTimeout(timer);\n }\n });\n return function(log, resolve) {\n retainedLogs.push(log);\n airTracker2.lifeCycle.on(lifeCycleEventName.onCommonUpdated, function() {\n if (retainedLogs.length > 0) {\n resolve === null || resolve === void 0 ? void 0 : resolve(retainedLogs.splice(0, retainedLogs.length));\n airTracker2.lifeCycle.remove(lifeCycleEventName.onCommonUpdated);\n timer && clearTimeout(timer);\n }\n });\n if (maxLength && retainedLogs.length >= maxLength) {\n resolve === null || resolve === void 0 ? void 0 : resolve(retainedLogs.splice(0, retainedLogs.length));\n timer && clearTimeout(timer);\n return;\n }\n timer && clearTimeout(timer);\n timer = setTimeout(function() {\n timer = null;\n if (retainedLogs.length > 0) {\n resolve === null || resolve === void 0 ? void 0 : resolve(retainedLogs.splice(0, retainedLogs.length));\n airTracker2.lifeCycle.remove(lifeCycleEventName.onCommonUpdated);\n }\n }, config.delay);\n };\n};\n// src/pipes/errorRepeatLimit.ts\nvar errorLogLimitPipe = function(airTracker2) {\n var errorLogMap = {};\n return function(logs, resolve) {\n var maxNum = typeof airTracker2.config.errorRepeatTime === \"number\" ? airTracker2.config.errorRepeatTime : 5;\n if (maxNum === 0) {\n return resolve === null || resolve === void 0 ? void 0 : resolve(logs);\n }\n resolve === null || resolve === void 0 ? void 0 : resolve(logs.filter(function(log) {\n if (log.severity == \"autoDetectError\" /* AUTO_DETECT_ERROR */ ) {\n errorLogMap[log.error] = errorLogMap[log.error] || 0;\n errorLogMap[log.error] += 1;\n if (errorLogMap[log.error] > maxNum) {\n return false;\n }\n return true;\n }\n return true;\n }));\n };\n};\n// src/pipes/index.ts\nvar noop = function() {};\nvar createPipeline = function(pipeArr) {\n if (!pipeArr || !pipeArr.reduce || !pipeArr.length) {\n throw new TypeError(\"createPipeline need at least one function param\");\n }\n if (pipeArr.length === 1) {\n return function(msg, resolve) {\n pipeArr[0](msg, resolve || noop);\n };\n }\n return pipeArr.reduce(function(prePipe, pipe) {\n return function(msg) {\n var nextPipe = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : noop;\n return prePipe(msg, function(msg2) {\n return pipe === null || pipe === void 0 ? void 0 : pipe(msg2, nextPipe);\n });\n };\n });\n};\n// src/util/eventEmitter.ts\nvar EventEmitter = /*#__PURE__*/ function() {\n \"use strict\";\n function EventEmitter() {\n var _this = this;\n _class_call_check(this, EventEmitter);\n this.emit = function(name, data) {\n if (!_this) return;\n var events = _this.eventsList[name];\n var handler;\n if (events === null || events === void 0 ? void 0 : events.length) {\n events = events.slice();\n for(var i = 0; i < events.length; i++){\n handler = events[i];\n try {\n var result = handler.callback.apply(_this, [\n data\n ]);\n if (1 === handler.type) {\n _this.remove(name, handler.callback);\n }\n if (false === result) {\n break;\n }\n } catch (e) {\n throw e;\n }\n }\n }\n return _this;\n };\n this.eventsList = {};\n }\n _create_class(EventEmitter, [\n {\n key: \"indexOf\",\n value: function indexOf(array, value) {\n for(var i = 0; i < array.length; i++){\n if (array[i].callback === value) {\n return i;\n }\n }\n return -1;\n }\n },\n {\n key: \"on\",\n value: function on(name, callback) {\n var type = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : 0;\n if (!this) return;\n var events = this.eventsList[name];\n if (!events) {\n this.eventsList[name] = [];\n events = this.eventsList[name];\n }\n if (this.indexOf(events, callback) === -1) {\n var handler = {\n name: name,\n type: type || 0,\n callback: callback\n };\n events.push(handler);\n return this;\n }\n return this;\n }\n },\n {\n key: \"one\",\n value: function one(name, callback) {\n this.on(name, callback, 1);\n }\n },\n {\n key: \"remove\",\n value: function remove(name, callback) {\n if (!this) return;\n var events = this.eventsList[name];\n if (!events) {\n return null;\n }\n if (!callback) {\n try {\n delete this.eventsList[name];\n } catch (e) {}\n return null;\n }\n if (events.length) {\n var index = this.indexOf(events, callback);\n events.splice(index, 1);\n }\n return this;\n }\n },\n {\n key: \"clear\",\n value: function clear() {\n this.eventsList = {};\n }\n }\n ]);\n return EventEmitter;\n}();\n// src/interface/plugins.ts\nvar AirTrackerPlugin = /*#__PURE__*/ function() {\n \"use strict\";\n function AirTrackerPlugin(pluginOption) {\n _class_call_check(this, AirTrackerPlugin);\n this.name = \"\";\n // initiation flag\n this.isInit = false;\n this.name = pluginOption.name;\n this.option = pluginOption;\n }\n _create_class(AirTrackerPlugin, [\n {\n key: \"patch\",\n value: function patch(airTracker2) {\n if (!this.isInit) {\n var _this_option_setUp, _this_option;\n this.isInit = true;\n (_this_option = this.option) === null || _this_option === void 0 ? void 0 : (_this_option_setUp = _this_option.setUp) === null || _this_option_setUp === void 0 ? void 0 : _this_option_setUp.call(this.option, airTracker2);\n }\n }\n },\n {\n key: \"uninstall\",\n value: function uninstall() {\n var _this_option_destroy, _this_option;\n (_this_option = this.option) === null || _this_option === void 0 ? void 0 : (_this_option_destroy = _this_option.destroy) === null || _this_option_destroy === void 0 ? void 0 : _this_option_destroy.apply(this);\n this.isInit = false;\n }\n }\n ]);\n return AirTrackerPlugin;\n}();\n// src/plugins/onErrorPlugin.ts\nvar airTracker;\nvar onError = function(event) {\n var errString = \"\".concat(safeStringify(event.message) || \"\", \" @ (\").concat(safeStringify(event.filename) || \"\", \":\").concat(event.lineno || 0, \":\").concat(event.colno || 0, \")\\n\").concat(safeStringify(event.error || \"\"));\n airTracker.normalLogPipeLine({\n severity: \"autoDetectError\" /* AUTO_DETECT_ERROR */ ,\n eventName: \"windowOnError\" /* windowOnError */ ,\n extraInfo: {\n error: errString\n }\n });\n};\nvar unhandledrejectionHandler = function(event) {\n var reason = event && safeStringify(event.reason);\n airTracker.normalLogPipeLine({\n severity: \"autoDetectError\" /* AUTO_DETECT_ERROR */ ,\n eventName: \"promiseError\" /* promiseError */ ,\n extraInfo: {\n error: reason\n }\n });\n};\nvar errorHandler = function(event) {\n var target = (event === null || event === void 0 ? void 0 : event.target) || (event === null || event === void 0 ? void 0 : event.srcElement);\n if (!target) {\n return;\n }\n var url = (target === null || target === void 0 ? void 0 : target.src) || (target === null || target === void 0 ? void 0 : target.href);\n var tagName = target.tagName;\n var staticFileType = \"unknown\" /* unknown */ ;\n if (typeof url === \"string\" && tagName) {\n if (window.location.href.indexOf(url) > -1) {\n return;\n }\n if (/\\.js$/.test(url)) {\n staticFileType = \"script\" /* script */ ;\n } else if (/\\.css$/.test(url)) {\n staticFileType = \"css\" /* css */ ;\n } else {\n switch(tagName.toLowerCase()){\n case \"script\":\n staticFileType = \"script\" /* script */ ;\n break;\n case \"link\":\n staticFileType = \"css\" /* css */ ;\n break;\n case \"img\":\n staticFileType = \"image\" /* img */ ;\n break;\n case \"audio\":\n case \"video\":\n staticFileType = \"media\" /* media */ ;\n break;\n default:\n return;\n }\n }\n airTracker.normalLogPipeLine({\n severity: \"autoDetectError\" /* AUTO_DETECT_ERROR */ ,\n eventName: \"staticFileLoadError\" /* staticFileLoadError */ ,\n extraInfo: {\n staticFileType: staticFileType,\n error: \"\".concat(tagName, \" load fail: \").concat(url)\n }\n });\n }\n};\nvar errorDetectionPlugin = new AirTrackerPlugin({\n name: \"errorDetectionPlugin\",\n setUp: function(airTrackerInst) {\n airTracker = airTrackerInst;\n window.addEventListener(\"error\", onError);\n window.addEventListener(\"unhandledrejection\", unhandledrejectionHandler);\n window.document.addEventListener(\"error\", errorHandler, true);\n },\n destroy: function() {\n window.removeEventListener(\"unhandledrejection\", unhandledrejectionHandler);\n window.document.removeEventListener(\"error\", errorHandler, true);\n window.removeEventListener(\"error\", onError);\n }\n});\n// src/plugins/assetsSpeedPlugin.ts\nvar ASSETS_INITIATOR_TYPE = [\n \"img\",\n \"css\",\n \"script\",\n \"link\",\n \"audio\",\n \"video\",\n \"iframe\"\n];\nvar COLLECTED_ENTRY_TYPE = \"resource\";\nvar generateSpeedLog = function(entry) {\n var resourceURl = entry.name;\n return {\n url: formatUrl(resourceURl),\n method: \"get\",\n // duration = redirect + DNS + CONNECTION + request + response\n duration: Number(entry.duration.toFixed(2)),\n // time it takes to load\n type: \"static\",\n isHttps: urlIsHttps(resourceURl),\n urlQuery: getQueryString(resourceURl),\n domainLookup: getReportVal(entry.domainLookupEnd - entry.domainLookupStart),\n connectTime: getReportVal(entry.connectEnd - entry.connectStart)\n };\n};\nvar publishSpeedLogs = function(entries, airTracker2) {\n for(var i = 0, l = entries.length; i < l; i++){\n var entry = entries[i];\n if (ASSETS_INITIATOR_TYPE.indexOf(entry.initiatorType) !== -1 && checkIfInWhiteList(entry.name, airTracker2)) {\n airTracker2.normalLogPipeLine({\n severity: \"performance\" /* PERFORMANCE */ ,\n eventName: \"assets_speed\" /* ASSETS_SPEED */ ,\n extraInfo: {\n log: generateSpeedLog(entry)\n }\n });\n }\n }\n};\nvar interval;\nvar observer;\nvar assetSpeedPlugin = new AirTrackerPlugin({\n name: \"assetsSpeedPlugin\",\n setUp: function(airTracker2) {\n if (!canUseResourceTiming()) return;\n var collectCur = 0;\n window.performance.onresourcetimingbufferfull = function() {\n collectCur = 0;\n window.performance.clearResourceTimings();\n };\n if (typeof window.PerformanceObserver === \"function\") {\n publishSpeedLogs(window.performance.getEntriesByType(COLLECTED_ENTRY_TYPE), airTracker2);\n observer = new window.PerformanceObserver(function(list) {\n publishSpeedLogs(list.getEntries(), airTracker2);\n });\n observer.observe({\n entryTypes: [\n COLLECTED_ENTRY_TYPE\n ]\n });\n } else {\n interval = setInterval(function() {\n var allEntries = window.performance.getEntriesByType(COLLECTED_ENTRY_TYPE);\n var collectEntries = allEntries.slice(collectCur);\n collectCur = allEntries.length;\n publishSpeedLogs(collectEntries, airTracker2);\n }, 3e3);\n }\n },\n destroy: function() {\n observer === null || observer === void 0 ? void 0 : observer.disconnect();\n interval && clearInterval(interval);\n }\n});\n// src/plugins/onPageChangePlugin.ts\nvar observer2;\nvar onPageChangePlugin = new AirTrackerPlugin({\n name: \"onPageChangePlugin\",\n setUp: /*#__PURE__*/ function() {\n var _ref = _async_to_generator(function(airTracker2) {\n var _location, previousUrl, body, sendOnPageChangeEvent, config;\n return _ts_generator(this, function(_state) {\n previousUrl = (_location = location) === null || _location === void 0 ? void 0 : _location.href;\n body = document.querySelector(\"body\");\n sendOnPageChangeEvent = function(param) {\n var prevHref = param.prevHref;\n var _location, _location1, _location2, _location3, _location4;\n airTracker2.normalLogPipeLine({\n severity: \"autoDetectEvent\" /* AUTO_DETECT_EVENT */ ,\n eventName: \"onPageChange\" /* onPageChange */ ,\n extraInfo: {\n prevHref: prevHref,\n href: ((_location = location) === null || _location === void 0 ? void 0 : _location.href) || \"\",\n hostname: (_location1 = location) === null || _location1 === void 0 ? void 0 : _location1.hostname,\n pathName: (_location2 = location) === null || _location2 === void 0 ? void 0 : _location2.pathname,\n protocol: (_location3 = location) === null || _location3 === void 0 ? void 0 : _location3.protocol,\n search: (_location4 = location) === null || _location4 === void 0 ? void 0 : _location4.search\n }\n });\n };\n sendOnPageChangeEvent({\n prevHref: \"\"\n });\n observer2 = new MutationObserver(function() {\n if (location.href !== previousUrl) {\n var tempPreviousUrl = previousUrl;\n previousUrl = location.href;\n sendOnPageChangeEvent({\n prevHref: tempPreviousUrl\n });\n }\n });\n config = {\n subtree: true,\n childList: true\n };\n observer2.observe(body || document, config);\n return [\n 2\n ];\n });\n });\n return function(airTracker2) {\n return _ref.apply(this, arguments);\n };\n }(),\n destroy: function() {\n observer2 === null || observer2 === void 0 ? void 0 : observer2.disconnect();\n }\n});\n// src/plugins/pageRetentionPlugin.ts\nvar observer3;\nvar onPageRetentionPlugin = new AirTrackerPlugin({\n name: \"onPageRetentionPlugin\",\n setUp: /*#__PURE__*/ function() {\n var _ref = _async_to_generator(function(airTracker2) {\n var _location, previousUrl, body, enterPageTimeStamp, startRecording, sendPageRetentionEvent, config;\n return _ts_generator(this, function(_state) {\n if (typeof document.visibilityState === \"undefined\") {\n return [\n 2\n ];\n }\n previousUrl = (_location = location) === null || _location === void 0 ? void 0 : _location.href;\n body = document.querySelector(\"body\");\n startRecording = function() {\n enterPageTimeStamp = Date.now();\n };\n startRecording();\n document.addEventListener(\"visibilitychange\", function() {\n if (document.visibilityState === \"hidden\") {\n sendPageRetentionEvent({\n href: location.href,\n leftReason: \"visibilityChange\" /* visibilityChange */ \n });\n } else if (document.visibilityState === \"visible\") {\n startRecording();\n }\n });\n window.addEventListener(\"beforeunload\", function() {\n sendPageRetentionEvent({\n href: location.href,\n sendImmediate: true,\n leftReason: \"pageClose\" /* pageClose */ \n });\n });\n sendPageRetentionEvent = function(param) {\n var href = param.href, sendImmediate = param.sendImmediate, leftReason = param.leftReason;\n if (!enterPageTimeStamp) {\n return;\n }\n var duration = Date.now() - enterPageTimeStamp;\n if (duration === 0) {\n return;\n }\n enterPageTimeStamp = void 0;\n var payload = {\n severity: \"autoDetectEvent\" /* AUTO_DETECT_EVENT */ ,\n eventName: \"onPageRetention\" /* onPageRetention */ ,\n extraInfo: {\n href: href,\n duration: duration,\n leftReason: leftReason\n }\n };\n if (sendImmediate) {\n airTracker2.ImmediatePipeline(payload);\n return;\n }\n airTracker2.normalLogPipeLine(payload);\n };\n observer3 = new MutationObserver(function() {\n if (location.href !== previousUrl) {\n var tempPreviousUrl = previousUrl;\n previousUrl = location.href;\n sendPageRetentionEvent({\n href: tempPreviousUrl,\n leftReason: \"nextPage\" /* nextPage */ \n });\n startRecording();\n }\n });\n config = {\n subtree: true,\n childList: true\n };\n observer3.observe(body || document, config);\n return [\n 2\n ];\n });\n });\n return function(airTracker2) {\n return _ref.apply(this, arguments);\n };\n }(),\n destroy: function() {\n observer3 === null || observer3 === void 0 ? void 0 : observer3.disconnect();\n }\n});\n// src/plugins/apiPerformancePlugin/utils.ts\nvar generateRandomId = function() {\n return Date.now().toString(36) + Math.random().toString(36).substring(2, 15);\n};\nvar checkIfInWhiteList2 = function(url, whiteList) {\n var defaultWhiteList = [\n /^https?:\\/\\/[^\\/]*\\.airwallex\\.com($|\\/)/\n ];\n var defaultExclusionList = [\n /authenticate\\/heartbeat/,\n /papluginlogs\\/.*/,\n /airtracker\\/.*/,\n /o11y(-staging|-demo)?\\.airwallex\\.com/,\n /\\.(png|jpe?g|gif|svg|ico|webp|avif|css|js|json|woff2?|ttf|eot|map|txt|csv|xml)(\\?.*)?(#.*)?$/i\n ];\n if (defaultExclusionList.some(function(item) {\n return item.test(url);\n })) {\n return false;\n }\n return checkIfInWhiteListHelper(url, whiteList || defaultWhiteList);\n};\nvar findMainEntry = function(performanceItem) {\n var startTime = performanceItem.startTime, endTime = performanceItem.endTime, entries = performanceItem.entries;\n if (entries.length === 0) {\n return void 0;\n }\n if (entries.length === 1) {\n return entries[0];\n }\n var filteredEntries = entries.filter(function(entry) {\n return entry.startTime >= startTime && endTime && entry.responseEnd <= endTime;\n }).sort(function(a, b) {\n return a.startTime - b.startTime;\n });\n return filteredEntries === null || filteredEntries === void 0 ? void 0 : filteredEntries[0];\n};\nvar round2Decimal = function(value) {\n return Math.round(value * 100) / 100;\n};\nvar processPerformanceEntry = function(entry) {\n var startTime = entry.startTime, duration = entry.duration, responseStart = entry.responseStart, connectEnd = entry.connectEnd, connectStart = entry.connectStart, domainLookupEnd = entry.domainLookupEnd, domainLookupStart = entry.domainLookupStart, requestStart = entry.requestStart, secureConnectionStart = entry.secureConnectionStart, redirectEnd = entry.redirectEnd, redirectStart = entry.redirectStart, responseStatus = entry.responseStatus, responseEnd = entry.responseEnd, encodedBodySize = entry.encodedBodySize, decodedBodySize = entry.decodedBodySize, transferSize = entry.transferSize, deliveryType = entry.deliveryType, initiatorType = entry.initiatorType;\n return {\n startTime: round2Decimal(startTime),\n totalDuration: round2Decimal(duration),\n timeToFirstByte: roundSubtract(responseStart, startTime),\n tcpDuration: roundSubtract(connectEnd, connectStart),\n dnsDuration: roundSubtract(domainLookupEnd, domainLookupStart),\n tlsDuration: roundSubtract(requestStart, secureConnectionStart),\n redirectDuration: roundSubtract(redirectEnd, redirectStart),\n responseDuration: roundSubtract(responseEnd, responseStart),\n encodeResponseSize: encodedBodySize,\n decodeResponseSize: decodedBodySize,\n transferSize: transferSize,\n deliveryType: deliveryType,\n statusCode: responseStatus,\n initiatorType: initiatorType\n };\n};\nvar getPayload = function(performanceItem, extraInfo) {\n var url = performanceItem.url, method = performanceItem.method, errorType = performanceItem.errorType, errorDetail = performanceItem.errorDetail;\n var mainEntry = findMainEntry(performanceItem);\n var _ref = new URL(url, window.location.href), href = _ref.href, protocol = _ref.protocol;\n var payloadFromPerformanceEntry = mainEntry ? processPerformanceEntry(mainEntry) : {};\n var payload = {\n severity: \"autoDetectEvent\" /* AUTO_DETECT_EVENT */ ,\n eventName: \"httpClientMetrics\" /* httpClientMetrics */ ,\n extraInfo: _object_spread(_object_spread_props(_object_spread({\n httpUrl: href,\n method: method,\n scheme: protocol\n }, errorType && {\n errorType: errorType\n }, errorDetail && {\n errorDetail: errorDetail\n }, payloadFromPerformanceEntry), {\n // use injected response as fallback\n statusCode: (payloadFromPerformanceEntry === null || payloadFromPerformanceEntry === void 0 ? void 0 : payloadFromPerformanceEntry.statusCode) || (performanceItem === null || performanceItem === void 0 ? void 0 : performanceItem.responseStatus),\n startTime: (payloadFromPerformanceEntry === null || payloadFromPerformanceEntry === void 0 ? void 0 : payloadFromPerformanceEntry.startTime) || (performanceItem === null || performanceItem === void 0 ? void 0 : performanceItem.startTime),\n initiatorType: (payloadFromPerformanceEntry === null || payloadFromPerformanceEntry === void 0 ? void 0 : payloadFromPerformanceEntry.initiatorType) || (performanceItem === null || performanceItem === void 0 ? void 0 : performanceItem.initiatorType)\n }), extraInfo)\n };\n return payload;\n};\nvar isGraphQLError = function(responseBody) {\n return(// Has data or errors at root level\n responseBody && (typeof responseBody === \"undefined\" ? \"undefined\" : _type_of(responseBody)) === \"object\" && \"errors\" in responseBody && // If errors exist, they should be an array with proper GraphQL error shape\n Array.isArray(responseBody.errors) && responseBody.errors.every(function(error) {\n return error && (typeof error === \"undefined\" ? \"undefined\" : _type_of(error)) === \"object\" && \"message\" in error;\n }));\n};\n// src/plugins/apiPerformancePlugin/type.ts\nvar API_PERFORMANCE_QUEUE = \"awx_airtracker_api_performance_queue\";\nvar API_PERFORMANCE_PLUGIN_LOADED = \"awx_airtracker_api_performance_plugin_loaded\";\n// src/plugins/apiPerformancePlugin/index.ts\nvar OBSERVER_WAIT_TIME_MS = 300;\nvar TIMEOUT_WAIT_TIME_MS = 1e4;\nvar globalObject = typeof window !== \"undefined\" ? window : typeof global !== \"undefined\" ? global : {};\nglobalObject[API_PERFORMANCE_QUEUE] = globalObject[API_PERFORMANCE_QUEUE] || [];\nvar handlePayloadAndSendLog = function(apiPerformanceItem, airTracker2, extraInfo) {\n setTimeout(function() {\n var payload = getPayload(apiPerformanceItem, extraInfo);\n airTracker2.observerPipeline(payload);\n globalObject[API_PERFORMANCE_QUEUE] = globalObject[API_PERFORMANCE_QUEUE].filter(function(item) {\n return item.id !== apiPerformanceItem.id;\n });\n }, OBSERVER_WAIT_TIME_MS);\n};\nvar handleTimeout = function(requestId, airTracker2) {\n setTimeout(function() {\n var matchedApiPerformanceItem = globalObject[API_PERFORMANCE_QUEUE].find(function(item) {\n return item.id === requestId;\n });\n if (!matchedApiPerformanceItem) {\n return;\n }\n var payload = getPayload(matchedApiPerformanceItem, {\n exceptionType: \"timeout-without-response\"\n });\n airTracker2.observerPipeline(payload);\n globalObject[API_PERFORMANCE_QUEUE] = globalObject[API_PERFORMANCE_QUEUE].filter(function(item) {\n return item.id !== requestId;\n });\n }, TIMEOUT_WAIT_TIME_MS);\n};\nvar injectXMLHttpRequest = function(airTracker2) {\n var originalOpen = XMLHttpRequest.prototype.open;\n var originalSend = XMLHttpRequest.prototype.send;\n XMLHttpRequest.prototype.open = function injectXMLHttpRequest(method, url, async, username, password) {\n try {\n var _airTracker2_config;\n var requestId = generateRandomId();\n this.__requestId = requestId;\n var urlString = _instanceof(url, URL) ? url.href : new URL(url, window.location.href).href;\n if (!checkIfInWhiteList2(urlString, (_airTracker2_config = airTracker2.config) === null || _airTracker2_config === void 0 ? void 0 : _airTracker2_config.enableRecordAPIPerformanceWhitelist)) {\n return originalOpen.call(this, method, url, async !== null && async !== void 0 ? async : true, username, password);\n }\n var apiPerformanceItem = {\n id: requestId,\n startTime: performance.now(),\n method: method,\n url: urlString,\n entries: [],\n initiatorType: \"xmlhttprequest\"\n };\n globalObject[API_PERFORMANCE_QUEUE].push(apiPerformanceItem);\n handleTimeout(requestId, airTracker2);\n return originalOpen.call(this, method, url, async !== null && async !== void 0 ? async : true, username, password);\n } catch (error) {\n airTracker2.normalLogPipeLine({\n severity: \"warn\" /* WARN */ ,\n eventName: \"apiPerformancePluginError\",\n extraInfo: {\n message: \"Inject XHR open error\",\n error: error\n }\n });\n return originalOpen.call(this, method, url, async !== null && async !== void 0 ? async : true, username, password);\n }\n };\n XMLHttpRequest.prototype.send = function sendXHRRequest() {\n var _this = this;\n for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){\n args[_key] = arguments[_key];\n }\n try {\n var matchedApiPerformanceItem = globalObject[API_PERFORMANCE_QUEUE].find(function(item) {\n return item.id === _this.__requestId;\n });\n if (!matchedApiPerformanceItem) {\n return originalSend.apply(this, args);\n }\n var _this1 = this;\n this.addEventListener(\"loadend\", /*#__PURE__*/ _async_to_generator(function() {\n var endTime, duration, status, responseBody, blob, parsedBody, e;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n endTime = performance.now();\n duration = endTime - matchedApiPerformanceItem.startTime;\n status = _this1.status;\n if (status === 0) {\n return [\n 2\n ];\n }\n matchedApiPerformanceItem.endTime = endTime;\n matchedApiPerformanceItem.duration = duration;\n matchedApiPerformanceItem.responseStatus = status;\n _state.label = 1;\n case 1:\n _state.trys.push([\n 1,\n 6,\n ,\n 7\n ]);\n if (!(_this1.responseType === \"\" || _this1.responseType === \"text\")) return [\n 3,\n 2\n ];\n responseBody = _this1.responseText;\n return [\n 3,\n 5\n ];\n case 2:\n if (!(_this1.responseType === \"json\")) return [\n 3,\n 3\n ];\n responseBody = _this1.response;\n return [\n 3,\n 5\n ];\n case 3:\n if (!(_this1.responseType === \"blob\")) return [\n 3,\n 5\n ];\n blob = _this1.response;\n if (!((blob === null || blob === void 0 ? void 0 : blob.type) === \"application/json\")) return [\n 3,\n 5\n ];\n return [\n 4,\n blob.text()\n ];\n case 4:\n responseBody = _state.sent();\n _state.label = 5;\n case 5:\n parsedBody = responseBody && typeof responseBody === \"string\" ? JSON.parse(responseBody) : responseBody;\n if (parsedBody && isGraphQLError(parsedBody)) {\n matchedApiPerformanceItem.errorType = \"graphqlError\";\n matchedApiPerformanceItem.errorDetail = parsedBody.errors;\n }\n return [\n 3,\n 7\n ];\n case 6:\n e = _state.sent();\n airTracker2.normalLogPipeLine({\n severity: \"warn\" /* WARN */ ,\n eventName: \"apiPerformancePluginError\",\n extraInfo: {\n message: \"Parse response body error in XHR\",\n url: matchedApiPerformanceItem === null || matchedApiPerformanceItem === void 0 ? void 0 : matchedApiPerformanceItem.url,\n error: e\n }\n });\n return [\n 3,\n 7\n ];\n case 7:\n handlePayloadAndSendLog(matchedApiPerformanceItem, airTracker2);\n return [\n 2\n ];\n }\n });\n }));\n this.addEventListener(\"error\", function() {\n handlePayloadAndSendLog(matchedApiPerformanceItem, airTracker2, {\n exceptionType: \"network-error\"\n });\n });\n this.addEventListener(\"abort\", function() {\n handlePayloadAndSendLog(matchedApiPerformanceItem, airTracker2, {\n exceptionType: \"abort-error\"\n });\n });\n this.addEventListener(\"timeout\", function() {\n handlePayloadAndSendLog(matchedApiPerformanceItem, airTracker2, {\n exceptionType: \"timeout-error\"\n });\n });\n return originalSend.apply(this, args);\n } catch (error) {\n airTracker2.normalLogPipeLine({\n severity: \"warn\" /* WARN */ ,\n eventName: \"apiPerformancePluginError\",\n extraInfo: {\n message: \"InjectXHR send error\",\n error: error\n }\n });\n throw error;\n }\n };\n};\nvar injectFetch = function(airTracker2) {\n var originalFetch = window.fetch;\n window.fetch = /*#__PURE__*/ _async_to_generator(function() {\n var _len, args, _key, _airTracker2_config, apiPerformanceItem, url, _this, startTime, id, response, endTime, clonedResponse, responseBody, error, error1, exceptionType;\n var _arguments = arguments;\n return _ts_generator(this, function(_state) {\n switch(_state.label){\n case 0:\n for(_len = _arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){\n args[_key] = _arguments[_key];\n }\n url = new URL(_instanceof(args[0], Request) ? args[0].url : String(args[0]), window.location.href).href;\n if (!!checkIfInWhiteList2(url, (_airTracker2_config = airTracker2.config) === null || _airTracker2_config === void 0 ? void 0 : _airTracker2_config.enableRecordAPIPerformanceWhitelist)) return [\n 3,\n 2\n ];\n return [\n 4,\n originalFetch.apply(this, args)\n ];\n case 1:\n return [\n 2,\n _state.sent()\n ];\n case 2:\n _state.trys.push([\n 2,\n 9,\n ,\n 10\n ]);\n startTime = performance.now();\n id = generateRandomId();\n apiPerformanceItem = {\n id: id,\n startTime: startTime,\n method: ((_this = _instanceof(args[0], Request) ? args[0] : args[1]) === null || _this === void 0 ? void 0 : _this.method) || \"GET\",\n url: url,\n entries: [],\n initiatorType: \"fetch\"\n };\n globalObject[API_PERFORMANCE_QUEUE].push(apiPerformanceItem);\n handleTimeout(id, airTracker2);\n return [\n 4,\n originalFetch.apply(this, args)\n ];\n case 3:\n response = _state.sent();\n endTime = performance.now();\n apiPerformanceItem.endTime = endTime;\n apiPerformanceItem.duration = endTime - startTime;\n apiPerformanceItem.responseStatus = response.status;\n clonedResponse = response.clone();\n _state.label = 4;\n case 4:\n _state.trys.push([\n 4,\n 7,\n ,\n 8\n ]);\n if (!clonedResponse.ok) return [\n 3,\n 6\n ];\n return [\n 4,\n clonedResponse.json()\n ];\n case 5:\n responseBody = _state.sent();\n if (responseBody && isGraphQLError(responseBody)) {\n apiPerformanceItem.errorType = \"graphqlError\";\n apiPerformanceItem.errorDetail = responseBody.errors;\n }\n _state.label = 6;\n case 6:\n return [\n 3,\n 8\n ];\n case 7:\n error = _state.sent();\n airTracker2.normalLogPipeLine({\n severity: \"warn\" /* WARN */ ,\n eventName: \"apiPerformancePluginError\",\n extraInfo: {\n message: \"Parse response body error in fetch\",\n url: apiPerformanceItem === null || apiPerformanceItem === void 0 ? void 0 : apiPerformanceItem.url,\n error: error\n }\n });\n return [\n 3,\n 8\n ];\n case 8:\n handlePayloadAndSendLog(apiPerformanceItem, airTracker2);\n return [\n 2,\n response\n ];\n case 9:\n error1 = _state.sent();\n if (apiPerformanceItem && apiPerformanceItem.id && globalObject[API_PERFORMANCE_QUEUE].find(function(item) {\n return item.id === (apiPerformanceItem === null || apiPerformanceItem === void 0 ? void 0 : apiPerformanceItem.id);\n })) {\n exceptionType = \"fetch-error\";\n if (_instanceof(error1, TypeError)) {\n exceptionType = \"network-error\";\n } else if (_instanceof(error1, DOMException) && error1.name === \"AbortError\") {\n exceptionType = \"abort-error\";\n }\n handlePayloadAndSendLog(apiPerformanceItem, airTracker2, {\n exceptionType: exceptionType\n });\n } else {\n airTracker2.normalLogPipeLine({\n severity: \"warn\" /* WARN */ ,\n eventName: \"apiPerformancePluginError\",\n extraInfo: {\n message: \"Inject fetch error\",\n error: error1\n }\n });\n }\n throw error1;\n case 10:\n return [\n 2\n ];\n }\n });\n });\n};\nvar setUpAPIPerformancePlugin = function(airTracker2) {\n var _window;\n injectXMLHttpRequest(airTracker2);\n injectFetch(airTracker2);\n if ((_window = window) === null || _window === void 0 ? void 0 : _window.PerformanceObserver) {\n var observer4 = new window.PerformanceObserver(function(list) {\n var entries = list.getEntries();\n entries.forEach(function(entry) {\n var resourceEntry = entry;\n if (resourceEntry.initiatorType === \"fetch\" || resourceEntry.initiatorType === \"xmlhttprequest\") {\n var items = globalObject[API_PERFORMANCE_QUEUE].filter(function(item) {\n return item.url === resourceEntry.name;\n });\n items.forEach(function(item) {\n item.entries.push(resourceEntry);\n });\n }\n });\n });\n observer4.observe({\n entryTypes: [\n \"resource\"\n ],\n buffered: true\n });\n } else {\n airTracker2.normalLogPipeLine({\n severity: \"warn\" /* WARN */ ,\n eventName: \"apiPerformancePluginError\",\n extraInfo: {\n error: \"PerformanceObserver Not Supported\"\n }\n });\n }\n};\nvar apiPerformancePlugin = new AirTrackerPlugin({\n name: \"apiPerformancePlugin\",\n setUp: /*#__PURE__*/ function() {\n var _ref = _async_to_generator(function(airTracker2) {\n var _airTracker2_config, _airTracker2_config1;\n return _ts_generator(this, function(_state) {\n if (globalObject[API_PERFORMANCE_PLUGIN_LOADED]) {\n return [\n 2\n ];\n }\n if (((_airTracker2_config = airTracker2.config) === null || _airTracker2_config === void 0 ? void 0 : _airTracker2_config.enableRecordAPIPerformance) && Math.random() < (((_airTracker2_config1 = airTracker2.config) === null || _airTracker2_config1 === void 0 ? void 0 : _airTracker2_config1.enableRecordAPIPerformancePercentage) || 0)) {\n globalObject[API_PERFORMANCE_PLUGIN_LOADED] = true;\n setUpAPIPerformancePlugin(airTracker2);\n }\n return [\n 2\n ];\n });\n });\n return function(airTracker2) {\n return _ref.apply(this, arguments);\n };\n }()\n});\n// src/util/version.ts\nvar SDK_VERSION = \"3.1.0\";\n// src/airTracker.ts\nvar AirTracker = /*#__PURE__*/ function() {\n \"use strict\";\n function AirTracker(param) {\n var _this = this;\n var config = param.config, _param_plugins = param.plugins, plugins = _param_plugins === void 0 ? [] : _param_plugins;\n _class_call_check(this, AirTracker);\n this.config = DEFAULT_CONFIG;\n this.lifeCycle = new EventEmitter();\n this.plugins = [];\n this._commonData = DEFAULT_COMMON_DATA;\n this._MFECommonDataMap = {};\n // customized speed log\n this.timeMap = {};\n this.packedDataConvert = function(param) {\n var severity = param.severity, eventName = param.eventName, extraInfo = param.extraInfo;\n var _location, _location1;\n var packedData = _object_spread({\n severity: severity,\n eventName: eventName,\n currentHref: _this.config.hideSearchParams ? (((_location = location) === null || _location === void 0 ? void 0 : _location.href) || \"\").split(\"?\")[0] || \"\" : ((_location1 = location) === null || _location1 === void 0 ? void 0 : _location1.href) || \"\"\n }, extraInfo);\n if (_this.config.isWebappContainer) {\n packedData.MFEName = getMFEName(_this);\n }\n return packedData;\n };\n this.normalPipelineObj = createPipeline([\n throttlePipe(this, 8),\n errorLogLimitPipe(this),\n sendNormalLogPipe(this)\n ]);\n this.observerPipelineObj = createPipeline([\n throttlePipe(this, 8),\n sendMetricsLogPipe(this)\n ]);\n this.immediateSendPipe = sendNormalLogPipe(this);\n this.observerPipeline = function(param) {\n var severity = param.severity, eventName = param.eventName, extraInfo = param.extraInfo;\n var packedData = _this.packedDataConvert({\n severity: severity,\n eventName: eventName,\n extraInfo: extraInfo\n });\n return _this.observerPipelineObj(packedData);\n };\n this.normalLogPipeLine = function(param) {\n var severity = param.severity, eventName = param.eventName, extraInfo = param.extraInfo;\n var packedData = _this.packedDataConvert({\n severity: severity,\n eventName: eventName,\n extraInfo: extraInfo\n });\n if (_this.config.disableThrottle) {\n return _this.immediateSendPipe(packedData);\n } else {\n return _this.normalPipelineObj(packedData);\n }\n };\n this.ImmediatePipeline = function(param) {\n var severity = param.severity, eventName = param.eventName, extraInfo = param.extraInfo;\n var packedData = _this.packedDataConvert({\n severity: severity,\n eventName: eventName,\n extraInfo: extraInfo\n });\n return _this.immediateSendPipe(packedData);\n };\n this.plugins = _to_consumable_array(plugins);\n this.setConfig(config);\n this.initCommonData(config);\n this.lifeCycle.emit(lifeCycleEventName.onInit);\n if (config.enableErrorMonitoring) {\n this.plugins.push(errorDetectionPlugin);\n }\n if ((config === null || config === void 0 ? void 0 : config.assetSpeedMonitoringWhiteList) && config.assetSpeedMonitoringWhiteList.length > 0 || config.isWebappContainer) {\n this.plugins.push(assetSpeedPlugin);\n }\n if (config === null || config === void 0 ? void 0 : config.enableDetectPageChange) {\n this.plugins.push(onPageChangePlugin);\n }\n if (config === null || config === void 0 ? void 0 : config.enableRecordPageRetention) {\n this.plugins.push(onPageRetentionPlugin);\n }\n if ((config === null || config === void 0 ? void 0 : config.enableRecordAPIPerformance) && (config === null || config === void 0 ? void 0 : config.enableRecordAPIPerformancePercentage) && config.enableRecordAPIPerformancePercentage > 0 && config.enableRecordAPIPerformancePercentage <= 1) {\n this.plugins.push(apiPerformancePlugin);\n }\n this.installPlugins();\n }\n _create_class(AirTracker, [\n {\n key: \"installPlugins\",\n value: function installPlugins() {\n var _this = this;\n this.plugins.forEach(function(item) {\n item.patch(_this);\n });\n }\n },\n {\n key: \"commonData\",\n get: function get() {\n return this._commonData;\n }\n },\n {\n key: \"MFECommonDataMap\",\n get: function get() {\n return this._MFECommonDataMap;\n }\n },\n {\n key: \"initCommonData\",\n value: function initCommonData(config) {\n this._commonData.sessionId = config.useSessionStorageForSessionId ? getSessionId() : generateUId();\n this._commonData.deviceId = getDeviceId() || UNKNOWN_VALUE;\n this._commonData.riskDeviceId = getRiskDeviceId();\n this._commonData.networkType = getNetworkType() || \"unknown\" /* unknown */ ;\n this._commonData.env = config.env || this._commonData.env;\n this._commonData.accountId = config.accountId || UNKNOWN_VALUE;\n this._commonData.appVersion = config.appVersion;\n this._commonData.appName = config.appName;\n this._commonData.sdkVersion = SDK_VERSION;\n this.lifeCycle.emit(lifeCycleEventName.onCommonDataInit, this.commonData);\n }\n },\n {\n key: \"updateCommonDataBasedOnConfig\",\n value: function updateCommonDataBasedOnConfig(config) {\n this.lifeCycle.emit(lifeCycleEventName.onCommonUpdated, this._commonData);\n this._commonData.env = config.env || this._commonData.env;\n this._commonData.appName = config.appName || this._commonData.appName;\n this._commonData.env = config.env || this._commonData.env;\n this._commonData.accountId = config.accountId || this._commonData.accountId;\n this._commonData.appVersion = config.appVersion || this._commonData.appVersion;\n }\n },\n {\n // Can add extra common data based on developers' needs\n key: \"updateCommonData\",\n value: function updateCommonData(extraData) {\n this.lifeCycle.emit(lifeCycleEventName.onCommonUpdated, this._commonData);\n this._commonData = _object_spread({}, this._commonData, extraData);\n }\n },\n {\n key: \"removeCommonDataByKey\",\n value: function removeCommonDataByKey(keys) {\n var _this = this;\n this.lifeCycle.emit(lifeCycleEventName.onCommonUpdated, this._commonData);\n setTimeout(function() {\n keys.forEach(function(item) {\n delete _this._commonData[item];\n });\n }, 1e3);\n }\n },\n {\n // only worked if isWebappContainer is true\n key: \"addToMFECommonData\",\n value: function addToMFECommonData(param) {\n var MFEName = param.MFEName, MFECommonData = param.MFECommonData;\n var _this__MFECommonDataMap;\n if (!this.config.isWebappContainer) {\n return;\n }\n if (!MFEName || !MFECommonData) {\n return;\n }\n this._MFECommonDataMap = _object_spread_props(_object_spread({}, this._MFECommonDataMap || {}), _define_property({}, MFEName, _object_spread({}, ((_this__MFECommonDataMap = this._MFECommonDataMap) === null || _this__MFECommonDataMap === void 0 ? void 0 : _this__MFECommonDataMap[MFEName]) || {}, MFECommonData)));\n }\n },\n {\n // support set config later\n key: \"setConfig\",\n value: function setConfig(config) {\n var _this = this;\n if (this.config.isWebappContainer) {\n return;\n }\n var setValue = function(key, value) {\n _this.config[key] = value;\n };\n Object.entries(config).forEach(function(item) {\n var _item = _sliced_to_array(item, 2), key = _item[0], val = _item[1];\n if ((typeof val === \"undefined\" ? \"undefined\" : _type_of(val)) !== void 0) {\n setValue(key, val);\n }\n });\n this.lifeCycle.emit(lifeCycleEventName.onConfigInit, this.config);\n this.updateCommonDataBasedOnConfig(config);\n }\n },\n {\n // send verbose level log\n key: \"verbose\",\n value: function verbose(eventName, extraInfo) {\n this.normalLogPipeLine({\n severity: \"verbose\" /* VERBOSE */ ,\n eventName: eventName,\n extraInfo: extraInfo\n });\n }\n },\n {\n // send HTTP request log\n key: \"httpLog\",\n value: function httpLog(eventName, extraInfo) {\n this.normalLogPipeLine({\n severity: \"http\" /* HTTP */ ,\n eventName: eventName,\n extraInfo: extraInfo\n });\n }\n },\n {\n // send info level log\n key: \"info\",\n value: function info(eventName, extraInfo) {\n this.normalLogPipeLine({\n severity: \"info\" /* INFO */ ,\n eventName: eventName,\n extraInfo: extraInfo\n });\n }\n },\n {\n // send warn level log\n key: \"warn\",\n value: function warn(eventName, extraInfo) {\n this.normalLogPipeLine({\n severity: \"warn\" /* WARN */ ,\n eventName: eventName,\n extraInfo: extraInfo\n });\n }\n },\n {\n // send error level log\n key: \"error\",\n value: function error(eventName, extraInfo) {\n console.error(\"error\", eventName);\n this.normalLogPipeLine({\n severity: \"error\" /* ERROR */ ,\n eventName: eventName,\n extraInfo: extraInfo\n });\n }\n },\n {\n // send business related log, usually used for data analysis\n // all the logs with isBusinessData == true, will be sync to bigQuery / looker\n key: \"businessLog\",\n value: function businessLog(eventName, extraInfo) {\n this.normalLogPipeLine({\n severity: \"info\" /* INFO */ ,\n eventName: eventName,\n extraInfo: _object_spread_props(_object_spread({}, extraInfo), {\n isBusinessLog: true\n })\n });\n }\n },\n {\n // duration: milliseconds\n key: \"reportDuration\",\n value: function reportDuration(eventName, duration, extraInfo) {\n if (typeof eventName !== \"string\") {\n console.warn(\"reportDuration: eventName (first param) must be a string\");\n return;\n }\n if (typeof duration !== \"number\") {\n console.warn(\"reportDuration: duration (second param) must be number\");\n return;\n }\n if (duration < 0 || duration > 6e4) {\n console.warn(\"reportDuration: duration (second param) must between 0 and 60000\");\n return;\n }\n this.normalLogPipeLine({\n severity: \"speed\" /* SPEED */ ,\n eventName: eventName,\n extraInfo: _object_spread({\n duration: duration\n }, extraInfo)\n });\n }\n },\n {\n key: \"getTimerKey\",\n value: function getTimerKey(eventName) {\n var MFEName = getMFEName(this);\n return this.config.isWebappContainer ? \"\".concat(MFEName, \"_\").concat(eventName) : eventName;\n }\n },\n {\n key: \"timeStart\",\n value: function timeStart(eventName) {\n if (typeof eventName !== \"string\") {\n console.warn(\"time: first param must be a string\");\n return;\n }\n if (this.timeMap[this.getTimerKey(eventName)]) {\n console.warn(\"Timer \".concat(eventName, \" already exists\"));\n }\n this.timeMap[this.getTimerKey(eventName)] = Date.now();\n }\n },\n {\n key: \"timeEnd\",\n value: function timeEnd(eventName, delta) {\n if (typeof eventName !== \"string\") {\n console.warn(\"timeEnd: first param must be a string\");\n return;\n }\n if (this.timeMap[this.getTimerKey(eventName)]) {\n var duration = Date.now() - this.timeMap[this.getTimerKey(eventName)] + (delta || 0);\n this.normalLogPipeLine({\n severity: \"speed\" /* SPEED */ ,\n eventName: eventName,\n extraInfo: {\n duration: duration\n }\n });\n delete this.timeMap[this.getTimerKey(eventName)];\n } else {\n console.warn(\"Timer key :\".concat(eventName, \" does not exist\"));\n }\n }\n },\n {\n // only worked if isWebappContainer is true\n key: \"addToAssetSpeedWhiteListByMFE\",\n value: function addToAssetSpeedWhiteListByMFE(param) {\n var MFEName = param.MFEName, whiteList = param.whiteList;\n var _this_config_assetSpeedMonitoringWhiteListByMFE;\n if (!this.config.isWebappContainer) {\n return;\n }\n if (!MFEName || !(whiteList === null || whiteList === void 0 ? void 0 : whiteList.length)) {\n return;\n }\n if (!this.config.assetSpeedMonitoringWhiteListByMFE) {\n this.config.assetSpeedMonitoringWhiteListByMFE = {};\n }\n if (!((_this_config_assetSpeedMonitoringWhiteListByMFE = this.config.assetSpeedMonitoringWhiteListByMFE) === null || _this_config_assetSpeedMonitoringWhiteListByMFE === void 0 ? void 0 : _this_config_assetSpeedMonitoringWhiteListByMFE[MFEName])) {\n this.config.assetSpeedMonitoringWhiteListByMFE = _object_spread_props(_object_spread({}, this.config.assetSpeedMonitoringWhiteListByMFE), _define_property({}, MFEName, whiteList));\n } else {\n var _this_config_assetSpeedMonitoringWhiteListByMFE_MFEName;\n var _this_config_assetSpeedMonitoringWhiteListByMFE_MFEName1, _this_config_assetSpeedMonitoringWhiteListByMFE1;\n (_this_config_assetSpeedMonitoringWhiteListByMFE1 = this.config.assetSpeedMonitoringWhiteListByMFE) === null || _this_config_assetSpeedMonitoringWhiteListByMFE1 === void 0 ? void 0 : (_this_config_assetSpeedMonitoringWhiteListByMFE_MFEName1 = _this_config_assetSpeedMonitoringWhiteListByMFE1[MFEName]) === null || _this_config_assetSpeedMonitoringWhiteListByMFE_MFEName1 === void 0 ? void 0 : (_this_config_assetSpeedMonitoringWhiteListByMFE_MFEName = _this_config_assetSpeedMonitoringWhiteListByMFE_MFEName1).push.apply(_this_config_assetSpeedMonitoringWhiteListByMFE_MFEName, _to_consumable_array(whiteList));\n }\n }\n },\n {\n // please call destroy from your app root component when your app unmount\n key: \"destroy\",\n value: function destroy() {\n if (this.config.isWebappContainer) {\n return;\n }\n this.plugins.forEach(function(item) {\n item.uninstall();\n });\n }\n }\n ]);\n return AirTracker;\n}();\n// src/index.ts\nvar src_default = AirTracker;\nexport { AirTrackerPlugin, AutoDetectedEventType, Environment, NetworkType, SeverityType, src_default as default };\n","import AirTracker, { Environment } from '@airwallex/airtracker';\n\n/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nfunction __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nvar __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nfunction __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\ntypeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\n\nvar name = \"@airwallex/components-sdk\";\nvar version = \"1.35.0\";\nvar main = \"./lib/index.js\";\nvar module = \"./lib/index.mjs\";\nvar types = \"./lib/index.d.ts\";\nvar files = [\n\t\"lib/**\"\n];\nvar license = \"MIT\";\nvar scripts = {\n\t\"load-types\": \"node ./load-types.js && yarn prettier -w src/types/*d.ts\",\n\tprebuild: \"yarn clean\",\n\tbuild: \"yarn rollup --config\",\n\tpostbuild: \"yarn bundle-types\",\n\t\"bundle-types\": \"dts-bundle-generator -o ./lib/index.d.ts ./src/index.ts\",\n\tclean: \"rm -rf dist lib\",\n\tlint: \"eslint \\\"src/**/*.ts*\\\"\",\n\ttest: \"jest\",\n\tsonar: \"sonar-scanner\",\n\trelease: \"semantic-release\",\n\t\"lint-stage\": \"lint-staged\",\n\tprepare: \"husky\"\n};\nvar prettier = {\n\tsemi: true,\n\tsingleQuote: true,\n\tprintWidth: 80,\n\ttrailingComma: \"all\"\n};\nvar publishConfig = {\n\taccess: \"public\"\n};\nvar devDependencies = {\n\t\"@babel/preset-typescript\": \"^7.18.6\",\n\t\"@rollup/plugin-commonjs\": \"^25.0.7\",\n\t\"@rollup/plugin-json\": \"^6.1.0\",\n\t\"@rollup/plugin-node-resolve\": \"^15.2.3\",\n\t\"@rollup/plugin-terser\": \"^0.4.4\",\n\t\"@rollup/plugin-typescript\": \"^11.1.6\",\n\t\"@semantic-release/changelog\": \"^5.0.1\",\n\t\"@semantic-release/commit-analyzer\": \"^8.0.1\",\n\t\"@semantic-release/git\": \"^9.0.0\",\n\t\"@semantic-release/gitlab\": \"^6.1.0\",\n\t\"@semantic-release/release-notes-generator\": \"^9.0.0\",\n\t\"@swc/core\": \"^1.3.46\",\n\t\"@types/jest\": \"^29.5.0\",\n\t\"@typescript-eslint/eslint-plugin\": \"^5.57.0\",\n\t\"@typescript-eslint/parser\": \"^5.57.0\",\n\t\"dts-bundle-generator\": \"^9.0.0\",\n\teslint: \"^7.23.0\",\n\t\"eslint-config-prettier\": \"^8.3.0\",\n\t\"eslint-plugin-prettier\": \"^5.1.3\",\n\thusky: \"^9.0.11\",\n\tjest: \"^29.5.0\",\n\t\"jest-environment-jsdom\": \"^29.5.0\",\n\t\"lint-staged\": \"^15.2.7\",\n\tprettier: \"^3.3.2\",\n\trollup: \"^4.9.6\",\n\t\"semantic-release\": \"^17.3.8\",\n\t\"sonarqube-scanner\": \"^3.0.1\",\n\t\"ts-jest\": \"^29.0.5\",\n\t\"ts-loader\": \"^9.5.1\",\n\ttslib: \"^2.6.2\",\n\ttypescript: \"^4.5.2\"\n};\nvar dependencies = {\n\t\"@airwallex/airtracker\": \"^3.0.0\"\n};\nvar packageJson = {\n\tname: name,\n\tversion: version,\n\tmain: main,\n\tmodule: module,\n\ttypes: types,\n\tfiles: files,\n\tlicense: license,\n\tscripts: scripts,\n\tprettier: prettier,\n\t\"lint-staged\": {\n\t\"src/**/*.{ts,tsx}\": [\n\t\t\"yarn lint\"\n\t],\n\t\"src/**/*.{js,jsx,ts,tsx,json,css,scss,md}\": \"prettier --write\"\n},\n\tpublishConfig: publishConfig,\n\tdevDependencies: devDependencies,\n\tdependencies: dependencies\n};\n\nvar airTrackerENV = {\n dev: Environment.staging,\n staging: Environment.staging,\n demo: Environment.demo,\n prod: Environment.production\n};\nvar initializeAirTracker = function (env, clientId) {\n if (env === void 0) { env = Environment.production; }\n if (!window._AirwallexSDKs.airTracker) {\n window._AirwallexSDKs.airTracker = new AirTracker({\n config: {\n appName: 'components-sdk',\n appVersion: packageJson.version,\n env: airTrackerENV[env] || Environment.production\n }\n });\n window._AirwallexSDKs.airTracker.updateCommonData({ clientId: clientId });\n }\n return window._AirwallexSDKs.airTracker;\n};\nvar maskPII = function (data) {\n if (typeof data !== 'object') {\n return data;\n }\n try {\n var result_1 = JSON.parse(JSON.stringify(data));\n Object.keys(result_1).forEach(function (key) {\n if (typeof key === 'string' &&\n ['auth', 'code'].some(function (sens) { return key.includes(sens); })) {\n result_1[key] = '***';\n }\n });\n return result_1;\n }\n catch (_a) {\n return data;\n }\n};\nvar logError = function (eventName, data) {\n var _a, _b;\n (_b = (_a = window._AirwallexSDKs) === null || _a === void 0 ? void 0 : _a.airTracker) === null || _b === void 0 ? void 0 : _b.error(eventName, __assign(__assign({}, data), { context: 'components-sdk' }));\n};\nvar logWarning = function (eventName, data) {\n var _a;\n (_a = window._AirwallexSDKs.airTracker) === null || _a === void 0 ? void 0 : _a.warn(eventName, __assign(__assign({}, data), { context: 'components-sdk' }));\n};\nvar logInfo = function (eventName, data) {\n var _a;\n (_a = window._AirwallexSDKs.airTracker) === null || _a === void 0 ? void 0 : _a.info(eventName, __assign(__assign({}, data), { context: 'components-sdk' }));\n};\n\nvar LoadScriptError = /** @class */ (function (_super) {\n __extends(LoadScriptError, _super);\n function LoadScriptError(message) {\n var _this = _super.call(this, message) || this;\n _this.code = 'LOAD_SCRIPT_ERROR';\n return _this;\n }\n return LoadScriptError;\n}(Error));\n\nvar _a, _b;\nvar ENV;\n(function (ENV) {\n ENV[\"dev\"] = \"dev\";\n ENV[\"staging\"] = \"staging\";\n ENV[\"demo\"] = \"demo\";\n ENV[\"prod\"] = \"prod\";\n ENV[\"sandbox\"] = \"sandbox\";\n})(ENV || (ENV = {}));\nvar PA_STATIC_HOST = (_a = {},\n _a[ENV.dev] = 'https://checkout-staging.airwallex.com',\n _a[ENV.staging] = 'https://checkout-staging.airwallex.com',\n _a[ENV.demo] = 'https://checkout-demo.airwallex.com',\n _a[ENV.prod] = 'https://checkout.airwallex.com',\n _a[ENV.sandbox] = 'https://checkout.sandbox.airwallex.com',\n _a);\nvar STATIC_HOST = (_b = {},\n _b[ENV.dev] = 'https://static-staging.airwallex.com',\n _b[ENV.staging] = 'https://static-staging.airwallex.com',\n _b[ENV.demo] = 'https://static-demo.airwallex.com',\n _b[ENV.prod] = 'https://static.airwallex.com',\n _b[ENV.sandbox] = 'https://static.sandbox.airwallex.com',\n _b);\nvar SDK_CONTROLLER = 'sdkController';\nvar PAYMENTS = 'payments';\nvar SDK_URL_MAPPING = {\n kyc: '/widgets/kyc/sdk/v1/index.js',\n rfi: '/widgets/kycRfi/sdk/v1/index.js',\n paymentsKyb: '/widgets/paymentsKyb/sdk/v1/index.js',\n sdkController: '/widgets/sdk-controller/sdk/v1/index.js',\n payouts: '/widgets/payouts/sdk/v1/index.js',\n payments: '/assets/elements.bundle.min.js',\n sca: '/hosted-sca/sdk/v1/index.js',\n taxForm: '/widgets/taxForm/sdk/v1/index.js',\n billing: '/widgets/checkout/sdk/v1/index.js'\n};\nvar ELEMENT_TO_SDK = {\n // legacy\n kyc: 'kyc',\n paymentsKyb: 'paymentsKyb',\n // rfi elements\n kycRfi: 'rfi',\n transactionRfi: 'rfi',\n paymentEnablementRfi: 'rfi',\n lendingRfi: 'rfi',\n mrmRfi: 'rfi',\n // payouts elements\n payoutForm: 'payouts',\n beneficiaryForm: 'payouts',\n // payment elements\n hpp: 'payments',\n cvc: 'payments',\n card: 'payments',\n expiry: 'payments',\n dropIn: 'payments',\n cardNumber: 'payments',\n applePayButton: 'payments',\n googlePayButton: 'payments',\n krCardNumber: 'payments',\n krCardIdentifier: 'payments',\n krCardExpiry: 'payments',\n krCardPswFirstTwo: 'payments',\n // sca elements\n scaSetup: 'sca',\n scaVerify: 'sca',\n scaManagement: 'sca',\n taxForm: 'taxForm',\n // billing elements\n embeddedCheckout: 'billing'\n};\nvar ELEMENT_GROUP_TO_ELEMENT = {\n payments: [\n 'hpp',\n 'cvc',\n 'card',\n 'expiry',\n 'dropIn',\n 'cardNumber',\n 'applePayButton',\n 'googlePayButton',\n 'krCardNumber',\n 'krCardIdentifier',\n 'krCardExpiry',\n 'krCardPswFirstTwo',\n ],\n payouts: ['payoutForm', 'beneficiaryForm'],\n onboarding: ['kyc', 'paymentsKyb'],\n risk: [\n 'scaSetup',\n 'scaVerify',\n 'scaManagement',\n 'transactionRfi',\n 'kycRfi',\n 'paymentEnablementRfi',\n 'lendingRfi',\n 'mrmRfi',\n ],\n billing: ['embeddedCheckout']\n};\nvar SDK_DEPENDENCIES = {\n billing: ['payments']\n};\nvar DOMAIN_FUNCTIONS_NAMESPACES = ['payments', 'sca', 'billing'];\n\nvar InvalidStaticResourceError = /** @class */ (function (_super) {\n __extends(InvalidStaticResourceError, _super);\n function InvalidStaticResourceError(message) {\n var _this = _super.call(this, message) || this;\n _this.code = 'INVALID_STATIC_RESOURCE_ERROR';\n return _this;\n }\n return InvalidStaticResourceError;\n}(Error));\n\nvar timestamp = Date.now();\nvar isElementGroup = function (name) { return Object.keys(ELEMENT_GROUP_TO_ELEMENT).includes(name); };\nvar sleep = function (delay) {\n if (delay === void 0) { delay = 500; }\n return new Promise(function (resolve) { return window.setTimeout(resolve, delay); });\n};\nvar getSDKByElementName = function (elementName) {\n return ELEMENT_TO_SDK[elementName];\n};\nvar getHost = function (name, env) {\n var host = name === PAYMENTS ? PA_STATIC_HOST : STATIC_HOST;\n return host[env] || host.prod;\n};\n/**\n * get the elements and sdks that need registry by controller\n * @param enabledElements the enabledElements passed in init params\n * @returns array of deduplicated elementName pair with sdkName\n */\nvar getSDKsByEnabledElements = function (enabledElements) {\n // e.g., ['hpp', 'payoutForm', 'kyc', 'kyc']\n var usedElements = enabledElements.reduce(function (elementArr, enabledEle) {\n return elementArr.concat(isElementGroup(enabledEle)\n ? ELEMENT_GROUP_TO_ELEMENT[enabledEle]\n : enabledEle);\n }, []);\n return Array.from(new Set(usedElements)).map(function (elementName) { return ({\n elementName: elementName,\n sdkName: getSDKByElementName(elementName)\n }); });\n};\nvar getFunctionsByEnabledElements = function (enabledElements) {\n return Array.from(new Set(getSDKsByEnabledElements(enabledElements)\n .map(function (_a) {\n var sdkName = _a.sdkName;\n return sdkName;\n })\n .filter(function (usedSdkName) {\n return DOMAIN_FUNCTIONS_NAMESPACES.includes(usedSdkName);\n })));\n};\nvar getWindowSDKInstanceName = function (name) {\n return name === 'payments' ? 'payment' : name;\n};\n/**\n * get the CDN url of a specific package\n * @param name declare the element name\n * @param env the environment of package\n * @returns string the CDN url\n */\nvar getSDKUrl = function (_a) {\n var name = _a.name, _b = _a.env, env = _b === void 0 ? ENV.prod : _b;\n var staticHost = getHost(name, env);\n var elementUri = SDK_URL_MAPPING[name];\n if (!elementUri) {\n logError('[components-sdk] Element static resource not found', {\n sdkName: name\n });\n throw new InvalidStaticResourceError(\"Element \".concat(name, \" static resource URL is invalid.\"));\n }\n return \"\".concat(staticHost).concat(elementUri, \"?ts=\").concat(timestamp);\n};\nvar getFunctionsInstanceWithNamespace = function () {\n return DOMAIN_FUNCTIONS_NAMESPACES.reduce(function (result, namespace) {\n var _a;\n return (__assign(__assign({}, result), (_a = {}, _a[namespace] = window._AirwallexSDKs.__controller__.internalSDKs[namespace], _a)));\n }, {});\n};\nvar getSDKDependencies = function (sdkName) {\n return SDK_DEPENDENCIES[sdkName] || [];\n};\nvar now = function () { return Math.floor(performance.now()); };\n\nvar createScript = function (url) {\n var script = document.createElement('script');\n script.src = url;\n script.type = 'module';\n var parentDom = document.head || document.body;\n parentDom.appendChild(script);\n return script;\n};\nvar MAX_RETRY_COUNT = 3;\nvar loadScript = function (url) { return __awaiter(void 0, void 0, void 0, function () {\n var retryCount, tryToResolve;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (typeof window === 'undefined') {\n throw new Error('Please load script in browser environment');\n }\n retryCount = 0;\n tryToResolve = function () { return __awaiter(void 0, void 0, void 0, function () {\n var start, urlObj, script;\n return __generator(this, function (_a) {\n start = now();\n if (retryCount > 0 && url.includes('?ts=')) {\n urlObj = new URL(url, window.location.href);\n urlObj.searchParams.set('ts', \"\".concat(Date.now()));\n url = urlObj.toString();\n }\n script = createScript(url);\n return [2 /*return*/, new Promise(function (resolve, reject) {\n script.addEventListener('load', function () {\n var end = now();\n logInfo('[components-sdk] SDK script loaded', {\n scriptUrl: url,\n start: start,\n latency: end - start,\n end: end,\n retryCount: retryCount\n });\n resolve(true);\n });\n script.addEventListener('error', function (err) {\n script.remove();\n console.error(err);\n var end = now();\n logError('[components-sdk] Failed to load script', {\n scriptUrl: url,\n error: err,\n start: start,\n latency: end - start,\n end: end,\n retryCount: retryCount\n });\n reject(new LoadScriptError(\"Failed to load Airwallex SDK scripts: \".concat(url)));\n });\n })];\n });\n }); };\n _a.label = 1;\n case 1:\n if (!(retryCount < MAX_RETRY_COUNT)) return [3 /*break*/, 7];\n _a.label = 2;\n case 2:\n _a.trys.push([2, 4, , 6]);\n return [4 /*yield*/, tryToResolve()];\n case 3: return [2 /*return*/, _a.sent()];\n case 4:\n _a.sent();\n retryCount++;\n return [4 /*yield*/, sleep()];\n case 5:\n _a.sent();\n return [3 /*break*/, 6];\n case 6: return [3 /*break*/, 1];\n case 7:\n logError('[components-sdk] Failed to load script after retry', {\n scriptUrl: url,\n retryCount: retryCount\n });\n throw new LoadScriptError(\"Failed to load Airwallex SDK scripts: \".concat(url));\n }\n });\n}); };\n\nvar InstanceNotFoundError = /** @class */ (function (_super) {\n __extends(InstanceNotFoundError, _super);\n function InstanceNotFoundError(message) {\n var _this = _super.call(this, message) || this;\n _this.code = 'INSTANCE_NOT_FOUND_ERROR';\n return _this;\n }\n return InstanceNotFoundError;\n}(Error));\n\nvar initPromise;\n/**\n * ensure one script one promise\n */\nvar promiseMap = new Map();\n/**\n * get the Promise to load the element script\n * @param scriptName declare the SDK or Functions namespace\n * @param env the resource url\n * @returns Promise to load the script\n */\nvar getLoadScriptPromise = function (_a) {\n var env = _a.env, scriptName = _a.scriptName;\n var url = getSDKUrl({ name: scriptName, env: env });\n // if promise was made\n var sdkPromise = promiseMap.get(scriptName);\n if (sdkPromise) {\n return sdkPromise;\n }\n var loadScriptPromise = loadScript(url);\n promiseMap.set(scriptName, loadScriptPromise);\n return loadScriptPromise;\n};\n/**\n * Load an SDK script along with its dependencies\n * @param scriptName the SDK name to load\n * @param env the environment\n * @returns Promise that resolves when the SDK and all its dependencies are loaded\n */\nvar loadSDKWithDependencies = function (_a) {\n var env = _a.env, scriptName = _a.scriptName;\n return __awaiter(void 0, void 0, void 0, function () {\n var dependencies;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n dependencies = getSDKDependencies(scriptName);\n if (!(dependencies.length > 0)) return [3 /*break*/, 2];\n return [4 /*yield*/, Promise.all(dependencies.map(function (dep) { return getLoadScriptPromise({ env: env, scriptName: dep }); }))];\n case 1:\n _b.sent();\n _b.label = 2;\n case 2: return [2 /*return*/, getLoadScriptPromise({ env: env, scriptName: scriptName })];\n }\n });\n });\n};\n/**\n * SDK init, load controller script\n * @param options SDK init options\n * @returns Promise to load the script\n */\nvar init = function (options) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (typeof window === 'undefined') {\n throw new Error('Please call the `init()` function in a browser environment.');\n }\n // initialize airTracker\n initializeAirTracker(options.env, options.clientId);\n logInfo('[components-sdk] SDK init start', {\n options: maskPII(options),\n start: now()\n });\n initPromise = new Promise(function (resolve, reject) {\n var _a;\n var initOptions = __assign(__assign({}, options), { env: options.env && ENV[options.env] ? options.env : ENV.prod });\n window.AirwallexComponentsSDK.__env__ = initOptions.env;\n // load SDK controller script\n var controllerPromise = getLoadScriptPromise({\n env: initOptions.env,\n scriptName: SDK_CONTROLLER\n }).then(function () { return window._AirwallexSDKs.__controller__.init(initOptions); });\n // For old version backward compatibility\n var enabledElements = (_a = options.enabledElements) !== null && _a !== void 0 ? _a : [];\n var functionsNamespaces = getFunctionsByEnabledElements(enabledElements);\n // load SDK functions scripts\n var functionsPromises = functionsNamespaces.map(function (functionsNamespace) {\n return loadSDKWithDependencies({\n env: initOptions.env,\n scriptName: functionsNamespace\n })\n .then(function () { return controllerPromise; })\n .then(function () {\n var instance = window._AirwallexSDKs[getWindowSDKInstanceName(functionsNamespace)];\n if (!instance) {\n logError('[components-sdk] SDK instance not found', {\n functionsNamespace: functionsNamespace,\n windowSDKInstanceName: getWindowSDKInstanceName(functionsNamespace)\n });\n throw new InstanceNotFoundError(\"SDK instance not found\");\n }\n return window._AirwallexSDKs.__controller__.registerFunctions({\n functionsNamespace: functionsNamespace,\n instance: instance\n });\n });\n });\n // load SDK elements scripts\n var enabledSDKs = getSDKsByEnabledElements(enabledElements);\n var elementsPromises = enabledSDKs.map(function (_a) {\n var sdkNamespace = _a.sdkName, elementName = _a.elementName;\n return loadSDKWithDependencies({\n scriptName: sdkNamespace,\n env: initOptions.env\n })\n .then(function () { return controllerPromise; })\n .then(function () {\n var instance = window._AirwallexSDKs[getWindowSDKInstanceName(sdkNamespace)];\n if (!instance) {\n logError('[components-sdk] SDK instance not found', {\n sdkName: sdkNamespace,\n windowSDKInstanceName: getWindowSDKInstanceName(sdkNamespace)\n });\n throw new InstanceNotFoundError(\"SDK instance not found\");\n }\n return window._AirwallexSDKs.__controller__.registerElement({\n sdkName: sdkNamespace,\n elementName: elementName,\n instance: instance\n });\n });\n });\n Promise.all(__spreadArray(__spreadArray([controllerPromise], functionsPromises, true), elementsPromises, true))\n .then(function () {\n logInfo('[components-sdk] SDK initialized', {\n options: maskPII(options),\n start: now()\n });\n resolve(getFunctionsInstanceWithNamespace());\n })[\"catch\"](function (error) {\n if (!error.code) {\n logError('[components-sdk] Unexpected errors when init', { error: error });\n }\n reject(error);\n });\n });\n return [2 /*return*/, initPromise];\n });\n}); };\n/**\n * load SDK element script and call SDK instance.createElement.\n * @param elementName the element name to create\n * @param options createElement options\n * @returns return type of SDK instance.createElement\n */\nvar createElement = function (elementName, options) { return __awaiter(void 0, void 0, void 0, function () {\n var sdkName, start, elementInstance, end, error_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!elementName) {\n throw new Error('Element type is missing. Please specify a valid element.');\n }\n logInfo('[components-sdk] SDK createElement start', {\n elementName: elementName,\n options: maskPII(options),\n timestamp: now()\n });\n if (!initPromise) {\n logWarning('[components-sdk] Did not call init before createElement');\n throw new Error('Please initialize the Element before creating it.');\n }\n return [4 /*yield*/, initPromise];\n case 1:\n _a.sent();\n sdkName = getSDKByElementName(elementName);\n if (!sdkName) {\n throw new Error(\"`createElement()` with type `\".concat(elementName, \"` is not supported. Please specify a valid Element type.\"));\n }\n start = now();\n _a.label = 2;\n case 2:\n _a.trys.push([2, 6, , 7]);\n return [4 /*yield*/, loadSDKWithDependencies({\n scriptName: sdkName,\n env: window.AirwallexComponentsSDK.__env__ || ENV.prod\n })];\n case 3:\n _a.sent();\n return [4 /*yield*/, window._AirwallexSDKs.__controller__.registerElement({\n sdkName: sdkName,\n elementName: elementName,\n instance: window._AirwallexSDKs[getWindowSDKInstanceName(sdkName)]\n })];\n case 4:\n _a.sent();\n return [4 /*yield*/, window._AirwallexSDKs.__controller__.createElement(elementName, options)];\n case 5:\n elementInstance = _a.sent();\n end = now();\n logInfo('[components-sdk] SDK createElement being called', {\n elementName: elementName,\n options: maskPII(options),\n start: start,\n latency: end - start,\n end: end\n });\n return [3 /*break*/, 7];\n case 6:\n error_1 = _a.sent();\n if (!error_1.code) {\n logError('[components-sdk] Unexpected errors when createElement', {\n error: error_1\n });\n }\n else {\n throw error_1;\n }\n return [3 /*break*/, 7];\n case 7: return [2 /*return*/, elementInstance];\n }\n });\n}); };\n\n/**\n * List of scripts to prefetch\n */\nvar PREFETCH_SCRIPT_LIST = [SDK_CONTROLLER, PAYMENTS];\n/**\n * Prefetch scripts by preload link, only for production as there's no environment context before SDK init\n */\nvar prefetchScripts = function () {\n PREFETCH_SCRIPT_LIST.forEach(function (scriptName) {\n var url = getSDKUrl({ name: scriptName, env: ENV.prod });\n var preloadLink = document.createElement('link');\n preloadLink.href = url;\n preloadLink.rel = 'modulepreload';\n preloadLink.as = 'script';\n var parentDom = document.head || document.body;\n parentDom.appendChild(preloadLink);\n });\n};\n/**\n * @airwallex/components-sdk may run in node environment, e.g., in Next.js\n * Prefetch scripts only in browser environment\n */\nvar isNode = typeof document === 'undefined' || typeof window === 'undefined';\nif (!isNode) {\n if (document.readyState === 'loading') {\n document.addEventListener('DOMContentLoaded', prefetchScripts);\n }\n else {\n prefetchScripts();\n }\n}\n\nif (typeof window !== 'undefined') {\n if (!window.AirwallexComponentsSDK) {\n Object.defineProperties(window, {\n AirwallexComponentsSDK: {\n value: {},\n writable: false\n },\n _AirwallexSDKs: {\n value: {},\n writable: false\n }\n });\n }\n window.AirwallexComponentsSDK.init = init;\n window.AirwallexComponentsSDK.createElement = createElement;\n}\n\nexport { createElement, init };\n","import { createElement, init } from '@airwallex/components-sdk';\nimport type { Payment } from '@airwallex/components-sdk';\nimport { countryFromCurrency } from '../api/country';\nimport { resolveAirwallexEnv } from '../api/resolveApiBase';\nimport { isApplePaySupported, isGooglePaySupported } from '../api/walletSupport';\nimport { button, errorText, spinner } from '../components/shared/ui';\nimport { el, formatMoney, uid } from '../core/dom';\n\nconst ELEMENT_STYLE = {\n base: {\n fontSize: '14px',\n color: '#09090b',\n '::placeholder': { color: '#a1a1aa' },\n },\n} as unknown as Payment.InputStyle;\n\nconst BRAND_TO_NETWORK: Record<string, string> = {\n visa: 'visa',\n mastercard: 'mastercard',\n amex: 'amex',\n jcb: 'jcb',\n cup: 'unionpay',\n};\n\nlet airwallexReady: Promise<void> | null = null;\n\nexport function ensureAirwallex(apiBase: string): Promise<void> {\n if (!airwallexReady) {\n airwallexReady = init({\n env: resolveAirwallexEnv(apiBase),\n enabledElements: ['payments'],\n locale: 'en',\n }).then(() => undefined);\n }\n return airwallexReady;\n}\n\nexport async function mountAirwallexCard(opts: {\n container: HTMLElement;\n apiBase: string;\n intentId: string;\n clientSecret: string;\n currency: string;\n amount: number;\n autoCapture?: boolean;\n allowedBrands?: string[];\n onSuccess: () => void;\n onError: (message: string) => void;\n}): Promise<() => void> {\n await ensureAirwallex(opts.apiBase);\n const authFormId = uid('fy-awx-auth');\n const numberHost = el('div', { class: 'h-10 rounded-lg border border-zinc-200 px-3' });\n const expiryHost = el('div', { class: 'h-10 rounded-lg border border-zinc-200 px-3' });\n const cvcHost = el('div', { class: 'h-10 rounded-lg border border-zinc-200 px-3' });\n const form = el('form', { class: 'mt-4 flex flex-col gap-3' }, [\n field('Card number', numberHost),\n el('div', { class: 'grid grid-cols-2 gap-3' }, [\n field('Expiry', expiryHost),\n field('CVC', cvcHost),\n ]),\n el('div', { id: authFormId }),\n ]);\n const payBtn = button(`Pay ${formatMoney(opts.amount, opts.currency)}`);\n form.append(payBtn);\n opts.container.append(form);\n\n const intent: Payment.Intent = {\n id: opts.intentId,\n client_secret: opts.clientSecret,\n currency: opts.currency,\n };\n const networks = opts.allowedBrands\n ?.map((b) => BRAND_TO_NETWORK[b.toLowerCase()])\n .filter(Boolean);\n\n const [cardNumber, expiry, cvc] = await Promise.all([\n createElement('cardNumber', {\n intent,\n style: ELEMENT_STYLE,\n authFormContainer: authFormId,\n allowedCardNetworks: networks?.length ? (networks as Payment.CardNumberElementOptions['allowedCardNetworks']) : undefined,\n autoCapture: opts.autoCapture,\n }),\n createElement('expiry', { style: ELEMENT_STYLE }),\n createElement('cvc', { style: ELEMENT_STYLE }),\n ]);\n\n if (!cardNumber || !expiry || !cvc) {\n throw new Error('Could not create card input fields.');\n }\n\n cardNumber.mount(numberHost);\n expiry.mount(expiryHost);\n cvc.mount(cvcHost);\n\n const onSubmit = async (event: Event) => {\n event.preventDefault();\n payBtn.disabled = true;\n try {\n await (cardNumber as unknown as { confirm: (args: Record<string, unknown>) => Promise<unknown> }).confirm({\n intent_id: opts.intentId,\n client_secret: opts.clientSecret,\n });\n opts.onSuccess();\n } catch (error) {\n opts.onError(error instanceof Error ? error.message : 'Card payment failed');\n payBtn.disabled = false;\n }\n };\n form.addEventListener('submit', onSubmit);\n payBtn.addEventListener('click', onSubmit);\n\n return () => {\n form.removeEventListener('submit', onSubmit);\n cardNumber.destroy?.();\n expiry.destroy?.();\n cvc.destroy?.();\n };\n}\n\nexport async function mountAirwallexWallet(opts: {\n container: HTMLElement;\n apiBase: string;\n wallet: 'applepay' | 'googlepay';\n intentId: string;\n clientSecret: string;\n currency: string;\n amount: number;\n autoCapture?: boolean;\n allowedBrands?: string[];\n onSuccess: () => void;\n onError: (message: string) => void;\n}): Promise<() => void> {\n if (opts.wallet === 'applepay' && !isApplePaySupported()) {\n opts.container.append(errorText('Apple Pay is not supported in this browser.'));\n return () => undefined;\n }\n if (opts.wallet === 'googlepay' && !isGooglePaySupported()) {\n opts.container.append(errorText('Google Pay is not supported in this browser.'));\n return () => undefined;\n }\n\n await ensureAirwallex(opts.apiBase);\n const mountNode = el('div', { class: 'mt-4 min-h-[48px]' });\n const loading = spinner(`Loading ${opts.wallet === 'applepay' ? 'Apple Pay' : 'Google Pay'}…`);\n opts.container.append(loading, mountNode);\n\n const countryCode = countryFromCurrency(opts.currency);\n const amount = { value: opts.amount, currency: opts.currency } as unknown as Payment.Amount;\n const type = opts.wallet === 'applepay' ? 'applePayButton' : 'googlePayButton';\n const element = await createElement(type as 'applePayButton', {\n intent_id: opts.intentId,\n client_secret: opts.clientSecret,\n countryCode,\n amount,\n autoCapture: opts.autoCapture,\n buttonType: 'pay',\n buttonColor: 'black',\n } as Payment.ApplePayButtonOptions);\n\n if (!element) {\n loading.remove();\n opts.container.append(errorText('Could not create wallet button.'));\n return () => undefined;\n }\n\n element.mount(mountNode);\n loading.remove();\n const onSuccess = () => opts.onSuccess();\n const onError = (event?: { detail?: { message?: string } }) => {\n opts.onError(event?.detail?.message || 'Wallet payment failed.');\n };\n (element as { on: (ev: string, fn: (e?: { detail?: { message?: string } }) => void) => void }).on('success', onSuccess);\n (element as { on: (ev: string, fn: (e?: { detail?: { message?: string } }) => void) => void }).on('error', onError);\n\n return () => {\n element.destroy?.();\n };\n}\n\nfunction field(label: string, input: HTMLElement): HTMLElement {\n return el('label', { class: 'flex flex-col gap-1 text-sm font-medium text-zinc-700' }, [\n el('span', { text: label }),\n input,\n ]);\n}\n","import { el } from '../../core/dom';\n\nexport function startCountdown(\n host: HTMLElement,\n expiresAt: number,\n onExpire: () => void,\n): () => void {\n const label = el('p', { class: 'mt-2 text-sm text-zinc-500' });\n host.append(label);\n\n function tick() {\n const remaining = expiresAt - Date.now();\n if (remaining <= 0) {\n label.textContent = 'This QR code has expired.';\n onExpire();\n return;\n }\n const totalSec = Math.floor(remaining / 1000);\n const h = Math.floor(totalSec / 3600);\n const m = Math.floor((totalSec % 3600) / 60);\n const s = totalSec % 60;\n const pad = (n: number) => String(n).padStart(2, '0');\n label.textContent = h > 0 ? `Expires in ${h}:${pad(m)}:${pad(s)}` : `Expires in ${pad(m)}:${pad(s)}`;\n }\n\n tick();\n const id = window.setInterval(tick, 1000);\n return () => window.clearInterval(id);\n}\n","import encodeQR from 'qr';\nimport type { CheckoutPaymentResponse, PayOptions, PaymentMethod } from '../../types';\nimport { FinyxClient } from '../../api/client';\nimport { failureCode, interpretPaymentInfo } from '../../api/status';\nimport { isAlipayMethodType, isQrMethodType, isWalletMethodType } from '../../api/resolveElementType';\nimport { isAdyenProvider, mountAdyenFields } from '../../providers/adyen';\nimport { mountAirwallexCard, mountAirwallexWallet } from '../../providers/airwallex';\nimport { errorText, spinner } from '../shared/ui';\nimport { methodIcon } from '../shared/icons';\nimport { startCountdown } from '../shared/timer';\nimport { openThreeDSModal } from '../shared/ThreeDSModal';\nimport { el, parseSafeHttpUrl } from '../../core/dom';\nimport type { ElementContext } from '../../core/BaseElement';\n\nconst POLL_INTERVAL_MS = 3000;\nconst WECHATPAY_TTL_MS = 2 * 60 * 60 * 1000;\nconst DEFAULT_QR_TTL_MS = 10 * 60 * 1000;\n\nconst SCAN_INSTRUCTIONS: Record<string, string> = {\n wechatpay: 'Open the WeChat app on your phone, scan this QR code, and complete the payment.',\n paynow: 'Open your banking or PayNow app, scan this QR code, and complete the payment.',\n alipaycn: 'Open the Alipay app on your phone, scan this QR code, and complete the payment.',\n alipayhk: 'Open the AlipayHK app on your phone, scan this QR code, and complete the payment.',\n alipay: 'Open the Alipay app on your phone and complete the payment.',\n};\n\nexport function clientFrom(ctx: ElementContext): FinyxClient {\n return new FinyxClient(ctx.apiKey, ctx.apiBase);\n}\n\nexport async function createAndPay(\n ctx: ElementContext,\n options: PayOptions,\n method: PaymentMethod,\n): Promise<{ ok: true; data: CheckoutPaymentResponse } | { ok: false; message: string }> {\n return clientFrom(ctx).createPayment({\n amount: options.amount,\n currency: options.currency,\n orderId: options.orderId,\n items: options.items,\n returnUrl: options.returnUrl,\n autoCapture: options.autoCapture,\n metadata: options.metadata,\n paymentMethod: method,\n });\n}\n\nexport function mountPayUi(opts: {\n host: HTMLElement;\n ctx: ElementContext;\n method: PaymentMethod;\n options: PayOptions;\n result: CheckoutPaymentResponse;\n onSuccess: () => void;\n onError: (message: string) => void;\n}): () => void {\n const provider = opts.result.provider || opts.result.payment.platform;\n const paymentData = opts.result.paymentData || opts.result.paymentIntent || {};\n const paymentIntent = opts.result.paymentIntent || paymentData;\n const nextAction = paymentIntent?.next_action;\n const qrcode = nextAction?.qrcode || opts.result.paymentData?.action?.qrCodeData;\n const isRedirectIframe = nextAction?.type === 'redirect_iframe';\n const rawRedirectUrl =\n nextAction?.type === 'redirect'\n ? nextAction.url\n : !qrcode && !isRedirectIframe\n ? nextAction?.url\n : undefined;\n const redirectUrl = parseSafeHttpUrl(rawRedirectUrl);\n const methodType = opts.method.type;\n const cleanups: Array<() => void> = [];\n\n if (methodType === 'card') {\n if (isAdyenProvider(provider)) {\n const box = el('div', { class: 'mt-4' });\n opts.host.append(box);\n void mountAdyenFields({\n container: box,\n client: clientFrom(opts.ctx),\n paymentId: String(opts.result.payment.id),\n methodType,\n paymentData,\n amount: opts.options.amount,\n currency: opts.options.currency,\n showWordmark: opts.ctx.appearance.showWordmark !== false,\n onSuccess: opts.onSuccess,\n onError: opts.onError,\n }).then((stop) => cleanups.push(stop)).catch((error: unknown) => {\n opts.onError(error instanceof Error ? error.message : 'Failed to load card form');\n });\n return () => cleanups.forEach((fn) => fn());\n }\n const intentId = paymentIntent?.id;\n const clientSecret = paymentIntent?.client_secret;\n if (!intentId || !clientSecret) {\n opts.host.append(errorText('Card payment is unavailable — missing payment intent credentials.'));\n return () => undefined;\n }\n void mountAirwallexCard({\n container: opts.host,\n apiBase: opts.ctx.apiBase,\n intentId,\n clientSecret,\n currency: opts.options.currency,\n amount: opts.options.amount,\n autoCapture: opts.options.autoCapture,\n allowedBrands: opts.method.brands,\n onSuccess: opts.onSuccess,\n onError: opts.onError,\n }).then((stop) => cleanups.push(stop)).catch((error: unknown) => {\n opts.onError(error instanceof Error ? error.message : 'Failed to load card form');\n });\n return () => cleanups.forEach((fn) => fn());\n }\n\n if (isWalletMethodType(methodType)) {\n if (isAdyenProvider(provider)) {\n const box = el('div', { class: 'mt-4' });\n opts.host.append(box);\n void mountAdyenFields({\n container: box,\n client: clientFrom(opts.ctx),\n paymentId: String(opts.result.payment.id),\n methodType,\n paymentData,\n amount: opts.options.amount,\n currency: opts.options.currency,\n showWordmark: opts.ctx.appearance.showWordmark !== false,\n onSuccess: opts.onSuccess,\n onError: opts.onError,\n }).then((stop) => cleanups.push(stop)).catch((error: unknown) => {\n opts.onError(error instanceof Error ? error.message : 'Failed to load wallet');\n });\n return () => cleanups.forEach((fn) => fn());\n }\n const intentId = paymentIntent?.id;\n const clientSecret = paymentIntent?.client_secret;\n if (!intentId || !clientSecret) {\n opts.host.append(errorText(`${opts.method.name} is unavailable — missing payment intent credentials.`));\n return () => undefined;\n }\n void mountAirwallexWallet({\n container: opts.host,\n apiBase: opts.ctx.apiBase,\n wallet: methodType,\n intentId,\n clientSecret,\n currency: opts.options.currency,\n amount: opts.options.amount,\n autoCapture: opts.options.autoCapture,\n allowedBrands: opts.method.brands,\n onSuccess: opts.onSuccess,\n onError: opts.onError,\n }).then((stop) => cleanups.push(stop)).catch((error: unknown) => {\n opts.onError(error instanceof Error ? error.message : 'Failed to load wallet');\n });\n return () => cleanups.forEach((fn) => fn());\n }\n\n if (qrcode && (isQrMethodType(methodType) || isAlipayMethodType(methodType))) {\n return mountQrPay({\n host: opts.host,\n ctx: opts.ctx,\n qrcode,\n method: opts.method,\n paymentId: String(opts.result.payment.id),\n onSuccess: opts.onSuccess,\n onError: opts.onError,\n });\n }\n\n if (isAlipayMethodType(methodType) && (redirectUrl || isRedirectIframe)) {\n if (isRedirectIframe && redirectUrl) {\n const close = openThreeDSModal({\n url: redirectUrl,\n showWordmark: opts.ctx.appearance.showWordmark !== false,\n onSuccess: opts.onSuccess,\n onError: opts.onError,\n });\n return close;\n }\n if (redirectUrl) {\n opts.host.append(el('p', { class: 'mt-4 text-sm text-zinc-600', text: 'Redirecting…' }));\n window.location.assign(redirectUrl);\n return () => undefined;\n }\n }\n\n if (redirectUrl) {\n opts.host.append(el('p', { class: 'mt-4 text-sm text-zinc-600', text: 'Redirecting…' }));\n window.location.assign(redirectUrl);\n return () => undefined;\n }\n\n if (isRedirectIframe && nextAction?.url) {\n const url = parseSafeHttpUrl(nextAction.url);\n if (url) {\n return openThreeDSModal({\n url,\n showWordmark: opts.ctx.appearance.showWordmark !== false,\n onSuccess: opts.onSuccess,\n onError: opts.onError,\n });\n }\n }\n\n opts.host.append(errorText('This payment method could not be displayed.'));\n return () => undefined;\n}\n\nexport function mountQrPay(opts: {\n host: HTMLElement;\n ctx: ElementContext;\n qrcode: string;\n method: PaymentMethod;\n paymentId: string;\n onSuccess: () => void;\n onError: (message: string) => void;\n}): () => void {\n const ttl = opts.method.type === 'wechatpay' ? WECHATPAY_TTL_MS : DEFAULT_QR_TTL_MS;\n const expiresAt = Date.now() + ttl;\n const instruction =\n SCAN_INSTRUCTIONS[opts.method.type.toLowerCase()] ??\n 'Scan this QR code with your mobile app to complete the payment.';\n\n const wrap = el('div', { class: 'mt-4 flex flex-col items-center' });\n wrap.append(methodIcon(opts.method.type, opts.method.name));\n wrap.append(el('p', { class: 'mt-3 text-sm text-zinc-600 text-center', text: instruction }));\n\n let expired = false;\n let finished = false;\n const canvas = el('canvas', { class: 'mt-4 rounded-lg border border-zinc-200 bg-white' }) as HTMLCanvasElement;\n try {\n drawQr(canvas, opts.qrcode);\n wrap.append(canvas);\n } catch {\n wrap.append(errorText('Could not display QR code.'));\n opts.host.append(wrap);\n return () => undefined;\n }\n\n const timerHost = el('div');\n wrap.append(timerHost);\n const stopTimer = startCountdown(timerHost, expiresAt, () => {\n expired = true;\n opts.onError('This QR code has expired.');\n });\n\n opts.host.append(wrap);\n const client = clientFrom(opts.ctx);\n const poll = window.setInterval(async () => {\n if (expired || finished) return;\n const info = await client.getPayment(opts.paymentId);\n if (!info) return;\n const outcome = interpretPaymentInfo(info);\n if (outcome === 'success') {\n finished = true;\n opts.onSuccess();\n } else if (outcome === 'failed') {\n finished = true;\n opts.onError(info.paymentAttempt?.failure_details?.message || failureCode(info));\n }\n }, POLL_INTERVAL_MS);\n\n return () => {\n stopTimer();\n window.clearInterval(poll);\n };\n}\n\nfunction drawQr(canvas: HTMLCanvasElement, data: string) {\n const bitmap = encodeQR(data, 'raw', { ecc: 'high', scale: 1 }) as boolean[][];\n const ctx = canvas.getContext('2d', { alpha: false });\n if (!ctx) throw new Error('canvas');\n const dpr = window.devicePixelRatio || 1;\n const size = 240;\n canvas.width = size * dpr;\n canvas.height = size * dpr;\n canvas.style.width = `${size}px`;\n canvas.style.height = `${size}px`;\n ctx.scale(dpr, dpr);\n ctx.fillStyle = '#fff';\n ctx.fillRect(0, 0, size, size);\n const scale = Math.floor(size / bitmap.length);\n const delta = Math.floor((size - bitmap.length * scale) / 2);\n ctx.fillStyle = '#111';\n for (let row = 0; row < bitmap.length; row++) {\n for (let col = 0; col < bitmap[row].length; col++) {\n if (bitmap[row]?.[col]) ctx.fillRect(delta + col * scale, delta + row * scale, scale, scale);\n }\n }\n}\n\nexport { spinner };\n","import type { PaymentMethod } from '../../types';\nimport { BaseElement } from '../../core/BaseElement';\nimport { filterPaymentMethodsByBrowserSupport } from '../../api/walletSupport';\nimport { FinyxClient } from '../../api/client';\nimport { brandIcons, methodIcon } from '../shared/icons';\nimport { button, errorText, spinner, wordmark } from '../shared/ui';\nimport { cn, el, formatMoney } from '../../core/dom';\nimport { createAndPay, mountPayUi } from './payUi';\n\nexport class CheckoutElement extends BaseElement<'checkout'> {\n private methods: PaymentMethod[] = [];\n private selected: PaymentMethod | null = null;\n private step: 'list' | 'pay' = 'list';\n private stopPay: (() => void) | null = null;\n private loading = false;\n private loadingMethods = false;\n private payResult: Parameters<typeof mountPayUi>[0]['result'] | null = null;\n\n protected onUnmount(): void {\n this.stopPay?.();\n this.stopPay = null;\n super.onUnmount();\n }\n\n protected render(): void {\n if (!this.root) return;\n if (this.step === 'pay' && this.selected) {\n this.drawPay(this.payResult ?? undefined);\n return;\n }\n if (this.methods.length) {\n this.drawList();\n return;\n }\n if (this.loadingMethods) return;\n this.loadingMethods = true;\n this.root.replaceChildren(spinner('Loading payment methods…'));\n const client = new FinyxClient(this.ctx.apiKey, this.ctx.apiBase);\n void client\n .getPaymentMethods()\n .then((methods) => {\n this.methods = filterPaymentMethodsByBrowserSupport(methods);\n this.selected = this.methods[0] ?? null;\n this.drawList();\n })\n .catch((error: unknown) => {\n if (!this.root) return;\n this.root.replaceChildren(\n errorText(error instanceof Error ? error.message : 'Could not load payment methods'),\n );\n })\n .finally(() => {\n this.loadingMethods = false;\n });\n }\n\n private drawList() {\n if (!this.root) return;\n if (!this.methods.length) {\n this.root.replaceChildren(errorText('No payment methods are available for this outlet.'));\n return;\n }\n const list = el('div', { class: 'flex flex-col gap-2', role: 'radiogroup' });\n for (const method of this.methods) {\n const selected = this.selected?.type === method.type;\n const btn = el('button', {\n type: 'button',\n role: 'radio',\n 'aria-checked': selected ? 'true' : 'false',\n class: cn(\n 'flex w-full items-start gap-3 rounded-xl border p-3 text-left transition',\n selected ? 'border-blue-600 bg-blue-50' : 'border-zinc-200 hover:border-zinc-300',\n ),\n }) as HTMLButtonElement;\n btn.append(methodIcon(method.type, method.name));\n const meta = el('div', { class: 'min-w-0 flex-1' });\n meta.append(el('p', { class: 'text-sm font-medium', text: method.name }));\n const brands = brandIcons(method.brands);\n if (brands) meta.append(brands);\n btn.append(meta);\n btn.addEventListener('click', () => {\n this.selected = method;\n this.emit('select', method);\n this.drawList();\n });\n list.append(btn);\n }\n\n const continueBtn = button(this.loading ? 'Continuing…' : 'Continue', {\n disabled: this.loading || !this.selected,\n onClick: () => void this.startPay(),\n });\n\n const stack = el('div', { class: 'flex flex-col gap-4' }, [\n el('h3', { class: 'text-base font-semibold', text: 'Select a payment method' }),\n el('p', {\n class: 'text-sm text-zinc-500',\n text: `Amount due ${formatMoney(this.options.amount, this.options.currency)}`,\n }),\n list,\n continueBtn,\n ]);\n if (this.showWordmark) {\n stack.append(el('div', { class: 'mt-2 flex justify-center' }, [wordmark()]));\n }\n this.root.replaceChildren(stack);\n }\n\n private async startPay() {\n if (!this.selected || this.loading) return;\n this.loading = true;\n this.drawList();\n const result = await createAndPay(this.ctx, this.options, this.selected);\n this.loading = false;\n if (!result.ok) {\n this.drawList();\n this.root?.append(errorText(result.message));\n this.emit('error', { message: result.message });\n return;\n }\n this.step = 'pay';\n this.payResult = result.data;\n this.drawPay(result.data);\n }\n\n private drawPay(result?: Parameters<typeof mountPayUi>[0]['result']) {\n if (!this.root || !this.selected) return;\n this.stopPay?.();\n const back = button('← Change payment method', {\n variant: 'ghost',\n onClick: () => {\n this.stopPay?.();\n this.stopPay = null;\n this.payResult = null;\n this.step = 'list';\n this.drawList();\n },\n });\n const host = el('div');\n this.root.replaceChildren(\n back,\n el('h3', { class: 'mt-2 text-base font-semibold', text: `Pay with ${this.selected.name}` }),\n el('p', {\n class: 'mt-1 text-sm text-zinc-500',\n text: `Paying ${formatMoney(this.options.amount, this.options.currency)}`,\n }),\n host,\n );\n if (this.showWordmark) this.root.append(el('div', { class: 'mt-6 flex justify-center' }, [wordmark()]));\n\n if (!result) {\n host.append(spinner('Starting payment…'));\n void this.startPay();\n return;\n }\n\n this.stopPay = mountPayUi({\n host,\n ctx: this.ctx,\n method: this.selected,\n options: this.options,\n result,\n onSuccess: () =>\n this.emit('success', {\n paymentId: String(result.payment.id),\n orderId: this.options.orderId,\n resultCode: 'Authorised',\n status: 'success',\n }),\n onError: (message) => this.emit('error', { message }),\n });\n }\n}\n","import type { PaymentMethod } from '../../types';\nimport { BaseElement } from '../../core/BaseElement';\nimport { filterPaymentMethodsByBrowserSupport } from '../../api/walletSupport';\nimport { FinyxClient } from '../../api/client';\nimport { brandIcons, methodIcon } from '../shared/icons';\nimport { errorText, spinner } from '../shared/ui';\nimport { cn, el } from '../../core/dom';\n\nexport class PaymentMethodListElement extends BaseElement<'payment-method-list'> {\n private selected: PaymentMethod | null = null;\n private methods: PaymentMethod[] = [];\n private loadingMethods = false;\n\n protected render(): void {\n if (!this.root) return;\n if (this.methods.length) {\n this.drawList(this.methods);\n return;\n }\n if (this.loadingMethods) return;\n this.loadingMethods = true;\n this.root.replaceChildren(spinner('Loading payment methods…'));\n const client = new FinyxClient(this.ctx.apiKey, this.ctx.apiBase);\n void client\n .getPaymentMethods()\n .then((methods) => {\n this.methods = filterPaymentMethodsByBrowserSupport(methods);\n this.drawList(this.methods);\n })\n .catch((error: unknown) => {\n if (!this.root) return;\n this.root.replaceChildren(\n errorText(error instanceof Error ? error.message : 'Could not load payment methods'),\n );\n })\n .finally(() => {\n this.loadingMethods = false;\n });\n }\n\n private drawList(methods: PaymentMethod[]) {\n if (!this.root) return;\n if (!methods.length) {\n this.root.replaceChildren(errorText('No payment methods are available for this outlet.'));\n return;\n }\n if (!this.selected || !methods.some((m) => m.type === this.selected?.type)) {\n this.selected = methods[0];\n }\n const list = el('div', { class: 'flex flex-col gap-2', role: 'radiogroup' });\n for (const method of methods) {\n const selected = this.selected?.type === method.type;\n const btn = el('button', {\n type: 'button',\n role: 'radio',\n 'aria-checked': selected ? 'true' : 'false',\n class: cn(\n 'flex w-full items-start gap-3 rounded-xl border p-3 text-left transition',\n selected ? 'border-blue-600 bg-blue-50' : 'border-zinc-200 hover:border-zinc-300',\n ),\n }) as HTMLButtonElement;\n btn.append(methodIcon(method.type, method.name));\n const meta = el('div', { class: 'min-w-0 flex-1' });\n meta.append(el('p', { class: 'text-sm font-medium', text: method.name }));\n const brands = brandIcons(method.brands);\n if (brands) meta.append(brands);\n btn.append(meta);\n btn.addEventListener('click', () => {\n this.selected = method;\n this.emit('select', method);\n this.emit('change', { paymentMethod: method });\n this.drawList(methods);\n });\n list.append(btn);\n }\n this.root.replaceChildren(list);\n }\n}\n","import type { ElementType, PayOptions, PaymentMethod, PaymentResult } from '../../types';\nimport { BaseElement } from '../../core/BaseElement';\nimport { errorText, spinner, wordmark } from '../shared/ui';\nimport { el, formatMoney } from '../../core/dom';\nimport { createAndPay, mountPayUi } from './payUi';\n\nexport class MethodPayElement<T extends ElementType> extends BaseElement<T> {\n private stopPay: (() => void) | null = null;\n private lockedType?: string;\n\n withForcedType(type: string): this {\n this.lockedType = type;\n return this;\n }\n\n protected onUnmount(): void {\n this.stopPay?.();\n this.stopPay = null;\n super.onUnmount();\n }\n\n protected render(): void {\n if (!this.root) return;\n this.stopPay?.();\n const options = this.options as PayOptions;\n const method = this.resolveMethod(options);\n if (!method) {\n this.root.replaceChildren(errorText('A paymentMethod is required for this element.'));\n return;\n }\n this.root.replaceChildren(\n el('div', { class: 'flex flex-col gap-2' }, [\n el('h3', { class: 'text-base font-semibold', text: `Pay with ${method.name}` }),\n el('p', {\n class: 'text-sm text-zinc-500',\n text: `Paying ${formatMoney(options.amount, options.currency)}`,\n }),\n spinner('Starting payment…'),\n ]),\n );\n\n void createAndPay(this.ctx, options, method).then((result) => {\n if (!this.root) return;\n if (!result.ok) {\n this.root.replaceChildren(errorText(result.message));\n this.emit('error', { message: result.message });\n return;\n }\n const host = el('div');\n this.root.replaceChildren(\n el('h3', { class: 'text-base font-semibold', text: `Pay with ${method.name}` }),\n el('p', {\n class: 'mt-1 text-sm text-zinc-500',\n text: `Paying ${formatMoney(options.amount, options.currency)}`,\n }),\n host,\n );\n if (this.showWordmark) this.root.append(el('div', { class: 'mt-6 flex justify-center' }, [wordmark()]));\n this.stopPay = mountPayUi({\n host,\n ctx: this.ctx,\n method,\n options,\n result: result.data,\n onSuccess: () => this.emitSuccess(result.data.payment.id, options.orderId),\n onError: (message) => this.emit('error', { message }),\n });\n });\n }\n\n protected resolveMethod(options: PayOptions): PaymentMethod | null {\n if (this.lockedType) {\n return (\n options.paymentMethod ?? {\n type: this.lockedType,\n name: defaultName(this.lockedType),\n }\n );\n }\n return options.paymentMethod ?? null;\n }\n\n protected emitSuccess(paymentId: string, orderId?: string) {\n const payload: PaymentResult = {\n paymentId,\n orderId,\n resultCode: 'Authorised',\n status: 'success',\n };\n this.emit('success', payload);\n }\n}\n\nfunction defaultName(type: string): string {\n const names: Record<string, string> = {\n card: 'Credit Card',\n applepay: 'Apple Pay',\n googlepay: 'Google Pay',\n paynow: 'PayNow',\n wechatpay: 'WeChat Pay',\n alipay: 'Alipay',\n alipaycn: 'Alipay CN',\n alipayhk: 'Alipay HK',\n };\n return names[type] ?? type;\n}\n\nexport class CardElement extends MethodPayElement<'card'> {\n protected resolveMethod(options: PayOptions) {\n return options.paymentMethod ?? { type: 'card', name: 'Credit Card' };\n }\n}\n\nexport class QrPayElement extends MethodPayElement<'qr'> {}\nexport class WalletPayElement extends MethodPayElement<'wallet'> {}\nexport class AlipayElement extends MethodPayElement<'alipay'> {\n protected resolveMethod(options: PayOptions) {\n const method = options.paymentMethod;\n if (method) return method;\n return { type: 'alipay', name: 'Alipay' };\n }\n}\nexport class RedirectPayElement extends MethodPayElement<'redirect'> {}\nexport class PayNowElement extends MethodPayElement<'paynow'> {\n constructor(...args: ConstructorParameters<typeof MethodPayElement<'paynow'>>) {\n super(...args);\n this.withForcedType('paynow');\n }\n}\nexport class WeChatPayElement extends MethodPayElement<'wechatpay'> {\n constructor(...args: ConstructorParameters<typeof MethodPayElement<'wechatpay'>>) {\n super(...args);\n this.withForcedType('wechatpay');\n }\n}\nexport class ApplePayElement extends MethodPayElement<'applepay'> {\n constructor(...args: ConstructorParameters<typeof MethodPayElement<'applepay'>>) {\n super(...args);\n this.withForcedType('applepay');\n }\n}\nexport class GooglePayElement extends MethodPayElement<'googlepay'> {\n constructor(...args: ConstructorParameters<typeof MethodPayElement<'googlepay'>>) {\n super(...args);\n this.withForcedType('googlepay');\n }\n}\nexport class AlipayCNElement extends MethodPayElement<'alipaycn'> {\n constructor(...args: ConstructorParameters<typeof MethodPayElement<'alipaycn'>>) {\n super(...args);\n this.withForcedType('alipaycn');\n }\n}\nexport class AlipayHKElement extends MethodPayElement<'alipayhk'> {\n constructor(...args: ConstructorParameters<typeof MethodPayElement<'alipayhk'>>) {\n super(...args);\n this.withForcedType('alipayhk');\n }\n}\n","import { BaseElement } from '../../core/BaseElement';\nimport { wordmark } from '../shared/ui';\nimport { el } from '../../core/dom';\n\nexport class PaymentResultElement extends BaseElement<'payment-result'> {\n protected render(): void {\n if (!this.root) return;\n const status = this.options.status ?? 'pending';\n const title =\n status === 'success' ? 'Payment successful' : status === 'failed' ? 'Payment failed' : 'Payment pending';\n const color =\n status === 'success' ? 'text-emerald-600' : status === 'failed' ? 'text-red-600' : 'text-zinc-600';\n const stack = el('div', { class: 'flex flex-col items-center gap-2 py-8 text-center' }, [\n el('h3', { class: `text-lg font-semibold ${color}`, text: title }),\n this.options.message\n ? el('p', { class: 'text-sm text-zinc-500', text: this.options.message })\n : null,\n this.options.paymentId\n ? el('p', { class: 'text-xs text-zinc-400', text: `Payment ${this.options.paymentId}` })\n : null,\n ]);\n if (this.showWordmark) stack.append(el('div', { class: 'mt-4' }, [wordmark()]));\n this.root.replaceChildren(stack);\n }\n}\n","import type {\n ElementOptionsMap,\n ElementType,\n FinyxElement,\n} from '../types';\nimport type { ElementContext } from './BaseElement';\nimport { CheckoutElement } from '../components/core/Checkout';\nimport { PaymentMethodListElement } from '../components/core/PaymentMethodList';\nimport {\n AlipayCNElement,\n AlipayElement,\n AlipayHKElement,\n ApplePayElement,\n CardElement,\n GooglePayElement,\n PayNowElement,\n QrPayElement,\n RedirectPayElement,\n WalletPayElement,\n WeChatPayElement,\n} from '../components/core/methodElements';\nimport { PaymentResultElement } from '../components/core/PaymentResult';\n\nexport function instantiateElement<T extends ElementType>(\n type: T,\n options: ElementOptionsMap[T],\n ctx: ElementContext,\n): FinyxElement<T> {\n switch (type) {\n case 'checkout':\n return new CheckoutElement(type, options as ElementOptionsMap['checkout'], ctx) as unknown as FinyxElement<T>;\n case 'payment-method-list':\n return new PaymentMethodListElement(\n type,\n options as ElementOptionsMap['payment-method-list'],\n ctx,\n ) as unknown as FinyxElement<T>;\n case 'card':\n return new CardElement(type, options as ElementOptionsMap['card'], ctx) as unknown as FinyxElement<T>;\n case 'qr':\n return new QrPayElement(type, options as ElementOptionsMap['qr'], ctx) as unknown as FinyxElement<T>;\n case 'wallet':\n return new WalletPayElement(type, options as ElementOptionsMap['wallet'], ctx) as unknown as FinyxElement<T>;\n case 'alipay':\n return new AlipayElement(type, options as ElementOptionsMap['alipay'], ctx) as unknown as FinyxElement<T>;\n case 'redirect':\n return new RedirectPayElement(type, options as ElementOptionsMap['redirect'], ctx) as unknown as FinyxElement<T>;\n case 'payment-result':\n return new PaymentResultElement(\n type,\n options as ElementOptionsMap['payment-result'],\n ctx,\n ) as unknown as FinyxElement<T>;\n case 'paynow':\n return new PayNowElement(type, options as ElementOptionsMap['paynow'], ctx) as unknown as FinyxElement<T>;\n case 'wechatpay':\n return new WeChatPayElement(type, options as ElementOptionsMap['wechatpay'], ctx) as unknown as FinyxElement<T>;\n case 'applepay':\n return new ApplePayElement(type, options as ElementOptionsMap['applepay'], ctx) as unknown as FinyxElement<T>;\n case 'googlepay':\n return new GooglePayElement(type, options as ElementOptionsMap['googlepay'], ctx) as unknown as FinyxElement<T>;\n case 'alipaycn':\n return new AlipayCNElement(type, options as ElementOptionsMap['alipaycn'], ctx) as unknown as FinyxElement<T>;\n case 'alipayhk':\n return new AlipayHKElement(type, options as ElementOptionsMap['alipayhk'], ctx) as unknown as FinyxElement<T>;\n default:\n throw new Error(`[@finyxpay/ui] Unknown element type: \"${type as string}\"`);\n }\n}\n","import type {\n Appearance,\n ElementOptionsMap,\n ElementType,\n FinyxElement,\n InitOptions,\n PaymentMethod,\n} from '../types';\nimport { FinyxClient, _resetPaymentMethodsCache } from '../api/client';\nimport { resolveApiBase } from '../api/resolveApiBase';\nimport { instantiateElement } from './instantiate';\nimport type { ElementContext } from './BaseElement';\n\nexport class Finyx {\n readonly apiKey: string;\n readonly apiBase: string;\n readonly locale: string;\n readonly appearance: Appearance;\n private readonly client: FinyxClient;\n private methodsCache: PaymentMethod[] | null = null;\n\n constructor(options: InitOptions) {\n if (!options.apiKey?.trim()) {\n throw new Error('[@finyxpay/ui] A public API key is required.');\n }\n this.apiKey = options.apiKey.trim();\n this.apiBase = resolveApiBase(this.apiKey, options.apiBase);\n this.locale = options.locale ?? 'en';\n this.appearance = { showWordmark: true, ...options.appearance };\n this.client = new FinyxClient(this.apiKey, this.apiBase);\n void this.client\n .getPaymentMethods()\n .then((methods) => {\n this.methodsCache = methods;\n })\n .catch(() => {\n /* prefetch is optional */\n });\n }\n\n private context(): ElementContext {\n return {\n apiKey: this.apiKey,\n apiBase: this.apiBase,\n locale: this.locale,\n appearance: this.appearance,\n };\n }\n\n async createElement<T extends ElementType>(\n type: T,\n options: ElementOptionsMap[T],\n ): Promise<FinyxElement<T>> {\n return instantiateElement(type, options, this.context());\n }\n\n async getPaymentMethods(): Promise<PaymentMethod[]> {\n if (this.methodsCache) return this.methodsCache;\n const methods = await this.client.getPaymentMethods();\n this.methodsCache = methods;\n return methods;\n }\n}\n\nlet instance: Finyx | null = null;\n\nexport async function init(options: InitOptions): Promise<Finyx> {\n if (instance && instance.apiKey === options.apiKey.trim()) {\n return instance;\n }\n instance = new Finyx(options);\n return instance;\n}\n\nexport function getInstance(): Finyx {\n if (!instance) {\n throw new Error('[@finyxpay/ui] Call init({ apiKey }) before createElement.');\n }\n return instance;\n}\n\nexport async function createElement<T extends ElementType>(\n type: T,\n options: ElementOptionsMap[T],\n): Promise<FinyxElement<T>> {\n return getInstance().createElement(type, options);\n}\n\nexport function _resetForTests() {\n instance = null;\n _resetPaymentMethodsCache();\n}\n","import './styles/index.css';\n\nexport { init, createElement, Finyx } from './core/Finyx';\nexport { resolveApiBase } from './api/resolveApiBase';\nexport { resolveElementType } from './api/resolveElementType';\nexport {\n isApplePaySupported,\n isGooglePaySupported,\n filterPaymentMethodsByBrowserSupport,\n} from './api/walletSupport';\n\nexport type {\n Appearance,\n AppearanceTheme,\n InitOptions,\n PaymentMethod,\n CheckoutItem,\n PayOptions,\n ElementType,\n ElementOptionsMap,\n FinyxElement,\n PaymentResult,\n ElementEventMap,\n CheckoutPaymentResponse,\n CheckoutElementOptions,\n CardElementOptions,\n QrElementOptions,\n WalletElementOptions,\n AlipayElementOptions,\n RedirectElementOptions,\n PaymentMethodListOptions,\n PaymentResultOptions,\n} from './types';\n\nimport { init, createElement, Finyx } from './core/Finyx';\nimport { resolveApiBase } from './api/resolveApiBase';\nimport { resolveElementType } from './api/resolveElementType';\n\nconst api = { init, createElement, Finyx, resolveApiBase, resolveElementType };\n\ndeclare global {\n interface Window {\n Finyx?: typeof api;\n }\n}\n\nif (typeof window !== 'undefined') {\n window.Finyx = api;\n}\n"],"names":["methodsCache","methodsInflight","FinyxClient","apiKey","apiBase","key","cached","pending","request","methods","res","body","messageFromBody","payload","error","paymentId","record","API_BASE_BY_PREFIX","resolveApiBase","custom","mode","resolved","resolveAirwallexEnv","VAR_MAP","applyAppearance","root","appearance","theme","vars","value","cssVar","cn","parts","el","tag","attrs","children","node","child","clear","formatMoney","amount","currency","parseSafeHttpUrl","url","parsed","uid","prefix","BaseElement","type","options","ctx","container","event","handler","data","isIosDevice","ua","isIpadOs","isApplePaySupported","isGooglePaySupported","isPaymentMethodSupportedInBrowser","filterPaymentMethodsByBrowserSupport","method","card","applepay","googlepay","alipaycn","alipayhk","alipay","wechatpay","paynow","visa","mastercard","amex","jcb","cup","METHOD_SVG","BRAND_SVG","initialsFromName","name","methodIcon","svg","wrap","inner","brandIcons","brands","row","brand","box","wordmarkSvg","wordmark","mark","icon","svgMarkup","label","button","opts","variant","btn","spinner","errorText","message","chCodes","assertNumber","n","validateVersion","ver","bin","dec","pad","mod","a","b","result","fillArr","length","val","popcnt","interleaveBytes","blocks","maxLen","totalLen","block","idx","best","bestScore","score","alphabet","char","input","letter","index","digits","i","transpose32","masks","stage","m","s","step","k","i0","i1","x","y","t","bitMask","rangeMask","shift","len","Bitmap","size","limit","lines","height","width","rows","line","p","offset","c","wi","mask","v","defined","x0","y0","w","h","words","startWord","endWord","startBit","endBit","ry","rowBase","cb","yPos","Py","xPos","bitX","bit","word","bitsPerWord","fn","defWord","valWord","border","out","src","srcStride","srcValue","srcRow","dstX","dstWord","dstBit","srcWord","srcBit","w0","w1","sVal","dstMask","valBits","rect","cur","dst","dstStride","dstValue","dstDefined","dstTail","tmpV","tmpD","by","bx","r","dstY","dstPos","curMask","factor","tailMask","fullWords","patternLen","patterns","count","window","bitEnd","runLen","runValue","base0","base1","validLast","boxes","a0","a1","eqV","n0","eqH0","n1","eqH1","nl","first","second","cc","reset","whiteBG","darkBG","optimize","pathData","prevPoint","point","relM","bH","u16le","dims","_","N","bytes","fullChunks","isRGB","ECMode","Encoding","BYTES","WORDS_PER_BLOCK","ECC_BLOCKS","info","last","distance","interval","ecc","maskIdx","d","numBlocks","blockLen","shortBlocks","PATTERNS","_x","_y","GF","p_poly","exp","log","e","poly","degree","coefficient","coefficients","j","scalar","smaller","larger","sumDiff","lengthDiff","divisor","elm","g","R","rLast","tLast","rLastLast","tLastLast","q","dltInverse","degreeDiff","scale","sigmaTildeAtZero","inverse","RS","eccWords","from","pol","to","syndrome","hasError","evl","monomial","errorLocator","errorEvaluator","locations","pos","xiInverse","denominator","interleave","total","rs","eccBlocks","isShort","resBlocks","resECC","drawTemplate","test","finder","align","alignPos","bits","getBit","zigzag","tpl","pattern","dir","xOffset","detectType","str","utf8ToBytes","encode","encoder","encoded","dataLen","utf8","capacity","padding","drawQR","need","mkPattern","finderPattern","lightPattern","P1","P2","penalty","bm","transposed","adjacent","darkPixels","darkPercent","dark","drawQRBest","bestMask","validateECC","ec","validateEncoding","enc","validateMask","encodeQR","text","output","encoding","err","SUCCESS_TX","FAILED_TX","SUCCESS_INTENT","FAILED_INTENT","SUCCESS_ATTEMPT","FAILED_ATTEMPT","interpretPaymentInfo","tx","intent","attempt","failureCode","FAMILY","resolveElementType","methodType","isWalletMethodType","isQrMethodType","isAlipayMethodType","l","o","u","f","C","P","S","U","I","B","T","M","D","E","W","V","F","z","L","A","H","O","$","G","J","K","e$18","o$M","r$J","O$3","r$B","e$P","s$t","t$M","Q","X","Y","Z","ee","ne","te","le","ie","oe","re","se","ae","s$h","de","ue","ce","me","pe","ye","fe","he","be","Se","ge","Ne","Ae","Ce","Fe","je","ve","we","xe","Be","Ee","Pe","ke","Re","Ie","Ve","De","Oe","qe","Me","_e","Le","Te","Ue","Ke","He","ze","We","$e","Ge","Je","Qe","Xe","Ye","Ze","er","rr","tr","or","nr","sr","ar","ir","lr","dr","ur","cr","mr","pr","yr","fr","Sr","hr","br","gr","Nr","r$j","r$i","r$h","s$d","n$y","a$n","r$f","S$3","n$r","d$4","i$b","r$9","P$1","b$1","D$2","D$1","n$i","o$d","s$5","s$3","h$1","e$4","r$6","l$1","e$3","r$4","i$4","a$4","o$7","t$2","CURRENCY_TO_COUNTRY","countryFromCurrency","openThreeDSModal","overlay","header","title","close","iframe","onMessage","cleanup","componentCtor","ApplePay","GooglePay","Card","mountAdyenFields","clientKey","component","closeModal","checkout","AdyenCheckout","state","cmp","handleConfirm","Ctor","action","resultCode","actionType","isAdyenProvider","provider","_array_like_to_array","arr","arr2","_array_with_holes","_array_without_holes","asyncGeneratorStep","gen","resolve","reject","_next","_throw","arg","_async_to_generator","self","args","_class_call_check","instance","Constructor","_defineProperties","target","props","descriptor","_create_class","protoProps","staticProps","_define_property","obj","_instanceof","left","right","_iterable_to_array","iter","_iterable_to_array_limit","_i","_arr","_n","_d","_s","_non_iterable_rest","_non_iterable_spread","_object_spread","source","ownKeys","sym","object","enumerableOnly","keys","symbols","_object_spread_props","_sliced_to_array","_unsupported_iterable_to_array","_to_consumable_array","_type_of","minLen","_ts_generator","thisArg","verb","op","Environment","Environment2","UNKNOWN_VALUE","DEFAULT_CONFIG","DEFAULT_COMMON_DATA","isJSON","safeReplacer","seen","safeStringify","param","_param_method","success","fail","xhr","lifeCycleEventName","DEVICE_ID_STORAGE_KEY","SESSION_ID_STORAGE_KEY","RISK_DEVICE_ID_STORAGE_KEY","loggingServiceUrl","env","loggingServiceMetricsUrl","generateUId","deviceId","getMFEName","airTracker2","_location_pathname_split","_location_pathname","_location","getSessionId","sessionId","getDeviceId","getRiskDeviceId","getNetworkType","_navigator","netType","ref","_navigator_connection","_navigator1","_navigator_connection1","_navigator2","parseNetType","net","canUseResourceTiming","formatUrl","hostUrl","getQueryString","urlIsHttps","isHostProtocol","getReportVal","rawVal","isDefaultByString","checkIfInWhiteList","_airTracker2_config_assetSpeedMonitoringWhiteListByMFE","isInWhiteList","checkIfInWhiteListHelper","MFEName","whiteList","roundSubtract","precision","sendNormalLogPipe","logs","_airTracker2_MFECommonDataMap","commonData","finalLog","dataBody","sendOptions","sendMetricsLogPipe","throttlePipe","maxLength","timer","retainedLogs","config","errorLogLimitPipe","errorLogMap","maxNum","noop","createPipeline","pipeArr","msg","prePipe","pipe","nextPipe","msg2","EventEmitter","_this","events","array","callback","AirTrackerPlugin","pluginOption","_this_option_setUp","_this_option","_this_option_destroy","airTracker","onError","errString","unhandledrejectionHandler","reason","errorHandler","tagName","staticFileType","errorDetectionPlugin","airTrackerInst","ASSETS_INITIATOR_TYPE","COLLECTED_ENTRY_TYPE","generateSpeedLog","entry","resourceURl","publishSpeedLogs","entries","observer","assetSpeedPlugin","collectCur","list","allEntries","collectEntries","observer2","onPageChangePlugin","_ref","previousUrl","sendOnPageChangeEvent","_state","prevHref","_location1","_location2","_location3","_location4","tempPreviousUrl","observer3","onPageRetentionPlugin","enterPageTimeStamp","startRecording","sendPageRetentionEvent","href","sendImmediate","leftReason","duration","generateRandomId","checkIfInWhiteList2","defaultWhiteList","defaultExclusionList","item","findMainEntry","performanceItem","startTime","endTime","filteredEntries","round2Decimal","processPerformanceEntry","responseStart","connectEnd","connectStart","domainLookupEnd","domainLookupStart","requestStart","secureConnectionStart","redirectEnd","redirectStart","responseStatus","responseEnd","encodedBodySize","decodedBodySize","transferSize","deliveryType","initiatorType","getPayload","extraInfo","errorType","errorDetail","mainEntry","protocol","payloadFromPerformanceEntry","isGraphQLError","responseBody","API_PERFORMANCE_QUEUE","API_PERFORMANCE_PLUGIN_LOADED","OBSERVER_WAIT_TIME_MS","TIMEOUT_WAIT_TIME_MS","globalObject","handlePayloadAndSendLog","apiPerformanceItem","handleTimeout","requestId","matchedApiPerformanceItem","injectXMLHttpRequest","originalOpen","originalSend","async","username","password","_airTracker2_config","urlString","_len","_key","_this1","status","blob","parsedBody","injectFetch","originalFetch","id","response","clonedResponse","error1","exceptionType","_arguments","setUpAPIPerformancePlugin","_window","observer4","resourceEntry","items","apiPerformancePlugin","_airTracker2_config1","SDK_VERSION","AirTracker","_param_plugins","plugins","severity","eventName","packedData","extraData","MFECommonData","_this__MFECommonDataMap","setValue","_item","delta","_this_config_assetSpeedMonitoringWhiteListByMFE","_this_config_assetSpeedMonitoringWhiteListByMFE_MFEName","_this_config_assetSpeedMonitoringWhiteListByMFE_MFEName1","_this_config_assetSpeedMonitoringWhiteListByMFE1","src_default","extendStatics","__extends","__","__assign","__awaiter","generator","adopt","fulfilled","rejected","__generator","__spreadArray","pack","version","packageJson","airTrackerENV","initializeAirTracker","clientId","maskPII","result_1","sens","logError","_a","_b","logWarning","logInfo","LoadScriptError","_super","ENV","PA_STATIC_HOST","STATIC_HOST","SDK_CONTROLLER","PAYMENTS","SDK_URL_MAPPING","ELEMENT_TO_SDK","ELEMENT_GROUP_TO_ELEMENT","SDK_DEPENDENCIES","DOMAIN_FUNCTIONS_NAMESPACES","InvalidStaticResourceError","timestamp","isElementGroup","sleep","delay","getSDKByElementName","elementName","getHost","host","getSDKsByEnabledElements","enabledElements","usedElements","elementArr","enabledEle","getFunctionsByEnabledElements","sdkName","usedSdkName","getWindowSDKInstanceName","getSDKUrl","staticHost","elementUri","getFunctionsInstanceWithNamespace","namespace","getSDKDependencies","now","createScript","script","parentDom","MAX_RETRY_COUNT","loadScript","retryCount","tryToResolve","start","urlObj","end","InstanceNotFoundError","initPromise","promiseMap","getLoadScriptPromise","scriptName","sdkPromise","loadScriptPromise","loadSDKWithDependencies","dependencies","dep","init","initOptions","controllerPromise","functionsNamespaces","functionsPromises","functionsNamespace","enabledSDKs","elementsPromises","sdkNamespace","createElement","elementInstance","error_1","PREFETCH_SCRIPT_LIST","prefetchScripts","preloadLink","isNode","ELEMENT_STYLE","BRAND_TO_NETWORK","airwallexReady","ensureAirwallex","mountAirwallexCard","authFormId","numberHost","expiryHost","cvcHost","form","field","payBtn","networks","cardNumber","expiry","cvc","onSubmit","mountAirwallexWallet","mountNode","loading","countryCode","element","onSuccess","startCountdown","expiresAt","onExpire","tick","remaining","totalSec","POLL_INTERVAL_MS","WECHATPAY_TTL_MS","DEFAULT_QR_TTL_MS","SCAN_INSTRUCTIONS","clientFrom","createAndPay","mountPayUi","paymentData","paymentIntent","nextAction","qrcode","isRedirectIframe","rawRedirectUrl","redirectUrl","cleanups","stop","intentId","clientSecret","mountQrPay","ttl","instruction","expired","finished","canvas","drawQr","timerHost","stopTimer","client","poll","outcome","bitmap","dpr","col","CheckoutElement","selected","meta","continueBtn","stack","back","PaymentMethodListElement","MethodPayElement","defaultName","orderId","CardElement","QrPayElement","WalletPayElement","AlipayElement","RedirectPayElement","PayNowElement","WeChatPayElement","ApplePayElement","GooglePayElement","AlipayCNElement","AlipayHKElement","PaymentResultElement","instantiateElement","Finyx","getInstance","api"],"mappings":"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","x_google_ignoreList":[22,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,352,353]}