From 9daf90cb98583cc76828ba5405cee894bea75da5 Mon Sep 17 00:00:00 2001 From: Adyen-GIT-Manager Date: Mon, 23 Apr 2018 15:24:24 +0200 Subject: [PATCH] Release 1.18.0 --- .swiftlint.yml | 1 + Adyen.xcodeproj/project.pbxproj | 62 +-- .../xcshareddata/xcschemes/Adyen.xcscheme | 4 +- .../xcschemes/AdyenUIHost.xcscheme | 4 +- .../xcshareddata/IDEWorkspaceChecks.plist | 8 + Adyen/Core/CurrencyFormatter.swift | 26 +- Adyen/Core/Enum/InputType.swift | 4 +- Adyen/Core/InputDetail.swift | 2 +- Adyen/Core/PaymentMethod.swift | 2 +- Adyen/Core/PaymentRequestToken.swift | 8 +- Adyen/Core/PaymentSetup.swift | 8 +- .../Appearance/AppearanceConfiguration.swift | 19 + Adyen/CoreUI/Container/ContainerView.swift | 2 +- .../Plugins/PaymentDetailsPresenter.swift | 2 +- .../ApplePay/ApplePayDetailsPresenter.swift | 16 +- .../Cards/CardFormDetailsPresenter.swift | 4 +- .../Cards/CardFormViewController.swift | 6 +- .../Plugins/Cards/CardFormViewController.xib | 5 +- .../Cards/CardOneClickDetailsPresenter.swift | 3 +- .../Cards/Utilities/CardValidator.swift | 2 +- .../SEPADirectDebit/IBAN/IBANValidator.swift | 2 +- .../SEPADirectDebitDetailsPresenter.swift | 3 +- .../SEPADirectDebitFormViewController.swift | 9 +- .../UI/Checkout/CheckoutViewController.swift | 8 +- AdyenTests/Core/CurrencyFormatterTests.swift | 22 +- Docs/Classes/AmountFormatter.html | 293 +++++++++++++++ Docs/Classes/AppearanceConfiguration.html | 184 ++++++--- .../NavigationBarLargeTitleDisplayMode.html | 54 ++- Docs/Classes/CardValidator.html | 40 +- Docs/Classes/CheckoutViewController.html | 48 ++- Docs/Classes/IBANTextField.html | 40 +- Docs/Classes/IBANValidator.html | 36 +- Docs/Classes/InputDetail.html | 72 ++-- Docs/Classes/InputSelectItem.html | 52 ++- Docs/Classes/Payment.html | 88 +++-- Docs/Classes/PaymentDetails.html | 60 ++- Docs/Classes/PaymentDetails/Address.html | 76 ++-- Docs/Classes/PaymentMethod.html | 83 ++-- Docs/Classes/PaymentRequest.html | 104 ++++-- Docs/Enums/CardType.html | 280 ++++---------- Docs/Enums/Error.html | 72 ++-- Docs/Enums/InputType.html | 84 ++--- Docs/Enums/PaymentRequestResult.html | 48 ++- Docs/Enums/PaymentStatus.html | 66 ++-- Docs/Other Classes.html | 246 ++++++++++++ Docs/Other Typealiases.html | 353 ++++++++++++++++++ Docs/Payment Method.html | 49 ++- Docs/Payment Request.html | 41 +- Docs/Payment.html | 37 +- ...heckoutViewControllerCardScanDelegate.html | 44 ++- .../CheckoutViewControllerDelegate.html | 40 +- Docs/Protocols/PaymentRequestDelegate.html | 44 ++- Docs/Structs/CardOneClickInfo.html | 64 +++- Docs/Structs/IBANSpecification.html | 66 +++- Docs/Structs/PayPalOneClickInfo.html | 46 ++- Docs/UI.html | 41 +- Docs/Utilities.html | 43 ++- .../Documents/Classes/AmountFormatter.html | 293 +++++++++++++++ .../Classes/AppearanceConfiguration.html | 184 ++++++--- .../NavigationBarLargeTitleDisplayMode.html | 54 ++- .../Documents/Classes/CardValidator.html | 40 +- .../Classes/CheckoutViewController.html | 48 ++- .../Documents/Classes/IBANTextField.html | 40 +- .../Documents/Classes/IBANValidator.html | 36 +- .../Documents/Classes/InputDetail.html | 72 ++-- .../Documents/Classes/InputSelectItem.html | 52 ++- .../Resources/Documents/Classes/Payment.html | 88 +++-- .../Documents/Classes/PaymentDetails.html | 60 ++- .../Classes/PaymentDetails/Address.html | 76 ++-- .../Documents/Classes/PaymentMethod.html | 83 ++-- .../Documents/Classes/PaymentRequest.html | 104 ++++-- .../Resources/Documents/Enums/CardType.html | 280 ++++---------- .../Resources/Documents/Enums/Error.html | 72 ++-- .../Resources/Documents/Enums/InputType.html | 84 ++--- .../Documents/Enums/PaymentRequestResult.html | 48 ++- .../Documents/Enums/PaymentStatus.html | 66 ++-- .../Resources/Documents/Other Classes.html | 246 ++++++++++++ .../Documents/Other Typealiases.html | 353 ++++++++++++++++++ .../Resources/Documents/Payment Method.html | 49 ++- .../Resources/Documents/Payment Request.html | 41 +- .../Contents/Resources/Documents/Payment.html | 37 +- ...heckoutViewControllerCardScanDelegate.html | 44 ++- .../CheckoutViewControllerDelegate.html | 40 +- .../Protocols/PaymentRequestDelegate.html | 44 ++- .../Documents/Structs/CardOneClickInfo.html | 64 +++- .../Documents/Structs/IBANSpecification.html | 66 +++- .../Documents/Structs/PayPalOneClickInfo.html | 46 ++- .../Contents/Resources/Documents/UI.html | 41 +- .../Resources/Documents/Utilities.html | 43 ++- .../Contents/Resources/Documents/index.html | 38 +- .../Contents/Resources/Documents/search.json | 2 +- .../Contents/Resources/docSet.dsidx | Bin 57344 -> 61440 bytes Docs/docsets/Adyen.tgz | Bin 223050 -> 227654 bytes Docs/index.html | 38 +- Docs/search.json | 2 +- Docs/undocumented.json | 43 ++- Podfile | 2 +- 97 files changed, 4627 insertions(+), 1518 deletions(-) create mode 100644 Adyen.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 Docs/Classes/AmountFormatter.html create mode 100644 Docs/Other Classes.html create mode 100644 Docs/Other Typealiases.html create mode 100644 Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AmountFormatter.html create mode 100644 Docs/docsets/Adyen.docset/Contents/Resources/Documents/Other Classes.html create mode 100644 Docs/docsets/Adyen.docset/Contents/Resources/Documents/Other Typealiases.html diff --git a/.swiftlint.yml b/.swiftlint.yml index 3420abbe04..9b55eddd33 100644 --- a/.swiftlint.yml +++ b/.swiftlint.yml @@ -5,6 +5,7 @@ disabled_rules: - operator_whitespace - unused_closure_parameter - todo + - fallthrough #Review: - large_tuple diff --git a/Adyen.xcodeproj/project.pbxproj b/Adyen.xcodeproj/project.pbxproj index 569a7a8a0c..f6fa996ad0 100644 --- a/Adyen.xcodeproj/project.pbxproj +++ b/Adyen.xcodeproj/project.pbxproj @@ -884,7 +884,6 @@ E20AD0061EFAB0310065B70E /* Headers */, E20AD0071EFAB0310065B70E /* Resources */, E226F1431EFCF50A009E04C9 /* SwiftLint */, - 02474A22ADD502EEE43DCD38 /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -904,7 +903,6 @@ E20AD00F1EFAB0310065B70E /* Frameworks */, E20AD0101EFAB0310065B70E /* Resources */, B2D23B80357D0CC2DABA91CB /* [CP] Embed Pods Frameworks */, - 8DAFF072F5EADA4FC2A33B45 /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -943,7 +941,6 @@ E2E9D0181F0389C80056E0AC /* Frameworks */, E2E9D0191F0389C80056E0AC /* Resources */, 2DC1652936EDFD1499FBF286 /* [CP] Embed Pods Frameworks */, - 6F9EB542D6DFC7ED0AD003A8 /* [CP] Copy Pods Resources */, E250E1431F0E606000BFFF2F /* Embed Frameworks */, ); buildRules = ( @@ -963,7 +960,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0830; - LastUpgradeCheck = 0910; + LastUpgradeCheck = 0930; ORGANIZATIONNAME = Adyen; TargetAttributes = { E20AD0081EFAB0310065B70E = { @@ -1066,21 +1063,6 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 02474A22ADD502EEE43DCD38 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Adyen/Pods-Adyen-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; 2DC1652936EDFD1499FBF286 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -1117,36 +1099,6 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 6F9EB542D6DFC7ED0AD003A8 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-AdyenUIHost/Pods-AdyenUIHost-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; - 8DAFF072F5EADA4FC2A33B45 /* [CP] Copy Pods Resources */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "[CP] Copy Pods Resources"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-AdyenTests/Pods-AdyenTests-resources.sh\"\n"; - showEnvVarsInLog = 0; - }; B07087D0BC32240A0F60E2AC /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -1405,6 +1357,7 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_EMPTY_BODY = YES; @@ -1412,6 +1365,7 @@ CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; @@ -1420,7 +1374,7 @@ CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1.17.1; + CURRENT_PROJECT_VERSION = 1.18.0; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; @@ -1465,6 +1419,7 @@ CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_DOCUMENTATION_COMMENTS = YES; CLANG_WARN_EMPTY_BODY = YES; @@ -1472,6 +1427,7 @@ CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; @@ -1480,7 +1436,7 @@ CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1.17.1; + CURRENT_PROJECT_VERSION = 1.18.0; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; @@ -1509,7 +1465,7 @@ buildSettings = { DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1.17.1; + DYLIB_CURRENT_VERSION = 1.18.0; DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_SEARCH_PATHS = "$(inherited)"; INFOPLIST_FILE = Adyen/Info.plist; @@ -1528,7 +1484,7 @@ buildSettings = { DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1.17.1; + DYLIB_CURRENT_VERSION = 1.18.0; DYLIB_INSTALL_NAME_BASE = "@rpath"; FRAMEWORK_SEARCH_PATHS = "$(inherited)"; INFOPLIST_FILE = Adyen/Info.plist; diff --git a/Adyen.xcodeproj/xcshareddata/xcschemes/Adyen.xcscheme b/Adyen.xcodeproj/xcshareddata/xcschemes/Adyen.xcscheme index 81f4b092a9..3038d673d6 100644 --- a/Adyen.xcodeproj/xcshareddata/xcschemes/Adyen.xcscheme +++ b/Adyen.xcodeproj/xcshareddata/xcschemes/Adyen.xcscheme @@ -1,6 +1,6 @@ + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Adyen/Core/CurrencyFormatter.swift b/Adyen/Core/CurrencyFormatter.swift index 9881f7b732..44c55df449 100644 --- a/Adyen/Core/CurrencyFormatter.swift +++ b/Adyen/Core/CurrencyFormatter.swift @@ -6,25 +6,27 @@ import Foundation -/// Convenience class to format a number with a given currency. -internal class CurrencyFormatter { +/// Convenience class to format a payment amount for display. +public final class AmountFormatter { - // MARK: - Initialization + // MARK: - Public - private init() { - + /// Formats a string based on the provided amount and currency code. + /// + /// - Parameters: + /// - amount: Amount in minor units, i.e. 2000. + /// - currencyCode: The currency code, i.e. "USD". + /// - Returns: A formatted string, i.e. "$20.00". + public static func formatted(amount: Int, currencyCode: String) -> String? { + let decimalAmount = AmountFormatter.decimalAmount(amount, currencyCode: currencyCode) + return defaultFormatter(currencyCode: currencyCode).string(from: decimalAmount) } // MARK: - Internal - internal static func formatted(amount: Int, currencyCode: String) -> String? { - let decimalAmount = CurrencyFormatter.decimalAmount(amount, currencyCode: currencyCode) - return defaultFormatter(currencyCode: currencyCode).string(from: decimalAmount) - } - internal static func decimalAmount(_ amount: Int, currencyCode: String) -> NSDecimalNumber { - let defaultFormatter = CurrencyFormatter.defaultFormatter(currencyCode: currencyCode) - let maximumFractionDigits = CurrencyFormatter.maximumFractionDigits(for: currencyCode) + let defaultFormatter = AmountFormatter.defaultFormatter(currencyCode: currencyCode) + let maximumFractionDigits = AmountFormatter.maximumFractionDigits(for: currencyCode) defaultFormatter.maximumFractionDigits = maximumFractionDigits let decimalMinorAmount = NSDecimalNumber(value: amount) diff --git a/Adyen/Core/Enum/InputType.swift b/Adyen/Core/Enum/InputType.swift index 42e683d40a..9b1aca2ac5 100644 --- a/Adyen/Core/Enum/InputType.swift +++ b/Adyen/Core/Enum/InputType.swift @@ -93,8 +93,8 @@ public enum InputType: RawRepresentable, Equatable { return true case (.cvc, .cvc): return true - case let (.cardToken(a), .cardToken(b)): - return a == b + case let (.cardToken(first), .cardToken(second)): + return first == second case (.applePayToken, .applePayToken): return true case (.address, .address): diff --git a/Adyen/Core/InputDetail.swift b/Adyen/Core/InputDetail.swift index c9eca1a315..4b599777fe 100644 --- a/Adyen/Core/InputDetail.swift +++ b/Adyen/Core/InputDetail.swift @@ -65,7 +65,7 @@ public class InputDetail { let selectItems: [InputSelectItem]? = items.count > 0 ? items : nil // Embedded Input Details - let inputDetails = (info["inputDetails"] as? [[String: Any]])?.flatMap { InputDetail(info: $0) } + let inputDetails = (info["inputDetails"] as? [[String: Any]])?.compactMap { InputDetail(info: $0) } self.init(type: type, key: key, value: value, optional: optional, items: selectItems, inputDetails: inputDetails, configuration: configuration) } diff --git a/Adyen/Core/PaymentMethod.swift b/Adyen/Core/PaymentMethod.swift index 7101581897..c189e552f7 100644 --- a/Adyen/Core/PaymentMethod.swift +++ b/Adyen/Core/PaymentMethod.swift @@ -42,7 +42,7 @@ public final class PaymentMethod: Equatable { let logoURL = URL(string: logoBaseURL + type + UIScreen.retinaExtension() + ".png") let inputDetailDescriptions = info["inputDetails"] as? [[String: Any]] - let inputDetails = inputDetailDescriptions?.flatMap { InputDetail(info: $0) } + let inputDetails = inputDetailDescriptions?.compactMap { InputDetail(info: $0) } var group: Group? if let groupInfo = info["group"] as? [String: Any] { diff --git a/Adyen/Core/PaymentRequestToken.swift b/Adyen/Core/PaymentRequestToken.swift index f21f8648f2..2c0d8ed4ef 100644 --- a/Adyen/Core/PaymentRequestToken.swift +++ b/Adyen/Core/PaymentRequestToken.swift @@ -31,8 +31,12 @@ internal struct PaymentRequestToken: Encodable { /// The version of the device's system. internal var systemVersion = UIDevice.current.systemVersion - /// The identifier of the device's locale. - internal var localeIdentifier = NSLocale.current.identifier + /// The identifier of the device's locale in the format aa_BB, where "aa" is language code and "BB" is region code. + internal var localeIdentifier: String = { + let languageCode = NSLocale.current.languageCode ?? "" + let regionCode = NSLocale.current.regionCode ?? "" + return "\(languageCode)_\(regionCode)" + }() /// A string identifying the device. internal var deviceIdentifier = UIDevice.current.identifierForVendor?.uuidString ?? "" diff --git a/Adyen/Core/PaymentSetup.swift b/Adyen/Core/PaymentSetup.swift index 5ac7193e32..d785eb77b8 100644 --- a/Adyen/Core/PaymentSetup.swift +++ b/Adyen/Core/PaymentSetup.swift @@ -54,21 +54,21 @@ internal struct PaymentSetup { self.paymentData = paymentData let preferredPaymentMethodDictionaries = dictionary["recurringDetails"] as? [[String: Any]] ?? [] - self.preferredPaymentMethods = preferredPaymentMethodDictionaries.flatMap { + self.preferredPaymentMethods = preferredPaymentMethodDictionaries.compactMap { return PaymentMethod(info: $0, logoBaseURL: logoBaseURL.absoluteString, isOneClick: true) } let availablePaymentMethodsDictionaries = dictionary["paymentMethods"] as? [[String: Any]] ?? [] - self.availablePaymentMethods = availablePaymentMethodsDictionaries.flatMap { + self.availablePaymentMethods = availablePaymentMethodsDictionaries.compactMap { return PaymentMethod(info: $0, logoBaseURL: logoBaseURL.absoluteString, isOneClick: false) }.groupBy { return $0.group?.type ?? UUID().uuidString - }.flatMap { + }.compactMap { return $0.count == 1 ? $0.first : PaymentMethod(members: $0) } if let lineItemDictionaries = dictionary["lineItems"] as? [[String: Any]] { - lineItems = lineItemDictionaries.flatMap({ item in + lineItems = lineItemDictionaries.compactMap({ item in let itemId = item["itemId"] as? String let description = item["description"] as? String let amountExcludingTax = item["amountExcludingTax"] as? Int diff --git a/Adyen/CoreUI/Appearance/AppearanceConfiguration.swift b/Adyen/CoreUI/Appearance/AppearanceConfiguration.swift index 3305de86d5..c7a446df04 100644 --- a/Adyen/CoreUI/Appearance/AppearanceConfiguration.swift +++ b/Adyen/CoreUI/Appearance/AppearanceConfiguration.swift @@ -67,6 +67,10 @@ public final class AppearanceConfiguration { /// When no type is specified, a default button is used. public var checkoutButtonType: UIButton.Type = UIButton.self + /// The title of the checkout button. + /// If none provided, the amount in the format "Pay $x.xx" will be used. + public var checkoutButtonTitle: String? + // MARK: - Configuring Safari View Controller /// The color to tint the background of the Safari View Controller navigation bar and toolbar. Only has an effect on iOS 11 and higher. @@ -138,6 +142,7 @@ extension AppearanceConfiguration: NSCopying { appearanceConfiguration.safariControlTintColor = safariControlTintColor appearanceConfiguration.tintColor = tintColor appearanceConfiguration.backgroundColor = backgroundColor + appearanceConfiguration.checkoutButtonTitle = checkoutButtonTitle appearanceConfiguration.internalCheckoutButtonTitleTextAttributes = internalCheckoutButtonTitleTextAttributes appearanceConfiguration.internalCheckoutButtonTitleEdgeInsets = internalCheckoutButtonTitleEdgeInsets @@ -212,6 +217,20 @@ internal extension AppearanceConfiguration { private static var _shared = AppearanceConfiguration.default + internal func payActionTitle(forAmount amount: Int?, currencyCode: String?) -> String { + let payActionTitle: String + if let buttonTitle = checkoutButtonTitle { + payActionTitle = buttonTitle + } else if let amount = amount, let currencyCode = currencyCode { + let formattedAmount = AmountFormatter.formatted(amount: amount, currencyCode: currencyCode) ?? "" + payActionTitle = ADYLocalizedString("payButton.formatted", formattedAmount) + } else { + payActionTitle = ADYLocalizedString("payButton.formatted") + } + + return payActionTitle + } + internal func cancelButtonItem(target: Any, selector: Selector) -> UIBarButtonItem { var cancelButtonItem: UIBarButtonItem! if let cancelButtonImage = navigationBarCancelButtonImage { diff --git a/Adyen/CoreUI/Container/ContainerView.swift b/Adyen/CoreUI/Container/ContainerView.swift index 0df49b5c6f..aa862af5cd 100644 --- a/Adyen/CoreUI/Container/ContainerView.swift +++ b/Adyen/CoreUI/Container/ContainerView.swift @@ -104,7 +104,7 @@ internal class ContainerView: UIScrollView { } -fileprivate class ContainerContentBackgroundView: UIView { +private class ContainerContentBackgroundView: UIView { override func draw(_ rect: CGRect) { // Draw background color. diff --git a/Adyen/CoreUI/Plugins/PaymentDetailsPresenter.swift b/Adyen/CoreUI/Plugins/PaymentDetailsPresenter.swift index 2cfc30a770..6bc02fff09 100644 --- a/Adyen/CoreUI/Plugins/PaymentDetailsPresenter.swift +++ b/Adyen/CoreUI/Plugins/PaymentDetailsPresenter.swift @@ -10,7 +10,7 @@ import Foundation internal protocol PaymentDetailsPresenter: class { /// The delegate of the details presenter. - weak var delegate: PaymentDetailsPresenterDelegate? { get set } + var delegate: PaymentDetailsPresenterDelegate? { get set } /// Requests the user to enter the payment details. func start() diff --git a/Adyen/Plugins/ApplePay/ApplePayDetailsPresenter.swift b/Adyen/Plugins/ApplePay/ApplePayDetailsPresenter.swift index 306a3ceaab..83dad6ed24 100644 --- a/Adyen/Plugins/ApplePay/ApplePayDetailsPresenter.swift +++ b/Adyen/Plugins/ApplePay/ApplePayDetailsPresenter.swift @@ -104,15 +104,15 @@ fileprivate extension PKPaymentRequest { } // Make sure all items have a description, otherwise we won't have anything to display. - let itemDescriptions = lineItems.flatMap({ $0.description }) + let itemDescriptions = lineItems.compactMap({ $0.description }) guard itemDescriptions.count == lineItems.count else { return [] } var items: [PKPaymentSummaryItem] = [] - let totalIncludingTax = lineItems.flatMap({ $0.amountIncludingTax }).reduce(0, +) - let totalWithTaxExplicitlyAdded = lineItems.flatMap({ + let totalIncludingTax = lineItems.compactMap({ $0.amountIncludingTax }).reduce(0, +) + let totalWithTaxExplicitlyAdded = lineItems.compactMap({ ($0.amountExcludingTax ?? 0) + ($0.taxAmount ?? 0) }).reduce(0, +) @@ -120,7 +120,7 @@ fileprivate extension PKPaymentRequest { // Show each item on its own line, without a new line for tax. for item in lineItems { let amount = item.amountIncludingTax ?? 0 - let formattedAmount = CurrencyFormatter.decimalAmount(amount, currencyCode: paymentSetup.currencyCode) + let formattedAmount = AmountFormatter.decimalAmount(amount, currencyCode: paymentSetup.currencyCode) let description = item.description ?? "" let lineItem = PKPaymentSummaryItem(label: description, amount: formattedAmount) items.append(lineItem) @@ -129,15 +129,15 @@ fileprivate extension PKPaymentRequest { // Show each item on its own line, with a new line for tax. for item in lineItems { let amount = item.amountExcludingTax ?? 0 - let formattedAmount = CurrencyFormatter.decimalAmount(amount, currencyCode: paymentSetup.currencyCode) + let formattedAmount = AmountFormatter.decimalAmount(amount, currencyCode: paymentSetup.currencyCode) let description = item.description ?? "" let lineItem = PKPaymentSummaryItem(label: description, amount: formattedAmount) items.append(lineItem) } let taxLabel = ADYLocalizedString("taxLabel") - let taxAmount = lineItems.flatMap({ $0.taxAmount }).reduce(0, +) - let formattedTaxAmount = CurrencyFormatter.decimalAmount(taxAmount, currencyCode: paymentSetup.currencyCode) + let taxAmount = lineItems.compactMap({ $0.taxAmount }).reduce(0, +) + let formattedTaxAmount = AmountFormatter.decimalAmount(taxAmount, currencyCode: paymentSetup.currencyCode) let taxLineItem = PKPaymentSummaryItem(label: taxLabel, amount: formattedTaxAmount) items.append(taxLineItem) @@ -148,7 +148,7 @@ fileprivate extension PKPaymentRequest { private static func paymentSummaryLineItem(_ paymentSetup: PaymentSetup) -> PKPaymentSummaryItem { let companyName = paymentSetup.companyDetails?.name ?? paymentSetup.merchantReference - let amount = CurrencyFormatter.decimalAmount(paymentSetup.amount, currencyCode: paymentSetup.currencyCode) + let amount = AmountFormatter.decimalAmount(paymentSetup.amount, currencyCode: paymentSetup.currencyCode) let summaryItem = PKPaymentSummaryItem(label: companyName, amount: amount) return summaryItem } diff --git a/Adyen/Plugins/Cards/CardFormDetailsPresenter.swift b/Adyen/Plugins/Cards/CardFormDetailsPresenter.swift index a4596d7d36..b3fc7d4659 100644 --- a/Adyen/Plugins/Cards/CardFormDetailsPresenter.swift +++ b/Adyen/Plugins/Cards/CardFormDetailsPresenter.swift @@ -22,12 +22,12 @@ internal class CardFormDetailsPresenter: PaymentDetailsPresenter { internal func start() { let paymentMethod = pluginConfiguration.paymentMethod let paymentSetup = pluginConfiguration.paymentSetup - let formattedAmount = CurrencyFormatter.formatted(amount: paymentSetup.amount, currencyCode: paymentSetup.currencyCode) + let inputDetails = paymentMethod.inputDetails let formViewController = CardFormViewController() formViewController.title = paymentMethod.name - formViewController.formattedAmount = formattedAmount + formViewController.payButtonTitle = AppearanceConfiguration.shared.payActionTitle(forAmount: paymentSetup.amount, currencyCode: paymentSetup.currencyCode) formViewController.paymentMethod = paymentMethod formViewController.shouldHideStoreDetails = inputDetails?.filter({ $0.key == "storeDetails" }).count == 0 formViewController.shouldHideInstallments = inputDetails?.filter({ $0.key == "installments" }).count == 0 diff --git a/Adyen/Plugins/Cards/CardFormViewController.swift b/Adyen/Plugins/Cards/CardFormViewController.swift index ae56a6177c..6bc811fd09 100644 --- a/Adyen/Plugins/Cards/CardFormViewController.swift +++ b/Adyen/Plugins/Cards/CardFormViewController.swift @@ -31,7 +31,7 @@ class CardFormViewController: UIViewController, CheckoutPaymentFieldDelegate { // If the payment method represents a group of cards, // then acceptedCards should include all card types of its members. if let members = paymentMethod.members { - acceptedCards = members.flatMap({ CardType(rawValue: $0.type) }) + acceptedCards = members.compactMap({ CardType(rawValue: $0.type) }) } else if let cardType = CardType(rawValue: paymentMethod.type) { // Otherwise, we would expect only the card type associated with the payment method. acceptedCards = [cardType] @@ -67,7 +67,7 @@ class CardFormViewController: UIViewController, CheckoutPaymentFieldDelegate { var cardDetailsHandler: ((CardInputData) -> Void)? var cardScanButtonHandler: ((@escaping CardScanCompletion) -> Void)? - var formattedAmount: String? + var payButtonTitle = "" var paymentMethod: PaymentMethod? var shouldHideStoreDetails = false var shouldHideInstallments = false @@ -156,7 +156,7 @@ class CardFormViewController: UIViewController, CheckoutPaymentFieldDelegate { storeDetailsButton.setImage(UIImage.bundleImage("checkbox_active"), for: .selected) storeDetailsButton.tintColor = AppearanceConfiguration.shared.tintColor - payButton.setTitle(ADYLocalizedString("payButton.formatted", formattedAmount ?? ""), for: .normal) + payButton.setTitle(payButtonTitle, for: .normal) contentView.addSubview(payButton) configurePayButtonLayout() diff --git a/Adyen/Plugins/Cards/CardFormViewController.xib b/Adyen/Plugins/Cards/CardFormViewController.xib index 2be9aedcd1..ef5ede2675 100644 --- a/Adyen/Plugins/Cards/CardFormViewController.xib +++ b/Adyen/Plugins/Cards/CardFormViewController.xib @@ -1,11 +1,11 @@ - + - + @@ -67,7 +67,6 @@ - diff --git a/Adyen/Plugins/Cards/CardOneClickDetailsPresenter.swift b/Adyen/Plugins/Cards/CardOneClickDetailsPresenter.swift index 0c4b22d59a..165142c884 100644 --- a/Adyen/Plugins/Cards/CardOneClickDetailsPresenter.swift +++ b/Adyen/Plugins/Cards/CardOneClickDetailsPresenter.swift @@ -51,8 +51,7 @@ internal class CardOneClickDetailsPresenter: PaymentDetailsPresenter { let cancelAction = UIAlertAction(title: cancelActionTitle, style: .cancel, handler: nil) alertController.addAction(cancelAction) - let formattedAmount = CurrencyFormatter.formatted(amount: paymentSetup.amount, currencyCode: paymentSetup.currencyCode) ?? "" - let confirmActionTitle = ADYLocalizedString("payButton.formatted", formattedAmount) + var confirmActionTitle = AppearanceConfiguration.shared.payActionTitle(forAmount: paymentSetup.amount, currencyCode: paymentSetup.currencyCode) let confirmAction = UIAlertAction(title: confirmActionTitle, style: .default) { [unowned self] _ in self.didSelectOneClickAlertControllerConfirmAction() } diff --git a/Adyen/Plugins/Cards/Utilities/CardValidator.swift b/Adyen/Plugins/Cards/Utilities/CardValidator.swift index 8978bee27e..d2cecdb5b1 100644 --- a/Adyen/Plugins/Cards/Utilities/CardValidator.swift +++ b/Adyen/Plugins/Cards/Utilities/CardValidator.swift @@ -119,7 +119,7 @@ public final class CardValidator { } private static func luhnCheck(_ cardNumber: String) -> Bool { - let reversedCardNumberDigits = cardNumber.reversed().flatMap { Int(String($0)) } + let reversedCardNumberDigits = cardNumber.reversed().compactMap { Int(String($0)) } var sum = 0 for (index, digit) in reversedCardNumberDigits.enumerated() { diff --git a/Adyen/Plugins/SEPADirectDebit/IBAN/IBANValidator.swift b/Adyen/Plugins/SEPADirectDebit/IBAN/IBANValidator.swift index 89e681e498..6914c86097 100644 --- a/Adyen/Plugins/SEPADirectDebit/IBAN/IBANValidator.swift +++ b/Adyen/Plugins/SEPADirectDebit/IBAN/IBANValidator.swift @@ -59,7 +59,7 @@ public class IBANValidator { let alphanumerics = CharacterSet.alphanumerics let lowercaseLetters = CharacterSet.lowercaseLetters - let components = string.unicodeScalars.flatMap { unicodeScalar -> String? in + let components = string.unicodeScalars.compactMap { unicodeScalar -> String? in guard alphanumerics.contains(unicodeScalar) else { return nil } diff --git a/Adyen/Plugins/SEPADirectDebit/SEPADirectDebitDetailsPresenter.swift b/Adyen/Plugins/SEPADirectDebit/SEPADirectDebitDetailsPresenter.swift index a2b4d2e686..55c5dc9769 100644 --- a/Adyen/Plugins/SEPADirectDebit/SEPADirectDebitDetailsPresenter.swift +++ b/Adyen/Plugins/SEPADirectDebit/SEPADirectDebitDetailsPresenter.swift @@ -21,11 +21,10 @@ internal class SEPADirectDebitDetailsPresenter: PaymentDetailsPresenter { func start() { let paymentSetup = pluginConfiguration.paymentSetup - let formattedAmount = CurrencyFormatter.formatted(amount: paymentSetup.amount, currencyCode: paymentSetup.currencyCode) let formViewController = SEPADirectDebitFormViewController() formViewController.title = pluginConfiguration.paymentMethod.name - formViewController.formattedAmount = formattedAmount + formViewController.payButtonTitle = AppearanceConfiguration.shared.payActionTitle(forAmount: paymentSetup.amount, currencyCode: paymentSetup.currencyCode) formViewController.delegate = self hostViewController.pushViewController(formViewController, animated: true) } diff --git a/Adyen/Plugins/SEPADirectDebit/SEPADirectDebitFormViewController.swift b/Adyen/Plugins/SEPADirectDebit/SEPADirectDebitFormViewController.swift index 46910577a1..7402ddc44c 100644 --- a/Adyen/Plugins/SEPADirectDebit/SEPADirectDebitFormViewController.swift +++ b/Adyen/Plugins/SEPADirectDebit/SEPADirectDebitFormViewController.swift @@ -10,14 +10,9 @@ internal class SEPADirectDebitFormViewController: FormViewController { internal weak var delegate: SEPADirectDebitFormViewControllerDelegate? - internal var formattedAmount: String? { + internal var payButtonTitle: String = "" { didSet { - var title = "" - if let formattedAmount = formattedAmount { - title = ADYLocalizedString("payButton.formatted", formattedAmount) - } - - payButton.setTitle(title, for: .normal) + payButton.setTitle(payButtonTitle, for: .normal) } } diff --git a/Adyen/UI/Checkout/CheckoutViewController.swift b/Adyen/UI/Checkout/CheckoutViewController.swift index 48d999829f..058d28d84b 100644 --- a/Adyen/UI/Checkout/CheckoutViewController.swift +++ b/Adyen/UI/Checkout/CheckoutViewController.swift @@ -298,13 +298,7 @@ public final class CheckoutViewController: UIViewController, PaymentRequestDeleg let alertController = UIAlertController(title: alertTitle, message: alertMessage, preferredStyle: .alert) // Confirm alert action - let confirmActionTitle: String - if let amount = request.amount, let currencyCode = request.currency { - let formattedAmount = CurrencyFormatter.formatted(amount: amount, currencyCode: currencyCode) ?? "" - confirmActionTitle = ADYLocalizedString("payButton.formatted", formattedAmount) - } else { - confirmActionTitle = ADYLocalizedString("payButton.formatted") - } + let confirmActionTitle = AppearanceConfiguration.shared.payActionTitle(forAmount: request.amount, currencyCode: request.currency) let confirmAction = UIAlertAction(title: confirmActionTitle, style: .default) { action in completion(true) } diff --git a/AdyenTests/Core/CurrencyFormatterTests.swift b/AdyenTests/Core/CurrencyFormatterTests.swift index 5fd9d8a69e..5074211bc2 100644 --- a/AdyenTests/Core/CurrencyFormatterTests.swift +++ b/AdyenTests/Core/CurrencyFormatterTests.swift @@ -7,39 +7,39 @@ import XCTest @testable import Adyen -class CurrencyFormatterTests: XCTestCase { +class AmountFormatterTests: XCTestCase { - func testCurrencyFormatWithEUR() { + func testAmountFormatWithEUR() { let expected = "€103.47" - let formatted = CurrencyFormatter.formatted(amount: 10347, currencyCode: "EUR") + let formatted = AmountFormatter.formatted(amount: 10347, currencyCode: "EUR") XCTAssertEqual(formatted, expected) } - func testCurrencyFormatWithEURAndLargeAmount() { + func testAmountFormatWithEURAndLargeAmount() { let expected = "€90,331.47" - let formatted = CurrencyFormatter.formatted(amount: 9033147, currencyCode: "EUR") + let formatted = AmountFormatter.formatted(amount: 9033147, currencyCode: "EUR") XCTAssertEqual(formatted, expected) } - func testCurrencyFormatWithUSD() { + func testAmountFormatWithUSD() { let expected = "$103.47" - let formatted = CurrencyFormatter.formatted(amount: 10347, currencyCode: "USD") + let formatted = AmountFormatter.formatted(amount: 10347, currencyCode: "USD") XCTAssertEqual(formatted, expected) } - func testCurrencyFormatWithUSDAndLargeAmount() { + func testAmountFormatWithUSDAndLargeAmount() { let expected = "$90,331.47" - let formatted = CurrencyFormatter.formatted(amount: 9033147, currencyCode: "USD") + let formatted = AmountFormatter.formatted(amount: 9033147, currencyCode: "USD") XCTAssertEqual(formatted, expected) } - func testCurrencyFormatWithBRLAndLargeAmount() { + func testAmountFormatWithBRLAndLargeAmount() { let expected = "R$90,331.47" - let formatted = CurrencyFormatter.formatted(amount: 9033147, currencyCode: "BRL") + let formatted = AmountFormatter.formatted(amount: 9033147, currencyCode: "BRL") XCTAssertEqual(formatted, expected) } diff --git a/Docs/Classes/AmountFormatter.html b/Docs/Classes/AmountFormatter.html new file mode 100644 index 0000000000..e26f2441d0 --- /dev/null +++ b/Docs/Classes/AmountFormatter.html @@ -0,0 +1,293 @@ + + + + AmountFormatter Class Reference + + + + + + + + + + + + + + + + + + + + +
+

+ + + + +

+ +

+

+ +
+

+ +

+ + + View on GitHub + +

+ +
+ + + +
+ +
+ +
+
+

AmountFormatter

+
+
+
public final class AmountFormatter
+ +
+
+

Convenience class to format a payment amount for display.

+ +
+
+ +
+
+
+
+ + + +

Public

+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Formats a string based on the provided amount and currency code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func formatted(amount: Int, currencyCode: String) -> String?
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + amount + + +
    +

    Amount in minor units, i.e. 2000.

    +
    +
    + + currencyCode + + +
    +

    The currency code, i.e. USD.

    +
    +
    +
    +
    +

    Return Value

    +

    A formatted string, i.e. $20.00.

    +
    +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/Docs/Classes/AppearanceConfiguration.html b/Docs/Classes/AppearanceConfiguration.html index 293744ef1a..03432cdf42 100644 --- a/Docs/Classes/AppearanceConfiguration.html +++ b/Docs/Classes/AppearanceConfiguration.html @@ -159,6 +159,34 @@ + +
@@ -168,7 +196,7 @@

AppearanceConfiguration

-
public final class AppearanceConfiguration
+
public final class AppearanceConfiguration
@@ -209,7 +237,7 @@

Initializing

Declaration

Swift

-
public init()
+
public init()
@@ -230,9 +258,9 @@

Configuring the Status Bar

  • @@ -247,7 +275,7 @@

    Configuring the Status Bar

    Declaration

    Swift

    -
    public var preferredStatusBarStyle = UIStatusBarStyle.default
    +
    public var preferredStatusBarStyle: UIStatusBarStyle
    @@ -268,9 +296,9 @@

    Configuring the Navigation Bar Title Text Appearance
    @@ -285,7 +313,7 @@

    Configuring the Navigation Bar Title Text AppearanceDeclaration

    Swift

    -
    public var navigationBarTitleTextAttributes: [NSAttributedStringKey: Any]?
    +
    public var navigationBarTitleTextAttributes: [NSAttributedStringKey : Any]?
    @@ -295,9 +323,9 @@

    Declaration

  • @@ -312,7 +340,7 @@

    Declaration

    Declaration

    Swift

    -
    public var navigationBarLargeTitleTextAttributes: [NSAttributedStringKey: Any]?
    +
    public var navigationBarLargeTitleTextAttributes: [NSAttributedStringKey : Any]?
    @@ -340,7 +368,7 @@

    Declaration

    Declaration

    Swift

    -
    public enum NavigationBarLargeTitleDisplayMode
    +
    public enum NavigationBarLargeTitleDisplayMode
    @@ -350,9 +378,9 @@

    Declaration

  • @@ -367,7 +395,7 @@

    Declaration

    Declaration

    Swift

    -
    public var navigationBarLargeTitleDisplayMode = NavigationBarLargeTitleDisplayMode.root
    +
    public var navigationBarLargeTitleDisplayMode: AppearanceConfiguration.NavigationBarLargeTitleDisplayMode
    @@ -388,9 +416,9 @@

    Configuring the Navigation Bar Appearance

  • @@ -405,7 +433,7 @@

    Configuring the Navigation Bar Appearance

    Declaration

    Swift

    -
    public var navigationBarTintColor: UIColor?
    +
    public var navigationBarTintColor: UIColor?
    @@ -415,9 +443,9 @@

    Declaration

  • @@ -432,7 +460,7 @@

    Declaration

    Declaration

    Swift

    -
    public var navigationBarBackgroundColor: UIColor?
    +
    public var navigationBarBackgroundColor: UIColor?
    @@ -442,9 +470,9 @@

    Declaration

  • @@ -459,7 +487,7 @@

    Declaration

    Declaration

    Swift

    -
    public var isNavigationBarTranslucent = true
    +
    public var isNavigationBarTranslucent: Bool
    @@ -469,9 +497,9 @@

    Declaration

  • @@ -486,7 +514,7 @@

    Declaration

    Declaration

    Swift

    -
    public var navigationBarCancelButtonImage: UIImage?
    +
    public var navigationBarCancelButtonImage: UIImage?
    @@ -507,9 +535,9 @@

    Configuring the Checkout Button

  • @@ -526,7 +554,35 @@

    Configuring the Checkout Button

    Declaration

    Swift

    -
    public var checkoutButtonType: UIButton.Type = UIButton.self
    +
    public var checkoutButtonType: UIButton.Type
    + +
    +
    + + +
  • +
  • +
    + + + + checkoutButtonTitle + +
    +
    +
    +
    +
    +
    +

    The title of the checkout button. +If none provided, the amount in the format Pay $x.xx will be used.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var checkoutButtonTitle: String?
    @@ -547,9 +603,9 @@

    Configuring Safari View Controller

  • @@ -564,7 +620,7 @@

    Configuring Safari View Controller

    Declaration

    Swift

    -
    public var safariBarTintColor: UIColor?
    +
    public var safariBarTintColor: UIColor?
    @@ -574,9 +630,9 @@

    Declaration

  • @@ -591,7 +647,7 @@

    Declaration

    Declaration

    Swift

    -
    public var safariControlTintColor: UIColor?
    +
    public var safariControlTintColor: UIColor?
    @@ -612,9 +668,9 @@

    Configuring General Display Properties

  • @@ -629,7 +685,7 @@

    Configuring General Display Properties

    Declaration

    Swift

    -
    public var tintColor: UIColor?
    +
    public var tintColor: UIColor?
    @@ -639,9 +695,9 @@

    Declaration

  • @@ -656,7 +712,7 @@

    Declaration

    Declaration

    Swift

    -
    public var backgroundColor: UIColor = #colorLiteral(red: 0.9764705882, green: 0.9764705882, blue: 0.9764705882, alpha: 1)
    +
    public var backgroundColor: UIColor
    @@ -677,9 +733,9 @@

    Getting the Default Appearance Configuration

  • - + - default + default
    @@ -694,7 +750,7 @@

    Getting the Default Appearance Configuration

    Declaration

    Swift

    -
    public static var `default`: AppearanceConfiguration
    +
    public static var `default`: AppearanceConfiguration { get }
    @@ -704,13 +760,20 @@

    Declaration

  • +
    • @@ -718,14 +781,15 @@

      Declaration

      -

      The attributes used for the checkout button’s title. Only used when checkoutButtonType is the default.

      +

      The attributes used for the checkout button’s title. Only used when checkoutButtonType is the default.

      Declaration

      Swift

      -
      public var checkoutButtonTitleTextAttributes: [NSAttributedStringKey: Any]?
      +
      @available(*, deprecated, message: "Provide a custom button via checkoutButtonType instead.")
      +public var checkoutButtonTitleTextAttributes: [NSAttributedStringKey : Any]? { get set }
      @@ -735,9 +799,9 @@

      Declaration

    • @@ -745,14 +809,15 @@

      Declaration

      -

      The insets from the edges of the checkout button to the title. Only used when checkoutButtonType the default.

      +

      The insets from the edges of the checkout button to the title. Only used when checkoutButtonType the default.

      Declaration

      Swift

      -
      public var checkoutButtonTitleEdgeInsets: UIEdgeInsets?
      +
      @available(*, deprecated, message: "Provide a custom button via checkoutButtonType instead.")
      +public var checkoutButtonTitleEdgeInsets: UIEdgeInsets? { get set }
      @@ -762,9 +827,9 @@

      Declaration

    • @@ -772,14 +837,15 @@

      Declaration

      -

      The corner radius of the checkout button. Only used when checkoutButtonType the default.

      +

      The corner radius of the checkout button. Only used when checkoutButtonType the default.

      Declaration

      Swift

      -
      public var checkoutButtonCornerRadius: CGFloat
      +
      @available(*, deprecated, message: "Provide a custom button via checkoutButtonType instead.")
      +public var checkoutButtonCornerRadius: CGFloat { get set }
      @@ -794,8 +860,8 @@

      Declaration

  • diff --git a/Docs/Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html b/Docs/Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html index ba4ed333c2..b40dbe61bd 100644 --- a/Docs/Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html +++ b/Docs/Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html @@ -1,7 +1,7 @@ - NavigationBarLargeTitleDisplayMode Enum Reference + NavigationBarLargeTitleDisplayMode Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    NavigationBarLargeTitleDisplayMode

    -
    public enum NavigationBarLargeTitleDisplayMode
    +
    public enum NavigationBarLargeTitleDisplayMode
    @@ -201,17 +229,13 @@

    NavigationBarLargeTitleDisplayMode

    Declaration

    Swift

    -
    case always
    +
    case always
    - - -
    -
    • @@ -232,17 +256,13 @@

      Declaration

      Declaration

      Swift

      -
      case root
      +
      case root
    - - -
    -
    • @@ -263,7 +283,7 @@

      Declaration

      Declaration

      Swift

      -
      case never
      +
      case never
      @@ -278,8 +298,8 @@

      Declaration

    diff --git a/Docs/Classes/CardValidator.html b/Docs/Classes/CardValidator.html index 3cde5a3e8c..af808eaab4 100644 --- a/Docs/Classes/CardValidator.html +++ b/Docs/Classes/CardValidator.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CardValidator

    -
    public final class CardValidator
    +
    public final class CardValidator
    @@ -208,7 +236,7 @@

    Validating

    Declaration

    Swift

    -
    public static func validate(cardNumber: String, acceptedCardTypes: [CardType] = CardType.all) -> (isValid: Bool, type: CardType?, formattedNumber: String)
    +
    public static func validate(cardNumber: String, acceptedCardTypes: [CardType] = CardType.all) -> (isValid: Bool, type: CardType?, formattedNumber: String)
    @@ -270,7 +298,7 @@

    Return Value

    Declaration

    Swift

    -
    public static func validate(expiryDate: String, separator: String? = "/") -> (isValid: Bool, formattedDate: String)
    +
    public static func validate(expiryDate: String, separator: String? = "/") -> (isValid: Bool, formattedDate: String)
    @@ -332,7 +360,7 @@

    Return Value

    Declaration

    Swift

    -
    public static func validate(cvc: String) -> (isValid: Bool, formattedCvc: String)
    +
    public static func validate(cvc: String) -> (isValid: Bool, formattedCvc: String)
    @@ -370,8 +398,8 @@

    Return Value

    diff --git a/Docs/Classes/CheckoutViewController.html b/Docs/Classes/CheckoutViewController.html index a1538d72e7..9202a2d05e 100644 --- a/Docs/Classes/CheckoutViewController.html +++ b/Docs/Classes/CheckoutViewController.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CheckoutViewController

    -
    public final class CheckoutViewController: UIViewController, PaymentRequestDelegate, PaymentMethodPickerViewControllerDelegate, PaymentDetailsPresenterDelegate, SFSafariViewControllerDelegate
    +
    public final class CheckoutViewController : UIViewController, PaymentRequestDelegate, PaymentMethodPickerViewControllerDelegate, PaymentDetailsPresenterDelegate, SFSafariViewControllerDelegate
    @@ -214,7 +242,7 @@

    Initializing

    Declaration

    Swift

    -
    public init(delegate: CheckoutViewControllerDelegate, appearanceConfiguration: AppearanceConfiguration = AppearanceConfiguration.default)
    +
    public init(delegate: CheckoutViewControllerDelegate, appearanceConfiguration: AppearanceConfiguration = AppearanceConfiguration.default)
    @@ -266,9 +294,9 @@

    Accessing the Delegates

  • - + - delegate + delegate
    @@ -283,7 +311,7 @@

    Accessing the Delegates

    Declaration

    Swift

    -
    internal(set) public weak var delegate: CheckoutViewControllerDelegate?
    +
    internal(set) public weak var delegate: CheckoutViewControllerDelegate?
    @@ -293,9 +321,9 @@

    Declaration

  • @@ -310,7 +338,7 @@

    Declaration

    Declaration

    Swift

    -
    public weak var cardScanDelegate: CheckoutViewControllerCardScanDelegate?
    +
    public weak var cardScanDelegate: CheckoutViewControllerCardScanDelegate?
    @@ -325,8 +353,8 @@

    Declaration

  • diff --git a/Docs/Classes/IBANTextField.html b/Docs/Classes/IBANTextField.html index 479f9d8445..aa22ef56ff 100644 --- a/Docs/Classes/IBANTextField.html +++ b/Docs/Classes/IBANTextField.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    IBANTextField

    -
    public class IBANTextField: UITextField
    +
    public class IBANTextField : UITextField
    @@ -191,9 +219,9 @@

    Accessing Validated Input

  • - + - iban + iban
    @@ -208,7 +236,7 @@

    Accessing Validated Input

    Declaration

    Swift

    -
    public var iban: String?
    +
    public var iban: String? { get }
    @@ -223,8 +251,8 @@

    Declaration

  • diff --git a/Docs/Classes/IBANValidator.html b/Docs/Classes/IBANValidator.html index 3f7ba05a56..8d8fe6efe8 100644 --- a/Docs/Classes/IBANValidator.html +++ b/Docs/Classes/IBANValidator.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    IBANValidator

    -
    public class IBANValidator
    +
    public class IBANValidator
    @@ -208,7 +236,7 @@

    Validating

    Declaration

    Swift

    -
    public static func isValid(_ string: String) -> Bool
    +
    public static func isValid(_ string: String) -> Bool
    @@ -246,8 +274,8 @@

    Return Value

    diff --git a/Docs/Classes/InputDetail.html b/Docs/Classes/InputDetail.html index 0824b618c9..ae0b9bcd79 100644 --- a/Docs/Classes/InputDetail.html +++ b/Docs/Classes/InputDetail.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    InputDetail

    -
    public class InputDetail
    +
    public class InputDetail
    @@ -193,9 +221,9 @@

    Accessing Detail Information

  • - + - type + type
    @@ -210,7 +238,7 @@

    Accessing Detail Information

    Declaration

    Swift

    -
    public let type: InputType
    +
    public let type: InputType
    @@ -220,9 +248,9 @@

    Declaration

  • - + - optional + optional
    @@ -237,7 +265,7 @@

    Declaration

    Declaration

    Swift

    -
    public let optional: Bool
    +
    public let optional: Bool
    @@ -258,9 +286,9 @@

    Accessing List of Selectable Items

  • - + - items + items
    @@ -268,14 +296,14 @@

    Accessing List of Selectable Items

    -

    An array of InputSelectItem. Only be available if type is .select.

    +

    An array of InputSelectItem. Only be available if type is .select.

    Declaration

    Swift

    -
    public let items: [InputSelectItem]?
    +
    public let items: [InputSelectItem]?
    @@ -296,9 +324,9 @@

    Accessing Nested Details

  • @@ -313,7 +341,7 @@

    Accessing Nested Details

    Declaration

    Swift

    -
    public let inputDetails: [InputDetail]?
    +
    public let inputDetails: [InputDetail]?
    @@ -334,9 +362,9 @@

    Managing Input Values

  • @@ -351,7 +379,7 @@

    Managing Input Values

    Declaration

    Swift

    -
    public var stringValue: String?
    +
    public var stringValue: String? { get set }
    @@ -361,9 +389,9 @@

    Declaration

  • @@ -378,7 +406,7 @@

    Declaration

    Declaration

    Swift

    -
    public var boolValue: Bool?
    +
    public var boolValue: Bool? { get set }
    @@ -393,8 +421,8 @@

    Declaration

  • diff --git a/Docs/Classes/InputSelectItem.html b/Docs/Classes/InputSelectItem.html index cdce35cbcf..06ebfc6bf0 100644 --- a/Docs/Classes/InputSelectItem.html +++ b/Docs/Classes/InputSelectItem.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    InputSelectItem

    -
    public final class InputSelectItem
    +
    public final class InputSelectItem
    @@ -191,9 +219,9 @@

    Accessing Identifying Info

  • @@ -208,7 +236,7 @@

    Accessing Identifying Info

    Declaration

    Swift

    -
    public let identifier: String
    +
    public let identifier: String
    @@ -229,9 +257,9 @@

    Accessing Display Info

  • - + - name + name
    @@ -246,7 +274,7 @@

    Accessing Display Info

    Declaration

    Swift

    -
    public let name: String
    +
    public let name: String
    @@ -256,9 +284,9 @@

    Declaration

  • - + - imageURL + imageURL
    @@ -273,7 +301,7 @@

    Declaration

    Declaration

    Swift

    -
    public let imageURL: URL?
    +
    public let imageURL: URL?
    @@ -288,8 +316,8 @@

    Declaration

  • diff --git a/Docs/Classes/Payment.html b/Docs/Classes/Payment.html index c7fc6f520f..1d233bfa76 100644 --- a/Docs/Classes/Payment.html +++ b/Docs/Classes/Payment.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    Payment

    -
    public final class Payment
    +
    public final class Payment
    @@ -191,9 +219,9 @@

    Accessing the Status of Completed Payment

  • - + - status + status
    @@ -208,7 +236,7 @@

    Accessing the Status of Completed Payment

    Declaration

    Swift

    -
    public let status: PaymentStatus
    +
    public let status: PaymentStatus
    @@ -229,9 +257,9 @@

    Accessing the Info Used to Complete Payment

  • - + - method + method
    @@ -246,7 +274,7 @@

    Accessing the Info Used to Complete Payment

    Declaration

    Swift

    -
    public let method: PaymentMethod
    +
    public let method: PaymentMethod
    @@ -256,9 +284,9 @@

    Declaration

  • - + - payload + payload
    @@ -273,7 +301,7 @@

    Declaration

    Declaration

    Swift

    -
    public let payload: String
    +
    public let payload: String
    @@ -283,9 +311,9 @@

    Declaration

  • - + - amount + amount
    @@ -300,7 +328,7 @@

    Declaration

    Declaration

    Swift

    -
    public let amount: Int
    +
    public let amount: Int
    @@ -310,9 +338,9 @@

    Declaration

  • @@ -327,7 +355,7 @@

    Declaration

    Declaration

    Swift

    -
    public let currencyCode: String
    +
    public let currencyCode: String
    @@ -337,9 +365,9 @@

    Declaration

  • @@ -354,7 +382,7 @@

    Declaration

    Declaration

    Swift

    -
    public let merchantReference: String
    +
    public let merchantReference: String
    @@ -364,9 +392,9 @@

    Declaration

  • @@ -381,7 +409,7 @@

    Declaration

    Declaration

    Swift

    -
    public let shopperReference: String?
    +
    public let shopperReference: String?
    @@ -391,9 +419,9 @@

    Declaration

  • @@ -408,7 +436,7 @@

    Declaration

    Declaration

    Swift

    -
    public let shopperCountryCode: String
    +
    public let shopperCountryCode: String
    @@ -418,9 +446,9 @@

    Declaration

  • @@ -435,7 +463,7 @@

    Declaration

    Declaration

    Swift

    -
    public let shopperLocaleIdentifier: String?
    +
    public let shopperLocaleIdentifier: String?
    @@ -450,8 +478,8 @@

    Declaration

  • diff --git a/Docs/Classes/PaymentDetails.html b/Docs/Classes/PaymentDetails.html index fae0400063..3bc0e7f512 100644 --- a/Docs/Classes/PaymentDetails.html +++ b/Docs/Classes/PaymentDetails.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentDetails

    -
    public class PaymentDetails
    +
    public class PaymentDetails
    @@ -191,9 +219,9 @@

    Accessing Details List

  • - + - list + list
    @@ -208,7 +236,7 @@

    Accessing Details List

    Declaration

    Swift

    -
    public var list: [InputDetail] = []
    +
    public var list: [InputDetail]
    @@ -246,7 +274,7 @@

    Updating Input Details

    Declaration

    Swift

    -
    public func setDetail(value: String, forKey key: String)
    +
    public func setDetail(value: String, forKey key: String)
    @@ -273,7 +301,7 @@

    Declaration

    Declaration

    Swift

    -
    public func setDetail(value: Bool?, forKey key: String)
    +
    public func setDetail(value: Bool?, forKey key: String)
    @@ -311,7 +339,7 @@

    Updating Apple Pay Details

    Declaration

    Swift

    -
    public func fillApplePay(token: String)
    +
    public func fillApplePay(token: String)
    @@ -349,7 +377,7 @@

    Updating Card Details

    Declaration

    Swift

    -
    public func fillCard(token: String, storeDetails: Bool? = nil)
    +
    public func fillCard(token: String, storeDetails: Bool? = nil)
    @@ -376,7 +404,7 @@

    Declaration

    Declaration

    Swift

    -
    public func fillCard(cvc: String)
    +
    public func fillCard(cvc: String)
    @@ -403,7 +431,7 @@

    Declaration

    Declaration

    Swift

    -
    public func fillCard(installmentPlanIdentifier: String)
    +
    public func fillCard(installmentPlanIdentifier: String)
    @@ -441,7 +469,7 @@

    Updating iDEAL Details

    Declaration

    Swift

    -
    public func fillIdeal(issuerIdentifier: String)
    +
    public func fillIdeal(issuerIdentifier: String)
    @@ -479,7 +507,7 @@

    Updating SEPA Direct Debit Details

    Declaration

    Swift

    -
    public func fillSepa(name: String, iban: String)
    +
    public func fillSepa(name: String, iban: String)
    @@ -518,7 +546,7 @@

    Updating Address Details

    Declaration

    Swift

    -
    public struct Address
    +
    public struct Address
    @@ -545,7 +573,7 @@

    Declaration

    Declaration

    Swift

    -
    public func fillBillingAddress(_ address: Address)
    +
    public func fillBillingAddress(_ address: Address)
    @@ -560,8 +588,8 @@

    Declaration

  • diff --git a/Docs/Classes/PaymentDetails/Address.html b/Docs/Classes/PaymentDetails/Address.html index d9a81d9e71..d8b85ccd7c 100644 --- a/Docs/Classes/PaymentDetails/Address.html +++ b/Docs/Classes/PaymentDetails/Address.html @@ -1,7 +1,7 @@ - Address Struct Reference + Address Structure Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    Address

    -
    public struct Address
    +
    public struct Address
    @@ -191,9 +219,9 @@

    Accessing Address Fields

  • - + - street + street
    @@ -208,7 +236,7 @@

    Accessing Address Fields

    Declaration

    Swift

    -
    public var street: String
    +
    public var street: String
    @@ -218,9 +246,9 @@

    Declaration

  • @@ -235,7 +263,7 @@

    Declaration

    Declaration

    Swift

    -
    public var houseNumberOrName: String
    +
    public var houseNumberOrName: String
    @@ -245,9 +273,9 @@

    Declaration

  • @@ -262,7 +290,7 @@

    Declaration

    Declaration

    Swift

    -
    public var postalCode: String
    +
    public var postalCode: String
    @@ -272,9 +300,9 @@

    Declaration

  • - + - city + city
    @@ -289,7 +317,7 @@

    Declaration

    Declaration

    Swift

    -
    public var city: String
    +
    public var city: String
    @@ -299,9 +327,9 @@

    Declaration

  • @@ -316,7 +344,7 @@

    Declaration

    Declaration

    Swift

    -
    public var stateOrProvince: String?
    +
    public var stateOrProvince: String?
    @@ -326,9 +354,9 @@

    Declaration

  • @@ -343,7 +371,7 @@

    Declaration

    Declaration

    Swift

    -
    public var countryCode: String
    +
    public var countryCode: String
    @@ -358,8 +386,8 @@

    Declaration

  • diff --git a/Docs/Classes/PaymentMethod.html b/Docs/Classes/PaymentMethod.html index 8817ab6b24..f32480ec4c 100644 --- a/Docs/Classes/PaymentMethod.html +++ b/Docs/Classes/PaymentMethod.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentMethod

    -
    public final class PaymentMethod: Equatable
    +
    public final class PaymentMethod : Equatable
    @@ -191,9 +219,9 @@

    Accessing Payment Method Information

  • - + - name + name
    @@ -208,7 +236,7 @@

    Accessing Payment Method Information

    Declaration

    Swift

    -
    public let name: String
    +
    public let name: String
    @@ -218,9 +246,9 @@

    Declaration

  • - + - type + type
    @@ -235,7 +263,7 @@

    Declaration

    Declaration

    Swift

    -
    public let type: String
    +
    public let type: String
    @@ -245,9 +273,9 @@

    Declaration

  • - + - logoURL + logoURL
    @@ -262,7 +290,7 @@

    Declaration

    Declaration

    Swift

    -
    public let logoURL: URL?
    +
    public let logoURL: URL?
    @@ -283,9 +311,9 @@

    Handling Grouped Payment Methods

  • - + - members + members
    @@ -300,7 +328,7 @@

    Handling Grouped Payment Methods

    Declaration

    Swift

    -
    public let members: [PaymentMethod]?
    +
    public let members: [PaymentMethod]?
    @@ -321,9 +349,9 @@

    Handling Pre-Stored Information

  • @@ -338,7 +366,7 @@

    Handling Pre-Stored Information

    Declaration

    Swift

    -
    public let isOneClick: Bool
    +
    public let isOneClick: Bool
    @@ -348,9 +376,9 @@

    Declaration

  • @@ -365,7 +393,7 @@

    Declaration

    Declaration

    Swift

    -
    public let oneClickInfo: OneClickInfo?
    +
    public let oneClickInfo: OneClickInfo?
    @@ -386,9 +414,9 @@

    Managing Required Details

  • @@ -403,7 +431,7 @@

    Managing Required Details

    Declaration

    Swift

    -
    public let inputDetails: [InputDetail]?
    +
    public let inputDetails: [InputDetail]?
    @@ -424,9 +452,9 @@

    Deprecated

  • - + - oneClick + oneClick
    @@ -441,7 +469,8 @@

    Deprecated

    Declaration

    Swift

    -
    public var oneClick: Bool
    +
    @available(*, deprecated, message: "Use isOneClick instead.")
    +public var oneClick: Bool { get }
    @@ -456,8 +485,8 @@

    Declaration

  • diff --git a/Docs/Classes/PaymentRequest.html b/Docs/Classes/PaymentRequest.html index 0588cb2043..115f0d868b 100644 --- a/Docs/Classes/PaymentRequest.html +++ b/Docs/Classes/PaymentRequest.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentRequest

    -
    public final class PaymentRequest
    +
    public final class PaymentRequest
    @@ -208,7 +236,7 @@

    Initializing

    Declaration

    Swift

    -
    public init(delegate: PaymentRequestDelegate)
    +
    public init(delegate: PaymentRequestDelegate)
    @@ -224,7 +252,7 @@

    Parameters

    -

    An object that implements PaymentRequestDelegate.

    +

    An object that implements PaymentRequestDelegate.

    @@ -252,9 +280,9 @@

    Accessing Delegate

  • - + - delegate + delegate
    @@ -269,7 +297,7 @@

    Accessing Delegate

    Declaration

    Swift

    -
    internal(set) public weak var delegate: PaymentRequestDelegate?
    +
    internal(set) public weak var delegate: PaymentRequestDelegate?
    @@ -290,9 +318,9 @@

    Accessing Payment Information

  • @@ -307,7 +335,7 @@

    Accessing Payment Information

    Declaration

    Swift

    -
    private(set) public var paymentMethod: PaymentMethod?
    +
    private(set) public var paymentMethod: PaymentMethod?
    @@ -317,9 +345,9 @@

    Declaration

  • - + - amount + amount
    @@ -334,7 +362,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var amount: Int?
    +
    private(set) public var amount: Int?
    @@ -344,9 +372,9 @@

    Declaration

  • - + - currency + currency
    @@ -361,7 +389,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var currency: String?
    +
    private(set) public var currency: String?
    @@ -371,9 +399,9 @@

    Declaration

  • @@ -388,7 +416,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var reference: String?
    +
    private(set) public var reference: String?
    @@ -398,9 +426,9 @@

    Declaration

  • @@ -415,7 +443,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var countryCode: String?
    +
    private(set) public var countryCode: String?
    @@ -425,9 +453,9 @@

    Declaration

  • @@ -442,7 +470,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var shopperLocale: String?
    +
    private(set) public var shopperLocale: String?
    @@ -452,9 +480,9 @@

    Declaration

  • @@ -469,7 +497,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var shopperReference: String?
    +
    private(set) public var shopperReference: String?
    @@ -479,9 +507,9 @@

    Declaration

  • @@ -496,7 +524,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var generationTime: String?
    +
    private(set) public var generationTime: String?
    @@ -506,9 +534,9 @@

    Declaration

  • @@ -523,7 +551,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var publicKey: String?
    +
    private(set) public var publicKey: String?
    @@ -561,7 +589,7 @@

    Performing Payment Request Actions

    Declaration

    Swift

    -
    public func start()
    +
    public func start()
    @@ -588,7 +616,7 @@

    Declaration

    Declaration

    Swift

    -
    public func deletePreferred(paymentMethod: PaymentMethod, completion: @escaping (Bool, Error?) -> Void)
    +
    public func deletePreferred(paymentMethod: PaymentMethod, completion: @escaping (Bool, Error?) -> Void)
    @@ -615,7 +643,7 @@

    Declaration

    Declaration

    Swift

    -
    public func cancel()
    +
    public func cancel()
    @@ -630,8 +658,8 @@

    Declaration

  • diff --git a/Docs/Enums/CardType.html b/Docs/Enums/CardType.html index 65eb152353..9479596495 100644 --- a/Docs/Enums/CardType.html +++ b/Docs/Enums/CardType.html @@ -1,7 +1,7 @@ - CardType Enum Reference + CardType Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CardType

    -
    public enum CardType: String
    +
    public enum CardType : String
    @@ -201,17 +229,13 @@

    CardType

    Declaration

    Swift

    -
    case accel
    +
    case accel
    - - -
    -
    • @@ -232,17 +256,13 @@

      Declaration

      Declaration

      Swift

      -
      case alphaBankBonusMasterCard = "mcalphabankbonus"
      +
      case alphaBankBonusMasterCard = "mcalphabankbonus"
    - - -
    -
    • @@ -263,17 +283,13 @@

      Declaration

      Declaration

      Swift

      -
      case alphaBankBonusVISA = "visaalphabankbonus"
      +
      case alphaBankBonusVISA = "visaalphabankbonus"
    - - -
    -
    • @@ -294,17 +310,13 @@

      Declaration

      Declaration

      Swift

      -
      case argencard
      +
      case argencard
    - - -
    -
    • @@ -325,17 +337,13 @@

      Declaration

      Declaration

      Swift

      -
      case americanExpress = "amex"
      +
      case americanExpress = "amex"
    - - -
    -
    • @@ -356,17 +364,13 @@

      Declaration

      Declaration

      Swift

      -
      case bcmc
      +
      case bcmc
    - - -
    -
    • @@ -387,17 +391,13 @@

      Declaration

      Declaration

      Swift

      -
      case bijenkorfCard = "bijcard"
      +
      case bijenkorfCard = "bijcard"
    - - -
    -
    • @@ -418,17 +418,13 @@

      Declaration

      Declaration

      Swift

      -
      case cabal
      +
      case cabal
    - - -
    -
    • @@ -449,17 +445,13 @@

      Declaration

      Declaration

      Swift

      -
      case carteBancaire = "cartebancaire"
      +
      case carteBancaire = "cartebancaire"
    - - -
    -
    • @@ -480,17 +472,13 @@

      Declaration

      Declaration

      Swift

      -
      case cencosud
      +
      case cencosud
    - - -
    -
    • @@ -511,17 +499,13 @@

      Declaration

      Declaration

      Swift

      -
      case chequeDejeneur
      +
      case chequeDejeneur
    - - -
    -
    • @@ -542,17 +526,13 @@

      Declaration

      Declaration

      Swift

      -
      case chinaUnionPay = "cup"
      +
      case chinaUnionPay = "cup"
    - - -
    -
    • @@ -573,17 +553,13 @@

      Declaration

      Declaration

      Swift

      -
      case codensa
      +
      case codensa
    - - -
    -
    • @@ -604,17 +580,13 @@

      Declaration

      Declaration

      Swift

      -
      case creditUnion24 = "cu24"
      +
      case creditUnion24 = "cu24"
    - - -
    -
    • @@ -635,17 +607,13 @@

      Declaration

      Declaration

      Swift

      -
      case dankort
      +
      case dankort
    - - -
    -
    • @@ -666,17 +634,13 @@

      Declaration

      Declaration

      Swift

      -
      case dankortVISA = "visadankort"
      +
      case dankortVISA = "visadankort"
    - - -
    -
    • @@ -697,17 +661,13 @@

      Declaration

      Declaration

      Swift

      -
      case diners
      +
      case diners
    - - -
    -
    • @@ -728,17 +688,13 @@

      Declaration

      Declaration

      Swift

      -
      case discover
      +
      case discover
    - - -
    -
    • @@ -759,17 +715,13 @@

      Declaration

      Declaration

      Swift

      -
      case elo
      +
      case elo
    - - -
    -
    • @@ -790,17 +742,13 @@

      Declaration

      Declaration

      Swift

      -
      case hiper
      +
      case hiper
    - - -
    -
    • @@ -821,17 +769,13 @@

      Declaration

      Declaration

      Swift

      -
      case hipercard
      +
      case hipercard
    - - -
    -
    • @@ -852,17 +796,13 @@

      Declaration

      Declaration

      Swift

      -
      case jcb
      +
      case jcb
    - - -
    -
    • @@ -883,17 +823,13 @@

      Declaration

      Declaration

      Swift

      -
      case karenMillen = "karenmillen"
      +
      case karenMillen = "karenmillen"
    - - -
    -
    • @@ -914,17 +850,13 @@

      Declaration

      Declaration

      Swift

      -
      case kcp = "kcp_creditcard"
      +
      case kcp = "kcp_creditcard"
    - - -
    -
    • @@ -945,17 +877,13 @@

      Declaration

      Declaration

      Swift

      -
      case maestro
      +
      case maestro
    - - -
    -
    • @@ -976,17 +904,13 @@

      Declaration

      Declaration

      Swift

      -
      case maestroUK = "maestrouk"
      +
      case maestroUK = "maestrouk"
    - - -
    -
    • @@ -1007,17 +931,13 @@

      Declaration

      Declaration

      Swift

      -
      case masterCard = "mc"
      +
      case masterCard = "mc"
    - - -
    -
    • @@ -1038,17 +958,13 @@

      Declaration

      Declaration

      Swift

      -
      case mir
      +
      case mir
    - - -
    -
    • @@ -1069,17 +985,13 @@

      Declaration

      Declaration

      Swift

      -
      case netplus
      +
      case netplus
    - - -
    -
    • @@ -1100,17 +1012,13 @@

      Declaration

      Declaration

      Swift

      -
      case nyce
      +
      case nyce
    - - -
    -
    • @@ -1131,17 +1039,13 @@

      Declaration

      Declaration

      Swift

      -
      case oasis
      +
      case oasis
    - - -
    -
    • @@ -1162,17 +1066,13 @@

      Declaration

      Declaration

      Swift

      -
      case pulse
      +
      case pulse
    - - -
    -
    • @@ -1193,17 +1093,13 @@

      Declaration

      Declaration

      Swift

      -
      case solo
      +
      case solo
    - - -
    -
    • @@ -1224,17 +1120,13 @@

      Declaration

      Declaration

      Swift

      -
      case shopping
      +
      case shopping
    - - -
    -
    • @@ -1255,17 +1147,13 @@

      Declaration

      Declaration

      Swift

      -
      case star
      +
      case star
    - - -
    -
    • @@ -1286,17 +1174,13 @@

      Declaration

      Declaration

      Swift

      -
      case uatp
      +
      case uatp
    - - -
    -
    • @@ -1317,17 +1201,13 @@

      Declaration

      Declaration

      Swift

      -
      case unionPay = "unionpay"
      +
      case unionPay = "unionpay"
    - - -
    -
    • @@ -1348,17 +1228,13 @@

      Declaration

      Declaration

      Swift

      -
      case visa
      +
      case visa
    - - -
    -
    • @@ -1379,23 +1255,19 @@

      Declaration

      Declaration

      Swift

      -
      case warehouse
      +
      case warehouse
    - - -
    -
    diff --git a/Docs/Enums/Error.html b/Docs/Enums/Error.html index 28fec3830b..bb8c326d6e 100644 --- a/Docs/Enums/Error.html +++ b/Docs/Enums/Error.html @@ -1,7 +1,7 @@ - Error Enum Reference + Error Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    Error

    -
    public enum Error: Swift.Error
    +
    public enum Error : Swift.Error
    @@ -201,17 +229,13 @@

    Error

    Declaration

    Swift

    -
    case serverError(String)
    +
    case serverError(String)
    - - -
    -
    • @@ -232,17 +256,13 @@

      Declaration

      Declaration

      Swift

      -
      case networkError(Swift.Error)
      +
      case networkError(Error)
    - - -
    -
    • @@ -263,17 +283,13 @@

      Declaration

      Declaration

      Swift

      -
      case unexpectedData
      +
      case unexpectedData
    - - -
    -
    • @@ -294,17 +310,13 @@

      Declaration

      Declaration

      Swift

      -
      case unexpectedError
      +
      case unexpectedError
    - - -
    -
    • @@ -325,7 +337,7 @@

      Declaration

      Declaration

      Swift

      -
      case cancelled
      +
      case cancelled
      @@ -346,9 +358,9 @@

      Error Description

    • @@ -362,7 +374,7 @@

      Error Description

      Declaration

      Swift

      -
      public var errorDescription: String?
      +
      public var errorDescription: String? { get }
      @@ -377,8 +389,8 @@

      Declaration

    diff --git a/Docs/Enums/InputType.html b/Docs/Enums/InputType.html index ade3f1ce97..7b71030809 100644 --- a/Docs/Enums/InputType.html +++ b/Docs/Enums/InputType.html @@ -1,7 +1,7 @@ - InputType Enum Reference + InputType Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    InputType

    -
    public enum InputType: RawRepresentable, Equatable
    +
    public enum InputType : RawRepresentable, Equatable
    @@ -201,17 +229,13 @@

    InputType

    Declaration

    Swift

    -
    case text
    +
    case text
    - - -
    -
    • @@ -232,17 +256,13 @@

      Declaration

      Declaration

      Swift

      -
      case boolean
      +
      case boolean
    - - -
    -
    • @@ -263,17 +283,13 @@

      Declaration

      Declaration

      Swift

      -
      case select
      +
      case select
    - - -
    -
    • @@ -294,17 +310,13 @@

      Declaration

      Declaration

      Swift

      -
      case iban
      +
      case iban
    - - -
    -
    • @@ -325,17 +337,13 @@

      Declaration

      Declaration

      Swift

      -
      case cvc
      +
      case cvc
    - - -
    -
    • @@ -356,17 +364,13 @@

      Declaration

      Declaration

      Swift

      -
      case cardToken(cvcOptional: Bool)
      +
      case cardToken(cvcOptional: Bool)
    - - -
    -
    • @@ -387,17 +391,13 @@

      Declaration

      Declaration

      Swift

      -
      case applePayToken
      +
      case applePayToken
    - - -
    -
    • @@ -418,7 +418,7 @@

      Declaration

      Declaration

      Swift

      -
      case address
      +
      case address
      @@ -433,8 +433,8 @@

      Declaration

    diff --git a/Docs/Enums/PaymentRequestResult.html b/Docs/Enums/PaymentRequestResult.html index 02f5c1878a..25e54061e4 100644 --- a/Docs/Enums/PaymentRequestResult.html +++ b/Docs/Enums/PaymentRequestResult.html @@ -1,7 +1,7 @@ - PaymentRequestResult Enum Reference + PaymentRequestResult Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentRequestResult

    -
    public enum PaymentRequestResult
    +
    public enum PaymentRequestResult
    @@ -201,17 +229,13 @@

    PaymentRequestResult

    Declaration

    Swift

    -
    case payment(Payment)
    +
    case payment(Payment)
    - - -
    -
    • @@ -232,7 +256,7 @@

      Declaration

      Declaration

      Swift

      -
      case error(Error)
      +
      case error(Error)
      @@ -247,8 +271,8 @@

      Declaration

    diff --git a/Docs/Enums/PaymentStatus.html b/Docs/Enums/PaymentStatus.html index 572d64c558..a3b4e37938 100644 --- a/Docs/Enums/PaymentStatus.html +++ b/Docs/Enums/PaymentStatus.html @@ -1,7 +1,7 @@ - PaymentStatus Enum Reference + PaymentStatus Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentStatus

    -
    public enum PaymentStatus: String
    +
    public enum PaymentStatus : String
    @@ -201,17 +229,13 @@

    PaymentStatus

    Declaration

    Swift

    -
    case received
    +
    case received
    - - -
    -
    • @@ -232,17 +256,13 @@

      Declaration

      Declaration

      Swift

      -
      case authorised
      +
      case authorised
    - - -
    -
    • @@ -263,17 +283,13 @@

      Declaration

      Declaration

      Swift

      -
      case error
      +
      case error
    - - -
    -
    • @@ -294,17 +310,13 @@

      Declaration

      Declaration

      Swift

      -
      case refused
      +
      case refused
    - - -
    -
    • @@ -325,7 +337,7 @@

      Declaration

      Declaration

      Swift

      -
      case cancelled
      +
      case cancelled
      @@ -340,8 +352,8 @@

      Declaration

    diff --git a/Docs/Other Classes.html b/Docs/Other Classes.html new file mode 100644 index 0000000000..8ac4724d0a --- /dev/null +++ b/Docs/Other Classes.html @@ -0,0 +1,246 @@ + + + + Other Classes Reference + + + + + + + + + + + + + + + + + + + + +
    +

    + + + + +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    Other Classes

    +

    The following classes are available globally.

    + +
    +
    + +
    +
    +
    +
      +
    • +
      + + + + AmountFormatter + +
      +
      +
      +
      +
      +
      +

      Convenience class to format a payment amount for display.

      + + See more +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public final class AmountFormatter
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + diff --git a/Docs/Other Typealiases.html b/Docs/Other Typealiases.html new file mode 100644 index 0000000000..e87674ea48 --- /dev/null +++ b/Docs/Other Typealiases.html @@ -0,0 +1,353 @@ + + + + Other Type Aliases Reference + + + + + + + + + + + + + + + + + + + + +
    +

    + + + + +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    Other Type Aliases

    +

    The following type aliases are available globally.

    + +
    +
    + +
    +
    +
    +
      +
    • +
      + + + + DataCompletion + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public typealias DataCompletion = (Data) -> Void
      + +
      +
      +
      +
      +
    • +
    • +
      + + + + MethodCompletion + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public typealias MethodCompletion = (PaymentMethod) -> Void
      + +
      +
      +
      +
      +
    • +
    • +
      + + + + URLCompletion + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public typealias URLCompletion = (URL) -> Void
      + +
      +
      +
      +
      +
    • +
    • +
      + + + + CardScanCompletion + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public typealias CardScanCompletion = ((number: String?, expiryDate: String?, cvc: String?)) -> Void
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public typealias PaymentDetailsCompletion = (PaymentDetails) -> Void
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + diff --git a/Docs/Payment Method.html b/Docs/Payment Method.html index eecdc9d91c..a94b5603e6 100644 --- a/Docs/Payment Method.html +++ b/Docs/Payment Method.html @@ -23,6 +23,7 @@ + @@ -158,6 +159,34 @@ + +
    @@ -194,7 +223,7 @@

    Payment Method

    Declaration

    Swift

    -
    public final class PaymentMethod: Equatable
    +
    public final class PaymentMethod : Equatable
    @@ -226,7 +255,7 @@

    Declaration

    Declaration

    Swift

    -
    public class PaymentDetails
    +
    public class PaymentDetails
    @@ -260,7 +289,7 @@

    Declaration

    Declaration

    Swift

    -
    public class InputDetail
    +
    public class InputDetail
    @@ -292,7 +321,7 @@

    Declaration

    Declaration

    Swift

    -
    public enum InputType: RawRepresentable, Equatable
    +
    public enum InputType : RawRepresentable, Equatable
    @@ -324,7 +353,7 @@

    Declaration

    Declaration

    Swift

    -
    public final class InputSelectItem
    +
    public final class InputSelectItem
    @@ -355,7 +384,7 @@

    Declaration

    Declaration

    Swift

    -
    public protocol OneClickInfo
    +
    public protocol OneClickInfo
    @@ -383,7 +412,7 @@

    Declaration

    Declaration

    Swift

    -
    public struct CardOneClickInfo: OneClickInfo
    +
    public struct CardOneClickInfo : OneClickInfo
    @@ -411,7 +440,7 @@

    Declaration

    Declaration

    Swift

    -
    public struct PayPalOneClickInfo: OneClickInfo
    +
    public struct PayPalOneClickInfo : OneClickInfo
    @@ -426,8 +455,8 @@

    Declaration

    diff --git a/Docs/Payment Request.html b/Docs/Payment Request.html index 3ff76ae99e..c0cbcc2abf 100644 --- a/Docs/Payment Request.html +++ b/Docs/Payment Request.html @@ -23,6 +23,7 @@ + @@ -158,6 +159,34 @@ + +
    @@ -194,7 +223,7 @@

    Payment Request

    Declaration

    Swift

    -
    public final class PaymentRequest
    +
    public final class PaymentRequest
    @@ -226,7 +255,7 @@

    Declaration

    Declaration

    Swift

    -
    public protocol PaymentRequestDelegate: class
    +
    public protocol PaymentRequestDelegate : AnyObject
    @@ -258,7 +287,7 @@

    Declaration

    Declaration

    Swift

    -
    public enum PaymentRequestResult
    +
    public enum PaymentRequestResult
    @@ -290,7 +319,7 @@

    Declaration

    Declaration

    Swift

    -
    public enum Error: Swift.Error
    +
    public enum Error : Swift.Error
    @@ -305,8 +334,8 @@

    Declaration

    diff --git a/Docs/Payment.html b/Docs/Payment.html index 951edac87b..db173d8c59 100644 --- a/Docs/Payment.html +++ b/Docs/Payment.html @@ -23,6 +23,7 @@ + @@ -158,6 +159,34 @@ + +
    @@ -194,7 +223,7 @@

    Payment

    Declaration

    Swift

    -
    public final class Payment
    +
    public final class Payment
    @@ -226,7 +255,7 @@

    Declaration

    Declaration

    Swift

    -
    public enum PaymentStatus: String
    +
    public enum PaymentStatus : String
    @@ -241,8 +270,8 @@

    Declaration

    diff --git a/Docs/Protocols/CheckoutViewControllerCardScanDelegate.html b/Docs/Protocols/CheckoutViewControllerCardScanDelegate.html index 2a4ce6338a..15d9bf6d05 100644 --- a/Docs/Protocols/CheckoutViewControllerCardScanDelegate.html +++ b/Docs/Protocols/CheckoutViewControllerCardScanDelegate.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CheckoutViewControllerCardScanDelegate

    -
    public protocol CheckoutViewControllerCardScanDelegate: class
    +
    public protocol CheckoutViewControllerCardScanDelegate : AnyObject
    @@ -210,7 +238,7 @@

    Managing Scan Button Visibility

    Declaration

    Swift

    -
    func shouldShowCardScanButton(for checkoutViewController: CheckoutViewController) -> Bool
    +
    func shouldShowCardScanButton(for checkoutViewController: CheckoutViewController) -> Bool
    @@ -254,9 +282,9 @@

    Handling Scan Action

  • @@ -272,7 +300,7 @@

    Handling Scan Action

    Declaration

    Swift

    -
    func scanCard(for checkoutViewController: CheckoutViewController, completion: @escaping CardScanCompletion)
    +
    func scanCard(for checkoutViewController: CheckoutViewController, completion: @escaping CardScanCompletion)
    @@ -301,7 +329,7 @@

    Parameters

    The handler to invoke once card number and expiry date have been scanned. - The CardScanCompletion handler expects card number, expiry date (MMYY) and CVC as optional + The CardScanCompletion handler expects card number, expiry date (MMYY) and CVC as optional numerical strings with no spaces. Illegal characters are stripped out of all strings.

    @@ -320,8 +348,8 @@

    Parameters

  • diff --git a/Docs/Protocols/CheckoutViewControllerDelegate.html b/Docs/Protocols/CheckoutViewControllerDelegate.html index 5631df9976..e6d6afaa03 100644 --- a/Docs/Protocols/CheckoutViewControllerDelegate.html +++ b/Docs/Protocols/CheckoutViewControllerDelegate.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CheckoutViewControllerDelegate

    -
    public protocol CheckoutViewControllerDelegate: class
    +
    public protocol CheckoutViewControllerDelegate : AnyObject
    @@ -201,7 +229,7 @@

    CheckoutViewControllerDelegate

    Declaration

    Swift

    -
    func checkoutViewController(_ controller: CheckoutViewController, requiresPaymentDataForToken token: String, completion: @escaping DataCompletion)
    +
    func checkoutViewController(_ controller: CheckoutViewController, requiresPaymentDataForToken token: String, completion: @escaping DataCompletion)
    @@ -271,7 +299,7 @@

    Parameters

    Declaration

    Swift

    -
    func checkoutViewController(_ controller: CheckoutViewController, requiresReturnURL completion: @escaping URLCompletion)
    +
    func checkoutViewController(_ controller: CheckoutViewController, requiresReturnURL completion: @escaping URLCompletion)
    @@ -329,7 +357,7 @@

    Parameters

    Declaration

    Swift

    -
    func checkoutViewController(_ controller: CheckoutViewController, didFinishWith result: PaymentRequestResult)
    +
    func checkoutViewController(_ controller: CheckoutViewController, didFinishWith result: PaymentRequestResult)
    @@ -375,8 +403,8 @@

    Parameters

    diff --git a/Docs/Protocols/PaymentRequestDelegate.html b/Docs/Protocols/PaymentRequestDelegate.html index 68d1376e26..a611e5153b 100644 --- a/Docs/Protocols/PaymentRequestDelegate.html +++ b/Docs/Protocols/PaymentRequestDelegate.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentRequestDelegate

    -
    public protocol PaymentRequestDelegate: class
    +
    public protocol PaymentRequestDelegate : AnyObject
    @@ -201,7 +229,7 @@

    PaymentRequestDelegate

    Declaration

    Swift

    -
    func paymentRequest(_ request: PaymentRequest, requiresPaymentDataForToken token: String, completion: @escaping DataCompletion)
    +
    func paymentRequest(_ request: PaymentRequest, requiresPaymentDataForToken token: String, completion: @escaping DataCompletion)
    @@ -228,7 +256,7 @@

    Declaration

    Declaration

    Swift

    -
    func paymentRequest(_ request: PaymentRequest, requiresPaymentMethodFrom preferredMethods: [PaymentMethod]?, available availableMethods: [PaymentMethod], completion: @escaping MethodCompletion)
    +
    func paymentRequest(_ request: PaymentRequest, requiresPaymentMethodFrom preferredMethods: [PaymentMethod]?, available availableMethods: [PaymentMethod], completion: @escaping MethodCompletion)
    @@ -258,7 +286,7 @@

    Declaration

    Declaration

    Swift

    -
    func paymentRequest(_ request: PaymentRequest, requiresReturnURLFrom url: URL, completion: @escaping URLCompletion)
    +
    func paymentRequest(_ request: PaymentRequest, requiresReturnURLFrom url: URL, completion: @escaping URLCompletion)
    @@ -285,7 +313,7 @@

    Declaration

    Declaration

    Swift

    -
    func paymentRequest(_ request: PaymentRequest, requiresPaymentDetails details: PaymentDetails, completion: @escaping PaymentDetailsCompletion)
    +
    func paymentRequest(_ request: PaymentRequest, requiresPaymentDetails details: PaymentDetails, completion: @escaping PaymentDetailsCompletion)
    @@ -312,7 +340,7 @@

    Declaration

    Declaration

    Swift

    -
    func paymentRequest(_ request: PaymentRequest, didFinishWith result: PaymentRequestResult)
    +
    func paymentRequest(_ request: PaymentRequest, didFinishWith result: PaymentRequestResult)
    @@ -327,8 +355,8 @@

    Declaration

    diff --git a/Docs/Structs/CardOneClickInfo.html b/Docs/Structs/CardOneClickInfo.html index ddfad05056..f411739b43 100644 --- a/Docs/Structs/CardOneClickInfo.html +++ b/Docs/Structs/CardOneClickInfo.html @@ -1,7 +1,7 @@ - CardOneClickInfo Struct Reference + CardOneClickInfo Structure Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CardOneClickInfo

    -
    public struct CardOneClickInfo: OneClickInfo
    +
    public struct CardOneClickInfo : OneClickInfo
    @@ -191,9 +219,9 @@

    Accessing Stored Info

  • - + - number + number
    @@ -208,7 +236,7 @@

    Accessing Stored Info

    Declaration

    Swift

    -
    public let number: String
    +
    public let number: String
    @@ -218,9 +246,9 @@

    Declaration

  • @@ -235,7 +263,7 @@

    Declaration

    Declaration

    Swift

    -
    public let holderName: String
    +
    public let holderName: String
    @@ -245,9 +273,9 @@

    Declaration

  • @@ -262,7 +290,7 @@

    Declaration

    Declaration

    Swift

    -
    public let expiryMonth: Int
    +
    public let expiryMonth: Int
    @@ -272,9 +300,9 @@

    Declaration

  • @@ -289,7 +317,7 @@

    Declaration

    Declaration

    Swift

    -
    public let expiryYear: Int
    +
    public let expiryYear: Int
    @@ -304,8 +332,8 @@

    Declaration

  • diff --git a/Docs/Structs/IBANSpecification.html b/Docs/Structs/IBANSpecification.html index 7c1b295afc..4fa88412ea 100644 --- a/Docs/Structs/IBANSpecification.html +++ b/Docs/Structs/IBANSpecification.html @@ -1,7 +1,7 @@ - IBANSpecification Struct Reference + IBANSpecification Structure Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    IBANSpecification

    -
    public struct IBANSpecification
    +
    public struct IBANSpecification
    @@ -184,9 +212,9 @@

    IBANSpecification

  • @@ -201,7 +229,7 @@

    IBANSpecification

    Declaration

    Swift

    -
    public let countryCode: String
    +
    public let countryCode: String
    @@ -211,9 +239,9 @@

    Declaration

  • - + - length + length
    @@ -228,7 +256,7 @@

    Declaration

    Declaration

    Swift

    -
    public let length: Int
    +
    public let length: Int
    @@ -238,9 +266,9 @@

    Declaration

  • @@ -255,7 +283,7 @@

    Declaration

    Declaration

    Swift

    -
    public let structure: String
    +
    public let structure: String
    @@ -265,9 +293,9 @@

    Declaration

  • - + - example + example
    @@ -282,7 +310,7 @@

    Declaration

    Declaration

    Swift

    -
    public let example: String
    +
    public let example: String
    @@ -309,7 +337,7 @@

    Declaration

    Declaration

    Swift

    -
    public init?(forCountryCode countryCode: String)
    +
    public init?(forCountryCode countryCode: String)
  • @@ -343,8 +371,8 @@

    Parameters

    diff --git a/Docs/Structs/PayPalOneClickInfo.html b/Docs/Structs/PayPalOneClickInfo.html index 96301c4b24..75522d5afa 100644 --- a/Docs/Structs/PayPalOneClickInfo.html +++ b/Docs/Structs/PayPalOneClickInfo.html @@ -1,7 +1,7 @@ - PayPalOneClickInfo Struct Reference + PayPalOneClickInfo Structure Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PayPalOneClickInfo

    -
    public struct PayPalOneClickInfo: OneClickInfo
    +
    public struct PayPalOneClickInfo : OneClickInfo
    @@ -191,9 +219,9 @@

    Accessing Stored Info

  • @@ -208,7 +236,7 @@

    Accessing Stored Info

    Declaration

    Swift

    -
    public let emailAddress: String
    +
    public let emailAddress: String
    @@ -223,8 +251,8 @@

    Declaration

  • diff --git a/Docs/UI.html b/Docs/UI.html index dbda39b9cc..d6190b7e22 100644 --- a/Docs/UI.html +++ b/Docs/UI.html @@ -23,6 +23,7 @@ + @@ -158,6 +159,34 @@ + +
    @@ -200,7 +229,7 @@

    UI

    Declaration

    Swift

    -
    public final class CheckoutViewController: UIViewController, PaymentRequestDelegate, PaymentMethodPickerViewControllerDelegate, PaymentDetailsPresenterDelegate, SFSafariViewControllerDelegate
    +
    public final class CheckoutViewController : UIViewController, PaymentRequestDelegate, PaymentMethodPickerViewControllerDelegate, PaymentDetailsPresenterDelegate, SFSafariViewControllerDelegate
    @@ -232,7 +261,7 @@

    Declaration

    Declaration

    Swift

    -
    public protocol CheckoutViewControllerDelegate: class
    +
    public protocol CheckoutViewControllerDelegate : AnyObject
    @@ -262,7 +291,7 @@

    Declaration

    Declaration

    Swift

    -
    public protocol CheckoutViewControllerCardScanDelegate: class
    +
    public protocol CheckoutViewControllerCardScanDelegate : AnyObject
    @@ -295,7 +324,7 @@

    Declaration

    Declaration

    Swift

    -
    public final class AppearanceConfiguration
    +
    public final class AppearanceConfiguration
    @@ -310,8 +339,8 @@

    Declaration

    diff --git a/Docs/Utilities.html b/Docs/Utilities.html index d6641eeb08..9a21a89289 100644 --- a/Docs/Utilities.html +++ b/Docs/Utilities.html @@ -23,6 +23,7 @@ + @@ -158,6 +159,34 @@ + +
    @@ -194,7 +223,7 @@

    Utilities

    Declaration

    Swift

    -
    public enum CardType: String
    +
    public enum CardType : String
    @@ -226,7 +255,7 @@

    Declaration

    Declaration

    Swift

    -
    public final class CardValidator
    +
    public final class CardValidator
    @@ -258,7 +287,7 @@

    Declaration

    Declaration

    Swift

    -
    public struct IBANSpecification
    +
    public struct IBANSpecification
    @@ -290,7 +319,7 @@

    Declaration

    Declaration

    Swift

    -
    public class IBANValidator
    +
    public class IBANValidator
    @@ -322,7 +351,7 @@

    Declaration

    Declaration

    Swift

    -
    public class IBANTextField: UITextField
    +
    public class IBANTextField : UITextField
    @@ -337,8 +366,8 @@

    Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AmountFormatter.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AmountFormatter.html new file mode 100644 index 0000000000..e26f2441d0 --- /dev/null +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AmountFormatter.html @@ -0,0 +1,293 @@ + + + + AmountFormatter Class Reference + + + + + + + + + + + + + + + + + + + + +
    +

    + + + + +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    AmountFormatter

    +
    +
    +
    public final class AmountFormatter
    + +
    +
    +

    Convenience class to format a payment amount for display.

    + +
    +
    + +
    +
    +
    +
    + + + +

    Public

    +
    +
    +
      +
    • + +
      +
      +
      +
      +
      +

      Formats a string based on the provided amount and currency code.

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public static func formatted(amount: Int, currencyCode: String) -> String?
      + +
      +
      +
      +

      Parameters

      + + + + + + + + + + + +
      + + amount + + +
      +

      Amount in minor units, i.e. 2000.

      +
      +
      + + currencyCode + + +
      +

      The currency code, i.e. USD.

      +
      +
      +
      +
      +

      Return Value

      +

      A formatted string, i.e. $20.00.

      +
      +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AppearanceConfiguration.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AppearanceConfiguration.html index 293744ef1a..03432cdf42 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AppearanceConfiguration.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AppearanceConfiguration.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    AppearanceConfiguration

    -
    public final class AppearanceConfiguration
    +
    public final class AppearanceConfiguration
    @@ -209,7 +237,7 @@

    Initializing

    Declaration

    Swift

    -
    public init()
    +
    public init()
    @@ -230,9 +258,9 @@

    Configuring the Status Bar

  • @@ -247,7 +275,7 @@

    Configuring the Status Bar

    Declaration

    Swift

    -
    public var preferredStatusBarStyle = UIStatusBarStyle.default
    +
    public var preferredStatusBarStyle: UIStatusBarStyle
    @@ -268,9 +296,9 @@

    Configuring the Navigation Bar Title Text Appearance
    @@ -285,7 +313,7 @@

    Configuring the Navigation Bar Title Text AppearanceDeclaration

    Swift

    -
    public var navigationBarTitleTextAttributes: [NSAttributedStringKey: Any]?
    +
    public var navigationBarTitleTextAttributes: [NSAttributedStringKey : Any]?
    @@ -295,9 +323,9 @@

    Declaration

  • @@ -312,7 +340,7 @@

    Declaration

    Declaration

    Swift

    -
    public var navigationBarLargeTitleTextAttributes: [NSAttributedStringKey: Any]?
    +
    public var navigationBarLargeTitleTextAttributes: [NSAttributedStringKey : Any]?
    @@ -340,7 +368,7 @@

    Declaration

    Declaration

    Swift

    -
    public enum NavigationBarLargeTitleDisplayMode
    +
    public enum NavigationBarLargeTitleDisplayMode
    @@ -350,9 +378,9 @@

    Declaration

  • @@ -367,7 +395,7 @@

    Declaration

    Declaration

    Swift

    -
    public var navigationBarLargeTitleDisplayMode = NavigationBarLargeTitleDisplayMode.root
    +
    public var navigationBarLargeTitleDisplayMode: AppearanceConfiguration.NavigationBarLargeTitleDisplayMode
    @@ -388,9 +416,9 @@

    Configuring the Navigation Bar Appearance

  • @@ -405,7 +433,7 @@

    Configuring the Navigation Bar Appearance

    Declaration

    Swift

    -
    public var navigationBarTintColor: UIColor?
    +
    public var navigationBarTintColor: UIColor?
    @@ -415,9 +443,9 @@

    Declaration

  • @@ -432,7 +460,7 @@

    Declaration

    Declaration

    Swift

    -
    public var navigationBarBackgroundColor: UIColor?
    +
    public var navigationBarBackgroundColor: UIColor?
    @@ -442,9 +470,9 @@

    Declaration

  • @@ -459,7 +487,7 @@

    Declaration

    Declaration

    Swift

    -
    public var isNavigationBarTranslucent = true
    +
    public var isNavigationBarTranslucent: Bool
    @@ -469,9 +497,9 @@

    Declaration

  • @@ -486,7 +514,7 @@

    Declaration

    Declaration

    Swift

    -
    public var navigationBarCancelButtonImage: UIImage?
    +
    public var navigationBarCancelButtonImage: UIImage?
    @@ -507,9 +535,9 @@

    Configuring the Checkout Button

  • @@ -526,7 +554,35 @@

    Configuring the Checkout Button

    Declaration

    Swift

    -
    public var checkoutButtonType: UIButton.Type = UIButton.self
    +
    public var checkoutButtonType: UIButton.Type
    + +
    +
    + + +
  • +
  • +
    + + + + checkoutButtonTitle + +
    +
    +
    +
    +
    +
    +

    The title of the checkout button. +If none provided, the amount in the format Pay $x.xx will be used.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var checkoutButtonTitle: String?
    @@ -547,9 +603,9 @@

    Configuring Safari View Controller

  • @@ -564,7 +620,7 @@

    Configuring Safari View Controller

    Declaration

    Swift

    -
    public var safariBarTintColor: UIColor?
    +
    public var safariBarTintColor: UIColor?
    @@ -574,9 +630,9 @@

    Declaration

  • @@ -591,7 +647,7 @@

    Declaration

    Declaration

    Swift

    -
    public var safariControlTintColor: UIColor?
    +
    public var safariControlTintColor: UIColor?
    @@ -612,9 +668,9 @@

    Configuring General Display Properties

  • @@ -629,7 +685,7 @@

    Configuring General Display Properties

    Declaration

    Swift

    -
    public var tintColor: UIColor?
    +
    public var tintColor: UIColor?
    @@ -639,9 +695,9 @@

    Declaration

  • @@ -656,7 +712,7 @@

    Declaration

    Declaration

    Swift

    -
    public var backgroundColor: UIColor = #colorLiteral(red: 0.9764705882, green: 0.9764705882, blue: 0.9764705882, alpha: 1)
    +
    public var backgroundColor: UIColor
    @@ -677,9 +733,9 @@

    Getting the Default Appearance Configuration

  • - + - default + default
    @@ -694,7 +750,7 @@

    Getting the Default Appearance Configuration

    Declaration

    Swift

    -
    public static var `default`: AppearanceConfiguration
    +
    public static var `default`: AppearanceConfiguration { get }
    @@ -704,13 +760,20 @@

    Declaration

  • +
    • @@ -718,14 +781,15 @@

      Declaration

      -

      The attributes used for the checkout button’s title. Only used when checkoutButtonType is the default.

      +

      The attributes used for the checkout button’s title. Only used when checkoutButtonType is the default.

      Declaration

      Swift

      -
      public var checkoutButtonTitleTextAttributes: [NSAttributedStringKey: Any]?
      +
      @available(*, deprecated, message: "Provide a custom button via checkoutButtonType instead.")
      +public var checkoutButtonTitleTextAttributes: [NSAttributedStringKey : Any]? { get set }
      @@ -735,9 +799,9 @@

      Declaration

    • @@ -745,14 +809,15 @@

      Declaration

      -

      The insets from the edges of the checkout button to the title. Only used when checkoutButtonType the default.

      +

      The insets from the edges of the checkout button to the title. Only used when checkoutButtonType the default.

      Declaration

      Swift

      -
      public var checkoutButtonTitleEdgeInsets: UIEdgeInsets?
      +
      @available(*, deprecated, message: "Provide a custom button via checkoutButtonType instead.")
      +public var checkoutButtonTitleEdgeInsets: UIEdgeInsets? { get set }
      @@ -762,9 +827,9 @@

      Declaration

    • @@ -772,14 +837,15 @@

      Declaration

      -

      The corner radius of the checkout button. Only used when checkoutButtonType the default.

      +

      The corner radius of the checkout button. Only used when checkoutButtonType the default.

      Declaration

      Swift

      -
      public var checkoutButtonCornerRadius: CGFloat
      +
      @available(*, deprecated, message: "Provide a custom button via checkoutButtonType instead.")
      +public var checkoutButtonCornerRadius: CGFloat { get set }
      @@ -794,8 +860,8 @@

      Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html index ba4ed333c2..b40dbe61bd 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html @@ -1,7 +1,7 @@ - NavigationBarLargeTitleDisplayMode Enum Reference + NavigationBarLargeTitleDisplayMode Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    NavigationBarLargeTitleDisplayMode

    -
    public enum NavigationBarLargeTitleDisplayMode
    +
    public enum NavigationBarLargeTitleDisplayMode
    @@ -201,17 +229,13 @@

    NavigationBarLargeTitleDisplayMode

    Declaration

    Swift

    -
    case always
    +
    case always
    - - -
    -
    • @@ -232,17 +256,13 @@

      Declaration

      Declaration

      Swift

      -
      case root
      +
      case root
    - - -
    -
    • @@ -263,7 +283,7 @@

      Declaration

      Declaration

      Swift

      -
      case never
      +
      case never
      @@ -278,8 +298,8 @@

      Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/CardValidator.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/CardValidator.html index 3cde5a3e8c..af808eaab4 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/CardValidator.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/CardValidator.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CardValidator

    -
    public final class CardValidator
    +
    public final class CardValidator
    @@ -208,7 +236,7 @@

    Validating

    Declaration

    Swift

    -
    public static func validate(cardNumber: String, acceptedCardTypes: [CardType] = CardType.all) -> (isValid: Bool, type: CardType?, formattedNumber: String)
    +
    public static func validate(cardNumber: String, acceptedCardTypes: [CardType] = CardType.all) -> (isValid: Bool, type: CardType?, formattedNumber: String)
    @@ -270,7 +298,7 @@

    Return Value

    Declaration

    Swift

    -
    public static func validate(expiryDate: String, separator: String? = "/") -> (isValid: Bool, formattedDate: String)
    +
    public static func validate(expiryDate: String, separator: String? = "/") -> (isValid: Bool, formattedDate: String)
    @@ -332,7 +360,7 @@

    Return Value

    Declaration

    Swift

    -
    public static func validate(cvc: String) -> (isValid: Bool, formattedCvc: String)
    +
    public static func validate(cvc: String) -> (isValid: Bool, formattedCvc: String)
    @@ -370,8 +398,8 @@

    Return Value

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/CheckoutViewController.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/CheckoutViewController.html index a1538d72e7..9202a2d05e 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/CheckoutViewController.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/CheckoutViewController.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CheckoutViewController

    -
    public final class CheckoutViewController: UIViewController, PaymentRequestDelegate, PaymentMethodPickerViewControllerDelegate, PaymentDetailsPresenterDelegate, SFSafariViewControllerDelegate
    +
    public final class CheckoutViewController : UIViewController, PaymentRequestDelegate, PaymentMethodPickerViewControllerDelegate, PaymentDetailsPresenterDelegate, SFSafariViewControllerDelegate
    @@ -214,7 +242,7 @@

    Initializing

    Declaration

    Swift

    -
    public init(delegate: CheckoutViewControllerDelegate, appearanceConfiguration: AppearanceConfiguration = AppearanceConfiguration.default)
    +
    public init(delegate: CheckoutViewControllerDelegate, appearanceConfiguration: AppearanceConfiguration = AppearanceConfiguration.default)
    @@ -266,9 +294,9 @@

    Accessing the Delegates

  • - + - delegate + delegate
    @@ -283,7 +311,7 @@

    Accessing the Delegates

    Declaration

    Swift

    -
    internal(set) public weak var delegate: CheckoutViewControllerDelegate?
    +
    internal(set) public weak var delegate: CheckoutViewControllerDelegate?
    @@ -293,9 +321,9 @@

    Declaration

  • @@ -310,7 +338,7 @@

    Declaration

    Declaration

    Swift

    -
    public weak var cardScanDelegate: CheckoutViewControllerCardScanDelegate?
    +
    public weak var cardScanDelegate: CheckoutViewControllerCardScanDelegate?
    @@ -325,8 +353,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/IBANTextField.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/IBANTextField.html index 479f9d8445..aa22ef56ff 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/IBANTextField.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/IBANTextField.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    IBANTextField

    -
    public class IBANTextField: UITextField
    +
    public class IBANTextField : UITextField
    @@ -191,9 +219,9 @@

    Accessing Validated Input

  • - + - iban + iban
    @@ -208,7 +236,7 @@

    Accessing Validated Input

    Declaration

    Swift

    -
    public var iban: String?
    +
    public var iban: String? { get }
    @@ -223,8 +251,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/IBANValidator.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/IBANValidator.html index 3f7ba05a56..8d8fe6efe8 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/IBANValidator.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/IBANValidator.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    IBANValidator

    -
    public class IBANValidator
    +
    public class IBANValidator
    @@ -208,7 +236,7 @@

    Validating

    Declaration

    Swift

    -
    public static func isValid(_ string: String) -> Bool
    +
    public static func isValid(_ string: String) -> Bool
    @@ -246,8 +274,8 @@

    Return Value

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/InputDetail.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/InputDetail.html index 0824b618c9..ae0b9bcd79 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/InputDetail.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/InputDetail.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    InputDetail

    -
    public class InputDetail
    +
    public class InputDetail
    @@ -193,9 +221,9 @@

    Accessing Detail Information

  • - + - type + type
    @@ -210,7 +238,7 @@

    Accessing Detail Information

    Declaration

    Swift

    -
    public let type: InputType
    +
    public let type: InputType
    @@ -220,9 +248,9 @@

    Declaration

  • - + - optional + optional
    @@ -237,7 +265,7 @@

    Declaration

    Declaration

    Swift

    -
    public let optional: Bool
    +
    public let optional: Bool
    @@ -258,9 +286,9 @@

    Accessing List of Selectable Items

  • - + - items + items
    @@ -268,14 +296,14 @@

    Accessing List of Selectable Items

    -

    An array of InputSelectItem. Only be available if type is .select.

    +

    An array of InputSelectItem. Only be available if type is .select.

    Declaration

    Swift

    -
    public let items: [InputSelectItem]?
    +
    public let items: [InputSelectItem]?
    @@ -296,9 +324,9 @@

    Accessing Nested Details

  • @@ -313,7 +341,7 @@

    Accessing Nested Details

    Declaration

    Swift

    -
    public let inputDetails: [InputDetail]?
    +
    public let inputDetails: [InputDetail]?
    @@ -334,9 +362,9 @@

    Managing Input Values

  • @@ -351,7 +379,7 @@

    Managing Input Values

    Declaration

    Swift

    -
    public var stringValue: String?
    +
    public var stringValue: String? { get set }
    @@ -361,9 +389,9 @@

    Declaration

  • @@ -378,7 +406,7 @@

    Declaration

    Declaration

    Swift

    -
    public var boolValue: Bool?
    +
    public var boolValue: Bool? { get set }
    @@ -393,8 +421,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/InputSelectItem.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/InputSelectItem.html index cdce35cbcf..06ebfc6bf0 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/InputSelectItem.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/InputSelectItem.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    InputSelectItem

    -
    public final class InputSelectItem
    +
    public final class InputSelectItem
    @@ -191,9 +219,9 @@

    Accessing Identifying Info

  • @@ -208,7 +236,7 @@

    Accessing Identifying Info

    Declaration

    Swift

    -
    public let identifier: String
    +
    public let identifier: String
    @@ -229,9 +257,9 @@

    Accessing Display Info

  • - + - name + name
    @@ -246,7 +274,7 @@

    Accessing Display Info

    Declaration

    Swift

    -
    public let name: String
    +
    public let name: String
    @@ -256,9 +284,9 @@

    Declaration

  • - + - imageURL + imageURL
    @@ -273,7 +301,7 @@

    Declaration

    Declaration

    Swift

    -
    public let imageURL: URL?
    +
    public let imageURL: URL?
    @@ -288,8 +316,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/Payment.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/Payment.html index c7fc6f520f..1d233bfa76 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/Payment.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/Payment.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    Payment

    -
    public final class Payment
    +
    public final class Payment
    @@ -191,9 +219,9 @@

    Accessing the Status of Completed Payment

  • - + - status + status
    @@ -208,7 +236,7 @@

    Accessing the Status of Completed Payment

    Declaration

    Swift

    -
    public let status: PaymentStatus
    +
    public let status: PaymentStatus
    @@ -229,9 +257,9 @@

    Accessing the Info Used to Complete Payment

  • - + - method + method
    @@ -246,7 +274,7 @@

    Accessing the Info Used to Complete Payment

    Declaration

    Swift

    -
    public let method: PaymentMethod
    +
    public let method: PaymentMethod
    @@ -256,9 +284,9 @@

    Declaration

  • - + - payload + payload
    @@ -273,7 +301,7 @@

    Declaration

    Declaration

    Swift

    -
    public let payload: String
    +
    public let payload: String
    @@ -283,9 +311,9 @@

    Declaration

  • - + - amount + amount
    @@ -300,7 +328,7 @@

    Declaration

    Declaration

    Swift

    -
    public let amount: Int
    +
    public let amount: Int
    @@ -310,9 +338,9 @@

    Declaration

  • @@ -327,7 +355,7 @@

    Declaration

    Declaration

    Swift

    -
    public let currencyCode: String
    +
    public let currencyCode: String
    @@ -337,9 +365,9 @@

    Declaration

  • @@ -354,7 +382,7 @@

    Declaration

    Declaration

    Swift

    -
    public let merchantReference: String
    +
    public let merchantReference: String
    @@ -364,9 +392,9 @@

    Declaration

  • @@ -381,7 +409,7 @@

    Declaration

    Declaration

    Swift

    -
    public let shopperReference: String?
    +
    public let shopperReference: String?
    @@ -391,9 +419,9 @@

    Declaration

  • @@ -408,7 +436,7 @@

    Declaration

    Declaration

    Swift

    -
    public let shopperCountryCode: String
    +
    public let shopperCountryCode: String
    @@ -418,9 +446,9 @@

    Declaration

  • @@ -435,7 +463,7 @@

    Declaration

    Declaration

    Swift

    -
    public let shopperLocaleIdentifier: String?
    +
    public let shopperLocaleIdentifier: String?
    @@ -450,8 +478,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentDetails.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentDetails.html index fae0400063..3bc0e7f512 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentDetails.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentDetails.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentDetails

    -
    public class PaymentDetails
    +
    public class PaymentDetails
    @@ -191,9 +219,9 @@

    Accessing Details List

  • - + - list + list
    @@ -208,7 +236,7 @@

    Accessing Details List

    Declaration

    Swift

    -
    public var list: [InputDetail] = []
    +
    public var list: [InputDetail]
    @@ -246,7 +274,7 @@

    Updating Input Details

    Declaration

    Swift

    -
    public func setDetail(value: String, forKey key: String)
    +
    public func setDetail(value: String, forKey key: String)
    @@ -273,7 +301,7 @@

    Declaration

    Declaration

    Swift

    -
    public func setDetail(value: Bool?, forKey key: String)
    +
    public func setDetail(value: Bool?, forKey key: String)
    @@ -311,7 +339,7 @@

    Updating Apple Pay Details

    Declaration

    Swift

    -
    public func fillApplePay(token: String)
    +
    public func fillApplePay(token: String)
    @@ -349,7 +377,7 @@

    Updating Card Details

    Declaration

    Swift

    -
    public func fillCard(token: String, storeDetails: Bool? = nil)
    +
    public func fillCard(token: String, storeDetails: Bool? = nil)
    @@ -376,7 +404,7 @@

    Declaration

    Declaration

    Swift

    -
    public func fillCard(cvc: String)
    +
    public func fillCard(cvc: String)
    @@ -403,7 +431,7 @@

    Declaration

    Declaration

    Swift

    -
    public func fillCard(installmentPlanIdentifier: String)
    +
    public func fillCard(installmentPlanIdentifier: String)
    @@ -441,7 +469,7 @@

    Updating iDEAL Details

    Declaration

    Swift

    -
    public func fillIdeal(issuerIdentifier: String)
    +
    public func fillIdeal(issuerIdentifier: String)
    @@ -479,7 +507,7 @@

    Updating SEPA Direct Debit Details

    Declaration

    Swift

    -
    public func fillSepa(name: String, iban: String)
    +
    public func fillSepa(name: String, iban: String)
    @@ -518,7 +546,7 @@

    Updating Address Details

    Declaration

    Swift

    -
    public struct Address
    +
    public struct Address
    @@ -545,7 +573,7 @@

    Declaration

    Declaration

    Swift

    -
    public func fillBillingAddress(_ address: Address)
    +
    public func fillBillingAddress(_ address: Address)
    @@ -560,8 +588,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentDetails/Address.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentDetails/Address.html index d9a81d9e71..d8b85ccd7c 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentDetails/Address.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentDetails/Address.html @@ -1,7 +1,7 @@ - Address Struct Reference + Address Structure Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    Address

    -
    public struct Address
    +
    public struct Address
    @@ -191,9 +219,9 @@

    Accessing Address Fields

  • - + - street + street
    @@ -208,7 +236,7 @@

    Accessing Address Fields

    Declaration

    Swift

    -
    public var street: String
    +
    public var street: String
    @@ -218,9 +246,9 @@

    Declaration

  • @@ -235,7 +263,7 @@

    Declaration

    Declaration

    Swift

    -
    public var houseNumberOrName: String
    +
    public var houseNumberOrName: String
    @@ -245,9 +273,9 @@

    Declaration

  • @@ -262,7 +290,7 @@

    Declaration

    Declaration

    Swift

    -
    public var postalCode: String
    +
    public var postalCode: String
    @@ -272,9 +300,9 @@

    Declaration

  • - + - city + city
    @@ -289,7 +317,7 @@

    Declaration

    Declaration

    Swift

    -
    public var city: String
    +
    public var city: String
    @@ -299,9 +327,9 @@

    Declaration

  • @@ -316,7 +344,7 @@

    Declaration

    Declaration

    Swift

    -
    public var stateOrProvince: String?
    +
    public var stateOrProvince: String?
    @@ -326,9 +354,9 @@

    Declaration

  • @@ -343,7 +371,7 @@

    Declaration

    Declaration

    Swift

    -
    public var countryCode: String
    +
    public var countryCode: String
    @@ -358,8 +386,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentMethod.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentMethod.html index 8817ab6b24..f32480ec4c 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentMethod.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentMethod.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentMethod

    -
    public final class PaymentMethod: Equatable
    +
    public final class PaymentMethod : Equatable
    @@ -191,9 +219,9 @@

    Accessing Payment Method Information

  • - + - name + name
    @@ -208,7 +236,7 @@

    Accessing Payment Method Information

    Declaration

    Swift

    -
    public let name: String
    +
    public let name: String
    @@ -218,9 +246,9 @@

    Declaration

  • - + - type + type
    @@ -235,7 +263,7 @@

    Declaration

    Declaration

    Swift

    -
    public let type: String
    +
    public let type: String
    @@ -245,9 +273,9 @@

    Declaration

  • - + - logoURL + logoURL
    @@ -262,7 +290,7 @@

    Declaration

    Declaration

    Swift

    -
    public let logoURL: URL?
    +
    public let logoURL: URL?
    @@ -283,9 +311,9 @@

    Handling Grouped Payment Methods

  • - + - members + members
    @@ -300,7 +328,7 @@

    Handling Grouped Payment Methods

    Declaration

    Swift

    -
    public let members: [PaymentMethod]?
    +
    public let members: [PaymentMethod]?
    @@ -321,9 +349,9 @@

    Handling Pre-Stored Information

  • @@ -338,7 +366,7 @@

    Handling Pre-Stored Information

    Declaration

    Swift

    -
    public let isOneClick: Bool
    +
    public let isOneClick: Bool
    @@ -348,9 +376,9 @@

    Declaration

  • @@ -365,7 +393,7 @@

    Declaration

    Declaration

    Swift

    -
    public let oneClickInfo: OneClickInfo?
    +
    public let oneClickInfo: OneClickInfo?
    @@ -386,9 +414,9 @@

    Managing Required Details

  • @@ -403,7 +431,7 @@

    Managing Required Details

    Declaration

    Swift

    -
    public let inputDetails: [InputDetail]?
    +
    public let inputDetails: [InputDetail]?
    @@ -424,9 +452,9 @@

    Deprecated

  • - + - oneClick + oneClick
    @@ -441,7 +469,8 @@

    Deprecated

    Declaration

    Swift

    -
    public var oneClick: Bool
    +
    @available(*, deprecated, message: "Use isOneClick instead.")
    +public var oneClick: Bool { get }
    @@ -456,8 +485,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentRequest.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentRequest.html index 0588cb2043..115f0d868b 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentRequest.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Classes/PaymentRequest.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentRequest

    -
    public final class PaymentRequest
    +
    public final class PaymentRequest
    @@ -208,7 +236,7 @@

    Initializing

    Declaration

    Swift

    -
    public init(delegate: PaymentRequestDelegate)
    +
    public init(delegate: PaymentRequestDelegate)
    @@ -224,7 +252,7 @@

    Parameters

    -

    An object that implements PaymentRequestDelegate.

    +

    An object that implements PaymentRequestDelegate.

    @@ -252,9 +280,9 @@

    Accessing Delegate

  • - + - delegate + delegate
    @@ -269,7 +297,7 @@

    Accessing Delegate

    Declaration

    Swift

    -
    internal(set) public weak var delegate: PaymentRequestDelegate?
    +
    internal(set) public weak var delegate: PaymentRequestDelegate?
    @@ -290,9 +318,9 @@

    Accessing Payment Information

  • @@ -307,7 +335,7 @@

    Accessing Payment Information

    Declaration

    Swift

    -
    private(set) public var paymentMethod: PaymentMethod?
    +
    private(set) public var paymentMethod: PaymentMethod?
    @@ -317,9 +345,9 @@

    Declaration

  • - + - amount + amount
    @@ -334,7 +362,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var amount: Int?
    +
    private(set) public var amount: Int?
    @@ -344,9 +372,9 @@

    Declaration

  • - + - currency + currency
    @@ -361,7 +389,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var currency: String?
    +
    private(set) public var currency: String?
    @@ -371,9 +399,9 @@

    Declaration

  • @@ -388,7 +416,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var reference: String?
    +
    private(set) public var reference: String?
    @@ -398,9 +426,9 @@

    Declaration

  • @@ -415,7 +443,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var countryCode: String?
    +
    private(set) public var countryCode: String?
    @@ -425,9 +453,9 @@

    Declaration

  • @@ -442,7 +470,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var shopperLocale: String?
    +
    private(set) public var shopperLocale: String?
    @@ -452,9 +480,9 @@

    Declaration

  • @@ -469,7 +497,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var shopperReference: String?
    +
    private(set) public var shopperReference: String?
    @@ -479,9 +507,9 @@

    Declaration

  • @@ -496,7 +524,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var generationTime: String?
    +
    private(set) public var generationTime: String?
    @@ -506,9 +534,9 @@

    Declaration

  • @@ -523,7 +551,7 @@

    Declaration

    Declaration

    Swift

    -
    private(set) public var publicKey: String?
    +
    private(set) public var publicKey: String?
    @@ -561,7 +589,7 @@

    Performing Payment Request Actions

    Declaration

    Swift

    -
    public func start()
    +
    public func start()
    @@ -588,7 +616,7 @@

    Declaration

    Declaration

    Swift

    -
    public func deletePreferred(paymentMethod: PaymentMethod, completion: @escaping (Bool, Error?) -> Void)
    +
    public func deletePreferred(paymentMethod: PaymentMethod, completion: @escaping (Bool, Error?) -> Void)
    @@ -615,7 +643,7 @@

    Declaration

    Declaration

    Swift

    -
    public func cancel()
    +
    public func cancel()
    @@ -630,8 +658,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/CardType.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/CardType.html index 65eb152353..9479596495 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/CardType.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/CardType.html @@ -1,7 +1,7 @@ - CardType Enum Reference + CardType Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CardType

    -
    public enum CardType: String
    +
    public enum CardType : String
    @@ -201,17 +229,13 @@

    CardType

    Declaration

    Swift

    -
    case accel
    +
    case accel
    - - -
    -
    • @@ -232,17 +256,13 @@

      Declaration

      Declaration

      Swift

      -
      case alphaBankBonusMasterCard = "mcalphabankbonus"
      +
      case alphaBankBonusMasterCard = "mcalphabankbonus"
    - - -
    -
    • @@ -263,17 +283,13 @@

      Declaration

      Declaration

      Swift

      -
      case alphaBankBonusVISA = "visaalphabankbonus"
      +
      case alphaBankBonusVISA = "visaalphabankbonus"
    - - -
    -
    • @@ -294,17 +310,13 @@

      Declaration

      Declaration

      Swift

      -
      case argencard
      +
      case argencard
    - - -
    -
    • @@ -325,17 +337,13 @@

      Declaration

      Declaration

      Swift

      -
      case americanExpress = "amex"
      +
      case americanExpress = "amex"
    - - -
    -
    • @@ -356,17 +364,13 @@

      Declaration

      Declaration

      Swift

      -
      case bcmc
      +
      case bcmc
    - - -
    -
    • @@ -387,17 +391,13 @@

      Declaration

      Declaration

      Swift

      -
      case bijenkorfCard = "bijcard"
      +
      case bijenkorfCard = "bijcard"
    - - -
    -
    • @@ -418,17 +418,13 @@

      Declaration

      Declaration

      Swift

      -
      case cabal
      +
      case cabal
    - - -
    -
    • @@ -449,17 +445,13 @@

      Declaration

      Declaration

      Swift

      -
      case carteBancaire = "cartebancaire"
      +
      case carteBancaire = "cartebancaire"
    - - -
    -
    • @@ -480,17 +472,13 @@

      Declaration

      Declaration

      Swift

      -
      case cencosud
      +
      case cencosud
    - - -
    -
    • @@ -511,17 +499,13 @@

      Declaration

      Declaration

      Swift

      -
      case chequeDejeneur
      +
      case chequeDejeneur
    - - -
    -
    • @@ -542,17 +526,13 @@

      Declaration

      Declaration

      Swift

      -
      case chinaUnionPay = "cup"
      +
      case chinaUnionPay = "cup"
    - - -
    -
    • @@ -573,17 +553,13 @@

      Declaration

      Declaration

      Swift

      -
      case codensa
      +
      case codensa
    - - -
    -
    • @@ -604,17 +580,13 @@

      Declaration

      Declaration

      Swift

      -
      case creditUnion24 = "cu24"
      +
      case creditUnion24 = "cu24"
    - - -
    -
    • @@ -635,17 +607,13 @@

      Declaration

      Declaration

      Swift

      -
      case dankort
      +
      case dankort
    - - -
    -
    • @@ -666,17 +634,13 @@

      Declaration

      Declaration

      Swift

      -
      case dankortVISA = "visadankort"
      +
      case dankortVISA = "visadankort"
    - - -
    -
    • @@ -697,17 +661,13 @@

      Declaration

      Declaration

      Swift

      -
      case diners
      +
      case diners
    - - -
    -
    • @@ -728,17 +688,13 @@

      Declaration

      Declaration

      Swift

      -
      case discover
      +
      case discover
    - - -
    -
    • @@ -759,17 +715,13 @@

      Declaration

      Declaration

      Swift

      -
      case elo
      +
      case elo
    - - -
    -
    • @@ -790,17 +742,13 @@

      Declaration

      Declaration

      Swift

      -
      case hiper
      +
      case hiper
    - - -
    -
    • @@ -821,17 +769,13 @@

      Declaration

      Declaration

      Swift

      -
      case hipercard
      +
      case hipercard
    - - -
    -
    • @@ -852,17 +796,13 @@

      Declaration

      Declaration

      Swift

      -
      case jcb
      +
      case jcb
    - - -
    -
    • @@ -883,17 +823,13 @@

      Declaration

      Declaration

      Swift

      -
      case karenMillen = "karenmillen"
      +
      case karenMillen = "karenmillen"
    - - -
    -
    • @@ -914,17 +850,13 @@

      Declaration

      Declaration

      Swift

      -
      case kcp = "kcp_creditcard"
      +
      case kcp = "kcp_creditcard"
    - - -
    -
    • @@ -945,17 +877,13 @@

      Declaration

      Declaration

      Swift

      -
      case maestro
      +
      case maestro
    - - -
    -
    • @@ -976,17 +904,13 @@

      Declaration

      Declaration

      Swift

      -
      case maestroUK = "maestrouk"
      +
      case maestroUK = "maestrouk"
    - - -
    -
    • @@ -1007,17 +931,13 @@

      Declaration

      Declaration

      Swift

      -
      case masterCard = "mc"
      +
      case masterCard = "mc"
    - - -
    -
    • @@ -1038,17 +958,13 @@

      Declaration

      Declaration

      Swift

      -
      case mir
      +
      case mir
    - - -
    -
    • @@ -1069,17 +985,13 @@

      Declaration

      Declaration

      Swift

      -
      case netplus
      +
      case netplus
    - - -
    -
    • @@ -1100,17 +1012,13 @@

      Declaration

      Declaration

      Swift

      -
      case nyce
      +
      case nyce
    - - -
    -
    • @@ -1131,17 +1039,13 @@

      Declaration

      Declaration

      Swift

      -
      case oasis
      +
      case oasis
    - - -
    -
    • @@ -1162,17 +1066,13 @@

      Declaration

      Declaration

      Swift

      -
      case pulse
      +
      case pulse
    - - -
    -
    • @@ -1193,17 +1093,13 @@

      Declaration

      Declaration

      Swift

      -
      case solo
      +
      case solo
    - - -
    -
    • @@ -1224,17 +1120,13 @@

      Declaration

      Declaration

      Swift

      -
      case shopping
      +
      case shopping
    - - -
    -
    • @@ -1255,17 +1147,13 @@

      Declaration

      Declaration

      Swift

      -
      case star
      +
      case star
    - - -
    -
    • @@ -1286,17 +1174,13 @@

      Declaration

      Declaration

      Swift

      -
      case uatp
      +
      case uatp
    - - -
    -
    • @@ -1317,17 +1201,13 @@

      Declaration

      Declaration

      Swift

      -
      case unionPay = "unionpay"
      +
      case unionPay = "unionpay"
    - - -
    -
    • @@ -1348,17 +1228,13 @@

      Declaration

      Declaration

      Swift

      -
      case visa
      +
      case visa
    - - -
    -
    • @@ -1379,23 +1255,19 @@

      Declaration

      Declaration

      Swift

      -
      case warehouse
      +
      case warehouse
    - - -
    -
    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/Error.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/Error.html index 28fec3830b..bb8c326d6e 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/Error.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/Error.html @@ -1,7 +1,7 @@ - Error Enum Reference + Error Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    Error

    -
    public enum Error: Swift.Error
    +
    public enum Error : Swift.Error
    @@ -201,17 +229,13 @@

    Error

    Declaration

    Swift

    -
    case serverError(String)
    +
    case serverError(String)
    - - -
    -
    • @@ -232,17 +256,13 @@

      Declaration

      Declaration

      Swift

      -
      case networkError(Swift.Error)
      +
      case networkError(Error)
    - - -
    -
    • @@ -263,17 +283,13 @@

      Declaration

      Declaration

      Swift

      -
      case unexpectedData
      +
      case unexpectedData
    - - -
    -
    • @@ -294,17 +310,13 @@

      Declaration

      Declaration

      Swift

      -
      case unexpectedError
      +
      case unexpectedError
    - - -
    -
    • @@ -325,7 +337,7 @@

      Declaration

      Declaration

      Swift

      -
      case cancelled
      +
      case cancelled
      @@ -346,9 +358,9 @@

      Error Description

    • @@ -362,7 +374,7 @@

      Error Description

      Declaration

      Swift

      -
      public var errorDescription: String?
      +
      public var errorDescription: String? { get }
      @@ -377,8 +389,8 @@

      Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/InputType.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/InputType.html index ade3f1ce97..7b71030809 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/InputType.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/InputType.html @@ -1,7 +1,7 @@ - InputType Enum Reference + InputType Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    InputType

    -
    public enum InputType: RawRepresentable, Equatable
    +
    public enum InputType : RawRepresentable, Equatable
    @@ -201,17 +229,13 @@

    InputType

    Declaration

    Swift

    -
    case text
    +
    case text
    - - -
    -
    • @@ -232,17 +256,13 @@

      Declaration

      Declaration

      Swift

      -
      case boolean
      +
      case boolean
    - - -
    -
    • @@ -263,17 +283,13 @@

      Declaration

      Declaration

      Swift

      -
      case select
      +
      case select
    - - -
    -
    • @@ -294,17 +310,13 @@

      Declaration

      Declaration

      Swift

      -
      case iban
      +
      case iban
    - - -
    -
    • @@ -325,17 +337,13 @@

      Declaration

      Declaration

      Swift

      -
      case cvc
      +
      case cvc
    - - -
    -
    • @@ -356,17 +364,13 @@

      Declaration

      Declaration

      Swift

      -
      case cardToken(cvcOptional: Bool)
      +
      case cardToken(cvcOptional: Bool)
    - - -
    -
    • @@ -387,17 +391,13 @@

      Declaration

      Declaration

      Swift

      -
      case applePayToken
      +
      case applePayToken
    - - -
    -
    • @@ -418,7 +418,7 @@

      Declaration

      Declaration

      Swift

      -
      case address
      +
      case address
      @@ -433,8 +433,8 @@

      Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/PaymentRequestResult.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/PaymentRequestResult.html index 02f5c1878a..25e54061e4 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/PaymentRequestResult.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/PaymentRequestResult.html @@ -1,7 +1,7 @@ - PaymentRequestResult Enum Reference + PaymentRequestResult Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentRequestResult

    -
    public enum PaymentRequestResult
    +
    public enum PaymentRequestResult
    @@ -201,17 +229,13 @@

    PaymentRequestResult

    Declaration

    Swift

    -
    case payment(Payment)
    +
    case payment(Payment)
    - - -
    -
    • @@ -232,7 +256,7 @@

      Declaration

      Declaration

      Swift

      -
      case error(Error)
      +
      case error(Error)
      @@ -247,8 +271,8 @@

      Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/PaymentStatus.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/PaymentStatus.html index 572d64c558..a3b4e37938 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/PaymentStatus.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Enums/PaymentStatus.html @@ -1,7 +1,7 @@ - PaymentStatus Enum Reference + PaymentStatus Enumeration Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentStatus

    -
    public enum PaymentStatus: String
    +
    public enum PaymentStatus : String
    @@ -201,17 +229,13 @@

    PaymentStatus

    Declaration

    Swift

    -
    case received
    +
    case received
    - - -
    -
    • @@ -232,17 +256,13 @@

      Declaration

      Declaration

      Swift

      -
      case authorised
      +
      case authorised
    - - -
    -
    • @@ -263,17 +283,13 @@

      Declaration

      Declaration

      Swift

      -
      case error
      +
      case error
    - - -
    -
    • @@ -294,17 +310,13 @@

      Declaration

      Declaration

      Swift

      -
      case refused
      +
      case refused
    - - -
    -
    • @@ -325,7 +337,7 @@

      Declaration

      Declaration

      Swift

      -
      case cancelled
      +
      case cancelled
      @@ -340,8 +352,8 @@

      Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Other Classes.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Other Classes.html new file mode 100644 index 0000000000..8ac4724d0a --- /dev/null +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Other Classes.html @@ -0,0 +1,246 @@ + + + + Other Classes Reference + + + + + + + + + + + + + + + + + + + + +
    +

    + + + + +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    Other Classes

    +

    The following classes are available globally.

    + +
    +
    + +
    +
    +
    +
      +
    • +
      + + + + AmountFormatter + +
      +
      +
      +
      +
      +
      +

      Convenience class to format a payment amount for display.

      + + See more +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public final class AmountFormatter
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Other Typealiases.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Other Typealiases.html new file mode 100644 index 0000000000..e87674ea48 --- /dev/null +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Other Typealiases.html @@ -0,0 +1,353 @@ + + + + Other Type Aliases Reference + + + + + + + + + + + + + + + + + + + + +
    +

    + + + + +

    + +

    +

    + +
    +

    + +

    + + + View on GitHub + +

    + +
    + + + +
    + +
    + +
    +
    +

    Other Type Aliases

    +

    The following type aliases are available globally.

    + +
    +
    + +
    +
    +
    +
      +
    • +
      + + + + DataCompletion + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public typealias DataCompletion = (Data) -> Void
      + +
      +
      +
      +
      +
    • +
    • +
      + + + + MethodCompletion + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public typealias MethodCompletion = (PaymentMethod) -> Void
      + +
      +
      +
      +
      +
    • +
    • +
      + + + + URLCompletion + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public typealias URLCompletion = (URL) -> Void
      + +
      +
      +
      +
      +
    • +
    • +
      + + + + CardScanCompletion + +
      +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public typealias CardScanCompletion = ((number: String?, expiryDate: String?, cvc: String?)) -> Void
      + +
      +
      +
      +
      +
    • +
    • + +
      +
      +
      +
      +
      +

      Undocumented

      + +
      +
      +

      Declaration

      +
      +

      Swift

      +
      public typealias PaymentDetailsCompletion = (PaymentDetails) -> Void
      + +
      +
      +
      +
      +
    • +
    +
    +
    +
    + +
    +
    + + + diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment Method.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment Method.html index eecdc9d91c..a94b5603e6 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment Method.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment Method.html @@ -23,6 +23,7 @@ + @@ -158,6 +159,34 @@ + +
    @@ -194,7 +223,7 @@

    Payment Method

    Declaration

    Swift

    -
    public final class PaymentMethod: Equatable
    +
    public final class PaymentMethod : Equatable
    @@ -226,7 +255,7 @@

    Declaration

    Declaration

    Swift

    -
    public class PaymentDetails
    +
    public class PaymentDetails
    @@ -260,7 +289,7 @@

    Declaration

    Declaration

    Swift

    -
    public class InputDetail
    +
    public class InputDetail
    @@ -292,7 +321,7 @@

    Declaration

    Declaration

    Swift

    -
    public enum InputType: RawRepresentable, Equatable
    +
    public enum InputType : RawRepresentable, Equatable
    @@ -324,7 +353,7 @@

    Declaration

    Declaration

    Swift

    -
    public final class InputSelectItem
    +
    public final class InputSelectItem
    @@ -355,7 +384,7 @@

    Declaration

    Declaration

    Swift

    -
    public protocol OneClickInfo
    +
    public protocol OneClickInfo
    @@ -383,7 +412,7 @@

    Declaration

    Declaration

    Swift

    -
    public struct CardOneClickInfo: OneClickInfo
    +
    public struct CardOneClickInfo : OneClickInfo
    @@ -411,7 +440,7 @@

    Declaration

    Declaration

    Swift

    -
    public struct PayPalOneClickInfo: OneClickInfo
    +
    public struct PayPalOneClickInfo : OneClickInfo
    @@ -426,8 +455,8 @@

    Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment Request.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment Request.html index 3ff76ae99e..c0cbcc2abf 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment Request.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment Request.html @@ -23,6 +23,7 @@ + @@ -158,6 +159,34 @@ + +
    @@ -194,7 +223,7 @@

    Payment Request

    Declaration

    Swift

    -
    public final class PaymentRequest
    +
    public final class PaymentRequest
    @@ -226,7 +255,7 @@

    Declaration

    Declaration

    Swift

    -
    public protocol PaymentRequestDelegate: class
    +
    public protocol PaymentRequestDelegate : AnyObject
    @@ -258,7 +287,7 @@

    Declaration

    Declaration

    Swift

    -
    public enum PaymentRequestResult
    +
    public enum PaymentRequestResult
    @@ -290,7 +319,7 @@

    Declaration

    Declaration

    Swift

    -
    public enum Error: Swift.Error
    +
    public enum Error : Swift.Error
    @@ -305,8 +334,8 @@

    Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment.html index 951edac87b..db173d8c59 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Payment.html @@ -23,6 +23,7 @@ + @@ -158,6 +159,34 @@ + +
    @@ -194,7 +223,7 @@

    Payment

    Declaration

    Swift

    -
    public final class Payment
    +
    public final class Payment
    @@ -226,7 +255,7 @@

    Declaration

    Declaration

    Swift

    -
    public enum PaymentStatus: String
    +
    public enum PaymentStatus : String
    @@ -241,8 +270,8 @@

    Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/CheckoutViewControllerCardScanDelegate.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/CheckoutViewControllerCardScanDelegate.html index 2a4ce6338a..15d9bf6d05 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/CheckoutViewControllerCardScanDelegate.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/CheckoutViewControllerCardScanDelegate.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CheckoutViewControllerCardScanDelegate

    -
    public protocol CheckoutViewControllerCardScanDelegate: class
    +
    public protocol CheckoutViewControllerCardScanDelegate : AnyObject
    @@ -210,7 +238,7 @@

    Managing Scan Button Visibility

    Declaration

    Swift

    -
    func shouldShowCardScanButton(for checkoutViewController: CheckoutViewController) -> Bool
    +
    func shouldShowCardScanButton(for checkoutViewController: CheckoutViewController) -> Bool
    @@ -254,9 +282,9 @@

    Handling Scan Action

  • @@ -272,7 +300,7 @@

    Handling Scan Action

    Declaration

    Swift

    -
    func scanCard(for checkoutViewController: CheckoutViewController, completion: @escaping CardScanCompletion)
    +
    func scanCard(for checkoutViewController: CheckoutViewController, completion: @escaping CardScanCompletion)
    @@ -301,7 +329,7 @@

    Parameters

    The handler to invoke once card number and expiry date have been scanned. - The CardScanCompletion handler expects card number, expiry date (MMYY) and CVC as optional + The CardScanCompletion handler expects card number, expiry date (MMYY) and CVC as optional numerical strings with no spaces. Illegal characters are stripped out of all strings.

    @@ -320,8 +348,8 @@

    Parameters

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/CheckoutViewControllerDelegate.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/CheckoutViewControllerDelegate.html index 5631df9976..e6d6afaa03 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/CheckoutViewControllerDelegate.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/CheckoutViewControllerDelegate.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CheckoutViewControllerDelegate

    -
    public protocol CheckoutViewControllerDelegate: class
    +
    public protocol CheckoutViewControllerDelegate : AnyObject
    @@ -201,7 +229,7 @@

    CheckoutViewControllerDelegate

    Declaration

    Swift

    -
    func checkoutViewController(_ controller: CheckoutViewController, requiresPaymentDataForToken token: String, completion: @escaping DataCompletion)
    +
    func checkoutViewController(_ controller: CheckoutViewController, requiresPaymentDataForToken token: String, completion: @escaping DataCompletion)
    @@ -271,7 +299,7 @@

    Parameters

    Declaration

    Swift

    -
    func checkoutViewController(_ controller: CheckoutViewController, requiresReturnURL completion: @escaping URLCompletion)
    +
    func checkoutViewController(_ controller: CheckoutViewController, requiresReturnURL completion: @escaping URLCompletion)
    @@ -329,7 +357,7 @@

    Parameters

    Declaration

    Swift

    -
    func checkoutViewController(_ controller: CheckoutViewController, didFinishWith result: PaymentRequestResult)
    +
    func checkoutViewController(_ controller: CheckoutViewController, didFinishWith result: PaymentRequestResult)
    @@ -375,8 +403,8 @@

    Parameters

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/PaymentRequestDelegate.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/PaymentRequestDelegate.html index 68d1376e26..a611e5153b 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/PaymentRequestDelegate.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Protocols/PaymentRequestDelegate.html @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PaymentRequestDelegate

    -
    public protocol PaymentRequestDelegate: class
    +
    public protocol PaymentRequestDelegate : AnyObject
    @@ -201,7 +229,7 @@

    PaymentRequestDelegate

    Declaration

    Swift

    -
    func paymentRequest(_ request: PaymentRequest, requiresPaymentDataForToken token: String, completion: @escaping DataCompletion)
    +
    func paymentRequest(_ request: PaymentRequest, requiresPaymentDataForToken token: String, completion: @escaping DataCompletion)
    @@ -228,7 +256,7 @@

    Declaration

    Declaration

    Swift

    -
    func paymentRequest(_ request: PaymentRequest, requiresPaymentMethodFrom preferredMethods: [PaymentMethod]?, available availableMethods: [PaymentMethod], completion: @escaping MethodCompletion)
    +
    func paymentRequest(_ request: PaymentRequest, requiresPaymentMethodFrom preferredMethods: [PaymentMethod]?, available availableMethods: [PaymentMethod], completion: @escaping MethodCompletion)
    @@ -258,7 +286,7 @@

    Declaration

    Declaration

    Swift

    -
    func paymentRequest(_ request: PaymentRequest, requiresReturnURLFrom url: URL, completion: @escaping URLCompletion)
    +
    func paymentRequest(_ request: PaymentRequest, requiresReturnURLFrom url: URL, completion: @escaping URLCompletion)
    @@ -285,7 +313,7 @@

    Declaration

    Declaration

    Swift

    -
    func paymentRequest(_ request: PaymentRequest, requiresPaymentDetails details: PaymentDetails, completion: @escaping PaymentDetailsCompletion)
    +
    func paymentRequest(_ request: PaymentRequest, requiresPaymentDetails details: PaymentDetails, completion: @escaping PaymentDetailsCompletion)
    @@ -312,7 +340,7 @@

    Declaration

    Declaration

    Swift

    -
    func paymentRequest(_ request: PaymentRequest, didFinishWith result: PaymentRequestResult)
    +
    func paymentRequest(_ request: PaymentRequest, didFinishWith result: PaymentRequestResult)
    @@ -327,8 +355,8 @@

    Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/CardOneClickInfo.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/CardOneClickInfo.html index ddfad05056..f411739b43 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/CardOneClickInfo.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/CardOneClickInfo.html @@ -1,7 +1,7 @@ - CardOneClickInfo Struct Reference + CardOneClickInfo Structure Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    CardOneClickInfo

    -
    public struct CardOneClickInfo: OneClickInfo
    +
    public struct CardOneClickInfo : OneClickInfo
    @@ -191,9 +219,9 @@

    Accessing Stored Info

  • - + - number + number
    @@ -208,7 +236,7 @@

    Accessing Stored Info

    Declaration

    Swift

    -
    public let number: String
    +
    public let number: String
    @@ -218,9 +246,9 @@

    Declaration

  • @@ -235,7 +263,7 @@

    Declaration

    Declaration

    Swift

    -
    public let holderName: String
    +
    public let holderName: String
    @@ -245,9 +273,9 @@

    Declaration

  • @@ -262,7 +290,7 @@

    Declaration

    Declaration

    Swift

    -
    public let expiryMonth: Int
    +
    public let expiryMonth: Int
    @@ -272,9 +300,9 @@

    Declaration

  • @@ -289,7 +317,7 @@

    Declaration

    Declaration

    Swift

    -
    public let expiryYear: Int
    +
    public let expiryYear: Int
    @@ -304,8 +332,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/IBANSpecification.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/IBANSpecification.html index 7c1b295afc..4fa88412ea 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/IBANSpecification.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/IBANSpecification.html @@ -1,7 +1,7 @@ - IBANSpecification Struct Reference + IBANSpecification Structure Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    IBANSpecification

    -
    public struct IBANSpecification
    +
    public struct IBANSpecification
    @@ -184,9 +212,9 @@

    IBANSpecification

  • @@ -201,7 +229,7 @@

    IBANSpecification

    Declaration

    Swift

    -
    public let countryCode: String
    +
    public let countryCode: String
    @@ -211,9 +239,9 @@

    Declaration

  • - + - length + length
    @@ -228,7 +256,7 @@

    Declaration

    Declaration

    Swift

    -
    public let length: Int
    +
    public let length: Int
    @@ -238,9 +266,9 @@

    Declaration

  • @@ -255,7 +283,7 @@

    Declaration

    Declaration

    Swift

    -
    public let structure: String
    +
    public let structure: String
    @@ -265,9 +293,9 @@

    Declaration

  • - + - example + example
    @@ -282,7 +310,7 @@

    Declaration

    Declaration

    Swift

    -
    public let example: String
    +
    public let example: String
    @@ -309,7 +337,7 @@

    Declaration

    Declaration

    Swift

    -
    public init?(forCountryCode countryCode: String)
    +
    public init?(forCountryCode countryCode: String)
  • @@ -343,8 +371,8 @@

    Parameters

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/PayPalOneClickInfo.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/PayPalOneClickInfo.html index 96301c4b24..75522d5afa 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/PayPalOneClickInfo.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Structs/PayPalOneClickInfo.html @@ -1,7 +1,7 @@ - PayPalOneClickInfo Struct Reference + PayPalOneClickInfo Structure Reference @@ -25,7 +25,7 @@ - +

    @@ -53,7 +53,7 @@

    @@ -159,6 +159,34 @@ + +
    @@ -168,7 +196,7 @@

    PayPalOneClickInfo

    -
    public struct PayPalOneClickInfo: OneClickInfo
    +
    public struct PayPalOneClickInfo : OneClickInfo
    @@ -191,9 +219,9 @@

    Accessing Stored Info

  • @@ -208,7 +236,7 @@

    Accessing Stored Info

    Declaration

    Swift

    -
    public let emailAddress: String
    +
    public let emailAddress: String
    @@ -223,8 +251,8 @@

    Declaration

  • diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/UI.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/UI.html index dbda39b9cc..d6190b7e22 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/UI.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/UI.html @@ -23,6 +23,7 @@ + @@ -158,6 +159,34 @@ + +
    @@ -200,7 +229,7 @@

    UI

    Declaration

    Swift

    -
    public final class CheckoutViewController: UIViewController, PaymentRequestDelegate, PaymentMethodPickerViewControllerDelegate, PaymentDetailsPresenterDelegate, SFSafariViewControllerDelegate
    +
    public final class CheckoutViewController : UIViewController, PaymentRequestDelegate, PaymentMethodPickerViewControllerDelegate, PaymentDetailsPresenterDelegate, SFSafariViewControllerDelegate
    @@ -232,7 +261,7 @@

    Declaration

    Declaration

    Swift

    -
    public protocol CheckoutViewControllerDelegate: class
    +
    public protocol CheckoutViewControllerDelegate : AnyObject
    @@ -262,7 +291,7 @@

    Declaration

    Declaration

    Swift

    -
    public protocol CheckoutViewControllerCardScanDelegate: class
    +
    public protocol CheckoutViewControllerCardScanDelegate : AnyObject
    @@ -295,7 +324,7 @@

    Declaration

    Declaration

    Swift

    -
    public final class AppearanceConfiguration
    +
    public final class AppearanceConfiguration
    @@ -310,8 +339,8 @@

    Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Utilities.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Utilities.html index d6641eeb08..9a21a89289 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Utilities.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/Utilities.html @@ -23,6 +23,7 @@ + @@ -158,6 +159,34 @@ + +
    @@ -194,7 +223,7 @@

    Utilities

    Declaration

    Swift

    -
    public enum CardType: String
    +
    public enum CardType : String
    @@ -226,7 +255,7 @@

    Declaration

    Declaration

    Swift

    -
    public final class CardValidator
    +
    public final class CardValidator
    @@ -258,7 +287,7 @@

    Declaration

    Declaration

    Swift

    -
    public struct IBANSpecification
    +
    public struct IBANSpecification
    @@ -290,7 +319,7 @@

    Declaration

    Declaration

    Swift

    -
    public class IBANValidator
    +
    public class IBANValidator
    @@ -322,7 +351,7 @@

    Declaration

    Declaration

    Swift

    -
    public class IBANTextField: UITextField
    +
    public class IBANTextField : UITextField
    @@ -337,8 +366,8 @@

    Declaration

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/index.html b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/index.html index bb332d7960..53eea98469 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/index.html +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/index.html @@ -158,6 +158,34 @@ + +
    @@ -185,12 +213,12 @@

    Quick integration

    If you want to quickly integrate with Adyen, use the default UI elements that we provide for selecting payment methods, entering payment details, and completing a payment.

    -

    For this, instantiate CheckoutViewController, present it in your app, and implement the CheckoutViewControllerDelegate protocol for callbacks. All UI interactions are handled by Adyen.

    +

    For this, instantiate CheckoutViewController, present it in your app, and implement the CheckoutViewControllerDelegate protocol for callbacks. All UI interactions are handled by Adyen.

    let viewController = CheckoutViewController(delegate: self)
     present(viewController, animated: true)
     
    -

    The following CheckoutViewControllerDelegate methods should be implemented:

    +

    The following CheckoutViewControllerDelegate methods should be implemented:

    - checkoutViewController:requiresPaymentDataForToken:completion:
     
    @@ -211,7 +239,7 @@

    Custom integration

    With custom integration you will have full control over the payment flow and will be able to implement your own unique checkout experience.

    -

    This approach requires instantiating and starting a PaymentRequest and implementing the PaymentRequestDelegate protocol for callbacks. The PaymentRequestDelegate callbacks will provide you with a list of available payment methods, the URL for payment methods that require an external flow, and the result of payment processing.

    +

    This approach requires instantiating and starting a PaymentRequest and implementing the PaymentRequestDelegate protocol for callbacks. The PaymentRequestDelegate callbacks will provide you with a list of available payment methods, the URL for payment methods that require an external flow, and the result of payment processing.

    For implementation details, refer to the Custom integration guide.

    Examples

    @@ -235,8 +263,8 @@

    License

    diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/search.json b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/search.json index 8b92213358..9618215232 100644 --- a/Docs/docsets/Adyen.docset/Contents/Resources/Documents/search.json +++ b/Docs/docsets/Adyen.docset/Contents/Resources/Documents/search.json @@ -1 +1 @@ -{"Classes/IBANTextField.html#/s:5Adyen13IBANTextFieldC4ibanSSSgv":{"name":"iban","abstract":"

    The IBAN entered in the text field, or nil if no valid IBAN has been entered.

    ","parent_name":"IBANTextField"},"Classes/IBANValidator.html#/s:5Adyen13IBANValidatorC7isValidSbSSFZ":{"name":"isValid(_:)","abstract":"

    Checks if the given string is a valid IBAN value.

    ","parent_name":"IBANValidator"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV11countryCodeSSv":{"name":"countryCode","abstract":"

    The code of the country to which the specifications apply.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV6lengthSiv":{"name":"length","abstract":"

    The length of a valid IBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV9structureSSv":{"name":"structure","abstract":"

    The structure of the underlying BBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV7exampleSSv":{"name":"example","abstract":"

    An example of a valid IBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationVACSgSS14forCountryCode_tcfc":{"name":"init(forCountryCode:)","abstract":"

    Returns the IBAN specification for the country with the given code, or nil if none could be found.

    ","parent_name":"IBANSpecification"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_AA0B4TypeOSg4typeSS15formattedNumbertSS04cardJ0_SayAGG08acceptedB5TypestFZ":{"name":"validate(cardNumber:acceptedCardTypes:)","abstract":"

    Validates and formats the given card number, and detects the corresponding card type.

    ","parent_name":"CardValidator"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_SS13formattedDatetSS06expiryH0_SSSg9separatortFZ":{"name":"validate(expiryDate:separator:)","abstract":"

    Validates and formats the given expiration date.

    ","parent_name":"CardValidator"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_SS12formattedCvctSS3cvc_tFZ":{"name":"validate(cvc:)","abstract":"

    Validates and formats the given cvc.

    ","parent_name":"CardValidator"},"Enums/CardType.html#/s:5Adyen8CardTypeO5accelA2CmF":{"name":"accel","abstract":"

    Accel

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO020alphaBankBonusMasterB0A2CmF":{"name":"alphaBankBonusMasterCard","abstract":"

    Alpha Bank Bonus MasterCard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO18alphaBankBonusVISAA2CmF":{"name":"alphaBankBonusVISA","abstract":"

    Alpha Bank Bonus VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9argencardA2CmF":{"name":"argencard","abstract":"

    Argencard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO15americanExpressA2CmF":{"name":"americanExpress","abstract":"

    American Express

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4bcmcA2CmF":{"name":"bcmc","abstract":"

    BCMC

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO09bijenkorfB0A2CmF":{"name":"bijenkorfCard","abstract":"

    de Bijenkorf Card

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5cabalA2CmF":{"name":"cabal","abstract":"

    Cabal

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13carteBancaireA2CmF":{"name":"carteBancaire","abstract":"

    Carte Bancaire

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8cencosudA2CmF":{"name":"cencosud","abstract":"

    Cencosud

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO14chequeDejeneurA2CmF":{"name":"chequeDejeneur","abstract":"

    Chèque Déjeuner

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13chinaUnionPayA2CmF":{"name":"chinaUnionPay","abstract":"

    China UnionPay

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7codensaA2CmF":{"name":"codensa","abstract":"

    Codensa

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13creditUnion24A2CmF":{"name":"creditUnion24","abstract":"

    Credit Union 24

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7dankortA2CmF":{"name":"dankort","abstract":"

    Dankort

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO11dankortVISAA2CmF":{"name":"dankortVISA","abstract":"

    Dankort VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO6dinersA2CmF":{"name":"diners","abstract":"

    Diners Club

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8discoverA2CmF":{"name":"discover","abstract":"

    Discover

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3eloA2CmF":{"name":"elo","abstract":"

    Elo

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5hiperA2CmF":{"name":"hiper","abstract":"

    Hiper

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9hipercardA2CmF":{"name":"hipercard","abstract":"

    Hipercard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3jcbA2CmF":{"name":"jcb","abstract":"

    JCB

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO11karenMillenA2CmF":{"name":"karenMillen","abstract":"

    KarenMillen

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3kcpA2CmF":{"name":"kcp","abstract":"

    Korea Cyber Payment

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7maestroA2CmF":{"name":"maestro","abstract":"

    Maestro

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9maestroUKA2CmF":{"name":"maestroUK","abstract":"

    Maestro UK

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO06masterB0A2CmF":{"name":"masterCard","abstract":"

    MasterCard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3mirA2CmF":{"name":"mir","abstract":"

    Mir

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7netplusA2CmF":{"name":"netplus","abstract":"

    Net+

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4nyceA2CmF":{"name":"nyce","abstract":"

    NYCE

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5oasisA2CmF":{"name":"oasis","abstract":"

    Oasis

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5pulseA2CmF":{"name":"pulse","abstract":"

    Pulse

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4soloA2CmF":{"name":"solo","abstract":"

    Solo

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8shoppingA2CmF":{"name":"shopping","abstract":"

    Shopping

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4starA2CmF":{"name":"star","abstract":"

    STAR

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4uatpA2CmF":{"name":"uatp","abstract":"

    Universal Air Travel Plan

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8unionPayA2CmF":{"name":"unionPay","abstract":"

    UnionPay

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4visaA2CmF":{"name":"visa","abstract":"

    VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9warehouseA2CmF":{"name":"warehouse","abstract":"

    The Warehouse

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3allSayACGvZ":{"name":"all","abstract":"

    Array containing all card types in this enum.

    ","parent_name":"CardType"},"Enums/CardType.html":{"name":"CardType","abstract":"

    Enum containing most known types of credit and debit cards.

    "},"Classes/CardValidator.html":{"name":"CardValidator","abstract":"

    An object that provides static methods for validating and formatting card numbers, expiry dates, and cvc values, and detecting card types.

    "},"Structs/IBANSpecification.html":{"name":"IBANSpecification","abstract":"

    Contains the country-specific specifications for countries that adopt the IBAN standard.

    "},"Classes/IBANValidator.html":{"name":"IBANValidator","abstract":"

    An object that provides a static method to validate IBAN values.

    "},"Classes/IBANTextField.html":{"name":"IBANTextField","abstract":"

    A text field object designed for the entry of an IBAN value. This field formats and validates the IBAN in real time.

    "},"Structs/PayPalOneClickInfo.html#/s:5Adyen18PayPalOneClickInfoV12emailAddressSSv":{"name":"emailAddress","abstract":"

    The email address of the PayPal account.

    ","parent_name":"PayPalOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV6numberSSv":{"name":"number","abstract":"

    A shortened version of the card’s number.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV10holderNameSSv":{"name":"holderName","abstract":"

    The card’s holder name.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV11expiryMonthSiv":{"name":"expiryMonth","abstract":"

    The card’s expiry month.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV10expiryYearSiv":{"name":"expiryYear","abstract":"

    The card’s expiry year.

    ","parent_name":"CardOneClickInfo"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC10identifierSSv":{"name":"identifier","abstract":"

    Identifier of an item. Upon selection, the value of this property should be assigned to the value property of the InputDetail object.

    ","parent_name":"InputSelectItem"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC4nameSSv":{"name":"name","abstract":"

    Display name of an item.

    ","parent_name":"InputSelectItem"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC8imageURL10Foundation0F0VSgv":{"name":"imageURL","abstract":"

    Optional URL for the icon of an item.

    ","parent_name":"InputSelectItem"},"Enums/InputType.html#/s:5Adyen9InputTypeO4textA2CmF":{"name":"text","abstract":"

    Text input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO7booleanA2CmF":{"name":"boolean","abstract":"

    Boolean input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO6selectA2CmF":{"name":"select","abstract":"

    Input type should be selected from the given list.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO4ibanA2CmF":{"name":"iban","abstract":"

    IBAN input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO3cvcA2CmF":{"name":"cvc","abstract":"

    CVC input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO9cardTokenACSb11cvcOptional_tcACmF":{"name":"cardToken","abstract":"

    Card token input type. By default, cvcOptional is false.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO13applePayTokenA2CmF":{"name":"applePayToken","abstract":"

    Apple Pay token input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO7addressA2CmF":{"name":"address","abstract":"

    Address input type.

    ","parent_name":"InputType"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC4typeAA0B4TypeOv":{"name":"type","abstract":"

    The detail type. See InputType.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC8optionalSbv":{"name":"optional","abstract":"

    Whether or not the detail is optional.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC5itemsSayAA0B10SelectItemCGSgv":{"name":"items","abstract":"

    An array of InputSelectItem. Only be available if type is .select.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC12inputDetailsSayACGSgv":{"name":"inputDetails","abstract":"

    An array of input details nested in the receiver.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC11stringValueSSSgv":{"name":"stringValue","abstract":"

    Detail string value.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC9boolValueSbSgv":{"name":"boolValue","abstract":"

    Detail bool value.

    ","parent_name":"InputDetail"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV6streetSSv":{"name":"street","abstract":"

    The street name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV17houseNumberOrNameSSv":{"name":"houseNumberOrName","abstract":"

    The house number or name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV10postalCodeSSv":{"name":"postalCode","abstract":"

    The postal code.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV4citySSv":{"name":"city","abstract":"

    The city name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV15stateOrProvinceSSSgv":{"name":"stateOrProvince","abstract":"

    An optional state or province name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV11countryCodeSSv":{"name":"countryCode","abstract":"

    The ISO country code.

    ","parent_name":"Address"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC4listSayAA11InputDetailCGv":{"name":"list","abstract":"

    List of InputDetail.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9setDetailySS5value_SS6forKeytF":{"name":"setDetail(value:forKey:)","abstract":"

    Update the detail defined by a given key with the string value provided.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9setDetailySbSg5value_SS6forKeytF":{"name":"setDetail(value:forKey:)","abstract":"

    Update the detail defined by a given key with the bool value provided.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC12fillApplePayySS5token_tF":{"name":"fillApplePay(token:)","abstract":"

    Fills details for the Apple Pay transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS5token_SbSg05storeC0tF":{"name":"fillCard(token:storeDetails:)","abstract":"

    Fills details for the card transaction with a token.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS3cvc_tF":{"name":"fillCard(cvc:)","abstract":"

    Fills details for the card transaction with CVC.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS25installmentPlanIdentifier_tF":{"name":"fillCard(installmentPlanIdentifier:)","abstract":"

    Fills installments selection for the card transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9fillIdealySS16issuerIdentifier_tF":{"name":"fillIdeal(issuerIdentifier:)","abstract":"

    Fills details for the iDEAL transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillSepaySS4name_SS4ibantF":{"name":"fillSepa(name:iban:)","abstract":"

    Fill details for the SEPA transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails/Address.html":{"name":"Address","abstract":"

    An object that represents an address requested in PaymentDetails.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC18fillBillingAddressyAC0F0VF":{"name":"fillBillingAddress(_:)","abstract":"

    Fills the billing address for a transaction that requires AVS.

    ","parent_name":"PaymentDetails"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC4nameSSv":{"name":"name","abstract":"

    The name of the payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC4typeSSv":{"name":"type","abstract":"

    The payment method type.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC7logoURL10Foundation0E0VSgv":{"name":"logoURL","abstract":"

    A URL to the logo of the payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC7membersSayACGSgv":{"name":"members","abstract":"

    Members of the payment method (only applicable when the receiver is a group).

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC10isOneClickSbv":{"name":"isOneClick","abstract":"

    A Boolean value indicating whether the payment method is a one-click payment method, which means that it can be easily completed by the user.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC12oneClickInfoAA03OneeF0_pSgv":{"name":"oneClickInfo","abstract":"

    The information that was stored for this payment payment method, or nil if this is not a one-click payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC12inputDetailsSayAA11InputDetailCGSgv":{"name":"inputDetails","abstract":"

    The input details that should be filled in to complete the payment.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC8oneClickSbv":{"name":"oneClick","abstract":"

    A Boolean value indicating whether the payment method is a one-click payment method, which means that it can be easily completed by the user.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html":{"name":"PaymentMethod","abstract":"

    An object representing a payment method used to complete a payment.

    "},"Classes/PaymentDetails.html":{"name":"PaymentDetails","abstract":"

    An object that holds the list of InputDetail items required for to process a transaction.

    "},"Classes/InputDetail.html":{"name":"InputDetail","abstract":"

    An object describing a payment detail required to process the transaction."},"Enums/InputType.html":{"name":"InputType","abstract":"

    Defines types of payment details.

    "},"Classes/InputSelectItem.html":{"name":"InputSelectItem","abstract":"

    An object representing a selectable item used in InputDetail with select type.

    "},"Payment Method.html#/s:5Adyen12OneClickInfoP":{"name":"OneClickInfo","abstract":"

    Instances conforming to this protocol provide access to the information that was stored for a payment method.

    "},"Structs/CardOneClickInfo.html":{"name":"CardOneClickInfo","abstract":"

    Object that contains stored card info used to perform previous card payments.

    "},"Structs/PayPalOneClickInfo.html":{"name":"PayPalOneClickInfo","abstract":"

    Object that contains stored info used to perform previous PayPal payments.

    "},"Enums/Error.html#/s:5Adyen5ErrorO06serverB0ACSScACmF":{"name":"serverError","abstract":"

    Error returned from server.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO07networkB0ACsAB_pcACmF":{"name":"networkError","abstract":"

    Network error.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO14unexpectedDataA2CmF":{"name":"unexpectedData","abstract":"

    Unexpected data or data format.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO010unexpectedB0A2CmF":{"name":"unexpectedError","abstract":"

    Unexpected error.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO9cancelledA2CmF":{"name":"cancelled","abstract":"

    Payment was cancelled.

    ","parent_name":"Error"},"Enums/Error.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgv":{"name":"errorDescription","parent_name":"Error"},"Enums/PaymentRequestResult.html#/s:5Adyen20PaymentRequestResultO7paymentAcA0B0CcACmF":{"name":"payment","abstract":"

    In case of success a Payment object will be returned.

    ","parent_name":"PaymentRequestResult"},"Enums/PaymentRequestResult.html#/s:5Adyen20PaymentRequestResultO5errorAcA5ErrorOcACmF":{"name":"error","abstract":"

    In case of failure an Error will be returned.

    ","parent_name":"PaymentRequestResult"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_SS08requiresB12DataForTokeny10Foundation0G0Vc10completiontF":{"name":"paymentRequest(_:requiresPaymentDataForToken:completion:)","abstract":"

    Given the PaymentRequest that started the payment flow and token, waits for data from merchant server to be passed via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_SayAA0B6MethodCGSg08requiresbF4FromAI9availableyAHc10completiontF":{"name":"paymentRequest(_:requiresPaymentMethodFrom:available:completion:)","abstract":"

    Given a list of PaymentMethod (available and preferred) waits for the selection via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_10Foundation3URLV21requiresReturnURLFromyAIc10completiontF":{"name":"paymentRequest(_:requiresReturnURLFrom:completion:)","abstract":"

    This method is called when a URL redirection needs to be executed.","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_AA0B7DetailsC08requiresbF0yAHc10completiontF":{"name":"paymentRequest(_:requiresPaymentDetails:completion:)","abstract":"

    This method is called when input is needed for completing the transation. The filled PaymentDetails should be sent via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_AA0bC6ResultO13didFinishWithtF":{"name":"paymentRequest(_:didFinishWith:)","abstract":"

    This method is called when the payment flow is finished.

    ","parent_name":"PaymentRequestDelegate"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestCAcA0bC8Delegate_p8delegate_tcfc":{"name":"init(delegate:)","abstract":"

    Creates a PaymentRequest object and initialises it with a provided delegate.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC8delegateAA0bC8Delegate_pSgXwv":{"name":"delegate","abstract":"

    Delegate for controlling the payment flow. See PaymentRequestDelegate.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC13paymentMethodAA0bE0CSgv":{"name":"paymentMethod","abstract":"

    The selected payment method.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC6amountSiSgv":{"name":"amount","abstract":"

    Amount to be charged.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC8currencySSSgv":{"name":"currency","abstract":"

    Payment currency.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC9referenceSSSgv":{"name":"reference","abstract":"

    Payment reference.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC11countryCodeSSSgv":{"name":"countryCode","abstract":"

    Payment country code.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC13shopperLocaleSSSgv":{"name":"shopperLocale","abstract":"

    Shopper locale.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC16shopperReferenceSSSgv":{"name":"shopperReference","abstract":"

    Shopper reference.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC14generationTimeSSSgv":{"name":"generationTime","abstract":"

    Generation time. Used for generating a token for card payments.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC9publicKeySSSgv":{"name":"publicKey","abstract":"

    Public key. Used for generating a token for card payments.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC5startyyF":{"name":"start()","abstract":"

    Starts the payment request.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC15deletePreferredyAA0B6MethodC07paymentF0_ySb_AA5ErrorOSgtc10completiontF":{"name":"deletePreferred(paymentMethod:completion:)","abstract":"

    Permanently deletes payment method from shopper’s preferred payment options.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC6cancelyyF":{"name":"cancel()","abstract":"

    Cancels the payment request.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html":{"name":"PaymentRequest","abstract":"

    The starting point for Custom Integration.

    "},"Protocols/PaymentRequestDelegate.html":{"name":"PaymentRequestDelegate","abstract":"

    The payment request delegate. Used for Custom integration comunication. All delegate methods are invoked on the main thread.

    "},"Enums/PaymentRequestResult.html":{"name":"PaymentRequestResult","abstract":"

    Result of a payment request.

    "},"Enums/Error.html":{"name":"Error","abstract":"

    Error type.

    "},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO8receivedA2CmF":{"name":"received","abstract":"

    Payment pending.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO10authorisedA2CmF":{"name":"authorised","abstract":"

    Payment authorised.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO5errorA2CmF":{"name":"error","abstract":"

    Payment error.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO7refusedA2CmF":{"name":"refused","abstract":"

    Payment refused.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO9cancelledA2CmF":{"name":"cancelled","abstract":"

    Payment cancelled.

    ","parent_name":"PaymentStatus"},"Classes/Payment.html#/s:5Adyen7PaymentC6statusAA0B6StatusOv":{"name":"status","abstract":"

    The status of the payment.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC6methodAA0B6MethodCv":{"name":"method","abstract":"

    The method that was used to complete the payment.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC7payloadSSv":{"name":"payload","abstract":"

    The payload as returned from the server.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC6amountSiv":{"name":"amount","abstract":"

    The amount of the payment, in minor units.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC12currencyCodeSSv":{"name":"currencyCode","abstract":"

    The code of the currency for the payment amount.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC17merchantReferenceSSv":{"name":"merchantReference","abstract":"

    The reference of the merchant.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC16shopperReferenceSSSgv":{"name":"shopperReference","abstract":"

    The reference of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC18shopperCountryCodeSSv":{"name":"shopperCountryCode","abstract":"

    The country code of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC23shopperLocaleIdentifierSSSgv":{"name":"shopperLocaleIdentifier","abstract":"

    The locale identifier of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html":{"name":"Payment","abstract":"

    An object that represents a payment that has been completed by the user. The result of the payment can be retrieved via the status property.

    "},"Enums/PaymentStatus.html":{"name":"PaymentStatus","abstract":"

    Payment statuses.

    "},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO6alwaysA2EmF":{"name":"always","abstract":"

    Always display a large title.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO4rootA2EmF":{"name":"root","abstract":"

    Only display a large title for the root view controller.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO5neverA2EmF":{"name":"never","abstract":"

    Never display a large title.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationCACycfc":{"name":"init()","abstract":"

    Initializes the appearance configuration.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC23preferredStatusBarStyleSC08UIStatusfG0Ov":{"name":"preferredStatusBarStyle","abstract":"

    The preferred status bar style.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC32navigationBarTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgv":{"name":"navigationBarTitleTextAttributes","abstract":"

    The attributes used for the navigation bar’s title.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC37navigationBarLargeTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgv":{"name":"navigationBarLargeTitleTextAttributes","abstract":"

    The attributes used for the navigation bar’s large title. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html":{"name":"NavigationBarLargeTitleDisplayMode","abstract":"

    Display modes for the large title in a navigation bar.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC34navigationBarLargeTitleDisplayModeAC010NavigationefghI0Ov":{"name":"navigationBarLargeTitleDisplayMode","abstract":"

    The display mode for the large title in the navigation bar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC22navigationBarTintColorSo7UIColorCSgv":{"name":"navigationBarTintColor","abstract":"

    The navigation bar’s tint color.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC28navigationBarBackgroundColorSo7UIColorCSgv":{"name":"navigationBarBackgroundColor","abstract":"

    The navigation bar’s background color.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC26isNavigationBarTranslucentSbv":{"name":"isNavigationBarTranslucent","abstract":"

    A Boolean value indicating whether the navigation bar is translucent.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC30navigationBarCancelButtonImageSo7UIImageCSgv":{"name":"navigationBarCancelButtonImage","abstract":"

    The image of the cancel button in the navigation bar, or nil if a title should be used instead.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC18checkoutButtonTypeSo8UIButtonCmv":{"name":"checkoutButtonType","abstract":"

    The class to use for the checkout button.","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC18safariBarTintColorSo7UIColorCSgv":{"name":"safariBarTintColor","abstract":"

    The color to tint the background of the Safari View Controller navigation bar and toolbar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC22safariControlTintColorSo7UIColorCSgv":{"name":"safariControlTintColor","abstract":"

    The color to tint the the control buttons on Safari View Controller the navigation bar and the toolbar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC9tintColorSo7UIColorCSgv":{"name":"tintColor","abstract":"

    The tint color for most buttons and actionable elements.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC15backgroundColorSo7UIColorCv":{"name":"backgroundColor","abstract":"

    The background color of all view controllers.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC7defaultACvZ":{"name":"default","abstract":"

    Returns an instance of the default appearance configuration.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC33checkoutButtonTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgv":{"name":"checkoutButtonTitleTextAttributes","abstract":"

    The attributes used for the checkout button’s title. Only used when checkoutButtonType is the default.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC29checkoutButtonTitleEdgeInsetsSC06UIEdgeH0VSgv":{"name":"checkoutButtonTitleEdgeInsets","abstract":"

    The insets from the edges of the checkout button to the title. Only used when checkoutButtonType the default.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC26checkoutButtonCornerRadius12CoreGraphics7CGFloatVv":{"name":"checkoutButtonCornerRadius","abstract":"

    The corner radius of the checkout button. Only used when checkoutButtonType the default.

    ","parent_name":"AppearanceConfiguration"},"Protocols/CheckoutViewControllerCardScanDelegate.html#/s:5Adyen38CheckoutViewControllerCardScanDelegateP010shouldShoweF6ButtonSbAA0bcD0C3for_tF":{"name":"shouldShowCardScanButton(for:)","abstract":"

    Invoked when the card payment method is selected.

    ","parent_name":"CheckoutViewControllerCardScanDelegate"},"Protocols/CheckoutViewControllerCardScanDelegate.html#/s:5Adyen38CheckoutViewControllerCardScanDelegateP04scanE0yAA0bcD0C3for_ySSSg6number_AH10expiryDateAH3cvctc10completiontF":{"name":"scanCard(for:completion:)","abstract":"

    Invoked when the card scan button is tapped.","parent_name":"CheckoutViewControllerCardScanDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_SS27requiresPaymentDataForTokeny10Foundation0I0Vc10completiontF":{"name":"checkoutViewController(_:requiresPaymentDataForToken:completion:)","abstract":"

    Invoked when the payment flow has started and payment data is requested from the merchant server.

    ","parent_name":"CheckoutViewControllerDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_y10Foundation3URLVc014requiresReturnH0tF":{"name":"checkoutViewController(_:requiresReturnURL:)","abstract":"

    Invoked when the redirection to a URL has been made. The given completion handler should be invoked when the user returns to the application through a URL.

    ","parent_name":"CheckoutViewControllerDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_AA20PaymentRequestResultO13didFinishWithtF":{"name":"checkoutViewController(_:didFinishWith:)","abstract":"

    Invoked when the payment flow has finished.

    ","parent_name":"CheckoutViewControllerDelegate"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerCAcA0bcD8Delegate_p8delegate_AA23AppearanceConfigurationC010appearanceH0tcfc":{"name":"init(delegate:appearanceConfiguration:)","abstract":"

    Initializes the Checkout View Controller.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerC8delegateAA0bcD8Delegate_pSgXwv":{"name":"delegate","abstract":"

    The delegate for payment processing.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerC16cardScanDelegateAA0bcd4CardfG0_pSgXwv":{"name":"cardScanDelegate","abstract":"

    The delegate for card scanning functionality for card payments.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html":{"name":"CheckoutViewController","abstract":"

    The starting point for Quick integration. Initialize and present this view controller in your app to start the payment flow. If you don’t embed the CheckoutViewController in a UINavigationController instance, a new one will be created automatically.

    "},"Protocols/CheckoutViewControllerDelegate.html":{"name":"CheckoutViewControllerDelegate","abstract":"

    The CheckoutViewControllerDelegate protocol defines the methods that a delegate of CheckoutViewController should implement to provide payment data and be informed of the payment flow progress.

    "},"Protocols/CheckoutViewControllerCardScanDelegate.html":{"name":"CheckoutViewControllerCardScanDelegate","abstract":"

    The CheckoutViewControllerCardScanDelegate protocol defines methods that the cardScanDelegate of CheckoutViewController should implement to enable card scanning functionality for card payment methods.

    "},"Classes/AppearanceConfiguration.html":{"name":"AppearanceConfiguration","abstract":"

    An object used to customize the appearance of the UI components provided by this SDK."},"UI.html":{"name":"UI"},"Payment.html":{"name":"Payment"},"Payment Request.html":{"name":"Payment Request"},"Payment Method.html":{"name":"Payment Method"},"Utilities.html":{"name":"Utilities"}} \ No newline at end of file +{"Other Typealiases.html#/s:5Adyen14DataCompletiona":{"name":"DataCompletion","abstract":"

    Undocumented

    "},"Other Typealiases.html#/s:5Adyen16MethodCompletiona":{"name":"MethodCompletion","abstract":"

    Undocumented

    "},"Other Typealiases.html#/s:5Adyen13URLCompletiona":{"name":"URLCompletion","abstract":"

    Undocumented

    "},"Other Typealiases.html#/s:5Adyen18CardScanCompletiona":{"name":"CardScanCompletion","abstract":"

    Undocumented

    "},"Other Typealiases.html#/s:5Adyen24PaymentDetailsCompletiona":{"name":"PaymentDetailsCompletion","abstract":"

    Undocumented

    "},"Classes/AmountFormatter.html#/s:5Adyen15AmountFormatterC9formattedSSSgSi6amount_SS12currencyCodetFZ":{"name":"formatted(amount:currencyCode:)","abstract":"

    Formats a string based on the provided amount and currency code.

    ","parent_name":"AmountFormatter"},"Classes/AmountFormatter.html":{"name":"AmountFormatter","abstract":"

    Convenience class to format a payment amount for display.

    "},"Classes/IBANTextField.html#/s:5Adyen13IBANTextFieldC4ibanSSSgvp":{"name":"iban","abstract":"

    The IBAN entered in the text field, or nil if no valid IBAN has been entered.

    ","parent_name":"IBANTextField"},"Classes/IBANValidator.html#/s:5Adyen13IBANValidatorC7isValidSbSSFZ":{"name":"isValid(_:)","abstract":"

    Checks if the given string is a valid IBAN value.

    ","parent_name":"IBANValidator"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV11countryCodeSSvp":{"name":"countryCode","abstract":"

    The code of the country to which the specifications apply.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV6lengthSivp":{"name":"length","abstract":"

    The length of a valid IBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV9structureSSvp":{"name":"structure","abstract":"

    The structure of the underlying BBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV7exampleSSvp":{"name":"example","abstract":"

    An example of a valid IBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationVACSgSS14forCountryCode_tcfc":{"name":"init(forCountryCode:)","abstract":"

    Returns the IBAN specification for the country with the given code, or nil if none could be found.

    ","parent_name":"IBANSpecification"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_AA0B4TypeOSg4typeSS15formattedNumbertSS04cardJ0_SayAGG08acceptedB5TypestFZ":{"name":"validate(cardNumber:acceptedCardTypes:)","abstract":"

    Validates and formats the given card number, and detects the corresponding card type.

    ","parent_name":"CardValidator"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_SS13formattedDatetSS06expiryH0_SSSg9separatortFZ":{"name":"validate(expiryDate:separator:)","abstract":"

    Validates and formats the given expiration date.

    ","parent_name":"CardValidator"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_SS12formattedCvctSS3cvc_tFZ":{"name":"validate(cvc:)","abstract":"

    Validates and formats the given cvc.

    ","parent_name":"CardValidator"},"Enums/CardType.html#/s:5Adyen8CardTypeO5accelA2CmF":{"name":"accel","abstract":"

    Accel

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO020alphaBankBonusMasterB0A2CmF":{"name":"alphaBankBonusMasterCard","abstract":"

    Alpha Bank Bonus MasterCard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO18alphaBankBonusVISAA2CmF":{"name":"alphaBankBonusVISA","abstract":"

    Alpha Bank Bonus VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9argencardA2CmF":{"name":"argencard","abstract":"

    Argencard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO15americanExpressA2CmF":{"name":"americanExpress","abstract":"

    American Express

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4bcmcA2CmF":{"name":"bcmc","abstract":"

    BCMC

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO09bijenkorfB0A2CmF":{"name":"bijenkorfCard","abstract":"

    de Bijenkorf Card

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5cabalA2CmF":{"name":"cabal","abstract":"

    Cabal

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13carteBancaireA2CmF":{"name":"carteBancaire","abstract":"

    Carte Bancaire

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8cencosudA2CmF":{"name":"cencosud","abstract":"

    Cencosud

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO14chequeDejeneurA2CmF":{"name":"chequeDejeneur","abstract":"

    Chèque Déjeuner

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13chinaUnionPayA2CmF":{"name":"chinaUnionPay","abstract":"

    China UnionPay

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7codensaA2CmF":{"name":"codensa","abstract":"

    Codensa

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13creditUnion24A2CmF":{"name":"creditUnion24","abstract":"

    Credit Union 24

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7dankortA2CmF":{"name":"dankort","abstract":"

    Dankort

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO11dankortVISAA2CmF":{"name":"dankortVISA","abstract":"

    Dankort VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO6dinersA2CmF":{"name":"diners","abstract":"

    Diners Club

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8discoverA2CmF":{"name":"discover","abstract":"

    Discover

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3eloA2CmF":{"name":"elo","abstract":"

    Elo

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5hiperA2CmF":{"name":"hiper","abstract":"

    Hiper

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9hipercardA2CmF":{"name":"hipercard","abstract":"

    Hipercard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3jcbA2CmF":{"name":"jcb","abstract":"

    JCB

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO11karenMillenA2CmF":{"name":"karenMillen","abstract":"

    KarenMillen

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3kcpA2CmF":{"name":"kcp","abstract":"

    Korea Cyber Payment

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7maestroA2CmF":{"name":"maestro","abstract":"

    Maestro

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9maestroUKA2CmF":{"name":"maestroUK","abstract":"

    Maestro UK

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO06masterB0A2CmF":{"name":"masterCard","abstract":"

    MasterCard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3mirA2CmF":{"name":"mir","abstract":"

    Mir

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7netplusA2CmF":{"name":"netplus","abstract":"

    Net+

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4nyceA2CmF":{"name":"nyce","abstract":"

    NYCE

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5oasisA2CmF":{"name":"oasis","abstract":"

    Oasis

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5pulseA2CmF":{"name":"pulse","abstract":"

    Pulse

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4soloA2CmF":{"name":"solo","abstract":"

    Solo

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8shoppingA2CmF":{"name":"shopping","abstract":"

    Shopping

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4starA2CmF":{"name":"star","abstract":"

    STAR

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4uatpA2CmF":{"name":"uatp","abstract":"

    Universal Air Travel Plan

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8unionPayA2CmF":{"name":"unionPay","abstract":"

    UnionPay

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4visaA2CmF":{"name":"visa","abstract":"

    VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9warehouseA2CmF":{"name":"warehouse","abstract":"

    The Warehouse

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3allSayACGvpZ":{"name":"all","abstract":"

    Array containing all card types in this enum.

    ","parent_name":"CardType"},"Enums/CardType.html":{"name":"CardType","abstract":"

    Enum containing most known types of credit and debit cards.

    "},"Classes/CardValidator.html":{"name":"CardValidator","abstract":"

    An object that provides static methods for validating and formatting card numbers, expiry dates, and cvc values, and detecting card types.

    "},"Structs/IBANSpecification.html":{"name":"IBANSpecification","abstract":"

    Contains the country-specific specifications for countries that adopt the IBAN standard.

    "},"Classes/IBANValidator.html":{"name":"IBANValidator","abstract":"

    An object that provides a static method to validate IBAN values.

    "},"Classes/IBANTextField.html":{"name":"IBANTextField","abstract":"

    A text field object designed for the entry of an IBAN value. This field formats and validates the IBAN in real time.

    "},"Structs/PayPalOneClickInfo.html#/s:5Adyen18PayPalOneClickInfoV12emailAddressSSvp":{"name":"emailAddress","abstract":"

    The email address of the PayPal account.

    ","parent_name":"PayPalOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV6numberSSvp":{"name":"number","abstract":"

    A shortened version of the card’s number.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV10holderNameSSvp":{"name":"holderName","abstract":"

    The card’s holder name.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV11expiryMonthSivp":{"name":"expiryMonth","abstract":"

    The card’s expiry month.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV10expiryYearSivp":{"name":"expiryYear","abstract":"

    The card’s expiry year.

    ","parent_name":"CardOneClickInfo"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC10identifierSSvp":{"name":"identifier","abstract":"

    Identifier of an item. Upon selection, the value of this property should be assigned to the value property of the InputDetail object.

    ","parent_name":"InputSelectItem"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC4nameSSvp":{"name":"name","abstract":"

    Display name of an item.

    ","parent_name":"InputSelectItem"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC8imageURL10Foundation0F0VSgvp":{"name":"imageURL","abstract":"

    Optional URL for the icon of an item.

    ","parent_name":"InputSelectItem"},"Enums/InputType.html#/s:5Adyen9InputTypeO4textA2CmF":{"name":"text","abstract":"

    Text input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO7booleanA2CmF":{"name":"boolean","abstract":"

    Boolean input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO6selectA2CmF":{"name":"select","abstract":"

    Input type should be selected from the given list.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO4ibanA2CmF":{"name":"iban","abstract":"

    IBAN input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO3cvcA2CmF":{"name":"cvc","abstract":"

    CVC input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO9cardTokenACSb11cvcOptional_tcACmF":{"name":"cardToken","abstract":"

    Card token input type. By default, cvcOptional is false.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO13applePayTokenA2CmF":{"name":"applePayToken","abstract":"

    Apple Pay token input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO7addressA2CmF":{"name":"address","abstract":"

    Address input type.

    ","parent_name":"InputType"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC4typeAA0B4TypeOvp":{"name":"type","abstract":"

    The detail type. See InputType.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC8optionalSbvp":{"name":"optional","abstract":"

    Whether or not the detail is optional.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC5itemsSayAA0B10SelectItemCGSgvp":{"name":"items","abstract":"

    An array of InputSelectItem. Only be available if type is .select.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC12inputDetailsSayACGSgvp":{"name":"inputDetails","abstract":"

    An array of input details nested in the receiver.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC11stringValueSSSgvp":{"name":"stringValue","abstract":"

    Detail string value.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC9boolValueSbSgvp":{"name":"boolValue","abstract":"

    Detail bool value.

    ","parent_name":"InputDetail"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV6streetSSvp":{"name":"street","abstract":"

    The street name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV17houseNumberOrNameSSvp":{"name":"houseNumberOrName","abstract":"

    The house number or name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV10postalCodeSSvp":{"name":"postalCode","abstract":"

    The postal code.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV4citySSvp":{"name":"city","abstract":"

    The city name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV15stateOrProvinceSSSgvp":{"name":"stateOrProvince","abstract":"

    An optional state or province name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV11countryCodeSSvp":{"name":"countryCode","abstract":"

    The ISO country code.

    ","parent_name":"Address"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC4listSayAA11InputDetailCGvp":{"name":"list","abstract":"

    List of InputDetail.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9setDetailySS5value_SS6forKeytF":{"name":"setDetail(value:forKey:)","abstract":"

    Update the detail defined by a given key with the string value provided.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9setDetailySbSg5value_SS6forKeytF":{"name":"setDetail(value:forKey:)","abstract":"

    Update the detail defined by a given key with the bool value provided.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC12fillApplePayySS5token_tF":{"name":"fillApplePay(token:)","abstract":"

    Fills details for the Apple Pay transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS5token_SbSg05storeC0tF":{"name":"fillCard(token:storeDetails:)","abstract":"

    Fills details for the card transaction with a token.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS3cvc_tF":{"name":"fillCard(cvc:)","abstract":"

    Fills details for the card transaction with CVC.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS25installmentPlanIdentifier_tF":{"name":"fillCard(installmentPlanIdentifier:)","abstract":"

    Fills installments selection for the card transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9fillIdealySS16issuerIdentifier_tF":{"name":"fillIdeal(issuerIdentifier:)","abstract":"

    Fills details for the iDEAL transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillSepaySS4name_SS4ibantF":{"name":"fillSepa(name:iban:)","abstract":"

    Fill details for the SEPA transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails/Address.html":{"name":"Address","abstract":"

    An object that represents an address requested in PaymentDetails.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC18fillBillingAddressyAC0F0VF":{"name":"fillBillingAddress(_:)","abstract":"

    Fills the billing address for a transaction that requires AVS.

    ","parent_name":"PaymentDetails"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC4nameSSvp":{"name":"name","abstract":"

    The name of the payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC4typeSSvp":{"name":"type","abstract":"

    The payment method type.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC7logoURL10Foundation0E0VSgvp":{"name":"logoURL","abstract":"

    A URL to the logo of the payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC7membersSayACGSgvp":{"name":"members","abstract":"

    Members of the payment method (only applicable when the receiver is a group).

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC10isOneClickSbvp":{"name":"isOneClick","abstract":"

    A Boolean value indicating whether the payment method is a one-click payment method, which means that it can be easily completed by the user.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC12oneClickInfoAA03OneeF0_pSgvp":{"name":"oneClickInfo","abstract":"

    The information that was stored for this payment payment method, or nil if this is not a one-click payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC12inputDetailsSayAA11InputDetailCGSgvp":{"name":"inputDetails","abstract":"

    The input details that should be filled in to complete the payment.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC8oneClickSbvp":{"name":"oneClick","abstract":"

    A Boolean value indicating whether the payment method is a one-click payment method, which means that it can be easily completed by the user.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html":{"name":"PaymentMethod","abstract":"

    An object representing a payment method used to complete a payment.

    "},"Classes/PaymentDetails.html":{"name":"PaymentDetails","abstract":"

    An object that holds the list of InputDetail items required for to process a transaction.

    "},"Classes/InputDetail.html":{"name":"InputDetail","abstract":"

    An object describing a payment detail required to process the transaction."},"Enums/InputType.html":{"name":"InputType","abstract":"

    Defines types of payment details.

    "},"Classes/InputSelectItem.html":{"name":"InputSelectItem","abstract":"

    An object representing a selectable item used in InputDetail with select type.

    "},"Payment Method.html#/s:5Adyen12OneClickInfoP":{"name":"OneClickInfo","abstract":"

    Instances conforming to this protocol provide access to the information that was stored for a payment method.

    "},"Structs/CardOneClickInfo.html":{"name":"CardOneClickInfo","abstract":"

    Object that contains stored card info used to perform previous card payments.

    "},"Structs/PayPalOneClickInfo.html":{"name":"PayPalOneClickInfo","abstract":"

    Object that contains stored info used to perform previous PayPal payments.

    "},"Enums/Error.html#/s:5Adyen5ErrorO06serverB0ACSScACmF":{"name":"serverError","abstract":"

    Error returned from server.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO07networkB0ACsAB_pcACmF":{"name":"networkError","abstract":"

    Network error.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO14unexpectedDataA2CmF":{"name":"unexpectedData","abstract":"

    Unexpected data or data format.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO010unexpectedB0A2CmF":{"name":"unexpectedError","abstract":"

    Unexpected error.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO9cancelledA2CmF":{"name":"cancelled","abstract":"

    Payment was cancelled.

    ","parent_name":"Error"},"Enums/Error.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"Error"},"Enums/PaymentRequestResult.html#/s:5Adyen20PaymentRequestResultO7paymentAcA0B0CcACmF":{"name":"payment","abstract":"

    In case of success a Payment object will be returned.

    ","parent_name":"PaymentRequestResult"},"Enums/PaymentRequestResult.html#/s:5Adyen20PaymentRequestResultO5errorAcA5ErrorOcACmF":{"name":"error","abstract":"

    In case of failure an Error will be returned.

    ","parent_name":"PaymentRequestResult"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_SS08requiresB12DataForTokeny10Foundation0G0Vc10completiontF":{"name":"paymentRequest(_:requiresPaymentDataForToken:completion:)","abstract":"

    Given the PaymentRequest that started the payment flow and token, waits for data from merchant server to be passed via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_SayAA0B6MethodCGSg08requiresbF4FromAI9availableyAHc10completiontF":{"name":"paymentRequest(_:requiresPaymentMethodFrom:available:completion:)","abstract":"

    Given a list of PaymentMethod (available and preferred) waits for the selection via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_10Foundation3URLV21requiresReturnURLFromyAIc10completiontF":{"name":"paymentRequest(_:requiresReturnURLFrom:completion:)","abstract":"

    This method is called when a URL redirection needs to be executed.","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_AA0B7DetailsC08requiresbF0yAHc10completiontF":{"name":"paymentRequest(_:requiresPaymentDetails:completion:)","abstract":"

    This method is called when input is needed for completing the transation. The filled PaymentDetails should be sent via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_AA0bC6ResultO13didFinishWithtF":{"name":"paymentRequest(_:didFinishWith:)","abstract":"

    This method is called when the payment flow is finished.

    ","parent_name":"PaymentRequestDelegate"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestCAcA0bC8Delegate_p8delegate_tcfc":{"name":"init(delegate:)","abstract":"

    Creates a PaymentRequest object and initialises it with a provided delegate.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC8delegateAA0bC8Delegate_pSgXwvp":{"name":"delegate","abstract":"

    Delegate for controlling the payment flow. See PaymentRequestDelegate.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC13paymentMethodAA0bE0CSgvp":{"name":"paymentMethod","abstract":"

    The selected payment method.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC6amountSiSgvp":{"name":"amount","abstract":"

    Amount to be charged.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC8currencySSSgvp":{"name":"currency","abstract":"

    Payment currency.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC9referenceSSSgvp":{"name":"reference","abstract":"

    Payment reference.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC11countryCodeSSSgvp":{"name":"countryCode","abstract":"

    Payment country code.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC13shopperLocaleSSSgvp":{"name":"shopperLocale","abstract":"

    Shopper locale.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC16shopperReferenceSSSgvp":{"name":"shopperReference","abstract":"

    Shopper reference.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC14generationTimeSSSgvp":{"name":"generationTime","abstract":"

    Generation time. Used for generating a token for card payments.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC9publicKeySSSgvp":{"name":"publicKey","abstract":"

    Public key. Used for generating a token for card payments.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC5startyyF":{"name":"start()","abstract":"

    Starts the payment request.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC15deletePreferredyAA0B6MethodC07paymentF0_ySb_AA5ErrorOSgtc10completiontF":{"name":"deletePreferred(paymentMethod:completion:)","abstract":"

    Permanently deletes payment method from shopper’s preferred payment options.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC6cancelyyF":{"name":"cancel()","abstract":"

    Cancels the payment request.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html":{"name":"PaymentRequest","abstract":"

    The starting point for Custom Integration.

    "},"Protocols/PaymentRequestDelegate.html":{"name":"PaymentRequestDelegate","abstract":"

    The payment request delegate. Used for Custom integration comunication. All delegate methods are invoked on the main thread.

    "},"Enums/PaymentRequestResult.html":{"name":"PaymentRequestResult","abstract":"

    Result of a payment request.

    "},"Enums/Error.html":{"name":"Error","abstract":"

    Error type.

    "},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO8receivedA2CmF":{"name":"received","abstract":"

    Payment pending.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO10authorisedA2CmF":{"name":"authorised","abstract":"

    Payment authorised.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO5errorA2CmF":{"name":"error","abstract":"

    Payment error.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO7refusedA2CmF":{"name":"refused","abstract":"

    Payment refused.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO9cancelledA2CmF":{"name":"cancelled","abstract":"

    Payment cancelled.

    ","parent_name":"PaymentStatus"},"Classes/Payment.html#/s:5Adyen7PaymentC6statusAA0B6StatusOvp":{"name":"status","abstract":"

    The status of the payment.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC6methodAA0B6MethodCvp":{"name":"method","abstract":"

    The method that was used to complete the payment.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC7payloadSSvp":{"name":"payload","abstract":"

    The payload as returned from the server.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC6amountSivp":{"name":"amount","abstract":"

    The amount of the payment, in minor units.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC12currencyCodeSSvp":{"name":"currencyCode","abstract":"

    The code of the currency for the payment amount.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC17merchantReferenceSSvp":{"name":"merchantReference","abstract":"

    The reference of the merchant.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC16shopperReferenceSSSgvp":{"name":"shopperReference","abstract":"

    The reference of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC18shopperCountryCodeSSvp":{"name":"shopperCountryCode","abstract":"

    The country code of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC23shopperLocaleIdentifierSSSgvp":{"name":"shopperLocaleIdentifier","abstract":"

    The locale identifier of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html":{"name":"Payment","abstract":"

    An object that represents a payment that has been completed by the user. The result of the payment can be retrieved via the status property.

    "},"Enums/PaymentStatus.html":{"name":"PaymentStatus","abstract":"

    Payment statuses.

    "},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO6alwaysA2EmF":{"name":"always","abstract":"

    Always display a large title.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO4rootA2EmF":{"name":"root","abstract":"

    Only display a large title for the root view controller.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO5neverA2EmF":{"name":"never","abstract":"

    Never display a large title.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationCACycfc":{"name":"init()","abstract":"

    Initializes the appearance configuration.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC23preferredStatusBarStyleSC08UIStatusfG0Ovp":{"name":"preferredStatusBarStyle","abstract":"

    The preferred status bar style.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC32navigationBarTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgvp":{"name":"navigationBarTitleTextAttributes","abstract":"

    The attributes used for the navigation bar’s title.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC37navigationBarLargeTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgvp":{"name":"navigationBarLargeTitleTextAttributes","abstract":"

    The attributes used for the navigation bar’s large title. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html":{"name":"NavigationBarLargeTitleDisplayMode","abstract":"

    Display modes for the large title in a navigation bar.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC34navigationBarLargeTitleDisplayModeAC010NavigationefghI0Ovp":{"name":"navigationBarLargeTitleDisplayMode","abstract":"

    The display mode for the large title in the navigation bar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC22navigationBarTintColorSo7UIColorCSgvp":{"name":"navigationBarTintColor","abstract":"

    The navigation bar’s tint color.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC28navigationBarBackgroundColorSo7UIColorCSgvp":{"name":"navigationBarBackgroundColor","abstract":"

    The navigation bar’s background color.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC26isNavigationBarTranslucentSbvp":{"name":"isNavigationBarTranslucent","abstract":"

    A Boolean value indicating whether the navigation bar is translucent.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC30navigationBarCancelButtonImageSo7UIImageCSgvp":{"name":"navigationBarCancelButtonImage","abstract":"

    The image of the cancel button in the navigation bar, or nil if a title should be used instead.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC18checkoutButtonTypeSo8UIButtonCmvp":{"name":"checkoutButtonType","abstract":"

    The class to use for the checkout button.","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC19checkoutButtonTitleSSSgvp":{"name":"checkoutButtonTitle","abstract":"

    The title of the checkout button.","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC18safariBarTintColorSo7UIColorCSgvp":{"name":"safariBarTintColor","abstract":"

    The color to tint the background of the Safari View Controller navigation bar and toolbar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC22safariControlTintColorSo7UIColorCSgvp":{"name":"safariControlTintColor","abstract":"

    The color to tint the the control buttons on Safari View Controller the navigation bar and the toolbar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC9tintColorSo7UIColorCSgvp":{"name":"tintColor","abstract":"

    The tint color for most buttons and actionable elements.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC15backgroundColorSo7UIColorCvp":{"name":"backgroundColor","abstract":"

    The background color of all view controllers.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC7defaultACvpZ":{"name":"default","abstract":"

    Returns an instance of the default appearance configuration.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC33checkoutButtonTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgvp":{"name":"checkoutButtonTitleTextAttributes","abstract":"

    The attributes used for the checkout button’s title. Only used when checkoutButtonType is the default.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC29checkoutButtonTitleEdgeInsetsSC06UIEdgeH0VSgvp":{"name":"checkoutButtonTitleEdgeInsets","abstract":"

    The insets from the edges of the checkout button to the title. Only used when checkoutButtonType the default.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC26checkoutButtonCornerRadius12CoreGraphics7CGFloatVvp":{"name":"checkoutButtonCornerRadius","abstract":"

    The corner radius of the checkout button. Only used when checkoutButtonType the default.

    ","parent_name":"AppearanceConfiguration"},"Protocols/CheckoutViewControllerCardScanDelegate.html#/s:5Adyen38CheckoutViewControllerCardScanDelegateP010shouldShoweF6ButtonSbAA0bcD0C3for_tF":{"name":"shouldShowCardScanButton(for:)","abstract":"

    Invoked when the card payment method is selected.

    ","parent_name":"CheckoutViewControllerCardScanDelegate"},"Protocols/CheckoutViewControllerCardScanDelegate.html#/s:5Adyen38CheckoutViewControllerCardScanDelegateP04scanE0yAA0bcD0C3for_ySSSg6number_AH10expiryDateAH3cvct_tc10completiontF":{"name":"scanCard(for:completion:)","abstract":"

    Invoked when the card scan button is tapped.","parent_name":"CheckoutViewControllerCardScanDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_SS27requiresPaymentDataForTokeny10Foundation0I0Vc10completiontF":{"name":"checkoutViewController(_:requiresPaymentDataForToken:completion:)","abstract":"

    Invoked when the payment flow has started and payment data is requested from the merchant server.

    ","parent_name":"CheckoutViewControllerDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_y10Foundation3URLVc014requiresReturnH0tF":{"name":"checkoutViewController(_:requiresReturnURL:)","abstract":"

    Invoked when the redirection to a URL has been made. The given completion handler should be invoked when the user returns to the application through a URL.

    ","parent_name":"CheckoutViewControllerDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_AA20PaymentRequestResultO13didFinishWithtF":{"name":"checkoutViewController(_:didFinishWith:)","abstract":"

    Invoked when the payment flow has finished.

    ","parent_name":"CheckoutViewControllerDelegate"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerCAcA0bcD8Delegate_p8delegate_AA23AppearanceConfigurationC010appearanceH0tcfc":{"name":"init(delegate:appearanceConfiguration:)","abstract":"

    Initializes the Checkout View Controller.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerC8delegateAA0bcD8Delegate_pSgXwvp":{"name":"delegate","abstract":"

    The delegate for payment processing.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerC16cardScanDelegateAA0bcd4CardfG0_pSgXwvp":{"name":"cardScanDelegate","abstract":"

    The delegate for card scanning functionality for card payments.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html":{"name":"CheckoutViewController","abstract":"

    The starting point for Quick integration. Initialize and present this view controller in your app to start the payment flow. If you don’t embed the CheckoutViewController in a UINavigationController instance, a new one will be created automatically.

    "},"Protocols/CheckoutViewControllerDelegate.html":{"name":"CheckoutViewControllerDelegate","abstract":"

    The CheckoutViewControllerDelegate protocol defines the methods that a delegate of CheckoutViewController should implement to provide payment data and be informed of the payment flow progress.

    "},"Protocols/CheckoutViewControllerCardScanDelegate.html":{"name":"CheckoutViewControllerCardScanDelegate","abstract":"

    The CheckoutViewControllerCardScanDelegate protocol defines methods that the cardScanDelegate of CheckoutViewController should implement to enable card scanning functionality for card payment methods.

    "},"Classes/AppearanceConfiguration.html":{"name":"AppearanceConfiguration","abstract":"

    An object used to customize the appearance of the UI components provided by this SDK."},"UI.html":{"name":"UI"},"Payment.html":{"name":"Payment"},"Payment Request.html":{"name":"Payment Request"},"Payment Method.html":{"name":"Payment Method"},"Utilities.html":{"name":"Utilities"},"Other Classes.html":{"name":"Other Classes","abstract":"

    The following classes are available globally.

    "},"Other Typealiases.html":{"name":"Other Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file diff --git a/Docs/docsets/Adyen.docset/Contents/Resources/docSet.dsidx b/Docs/docsets/Adyen.docset/Contents/Resources/docSet.dsidx index 83514ee9261e9c31d98b2ac8a206f2cd283516b6..fce311b68d191974543a0942918bc0ea1d973504 100644 GIT binary patch delta 9291 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

    $Ib=^m{~PkzmL_a8aQ#eF;{G=OQKsqEZG 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%0Do1L^%;8k?@b(SWIO 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 literal 223050 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

    P`ca3eSHk81iC31w{YQ+rs&4&u94itR$6#}D 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 z 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

    j5#ea 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

    ?r#TcB8iX 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

    |t<2%)K~ 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

    )?hf*Li#C zM^T+6{WK{^8Pzu23JKLn!FCG{ma0TGaTR7YL_8*=tSWr~z zN|vG{y1YZ=N)7}}W;uc*V4wu$E9?~V;*Ddd^1movmFhkRr)L!%JQ@$G|1BR%_?#_K zYDM-ZBQ?%tFxGXXk^My+g9p|5vY7db-l^R&5i|8ybqwlg=vb$D#^*Jug(+tc-KGyT zPk3$HSQp9u-L;vr7+EuAP=1q|Ds^5q;XP7KMk$tN|18rG%Ou2n1(qzpr715q&R}Ve zjBn$u5OOTVx*Ru;m*wg1doT-nEGm`o3+eh>yEQXmlSz0eO>QV`W>^OG>jBuL9#)Pj z;7hVP<(SZXm&8KcKC6#kPgSj^6Q zVQ18lPFXtRQ1gg!-zg_fnuuvt}D(b|O{(D*bt# zt+dOSz-~g-5a(#x|^U`>RE~ykfg*qxUfAmH`~V=gwx+0hXh$(C>&E)yKvVQcN=x+?Yf2h=`Oh;a`_9Ne*@RqYA2K>j*wb$Xl~P=x z(%eKJS}@&*)|SZ7XK$n|JLKbD3_BmU48GPD=4ttS`X|2A$X7c^I8qWskr9yZQK#Ps z#nwuUe4?&y*RjglPn7if23=Us?#yFFCGLci;X9hL4(UJ}$SNEwsoF}qYiz<>PkjPt zIBkQ2W6vU)W=mI7W=Ll^iTdr+JWVG6>%?43_z-q(;|zE!6njrI3?kAn>mn$0*oYPO zoq1kDONvSpb(k@U;ar3lt)$jL00YN}7~#A8*1fMOPZRS}{U`e0VFJQkA^s!W*a{7M z&=S)^AA}a27#xqvG4=9a9W7C+yMO=$w50lmWZr=oRzo2(Znli-?ar#fV=OB%3AjQU ziXpT_*V=LP=Yh!$qFu*RJL0%p(1N2>%ujRU}_eo}OBh9@R zvQZ6QAbm|(XxD@`ulLWH7RUPhl%2n%HLN?2FvLhsXciUG9CVI5KIS@Bqiq=q3Y(JYS(!&#d-pWl#(Jg=c@zVrqWGluV>z*v) zqCnsExC-o%Vch2%awjK5ug6My=~d`Y3^I)Q%42%0e7?+<;wwH?KEfth^GAHDe8f;O z7|(*fi>b;T?h%F?gF%LafK4Z8{{)$hPkI8yf zwP9des@me=<4-hAh&liY%mbKd-JxoZZ{oTOeg{Zqo_|5{WR| z7d>Jse5BcHs{zRP$|8j-YfFSGEQ$elMY>A3Z$CE{#TzU0n z=h#DZ2JGyB3iIUd0EUL?c>RX26cDEQGY6-5k}nuRQ`}FAz0#Qf!<)+(<7RcdWxj0c zQ+^XCBzy5r_kx5tEPw4>U^cJ35fIs1%lQ8w<-9sOAedV*q~?bFn%TF~k*6BOiYCCLvaBI-Vmzw_YuL3M`mm!U+)C zXA__n|L`Du-Cz9a<=2bL$A5YJ)#K-n`QNLPlasq|zWnO(Q+oZDQ@?sl@6W$_{rK@8 z1IO^Hbh`_YL+7g~+@jXW^Uqhrb$ueqj@}<&+a@W}Yrwp*m#`P{jn1aB;OV2t^?^~5 zU9xsw08W?^&Cd^MmDFdVmSg)uF7vgTl}|Lt#1FOaxW;6(MzQ4N>(ogOt5Z;duud8A zJp*3d9pt^#$*diUc&wh92w*JBjLenT?=mu>>7sU-ZM~63+hMu@03Q0(lqoGc;R+O*#?P`b7Zk*xMq{@{a_w$fL5^*=#n60@yW1++q&-i0NzX)3GiEIpC5f=SBAYyjoUH+RcqAbu-Ch2`Tye58lU*V$}-97F4WIfA=zydOJ()H7JC09!q=9Ww@i=H@~LY&uw)!<0e00k5uO3 zAG2XTaRr-B8mi0Yw^$|S5!47fzHOzJd^rr?zu&AW) zj8yM#Xy2bUX;atNma20my6q;z64XIlEYfLx%s?-8$lfT!o7WH+>Ls3J3XsC&sB@s| zK+t5JhnVvW9=fPG*>GU!GDekX9p}1~Bi+RYC8hd(nN&t<7}|En1ZXPAvDf9qKU>y! z@-2maMZY-D+f*QQ6$S;TQr{S*8+2FjUtwk2M~7p!Y`X1sDRfmY6sy|udk;oy*|ZEr zW%`u^sVnlh#^TyQu6cC{tqtN0^@iHd?b(uC6a&#Go_vGYYaJ^_#1RVEO6Htij(|<`f#0@nRdMQojI?J|IyABX>217Ks3IB_AC<51QC9+k=vlDD1O@ua_{vpG zYT7=JF*Kn07FIAChE_^A;4X9er7Y5LY>^d9D3{lF)S$Q=!WXwNfC|A#X~gUgM7GmI ziEE>(tWh(H5b~s#tWvqMxlwDg39p&X+gzC=7MDN~0-j zo_ESt@SoC0reU@1BZJHr>lX!ojM5<%zKtEyr|I;Vha99nt= z_$DGk{!>$60Cgu8QMK<_7B$5q{AbdAjQqq(L%Q3>d>ZdLP6oD5o4yi-iL(kB&%7xs zDvfTkTDGg_U(wO-g-~gd1tS-|s->J75c-hV!J}|*QI$}R6>Wvi&nG^LjjIj5%i+xP zHeP^sL;>VNqatsQtX}o};maly+-SR~U7E?BA=%_e4m)1v)np%ANsmh}qy`c69B<@4 zM}C?nS-kj<^zI3)L+iGx_Nhi8{Tp5m$CC<`bN`Q!4B)CHe}Tz(fmuz*T2}0%$NF&k z1=h19KS_3pf5j`s>V^7)KBP|32~X>;AUH{#oT>~M&nuSzQV=?H>)Cp1ML94oz;#xj zYyb9ZD%3P$I*T0>+r$T5*`Q{IxW&RpXP!(CF8(vynJODokky5#E3MRJ)YSKr3V z`8uAbUuUaSEb#gqX_yI|L&t$rdzU?yrsX#bVCn3`d?m$RXTtN@^CbW;n-Zmp8lk)S zaawqgcXdsdnST-U(Ps3kG*^XvB;+vt8x{A+w%77-RD8T2ZYjBA;Sc>NNqg>(aph?R zy{TS+=F6`ZYtv+t6P%o$@R5)FJht%zS}eNwTlSQ!F7p-`zGb?@O8Fw^MQQa!F3N_k zG%aUJ-_@-dm)YGdz>|o5td5B^ysB-WwXV`TK`7VI?dUM=k>f4INbr2cUmWBRZInMU(}EHunpIVvIjuKb3N>y?5zNRSwZWiVrdt^V-d!JdIj#bTP>adp3hkm z%YY`M?&cdGSa7tfly@R?`8BP-`kroFs(T`$>QG$sVvK9&v^A`p8>@svynCA=YbdL7 z&mB@Ibe0YpKhlxv`rN5>0oL#VDrmgOr`arnmEfFq{Kw(le&_fmWDR>Zx3~DTQWBQ> zA^JD@Z1+Yppx(3- zn-nuL?5Rm;pf0)ZO=U@s913`gas{WU<;K*FG&vRk)OrB)1^l*RMs6McHi!*0(E`lH zih2b|6KicLpbn@7Kmj1|L~4086l_Pg5_OsjTVhi(y)Lo^IbdRa`07Lh+3$Z5)C&N6aA?dR2^+BDjD=j z!RM?=+fdBJSQt|hiR4}hoU#~qK&eEd%48Y>r(bcWI(s#{}9=$zHCeyd02hC!z`eZqqt4)I2 zgHyFJ&iG%&kX9r!#&BvfoBbAFBb88}G&WE&rwdbdPZUwdd(Bg&1(C9AZdCoQsj0c( z5ffzcBQmWOW|YC(Axf&xzpEW%aWs%twA*o95(=2Dk;iUY)qAC`!<`Fs6=<% zx!**1+T!~j=?Lv9T(bsSsYkZ_C^CB2I{d77Lbgng%cpzs6|{}NWmoya)Csb`DdQD- zX~EOVxlCml*FA~6#jMM1tm^HesC{66cN5=8ZL?=g-_G7BbF~bUb>qy>%5k*vjq(yv zcd)T71Q=_HR7wb?k=K}^NrjC{_s|18_0jjxQG1-wy9XY1U{}4ud?{~GMi4*W#r+Epeq6R@aXpeN$2Wt z-p`2meO6=?0}Ty)xqe435_h~oaR=nOS-C2j<;(I}e4U|6o+&lN^y3+Q@El$+@beoC z-&ZeGV7$SmBIVt}Sq9Ua3jKgUL`tMq>^*;JD)?i{hQhUSxAehP3^gbaVB{m%EQcSC z3;yCNxJdCz(OHx~wH3wWF$C{D~z_jX8=vX)a zsQM0?ysPCDe%bX{bZb^8NU&$S&NOkgg0~p>rz)W2J?Uk#Ae~D6)}9$w190Q(<4M}BBkei1q^9nRXW`eLXK?^P#e++8D7D6X<4QI9uiBH2kw8Jat+ z&>{R-(d?ohg>FZbZfkqDB9Ez~esGZMcSqi()SRUUm?3MWIW=|`*>zS@8GeF7Uplgh zbx)QJuvovAuK*$Oi5G-;fnDrs%v_34%Uk*C8!IWSH0Y{_*9rBSAA1)UW%+m--=IP7 z(3$L`!kqlzsFRGBg#Nhp7oKyvQd<)Bid&yYo%>KJ&I;vn)OtaZ5fp8`Q4Y+U^PqhW z(8|VeSLC%zggs|hMLn^`c6>$+ieoZvmy5!Q$^}M2Prpc2o4r8gP zITWHKAoo^@0-E=Bm6fIhO{MuH4+{+kcup%w<1?xN8E@q5!Obih*`#WFtF=GVI(p?6 zuFkcxipJKGLK1yupvpY@e%zxEuQ;o}&#h)_oAUhHr_t|3-d(M>)kNo_i}|XvnD(uz zcGRM`u?6^$ubg*ipRi$qvCuf-AG^xbJRB}8Ot{w~gG3T3?Om!ED*LsI`6YQFB|giv)A2ovez!!H78-G0g7yQ`vhIGZl__MkZ_v#eiXXStG9 zU;;Nf`kAkvc?O+1l!IS|Vd`jV*J`%WT@8d4Jow2llsNZ)HV}o=V@=dEInpSKhR!!q zEPKPH+6gxXuy1qsL=pRFgEgNZ25wR}5_}IK!&0iY9pe{nV{H=5IRvr<)cM-n*pq8D zVc71z#W20oqpnZ3M8Oiv=xPvZxCxP*8r7ipfG($u@dKN4vg)?^Fjh9wjJi2si$R4< zl0ns3kVow>k7|Bb^0S74DC}<<+`{Na{jrM_YFfows6sc$;-z7y8pih)x2?*#w=a7E zP)DaTkMamW6S-Ia)m=!#0p{3zOi&l96iqXQREsq+iU<_W4NC zX=mmD6jNyxHIqilZErwbQWbSTar%EdKsio;swzO|JA!^A*;Myn2_*dDkE z#e5u0DoHhzrKNqFaJ&6}q zn&k32PF)zrV^mS&Nzb26iJ&ad>cxnyje%B@Ipt(N#4kH+Gy1=%(4Sh;6IX0sLI<^hTGJI-KxUY znrNO5Tfk#>S~`s-M>~FBoc44{(5P;qmRw!p(lW;vt+G#dK@PMd+Iwj9O|2Cnw{M22 zV@17Ap#w$Px}@;mF82!fPjlY;E{9JRwn;!7sGSFccS2<+9QN9g_)k^e-G7!bLq;|;RbK0Bv96cz(q=^aZPNy{d0k-6|XPek_#? z#-RrQd+wrV#LIL@wd(}wjg*VkWLhot$?GCV6cRzV*GTT>$~c2l$BCJx8lTf#7iVyV zH8Kcf7uQX(sMVXCEqjU^7EisH-{61Gm|DHJSR+@jK*j!l!U8iDC7OLuocwKc5g-5Z z`1n8j$NzRb?z+R=J2ZV>V4R>&Qu9$g!=ep}G8J;#9_}tTE<2S@$e~?Uz}SCYXD(c9 zz3t(}Wyy}MlwN=%k2EfA@T4O6J`ou#zCn!*krWys5(EYf8kSovqo2zX4LpnJIi1He zjNT0G)nqZD<}k}vZqdD!4@ZYJhzqnKS3WS;GgB6Cb6+>uEIbiWBdu|`Vr{vWzho0} zjeUX>ls8JU^#mxLE6Y7afeHKA&R`Ynm!VLWJ^$cd-zYASscZw2tV~Ykim5*2!H!c*2yE z1p|@RLazKnM)+heqV56~;!QlaB?~I8c?|VfAE6F$y6d*FGA8q~u{PW`K}`Byxn40a zQz2@g3fj1BJEuQwMoUJkB3Dn*zPs+xU3VI43l^2T4E1c;pY8BON=(W&@zh@N3tpF~Z=Jn zHXyr4z?$E}V@2iAcThmpEOi$Ul?*$aK@c?1GeUxy+4n&s&T(|H`AW2cyR|Frc3dox zum}NCm%*{nNS$Mx5ZL(*Deyko4PnrZ?3SJsJ6VwAMm4LHyy%?b*cKW0yP4eA>q1t% zq*%qq35W@M9yOP7;Xuq7^SB)?=XRTUQ;SAZZYAa2O(l!GNGw`XF31h}S_I;Jo7c|$=1l%HU6k=2lmJFw%NJ8F z1(;wlrO=odBI}l(9Mpiy|M_Huj+Rm-q8!*!^a+n@-Sp6^j?Kb-{T(mpj!zxOsu&is z|FYh0hoIG(*;mh94DRtS9p7qRu&ea#xYORQdVB~ytd2uebW9GVo994tx1!c4;>u7o zfb6naXZo}1{mymoSYsm19B{LIyKR@@Ke89F2+Bi`wbWfzoyYzpMLF7|NevdEJXq#vi+X2LjPT!bllt1D%nbP zOL=5NW%$ocHu3=6f=B{D6F9BDwMYuA2KFUREwFy#?%!Yg(hU)!E1LnbL;S0|B;SVh{O1dkFeTP?a(;pa5@@{x}$^k~ln=JC=>eJM8G$wZ(R~UsU zM!k&By!BV*Tdw|d=_FG6!Cmp=Q;ZfvQ3vqtZ9GxWPm4r7e}AJMzs_%$>gC&%9GCFR zYZM}@H`C1}zW-QtmTZIX*9Vf3elIBJUamA?C9e0X5;N{qV=98S?^P>h?o1qx?5wxl z$`Z0w@(Yn#apSFg*V$4zYct%Z<@y5$4Al7sRpAYzO5rO@%!;cero0%$t{yLu+jDE^ zQihl~aCg80-3K$gjzrs3lJ0&TrP!~$QGw|K*OC9?5(CmYKjFyuQbLQvUAhSkR~9TH z&x)Fq-n<0hl8>zq&SKVGfKf`OH?(Ek2v|*VdbLnp^*|Q;+Wyi|@QHC*V3jlO3~CEJ zH$u=PD&)GDV?@SCgW~Un%30k`3g4MkOjEOx3zer{SYt@Dd{(fK$fM_%x)VBky()=b z_o_%{cJxSK=B8>cbe4Kyfy$f88sHQ;>s6>DV2?^v-g-6a@Yo9+DtEmieemp6lg?hR z$~?8q$}Vt7&u12l&Aj!RYUkaq>S_h5bsA`^f_G%ZrO-U)?L8=CMOnwcoh8*Pw@Mk< z8B4h`ZIYom&uD# zq@ho{7ID*|pbhjPdMKkIw-$3nbl4++0mWKLIC!VT2o!FGAKhYFMSUn^X-*N5e%*y+ z?I>=eab<%xKs?rCph&X`(g;fs#ma6hbhMAzcE2dK=b5Z6u zD&qVrp+L~!AVB_;aU1pu>rU;oL`yLLxl{=#z0R>WtwUN**Eu3g74>6}MYR{$s*Tpg zA~lk*O*vL6r8eA^8P`j65w@#woA$C=wm-E<;rNPR55M1a8qw9@Z=ikK(j}Ega!6Ir zK%T25)s3A4w8?a9eDwTQ=}<*)p|v;hy3CXO`eu=q>ECB!B#UFOPm$P+5X42-uH7w|BdczyQwH;TfTZ>h>@D%ctfkBLb7oV~mS{K!) zF9gj~+P8%&dCwuz#mqnF5Y3aq8l?HbPj{Wj_F*XU4(kV^_%blQI1R_^9j&q8R&Q%x zes_-(ezm*tDNOfFxi^QRxe&NV(ec;dYe+j`k4d(pNERkb`@)k%#o zS_=N{!L%qO4>pV5>v2-QTExpMF|*__TLrXIM6M40)U=!ADsje!a7PWqeQ&mbUrPNjl3{sn7R?skf`ihDg@CSF(~9x4Hjviy%bL+=bdf(Ym@) z#|-Jj#yL9pjVH-HAK7&AkC=^y8dOFn?`7qvPZ)Rox1O%gwQLjj3@>+6PW!5bnu|ay z#2vWjk?wih*$|epJNjqk+99@8`Ren*UDyTgD%|!0+5S4I26o#CGpc1DpzU6rdmNyZ zytQz(p9E{s^-loy!T!*Oj{SgPPfX>;A2_^hGZP_65+=?rdSwpO9~EhDY+h}Q6L#*m zDr2x?L`dz{3>0@+jv;mbtBGlgG?+8Rnut9wNmVSgJIl?kC= zyR<%SQ8l&vk6k!Uha`r8wABz{=5aL8grBvqx-+?y$N7bRrWvLq)T4YEp&kbf@#?bbV<^5O9Wmw1O;SM8Bt4` zq-`K=LXy%VC?KGK;J)Dojyi+8;x^-o2!i8^<1VhF<2oZQGp?imd*5>3yZ7CjyioM} z{r>(FhiUH1eV=>Ix#ygF?k?-&6jXQA-GK0;hyiUy)G@Ed>VKOMdu+C5cy`>|BqaWDI3O4An{%y_qFm~pN z(u=dbP0$eWDzAg+yy|y!DVkZ zlt@x7w-KKt=oA757m68AleU?FC&JNP)QhP|$tp?W+(r88B=#o3P!M=y@n%(t6XkdC zn{b|RM^9x;TU*o{SNr<<#Cuf17vh3Hcuq!C{89Ky{ESKvv!EpP{#8W}@Zyz24zZKv z<%e)viM%tEr3Zj;ddq;0U<^bXBM}cerz|>N^7KLmmwwF@M9kVPA_)`xeDcXBmxU_P z6&5u0z=i{%QUU>kKk+uZiaD4|*szt8eGzyzV+4GIH;qe6DdEmqVUBs4@XV)d3@W$E zPO#i6L5MG)Iu*BmHivqEO7?oOdwkU&$--#I62)s&e0pzOl|QWYcW7uy;i$3Qr>G%uE7cd{W|Rr(`~m972|H2otYC5}iKV=}J!8g}xM%Oh%=YLSpRgPYHOJFyi|w9aBR8i$sA>Rs9+Qi9glhk3ZEx$m3TL zfo9s}h>KtuHiry*#UTDZi9TVCCU~?Z3KI}$#7kO8%Czpo6Ab*I8KO#gx;wdn9rbco ziY((U%t_9L39nR2D*z;!9u}=yuO_?{zkN??%%9Gf(!UtZJh?_BbD2LP50E74-^D#N zFDcKCQmWxoe85_L6cK%79%`*Lpezr`$5}o>>$T|kJtL}-7m(EES zrlawJPw{8?1h~Z}k9SFD1m4~@FSZ;WYAbO9$L&I4xK-HW3-tuyIbg!V7YVjeIL$oZ zv%>p@t>K`@>+b^f?T@H##1fA@*VYRjS(Ju4I!d)eDABM#81#1e;SEZqLYqm+6!WwT zCx64kzLSwWeWaGuGExDA=_vA;3Hb2^BJx<9>X>)RHE}rS*c;e#4%!WKDtTZpDnC$P zgOy6Y0iTtQX9`TkJXO6!1vz51D^zY=Vq%~b*A`TwmAEisPdvqhjWTi|y#;Mq#22I%}73@V9UVpYn5s2mMZ~W+h{DFc79Ac)>3T z-VFs|a7%p|{uKZ1>D``AKmF|h{3-t1Cqx3BfgbwnA>p_9@6VR5@S!8f7yQJ>nCl1r zoFV^+@LT-%=Lr+aw6~++7t-S5Di$6mQIFiyp6jv@JQGS z7N_kMcvWMyP#Sg3Pf%W(hp@=;*cBvN&xjW+Z0eTh?ATo$S$uwRz8yeCfdVvkz*-p1 zp58;qB1v(U)@XH1HBGF&mR5C$ywG_km_kb`VZ|LMF1iy?gbQ^8QR(EMGVO{)aUehj zm;!IS1bO7Hov<*18Z~0KAwUpvv7EHRWjvGtsQr}xety+Yqi?ytr_vYlf?jJ?GrUz6 z^fRjF`lF%Vh}R#jYLSkTidF@>JF7e}cSSJN8LABTbm}d`X0z2gomTMIURPs>e{D90 zQ~V1))iu>ltG(J$o*3l6M zN94td{{A2NY@9vo*c|gPGx(Y_eOk+0@OMA>*TiLj|Id$ZwSqrGW33Bf^Fkf5KG3cJ zjS02;twNYE7kJ#|OP}%|lai8J7MQ;vwqWKA7l;}`zzOnH_IHPcGLD(j9|n!6KW1(B zg9u30DD&^7j0 z`@4fZQCI(@QUTWmzQe~=rB)$JY{{fjk*EbTXIq;?5x=#jvbMr&udcV&HB{Pb8tNU+ za;w8;udT8*RN0*sHoME#;Ii3epHm7-i}*TRb6ciLWr5VB(ymx6?5e7QO+#OGWhl~F zWp8L`sIob#9F7W*qawPzC+6v|=!uS!5nB9FZzK>F8-I}Yw1;|QlS)fv7P`X-wkIly z2?(sJ-xIE~SK6vn8E4LnpS8Oi<&MVY`a9z1j>746WY-}3DEM;N)eL%uAS#$23I$~; z&h84uLeZ{J*xK9-rB-Jxo9Xd_-X?fBUU+NfOxN@tU=TfC|MZqgrQk_rAmDQ~HrlJ3 zYp1q2?6x|)y|u2f)lt{lTwh&hYi((1ZD^L?m3@l*u1|TlmH94I2=Q%y1fHS3A)nd;z)34c<^~0ABrvLcL`FpQBeau}aR}?S%?5O;QKHD?2?oE&N?JtTyzIRRM z&F?qg9jd9Hv-ipmCVkzSRd9Xy!}rHN-**yU*1h?O4;K_}+wxA<-lk1s?s?<9JGeLZ zluWt$UT0QQ&FGF3hBe=s{nC?<-Z$)nX(zAm9{=*Bzdf_!pXbdur{aRW$9DehqWel8 zdCb4;&;DR<#%Fh5`tm`di+mC6?~ZzMA5# zi~sh;nEn+HWxJYYbxvM(_gT)-7r(w~%hPv%H~*%$8(v#Gs`HkPk0(F2`Mfhu>V5x@ z8HTdiYkyk1Y>+Aas|TLB+4ru|a#kS7h z``*iy=Z##tcGKFkhVMM(#>ux2<9(~GnKQFrS`H_1(i{9cV zUGVu6b87Z(IyiCZb3b16^_df|`Shc~<)LRUU;Fa;Z~g1rhrSpw{GKo8OlkY_kLRpd ze$P|)oj>fxqhI^thHEnJpZuT8_wE1FnHP^g^_2w&SCm*5Lyeg|)4Fx3yE<>>_nWu8 zRkXkF>8Xn^8DG=$x0g~&R(bbdQLz77)8p6nzx({grGq+$EqSfg`ryC5EAM}EMn}z` zE*`mg(t_6Zzu6xvd3nN|8$V0=$=7h%fp4EXq5RHe&pmnftlF(}e*EC49R)>y$<7S^ z;ek(&=^Og#Q*XXlSMMl(cm0KZ-wg?FdCaqY;!`iZUiRzx~q66K=k9)#WwLYo7n8vG|-BMNhtP`-thUJC93SJ>=GsH@4>)XWy7%SY1)W zy>#*5m(xE=vtIbzMeiEtmIJP2ljwiGaER5if84+R5w1-$&MaB+$&-IFtl9O8Z%yY% zZ~u_8Wp@wPyzI8OzyGQ#eP#RIR}V?~>idbiQZ71uSjV=vH^*RmH@$UM%N{EuN z=!^eS?iJgz_Fz}nv_*>+ecZWvb(3|KAvJS#<}JTV+4NC!&giF7V*JG=)>QL&`?^6b ze9`m!O1Dibn^Ek^j^ub+{(hmC8}(qy&F9$Kt1l~TE?)ZmmIcklU#_>=&#~oi>TCl4 zf60PFLwC>EY%t{>^{02=efN-Me>Q(fWKsKei*3%w>zm%lC~ZA3ZBEng%f`>UbZgmP zo+~UWD=Z3J+BNl#A^Tt4JaPQEi|4u@|8#xc>}#eiemTRkD8+qMfBkpg{AU@I#Q!C$ zJ#wGq?BC~!b|r28iR|CutRwBey3SGaU;Fza{_c`hPaN zQ|$lM)-}`#{Xb`wt-i`(s{oz9nrfHL@juc3`z^Y4y1SaNKP3*?dxErH+0;5`{nVP~ z#_A@At+w87uWzhvX_?y8Wi#=XXQhK*K?z;*5uIg@UlHJFSjyhk5)7wztbT;@aoHg~;6`lsCzryCP>u|LD z{kGbgj(Ae56G&-86HVnKAIqk1&wxpyO{8F>~ z(=WeFd4e~NJ;#t?GtEeS|Cjl@R;~WdZu!Fa{xIt+){l*|3sdaXme5ZpoOvj3!viUI z4}NK6_U32a%Xt6zUjnITr7Rs>Vp@Gywq?rCC%9kW_ZzIYW$kGTe7wQdl$+w2V*R;! zl<8qZyQeAFI%HzX(hAFChcUCKz)!x`<%E_``d*> z4DI7ixnkWrYwB~4^QPwRsZTk1o!oXEg9>=YBWjjD}s=Z7;p>grTv1Pw2oChV6sr)aU+r;=RjOr`&64-&^w7 zkUvj9C+lyECPe!2XZAKrQK7RTK5_m_1Y8usp-y1Wgm&i=Y|%~^&DSI*Jf_a6Fe z&4dkKc`naem+D&6Kj{9m3^#AQaQ>m;8;;)?xcslX4G*n(&2q(vawqrqkNB0T8@^5X za;o*wO()n(Ot#z~-?sCs4Jiv^cjs=LcHvIw&Hmqt6OwEHI}fAvPuTuf+nm*8`(IsG z_uuyaxA+{f_J8#MuJ*qMwEqsf*#0{k>~^93udcG&svHd!cDu`2=d#!SxBX|d-7PIm z_9k1y)cV@yR?vJ^H#UOizO@=O`YraRW@l}@wp)6)HSW6!+U|L^18KZlLD*2==xA(c zXtV(e91V^3nxvcbk~+4!Ggoa@@tQrlc4z6C3V(uXuh*!5quJ zz6aLK?V9$}>-`4?AG5=B{q3goo1Gi_cmA^afm06s{rc<9*m2!I_Abn8`eMT6x13vA zc-)vPMxOE1^_$kEtt#Ae|6lTNdU4S!U+hY|?)k0Hc6{wPw8r=MXP>F7`r;oeK09{K z2V?I2+amLfv(HSMl1*WRUPyhWbqqpbW@b37omZxriyy1p_e7Y|^`fg^| z)K6}IswQ%++4|wj`>#FmzSl3jYDi=8pC7nz$v$)O7jvTX_WWt=yWEc7Wxn}t>v3~R zKI&Qc^RRD!IAPbtvp=Za_rv4P@BZ?$t88t~AD(%1!@e2O^Y_&R7w$|yb?#Yvue_`J zxi$O(w_)GsMN|Ip(jTrneb)tR8$Prj=sYv;@f9x=K3Ur^`2L&U+d64FZ#XzN`*uky5?`Y)S*mf_A3-1cGHE_?mjQbX&QFAd-QlTUfMf5)Cple-I6)`!x6UhUoe z%hp#Si`uUIq|cf9MAPo`pZNRjdmkG0-MQ0ut+v#Eb8unvp`5h8ynFpfu6}&ObpEtM zo%gM)ys9&O)wOB!FT3&T-1M&dZW+Dk_{`_d-n{njL+=>#`ryn3^UjWau`q01v}Vcl z`=_4UI{2qe4JU0|+jRCrH#|H3xtBMe(XnvtkS)7Lg>xRRS$XceL$7>q-fbszU1>OZ z*J*b>)3EgZu95rx`1qQo7hUt=*DL2uyYc-;t*ci~%&eMdI{5XrtfwBX`Pflx*jE0_ z%U1@rO)Fb;`h$ZG6kfi$G4$HDkA^>Y)Ss@OvFf~n%&V^W(-r;WZ`ym3J>#9v!tZ_f zrt{9%vfdbS`m@g+dgYj>-#Px>qSror`f2Z>g|DBq{80186L<9vQh9<)=+6 zHw|6z;Z-9Zx$3~@2MzB$Xu0d@g|D9Qb8{RG9~kq)^6V{-Jpbpr|Mj2T z)1P0_zAC*q<%&f&?_T`*h!N0j|GyRJ{P#osBp3fh!-1Y2f26WA5HA!WKZ)l5opp9{ z{MYGp{5SslEk4IipIYDGv7}g1K&1D}FTdQfW5@U3fB)($uYB|M*N;E;*oy}afG7L* z?!E8cd*6Tm{f|HX_^vzdcN zee=Fg!qaZ%xN9wU^*=JzxMp|nyp4sHwTAvt>(g`6(soxq_SU*{eplFW{-CrO#ts@lYEt?kDX(V(Qqo$u)>7_* zotxIJ-Q|ds-#TRb(%E|o&o!=2DJ))m@9ss1>Ma?j&+>Qk7OuX1@U;AL>x2XE+lnjx zkaMVe>dD3b{Gj2H8MAL}t)6H!TguKhHkIaNWOZy=v0*~f$!%2|R~d8ow$U5UKI{0% zn!3gaA|_QMm)D(um~|!Gv@c7ao{)dR@T?c+Tu{ZYy?aANt|fnsbG0Qc{fV2y7H96} zxf8#AxFX-Q?c@8xw{!ddEL{U|Wla-}ZQHhOZfx7$*tTsu8(SOOwrz8h&2EzaWxu~F zm3sB6-%L;U>C@eF@15Iz)_2u73Ans|YuD?xR)|{V*J$pfg*vgg600CXpRMVtZFLv& ztad7Esp~XfDZ^og?|*(G_k%r8O{cS4oq}9WPFk_N$e1c!`TK4IB~pUq<|SBJQtj%|Q~PeB0=|JIWC zcS_yPhR?!?_jNR{g8buS!;V#fMZM+3TP(gsY=_6;aZ9>Bi!=q1o?M?+LV#d8D98-M z@roa}?JU?M_s!MamiGwO>NfjCn&Y8bbZy%W4#y4j?Mfpqyjeo_hX&&K-E;%4 z>WL2zqGhY~dhdBs%54E#6K(6oKk<1fY3YmJCmqUl<0&_p=;ad}x#klDf_^fgkusV4 zh_w@JX0DJkvQn(aE`KoPQ=}#olbi99*tS8wZRkx*|Lt&_4cX?EzSPd|_SweySZi#= zHZg!<)SJq0{D{Zx^>;{M_uj@ddEH#3JNIqNW!bUT!bB)b%VgwopO$IMpLLY^T;?q_ ztRH7{ujU*~veGu4z!mJF+f1>Jsz-ktXbrkvS zxzfmwNK_mgLPQ7y^w3cc<1PxS2C@86EC@E@br?$;*@+MWkB z=T-(hgk8O*-luQO#m@QNZ%q!4t=x~QDsK(c74Mmu+!kebsEg`lW)`@QvdI)#a=&C~ zSakT=NA^6#V1Fb|z1j!>(rx>QODm49IO1Qn@c!PUc9gFHc()U}va+ zg_Sc`Rh)}2fnn~jyzxKI9MZ{P?$mo*xjnClJ7f5z>!{S9@UG5n$))2}-nJFDBXLdi$De2ljh9{lpjC0yj0)s^Eq*9Dr3Bg z=3(kaH;?NU3?zzv`(rU8-y68*vJPuMUN+SDeE1W5l52dPS+cjYi@0OoANqIJl-0&n ze|CJveSUD{S3;{JCH(L9o!(q zGE6bPgnge?j6|tqse>0EzX^K>+60k2jS(HP=9s|AI#*nYYCqr>$?MR(0V9{O}BMJa-HZQaqr z8-F84FT*=?$7rh1yS`mP*9>mkBKnr~U$C(y~ zvw|=e;P+2xb#GsPM4U8uXrXw)DNIy{@J54NcQXrqv{!HfEmc7JQ(gTgCP?IiQPA-= z4qS6O(CS?!9MQxeP)OxGGE@i^<=fY@dp-P35cHPJml)s>h;BuYN?8?a-qS0nUZD## znxJv4I#(6f;Foi9Yw^y8|N1E()m56WaAz$%Tv;CShtdQ%^#-YTu(L$7x20TG`%$G% zn`)@8W?)#k+TcgOOy>Gr!s<6JG}CuKk?QCQPoZdDYULC^vMuD_mk&2?Y8BSx5$FS5# zguimNe*rq)gI58G9!0QC$n`)6!*GZaz$_cyKj=DKW`nyDD=)rqlkHMp>YZRTw526jA_@nsNYS%v;tr@cu$faS4q5CL zh1!D5a=losQ{(cOkxXf}KcDUtk`Dc&`7Lr9_$nF%U!|BnG<0l8Up{%S9sa)b9{Trw zScv>|4U*}ig7JIoOO^(+vqO9yeEcpHkDk|t&@m8*rK;)dJw{1zxO5!}CHW3@9gN}( z!|Vy^Q)bz@ePbD>V2FFrxM4H+uJ&t!$L3sh7R4i9e`yi5CL#!h=Sa4^umU4Hzd#V; ztTMoa07N)7&Oy)z;h}{QdWdEypobSN$`!iT+bhKRiBIX?18~6PbzuaeP@p6TuU-)^ z3UElUe}YmX>skyu3d|kUFtGX zCy=^a5O)p_bfwz_7 zysub75oEDW7=V7F!oa$?OP4-rJc0Y%RRVWTb4a|(#ndWsomHQgqr;J(+{UZD{@qF7 z0=jJc72@^R`0~)vH8icC*N3kbVXyCagl!2o7>0D64jg!`P7tIC3LF-5KXN9(c*mLr zodP&hSOF^!iQZr3J>p7(N|0>Z>J|kdJ6Z*`A)<9Zx;1k`%`34Pj zq(E4$@~t9sPJ0$5b!e_aUDQR65$uozQgwwC5d28mIOt3hg?vglq;{~1O4M46&2Yrl zj#@GbE$e)(%Bs;3`oq%T!=ZzxASmTv2?}Ed)P<^J;T8QaK7p28XMq+M5bs5>5dO42 zff2j38?bX-J2wQ0YCW5`upZTB+kph@A(z&dgJR7702qxu%Y0irCzvf1r3_zxEsB%x{i>_q-6cV zmrEnC*1gdDMX^4mMI?C80UAS^pbv2MEty4qp3kpGwpiWIVEBDC^o5?vu6aO0g9#+Y z!K$7GP9{l|NI4TWAIF9 z_C$xV0t8;T>M0~D5tPR|AcL}lOqwmU9W?>8!prXb&P=YF(wbR?EW_jmTDW4-&`K7X zACB0*4e~7M$a>k@a<#%S>qU*{G=bLOmn7XVif@6Cf~w1<>0d2+cY-50%}g5jTKoD$ zZt4!=mwH87VzIgd8-Zmq{sv3YmA5FrbRWku^}z!VEbgZ$aUo23K37$Iy>Z}*pUUN& z4KT|fk%t(OtIZ$yk>X=ymb_@h_Lcsm!Ec$_?6JLZI*!F}!q& z;UmwZ7!VMlxzK3XT^6WPck5z8(_YPHBY0D+*IOdlDLb)$Q?G-n1Xn(l7D?WG%#mt5 zxBq1NRXQOhUzbTcSO}EkOi32QbEM2yXoWAnK#R8=10?1b7l#n{O(USHYKXzL%#=jz zl#Yn^iX=cWS@}|83@`Yl8T8G|1gk3;3JmY!dl;Dyy~TYoh&B}^7LH=tcPxsLJ${)P zocvzrF1+Es1L)r*>WY)78j49b)*GT$s>yV~kM=HEnceiu_KFaVqsh%stW3NMx{Yr( z5rn#8!Do>WhLB|}XXocv&n_tVAjEM_d&uyzGI8>HzU)}{DDPu|43uExXteJY5#Ywc zF%ZwrHJ7bd3db*C8r6!=;gKW@gKHwe>SonXzdVOXrzk}f)adbFf)4BrYO^s;iF-?irM{Iq0Pbzwk}jOp*$1 za1%fF(e;(juag3%QASVb9dujz1-_+D`P|fZbrRo@9G1Jd_M!^rg=jFiy;`}hWvkMw zc|r=&!9Dn%Uj0xr$h*db%D7zUP-x3NSg=jP z++o8ni6FDo)FX(^d-Xbl2vx94iFdSZhps1$|*Ycb6gPUIQy3heKYCrGqSwz01~I?f+}?`EOkFCPE5kJyFU3V% z=6WXYQCV1xuDS;<)8j`ho?=}K2FJHy8tluS@YwGO7L80mR631fgG--8j+p3>6Bk^> z2Yi^0(QigjJ6#s|{gh=DZnG=RWmA52iVCXX08@xlsJ(&VeuHS@HR<&t( zUu^KR}7CQenl z^Vk0w(|##fX;XQ9^p3d9-iovNdH+nPI>>Xdg!rnWr=?=mmc|bL?nmrq_3ZjKn$3IR z+nU9r6FjT4sc%vT{5%gt)3bBh^v9RomB7L-cG0Nro_E?xcZ}VIKoLFN#&77>{pU&0 ztE>9h>8#uFgNO!_M^7lNNNw>_W(mBuaSxqeCgs|tK?Za8l7sy+*kuXn3$qSoz^7Kt zgM38!(;gItQLbX@{)A=jEz9EomVr7OQb=(DHmphj7>^-{hi^7*I3l!nSP`wVkUEw# zIE(J@E=wP~0?OTU#Gg^(#M7t*AX)=IGHdw=DlMz&@uI?X2k+?~e6=Xt8TuwqMDg*3 zcKcTGc6JX@^&L+K38!y@fXGmk*}9v7+LqwlPke;z3V89N0^Hb+8ly^O(+L9VRQkQ= zkLNRbvq7nl6(<*EeyHU_f#h4NvCZLMDE&sv_s?`uiE-e>i(sY&A@1)Nt1{O6`0kJ1 zWg+FlCNl5Ich&;78OLPJObA|NAN*jS%=0W1u*K(32UDSAEK-YXJ)D9LZf(vm z2DY24uMM@z*Fv2b8u0z({oP1h^)aNW&lJxpSgs5=V|3mlEV-aj6cvaV=ym&KX1^%_ z9%|LLX3WLWfwgQOGyNwj&~u-C=Jg)$ zSeg)JokbA8MCiVZotOR$8Z(TbQgn40W6xsvVJVx0?tra;O8xkQCw#M|b3 z?;*Ror9yr}qTP4p`5eR?h;99_;(9XH*+E!6r8VS-mGyzjMd;>`f!?EeFpi7sooMQvF7(V9EpPe0Yv9rRK9t(n zGUIsh7(lXO%svyJ49kG*bhQ%+7i|=aJVjam-7ceH+93(9yj2{S6$ibxZ32pYEZTut-lMfI_wG`L+Cr&TL8K>y zkF~+fQ7rM{2gJe?q!<%g$J!zf3Aj*$2CxY^Xlk?S(AjEc%#+#Z^Ql+}otJ-m*@i+G z6^V|iV!{^d+Ob^o*!qztd`c62q()6FFE2|KF%nTxA#MB?QJct$fW`@lL++M4IV*-mfBOrD zNK`)zzg}U|Y*`@6JeSy!vl3npArQiTSEvknP-$KPVM&f3o644U(}wcMuO7c!)Sq$2 z1UMUWGWv;XPj&2Fd+ePc)Y}n9`Jg9*svFCOHTwA#_@7pP1DM>lPM}AG;wu%>so$Zr zej_(N6c0qT=V%+7VF`~iP2s|!8W(_7&k@PGKxL*9lh77XpC6D3^YY{r7;#~^Az(JM z0^_nlq2h~}lM>d7eYaUXPKMtVLFfs^^Qo$YHA-w58iEQ6LKZO(kju2qZN_;I$=acGd>fnGF(#_G=8?rwoXA__Apj707c~ zwl-Jm6WY>4@J7OCM`N5{g60JQE0F%ZW-jVAQ$?`HGnqTIu&T>GI}Y0_v*m=;=_Xb~ ztwz5y$=%l?K#Ai(;bQ4*a(F@k=?2>~BYHw9v?6L|uWG`q%`FW1E^vBJG592dYN<48 zgYcKAr5dl?)<9q7h9lS;SGD!%d}XWR#*c!<{11@#b4E={QGQ*HJR(EBl|bBEim*vb zl%jtjfEY|p@HB!G*`6Vkz$AQE7FxM9CZ_w(>PvioMD&H;S@tq`pNFq>h;hIE&^d5$ zaL70)P}pRLvQ8tt0B3suP*zxesq{@RTNRg6lSfAiO)2u+mYkjfw^BRZIRtH0LeXeY z7Pm|qWjyL1)M8@#u(*vKGjj`u7*YUS87nme_Z0z(G=5x_uUZoz)au>5ktjKu-Mpdl zOZz-ezwhxnR2%`s58t9$vwGop_T_gFS87#TJnZWl(unfGq86UExOwm|U5FnYQ?lYo z%etPyh@VB~0Sh`4>-rBy>H9SLA>x%-w6!Q3U6FjfsiE+5KOr6mMs~|N(eD3j3`sGX zy)tml2`R1yJRjh)!LbC1;lxBDkg{^iPM1(t*4603SJ|*v*DhBE5*q~v4JAYu3>~W@ z{^)pW$NguA_H5&$??m~sb(&bLDL-~~eb zFXBLmV-iVM(%4W^*o*@eiwS1MzECq)-dVpYjQQRs^kyIUv|BWHd+$N^mK`~ey?sIa zV$R8|FISxZ<+K7~_rwp5J$nqq zbd^zCCQ-r!>Ff+sMJF~1so)V%l9x@9j)<*k~%UDfPAnrUMrMpTRI zBdP5uEsQEINnd(U-T#I{%U8g3yK({hD@^E3WXYp6;zIW=oO=4GUVMXp3HzQ=!LXfi zAnh0Y+CtBdjM{d8sfCEch==$=oXx{6o|85!07$^bgS>o4$+{$=*|oL<`SPfaJ!0k# zw<{BqJzS-~JZ~vFuQJ^2TD_4YUNAdg?VOg)fkyv*brE|^9ul1gf9ceP+`)CLvy3(u=nXOxTWpA8P@P(ZyjBFSM4PLar_9IHkPPZNv~Vqw3aBkbf@BC&XiLN+zr zo>3M4@4LeC%KaGwi+As2%8O6ev>p}sbFrWoRA$jP{BP5eU8tRqUc)V`o({3xuLz+m zDQ;q=NM|RHMhavXFD?DmN@f-H_0Ifg$S>F)C%@Bwy?J-}&7=;x|Jf(mql%zEa^00S z=guGJH!+eJW0!vP29%IblRq1WbV~0sjoyVikAVZXyyU8sG|ao=tP6>I6sf zJOD@4suj_1@7%(L_1FyYg*9jF(i6$xMi;05#)axeZc79gFAY_G$IbDw#T8;<9D*pF z=J3)*_u}&snSjSyY5yX{@iOiOP1Og5RYojSo3J0z!ePr8hGS2xjtaYMN3!*6-zq+6 zj|a38v}~%0w2(>FJldOV>5%UjO*s%3!O8wubrQV9M7@RhtO6|fhw=1jg(mN3rx489 zb%^k~-NEw{L+$8pI4%`@eDUGWFeq(VWCVL#>EWGm$y>B&9j`T%RII(&>53@Q)C!%5 zvQ_#@IRazNAMDlqBmBaH|L5InGT16ME!>%H;3FxqfB~}LfMIEO_u1K1g25K zF)>7ECfNvPgVRefDK&DctsK8EL9V7buH-T%lvhd08?O@nphqa6xqX37cl~{$2a)HIjVKN{BtuXTeKK*-P@g1@W&vB>c!RtUc}wCh7!z^uWhbQthzDP6W#(S8rDh*58_>sip?(bj4NRVZng@P^FnP6F!J0 z{SX#w7*Yj$IK^<-5LF5W_TrlfOI}HF+@Ku zrR8BqP`mP&FAsJrSNSuRH7INgDJp@&44I$|Ul*S|H$ydEo`8&ucLU8#bV5#r1748I z7Ib04MHpK{B?L4`kme}O83kq*E3PsQ(kPIKekmXPBy+^R8d;HtiFnpZwzlf%Y63{X z^+T4de-7>$1=ra~b*qj)mDHDuzM&;A*5iT0DSZ>WAE8E5vh+gYnd%NFYK6QM>svzd z)m{9;$$^&}PFnDC=2;>ys`EngG|Y4u3lpyOKo;gtLaU2L$}{l}Oz3TK?&3Ku-7FW2 zMA6*gQez9piofW$bPU5gAr-PkO&Jxct^#glfYch^>C7QgkL+0W!YVOV8`9&+j&tS! zmy%JPY~C~uoicu=h3h3D$=E+f%a#?5XK(BWp!DTDh#}^HgbjPCK_@ikC4CYYmlmoK zdFMZxyMMYdH zFslxNff%To-N5jYy9H{uT_T;1WND}KN$9e)&gIL*G@I_a*6Y343M(&C4{gU%O~*q- z(x4xO@_mYwjf%WnI%e$2UQG^!8ac`n4a!$fueraBrE)Nd*_*-9Gw$bwxZ#!x*>n7c z9T3Wx(U3TEth>WhYOrP|fU#zz=N;513>*iwBD;SkS##a|8sZpOr#;O0hViP_kiZIk zF*`&DRu(63O04M;nm)XKh@l#U&i2M+8yv<1A&NgKavV#2{w5o&KE_p@;M8F?r{6r{ zsg!Ot2bi>3#0G~JeGw~pMv-}oEyqi4up%SOXc)*=)JN-;meS!7Xm-gSR;n8!NtlBq z?lm?-)Qlu76$~>hH6sy9%7;*4K)S@liOW2)l>m6LoTPJ6tFh0fQNmtsrQF(SS;*Qc zRW-RvF{pf8%|otMx`;w$OAaovmO{J(2lL#TPFih8r!?Xz$^}EI{hQ5mRI@tyLJKJJ zxwce^jZzTOxwdYJ4K)cnIsJlb$+y*g61~%rw2IOES(CgiR_+=5pLbihK@rd2pYie& z@JjECmooC=h8yY?H9uu}@<47{PqO;BE}hm}0b zYB`bi(EUwC4au|Xd$tWOFDp5}$eNo?V_;f#+kwL!_u4p9j~|B~2g`NgffyYSa($Qk z8kdMNc?kDYyy_BOTF*aYCMmt6wrPk~w*iKenP0|UQSC4r@<5A2hP@|KOPy-HaY|Eb zJ*81GXs&j;-OX;q7T%LttFy7xdF}inHTtHvlxht_nY*=pKSQ>Vhnp@iNQs#X146mp z5!)k;FD*!l?0%#X4j*)T?W)45jV|=%QL1BhH1^U5zf0vy@SvL*basHP_R;Ln$xJcE zrpZ`$Sk_euS0m49wm~3Xx`&A7Q(Ou+OI+zAn(Vk2iW~~?Pvawc>*#{q_SG8*#(`PO z6Y~(pp#cHBz}SHft^_C#jt^D^m>~_lAh+o6J-nbyS6SA;D>>PG`kuOfWSn_uRDS~# z(&0QnZ1I9Iu|`0`D2G7HDh@SA))S(DkzA@5ExyFiseR^KR20A+30Nx@ds-QZOQlX^ zt_b3A7|U`RB}~nbsPbj}VB)$GjSiVQ{1S9zEvI1%!@|P{nwsD6G)(ujG(ksLth(-{ zvjn@o-G@785{Pxz4pnY|fJv^QGSV^Il5=lGb<$?2*8EE6XT&_aSvqx6lAmAI&uy-o zR`t1FPO9t1A%`;XW|#lFEV48JXW~4sRvN<%<e$_mre0$ zcUUpnG|Y?agpnCU4|Lak0MEja&M}T1LpZI5D?+tiijF1cP#;m1IRu-+a9Xkg?@^UGBP(J zdavTx*UI?*BC!tG;|{m+`#In#@r|P$?mNkO?|6;ACkdG(Wdbnz;M9N+izWNMR#>Ac z5kS=+SyXbf@Y0K{8$-(Jt-mWdTdD2423=k+n7*yE^BS~shvUC*i9{V>bSeEDj|)P)&emRcL+&)ymwIh2-T=U7FqxBxri(4fnjdy z5RQj!Tk@0Q;LU*N5BJ(^JJb!?crR)^f?*?BAXNF6(IfY0Q1e2u@wccYAvILQ6p12< zZhFwI2VF3we(8OGZbc`~G}J=D4>mC(TCr!{*V6RXFir9}yhdAbKC0@&*1kQDRhmiX z*pgfDY18qgX-&Y(39zU6A`Blv>wzXsO&=LR5RX#%AR5-&QA)kYb8@V;F6MgF$Np3F zmNDawZmORnl5EE#UN0y+cp$ zRKiTYg0++{o#Ux_YfO^Jo^{pcFzK%614mrFflh=(&o97jZ?ELUR*UOLDh*R~bf&OB z@$$^DCNansJWL2A8$$n}>%0yRq0nKZ?EL7ukBlt!UlTK|{<`9Po&%Kvf;1mQfD-}E zPe#2cde!J7l{TCMC1zF#R@jcXzw(yg4TKuVeaGSI&F(6(XQZ4>;AX-Kf_Q0}_z(G3 zrmTsf+@xP<(&3VxEWueMnEM4eNJ@qqzX!ie`u%_h$d{MstUZ+LMiEcriKE(EiK5Bh z7@ZT2kzuA5O3!%iCv(sj`zM$uXk}dgB6aHQ&N!(eQ09wIHd#;V;MFbRXVI&T# zjViA_K%o5H+hI9qd>=Xo9{mdrsU1mU1F9ALjna0dT-ji-3?WDv4Mi4=QZM>j^Eb=L z5dTs1I|d2t;`~i2{&fx74r0^gBbn4=vd8MF6uute|8XK~YUJjdm(nQ^ulO3r`XKuA z-iqa!n#zQ5d{CeZJwU2ExkmL1`$zY905e^XCIT|sk1^8uGFH|q()RokuU=f-)SWu$ znU%6q ztk}SXfq^olA%=0{(F z5HWI#-E|)<_25$$L;3@FHmT(oT`lk|MIrD%W!VfhDe^)qfM+LgnD~;5fM=<25>m&L z^0h&y_ML2)3hGqC=}&!)h@1}@zde6~G$~Ndm-N#8o$I8N)}j(V+kkDa?I+_tEWimI z&$2bciG?1sWcf>;c#k*Nj}*>aa#2E%fW;Gl0wxOS5X&1djFA-zE?G|Oo4E7`bNeD1 zIkaTw9F-<5Gc?q;oF8>od90B*l5OW~dWnPbK6rde`fXslH;L>M-Co>?Wj+aqCM+{F za4pX4Kr5r>%-~qPS!1}hdNp{o$V6b2X4GdyOSd3~zDF#Ez7nB9_2kAtdc)v|hUPP= z37n8DXb)wEKks#9`N1=^ZVu(fop!~b2b^|?L<2af>C0}6^e*5og_ZXaIvR|^ zf;D^NYn#9FVqtaH_eDFqcXW<}-X(jxgYd_q zZEswTX1T_tM_aUSBzX>N`IZ}M0&b$N9$b7#*{Esva|J^4gyh$bsy4uaNq7U2RKi># z@eTrl3u5+~P`THzeVuk`tRf?E1^FDKkId9t@s9a-4LZIbNZTy`=v_-96?=Bz37T+H zpx=DuEd*ptGn5etICVr9J_Fnfx_g@+?L&~*>T@Wzh9__w4AOkzUtQHZA7f!u%ai!+ zAXX0MbBLJP&!CSKPyT%30I=IaI*FMjOsYuX26|sL2+Ci%{MODSK#u(z4OTpqi~|?^ zZH%F+1L>Y-F-7&HBF$NbN<6IPG1~CICP<08E0ox%{2U<|{H)|dJ=%-uN zj~20PX2j;}*R+(4HjmBwnz+{BuSAs4qH70m+-98paqA(D^k$-E2g#*J?81Y%R?}(&eY#vozENs^k@?!;zB$o zfN*pc`GUt`G+N=%t>wx3J_w0XBIU5O9~tx~@(Yq+2dcuwKb|xGur~*kp`w4Oydw}T zug`l^B^;YFj}?|hv3@IO&#hpVocoJZGCo!=32h1m$=-!E#LA5w?JmHxP5KVHG-Tn8^Uqj-)BFr{+mK)L|@X6BWf>lQD>3rWQ>x2XM40 zh(m6*0O%O0K9E=`PST41aT4{p-94=I0R<3YCGwDqz$R2uPrztKSw$Bc=t?olB6RJ( zQNM#MmRXw?Mq+qNGc@uD?hj=;qJA9Z?B$z~8X$47bDWJucuicQGE_QJvoBe)pyZ|q zzUnX_fGnos6i_8(WAFxD*+x0MQTYTC4b4Cz&|HC-hKdx1(v%l!${4vl&cw6D!sY>H z3Yly$sjTQXL`qrFx>fc*@nZ?x)WfHkH+5e;}8 zT4$*{(9}R#Fq4<9L%%^v(~qUK5N#HaLDP>>Gz)#htZxY* z5I{@|!o4O2jxi9D;?9biCdN@9uHgY=(f>OYbeQ2V!Da$j?RvyXfrJaBoI<0Tmy;QW zN|`D@v`48C-L_ZI4iLE}L_~TYUiM0yl8SNR zdZuGbKjz$m)9IiuwTbg)NgnDEP9;O`M=+`At%1*2M?mxy>IYEaTpDK*${mzT6Y7Ws zcLRo(jCq6=|N9Zl?bliZ*-2tJdlV8y)VBsNuU+t|<`VRT#MHpONNgbBMniLvLA4(pd5-0lORe*KP;54>?e<4~xJwXy_fQ~uylBxJ9_Q#; zGxNF_c%vbrS!}r}&`p~ZsAIVC#g@tsxxY~0r^&@0m5Y8X&U|4a;yDzck@=%?P*%DM zb@eFrK4IlUNS2Y`ulRy7Wq6%ZV_L0<($Py*B#5u^lrLr|9_qvXA_sOggp-t#`l_Tk zri7I$iAC_hyySJbM>iIPqs}eqG)Wk?NUw9?2!eJ#p%l4j;Jp;7aA-qy{9@YUqQG0o zlWC0Pn_|+ZNZ{1Zl7rrtsQl|8%+ZuO`m0{U3-Ii*tihDA`UA*P!?+~vM3(QrU_+Uo z&?M2uj&}EI2`;)P^>|x*<&x`;CDpy+;z#BK1;lW{g+EpH*q}?pVM4So*ZRt^ZIiOX z278*-83XAW}eA zcu+4ozYHeWT@~fA5@P558&rQ0MY+l+Au$3uj0R9h;WY|6U;*5XhzG`tut6627NU4C z1Wvc*q!?4EP1ggkiw;mQT3gdN|3wO@J z*~l&02SlluGZ`FK9CUHcXOifV5xuem0PS6P;$ZkcZ)OIy94xDs6Le)f2DEdI0_(U< zQ@L}fR8|`YZF8d(vOy~r=aeK}S}vMf%W7O9VlttFt-CqG#|E#A#{r{s;ME+AW)qy^ zv8N<|#605^T|)0%K7#?lVX>k@+zZeH1dqB2?gerOc(3nlDxyn0E;$k^!cj60% zAmBCNLwJ!EP+cI#;kZ~)5undg@JJ9B>Dh?d>Jv!FPA-t&gSi>tQ5hOg)gnq;P(@x1 z<;%>OMyWf&C7?^ipkK|Tml>St=C0!pfV!9yP+!>H%$UoWSoc#*c*jY!U?UQbJWL2n z8&U9%6PMBNe*aBLeUfMkbKzuW*;`?K9SdM)HA-RSbB^GfLI%!c+G$TTU-a!uh2`bP zA~}N=@8B1Xf{L4;^Mf<`IT|4+=Yz~-I3NQ0IOfmNq{|!Y^G)?5(grGa}XmEHn2kkwK`(> zD1;G?1j04Y06)?Jt|G5?9wCkQ0N&$7D4(38a>vGjmrgokVMEailh95VW)D%sf)g`A zpI>_@=p||8o9d{`@yqLJkWzt_Gal27C`G;6F#MwY5{0@GBu`DqQxX6$Y|yfC$=Z@$ zhv}h5tFqZsI8novV^qX3f&O6@*yjrsII65Hz^!|siQ@^bfUv4! z!6dTwxxs@MW%ronUtlH({{*lBrVb!5Pfo4nLYV0@GG)oQ`f&7q;5%p%#NW7=p}|*mC+t%kbj^WF?VaH?#%=CtTo^2G+z_?1;>G z)M*!i9r)se>S9uNlnlS*nJnNY#w;jksJ8$m%p7oBMoq=BfRn`&paUJL3Wks8LG7-es&Z`s(n6@|VO^N(2- z7Er0cgUm(=P#h;Ho*Dd%Um%M#7aOgLDW^@ZFtjG6QN~u9Le(p3a#sB24V%Ko>v^ao z&z|s~iTRqK4>N1v6`yarm^Q1QjGno(CUQjK7-o^HNP6U%47n)a79u;H0fcA8@ij7Q zMZKiKqoBrMziv@!X0+s5B|3C?q@Iu=CV}u335fUIei%L6Ut+M2u|Y%~EOI=#6vNU` zdS|t`y=8!@_X0y_E>=Y5p7Vi6nfDVu{Kb@~;pj{O#v5hJ=h7jM+C61?ho~}v>egAn z7kxsZIvoObg;Pl3KZpe6T#q4C=y(s38k4be1F{Jv#4L`yl8VV>C>wq$oqBb0EG9fu zhzc=%g2eEjLaG!ooZ1h~4335-5|lP)f|+N9xz!d^5&ukuCH(-1M`qGYraAnQ2;%!d zO)Y+6wxn2Cqrk8?@DO)Bz{7x9Uy>=8K#u^)1S!C1Jdad2`(mly-^NXFkgIlq>EG|( z@L#hFhC)Fv-04#Ahed*u$nb_m29)SZo_SGj#wUW^sZcmuQR0DqRb*B2r=A()NaLp& zTEcv}mYUXhoFwxdHdAQFgGNpTqms=`f5%Fge_qNKwJ z12jBCmI6Jy|0Qqu?6IPZmASy`eLl5A$F(X~9(FQ!6#Pp0E_WX=^-HD+Jo%Igo0b`& zv)VvD z2f_s(Km{95Y5!4!Ka1ikOCO$js)?zTKag3oHLY?6J<2=Mfjgel`!9{sOCZi0KkcoQ zLRYM1FFwKBgs`zAk?2ZAu;3N@YX%1z2<_Pna%>Oc#GptZk?(<0F5fWx)!VUb9P$Mv zT$!WhpaC8E;7KeF|;CB8f5*7jCR8092+_Ya)j5h))%bOmcD52*)A=HUj4@D!0G0#L>pBi(jTfqignMrei-*SU`wkX#?~WC~6e)e69Lv9pvh#L1g_57D!gKqM5#n^DH6KZ`es` z92;5DM>3;5uZmX;_!pPzqO;A+4;1S(2?mEf3s$mw+iM zBPt~jSLih@nq>cRl$Thtv;bx*9QnONN(HL^Hu*#=gj&Nh_J8!+{SlJ_wb+yw%6EA> zE}^yL+FHfNR!0I-t>y(G@{dj$J_sAB%mc_#M{xbi>IqIMysvt8G=~;Z;k`+m{DCn? zt>Fo)B9W1a`6&XqzJ4K*DUAo%{f>(m3%Qq=B#NR)NDsNp6xJ;!_J%KnvuSqBP4oVO zfRZ^9B(i75L_Gwx=sA&eNQ3h6_wQ{?I+Cs-O1jjtK9SCbQt&r$MqN-7I_W+M%&JzO ztK-+7JOC(ee7cJL=|yla&vMM;v&v*|&DYQl+{V7Avsa;>0o<&kIOHYwUQ0O;@SHV& z$@M+?i)vF2T_6C{?FYyb+4IGfF8uk~jY0tC zSTX@EB*1Mx{Qc@%2mRvh{M2w1o29)46|F4SWxvF#{9j9korXa2z(l!YHsE0rQU-^s zIx!~@LCxcHpjWPAG|Ye(^8n`cw3Gj@&xd{OKF8M@l=#?pl*FiFehHZB;lm`ot zkBMmkpR62J>Hmb&`uSVc^8N6?HsKpw(*vMLc<%dZM!{0C;)LcrbFpl|u^LLf8W*D!UU?F5 z@-!e;1^{Er-nQa!W?GB*%N4EG!i0+9QbLIZ9z*DSIE$dgi~ zp!K)UV#|ZCKKb}x@lF=F`Uo%usTUwD4sp?-$u?+Gt>P75q_5``dx9PCd52oLdVsJ1 zxiE%hITc{qjyU`=S08z2e9nrkzWj&GlVUf};N@s28ZQy%+-U2l^18sr?{Yiba7sCY zHI2^g%K)WM9ccIQzL&z^QZ|In=xQnSn(cGQ#qLN@jo5k71p}Ly4-gGgQ4u{bp&xRT zV1-mDnXFc_1W+P2g$JN3qvvypyJogeNeN{6L)= zqR-tBoNl6f-ChzD{{n@XkRGsNd#Dt^GMHf=dFp0LW%dQ&f4?9bo%wog!Tm!%bv5Jv z2>Zt9N}lN3*tTtR;v3s`GMU)6ZQHh!$;6m&V%wTg>HwcUJ+829$to)&of#j%OFRS4P=u3s;21n=lGHLowpiMm_0=pCe5R5VEZ7aR0K( z(VZwTviML+@V|eetZk3w6EZJHnh_`{d;$FyZ~-b{_HPnIJZHlLqXNqN*9^WkceT=r z{WlhiFI|tb)Xh7uJ5nW(&p< z!(jxU67rs5{{aP4;$MH?cSL_7_ejn9#R;$&N*=x$A&w$Pzi0w`vVc^6@6!+xND(p^fq3@mi_^0`PlO2RZOpO# zSrPUm2@Cuo+MfPbZG$Qk0SeGZAmNj!W6|EeEWqnC#;YPG_xUvT@)7(O$lu{uK*7;t z2!wH@VwU`!I1=8+P7aexv_nInTeS`Uc<12zAn-!Yp{2lS!%*(PoWB(H`Z3UBaPEjG z8joI#9KXM5_P!j=S`dylL+)sC;>Ehyhy3o<*oM1ON-UpZP=E43Q@!9iCIK(JO!&8o zqx#T~32c^}gDsGRrsx>S753Dqdddz_uv2`Kd2mh?Nz@f*W(eXg!cfu`r!<~Irarou zm)Ep7w4fU4AMrM~OcH0)JRJjSWxuLZ;L1pY2hv*~zur(WoEH zrwuA?3RM|J5?b3LDO$~ygBjGQ3g8awHyd5@8Q5_l--u|LEHTy?hxQ1fh8zL@Rku_6q<98^tZ37xA4cAx@j8dvsJlfE^KNE)DlrS3dD|47L7XJf*z zfsHc;V42IkVk$t4g1_Pv^FrfV_^#xt5|%Yb%8jHk;suY!dOM(u>S6SK&=;tM?$94m zfk$iCjy43We(`}VQKr3RypQOFVed~QMEdmq=7Z(XZ78t2!-aue)FZ??28w_sP)hni zTQqQ$l7|HTuNQHwaU>*h8_3lu3fgHz4&2 zsh{x*(Z04JK0{p$d##Oeywl`dd!U=8_faP}h`s#yM_5lVv4G65TLdV_=u3tq9H+&D zH*_tH`mFK#4at9_8la0dJ^jlbF>~a919XIH(k~RBfCZ&=ger#3EyaRECb9s4Fzu?_ z-FN*Kp(mAodS{Bj9S2)}hY6Ipq6ch&1@%&>(N4f8NNpjTx;~vS7qWM3AOl~WMnZeH33ZT6=^-i(^#RAY`5iFz?4|1FZT}ZC9=0eTZp+++ z;5yX=b~&*T)$-kyRLP-XDFrLcasKP0ci`7&L}gCIVq^LMt?CU(VZj*F5O|`Dt^8uX zk5-O_Uh%kPKg$~x0SrEjgRF5TMXU}~e?;)VPRne8y1p^6*a#ySvYc>^}z&nYR{SzVLpGy=n4@pJMgnt7?|DO{u zTf$@(y#WUh?BPA4E#y34- z;g69$yRTkvVE?>KO9KWr=4+$~aQYimc3dJPUX^u-a%HUcRq>ez_tzCr<5gd|L6*>C zqTAzOjpPp^4iG1-Tin8Me@}e~1|7mA{^d9X4NNwJn8YZ+qwj4Zu1aD(-|3kwxn2s( zssu4Q1%R|i`PaWHXTmT)AOo1lXqkZE;y%yu8$5ORoL~Zj@C(FMloyN;raWr5W=q=P zT<6C`o7z0~Cxz$XsA|d)y0#~Pl}1{`6F~a1m%qcL(~Qh#ASvhjVVOMvH_I%W0X=h7 zDIpA?B-0|bT|TM#tKJn>L%4x$#hCo9yB+l!U>`PvwkJ)S*gj1FGmY(249bK#tR8H) zGEs4z@%5>J+Ps!*Ei-w+zOy{0p906W$XcN)InLj(I%U410NKU!Uv}{^!vx z^ml&5C)P)fZ*s(^bjy_^gjRE6gg~WR6%b+>{iHz2jlWHFy4{={ zUkhx&>z;8}vu7x@N;^=4<{7hqNLZ13499Q$r{6I7;U!1vCm|{={7Di-BHLeRprM{d zAiZHB|C{RCv=8~9n$XU?5f`_k!GJg$8AkAL^76Qu!2rcPn(W^(Ch3@i3#)iudWYaI zWsoZ$#rsK8eTxhnKoz&hAvk_0?{IZf8$wXAAA%2CjKi@M^4O~BM-z7rUS?iLcT;!b zo9L5ymeS2+(I$;d9qO8uGAik>WVJFX_KNnR$#PJmDM^{<6DFxE>5hUc+{jQqHVj{l zLGT+u@d4)8SAopH1HZL>XmEgEv(f9%5uCn&?YD0O&|A$!BaH0ij#BtM9aX};Id@Fo%j^-!?F5r$C$VKmAb$=_hj7TuS0yy$rhY2- zL+_f5-zgcSug|>MM&0ycx)k=7Ua{tZM%l=W+3cw<_*0cAp9+y0@zH;V%VB-==IFgn z`;`&!cj>(vu=ttM;C&j2z=8N@5P=xPfbJlZg1qg9K52ji2*Q8}UHG#=fhd@1x!Z}` z2;5NwLLC6AjdIC4lh`_+W`Z?CIb_seU^lcqpBL{eaO@SY=I?*9&-8r`eA32@8%U|| zg{E4=R^vE*M#F-OCdx}^%KJd{SBv14a>_}qOvz~XNB4R|boa3#c79vY&@}xz)4FD> zTXtMiLe~%!z3-;+>zyLxzi{Oje^ez%v^S%n{b-)^Q3pfu-vQa%s2=;7$_+<$B{b8s z*2phd(U!~o@H->8Ol0tid+=#$Od2KFhmlExnlzF!QnT7Wsf;EbKRo(uV)uOR)M!jDdo!rRykWkf;prm#kT8B zd)iA)g3+FD0$cE_tYm@;(D2YP>3v3uE7`xc$>Qc&s#f^6@CHnNTyy64!C#s&}g4#2T_Mau)Cvi8> zvhFA(I4Q29j@V)1W~MD-XeVw)kDZeV@i5ub-z5zOUnI7yr5tH+4g`b~8Yqqgh@N1#{PMqpTSviEJ%Ndh&_7yA7fMo3y^L)`}n1YLzOT z2=nks`Q>YSNBtuE)3oQ)3{n`BT}&xgVR8v?Ip`E4^|9}J;j8gf8cHq(zXUBa@S+oA z7{;xZtA5p$OfcagerEkbJzTSq+L;>L_Lnb8?-^>$OurKO+^1$Zr%4|rj}W{m^(jJC zLy}bTr0l_zP}0T`K7=K==t^l|JgU@_fw5PTzAVYQCKPTbdDIT3p>Lw6ZI1RD^8d(6 zkf_uPfw-u7!)`KA{tZ0!l$BH-S$SE#!SxxFy$i$Z_$}-<{x|!;D%aZ<*%24EDx;fn z29BP_guUMa{EJ&l?D3=-=DTlB9=?Wp$HGLMeDn?M_Jqy24kEOkE6^DzJ@pD>&PdV3 zcP*`D_(dX)wV6(YDi7^iTdx7XaY^?$M-$grHHaka)Or3aMXmX@$TH8ChO!pSQco<& z3$@S>ZslWqRm>OTKzi+QA9m&6;+C1$wKFB0prWJi`4y}#KX#Pw7aS_#J1E-oU6fM( zCEF*Z=w;x*)@S?ML#fM@+}isrmwff~&tH}kzD=StK5`Bi%<4tjhZ@Xcc!{&~q~|wj z(gdT_m#;bNA7h<5MaibueV)khd z<5` zf!rT223om~8hg5hyqB;RH+eRbckyjP4<4f;YV-aJPV2=Zv)O+Z&{M7zs#O2XG~UVV z0SNsi;^?E!Wq{L1?>XHNdyb}8vKD<(7?eAL3~{b%jC+v}q*Rh-h`ofz_7PobBwHS8uR ze%sUF)SQ2waZ^SAFC$icYI835Z&Ycdy;Iq}=23)n6{s zF^7ewEp$ZcjSXk6`A{lU|62DwyV%QB5KX7G*pLM$i9zC$nq*qJcv9Vbl4qg_7W zT^kpvJ16VF{Ebfx6Z1g=ds4Xwe=^03$~wz5zrHl-tnmWfQ?)I(|le2<1R@nu_6_T7x(9&_j%c4$Lm zc}Fr%_j(5ePjz80F5z8Z2+Mdl&WX8LOvB_6$WUNBKJK|fIL7vI{-)s%M1}lFsiy$l z)t5WOL!kp~X+y6^s}W9IwRr9E$gc-=7EXpyz43B?F7qskckCiK-8J`gL9H*~w4BpV z=_(l$-_%#VE8Tj+$A8CoTu_Eex~Xd<-dBq(&E2|*sQ)lUF02@nm|igLqD)DQ14BX1 zi6QufCnc1)DLZyv6nLw+g)&DonIZDm6Yt2Sn<5 zTOh-$c=^0TB#m{-!v5R$y`v8MOyT(c&tXnVlp3?!`#rc$xAI1biH73-&i9%-KVbrS zw$veJ!h9)SeC~Db2QbWu;OMiE(FXz_H;{wi#(XnuM~)}~oMR8k=(Jz+L$2;efpFTl zOf4b~kY<`K;SVh{40~?Ixc!jJu>a6bGsXFj>|FXhcO^*hOe6dysKvJ@KY1K+&Ey*q zZY`tk6hp6{E&s<76?*IlnB9P9H~`y;4qsy+PphxDT*u(lpOG-1&eTf%7#XtOyzpQ& zO*B=^u&*mT4S)l&02W9bwbQSp?2PaBzr$8N!5qG6N4-oRJNQsK`UA+>F;-JkR>ddU ze1X>A>EM9Y?c_!heq&Sl<)=4CU{P<+HD_*7HU4xajQXv7)9$vTt3k%w)#Cu>lud$S z2-5>OUU<)P<$rCu;^~&?L^k^q?b>{HiNQaGBp);9XpT|&JzR}wO(n%nR)^sdZgHC7 z{p<$~GYtK6t(Bwp7BJ3~rOuyc!0^d|H6Ab8_~rqGp}`wtVFtmn(^e-)QNT1n&%n_NUq}Udt1F_q)*)+!X6o-j07{xuW><^$0R5mGGTQS@ILvgz%kp zdG>S5)71Kw@SVD?__4-rI!;54$|}`A}p9tcw5@`cFRqnM#; z#D1CQuEg={r?%}sYK&V{ zq`XW5g;BnJ8L-2CSygm-m43ljlW~6m{DdSq5A!YR1adv!BKo^XJEzc~hsevLuds8n zEvE5t3&1ODGYbFL5&HX|yv!xaIzj*P{x+Jr%pb{&NyL7c#l9l;K%iwkg`+^HbtKuR zAl8lISzV^SERdYgrjQ7{jP4CD%I^0{S!v>~rg3t_{|m`Vv{H$Vr6ej^Tk}nsiTK{@ zM_&dE+Qe5T85zW(JUL|KQXHbZkgF>bV9SY5kTPvXIgO$VZ2ZMA=e zl~K_Y98UhE3qJk=_C$5xCqaIjIuER>cP&JZrT#%i-FL;yxkX< zO>UuL5!JRwO8GN10Kw2i80vrgyzBwmkquy@vb}kuQB4p;4$3B8z&67%SI+(d!q{)1 zPCK9IQpf}1e)LzcR5jb)G3`# za(z5@8JpiqSpK75+Hq98djDi-{;bi17innT@wn$fpd>rp0abNYD*25@`wzo{FEgv- zpu3Qaz7IXjw6W3YGsEiq9IF5im}u5?iqvF){488hMoFzR`c8kwfjH_wW52 zR{n)JL8-6%z>0oel#eR;A67Y*79P0oF&p zJzY3@d}#i!29$`gM{Wl>%Cw@x$0pKQ`{sf}d&Q8nUimCQTt1fx-D#|tvOgJyI5Q5u zK@L)eKOa#BwF(zj#;xh#W8HPxuctaDQ!yX?au@Pr8gTS3^u~sH8Gc#t9|u;Ow^f`N3+Zf~w{dc^XgpXXw)Ng;6+m9W z*I{;qJrDEsb@V3}yIox|f!d0Ep!rHCVVdYbTkHhe!v&0*aGPp=KZXW*J1aL16t@&iI>d&%nF%NSYU5G=G90csj#RTKR3`?_sTyFds< zOJf*3{X5t?+b+50vCAdhO3k7YThq}kw-0t&V|#m~;Pba*C>F1_mblM$EC7l^Y18`kadfSIrLq|M%l$audwy>@EQLC-Z?nlyAHHbeL5$Ud_jH()oK_c~pqBh%UPhTHuJ7VAoCteUCV$kdDaGe{W{{1vD1jO(S% zF}LvjCh}|XK92AtS*%V#BB90plz>mPeLP09Qg7>1HvZNY{IY%}Bl$+6zCI{xnSU53 zERKvg(1rz&#g>60b78t6)`yB+V`dg7rbLn_Gg+`QK^aGy$4ho6%Wpu4YlmLh19f4r zX!VUzNj$=>(=N8{ducgl4aHpw&?90fvN*vO0ltk*AV0CD7SLUhUJ^tXO2B-GIEnCX zj|a$szWO|6dsjw*@D3D0e z1hvvj$x0?DV)%JEAdJzBCRiGQGmi7d;FD{VCd_5s|bS`ZfJ0bAQKDb?l_;3N)uu zwOwJfYzVsE%hP&;U#e0XZ2up;5s@^(!X{1gbMx=}^O~NsqmTF2qy5V`)o4R@3sT^Y zOvh3LNg-{(w^nRMoaDS$!cgH8QVgj%kLbI?PGx&_RDFj4GQKlvzB7G>4Ps|=Vt1Qi zd-@yA6f$7XE(zx~$HZbpp6uV5!I!D(SNF(#4Z#s}$evMc?Rmi*9!X!s>CRZx$wppy zZPOA|6pY)kS~(1sV+`iZOE`#b9LSyCmrmVrA*bo&!1fSPZ!(3q1}9)0;nJnPU?!M2 zRDNxPYmf&7F@bEETKfd>G$qJ^e8qaVsgY$9DkkvahV}cDPdbNIvt&daihTG3`!%sb zcCg@zq@|jqYtKN!L6~OH^?2oiRV3VKC(d##;M-=WW^RFGylKyh15=|;w5%jf&s>L* z+J1pMF2o-b_kLEyQ|s@~^EwS;=@?l)$S1KC@ZKkR!%${L)rnrS7mWMDL4RP?)%y}F z(38yxi|tp7uh8Mh~QV6{+ag6s@0qAet`sqFQlH5A zK_ZacFjGDWCfTe^U*57CCRxnMJN8Ird5yYAeK8AMl*bQf{W2ZQ;ob=by;E5Wf*z-! zW2`53cIb{*65tT-TIYW7Tg>goWPMu!?hKp@u+fET!)Zq>;8`7B+R^5g7-XJpkP;Hg zOEsGK)|~Fi5MtkyDkH zn>bBIif6u5WH`>7v0s}cD&cX0o>?|tX(O+j0Ob28Z;xiluHSOil3@>_mJw3>2n(o7 z=*Hsv}j5>Y&qy&HdgswelvnR-rJwH6LU^;5rp)f<5$_z}>S zhE9gq81Nv!extmNAn}Fb$T!r=NRCil8P`ILIQj4rg2G|mPW#fpwm<>H zQ1YEW*Ba0Epqjl>8u>>f7W-f|XHS77Ya8mqXT%q6tUVU9)3hW{Sb?CmhS4T@&D4B4 zfA;#HSar&i#wGWN9N#iNe#W4A*LaQDScOcRl`IrcO`B5fNRh&JwbzT z3U;-wrQIW1EPl2h%KMxe9v*+MQ<3fqxCb{mkiqT^vFuq$24BFD(Y;i$RxG@&zz}ENH$-mIEcW=3lduE}Cn2 z;3u+QUo^Xd9kqk`$s(OK$Edvja+u+m&%R69ReKHyMSA6r{ACk_`@=3`epl6q=S(Ms zeA%2%p)H3rA9h%uU+*YRb#JUV4xfZ@DrSU~oe5Qo@tAV7C+Ns2<3`4qF>t&Q4;|p{ z8$HQYVEc9ZOONTP4J-vkARJecbFl(D31WwI{k&d$GnbB(H6B#tIet*o+D`dn%wtYZ zsZQWg59xx*dr104Q>nj-0Dp{Qi55R8d<=+zO_zmwwhGUMTB+zYkA$f+w z>rNW}X1ZdCPN^oiS+hCtD;cS-wy{|l!-N*@x}V`5S@w7?t_+j0c<~sswiV6}ue^8S zZKr@c$K4qTd3<-&82RApAAu+dHMy)exNwv*C0+7Y9HTX?>jrR4;;Lt`+14WS8Y@#t zAyBJWiy{4#+3Jp-ZS<`h=04Il;&Mi6h-fh}c(j03bR%^a5&`RJtyrD-1yYnc$vAui zxQJYXT)dFD3I#hZ`7+)UmWsx#&LU@kAYI zh*|LWt4N{*D~L#jv5*ptDjZCpjoQPWLRo0ng59Y`=_33UtO{_LD^MyUU& z2oz8){vD-6^6-eTF4Yl)@dHCD6H`(fPG<Cq{hw~@IKBwg0@>acH}n$r&wxT=93ryA$iUw`VZ4Mg zOD8d-;fv%iofN$rYrRqGGM=~*#Q2kCMek>^_bcbhzyEpf z^hO4ByTk81tTXA4_=6ajwJC=wc;f&3bgiMZMgQrL%Yb1+-vLsf53vzW7$Ft~TVFqS zccKvJp zZ=&FfgVT48OLY3eH8xP7x=Poq*>j>D4DysG&E^?I^ZX5_TN%?bV3C?8{!887!@YWz z(mQ6M;eFsKz4x)ld>Tf`sZFXfFK4QY6Zw0b-_yfo?>oH1h?{O0B2uHyXWwy9^k(02 zQ9M&1T-$z!K7Nq?NP}dc=?jQ&0>i?UWSn&L1?11Z-i{70A0NFxNyy3)z5}cs7H(fV z-qmwhi!KDJefM|mOl!mX3f)RowrR%czfWQ*<^1rDG5ZmCUC1hOIumkjy zAsWtfyw}fU0A?6SqwUIa=Z&5Cp}2dA_7vtPqGI5&XV`{7;1NT04BF*!g7!H@VGP#Y zn^5oyCOfF=@5@P`yWD6;=(Gl+h1;oYpw9^fjt`K?^;{JE!3zp*gb9@%Xo=tBUmRop z&>6StEHJ@HK9wFbf`3>8&V9|vPWnxJhVRSQnRVeC$i}%ut!*)46sIDis5KY>Iavw8 zYy>5`(9OtEkFcT9{7l2`9&Tyiym|wVvg?k^xHMZuE~+6-ouUW&To3OKR7n>TW*6-- zuWccmhb>4#OCTGepy}5HBJp3*VJT-Yt|ZaWtQM)DS)`c_;Z)ydI+e?0aSJ9*n5}g; zIO%7(kE%l|SAZ20(fMCi5?R#GxDs0^+5@xeEkRoi;=}Zo%u9G_*)|+YHluG1pz1uc zDVs!={fh_X@eCYON=IGBkeA51{GmR&RA=(gSYWJ6?&MewXS$BtoOAZ$b3N_ye3aBX zWN=S#XsX2~i@(U%go{s22}4UO{O+o33B`fChLG&j@kpdl87S;{U(Ed8V%N5y4f{U@WTZgjy*-VqcNULRe@V+Ztg3dYEOz?E;!4zY*{*K{2gMVJ?745p#AD(*k}k|ybTYbm)ye&0VJ-+Y zsrc4c*J&K1(Q&%|izqnV)d+n(=#E2#S5)9yl#GA@3!9t*rfcz(outS)jX zOU*<-Jnno7=|0!z@gf&{S-75$OISjb3S3axrF|^(G3mTd`8+j3U8{y5t zE-1_9N1y92vX-w7}k)L|?<$$mJY=__G)vNbv6B1;#1oC+>2 z{gL~bg{?FihV?+jc*nGjJ_vmvC5$mpp8Oba|iT9T$_C} z6c=j|187^~G5ZuVdrkg%=cdHVn`Dh_mN{>mLk<7NTzm6Cda*t0)_OXh6VfwZn9GB) z`^E>c&=zl=_y<+r_*t+_bhwD-)?MX~#th*h-0)keN(3Ivy#H!N;YG}cqPzIaki2n> zP$orXTh1s;VLMpP5rdO8TjBgKHcrRsOcU#xLdUs4qPcz=WE6O$MuGiZ1KYD*P~W9? z)lP4Y?7PmRcJO1!Vs&v=c=U*QHMK+)*;#_pV{ndBG5~mfoFIXFu-3fQD(p=TOL}WO zOVjA!Y1;*p^krJBJ&pP1E(@9y3VX#^9y#86gK+|(EaR_R)Pu%J_|(MX&%tBJ&(LYG zJ8FsXHwa%ny0r3u6c`83oLnP2x;__m{>Z3=Ql06{n}#I^k7~Mpw28z`lB=2}mVh3^ z`ailM)nQy-9K0LW3xa?c1M=n1z{nFoc{W5Y>1x#-R{RbJ-|PYVWd*TzML!@oEGGw&-Mu)hgcP za)p&CohCVYZ5%^kV#ld?6F6%AfI|>b6gJ~Sh*pc_Vr0n0b1=MX=%LW@)hiyaNY!E`5ZHNw0rnz*ZYrs{zqc$hTXOd{b3$kdO)jp zB%07AzOnEj>D47>zusXa@Nt50 z_~irq?6v&9b-aP(o0=kDH)4m^CX4*wy&M94D1oaov<{gdu_@@v5R3QI&k;5C%5(2R~Kzp7& zK;n=a3^+9r+ojO-q+h8l!fG92H_aU>Un0qC&aySC3nQhM>$jUBdrP}K)Pt%U2@4M1 zk8hMhCF~>X-Y-rGcf?wYVLHbUX>$S!uFmxIYQx zrI^AL=m>)7c!7YfcG7bKfz5+@;YcI2F_ee`cZQC;L$bQBQ-^BcP8I%gSEhk3GLtuk zokMR;2Yr_bcU!nQ`!Y6qpDJ2x?19zM_jA7i4`nERT++1gdEVKhtxK`4C5GHbV@O=# z+_}8-DFo5E`B=)lS7_7JX>*SD`$bagMNqp;zrwdp#F{pT>_8jf(AV%?WaFeO8v%g8XTpgj7%wYz?N*340>EjniMl|eK{BbD^mG2nveQ|5rcrV$-67-E;Pgf#L>|c9i`wQ z*i)f#vxo06O1g&jw6-gXQLVMAY;*ZaSs2e?_^%Qhi-m zA>Gwd;36|l5w)cInO^ zR9a$rZf)0*2Mkk%)<`v(8O2K&SQy{*8X&P1x(jpbJe91{Sf1fe;}pg(MR6h*uKiL0msNTMM1`9JBx0itWrTx0RN75GIVMBnXG zW?gW-;*5$%X%!-&H8IcEzFavhUn`Rldr3CvLt+bZyn!G<+jhx$r>5vva?!Q?rmRyX zTdUx464JjNL0|qWCqgTA?+c6`HS=){{dlsZXr&?jK0ABg-Y-Ak2o|e!7dhp)+^#j# z!=uPe)fnBsfj&BlcVf5nE_qbDZI^^TD#~LXT*Pdef0ioV^InW!pE;tc4VLD7xqv?WGORO3C|Eaa^1HKdl@%3&RW<6=omNm7zjdJMSty^k=!Imycu+07*Q%09p%kseV!Q$IKE7J ztLyFdcfb5u{%8lv%U!=O2qOEHW1-TecPm&TJJy=av~`FH#9|xd(FocrfuKkTeJ-Bm zm(tZ$a3bP6QHXFR1hMcbdw;Sz@SB~+y^sr8WFV%`ahGdkgM<1|d3-0Aq7_wml0AG777t5B=p@Kd#fds!ddeq|$r*{Ybka{?gmuDxepo=LLPQ^g4oKdZC-^+KWJ;Q+a+t|cv-M)9lb&?5)~1SskGMDNw$rLh4mfWAz%650|e>RgV*} zVI7VY9f_D5R9N&$kNv|x<838N9@F4~%OdkLMm|a23Miv_;i^7>GP)}qy3&*umlM;b zJK60tB`Gv{jM2M9T72%ofvjXEOc>EoGg@FCcl9P+r4w(|#T`j)`*x#GoLp1<5%8VV z%AGsygGD*;EO2C`(2_gzl$;7MeURod<=_Y|JRO2OfaYLo#8mj_jSo z0U(_eaCVa}elitP^ExxaN5vNP|5M7>WI40V$lwD_kSJ!z@RF2S!aoF#UvtoY=3xXZ zfb$!dhp@f0QI`XL!!mk=r$$w)_i2b}0^-oH<1kD0Iv?5BSf73|`!hG^{WfC!rvZOqD)uVB*^ zJv^t14i8y_qE#QFjm>z{FG!BuvvE^$I+BcBKKc4;2an$nP+$%bpw0Z!CrJ+XBQWw5 zk)g{%apD~e8=*kbEm)~hGL7%fG6}R+h4*esjJ$k<@8E6I!d)KS@{A!ya2LIUgfEHR zdr?9gEQ=JU_a`kaDMvq{XpRj+<(q9OM6UGm`b!vh8?i0PW)WofzyNx_kJQcRYL^$- z&pQ=ei6gJ!n)o$@Ktw!f$(dVL&spJ613oAD(wb$rVG_mNnmFZMhi+dPM>zqG^zo9X z@5+q^#bNlw#VOR`!`$`H1IAG|Pa69sTSOH6Br1U9sRCtG1|-bqkJ?05Id(ylngMh0 zaeUtp3A@V~URn;POhyoV)$h)ac!WohaVfI}@jSJ=z&{Y73;4+R@H?bUp#NF;*(kC4 zPRr5N)qr}`0@I>gz~8gj*9P*HfKKH(502GrA5Y9l<(LI zdh_U#tNXLwXTV1f7yZqjD;wW+_OrFIz3|;1`#O8{lWP(3J9vW|$P!Xtv;&9&V)q15 zUov#98|V^K-x{Qc0aIV{h#_qiZucCZ@3u*H5zq%&6aE0ogt55>%{^6%(@^Rg;B4>l z2fW5NpauDAFD&~3G>ZTm$d$Ct;%QVs0@xg_Xo|z~94>Pj7&gCDq?Zj2{aY#buKEru;BLd^+iQ)Zy!?`9U zh=#&>$AGOX&e_+N0ksS>zvFfz(emu@dW=bP(1cM{Ic83U-!aK4wK%kh4k7AZMMD-O z5YgcM4d(f-XP>Ijee^DMtanZ`gvB*jAi-dpv$;?MIX_wUY$|w=a=+Z2qauwus}6j7 zI{EfB@$9z_AHw_uG6B~vdvSc<#lg%kHXRTaDhsn^Jd9g}{sWL zq9p?jn~)vC2@Rto_;7D{hmDvs_oH>L5QI%Jp11`Z-*x#`a6*WhY+VEPc@IQ85p_@w zL%ypcj+01gx$(M$&;&eoM>kSvvKCt_gKrEV6jk=gskF8Mc z&&6&^UXyHr3IrK{t>raJ3A-N?nm!mS#xT~!>n7gTRRY@pRaCy7{mJU$5QD~j_LH?N z{JdA`LE(i8i34SAovJbxI>tfa84O4eUeAOF zBdtETb;NpmGTxyzyc529A$d9=*IuT#NQtk#Tk%t~7lJ7GlAU?DlQ4Lg*80;|;^i57 ztqWk@D&Md7Rp}yZxC#LuFGe*nL&L68a^~~+>%=TKje6!E*W=)^D8y6tV(uXF9IoZMv248-%XG2cg z;PMwcUcvqeZi&1~%7ob$P6th4$45{Un8G##@OMHwUdKkX5VG$0q5p}1x0T5W=e))V z-m8SRpsix+)={|K`=*P-T$^}}+r$nSC>!3$J8aU%SEPDxXW=%$%H9XdCS-0uyl%oH zW{!QoM$0B)F2uY^!X;xaXS_+uAZLyhzj4B)WDeAKDwI!7|HbR6jhK=?Ch?4rNz0sE z>J%88nm%aYIVzWyK4_(l&t$GGs|^q}i|CWETuUh(<5|aQ?h+I z{0hoY3fBU6>t+QNd%mKju}sU>=lfF52K0p;&O;;XjXQqpORIUaPq(RP%~b7NjMEp- z$riUe3EjcpxXt+u7~fZaaXrn}O@95U7GSvb1Cw#l?s6!ZOC%Tyy z>+XhgARW)mIb^dlP9Q1RuEfnKFPPkh^xLraEncFtn8{i-Cs95nzk&M>>YWpaNs?kC z3Xd|EQ!Oixq}&INvzm3kF<=tbU3*!;xUZ8WzjjjfZgs6@0Y6no_0`5Qzjo-YDgTot zS%8w(xa(81`G-a|{DnuPJ_dvDqSSMsOk4N8W8w#U-@3c&8>C2w1QM!Z#y|^+~1DC$@bYV>9TSj|vf(@=sh|>d$g}mQO zQq`8iu1i=bda=h`_N4#W4(4sgSh~J+^JJ5Y8D3j@y+l`4t?_+H<*Q(=sncB4RZAa{ z4u9-)p|{3TYSp3hEM5b!HZMiuq1QB$89Lhx= zSsRSR;6zrJ`H@kG`nNK_7;P8t1BXxW88_t?Lax3p?xr?0pR}3e~4bc9w4zw zTU>EJ?I5|Ffj+K)4o3>Y3U$}5(=8#nPl^|L^#El$ZDj4?kkUs)8s$DcSN+4;cbrZawhFFTYb3-B_2@P9+vphe?OwqP1svS4kvYjSd; zL7$hoh0n+1ZNM1(f`h{%+}0N#atw6|ck;_GVF**4dVr1N2Y<&*7E}|_xcS%B;OUef8RhxBFR(}3lh=;&dg|*t3ORD z_~f&fQ(IdGuD!VTT9Y1aFW&7inaFguf#plC8+y#qqg`bS+tlxp2ecs&GB}EtJKFO0 zC2`nFzgTB#lbR7>1z0J5uj?G7cdeDVs|HRh+-~Y zgCnC4>^mGabbi876|4^|`i0~NJch^(y~9JcwoCrho~|wV8kwOIDS5j(Rw7p@ZrAJl z&JqwG7=Zx7FSt zluA0U`q5J{5o1sL^)OeSzg;A3!=nxsiKq#(WeVqaFkb*+O4@Q!=k`vFmz@{;R0O=hxIQG|=$-bd#EQm`mJ8ri@rqLV)UeBl#7*hs;5WZOrSU67F z&ev_9ydCerPWUVSdG-{;*Jv?EN2NiKdLP5!BN5kmaMVloj~f|OG_EWBK;B+b&l5&ZW!olVox zBjHV+;^4#N6)!?J=f^C)9B0puXAvHJNYXN$yW(~7jBf6Ka6{SoL8rkJ9cs^0Wne^- z5bUR0ZTu<a$$3<-<^JVhAjhLy1nk%~=lie5!Oy`p1>g^C9^`<~DfeoEcsu8MCG@wPBss~6 zSWX46w7Grz|-9`)z6 z$z7RvoEc$l25#SD-}PM}<;UBEpE$S4rKpwd(9*NiI$KFFdTN(1%VMvjmd}alk#Q~9 zlA13$8X6aJ1#t!5artt-D9iKhb3RERIUBF>?BCh@{}?+p%_$^-R_4eIFNRyvL7Y;* zXdsKvb^$0FJhcieR@908v{)if`f~W_!quSzPsi1K zz{BTyUm@{k?)Qmz1p_|F4tmYlZ(w0Q$nwE34|g$ z9zELB;-pSoJa+noPl7PX}Rd*;1opR3ZC*|@$oyNU`T#sqzX63HjA ztHqMd>}X(z4&W5|t?O)XFrc+h(BUu;M_^PVhr`CelihRM^pNK0TkH4L-YR_P^`yD( znQyiQ_V#8hySyj5*75a+gsfW|q*EOhTG`T@V?Ts}M<;R}Q`0c;=<*Cw%iBq;j*<1k zB2g%4t|1t%sG_C6aC=R)@sLO*qIfe?MO1P{s~5lSJ~MH!m32|#NC}yv+6ogpz}&M~ zZk>7}HHs&6Gcolur`2D;B&oVZ->u=mS*OQO1hKPq9ucrHJtzXr=&i2z5b7F!t^b~p zRD#r7U(LenUQh3}q0`Z7Ol?FXIVaR+j6xb2pg71~d%!OCo&25@Qi=xOuP7on-h#29 zS4!SoN)A&+&oY6Bf6g_dDpi!C9gz|x=6Y9^{0nv^k>d{1l8#S9Wq@Z&GiaU(tK7Ix zA-7C<*3n$kr(`)BJ9CIHN#R6NSVpS*;DXu`7%6H@pZn=&@+@g^)*<)rzxiyWXG8d*66}AwNu~+MCPB1>pV#SS=7#sEmMF6+L zr}f)!B8wAAzg07**Y;Tq#UL6yB;?=~`5p09Bx(!A zpRbqZv`v#!zG=1o@SF`+_#9uN?mVGFy+gckR6|K2FUJT^dq+ev$>3#;4tIuA2=Uyz zj_rP#W;JRqpFzb~WJ6A{W?#g+WW50!7#uB~sUumY^~}x0WITLAKA9=oF2`sZLu(q3 zsTj+4)zk<51dp1agRO!V8YIb-*G5kLUPnuCKi@;EE0=}cTDM>I zNMB#2Mq@E6*EW$a7B4OyI~(;;JQ)&geN+k3{LFfkyu@6JW`aG%ykagxq;;MUE0;G9 z$&wD(s{E*oc!Ggw3CwbOl?L|7!(M5vfA*$)G>!&Q+EWax4=g_V6t&K>;SD|d9M&{c z?11RE*_B>9t1!S;DV^&0foJmKFRAi%{5%~bf5r$_-SS_p^Ef0(BLTWO1%3hi+1h}vk67!X7F%D~BFzw`>4_S2@~$R+>AqQ6i!^5my?i0q&UJ(NV;C5Y zA`!1qP=qP$gGFSD0pQ1gY_I!|8RwvP@t|n2`7upG1*#z&Y#w%}G-X^&K|JA`K84Zm zzRgH*so)c)k!4TBr8Ugb)2(}F_|w>Cs(R58 zrQdQUh7b}57JCd&Tg>Ysc&xG|_-<-{ZV!2oCCtJS7#ZF z!_bV)ultQrk;{5WV%ecBOoZwr$+WtT!f7V*z(0QVAb7Iv`6 z=i-4be?$HD@nxz)0YYt?8zn|^7Dss&n*Hc7E@kms^NvXlkBBIRy~#~Yb-Oh)Ba3T0 z!9v_IWX1TvX?)~d_Z}((>c!e%`p6vj9IBHNJP1StKP~GK_BGO^U>(JzxmP55Xv1DD zT_R!-l~!^Sp`gRvnMEXR8xKN`RCvu^IexaIj+l+jYn zmp_yVexV^6GW8~0<@q?zjC7-t9{Bc(#M)OCqVE(VJ)ryBY4iLX!Upj7SUb(yNSdeG z2fEwr6~uRt`NuF2omtj}cD9x=YJWqb=VT#}&Nj^Hl(Uo&<~yGeEU2!p zT5P$WCD;Wo-q-j3@m+?bW%^Gtr9%rLOV@f4G_TzR&Q`%JTneTC_B$7=LrTElEWcRr z3_Y8h%{_8RkOpDu1YO}%b2FLb$ImR|2sINelwkojhAfclUBXzEh2!>7bg&n2E!-VU zG-_)kM#kQ)S||hS{$7ZCa0QB^F#j0*wHaV8L`|V@<=W$1U!QZ0M${C7xqpG`N&kr`k9?IGduoWKEO<)k?qJ+(dIMf?2ea_E^8hpOvReE!%oR}gF)yM`T4KmbH+Y8>l7KLs)>kS5<2Ny`$ zPzsV$NqwK`pp3xFru6fAD>Zf6e=aZSA;ap`W8a?P8m9e05Q5TH4GqVoDyk$^xTc%2 zv*8t%-3}(i?3sa9Buy>*lBGT;IE+a3V|6PZk&4eNs)qzY7O39jD>RsyQX7&$SR2;v zyKSkaIgb$n$h;6S!{F8Uycq$AYlMr4O+shLSxi`B7w*U%fyQiIVzWbpC2pH+6`j+l ziEf8WZZNs08+1z|unjd0-{w;_O_Rv0ZWXOI7^#Bg-J!6!POV_Ry)rbWT2o@c5>-mS z6Nth&AIhn!Qj~Vs%+151@MsnY`9);c9O9qPSC4pvg(1(P5om_js@(+FPlefFiH4IO zvEGhT#MTCuQ*DBmfPKw-Wu@3ApAJ&-y3BSS%IxmWsvffE=ilAM8EjuSZKDR z4)cm6?02Av#%L2sArGoo;S`bw4#-L|%fe0P(C((<&|C4bAOf)=L~;Y?B3<;8Es1LD z``2ABx7H%vMHY|CaN^ZqvkdrP-Mr8nz~JQdQ}W6^Dxn>DVh^Rny+*;<{6_Qbc8%+x zGo+34+q3@5e`RR&pCK(K+_0?T9R4H!-D1f%{!H{F8{XC)JG3Sx_qA1 zaBqh?D)qy4UTO7jcyQ|OB%f=ffM~O;fiDlCHNEeP0 zAx+dT#roAy=+!}Z`vm>XW_bl8%kq|w=##7=dJry@)?RTZF}w&;;2j>e_<23OHhZlUXJZipm~c(inkAT z;>6O@SwYXTjGYZ1KXL#@fMJ0>YGm7 z#$DsX#X0Ze?K-`H_=EE+?B*F$Af^-T`40e|H4M^sX{%Hx2w!ffCIC08tW`CI#Kx2p zP7>ATWA~pRZ$M9$3>(1q7i6GdX~9LJ5qQKo6`kroAPBaNILoARz$@nZ4!|@i*6sBGfA9!2|_f`T>)>{%DOl=?=1%qUl z`kR5^W8wMl=^0a>PzW@^p#TwInii2GzC0hI7x{8mtke@PispO|glYp!!VU=``|Kvw z9V&bxBqCC4-4*_&xM3IZ^+M@LYA?0uIhXEoPQ}gjU2hioWoSP%XBI zjgLia5|Vv7y5k+s^Zto7u8rBLsK*bn)eYVgI_LXb_vD3+$ab928u=yiTVP(>WnZTq zF2^O#DXE{&)in8g`VkkfG<;o8V$#cxe7jiuIzBS@L^*5vlM&L$o_rkg~doQqaY$6*E{RllJX= zm)bH6KJ13~N>7Biry}i_e^`@pEdHV)1^W zF`#L{{5>?uQj>B8!%BAs1^v4Y+Y))?4%!la`U7vE!&nHj9kz*P*|NBv5y!&gH#=Rc z_J0U2??dX@Z0=e}MZtlRE4vV*Gb08z{w0<~Tky5Q{I!AZEY%663$Y>uqQjq}fl*R5 zk|zhqQj%fS_dBO$l6D-WKMzlJZ&5fmo#;mtTE1YSs#;y(*6F}UmWDP3Qputwos?qt zB1uCIv3$ZIe$fB`fYV7xm}gb`eO9?@E_KoPFWiACfF0hvFG23JHGooR_(&I!BEM$f z>w!J5GxfP4d+<*}=dYwt$%78Zf8q{h{~dP#wCOsS;mH*|hlI*k>l#!pi;`kQIGpa@9-L(yuemEXP%UES;16<{FLDHo^&=bLzO^MrZTM?Jt$jYS^7i=&8ozY=P z$y6IAa=?s@(NKfd+JquvdLI!boL7SMMrM7h5sOa*kDMkS zN4DAWYOL78OnSn18{ClAdplP=gU?X*`{-FJJ9tI>>tVCCLETg^G?5k4FlHcwZXolI zdjoy-2C$w}gRLTw_yM+t;{9K6_jzD>gqxCFO*D)a!paS{tF7_8}l zEqYE=k=GUIefp-)i$u4AK!?+#WRZ`R0(mut$27o$a?d+DXOG%yG^__Rl_zA8?4F6!v^AQ#;tvM*p8Nlb3Jd6E)J_p%w62UJ2?MorXS&YL4h4k53yPUdvV}symMpbUt z`c`(c$8}RPSu4C&LRg!y$uO{UP;vBkNqU!~6GY+8SU~rrqdxveRw96^vVMd;388sV zwEqwes2(=<@A zF~S$Hp=^Nq;b_ri2^7x^+w%c7__OuUklv24gpWYh(Hj}5r%km%%5J3fW- z&)iQ6!p;@o!NT+Cr2M|hrq|djces87HZk}vg{{>=<0L|+<+|bcGzelb0Ecm7Fj zpUSfx`6i1o*B)n9yB)%emqHLC6A*<)Xek<2>#P^Y!KrfF_90`bHFG^8!`%tj$7Bei zkcmVH<~QLSpgv>|_!_IIC`e5{8Fe#4e1?GSw3@vqzH=m9lMDkl5;%#e2{eIuEMp2# z+YP#pN+ZK<^swAkC1PckjP+}IODWSJ)7q$MAI*_W|8ds9?X>(|WFeKPrNBT-k7;jH z*DJtGU;7LI0JMtNO6GcGaQo_h)x^9Rm8BU|#lEV>(sYNXr%!NT+NZK55Z)onQ2m=Z2nMnJ~sYOUFDFE5W~OCf4N=$+KHFw z%9n%DbHEV7o;7va|Fpy2lL)0sG!6rY{=-Z6`pCMC{MJ7y;hC(JmgTirO>h{0hC|c@ z{Hk9fm|8r=^+Vx!j0J^OEl1a}F_gX4;ZiNz!=z+PR^+#W*;nsCHHB|Anx0b+^MhPEIc6!sE@p^W{rY~I%s^sTVw%*P&y}Y zTwM*GK(gSEg}QnWucnc)Vs(vqy@Mjqp3O0h*HL*}`Y(^b?$}y%eGApcB#7ztlB>$1 z$3_#vWOt}mPNsukZ-U4}DI>k8#l{CSdEv}Qb6tDuD49sle$ftEiuFH(o3*X3izN$+ zj%(zx1V}ITF~W40R4-59MhP?`k}Nj+p{XIIzAUJK%*}nc7kfNm?k1$B0k8xBSJ0WI zZ+_-JCSTgg%92s=&L+L~icI@S6n2s`)YV?^%QK$fvBy9N$^OvqbrJ6yVRz2059i2= zW8b~bsD`h4DvTTQ2Iujh5Mcg~hVt$zOVNb@VT`0>$_|Q0oT~8AU02QgBL^?vw+svI zPyAzu*u8un1E`APV6$jockq>Bvh&Q2#QTZ*MK@%zgDfSA&tk5->;!J}=B zT$XV6k%Ar9r`0y$?jbSV{USTupmG${Ldd=&F#8(>)If6Ter&i#}HA0gugw zDh+Io58v+~+?D>Zv<;>0MPmzJA?@~CYg;t7ZX=Jtlj2F$CD8;GbrN`{Sr+We|Pi;e4YEmV}`c&DsjdyOQ>fP+wRNr9ZyqTaArO;PoKe zmLtUdvWI{NAZ=W~r#Rr$|EhP^!@SOERi9k;n2-y%JZLCH$6-AKN#AIh9#N z>M)APEG-REZs2rI0p1}{s$<2XijGB{i83v|cbA7CcmTchEpQ(?Jg^oIO)x4X$?kMY zUtQtrs>mbrsJP{K&M{n6X#b^jn0`)QlAZD((U_C86lZnhh@UV6v=nS2b!XaHjKh}W zn@J>GEel|ru)YyZrNrpFaIxBjyhfjk-|Ff!8{TE_Qs+V3OoCc#+)UL!%l5kesOu;W zK!Gkat#vLzx~1jTWtN}|(N~jekQ|#=2FhmhlkdSE3|}qf6^uF^{^7L%7mH1=0%$^ z>60bTptRJ9DxVu6?KEubjZV6bPG}d9jssxR*cn0>kAIWg1zK0gc9Yx@PFF5-liVIr z7jI&7&jCdj0<6<8U^ z4J=t|E^^k=W^8LTfa@I|iN``}B;<|aG7Slb6}<5s*tDD z5T`9WIj~Pzv_lrLlQih^HmpS!3UgVSP6|3PnPdCZ&r4RS7HTy0Cg87Dc*_%Fp#A%i za}dTCAGHSn5fMxUEOR2`I;e2HY%ZneDSGT~jP(puo3(++9(?xP?8uNif;}m*XHCl;*hKTn2>pd8u`5J%BkRN_zCZNDHsvIw*5oa}>Vj5m-1} zn#w*{teDBq&v=v})0>fD&_WTWS#V0kj zewnkX<1clA7oX;OP!d>-(Sy%Pq={oL^?=W6(cInp#or-YWhZcf774l7&o}Up$LHCz~`NN7~YoEf1VS72jD|Z1G&X!S6xq^5R z=w@IK1HNYm@jJ+9I+;;8{|h_#i|n5y6;t9c5?S+5eHrLo8`eZN5I&R2?@&xo3t1=7 zl3U@e*v1L`01poR@Q=jxe31EGUhyQ?ak*x3kg;8^&>s;*hDrjmH(Jfybi%yKy-5~Zj(tRUGQH6iDCs&p@+RAVzMMNuL+Kdi`IwZ}YTPCZ3~LYfjW&z;7p(wksw zNVfL{RV#(R3&LaLIu;4vYqxK7)tvyR3#YcrsQZq42dT5l)W|?YcQcrrjO__{=gRd3^4xy$`J*F;n=yy_A z3EDJ}hEz*2j!9!Wuub#?b6}fFU4oks|Ky|nvta$urodNG+^;Xel5Bi7xyWD+x*Vg+ z*di}bZ|R5#&V3Zzx0Ndpd!y+X7E=@3P zSQ*R(bIXV*A&R3FAqU2*51nQDm<5eyT>vX7f(Yr1S$fixvD>!S69mMJN2}&#b5g2n z{(%~BdVb@(q8R7oP8QRSe&ys99s%D9VetR0#=AZ zVQxpNo+nqhB6}i!BgINAlHWqJ0!i;9V#v;>w>~Y#{$FhHjG%_eB>VSdg5bw6H+f8B zwc_E^#S)4`J;uqjjF2PaQEp?f#N2(=?Lz2*fCmdL0N}88JbigBcPVd!cLFHDfKyHr zrjaC&R*)0+OEYYrN|Y!|5&H`F(do4w34qG2Mb9mmQG0ZKk0!>JtPWgQBR^WZzDM3G z<0cRjLNSC_Dl79(9~Lv7zN{I{WG zl3t6kh&bhCmeb%AC1Y+yMCGLt%)Z49+)>{{A7rC^SH>t@@)vpQanxxCaZJ1oLR)cs zF-f$STM3&u(=`-cWpecAU2tjtzcb0cp_~<%06U8ncg4a?2fsLEvVPYekxV~Wk=bm? z@eT?M`1%n7XEK+RML(cG;o8{%fo0T91b{>v)9)k8L3q}A6 zBpZY&9DJ%Lc`@bV9`?Sx#s0?&c-f93hdOpM&ekD8r?Ccrs}{Xf5qbf~wH-o{8J*;A z2p1}pZJ4P^WGvXVoq>MkQcn|i?#rMb6O=z#$1>#Ui3K0*5MK7b!f795MRVaQatx`g zBe;|l^;=)bXdGM>vxXd$nP?@I8vH?sufnf`>)i9;O!Pac-rC&U{7&~x1h(q)W!FXX zUpe+MDHR$~M4K~^Ec2OhDPM4flxUB4I<%NX+yAsu8HixD-3ctycBaRFwd`UVx9k)V zx|Y0`fMUw5O^#TPnyP~Zn0TF`LA+mrGzAW( zsWu|3)(Qy77N_X%J51pZ`^r)^4XaKs;w)TQExVeuKr-Pyo#3#4y7S&1ohOf@0ge<4;#~3>!4B{BnNfQrh7)qAtnKrk@Db(f=6+~?SH1?yIdZz$E> z&c5`_Y8S#Az#kM4Ag=`ibjvXbf>T`GmskU>qJSnsG>G`&qB#rvF$w{nlhhOE*G5%K zmZJ^L^5*J>2KZyk$h!d(qui-Qu=;_4=jCNi1uZDZAiiVrkYAKRM*kKDQ-u-nN!)e) zx9HbohZhh8uI`&1EA(^c?xU20l{zYMeflAUuM?6TQKkk!GR-q3#M^g}66ngu=eK?# zi1SO*6F$#9C%ehw*_(5oa}p>TOyl0c~aO>}SJfXm4Oft{mYlNv(qY?Ag zL6uqjNI)dow5M$zk=GmRMckap#k<7iW{W}-%N_rG73Z|pY;)JD$S%5|TwAJ+?>s1?J)Df0= zo%GT#6e>~fidc$WYLk5!J^#|~iUj`1FZy;Hmdcx=j95zGv4|RiAMg>?3iUF6I>$>D z&3c%15yH{AD$)4mzjQ;MIuk=F?S!s;7YrL=4*+~Ch>A2EkmJ2}STm1fu7EZ4X z&h+-Qx2wtuJaDPEM={hS+8Xf8S13|N3H|vFY+{}|JA&_gs5shP2yq>C&s+&ghYxcc zNW#J%@ShT0pKR3^@LhpTrds z(KTln5U8sNVG^vjeEGKw#oRt3RibF%4`3*$Ju48Kfn1q{(&DamQP_+MZ|+Q(40 zDHialWRt(#Lgbi%;nLIvity-;1 zub`FId!oijvUdIny{WHu-8h%RDTO;-^bi4Y9L#~_--xNlEI`jE z$2NTZ?5PC2e1`1v65nfEmhM#4YL7pvl@JZOVzZbJ?ri0MgLJ$vO#;2U@ib*=yln(j z8W}PFc(Az~PLdlV=ie!mZdtt9U?Zc6p*>0T`(EgT@4oOs5cuDPK0FuiqwaOU78x?2 zO_VWaXz=RHgoC$@_O;c{7XSyJIAT1)d={N$ZI2dfp{huOlFW5weqB;2^vSx!Tv_L- zI1d$(ke2}?=#;omFj(`Qb+p#ac~lE#hek%|%k?q}@2qbu9vAy8ev32Qv&c^#Y^*); z??&pJ^C(E@d7vv8?=CBK*?x179GrP$)GPSFYd(CnQ=ypjDSed$Z2a~}d*MDESqy@T zdXu9ie5=g^Cfl#2IAUJ7A&EXP={s1N0)?Z)a@5)o6mrbi@PW+Om=!}hdSnwc*tMGS z2$|}qJimW`(y)*ULDuItSS7uXqjfiuj@wOi1jh*kq?JHN0=N=QVLYoOd##dTgm3 zS`ADD)E3K4aaSAKwSjJiH4yNoId7n%rpVOY4a16UhI@h$JH%SCnN5uFR)?yU2$9Ab zO^G*{Gu<3`^h(ArX7e~vGFhOZhAA|?5B$|G~y^1MRSzcQf3>53|pn6kV8N`s4C zN;@c%bc84YJ1BorR06+EI4JSY91z`TaQ`v13NQEdzwAg4nq42(F48Ty(IrkErkbua z#Uk95$0x6Rm>N>r89KUho#|y)c{jMsrhMkLHsmD}`cjo!N(4ZT+v&hr1X{o+e`28t5xQo5OSnwc%Z^YXW!=DPB?i;|CNI7>BgIPLMNV9(*6ad)MaVe;n18k--(AWM!1+{=Q}8O(dND@iFT1 zQ=CZ>yED*r{M{JO7AZWc_8r-_K5wRwJdUV8jr;esMm~Aw3LQK_HrZo^|1L+ugMPUZ z%wGr-l0i9heaJ?twL|~YI$+Lq)Xv^16=Q3)5I6rmPJ$|Ea`*>du5lgw5Uci%HdMqP zJMx{f+lGdesTOuAC#I8MEkWAdh&I;Q1X@Yui`?P`i?|BI6Q$y8>chnEru>3heMQX5 zxB!!Bj0CxqI9T1!I_o&`U^MJsvzHqH>v!g~xHgUG3f#MxiklX$J`KA=ivg3;$^yZ^8 z3m5lVyaldjFo)!`kJAIw<1)L> z;+<)lyt>XHZHVk%d{lUYhb%f8E^LwYwd-NJ%%+v)0p%RQbX`XI_=@(;hl|qx^VNW%M4Di0@YP{M` zQ`5JKOTJ#rT^<|KzCRq}U3Gd9MDF>0Qc|48W#<;k{%(B2g3J23dRB9pJbfl=yEH@%l~G)NfP}1=?T&p(V(gr zLI^blA8}`GKb@z~O`G+(ydM&1o zh{3wO2J!f(WO-am@7qyG`>_l(XPRrqcGo_bWNoyruYYBD5JD8oLj7++dWpfi#I zzwj$HDyz*dS(X~lLu8MXhDh;g(3>R$B;Wppx>MZ#71Y1ie@O=f`M3l-5M4%xKGm#WO!E2z@`%oRoE@F1( zs~*RrIUmQ?r#dp1pS#4VPf$5NE@W7IS&0y%m-l+=!6+rTdt;^m<+<;#ahEJrm7bp zOF(HRm@c(JCdU(I70yxJqzu+g^F?y|=k6K&-=~hiW(?$ zK(jxT+I)0iqAuZFl&q)t(tM7=`b?U0LTf4s{JOs*sr4OM^Z1ia{56aZm=0^s38-Wg zy5qSHs8@D|xp+P2{B>JEW}e7UY^IIE;yzJu-iS}?VtoMi9C+=Mru9yAbgKA{Mt{Vq z?7{UK1sDcJXqwiXHLQy#ACA4o@YqLp;Wy{4xEmP>)4pzfzJ9Y^H!qr1zDO=LIZ2ve zx}tx=F_5j-n28-jTKLG|X-r%c_vpwzBQqMyEL9LJy@jb}FTQJEh@)qtgH!iGgvc*o zRfT*F_A$|kxi80)`6EO9&e3+P++NA;&C096t@zX8P~H3wo5rN!%3Xg$$e8LU$?7P5 zAR|w0PG_Lte2s5N{n8N^iQ4Pqg1WdgdOyDx$5PTWuOl0Q5oiP2tRT~edy~Btp_wUdaM7%}PUil(O@Z^^RzAvg5 zqBfH|(xD?97U2VPyO{M!PXPEvjxGHw9d84oRnvaI&jbB_%MlJn5bzf82QHNV(}0RRSZh+w_Hm)s`o)i(Q`E@f%T7v+MRlMA5cOcj(@u-H=?Q ze}eb4((~bo9H8Ye&P?G9MVa#JB_bU%0 zwc&2kYr}jxy*b|z1gGl)d^vd&%dB_pL=@qU)M5pV77X_IQ&gqdP2M2% zOO|P2NQ<^SFpyY51Z|G9F<%6X7;HtNY1-gvy~>mA7s`3-T=p1?%erEZ}|H73dAYA|x~mW@50#r(rN! zO$e-cG;;@{K;8X|d~r+UfMn3k62|?It09bZ=TUwtV+$tv3QXgal_#xBQ8W0L(>}k{ z&7X^N=vcBgc58L4-Ty0f6pHJz#m-D{rofB5eRb75OmHI;EQeM4Ob^^=S}7d~+$LD& ztxNl{%)xwbVVP^at=cc!{5Vj0%@twp7_;_S)2gAaAT%MU`V8pQ44rCRnL$ZP{>mjj zl3UkV2*?ykOQ>@$FYO00!+DNG>fjvROG#tlthhsGwS_;~PG<|qn3(b-uun7g$ze_H z+&m)!y@h2vE?e1_?*aW-f9MxX^qS!JzUoVwus=tMe8aQp%B6&i%?-c2{rWH7T30Zb zA#?l-V4`MBq)`hHF&OBOE+TllDAg3m$ofOZdj_&}o1GzL zp7iOjfs|b%r5bSnCF>6;w`X}PoZN33vPZ(tSLz|$kT2zGa>=*b>Y# z7h{`n)&ZmOOM8XU#8k(EGdM>xV4j_;;r`%Ejk)G5_=R;C#6C{IAc>!T;RH(T4w7O##qAg9aKj z(7n+>E3K=`2A!j6VM1KiNyh6Xn@xS@NL8{E)QYr6qk z;D*-z;K2+|YW31~)Xgp}`H^*<=MbG`OMlaYKg- zuKlBk79YzI{BRDlWLmr|T_`7yjEi)TJdwkT zq?+Dbkot^`&1f_n#x%vDB~6ZycdaA$Bbu-bR1^brF_A+exRJ8kAHv0N$*VetXPkDmD>}xdpLaQV(^h^vkMSfbgOeQhdowYV? zHF>|8o4}KLu>5C7>EmMtakfzagKHO;s1H%)>(-LHkk?%0~i`0fC$O-`?1Z+73_OdMwpYjdpD<|qF2 z^YWQtY|5|O6EAi|rbCtr((22Kb}0;Bmp_{$Xd|z7OSt3kY=>vJ)_g8H&wn9LP+0V@ zEteVbMo&eH-7hhUx{@Ui))gAp6>s?fdumDHg+$GfQWd@1OEiTwg61_seCpR-CJ0S| zdEPDaOaVMv?J_l}%Ot0TYh;V#0v(4LennbJ-Hyx_xyge|&v#t&W}v|wQ|rp~iAL3} zySK|#`c^0)40Y#*dP*7>v(eJyH<)-FFxaebgH5`y1I9YXsTZ}5BMsHMk5KQm^|$Gh zH+Js!$DXYH!vY=A4~|>lcVRy=FyrY<`!wS;>FZi?(viO2(2*))m9Sf@1jVtYH>y^)sV$~o3i0yre`5xcRy^>oH;Tx&Kt-u-momc8XEQHJ4Ocj5gCbs2WN;TuEnY z&X{GV2dQ5vOay*7ZBdp?l^W0k)#O2K~-!$36ar4XLVg=D?1>p&8&Na26&h3*; zeO!1Q3Qy!G{(o*^)c9>iH-oo>FYUdmWV5GVdq`L)>`t~!fN1S|q$00T4s?jiUOCt`r$lI(@L4)kUNSUa;KR%)IZvqbjYzi~kK0xY z6{D&-nmJcendF8rNP>V)KZbg7;wk>gF88?0e8VU-N4;7#m#;G?Za^J z)>+vzG1msa48Dx-T33me4R;KJh4QQ40F63Riy0qL@|kHhNCS+OVZo*SKxH`3YocZT zH9zhbgzgI6#$OG4HkVrx@2GKema#d}f_NinpQ+YUTNKR*II0R=XA`AN(4*Kuxn7uy ziRpS{V>7yW*WRM4=DN11+fu7h(hfO$xHoNaqH9h~ zYi+vB@~CDmsn=5&Th^bk4V9sWvE@JfGwXt??@<1LJ#K4{Ke^`fF%=Hd_GTlraZ%H) zUuskmxRD{w7V;?U@Ni&xLF~zR($)$`ZFOvjx5SSAgeBJM(Naw?lLM}(OwKHOCL%w$ z(r~NGZLXVTp@sQ%Y>q_qKvKUx<5ybKd;XVUdy>Az^4XN%Vq!9rn>KFTgLlq?qk(R) z@=O<&ob_kP$1I96mPj}L@w@zQykwI zJR2Z%lh-j;v}lol`e1m>lM5QjOw18EK;bkR^WWwC74;g$CuZHsYxw_c$1ebLU^43u zlao5sf)uM=$Tzk{b-H1HCt?rj)%+$|?6edS51M5`qpf&|ON6ZBbmaL+3`nQg`Af!T4)8{=}ma6e1Aj-@A8K^BMV5#Lg&5jN_5KF_#Sn zob~8bCG~fa(8wNQv$ZNwb^{9_vj}w&8poBi5KR^jx`)JJn9490yxkoYo^Y!KB z@GQ;$e0_Zl{^vf9HvG?O3V;9_1kfOW?u`IiX^({1$2(?orJxT zpJHApIH17+4Gw5SPg992I(BOdXPu;))-KC7+fCdNjPK+El zp!Et34rp*dg9Ey=$qEi=a6s$hfDS#dqa=Y2d#{&gL)XwwpD?UYxP-yfaM~YYlr2Z2F<;Gsyhm}c2`pJAV64SfbflL@&z4Vo>MTrO5Ihx59#Oa==mTFSY$ndXif4~6V|?<@pmW^f6X=v# z*(rqsa;5XA>xi)KOq1Y^%wVJ6otaOYdz#j$;8HE>cIS)$91~9}jI4@Mg82scO0A z(z~n^v;5bz>Xuk?*Isf5qbxQwrYgjV6ey0Jw{z#=1sj{Dnx>i;WHI}PHF}LTx|k8R zF+cT8|7q^dS#jFlgK2zglG3-+i+QBiw_X%P`oAyLGiB`K_L=<#lSrRy-Ziz)iBYqrD1Xyqf49s;Im)6>PbFDSybhWVRMV33I z1})5YDz>UPO6@RA_2VM+m9cPEwm-JogR*R?Ycx&@EdK!V>ZDW=LrSb;6H{ao-JPZc)DrYo0n95>@}d)y4#>U=XSC3Ns7&{HFN2CiN(xIj*} zW5^jz`l#3}#C9{%=+k2l2yF_X;phTG*^XgoY~lk% zA8T)QI3*Xr-Q4h2w5&s;<~rX}&5%9z4dAqk6{#FwMk5GBWjltbiP;ZKeYE#g-n~PN zL?4`~G1r2si3YoWRh1=w;yYlgMr<9+k!5o+v_Mt1W2l;%`M}l3!qqGFB!1KB_@~?K z99{Ezk^UMO+X2R6J0N-K?!oMD*cFi9J|@y$+(}A&-jUy}g%+Gmw%9q!X7?cZB@k94 z!oCZKmic^aU$D=fDnA+wx_!qCCLW*+>NeakD9ZyJvmJxuw5kA%AL~7re1?BBwZsX8 zjdlK>D=l{TH(*!i#;h1s_RZV?arYc?V+wM_V7n_xC!b80@+{Jc917m}r;+GwiyF<* z9m3p>fCN8iyD~<{5>ToOp7o&e@=(f!J&t6QOTo9a*}QE<9wQn#?VL0wCak(6Y_HBu zB^pyNKbs%MRU-@A%Fbtf5tBQQ_N6BVmBVm0hL@B;>zkj%MyYGgHlxwtrz=&9c5toc z`P;$Q&3N*4G`bY@+8@Vv{&YA{1x@)F`0d~^CBtbVHRyG8o9=11G>%90P64EKI!LCw zFl;{1^9_@az)M&1y>*=hQ`^tqx!#{E=LddH@Swu8ouydk0NYug*q&0Gy5wHFl~wqx zAap0t|9V35;rlPsn;Of=0c4d1Ctb$4lBDS|DJZv)=Z$82&d!rJ&%e9#f5^S-7stwb zd@%6gPZd%%r$jqN1^#}iL-wd<~^YgxuK6?&#D9f)uhzZ@u8^kbkH@XKr9?Yj#mE-QEk7buR(CZiF|6XrBRrPrw1Xw& zP-;52N{ru+(AgaU!Qu72v+~SeSBr`1esq5|h(xI^AZ|6;8#d;3XX{%)re??#Bg||u z#LRJlozbQJU}we@2aE>ibPl6~rQ`X=TyoU6W^W4H>JK>69f&gT&={Q4H8fsKEq~J<6RDNn&@hsjJ^%nU10W457KqWM{lK4`$^gFLoX*#T#LMNI zA6<@NYfBf8eX_~^)`vNrNqq~b)CiUI=0=dw@WrASXY#9;YNUam(WQNDPNt^%5z}|> z3dAOB!|g#;y9!-Eal7tTp6|yWQQU6((w-Ke+UnNr2S|b)1?(s%>_FI24*#e``O-2W zu$cele0X+|=6|_9zc}A>{+Bqhj&`B-9gX;3%AY%-7ym;uKOIA&UK%v9M+*+2RjlY>oe zcvY1yYv!dE7}s7E#gA3%)=yHZk1&A*0z%Hk7mToZZHo^NaF1 z@bSu+KNuTtboR@lVPU~v<|ZxYUdo0vN7-uao%{n4xH=OW#E`O?(tIPX?TEx>wE&+g z33_IBtZg)T4=h~v$l>?GbsS#<_);^w1-LkBO=RL4Lm+1JifHewdraAWYNxUA#$Q`;xjN=BPRb!BZ`%9!KIpTS54gm1775f zA#V%^4jede;J|?c2M!!KaNxj!0|yQqIB?*=fddB)95`^`z<~n?4jede$m9P3Zy79y H0QeRFbeDfL diff --git a/Docs/index.html b/Docs/index.html index bb332d7960..53eea98469 100644 --- a/Docs/index.html +++ b/Docs/index.html @@ -158,6 +158,34 @@ + +
    @@ -185,12 +213,12 @@

    Quick integration

    If you want to quickly integrate with Adyen, use the default UI elements that we provide for selecting payment methods, entering payment details, and completing a payment.

    -

    For this, instantiate CheckoutViewController, present it in your app, and implement the CheckoutViewControllerDelegate protocol for callbacks. All UI interactions are handled by Adyen.

    +

    For this, instantiate CheckoutViewController, present it in your app, and implement the CheckoutViewControllerDelegate protocol for callbacks. All UI interactions are handled by Adyen.

    let viewController = CheckoutViewController(delegate: self)
     present(viewController, animated: true)
     
    -

    The following CheckoutViewControllerDelegate methods should be implemented:

    +

    The following CheckoutViewControllerDelegate methods should be implemented:

    - checkoutViewController:requiresPaymentDataForToken:completion:
     
    @@ -211,7 +239,7 @@

    Custom integration

    With custom integration you will have full control over the payment flow and will be able to implement your own unique checkout experience.

    -

    This approach requires instantiating and starting a PaymentRequest and implementing the PaymentRequestDelegate protocol for callbacks. The PaymentRequestDelegate callbacks will provide you with a list of available payment methods, the URL for payment methods that require an external flow, and the result of payment processing.

    +

    This approach requires instantiating and starting a PaymentRequest and implementing the PaymentRequestDelegate protocol for callbacks. The PaymentRequestDelegate callbacks will provide you with a list of available payment methods, the URL for payment methods that require an external flow, and the result of payment processing.

    For implementation details, refer to the Custom integration guide.

    Examples

    @@ -235,8 +263,8 @@

    License

    diff --git a/Docs/search.json b/Docs/search.json index 8b92213358..9618215232 100644 --- a/Docs/search.json +++ b/Docs/search.json @@ -1 +1 @@ -{"Classes/IBANTextField.html#/s:5Adyen13IBANTextFieldC4ibanSSSgv":{"name":"iban","abstract":"

    The IBAN entered in the text field, or nil if no valid IBAN has been entered.

    ","parent_name":"IBANTextField"},"Classes/IBANValidator.html#/s:5Adyen13IBANValidatorC7isValidSbSSFZ":{"name":"isValid(_:)","abstract":"

    Checks if the given string is a valid IBAN value.

    ","parent_name":"IBANValidator"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV11countryCodeSSv":{"name":"countryCode","abstract":"

    The code of the country to which the specifications apply.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV6lengthSiv":{"name":"length","abstract":"

    The length of a valid IBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV9structureSSv":{"name":"structure","abstract":"

    The structure of the underlying BBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV7exampleSSv":{"name":"example","abstract":"

    An example of a valid IBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationVACSgSS14forCountryCode_tcfc":{"name":"init(forCountryCode:)","abstract":"

    Returns the IBAN specification for the country with the given code, or nil if none could be found.

    ","parent_name":"IBANSpecification"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_AA0B4TypeOSg4typeSS15formattedNumbertSS04cardJ0_SayAGG08acceptedB5TypestFZ":{"name":"validate(cardNumber:acceptedCardTypes:)","abstract":"

    Validates and formats the given card number, and detects the corresponding card type.

    ","parent_name":"CardValidator"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_SS13formattedDatetSS06expiryH0_SSSg9separatortFZ":{"name":"validate(expiryDate:separator:)","abstract":"

    Validates and formats the given expiration date.

    ","parent_name":"CardValidator"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_SS12formattedCvctSS3cvc_tFZ":{"name":"validate(cvc:)","abstract":"

    Validates and formats the given cvc.

    ","parent_name":"CardValidator"},"Enums/CardType.html#/s:5Adyen8CardTypeO5accelA2CmF":{"name":"accel","abstract":"

    Accel

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO020alphaBankBonusMasterB0A2CmF":{"name":"alphaBankBonusMasterCard","abstract":"

    Alpha Bank Bonus MasterCard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO18alphaBankBonusVISAA2CmF":{"name":"alphaBankBonusVISA","abstract":"

    Alpha Bank Bonus VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9argencardA2CmF":{"name":"argencard","abstract":"

    Argencard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO15americanExpressA2CmF":{"name":"americanExpress","abstract":"

    American Express

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4bcmcA2CmF":{"name":"bcmc","abstract":"

    BCMC

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO09bijenkorfB0A2CmF":{"name":"bijenkorfCard","abstract":"

    de Bijenkorf Card

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5cabalA2CmF":{"name":"cabal","abstract":"

    Cabal

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13carteBancaireA2CmF":{"name":"carteBancaire","abstract":"

    Carte Bancaire

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8cencosudA2CmF":{"name":"cencosud","abstract":"

    Cencosud

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO14chequeDejeneurA2CmF":{"name":"chequeDejeneur","abstract":"

    Chèque Déjeuner

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13chinaUnionPayA2CmF":{"name":"chinaUnionPay","abstract":"

    China UnionPay

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7codensaA2CmF":{"name":"codensa","abstract":"

    Codensa

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13creditUnion24A2CmF":{"name":"creditUnion24","abstract":"

    Credit Union 24

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7dankortA2CmF":{"name":"dankort","abstract":"

    Dankort

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO11dankortVISAA2CmF":{"name":"dankortVISA","abstract":"

    Dankort VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO6dinersA2CmF":{"name":"diners","abstract":"

    Diners Club

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8discoverA2CmF":{"name":"discover","abstract":"

    Discover

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3eloA2CmF":{"name":"elo","abstract":"

    Elo

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5hiperA2CmF":{"name":"hiper","abstract":"

    Hiper

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9hipercardA2CmF":{"name":"hipercard","abstract":"

    Hipercard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3jcbA2CmF":{"name":"jcb","abstract":"

    JCB

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO11karenMillenA2CmF":{"name":"karenMillen","abstract":"

    KarenMillen

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3kcpA2CmF":{"name":"kcp","abstract":"

    Korea Cyber Payment

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7maestroA2CmF":{"name":"maestro","abstract":"

    Maestro

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9maestroUKA2CmF":{"name":"maestroUK","abstract":"

    Maestro UK

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO06masterB0A2CmF":{"name":"masterCard","abstract":"

    MasterCard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3mirA2CmF":{"name":"mir","abstract":"

    Mir

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7netplusA2CmF":{"name":"netplus","abstract":"

    Net+

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4nyceA2CmF":{"name":"nyce","abstract":"

    NYCE

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5oasisA2CmF":{"name":"oasis","abstract":"

    Oasis

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5pulseA2CmF":{"name":"pulse","abstract":"

    Pulse

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4soloA2CmF":{"name":"solo","abstract":"

    Solo

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8shoppingA2CmF":{"name":"shopping","abstract":"

    Shopping

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4starA2CmF":{"name":"star","abstract":"

    STAR

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4uatpA2CmF":{"name":"uatp","abstract":"

    Universal Air Travel Plan

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8unionPayA2CmF":{"name":"unionPay","abstract":"

    UnionPay

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4visaA2CmF":{"name":"visa","abstract":"

    VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9warehouseA2CmF":{"name":"warehouse","abstract":"

    The Warehouse

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3allSayACGvZ":{"name":"all","abstract":"

    Array containing all card types in this enum.

    ","parent_name":"CardType"},"Enums/CardType.html":{"name":"CardType","abstract":"

    Enum containing most known types of credit and debit cards.

    "},"Classes/CardValidator.html":{"name":"CardValidator","abstract":"

    An object that provides static methods for validating and formatting card numbers, expiry dates, and cvc values, and detecting card types.

    "},"Structs/IBANSpecification.html":{"name":"IBANSpecification","abstract":"

    Contains the country-specific specifications for countries that adopt the IBAN standard.

    "},"Classes/IBANValidator.html":{"name":"IBANValidator","abstract":"

    An object that provides a static method to validate IBAN values.

    "},"Classes/IBANTextField.html":{"name":"IBANTextField","abstract":"

    A text field object designed for the entry of an IBAN value. This field formats and validates the IBAN in real time.

    "},"Structs/PayPalOneClickInfo.html#/s:5Adyen18PayPalOneClickInfoV12emailAddressSSv":{"name":"emailAddress","abstract":"

    The email address of the PayPal account.

    ","parent_name":"PayPalOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV6numberSSv":{"name":"number","abstract":"

    A shortened version of the card’s number.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV10holderNameSSv":{"name":"holderName","abstract":"

    The card’s holder name.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV11expiryMonthSiv":{"name":"expiryMonth","abstract":"

    The card’s expiry month.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV10expiryYearSiv":{"name":"expiryYear","abstract":"

    The card’s expiry year.

    ","parent_name":"CardOneClickInfo"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC10identifierSSv":{"name":"identifier","abstract":"

    Identifier of an item. Upon selection, the value of this property should be assigned to the value property of the InputDetail object.

    ","parent_name":"InputSelectItem"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC4nameSSv":{"name":"name","abstract":"

    Display name of an item.

    ","parent_name":"InputSelectItem"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC8imageURL10Foundation0F0VSgv":{"name":"imageURL","abstract":"

    Optional URL for the icon of an item.

    ","parent_name":"InputSelectItem"},"Enums/InputType.html#/s:5Adyen9InputTypeO4textA2CmF":{"name":"text","abstract":"

    Text input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO7booleanA2CmF":{"name":"boolean","abstract":"

    Boolean input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO6selectA2CmF":{"name":"select","abstract":"

    Input type should be selected from the given list.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO4ibanA2CmF":{"name":"iban","abstract":"

    IBAN input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO3cvcA2CmF":{"name":"cvc","abstract":"

    CVC input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO9cardTokenACSb11cvcOptional_tcACmF":{"name":"cardToken","abstract":"

    Card token input type. By default, cvcOptional is false.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO13applePayTokenA2CmF":{"name":"applePayToken","abstract":"

    Apple Pay token input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO7addressA2CmF":{"name":"address","abstract":"

    Address input type.

    ","parent_name":"InputType"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC4typeAA0B4TypeOv":{"name":"type","abstract":"

    The detail type. See InputType.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC8optionalSbv":{"name":"optional","abstract":"

    Whether or not the detail is optional.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC5itemsSayAA0B10SelectItemCGSgv":{"name":"items","abstract":"

    An array of InputSelectItem. Only be available if type is .select.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC12inputDetailsSayACGSgv":{"name":"inputDetails","abstract":"

    An array of input details nested in the receiver.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC11stringValueSSSgv":{"name":"stringValue","abstract":"

    Detail string value.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC9boolValueSbSgv":{"name":"boolValue","abstract":"

    Detail bool value.

    ","parent_name":"InputDetail"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV6streetSSv":{"name":"street","abstract":"

    The street name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV17houseNumberOrNameSSv":{"name":"houseNumberOrName","abstract":"

    The house number or name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV10postalCodeSSv":{"name":"postalCode","abstract":"

    The postal code.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV4citySSv":{"name":"city","abstract":"

    The city name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV15stateOrProvinceSSSgv":{"name":"stateOrProvince","abstract":"

    An optional state or province name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV11countryCodeSSv":{"name":"countryCode","abstract":"

    The ISO country code.

    ","parent_name":"Address"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC4listSayAA11InputDetailCGv":{"name":"list","abstract":"

    List of InputDetail.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9setDetailySS5value_SS6forKeytF":{"name":"setDetail(value:forKey:)","abstract":"

    Update the detail defined by a given key with the string value provided.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9setDetailySbSg5value_SS6forKeytF":{"name":"setDetail(value:forKey:)","abstract":"

    Update the detail defined by a given key with the bool value provided.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC12fillApplePayySS5token_tF":{"name":"fillApplePay(token:)","abstract":"

    Fills details for the Apple Pay transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS5token_SbSg05storeC0tF":{"name":"fillCard(token:storeDetails:)","abstract":"

    Fills details for the card transaction with a token.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS3cvc_tF":{"name":"fillCard(cvc:)","abstract":"

    Fills details for the card transaction with CVC.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS25installmentPlanIdentifier_tF":{"name":"fillCard(installmentPlanIdentifier:)","abstract":"

    Fills installments selection for the card transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9fillIdealySS16issuerIdentifier_tF":{"name":"fillIdeal(issuerIdentifier:)","abstract":"

    Fills details for the iDEAL transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillSepaySS4name_SS4ibantF":{"name":"fillSepa(name:iban:)","abstract":"

    Fill details for the SEPA transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails/Address.html":{"name":"Address","abstract":"

    An object that represents an address requested in PaymentDetails.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC18fillBillingAddressyAC0F0VF":{"name":"fillBillingAddress(_:)","abstract":"

    Fills the billing address for a transaction that requires AVS.

    ","parent_name":"PaymentDetails"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC4nameSSv":{"name":"name","abstract":"

    The name of the payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC4typeSSv":{"name":"type","abstract":"

    The payment method type.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC7logoURL10Foundation0E0VSgv":{"name":"logoURL","abstract":"

    A URL to the logo of the payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC7membersSayACGSgv":{"name":"members","abstract":"

    Members of the payment method (only applicable when the receiver is a group).

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC10isOneClickSbv":{"name":"isOneClick","abstract":"

    A Boolean value indicating whether the payment method is a one-click payment method, which means that it can be easily completed by the user.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC12oneClickInfoAA03OneeF0_pSgv":{"name":"oneClickInfo","abstract":"

    The information that was stored for this payment payment method, or nil if this is not a one-click payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC12inputDetailsSayAA11InputDetailCGSgv":{"name":"inputDetails","abstract":"

    The input details that should be filled in to complete the payment.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC8oneClickSbv":{"name":"oneClick","abstract":"

    A Boolean value indicating whether the payment method is a one-click payment method, which means that it can be easily completed by the user.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html":{"name":"PaymentMethod","abstract":"

    An object representing a payment method used to complete a payment.

    "},"Classes/PaymentDetails.html":{"name":"PaymentDetails","abstract":"

    An object that holds the list of InputDetail items required for to process a transaction.

    "},"Classes/InputDetail.html":{"name":"InputDetail","abstract":"

    An object describing a payment detail required to process the transaction."},"Enums/InputType.html":{"name":"InputType","abstract":"

    Defines types of payment details.

    "},"Classes/InputSelectItem.html":{"name":"InputSelectItem","abstract":"

    An object representing a selectable item used in InputDetail with select type.

    "},"Payment Method.html#/s:5Adyen12OneClickInfoP":{"name":"OneClickInfo","abstract":"

    Instances conforming to this protocol provide access to the information that was stored for a payment method.

    "},"Structs/CardOneClickInfo.html":{"name":"CardOneClickInfo","abstract":"

    Object that contains stored card info used to perform previous card payments.

    "},"Structs/PayPalOneClickInfo.html":{"name":"PayPalOneClickInfo","abstract":"

    Object that contains stored info used to perform previous PayPal payments.

    "},"Enums/Error.html#/s:5Adyen5ErrorO06serverB0ACSScACmF":{"name":"serverError","abstract":"

    Error returned from server.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO07networkB0ACsAB_pcACmF":{"name":"networkError","abstract":"

    Network error.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO14unexpectedDataA2CmF":{"name":"unexpectedData","abstract":"

    Unexpected data or data format.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO010unexpectedB0A2CmF":{"name":"unexpectedError","abstract":"

    Unexpected error.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO9cancelledA2CmF":{"name":"cancelled","abstract":"

    Payment was cancelled.

    ","parent_name":"Error"},"Enums/Error.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgv":{"name":"errorDescription","parent_name":"Error"},"Enums/PaymentRequestResult.html#/s:5Adyen20PaymentRequestResultO7paymentAcA0B0CcACmF":{"name":"payment","abstract":"

    In case of success a Payment object will be returned.

    ","parent_name":"PaymentRequestResult"},"Enums/PaymentRequestResult.html#/s:5Adyen20PaymentRequestResultO5errorAcA5ErrorOcACmF":{"name":"error","abstract":"

    In case of failure an Error will be returned.

    ","parent_name":"PaymentRequestResult"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_SS08requiresB12DataForTokeny10Foundation0G0Vc10completiontF":{"name":"paymentRequest(_:requiresPaymentDataForToken:completion:)","abstract":"

    Given the PaymentRequest that started the payment flow and token, waits for data from merchant server to be passed via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_SayAA0B6MethodCGSg08requiresbF4FromAI9availableyAHc10completiontF":{"name":"paymentRequest(_:requiresPaymentMethodFrom:available:completion:)","abstract":"

    Given a list of PaymentMethod (available and preferred) waits for the selection via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_10Foundation3URLV21requiresReturnURLFromyAIc10completiontF":{"name":"paymentRequest(_:requiresReturnURLFrom:completion:)","abstract":"

    This method is called when a URL redirection needs to be executed.","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_AA0B7DetailsC08requiresbF0yAHc10completiontF":{"name":"paymentRequest(_:requiresPaymentDetails:completion:)","abstract":"

    This method is called when input is needed for completing the transation. The filled PaymentDetails should be sent via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_AA0bC6ResultO13didFinishWithtF":{"name":"paymentRequest(_:didFinishWith:)","abstract":"

    This method is called when the payment flow is finished.

    ","parent_name":"PaymentRequestDelegate"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestCAcA0bC8Delegate_p8delegate_tcfc":{"name":"init(delegate:)","abstract":"

    Creates a PaymentRequest object and initialises it with a provided delegate.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC8delegateAA0bC8Delegate_pSgXwv":{"name":"delegate","abstract":"

    Delegate for controlling the payment flow. See PaymentRequestDelegate.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC13paymentMethodAA0bE0CSgv":{"name":"paymentMethod","abstract":"

    The selected payment method.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC6amountSiSgv":{"name":"amount","abstract":"

    Amount to be charged.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC8currencySSSgv":{"name":"currency","abstract":"

    Payment currency.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC9referenceSSSgv":{"name":"reference","abstract":"

    Payment reference.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC11countryCodeSSSgv":{"name":"countryCode","abstract":"

    Payment country code.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC13shopperLocaleSSSgv":{"name":"shopperLocale","abstract":"

    Shopper locale.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC16shopperReferenceSSSgv":{"name":"shopperReference","abstract":"

    Shopper reference.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC14generationTimeSSSgv":{"name":"generationTime","abstract":"

    Generation time. Used for generating a token for card payments.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC9publicKeySSSgv":{"name":"publicKey","abstract":"

    Public key. Used for generating a token for card payments.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC5startyyF":{"name":"start()","abstract":"

    Starts the payment request.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC15deletePreferredyAA0B6MethodC07paymentF0_ySb_AA5ErrorOSgtc10completiontF":{"name":"deletePreferred(paymentMethod:completion:)","abstract":"

    Permanently deletes payment method from shopper’s preferred payment options.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC6cancelyyF":{"name":"cancel()","abstract":"

    Cancels the payment request.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html":{"name":"PaymentRequest","abstract":"

    The starting point for Custom Integration.

    "},"Protocols/PaymentRequestDelegate.html":{"name":"PaymentRequestDelegate","abstract":"

    The payment request delegate. Used for Custom integration comunication. All delegate methods are invoked on the main thread.

    "},"Enums/PaymentRequestResult.html":{"name":"PaymentRequestResult","abstract":"

    Result of a payment request.

    "},"Enums/Error.html":{"name":"Error","abstract":"

    Error type.

    "},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO8receivedA2CmF":{"name":"received","abstract":"

    Payment pending.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO10authorisedA2CmF":{"name":"authorised","abstract":"

    Payment authorised.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO5errorA2CmF":{"name":"error","abstract":"

    Payment error.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO7refusedA2CmF":{"name":"refused","abstract":"

    Payment refused.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO9cancelledA2CmF":{"name":"cancelled","abstract":"

    Payment cancelled.

    ","parent_name":"PaymentStatus"},"Classes/Payment.html#/s:5Adyen7PaymentC6statusAA0B6StatusOv":{"name":"status","abstract":"

    The status of the payment.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC6methodAA0B6MethodCv":{"name":"method","abstract":"

    The method that was used to complete the payment.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC7payloadSSv":{"name":"payload","abstract":"

    The payload as returned from the server.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC6amountSiv":{"name":"amount","abstract":"

    The amount of the payment, in minor units.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC12currencyCodeSSv":{"name":"currencyCode","abstract":"

    The code of the currency for the payment amount.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC17merchantReferenceSSv":{"name":"merchantReference","abstract":"

    The reference of the merchant.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC16shopperReferenceSSSgv":{"name":"shopperReference","abstract":"

    The reference of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC18shopperCountryCodeSSv":{"name":"shopperCountryCode","abstract":"

    The country code of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC23shopperLocaleIdentifierSSSgv":{"name":"shopperLocaleIdentifier","abstract":"

    The locale identifier of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html":{"name":"Payment","abstract":"

    An object that represents a payment that has been completed by the user. The result of the payment can be retrieved via the status property.

    "},"Enums/PaymentStatus.html":{"name":"PaymentStatus","abstract":"

    Payment statuses.

    "},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO6alwaysA2EmF":{"name":"always","abstract":"

    Always display a large title.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO4rootA2EmF":{"name":"root","abstract":"

    Only display a large title for the root view controller.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO5neverA2EmF":{"name":"never","abstract":"

    Never display a large title.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationCACycfc":{"name":"init()","abstract":"

    Initializes the appearance configuration.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC23preferredStatusBarStyleSC08UIStatusfG0Ov":{"name":"preferredStatusBarStyle","abstract":"

    The preferred status bar style.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC32navigationBarTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgv":{"name":"navigationBarTitleTextAttributes","abstract":"

    The attributes used for the navigation bar’s title.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC37navigationBarLargeTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgv":{"name":"navigationBarLargeTitleTextAttributes","abstract":"

    The attributes used for the navigation bar’s large title. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html":{"name":"NavigationBarLargeTitleDisplayMode","abstract":"

    Display modes for the large title in a navigation bar.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC34navigationBarLargeTitleDisplayModeAC010NavigationefghI0Ov":{"name":"navigationBarLargeTitleDisplayMode","abstract":"

    The display mode for the large title in the navigation bar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC22navigationBarTintColorSo7UIColorCSgv":{"name":"navigationBarTintColor","abstract":"

    The navigation bar’s tint color.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC28navigationBarBackgroundColorSo7UIColorCSgv":{"name":"navigationBarBackgroundColor","abstract":"

    The navigation bar’s background color.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC26isNavigationBarTranslucentSbv":{"name":"isNavigationBarTranslucent","abstract":"

    A Boolean value indicating whether the navigation bar is translucent.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC30navigationBarCancelButtonImageSo7UIImageCSgv":{"name":"navigationBarCancelButtonImage","abstract":"

    The image of the cancel button in the navigation bar, or nil if a title should be used instead.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC18checkoutButtonTypeSo8UIButtonCmv":{"name":"checkoutButtonType","abstract":"

    The class to use for the checkout button.","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC18safariBarTintColorSo7UIColorCSgv":{"name":"safariBarTintColor","abstract":"

    The color to tint the background of the Safari View Controller navigation bar and toolbar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC22safariControlTintColorSo7UIColorCSgv":{"name":"safariControlTintColor","abstract":"

    The color to tint the the control buttons on Safari View Controller the navigation bar and the toolbar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC9tintColorSo7UIColorCSgv":{"name":"tintColor","abstract":"

    The tint color for most buttons and actionable elements.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC15backgroundColorSo7UIColorCv":{"name":"backgroundColor","abstract":"

    The background color of all view controllers.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC7defaultACvZ":{"name":"default","abstract":"

    Returns an instance of the default appearance configuration.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC33checkoutButtonTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgv":{"name":"checkoutButtonTitleTextAttributes","abstract":"

    The attributes used for the checkout button’s title. Only used when checkoutButtonType is the default.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC29checkoutButtonTitleEdgeInsetsSC06UIEdgeH0VSgv":{"name":"checkoutButtonTitleEdgeInsets","abstract":"

    The insets from the edges of the checkout button to the title. Only used when checkoutButtonType the default.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC26checkoutButtonCornerRadius12CoreGraphics7CGFloatVv":{"name":"checkoutButtonCornerRadius","abstract":"

    The corner radius of the checkout button. Only used when checkoutButtonType the default.

    ","parent_name":"AppearanceConfiguration"},"Protocols/CheckoutViewControllerCardScanDelegate.html#/s:5Adyen38CheckoutViewControllerCardScanDelegateP010shouldShoweF6ButtonSbAA0bcD0C3for_tF":{"name":"shouldShowCardScanButton(for:)","abstract":"

    Invoked when the card payment method is selected.

    ","parent_name":"CheckoutViewControllerCardScanDelegate"},"Protocols/CheckoutViewControllerCardScanDelegate.html#/s:5Adyen38CheckoutViewControllerCardScanDelegateP04scanE0yAA0bcD0C3for_ySSSg6number_AH10expiryDateAH3cvctc10completiontF":{"name":"scanCard(for:completion:)","abstract":"

    Invoked when the card scan button is tapped.","parent_name":"CheckoutViewControllerCardScanDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_SS27requiresPaymentDataForTokeny10Foundation0I0Vc10completiontF":{"name":"checkoutViewController(_:requiresPaymentDataForToken:completion:)","abstract":"

    Invoked when the payment flow has started and payment data is requested from the merchant server.

    ","parent_name":"CheckoutViewControllerDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_y10Foundation3URLVc014requiresReturnH0tF":{"name":"checkoutViewController(_:requiresReturnURL:)","abstract":"

    Invoked when the redirection to a URL has been made. The given completion handler should be invoked when the user returns to the application through a URL.

    ","parent_name":"CheckoutViewControllerDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_AA20PaymentRequestResultO13didFinishWithtF":{"name":"checkoutViewController(_:didFinishWith:)","abstract":"

    Invoked when the payment flow has finished.

    ","parent_name":"CheckoutViewControllerDelegate"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerCAcA0bcD8Delegate_p8delegate_AA23AppearanceConfigurationC010appearanceH0tcfc":{"name":"init(delegate:appearanceConfiguration:)","abstract":"

    Initializes the Checkout View Controller.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerC8delegateAA0bcD8Delegate_pSgXwv":{"name":"delegate","abstract":"

    The delegate for payment processing.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerC16cardScanDelegateAA0bcd4CardfG0_pSgXwv":{"name":"cardScanDelegate","abstract":"

    The delegate for card scanning functionality for card payments.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html":{"name":"CheckoutViewController","abstract":"

    The starting point for Quick integration. Initialize and present this view controller in your app to start the payment flow. If you don’t embed the CheckoutViewController in a UINavigationController instance, a new one will be created automatically.

    "},"Protocols/CheckoutViewControllerDelegate.html":{"name":"CheckoutViewControllerDelegate","abstract":"

    The CheckoutViewControllerDelegate protocol defines the methods that a delegate of CheckoutViewController should implement to provide payment data and be informed of the payment flow progress.

    "},"Protocols/CheckoutViewControllerCardScanDelegate.html":{"name":"CheckoutViewControllerCardScanDelegate","abstract":"

    The CheckoutViewControllerCardScanDelegate protocol defines methods that the cardScanDelegate of CheckoutViewController should implement to enable card scanning functionality for card payment methods.

    "},"Classes/AppearanceConfiguration.html":{"name":"AppearanceConfiguration","abstract":"

    An object used to customize the appearance of the UI components provided by this SDK."},"UI.html":{"name":"UI"},"Payment.html":{"name":"Payment"},"Payment Request.html":{"name":"Payment Request"},"Payment Method.html":{"name":"Payment Method"},"Utilities.html":{"name":"Utilities"}} \ No newline at end of file +{"Other Typealiases.html#/s:5Adyen14DataCompletiona":{"name":"DataCompletion","abstract":"

    Undocumented

    "},"Other Typealiases.html#/s:5Adyen16MethodCompletiona":{"name":"MethodCompletion","abstract":"

    Undocumented

    "},"Other Typealiases.html#/s:5Adyen13URLCompletiona":{"name":"URLCompletion","abstract":"

    Undocumented

    "},"Other Typealiases.html#/s:5Adyen18CardScanCompletiona":{"name":"CardScanCompletion","abstract":"

    Undocumented

    "},"Other Typealiases.html#/s:5Adyen24PaymentDetailsCompletiona":{"name":"PaymentDetailsCompletion","abstract":"

    Undocumented

    "},"Classes/AmountFormatter.html#/s:5Adyen15AmountFormatterC9formattedSSSgSi6amount_SS12currencyCodetFZ":{"name":"formatted(amount:currencyCode:)","abstract":"

    Formats a string based on the provided amount and currency code.

    ","parent_name":"AmountFormatter"},"Classes/AmountFormatter.html":{"name":"AmountFormatter","abstract":"

    Convenience class to format a payment amount for display.

    "},"Classes/IBANTextField.html#/s:5Adyen13IBANTextFieldC4ibanSSSgvp":{"name":"iban","abstract":"

    The IBAN entered in the text field, or nil if no valid IBAN has been entered.

    ","parent_name":"IBANTextField"},"Classes/IBANValidator.html#/s:5Adyen13IBANValidatorC7isValidSbSSFZ":{"name":"isValid(_:)","abstract":"

    Checks if the given string is a valid IBAN value.

    ","parent_name":"IBANValidator"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV11countryCodeSSvp":{"name":"countryCode","abstract":"

    The code of the country to which the specifications apply.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV6lengthSivp":{"name":"length","abstract":"

    The length of a valid IBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV9structureSSvp":{"name":"structure","abstract":"

    The structure of the underlying BBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationV7exampleSSvp":{"name":"example","abstract":"

    An example of a valid IBAN.

    ","parent_name":"IBANSpecification"},"Structs/IBANSpecification.html#/s:5Adyen17IBANSpecificationVACSgSS14forCountryCode_tcfc":{"name":"init(forCountryCode:)","abstract":"

    Returns the IBAN specification for the country with the given code, or nil if none could be found.

    ","parent_name":"IBANSpecification"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_AA0B4TypeOSg4typeSS15formattedNumbertSS04cardJ0_SayAGG08acceptedB5TypestFZ":{"name":"validate(cardNumber:acceptedCardTypes:)","abstract":"

    Validates and formats the given card number, and detects the corresponding card type.

    ","parent_name":"CardValidator"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_SS13formattedDatetSS06expiryH0_SSSg9separatortFZ":{"name":"validate(expiryDate:separator:)","abstract":"

    Validates and formats the given expiration date.

    ","parent_name":"CardValidator"},"Classes/CardValidator.html#/s:5Adyen13CardValidatorC8validateSb7isValid_SS12formattedCvctSS3cvc_tFZ":{"name":"validate(cvc:)","abstract":"

    Validates and formats the given cvc.

    ","parent_name":"CardValidator"},"Enums/CardType.html#/s:5Adyen8CardTypeO5accelA2CmF":{"name":"accel","abstract":"

    Accel

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO020alphaBankBonusMasterB0A2CmF":{"name":"alphaBankBonusMasterCard","abstract":"

    Alpha Bank Bonus MasterCard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO18alphaBankBonusVISAA2CmF":{"name":"alphaBankBonusVISA","abstract":"

    Alpha Bank Bonus VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9argencardA2CmF":{"name":"argencard","abstract":"

    Argencard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO15americanExpressA2CmF":{"name":"americanExpress","abstract":"

    American Express

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4bcmcA2CmF":{"name":"bcmc","abstract":"

    BCMC

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO09bijenkorfB0A2CmF":{"name":"bijenkorfCard","abstract":"

    de Bijenkorf Card

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5cabalA2CmF":{"name":"cabal","abstract":"

    Cabal

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13carteBancaireA2CmF":{"name":"carteBancaire","abstract":"

    Carte Bancaire

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8cencosudA2CmF":{"name":"cencosud","abstract":"

    Cencosud

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO14chequeDejeneurA2CmF":{"name":"chequeDejeneur","abstract":"

    Chèque Déjeuner

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13chinaUnionPayA2CmF":{"name":"chinaUnionPay","abstract":"

    China UnionPay

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7codensaA2CmF":{"name":"codensa","abstract":"

    Codensa

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO13creditUnion24A2CmF":{"name":"creditUnion24","abstract":"

    Credit Union 24

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7dankortA2CmF":{"name":"dankort","abstract":"

    Dankort

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO11dankortVISAA2CmF":{"name":"dankortVISA","abstract":"

    Dankort VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO6dinersA2CmF":{"name":"diners","abstract":"

    Diners Club

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8discoverA2CmF":{"name":"discover","abstract":"

    Discover

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3eloA2CmF":{"name":"elo","abstract":"

    Elo

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5hiperA2CmF":{"name":"hiper","abstract":"

    Hiper

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9hipercardA2CmF":{"name":"hipercard","abstract":"

    Hipercard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3jcbA2CmF":{"name":"jcb","abstract":"

    JCB

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO11karenMillenA2CmF":{"name":"karenMillen","abstract":"

    KarenMillen

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3kcpA2CmF":{"name":"kcp","abstract":"

    Korea Cyber Payment

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7maestroA2CmF":{"name":"maestro","abstract":"

    Maestro

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9maestroUKA2CmF":{"name":"maestroUK","abstract":"

    Maestro UK

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO06masterB0A2CmF":{"name":"masterCard","abstract":"

    MasterCard

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3mirA2CmF":{"name":"mir","abstract":"

    Mir

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO7netplusA2CmF":{"name":"netplus","abstract":"

    Net+

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4nyceA2CmF":{"name":"nyce","abstract":"

    NYCE

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5oasisA2CmF":{"name":"oasis","abstract":"

    Oasis

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO5pulseA2CmF":{"name":"pulse","abstract":"

    Pulse

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4soloA2CmF":{"name":"solo","abstract":"

    Solo

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8shoppingA2CmF":{"name":"shopping","abstract":"

    Shopping

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4starA2CmF":{"name":"star","abstract":"

    STAR

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4uatpA2CmF":{"name":"uatp","abstract":"

    Universal Air Travel Plan

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO8unionPayA2CmF":{"name":"unionPay","abstract":"

    UnionPay

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO4visaA2CmF":{"name":"visa","abstract":"

    VISA

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO9warehouseA2CmF":{"name":"warehouse","abstract":"

    The Warehouse

    ","parent_name":"CardType"},"Enums/CardType.html#/s:5Adyen8CardTypeO3allSayACGvpZ":{"name":"all","abstract":"

    Array containing all card types in this enum.

    ","parent_name":"CardType"},"Enums/CardType.html":{"name":"CardType","abstract":"

    Enum containing most known types of credit and debit cards.

    "},"Classes/CardValidator.html":{"name":"CardValidator","abstract":"

    An object that provides static methods for validating and formatting card numbers, expiry dates, and cvc values, and detecting card types.

    "},"Structs/IBANSpecification.html":{"name":"IBANSpecification","abstract":"

    Contains the country-specific specifications for countries that adopt the IBAN standard.

    "},"Classes/IBANValidator.html":{"name":"IBANValidator","abstract":"

    An object that provides a static method to validate IBAN values.

    "},"Classes/IBANTextField.html":{"name":"IBANTextField","abstract":"

    A text field object designed for the entry of an IBAN value. This field formats and validates the IBAN in real time.

    "},"Structs/PayPalOneClickInfo.html#/s:5Adyen18PayPalOneClickInfoV12emailAddressSSvp":{"name":"emailAddress","abstract":"

    The email address of the PayPal account.

    ","parent_name":"PayPalOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV6numberSSvp":{"name":"number","abstract":"

    A shortened version of the card’s number.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV10holderNameSSvp":{"name":"holderName","abstract":"

    The card’s holder name.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV11expiryMonthSivp":{"name":"expiryMonth","abstract":"

    The card’s expiry month.

    ","parent_name":"CardOneClickInfo"},"Structs/CardOneClickInfo.html#/s:5Adyen16CardOneClickInfoV10expiryYearSivp":{"name":"expiryYear","abstract":"

    The card’s expiry year.

    ","parent_name":"CardOneClickInfo"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC10identifierSSvp":{"name":"identifier","abstract":"

    Identifier of an item. Upon selection, the value of this property should be assigned to the value property of the InputDetail object.

    ","parent_name":"InputSelectItem"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC4nameSSvp":{"name":"name","abstract":"

    Display name of an item.

    ","parent_name":"InputSelectItem"},"Classes/InputSelectItem.html#/s:5Adyen15InputSelectItemC8imageURL10Foundation0F0VSgvp":{"name":"imageURL","abstract":"

    Optional URL for the icon of an item.

    ","parent_name":"InputSelectItem"},"Enums/InputType.html#/s:5Adyen9InputTypeO4textA2CmF":{"name":"text","abstract":"

    Text input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO7booleanA2CmF":{"name":"boolean","abstract":"

    Boolean input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO6selectA2CmF":{"name":"select","abstract":"

    Input type should be selected from the given list.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO4ibanA2CmF":{"name":"iban","abstract":"

    IBAN input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO3cvcA2CmF":{"name":"cvc","abstract":"

    CVC input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO9cardTokenACSb11cvcOptional_tcACmF":{"name":"cardToken","abstract":"

    Card token input type. By default, cvcOptional is false.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO13applePayTokenA2CmF":{"name":"applePayToken","abstract":"

    Apple Pay token input type.

    ","parent_name":"InputType"},"Enums/InputType.html#/s:5Adyen9InputTypeO7addressA2CmF":{"name":"address","abstract":"

    Address input type.

    ","parent_name":"InputType"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC4typeAA0B4TypeOvp":{"name":"type","abstract":"

    The detail type. See InputType.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC8optionalSbvp":{"name":"optional","abstract":"

    Whether or not the detail is optional.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC5itemsSayAA0B10SelectItemCGSgvp":{"name":"items","abstract":"

    An array of InputSelectItem. Only be available if type is .select.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC12inputDetailsSayACGSgvp":{"name":"inputDetails","abstract":"

    An array of input details nested in the receiver.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC11stringValueSSSgvp":{"name":"stringValue","abstract":"

    Detail string value.

    ","parent_name":"InputDetail"},"Classes/InputDetail.html#/s:5Adyen11InputDetailC9boolValueSbSgvp":{"name":"boolValue","abstract":"

    Detail bool value.

    ","parent_name":"InputDetail"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV6streetSSvp":{"name":"street","abstract":"

    The street name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV17houseNumberOrNameSSvp":{"name":"houseNumberOrName","abstract":"

    The house number or name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV10postalCodeSSvp":{"name":"postalCode","abstract":"

    The postal code.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV4citySSvp":{"name":"city","abstract":"

    The city name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV15stateOrProvinceSSSgvp":{"name":"stateOrProvince","abstract":"

    An optional state or province name.

    ","parent_name":"Address"},"Classes/PaymentDetails/Address.html#/s:5Adyen14PaymentDetailsC7AddressV11countryCodeSSvp":{"name":"countryCode","abstract":"

    The ISO country code.

    ","parent_name":"Address"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC4listSayAA11InputDetailCGvp":{"name":"list","abstract":"

    List of InputDetail.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9setDetailySS5value_SS6forKeytF":{"name":"setDetail(value:forKey:)","abstract":"

    Update the detail defined by a given key with the string value provided.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9setDetailySbSg5value_SS6forKeytF":{"name":"setDetail(value:forKey:)","abstract":"

    Update the detail defined by a given key with the bool value provided.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC12fillApplePayySS5token_tF":{"name":"fillApplePay(token:)","abstract":"

    Fills details for the Apple Pay transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS5token_SbSg05storeC0tF":{"name":"fillCard(token:storeDetails:)","abstract":"

    Fills details for the card transaction with a token.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS3cvc_tF":{"name":"fillCard(cvc:)","abstract":"

    Fills details for the card transaction with CVC.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillCardySS25installmentPlanIdentifier_tF":{"name":"fillCard(installmentPlanIdentifier:)","abstract":"

    Fills installments selection for the card transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC9fillIdealySS16issuerIdentifier_tF":{"name":"fillIdeal(issuerIdentifier:)","abstract":"

    Fills details for the iDEAL transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC8fillSepaySS4name_SS4ibantF":{"name":"fillSepa(name:iban:)","abstract":"

    Fill details for the SEPA transaction.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails/Address.html":{"name":"Address","abstract":"

    An object that represents an address requested in PaymentDetails.

    ","parent_name":"PaymentDetails"},"Classes/PaymentDetails.html#/s:5Adyen14PaymentDetailsC18fillBillingAddressyAC0F0VF":{"name":"fillBillingAddress(_:)","abstract":"

    Fills the billing address for a transaction that requires AVS.

    ","parent_name":"PaymentDetails"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC4nameSSvp":{"name":"name","abstract":"

    The name of the payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC4typeSSvp":{"name":"type","abstract":"

    The payment method type.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC7logoURL10Foundation0E0VSgvp":{"name":"logoURL","abstract":"

    A URL to the logo of the payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC7membersSayACGSgvp":{"name":"members","abstract":"

    Members of the payment method (only applicable when the receiver is a group).

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC10isOneClickSbvp":{"name":"isOneClick","abstract":"

    A Boolean value indicating whether the payment method is a one-click payment method, which means that it can be easily completed by the user.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC12oneClickInfoAA03OneeF0_pSgvp":{"name":"oneClickInfo","abstract":"

    The information that was stored for this payment payment method, or nil if this is not a one-click payment method.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC12inputDetailsSayAA11InputDetailCGSgvp":{"name":"inputDetails","abstract":"

    The input details that should be filled in to complete the payment.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html#/s:5Adyen13PaymentMethodC8oneClickSbvp":{"name":"oneClick","abstract":"

    A Boolean value indicating whether the payment method is a one-click payment method, which means that it can be easily completed by the user.

    ","parent_name":"PaymentMethod"},"Classes/PaymentMethod.html":{"name":"PaymentMethod","abstract":"

    An object representing a payment method used to complete a payment.

    "},"Classes/PaymentDetails.html":{"name":"PaymentDetails","abstract":"

    An object that holds the list of InputDetail items required for to process a transaction.

    "},"Classes/InputDetail.html":{"name":"InputDetail","abstract":"

    An object describing a payment detail required to process the transaction."},"Enums/InputType.html":{"name":"InputType","abstract":"

    Defines types of payment details.

    "},"Classes/InputSelectItem.html":{"name":"InputSelectItem","abstract":"

    An object representing a selectable item used in InputDetail with select type.

    "},"Payment Method.html#/s:5Adyen12OneClickInfoP":{"name":"OneClickInfo","abstract":"

    Instances conforming to this protocol provide access to the information that was stored for a payment method.

    "},"Structs/CardOneClickInfo.html":{"name":"CardOneClickInfo","abstract":"

    Object that contains stored card info used to perform previous card payments.

    "},"Structs/PayPalOneClickInfo.html":{"name":"PayPalOneClickInfo","abstract":"

    Object that contains stored info used to perform previous PayPal payments.

    "},"Enums/Error.html#/s:5Adyen5ErrorO06serverB0ACSScACmF":{"name":"serverError","abstract":"

    Error returned from server.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO07networkB0ACsAB_pcACmF":{"name":"networkError","abstract":"

    Network error.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO14unexpectedDataA2CmF":{"name":"unexpectedData","abstract":"

    Unexpected data or data format.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO010unexpectedB0A2CmF":{"name":"unexpectedError","abstract":"

    Unexpected error.

    ","parent_name":"Error"},"Enums/Error.html#/s:5Adyen5ErrorO9cancelledA2CmF":{"name":"cancelled","abstract":"

    Payment was cancelled.

    ","parent_name":"Error"},"Enums/Error.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"Error"},"Enums/PaymentRequestResult.html#/s:5Adyen20PaymentRequestResultO7paymentAcA0B0CcACmF":{"name":"payment","abstract":"

    In case of success a Payment object will be returned.

    ","parent_name":"PaymentRequestResult"},"Enums/PaymentRequestResult.html#/s:5Adyen20PaymentRequestResultO5errorAcA5ErrorOcACmF":{"name":"error","abstract":"

    In case of failure an Error will be returned.

    ","parent_name":"PaymentRequestResult"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_SS08requiresB12DataForTokeny10Foundation0G0Vc10completiontF":{"name":"paymentRequest(_:requiresPaymentDataForToken:completion:)","abstract":"

    Given the PaymentRequest that started the payment flow and token, waits for data from merchant server to be passed via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_SayAA0B6MethodCGSg08requiresbF4FromAI9availableyAHc10completiontF":{"name":"paymentRequest(_:requiresPaymentMethodFrom:available:completion:)","abstract":"

    Given a list of PaymentMethod (available and preferred) waits for the selection via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_10Foundation3URLV21requiresReturnURLFromyAIc10completiontF":{"name":"paymentRequest(_:requiresReturnURLFrom:completion:)","abstract":"

    This method is called when a URL redirection needs to be executed.","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_AA0B7DetailsC08requiresbF0yAHc10completiontF":{"name":"paymentRequest(_:requiresPaymentDetails:completion:)","abstract":"

    This method is called when input is needed for completing the transation. The filled PaymentDetails should be sent via completion.

    ","parent_name":"PaymentRequestDelegate"},"Protocols/PaymentRequestDelegate.html#/s:5Adyen22PaymentRequestDelegateP07paymentC0yAA0bC0C_AA0bC6ResultO13didFinishWithtF":{"name":"paymentRequest(_:didFinishWith:)","abstract":"

    This method is called when the payment flow is finished.

    ","parent_name":"PaymentRequestDelegate"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestCAcA0bC8Delegate_p8delegate_tcfc":{"name":"init(delegate:)","abstract":"

    Creates a PaymentRequest object and initialises it with a provided delegate.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC8delegateAA0bC8Delegate_pSgXwvp":{"name":"delegate","abstract":"

    Delegate for controlling the payment flow. See PaymentRequestDelegate.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC13paymentMethodAA0bE0CSgvp":{"name":"paymentMethod","abstract":"

    The selected payment method.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC6amountSiSgvp":{"name":"amount","abstract":"

    Amount to be charged.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC8currencySSSgvp":{"name":"currency","abstract":"

    Payment currency.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC9referenceSSSgvp":{"name":"reference","abstract":"

    Payment reference.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC11countryCodeSSSgvp":{"name":"countryCode","abstract":"

    Payment country code.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC13shopperLocaleSSSgvp":{"name":"shopperLocale","abstract":"

    Shopper locale.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC16shopperReferenceSSSgvp":{"name":"shopperReference","abstract":"

    Shopper reference.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC14generationTimeSSSgvp":{"name":"generationTime","abstract":"

    Generation time. Used for generating a token for card payments.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC9publicKeySSSgvp":{"name":"publicKey","abstract":"

    Public key. Used for generating a token for card payments.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC5startyyF":{"name":"start()","abstract":"

    Starts the payment request.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC15deletePreferredyAA0B6MethodC07paymentF0_ySb_AA5ErrorOSgtc10completiontF":{"name":"deletePreferred(paymentMethod:completion:)","abstract":"

    Permanently deletes payment method from shopper’s preferred payment options.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html#/s:5Adyen14PaymentRequestC6cancelyyF":{"name":"cancel()","abstract":"

    Cancels the payment request.

    ","parent_name":"PaymentRequest"},"Classes/PaymentRequest.html":{"name":"PaymentRequest","abstract":"

    The starting point for Custom Integration.

    "},"Protocols/PaymentRequestDelegate.html":{"name":"PaymentRequestDelegate","abstract":"

    The payment request delegate. Used for Custom integration comunication. All delegate methods are invoked on the main thread.

    "},"Enums/PaymentRequestResult.html":{"name":"PaymentRequestResult","abstract":"

    Result of a payment request.

    "},"Enums/Error.html":{"name":"Error","abstract":"

    Error type.

    "},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO8receivedA2CmF":{"name":"received","abstract":"

    Payment pending.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO10authorisedA2CmF":{"name":"authorised","abstract":"

    Payment authorised.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO5errorA2CmF":{"name":"error","abstract":"

    Payment error.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO7refusedA2CmF":{"name":"refused","abstract":"

    Payment refused.

    ","parent_name":"PaymentStatus"},"Enums/PaymentStatus.html#/s:5Adyen13PaymentStatusO9cancelledA2CmF":{"name":"cancelled","abstract":"

    Payment cancelled.

    ","parent_name":"PaymentStatus"},"Classes/Payment.html#/s:5Adyen7PaymentC6statusAA0B6StatusOvp":{"name":"status","abstract":"

    The status of the payment.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC6methodAA0B6MethodCvp":{"name":"method","abstract":"

    The method that was used to complete the payment.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC7payloadSSvp":{"name":"payload","abstract":"

    The payload as returned from the server.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC6amountSivp":{"name":"amount","abstract":"

    The amount of the payment, in minor units.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC12currencyCodeSSvp":{"name":"currencyCode","abstract":"

    The code of the currency for the payment amount.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC17merchantReferenceSSvp":{"name":"merchantReference","abstract":"

    The reference of the merchant.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC16shopperReferenceSSSgvp":{"name":"shopperReference","abstract":"

    The reference of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC18shopperCountryCodeSSvp":{"name":"shopperCountryCode","abstract":"

    The country code of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html#/s:5Adyen7PaymentC23shopperLocaleIdentifierSSSgvp":{"name":"shopperLocaleIdentifier","abstract":"

    The locale identifier of the shopper.

    ","parent_name":"Payment"},"Classes/Payment.html":{"name":"Payment","abstract":"

    An object that represents a payment that has been completed by the user. The result of the payment can be retrieved via the status property.

    "},"Enums/PaymentStatus.html":{"name":"PaymentStatus","abstract":"

    Payment statuses.

    "},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO6alwaysA2EmF":{"name":"always","abstract":"

    Always display a large title.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO4rootA2EmF":{"name":"root","abstract":"

    Only display a large title for the root view controller.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html#/s:5Adyen23AppearanceConfigurationC34NavigationBarLargeTitleDisplayModeO5neverA2EmF":{"name":"never","abstract":"

    Never display a large title.

    ","parent_name":"NavigationBarLargeTitleDisplayMode"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationCACycfc":{"name":"init()","abstract":"

    Initializes the appearance configuration.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC23preferredStatusBarStyleSC08UIStatusfG0Ovp":{"name":"preferredStatusBarStyle","abstract":"

    The preferred status bar style.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC32navigationBarTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgvp":{"name":"navigationBarTitleTextAttributes","abstract":"

    The attributes used for the navigation bar’s title.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC37navigationBarLargeTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgvp":{"name":"navigationBarLargeTitleTextAttributes","abstract":"

    The attributes used for the navigation bar’s large title. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration/NavigationBarLargeTitleDisplayMode.html":{"name":"NavigationBarLargeTitleDisplayMode","abstract":"

    Display modes for the large title in a navigation bar.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC34navigationBarLargeTitleDisplayModeAC010NavigationefghI0Ovp":{"name":"navigationBarLargeTitleDisplayMode","abstract":"

    The display mode for the large title in the navigation bar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC22navigationBarTintColorSo7UIColorCSgvp":{"name":"navigationBarTintColor","abstract":"

    The navigation bar’s tint color.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC28navigationBarBackgroundColorSo7UIColorCSgvp":{"name":"navigationBarBackgroundColor","abstract":"

    The navigation bar’s background color.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC26isNavigationBarTranslucentSbvp":{"name":"isNavigationBarTranslucent","abstract":"

    A Boolean value indicating whether the navigation bar is translucent.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC30navigationBarCancelButtonImageSo7UIImageCSgvp":{"name":"navigationBarCancelButtonImage","abstract":"

    The image of the cancel button in the navigation bar, or nil if a title should be used instead.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC18checkoutButtonTypeSo8UIButtonCmvp":{"name":"checkoutButtonType","abstract":"

    The class to use for the checkout button.","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC19checkoutButtonTitleSSSgvp":{"name":"checkoutButtonTitle","abstract":"

    The title of the checkout button.","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC18safariBarTintColorSo7UIColorCSgvp":{"name":"safariBarTintColor","abstract":"

    The color to tint the background of the Safari View Controller navigation bar and toolbar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC22safariControlTintColorSo7UIColorCSgvp":{"name":"safariControlTintColor","abstract":"

    The color to tint the the control buttons on Safari View Controller the navigation bar and the toolbar. Only has an effect on iOS 11 and higher.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC9tintColorSo7UIColorCSgvp":{"name":"tintColor","abstract":"

    The tint color for most buttons and actionable elements.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC15backgroundColorSo7UIColorCvp":{"name":"backgroundColor","abstract":"

    The background color of all view controllers.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC7defaultACvpZ":{"name":"default","abstract":"

    Returns an instance of the default appearance configuration.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC33checkoutButtonTitleTextAttributess10DictionaryVySC21NSAttributedStringKeyVypGSgvp":{"name":"checkoutButtonTitleTextAttributes","abstract":"

    The attributes used for the checkout button’s title. Only used when checkoutButtonType is the default.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC29checkoutButtonTitleEdgeInsetsSC06UIEdgeH0VSgvp":{"name":"checkoutButtonTitleEdgeInsets","abstract":"

    The insets from the edges of the checkout button to the title. Only used when checkoutButtonType the default.

    ","parent_name":"AppearanceConfiguration"},"Classes/AppearanceConfiguration.html#/s:5Adyen23AppearanceConfigurationC26checkoutButtonCornerRadius12CoreGraphics7CGFloatVvp":{"name":"checkoutButtonCornerRadius","abstract":"

    The corner radius of the checkout button. Only used when checkoutButtonType the default.

    ","parent_name":"AppearanceConfiguration"},"Protocols/CheckoutViewControllerCardScanDelegate.html#/s:5Adyen38CheckoutViewControllerCardScanDelegateP010shouldShoweF6ButtonSbAA0bcD0C3for_tF":{"name":"shouldShowCardScanButton(for:)","abstract":"

    Invoked when the card payment method is selected.

    ","parent_name":"CheckoutViewControllerCardScanDelegate"},"Protocols/CheckoutViewControllerCardScanDelegate.html#/s:5Adyen38CheckoutViewControllerCardScanDelegateP04scanE0yAA0bcD0C3for_ySSSg6number_AH10expiryDateAH3cvct_tc10completiontF":{"name":"scanCard(for:completion:)","abstract":"

    Invoked when the card scan button is tapped.","parent_name":"CheckoutViewControllerCardScanDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_SS27requiresPaymentDataForTokeny10Foundation0I0Vc10completiontF":{"name":"checkoutViewController(_:requiresPaymentDataForToken:completion:)","abstract":"

    Invoked when the payment flow has started and payment data is requested from the merchant server.

    ","parent_name":"CheckoutViewControllerDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_y10Foundation3URLVc014requiresReturnH0tF":{"name":"checkoutViewController(_:requiresReturnURL:)","abstract":"

    Invoked when the redirection to a URL has been made. The given completion handler should be invoked when the user returns to the application through a URL.

    ","parent_name":"CheckoutViewControllerDelegate"},"Protocols/CheckoutViewControllerDelegate.html#/s:5Adyen30CheckoutViewControllerDelegateP08checkoutcD0yAA0bcD0C_AA20PaymentRequestResultO13didFinishWithtF":{"name":"checkoutViewController(_:didFinishWith:)","abstract":"

    Invoked when the payment flow has finished.

    ","parent_name":"CheckoutViewControllerDelegate"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerCAcA0bcD8Delegate_p8delegate_AA23AppearanceConfigurationC010appearanceH0tcfc":{"name":"init(delegate:appearanceConfiguration:)","abstract":"

    Initializes the Checkout View Controller.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerC8delegateAA0bcD8Delegate_pSgXwvp":{"name":"delegate","abstract":"

    The delegate for payment processing.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html#/s:5Adyen22CheckoutViewControllerC16cardScanDelegateAA0bcd4CardfG0_pSgXwvp":{"name":"cardScanDelegate","abstract":"

    The delegate for card scanning functionality for card payments.

    ","parent_name":"CheckoutViewController"},"Classes/CheckoutViewController.html":{"name":"CheckoutViewController","abstract":"

    The starting point for Quick integration. Initialize and present this view controller in your app to start the payment flow. If you don’t embed the CheckoutViewController in a UINavigationController instance, a new one will be created automatically.

    "},"Protocols/CheckoutViewControllerDelegate.html":{"name":"CheckoutViewControllerDelegate","abstract":"

    The CheckoutViewControllerDelegate protocol defines the methods that a delegate of CheckoutViewController should implement to provide payment data and be informed of the payment flow progress.

    "},"Protocols/CheckoutViewControllerCardScanDelegate.html":{"name":"CheckoutViewControllerCardScanDelegate","abstract":"

    The CheckoutViewControllerCardScanDelegate protocol defines methods that the cardScanDelegate of CheckoutViewController should implement to enable card scanning functionality for card payment methods.

    "},"Classes/AppearanceConfiguration.html":{"name":"AppearanceConfiguration","abstract":"

    An object used to customize the appearance of the UI components provided by this SDK."},"UI.html":{"name":"UI"},"Payment.html":{"name":"Payment"},"Payment Request.html":{"name":"Payment Request"},"Payment Method.html":{"name":"Payment Method"},"Utilities.html":{"name":"Utilities"},"Other Classes.html":{"name":"Other Classes","abstract":"

    The following classes are available globally.

    "},"Other Typealiases.html":{"name":"Other Type Aliases","abstract":"

    The following type aliases are available globally.

    "}} \ No newline at end of file diff --git a/Docs/undocumented.json b/Docs/undocumented.json index 8f64b1d983..44ee5e3cd9 100644 --- a/Docs/undocumented.json +++ b/Docs/undocumented.json @@ -1,6 +1,47 @@ { "warnings": [ - + { + "file": "/Users/janina/Desktop/adyen-checkout-ios/Adyen/Core/PaymentRequest.swift", + "line": 9, + "symbol": "DataCompletion", + "symbol_kind": "source.lang.swift.decl.typealias", + "warning": "undocumented" + }, + { + "file": "/Users/janina/Desktop/adyen-checkout-ios/Adyen/Core/PaymentRequest.swift", + "line": 10, + "symbol": "MethodCompletion", + "symbol_kind": "source.lang.swift.decl.typealias", + "warning": "undocumented" + }, + { + "file": "/Users/janina/Desktop/adyen-checkout-ios/Adyen/Core/PaymentRequest.swift", + "line": 11, + "symbol": "URLCompletion", + "symbol_kind": "source.lang.swift.decl.typealias", + "warning": "undocumented" + }, + { + "file": "/Users/janina/Desktop/adyen-checkout-ios/Adyen/Core/PaymentRequest.swift", + "line": 12, + "symbol": "CardScanCompletion", + "symbol_kind": "source.lang.swift.decl.typealias", + "warning": "undocumented" + }, + { + "file": "/Users/janina/Desktop/adyen-checkout-ios/Adyen/Core/PaymentRequest.swift", + "line": 13, + "symbol": "PaymentDetailsCompletion", + "symbol_kind": "source.lang.swift.decl.typealias", + "warning": "undocumented" + }, + { + "file": "/Users/janina/Desktop/adyen-checkout-ios/Adyen/Plugins/ApplePay/ApplePayPlugin.swift", + "line": null, + "symbol": "ApplePayPlugin", + "symbol_kind": "source.lang.swift.decl.extension", + "warning": "undocumented" + } ], "source_directory": "/Users/janina/Desktop/adyen-checkout-ios" } \ No newline at end of file diff --git a/Podfile b/Podfile index a57a0d7bf1..6823be6f32 100644 --- a/Podfile +++ b/Podfile @@ -10,7 +10,7 @@ target 'Adyen' do shared_pods - pod 'SwiftLint', '~> 0.20.0' + pod 'SwiftLint', '~> 0.25.0' pod 'SwiftFormat/CLI', '~> 0.28.6' target 'AdyenTests' do