From 5aad4a2a0b8498ebff1e8076bf6cc20e0ef13002 Mon Sep 17 00:00:00 2001 From: braintreeps Date: Tue, 30 Jul 2024 20:41:07 +0000 Subject: [PATCH] Publish 6.23.2 docs to github pages --- 6.23.2/Classes.html | 2221 +++++++++++++++++ 6.23.2/Classes/BTAPIClient.html | 673 +++++ 6.23.2/Classes/BTAmericanExpressClient.html | 564 +++++ .../BTAmericanExpressRewardsBalance.html | 677 +++++ 6.23.2/Classes/BTAppContextSwitcher.html | 672 +++++ 6.23.2/Classes/BTApplePayCardNonce.html | 467 ++++ 6.23.2/Classes/BTApplePayClient.html | 727 ++++++ 6.23.2/Classes/BTAuthenticationInsight.html | 478 ++++ 6.23.2/Classes/BTBinData.html | 738 ++++++ 6.23.2/Classes/BTCard.html | 1096 ++++++++ 6.23.2/Classes/BTCardClient.html | 633 +++++ 6.23.2/Classes/BTCardNonce.html | 747 ++++++ 6.23.2/Classes/BTCardRequest.html | 516 ++++ 6.23.2/Classes/BTDataCollector.html | 659 +++++ 6.23.2/Classes/BTLocalPaymentClient.html | 630 +++++ 6.23.2/Classes/BTLocalPaymentRequest.html | 869 +++++++ 6.23.2/Classes/BTLocalPaymentResult.html | 736 ++++++ 6.23.2/Classes/BTPayPalAccountNonce.html | 709 ++++++ 6.23.2/Classes/BTPayPalCheckoutRequest.html | 795 ++++++ 6.23.2/Classes/BTPayPalClient.html | 864 +++++++ 6.23.2/Classes/BTPayPalCreditFinancing.html | 617 +++++ .../BTPayPalCreditFinancingAmount.html | 497 ++++ 6.23.2/Classes/BTPayPalLineItem.html | 875 +++++++ 6.23.2/Classes/BTPayPalMessagingView.html | 811 ++++++ .../BTPayPalMessagingView/Representable.html | 539 ++++ .../BTPayPalNativeCheckoutAccountNonce.html | 687 +++++ .../Classes/BTPayPalNativeCheckoutClient.html | 641 +++++ .../BTPayPalNativeCheckoutRequest.html | 578 +++++ .../Classes/BTPayPalNativeVaultRequest.html | 511 ++++ 6.23.2/Classes/BTPayPalRequest.html | 764 ++++++ 6.23.2/Classes/BTPayPalVaultBaseRequest.html | 538 ++++ 6.23.2/Classes/BTPayPalVaultRequest.html | 665 +++++ 6.23.2/Classes/BTPaymentMethodNonce.html | 733 ++++++ .../Classes/BTPaymentMethodNonceParser.html | 655 +++++ 6.23.2/Classes/BTPostalAddress.html | 648 +++++ 6.23.2/Classes/BTSEPADirectDebitClient.html | 635 +++++ 6.23.2/Classes/BTSEPADirectDebitNonce.html | 527 ++++ 6.23.2/Classes/BTSEPADirectDebitRequest.html | 780 ++++++ 6.23.2/Classes/BTShopperInsightsClient.html | 692 +++++ .../BTThreeDSecureAdditionalInformation.html | 1769 +++++++++++++ 6.23.2/Classes/BTThreeDSecureClient.html | 854 +++++++ 6.23.2/Classes/BTThreeDSecureInfo.html | 1004 ++++++++ 6.23.2/Classes/BTThreeDSecureLookup.html | 688 +++++ .../Classes/BTThreeDSecurePostalAddress.html | 752 ++++++ 6.23.2/Classes/BTThreeDSecureRenderType.html | 645 +++++ 6.23.2/Classes/BTThreeDSecureRequest.html | 1047 ++++++++ 6.23.2/Classes/BTThreeDSecureResult.html | 536 ++++ .../BTThreeDSecureV2BaseCustomization.html | 536 ++++ .../BTThreeDSecureV2ButtonCustomization.html | 548 ++++ .../BTThreeDSecureV2LabelCustomization.html | 578 +++++ .../BTThreeDSecureV2TextBoxCustomization.html | 578 +++++ .../BTThreeDSecureV2ToolbarCustomization.html | 578 +++++ .../BTThreeDSecureV2UICustomization.html | 611 +++++ 6.23.2/Classes/BTVenmoAccountNonce.html | 686 +++++ 6.23.2/Classes/BTVenmoClient.html | 697 ++++++ 6.23.2/Classes/BTVenmoLineItem.html | 785 ++++++ 6.23.2/Classes/BTVenmoRequest.html | 951 +++++++ 6.23.2/Enums.html | 1753 +++++++++++++ 6.23.2/Enums/BTAPIClientError.html | 655 +++++ 6.23.2/Enums/BTAmericanExpressError.html | 622 +++++ 6.23.2/Enums/BTAnalyticsServiceError.html | 556 +++++ 6.23.2/Enums/BTApplePayError.html | 655 +++++ 6.23.2/Enums/BTCardError.html | 729 ++++++ 6.23.2/Enums/BTCardNetwork.html | 887 +++++++ 6.23.2/Enums/BTClientTokenError.html | 688 +++++ 6.23.2/Enums/BTDataCollectorError.html | 622 +++++ 6.23.2/Enums/BTHTTPError.html | 994 ++++++++ 6.23.2/Enums/BTJSONError.html | 621 +++++ 6.23.2/Enums/BTLocalPaymentError.html | 928 +++++++ 6.23.2/Enums/BTPayPalError.html | 1027 ++++++++ 6.23.2/Enums/BTPayPalLineItemKind.html | 497 ++++ 6.23.2/Enums/BTPayPalLineItemUPCType.html | 677 +++++ 6.23.2/Enums/BTPayPalLocaleCode.html | 1249 +++++++++ 6.23.2/Enums/BTPayPalMessagingColor.html | 561 +++++ 6.23.2/Enums/BTPayPalMessagingError.html | 594 +++++ 6.23.2/Enums/BTPayPalMessagingLogoType.html | 561 +++++ 6.23.2/Enums/BTPayPalMessagingOfferType.html | 561 +++++ 6.23.2/Enums/BTPayPalMessagingPageType.html | 621 +++++ .../Enums/BTPayPalMessagingTextAlignment.html | 531 ++++ 6.23.2/Enums/BTPayPalNativeCheckoutError.html | 994 ++++++++ 6.23.2/Enums/BTPayPalPaymentType.html | 496 ++++ 6.23.2/Enums/BTPayPalRequestIntent.html | 565 +++++ .../Enums/BTPayPalRequestLandingPageType.html | 527 ++++ 6.23.2/Enums/BTPayPalRequestUserAction.html | 504 ++++ 6.23.2/Enums/BTSEPADirectDebitError.html | 820 ++++++ .../Enums/BTSEPADirectDebitMandateType.html | 495 ++++ 6.23.2/Enums/BTShopperInsightsError.html | 588 +++++ 6.23.2/Enums/BTThreeDSecureAccountType.html | 527 ++++ .../Enums/BTThreeDSecureCardAddChallenge.html | 527 ++++ 6.23.2/Enums/BTThreeDSecureError.html | 894 +++++++ .../BTThreeDSecureRequestedExemptionType.html | 587 +++++ .../Enums/BTThreeDSecureShippingMethod.html | 647 +++++ 6.23.2/Enums/BTThreeDSecureUIType.html | 527 ++++ 6.23.2/Enums/BTThreeDSecureV2ButtonType.html | 587 +++++ 6.23.2/Enums/BTVenmoAppSwitchError.html | 556 +++++ 6.23.2/Enums/BTVenmoError.html | 919 +++++++ 6.23.2/Enums/BTVenmoLineItemKind.html | 497 ++++ 6.23.2/Enums/BTVenmoPaymentMethodUsage.html | 497 ++++ 6.23.2/Enums/TokenizationKeyError.html | 556 +++++ 6.23.2/Extensions.html | 493 ++++ .../Extensions/BTThreeDSecureV2Provider.html | 468 ++++ 6.23.2/Protocols.html | 523 ++++ .../BTLocalPaymentRequestDelegate.html | 469 ++++ .../Protocols/BTPayPalMessagingDelegate.html | 591 +++++ .../BTThreeDSecureRequestDelegate.html | 469 ++++ 6.23.2/Structs.html | 570 +++++ 6.23.2/Structs/BTPayPalMessagingRequest.html | 572 +++++ 6.23.2/Structs/BTShopperInsightsRequest.html | 624 +++++ 6.23.2/Structs/BTShopperInsightsResult.html | 531 ++++ 6.23.2/Structs/Phone.html | 507 ++++ 6.23.2/badge.svg | 28 + 6.23.2/css/highlight.css | 202 ++ 6.23.2/css/jazzy.css | 405 +++ .../Braintree.docset/Contents/Info.plist | 20 + .../Contents/Resources/Documents/Classes.html | 2221 +++++++++++++++++ .../Documents/Classes/BTAPIClient.html | 673 +++++ .../Classes/BTAmericanExpressClient.html | 564 +++++ .../BTAmericanExpressRewardsBalance.html | 677 +++++ .../Classes/BTAppContextSwitcher.html | 672 +++++ .../Classes/BTApplePayCardNonce.html | 467 ++++ .../Documents/Classes/BTApplePayClient.html | 727 ++++++ .../Classes/BTAuthenticationInsight.html | 478 ++++ .../Documents/Classes/BTBinData.html | 738 ++++++ .../Resources/Documents/Classes/BTCard.html | 1096 ++++++++ .../Documents/Classes/BTCardClient.html | 633 +++++ .../Documents/Classes/BTCardNonce.html | 747 ++++++ .../Documents/Classes/BTCardRequest.html | 516 ++++ .../Documents/Classes/BTDataCollector.html | 659 +++++ .../Classes/BTLocalPaymentClient.html | 630 +++++ .../Classes/BTLocalPaymentRequest.html | 869 +++++++ .../Classes/BTLocalPaymentResult.html | 736 ++++++ .../Classes/BTPayPalAccountNonce.html | 709 ++++++ .../Classes/BTPayPalCheckoutRequest.html | 795 ++++++ .../Documents/Classes/BTPayPalClient.html | 864 +++++++ .../Classes/BTPayPalCreditFinancing.html | 617 +++++ .../BTPayPalCreditFinancingAmount.html | 497 ++++ .../Documents/Classes/BTPayPalLineItem.html | 875 +++++++ .../Classes/BTPayPalMessagingView.html | 811 ++++++ .../BTPayPalMessagingView/Representable.html | 539 ++++ .../BTPayPalNativeCheckoutAccountNonce.html | 687 +++++ .../Classes/BTPayPalNativeCheckoutClient.html | 641 +++++ .../BTPayPalNativeCheckoutRequest.html | 578 +++++ .../Classes/BTPayPalNativeVaultRequest.html | 511 ++++ .../Documents/Classes/BTPayPalRequest.html | 764 ++++++ .../Classes/BTPayPalVaultBaseRequest.html | 538 ++++ .../Classes/BTPayPalVaultRequest.html | 665 +++++ .../Classes/BTPaymentMethodNonce.html | 733 ++++++ .../Classes/BTPaymentMethodNonceParser.html | 655 +++++ .../Documents/Classes/BTPostalAddress.html | 648 +++++ .../Classes/BTSEPADirectDebitClient.html | 635 +++++ .../Classes/BTSEPADirectDebitNonce.html | 527 ++++ .../Classes/BTSEPADirectDebitRequest.html | 780 ++++++ .../Classes/BTShopperInsightsClient.html | 692 +++++ .../BTThreeDSecureAdditionalInformation.html | 1769 +++++++++++++ .../Classes/BTThreeDSecureClient.html | 854 +++++++ .../Documents/Classes/BTThreeDSecureInfo.html | 1004 ++++++++ .../Classes/BTThreeDSecureLookup.html | 688 +++++ .../Classes/BTThreeDSecurePostalAddress.html | 752 ++++++ .../Classes/BTThreeDSecureRenderType.html | 645 +++++ .../Classes/BTThreeDSecureRequest.html | 1047 ++++++++ .../Classes/BTThreeDSecureResult.html | 536 ++++ .../BTThreeDSecureV2BaseCustomization.html | 536 ++++ .../BTThreeDSecureV2ButtonCustomization.html | 548 ++++ .../BTThreeDSecureV2LabelCustomization.html | 578 +++++ .../BTThreeDSecureV2TextBoxCustomization.html | 578 +++++ .../BTThreeDSecureV2ToolbarCustomization.html | 578 +++++ .../BTThreeDSecureV2UICustomization.html | 611 +++++ .../Classes/BTVenmoAccountNonce.html | 686 +++++ .../Documents/Classes/BTVenmoClient.html | 697 ++++++ .../Documents/Classes/BTVenmoLineItem.html | 785 ++++++ .../Documents/Classes/BTVenmoRequest.html | 951 +++++++ .../Contents/Resources/Documents/Enums.html | 1753 +++++++++++++ .../Documents/Enums/BTAPIClientError.html | 655 +++++ .../Enums/BTAmericanExpressError.html | 622 +++++ .../Enums/BTAnalyticsServiceError.html | 556 +++++ .../Documents/Enums/BTApplePayError.html | 655 +++++ .../Documents/Enums/BTCardError.html | 729 ++++++ .../Documents/Enums/BTCardNetwork.html | 887 +++++++ .../Documents/Enums/BTClientTokenError.html | 688 +++++ .../Documents/Enums/BTDataCollectorError.html | 622 +++++ .../Documents/Enums/BTHTTPError.html | 994 ++++++++ .../Documents/Enums/BTJSONError.html | 621 +++++ .../Documents/Enums/BTLocalPaymentError.html | 928 +++++++ .../Documents/Enums/BTPayPalError.html | 1027 ++++++++ .../Documents/Enums/BTPayPalLineItemKind.html | 497 ++++ .../Enums/BTPayPalLineItemUPCType.html | 677 +++++ .../Documents/Enums/BTPayPalLocaleCode.html | 1249 +++++++++ .../Enums/BTPayPalMessagingColor.html | 561 +++++ .../Enums/BTPayPalMessagingError.html | 594 +++++ .../Enums/BTPayPalMessagingLogoType.html | 561 +++++ .../Enums/BTPayPalMessagingOfferType.html | 561 +++++ .../Enums/BTPayPalMessagingPageType.html | 621 +++++ .../Enums/BTPayPalMessagingTextAlignment.html | 531 ++++ .../Enums/BTPayPalNativeCheckoutError.html | 994 ++++++++ .../Documents/Enums/BTPayPalPaymentType.html | 496 ++++ .../Enums/BTPayPalRequestIntent.html | 565 +++++ .../Enums/BTPayPalRequestLandingPageType.html | 527 ++++ .../Enums/BTPayPalRequestUserAction.html | 504 ++++ .../Enums/BTSEPADirectDebitError.html | 820 ++++++ .../Enums/BTSEPADirectDebitMandateType.html | 495 ++++ .../Enums/BTShopperInsightsError.html | 588 +++++ .../Enums/BTThreeDSecureAccountType.html | 527 ++++ .../Enums/BTThreeDSecureCardAddChallenge.html | 527 ++++ .../Documents/Enums/BTThreeDSecureError.html | 894 +++++++ .../BTThreeDSecureRequestedExemptionType.html | 587 +++++ .../Enums/BTThreeDSecureShippingMethod.html | 647 +++++ .../Documents/Enums/BTThreeDSecureUIType.html | 527 ++++ .../Enums/BTThreeDSecureV2ButtonType.html | 587 +++++ .../Enums/BTVenmoAppSwitchError.html | 556 +++++ .../Documents/Enums/BTVenmoError.html | 919 +++++++ .../Documents/Enums/BTVenmoLineItemKind.html | 497 ++++ .../Enums/BTVenmoPaymentMethodUsage.html | 497 ++++ .../Documents/Enums/TokenizationKeyError.html | 556 +++++ .../Resources/Documents/Extensions.html | 493 ++++ .../Extensions/BTThreeDSecureV2Provider.html | 468 ++++ .../Resources/Documents/Protocols.html | 523 ++++ .../BTLocalPaymentRequestDelegate.html | 469 ++++ .../Protocols/BTPayPalMessagingDelegate.html | 591 +++++ .../BTThreeDSecureRequestDelegate.html | 469 ++++ .../Contents/Resources/Documents/Structs.html | 570 +++++ .../Structs/BTPayPalMessagingRequest.html | 572 +++++ .../Structs/BTShopperInsightsRequest.html | 624 +++++ .../Structs/BTShopperInsightsResult.html | 531 ++++ .../Resources/Documents/Structs/Phone.html | 507 ++++ .../Resources/Documents/css/highlight.css | 202 ++ .../Resources/Documents/css/jazzy.css | 405 +++ .../Resources/Documents/img/carat.png | Bin 0 -> 274 bytes .../Contents/Resources/Documents/img/dash.png | Bin 0 -> 1338 bytes .../Contents/Resources/Documents/img/gh.png | Bin 0 -> 1571 bytes .../Resources/Documents/img/spinner.gif | Bin 0 -> 1849 bytes .../Contents/Resources/Documents/index.html | 554 ++++ .../Contents/Resources/Documents/js/jazzy.js | 74 + .../Resources/Documents/js/jazzy.search.js | 74 + .../Resources/Documents/js/jquery.min.js | 2 + .../Resources/Documents/js/lunr.min.js | 6 + .../Documents/js/typeahead.jquery.js | 1695 +++++++++++++ .../Contents/Resources/Documents/search.json | 1 + .../Contents/Resources/docSet.dsidx | Bin 0 -> 249856 bytes 6.23.2/docsets/Braintree.tgz | Bin 0 -> 394560 bytes 6.23.2/img/carat.png | Bin 0 -> 274 bytes 6.23.2/img/dash.png | Bin 0 -> 1338 bytes 6.23.2/img/gh.png | Bin 0 -> 1571 bytes 6.23.2/img/spinner.gif | Bin 0 -> 1849 bytes 6.23.2/index.html | 554 ++++ 6.23.2/js/jazzy.js | 74 + 6.23.2/js/jazzy.search.js | 74 + 6.23.2/js/jquery.min.js | 2 + 6.23.2/js/lunr.min.js | 6 + 6.23.2/js/typeahead.jquery.js | 1695 +++++++++++++ 6.23.2/search.json | 1 + 6.23.2/undocumented.json | 6 + current | 2 +- 252 files changed, 158927 insertions(+), 1 deletion(-) create mode 100644 6.23.2/Classes.html create mode 100644 6.23.2/Classes/BTAPIClient.html create mode 100644 6.23.2/Classes/BTAmericanExpressClient.html create mode 100644 6.23.2/Classes/BTAmericanExpressRewardsBalance.html create mode 100644 6.23.2/Classes/BTAppContextSwitcher.html create mode 100644 6.23.2/Classes/BTApplePayCardNonce.html create mode 100644 6.23.2/Classes/BTApplePayClient.html create mode 100644 6.23.2/Classes/BTAuthenticationInsight.html create mode 100644 6.23.2/Classes/BTBinData.html create mode 100644 6.23.2/Classes/BTCard.html create mode 100644 6.23.2/Classes/BTCardClient.html create mode 100644 6.23.2/Classes/BTCardNonce.html create mode 100644 6.23.2/Classes/BTCardRequest.html create mode 100644 6.23.2/Classes/BTDataCollector.html create mode 100644 6.23.2/Classes/BTLocalPaymentClient.html create mode 100644 6.23.2/Classes/BTLocalPaymentRequest.html create mode 100644 6.23.2/Classes/BTLocalPaymentResult.html create mode 100644 6.23.2/Classes/BTPayPalAccountNonce.html create mode 100644 6.23.2/Classes/BTPayPalCheckoutRequest.html create mode 100644 6.23.2/Classes/BTPayPalClient.html create mode 100644 6.23.2/Classes/BTPayPalCreditFinancing.html create mode 100644 6.23.2/Classes/BTPayPalCreditFinancingAmount.html create mode 100644 6.23.2/Classes/BTPayPalLineItem.html create mode 100644 6.23.2/Classes/BTPayPalMessagingView.html create mode 100644 6.23.2/Classes/BTPayPalMessagingView/Representable.html create mode 100644 6.23.2/Classes/BTPayPalNativeCheckoutAccountNonce.html create mode 100644 6.23.2/Classes/BTPayPalNativeCheckoutClient.html create mode 100644 6.23.2/Classes/BTPayPalNativeCheckoutRequest.html create mode 100644 6.23.2/Classes/BTPayPalNativeVaultRequest.html create mode 100644 6.23.2/Classes/BTPayPalRequest.html create mode 100644 6.23.2/Classes/BTPayPalVaultBaseRequest.html create mode 100644 6.23.2/Classes/BTPayPalVaultRequest.html create mode 100644 6.23.2/Classes/BTPaymentMethodNonce.html create mode 100644 6.23.2/Classes/BTPaymentMethodNonceParser.html create mode 100644 6.23.2/Classes/BTPostalAddress.html create mode 100644 6.23.2/Classes/BTSEPADirectDebitClient.html create mode 100644 6.23.2/Classes/BTSEPADirectDebitNonce.html create mode 100644 6.23.2/Classes/BTSEPADirectDebitRequest.html create mode 100644 6.23.2/Classes/BTShopperInsightsClient.html create mode 100644 6.23.2/Classes/BTThreeDSecureAdditionalInformation.html create mode 100644 6.23.2/Classes/BTThreeDSecureClient.html create mode 100644 6.23.2/Classes/BTThreeDSecureInfo.html create mode 100644 6.23.2/Classes/BTThreeDSecureLookup.html create mode 100644 6.23.2/Classes/BTThreeDSecurePostalAddress.html create mode 100644 6.23.2/Classes/BTThreeDSecureRenderType.html create mode 100644 6.23.2/Classes/BTThreeDSecureRequest.html create mode 100644 6.23.2/Classes/BTThreeDSecureResult.html create mode 100644 6.23.2/Classes/BTThreeDSecureV2BaseCustomization.html create mode 100644 6.23.2/Classes/BTThreeDSecureV2ButtonCustomization.html create mode 100644 6.23.2/Classes/BTThreeDSecureV2LabelCustomization.html create mode 100644 6.23.2/Classes/BTThreeDSecureV2TextBoxCustomization.html create mode 100644 6.23.2/Classes/BTThreeDSecureV2ToolbarCustomization.html create mode 100644 6.23.2/Classes/BTThreeDSecureV2UICustomization.html create mode 100644 6.23.2/Classes/BTVenmoAccountNonce.html create mode 100644 6.23.2/Classes/BTVenmoClient.html create mode 100644 6.23.2/Classes/BTVenmoLineItem.html create mode 100644 6.23.2/Classes/BTVenmoRequest.html create mode 100644 6.23.2/Enums.html create mode 100644 6.23.2/Enums/BTAPIClientError.html create mode 100644 6.23.2/Enums/BTAmericanExpressError.html create mode 100644 6.23.2/Enums/BTAnalyticsServiceError.html create mode 100644 6.23.2/Enums/BTApplePayError.html create mode 100644 6.23.2/Enums/BTCardError.html create mode 100644 6.23.2/Enums/BTCardNetwork.html create mode 100644 6.23.2/Enums/BTClientTokenError.html create mode 100644 6.23.2/Enums/BTDataCollectorError.html create mode 100644 6.23.2/Enums/BTHTTPError.html create mode 100644 6.23.2/Enums/BTJSONError.html create mode 100644 6.23.2/Enums/BTLocalPaymentError.html create mode 100644 6.23.2/Enums/BTPayPalError.html create mode 100644 6.23.2/Enums/BTPayPalLineItemKind.html create mode 100644 6.23.2/Enums/BTPayPalLineItemUPCType.html create mode 100644 6.23.2/Enums/BTPayPalLocaleCode.html create mode 100644 6.23.2/Enums/BTPayPalMessagingColor.html create mode 100644 6.23.2/Enums/BTPayPalMessagingError.html create mode 100644 6.23.2/Enums/BTPayPalMessagingLogoType.html create mode 100644 6.23.2/Enums/BTPayPalMessagingOfferType.html create mode 100644 6.23.2/Enums/BTPayPalMessagingPageType.html create mode 100644 6.23.2/Enums/BTPayPalMessagingTextAlignment.html create mode 100644 6.23.2/Enums/BTPayPalNativeCheckoutError.html create mode 100644 6.23.2/Enums/BTPayPalPaymentType.html create mode 100644 6.23.2/Enums/BTPayPalRequestIntent.html create mode 100644 6.23.2/Enums/BTPayPalRequestLandingPageType.html create mode 100644 6.23.2/Enums/BTPayPalRequestUserAction.html create mode 100644 6.23.2/Enums/BTSEPADirectDebitError.html create mode 100644 6.23.2/Enums/BTSEPADirectDebitMandateType.html create mode 100644 6.23.2/Enums/BTShopperInsightsError.html create mode 100644 6.23.2/Enums/BTThreeDSecureAccountType.html create mode 100644 6.23.2/Enums/BTThreeDSecureCardAddChallenge.html create mode 100644 6.23.2/Enums/BTThreeDSecureError.html create mode 100644 6.23.2/Enums/BTThreeDSecureRequestedExemptionType.html create mode 100644 6.23.2/Enums/BTThreeDSecureShippingMethod.html create mode 100644 6.23.2/Enums/BTThreeDSecureUIType.html create mode 100644 6.23.2/Enums/BTThreeDSecureV2ButtonType.html create mode 100644 6.23.2/Enums/BTVenmoAppSwitchError.html create mode 100644 6.23.2/Enums/BTVenmoError.html create mode 100644 6.23.2/Enums/BTVenmoLineItemKind.html create mode 100644 6.23.2/Enums/BTVenmoPaymentMethodUsage.html create mode 100644 6.23.2/Enums/TokenizationKeyError.html create mode 100644 6.23.2/Extensions.html create mode 100644 6.23.2/Extensions/BTThreeDSecureV2Provider.html create mode 100644 6.23.2/Protocols.html create mode 100644 6.23.2/Protocols/BTLocalPaymentRequestDelegate.html create mode 100644 6.23.2/Protocols/BTPayPalMessagingDelegate.html create mode 100644 6.23.2/Protocols/BTThreeDSecureRequestDelegate.html create mode 100644 6.23.2/Structs.html create mode 100644 6.23.2/Structs/BTPayPalMessagingRequest.html create mode 100644 6.23.2/Structs/BTShopperInsightsRequest.html create mode 100644 6.23.2/Structs/BTShopperInsightsResult.html create mode 100644 6.23.2/Structs/Phone.html create mode 100644 6.23.2/badge.svg create mode 100644 6.23.2/css/highlight.css create mode 100644 6.23.2/css/jazzy.css create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Info.plist create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView/Representable.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultBaseRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTShopperInsightsClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingColor.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingLogoType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingOfferType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingPageType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingTextAlignment.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTShopperInsightsError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/TokenizationKeyError.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTPayPalMessagingDelegate.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTPayPalMessagingRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsRequest.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsResult.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/Phone.html create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css create mode 100755 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/img/carat.png create mode 100755 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/img/dash.png create mode 100755 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/img/gh.png create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/img/spinner.gif create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/index.html create mode 100755 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/lunr.min.js create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/search.json create mode 100644 6.23.2/docsets/Braintree.docset/Contents/Resources/docSet.dsidx create mode 100644 6.23.2/docsets/Braintree.tgz create mode 100755 6.23.2/img/carat.png create mode 100755 6.23.2/img/dash.png create mode 100755 6.23.2/img/gh.png create mode 100644 6.23.2/img/spinner.gif create mode 100644 6.23.2/index.html create mode 100755 6.23.2/js/jazzy.js create mode 100644 6.23.2/js/jazzy.search.js create mode 100644 6.23.2/js/jquery.min.js create mode 100644 6.23.2/js/lunr.min.js create mode 100644 6.23.2/js/typeahead.jquery.js create mode 100644 6.23.2/search.json create mode 100644 6.23.2/undocumented.json diff --git a/6.23.2/Classes.html b/6.23.2/Classes.html new file mode 100644 index 0000000000..620023faf1 --- /dev/null +++ b/6.23.2/Classes.html @@ -0,0 +1,2221 @@ + + + + Classes Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Classes

+

The following classes are available globally.

+ +
+
+ +
+
+
+
    +
  • +
    + + + + BTAPIClient + +
    +
    +
    +
    +
    +
    +

    This class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.

    +
    +

    Note

    + It also manages authentication via tokenization key and provides access to a merchant’s gateway configuration. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAPIClient : NSObject, BTHTTPNetworkTiming
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTAppContextSwitcher + +
    +
    +
    +
    +
    +
    +

    Handles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.

    +
    +

    Note

    + returnURLScheme must contain your app’s registered URL Type that starts with the app’s bundle ID. +When your app returns from app switch, the app delegate should call handleOpenURL (or handleOpen if not using SceneDelegate) + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAppContextSwitcher : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTBinData + +
    +
    +
    +
    +
    +
    +

    Contains the bin data associated with a payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTBinData : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPaymentMethodNonce + +
    +
    +
    +
    +
    +
    +

    BTPaymentMethodNonce is for generic tokenized payment information.

    + +

    For example, if a customer’s vaulted payment methods contains a type that’s not recognized or supported by the +Braintree SDK or the client-side integration (e.g. the vault contains a PayPal account but the client-side +integration does not include the PayPal component), this type can act as a fallback.

    + +

    The payment method nonce is a public token that acts as a placeholder for sensitive payments data that +has been uploaded to Braintree for subsequent processing. The nonce is safe to access on the client and can be +used on your server to reference the data in Braintree operations, such as Transaction.sale.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPaymentMethodNonce : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A JSON parser that parses BTJSON into concrete BTPaymentMethodNonce objects. It supports registration of parsers at runtime.

    + +

    BTPaymentMethodNonceParser provides access to JSON parsing for different payment options +without introducing compile-time dependencies on payment option frameworks and their symbols.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPaymentMethodNonceParser : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPostalAddress + +
    +
    +
    +
    +
    +
    +

    Generic postal address

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPostalAddress : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal payment method.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeCheckoutAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Client used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTPayPalNativeCheckoutClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeCheckoutRequest : BTPayPalCheckoutRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeVaultRequest : BTPayPalVaultBaseRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Used to integrate with SEPA Direct Debit.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTSEPADirectDebitClient : BTWebAuthenticationSessionClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A payment method nonce representing a SEPA Direct Debit payment.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTSEPADirectDebitNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Parameters for creating a SEPA Direct Debit tokenization request.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTSEPADirectDebitRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    BTAmericanExpressClient enables you to look up the rewards balance of American Express cards.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTAmericanExpressClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about an American Express rewards balance.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAmericanExpressRewardsBalance : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTDataCollector + +
    +
    +
    +
    +
    +
    +

    Braintree’s advanced fraud protection solution.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTDataCollector : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayCardNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a tokenized Apple Pay card.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTApplePayCardNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayClient + +
    +
    +
    +
    +
    +
    +

    Used to process Apple Pay payments

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTApplePayClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentClient : BTWebAuthenticationSessionClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentRequest + +
    +
    +
    +
    +
    +
    +

    Used to initialize a local payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentResult + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentResult : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Additional information for a 3DS lookup. Used in 3DS 2.0+ flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureAdditionalInformation : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureLookup + +
    +
    +
    +
    +
    +
    +

    The result of a 3DS lookup. +Contains liability shift and challenge information.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureLookup : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Postal address for 3D Secure flows

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecurePostalAddress : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureRenderType : NSObject, OptionSet
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureRequest + +
    +
    +
    +
    +
    +
    +

    Used to initialize a 3D Secure payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureResult + +
    +
    +
    +
    +
    +
    +

    The result of a 3D Secure payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureResult : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Base customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2BaseCustomization : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Button customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2ButtonCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Label customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2LabelCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text box customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2TextBoxCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Toolbar customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2ToolbarCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    UI customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2UICustomization : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Information pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAuthenticationInsight : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCard + +
    +
    +
    +
    +
    +
    +

    The card tokenization request represents raw credit or debit card data provided by the customer. +Its main purpose is to serve as the input for tokenization.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCard : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardClient + +
    +
    +
    +
    +
    +
    +

    Used to process cards

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTCardClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a tokenized card.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCardNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardRequest + +
    +
    +
    +
    +
    +
    +

    Contains information about a card to tokenize

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCardRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureInfo + +
    +
    +
    +
    +
    +
    +

    Contains information about the 3D Secure status of a payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureInfo : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalAccountNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a PayPal payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalCheckoutRequest : BTPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTPayPalClient : BTWebAuthenticationSessionClient
    +
    extension BTPayPalClient: BTAppContextSwitchClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal credit financing option

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalCreditFinancing : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal credit amount

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalCreditFinancingAmount : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLineItem + +
    +
    +
    +
    +
    +
    +

    A PayPal line item to be displayed in the PayPal checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalLineItem : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalRequest + +
    +
    +
    +
    +
    +
    +

    Base options for PayPal Checkout and PayPal Vault flows.

    +
    +

    Note

    + Do not instantiate this class directly. Instead, use BTPayPalCheckoutRequest or BTPayPalVaultRequest. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalVaultBaseRequest : BTPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalVaultRequest + +
    +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalVaultRequest : BTPayPalVaultBaseRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoAccountNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a Venmo Account payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoClient + +
    +
    +
    +
    +
    +
    +

    Used to process Venmo payments

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTVenmoClient : NSObject
    +
    extension BTVenmoClient: BTAppContextSwitchClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoLineItem + +
    +
    +
    +
    +
    +
    +

    A Venmo line item to be displayed in the Venmo Paysheet.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoLineItem : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoRequest + +
    +
    +
    +
    +
    +
    +

    A BTVenmoRequest specifies options that contribute to the Venmo flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalMessagingView + +
    +
    +
    +
    +
    +
    +

    Use BTPayPalMessagingView to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class BTPayPalMessagingView : UIView
    +
    extension BTPayPalMessagingView: PayPalMessageViewEventDelegate, PayPalMessageViewStateDelegate
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use BTShopperInsightsClient to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI. + By customizing each customer’s checkout experience, you can improve conversion, increase sales/repeat buys and boost user retention/loyalty.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class BTShopperInsightsClient
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTAPIClient.html b/6.23.2/Classes/BTAPIClient.html new file mode 100644 index 0000000000..521b48ea80 --- /dev/null +++ b/6.23.2/Classes/BTAPIClient.html @@ -0,0 +1,673 @@ + + + + BTAPIClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAPIClient

+
+
+ +
@objcMembers
+public class BTAPIClient : NSObject, BTHTTPNetworkTiming
+ +
+
+

This class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.

+
+

Note

+ It also manages authentication via tokenization key and provides access to a merchant’s gateway configuration. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + authorization + +
    +
    +
    +
    +
    +
    +

    The TokenizationKey or ClientToken used to authorize the APIClient

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authorization: ClientAuthorization
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + metadata + +
    +
    +
    +
    +
    +
    +

    Client metadata that is used for tracking the client session

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public private(set) var metadata: BTClientMetadata { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(authorization:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new API client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAuthorization:)
    +public init?(authorization: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + authorization + + +
    +

    Your tokenization key or client token. Passing an invalid value may return nil.

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

Public Methods +

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

    Fetches a customer’s vaulted payment method nonces. +Must be using client token with a customer ID specified.

    +
    +

    Note

    + Only the top level BTPaymentMethodNonce type is returned, fetching any additional details will need to be done on the server + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func fetchPaymentMethodNonces(_ completion: @escaping ([BTPaymentMethodNonce]?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    Callback that returns either an array of payment method nonces or an error

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

    Fetches a customer’s vaulted payment method nonces. +Must be using client token with a customer ID specified.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func fetchPaymentMethodNonces(_ defaultFirst: Bool, completion: @escaping ([BTPaymentMethodNonce]?, Error?) -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTAmericanExpressClient.html b/6.23.2/Classes/BTAmericanExpressClient.html new file mode 100644 index 0000000000..2b7a5bd76e --- /dev/null +++ b/6.23.2/Classes/BTAmericanExpressClient.html @@ -0,0 +1,564 @@ + + + + BTAmericanExpressClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAmericanExpressClient

+
+
+ +
@objc
+public class BTAmericanExpressClient : NSObject
+ +
+
+

BTAmericanExpressClient enables you to look up the rewards balance of American Express cards.

+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTAmericanExpressRewardsBalance.html b/6.23.2/Classes/BTAmericanExpressRewardsBalance.html new file mode 100644 index 0000000000..ad2f5f125c --- /dev/null +++ b/6.23.2/Classes/BTAmericanExpressRewardsBalance.html @@ -0,0 +1,677 @@ + + + + BTAmericanExpressRewardsBalance Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAmericanExpressRewardsBalance

+
+
+ +
@objcMembers
+public class BTAmericanExpressRewardsBalance : NSObject
+ +
+
+

Contains information about an American Express rewards balance.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    +

    Optional. An error code when there was an issue fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorMessage + +
    +
    +
    +
    +
    +
    +

    Optional. An error message when there was an issue fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorMessage: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + conversionRate + +
    +
    +
    +
    +
    +
    +

    Optional. The conversion rate associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var conversionRate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The currency amount associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyIsoCode + +
    +
    +
    +
    +
    +
    +

    Optional. The currency ISO code associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyIsoCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + requestID + +
    +
    +
    +
    +
    +
    +

    Optional. The request ID used when fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rewardsAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The rewards amount associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var rewardsAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rewardsUnit + +
    +
    +
    +
    +
    +
    +

    Optional. The rewards unit associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var rewardsUnit: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTAppContextSwitcher.html b/6.23.2/Classes/BTAppContextSwitcher.html new file mode 100644 index 0000000000..48352be121 --- /dev/null +++ b/6.23.2/Classes/BTAppContextSwitcher.html @@ -0,0 +1,672 @@ + + + + BTAppContextSwitcher Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAppContextSwitcher

+
+
+ +
@objcMembers
+public class BTAppContextSwitcher : NSObject
+ +
+
+

Handles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.

+
+

Note

+ returnURLScheme must contain your app’s registered URL Type that starts with the app’s bundle ID. +When your app returns from app switch, the app delegate should call handleOpenURL (or handleOpen if not using SceneDelegate) + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + sharedInstance + +
    +
    +
    +
    +
    +
    +

    Singleton for shared instance of BTAppContextSwitcher

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let sharedInstance: BTAppContextSwitcher
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + returnURLScheme + +
    +
    +
    +
    +
    +
    +

    The URL scheme to return to this app after switching to another app or opening a SFSafariViewController. +This URL scheme must be registered as a URL Type in the app’s info.plist, and it must start with the app’s bundle ID.

    +
    +

    Note

    + This property should only be used for the Venmo flow. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var returnURLScheme: String
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

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

    Determine whether the return URL can be handled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +@objc(handleOpenURLContext:)
    +public func handleOpenURL(context: UIOpenURLContext) -> Bool
    + +
    +
    +
    +

    Return Value

    +

    true when the SDK can process the return URL

    +
    + +
    +
    +
  • +
  • +
    + + + + handleOpen(_:) + +
    +
    +
    +
    +
    +
    +

    Complete payment flow after returning from app or browser switch.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +@objc(handleOpenURL:)
    +public func handleOpen(_ url: URL) -> Bool
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + url + + +
    +

    The URL you receive in scene:openURLContexts: (or application:openURL:options: if not using SceneDelegate)

    +
    +
    +
    +
    +

    Return Value

    +

    true when the SDK has handled the URL successfully

    +
    + +
    +
    +
  • +
  • +
    + + + + register(_:) + +
    +
    +
    +
    +
    +
    +

    Registers a class Type that can handle a return from app context switch with a static method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(registerAppContextSwitchClient:)
    +public func register(_ client: BTAppContextSwitchClient.Type)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + client + + +
    +

    A class Type that implements BTAppContextSwitchClient, the methods of which will be invoked statically on the class.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTApplePayCardNonce.html b/6.23.2/Classes/BTApplePayCardNonce.html new file mode 100644 index 0000000000..15580d6dc1 --- /dev/null +++ b/6.23.2/Classes/BTApplePayCardNonce.html @@ -0,0 +1,467 @@ + + + + BTApplePayCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTApplePayCardNonce

+
+
+ +
@objcMembers
+public class BTApplePayCardNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a tokenized Apple Pay card.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + binData + +
    +
    +
    +
    +
    +
    +

    The BIN data for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let binData: BTBinData
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTApplePayClient.html b/6.23.2/Classes/BTApplePayClient.html new file mode 100644 index 0000000000..552f4b226d --- /dev/null +++ b/6.23.2/Classes/BTApplePayClient.html @@ -0,0 +1,727 @@ + + + + BTApplePayClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTApplePayClient

+
+
+ +
@objc
+public class BTApplePayClient : NSObject
+ +
+
+

Used to process Apple Pay payments

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

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates an Apple Pay client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

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

Public Methods +

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

    Creates a PKPaymentRequest with values from your Braintree Apple Pay configuration. +It populates the following values of PKPaymentRequest: countryCode, currencyCode, merchantIdentifier, supportedNetworks.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(makePaymentRequest:)
    +public func makePaymentRequest(completion: @escaping (PKPaymentRequest?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    A completion block that returns the payment request or an error.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + makePaymentRequest() + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Creates a PKPaymentRequest with values from your Braintree Apple Pay configuration. +It populates the following values of PKPaymentRequest: countryCode, currencyCode, merchantIdentifier, supportedNetworks.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func makePaymentRequest() async throws -> PKPaymentRequest
    + +
    +
    +
    +

    Return Value

    +

    A PKPaymentRequest

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

    Tokenizes an Apple Pay payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeApplePayPayment:completion:)
    +public func tokenize(_ payment: PKPayment, completion: @escaping (BTApplePayCardNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + payment + + +
    +

    A PKPayment instance, typically obtained by presenting a PKPaymentAuthorizationViewController

    +
    +
    + + completion + + +
    +

    A completion block that is invoked when tokenization has completed. If tokenization succeeds, we will return a BTApplePayCardNonce +and error will be nil; if it fails, BTApplePayCardNonce will be nil and error will describe the failure.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenizes an Apple Pay payment.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ payment: PKPayment) async throws -> BTApplePayCardNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + payment + + +
    +

    A PKPayment instance, typically obtained by presenting a PKPaymentAuthorizationViewController

    +
    +
    +
    +
    +

    Return Value

    +

    A BTApplePayCardNonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTAuthenticationInsight.html b/6.23.2/Classes/BTAuthenticationInsight.html new file mode 100644 index 0000000000..d9aa378106 --- /dev/null +++ b/6.23.2/Classes/BTAuthenticationInsight.html @@ -0,0 +1,478 @@ + + + + BTAuthenticationInsight Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAuthenticationInsight

+
+
+ +
@objcMembers
+public class BTAuthenticationInsight : NSObject
+ +
+
+

Information pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.

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

Public Properties +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTBinData.html b/6.23.2/Classes/BTBinData.html new file mode 100644 index 0000000000..4a2dbdab7b --- /dev/null +++ b/6.23.2/Classes/BTBinData.html @@ -0,0 +1,738 @@ + + + + BTBinData Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTBinData

+
+
+ +
@objcMembers
+public class BTBinData : NSObject
+ +
+
+

Contains the bin data associated with a payment method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + prepaid + +
    +
    +
    +
    +
    +
    +

    Whether the card is a prepaid card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let prepaid: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + healthcare + +
    +
    +
    +
    +
    +
    +

    Whether the card is a healthcare card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let healthcare: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Whether the card is a debit card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let debit: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + durbinRegulated + +
    +
    +
    +
    +
    +
    +

    A value indicating whether the issuing bank’s card range is regulated by the Durbin Amendment due to the bank’s assets. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let durbinRegulated: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + commercial + +
    +
    +
    +
    +
    +
    +

    Whether the card type is a commercial card and is capable of processing Level 2 transactions. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let commercial: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payroll + +
    +
    +
    +
    +
    +
    +

    Whether the card is a payroll card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payroll: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + issuingBank + +
    +
    +
    +
    +
    +
    +

    The bank that issued the credit card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let issuingBank: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryOfIssuance + +
    +
    +
    +
    +
    +
    +

    The country that issued the credit card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let countryOfIssuance: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productID + +
    +
    +
    +
    +
    +
    +

    The code for the product type of the card (e.g. D (Visa Signature Preferred), G (Visa Business)), if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let productID: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(json:) + +
    +
    +
    +
    +
    +
    +

    Create a BTBinData object from JSON.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithJSON:)
    +public init(json: BTJSON?)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTCard.html b/6.23.2/Classes/BTCard.html new file mode 100644 index 0000000000..dc22c8bb76 --- /dev/null +++ b/6.23.2/Classes/BTCard.html @@ -0,0 +1,1096 @@ + + + + BTCard Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCard

+
+
+ +
@objcMembers
+public class BTCard : NSObject
+ +
+
+

The card tokenization request represents raw credit or debit card data provided by the customer. +Its main purpose is to serve as the input for tokenization.

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

Public Properties +

+
+
+
    +
  • +
    + + + + number + +
    +
    +
    +
    +
    +
    +

    The card number

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var number: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationMonth + +
    +
    +
    +
    +
    +
    +

    The expiration month as a one or two-digit number on the Gregorian calendar

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationMonth: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationYear + +
    +
    +
    +
    +
    +
    +

    The expiration year as a two or four-digit number on the Gregorian calendar

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cvv + +
    +
    +
    +
    +
    +
    +

    The card verification code (like CVV or CID).

    +
    +

    Note

    + If you wish to create a CVV-only payment method nonce to verify a card already stored in your Vault, +omit all other properties to only collect CVV. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cvv: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    The postal code associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardholderName + +
    +
    +
    +
    +
    +
    +

    Optional: the cardholder’s name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardholderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Optional: first name on the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Optional: last name on the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + company + +
    +
    +
    +
    +
    +
    +

    Optional: company name associated with the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var company: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Optional: the street address associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional: the extended address associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    Optional: the city associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Optional: either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryName + +
    +
    +
    +
    +
    +
    +

    Optional: the country name associated with the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific country names. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    Optional: the ISO 3166-1 alpha-2 country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific alpha-2 values. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha3 + +
    +
    +
    +
    +
    +
    +

    Optional: the ISO 3166-1 alpha-3 country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific alpha-3 values. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha3: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeNumeric + +
    +
    +
    +
    +
    +
    +

    Optional: The ISO 3166-1 numeric country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific numeric values. + + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeNumeric: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shouldValidate + +
    +
    +
    +
    +
    +
    +

    Controls whether or not to return validations and/or verification results. By default, this is not enabled.

    +
    +

    Note

    + Use this flag with caution. By enabling client-side validation, certain tokenize card requests may result in adding the card to the vault. +These semantics are not currently documented. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shouldValidate: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: If authentication insight is requested. If this property is set to true, a merchantAccountID must be provided. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationInsightRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant account ID.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTCardClient.html b/6.23.2/Classes/BTCardClient.html new file mode 100644 index 0000000000..beb73442ec --- /dev/null +++ b/6.23.2/Classes/BTCardClient.html @@ -0,0 +1,633 @@ + + + + BTCardClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCardClient

+
+
+ +
@objc
+public class BTCardClient : NSObject
+ +
+
+

Used to process cards

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

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a card client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

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

Public Methods +

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

    Tokenizes a card

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeCard:completion:)
    +public func tokenize(_ card: BTCard, completion: @escaping (BTCardNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + card + + +
    +

    The card to tokenize.

    +
    +
    + + completion + + +
    +

    A completion block that is invoked when card tokenization has completed. If tokenization succeeds, +tokenize will contain a nonce and error will be nil; if it fails, tokenize will be nil and errorwill describe the failure.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenizes a card

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ card: BTCard) async throws -> BTCardNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + card + + +
    +

    The card to tokenize.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTCardNonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTCardNonce.html b/6.23.2/Classes/BTCardNonce.html new file mode 100644 index 0000000000..5704fb691f --- /dev/null +++ b/6.23.2/Classes/BTCardNonce.html @@ -0,0 +1,747 @@ + + + + BTCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCardNonce

+
+
+ +
@objcMembers
+public class BTCardNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a tokenized card.

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

Public Properties +

+
+
+
    +
  • +
    + + + + cardNetwork + +
    +
    +
    +
    +
    +
    +

    The card network.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardNetwork: BTCardNetwork
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationMonth + +
    +
    +
    +
    +
    +
    +

    The expiration month of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationMonth: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationYear + +
    +
    +
    +
    +
    +
    +

    The expiration year of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardholderName + +
    +
    +
    +
    +
    +
    +

    The name of the cardholder, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardholderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastTwo + +
    +
    +
    +
    +
    +
    +

    The last two digits of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastTwo: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastFour + +
    +
    +
    +
    +
    +
    +

    The last four digits of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastFour: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + bin + +
    +
    +
    +
    +
    +
    +

    The BIN number of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var bin: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + binData + +
    +
    +
    +
    +
    +
    +

    The BIN data for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var binData: BTBinData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureInfo + +
    +
    +
    +
    +
    +
    +

    The 3D Secure info for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureInfo: BTThreeDSecureInfo
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + authenticationInsight + +
    +
    +
    +
    +
    +
    +

    Details about the regulatory environment and applicable customer authentication regulation for a potential transaction. +This can be used to make an informed decision whether to perform 3D Secure authentication.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationInsight: BTAuthenticationInsight?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTCardRequest.html b/6.23.2/Classes/BTCardRequest.html new file mode 100644 index 0000000000..887a2ab14f --- /dev/null +++ b/6.23.2/Classes/BTCardRequest.html @@ -0,0 +1,516 @@ + + + + BTCardRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCardRequest

+
+
+ +
@objcMembers
+public class BTCardRequest : NSObject
+ +
+
+

Contains information about a card to tokenize

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + card + +
    +
    +
    +
    +
    +
    +

    The BTCard associated with this instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var card: BTCard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(card:) + +
    +
    +
    +
    +
    +
    +

    Initialize a Card request with a BTCard.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(card: BTCard)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + card + + +
    +

    The BTCard to initialize with.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTDataCollector.html b/6.23.2/Classes/BTDataCollector.html new file mode 100644 index 0000000000..d3a42f78aa --- /dev/null +++ b/6.23.2/Classes/BTDataCollector.html @@ -0,0 +1,659 @@ + + + + BTDataCollector Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTDataCollector

+
+
+ +
@objc
+public class BTDataCollector : NSObject
+ +
+
+

Braintree’s advanced fraud protection solution.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a BTDataCollector instance with a BTAPIClient.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An instance of BTAPIClient

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

Public methods +

+
+
+
    +
  • +
    + + + + clientMetadataID(_:) + +
    +
    +
    +
    +
    +
    +

    Returns a client metadata ID.

    +
    +

    Note

    + This returns a raw client metadata ID, which is not the correct format for device data when creating a transaction. Instead, it is recommended to use collectDeviceData. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func clientMetadataID(_ pairingID: String?) -> String
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + pairingID + + +
    +

    A pairing ID to associate with this clientMetadataID must be 10-32 chars long or null

    +
    +
    +
    +
    +

    Return Value

    +

    A client metadata ID to send as a header

    +
    + +
    +
    +
  • +
  • +
    + + + + collectDeviceData(_:) + +
    +
    +
    +
    +
    +
    +

    Collects device data based on your merchant configuration.

    + +

    We recommend that you call this method as early as possible, e.g. at app launch. If that’s too early, + calling it when the customer initiates checkout is also fine. + Use the return value on your server, e.g. with Transaction.sale.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func collectDeviceData(_ completion: @escaping (String?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    A completion block that returns either a device data string that should be passed into server-side calls, such as Transaction.sale, or an error with the failure reason.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + collectDeviceData() + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Collects device data based on your merchant configuration.

    + +

    We recommend that you call this method as early as possible, e.g. at app launch. If that’s too early, + calling it when the customer initiates checkout is also fine. + Use the return value on your server, e.g. with Transaction.sale.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func collectDeviceData() async throws -> String
    + +
    +
    +
    +

    Return Value

    +

    A device data string that should be passed into server-side calls, such as Transaction.sale.

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTLocalPaymentClient.html b/6.23.2/Classes/BTLocalPaymentClient.html new file mode 100644 index 0000000000..66a7a63c25 --- /dev/null +++ b/6.23.2/Classes/BTLocalPaymentClient.html @@ -0,0 +1,630 @@ + + + + BTLocalPaymentClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTLocalPaymentClient

+
+
+ +
@objcMembers
+public class BTLocalPaymentClient : BTWebAuthenticationSessionClient
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new BTLocalPaymentClient instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

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

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTLocalPaymentRequest.html b/6.23.2/Classes/BTLocalPaymentRequest.html new file mode 100644 index 0000000000..e63b4a33eb --- /dev/null +++ b/6.23.2/Classes/BTLocalPaymentRequest.html @@ -0,0 +1,869 @@ + + + + BTLocalPaymentRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTLocalPaymentRequest

+
+
+ +
@objcMembers
+public class BTLocalPaymentRequest : NSObject
+ +
+
+

Used to initialize a local payment flow

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

Public Properties +

+
+
+
    +
  • +
    + + + + paymentType + +
    +
    +
    +
    +
    +
    +

    The type of payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentType: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The country code of the local payment.

    + +

    This value must be one of the supported country codes for a given local payment type listed at the link below. For local payments supported in multiple countries, this value may determine which banks are presented to the customer.

    + +

    https://developer.paypal.com/braintree/docs/guides/local-payment-methods/client-side-custom/ios/v5#invoke-payment-flow

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentTypeCountryCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: The address of the customer. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + address + +
    +
    +
    +
    +
    +
    +

    Optional: The address of the customer. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var address: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    The amount for the transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyCode + +
    +
    +
    +
    +
    +
    +

    Optional: A valid ISO currency code to use for the transaction. Defaults to merchant currency code if not set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant name displayed inside of the local payment flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Optional: Payer email of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + givenName + +
    +
    +
    +
    +
    +
    +

    Optional: Given (first) name of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var givenName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + surname + +
    +
    +
    +
    +
    +
    +

    Optional: Surname (last name) of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var surname: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Optional: Phone number of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phone: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates whether or not the payment needs to be shipped. For digital goods, this should be false. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressRequired: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + bic + +
    +
    +
    +
    +
    +
    +

    Optional: Bank Identification Code of the customer (specific to iDEAL transactions).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var bic: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public weak var localPaymentFlowDelegate: BTLocalPaymentRequestDelegate?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTLocalPaymentResult.html b/6.23.2/Classes/BTLocalPaymentResult.html new file mode 100644 index 0000000000..9966968ee0 --- /dev/null +++ b/6.23.2/Classes/BTLocalPaymentResult.html @@ -0,0 +1,736 @@ + + + + BTLocalPaymentResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTLocalPaymentResult

+
+
+ +
@objcMembers
+public class BTLocalPaymentResult : NSObject
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client Metadata ID associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    The one-time use payment method nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let nonce: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Payer ID associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + type + +
    +
    +
    +
    +
    +
    +

    The type of the tokenized payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let type: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalAccountNonce.html b/6.23.2/Classes/BTPayPalAccountNonce.html new file mode 100644 index 0000000000..93b26b0713 --- /dev/null +++ b/6.23.2/Classes/BTPayPalAccountNonce.html @@ -0,0 +1,709 @@ + + + + BTPayPalAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalAccountNonce

+
+
+ +
@objcMembers
+public class BTPayPalAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a PayPal payment method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client metadata id associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Optional. Payer id associated with this transaction. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + creditFinancing + +
    +
    +
    +
    +
    +
    +

    Optional. Credit financing details if the customer pays with PayPal Credit. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let creditFinancing: BTPayPalCreditFinancing?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalCheckoutRequest.html b/6.23.2/Classes/BTPayPalCheckoutRequest.html new file mode 100644 index 0000000000..c467757d2a --- /dev/null +++ b/6.23.2/Classes/BTPayPalCheckoutRequest.html @@ -0,0 +1,795 @@ + + + + BTPayPalCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalCheckoutRequest

+
+
+ +
@objcMembers
+open class BTPayPalCheckoutRequest : BTPayPalRequest
+ +
+
+

Options for the PayPal Checkout flow.

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

Public Properties +

+
+
+
    +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    Used for a one-time payment.

    + +

    Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’ and is limited to 7 digits before the decimal point.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + intent + +
    +
    +
    +
    +
    +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var intent: BTPayPalRequestIntent
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + userAction + +
    +
    +
    +
    +
    +
    +

    Optional: Changes the call-to-action in the PayPal Checkout flow. Defaults to .none.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAction: BTPayPalRequestUserAction
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + offerPayLater + +
    +
    +
    +
    +
    +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var offerPayLater: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyCode + +
    +
    +
    +
    +
    +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set.

    +
    +

    Note

    + See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestBillingAgreement: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAuthenticationEmail: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

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

    Initializes a PayPal Native Checkout request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: String,
    +    intent: BTPayPalRequestIntent = .authorize,
    +    userAction: BTPayPalRequestUserAction = .none,
    +    offerPayLater: Bool = false,
    +    currencyCode: String? = nil,
    +    requestBillingAgreement: Bool = false
    +)
    + +
    +
    +
    +

    Parameters

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

    Used for a one-time payment. Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’

    +
    +
    + + intent + + +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout. +and is limited to 7 digits before the decimal point.

    +
    +
    + + userAction + + +
    +

    Optional: Changes the call-to-action in the PayPal Checkout flow. Defaults to .none.

    +
    +
    + + offerPayLater + + +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    +
    +
    + + currencyCode + + +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set. +See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes.

    +
    +
    + + requestBillingAgreement + + +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement +during checkout. Defaults to false.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalClient.html b/6.23.2/Classes/BTPayPalClient.html new file mode 100644 index 0000000000..34f58e303c --- /dev/null +++ b/6.23.2/Classes/BTPayPalClient.html @@ -0,0 +1,864 @@ + + + + BTPayPalClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalClient

+
+
+ +
@objc
+public class BTPayPalClient : BTWebAuthenticationSessionClient
+
extension BTPayPalClient: BTAppContextSwitchClient
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new PayPal client instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    The API Client

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

    Initialize a new PayPal client instance for the PayPal App Switch flow.

    +
    +

    Warning

    + This initializer should be used for merchants using the PayPal App Switch flow. This feature is currently in beta and may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:universalLink:)
    +public convenience init(apiClient: BTAPIClient, universalLink: URL)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + apiClient + + +
    +

    The API Client

    +
    +
    + + universalLink + + +
    +

    The URL to use for the PayPal app switch flow. Must be a valid HTTPS URL dedicated to Braintree app switch returns. This URL must be allow-listed in your Braintree Control Panel.

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

Public Methods +

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

    Tokenize a PayPal request to be used with the PayPal Vault flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithVaultRequest:completion:)
    +public func tokenize(
    +    _ request: BTPayPalVaultRequest,
    +    completion: @escaping (BTPayPalAccountNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + + +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Vault flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTPayPalVaultRequest) async throws -> BTPayPalAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    A BTPayPalAccountNonce if successful

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

    Tokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithCheckoutRequest:completion:)
    +public func tokenize(
    +    _ request: BTPayPalCheckoutRequest,
    +    completion: @escaping (BTPayPalAccountNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + + +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTPayPalCheckoutRequest) async throws -> BTPayPalAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    A BTPayPalAccountNonce if successful

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalCreditFinancing.html b/6.23.2/Classes/BTPayPalCreditFinancing.html new file mode 100644 index 0000000000..16bcbcb5a9 --- /dev/null +++ b/6.23.2/Classes/BTPayPalCreditFinancing.html @@ -0,0 +1,617 @@ + + + + BTPayPalCreditFinancing Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalCreditFinancing

+
+
+ +
@objcMembers
+public class BTPayPalCreditFinancing : NSObject
+ +
+
+

Contains information about a PayPal credit financing option

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + cardAmountImmutable + +
    +
    +
    +
    +
    +
    +

    Indicates whether the card amount is editable after payer’s acceptance on PayPal side.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let cardAmountImmutable: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + monthlyPayment + +
    +
    +
    +
    +
    +
    +

    Estimated amount per month that the customer will need to pay including fees and interest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let monthlyPayment: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerAcceptance + +
    +
    +
    +
    +
    +
    +

    Status of whether the customer ultimately was approved for and chose to make the payment using the approved installment credit.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerAcceptance: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + term + +
    +
    +
    +
    +
    +
    +

    Length of financing terms in months.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let term: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalCost + +
    +
    +
    +
    +
    +
    +

    Estimated total payment amount including interest and fees the user will pay during the lifetime of the loan.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let totalCost: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalInterest + +
    +
    +
    +
    +
    +
    +

    Estimated interest or fees amount the payer will have to pay during the lifetime of the loan.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let totalInterest: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalCreditFinancingAmount.html b/6.23.2/Classes/BTPayPalCreditFinancingAmount.html new file mode 100644 index 0000000000..789cbff832 --- /dev/null +++ b/6.23.2/Classes/BTPayPalCreditFinancingAmount.html @@ -0,0 +1,497 @@ + + + + BTPayPalCreditFinancingAmount Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalCreditFinancingAmount

+
+
+ +
@objcMembers
+public class BTPayPalCreditFinancingAmount : NSObject
+ +
+
+

Contains information about a PayPal credit amount

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + currency + +
    +
    +
    +
    +
    +
    +

    3 letter currency code as defined by ISO 4217.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let currency: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + value + +
    +
    +
    +
    +
    +
    +

    An amount defined by ISO 4217 for the given currency.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let value: String
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalLineItem.html b/6.23.2/Classes/BTPayPalLineItem.html new file mode 100644 index 0000000000..74f991a3d3 --- /dev/null +++ b/6.23.2/Classes/BTPayPalLineItem.html @@ -0,0 +1,875 @@ + + + + BTPayPalLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalLineItem

+
+
+ +
@objcMembers
+public class BTPayPalLineItem : NSObject
+ +
+
+

A PayPal line item to be displayed in the PayPal checkout flow.

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

Public Properties +

+
+
+
    +
  • +
    + + + + quantity + +
    +
    +
    +
    +
    +
    +

    Number of units of the item purchased. This value must be a whole number and can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let quantity: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitAmount + +
    +
    +
    +
    +
    +
    +

    Per-unit price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let unitAmount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + name + +
    +
    +
    +
    +
    +
    +

    Item name. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let name: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + kind + +
    +
    +
    +
    +
    +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let kind: BTPayPalLineItemKind
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitTaxAmount + +
    +
    +
    +
    +
    +
    +

    Optional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let unitTaxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + itemDescription + +
    +
    +
    +
    +
    +
    +

    Optional: Item description. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let itemDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + url + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let url: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional: Product or UPC code for the item. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + imageURL + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product image information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var imageURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + upcCode + +
    +
    +
    +
    +
    +
    +

    Optional: UPC code for the item.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var upcCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + upcType + +
    +
    +
    +
    +
    +
    +

    Optional: UPC type for the item.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var upcType: BTPayPalLineItemUPCType
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Initializer +

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

    Initialize a PayPayLineItem

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithQuantity:unitAmount:name:kind:)
    +public init(quantity: String, unitAmount: String, name: String, kind: BTPayPalLineItemKind)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + +
    + + quantity + + +
    +

    Number of units of the item purchased. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + unitAmount + + +
    +

    Per-unit price of the item. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + name + + +
    +

    Item name. Maximum 127 characters.

    +
    +
    + + kind + + +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalMessagingView.html b/6.23.2/Classes/BTPayPalMessagingView.html new file mode 100644 index 0000000000..c410621290 --- /dev/null +++ b/6.23.2/Classes/BTPayPalMessagingView.html @@ -0,0 +1,811 @@ + + + + BTPayPalMessagingView Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingView

+
+
+ +
public class BTPayPalMessagingView : UIView
+
extension BTPayPalMessagingView: PayPalMessageViewEventDelegate, PayPalMessageViewStateDelegate
+ +
+
+

Use BTPayPalMessagingView to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Properties +

+
+
+ +
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a BTPayPalMessagingView.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    The Braintree API client

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

Public Method +

+
+
+ +
+
+
+ + +
+ +

UIViewRepresentable protocol conformance +

+
+
+
    +
  • +
    + + + + Representable + +
    +
    +
    +
    +
    +
    +

    PayPal Messaging for SwiftUI

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    struct Representable : UIViewRepresentable
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

PayPalMessageViewEventDelegate and PayPalMessageViewStateDelegate protocol conformance +

+
+
+
    +
  • +
    + + + + onClick(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onClick(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onApply(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onApply(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onLoading(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onLoading(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onSuccess(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onSuccess(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onError(_:error:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onError(_ paypalMessageView: PayPalMessages.PayPalMessageView, error: PayPalMessages.PayPalMessageError)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalMessagingView/Representable.html b/6.23.2/Classes/BTPayPalMessagingView/Representable.html new file mode 100644 index 0000000000..4145995abe --- /dev/null +++ b/6.23.2/Classes/BTPayPalMessagingView/Representable.html @@ -0,0 +1,539 @@ + + + + Representable Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Representable

+
+
+ +
struct Representable : UIViewRepresentable
+ +
+
+

PayPal Messaging for SwiftUI

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

UIViewRepresentable Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalNativeCheckoutAccountNonce.html b/6.23.2/Classes/BTPayPalNativeCheckoutAccountNonce.html new file mode 100644 index 0000000000..a4fdad7a94 --- /dev/null +++ b/6.23.2/Classes/BTPayPalNativeCheckoutAccountNonce.html @@ -0,0 +1,687 @@ + + + + BTPayPalNativeCheckoutAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeCheckoutAccountNonce

+
+
+ +
@objcMembers
+public class BTPayPalNativeCheckoutAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a PayPal payment method.

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

Public Properties +

+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client metadata id associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Optional. Payer id associated with this transaction. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalNativeCheckoutClient.html b/6.23.2/Classes/BTPayPalNativeCheckoutClient.html new file mode 100644 index 0000000000..2aae6b732f --- /dev/null +++ b/6.23.2/Classes/BTPayPalNativeCheckoutClient.html @@ -0,0 +1,641 @@ + + + + BTPayPalNativeCheckoutClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeCheckoutClient

+
+
+ +
@objc
+public class BTPayPalNativeCheckoutClient : NSObject
+ +
+
+

Client used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a PayPal Native client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public convenience init(apiClient: BTAPIClient)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalNativeCheckoutRequest.html b/6.23.2/Classes/BTPayPalNativeCheckoutRequest.html new file mode 100644 index 0000000000..ccf77df45c --- /dev/null +++ b/6.23.2/Classes/BTPayPalNativeCheckoutRequest.html @@ -0,0 +1,578 @@ + + + + BTPayPalNativeCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeCheckoutRequest

+
+
+ +
@objcMembers
+public class BTPayPalNativeCheckoutRequest : BTPayPalCheckoutRequest
+ +
+
+

Options for the PayPal Checkout flow.

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

Initializer +

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

    Initializes a PayPal Native Checkout request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: String,
    +    intent: BTPayPalRequestIntent = .authorize,
    +    offerPayLater: Bool = false,
    +    currencyCode: String? = nil,
    +    requestBillingAgreement: Bool = false,
    +    billingAgreementDescription: String? = nil,
    +    userAuthenticationEmail: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

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

    Used for a one-time payment. Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’

    +
    +
    + + intent + + +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout. +and is limited to 7 digits before the decimal point.

    +
    +
    + + offerPayLater + + +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    +
    +
    + + currencyCode + + +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set. +See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes.

    +
    +
    + + requestBillingAgreement + + +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout.

    +
    +
    + + billingAgreementDescription + + +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also +set requestBillingAgreement to true on your BTPayPalNativeVaultRequest.

    +
    +
    + + userAuthenticationEmail + + +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalNativeVaultRequest.html b/6.23.2/Classes/BTPayPalNativeVaultRequest.html new file mode 100644 index 0000000000..7b35d0322a --- /dev/null +++ b/6.23.2/Classes/BTPayPalNativeVaultRequest.html @@ -0,0 +1,511 @@ + + + + BTPayPalNativeVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeVaultRequest

+
+
+ +
@objcMembers
+public class BTPayPalNativeVaultRequest : BTPayPalVaultBaseRequest
+ +
+
+

Options for the PayPal Vault flow.

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

Initializer +

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

    Initializes a PayPal Native Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    offerCredit: Bool = false,
    +    billingAgreementDescription: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    + + billingAgreementDescription + + +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set +requestBillingAgreement to true on your BTPayPalCheckoutRequest.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalRequest.html b/6.23.2/Classes/BTPayPalRequest.html new file mode 100644 index 0000000000..d6116fbe39 --- /dev/null +++ b/6.23.2/Classes/BTPayPalRequest.html @@ -0,0 +1,764 @@ + + + + BTPayPalRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalRequest

+
+
+ +
@objcMembers
+open class BTPayPalRequest : NSObject
+ +
+
+

Base options for PayPal Checkout and PayPal Vault flows.

+
+

Note

+ Do not instantiate this class directly. Instead, use BTPayPalCheckoutRequest or BTPayPalVaultRequest. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

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

    Defaults to false. When set to true, the shipping address selector will be displayed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressRequired: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Defaults to false. Set to true to enable user editing of the shipping address.

    +
    +

    Note

    + Only applies when shippingAddressOverride is set. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressEditable: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + localeCode + +
    +
    +
    +
    +
    +
    +

    Optional: A locale code to use for the transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var localeCode: BTPayPalLocaleCode
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: A valid shipping address to be displayed in the transaction flow. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressOverride: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + landingPageType + +
    +
    +
    +
    +
    +
    +

    Optional: Landing page type. Defaults to .none.

    +
    +

    Note

    + Setting the BTPayPalRequest’s landingPageType changes the PayPal page to display when a user lands on the PayPal site to complete the payment. +.login specifies a PayPal account login page is used. +.billing specifies a non-PayPal account landing page is used. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var landingPageType: BTPayPalRequestLandingPageType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant name displayed inside of the PayPal flow; defaults to the company name on your Braintree account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: A non-default merchant account to use for tokenization.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lineItems + +
    +
    +
    +
    +
    +
    +

    Optional: The line items for this transaction. It can include up to 249 line items.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lineItems: [BTPayPalLineItem]?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set + requestBillingAgreement to true on your BTPayPalCheckoutRequest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAgreementDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + riskCorrelationID + +
    +
    +
    +
    +
    +
    +

    Optional: A risk correlation ID created with Set Transaction Context on your server.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var riskCorrelationID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalVaultBaseRequest.html b/6.23.2/Classes/BTPayPalVaultBaseRequest.html new file mode 100644 index 0000000000..512be4a98c --- /dev/null +++ b/6.23.2/Classes/BTPayPalVaultBaseRequest.html @@ -0,0 +1,538 @@ + + + + BTPayPalVaultBaseRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalVaultBaseRequest

+
+
+ +
@objcMembers
+open class BTPayPalVaultBaseRequest : BTPayPalRequest
+ +
+
+

Options for the PayPal Vault flow.

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

Public Properties +

+
+
+
    +
  • +
    + + + + offerCredit + +
    +
    +
    +
    +
    +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var offerCredit: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(offerCredit:) + +
    +
    +
    +
    +
    +
    +

    Initializes a PayPal Native Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(offerCredit: Bool = false)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPayPalVaultRequest.html b/6.23.2/Classes/BTPayPalVaultRequest.html new file mode 100644 index 0000000000..3a5de5e5e7 --- /dev/null +++ b/6.23.2/Classes/BTPayPalVaultRequest.html @@ -0,0 +1,665 @@ + + + + BTPayPalVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalVaultRequest

+
+
+ +
@objcMembers
+public class BTPayPalVaultRequest : BTPayPalVaultBaseRequest
+ +
+
+

Options for the PayPal Vault flow.

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

Public Properties +

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

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAuthenticationEmail: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializers +

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

    Initializes a PayPal Vault request for the PayPal App Switch flow

    +
    +

    Warning

    + This initializer should be used for merchants using the PayPal App Switch flow. This feature is currently in beta and may change or be removed in future releases. + +
    +

    Note

    + The PayPal App Switch flow currently only supports the production environment. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(
    +    userAuthenticationEmail: String,
    +    enablePayPalAppSwitch: Bool,
    +    offerCredit: Bool = false
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + userAuthenticationEmail + + +
    +

    Required: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    +
    +
    + + enablePayPalAppSwitch + + +
    +

    Required: Used to determine if the customer will use the PayPal app switch flow.

    +
    +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

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

    Initializes a PayPal Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(offerCredit: Bool = false, userAuthenticationEmail: String? = nil)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    + + userAuthenticationEmail + + +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

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

    Declaration

    +
    +

    Swift

    +
    public override func parameters(with configuration: BTConfiguration, universalLink: URL? = nil) -> [String : Any]
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPaymentMethodNonce.html b/6.23.2/Classes/BTPaymentMethodNonce.html new file mode 100644 index 0000000000..f43ddcd1f9 --- /dev/null +++ b/6.23.2/Classes/BTPaymentMethodNonce.html @@ -0,0 +1,733 @@ + + + + BTPaymentMethodNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPaymentMethodNonce

+
+
+ +
@objcMembers
+open class BTPaymentMethodNonce : NSObject
+ +
+
+

BTPaymentMethodNonce is for generic tokenized payment information.

+ +

For example, if a customer’s vaulted payment methods contains a type that’s not recognized or supported by the +Braintree SDK or the client-side integration (e.g. the vault contains a PayPal account but the client-side +integration does not include the PayPal component), this type can act as a fallback.

+ +

The payment method nonce is a public token that acts as a placeholder for sensitive payments data that +has been uploaded to Braintree for subsequent processing. The nonce is safe to access on the client and can be +used on your server to reference the data in Braintree operations, such as Transaction.sale.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    The payment method nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var nonce: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + type + +
    +
    +
    +
    +
    +
    +

    The string identifying the type of the payment method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var type: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isDefault + +
    +
    +
    +
    +
    +
    +

    The boolean indicating whether this is a default payment method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isDefault: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(nonce:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:)
    +public init(nonce: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

    +
    + +
    +
    +
  • +
  • +
    + + + + init(nonce:type:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:type:)
    +public init(nonce: String, type: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    + + type + + +
    +

    A string identifying the type of the payment method.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

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

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:type:isDefault:)
    +public init(nonce: String, type: String, isDefault: Bool)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    + + type + + +
    +

    A string identifying the type of the payment method.

    +
    +
    + + isDefault + + +
    +

    A boolean indicating whether this is a default payment method.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPaymentMethodNonceParser.html b/6.23.2/Classes/BTPaymentMethodNonceParser.html new file mode 100644 index 0000000000..b950aa3955 --- /dev/null +++ b/6.23.2/Classes/BTPaymentMethodNonceParser.html @@ -0,0 +1,655 @@ + + + + BTPaymentMethodNonceParser Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPaymentMethodNonceParser

+
+
+ +
@objcMembers
+public class BTPaymentMethodNonceParser : NSObject
+ +
+
+

A JSON parser that parses BTJSON into concrete BTPaymentMethodNonce objects. It supports registration of parsers at runtime.

+ +

BTPaymentMethodNonceParser provides access to JSON parsing for different payment options +without introducing compile-time dependencies on payment option frameworks and their symbols.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + shared + +
    +
    +
    +
    +
    +
    +

    The singleton instance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(sharedParser)
    +public static let shared: BTPaymentMethodNonceParser
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + allTypes + +
    +
    +
    +
    +
    +
    +

    An array of the tokenization types currently registered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var allTypes: [String] { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isTypeAvailable(_:) + +
    +
    +
    +
    +
    +
    +

    Indicates whether a tokenization type is currently registered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func isTypeAvailable(_ type: String) -> Bool
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + type + + +
    +

    The tokenization type string

    +
    +
    +
    +
    +

    Return Value

    +

    A bool indicating if the payment method type is available.

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

    Registers a parsing block for a tokenization type.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func registerType(_ type: String?, withParsingBlock: @escaping (_ json: BTJSON?) -> BTPaymentMethodNonce?)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + type + + +
    +

    The tokenization type string

    +
    +
    + + withParsingBlock + + +
    +

    jsonParsingBlock The block to execute when parseJSON:type: is called for the tokenization type. +This block should return a BTPaymentMethodNonce object, or nil if the JSON cannot be parsed.

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

    Parses tokenized payment information that has been serialized to JSON, and returns a BTPaymentMethodNonce object.

    + +

    The BTPaymentMethodNonce object is created by the JSON parsing block that has been registered for the tokenization type.

    + +

    If the type has not been registered, this method will attempt to read the nonce from the JSON and return + a basic object; if it fails, it will return nil.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func parseJSON(_ json: BTJSON?, withParsingBlockForType type: String?) -> BTPaymentMethodNonce?
    + +
    +
    +
    +

    Return Value

    +

    A BTPaymentMethodNonce object, or nil if the tokenized payment info JSON does not contain a nonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTPostalAddress.html b/6.23.2/Classes/BTPostalAddress.html new file mode 100644 index 0000000000..02494b4deb --- /dev/null +++ b/6.23.2/Classes/BTPostalAddress.html @@ -0,0 +1,648 @@ + + + + BTPostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPostalAddress

+
+
+ +
@objcMembers
+public class BTPostalAddress : NSObject
+ +
+
+

Generic postal address

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + recipientName + +
    +
    +
    +
    +
    +
    +

    Optional. Recipient name for shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recipientName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Line 1 of the Address (eg. number, street, etc).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional line 2 of the Address (eg. suite, apt #, etc.).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    City name

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    2 letter country code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    Zip code or equivalent is usually required for countries that have them. +For a list of countries that do not have postal codes please refer to http://en.wikipedia.org/wiki/Postal_code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTSEPADirectDebitClient.html b/6.23.2/Classes/BTSEPADirectDebitClient.html new file mode 100644 index 0000000000..880e943d63 --- /dev/null +++ b/6.23.2/Classes/BTSEPADirectDebitClient.html @@ -0,0 +1,635 @@ + + + + BTSEPADirectDebitClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTSEPADirectDebitClient

+
+
+ +
@objc
+public class BTSEPADirectDebitClient : BTWebAuthenticationSessionClient
+ +
+
+

Used to integrate with SEPA Direct Debit.

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

Initializers +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a SEPA Direct Debit client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An instance of BTAPIClient

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

Public Methods +

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

    Initiates an ASWebAuthenticationSession to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithSEPADirectDebitRequest:completion:)
    +public func tokenize(
    +    _ request: BTSEPADirectDebitRequest,
    +    completion:  @escaping (BTSEPADirectDebitNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    a BTSEPADebitRequest

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initiates an ASWebAuthenticationSession to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTSEPADirectDebitRequest) async throws -> BTSEPADirectDebitNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    a BTSEPADebitRequest

    +
    +
    +
    +
    +

    Return Value

    +

    A BTSEPADirectDebitNonce if successful

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTSEPADirectDebitNonce.html b/6.23.2/Classes/BTSEPADirectDebitNonce.html new file mode 100644 index 0000000000..789e8e7b85 --- /dev/null +++ b/6.23.2/Classes/BTSEPADirectDebitNonce.html @@ -0,0 +1,527 @@ + + + + BTSEPADirectDebitNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTSEPADirectDebitNonce

+
+
+ +
@objcMembers
+public class BTSEPADirectDebitNonce : BTPaymentMethodNonce
+ +
+
+

A payment method nonce representing a SEPA Direct Debit payment.

+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTSEPADirectDebitRequest.html b/6.23.2/Classes/BTSEPADirectDebitRequest.html new file mode 100644 index 0000000000..57773d6d82 --- /dev/null +++ b/6.23.2/Classes/BTSEPADirectDebitRequest.html @@ -0,0 +1,780 @@ + + + + BTSEPADirectDebitRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTSEPADirectDebitRequest

+
+
+ +
@objcMembers
+public class BTSEPADirectDebitRequest : NSObject
+ +
+
+

Parameters for creating a SEPA Direct Debit tokenization request.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + accountHolderName + +
    +
    +
    +
    +
    +
    +

    Required. The account holder name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountHolderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + iban + +
    +
    +
    +
    +
    +
    +

    Required. The full IBAN.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var iban: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + customerID + +
    +
    +
    +
    +
    +
    +

    Required. The customer ID.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var customerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + mandateType + +
    +
    +
    +
    +
    +
    +

    Optional. The BTSEPADebitMandateType. If not set, defaults to .oneOff

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var mandateType: BTSEPADirectDebitMandateType?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    Required. The user’s billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional. A non-default merchant account to use for tokenization.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locale + +
    +
    +
    +
    +
    +
    +

    Optional. A locale code to use for creating a mandate. +See https://developer.paypal.com/reference/locale-codes/ for a list of possible values. +Locale code should be supplied as a BCP-47 formatted locale code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locale: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initialize a new SEPA Direct Debit request.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    accountHolderName: String? = nil,
    +    iban: String? = nil,
    +    customerID: String? = nil,
    +    mandateType: BTSEPADirectDebitMandateType? = .oneOff,
    +    billingAddress: BTPostalAddress? = nil,
    +    merchantAccountID: String? = nil,
    +    locale: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + accountHolderName + + +
    +

    Required. The account holder name.

    +
    +
    + + iban + + +
    +

    Required. The full IBAN.

    +
    +
    + + customerID + + +
    +

    Required. The customer ID.

    +
    +
    + + mandateType + + +
    +

    Optional. The BTSEPADebitMandateType. If not set, defaults to .oneOff

    +
    +
    + + billingAddress + + +
    +

    Required. The user’s billing address.

    +
    +
    + + merchantAccountID + + +
    +

    Optional. A non-default merchant account to use for tokenization.

    +
    +
    + + locale + + +
    +

    Optional. A locale code to use for creating a mandate. +See https://developer.paypal.com/reference/locale-codes/ for a list of possible values. +Locale code should be supplied as a BCP-47 formatted locale code.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTShopperInsightsClient.html b/6.23.2/Classes/BTShopperInsightsClient.html new file mode 100644 index 0000000000..a3d5541488 --- /dev/null +++ b/6.23.2/Classes/BTShopperInsightsClient.html @@ -0,0 +1,692 @@ + + + + BTShopperInsightsClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTShopperInsightsClient

+
+
+ +
public class BTShopperInsightsClient
+ +
+
+

Use BTShopperInsightsClient to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI. + By customizing each customer’s checkout experience, you can improve conversion, increase sales/repeat buys and boost user retention/loyalty.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Private Properties +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a BTShopperInsightsClient

    +
    +

    Warning

    + This features only works with a client token. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    A BTAPIClient instance.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + getRecommendedPaymentMethods(request:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    This method confirms if the customer is a user of PayPal services using their email and phone number.

    +
    +

    Warning

    + This feature is in beta. Its public API may change or be removed in future releases. + PayPal recommendation is only available for US, AU, FR, DE, ITA, NED, ESP, Switzerland and UK merchants. + Venmo recommendation is only available for US merchants. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func getRecommendedPaymentMethods(request: BTShopperInsightsRequest) async throws -> BTShopperInsightsResult
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    A BTShopperInsightsRequest containing the buyer’s user information

    +
    +
    +
    +
    +

    Return Value

    +

    A BTShopperInsightsResult instance

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

    Call this method when the PayPal button has been successfully displayed to the buyer. +This method sends analytics to help improve the Shopper Insights feature experience.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendPayPalPresentedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the PayPal button has been selected/tapped by the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendPayPalSelectedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the Venmo button has been successfully displayed to the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendVenmoPresentedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the Venmo button has been selected/tapped by the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendVenmoSelectedEvent()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureAdditionalInformation.html b/6.23.2/Classes/BTThreeDSecureAdditionalInformation.html new file mode 100644 index 0000000000..fafdae8573 --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureAdditionalInformation.html @@ -0,0 +1,1769 @@ + + + + BTThreeDSecureAdditionalInformation Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureAdditionalInformation

+
+
+ +
@objcMembers
+public class BTThreeDSecureAdditionalInformation : NSObject
+ +
+
+

Additional information for a 3DS lookup. Used in 3DS 2.0+ flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping address used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddress: BTThreeDSecurePostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit string indicating the shipping method chosen for the transaction

    + +

    Possible Values:

    + +
      +
    • 01: Ship to cardholder billing address
    • +
    • 02: Ship to another verified address on file with merchant
    • +
    • 03: Ship to address that is different than billing address
    • +
    • 04: Ship to store (store address should be populated on request)
    • +
    • 05: Digital goods
    • +
    • 06: Travel and event tickets, not shipped
    • +
    • 07: Other
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingMethodIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional. The 3-letter string representing the merchant product code

    + +

    Possible Values:

    + +
      +
    • AIR: Airline
    • +
    • GEN: General Retail
    • +
    • DIG: Digital Goods
    • +
    • SVC: Services
    • +
    • RES: Restaurant
    • +
    • TRA: Travel
    • +
    • DSP: Cash Dispensing
    • +
    • REN: Car Rental
    • +
    • GAS: Fueld
    • +
    • LUX: Luxury Retail
    • +
    • ACC: Accommodation Retail
    • +
    • TBD: Other
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deliveryTimeframe + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating the delivery timeframe

    + +

    Possible values:

    + +
      +
    • 01: Electronic delivery
    • +
    • 02: Same day shipping
    • +
    • 03: Overnight shipping
    • +
    • 04: Two or more day shipping
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var deliveryTimeframe: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deliveryEmail + +
    +
    +
    +
    +
    +
    +

    Optional. For electronic delivery, email address to which the merchandise was delivered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var deliveryEmail: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + reorderIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating whether the cardholder is reordering previously purchased merchandise

    + +

    Possible values:

    + +
      +
    • 01: First time ordered
    • +
    • 02: Reordered
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var reorderIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + preorderIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating whether the cardholder is placing an order with a future availability or release date

    + +

    Possible values:

    + +
      +
    • 01: Merchandise available
    • +
    • 02: Future availability
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var preorderIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + preorderDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating expected date that a pre-ordered purchase will be available

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var preorderDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The purchase amount total for prepaid gift cards in major units

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardCurrencyCode + +
    +
    +
    +
    +
    +
    +

    Optional. ISO 4217 currency code for the gift card purchased

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardCurrencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardCount + +
    +
    +
    +
    +
    +
    +

    Optional. Total count of individual prepaid gift cards purchased

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardCount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountAgeIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.

    + +

    Possible values:

    + +
      +
    • 01: Changed during transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountAgeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountCreateDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder’s account was last changed. +This includes changes to the billing or shipping address, new payment accounts or new users added.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountCreateDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.

    + +

    Possible values:

    + +
      +
    • 01: Changed during transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountChangeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountChangeDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder’s account was last changed. +This includes changes to the billing or shipping address, new payment accounts or new users added.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountChangeDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the cardholder changed or reset the password on the account.

    + +

    Possible values:

    + +
      +
    • 01: No change
    • +
    • 02: Changed during transaction
    • +
    • 03: Less than 30 days
    • +
    • 04: 30-60 days
    • +
    • 05: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPwdChangeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountPwdChangeDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder last changed or reset password on account.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPwdChangeDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating when the shipping address used for transaction was first used.

    + +

    Possible values:

    + +
      +
    • 01: This transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressUsageIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date when the shipping address used for this transaction was first used.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressUsageDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionCountDay + +
    +
    +
    +
    +
    +
    +

    Optional. Number of transactions (successful or abandoned) for this cardholder account within the last 24 hours.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionCountDay: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionCountYear + +
    +
    +
    +
    +
    +
    +

    Optional. Number of transactions (successful or abandoned) for this cardholder account within the last year.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionCountYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + addCardAttempts + +
    +
    +
    +
    +
    +
    +

    Optional. Number of add card attempts in the last 24 hours.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var addCardAttempts: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountPurchases + +
    +
    +
    +
    +
    +
    +

    Optional. Number of purchases with this cardholder account during the previous six months.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPurchases: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fraudActivity + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating whether the merchant experienced suspicious activity (including previous fraud) on the account.

    + +

    Possible values:

    + +
      +
    • 01: No suspicious activity
    • +
    • 02: Suspicious activity observed
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var fraudActivity: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingNameIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating if the cardholder name on the account is identical to the shipping name used for the transaction.

    + +

    Possible values:

    + +
      +
    • 01: Account name identical to shipping name
    • +
    • 02: Account name different than shipping name
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingNameIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating the length of time that the payment account was enrolled in the merchant account.

    + +

    Possible values:

    + +
      +
    • 01: No account (guest checkout)
    • +
    • 02: During the transaction
    • +
    • 03: Less than 30 days
    • +
    • 04: 30-60 days
    • +
    • 05: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentAccountIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paymentAccountAge + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the payment account was added to the cardholder account.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentAccountAge: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + addressMatch + +
    +
    +
    +
    +
    +
    +

    Optional. The 1-character value (Y/N) indicating whether cardholder billing and shipping addresses match.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var addressMatch: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountID + +
    +
    +
    +
    +
    +
    +

    Optional. Additional cardholder account information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ipAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The IP address of the consumer. IPv4 and IPv6 are supported.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var ipAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + orderDescription + +
    +
    +
    +
    +
    +
    +

    Optional. Brief description of items purchased.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var orderDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + taxAmount + +
    +
    +
    +
    +
    +
    +

    Optional. Unformatted tax amount without any decimalization (ie. $123.67 = 12367).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var taxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + userAgent + +
    +
    +
    +
    +
    +
    +

    Optional. The exact content of the HTTP user agent header.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAgent: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating the type of authentication request.

    + +

    Possible values:

    + +
      +
    • 02: Recurring transaction
    • +
    • 03: Installment transaction
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + installment + +
    +
    +
    +
    +
    +
    +

    Optional. An integer value greater than 1 indicating the maximum number of permitted authorizations for installment payments.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var installment: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + purchaseDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 14-digit number (format: YYYYMMDDHHMMSS) indicating the date in UTC of original purchase.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var purchaseDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurringEnd + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date after which no further recurring authorizations should be performed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recurringEnd: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurringFrequency + +
    +
    +
    +
    +
    +
    +

    Optional. Integer value indicating the minimum number of days between recurring authorizations. +A frequency of monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months (ex. 6 months = 168).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recurringFrequency: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sdkMaxTimeout + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number of minutes (minimum 05) to set the maximum amount of time for all 3DS 2.0 messages to be communicated between all components.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var sdkMaxTimeout: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + workPhoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The work phone number used for verification. Only numbers; remove dashes, parenthesis and other characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var workPhoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureClient.html b/6.23.2/Classes/BTThreeDSecureClient.html new file mode 100644 index 0000000000..fdb362167b --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureClient.html @@ -0,0 +1,854 @@ + + + + BTThreeDSecureClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureClient

+
+
+ +
@objcMembers
+public class BTThreeDSecureClient : NSObject
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new BTThreeDSecureClient instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

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

Public Methods +

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

    Starts the 3DS flow using a BTThreeDSecureRequest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func startPaymentFlow(_ request: BTThreeDSecureRequest, completion: @escaping (BTThreeDSecureResult?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    A BTThreeDSecureRequest request.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when the 3DS flow is complete or an error occurs.

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

    Creates a stringified JSON object containing the information necessary to perform a lookup.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(prepareLookup:completion:)
    +public func prepareLookup(
    +    _ request: BTThreeDSecureRequest,
    +    completion: @escaping (String?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once with the client payload string or an error.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + prepareLookup(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Creates a stringified JSON object containing the information necessary to perform a lookup.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func prepareLookup(_ request: BTThreeDSecureRequest) async throws -> String
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive a client payload string

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

    Initialize a challenge from a server side lookup call.

    +
    +

    Note

    + Majority of 3DS integrations do not need to use this method. Only for server-side 3DS integrations. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initializeChallengeWithLookupResponse:request:completion:)
    +public func initializeChallenge(
    +    lookupResponse: String,
    +    request: BTThreeDSecureRequest,
    +    completion: @escaping (BTThreeDSecureResult?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + lookupResponse + + +
    +

    The JSON string returned by the server side lookup.

    +
    +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when the payment flow is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + initializeChallenge(lookupResponse:request:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initialize a challenge from a server side lookup call.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func initializeChallenge(
    +    lookupResponse: String,
    +    request: BTThreeDSecureRequest
    +) async throws -> BTThreeDSecureResult
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + lookupResponse + + +
    +

    The JSON string returned by the server side lookup.

    +
    +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTThreeDSecureResult

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureInfo.html b/6.23.2/Classes/BTThreeDSecureInfo.html new file mode 100644 index 0000000000..7d5d10d87e --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureInfo.html @@ -0,0 +1,1004 @@ + + + + BTThreeDSecureInfo Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureInfo

+
+
+ +
@objcMembers
+public class BTThreeDSecureInfo : NSObject
+ +
+
+

Contains information about the 3D Secure status of a payment method

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

Public Properties +

+
+
+
    +
  • +
    + + + + acsTransactionID + +
    +
    +
    +
    +
    +
    +

    Unique transaction identifier assigned by the Access Control Server (ACS) to identify a single transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var acsTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On authentication, the transaction status result identifier.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationTransactionStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On authentication, provides additional information as to why the transaction status has the specific value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationTransactionStatusReason: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cavv + +
    +
    +
    +
    +
    +
    +

    Cardholder authentication verification value or “CAVV” is the main encrypted message issuers and card networks use to verify authentication has occured. +Mastercard uses an “AVV” message which will also be returned in the cavv parameter.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cavv: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dsTransactionID + +
    +
    +
    +
    +
    +
    +

    Directory Server Transaction ID is an ID used by the card brand’s 3DS directory server.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var dsTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + eciFlag + +
    +
    +
    +
    +
    +
    +

    The ecommerce indicator flag indicates the outcome of the 3DS authentication. +Possible values are 00, 01, and 02 for Mastercard 05, 06, and 07 for all other cardbrands.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var eciFlag: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + enrolled + +
    +
    +
    +
    +
    +
    +

    Indicates whether a card is enrolled in a 3D Secure program or not. Possible values:

    + +
      +
    • Y = Yes
    • +
    • N = No
    • +
    • U = Unavailable
    • +
    • B = Bypass
    • +
    • E = RequestFailure
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var enrolled: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + liabilityShifted + +
    +
    +
    +
    +
    +
    +

    If the 3D Secure liability shift has occurred.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var liabilityShifted: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    If the 3D Secure liability shift is possible.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var liabilityShiftPossible: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On lookup, the transaction status result identifier.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookupTransactionStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On lookup, provides additional information as to why the transaction status has the specific value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookupTransactionStatusReason: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paresStatus + +
    +
    +
    +
    +
    +
    +

    The Payer Authentication Response (PARes) Status, a transaction status result identifier. Possible Values:

    + +
      +
    • Y – Successful Authentication
    • +
    • N – Failed Authentication
    • +
    • U – Unable to Complete Authentication
    • +
    • A– Successful Stand-In Attempts Transaction
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paresStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + status + +
    +
    +
    +
    +
    +
    +

    The 3D Secure status value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var status: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Unique identifier assigned to the 3D Secure authentication performed for this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureAuthenticationID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Unique transaction identifier assigned by the 3DS Server to identify a single transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureServerTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureVersion + +
    +
    +
    +
    +
    +
    +

    The 3DS version used in the authentication, example “1.0.2” or “2.1.0”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureVersion: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + wasVerified + +
    +
    +
    +
    +
    +
    +

    Indicates if the 3D Secure lookup was performed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var wasVerified: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + xid + +
    +
    +
    +
    +
    +
    +

    Transaction identifier resulting from 3D Secure authentication. Uniquely identifies the transaction and sometimes required in the authorization message. +This field will no longer be used in 3DS 2 authentications.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var xid: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureLookup.html b/6.23.2/Classes/BTThreeDSecureLookup.html new file mode 100644 index 0000000000..567c7014c6 --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureLookup.html @@ -0,0 +1,688 @@ + + + + BTThreeDSecureLookup Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureLookup

+
+
+ +
@objcMembers
+public class BTThreeDSecureLookup : NSObject
+ +
+
+

The result of a 3DS lookup. +Contains liability shift and challenge information.

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

Public Properties +

+
+
+
    +
  • +
    + + + + paReq + +
    +
    +
    +
    +
    +
    +

    The “PAReq” or “Payment Authentication Request” is the encoded request message used to initiate authentication.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paReq: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + md + +
    +
    +
    +
    +
    +
    +

    The unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var md: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + acsURL + +
    +
    +
    +
    +
    +
    +

    The URL which the customer will be redirected to for a 3DS Interface. +In 3DS 2, the presence of an acsURL indicates there is a challenge as it would otherwise frictionlessly complete without an acsURL.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var acsURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + termURL + +
    +
    +
    +
    +
    +
    +

    The termURL is the fully qualified URL that the customer will be redirected to once the authentication completes.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var termURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureVersion + +
    +
    +
    +
    +
    +
    +

    The full version string of the 3DS lookup result.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureVersion: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates a 3DS 2 lookup result.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isThreeDSecureVersion2: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionID + +
    +
    +
    +
    +
    +
    +

    This a secondary unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates that a 3DS challenge is required.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requiresUserAuthentication: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecurePostalAddress.html b/6.23.2/Classes/BTThreeDSecurePostalAddress.html new file mode 100644 index 0000000000..4a8e2504eb --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecurePostalAddress.html @@ -0,0 +1,752 @@ + + + + BTThreeDSecurePostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecurePostalAddress

+
+
+ +
@objcMembers
+public class BTThreeDSecurePostalAddress : NSObject
+ +
+
+

Postal address for 3D Secure flows

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

Public Properties +

+
+
+
    +
  • +
    + + + + givenName + +
    +
    +
    +
    +
    +
    +

    Optional. Given name associated with the address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var givenName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + surname + +
    +
    +
    +
    +
    +
    +

    Optional. Surname associated with the address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var surname: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Optional. Line 1 of the Address (eg. number, street, etc)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional. Line 2 of the Address (eg. suite, apt #, etc.)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + line3 + +
    +
    +
    +
    +
    +
    +

    Optional. Line 3 of the Address (eg. suite, apt #, etc.)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var line3: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    Optional. City name

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Optional. Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    Optional. Zip code or equivalent is usually required for countries that have them. +For a list of countries that do not have postal codes please refer to http://en.wikipedia.org/wiki/Postal_code

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    Optional. 2 letter country code

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The phone number associated with the address

    +
    +

    Note

    + Only numbers. Remove dashes, parentheses and other characters + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureRenderType.html b/6.23.2/Classes/BTThreeDSecureRenderType.html new file mode 100644 index 0000000000..6bc1d6a7b1 --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureRenderType.html @@ -0,0 +1,645 @@ + + + + BTThreeDSecureRenderType Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureRenderType

+
+
+ +
@objcMembers
+public class BTThreeDSecureRenderType : NSObject, OptionSet
+ +
+
+

Render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + rawValue + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let rawValue: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(rawValue:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    required public init(rawValue: Int)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + otp + +
    +
    +
    +
    +
    +
    +

    OTP

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let otp: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + html + +
    +
    +
    +
    +
    +
    +

    HTML

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let html: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + singleSelect + +
    +
    +
    +
    +
    +
    +

    Single select

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let singleSelect: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + multiSelect + +
    +
    +
    +
    +
    +
    +

    Multi Select

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let multiSelect: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + oob + +
    +
    +
    +
    +
    +
    +

    OOB

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let oob: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureRequest.html b/6.23.2/Classes/BTThreeDSecureRequest.html new file mode 100644 index 0000000000..c36aa379a3 --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureRequest.html @@ -0,0 +1,1047 @@ + + + + BTThreeDSecureRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureRequest

+
+
+ +
@objcMembers
+public class BTThreeDSecureRequest : NSObject
+ +
+
+

Used to initialize a 3D Secure payment flow

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

Public Properties +

+
+
+
    +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    A nonce to be verified by ThreeDSecure

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var nonce: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + customFields + +
    +
    +
    +
    +
    +
    +

    Object where each key is the name of a custom field which has been configured in the Control Panel. In the Control Panel you can configure 3D Secure Rules which trigger on certain values.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var customFields: [String : String]?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    The amount for the transaction

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: NSDecimalNumber?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountType + +
    +
    +
    +
    +
    +
    +

    Optional. The account type selected by the cardholder

    +
    +

    Note

    + Some cards can be processed using either a credit or debit account and cardholders have the option to choose which account to use. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountType: BTThreeDSecureAccountType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The billing address used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTThreeDSecurePostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + mobilePhoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The mobile phone number used for verification

    +
    +

    Note

    + Only numbers. Remove dashes, parentheses and other characters + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var mobilePhoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Optional. The email used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingMethod + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping method chosen for the transaction

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingMethod: BTThreeDSecureShippingMethod
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + additionalInformation + +
    +
    +
    +
    +
    +
    +

    Optional. The additional information used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var additionalInformation: BTThreeDSecureAdditionalInformation?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + challengeRequested + +
    +
    +
    +
    +
    +
    +

    Optional. If set to true, an authentication challenge will be forced if possible.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var challengeRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + exemptionRequested + +
    +
    +
    +
    +
    +
    +

    Optional. If set to true, an exemption to the authentication challenge will be requested.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var exemptionRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The exemption type to be requested. If an exemption is requested and the exemption’s conditions are satisfied, then it will be applied.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestedExemptionType: BTThreeDSecureRequestedExemptionType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dataOnlyRequested + +
    +
    +
    +
    +
    +
    +

    Optional. Indicates whether to use the data only flow. In this flow, frictionless 3DS is ensured for Mastercard cardholders as the card scheme provides a risk score +for the issuer to determine whether to approve. If data only is not supported by the processor, a validation error will be raised. +Non-Mastercard cardholders will fallback to a normal 3DS flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var dataOnlyRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardAddChallenge + +
    +
    +
    +
    +
    +
    +

    Optional. An authentication created using this property should only be used for adding a payment method to the merchant’s vault and not for creating transactions.

    + +

    Defaults to .unspecified.

    + +

    If set to .challengeRequested, the authentication challenge will be requested from the issuer to confirm adding new card to the merchant’s vault. +If set to .notRequested the authentication challenge will not be requested from the issuer. +If set to .unspecified, when the amount is 0, the authentication challenge will be requested from the issuer. +If set to .unspecified, when the amount is greater than 0, the authentication challenge will not be requested from the issuer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @available(*, deprecated, renamed: "cardAddChallengeRequested", message: "Use the `cardAddChallengeRequested` boolean property instead")
    +public var cardAddChallenge: BTThreeDSecureCardAddChallenge { get set }
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. An authentication created using this flag should only be used for vaulting operations (creation of customers’ credit cards or payment methods) and not for creating transactions. +If set to true, a card-add challenge will be requested from the issuer. +If set to false, a card-add challenge will not be requested. +If the parameter is missing, a card-add challenge will only be requested for $0 amount.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardAddChallengeRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + v2UICustomization + +
    +
    +
    +
    +
    +
    +

    Optional. UI Customization for 3DS2 challenge views.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var v2UICustomization: BTThreeDSecureV2UICustomization?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + uiType + +
    +
    +
    +
    +
    +
    +

    Optional. Sets all UI types that the device supports for displaying specific challenge user interfaces in the 3D Secure challenge.

    + +

    Defaults to .both

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var uiType: BTThreeDSecureUIType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + renderTypes + +
    +
    +
    +
    +
    +
    +

    Optional. List of all the render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    +
    +

    Note

    + When using BTThreeDSecureUIType.both or BTThreeDSecureUIType.html, all BTThreeDSecureRenderType options must be set. +When using BTThreeDSecureUIType.native, all BTThreeDSecureRenderType options except .html must be set. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var renderTypes: [BTThreeDSecureRenderType]?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A delegate for receiving information about the ThreeDSecure payment flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public weak var threeDSecureRequestDelegate: BTThreeDSecureRequestDelegate?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureResult.html b/6.23.2/Classes/BTThreeDSecureResult.html new file mode 100644 index 0000000000..2aa5f0807b --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureResult.html @@ -0,0 +1,536 @@ + + + + BTThreeDSecureResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureResult

+
+
+ +
@objcMembers
+public class BTThreeDSecureResult : NSObject
+ +
+
+

The result of a 3D Secure payment flow

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

Public Properties +

+
+
+
    +
  • +
    + + + + tokenizedCard + +
    +
    +
    +
    +
    +
    +

    The BTCardNonce resulting from the 3D Secure flow

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var tokenizedCard: BTCardNonce?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lookup + +
    +
    +
    +
    +
    +
    +

    The result of a 3D Secure lookup. Contains liability shift and challenge information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookup: BTThreeDSecureLookup?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorMessage + +
    +
    +
    +
    +
    +
    +

    The error message when the 3D Secure flow is unsuccessful

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorMessage: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureV2BaseCustomization.html b/6.23.2/Classes/BTThreeDSecureV2BaseCustomization.html new file mode 100644 index 0000000000..1b8e285682 --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureV2BaseCustomization.html @@ -0,0 +1,536 @@ + + + + BTThreeDSecureV2BaseCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2BaseCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2BaseCustomization : NSObject
+ +
+
+

Base customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + textFontName + +
    +
    +
    +
    +
    +
    +

    Font type for the UI element.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textFontName: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + textColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + textFontSize + +
    +
    +
    +
    +
    +
    +

    Font size for the UI element.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textFontSize: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureV2ButtonCustomization.html b/6.23.2/Classes/BTThreeDSecureV2ButtonCustomization.html new file mode 100644 index 0000000000..8a6d491e12 --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureV2ButtonCustomization.html @@ -0,0 +1,548 @@ + + + + BTThreeDSecureV2ButtonCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2ButtonCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2ButtonCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Button customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + backgroundColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var backgroundColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cornerRadius + +
    +
    +
    +
    +
    +
    +

    Radius (integer value) for the button corners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cornerRadius: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureV2LabelCustomization.html b/6.23.2/Classes/BTThreeDSecureV2LabelCustomization.html new file mode 100644 index 0000000000..73b2999df1 --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureV2LabelCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2LabelCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2LabelCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2LabelCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Label customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + headingTextColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headingTextFontName + +
    +
    +
    +
    +
    +
    +

    Font type for the heading label text.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextFontName: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headingTextFontSize + +
    +
    +
    +
    +
    +
    +

    Font size for the heading label text.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextFontSize: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureV2TextBoxCustomization.html b/6.23.2/Classes/BTThreeDSecureV2TextBoxCustomization.html new file mode 100644 index 0000000000..8667fea4f9 --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureV2TextBoxCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2TextBoxCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2TextBoxCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2TextBoxCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Text box customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + borderWidth + +
    +
    +
    +
    +
    +
    +

    Width (integer value) of the text box border.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var borderWidth: Int { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + borderColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var borderColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cornerRadius + +
    +
    +
    +
    +
    +
    +

    Radius (integer value) for the text box corners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cornerRadius: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureV2ToolbarCustomization.html b/6.23.2/Classes/BTThreeDSecureV2ToolbarCustomization.html new file mode 100644 index 0000000000..15de9438ed --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureV2ToolbarCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2ToolbarCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2ToolbarCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2ToolbarCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Toolbar customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + backgroundColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var backgroundColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headerText + +
    +
    +
    +
    +
    +
    +

    Text for the header.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headerText: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + buttonText + +
    +
    +
    +
    +
    +
    +

    Text for the button. For example, “Cancel”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var buttonText: String? { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTThreeDSecureV2UICustomization.html b/6.23.2/Classes/BTThreeDSecureV2UICustomization.html new file mode 100644 index 0000000000..a495d70619 --- /dev/null +++ b/6.23.2/Classes/BTThreeDSecureV2UICustomization.html @@ -0,0 +1,611 @@ + + + + BTThreeDSecureV2UICustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2UICustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2UICustomization : NSObject
+ +
+
+

UI customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+ +
+
+
+ + +
+ +

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTVenmoAccountNonce.html b/6.23.2/Classes/BTVenmoAccountNonce.html new file mode 100644 index 0000000000..29705f4b20 --- /dev/null +++ b/6.23.2/Classes/BTVenmoAccountNonce.html @@ -0,0 +1,686 @@ + + + + BTVenmoAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoAccountNonce

+
+
+ +
@objcMembers
+public class BTVenmoAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a Venmo Account payment method

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

Public Properties +

+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    The email associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + externalID + +
    +
    +
    +
    +
    +
    +

    The external ID associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var externalID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    The first name associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    The last name associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phoneNumber + +
    +
    +
    +
    +
    +
    +

    The phone number associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + username + +
    +
    +
    +
    +
    +
    +

    The username associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var username: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The primary billing address associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The primary shipping address associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTVenmoClient.html b/6.23.2/Classes/BTVenmoClient.html new file mode 100644 index 0000000000..f4c0aedcac --- /dev/null +++ b/6.23.2/Classes/BTVenmoClient.html @@ -0,0 +1,697 @@ + + + + BTVenmoClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoClient

+
+
+ +
@objc
+public class BTVenmoClient : NSObject
+
extension BTVenmoClient: BTAppContextSwitchClient
+ +
+
+

Used to process Venmo payments

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

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates an Apple Pay client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

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

Public Methods +

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

    Initiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithVenmoRequest:completion:)
    +public func tokenize(_ request: BTVenmoRequest, completion: @escaping (BTVenmoAccountNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    A Venmo request.

    +
    +
    + + completion + + +
    +

    This completion will be invoked when app switch is complete or an error occurs. On success, you will receive +an instance of BTVenmoAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.

    +
    +

    Throws

    + An Error describing the failure. If the user cancels out of the flow, the error code will be .canceled. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTVenmoRequest) async throws -> BTVenmoAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTVenmoAccountNonce

    +
    + +
    +
    +
  • +
  • +
    + + + + isVenmoAppInstalled() + +
    +
    +
    +
    +
    +
    +

    Returns true if the proper Venmo app is installed and configured correctly, returns false otherwise.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func isVenmoAppInstalled() -> Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Switches to the App Store to download the Venmo application.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func openVenmoAppPageInAppStore()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTVenmoLineItem.html b/6.23.2/Classes/BTVenmoLineItem.html new file mode 100644 index 0000000000..0c984bfda0 --- /dev/null +++ b/6.23.2/Classes/BTVenmoLineItem.html @@ -0,0 +1,785 @@ + + + + BTVenmoLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoLineItem

+
+
+ +
@objcMembers
+public class BTVenmoLineItem : NSObject
+ +
+
+

A Venmo line item to be displayed in the Venmo Paysheet.

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

Public Properties +

+
+
+
    +
  • +
    + + + + quantity + +
    +
    +
    +
    +
    +
    +

    Number of units of the item purchased. This value must be a whole number and can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var quantity: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitAmount + +
    +
    +
    +
    +
    +
    +

    Per-unit price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var unitAmount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + name + +
    +
    +
    +
    +
    +
    +

    Item name. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var name: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + kind + +
    +
    +
    +
    +
    +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var kind: BTVenmoLineItemKind
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitTaxAmount + +
    +
    +
    +
    +
    +
    +

    Optional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var unitTaxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + itemDescription + +
    +
    +
    +
    +
    +
    +

    Optional: Item description. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var itemDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional: Product or UPC code for the item. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + url + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var url: URL?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Initializer +

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

    Initialize a BTVenmoLineItem

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithQuantity:unitAmount:name:kind:)
    +public init(quantity: Int, unitAmount: String, name: String, kind: BTVenmoLineItemKind)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + +
    + + quantity + + +
    +

    Number of units of the item purchased. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + unitAmount + + +
    +

    Per-unit price of the item. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + name + + +
    +

    Item name. Maximum 127 characters.

    +
    +
    + + kind + + +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Classes/BTVenmoRequest.html b/6.23.2/Classes/BTVenmoRequest.html new file mode 100644 index 0000000000..5b00a99732 --- /dev/null +++ b/6.23.2/Classes/BTVenmoRequest.html @@ -0,0 +1,951 @@ + + + + BTVenmoRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoRequest

+
+
+ +
@objcMembers
+public class BTVenmoRequest : NSObject
+ +
+
+

A BTVenmoRequest specifies options that contribute to the Venmo flow

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

Public Properties +

+
+
+
    +
  • +
    + + + + profileID + +
    +
    +
    +
    +
    +
    +

    Optional. The Venmo profile ID to be used during payment authorization. Customers will see the business name and logo associated with this Venmo profile, and it may show up in the +Venmo app as a “Connected Merchant”. Venmo profile IDs can be found in the Braintree Control Panel. Leaving this nil will use the default Venmo profile.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var profileID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + vault + +
    +
    +
    +
    +
    +
    +

    Whether to automatically vault the Venmo account on the client. For client-side vaulting, you must initialize BTAPIClient with a client token that was created with a customer ID. +Also, paymentMethodUsage on the BTVenmoRequest must be set to .multiUse.

    + +

    If this property is set to false, you can still vault the Venmo account on your server, provided that paymentMethodUsage is not set to .singleUse. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var vault: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paymentMethodUsage + +
    +
    +
    +
    +
    +
    +

    If set to .multiUse, the Venmo payment will be authorized for future payments and can be vaulted. + If set to .singleUse, the Venmo payment will be authorized for a one-time payment and cannot be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentMethodUsage: BTVenmoPaymentMethodUsage
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional. The business name that will be displayed in the Venmo app payment approval screen. Only used by merchants onboarded as PayFast channel partners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Whether the customer’s billing address should be collected and displayed on the Venmo paysheet. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var collectCustomerBillingAddress: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Whether the customer’s shipping address should be collected and displayed on the Venmo paysheet. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var collectCustomerShippingAddress: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isFinalAmount + +
    +
    +
    +
    +
    +
    +

    Indicates whether the purchase amount is the final amount. +Removes “subject to change” notice in Venmo app paysheet UI. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isFinalAmount: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + subTotalAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The subtotal amount of the transaction to be displayed on the paysheet. Excludes taxes, discounts, and shipping amounts.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var subTotalAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + discountAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The total discount amount applied on the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var discountAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + taxAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The total tax amount for the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var taxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping amount for the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The grand total amount on the transaction that should be displayed on the paysheet.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var totalAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lineItems + +
    +
    +
    +
    +
    +
    +

    Optional. The line items for this transaction. It can include up to 249 line items.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lineItems: [BTVenmoLineItem]?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fallbackToWeb + +
    +
    +
    +
    +
    +
    +

    Optional. Used to determine if the customer should fallback to the web flow if Venmo app is not installed.

    + +

    Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var fallbackToWeb: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums.html b/6.23.2/Enums.html new file mode 100644 index 0000000000..5f8de9f6e7 --- /dev/null +++ b/6.23.2/Enums.html @@ -0,0 +1,1753 @@ + + + + Enumerations Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Enumerations

+

The following enumerations are available globally.

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

    Error codes associated with a API Client.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAnalyticsServiceError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTClientTokenError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a client token.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTClientTokenError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + TokenizationKeyError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a Tokenization Key.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum TokenizationKeyError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTAPIClientError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a API Client.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAPIClientError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardNetwork + +
    +
    +
    +
    +
    +
    +

    Card type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTCardNetwork : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTHTTPError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with BTHTTP

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTHTTPError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTJSONError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTJSONError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error returned from the native PayPal flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalNativeCheckoutError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with SEPA Direct Debit.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTSEPADirectDebitError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Mandate type for the SEPA Direct Debit request.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTSEPADirectDebitMandateType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with American Express.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAmericanExpressError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTDataCollectorError + +
    +
    +
    +
    +
    +
    +

    Error details associated with Braintree Data Collector.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTDataCollectorError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Apple Pay.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTApplePayError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Payment Flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTLocalPaymentError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The account type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureAccountType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The card add challenge request

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureCardAddChallenge : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTThreeDSecureError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    3D Secure requested exemption type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureRequestedExemptionType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The shipping method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureShippingMethod : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureUIType + +
    +
    +
    +
    +
    +
    +

    The interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureUIType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Button types that can be customized in 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureV2ButtonType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTCardError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalRequestIntent + +
    +
    +
    +
    +
    +
    +

    Payment intent.

    +
    +

    Note

    + Must be set to BTPayPalRequestIntentSale for immediate payment, .authorize to authorize a payment for capture later, or .order to create an order. Defaults to .authorize. Only applies to PayPal Checkout. + +
    + +

    Capture payments later reference

    + +

    Create and process orders reference

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestIntent : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The call-to-action in the PayPal Checkout flow.

    +
    +

    Note

    + By default the final button will show the localized word for “Continue” and implies that the final amount billed is not yet known. +Setting the BTPayPalRequest’s userAction to .payNow changes the button text to “Pay Now”, conveying to +the user that billing will take place immediately. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestUserAction : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with PayPal.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLineItemKind + +
    +
    +
    +
    +
    +
    +

    Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLineItemKind : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use this option to specify the UPC type of the line item.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLineItemUPCType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLocaleCode + +
    +
    +
    +
    +
    +
    +

    A locale code to use for a transaction.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLocaleCode : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalPaymentType + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalPaymentType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestLandingPageType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoAppSwitchError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Venmo App Switch

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTVenmoAppSwitchError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Venmo

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTVenmoError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoLineItemKind + +
    +
    +
    +
    +
    +
    +

    Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTVenmoLineItemKind : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Usage type for the tokenized Venmo account

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTVenmoPaymentMethodUsage : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text and logo color option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingColor
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with PayPal Messaging.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Logo type option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingLogoType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Preferred message offer to display

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingOfferType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Message location within an application

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingPageType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text alignment option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingTextAlignment
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTShopperInsightsError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTAPIClientError.html b/6.23.2/Enums/BTAPIClientError.html new file mode 100644 index 0000000000..da7333ffbb --- /dev/null +++ b/6.23.2/Enums/BTAPIClientError.html @@ -0,0 +1,655 @@ + + + + BTAPIClientError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAPIClientError

+
+
+ +
public enum BTAPIClientError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a API Client.

+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Configuration fetch failed
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case configurationUnavailable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + notAuthorized + +
    +
    +
    +
    +
    +
    + +
      +
    1. Not authorized
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case notAuthorized
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTAPIClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedBase64Encoding + +
    +
    +
    +
    +
    +
    + +
      +
    1. Failed to base64 encode an authorizationFingerprint or tokenizationKey, when used as a cacheKey
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedBase64Encoding
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTAmericanExpressError.html b/6.23.2/Enums/BTAmericanExpressError.html new file mode 100644 index 0000000000..4483afe8ed --- /dev/null +++ b/6.23.2/Enums/BTAmericanExpressError.html @@ -0,0 +1,622 @@ + + + + BTAmericanExpressError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAmericanExpressError

+
+
+ +
public enum BTAmericanExpressError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with American Express.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noRewardsData + +
    +
    +
    +
    +
    +
    + +
      +
    1. An API response was received with missing rewards data
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noRewardsData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTAmericanExpressClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTAnalyticsServiceError.html b/6.23.2/Enums/BTAnalyticsServiceError.html new file mode 100644 index 0000000000..a48307a673 --- /dev/null +++ b/6.23.2/Enums/BTAnalyticsServiceError.html @@ -0,0 +1,556 @@ + + + + BTAnalyticsServiceError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAnalyticsServiceError

+
+
+ +
public enum BTAnalyticsServiceError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a API Client.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalidAPIClient + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid API client
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAPIClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTApplePayError.html b/6.23.2/Enums/BTApplePayError.html new file mode 100644 index 0000000000..7a3a4d12a6 --- /dev/null +++ b/6.23.2/Enums/BTApplePayError.html @@ -0,0 +1,655 @@ + + + + BTApplePayError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTApplePayError

+
+
+ +
public enum BTApplePayError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Apple Pay.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unsupported + +
    +
    +
    +
    +
    +
    + +
      +
    1. Apple Pay is disabled in the Braintree Control Panel
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unsupported
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. No Apple Pay Card data was returned
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noApplePayCardsReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTApplePayCardNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTCardError.html b/6.23.2/Enums/BTCardError.html new file mode 100644 index 0000000000..b390ef7d53 --- /dev/null +++ b/6.23.2/Enums/BTCardError.html @@ -0,0 +1,729 @@ + + + + BTCardError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCardError

+
+
+ +
public enum BTCardError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + integration + +
    +
    +
    +
    +
    +
    + +
      +
    1. Braintree SDK is integrated incorrectly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case integration
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Customer provided invalid input
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case customerInputInvalid([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardAlreadyExists(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Card already exists as a saved payment method
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cardAlreadyExists([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTCardError, rhs: BTCardError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTCardNetwork.html b/6.23.2/Enums/BTCardNetwork.html new file mode 100644 index 0000000000..bf8d9d54fb --- /dev/null +++ b/6.23.2/Enums/BTCardNetwork.html @@ -0,0 +1,887 @@ + + + + BTCardNetwork Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCardNetwork

+
+
+ +
@objc
+public enum BTCardNetwork : Int
+ +
+
+

Card type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    +

    Unknown card

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + AMEX + +
    +
    +
    +
    +
    +
    +

    American Express

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case AMEX
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dinersClub + +
    +
    +
    +
    +
    +
    +

    Diners Club

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case dinersClub
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + discover + +
    +
    +
    +
    +
    +
    +

    Discover

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case discover
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + masterCard + +
    +
    +
    +
    +
    +
    +

    Mastercard

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case masterCard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + visa + +
    +
    +
    +
    +
    +
    +

    Visa

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case visa
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + JCB + +
    +
    +
    +
    +
    +
    +

    JCB

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case JCB
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + laser + +
    +
    +
    +
    +
    +
    +

    Laser

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case laser
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + maestro + +
    +
    +
    +
    +
    +
    +

    Maestro

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case maestro
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unionPay + +
    +
    +
    +
    +
    +
    +

    Union Pay

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unionPay
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + hiper + +
    +
    +
    +
    +
    +
    +

    Hiper

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case hiper
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + hipercard + +
    +
    +
    +
    +
    +
    +

    Hipercard

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case hipercard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + solo + +
    +
    +
    +
    +
    +
    +

    Solo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case solo
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + switch + +
    +
    +
    +
    +
    +
    +

    Switch

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case `switch`
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ukMaestro + +
    +
    +
    +
    +
    +
    +

    UK Maestro

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ukMaestro
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTClientTokenError.html b/6.23.2/Enums/BTClientTokenError.html new file mode 100644 index 0000000000..84da00b634 --- /dev/null +++ b/6.23.2/Enums/BTClientTokenError.html @@ -0,0 +1,688 @@ + + + + BTClientTokenError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTClientTokenError

+
+
+ +
public enum BTClientTokenError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a client token.

+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Authorization fingerprint was not present or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorizationFingerprint
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidConfigURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. Config URL was missing or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidConfigURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidFormat(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid client token format
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidFormat(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unsupportedVersion + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unsupported client token version
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unsupportedVersion
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedDecoding(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Failed decoding from Base64 or UTF8
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedDecoding(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTDataCollectorError.html b/6.23.2/Enums/BTDataCollectorError.html new file mode 100644 index 0000000000..f2dda4ed7a --- /dev/null +++ b/6.23.2/Enums/BTDataCollectorError.html @@ -0,0 +1,622 @@ + + + + BTDataCollectorError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTDataCollectorError

+
+
+ +
public enum BTDataCollectorError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with Braintree Data Collector.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The request could not be serialized.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + encodingFailure + +
    +
    +
    +
    +
    +
    + +
      +
    1. The device data could not be encoded.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case encodingFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTHTTPError.html b/6.23.2/Enums/BTHTTPError.html new file mode 100644 index 0000000000..4a211b09fd --- /dev/null +++ b/6.23.2/Enums/BTHTTPError.html @@ -0,0 +1,994 @@ + + + + BTHTTPError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTHTTPError

+
+
+ +
public enum BTHTTPError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with BTHTTP

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error (reserved)
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The response had a Content-Type header that is not supported
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case responseContentTypeNotAcceptable([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 4xx error, e.g. 422, indicating a problem with the client’s request
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case clientError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + serverError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 5xx server error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case serverError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingBaseURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The BTHTTP instance was missing a base URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingBaseURL([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rateLimitError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 429, indicating a rate limiting error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case rateLimitError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dataNotFound + +
    +
    +
    +
    +
    +
    + +
      +
    1. The data object was unexpectedly nil
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case dataNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + httpResponseInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The HTTP response could not be created or is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case httpResponseInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + urlStringInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL string is either malformed or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case urlStringInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientApiURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The client API URL is either malformed or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case clientApiURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The authorization fingerprint is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorizationFingerprint
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to convert Encodable type to [String: Any] dictionary
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case serializationError(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated HTTPClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTHTTPError, rhs: BTHTTPError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTJSONError.html b/6.23.2/Enums/BTJSONError.html new file mode 100644 index 0000000000..bcd4940282 --- /dev/null +++ b/6.23.2/Enums/BTJSONError.html @@ -0,0 +1,621 @@ + + + + BTJSONError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTJSONError

+
+
+ +
public enum BTJSONError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. JSONSerialization failure
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + indexInvalid(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid index
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case indexInvalid(Int)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + keyInvalid(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid key
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case keyInvalid(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTLocalPaymentError.html b/6.23.2/Enums/BTLocalPaymentError.html new file mode 100644 index 0000000000..aa630cf86d --- /dev/null +++ b/6.23.2/Enums/BTLocalPaymentError.html @@ -0,0 +1,928 @@ + + + + BTLocalPaymentError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTLocalPaymentError

+
+
+ +
public enum BTLocalPaymentError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Payment Flow

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Local Payments are disabled in configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. UIApplication failed to switch to browser
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + integration + +
    +
    +
    +
    +
    +
    + +
      +
    1. Braintree SDK is integrated incorrectly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case integration
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noAccountData + +
    +
    +
    +
    +
    +
    + +
      +
    1. No payment flow account data returned
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noAccountData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Payment flow was canceled, typically initiated by the user when exiting early from the flow
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing nonce value in account response
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingRedirectURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. No URL found to display for payment authorization
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingRedirectURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingReturnURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. No URL was returned via the ASWebAuthenticationSession completion callback
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingReturnURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webSessionError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. ASWebAuthentication error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webSessionError(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTLocalPaymentError, rhs: BTLocalPaymentError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalError.html b/6.23.2/Enums/BTPayPalError.html new file mode 100644 index 0000000000..f15cf6bda6 --- /dev/null +++ b/6.23.2/Enums/BTPayPalError.html @@ -0,0 +1,1027 @@ + + + + BTPayPalError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalError

+
+
+ +
public enum BTPayPalError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with PayPal.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal is disabled in configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Payment flow was canceled, typically initiated by the user when exiting early from the flow.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. HTTP POST request returned an error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case httpPostRequestError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The web approval URL, web redirect URL, PayPal native app approval URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidURL(String)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The ASWebAuthenticationSession URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case asWebAuthenticationSessionURLInvalid(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidURLAction + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL action is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidURLAction
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTPayPalAccountNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webSessionError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. ASWebAuthentication error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webSessionError(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTPayPalClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The App Switch return URL did not contain the cancel or success path.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchReturnURLPathInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. App Switch could not complete
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingBAToken + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing BA Token for App Switch
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingBAToken
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingPayPalRequest + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing PayPal Request
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTPayPalError, rhs: BTPayPalError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalLineItemKind.html b/6.23.2/Enums/BTPayPalLineItemKind.html new file mode 100644 index 0000000000..3b6c926237 --- /dev/null +++ b/6.23.2/Enums/BTPayPalLineItemKind.html @@ -0,0 +1,497 @@ + + + + BTPayPalLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalLineItemKind

+
+
+ +
@objc
+public enum BTPayPalLineItemKind : Int
+ +
+
+

Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalLineItemUPCType.html b/6.23.2/Enums/BTPayPalLineItemUPCType.html new file mode 100644 index 0000000000..5feb25ec6f --- /dev/null +++ b/6.23.2/Enums/BTPayPalLineItemUPCType.html @@ -0,0 +1,677 @@ + + + + BTPayPalLineItemUPCType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalLineItemUPCType

+
+
+ +
@objc
+public enum BTPayPalLineItemUPCType : Int
+ +
+
+

Use this option to specify the UPC type of the line item.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_A + +
    +
    +
    +
    +
    +
    +

    Upc Type A

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_A
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_B + +
    +
    +
    +
    +
    +
    +

    Upc Type B

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_B
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_C + +
    +
    +
    +
    +
    +
    +

    Upc Type C

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_C
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_D + +
    +
    +
    +
    +
    +
    +

    Upc Type D

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_D
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_E + +
    +
    +
    +
    +
    +
    +

    Upc Type E

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_E
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_2 + +
    +
    +
    +
    +
    +
    +

    Upc Type 2

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_2
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_5 + +
    +
    +
    +
    +
    +
    +

    Upc Type 5

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_5
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalLocaleCode.html b/6.23.2/Enums/BTPayPalLocaleCode.html new file mode 100644 index 0000000000..34727aa6a4 --- /dev/null +++ b/6.23.2/Enums/BTPayPalLocaleCode.html @@ -0,0 +1,1249 @@ + + + + BTPayPalLocaleCode Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalLocaleCode

+
+
+ +
@objc
+public enum BTPayPalLocaleCode : Int
+ +
+
+

A locale code to use for a transaction.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + da_DK + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case da_DK
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + de_DE + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case de_DE
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_AU + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_AU
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_GB + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_GB
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_US + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_US
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + es_ES + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case es_ES
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + es_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case es_XC
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_CA + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_CA
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_FR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_FR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_XC
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + id_ID + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case id_ID
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + it_IT + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case it_IT
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ja_JP + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ja_JP
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ko_KR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ko_KR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + nl_NL + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case nl_NL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + no_NO + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case no_NO
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pl_PL + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pl_PL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pt_BR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pt_BR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pt_PT + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pt_PT
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ru_RU + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ru_RU
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sv_SE + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sv_SE
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + th_TH + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case th_TH
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + tr_TR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case tr_TR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_CN + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_CN
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_HK + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_HK
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_TW + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_TW
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_XC
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalMessagingColor.html b/6.23.2/Enums/BTPayPalMessagingColor.html new file mode 100644 index 0000000000..764c1a1fd5 --- /dev/null +++ b/6.23.2/Enums/BTPayPalMessagingColor.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingColor Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingColor

+
+
+ +
public enum BTPayPalMessagingColor
+ +
+
+

Text and logo color option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + black + +
    +
    +
    +
    +
    +
    +

    Black text with a color logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case black
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + white + +
    +
    +
    +
    +
    +
    +

    White text with a white logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case white
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + monochrome + +
    +
    +
    +
    +
    +
    +

    Black text with a black logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case monochrome
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + grayscale + +
    +
    +
    +
    +
    +
    +

    Black text with a desaturated logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case grayscale
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalMessagingError.html b/6.23.2/Enums/BTPayPalMessagingError.html new file mode 100644 index 0000000000..e968250f4b --- /dev/null +++ b/6.23.2/Enums/BTPayPalMessagingError.html @@ -0,0 +1,594 @@ + + + + BTPayPalMessagingError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingError

+
+
+ +
public enum BTPayPalMessagingError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with PayPal Messaging.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Could not find PayPal client ID in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalClientIDNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalMessagingLogoType.html b/6.23.2/Enums/BTPayPalMessagingLogoType.html new file mode 100644 index 0000000000..114aa25a57 --- /dev/null +++ b/6.23.2/Enums/BTPayPalMessagingLogoType.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingLogoType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingLogoType

+
+
+ +
public enum BTPayPalMessagingLogoType
+ +
+
+

Logo type option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + inline + +
    +
    +
    +
    +
    +
    +

    PayPal logo positioned inline within the message

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case inline
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + primary + +
    +
    +
    +
    +
    +
    +

    Primary logo including both the PayPal monogram and logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case primary
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + alternative + +
    +
    +
    +
    +
    +
    +

    Alternative logo including just the PayPal monogram

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case alternative
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    “PayPal” as bold text inline with the message

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalMessagingOfferType.html b/6.23.2/Enums/BTPayPalMessagingOfferType.html new file mode 100644 index 0000000000..371e28bad9 --- /dev/null +++ b/6.23.2/Enums/BTPayPalMessagingOfferType.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingOfferType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingOfferType

+
+
+ +
public enum BTPayPalMessagingOfferType
+ +
+
+

Preferred message offer to display

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + payLaterShortTerm + +
    +
    +
    +
    +
    +
    +

    Pay Later short term installment

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterShortTerm
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payLaterLongTerm + +
    +
    +
    +
    +
    +
    +

    Pay Later long term installments

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterLongTerm
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payLaterPayInOne + +
    +
    +
    +
    +
    +
    +

    Pay Later deferred payment

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterPayInOne
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    PayPal Credit No Interest

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalCreditNoInterest
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalMessagingPageType.html b/6.23.2/Enums/BTPayPalMessagingPageType.html new file mode 100644 index 0000000000..d214f50c54 --- /dev/null +++ b/6.23.2/Enums/BTPayPalMessagingPageType.html @@ -0,0 +1,621 @@ + + + + BTPayPalMessagingPageType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingPageType

+
+
+ +
public enum BTPayPalMessagingPageType
+ +
+
+

Message location within an application

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + home + +
    +
    +
    +
    +
    +
    +

    Home view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case home
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productDetails + +
    +
    +
    +
    +
    +
    +

    Individual product details view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case productDetails
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cart + +
    +
    +
    +
    +
    +
    +

    Shopping cart view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cart
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + miniCart + +
    +
    +
    +
    +
    +
    +

    Popover shopping cart view that covers part of the view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case miniCart
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + checkout + +
    +
    +
    +
    +
    +
    +

    Checkout view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkout
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + searchResults + +
    +
    +
    +
    +
    +
    +

    Search results

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case searchResults
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalMessagingTextAlignment.html b/6.23.2/Enums/BTPayPalMessagingTextAlignment.html new file mode 100644 index 0000000000..8840a045e2 --- /dev/null +++ b/6.23.2/Enums/BTPayPalMessagingTextAlignment.html @@ -0,0 +1,531 @@ + + + + BTPayPalMessagingTextAlignment Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingTextAlignment

+
+
+ +
public enum BTPayPalMessagingTextAlignment
+ +
+
+

Text alignment option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + left + +
    +
    +
    +
    +
    +
    +

    Text aligned to the left

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case left
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + center + +
    +
    +
    +
    +
    +
    +

    Text aligned to the center

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case center
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + right + +
    +
    +
    +
    +
    +
    +

    Text aligned to the right

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case right
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalNativeCheckoutError.html b/6.23.2/Enums/BTPayPalNativeCheckoutError.html new file mode 100644 index 0000000000..db01529274 --- /dev/null +++ b/6.23.2/Enums/BTPayPalNativeCheckoutError.html @@ -0,0 +1,994 @@ + + + + BTPayPalNativeCheckoutError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeCheckoutError

+
+
+ +
public enum BTPayPalNativeCheckoutError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error returned from the native PayPal flow

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalidRequest + +
    +
    +
    +
    +
    +
    + +
      +
    1. Request is not of type BTPayPalNativeCheckoutRequest or BTPayPalNativeVaultRequest
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payPalNotEnabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal is not enabled for this merchant in the Braintree Control Panel
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalNotEnabled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Could not find PayPal client ID in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalClientIDNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidEnvironment + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid environment identifier found in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidEnvironment
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to create PayPal order
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case orderCreationFailed(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal flow was canceled by the user
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + checkoutSDKFailed(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPalCheckout SDK returned an error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkoutSDKFailed(PayPalCheckout.ErrorInfo)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Tokenization with the Braintree Gateway failed
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case tokenizationFailed(Error)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to parse tokenization result
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case parsingTokenizationResultFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidJSONResponse + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid JSON response
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidJSONResponse
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTPayPalNativeCheckoutClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingReturnURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing return url in approval data
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingReturnURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTPayPalNativeCheckoutError, rhs: BTPayPalNativeCheckoutError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalPaymentType.html b/6.23.2/Enums/BTPayPalPaymentType.html new file mode 100644 index 0000000000..b530f9ed5b --- /dev/null +++ b/6.23.2/Enums/BTPayPalPaymentType.html @@ -0,0 +1,496 @@ + + + + BTPayPalPaymentType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalPaymentType

+
+
+ +
@objc
+public enum BTPayPalPaymentType : Int
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + checkout + +
    +
    +
    +
    +
    +
    +

    Checkout

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkout
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + vault + +
    +
    +
    +
    +
    +
    +

    Vault

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case vault
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalRequestIntent.html b/6.23.2/Enums/BTPayPalRequestIntent.html new file mode 100644 index 0000000000..48cb714d23 --- /dev/null +++ b/6.23.2/Enums/BTPayPalRequestIntent.html @@ -0,0 +1,565 @@ + + + + BTPayPalRequestIntent Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalRequestIntent

+
+
+ +
@objc
+public enum BTPayPalRequestIntent : Int
+ +
+
+

Payment intent.

+
+

Note

+ Must be set to BTPayPalRequestIntentSale for immediate payment, .authorize to authorize a payment for capture later, or .order to create an order. Defaults to .authorize. Only applies to PayPal Checkout. + +
+ +

Capture payments later reference

+ +

Create and process orders reference

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + authorize + +
    +
    +
    +
    +
    +
    +

    Authorize

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case authorize
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sale + +
    +
    +
    +
    +
    +
    +

    Sale

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sale
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + order + +
    +
    +
    +
    +
    +
    +

    Order

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case order
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + stringValue + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var stringValue: String { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalRequestLandingPageType.html b/6.23.2/Enums/BTPayPalRequestLandingPageType.html new file mode 100644 index 0000000000..790d67de43 --- /dev/null +++ b/6.23.2/Enums/BTPayPalRequestLandingPageType.html @@ -0,0 +1,527 @@ + + + + BTPayPalRequestLandingPageType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalRequestLandingPageType

+
+
+ +
@objc
+public enum BTPayPalRequestLandingPageType : Int
+ +
+
+

Use this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + login + +
    +
    +
    +
    +
    +
    +

    Login

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case login
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billing + +
    +
    +
    +
    +
    +
    +

    Billing

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case billing
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTPayPalRequestUserAction.html b/6.23.2/Enums/BTPayPalRequestUserAction.html new file mode 100644 index 0000000000..6559a51c60 --- /dev/null +++ b/6.23.2/Enums/BTPayPalRequestUserAction.html @@ -0,0 +1,504 @@ + + + + BTPayPalRequestUserAction Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalRequestUserAction

+
+
+ +
@objc
+public enum BTPayPalRequestUserAction : Int
+ +
+
+

The call-to-action in the PayPal Checkout flow.

+
+

Note

+ By default the final button will show the localized word for “Continue” and implies that the final amount billed is not yet known. +Setting the BTPayPalRequest’s userAction to .payNow changes the button text to “Pay Now”, conveying to +the user that billing will take place immediately. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payNow + +
    +
    +
    +
    +
    +
    +

    Pay Now

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payNow
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTSEPADirectDebitError.html b/6.23.2/Enums/BTSEPADirectDebitError.html new file mode 100644 index 0000000000..17ea909d94 --- /dev/null +++ b/6.23.2/Enums/BTSEPADirectDebitError.html @@ -0,0 +1,820 @@ + + + + BTSEPADirectDebitError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTSEPADirectDebitError

+
+
+ +
public enum BTSEPADirectDebitError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with SEPA Direct Debit.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webFlowCanceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. SEPA Direct Debit flow was canceled by the user.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webFlowCanceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resultURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL returned from the web flow was invalid.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resultURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resultReturnedNil + +
    +
    +
    +
    +
    +
    + +
      +
    1. The result of the create mandate request was nil and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resultReturnedNil
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + approvalURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The approval URL is invalid.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case approvalURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The web authentication session result was nil and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case authenticationResultNil
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A body was not returned from the API during the request.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTSEPADirectDebitNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTSEPADirectDebitClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTSEPADirectDebitMandateType.html b/6.23.2/Enums/BTSEPADirectDebitMandateType.html new file mode 100644 index 0000000000..bb44ab5515 --- /dev/null +++ b/6.23.2/Enums/BTSEPADirectDebitMandateType.html @@ -0,0 +1,495 @@ + + + + BTSEPADirectDebitMandateType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTSEPADirectDebitMandateType

+
+
+ +
@objc
+public enum BTSEPADirectDebitMandateType : Int
+ +
+
+

Mandate type for the SEPA Direct Debit request.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + oneOff + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case oneOff
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurrent + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case recurrent
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTShopperInsightsError.html b/6.23.2/Enums/BTShopperInsightsError.html new file mode 100644 index 0000000000..f8f16c7b12 --- /dev/null +++ b/6.23.2/Enums/BTShopperInsightsError.html @@ -0,0 +1,588 @@ + + + + BTShopperInsightsError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTShopperInsightsError

+
+
+ +
public enum BTShopperInsightsError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + emptyBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A nil body was returned from the payment method request and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case emptyBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidAuthorization + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid authorization type
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorization
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTThreeDSecureAccountType.html b/6.23.2/Enums/BTThreeDSecureAccountType.html new file mode 100644 index 0000000000..0dfa77f495 --- /dev/null +++ b/6.23.2/Enums/BTThreeDSecureAccountType.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureAccountType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureAccountType

+
+
+ +
@objc
+public enum BTThreeDSecureAccountType : Int
+ +
+
+

The account type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTThreeDSecureCardAddChallenge.html b/6.23.2/Enums/BTThreeDSecureCardAddChallenge.html new file mode 100644 index 0000000000..fb9a5c2b3e --- /dev/null +++ b/6.23.2/Enums/BTThreeDSecureCardAddChallenge.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureCardAddChallenge Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureCardAddChallenge

+
+
+ +
@objc
+public enum BTThreeDSecureCardAddChallenge : Int
+ +
+
+

The card add challenge request

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + requested + +
    +
    +
    +
    +
    +
    +

    Requested

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case requested
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + notRequested + +
    +
    +
    +
    +
    +
    +

    Not Requested

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case notRequested
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTThreeDSecureError.html b/6.23.2/Enums/BTThreeDSecureError.html new file mode 100644 index 0000000000..810fff24a1 --- /dev/null +++ b/6.23.2/Enums/BTThreeDSecureError.html @@ -0,0 +1,894 @@ + + + + BTThreeDSecureError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureError

+
+
+ +
public enum BTThreeDSecureError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedLookup(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure failed during the backend card lookup phase; please retry
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedLookup([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure failed during the user-facing authentication phase; please retry
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedAuthentication(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + configuration(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure was not configured correctly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case configuration(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A body was not returned from the API during the request.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. User canceled the 3DS 2 flow.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidAPIClient + +
    +
    +
    +
    +
    +
    + +
      +
    1. The BTAPIClient was invalid or missing
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAPIClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The request could not be serialized.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTThreeDSecureClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + exceededTimeoutLimit + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure was idle and exceeded timout limit
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case exceededTimeoutLimit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTThreeDSecureError, rhs: BTThreeDSecureError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTThreeDSecureRequestedExemptionType.html b/6.23.2/Enums/BTThreeDSecureRequestedExemptionType.html new file mode 100644 index 0000000000..e4a6ddf74e --- /dev/null +++ b/6.23.2/Enums/BTThreeDSecureRequestedExemptionType.html @@ -0,0 +1,587 @@ + + + + BTThreeDSecureRequestedExemptionType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureRequestedExemptionType

+
+
+ +
@objc
+public enum BTThreeDSecureRequestedExemptionType : Int
+ +
+
+

3D Secure requested exemption type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lowValue + +
    +
    +
    +
    +
    +
    +

    Low value

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case lowValue
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + secureCorporate + +
    +
    +
    +
    +
    +
    +

    Secure corporate

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case secureCorporate
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + trustedBeneficiary + +
    +
    +
    +
    +
    +
    +

    Trusted beneficiary

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case trustedBeneficiary
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Transaction risk analysis

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case transactionRiskAnalysis
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTThreeDSecureShippingMethod.html b/6.23.2/Enums/BTThreeDSecureShippingMethod.html new file mode 100644 index 0000000000..55564827db --- /dev/null +++ b/6.23.2/Enums/BTThreeDSecureShippingMethod.html @@ -0,0 +1,647 @@ + + + + BTThreeDSecureShippingMethod Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureShippingMethod

+
+
+ +
@objc
+public enum BTThreeDSecureShippingMethod : Int
+ +
+
+

The shipping method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sameDay + +
    +
    +
    +
    +
    +
    +

    Same Day

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sameDay
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expedited + +
    +
    +
    +
    +
    +
    +

    Expedited

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case expedited
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + priority + +
    +
    +
    +
    +
    +
    +

    Priority

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case priority
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ground + +
    +
    +
    +
    +
    +
    +

    Ground

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ground
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + electronicDelivery + +
    +
    +
    +
    +
    +
    +

    Electronic Delivery

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case electronicDelivery
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shipToStore + +
    +
    +
    +
    +
    +
    +

    Ship to Store

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case shipToStore
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTThreeDSecureUIType.html b/6.23.2/Enums/BTThreeDSecureUIType.html new file mode 100644 index 0000000000..4a73dc1aa0 --- /dev/null +++ b/6.23.2/Enums/BTThreeDSecureUIType.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureUIType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureUIType

+
+
+ +
@objc
+public enum BTThreeDSecureUIType : Int
+ +
+
+

The interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + native + +
    +
    +
    +
    +
    +
    +

    Native

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case native
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + html + +
    +
    +
    +
    +
    +
    +

    HTML

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case html
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + both + +
    +
    +
    +
    +
    +
    +

    Both

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case both
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTThreeDSecureV2ButtonType.html b/6.23.2/Enums/BTThreeDSecureV2ButtonType.html new file mode 100644 index 0000000000..e247bc7958 --- /dev/null +++ b/6.23.2/Enums/BTThreeDSecureV2ButtonType.html @@ -0,0 +1,587 @@ + + + + BTThreeDSecureV2ButtonType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2ButtonType

+
+
+ +
@objc
+public enum BTThreeDSecureV2ButtonType : Int
+ +
+
+

Button types that can be customized in 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + verify + +
    +
    +
    +
    +
    +
    +

    Verify button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case verify
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + continue + +
    +
    +
    +
    +
    +
    +

    Continue button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case `continue`
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + next + +
    +
    +
    +
    +
    +
    +

    Next button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case next
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cancel + +
    +
    +
    +
    +
    +
    +

    Cancel button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cancel
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resend + +
    +
    +
    +
    +
    +
    +

    Resend button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resend
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTVenmoAppSwitchError.html b/6.23.2/Enums/BTVenmoAppSwitchError.html new file mode 100644 index 0000000000..3804f1b654 --- /dev/null +++ b/6.23.2/Enums/BTVenmoAppSwitchError.html @@ -0,0 +1,556 @@ + + + + BTVenmoAppSwitchError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoAppSwitchError

+
+
+ +
public enum BTVenmoAppSwitchError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Venmo App Switch

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + returnURLError(_:_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The error returned from the Venmo return URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case returnURLError(Int, String?)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTVenmoError.html b/6.23.2/Enums/BTVenmoError.html new file mode 100644 index 0000000000..bae84f27f8 --- /dev/null +++ b/6.23.2/Enums/BTVenmoError.html @@ -0,0 +1,919 @@ + + + + BTVenmoError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoError

+
+
+ +
public enum BTVenmoError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Venmo

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Venmo is not enabled
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appNotAvailable + +
    +
    +
    +
    +
    +
    + +
      +
    1. The Venmo app is not installed or configured for app Switch
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appNotAvailable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Bundle display name is nil
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case bundleDisplayNameMissing
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. App Switch could not complete
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidReturnURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Return URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidReturnURL(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. No body was returned from the request
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Invalid request URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRedirectURL(String)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Enriched Customer Data is disabled
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case enrichedCustomerDataDisabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. The Venmo flow was canceled by the user
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. One or more values in redirect URL are invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRedirectURLParameter
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTVenmoLineItemKind.html b/6.23.2/Enums/BTVenmoLineItemKind.html new file mode 100644 index 0000000000..51dbc537df --- /dev/null +++ b/6.23.2/Enums/BTVenmoLineItemKind.html @@ -0,0 +1,497 @@ + + + + BTVenmoLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoLineItemKind

+
+
+ +
@objc
+public enum BTVenmoLineItemKind : Int
+ +
+
+

Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/BTVenmoPaymentMethodUsage.html b/6.23.2/Enums/BTVenmoPaymentMethodUsage.html new file mode 100644 index 0000000000..b093ab3776 --- /dev/null +++ b/6.23.2/Enums/BTVenmoPaymentMethodUsage.html @@ -0,0 +1,497 @@ + + + + BTVenmoPaymentMethodUsage Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoPaymentMethodUsage

+
+
+ +
@objc
+public enum BTVenmoPaymentMethodUsage : Int
+ +
+
+

Usage type for the tokenized Venmo account

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + multiUse + +
    +
    +
    +
    +
    +
    +

    The Venmo payment will be authorized for future payments and can be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case multiUse
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + singleUse + +
    +
    +
    +
    +
    +
    +

    The Venmo payment will be authorized for a one-time payment and cannot be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case singleUse
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Enums/TokenizationKeyError.html b/6.23.2/Enums/TokenizationKeyError.html new file mode 100644 index 0000000000..f6b7b93a4e --- /dev/null +++ b/6.23.2/Enums/TokenizationKeyError.html @@ -0,0 +1,556 @@ + + + + TokenizationKeyError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

TokenizationKeyError

+
+
+ +
public enum TokenizationKeyError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a Tokenization Key.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The tokenization key provided was invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Extensions.html b/6.23.2/Extensions.html new file mode 100644 index 0000000000..cb6a961b93 --- /dev/null +++ b/6.23.2/Extensions.html @@ -0,0 +1,493 @@ + + + + Extensions Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Extensions

+

The following extensions are available globally.

+ +
+
+ +
+
+
+
    +
  • +
    + + + + UIApplication + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    extension UIApplication: URLOpener
    + +
    +
    +
    +
    +
  • +
+
+
+
+ + +
+ +

CardinalValidationDelegate Protocol Conformance +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Extensions/BTThreeDSecureV2Provider.html b/6.23.2/Extensions/BTThreeDSecureV2Provider.html new file mode 100644 index 0000000000..767115d431 --- /dev/null +++ b/6.23.2/Extensions/BTThreeDSecureV2Provider.html @@ -0,0 +1,468 @@ + + + + BTThreeDSecureV2Provider Extension Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2Provider

+
+
+ +
extension BTThreeDSecureV2Provider: CardinalValidationDelegate
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Protocols.html b/6.23.2/Protocols.html new file mode 100644 index 0000000000..e611c8ce41 --- /dev/null +++ b/6.23.2/Protocols.html @@ -0,0 +1,523 @@ + + + + Protocols Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Protocols

+

The following protocols are available globally.

+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Protocols/BTLocalPaymentRequestDelegate.html b/6.23.2/Protocols/BTLocalPaymentRequestDelegate.html new file mode 100644 index 0000000000..ab5cb3edff --- /dev/null +++ b/6.23.2/Protocols/BTLocalPaymentRequestDelegate.html @@ -0,0 +1,469 @@ + + + + BTLocalPaymentRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTLocalPaymentRequestDelegate

+
+
+ +
@objc
+public protocol BTLocalPaymentRequestDelegate
+ +
+
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Required delegate method which returns the payment ID before the flow starts.

    + +

    Use this to do any preprocessing and setup for webhooks. Use the start() callback to continue the flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +func localPaymentStarted(_ request: BTLocalPaymentRequest, paymentID: String, start: @escaping () -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Protocols/BTPayPalMessagingDelegate.html b/6.23.2/Protocols/BTPayPalMessagingDelegate.html new file mode 100644 index 0000000000..2c1cd11622 --- /dev/null +++ b/6.23.2/Protocols/BTPayPalMessagingDelegate.html @@ -0,0 +1,591 @@ + + + + BTPayPalMessagingDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingDelegate

+
+
+ +
public protocol BTPayPalMessagingDelegate : AnyObject
+ +
+
+

Protocol for BTPayPalMessagingView events

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/Protocols/BTThreeDSecureRequestDelegate.html b/6.23.2/Protocols/BTThreeDSecureRequestDelegate.html new file mode 100644 index 0000000000..f1ea9c8ae7 --- /dev/null +++ b/6.23.2/Protocols/BTThreeDSecureRequestDelegate.html @@ -0,0 +1,469 @@ + + + + BTThreeDSecureRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureRequestDelegate

+
+
+ +
@objc
+public protocol BTThreeDSecureRequestDelegate
+ +
+
+

Protocol for ThreeDSecure Request flow

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

    Required delegate method which returns the ThreeDSecure lookup result before the flow continues. + Use this to do any UI preparation or custom lookup result handling. Use the next() callback to continue the flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +func onLookupComplete(_ request: BTThreeDSecureRequest, lookupResult: BTThreeDSecureResult, next: @escaping () -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Structs.html b/6.23.2/Structs.html new file mode 100644 index 0000000000..46cc9192df --- /dev/null +++ b/6.23.2/Structs.html @@ -0,0 +1,570 @@ + + + + Structures Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Structures

+

The following structures are available globally.

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

    Used to initialize a BTPayPalMessagingView +This feature is currently only supported for buyers located in the US. For merchants domiciled outside of the US +please set the buyerCountry to display messaging to US based buyers.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTPayPalMessagingRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Buyer data required to use the Shopper Insights feature.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTShopperInsightsRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + Phone + +
    +
    +
    +
    +
    +
    +

    Buyer’s phone number details for use with the Shopper Insights feature.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct Phone : Encodable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A summary of the buyer’s recommended payment methods.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTShopperInsightsResult
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Structs/BTPayPalMessagingRequest.html b/6.23.2/Structs/BTPayPalMessagingRequest.html new file mode 100644 index 0000000000..4f4718cdeb --- /dev/null +++ b/6.23.2/Structs/BTPayPalMessagingRequest.html @@ -0,0 +1,572 @@ + + + + BTPayPalMessagingRequest Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingRequest

+
+
+ +
public struct BTPayPalMessagingRequest
+ +
+
+

Used to initialize a BTPayPalMessagingView +This feature is currently only supported for buyers located in the US. For merchants domiciled outside of the US +please set the buyerCountry to display messaging to US based buyers.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a BTPayPalMessaging

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: Double? = nil,
    +    pageType: BTPayPalMessagingPageType? = nil,
    +    offerType: BTPayPalMessagingOfferType? = nil,
    +    buyerCountry: String? = nil,
    +    logoType: BTPayPalMessagingLogoType = .inline,
    +    textAlignment: BTPayPalMessagingTextAlignment = .right,
    +    color: BTPayPalMessagingColor = .black
    +)
    + +
    +
    +
    +

    Parameters

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

    Price expressed in cents amount based on the current context (i.e. individual product price vs total cart price)

    +
    +
    + + pageType + + +
    +

    Message screen location (e.g. product, cart, home)

    +
    +
    + + offerType + + +
    +

    Preferred message offer to display

    +
    +
    + + buyerCountry + + +
    +

    Consumer’s country (Integrations must be approved by PayPal to use this option)

    +
    +
    + + logoType + + +
    +

    Logo type option for a PayPal Message. Defaults to .inline

    +
    +
    + + textAlignment + + +
    +

    Text alignment option for a PayPal Message. Defaults to .right

    +
    +
    + + color + + +
    +

    Text and logo color option for a PayPal Message. Defaults to .black

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Structs/BTShopperInsightsRequest.html b/6.23.2/Structs/BTShopperInsightsRequest.html new file mode 100644 index 0000000000..3fd5e4045d --- /dev/null +++ b/6.23.2/Structs/BTShopperInsightsRequest.html @@ -0,0 +1,624 @@ + + + + BTShopperInsightsRequest Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTShopperInsightsRequest

+
+
+ +
public struct BTShopperInsightsRequest
+ +
+
+

Buyer data required to use the Shopper Insights feature.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(email:phone:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(email: String, phone: Phone)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + email + + +
    +

    The buyer’s email address.

    +
    +
    + + phone + + +
    +

    The buyer’s phone number details.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(email:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(email: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + email + + +
    +

    The buyer’s email address.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(phone:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(phone: Phone)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + phone + + +
    +

    The buyer’s phone number details.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Structs/BTShopperInsightsResult.html b/6.23.2/Structs/BTShopperInsightsResult.html new file mode 100644 index 0000000000..32760c3146 --- /dev/null +++ b/6.23.2/Structs/BTShopperInsightsResult.html @@ -0,0 +1,531 @@ + + + + BTShopperInsightsResult Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTShopperInsightsResult

+
+
+ +
public struct BTShopperInsightsResult
+ +
+
+

A summary of the buyer’s recommended payment methods.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + isPayPalRecommended + +
    +
    +
    +
    +
    +
    +

    If true, display the PayPal button with high priority.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isPayPalRecommended: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isVenmoRecommended + +
    +
    +
    +
    +
    +
    +

    If true, dislpay the Venmo button with high priority.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isVenmoRecommended: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    If true, buyer is a member of the PayPal Inc. (PayPal, Venmo, Honey) network.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isEligibleInPayPalNetwork: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/Structs/Phone.html b/6.23.2/Structs/Phone.html new file mode 100644 index 0000000000..e7d411c399 --- /dev/null +++ b/6.23.2/Structs/Phone.html @@ -0,0 +1,507 @@ + + + + Phone Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Phone

+
+
+ +
public struct Phone : Encodable
+ +
+
+

Buyer’s phone number details for use with the Shopper Insights feature.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest.Phone.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(countryCode: String, nationalNumber: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + countryCode + + +
    +

    The buyer’s country code prefix to the national telephone number. An identifier for a specific country. Must not contain special characters.

    +
    +
    + + nationalNumber + + +
    +

    The buyer’s national phone number. Must not contain special characters.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/badge.svg b/6.23.2/badge.svg new file mode 100644 index 0000000000..a096feca83 --- /dev/null +++ b/6.23.2/badge.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + documentation + + + documentation + + + 100% + + + 100% + + + diff --git a/6.23.2/css/highlight.css b/6.23.2/css/highlight.css new file mode 100644 index 0000000000..c170357ce7 --- /dev/null +++ b/6.23.2/css/highlight.css @@ -0,0 +1,202 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ +/* Credit to https://gist.github.com/wataru420/2048287 */ +.highlight .c { + color: #999988; + font-style: italic; } + +.highlight .err { + color: #a61717; + background-color: #e3d2d2; } + +.highlight .k { + color: #000000; + font-weight: bold; } + +.highlight .o { + color: #000000; + font-weight: bold; } + +.highlight .cm { + color: #999988; + font-style: italic; } + +.highlight .cp { + color: #999999; + font-weight: bold; } + +.highlight .c1 { + color: #999988; + font-style: italic; } + +.highlight .cs { + color: #999999; + font-weight: bold; + font-style: italic; } + +.highlight .gd { + color: #000000; + background-color: #ffdddd; } + +.highlight .gd .x { + color: #000000; + background-color: #ffaaaa; } + +.highlight .ge { + color: #000000; + font-style: italic; } + +.highlight .gr { + color: #aa0000; } + +.highlight .gh { + color: #999999; } + +.highlight .gi { + color: #000000; + background-color: #ddffdd; } + +.highlight .gi .x { + color: #000000; + background-color: #aaffaa; } + +.highlight .go { + color: #888888; } + +.highlight .gp { + color: #555555; } + +.highlight .gs { + font-weight: bold; } + +.highlight .gu { + color: #aaaaaa; } + +.highlight .gt { + color: #aa0000; } + +.highlight .kc { + color: #000000; + font-weight: bold; } + +.highlight .kd { + color: #000000; + font-weight: bold; } + +.highlight .kp { + color: #000000; + font-weight: bold; } + +.highlight .kr { + color: #000000; + font-weight: bold; } + +.highlight .kt { + color: #445588; } + +.highlight .m { + color: #009999; } + +.highlight .s { + color: #d14; } + +.highlight .na { + color: #008080; } + +.highlight .nb { + color: #0086B3; } + +.highlight .nc { + color: #445588; + font-weight: bold; } + +.highlight .no { + color: #008080; } + +.highlight .ni { + color: #800080; } + +.highlight .ne { + color: #990000; + font-weight: bold; } + +.highlight .nf { + color: #990000; } + +.highlight .nn { + color: #555555; } + +.highlight .nt { + color: #000080; } + +.highlight .nv { + color: #008080; } + +.highlight .ow { + color: #000000; + font-weight: bold; } + +.highlight .w { + color: #bbbbbb; } + +.highlight .mf { + color: #009999; } + +.highlight .mh { + color: #009999; } + +.highlight .mi { + color: #009999; } + +.highlight .mo { + color: #009999; } + +.highlight .sb { + color: #d14; } + +.highlight .sc { + color: #d14; } + +.highlight .sd { + color: #d14; } + +.highlight .s2 { + color: #d14; } + +.highlight .se { + color: #d14; } + +.highlight .sh { + color: #d14; } + +.highlight .si { + color: #d14; } + +.highlight .sx { + color: #d14; } + +.highlight .sr { + color: #009926; } + +.highlight .s1 { + color: #d14; } + +.highlight .ss { + color: #990073; } + +.highlight .bp { + color: #999999; } + +.highlight .vc { + color: #008080; } + +.highlight .vg { + color: #008080; } + +.highlight .vi { + color: #008080; } + +.highlight .il { + color: #009999; } diff --git a/6.23.2/css/jazzy.css b/6.23.2/css/jazzy.css new file mode 100644 index 0000000000..9d4b08b8c3 --- /dev/null +++ b/6.23.2/css/jazzy.css @@ -0,0 +1,405 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ +*, *:before, *:after { + box-sizing: inherit; } + +body { + margin: 0; + background: #fff; + color: #333; + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + letter-spacing: .2px; + -webkit-font-smoothing: antialiased; + box-sizing: border-box; } + +h1 { + font-size: 2rem; + font-weight: 700; + margin: 1.275em 0 0.6em; } + +h2 { + font-size: 1.75rem; + font-weight: 700; + margin: 1.275em 0 0.3em; } + +h3 { + font-size: 1.5rem; + font-weight: 700; + margin: 1em 0 0.3em; } + +h4 { + font-size: 1.25rem; + font-weight: 700; + margin: 1.275em 0 0.85em; } + +h5 { + font-size: 1rem; + font-weight: 700; + margin: 1.275em 0 0.85em; } + +h6 { + font-size: 1rem; + font-weight: 700; + margin: 1.275em 0 0.85em; + color: #777; } + +p { + margin: 0 0 1em; } + +ul, ol { + padding: 0 0 0 2em; + margin: 0 0 0.85em; } + +blockquote { + margin: 0 0 0.85em; + padding: 0 15px; + color: #858585; + border-left: 4px solid #e5e5e5; } + +img { + max-width: 100%; } + +a { + color: #4183c4; + text-decoration: none; } + a:hover, a:focus { + outline: 0; + text-decoration: underline; } + a.discouraged { + text-decoration: line-through; } + a.discouraged:hover, a.discouraged:focus { + text-decoration: underline line-through; } + +table { + background: #fff; + width: 100%; + border-collapse: collapse; + border-spacing: 0; + overflow: auto; + margin: 0 0 0.85em; } + +tr:nth-child(2n) { + background-color: #fbfbfb; } + +th, td { + padding: 6px 13px; + border: 1px solid #ddd; } + +hr { + height: 1px; + border: none; + background-color: #ddd; } + +pre { + margin: 0 0 1.275em; + padding: .85em 1em; + overflow: auto; + background: #f7f7f7; + font-size: .85em; + font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; } + +code { + font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; } + +.item-container p > code, .item-container li > code, .top-matter p > code, .top-matter li > code { + background: #f7f7f7; + padding: .2em; } + .item-container p > code:before, .item-container p > code:after, .item-container li > code:before, .item-container li > code:after, .top-matter p > code:before, .top-matter p > code:after, .top-matter li > code:before, .top-matter li > code:after { + letter-spacing: -.2em; + content: "\00a0"; } + +pre code { + padding: 0; + white-space: pre; } + +.content-wrapper { + display: flex; + flex-direction: column; } + @media (min-width: 768px) { + .content-wrapper { + flex-direction: row; } } +.header { + display: flex; + padding: 8px; + font-size: 0.875em; + background: #444; + color: #999; } + +.header-col { + margin: 0; + padding: 0 8px; } + +.header-col--primary { + flex: 1; } + +.header-link { + color: #fff; } + +.header-icon { + padding-right: 2px; + vertical-align: -3px; + height: 16px; } + +.breadcrumbs { + font-size: 0.875em; + padding: 8px 16px; + margin: 0; + background: #fbfbfb; + border-bottom: 1px solid #ddd; } + +.carat { + height: 10px; + margin: 0 5px; } + +.navigation { + order: 2; } + @media (min-width: 768px) { + .navigation { + order: 1; + width: 25%; + max-width: 300px; + padding-bottom: 64px; + overflow: hidden; + word-wrap: normal; + background: #fbfbfb; + border-right: 1px solid #ddd; } } +.nav-groups { + list-style-type: none; + padding-left: 0; } + +.nav-group-name { + border-bottom: 1px solid #ddd; + padding: 8px 0 8px 16px; } + +.nav-group-name-link { + color: #333; } + +.nav-group-tasks { + margin: 8px 0; + padding: 0 0 0 8px; } + +.nav-group-task { + font-size: 1em; + list-style-type: none; + white-space: nowrap; } + +.nav-group-task-link { + color: #808080; } + +.main-content { + order: 1; } + @media (min-width: 768px) { + .main-content { + order: 2; + flex: 1; + padding-bottom: 60px; } } +.section { + padding: 0 32px; + border-bottom: 1px solid #ddd; } + +.section-content { + max-width: 834px; + margin: 0 auto; + padding: 16px 0; } + +.section-name { + color: #666; + display: block; } + .section-name p { + margin-bottom: inherit; } + +.declaration .highlight { + overflow-x: initial; + padding: 8px 0; + margin: 0; + background-color: transparent; + border: none; } + +.task-group-section { + border-top: 1px solid #ddd; } + +.task-group { + padding-top: 0px; } + +.task-name-container a[name]:before { + content: ""; + display: block; } + +.section-name-container { + position: relative; } + .section-name-container .section-name-link { + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + margin-bottom: 0; } + .section-name-container .section-name { + position: relative; + pointer-events: none; + z-index: 1; } + .section-name-container .section-name a { + pointer-events: auto; } + +.item-container { + padding: 0; } + +.item { + padding-top: 8px; + width: 100%; + list-style-type: none; } + .item a[name]:before { + content: ""; + display: block; } + .item .token, .item .direct-link { + display: inline-block; + text-indent: -20px; + padding-left: 3px; + margin-left: 20px; + font-size: 1rem; } + +.declaration-note { + font-size: .85em; + color: #808080; + font-style: italic; } + +.pointer-container { + border-bottom: 1px solid #ddd; + left: -23px; + padding-bottom: 13px; + position: relative; + width: 110%; } + +.pointer { + left: 21px; + top: 7px; + display: block; + position: absolute; + width: 12px; + height: 12px; + border-left: 1px solid #ddd; + border-top: 1px solid #ddd; + background: #fff; + transform: rotate(45deg); } + +.height-container { + display: none; + position: relative; + width: 100%; + overflow: hidden; } + .height-container .section { + background: #fff; + border: 1px solid #ddd; + border-top-width: 0; + padding-top: 10px; + padding-bottom: 5px; + padding: 8px 16px; } + +.aside, .language { + padding: 6px 12px; + margin: 12px 0; + border-left: 5px solid #dddddd; + overflow-y: hidden; } + .aside .aside-title, .language .aside-title { + font-size: 9px; + letter-spacing: 2px; + text-transform: uppercase; + padding-bottom: 0; + margin: 0; + color: #aaa; + -webkit-user-select: none; } + .aside p:last-child, .language p:last-child { + margin-bottom: 0; } + +.language { + border-left: 5px solid #cde9f4; } + .language .aside-title { + color: #4183c4; } + +.aside-warning, .aside-deprecated, .aside-unavailable { + border-left: 5px solid #ff6666; } + .aside-warning .aside-title, .aside-deprecated .aside-title, .aside-unavailable .aside-title { + color: #ff0000; } + +.graybox { + border-collapse: collapse; + width: 100%; } + .graybox p { + margin: 0; + word-break: break-word; + min-width: 50px; } + .graybox td { + border: 1px solid #ddd; + padding: 5px 25px 5px 10px; + vertical-align: middle; } + .graybox tr td:first-of-type { + text-align: right; + padding: 7px; + vertical-align: top; + word-break: normal; + width: 40px; } + +.slightly-smaller { + font-size: 0.9em; } + +.footer { + padding: 8px 16px; + background: #444; + color: #ddd; + font-size: 0.8em; } + .footer p { + margin: 8px 0; } + .footer a { + color: #fff; } + +html.dash .header, html.dash .breadcrumbs, html.dash .navigation { + display: none; } + +html.dash .height-container { + display: block; } + +form[role=search] input { + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 24px; + padding: 0 10px; + margin: 0; + border: none; + border-radius: 1em; } + .loading form[role=search] input { + background: white url(../img/spinner.gif) center right 4px no-repeat; } + +form[role=search] .tt-menu { + margin: 0; + min-width: 300px; + background: #fbfbfb; + color: #333; + border: 1px solid #ddd; } + +form[role=search] .tt-highlight { + font-weight: bold; } + +form[role=search] .tt-suggestion { + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + padding: 0 8px; } + form[role=search] .tt-suggestion span { + display: table-cell; + white-space: nowrap; } + form[role=search] .tt-suggestion .doc-parent-name { + width: 100%; + text-align: right; + font-weight: normal; + font-size: 0.9em; + padding-left: 16px; } + +form[role=search] .tt-suggestion:hover, +form[role=search] .tt-suggestion.tt-cursor { + cursor: pointer; + background-color: #4183c4; + color: #fff; } + +form[role=search] .tt-suggestion:hover .doc-parent-name, +form[role=search] .tt-suggestion.tt-cursor .doc-parent-name { + color: #fff; } diff --git a/6.23.2/docsets/Braintree.docset/Contents/Info.plist b/6.23.2/docsets/Braintree.docset/Contents/Info.plist new file mode 100644 index 0000000000..3d44f43bfe --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleIdentifier + com.jazzy.braintree + CFBundleName + Braintree + DocSetPlatformFamily + braintree + isDashDocset + + dashIndexFilePath + index.html + isJavaScriptEnabled + + DashDocSetFamily + dashtoc + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html new file mode 100644 index 0000000000..620023faf1 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html @@ -0,0 +1,2221 @@ + + + + Classes Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Classes

+

The following classes are available globally.

+ +
+
+ +
+
+
+
    +
  • +
    + + + + BTAPIClient + +
    +
    +
    +
    +
    +
    +

    This class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.

    +
    +

    Note

    + It also manages authentication via tokenization key and provides access to a merchant’s gateway configuration. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAPIClient : NSObject, BTHTTPNetworkTiming
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTAppContextSwitcher + +
    +
    +
    +
    +
    +
    +

    Handles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.

    +
    +

    Note

    + returnURLScheme must contain your app’s registered URL Type that starts with the app’s bundle ID. +When your app returns from app switch, the app delegate should call handleOpenURL (or handleOpen if not using SceneDelegate) + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAppContextSwitcher : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTBinData + +
    +
    +
    +
    +
    +
    +

    Contains the bin data associated with a payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTBinData : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPaymentMethodNonce + +
    +
    +
    +
    +
    +
    +

    BTPaymentMethodNonce is for generic tokenized payment information.

    + +

    For example, if a customer’s vaulted payment methods contains a type that’s not recognized or supported by the +Braintree SDK or the client-side integration (e.g. the vault contains a PayPal account but the client-side +integration does not include the PayPal component), this type can act as a fallback.

    + +

    The payment method nonce is a public token that acts as a placeholder for sensitive payments data that +has been uploaded to Braintree for subsequent processing. The nonce is safe to access on the client and can be +used on your server to reference the data in Braintree operations, such as Transaction.sale.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPaymentMethodNonce : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A JSON parser that parses BTJSON into concrete BTPaymentMethodNonce objects. It supports registration of parsers at runtime.

    + +

    BTPaymentMethodNonceParser provides access to JSON parsing for different payment options +without introducing compile-time dependencies on payment option frameworks and their symbols.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPaymentMethodNonceParser : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPostalAddress + +
    +
    +
    +
    +
    +
    +

    Generic postal address

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPostalAddress : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal payment method.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeCheckoutAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Client used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTPayPalNativeCheckoutClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeCheckoutRequest : BTPayPalCheckoutRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalNativeVaultRequest : BTPayPalVaultBaseRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Used to integrate with SEPA Direct Debit.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTSEPADirectDebitClient : BTWebAuthenticationSessionClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A payment method nonce representing a SEPA Direct Debit payment.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTSEPADirectDebitNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Parameters for creating a SEPA Direct Debit tokenization request.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTSEPADirectDebitRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    BTAmericanExpressClient enables you to look up the rewards balance of American Express cards.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTAmericanExpressClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about an American Express rewards balance.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAmericanExpressRewardsBalance : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTDataCollector + +
    +
    +
    +
    +
    +
    +

    Braintree’s advanced fraud protection solution.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTDataCollector : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayCardNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a tokenized Apple Pay card.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTApplePayCardNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayClient + +
    +
    +
    +
    +
    +
    +

    Used to process Apple Pay payments

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTApplePayClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentClient : BTWebAuthenticationSessionClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentRequest + +
    +
    +
    +
    +
    +
    +

    Used to initialize a local payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentResult + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTLocalPaymentResult : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Additional information for a 3DS lookup. Used in 3DS 2.0+ flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureAdditionalInformation : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureLookup + +
    +
    +
    +
    +
    +
    +

    The result of a 3DS lookup. +Contains liability shift and challenge information.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureLookup : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Postal address for 3D Secure flows

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecurePostalAddress : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureRenderType : NSObject, OptionSet
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureRequest + +
    +
    +
    +
    +
    +
    +

    Used to initialize a 3D Secure payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureResult + +
    +
    +
    +
    +
    +
    +

    The result of a 3D Secure payment flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureResult : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Base customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2BaseCustomization : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Button customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2ButtonCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Label customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2LabelCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text box customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2TextBoxCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Toolbar customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2ToolbarCustomization : BTThreeDSecureV2BaseCustomization
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    UI customization options for 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureV2UICustomization : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Information pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTAuthenticationInsight : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCard + +
    +
    +
    +
    +
    +
    +

    The card tokenization request represents raw credit or debit card data provided by the customer. +Its main purpose is to serve as the input for tokenization.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCard : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardClient + +
    +
    +
    +
    +
    +
    +

    Used to process cards

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTCardClient : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a tokenized card.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCardNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardRequest + +
    +
    +
    +
    +
    +
    +

    Contains information about a card to tokenize

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTCardRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureInfo + +
    +
    +
    +
    +
    +
    +

    Contains information about the 3D Secure status of a payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTThreeDSecureInfo : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalAccountNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a PayPal payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalCheckoutRequest : BTPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalClient + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTPayPalClient : BTWebAuthenticationSessionClient
    +
    extension BTPayPalClient: BTAppContextSwitchClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal credit financing option

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalCreditFinancing : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Contains information about a PayPal credit amount

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalCreditFinancingAmount : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLineItem + +
    +
    +
    +
    +
    +
    +

    A PayPal line item to be displayed in the PayPal checkout flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalLineItem : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalRequest + +
    +
    +
    +
    +
    +
    +

    Base options for PayPal Checkout and PayPal Vault flows.

    +
    +

    Note

    + Do not instantiate this class directly. Instead, use BTPayPalCheckoutRequest or BTPayPalVaultRequest. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalVaultBaseRequest : BTPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalVaultRequest + +
    +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTPayPalVaultRequest : BTPayPalVaultBaseRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoAccountNonce + +
    +
    +
    +
    +
    +
    +

    Contains information about a Venmo Account payment method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoAccountNonce : BTPaymentMethodNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoClient + +
    +
    +
    +
    +
    +
    +

    Used to process Venmo payments

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public class BTVenmoClient : NSObject
    +
    extension BTVenmoClient: BTAppContextSwitchClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoLineItem + +
    +
    +
    +
    +
    +
    +

    A Venmo line item to be displayed in the Venmo Paysheet.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoLineItem : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoRequest + +
    +
    +
    +
    +
    +
    +

    A BTVenmoRequest specifies options that contribute to the Venmo flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +public class BTVenmoRequest : NSObject
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalMessagingView + +
    +
    +
    +
    +
    +
    +

    Use BTPayPalMessagingView to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class BTPayPalMessagingView : UIView
    +
    extension BTPayPalMessagingView: PayPalMessageViewEventDelegate, PayPalMessageViewStateDelegate
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use BTShopperInsightsClient to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI. + By customizing each customer’s checkout experience, you can improve conversion, increase sales/repeat buys and boost user retention/loyalty.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public class BTShopperInsightsClient
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html new file mode 100644 index 0000000000..521b48ea80 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html @@ -0,0 +1,673 @@ + + + + BTAPIClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAPIClient

+
+
+ +
@objcMembers
+public class BTAPIClient : NSObject, BTHTTPNetworkTiming
+ +
+
+

This class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.

+
+

Note

+ It also manages authentication via tokenization key and provides access to a merchant’s gateway configuration. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + authorization + +
    +
    +
    +
    +
    +
    +

    The TokenizationKey or ClientToken used to authorize the APIClient

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authorization: ClientAuthorization
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + metadata + +
    +
    +
    +
    +
    +
    +

    Client metadata that is used for tracking the client session

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public private(set) var metadata: BTClientMetadata { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(authorization:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new API client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAuthorization:)
    +public init?(authorization: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + authorization + + +
    +

    Your tokenization key or client token. Passing an invalid value may return nil.

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

Public Methods +

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

    Fetches a customer’s vaulted payment method nonces. +Must be using client token with a customer ID specified.

    +
    +

    Note

    + Only the top level BTPaymentMethodNonce type is returned, fetching any additional details will need to be done on the server + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func fetchPaymentMethodNonces(_ completion: @escaping ([BTPaymentMethodNonce]?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    Callback that returns either an array of payment method nonces or an error

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

    Fetches a customer’s vaulted payment method nonces. +Must be using client token with a customer ID specified.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func fetchPaymentMethodNonces(_ defaultFirst: Bool, completion: @escaping ([BTPaymentMethodNonce]?, Error?) -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html new file mode 100644 index 0000000000..2b7a5bd76e --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html @@ -0,0 +1,564 @@ + + + + BTAmericanExpressClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAmericanExpressClient

+
+
+ +
@objc
+public class BTAmericanExpressClient : NSObject
+ +
+
+

BTAmericanExpressClient enables you to look up the rewards balance of American Express cards.

+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html new file mode 100644 index 0000000000..ad2f5f125c --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html @@ -0,0 +1,677 @@ + + + + BTAmericanExpressRewardsBalance Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAmericanExpressRewardsBalance

+
+
+ +
@objcMembers
+public class BTAmericanExpressRewardsBalance : NSObject
+ +
+
+

Contains information about an American Express rewards balance.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    +

    Optional. An error code when there was an issue fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorMessage + +
    +
    +
    +
    +
    +
    +

    Optional. An error message when there was an issue fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorMessage: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + conversionRate + +
    +
    +
    +
    +
    +
    +

    Optional. The conversion rate associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var conversionRate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The currency amount associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyIsoCode + +
    +
    +
    +
    +
    +
    +

    Optional. The currency ISO code associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyIsoCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + requestID + +
    +
    +
    +
    +
    +
    +

    Optional. The request ID used when fetching the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rewardsAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The rewards amount associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var rewardsAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rewardsUnit + +
    +
    +
    +
    +
    +
    +

    Optional. The rewards unit associated with the rewards balance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var rewardsUnit: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html new file mode 100644 index 0000000000..48352be121 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html @@ -0,0 +1,672 @@ + + + + BTAppContextSwitcher Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAppContextSwitcher

+
+
+ +
@objcMembers
+public class BTAppContextSwitcher : NSObject
+ +
+
+

Handles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.

+
+

Note

+ returnURLScheme must contain your app’s registered URL Type that starts with the app’s bundle ID. +When your app returns from app switch, the app delegate should call handleOpenURL (or handleOpen if not using SceneDelegate) + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

+
+
+
    +
  • +
    + + + + sharedInstance + +
    +
    +
    +
    +
    +
    +

    Singleton for shared instance of BTAppContextSwitcher

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let sharedInstance: BTAppContextSwitcher
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + returnURLScheme + +
    +
    +
    +
    +
    +
    +

    The URL scheme to return to this app after switching to another app or opening a SFSafariViewController. +This URL scheme must be registered as a URL Type in the app’s info.plist, and it must start with the app’s bundle ID.

    +
    +

    Note

    + This property should only be used for the Venmo flow. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var returnURLScheme: String
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

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

    Determine whether the return URL can be handled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +@objc(handleOpenURLContext:)
    +public func handleOpenURL(context: UIOpenURLContext) -> Bool
    + +
    +
    +
    +

    Return Value

    +

    true when the SDK can process the return URL

    +
    + +
    +
    +
  • +
  • +
    + + + + handleOpen(_:) + +
    +
    +
    +
    +
    +
    +

    Complete payment flow after returning from app or browser switch.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @discardableResult
    +@objc(handleOpenURL:)
    +public func handleOpen(_ url: URL) -> Bool
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + url + + +
    +

    The URL you receive in scene:openURLContexts: (or application:openURL:options: if not using SceneDelegate)

    +
    +
    +
    +
    +

    Return Value

    +

    true when the SDK has handled the URL successfully

    +
    + +
    +
    +
  • +
  • +
    + + + + register(_:) + +
    +
    +
    +
    +
    +
    +

    Registers a class Type that can handle a return from app context switch with a static method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(registerAppContextSwitchClient:)
    +public func register(_ client: BTAppContextSwitchClient.Type)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + client + + +
    +

    A class Type that implements BTAppContextSwitchClient, the methods of which will be invoked statically on the class.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html new file mode 100644 index 0000000000..15580d6dc1 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html @@ -0,0 +1,467 @@ + + + + BTApplePayCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTApplePayCardNonce

+
+
+ +
@objcMembers
+public class BTApplePayCardNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a tokenized Apple Pay card.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + binData + +
    +
    +
    +
    +
    +
    +

    The BIN data for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let binData: BTBinData
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html new file mode 100644 index 0000000000..552f4b226d --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html @@ -0,0 +1,727 @@ + + + + BTApplePayClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTApplePayClient

+
+
+ +
@objc
+public class BTApplePayClient : NSObject
+ +
+
+

Used to process Apple Pay payments

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

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates an Apple Pay client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

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

Public Methods +

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

    Creates a PKPaymentRequest with values from your Braintree Apple Pay configuration. +It populates the following values of PKPaymentRequest: countryCode, currencyCode, merchantIdentifier, supportedNetworks.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(makePaymentRequest:)
    +public func makePaymentRequest(completion: @escaping (PKPaymentRequest?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    A completion block that returns the payment request or an error.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + makePaymentRequest() + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Creates a PKPaymentRequest with values from your Braintree Apple Pay configuration. +It populates the following values of PKPaymentRequest: countryCode, currencyCode, merchantIdentifier, supportedNetworks.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func makePaymentRequest() async throws -> PKPaymentRequest
    + +
    +
    +
    +

    Return Value

    +

    A PKPaymentRequest

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

    Tokenizes an Apple Pay payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeApplePayPayment:completion:)
    +public func tokenize(_ payment: PKPayment, completion: @escaping (BTApplePayCardNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + payment + + +
    +

    A PKPayment instance, typically obtained by presenting a PKPaymentAuthorizationViewController

    +
    +
    + + completion + + +
    +

    A completion block that is invoked when tokenization has completed. If tokenization succeeds, we will return a BTApplePayCardNonce +and error will be nil; if it fails, BTApplePayCardNonce will be nil and error will describe the failure.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenizes an Apple Pay payment.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ payment: PKPayment) async throws -> BTApplePayCardNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + payment + + +
    +

    A PKPayment instance, typically obtained by presenting a PKPaymentAuthorizationViewController

    +
    +
    +
    +
    +

    Return Value

    +

    A BTApplePayCardNonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html new file mode 100644 index 0000000000..d9aa378106 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html @@ -0,0 +1,478 @@ + + + + BTAuthenticationInsight Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAuthenticationInsight

+
+
+ +
@objcMembers
+public class BTAuthenticationInsight : NSObject
+ +
+
+

Information pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.

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

Public Properties +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html new file mode 100644 index 0000000000..4a2dbdab7b --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html @@ -0,0 +1,738 @@ + + + + BTBinData Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTBinData

+
+
+ +
@objcMembers
+public class BTBinData : NSObject
+ +
+
+

Contains the bin data associated with a payment method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + prepaid + +
    +
    +
    +
    +
    +
    +

    Whether the card is a prepaid card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let prepaid: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + healthcare + +
    +
    +
    +
    +
    +
    +

    Whether the card is a healthcare card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let healthcare: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Whether the card is a debit card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let debit: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + durbinRegulated + +
    +
    +
    +
    +
    +
    +

    A value indicating whether the issuing bank’s card range is regulated by the Durbin Amendment due to the bank’s assets. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let durbinRegulated: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + commercial + +
    +
    +
    +
    +
    +
    +

    Whether the card type is a commercial card and is capable of processing Level 2 transactions. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let commercial: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payroll + +
    +
    +
    +
    +
    +
    +

    Whether the card is a payroll card. Possible values: Yes/No/Unknown

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payroll: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + issuingBank + +
    +
    +
    +
    +
    +
    +

    The bank that issued the credit card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let issuingBank: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryOfIssuance + +
    +
    +
    +
    +
    +
    +

    The country that issued the credit card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let countryOfIssuance: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productID + +
    +
    +
    +
    +
    +
    +

    The code for the product type of the card (e.g. D (Visa Signature Preferred), G (Visa Business)), if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let productID: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(json:) + +
    +
    +
    +
    +
    +
    +

    Create a BTBinData object from JSON.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithJSON:)
    +public init(json: BTJSON?)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html new file mode 100644 index 0000000000..dc22c8bb76 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html @@ -0,0 +1,1096 @@ + + + + BTCard Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCard

+
+
+ +
@objcMembers
+public class BTCard : NSObject
+ +
+
+

The card tokenization request represents raw credit or debit card data provided by the customer. +Its main purpose is to serve as the input for tokenization.

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

Public Properties +

+
+
+
    +
  • +
    + + + + number + +
    +
    +
    +
    +
    +
    +

    The card number

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var number: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationMonth + +
    +
    +
    +
    +
    +
    +

    The expiration month as a one or two-digit number on the Gregorian calendar

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationMonth: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationYear + +
    +
    +
    +
    +
    +
    +

    The expiration year as a two or four-digit number on the Gregorian calendar

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cvv + +
    +
    +
    +
    +
    +
    +

    The card verification code (like CVV or CID).

    +
    +

    Note

    + If you wish to create a CVV-only payment method nonce to verify a card already stored in your Vault, +omit all other properties to only collect CVV. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cvv: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    The postal code associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardholderName + +
    +
    +
    +
    +
    +
    +

    Optional: the cardholder’s name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardholderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Optional: first name on the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Optional: last name on the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + company + +
    +
    +
    +
    +
    +
    +

    Optional: company name associated with the card.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var company: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Optional: the street address associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional: the extended address associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    Optional: the city associated with the card’s billing address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Optional: either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryName + +
    +
    +
    +
    +
    +
    +

    Optional: the country name associated with the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific country names. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    Optional: the ISO 3166-1 alpha-2 country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific alpha-2 values. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha3 + +
    +
    +
    +
    +
    +
    +

    Optional: the ISO 3166-1 alpha-3 country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific alpha-3 values. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha3: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeNumeric + +
    +
    +
    +
    +
    +
    +

    Optional: The ISO 3166-1 numeric country code specified in the card’s billing address.

    +
    +

    Note

    + Braintree only accepts specific numeric values. + + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeNumeric: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shouldValidate + +
    +
    +
    +
    +
    +
    +

    Controls whether or not to return validations and/or verification results. By default, this is not enabled.

    +
    +

    Note

    + Use this flag with caution. By enabling client-side validation, certain tokenize card requests may result in adding the card to the vault. +These semantics are not currently documented. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shouldValidate: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: If authentication insight is requested. If this property is set to true, a merchantAccountID must be provided. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationInsightRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant account ID.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html new file mode 100644 index 0000000000..beb73442ec --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html @@ -0,0 +1,633 @@ + + + + BTCardClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCardClient

+
+
+ +
@objc
+public class BTCardClient : NSObject
+ +
+
+

Used to process cards

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

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a card client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

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

Public Methods +

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

    Tokenizes a card

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeCard:completion:)
    +public func tokenize(_ card: BTCard, completion: @escaping (BTCardNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + card + + +
    +

    The card to tokenize.

    +
    +
    + + completion + + +
    +

    A completion block that is invoked when card tokenization has completed. If tokenization succeeds, +tokenize will contain a nonce and error will be nil; if it fails, tokenize will be nil and errorwill describe the failure.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenizes a card

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ card: BTCard) async throws -> BTCardNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + card + + +
    +

    The card to tokenize.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTCardNonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html new file mode 100644 index 0000000000..5704fb691f --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html @@ -0,0 +1,747 @@ + + + + BTCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCardNonce

+
+
+ +
@objcMembers
+public class BTCardNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a tokenized card.

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

Public Properties +

+
+
+
    +
  • +
    + + + + cardNetwork + +
    +
    +
    +
    +
    +
    +

    The card network.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardNetwork: BTCardNetwork
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationMonth + +
    +
    +
    +
    +
    +
    +

    The expiration month of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationMonth: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expirationYear + +
    +
    +
    +
    +
    +
    +

    The expiration year of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var expirationYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardholderName + +
    +
    +
    +
    +
    +
    +

    The name of the cardholder, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardholderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastTwo + +
    +
    +
    +
    +
    +
    +

    The last two digits of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastTwo: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastFour + +
    +
    +
    +
    +
    +
    +

    The last four digits of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastFour: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + bin + +
    +
    +
    +
    +
    +
    +

    The BIN number of the card, if available.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var bin: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + binData + +
    +
    +
    +
    +
    +
    +

    The BIN data for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var binData: BTBinData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureInfo + +
    +
    +
    +
    +
    +
    +

    The 3D Secure info for the card number associated with this nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureInfo: BTThreeDSecureInfo
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + authenticationInsight + +
    +
    +
    +
    +
    +
    +

    Details about the regulatory environment and applicable customer authentication regulation for a potential transaction. +This can be used to make an informed decision whether to perform 3D Secure authentication.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationInsight: BTAuthenticationInsight?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html new file mode 100644 index 0000000000..887a2ab14f --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html @@ -0,0 +1,516 @@ + + + + BTCardRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCardRequest

+
+
+ +
@objcMembers
+public class BTCardRequest : NSObject
+ +
+
+

Contains information about a card to tokenize

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + card + +
    +
    +
    +
    +
    +
    +

    The BTCard associated with this instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var card: BTCard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(card:) + +
    +
    +
    +
    +
    +
    +

    Initialize a Card request with a BTCard.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(card: BTCard)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + card + + +
    +

    The BTCard to initialize with.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html new file mode 100644 index 0000000000..d3a42f78aa --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html @@ -0,0 +1,659 @@ + + + + BTDataCollector Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTDataCollector

+
+
+ +
@objc
+public class BTDataCollector : NSObject
+ +
+
+

Braintree’s advanced fraud protection solution.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a BTDataCollector instance with a BTAPIClient.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An instance of BTAPIClient

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

Public methods +

+
+
+
    +
  • +
    + + + + clientMetadataID(_:) + +
    +
    +
    +
    +
    +
    +

    Returns a client metadata ID.

    +
    +

    Note

    + This returns a raw client metadata ID, which is not the correct format for device data when creating a transaction. Instead, it is recommended to use collectDeviceData. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func clientMetadataID(_ pairingID: String?) -> String
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + pairingID + + +
    +

    A pairing ID to associate with this clientMetadataID must be 10-32 chars long or null

    +
    +
    +
    +
    +

    Return Value

    +

    A client metadata ID to send as a header

    +
    + +
    +
    +
  • +
  • +
    + + + + collectDeviceData(_:) + +
    +
    +
    +
    +
    +
    +

    Collects device data based on your merchant configuration.

    + +

    We recommend that you call this method as early as possible, e.g. at app launch. If that’s too early, + calling it when the customer initiates checkout is also fine. + Use the return value on your server, e.g. with Transaction.sale.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func collectDeviceData(_ completion: @escaping (String?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + completion + + +
    +

    A completion block that returns either a device data string that should be passed into server-side calls, such as Transaction.sale, or an error with the failure reason.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + collectDeviceData() + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Collects device data based on your merchant configuration.

    + +

    We recommend that you call this method as early as possible, e.g. at app launch. If that’s too early, + calling it when the customer initiates checkout is also fine. + Use the return value on your server, e.g. with Transaction.sale.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func collectDeviceData() async throws -> String
    + +
    +
    +
    +

    Return Value

    +

    A device data string that should be passed into server-side calls, such as Transaction.sale.

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html new file mode 100644 index 0000000000..66a7a63c25 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html @@ -0,0 +1,630 @@ + + + + BTLocalPaymentClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTLocalPaymentClient

+
+
+ +
@objcMembers
+public class BTLocalPaymentClient : BTWebAuthenticationSessionClient
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new BTLocalPaymentClient instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

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

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html new file mode 100644 index 0000000000..e63b4a33eb --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html @@ -0,0 +1,869 @@ + + + + BTLocalPaymentRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTLocalPaymentRequest

+
+
+ +
@objcMembers
+public class BTLocalPaymentRequest : NSObject
+ +
+
+

Used to initialize a local payment flow

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

Public Properties +

+
+
+
    +
  • +
    + + + + paymentType + +
    +
    +
    +
    +
    +
    +

    The type of payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentType: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The country code of the local payment.

    + +

    This value must be one of the supported country codes for a given local payment type listed at the link below. For local payments supported in multiple countries, this value may determine which banks are presented to the customer.

    + +

    https://developer.paypal.com/braintree/docs/guides/local-payment-methods/client-side-custom/ios/v5#invoke-payment-flow

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentTypeCountryCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: The address of the customer. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + address + +
    +
    +
    +
    +
    +
    +

    Optional: The address of the customer. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var address: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    The amount for the transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyCode + +
    +
    +
    +
    +
    +
    +

    Optional: A valid ISO currency code to use for the transaction. Defaults to merchant currency code if not set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant name displayed inside of the local payment flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Optional: Payer email of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + givenName + +
    +
    +
    +
    +
    +
    +

    Optional: Given (first) name of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var givenName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + surname + +
    +
    +
    +
    +
    +
    +

    Optional: Surname (last name) of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var surname: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Optional: Phone number of the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phone: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates whether or not the payment needs to be shipped. For digital goods, this should be false. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressRequired: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + bic + +
    +
    +
    +
    +
    +
    +

    Optional: Bank Identification Code of the customer (specific to iDEAL transactions).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var bic: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public weak var localPaymentFlowDelegate: BTLocalPaymentRequestDelegate?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html new file mode 100644 index 0000000000..9966968ee0 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html @@ -0,0 +1,736 @@ + + + + BTLocalPaymentResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTLocalPaymentResult

+
+
+ +
@objcMembers
+public class BTLocalPaymentResult : NSObject
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client Metadata ID associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    The one-time use payment method nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let nonce: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Payer ID associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + type + +
    +
    +
    +
    +
    +
    +

    The type of the tokenized payment.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let type: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html new file mode 100644 index 0000000000..93b26b0713 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html @@ -0,0 +1,709 @@ + + + + BTPayPalAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalAccountNonce

+
+
+ +
@objcMembers
+public class BTPayPalAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a PayPal payment method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client metadata id associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Optional. Payer id associated with this transaction. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + creditFinancing + +
    +
    +
    +
    +
    +
    +

    Optional. Credit financing details if the customer pays with PayPal Credit. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let creditFinancing: BTPayPalCreditFinancing?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html new file mode 100644 index 0000000000..c467757d2a --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html @@ -0,0 +1,795 @@ + + + + BTPayPalCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalCheckoutRequest

+
+
+ +
@objcMembers
+open class BTPayPalCheckoutRequest : BTPayPalRequest
+ +
+
+

Options for the PayPal Checkout flow.

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

Public Properties +

+
+
+
    +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    Used for a one-time payment.

    + +

    Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’ and is limited to 7 digits before the decimal point.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + intent + +
    +
    +
    +
    +
    +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var intent: BTPayPalRequestIntent
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + userAction + +
    +
    +
    +
    +
    +
    +

    Optional: Changes the call-to-action in the PayPal Checkout flow. Defaults to .none.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAction: BTPayPalRequestUserAction
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + offerPayLater + +
    +
    +
    +
    +
    +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var offerPayLater: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + currencyCode + +
    +
    +
    +
    +
    +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set.

    +
    +

    Note

    + See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var currencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestBillingAgreement: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAuthenticationEmail: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

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

    Initializes a PayPal Native Checkout request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: String,
    +    intent: BTPayPalRequestIntent = .authorize,
    +    userAction: BTPayPalRequestUserAction = .none,
    +    offerPayLater: Bool = false,
    +    currencyCode: String? = nil,
    +    requestBillingAgreement: Bool = false
    +)
    + +
    +
    +
    +

    Parameters

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

    Used for a one-time payment. Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’

    +
    +
    + + intent + + +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout. +and is limited to 7 digits before the decimal point.

    +
    +
    + + userAction + + +
    +

    Optional: Changes the call-to-action in the PayPal Checkout flow. Defaults to .none.

    +
    +
    + + offerPayLater + + +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    +
    +
    + + currencyCode + + +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set. +See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes.

    +
    +
    + + requestBillingAgreement + + +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement +during checkout. Defaults to false.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html new file mode 100644 index 0000000000..34f58e303c --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html @@ -0,0 +1,864 @@ + + + + BTPayPalClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalClient

+
+
+ +
@objc
+public class BTPayPalClient : BTWebAuthenticationSessionClient
+
extension BTPayPalClient: BTAppContextSwitchClient
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new PayPal client instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    The API Client

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

    Initialize a new PayPal client instance for the PayPal App Switch flow.

    +
    +

    Warning

    + This initializer should be used for merchants using the PayPal App Switch flow. This feature is currently in beta and may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:universalLink:)
    +public convenience init(apiClient: BTAPIClient, universalLink: URL)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + apiClient + + +
    +

    The API Client

    +
    +
    + + universalLink + + +
    +

    The URL to use for the PayPal app switch flow. Must be a valid HTTPS URL dedicated to Braintree app switch returns. This URL must be allow-listed in your Braintree Control Panel.

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

Public Methods +

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

    Tokenize a PayPal request to be used with the PayPal Vault flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithVaultRequest:completion:)
    +public func tokenize(
    +    _ request: BTPayPalVaultRequest,
    +    completion: @escaping (BTPayPalAccountNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + + +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Vault flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTPayPalVaultRequest) async throws -> BTPayPalAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    A BTPayPalAccountNonce if successful

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

    Tokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithCheckoutRequest:completion:)
    +public func tokenize(
    +    _ request: BTPayPalCheckoutRequest,
    +    completion: @escaping (BTPayPalAccountNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + + +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Tokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.

    +
    +

    Note

    + You can use this as the final step in your order/checkout flow. If you want, you may create a transaction from your +server when this method completes without any additional user interaction. + +
    + +

    On success, you will receive an instance of BTPayPalAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTPayPalCheckoutRequest) async throws -> BTPayPalAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    A BTPayPalAccountNonce if successful

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html new file mode 100644 index 0000000000..16bcbcb5a9 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html @@ -0,0 +1,617 @@ + + + + BTPayPalCreditFinancing Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalCreditFinancing

+
+
+ +
@objcMembers
+public class BTPayPalCreditFinancing : NSObject
+ +
+
+

Contains information about a PayPal credit financing option

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + cardAmountImmutable + +
    +
    +
    +
    +
    +
    +

    Indicates whether the card amount is editable after payer’s acceptance on PayPal side.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let cardAmountImmutable: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + monthlyPayment + +
    +
    +
    +
    +
    +
    +

    Estimated amount per month that the customer will need to pay including fees and interest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let monthlyPayment: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerAcceptance + +
    +
    +
    +
    +
    +
    +

    Status of whether the customer ultimately was approved for and chose to make the payment using the approved installment credit.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerAcceptance: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + term + +
    +
    +
    +
    +
    +
    +

    Length of financing terms in months.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let term: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalCost + +
    +
    +
    +
    +
    +
    +

    Estimated total payment amount including interest and fees the user will pay during the lifetime of the loan.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let totalCost: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalInterest + +
    +
    +
    +
    +
    +
    +

    Estimated interest or fees amount the payer will have to pay during the lifetime of the loan.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let totalInterest: BTPayPalCreditFinancingAmount?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html new file mode 100644 index 0000000000..789cbff832 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html @@ -0,0 +1,497 @@ + + + + BTPayPalCreditFinancingAmount Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalCreditFinancingAmount

+
+
+ +
@objcMembers
+public class BTPayPalCreditFinancingAmount : NSObject
+ +
+
+

Contains information about a PayPal credit amount

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + currency + +
    +
    +
    +
    +
    +
    +

    3 letter currency code as defined by ISO 4217.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let currency: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + value + +
    +
    +
    +
    +
    +
    +

    An amount defined by ISO 4217 for the given currency.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let value: String
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html new file mode 100644 index 0000000000..74f991a3d3 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html @@ -0,0 +1,875 @@ + + + + BTPayPalLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalLineItem

+
+
+ +
@objcMembers
+public class BTPayPalLineItem : NSObject
+ +
+
+

A PayPal line item to be displayed in the PayPal checkout flow.

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

Public Properties +

+
+
+
    +
  • +
    + + + + quantity + +
    +
    +
    +
    +
    +
    +

    Number of units of the item purchased. This value must be a whole number and can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let quantity: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitAmount + +
    +
    +
    +
    +
    +
    +

    Per-unit price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let unitAmount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + name + +
    +
    +
    +
    +
    +
    +

    Item name. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let name: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + kind + +
    +
    +
    +
    +
    +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let kind: BTPayPalLineItemKind
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitTaxAmount + +
    +
    +
    +
    +
    +
    +

    Optional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let unitTaxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + itemDescription + +
    +
    +
    +
    +
    +
    +

    Optional: Item description. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let itemDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + url + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let url: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional: Product or UPC code for the item. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + imageURL + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product image information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var imageURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + upcCode + +
    +
    +
    +
    +
    +
    +

    Optional: UPC code for the item.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var upcCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + upcType + +
    +
    +
    +
    +
    +
    +

    Optional: UPC type for the item.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var upcType: BTPayPalLineItemUPCType
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Initializer +

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

    Initialize a PayPayLineItem

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithQuantity:unitAmount:name:kind:)
    +public init(quantity: String, unitAmount: String, name: String, kind: BTPayPalLineItemKind)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + +
    + + quantity + + +
    +

    Number of units of the item purchased. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + unitAmount + + +
    +

    Per-unit price of the item. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + name + + +
    +

    Item name. Maximum 127 characters.

    +
    +
    + + kind + + +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView.html new file mode 100644 index 0000000000..c410621290 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView.html @@ -0,0 +1,811 @@ + + + + BTPayPalMessagingView Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingView

+
+
+ +
public class BTPayPalMessagingView : UIView
+
extension BTPayPalMessagingView: PayPalMessageViewEventDelegate, PayPalMessageViewStateDelegate
+ +
+
+

Use BTPayPalMessagingView to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Properties +

+
+
+ +
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a BTPayPalMessagingView.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    The Braintree API client

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

Public Method +

+
+
+ +
+
+
+ + +
+ +

UIViewRepresentable protocol conformance +

+
+
+
    +
  • +
    + + + + Representable + +
    +
    +
    +
    +
    +
    +

    PayPal Messaging for SwiftUI

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    struct Representable : UIViewRepresentable
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

PayPalMessageViewEventDelegate and PayPalMessageViewStateDelegate protocol conformance +

+
+
+
    +
  • +
    + + + + onClick(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onClick(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onApply(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onApply(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onLoading(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onLoading(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onSuccess(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onSuccess(_ paypalMessageView: PayPalMessages.PayPalMessageView)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + onError(_:error:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func onError(_ paypalMessageView: PayPalMessages.PayPalMessageView, error: PayPalMessages.PayPalMessageError)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView/Representable.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView/Representable.html new file mode 100644 index 0000000000..4145995abe --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalMessagingView/Representable.html @@ -0,0 +1,539 @@ + + + + Representable Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Representable

+
+
+ +
struct Representable : UIViewRepresentable
+ +
+
+

PayPal Messaging for SwiftUI

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

UIViewRepresentable Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html new file mode 100644 index 0000000000..a4fdad7a94 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html @@ -0,0 +1,687 @@ + + + + BTPayPalNativeCheckoutAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeCheckoutAccountNonce

+
+
+ +
@objcMembers
+public class BTPayPalNativeCheckoutAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a PayPal payment method.

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

Public Properties +

+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Payer’s email address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    Payer’s first name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    Payer’s last name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phone + +
    +
    +
    +
    +
    +
    +

    Payer’s phone number.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let phone: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientMetadataID + +
    +
    +
    +
    +
    +
    +

    Client metadata id associated with this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let clientMetadataID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payerID + +
    +
    +
    +
    +
    +
    +

    Optional. Payer id associated with this transaction. +Will be provided for Vault and Checkout.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let payerID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html new file mode 100644 index 0000000000..2aae6b732f --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html @@ -0,0 +1,641 @@ + + + + BTPayPalNativeCheckoutClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeCheckoutClient

+
+
+ +
@objc
+public class BTPayPalNativeCheckoutClient : NSObject
+ +
+
+

Client used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initializes a PayPal Native client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public convenience init(apiClient: BTAPIClient)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html new file mode 100644 index 0000000000..ccf77df45c --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html @@ -0,0 +1,578 @@ + + + + BTPayPalNativeCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeCheckoutRequest

+
+
+ +
@objcMembers
+public class BTPayPalNativeCheckoutRequest : BTPayPalCheckoutRequest
+ +
+
+

Options for the PayPal Checkout flow.

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

Initializer +

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

    Initializes a PayPal Native Checkout request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: String,
    +    intent: BTPayPalRequestIntent = .authorize,
    +    offerPayLater: Bool = false,
    +    currencyCode: String? = nil,
    +    requestBillingAgreement: Bool = false,
    +    billingAgreementDescription: String? = nil,
    +    userAuthenticationEmail: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

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

    Used for a one-time payment. Amount must be greater than or equal to zero, may optionally contain exactly 2 decimal places separated by ‘.’

    +
    +
    + + intent + + +
    +

    Optional: Payment intent. Defaults to .authorize. Only applies to PayPal Checkout. +and is limited to 7 digits before the decimal point.

    +
    +
    + + offerPayLater + + +
    +

    Optional: Offers PayPal Pay Later if the customer qualifies. Defaults to false. Only available with PayPal Checkout.

    +
    +
    + + currencyCode + + +
    +

    Optional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set. +See https://developer.paypal.com/docs/api/reference/currency-codes/ for a list of supported currency codes.

    +
    +
    + + requestBillingAgreement + + +
    +

    Optional: If set to true, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout.

    +
    +
    + + billingAgreementDescription + + +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also +set requestBillingAgreement to true on your BTPayPalNativeVaultRequest.

    +
    +
    + + userAuthenticationEmail + + +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html new file mode 100644 index 0000000000..7b35d0322a --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html @@ -0,0 +1,511 @@ + + + + BTPayPalNativeVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeVaultRequest

+
+
+ +
@objcMembers
+public class BTPayPalNativeVaultRequest : BTPayPalVaultBaseRequest
+ +
+
+

Options for the PayPal Vault flow.

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

Initializer +

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

    Initializes a PayPal Native Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    offerCredit: Bool = false,
    +    billingAgreementDescription: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    + + billingAgreementDescription + + +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set +requestBillingAgreement to true on your BTPayPalCheckoutRequest.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html new file mode 100644 index 0000000000..d6116fbe39 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html @@ -0,0 +1,764 @@ + + + + BTPayPalRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalRequest

+
+
+ +
@objcMembers
+open class BTPayPalRequest : NSObject
+ +
+
+

Base options for PayPal Checkout and PayPal Vault flows.

+
+

Note

+ Do not instantiate this class directly. Instead, use BTPayPalCheckoutRequest or BTPayPalVaultRequest. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Public Properties +

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

    Defaults to false. When set to true, the shipping address selector will be displayed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressRequired: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Defaults to false. Set to true to enable user editing of the shipping address.

    +
    +

    Note

    + Only applies when shippingAddressOverride is set. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isShippingAddressEditable: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + localeCode + +
    +
    +
    +
    +
    +
    +

    Optional: A locale code to use for the transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var localeCode: BTPayPalLocaleCode
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: A valid shipping address to be displayed in the transaction flow. An error will occur if this address is not valid.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressOverride: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + landingPageType + +
    +
    +
    +
    +
    +
    +

    Optional: Landing page type. Defaults to .none.

    +
    +

    Note

    + Setting the BTPayPalRequest’s landingPageType changes the PayPal page to display when a user lands on the PayPal site to complete the payment. +.login specifies a PayPal account login page is used. +.billing specifies a non-PayPal account landing page is used. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var landingPageType: BTPayPalRequestLandingPageType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional: The merchant name displayed inside of the PayPal flow; defaults to the company name on your Braintree account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional: A non-default merchant account to use for tokenization.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lineItems + +
    +
    +
    +
    +
    +
    +

    Optional: The line items for this transaction. It can include up to 249 line items.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lineItems: [BTPayPalLineItem]?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set + requestBillingAgreement to true on your BTPayPalCheckoutRequest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAgreementDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + riskCorrelationID + +
    +
    +
    +
    +
    +
    +

    Optional: A risk correlation ID created with Set Transaction Context on your server.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var riskCorrelationID: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultBaseRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultBaseRequest.html new file mode 100644 index 0000000000..512be4a98c --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultBaseRequest.html @@ -0,0 +1,538 @@ + + + + BTPayPalVaultBaseRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalVaultBaseRequest

+
+
+ +
@objcMembers
+open class BTPayPalVaultBaseRequest : BTPayPalRequest
+ +
+
+

Options for the PayPal Vault flow.

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

Public Properties +

+
+
+
    +
  • +
    + + + + offerCredit + +
    +
    +
    +
    +
    +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var offerCredit: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(offerCredit:) + +
    +
    +
    +
    +
    +
    +

    Initializes a PayPal Native Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(offerCredit: Bool = false)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html new file mode 100644 index 0000000000..3a5de5e5e7 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html @@ -0,0 +1,665 @@ + + + + BTPayPalVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalVaultRequest

+
+
+ +
@objcMembers
+public class BTPayPalVaultRequest : BTPayPalVaultBaseRequest
+ +
+
+

Options for the PayPal Vault flow.

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

Public Properties +

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

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAuthenticationEmail: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializers +

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

    Initializes a PayPal Vault request for the PayPal App Switch flow

    +
    +

    Warning

    + This initializer should be used for merchants using the PayPal App Switch flow. This feature is currently in beta and may change or be removed in future releases. + +
    +

    Note

    + The PayPal App Switch flow currently only supports the production environment. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public convenience init(
    +    userAuthenticationEmail: String,
    +    enablePayPalAppSwitch: Bool,
    +    offerCredit: Bool = false
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + userAuthenticationEmail + + +
    +

    Required: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

    +
    +
    + + enablePayPalAppSwitch + + +
    +

    Required: Used to determine if the customer will use the PayPal app switch flow.

    +
    +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

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

    Initializes a PayPal Vault request

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(offerCredit: Bool = false, userAuthenticationEmail: String? = nil)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + offerCredit + + +
    +

    Optional: Offers PayPal Credit if the customer qualifies. Defaults to false.

    +
    +
    + + userAuthenticationEmail + + +
    +

    Optional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.

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

    Declaration

    +
    +

    Swift

    +
    public override func parameters(with configuration: BTConfiguration, universalLink: URL? = nil) -> [String : Any]
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html new file mode 100644 index 0000000000..f43ddcd1f9 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html @@ -0,0 +1,733 @@ + + + + BTPaymentMethodNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPaymentMethodNonce

+
+
+ +
@objcMembers
+open class BTPaymentMethodNonce : NSObject
+ +
+
+

BTPaymentMethodNonce is for generic tokenized payment information.

+ +

For example, if a customer’s vaulted payment methods contains a type that’s not recognized or supported by the +Braintree SDK or the client-side integration (e.g. the vault contains a PayPal account but the client-side +integration does not include the PayPal component), this type can act as a fallback.

+ +

The payment method nonce is a public token that acts as a placeholder for sensitive payments data that +has been uploaded to Braintree for subsequent processing. The nonce is safe to access on the client and can be +used on your server to reference the data in Braintree operations, such as Transaction.sale.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    The payment method nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var nonce: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + type + +
    +
    +
    +
    +
    +
    +

    The string identifying the type of the payment method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var type: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isDefault + +
    +
    +
    +
    +
    +
    +

    The boolean indicating whether this is a default payment method.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isDefault: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(nonce:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:)
    +public init(nonce: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

    +
    + +
    +
    +
  • +
  • +
    + + + + init(nonce:type:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:type:)
    +public init(nonce: String, type: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    + + type + + +
    +

    A string identifying the type of the payment method.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

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

    Initialize a new Payment Method Nonce.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithNonce:type:isDefault:)
    +public init(nonce: String, type: String, isDefault: Bool)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + nonce + + +
    +

    A transact-able payment method nonce.

    +
    +
    + + type + + +
    +

    A string identifying the type of the payment method.

    +
    +
    + + isDefault + + +
    +

    A boolean indicating whether this is a default payment method.

    +
    +
    +
    +
    +

    Return Value

    +

    A Payment Method Nonce, or nil if nonce is nil.

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html new file mode 100644 index 0000000000..b950aa3955 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html @@ -0,0 +1,655 @@ + + + + BTPaymentMethodNonceParser Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPaymentMethodNonceParser

+
+
+ +
@objcMembers
+public class BTPaymentMethodNonceParser : NSObject
+ +
+
+

A JSON parser that parses BTJSON into concrete BTPaymentMethodNonce objects. It supports registration of parsers at runtime.

+ +

BTPaymentMethodNonceParser provides access to JSON parsing for different payment options +without introducing compile-time dependencies on payment option frameworks and their symbols.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + shared + +
    +
    +
    +
    +
    +
    +

    The singleton instance

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(sharedParser)
    +public static let shared: BTPaymentMethodNonceParser
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + allTypes + +
    +
    +
    +
    +
    +
    +

    An array of the tokenization types currently registered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var allTypes: [String] { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isTypeAvailable(_:) + +
    +
    +
    +
    +
    +
    +

    Indicates whether a tokenization type is currently registered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func isTypeAvailable(_ type: String) -> Bool
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + type + + +
    +

    The tokenization type string

    +
    +
    +
    +
    +

    Return Value

    +

    A bool indicating if the payment method type is available.

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

    Registers a parsing block for a tokenization type.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func registerType(_ type: String?, withParsingBlock: @escaping (_ json: BTJSON?) -> BTPaymentMethodNonce?)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + type + + +
    +

    The tokenization type string

    +
    +
    + + withParsingBlock + + +
    +

    jsonParsingBlock The block to execute when parseJSON:type: is called for the tokenization type. +This block should return a BTPaymentMethodNonce object, or nil if the JSON cannot be parsed.

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

    Parses tokenized payment information that has been serialized to JSON, and returns a BTPaymentMethodNonce object.

    + +

    The BTPaymentMethodNonce object is created by the JSON parsing block that has been registered for the tokenization type.

    + +

    If the type has not been registered, this method will attempt to read the nonce from the JSON and return + a basic object; if it fails, it will return nil.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func parseJSON(_ json: BTJSON?, withParsingBlockForType type: String?) -> BTPaymentMethodNonce?
    + +
    +
    +
    +

    Return Value

    +

    A BTPaymentMethodNonce object, or nil if the tokenized payment info JSON does not contain a nonce

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html new file mode 100644 index 0000000000..02494b4deb --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html @@ -0,0 +1,648 @@ + + + + BTPostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPostalAddress

+
+
+ +
@objcMembers
+public class BTPostalAddress : NSObject
+ +
+
+

Generic postal address

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + recipientName + +
    +
    +
    +
    +
    +
    +

    Optional. Recipient name for shipping address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recipientName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Line 1 of the Address (eg. number, street, etc).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional line 2 of the Address (eg. suite, apt #, etc.).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    City name

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    2 letter country code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    Zip code or equivalent is usually required for countries that have them. +For a list of countries that do not have postal codes please refer to http://en.wikipedia.org/wiki/Postal_code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html new file mode 100644 index 0000000000..880e943d63 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html @@ -0,0 +1,635 @@ + + + + BTSEPADirectDebitClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTSEPADirectDebitClient

+
+
+ +
@objc
+public class BTSEPADirectDebitClient : BTWebAuthenticationSessionClient
+ +
+
+

Used to integrate with SEPA Direct Debit.

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

Initializers +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a SEPA Direct Debit client.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An instance of BTAPIClient

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

Public Methods +

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

    Initiates an ASWebAuthenticationSession to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithSEPADirectDebitRequest:completion:)
    +public func tokenize(
    +    _ request: BTSEPADirectDebitRequest,
    +    completion:  @escaping (BTSEPADirectDebitNonce?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    a BTSEPADebitRequest

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when tokenization is complete or an error occurs

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initiates an ASWebAuthenticationSession to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTSEPADirectDebitRequest) async throws -> BTSEPADirectDebitNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    a BTSEPADebitRequest

    +
    +
    +
    +
    +

    Return Value

    +

    A BTSEPADirectDebitNonce if successful

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html new file mode 100644 index 0000000000..789e8e7b85 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html @@ -0,0 +1,527 @@ + + + + BTSEPADirectDebitNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTSEPADirectDebitNonce

+
+
+ +
@objcMembers
+public class BTSEPADirectDebitNonce : BTPaymentMethodNonce
+ +
+
+

A payment method nonce representing a SEPA Direct Debit payment.

+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html new file mode 100644 index 0000000000..57773d6d82 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html @@ -0,0 +1,780 @@ + + + + BTSEPADirectDebitRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTSEPADirectDebitRequest

+
+
+ +
@objcMembers
+public class BTSEPADirectDebitRequest : NSObject
+ +
+
+

Parameters for creating a SEPA Direct Debit tokenization request.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + accountHolderName + +
    +
    +
    +
    +
    +
    +

    Required. The account holder name.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountHolderName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + iban + +
    +
    +
    +
    +
    +
    +

    Required. The full IBAN.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var iban: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + customerID + +
    +
    +
    +
    +
    +
    +

    Required. The customer ID.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var customerID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + mandateType + +
    +
    +
    +
    +
    +
    +

    Optional. The BTSEPADebitMandateType. If not set, defaults to .oneOff

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var mandateType: BTSEPADirectDebitMandateType?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    Required. The user’s billing address.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + merchantAccountID + +
    +
    +
    +
    +
    +
    +

    Optional. A non-default merchant account to use for tokenization.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var merchantAccountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locale + +
    +
    +
    +
    +
    +
    +

    Optional. A locale code to use for creating a mandate. +See https://developer.paypal.com/reference/locale-codes/ for a list of possible values. +Locale code should be supplied as a BCP-47 formatted locale code.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locale: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Initialize a new SEPA Direct Debit request.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    accountHolderName: String? = nil,
    +    iban: String? = nil,
    +    customerID: String? = nil,
    +    mandateType: BTSEPADirectDebitMandateType? = .oneOff,
    +    billingAddress: BTPostalAddress? = nil,
    +    merchantAccountID: String? = nil,
    +    locale: String? = nil
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + accountHolderName + + +
    +

    Required. The account holder name.

    +
    +
    + + iban + + +
    +

    Required. The full IBAN.

    +
    +
    + + customerID + + +
    +

    Required. The customer ID.

    +
    +
    + + mandateType + + +
    +

    Optional. The BTSEPADebitMandateType. If not set, defaults to .oneOff

    +
    +
    + + billingAddress + + +
    +

    Required. The user’s billing address.

    +
    +
    + + merchantAccountID + + +
    +

    Optional. A non-default merchant account to use for tokenization.

    +
    +
    + + locale + + +
    +

    Optional. A locale code to use for creating a mandate. +See https://developer.paypal.com/reference/locale-codes/ for a list of possible values. +Locale code should be supplied as a BCP-47 formatted locale code.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTShopperInsightsClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTShopperInsightsClient.html new file mode 100644 index 0000000000..a3d5541488 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTShopperInsightsClient.html @@ -0,0 +1,692 @@ + + + + BTShopperInsightsClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTShopperInsightsClient

+
+
+ +
public class BTShopperInsightsClient
+ +
+
+

Use BTShopperInsightsClient to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI. + By customizing each customer’s checkout experience, you can improve conversion, increase sales/repeat buys and boost user retention/loyalty.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Private Properties +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates a BTShopperInsightsClient

    +
    +

    Warning

    + This features only works with a client token. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    A BTAPIClient instance.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + getRecommendedPaymentMethods(request:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    This method confirms if the customer is a user of PayPal services using their email and phone number.

    +
    +

    Warning

    + This feature is in beta. Its public API may change or be removed in future releases. + PayPal recommendation is only available for US, AU, FR, DE, ITA, NED, ESP, Switzerland and UK merchants. + Venmo recommendation is only available for US merchants. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func getRecommendedPaymentMethods(request: BTShopperInsightsRequest) async throws -> BTShopperInsightsResult
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    A BTShopperInsightsRequest containing the buyer’s user information

    +
    +
    +
    +
    +

    Return Value

    +

    A BTShopperInsightsResult instance

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

    Call this method when the PayPal button has been successfully displayed to the buyer. +This method sends analytics to help improve the Shopper Insights feature experience.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendPayPalPresentedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the PayPal button has been selected/tapped by the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendPayPalSelectedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the Venmo button has been successfully displayed to the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendVenmoPresentedEvent()
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Call this method when the Venmo button has been selected/tapped by the buyer. +This method sends analytics to help improve the Shopper Insights feature experience

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func sendVenmoSelectedEvent()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html new file mode 100644 index 0000000000..fafdae8573 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html @@ -0,0 +1,1769 @@ + + + + BTThreeDSecureAdditionalInformation Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureAdditionalInformation

+
+
+ +
@objcMembers
+public class BTThreeDSecureAdditionalInformation : NSObject
+ +
+
+

Additional information for a 3DS lookup. Used in 3DS 2.0+ flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping address used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddress: BTThreeDSecurePostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit string indicating the shipping method chosen for the transaction

    + +

    Possible Values:

    + +
      +
    • 01: Ship to cardholder billing address
    • +
    • 02: Ship to another verified address on file with merchant
    • +
    • 03: Ship to address that is different than billing address
    • +
    • 04: Ship to store (store address should be populated on request)
    • +
    • 05: Digital goods
    • +
    • 06: Travel and event tickets, not shipped
    • +
    • 07: Other
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingMethodIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional. The 3-letter string representing the merchant product code

    + +

    Possible Values:

    + +
      +
    • AIR: Airline
    • +
    • GEN: General Retail
    • +
    • DIG: Digital Goods
    • +
    • SVC: Services
    • +
    • RES: Restaurant
    • +
    • TRA: Travel
    • +
    • DSP: Cash Dispensing
    • +
    • REN: Car Rental
    • +
    • GAS: Fueld
    • +
    • LUX: Luxury Retail
    • +
    • ACC: Accommodation Retail
    • +
    • TBD: Other
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deliveryTimeframe + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating the delivery timeframe

    + +

    Possible values:

    + +
      +
    • 01: Electronic delivery
    • +
    • 02: Same day shipping
    • +
    • 03: Overnight shipping
    • +
    • 04: Two or more day shipping
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var deliveryTimeframe: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deliveryEmail + +
    +
    +
    +
    +
    +
    +

    Optional. For electronic delivery, email address to which the merchandise was delivered

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var deliveryEmail: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + reorderIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating whether the cardholder is reordering previously purchased merchandise

    + +

    Possible values:

    + +
      +
    • 01: First time ordered
    • +
    • 02: Reordered
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var reorderIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + preorderIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating whether the cardholder is placing an order with a future availability or release date

    + +

    Possible values:

    + +
      +
    • 01: Merchandise available
    • +
    • 02: Future availability
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var preorderIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + preorderDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating expected date that a pre-ordered purchase will be available

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var preorderDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The purchase amount total for prepaid gift cards in major units

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardCurrencyCode + +
    +
    +
    +
    +
    +
    +

    Optional. ISO 4217 currency code for the gift card purchased

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardCurrencyCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + giftCardCount + +
    +
    +
    +
    +
    +
    +

    Optional. Total count of individual prepaid gift cards purchased

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var giftCardCount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountAgeIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.

    + +

    Possible values:

    + +
      +
    • 01: Changed during transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountAgeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountCreateDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder’s account was last changed. +This includes changes to the billing or shipping address, new payment accounts or new users added.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountCreateDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.

    + +

    Possible values:

    + +
      +
    • 01: Changed during transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountChangeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountChangeDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder’s account was last changed. +This includes changes to the billing or shipping address, new payment accounts or new users added.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountChangeDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value representing the length of time since the cardholder changed or reset the password on the account.

    + +

    Possible values:

    + +
      +
    • 01: No change
    • +
    • 02: Changed during transaction
    • +
    • 03: Less than 30 days
    • +
    • 04: 30-60 days
    • +
    • 05: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPwdChangeIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountPwdChangeDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder last changed or reset password on account.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPwdChangeDate: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating when the shipping address used for transaction was first used.

    + +

    Possible values:

    + +
      +
    • 01: This transaction
    • +
    • 02: Less than 30 days
    • +
    • 03: 30-60 days
    • +
    • 04: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressUsageIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date when the shipping address used for this transaction was first used.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddressUsageDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionCountDay + +
    +
    +
    +
    +
    +
    +

    Optional. Number of transactions (successful or abandoned) for this cardholder account within the last 24 hours.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionCountDay: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionCountYear + +
    +
    +
    +
    +
    +
    +

    Optional. Number of transactions (successful or abandoned) for this cardholder account within the last year.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionCountYear: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + addCardAttempts + +
    +
    +
    +
    +
    +
    +

    Optional. Number of add card attempts in the last 24 hours.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var addCardAttempts: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountPurchases + +
    +
    +
    +
    +
    +
    +

    Optional. Number of purchases with this cardholder account during the previous six months.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountPurchases: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fraudActivity + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating whether the merchant experienced suspicious activity (including previous fraud) on the account.

    + +

    Possible values:

    + +
      +
    • 01: No suspicious activity
    • +
    • 02: Suspicious activity observed
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var fraudActivity: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingNameIndicator + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating if the cardholder name on the account is identical to the shipping name used for the transaction.

    + +

    Possible values:

    + +
      +
    • 01: Account name identical to shipping name
    • +
    • 02: Account name different than shipping name
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingNameIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit value indicating the length of time that the payment account was enrolled in the merchant account.

    + +

    Possible values:

    + +
      +
    • 01: No account (guest checkout)
    • +
    • 02: During the transaction
    • +
    • 03: Less than 30 days
    • +
    • 04: 30-60 days
    • +
    • 05: More than 60 days
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentAccountIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paymentAccountAge + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date the payment account was added to the cardholder account.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentAccountAge: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + addressMatch + +
    +
    +
    +
    +
    +
    +

    Optional. The 1-character value (Y/N) indicating whether cardholder billing and shipping addresses match.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var addressMatch: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountID + +
    +
    +
    +
    +
    +
    +

    Optional. Additional cardholder account information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ipAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The IP address of the consumer. IPv4 and IPv6 are supported.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var ipAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + orderDescription + +
    +
    +
    +
    +
    +
    +

    Optional. Brief description of items purchased.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var orderDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + taxAmount + +
    +
    +
    +
    +
    +
    +

    Optional. Unformatted tax amount without any decimalization (ie. $123.67 = 12367).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var taxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + userAgent + +
    +
    +
    +
    +
    +
    +

    Optional. The exact content of the HTTP user agent header.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var userAgent: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The 2-digit number indicating the type of authentication request.

    + +

    Possible values:

    + +
      +
    • 02: Recurring transaction
    • +
    • 03: Installment transaction
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationIndicator: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + installment + +
    +
    +
    +
    +
    +
    +

    Optional. An integer value greater than 1 indicating the maximum number of permitted authorizations for installment payments.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var installment: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + purchaseDate + +
    +
    +
    +
    +
    +
    +

    Optional. The 14-digit number (format: YYYYMMDDHHMMSS) indicating the date in UTC of original purchase.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var purchaseDate: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurringEnd + +
    +
    +
    +
    +
    +
    +

    Optional. The 8-digit number (format: YYYYMMDD) indicating the date after which no further recurring authorizations should be performed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recurringEnd: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurringFrequency + +
    +
    +
    +
    +
    +
    +

    Optional. Integer value indicating the minimum number of days between recurring authorizations. +A frequency of monthly is indicated by the value 28. Multiple of 28 days will be used to indicate months (ex. 6 months = 168).

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var recurringFrequency: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sdkMaxTimeout + +
    +
    +
    +
    +
    +
    +

    Optional. The 2-digit number of minutes (minimum 05) to set the maximum amount of time for all 3DS 2.0 messages to be communicated between all components.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var sdkMaxTimeout: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + workPhoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The work phone number used for verification. Only numbers; remove dashes, parenthesis and other characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var workPhoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html new file mode 100644 index 0000000000..fdb362167b --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html @@ -0,0 +1,854 @@ + + + + BTThreeDSecureClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureClient

+
+
+ +
@objcMembers
+public class BTThreeDSecureClient : NSObject
+ +
+
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Initialize a new BTThreeDSecureClient instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

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

Public Methods +

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

    Starts the 3DS flow using a BTThreeDSecureRequest.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func startPaymentFlow(_ request: BTThreeDSecureRequest, completion: @escaping (BTThreeDSecureResult?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    A BTThreeDSecureRequest request.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when the 3DS flow is complete or an error occurs.

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

    Creates a stringified JSON object containing the information necessary to perform a lookup.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(prepareLookup:completion:)
    +public func prepareLookup(
    +    _ request: BTThreeDSecureRequest,
    +    completion: @escaping (String?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once with the client payload string or an error.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + prepareLookup(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Creates a stringified JSON object containing the information necessary to perform a lookup.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func prepareLookup(_ request: BTThreeDSecureRequest) async throws -> String
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive a client payload string

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

    Initialize a challenge from a server side lookup call.

    +
    +

    Note

    + Majority of 3DS integrations do not need to use this method. Only for server-side 3DS integrations. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initializeChallengeWithLookupResponse:request:completion:)
    +public func initializeChallenge(
    +    lookupResponse: String,
    +    request: BTThreeDSecureRequest,
    +    completion: @escaping (BTThreeDSecureResult?, Error?) -> Void
    +)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + +
    + + lookupResponse + + +
    +

    The JSON string returned by the server side lookup.

    +
    +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    + + completion + + +
    +

    This completion will be invoked exactly once when the payment flow is complete or an error occurs.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + initializeChallenge(lookupResponse:request:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initialize a challenge from a server side lookup call.

    +
    +

    Throws

    + An Error describing the failure + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func initializeChallenge(
    +    lookupResponse: String,
    +    request: BTThreeDSecureRequest
    +) async throws -> BTThreeDSecureResult
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + lookupResponse + + +
    +

    The JSON string returned by the server side lookup.

    +
    +
    + + request + + +
    +

    The BTThreeDSecureRequest object where prepareLookup was called.

    +
    +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTThreeDSecureResult

    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html new file mode 100644 index 0000000000..7d5d10d87e --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html @@ -0,0 +1,1004 @@ + + + + BTThreeDSecureInfo Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureInfo

+
+
+ +
@objcMembers
+public class BTThreeDSecureInfo : NSObject
+ +
+
+

Contains information about the 3D Secure status of a payment method

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

Public Properties +

+
+
+
    +
  • +
    + + + + acsTransactionID + +
    +
    +
    +
    +
    +
    +

    Unique transaction identifier assigned by the Access Control Server (ACS) to identify a single transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var acsTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On authentication, the transaction status result identifier.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationTransactionStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On authentication, provides additional information as to why the transaction status has the specific value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var authenticationTransactionStatusReason: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cavv + +
    +
    +
    +
    +
    +
    +

    Cardholder authentication verification value or “CAVV” is the main encrypted message issuers and card networks use to verify authentication has occured. +Mastercard uses an “AVV” message which will also be returned in the cavv parameter.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cavv: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dsTransactionID + +
    +
    +
    +
    +
    +
    +

    Directory Server Transaction ID is an ID used by the card brand’s 3DS directory server.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var dsTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + eciFlag + +
    +
    +
    +
    +
    +
    +

    The ecommerce indicator flag indicates the outcome of the 3DS authentication. +Possible values are 00, 01, and 02 for Mastercard 05, 06, and 07 for all other cardbrands.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var eciFlag: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + enrolled + +
    +
    +
    +
    +
    +
    +

    Indicates whether a card is enrolled in a 3D Secure program or not. Possible values:

    + +
      +
    • Y = Yes
    • +
    • N = No
    • +
    • U = Unavailable
    • +
    • B = Bypass
    • +
    • E = RequestFailure
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var enrolled: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + liabilityShifted + +
    +
    +
    +
    +
    +
    +

    If the 3D Secure liability shift has occurred.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var liabilityShifted: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    If the 3D Secure liability shift is possible.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var liabilityShiftPossible: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On lookup, the transaction status result identifier.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookupTransactionStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    On lookup, provides additional information as to why the transaction status has the specific value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookupTransactionStatusReason: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paresStatus + +
    +
    +
    +
    +
    +
    +

    The Payer Authentication Response (PARes) Status, a transaction status result identifier. Possible Values:

    + +
      +
    • Y – Successful Authentication
    • +
    • N – Failed Authentication
    • +
    • U – Unable to Complete Authentication
    • +
    • A– Successful Stand-In Attempts Transaction
    • +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paresStatus: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + status + +
    +
    +
    +
    +
    +
    +

    The 3D Secure status value.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var status: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Unique identifier assigned to the 3D Secure authentication performed for this transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureAuthenticationID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Unique transaction identifier assigned by the 3DS Server to identify a single transaction.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureServerTransactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureVersion + +
    +
    +
    +
    +
    +
    +

    The 3DS version used in the authentication, example “1.0.2” or “2.1.0”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureVersion: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + wasVerified + +
    +
    +
    +
    +
    +
    +

    Indicates if the 3D Secure lookup was performed.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var wasVerified: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + xid + +
    +
    +
    +
    +
    +
    +

    Transaction identifier resulting from 3D Secure authentication. Uniquely identifies the transaction and sometimes required in the authorization message. +This field will no longer be used in 3DS 2 authentications.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var xid: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html new file mode 100644 index 0000000000..567c7014c6 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html @@ -0,0 +1,688 @@ + + + + BTThreeDSecureLookup Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureLookup

+
+
+ +
@objcMembers
+public class BTThreeDSecureLookup : NSObject
+ +
+
+

The result of a 3DS lookup. +Contains liability shift and challenge information.

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

Public Properties +

+
+
+
    +
  • +
    + + + + paReq + +
    +
    +
    +
    +
    +
    +

    The “PAReq” or “Payment Authentication Request” is the encoded request message used to initiate authentication.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paReq: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + md + +
    +
    +
    +
    +
    +
    +

    The unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var md: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + acsURL + +
    +
    +
    +
    +
    +
    +

    The URL which the customer will be redirected to for a 3DS Interface. +In 3DS 2, the presence of an acsURL indicates there is a challenge as it would otherwise frictionlessly complete without an acsURL.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var acsURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + termURL + +
    +
    +
    +
    +
    +
    +

    The termURL is the fully qualified URL that the customer will be redirected to once the authentication completes.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var termURL: URL?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + threeDSecureVersion + +
    +
    +
    +
    +
    +
    +

    The full version string of the 3DS lookup result.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var threeDSecureVersion: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates a 3DS 2 lookup result.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isThreeDSecureVersion2: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + transactionID + +
    +
    +
    +
    +
    +
    +

    This a secondary unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var transactionID: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Indicates that a 3DS challenge is required.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requiresUserAuthentication: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html new file mode 100644 index 0000000000..4a8e2504eb --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html @@ -0,0 +1,752 @@ + + + + BTThreeDSecurePostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecurePostalAddress

+
+
+ +
@objcMembers
+public class BTThreeDSecurePostalAddress : NSObject
+ +
+
+

Postal address for 3D Secure flows

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

Public Properties +

+
+
+
    +
  • +
    + + + + givenName + +
    +
    +
    +
    +
    +
    +

    Optional. Given name associated with the address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var givenName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + surname + +
    +
    +
    +
    +
    +
    +

    Optional. Surname associated with the address

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var surname: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + streetAddress + +
    +
    +
    +
    +
    +
    +

    Optional. Line 1 of the Address (eg. number, street, etc)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var streetAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + extendedAddress + +
    +
    +
    +
    +
    +
    +

    Optional. Line 2 of the Address (eg. suite, apt #, etc.)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var extendedAddress: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + line3 + +
    +
    +
    +
    +
    +
    +

    Optional. Line 3 of the Address (eg. suite, apt #, etc.)

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var line3: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + locality + +
    +
    +
    +
    +
    +
    +

    Optional. City name

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var locality: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + region + +
    +
    +
    +
    +
    +
    +

    Optional. Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var region: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + postalCode + +
    +
    +
    +
    +
    +
    +

    Optional. Zip code or equivalent is usually required for countries that have them. +For a list of countries that do not have postal codes please refer to http://en.wikipedia.org/wiki/Postal_code

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var postalCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + countryCodeAlpha2 + +
    +
    +
    +
    +
    +
    +

    Optional. 2 letter country code

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var countryCodeAlpha2: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The phone number associated with the address

    +
    +

    Note

    + Only numbers. Remove dashes, parentheses and other characters + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html new file mode 100644 index 0000000000..6bc1d6a7b1 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html @@ -0,0 +1,645 @@ + + + + BTThreeDSecureRenderType Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureRenderType

+
+
+ +
@objcMembers
+public class BTThreeDSecureRenderType : NSObject, OptionSet
+ +
+
+

Render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + rawValue + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public let rawValue: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(rawValue:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    required public init(rawValue: Int)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + otp + +
    +
    +
    +
    +
    +
    +

    OTP

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let otp: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + html + +
    +
    +
    +
    +
    +
    +

    HTML

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let html: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + singleSelect + +
    +
    +
    +
    +
    +
    +

    Single select

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let singleSelect: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + multiSelect + +
    +
    +
    +
    +
    +
    +

    Multi Select

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let multiSelect: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + oob + +
    +
    +
    +
    +
    +
    +

    OOB

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static let oob: BTThreeDSecureRenderType
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html new file mode 100644 index 0000000000..c36aa379a3 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html @@ -0,0 +1,1047 @@ + + + + BTThreeDSecureRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureRequest

+
+
+ +
@objcMembers
+public class BTThreeDSecureRequest : NSObject
+ +
+
+

Used to initialize a 3D Secure payment flow

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

Public Properties +

+
+
+
    +
  • +
    + + + + nonce + +
    +
    +
    +
    +
    +
    +

    A nonce to be verified by ThreeDSecure

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var nonce: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + customFields + +
    +
    +
    +
    +
    +
    +

    Object where each key is the name of a custom field which has been configured in the Control Panel. In the Control Panel you can configure 3D Secure Rules which trigger on certain values.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var customFields: [String : String]?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + amount + +
    +
    +
    +
    +
    +
    +

    The amount for the transaction

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var amount: NSDecimalNumber?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + accountType + +
    +
    +
    +
    +
    +
    +

    Optional. The account type selected by the cardholder

    +
    +

    Note

    + Some cards can be processed using either a credit or debit account and cardholders have the option to choose which account to use. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var accountType: BTThreeDSecureAccountType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    Optional. The billing address used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTThreeDSecurePostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + mobilePhoneNumber + +
    +
    +
    +
    +
    +
    +

    Optional. The mobile phone number used for verification

    +
    +

    Note

    + Only numbers. Remove dashes, parentheses and other characters + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var mobilePhoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    Optional. The email used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingMethod + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping method chosen for the transaction

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingMethod: BTThreeDSecureShippingMethod
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + additionalInformation + +
    +
    +
    +
    +
    +
    +

    Optional. The additional information used for verification

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var additionalInformation: BTThreeDSecureAdditionalInformation?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + challengeRequested + +
    +
    +
    +
    +
    +
    +

    Optional. If set to true, an authentication challenge will be forced if possible.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var challengeRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + exemptionRequested + +
    +
    +
    +
    +
    +
    +

    Optional. If set to true, an exemption to the authentication challenge will be requested.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var exemptionRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. The exemption type to be requested. If an exemption is requested and the exemption’s conditions are satisfied, then it will be applied.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var requestedExemptionType: BTThreeDSecureRequestedExemptionType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dataOnlyRequested + +
    +
    +
    +
    +
    +
    +

    Optional. Indicates whether to use the data only flow. In this flow, frictionless 3DS is ensured for Mastercard cardholders as the card scheme provides a risk score +for the issuer to determine whether to approve. If data only is not supported by the processor, a validation error will be raised. +Non-Mastercard cardholders will fallback to a normal 3DS flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var dataOnlyRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardAddChallenge + +
    +
    +
    +
    +
    +
    +

    Optional. An authentication created using this property should only be used for adding a payment method to the merchant’s vault and not for creating transactions.

    + +

    Defaults to .unspecified.

    + +

    If set to .challengeRequested, the authentication challenge will be requested from the issuer to confirm adding new card to the merchant’s vault. +If set to .notRequested the authentication challenge will not be requested from the issuer. +If set to .unspecified, when the amount is 0, the authentication challenge will be requested from the issuer. +If set to .unspecified, when the amount is greater than 0, the authentication challenge will not be requested from the issuer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @available(*, deprecated, renamed: "cardAddChallengeRequested", message: "Use the `cardAddChallengeRequested` boolean property instead")
    +public var cardAddChallenge: BTThreeDSecureCardAddChallenge { get set }
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Optional. An authentication created using this flag should only be used for vaulting operations (creation of customers’ credit cards or payment methods) and not for creating transactions. +If set to true, a card-add challenge will be requested from the issuer. +If set to false, a card-add challenge will not be requested. +If the parameter is missing, a card-add challenge will only be requested for $0 amount.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cardAddChallengeRequested: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + v2UICustomization + +
    +
    +
    +
    +
    +
    +

    Optional. UI Customization for 3DS2 challenge views.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var v2UICustomization: BTThreeDSecureV2UICustomization?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + uiType + +
    +
    +
    +
    +
    +
    +

    Optional. Sets all UI types that the device supports for displaying specific challenge user interfaces in the 3D Secure challenge.

    + +

    Defaults to .both

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var uiType: BTThreeDSecureUIType
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + renderTypes + +
    +
    +
    +
    +
    +
    +

    Optional. List of all the render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    +
    +

    Note

    + When using BTThreeDSecureUIType.both or BTThreeDSecureUIType.html, all BTThreeDSecureRenderType options must be set. +When using BTThreeDSecureUIType.native, all BTThreeDSecureRenderType options except .html must be set. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var renderTypes: [BTThreeDSecureRenderType]?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A delegate for receiving information about the ThreeDSecure payment flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public weak var threeDSecureRequestDelegate: BTThreeDSecureRequestDelegate?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html new file mode 100644 index 0000000000..2aa5f0807b --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html @@ -0,0 +1,536 @@ + + + + BTThreeDSecureResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureResult

+
+
+ +
@objcMembers
+public class BTThreeDSecureResult : NSObject
+ +
+
+

The result of a 3D Secure payment flow

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

Public Properties +

+
+
+
    +
  • +
    + + + + tokenizedCard + +
    +
    +
    +
    +
    +
    +

    The BTCardNonce resulting from the 3D Secure flow

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var tokenizedCard: BTCardNonce?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lookup + +
    +
    +
    +
    +
    +
    +

    The result of a 3D Secure lookup. Contains liability shift and challenge information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lookup: BTThreeDSecureLookup?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorMessage + +
    +
    +
    +
    +
    +
    +

    The error message when the 3D Secure flow is unsuccessful

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorMessage: String?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html new file mode 100644 index 0000000000..1b8e285682 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html @@ -0,0 +1,536 @@ + + + + BTThreeDSecureV2BaseCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2BaseCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2BaseCustomization : NSObject
+ +
+
+

Base customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + textFontName + +
    +
    +
    +
    +
    +
    +

    Font type for the UI element.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textFontName: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + textColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + textFontSize + +
    +
    +
    +
    +
    +
    +

    Font size for the UI element.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var textFontSize: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html new file mode 100644 index 0000000000..8a6d491e12 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html @@ -0,0 +1,548 @@ + + + + BTThreeDSecureV2ButtonCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2ButtonCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2ButtonCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Button customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + backgroundColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var backgroundColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cornerRadius + +
    +
    +
    +
    +
    +
    +

    Radius (integer value) for the button corners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cornerRadius: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html new file mode 100644 index 0000000000..73b2999df1 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2LabelCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2LabelCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2LabelCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Label customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + headingTextColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headingTextFontName + +
    +
    +
    +
    +
    +
    +

    Font type for the heading label text.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextFontName: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headingTextFontSize + +
    +
    +
    +
    +
    +
    +

    Font size for the heading label text.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headingTextFontSize: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html new file mode 100644 index 0000000000..8667fea4f9 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2TextBoxCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2TextBoxCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2TextBoxCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Text box customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + borderWidth + +
    +
    +
    +
    +
    +
    +

    Width (integer value) of the text box border.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var borderWidth: Int { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + borderColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var borderColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cornerRadius + +
    +
    +
    +
    +
    +
    +

    Radius (integer value) for the text box corners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var cornerRadius: Int { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html new file mode 100644 index 0000000000..15de9438ed --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html @@ -0,0 +1,578 @@ + + + + BTThreeDSecureV2ToolbarCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2ToolbarCustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2ToolbarCustomization : BTThreeDSecureV2BaseCustomization
+ +
+
+

Toolbar customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+
    +
  • +
    + + + + backgroundColor + +
    +
    +
    +
    +
    +
    +

    Color code in Hex format. For example, the color code can be “#999999”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var backgroundColor: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + headerText + +
    +
    +
    +
    +
    +
    +

    Text for the header.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var headerText: String? { get set }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + buttonText + +
    +
    +
    +
    +
    +
    +

    Text for the button. For example, “Cancel”.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var buttonText: String? { get set }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+
    +
  • +
    + + + + init() + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override init()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html new file mode 100644 index 0000000000..a495d70619 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html @@ -0,0 +1,611 @@ + + + + BTThreeDSecureV2UICustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2UICustomization

+
+
+ +
@objcMembers
+public class BTThreeDSecureV2UICustomization : NSObject
+ +
+
+

UI customization options for 3D Secure 2 flows.

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

Public Properties +

+
+
+ +
+
+
+ + +
+ +

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html new file mode 100644 index 0000000000..29705f4b20 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html @@ -0,0 +1,686 @@ + + + + BTVenmoAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoAccountNonce

+
+
+ +
@objcMembers
+public class BTVenmoAccountNonce : BTPaymentMethodNonce
+ +
+
+

Contains information about a Venmo Account payment method

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

Public Properties +

+
+
+
    +
  • +
    + + + + email + +
    +
    +
    +
    +
    +
    +

    The email associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var email: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + externalID + +
    +
    +
    +
    +
    +
    +

    The external ID associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var externalID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + firstName + +
    +
    +
    +
    +
    +
    +

    The first name associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var firstName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lastName + +
    +
    +
    +
    +
    +
    +

    The last name associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lastName: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + phoneNumber + +
    +
    +
    +
    +
    +
    +

    The phone number associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var phoneNumber: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + username + +
    +
    +
    +
    +
    +
    +

    The username associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var username: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billingAddress + +
    +
    +
    +
    +
    +
    +

    The primary billing address associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var billingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAddress + +
    +
    +
    +
    +
    +
    +

    The primary shipping address associated with the Venmo account

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAddress: BTPostalAddress?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html new file mode 100644 index 0000000000..f4c0aedcac --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html @@ -0,0 +1,697 @@ + + + + BTVenmoClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoClient

+
+
+ +
@objc
+public class BTVenmoClient : NSObject
+
extension BTVenmoClient: BTAppContextSwitchClient
+ +
+
+

Used to process Venmo payments

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

Initializer +

+
+
+
    +
  • +
    + + + + init(apiClient:) + +
    +
    +
    +
    +
    +
    +

    Creates an Apple Pay client

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithAPIClient:)
    +public init(apiClient: BTAPIClient)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + apiClient + + +
    +

    An API client

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

Public Methods +

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

    Initiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(tokenizeWithVenmoRequest:completion:)
    +public func tokenize(_ request: BTVenmoRequest, completion: @escaping (BTVenmoAccountNonce?, Error?) -> Void)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + request + + +
    +

    A Venmo request.

    +
    +
    + + completion + + +
    +

    This completion will be invoked when app switch is complete or an error occurs. On success, you will receive +an instance of BTVenmoAccountNonce; on failure or user cancelation you will receive an error. +If the user cancels out of the flow, the error code will be .canceled.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + tokenize(_:) + + + Asynchronous + +
    +
    +
    +
    +
    +
    +

    Initiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.

    +
    +

    Throws

    + An Error describing the failure. If the user cancels out of the flow, the error code will be .canceled. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func tokenize(_ request: BTVenmoRequest) async throws -> BTVenmoAccountNonce
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + request + + + +
    +
    +
    +

    Return Value

    +

    On success, you will receive an instance of BTVenmoAccountNonce

    +
    + +
    +
    +
  • +
  • +
    + + + + isVenmoAppInstalled() + +
    +
    +
    +
    +
    +
    +

    Returns true if the proper Venmo app is installed and configured correctly, returns false otherwise.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func isVenmoAppInstalled() -> Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Switches to the App Store to download the Venmo application.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public func openVenmoAppPageInAppStore()
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html new file mode 100644 index 0000000000..0c984bfda0 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html @@ -0,0 +1,785 @@ + + + + BTVenmoLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoLineItem

+
+
+ +
@objcMembers
+public class BTVenmoLineItem : NSObject
+ +
+
+

A Venmo line item to be displayed in the Venmo Paysheet.

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

Public Properties +

+
+
+
    +
  • +
    + + + + quantity + +
    +
    +
    +
    +
    +
    +

    Number of units of the item purchased. This value must be a whole number and can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var quantity: Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitAmount + +
    +
    +
    +
    +
    +
    +

    Per-unit price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var unitAmount: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + name + +
    +
    +
    +
    +
    +
    +

    Item name. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var name: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + kind + +
    +
    +
    +
    +
    +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var kind: BTVenmoLineItemKind
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unitTaxAmount + +
    +
    +
    +
    +
    +
    +

    Optional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can’t be negative or zero.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var unitTaxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + itemDescription + +
    +
    +
    +
    +
    +
    +

    Optional: Item description. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var itemDescription: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productCode + +
    +
    +
    +
    +
    +
    +

    Optional: Product or UPC code for the item. Maximum 127 characters.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var productCode: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + url + +
    +
    +
    +
    +
    +
    +

    Optional: The URL to product information.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var url: URL?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Public Initializer +

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

    Initialize a BTVenmoLineItem

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(initWithQuantity:unitAmount:name:kind:)
    +public init(quantity: Int, unitAmount: String, name: String, kind: BTVenmoLineItemKind)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + + + + + + + + + +
    + + quantity + + +
    +

    Number of units of the item purchased. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + unitAmount + + +
    +

    Per-unit price of the item. Can include up to 4 decimal places. This value can’t be negative or zero.

    +
    +
    + + name + + +
    +

    Item name. Maximum 127 characters.

    +
    +
    + + kind + + +
    +

    Indicates whether the line item is a debit (sale) or credit (refund) to the customer.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html new file mode 100644 index 0000000000..5b00a99732 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html @@ -0,0 +1,951 @@ + + + + BTVenmoRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoRequest

+
+
+ +
@objcMembers
+public class BTVenmoRequest : NSObject
+ +
+
+

A BTVenmoRequest specifies options that contribute to the Venmo flow

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

Public Properties +

+
+
+
    +
  • +
    + + + + profileID + +
    +
    +
    +
    +
    +
    +

    Optional. The Venmo profile ID to be used during payment authorization. Customers will see the business name and logo associated with this Venmo profile, and it may show up in the +Venmo app as a “Connected Merchant”. Venmo profile IDs can be found in the Braintree Control Panel. Leaving this nil will use the default Venmo profile.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var profileID: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + vault + +
    +
    +
    +
    +
    +
    +

    Whether to automatically vault the Venmo account on the client. For client-side vaulting, you must initialize BTAPIClient with a client token that was created with a customer ID. +Also, paymentMethodUsage on the BTVenmoRequest must be set to .multiUse.

    + +

    If this property is set to false, you can still vault the Venmo account on your server, provided that paymentMethodUsage is not set to .singleUse. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var vault: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + paymentMethodUsage + +
    +
    +
    +
    +
    +
    +

    If set to .multiUse, the Venmo payment will be authorized for future payments and can be vaulted. + If set to .singleUse, the Venmo payment will be authorized for a one-time payment and cannot be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var paymentMethodUsage: BTVenmoPaymentMethodUsage
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + displayName + +
    +
    +
    +
    +
    +
    +

    Optional. The business name that will be displayed in the Venmo app payment approval screen. Only used by merchants onboarded as PayFast channel partners.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var displayName: String?
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Whether the customer’s billing address should be collected and displayed on the Venmo paysheet. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var collectCustomerBillingAddress: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Whether the customer’s shipping address should be collected and displayed on the Venmo paysheet. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var collectCustomerShippingAddress: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isFinalAmount + +
    +
    +
    +
    +
    +
    +

    Indicates whether the purchase amount is the final amount. +Removes “subject to change” notice in Venmo app paysheet UI. +Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isFinalAmount: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + subTotalAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The subtotal amount of the transaction to be displayed on the paysheet. Excludes taxes, discounts, and shipping amounts.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var subTotalAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + discountAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The total discount amount applied on the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var discountAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + taxAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The total tax amount for the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var taxAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shippingAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The shipping amount for the transaction to be displayed on the paysheet.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var shippingAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + totalAmount + +
    +
    +
    +
    +
    +
    +

    Optional. The grand total amount on the transaction that should be displayed on the paysheet.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var totalAmount: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lineItems + +
    +
    +
    +
    +
    +
    +

    Optional. The line items for this transaction. It can include up to 249 line items.

    + +

    If this value is set, totalAmount must also be set.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var lineItems: [BTVenmoLineItem]?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fallbackToWeb + +
    +
    +
    +
    +
    +
    +

    Optional. Used to determine if the customer should fallback to the web flow if Venmo app is not installed.

    + +

    Defaults to false

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var fallbackToWeb: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Initializer +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html new file mode 100644 index 0000000000..5f8de9f6e7 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html @@ -0,0 +1,1753 @@ + + + + Enumerations Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Enumerations

+

The following enumerations are available globally.

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

    Error codes associated with a API Client.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAnalyticsServiceError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTClientTokenError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a client token.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTClientTokenError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + TokenizationKeyError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a Tokenization Key.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum TokenizationKeyError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTAPIClientError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a API Client.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAPIClientError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardNetwork + +
    +
    +
    +
    +
    +
    +

    Card type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTCardNetwork : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTHTTPError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with BTHTTP

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTHTTPError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTJSONError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTJSONError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error returned from the native PayPal flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalNativeCheckoutError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with SEPA Direct Debit.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTSEPADirectDebitError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Mandate type for the SEPA Direct Debit request.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTSEPADirectDebitMandateType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with American Express.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTAmericanExpressError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTDataCollectorError + +
    +
    +
    +
    +
    +
    +

    Error details associated with Braintree Data Collector.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTDataCollectorError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTApplePayError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Apple Pay.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTApplePayError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTLocalPaymentError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Payment Flow

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTLocalPaymentError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The account type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureAccountType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The card add challenge request

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureCardAddChallenge : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTThreeDSecureError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    3D Secure requested exemption type

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureRequestedExemptionType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The shipping method

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureShippingMethod : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTThreeDSecureUIType + +
    +
    +
    +
    +
    +
    +

    The interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureUIType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Button types that can be customized in 3D Secure 2 flows.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTThreeDSecureV2ButtonType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTCardError + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTCardError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalRequestIntent + +
    +
    +
    +
    +
    +
    +

    Payment intent.

    +
    +

    Note

    + Must be set to BTPayPalRequestIntentSale for immediate payment, .authorize to authorize a payment for capture later, or .order to create an order. Defaults to .authorize. Only applies to PayPal Checkout. + +
    + +

    Capture payments later reference

    + +

    Create and process orders reference

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestIntent : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    The call-to-action in the PayPal Checkout flow.

    +
    +

    Note

    + By default the final button will show the localized word for “Continue” and implies that the final amount billed is not yet known. +Setting the BTPayPalRequest’s userAction to .payNow changes the button text to “Pay Now”, conveying to +the user that billing will take place immediately. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestUserAction : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with PayPal.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLineItemKind + +
    +
    +
    +
    +
    +
    +

    Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLineItemKind : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use this option to specify the UPC type of the line item.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLineItemUPCType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalLocaleCode + +
    +
    +
    +
    +
    +
    +

    A locale code to use for a transaction.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalLocaleCode : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalPaymentType + +
    +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalPaymentType : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Use this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTPayPalRequestLandingPageType : Int
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoAppSwitchError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Venmo App Switch

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTVenmoAppSwitchError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with Venmo

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTVenmoError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTVenmoLineItemKind + +
    +
    +
    +
    +
    +
    +

    Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTVenmoLineItemKind : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Usage type for the tokenized Venmo account

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +public enum BTVenmoPaymentMethodUsage : Int
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text and logo color option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingColor
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Error details associated with PayPal Messaging.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Logo type option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingLogoType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Preferred message offer to display

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingOfferType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Message location within an application

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingPageType
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Text alignment option for a PayPal Message

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTPayPalMessagingTextAlignment
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTShopperInsightsError : Int, Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html new file mode 100644 index 0000000000..da7333ffbb --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html @@ -0,0 +1,655 @@ + + + + BTAPIClientError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAPIClientError

+
+
+ +
public enum BTAPIClientError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a API Client.

+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Configuration fetch failed
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case configurationUnavailable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + notAuthorized + +
    +
    +
    +
    +
    +
    + +
      +
    1. Not authorized
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case notAuthorized
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTAPIClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedBase64Encoding + +
    +
    +
    +
    +
    +
    + +
      +
    1. Failed to base64 encode an authorizationFingerprint or tokenizationKey, when used as a cacheKey
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedBase64Encoding
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html new file mode 100644 index 0000000000..4483afe8ed --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html @@ -0,0 +1,622 @@ + + + + BTAmericanExpressError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAmericanExpressError

+
+
+ +
public enum BTAmericanExpressError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with American Express.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noRewardsData + +
    +
    +
    +
    +
    +
    + +
      +
    1. An API response was received with missing rewards data
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noRewardsData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTAmericanExpressClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html new file mode 100644 index 0000000000..a48307a673 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html @@ -0,0 +1,556 @@ + + + + BTAnalyticsServiceError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAnalyticsServiceError

+
+
+ +
public enum BTAnalyticsServiceError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a API Client.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalidAPIClient + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid API client
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAPIClient
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html new file mode 100644 index 0000000000..7a3a4d12a6 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html @@ -0,0 +1,655 @@ + + + + BTApplePayError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTApplePayError

+
+
+ +
public enum BTApplePayError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Apple Pay.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unsupported + +
    +
    +
    +
    +
    +
    + +
      +
    1. Apple Pay is disabled in the Braintree Control Panel
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unsupported
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. No Apple Pay Card data was returned
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noApplePayCardsReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTApplePayCardNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html new file mode 100644 index 0000000000..b390ef7d53 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html @@ -0,0 +1,729 @@ + + + + BTCardError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCardError

+
+
+ +
public enum BTCardError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + integration + +
    +
    +
    +
    +
    +
    + +
      +
    1. Braintree SDK is integrated incorrectly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case integration
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Customer provided invalid input
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case customerInputInvalid([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cardAlreadyExists(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Card already exists as a saved payment method
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cardAlreadyExists([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTCardError, rhs: BTCardError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html new file mode 100644 index 0000000000..bf8d9d54fb --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html @@ -0,0 +1,887 @@ + + + + BTCardNetwork Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTCardNetwork

+
+
+ +
@objc
+public enum BTCardNetwork : Int
+ +
+
+

Card type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    +

    Unknown card

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + AMEX + +
    +
    +
    +
    +
    +
    +

    American Express

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case AMEX
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dinersClub + +
    +
    +
    +
    +
    +
    +

    Diners Club

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case dinersClub
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + discover + +
    +
    +
    +
    +
    +
    +

    Discover

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case discover
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + masterCard + +
    +
    +
    +
    +
    +
    +

    Mastercard

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case masterCard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + visa + +
    +
    +
    +
    +
    +
    +

    Visa

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case visa
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + JCB + +
    +
    +
    +
    +
    +
    +

    JCB

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case JCB
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + laser + +
    +
    +
    +
    +
    +
    +

    Laser

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case laser
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + maestro + +
    +
    +
    +
    +
    +
    +

    Maestro

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case maestro
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unionPay + +
    +
    +
    +
    +
    +
    +

    Union Pay

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unionPay
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + hiper + +
    +
    +
    +
    +
    +
    +

    Hiper

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case hiper
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + hipercard + +
    +
    +
    +
    +
    +
    +

    Hipercard

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case hipercard
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + solo + +
    +
    +
    +
    +
    +
    +

    Solo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case solo
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + switch + +
    +
    +
    +
    +
    +
    +

    Switch

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case `switch`
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ukMaestro + +
    +
    +
    +
    +
    +
    +

    UK Maestro

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ukMaestro
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html new file mode 100644 index 0000000000..84da00b634 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html @@ -0,0 +1,688 @@ + + + + BTClientTokenError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTClientTokenError

+
+
+ +
public enum BTClientTokenError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a client token.

+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Authorization fingerprint was not present or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorizationFingerprint
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidConfigURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. Config URL was missing or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidConfigURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidFormat(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid client token format
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidFormat(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + unsupportedVersion + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unsupported client token version
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unsupportedVersion
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedDecoding(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Failed decoding from Base64 or UTF8
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedDecoding(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html new file mode 100644 index 0000000000..f2dda4ed7a --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html @@ -0,0 +1,622 @@ + + + + BTDataCollectorError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTDataCollectorError

+
+
+ +
public enum BTDataCollectorError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with Braintree Data Collector.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The request could not be serialized.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + encodingFailure + +
    +
    +
    +
    +
    +
    + +
      +
    1. The device data could not be encoded.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case encodingFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html new file mode 100644 index 0000000000..4a211b09fd --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html @@ -0,0 +1,994 @@ + + + + BTHTTPError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTHTTPError

+
+
+ +
public enum BTHTTPError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with BTHTTP

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error (reserved)
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The response had a Content-Type header that is not supported
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case responseContentTypeNotAcceptable([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 4xx error, e.g. 422, indicating a problem with the client’s request
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case clientError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + serverError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 5xx server error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case serverError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingBaseURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The BTHTTP instance was missing a base URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingBaseURL([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + rateLimitError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The response was a 429, indicating a rate limiting error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case rateLimitError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + dataNotFound + +
    +
    +
    +
    +
    +
    + +
      +
    1. The data object was unexpectedly nil
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case dataNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + httpResponseInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The HTTP response could not be created or is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case httpResponseInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + urlStringInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL string is either malformed or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case urlStringInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientApiURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The client API URL is either malformed or invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case clientApiURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The authorization fingerprint is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorizationFingerprint
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to convert Encodable type to [String: Any] dictionary
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case serializationError(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated HTTPClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTHTTPError, rhs: BTHTTPError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html new file mode 100644 index 0000000000..bcd4940282 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html @@ -0,0 +1,621 @@ + + + + BTJSONError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTJSONError

+
+
+ +
public enum BTJSONError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. JSONSerialization failure
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + indexInvalid(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid index
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case indexInvalid(Int)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + keyInvalid(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid key
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case keyInvalid(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html new file mode 100644 index 0000000000..aa630cf86d --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html @@ -0,0 +1,928 @@ + + + + BTLocalPaymentError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTLocalPaymentError

+
+
+ +
public enum BTLocalPaymentError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Payment Flow

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Local Payments are disabled in configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. UIApplication failed to switch to browser
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + integration + +
    +
    +
    +
    +
    +
    + +
      +
    1. Braintree SDK is integrated incorrectly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case integration
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noAccountData + +
    +
    +
    +
    +
    +
    + +
      +
    1. No payment flow account data returned
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noAccountData
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Payment flow was canceled, typically initiated by the user when exiting early from the flow
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing nonce value in account response
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingRedirectURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. No URL found to display for payment authorization
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingRedirectURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingReturnURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. No URL was returned via the ASWebAuthenticationSession completion callback
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingReturnURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webSessionError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. ASWebAuthentication error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webSessionError(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTLocalPaymentError, rhs: BTLocalPaymentError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html new file mode 100644 index 0000000000..f15cf6bda6 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html @@ -0,0 +1,1027 @@ + + + + BTPayPalError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalError

+
+
+ +
public enum BTPayPalError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with PayPal.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal is disabled in configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Payment flow was canceled, typically initiated by the user when exiting early from the flow.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. HTTP POST request returned an error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case httpPostRequestError([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The web approval URL, web redirect URL, PayPal native app approval URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidURL(String)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The ASWebAuthenticationSession URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case asWebAuthenticationSessionURLInvalid(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidURLAction + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL action is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidURLAction
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTPayPalAccountNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webSessionError(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. ASWebAuthentication error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webSessionError(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTPayPalClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The App Switch return URL did not contain the cancel or success path.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchReturnURLPathInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. App Switch could not complete
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingBAToken + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing BA Token for App Switch
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingBAToken
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingPayPalRequest + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing PayPal Request
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTPayPalError, rhs: BTPayPalError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html new file mode 100644 index 0000000000..3b6c926237 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html @@ -0,0 +1,497 @@ + + + + BTPayPalLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalLineItemKind

+
+
+ +
@objc
+public enum BTPayPalLineItemKind : Int
+ +
+
+

Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html new file mode 100644 index 0000000000..5feb25ec6f --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html @@ -0,0 +1,677 @@ + + + + BTPayPalLineItemUPCType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalLineItemUPCType

+
+
+ +
@objc
+public enum BTPayPalLineItemUPCType : Int
+ +
+
+

Use this option to specify the UPC type of the line item.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_A + +
    +
    +
    +
    +
    +
    +

    Upc Type A

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_A
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_B + +
    +
    +
    +
    +
    +
    +

    Upc Type B

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_B
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_C + +
    +
    +
    +
    +
    +
    +

    Upc Type C

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_C
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_D + +
    +
    +
    +
    +
    +
    +

    Upc Type D

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_D
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_E + +
    +
    +
    +
    +
    +
    +

    Upc Type E

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_E
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_2 + +
    +
    +
    +
    +
    +
    +

    Upc Type 2

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_2
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + UPC_5 + +
    +
    +
    +
    +
    +
    +

    Upc Type 5

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case UPC_5
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html new file mode 100644 index 0000000000..34727aa6a4 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html @@ -0,0 +1,1249 @@ + + + + BTPayPalLocaleCode Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalLocaleCode

+
+
+ +
@objc
+public enum BTPayPalLocaleCode : Int
+ +
+
+

A locale code to use for a transaction.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + da_DK + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case da_DK
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + de_DE + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case de_DE
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_AU + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_AU
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_GB + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_GB
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + en_US + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case en_US
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + es_ES + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case es_ES
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + es_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case es_XC
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_CA + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_CA
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_FR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_FR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + fr_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fr_XC
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + id_ID + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case id_ID
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + it_IT + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case it_IT
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ja_JP + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ja_JP
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ko_KR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ko_KR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + nl_NL + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case nl_NL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + no_NO + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case no_NO
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pl_PL + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pl_PL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pt_BR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pt_BR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + pt_PT + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case pt_PT
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ru_RU + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ru_RU
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sv_SE + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sv_SE
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + th_TH + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case th_TH
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + tr_TR + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case tr_TR
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_CN + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_CN
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_HK + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_HK
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_TW + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_TW
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + zh_XC + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case zh_XC
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingColor.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingColor.html new file mode 100644 index 0000000000..764c1a1fd5 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingColor.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingColor Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingColor

+
+
+ +
public enum BTPayPalMessagingColor
+ +
+
+

Text and logo color option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + black + +
    +
    +
    +
    +
    +
    +

    Black text with a color logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case black
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + white + +
    +
    +
    +
    +
    +
    +

    White text with a white logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case white
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + monochrome + +
    +
    +
    +
    +
    +
    +

    Black text with a black logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case monochrome
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + grayscale + +
    +
    +
    +
    +
    +
    +

    Black text with a desaturated logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case grayscale
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingError.html new file mode 100644 index 0000000000..e968250f4b --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingError.html @@ -0,0 +1,594 @@ + + + + BTPayPalMessagingError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingError

+
+
+ +
public enum BTPayPalMessagingError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with PayPal Messaging.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Could not find PayPal client ID in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalClientIDNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingLogoType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingLogoType.html new file mode 100644 index 0000000000..114aa25a57 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingLogoType.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingLogoType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingLogoType

+
+
+ +
public enum BTPayPalMessagingLogoType
+ +
+
+

Logo type option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + inline + +
    +
    +
    +
    +
    +
    +

    PayPal logo positioned inline within the message

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case inline
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + primary + +
    +
    +
    +
    +
    +
    +

    Primary logo including both the PayPal monogram and logo

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case primary
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + alternative + +
    +
    +
    +
    +
    +
    +

    Alternative logo including just the PayPal monogram

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case alternative
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    “PayPal” as bold text inline with the message

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingOfferType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingOfferType.html new file mode 100644 index 0000000000..371e28bad9 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingOfferType.html @@ -0,0 +1,561 @@ + + + + BTPayPalMessagingOfferType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingOfferType

+
+
+ +
public enum BTPayPalMessagingOfferType
+ +
+
+

Preferred message offer to display

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + payLaterShortTerm + +
    +
    +
    +
    +
    +
    +

    Pay Later short term installment

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterShortTerm
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payLaterLongTerm + +
    +
    +
    +
    +
    +
    +

    Pay Later long term installments

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterLongTerm
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payLaterPayInOne + +
    +
    +
    +
    +
    +
    +

    Pay Later deferred payment

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payLaterPayInOne
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    PayPal Credit No Interest

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalCreditNoInterest
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingPageType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingPageType.html new file mode 100644 index 0000000000..d214f50c54 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingPageType.html @@ -0,0 +1,621 @@ + + + + BTPayPalMessagingPageType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingPageType

+
+
+ +
public enum BTPayPalMessagingPageType
+ +
+
+

Message location within an application

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + home + +
    +
    +
    +
    +
    +
    +

    Home view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case home
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + productDetails + +
    +
    +
    +
    +
    +
    +

    Individual product details view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case productDetails
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cart + +
    +
    +
    +
    +
    +
    +

    Shopping cart view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cart
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + miniCart + +
    +
    +
    +
    +
    +
    +

    Popover shopping cart view that covers part of the view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case miniCart
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + checkout + +
    +
    +
    +
    +
    +
    +

    Checkout view

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkout
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + searchResults + +
    +
    +
    +
    +
    +
    +

    Search results

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case searchResults
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingTextAlignment.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingTextAlignment.html new file mode 100644 index 0000000000..8840a045e2 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalMessagingTextAlignment.html @@ -0,0 +1,531 @@ + + + + BTPayPalMessagingTextAlignment Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingTextAlignment

+
+
+ +
public enum BTPayPalMessagingTextAlignment
+ +
+
+

Text alignment option for a PayPal Message

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + left + +
    +
    +
    +
    +
    +
    +

    Text aligned to the left

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case left
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + center + +
    +
    +
    +
    +
    +
    +

    Text aligned to the center

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case center
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + right + +
    +
    +
    +
    +
    +
    +

    Text aligned to the right

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case right
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html new file mode 100644 index 0000000000..db01529274 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html @@ -0,0 +1,994 @@ + + + + BTPayPalNativeCheckoutError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeCheckoutError

+
+
+ +
public enum BTPayPalNativeCheckoutError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error returned from the native PayPal flow

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalidRequest + +
    +
    +
    +
    +
    +
    + +
      +
    1. Request is not of type BTPayPalNativeCheckoutRequest or BTPayPalNativeVaultRequest
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payPalNotEnabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal is not enabled for this merchant in the Braintree Control Panel
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalNotEnabled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Could not find PayPal client ID in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payPalClientIDNotFound
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidEnvironment + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid environment identifier found in the Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidEnvironment
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to create PayPal order
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case orderCreationFailed(Error)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPal flow was canceled by the user
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + checkoutSDKFailed(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. PayPalCheckout SDK returned an error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkoutSDKFailed(PayPalCheckout.ErrorInfo)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Tokenization with the Braintree Gateway failed
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case tokenizationFailed(Error)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to parse tokenization result
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case parsingTokenizationResultFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidJSONResponse + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid JSON response
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidJSONResponse
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTPayPalNativeCheckoutClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + missingReturnURL + +
    +
    +
    +
    +
    +
    + +
      +
    1. Missing return url in approval data
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case missingReturnURL
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTPayPalNativeCheckoutError, rhs: BTPayPalNativeCheckoutError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html new file mode 100644 index 0000000000..b530f9ed5b --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html @@ -0,0 +1,496 @@ + + + + BTPayPalPaymentType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalPaymentType

+
+
+ +
@objc
+public enum BTPayPalPaymentType : Int
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + checkout + +
    +
    +
    +
    +
    +
    +

    Checkout

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case checkout
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + vault + +
    +
    +
    +
    +
    +
    +

    Vault

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case vault
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html new file mode 100644 index 0000000000..48cb714d23 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html @@ -0,0 +1,565 @@ + + + + BTPayPalRequestIntent Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalRequestIntent

+
+
+ +
@objc
+public enum BTPayPalRequestIntent : Int
+ +
+
+

Payment intent.

+
+

Note

+ Must be set to BTPayPalRequestIntentSale for immediate payment, .authorize to authorize a payment for capture later, or .order to create an order. Defaults to .authorize. Only applies to PayPal Checkout. + +
+ +

Capture payments later reference

+ +

Create and process orders reference

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + authorize + +
    +
    +
    +
    +
    +
    +

    Authorize

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case authorize
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sale + +
    +
    +
    +
    +
    +
    +

    Sale

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sale
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + order + +
    +
    +
    +
    +
    +
    +

    Order

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case order
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + stringValue + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var stringValue: String { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html new file mode 100644 index 0000000000..790d67de43 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html @@ -0,0 +1,527 @@ + + + + BTPayPalRequestLandingPageType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalRequestLandingPageType

+
+
+ +
@objc
+public enum BTPayPalRequestLandingPageType : Int
+ +
+
+

Use this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + login + +
    +
    +
    +
    +
    +
    +

    Login

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case login
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + billing + +
    +
    +
    +
    +
    +
    +

    Billing

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case billing
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html new file mode 100644 index 0000000000..6559a51c60 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html @@ -0,0 +1,504 @@ + + + + BTPayPalRequestUserAction Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalRequestUserAction

+
+
+ +
@objc
+public enum BTPayPalRequestUserAction : Int
+ +
+
+

The call-to-action in the PayPal Checkout flow.

+
+

Note

+ By default the final button will show the localized word for “Continue” and implies that the final amount billed is not yet known. +Setting the BTPayPalRequest’s userAction to .payNow changes the button text to “Pay Now”, conveying to +the user that billing will take place immediately. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + none + +
    +
    +
    +
    +
    +
    +

    Default

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case none
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + payNow + +
    +
    +
    +
    +
    +
    +

    Pay Now

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case payNow
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html new file mode 100644 index 0000000000..17ea909d94 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html @@ -0,0 +1,820 @@ + + + + BTSEPADirectDebitError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTSEPADirectDebitError

+
+
+ +
public enum BTSEPADirectDebitError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error details associated with SEPA Direct Debit.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + webFlowCanceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. SEPA Direct Debit flow was canceled by the user.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case webFlowCanceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resultURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The URL returned from the web flow was invalid.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resultURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resultReturnedNil + +
    +
    +
    +
    +
    +
    + +
      +
    1. The result of the create mandate request was nil and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resultReturnedNil
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + approvalURLInvalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The approval URL is invalid.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case approvalURLInvalid
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The web authentication session result was nil and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case authenticationResultNil
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A body was not returned from the API during the request.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedToCreateNonce + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unable to create BTSEPADirectDebitNonce
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedToCreateNonce
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTSEPADirectDebitClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html new file mode 100644 index 0000000000..bb44ab5515 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html @@ -0,0 +1,495 @@ + + + + BTSEPADirectDebitMandateType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTSEPADirectDebitMandateType

+
+
+ +
@objc
+public enum BTSEPADirectDebitMandateType : Int
+ +
+
+

Mandate type for the SEPA Direct Debit request.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + oneOff + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case oneOff
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + recurrent + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case recurrent
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTShopperInsightsError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTShopperInsightsError.html new file mode 100644 index 0000000000..f8f16c7b12 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTShopperInsightsError.html @@ -0,0 +1,588 @@ + + + + BTShopperInsightsError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTShopperInsightsError

+
+
+ +
public enum BTShopperInsightsError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + emptyBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A nil body was returned from the payment method request and no error was returned.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case emptyBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidAuthorization + +
    +
    +
    +
    +
    +
    + +
      +
    1. Invalid authorization type
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAuthorization
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html new file mode 100644 index 0000000000..0dfa77f495 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureAccountType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureAccountType

+
+
+ +
@objc
+public enum BTThreeDSecureAccountType : Int
+ +
+
+

The account type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html new file mode 100644 index 0000000000..fb9a5c2b3e --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureCardAddChallenge Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureCardAddChallenge

+
+
+ +
@objc
+public enum BTThreeDSecureCardAddChallenge : Int
+ +
+
+

The card add challenge request

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + requested + +
    +
    +
    +
    +
    +
    +

    Requested

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case requested
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + notRequested + +
    +
    +
    +
    +
    +
    +

    Not Requested

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case notRequested
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html new file mode 100644 index 0000000000..810fff24a1 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html @@ -0,0 +1,894 @@ + + + + BTThreeDSecureError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureError

+
+
+ +
public enum BTThreeDSecureError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + failedLookup(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure failed during the backend card lookup phase; please retry
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedLookup([String : Any])
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure failed during the user-facing authentication phase; please retry
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case failedAuthentication(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + configuration(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure was not configured correctly
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case configuration(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + noBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. A body was not returned from the API during the request.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case noBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. User canceled the 3DS 2 flow.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidAPIClient + +
    +
    +
    +
    +
    +
    + +
      +
    1. The BTAPIClient was invalid or missing
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidAPIClient
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. The request could not be serialized.
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case jsonSerializationFailure
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + deallocated + +
    +
    +
    +
    +
    +
    + +
      +
    1. Deallocated BTThreeDSecureClient
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case deallocated
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + exceededTimeoutLimit + +
    +
    +
    +
    +
    +
    + +
      +
    1. 3D Secure was idle and exceeded timout limit
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case exceededTimeoutLimit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorUserInfo + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorUserInfo: [String : Any] { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

Equatable Conformance +

+
+
+
    +
  • +
    + + + + ==(_:_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static func == (lhs: BTThreeDSecureError, rhs: BTThreeDSecureError) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html new file mode 100644 index 0000000000..e4a6ddf74e --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html @@ -0,0 +1,587 @@ + + + + BTThreeDSecureRequestedExemptionType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureRequestedExemptionType

+
+
+ +
@objc
+public enum BTThreeDSecureRequestedExemptionType : Int
+ +
+
+

3D Secure requested exemption type

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + lowValue + +
    +
    +
    +
    +
    +
    +

    Low value

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case lowValue
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + secureCorporate + +
    +
    +
    +
    +
    +
    +

    Secure corporate

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case secureCorporate
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + trustedBeneficiary + +
    +
    +
    +
    +
    +
    +

    Trusted beneficiary

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case trustedBeneficiary
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Transaction risk analysis

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case transactionRiskAnalysis
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html new file mode 100644 index 0000000000..55564827db --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html @@ -0,0 +1,647 @@ + + + + BTThreeDSecureShippingMethod Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureShippingMethod

+
+
+ +
@objc
+public enum BTThreeDSecureShippingMethod : Int
+ +
+
+

The shipping method

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unspecified + +
    +
    +
    +
    +
    +
    +

    Unspecified

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unspecified
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + sameDay + +
    +
    +
    +
    +
    +
    +

    Same Day

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case sameDay
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + expedited + +
    +
    +
    +
    +
    +
    +

    Expedited

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case expedited
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + priority + +
    +
    +
    +
    +
    +
    +

    Priority

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case priority
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + ground + +
    +
    +
    +
    +
    +
    +

    Ground

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case ground
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + electronicDelivery + +
    +
    +
    +
    +
    +
    +

    Electronic Delivery

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case electronicDelivery
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + shipToStore + +
    +
    +
    +
    +
    +
    +

    Ship to Store

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case shipToStore
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html new file mode 100644 index 0000000000..4a73dc1aa0 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html @@ -0,0 +1,527 @@ + + + + BTThreeDSecureUIType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureUIType

+
+
+ +
@objc
+public enum BTThreeDSecureUIType : Int
+ +
+
+

The interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + native + +
    +
    +
    +
    +
    +
    +

    Native

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case native
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + html + +
    +
    +
    +
    +
    +
    +

    HTML

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case html
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + both + +
    +
    +
    +
    +
    +
    +

    Both

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case both
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html new file mode 100644 index 0000000000..e247bc7958 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html @@ -0,0 +1,587 @@ + + + + BTThreeDSecureV2ButtonType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2ButtonType

+
+
+ +
@objc
+public enum BTThreeDSecureV2ButtonType : Int
+ +
+
+

Button types that can be customized in 3D Secure 2 flows.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + verify + +
    +
    +
    +
    +
    +
    +

    Verify button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case verify
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + continue + +
    +
    +
    +
    +
    +
    +

    Continue button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case `continue`
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + next + +
    +
    +
    +
    +
    +
    +

    Next button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case next
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + cancel + +
    +
    +
    +
    +
    +
    +

    Cancel button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case cancel
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + resend + +
    +
    +
    +
    +
    +
    +

    Resend button

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case resend
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html new file mode 100644 index 0000000000..3804f1b654 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html @@ -0,0 +1,556 @@ + + + + BTVenmoAppSwitchError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoAppSwitchError

+
+
+ +
public enum BTVenmoAppSwitchError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Venmo App Switch

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + returnURLError(_:_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. The error returned from the Venmo return URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case returnURLError(Int, String?)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html new file mode 100644 index 0000000000..bae84f27f8 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html @@ -0,0 +1,919 @@ + + + + BTVenmoError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoError

+
+
+ +
public enum BTVenmoError : Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with Venmo

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + unknown + +
    +
    +
    +
    +
    +
    + +
      +
    1. Unknown error
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case unknown
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + disabled + +
    +
    +
    +
    +
    +
    + +
      +
    1. Venmo is not enabled
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case disabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appNotAvailable + +
    +
    +
    +
    +
    +
    + +
      +
    1. The Venmo app is not installed or configured for app Switch
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appNotAvailable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Bundle display name is nil
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case bundleDisplayNameMissing
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + appSwitchFailed + +
    +
    +
    +
    +
    +
    + +
      +
    1. App Switch could not complete
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case appSwitchFailed
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidReturnURL(_:) + +
    +
    +
    +
    +
    +
    + +
      +
    1. Return URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidReturnURL(String)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + invalidBodyReturned + +
    +
    +
    +
    +
    +
    + +
      +
    1. No body was returned from the request
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidBodyReturned
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Invalid request URL
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRedirectURL(String)
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Failed to fetch Braintree configuration
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case fetchConfigurationFailed
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. Enriched Customer Data is disabled
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case enrichedCustomerDataDisabled
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + canceled + +
    +
    +
    +
    +
    +
    + +
      +
    1. The Venmo flow was canceled by the user
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case canceled
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    1. One or more values in redirect URL are invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidRedirectURLParameter
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html new file mode 100644 index 0000000000..51dbc537df --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html @@ -0,0 +1,497 @@ + + + + BTVenmoLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoLineItemKind

+
+
+ +
@objc
+public enum BTVenmoLineItemKind : Int
+ +
+
+

Use this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + debit + +
    +
    +
    +
    +
    +
    +

    Debit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case debit
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + credit + +
    +
    +
    +
    +
    +
    +

    Credit

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case credit
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html new file mode 100644 index 0000000000..b093ab3776 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html @@ -0,0 +1,497 @@ + + + + BTVenmoPaymentMethodUsage Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTVenmoPaymentMethodUsage

+
+
+ +
@objc
+public enum BTVenmoPaymentMethodUsage : Int
+ +
+
+

Usage type for the tokenized Venmo account

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + multiUse + +
    +
    +
    +
    +
    +
    +

    The Venmo payment will be authorized for future payments and can be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case multiUse
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + singleUse + +
    +
    +
    +
    +
    +
    +

    The Venmo payment will be authorized for a one-time payment and cannot be vaulted.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case singleUse
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/TokenizationKeyError.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/TokenizationKeyError.html new file mode 100644 index 0000000000..f6b7b93a4e --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Enums/TokenizationKeyError.html @@ -0,0 +1,556 @@ + + + + TokenizationKeyError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

TokenizationKeyError

+
+
+ +
public enum TokenizationKeyError : Int, Error, CustomNSError, LocalizedError, Equatable
+ +
+
+

Error codes associated with a Tokenization Key.

+ + +
+
+ +
+
+
+
    +
  • +
    + + + + invalid + +
    +
    +
    +
    +
    +
    + +
      +
    1. The tokenization key provided was invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalid
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDomain + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public static var errorDomain: String { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorCode + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorCode: Int { get }
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + errorDescription + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var errorDescription: String? { get }
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html new file mode 100644 index 0000000000..cb6a961b93 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html @@ -0,0 +1,493 @@ + + + + Extensions Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Extensions

+

The following extensions are available globally.

+ +
+
+ +
+
+
+
    +
  • +
    + + + + UIApplication + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    extension UIApplication: URLOpener
    + +
    +
    +
    +
    +
  • +
+
+
+
+ + +
+ +

CardinalValidationDelegate Protocol Conformance +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html new file mode 100644 index 0000000000..767115d431 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html @@ -0,0 +1,468 @@ + + + + BTThreeDSecureV2Provider Extension Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2Provider

+
+
+ +
extension BTThreeDSecureV2Provider: CardinalValidationDelegate
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html new file mode 100644 index 0000000000..e611c8ce41 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html @@ -0,0 +1,523 @@ + + + + Protocols Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Protocols

+

The following protocols are available globally.

+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html new file mode 100644 index 0000000000..ab5cb3edff --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html @@ -0,0 +1,469 @@ + + + + BTLocalPaymentRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTLocalPaymentRequestDelegate

+
+
+ +
@objc
+public protocol BTLocalPaymentRequestDelegate
+ +
+
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Required delegate method which returns the payment ID before the flow starts.

    + +

    Use this to do any preprocessing and setup for webhooks. Use the start() callback to continue the flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +func localPaymentStarted(_ request: BTLocalPaymentRequest, paymentID: String, start: @escaping () -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTPayPalMessagingDelegate.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTPayPalMessagingDelegate.html new file mode 100644 index 0000000000..2c1cd11622 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTPayPalMessagingDelegate.html @@ -0,0 +1,591 @@ + + + + BTPayPalMessagingDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingDelegate

+
+
+ +
public protocol BTPayPalMessagingDelegate : AnyObject
+ +
+
+

Protocol for BTPayPalMessagingView events

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html new file mode 100644 index 0000000000..f1ea9c8ae7 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html @@ -0,0 +1,469 @@ + + + + BTThreeDSecureRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureRequestDelegate

+
+
+ +
@objc
+public protocol BTThreeDSecureRequestDelegate
+ +
+
+

Protocol for ThreeDSecure Request flow

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

    Required delegate method which returns the ThreeDSecure lookup result before the flow continues. + Use this to do any UI preparation or custom lookup result handling. Use the next() callback to continue the flow.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc
    +func onLookupComplete(_ request: BTThreeDSecureRequest, lookupResult: BTThreeDSecureResult, next: @escaping () -> Void)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs.html new file mode 100644 index 0000000000..46cc9192df --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs.html @@ -0,0 +1,570 @@ + + + + Structures Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Structures

+

The following structures are available globally.

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

    Used to initialize a BTPayPalMessagingView +This feature is currently only supported for buyers located in the US. For merchants domiciled outside of the US +please set the buyerCountry to display messaging to US based buyers.

    +
    +

    Warning

    + This module is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTPayPalMessagingRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    Buyer data required to use the Shopper Insights feature.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTShopperInsightsRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + Phone + +
    +
    +
    +
    +
    +
    +

    Buyer’s phone number details for use with the Shopper Insights feature.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct Phone : Encodable
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    A summary of the buyer’s recommended payment methods.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public struct BTShopperInsightsResult
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTPayPalMessagingRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTPayPalMessagingRequest.html new file mode 100644 index 0000000000..4f4718cdeb --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTPayPalMessagingRequest.html @@ -0,0 +1,572 @@ + + + + BTPayPalMessagingRequest Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalMessagingRequest

+
+
+ +
public struct BTPayPalMessagingRequest
+ +
+
+

Used to initialize a BTPayPalMessagingView +This feature is currently only supported for buyers located in the US. For merchants domiciled outside of the US +please set the buyerCountry to display messaging to US based buyers.

+
+

Warning

+ This module is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a BTPayPalMessaging

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(
    +    amount: Double? = nil,
    +    pageType: BTPayPalMessagingPageType? = nil,
    +    offerType: BTPayPalMessagingOfferType? = nil,
    +    buyerCountry: String? = nil,
    +    logoType: BTPayPalMessagingLogoType = .inline,
    +    textAlignment: BTPayPalMessagingTextAlignment = .right,
    +    color: BTPayPalMessagingColor = .black
    +)
    + +
    +
    +
    +

    Parameters

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

    Price expressed in cents amount based on the current context (i.e. individual product price vs total cart price)

    +
    +
    + + pageType + + +
    +

    Message screen location (e.g. product, cart, home)

    +
    +
    + + offerType + + +
    +

    Preferred message offer to display

    +
    +
    + + buyerCountry + + +
    +

    Consumer’s country (Integrations must be approved by PayPal to use this option)

    +
    +
    + + logoType + + +
    +

    Logo type option for a PayPal Message. Defaults to .inline

    +
    +
    + + textAlignment + + +
    +

    Text alignment option for a PayPal Message. Defaults to .right

    +
    +
    + + color + + +
    +

    Text and logo color option for a PayPal Message. Defaults to .black

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsRequest.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsRequest.html new file mode 100644 index 0000000000..3fd5e4045d --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsRequest.html @@ -0,0 +1,624 @@ + + + + BTShopperInsightsRequest Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTShopperInsightsRequest

+
+
+ +
public struct BTShopperInsightsRequest
+ +
+
+

Buyer data required to use the Shopper Insights feature.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
+ + +
+ +

Initializers +

+
+
+
    +
  • +
    + + + + init(email:phone:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(email: String, phone: Phone)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + email + + +
    +

    The buyer’s email address.

    +
    +
    + + phone + + +
    +

    The buyer’s phone number details.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(email:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(email: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + email + + +
    +

    The buyer’s email address.

    +
    +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(phone:) + +
    +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(phone: Phone)
    + +
    +
    +
    +

    Parameters

    + + + + + + + +
    + + phone + + +
    +

    The buyer’s phone number details.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsResult.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsResult.html new file mode 100644 index 0000000000..32760c3146 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/BTShopperInsightsResult.html @@ -0,0 +1,531 @@ + + + + BTShopperInsightsResult Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTShopperInsightsResult

+
+
+ +
public struct BTShopperInsightsResult
+ +
+
+

A summary of the buyer’s recommended payment methods.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • +
    + + + + isPayPalRecommended + +
    +
    +
    +
    +
    +
    +

    If true, display the PayPal button with high priority.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isPayPalRecommended: Bool
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + isVenmoRecommended + +
    +
    +
    +
    +
    +
    +

    If true, dislpay the Venmo button with high priority.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isVenmoRecommended: Bool
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    If true, buyer is a member of the PayPal Inc. (PayPal, Venmo, Honey) network.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var isEligibleInPayPalNetwork: Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/Phone.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/Phone.html new file mode 100644 index 0000000000..e7d411c399 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/Structs/Phone.html @@ -0,0 +1,507 @@ + + + + Phone Structure Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Phone

+
+
+ +
public struct Phone : Encodable
+ +
+
+

Buyer’s phone number details for use with the Shopper Insights feature.

+
+

Warning

+ This feature is in beta. It’s public API may change or be removed in future releases. + +
+ + +
+
+ +
+
+
+
    +
  • + +
    +
    +
    +
    +
    +

    Initialize a BTShopperInsightsRequest.Phone.

    +
    +

    Warning

    + This feature is in beta. It’s public API may change or be removed in future releases. + +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public init(countryCode: String, nationalNumber: String)
    + +
    +
    +
    +

    Parameters

    + + + + + + + + + + + +
    + + countryCode + + +
    +

    The buyer’s country code prefix to the national telephone number. An identifier for a specific country. Must not contain special characters.

    +
    +
    + + nationalNumber + + +
    +

    The buyer’s national phone number. Must not contain special characters.

    +
    +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css new file mode 100644 index 0000000000..c170357ce7 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css @@ -0,0 +1,202 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ +/* Credit to https://gist.github.com/wataru420/2048287 */ +.highlight .c { + color: #999988; + font-style: italic; } + +.highlight .err { + color: #a61717; + background-color: #e3d2d2; } + +.highlight .k { + color: #000000; + font-weight: bold; } + +.highlight .o { + color: #000000; + font-weight: bold; } + +.highlight .cm { + color: #999988; + font-style: italic; } + +.highlight .cp { + color: #999999; + font-weight: bold; } + +.highlight .c1 { + color: #999988; + font-style: italic; } + +.highlight .cs { + color: #999999; + font-weight: bold; + font-style: italic; } + +.highlight .gd { + color: #000000; + background-color: #ffdddd; } + +.highlight .gd .x { + color: #000000; + background-color: #ffaaaa; } + +.highlight .ge { + color: #000000; + font-style: italic; } + +.highlight .gr { + color: #aa0000; } + +.highlight .gh { + color: #999999; } + +.highlight .gi { + color: #000000; + background-color: #ddffdd; } + +.highlight .gi .x { + color: #000000; + background-color: #aaffaa; } + +.highlight .go { + color: #888888; } + +.highlight .gp { + color: #555555; } + +.highlight .gs { + font-weight: bold; } + +.highlight .gu { + color: #aaaaaa; } + +.highlight .gt { + color: #aa0000; } + +.highlight .kc { + color: #000000; + font-weight: bold; } + +.highlight .kd { + color: #000000; + font-weight: bold; } + +.highlight .kp { + color: #000000; + font-weight: bold; } + +.highlight .kr { + color: #000000; + font-weight: bold; } + +.highlight .kt { + color: #445588; } + +.highlight .m { + color: #009999; } + +.highlight .s { + color: #d14; } + +.highlight .na { + color: #008080; } + +.highlight .nb { + color: #0086B3; } + +.highlight .nc { + color: #445588; + font-weight: bold; } + +.highlight .no { + color: #008080; } + +.highlight .ni { + color: #800080; } + +.highlight .ne { + color: #990000; + font-weight: bold; } + +.highlight .nf { + color: #990000; } + +.highlight .nn { + color: #555555; } + +.highlight .nt { + color: #000080; } + +.highlight .nv { + color: #008080; } + +.highlight .ow { + color: #000000; + font-weight: bold; } + +.highlight .w { + color: #bbbbbb; } + +.highlight .mf { + color: #009999; } + +.highlight .mh { + color: #009999; } + +.highlight .mi { + color: #009999; } + +.highlight .mo { + color: #009999; } + +.highlight .sb { + color: #d14; } + +.highlight .sc { + color: #d14; } + +.highlight .sd { + color: #d14; } + +.highlight .s2 { + color: #d14; } + +.highlight .se { + color: #d14; } + +.highlight .sh { + color: #d14; } + +.highlight .si { + color: #d14; } + +.highlight .sx { + color: #d14; } + +.highlight .sr { + color: #009926; } + +.highlight .s1 { + color: #d14; } + +.highlight .ss { + color: #990073; } + +.highlight .bp { + color: #999999; } + +.highlight .vc { + color: #008080; } + +.highlight .vg { + color: #008080; } + +.highlight .vi { + color: #008080; } + +.highlight .il { + color: #009999; } diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css new file mode 100644 index 0000000000..9d4b08b8c3 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css @@ -0,0 +1,405 @@ +/*! Jazzy - https://github.com/realm/jazzy + * Copyright Realm Inc. + * SPDX-License-Identifier: MIT + */ +*, *:before, *:after { + box-sizing: inherit; } + +body { + margin: 0; + background: #fff; + color: #333; + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + letter-spacing: .2px; + -webkit-font-smoothing: antialiased; + box-sizing: border-box; } + +h1 { + font-size: 2rem; + font-weight: 700; + margin: 1.275em 0 0.6em; } + +h2 { + font-size: 1.75rem; + font-weight: 700; + margin: 1.275em 0 0.3em; } + +h3 { + font-size: 1.5rem; + font-weight: 700; + margin: 1em 0 0.3em; } + +h4 { + font-size: 1.25rem; + font-weight: 700; + margin: 1.275em 0 0.85em; } + +h5 { + font-size: 1rem; + font-weight: 700; + margin: 1.275em 0 0.85em; } + +h6 { + font-size: 1rem; + font-weight: 700; + margin: 1.275em 0 0.85em; + color: #777; } + +p { + margin: 0 0 1em; } + +ul, ol { + padding: 0 0 0 2em; + margin: 0 0 0.85em; } + +blockquote { + margin: 0 0 0.85em; + padding: 0 15px; + color: #858585; + border-left: 4px solid #e5e5e5; } + +img { + max-width: 100%; } + +a { + color: #4183c4; + text-decoration: none; } + a:hover, a:focus { + outline: 0; + text-decoration: underline; } + a.discouraged { + text-decoration: line-through; } + a.discouraged:hover, a.discouraged:focus { + text-decoration: underline line-through; } + +table { + background: #fff; + width: 100%; + border-collapse: collapse; + border-spacing: 0; + overflow: auto; + margin: 0 0 0.85em; } + +tr:nth-child(2n) { + background-color: #fbfbfb; } + +th, td { + padding: 6px 13px; + border: 1px solid #ddd; } + +hr { + height: 1px; + border: none; + background-color: #ddd; } + +pre { + margin: 0 0 1.275em; + padding: .85em 1em; + overflow: auto; + background: #f7f7f7; + font-size: .85em; + font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; } + +code { + font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; } + +.item-container p > code, .item-container li > code, .top-matter p > code, .top-matter li > code { + background: #f7f7f7; + padding: .2em; } + .item-container p > code:before, .item-container p > code:after, .item-container li > code:before, .item-container li > code:after, .top-matter p > code:before, .top-matter p > code:after, .top-matter li > code:before, .top-matter li > code:after { + letter-spacing: -.2em; + content: "\00a0"; } + +pre code { + padding: 0; + white-space: pre; } + +.content-wrapper { + display: flex; + flex-direction: column; } + @media (min-width: 768px) { + .content-wrapper { + flex-direction: row; } } +.header { + display: flex; + padding: 8px; + font-size: 0.875em; + background: #444; + color: #999; } + +.header-col { + margin: 0; + padding: 0 8px; } + +.header-col--primary { + flex: 1; } + +.header-link { + color: #fff; } + +.header-icon { + padding-right: 2px; + vertical-align: -3px; + height: 16px; } + +.breadcrumbs { + font-size: 0.875em; + padding: 8px 16px; + margin: 0; + background: #fbfbfb; + border-bottom: 1px solid #ddd; } + +.carat { + height: 10px; + margin: 0 5px; } + +.navigation { + order: 2; } + @media (min-width: 768px) { + .navigation { + order: 1; + width: 25%; + max-width: 300px; + padding-bottom: 64px; + overflow: hidden; + word-wrap: normal; + background: #fbfbfb; + border-right: 1px solid #ddd; } } +.nav-groups { + list-style-type: none; + padding-left: 0; } + +.nav-group-name { + border-bottom: 1px solid #ddd; + padding: 8px 0 8px 16px; } + +.nav-group-name-link { + color: #333; } + +.nav-group-tasks { + margin: 8px 0; + padding: 0 0 0 8px; } + +.nav-group-task { + font-size: 1em; + list-style-type: none; + white-space: nowrap; } + +.nav-group-task-link { + color: #808080; } + +.main-content { + order: 1; } + @media (min-width: 768px) { + .main-content { + order: 2; + flex: 1; + padding-bottom: 60px; } } +.section { + padding: 0 32px; + border-bottom: 1px solid #ddd; } + +.section-content { + max-width: 834px; + margin: 0 auto; + padding: 16px 0; } + +.section-name { + color: #666; + display: block; } + .section-name p { + margin-bottom: inherit; } + +.declaration .highlight { + overflow-x: initial; + padding: 8px 0; + margin: 0; + background-color: transparent; + border: none; } + +.task-group-section { + border-top: 1px solid #ddd; } + +.task-group { + padding-top: 0px; } + +.task-name-container a[name]:before { + content: ""; + display: block; } + +.section-name-container { + position: relative; } + .section-name-container .section-name-link { + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + margin-bottom: 0; } + .section-name-container .section-name { + position: relative; + pointer-events: none; + z-index: 1; } + .section-name-container .section-name a { + pointer-events: auto; } + +.item-container { + padding: 0; } + +.item { + padding-top: 8px; + width: 100%; + list-style-type: none; } + .item a[name]:before { + content: ""; + display: block; } + .item .token, .item .direct-link { + display: inline-block; + text-indent: -20px; + padding-left: 3px; + margin-left: 20px; + font-size: 1rem; } + +.declaration-note { + font-size: .85em; + color: #808080; + font-style: italic; } + +.pointer-container { + border-bottom: 1px solid #ddd; + left: -23px; + padding-bottom: 13px; + position: relative; + width: 110%; } + +.pointer { + left: 21px; + top: 7px; + display: block; + position: absolute; + width: 12px; + height: 12px; + border-left: 1px solid #ddd; + border-top: 1px solid #ddd; + background: #fff; + transform: rotate(45deg); } + +.height-container { + display: none; + position: relative; + width: 100%; + overflow: hidden; } + .height-container .section { + background: #fff; + border: 1px solid #ddd; + border-top-width: 0; + padding-top: 10px; + padding-bottom: 5px; + padding: 8px 16px; } + +.aside, .language { + padding: 6px 12px; + margin: 12px 0; + border-left: 5px solid #dddddd; + overflow-y: hidden; } + .aside .aside-title, .language .aside-title { + font-size: 9px; + letter-spacing: 2px; + text-transform: uppercase; + padding-bottom: 0; + margin: 0; + color: #aaa; + -webkit-user-select: none; } + .aside p:last-child, .language p:last-child { + margin-bottom: 0; } + +.language { + border-left: 5px solid #cde9f4; } + .language .aside-title { + color: #4183c4; } + +.aside-warning, .aside-deprecated, .aside-unavailable { + border-left: 5px solid #ff6666; } + .aside-warning .aside-title, .aside-deprecated .aside-title, .aside-unavailable .aside-title { + color: #ff0000; } + +.graybox { + border-collapse: collapse; + width: 100%; } + .graybox p { + margin: 0; + word-break: break-word; + min-width: 50px; } + .graybox td { + border: 1px solid #ddd; + padding: 5px 25px 5px 10px; + vertical-align: middle; } + .graybox tr td:first-of-type { + text-align: right; + padding: 7px; + vertical-align: top; + word-break: normal; + width: 40px; } + +.slightly-smaller { + font-size: 0.9em; } + +.footer { + padding: 8px 16px; + background: #444; + color: #ddd; + font-size: 0.8em; } + .footer p { + margin: 8px 0; } + .footer a { + color: #fff; } + +html.dash .header, html.dash .breadcrumbs, html.dash .navigation { + display: none; } + +html.dash .height-container { + display: block; } + +form[role=search] input { + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 24px; + padding: 0 10px; + margin: 0; + border: none; + border-radius: 1em; } + .loading form[role=search] input { + background: white url(../img/spinner.gif) center right 4px no-repeat; } + +form[role=search] .tt-menu { + margin: 0; + min-width: 300px; + background: #fbfbfb; + color: #333; + border: 1px solid #ddd; } + +form[role=search] .tt-highlight { + font-weight: bold; } + +form[role=search] .tt-suggestion { + font: 16px/1.7 "Helvetica Neue", Helvetica, Arial, sans-serif; + padding: 0 8px; } + form[role=search] .tt-suggestion span { + display: table-cell; + white-space: nowrap; } + form[role=search] .tt-suggestion .doc-parent-name { + width: 100%; + text-align: right; + font-weight: normal; + font-size: 0.9em; + padding-left: 16px; } + +form[role=search] .tt-suggestion:hover, +form[role=search] .tt-suggestion.tt-cursor { + cursor: pointer; + background-color: #4183c4; + color: #fff; } + +form[role=search] .tt-suggestion:hover .doc-parent-name, +form[role=search] .tt-suggestion.tt-cursor .doc-parent-name { + color: #fff; } diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/img/carat.png b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/img/carat.png new file mode 100755 index 0000000000000000000000000000000000000000..29d2f7fd4955fca6bc6fb740e0373a2c358c398e GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRo!3HEV4DF?Wlw^r(L`iUdT1k0gQ7VIDN`6wR zf@f}GdTLN=VoGJ<$y6JlqAi{-jv*Ddl5#RKJQ5NTUZgiPI4RUKGIKU?u8L&ndhX1t za+0CMVUnT(Gnb}ei=c~x==tMH^F1_tBocXwcoSWoO-SZY-o>!8%^=Bms)(~h;m_U( zXNixk28L}0LS5-jKyq@#2gyS|J&f#pGCLkTc<@2s1dqeyqJ*Rc0tSIETAgmODY;(s z2y|Mcp&2}7rpBprBBB~1qM1`N+}4SoxYVPqsXi&l`rxZp{(w0iSy$Nv5*Vy!RapG^ S^0y4=eg;ohKbLh*2~7a!Pg}VF literal 0 HcmV?d00001 diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/img/dash.png b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/img/dash.png new file mode 100755 index 0000000000000000000000000000000000000000..6f694c7a012b417908da3687a0a39aa182e91c74 GIT binary patch literal 1338 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 literal 0 HcmV?d00001 diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/index.html b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/index.html new file mode 100644 index 0000000000..76c64f8d81 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/index.html @@ -0,0 +1,554 @@ + + + + Braintree Reference + + + + + + + + + + + + + + + +
+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Braintree iOS SDK

+ +

CocoaPods compatible +Swift Package Manager compatible +Carthage compatible

+ +

GitHub Actions Tests

+ +

Welcome to Braintree’s iOS SDK. This library will help you accept card and alternative payments in your iOS app.

+

📣 Announcements

+ +
    +
  • Upgrade your integration to continue accepting Braintree payments 📣 The SSL certificates for current iOS SDK versions (v5 and v6) are set to expire by June 31, 2025. Upgrade to v5.26.0+ and v6.17.0+, respectively, to continue using the Braintree SDK. Click here for more details

  • +
  • v6 is the latest major version of Braintree iOS. To update from v5, see the v6 migration guide. If you have not yet migrated to v5, see the v5 migration guide

  • +
+ +

The Braintree iOS SDK permits a deployment target of iOS 14.0 or higher. It requires Xcode 15.0+ and Swift 5.9+.

+

Supported Payment Methods

+ + +

Installation

+ +

We recommend using Swift Package Manager, CocoaPods, or Carthage to integrate the Braintree SDK with your project.

+

Swift Package Manager

+ +

This feature is only available in v5+.

+ +

To add the Braintree package to your Xcode project, select File > Swift Packages > Add Package Dependency and enter https://github.com/braintree/braintree_ios as the repository URL. Tick the checkboxes for the specific Braintree libraries you wish to include.

+ +

If you look at your app target, you will see that the Braintree libraries you chose are automatically linked as a frameworks to your app (see General > Frameworks, Libraries, and Embedded Content).

+ +

BraintreePayPal and BraintreePaymentFlow also require the inclusion of the PayPalDataCollector module.

+ +

In your app’s source code files, use the following import syntax to include Braintree’s libraries:

+
import BraintreeCore
+import BraintreeCard
+import BraintreeApplePay
+import BraintreePayPal
+
+

CocoaPods

+
# Includes Cards and PayPal
+pod 'Braintree'
+
+# Optionally include additional Pods
+pod 'Braintree/DataCollector'
+pod 'Braintree/Venmo'
+
+

Carthage

+ +

Braintree 6.0.0+ requires Carthage 0.38.0+ and the --use-xcframeworks option when running carthage update.

+ +

Add github "braintree/braintree_ios" to your Cartfile, and add the frameworks to your project.

+ +

Note: Long term support for Carthage is not guaranteed. Please update to SPM, if possible. If there are concerns, please comment on this Discussion thread.

+

Documentation

+ +

Start with ‘Hello, Client!’ for instructions on basic setup and usage.

+ +

Next, read the full documentation for information about integrating with additional payment methods, such as PayPal and Venmo, as well as explore our pre-built Drop-In UI offering.

+

Versions

+ +

This SDK abides by our Client SDK Deprecation Policy. For more information on the potential statuses of an SDK check our developer docs.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Major version numberStatusReleasedDeprecatedUnsupported
6.x.xActiveJune 2023TBATBA
5.x.xInactiveFebruary 2021June 2024June 2025
4.x.xUnsupportedNovember 2015February 2022February 2023
+ +

Versions 4.9.6 and below use outdated SSL certificates and are unsupported.

+

Demo

+ +
    +
  1. Our Xcode project uses SwiftLint. To ensure you have it installed see DEVELOPMENT.md
  2. +
  3. Run pod install + +
      +
    • There is a known M1 mac issue with CocoaPods. See this solution to resolve ffi dependency issues.
    • +
  4. +
  5. Resolve the Swift Package Manager packages if needed: File > Packages > Resolve Package Versions or by running swift package resolve in Terminal
  6. +
  7. Open Braintree.xcworkspace in Xcode
  8. +
  9. Select the Demo scheme, and then run
  10. +
+ +

Xcode 15.0+ is required to run the demo app.

+

Contributing

+ +

We welcome PRs to this repo. See our development doc.

+

Feedback

+ +

The Braintree iOS SDK is in active development, we welcome your feedback!

+ +

Here are a few ways to get in touch:

+ + +

Help

+ + +

License

+ +

The Braintree iOS SDK is open source and available under the MIT license. See the LICENSE file for more info.

+ +
+
+ + +
+
+ + + diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js new file mode 100755 index 0000000000..198441660c --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js @@ -0,0 +1,74 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + +window.jazzy = {'docset': false} +if (typeof window.dash != 'undefined') { + document.documentElement.className += ' dash' + window.jazzy.docset = true +} +if (navigator.userAgent.match(/xcode/i)) { + document.documentElement.className += ' xcode' + window.jazzy.docset = true +} + +function toggleItem($link, $content) { + var animationDuration = 300; + $link.toggleClass('token-open'); + $content.slideToggle(animationDuration); +} + +function itemLinkToContent($link) { + return $link.parent().parent().next(); +} + +// On doc load + hash-change, open any targetted item +function openCurrentItemIfClosed() { + if (window.jazzy.docset) { + return; + } + var $link = $(`a[name="${location.hash.substring(1)}"]`).nextAll('.token'); + $content = itemLinkToContent($link); + if ($content.is(':hidden')) { + toggleItem($link, $content); + } +} + +$(openCurrentItemIfClosed); +$(window).on('hashchange', openCurrentItemIfClosed); + +// On item link ('token') click, toggle its discussion +$('.token').on('click', function(event) { + if (window.jazzy.docset) { + return; + } + var $link = $(this); + toggleItem($link, itemLinkToContent($link)); + + // Keeps the document from jumping to the hash. + var href = $link.attr('href'); + if (history.pushState) { + history.pushState({}, '', href); + } else { + location.hash = href; + } + event.preventDefault(); +}); + +// Clicks on links to the current, closed, item need to open the item +$("a:not('.token')").on('click', function() { + if (location == this.href) { + openCurrentItemIfClosed(); + } +}); + +// KaTeX rendering +if ("katex" in window) { + $($('.math').each( (_, element) => { + katex.render(element.textContent, element, { + displayMode: $(element).hasClass('m-block'), + throwOnError: false, + trust: true + }); + })) +} diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js new file mode 100644 index 0000000000..359cdbb8b2 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js @@ -0,0 +1,74 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + +$(function(){ + var $typeahead = $('[data-typeahead]'); + var $form = $typeahead.parents('form'); + var searchURL = $form.attr('action'); + + function displayTemplate(result) { + return result.name; + } + + function suggestionTemplate(result) { + var t = '
'; + t += '' + result.name + ''; + if (result.parent_name) { + t += '' + result.parent_name + ''; + } + t += '
'; + return t; + } + + $typeahead.one('focus', function() { + $form.addClass('loading'); + + $.getJSON(searchURL).then(function(searchData) { + const searchIndex = lunr(function() { + this.ref('url'); + this.field('name'); + this.field('abstract'); + for (const [url, doc] of Object.entries(searchData)) { + this.add({url: url, name: doc.name, abstract: doc.abstract}); + } + }); + + $typeahead.typeahead( + { + highlight: true, + minLength: 3, + autoselect: true + }, + { + limit: 10, + display: displayTemplate, + templates: { suggestion: suggestionTemplate }, + source: function(query, sync) { + const lcSearch = query.toLowerCase(); + const results = searchIndex.query(function(q) { + q.term(lcSearch, { boost: 100 }); + q.term(lcSearch, { + boost: 10, + wildcard: lunr.Query.wildcard.TRAILING + }); + }).map(function(result) { + var doc = searchData[result.ref]; + doc.url = result.ref; + return doc; + }); + sync(results); + } + } + ); + $form.removeClass('loading'); + $typeahead.trigger('focus'); + }); + }); + + var baseURL = searchURL.slice(0, -"search.json".length); + + $typeahead.on('typeahead:select', function(e, result) { + window.location = baseURL + result.url; + }); +}); diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js new file mode 100644 index 0000000000..7f37b5d991 --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.7.1 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(ie,e){"use strict";var oe=[],r=Object.getPrototypeOf,ae=oe.slice,g=oe.flat?function(e){return oe.flat.call(e)}:function(e){return oe.concat.apply([],e)},s=oe.push,se=oe.indexOf,n={},i=n.toString,ue=n.hasOwnProperty,o=ue.toString,a=o.call(Object),le={},v=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},y=function(e){return null!=e&&e===e.window},C=ie.document,u={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var r,i,o=(n=n||C).createElement("script");if(o.text=e,t)for(r in u)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[i.call(e)]||"object":typeof e}var t="3.7.1",l=/HTML$/i,ce=function(e,t){return new ce.fn.init(e,t)};function c(e){var t=!!e&&"length"in e&&e.length,n=x(e);return!v(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+ge+")"+ge+"*"),x=new RegExp(ge+"|>"),j=new RegExp(g),A=new RegExp("^"+t+"$"),D={ID:new RegExp("^#("+t+")"),CLASS:new RegExp("^\\.("+t+")"),TAG:new RegExp("^("+t+"|[*])"),ATTR:new RegExp("^"+p),PSEUDO:new RegExp("^"+g),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ge+"*(even|odd|(([+-]|)(\\d*)n|)"+ge+"*(?:([+-]|)"+ge+"*(\\d+)|))"+ge+"*\\)|)","i"),bool:new RegExp("^(?:"+f+")$","i"),needsContext:new RegExp("^"+ge+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ge+"*((?:-\\d)?\\d*)"+ge+"*\\)|)(?=[^-]|$)","i")},N=/^(?:input|select|textarea|button)$/i,q=/^h\d$/i,L=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,H=/[+~]/,O=new RegExp("\\\\[\\da-fA-F]{1,6}"+ge+"?|\\\\([^\\r\\n\\f])","g"),P=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},M=function(){V()},R=J(function(e){return!0===e.disabled&&fe(e,"fieldset")},{dir:"parentNode",next:"legend"});try{k.apply(oe=ae.call(ye.childNodes),ye.childNodes),oe[ye.childNodes.length].nodeType}catch(e){k={apply:function(e,t){me.apply(e,ae.call(t))},call:function(e){me.apply(e,ae.call(arguments,1))}}}function I(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(V(e),e=e||T,C)){if(11!==p&&(u=L.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return k.call(n,a),n}else if(f&&(a=f.getElementById(i))&&I.contains(e,a)&&a.id===i)return k.call(n,a),n}else{if(u[2])return k.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&e.getElementsByClassName)return k.apply(n,e.getElementsByClassName(i)),n}if(!(h[t+" "]||d&&d.test(t))){if(c=t,f=e,1===p&&(x.test(t)||m.test(t))){(f=H.test(t)&&U(e.parentNode)||e)==e&&le.scope||((s=e.getAttribute("id"))?s=ce.escapeSelector(s):e.setAttribute("id",s=S)),o=(l=Y(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+Q(l[o]);c=l.join(",")}try{return k.apply(n,f.querySelectorAll(c)),n}catch(e){h(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return re(t.replace(ve,"$1"),e,n,r)}function W(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function F(e){return e[S]=!0,e}function $(e){var t=T.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function B(t){return function(e){return fe(e,"input")&&e.type===t}}function _(t){return function(e){return(fe(e,"input")||fe(e,"button"))&&e.type===t}}function z(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&R(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function X(a){return F(function(o){return o=+o,F(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function U(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function V(e){var t,n=e?e.ownerDocument||e:ye;return n!=T&&9===n.nodeType&&n.documentElement&&(r=(T=n).documentElement,C=!ce.isXMLDoc(T),i=r.matches||r.webkitMatchesSelector||r.msMatchesSelector,r.msMatchesSelector&&ye!=T&&(t=T.defaultView)&&t.top!==t&&t.addEventListener("unload",M),le.getById=$(function(e){return r.appendChild(e).id=ce.expando,!T.getElementsByName||!T.getElementsByName(ce.expando).length}),le.disconnectedMatch=$(function(e){return i.call(e,"*")}),le.scope=$(function(){return T.querySelectorAll(":scope")}),le.cssHas=$(function(){try{return T.querySelector(":has(*,:jqfake)"),!1}catch(e){return!0}}),le.getById?(b.filter.ID=function(e){var t=e.replace(O,P);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(O,P);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):t.querySelectorAll(e)},b.find.CLASS=function(e,t){if("undefined"!=typeof t.getElementsByClassName&&C)return t.getElementsByClassName(e)},d=[],$(function(e){var t;r.appendChild(e).innerHTML="",e.querySelectorAll("[selected]").length||d.push("\\["+ge+"*(?:value|"+f+")"),e.querySelectorAll("[id~="+S+"-]").length||d.push("~="),e.querySelectorAll("a#"+S+"+*").length||d.push(".#.+[+~]"),e.querySelectorAll(":checked").length||d.push(":checked"),(t=T.createElement("input")).setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),r.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&d.push(":enabled",":disabled"),(t=T.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||d.push("\\["+ge+"*name"+ge+"*="+ge+"*(?:''|\"\")")}),le.cssHas||d.push(":has"),d=d.length&&new RegExp(d.join("|")),l=function(e,t){if(e===t)return a=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!le.sortDetached&&t.compareDocumentPosition(e)===n?e===T||e.ownerDocument==ye&&I.contains(ye,e)?-1:t===T||t.ownerDocument==ye&&I.contains(ye,t)?1:o?se.call(o,e)-se.call(o,t):0:4&n?-1:1)}),T}for(e in I.matches=function(e,t){return I(e,null,null,t)},I.matchesSelector=function(e,t){if(V(e),C&&!h[t+" "]&&(!d||!d.test(t)))try{var n=i.call(e,t);if(n||le.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){h(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(O,P),e[3]=(e[3]||e[4]||e[5]||"").replace(O,P),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||I.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&I.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return D.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&j.test(n)&&(t=Y(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(O,P).toLowerCase();return"*"===e?function(){return!0}:function(e){return fe(e,t)}},CLASS:function(e){var t=s[e+" "];return t||(t=new RegExp("(^|"+ge+")"+e+"("+ge+"|$)"))&&s(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=I.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function T(e,n,r){return v(n)?ce.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?ce.grep(e,function(e){return e===n!==r}):"string"!=typeof n?ce.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(ce.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||k,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:S.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof ce?t[0]:t,ce.merge(this,ce.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:C,!0)),w.test(r[1])&&ce.isPlainObject(t))for(r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=C.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(ce):ce.makeArray(e,this)}).prototype=ce.fn,k=ce(C);var E=/^(?:parents|prev(?:Until|All))/,j={children:!0,contents:!0,next:!0,prev:!0};function A(e,t){while((e=e[t])&&1!==e.nodeType);return e}ce.fn.extend({has:function(e){var t=ce(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Ce=/^$|^module$|\/(?:java|ecma)script/i;xe=C.createDocumentFragment().appendChild(C.createElement("div")),(be=C.createElement("input")).setAttribute("type","radio"),be.setAttribute("checked","checked"),be.setAttribute("name","t"),xe.appendChild(be),le.checkClone=xe.cloneNode(!0).cloneNode(!0).lastChild.checked,xe.innerHTML="",le.noCloneChecked=!!xe.cloneNode(!0).lastChild.defaultValue,xe.innerHTML="",le.option=!!xe.lastChild;var ke={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function Se(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&fe(e,t)?ce.merge([e],n):n}function Ee(e,t){for(var n=0,r=e.length;n",""]);var je=/<|&#?\w+;/;function Ae(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function Re(e,t){return fe(e,"table")&&fe(11!==t.nodeType?t:t.firstChild,"tr")&&ce(e).children("tbody")[0]||e}function Ie(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function We(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Fe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(_.hasData(e)&&(s=_.get(e).events))for(i in _.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),C.head.appendChild(r[0])},abort:function(){i&&i()}}});var Jt,Kt=[],Zt=/(=)\?(?=&|$)|\?\?/;ce.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Kt.pop()||ce.expando+"_"+jt.guid++;return this[e]=!0,e}}),ce.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Zt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Zt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Zt,"$1"+r):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||ce.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=ie[r],ie[r]=function(){o=arguments},n.always(function(){void 0===i?ce(ie).removeProp(r):ie[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Kt.push(r)),o&&v(i)&&i(o[0]),o=i=void 0}),"script"}),le.createHTMLDocument=((Jt=C.implementation.createHTMLDocument("").body).innerHTML="
",2===Jt.childNodes.length),ce.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(le.createHTMLDocument?((r=(t=C.implementation.createHTMLDocument("")).createElement("base")).href=C.location.href,t.head.appendChild(r)):t=C),o=!n&&[],(i=w.exec(e))?[t.createElement(i[1])]:(i=Ae([e],t,o),o&&o.length&&ce(o).remove(),ce.merge([],i.childNodes)));var r,i,o},ce.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(ce.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},ce.expr.pseudos.animated=function(t){return ce.grep(ce.timers,function(e){return t===e.elem}).length},ce.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=ce.css(e,"position"),c=ce(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=ce.css(e,"top"),u=ce.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),v(t)&&(t=t.call(e,n,ce.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},ce.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){ce.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===ce.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===ce.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=ce(e).offset()).top+=ce.css(e,"borderTopWidth",!0),i.left+=ce.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-ce.css(r,"marginTop",!0),left:t.left-i.left-ce.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===ce.css(e,"position"))e=e.offsetParent;return e||J})}}),ce.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;ce.fn[t]=function(e){return M(this,function(e,t,n){var r;if(y(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),ce.each(["top","left"],function(e,n){ce.cssHooks[n]=Ye(le.pixelPosition,function(e,t){if(t)return t=Ge(e,n),_e.test(t)?ce(e).position()[n]+"px":t})}),ce.each({Height:"height",Width:"width"},function(a,s){ce.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){ce.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return M(this,function(e,t,n){var r;return y(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?ce.css(e,t,i):ce.style(e,t,n,i)},s,n?e:void 0,n)}})}),ce.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){ce.fn[t]=function(e){return this.on(t,e)}}),ce.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.on("mouseenter",e).on("mouseleave",t||e)}}),ce.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){ce.fn[n]=function(e,t){return 00){var c=e.utils.clone(r)||{};c.position=[a,l],c.index=s.length,s.push(new e.Token(i.slice(a,o),c))}a=o+1}}return s},e.tokenizer.separator=/[\s\-]+/,e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,r){r in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+r),t.label=r,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){var r=t.label&&t.label in this.registeredFunctions;r||e.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",t)},e.Pipeline.load=function(t){var r=new e.Pipeline;return t.forEach(function(t){var i=e.Pipeline.registeredFunctions[t];if(!i)throw new Error("Cannot load unregistered function: "+t);r.add(i)}),r},e.Pipeline.prototype.add=function(){var t=Array.prototype.slice.call(arguments);t.forEach(function(t){e.Pipeline.warnIfFunctionNotRegistered(t),this._stack.push(t)},this)},e.Pipeline.prototype.after=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,r)},e.Pipeline.prototype.before=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");this._stack.splice(i,0,r)},e.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);t!=-1&&this._stack.splice(t,1)},e.Pipeline.prototype.run=function(e){for(var t=this._stack.length,r=0;r1&&(se&&(r=n),s!=e);)i=r-t,n=t+Math.floor(i/2),s=this.elements[2*n];return s==e?2*n:s>e?2*n:sa?l+=2:o==a&&(t+=r[u+1]*i[l+1],u+=2,l+=2);return t},e.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},e.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,r=0;t0){var o,a=s.str.charAt(0);a in s.node.edges?o=s.node.edges[a]:(o=new e.TokenSet,s.node.edges[a]=o),1==s.str.length&&(o["final"]=!0),n.push({node:o,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(0!=s.editsRemaining){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new e.TokenSet;s.node.edges["*"]=u}if(0==s.str.length&&(u["final"]=!0),n.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&n.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),1==s.str.length&&(s.node["final"]=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new e.TokenSet;s.node.edges["*"]=l}1==s.str.length&&(l["final"]=!0),n.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var c,h=s.str.charAt(0),d=s.str.charAt(1);d in s.node.edges?c=s.node.edges[d]:(c=new e.TokenSet,s.node.edges[d]=c),1==s.str.length&&(c["final"]=!0),n.push({node:c,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return i},e.TokenSet.fromString=function(t){for(var r=new e.TokenSet,i=r,n=0,s=t.length;n=e;t--){var r=this.uncheckedNodes[t],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r["char"]]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}},e.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},e.Index.prototype.search=function(t){return this.query(function(r){var i=new e.QueryParser(t,r);i.parse()})},e.Index.prototype.query=function(t){for(var r=new e.Query(this.fields),i=Object.create(null),n=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},e.Builder.prototype.k1=function(e){this._k1=e},e.Builder.prototype.add=function(t,r){var i=t[this._ref],n=Object.keys(this._fields);this._documents[i]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return e.QueryLexer.EOS;var t=this.str.charAt(this.pos);return this.pos+=1,t},e.QueryLexer.prototype.width=function(){return this.pos-this.start},e.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},e.QueryLexer.prototype.backup=function(){this.pos-=1},e.QueryLexer.prototype.acceptDigitRun=function(){var t,r;do t=this.next(),r=t.charCodeAt(0);while(r>47&&r<58);t!=e.QueryLexer.EOS&&this.backup()},e.QueryLexer.prototype.more=function(){return this.pos1&&(t.backup(),t.emit(e.QueryLexer.TERM)),t.ignore(),t.more())return e.QueryLexer.lexText},e.QueryLexer.lexEditDistance=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.EDIT_DISTANCE),e.QueryLexer.lexText},e.QueryLexer.lexBoost=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.BOOST),e.QueryLexer.lexText},e.QueryLexer.lexEOS=function(t){t.width()>0&&t.emit(e.QueryLexer.TERM)},e.QueryLexer.termSeparator=e.tokenizer.separator,e.QueryLexer.lexText=function(t){for(;;){var r=t.next();if(r==e.QueryLexer.EOS)return e.QueryLexer.lexEOS;if(92!=r.charCodeAt(0)){if(":"==r)return e.QueryLexer.lexField;if("~"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexEditDistance;if("^"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexBoost;if("+"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if("-"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if(r.match(e.QueryLexer.termSeparator))return e.QueryLexer.lexTerm}else t.escapeCharacter()}},e.QueryParser=function(t,r){this.lexer=new e.QueryLexer(t),this.query=r,this.currentClause={},this.lexemeIdx=0},e.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var t=e.QueryParser.parseClause;t;)t=t(this);return this.query},e.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},e.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},e.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},e.QueryParser.parseClause=function(t){var r=t.peekLexeme();if(void 0!=r)switch(r.type){case e.QueryLexer.PRESENCE:return e.QueryParser.parsePresence;case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(i+=" with value '"+r.str+"'"),new e.QueryParseError(i,r.start,r.end)}},e.QueryParser.parsePresence=function(t){var r=t.consumeLexeme();if(void 0!=r){switch(r.str){case"-":t.currentClause.presence=e.Query.presence.PROHIBITED;break;case"+":t.currentClause.presence=e.Query.presence.REQUIRED;break;default:var i="unrecognised presence operator'"+r.str+"'";throw new e.QueryParseError(i,r.start,r.end)}var n=t.peekLexeme();if(void 0==n){var i="expecting term or field, found nothing";throw new e.QueryParseError(i,r.start,r.end)}switch(n.type){case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expecting term or field, found '"+n.type+"'";throw new e.QueryParseError(i,n.start,n.end)}}},e.QueryParser.parseField=function(t){var r=t.consumeLexeme();if(void 0!=r){if(t.query.allFields.indexOf(r.str)==-1){var i=t.query.allFields.map(function(e){return"'"+e+"'"}).join(", "),n="unrecognised field '"+r.str+"', possible fields: "+i;throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.fields=[r.str];var s=t.peekLexeme();if(void 0==s){var n="expecting term, found nothing";throw new e.QueryParseError(n,r.start,r.end)}switch(s.type){case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var n="expecting term, found '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseTerm=function(t){var r=t.consumeLexeme();if(void 0!=r){t.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(t.currentClause.usePipeline=!1);var i=t.peekLexeme();if(void 0==i)return void t.nextClause();switch(i.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+i.type+"'";throw new e.QueryParseError(n,i.start,i.end)}}},e.QueryParser.parseEditDistance=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="edit distance must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.editDistance=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseBoost=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="boost must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.boost=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.lunr=t()}(this,function(){return e})}(); diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js new file mode 100644 index 0000000000..bcb734befc --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js @@ -0,0 +1,1695 @@ +/*! + * typeahead.js 1.3.3 + * https://github.com/corejavascript/typeahead.js + * Copyright 2013-2024 Twitter, Inc. and other contributors; Licensed MIT + */ + + +(function(root, factory) { + if (typeof define === "function" && define.amd) { + define([ "jquery" ], function(a0) { + return factory(a0); + }); + } else if (typeof module === "object" && module.exports) { + module.exports = factory(require("jquery")); + } else { + factory(root["jQuery"]); + } +})(this, function($) { + var _ = function() { + "use strict"; + return { + isMsie: function() { + return /(msie|trident)/i.test(navigator.userAgent) ? navigator.userAgent.match(/(msie |rv:)(\d+(.\d+)?)/i)[2] : false; + }, + isBlankString: function(str) { + return !str || /^\s*$/.test(str); + }, + escapeRegExChars: function(str) { + return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"); + }, + isString: function(obj) { + return typeof obj === "string"; + }, + isNumber: function(obj) { + return typeof obj === "number"; + }, + isArray: $.isArray, + isFunction: $.isFunction, + isObject: $.isPlainObject, + isUndefined: function(obj) { + return typeof obj === "undefined"; + }, + isElement: function(obj) { + return !!(obj && obj.nodeType === 1); + }, + isJQuery: function(obj) { + return obj instanceof $; + }, + toStr: function toStr(s) { + return _.isUndefined(s) || s === null ? "" : s + ""; + }, + bind: $.proxy, + each: function(collection, cb) { + $.each(collection, reverseArgs); + function reverseArgs(index, value) { + return cb(value, index); + } + }, + map: $.map, + filter: $.grep, + every: function(obj, test) { + var result = true; + if (!obj) { + return result; + } + $.each(obj, function(key, val) { + if (!(result = test.call(null, val, key, obj))) { + return false; + } + }); + return !!result; + }, + some: function(obj, test) { + var result = false; + if (!obj) { + return result; + } + $.each(obj, function(key, val) { + if (result = test.call(null, val, key, obj)) { + return false; + } + }); + return !!result; + }, + mixin: $.extend, + identity: function(x) { + return x; + }, + clone: function(obj) { + return $.extend(true, {}, obj); + }, + getIdGenerator: function() { + var counter = 0; + return function() { + return counter++; + }; + }, + templatify: function templatify(obj) { + return $.isFunction(obj) ? obj : template; + function template() { + return String(obj); + } + }, + defer: function(fn) { + setTimeout(fn, 0); + }, + debounce: function(func, wait, immediate) { + var timeout, result; + return function() { + var context = this, args = arguments, later, callNow; + later = function() { + timeout = null; + if (!immediate) { + result = func.apply(context, args); + } + }; + callNow = immediate && !timeout; + clearTimeout(timeout); + timeout = setTimeout(later, wait); + if (callNow) { + result = func.apply(context, args); + } + return result; + }; + }, + throttle: function(func, wait) { + var context, args, timeout, result, previous, later; + previous = 0; + later = function() { + previous = new Date(); + timeout = null; + result = func.apply(context, args); + }; + return function() { + var now = new Date(), remaining = wait - (now - previous); + context = this; + args = arguments; + if (remaining <= 0) { + clearTimeout(timeout); + timeout = null; + previous = now; + result = func.apply(context, args); + } else if (!timeout) { + timeout = setTimeout(later, remaining); + } + return result; + }; + }, + stringify: function(val) { + return _.isString(val) ? val : JSON.stringify(val); + }, + guid: function() { + function _p8(s) { + var p = (Math.random().toString(16) + "000000000").substr(2, 8); + return s ? "-" + p.substr(0, 4) + "-" + p.substr(4, 4) : p; + } + return "tt-" + _p8() + _p8(true) + _p8(true) + _p8(); + }, + noop: function() {} + }; + }(); + var WWW = function() { + "use strict"; + var defaultClassNames = { + wrapper: "twitter-typeahead", + input: "tt-input", + hint: "tt-hint", + menu: "tt-menu", + dataset: "tt-dataset", + suggestion: "tt-suggestion", + selectable: "tt-selectable", + empty: "tt-empty", + open: "tt-open", + cursor: "tt-cursor", + highlight: "tt-highlight" + }; + return build; + function build(o) { + var www, classes; + classes = _.mixin({}, defaultClassNames, o); + www = { + css: buildCss(), + classes: classes, + html: buildHtml(classes), + selectors: buildSelectors(classes) + }; + return { + css: www.css, + html: www.html, + classes: www.classes, + selectors: www.selectors, + mixin: function(o) { + _.mixin(o, www); + } + }; + } + function buildHtml(c) { + return { + wrapper: '', + menu: '
' + }; + } + function buildSelectors(classes) { + var selectors = {}; + _.each(classes, function(v, k) { + selectors[k] = "." + v; + }); + return selectors; + } + function buildCss() { + var css = { + wrapper: { + position: "relative", + display: "inline-block" + }, + hint: { + position: "absolute", + top: "0", + left: "0", + borderColor: "transparent", + boxShadow: "none", + opacity: "1" + }, + input: { + position: "relative", + verticalAlign: "top", + backgroundColor: "transparent" + }, + inputWithNoHint: { + position: "relative", + verticalAlign: "top" + }, + menu: { + position: "absolute", + top: "100%", + left: "0", + zIndex: "100", + display: "none" + }, + ltr: { + left: "0", + right: "auto" + }, + rtl: { + left: "auto", + right: " 0" + } + }; + if (_.isMsie()) { + _.mixin(css.input, { + backgroundImage: "url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)" + }); + } + return css; + } + }(); + var EventBus = function() { + "use strict"; + var namespace, deprecationMap; + namespace = "typeahead:"; + deprecationMap = { + render: "rendered", + cursorchange: "cursorchanged", + select: "selected", + autocomplete: "autocompleted" + }; + function EventBus(o) { + if (!o || !o.el) { + $.error("EventBus initialized without el"); + } + this.$el = $(o.el); + } + _.mixin(EventBus.prototype, { + _trigger: function(type, args) { + var $e = $.Event(namespace + type); + this.$el.trigger.call(this.$el, $e, args || []); + return $e; + }, + before: function(type) { + var args, $e; + args = [].slice.call(arguments, 1); + $e = this._trigger("before" + type, args); + return $e.isDefaultPrevented(); + }, + trigger: function(type) { + var deprecatedType; + this._trigger(type, [].slice.call(arguments, 1)); + if (deprecatedType = deprecationMap[type]) { + this._trigger(deprecatedType, [].slice.call(arguments, 1)); + } + } + }); + return EventBus; + }(); + var EventEmitter = function() { + "use strict"; + var splitter = /\s+/, nextTick = getNextTick(); + return { + onSync: onSync, + onAsync: onAsync, + off: off, + trigger: trigger + }; + function on(method, types, cb, context) { + var type; + if (!cb) { + return this; + } + types = types.split(splitter); + cb = context ? bindContext(cb, context) : cb; + this._callbacks = this._callbacks || {}; + while (type = types.shift()) { + this._callbacks[type] = this._callbacks[type] || { + sync: [], + async: [] + }; + this._callbacks[type][method].push(cb); + } + return this; + } + function onAsync(types, cb, context) { + return on.call(this, "async", types, cb, context); + } + function onSync(types, cb, context) { + return on.call(this, "sync", types, cb, context); + } + function off(types) { + var type; + if (!this._callbacks) { + return this; + } + types = types.split(splitter); + while (type = types.shift()) { + delete this._callbacks[type]; + } + return this; + } + function trigger(types) { + var type, callbacks, args, syncFlush, asyncFlush; + if (!this._callbacks) { + return this; + } + types = types.split(splitter); + args = [].slice.call(arguments, 1); + while ((type = types.shift()) && (callbacks = this._callbacks[type])) { + syncFlush = getFlush(callbacks.sync, this, [ type ].concat(args)); + asyncFlush = getFlush(callbacks.async, this, [ type ].concat(args)); + syncFlush() && nextTick(asyncFlush); + } + return this; + } + function getFlush(callbacks, context, args) { + return flush; + function flush() { + var cancelled; + for (var i = 0, len = callbacks.length; !cancelled && i < len; i += 1) { + cancelled = callbacks[i].apply(context, args) === false; + } + return !cancelled; + } + } + function getNextTick() { + var nextTickFn; + if (window.setImmediate) { + nextTickFn = function nextTickSetImmediate(fn) { + setImmediate(function() { + fn(); + }); + }; + } else { + nextTickFn = function nextTickSetTimeout(fn) { + setTimeout(function() { + fn(); + }, 0); + }; + } + return nextTickFn; + } + function bindContext(fn, context) { + return fn.bind ? fn.bind(context) : function() { + fn.apply(context, [].slice.call(arguments, 0)); + }; + } + }(); + var highlight = function(doc) { + "use strict"; + var defaults = { + node: null, + pattern: null, + tagName: "strong", + className: null, + wordsOnly: false, + caseSensitive: false, + diacriticInsensitive: false + }; + var accented = { + A: "[AaªÀ-Åà-åĀ-ąǍǎȀ-ȃȦȧᴬᵃḀḁẚẠ-ảₐ℀℁℻⒜Ⓐⓐ㍱-㍴㎀-㎄㎈㎉㎩-㎯㏂㏊㏟㏿Aa]", + B: "[BbᴮᵇḂ-ḇℬ⒝Ⓑⓑ㍴㎅-㎇㏃㏈㏔㏝Bb]", + C: "[CcÇçĆ-čᶜ℀ℂ℃℅℆ℭⅭⅽ⒞Ⓒⓒ㍶㎈㎉㎝㎠㎤㏄-㏇Cc]", + D: "[DdĎďDŽ-džDZ-dzᴰᵈḊ-ḓⅅⅆⅮⅾ⒟Ⓓⓓ㋏㍲㍷-㍹㎗㎭-㎯㏅㏈Dd]", + E: "[EeÈ-Ëè-ëĒ-ěȄ-ȇȨȩᴱᵉḘ-ḛẸ-ẽₑ℡ℯℰⅇ⒠Ⓔⓔ㉐㋍㋎Ee]", + F: "[FfᶠḞḟ℉ℱ℻⒡Ⓕⓕ㎊-㎌㎙ff-fflFf]", + G: "[GgĜ-ģǦǧǴǵᴳᵍḠḡℊ⒢Ⓖⓖ㋌㋍㎇㎍-㎏㎓㎬㏆㏉㏒㏿Gg]", + H: "[HhĤĥȞȟʰᴴḢ-ḫẖℋ-ℎ⒣Ⓗⓗ㋌㍱㎐-㎔㏊㏋㏗Hh]", + I: "[IiÌ-Ïì-ïĨ-İIJijǏǐȈ-ȋᴵᵢḬḭỈ-ịⁱℐℑℹⅈⅠ-ⅣⅥ-ⅨⅪⅫⅰ-ⅳⅵ-ⅸⅺⅻ⒤Ⓘⓘ㍺㏌㏕fiffiIi]", + J: "[JjIJ-ĵLJ-njǰʲᴶⅉ⒥ⒿⓙⱼJj]", + K: "[KkĶķǨǩᴷᵏḰ-ḵK⒦Ⓚⓚ㎄㎅㎉㎏㎑㎘㎞㎢㎦㎪㎸㎾㏀㏆㏍-㏏Kk]", + L: "[LlĹ-ŀLJ-ljˡᴸḶḷḺ-ḽℒℓ℡Ⅼⅼ⒧Ⓛⓛ㋏㎈㎉㏐-㏓㏕㏖㏿flfflLl]", + M: "[MmᴹᵐḾ-ṃ℠™ℳⅯⅿ⒨Ⓜⓜ㍷-㍹㎃㎆㎎㎒㎖㎙-㎨㎫㎳㎷㎹㎽㎿㏁㏂㏎㏐㏔-㏖㏘㏙㏞㏟Mm]", + N: "[NnÑñŃ-ʼnNJ-njǸǹᴺṄ-ṋⁿℕ№⒩Ⓝⓝ㎁㎋㎚㎱㎵㎻㏌㏑Nn]", + O: "[OoºÒ-Öò-öŌ-őƠơǑǒǪǫȌ-ȏȮȯᴼᵒỌ-ỏₒ℅№ℴ⒪Ⓞⓞ㍵㏇㏒㏖Oo]", + P: "[PpᴾᵖṔ-ṗℙ⒫Ⓟⓟ㉐㍱㍶㎀㎊㎩-㎬㎰㎴㎺㏋㏗-㏚Pp]", + Q: "[Qqℚ⒬Ⓠⓠ㏃Qq]", + R: "[RrŔ-řȐ-ȓʳᴿᵣṘ-ṛṞṟ₨ℛ-ℝ⒭Ⓡⓡ㋍㍴㎭-㎯㏚㏛Rr]", + S: "[SsŚ-šſȘșˢṠ-ṣ₨℁℠⒮Ⓢⓢ㎧㎨㎮-㎳㏛㏜stSs]", + T: "[TtŢ-ťȚțᵀᵗṪ-ṱẗ℡™⒯Ⓣⓣ㉐㋏㎔㏏ſtstTt]", + U: "[UuÙ-Üù-üŨ-ųƯưǓǔȔ-ȗᵁᵘᵤṲ-ṷỤ-ủ℆⒰Ⓤⓤ㍳㍺Uu]", + V: "[VvᵛᵥṼ-ṿⅣ-Ⅷⅳ-ⅷ⒱Ⓥⓥⱽ㋎㍵㎴-㎹㏜㏞Vv]", + W: "[WwŴŵʷᵂẀ-ẉẘ⒲Ⓦⓦ㎺-㎿㏝Ww]", + X: "[XxˣẊ-ẍₓ℻Ⅸ-Ⅻⅸ-ⅻ⒳Ⓧⓧ㏓Xx]", + Y: "[YyÝýÿŶ-ŸȲȳʸẎẏẙỲ-ỹ⒴Ⓨⓨ㏉Yy]", + Z: "[ZzŹ-žDZ-dzᶻẐ-ẕℤℨ⒵Ⓩⓩ㎐-㎔Zz]" + }; + return function hightlight(o) { + var regex; + o = _.mixin({}, defaults, o); + if (!o.node || !o.pattern) { + return; + } + o.pattern = _.isArray(o.pattern) ? o.pattern : [ o.pattern ]; + regex = getRegex(o.pattern, o.caseSensitive, o.wordsOnly, o.diacriticInsensitive); + traverse(o.node, hightlightTextNode); + function hightlightTextNode(textNode) { + var match, patternNode, wrapperNode; + if (match = regex.exec(textNode.data)) { + wrapperNode = doc.createElement(o.tagName); + o.className && (wrapperNode.className = o.className); + patternNode = textNode.splitText(match.index); + patternNode.splitText(match[0].length); + wrapperNode.appendChild(patternNode.cloneNode(true)); + textNode.parentNode.replaceChild(wrapperNode, patternNode); + } + return !!match; + } + function traverse(el, hightlightTextNode) { + var childNode, TEXT_NODE_TYPE = 3; + for (var i = 0; i < el.childNodes.length; i++) { + childNode = el.childNodes[i]; + if (childNode.nodeType === TEXT_NODE_TYPE) { + i += hightlightTextNode(childNode) ? 1 : 0; + } else { + traverse(childNode, hightlightTextNode); + } + } + } + }; + function accent_replacer(chr) { + return accented[chr.toUpperCase()] || chr; + } + function getRegex(patterns, caseSensitive, wordsOnly, diacriticInsensitive) { + var escapedPatterns = [], regexStr; + for (var i = 0, len = patterns.length; i < len; i++) { + var escapedWord = _.escapeRegExChars(patterns[i]); + if (diacriticInsensitive) { + escapedWord = escapedWord.replace(/\S/g, accent_replacer); + } + escapedPatterns.push(escapedWord); + } + regexStr = wordsOnly ? "\\b(" + escapedPatterns.join("|") + ")\\b" : "(" + escapedPatterns.join("|") + ")"; + return caseSensitive ? new RegExp(regexStr) : new RegExp(regexStr, "i"); + } + }(window.document); + var Input = function() { + "use strict"; + var specialKeyCodeMap; + specialKeyCodeMap = { + 9: "tab", + 27: "esc", + 37: "left", + 39: "right", + 13: "enter", + 38: "up", + 40: "down" + }; + function Input(o, www) { + var id; + o = o || {}; + if (!o.input) { + $.error("input is missing"); + } + www.mixin(this); + this.$hint = $(o.hint); + this.$input = $(o.input); + this.$menu = $(o.menu); + id = this.$input.attr("id") || _.guid(); + this.$menu.attr("id", id + "_listbox"); + this.$hint.attr({ + "aria-hidden": true + }); + this.$input.attr({ + "aria-owns": id + "_listbox", + "aria-controls": id + "_listbox", + role: "combobox", + "aria-autocomplete": "list", + "aria-expanded": false + }); + this.query = this.$input.val(); + this.queryWhenFocused = this.hasFocus() ? this.query : null; + this.$overflowHelper = buildOverflowHelper(this.$input); + this._checkLanguageDirection(); + if (this.$hint.length === 0) { + this.setHint = this.getHint = this.clearHint = this.clearHintIfInvalid = _.noop; + } + this.onSync("cursorchange", this._updateDescendent); + } + Input.normalizeQuery = function(str) { + return _.toStr(str).replace(/^\s*/g, "").replace(/\s{2,}/g, " "); + }; + _.mixin(Input.prototype, EventEmitter, { + _onBlur: function onBlur() { + this.resetInputValue(); + this.trigger("blurred"); + }, + _onFocus: function onFocus() { + this.queryWhenFocused = this.query; + this.trigger("focused"); + }, + _onKeydown: function onKeydown($e) { + var keyName = specialKeyCodeMap[$e.which || $e.keyCode]; + this._managePreventDefault(keyName, $e); + if (keyName && this._shouldTrigger(keyName, $e)) { + this.trigger(keyName + "Keyed", $e); + } + }, + _onInput: function onInput() { + this._setQuery(this.getInputValue()); + this.clearHintIfInvalid(); + this._checkLanguageDirection(); + }, + _managePreventDefault: function managePreventDefault(keyName, $e) { + var preventDefault; + switch (keyName) { + case "up": + case "down": + preventDefault = !withModifier($e); + break; + + default: + preventDefault = false; + } + preventDefault && $e.preventDefault(); + }, + _shouldTrigger: function shouldTrigger(keyName, $e) { + var trigger; + switch (keyName) { + case "tab": + trigger = !withModifier($e); + break; + + default: + trigger = true; + } + return trigger; + }, + _checkLanguageDirection: function checkLanguageDirection() { + var dir = (this.$input.css("direction") || "ltr").toLowerCase(); + if (this.dir !== dir) { + this.dir = dir; + this.$hint.attr("dir", dir); + this.trigger("langDirChanged", dir); + } + }, + _setQuery: function setQuery(val, silent) { + var areEquivalent, hasDifferentWhitespace; + areEquivalent = areQueriesEquivalent(val, this.query); + hasDifferentWhitespace = areEquivalent ? this.query.length !== val.length : false; + this.query = val; + if (!silent && !areEquivalent) { + this.trigger("queryChanged", this.query); + } else if (!silent && hasDifferentWhitespace) { + this.trigger("whitespaceChanged", this.query); + } + }, + _updateDescendent: function updateDescendent(event, id) { + this.$input.attr("aria-activedescendant", id); + }, + bind: function() { + var that = this, onBlur, onFocus, onKeydown, onInput; + onBlur = _.bind(this._onBlur, this); + onFocus = _.bind(this._onFocus, this); + onKeydown = _.bind(this._onKeydown, this); + onInput = _.bind(this._onInput, this); + this.$input.on("blur.tt", onBlur).on("focus.tt", onFocus).on("keydown.tt", onKeydown); + if (!_.isMsie() || _.isMsie() > 9) { + this.$input.on("input.tt", onInput); + } else { + this.$input.on("keydown.tt keypress.tt cut.tt paste.tt", function($e) { + if (specialKeyCodeMap[$e.which || $e.keyCode]) { + return; + } + _.defer(_.bind(that._onInput, that, $e)); + }); + } + return this; + }, + focus: function focus() { + this.$input.focus(); + }, + blur: function blur() { + this.$input.blur(); + }, + getLangDir: function getLangDir() { + return this.dir; + }, + getQuery: function getQuery() { + return this.query || ""; + }, + setQuery: function setQuery(val, silent) { + this.setInputValue(val); + this._setQuery(val, silent); + }, + hasQueryChangedSinceLastFocus: function hasQueryChangedSinceLastFocus() { + return this.query !== this.queryWhenFocused; + }, + getInputValue: function getInputValue() { + return this.$input.val(); + }, + setInputValue: function setInputValue(value) { + this.$input.val(value); + this.clearHintIfInvalid(); + this._checkLanguageDirection(); + }, + resetInputValue: function resetInputValue() { + this.setInputValue(this.query); + }, + getHint: function getHint() { + return this.$hint.val(); + }, + setHint: function setHint(value) { + this.$hint.val(value); + }, + clearHint: function clearHint() { + this.setHint(""); + }, + clearHintIfInvalid: function clearHintIfInvalid() { + var val, hint, valIsPrefixOfHint, isValid; + val = this.getInputValue(); + hint = this.getHint(); + valIsPrefixOfHint = val !== hint && hint.indexOf(val) === 0; + isValid = val !== "" && valIsPrefixOfHint && !this.hasOverflow(); + !isValid && this.clearHint(); + }, + hasFocus: function hasFocus() { + return this.$input.is(":focus"); + }, + hasOverflow: function hasOverflow() { + var constraint = this.$input.width() - 2; + this.$overflowHelper.text(this.getInputValue()); + return this.$overflowHelper.width() >= constraint; + }, + isCursorAtEnd: function() { + var valueLength, selectionStart, range; + valueLength = this.$input.val().length; + selectionStart = this.$input[0].selectionStart; + if (_.isNumber(selectionStart)) { + return selectionStart === valueLength; + } else if (document.selection) { + range = document.selection.createRange(); + range.moveStart("character", -valueLength); + return valueLength === range.text.length; + } + return true; + }, + destroy: function destroy() { + this.$hint.off(".tt"); + this.$input.off(".tt"); + this.$overflowHelper.remove(); + this.$hint = this.$input = this.$overflowHelper = $("
"); + }, + setAriaExpanded: function setAriaExpanded(value) { + this.$input.attr("aria-expanded", value); + } + }); + return Input; + function buildOverflowHelper($input) { + return $('').css({ + position: "absolute", + visibility: "hidden", + whiteSpace: "pre", + fontFamily: $input.css("font-family"), + fontSize: $input.css("font-size"), + fontStyle: $input.css("font-style"), + fontVariant: $input.css("font-variant"), + fontWeight: $input.css("font-weight"), + wordSpacing: $input.css("word-spacing"), + letterSpacing: $input.css("letter-spacing"), + textIndent: $input.css("text-indent"), + textRendering: $input.css("text-rendering"), + textTransform: $input.css("text-transform") + }).insertAfter($input); + } + function areQueriesEquivalent(a, b) { + return Input.normalizeQuery(a) === Input.normalizeQuery(b); + } + function withModifier($e) { + return $e.altKey || $e.ctrlKey || $e.metaKey || $e.shiftKey; + } + }(); + var Dataset = function() { + "use strict"; + var keys, nameGenerator; + keys = { + dataset: "tt-selectable-dataset", + val: "tt-selectable-display", + obj: "tt-selectable-object" + }; + nameGenerator = _.getIdGenerator(); + function Dataset(o, www) { + o = o || {}; + o.templates = o.templates || {}; + o.templates.notFound = o.templates.notFound || o.templates.empty; + if (!o.source) { + $.error("missing source"); + } + if (!o.node) { + $.error("missing node"); + } + if (o.name && !isValidName(o.name)) { + $.error("invalid dataset name: " + o.name); + } + www.mixin(this); + this.highlight = !!o.highlight; + this.name = _.toStr(o.name || nameGenerator()); + this.limit = o.limit || 5; + this.displayFn = getDisplayFn(o.display || o.displayKey); + this.templates = getTemplates(o.templates, this.displayFn); + this.source = o.source.__ttAdapter ? o.source.__ttAdapter() : o.source; + this.async = _.isUndefined(o.async) ? this.source.length > 2 : !!o.async; + this._resetLastSuggestion(); + this.$el = $(o.node).attr("role", "presentation").addClass(this.classes.dataset).addClass(this.classes.dataset + "-" + this.name); + } + Dataset.extractData = function extractData(el) { + var $el = $(el); + if ($el.data(keys.obj)) { + return { + dataset: $el.data(keys.dataset) || "", + val: $el.data(keys.val) || "", + obj: $el.data(keys.obj) || null + }; + } + return null; + }; + _.mixin(Dataset.prototype, EventEmitter, { + _overwrite: function overwrite(query, suggestions) { + suggestions = suggestions || []; + if (suggestions.length) { + this._renderSuggestions(query, suggestions); + } else if (this.async && this.templates.pending) { + this._renderPending(query); + } else if (!this.async && this.templates.notFound) { + this._renderNotFound(query); + } else { + this._empty(); + } + this.trigger("rendered", suggestions, false, this.name); + }, + _append: function append(query, suggestions) { + suggestions = suggestions || []; + if (suggestions.length && this.$lastSuggestion.length) { + this._appendSuggestions(query, suggestions); + } else if (suggestions.length) { + this._renderSuggestions(query, suggestions); + } else if (!this.$lastSuggestion.length && this.templates.notFound) { + this._renderNotFound(query); + } + this.trigger("rendered", suggestions, true, this.name); + }, + _renderSuggestions: function renderSuggestions(query, suggestions) { + var $fragment; + $fragment = this._getSuggestionsFragment(query, suggestions); + this.$lastSuggestion = $fragment.children().last(); + this.$el.html($fragment).prepend(this._getHeader(query, suggestions)).append(this._getFooter(query, suggestions)); + }, + _appendSuggestions: function appendSuggestions(query, suggestions) { + var $fragment, $lastSuggestion; + $fragment = this._getSuggestionsFragment(query, suggestions); + $lastSuggestion = $fragment.children().last(); + this.$lastSuggestion.after($fragment); + this.$lastSuggestion = $lastSuggestion; + }, + _renderPending: function renderPending(query) { + var template = this.templates.pending; + this._resetLastSuggestion(); + template && this.$el.html(template({ + query: query, + dataset: this.name + })); + }, + _renderNotFound: function renderNotFound(query) { + var template = this.templates.notFound; + this._resetLastSuggestion(); + template && this.$el.html(template({ + query: query, + dataset: this.name + })); + }, + _empty: function empty() { + this.$el.empty(); + this._resetLastSuggestion(); + }, + _getSuggestionsFragment: function getSuggestionsFragment(query, suggestions) { + var that = this, fragment; + fragment = document.createDocumentFragment(); + _.each(suggestions, function getSuggestionNode(suggestion) { + var $el, context; + context = that._injectQuery(query, suggestion); + $el = $(that.templates.suggestion(context)).data(keys.dataset, that.name).data(keys.obj, suggestion).data(keys.val, that.displayFn(suggestion)).addClass(that.classes.suggestion + " " + that.classes.selectable); + fragment.appendChild($el[0]); + }); + this.highlight && highlight({ + className: this.classes.highlight, + node: fragment, + pattern: query + }); + return $(fragment); + }, + _getFooter: function getFooter(query, suggestions) { + return this.templates.footer ? this.templates.footer({ + query: query, + suggestions: suggestions, + dataset: this.name + }) : null; + }, + _getHeader: function getHeader(query, suggestions) { + return this.templates.header ? this.templates.header({ + query: query, + suggestions: suggestions, + dataset: this.name + }) : null; + }, + _resetLastSuggestion: function resetLastSuggestion() { + this.$lastSuggestion = $(); + }, + _injectQuery: function injectQuery(query, obj) { + return _.isObject(obj) ? _.mixin({ + _query: query + }, obj) : obj; + }, + update: function update(query) { + var that = this, canceled = false, syncCalled = false, rendered = 0; + this.cancel(); + this.cancel = function cancel() { + canceled = true; + that.cancel = $.noop; + that.async && that.trigger("asyncCanceled", query, that.name); + }; + this.source(query, sync, async); + !syncCalled && sync([]); + function sync(suggestions) { + if (syncCalled) { + return; + } + syncCalled = true; + suggestions = (suggestions || []).slice(0, that.limit); + rendered = suggestions.length; + that._overwrite(query, suggestions); + if (rendered < that.limit && that.async) { + that.trigger("asyncRequested", query, that.name); + } + } + function async(suggestions) { + suggestions = suggestions || []; + if (!canceled && rendered < that.limit) { + that.cancel = $.noop; + var idx = Math.abs(rendered - that.limit); + rendered += idx; + that._append(query, suggestions.slice(0, idx)); + that.async && that.trigger("asyncReceived", query, that.name); + } + } + }, + cancel: $.noop, + clear: function clear() { + this._empty(); + this.cancel(); + this.trigger("cleared"); + }, + isEmpty: function isEmpty() { + return this.$el.is(":empty"); + }, + destroy: function destroy() { + this.$el = $("
"); + } + }); + return Dataset; + function getDisplayFn(display) { + display = display || _.stringify; + return _.isFunction(display) ? display : displayFn; + function displayFn(obj) { + return obj[display]; + } + } + function getTemplates(templates, displayFn) { + return { + notFound: templates.notFound && _.templatify(templates.notFound), + pending: templates.pending && _.templatify(templates.pending), + header: templates.header && _.templatify(templates.header), + footer: templates.footer && _.templatify(templates.footer), + suggestion: templates.suggestion ? userSuggestionTemplate : suggestionTemplate + }; + function userSuggestionTemplate(context) { + var template = templates.suggestion; + return $(template(context)).attr("id", _.guid()); + } + function suggestionTemplate(context) { + return $('
').attr("id", _.guid()).text(displayFn(context)); + } + } + function isValidName(str) { + return /^[_a-zA-Z0-9-]+$/.test(str); + } + }(); + var Menu = function() { + "use strict"; + function Menu(o, www) { + var that = this; + o = o || {}; + if (!o.node) { + $.error("node is required"); + } + www.mixin(this); + this.$node = $(o.node); + this.query = null; + this.datasets = _.map(o.datasets, initializeDataset); + function initializeDataset(oDataset) { + var node = that.$node.find(oDataset.node).first(); + oDataset.node = node.length ? node : $("
").appendTo(that.$node); + return new Dataset(oDataset, www); + } + } + _.mixin(Menu.prototype, EventEmitter, { + _onSelectableClick: function onSelectableClick($e) { + this.trigger("selectableClicked", $($e.currentTarget)); + }, + _onRendered: function onRendered(type, dataset, suggestions, async) { + this.$node.toggleClass(this.classes.empty, this._allDatasetsEmpty()); + this.trigger("datasetRendered", dataset, suggestions, async); + }, + _onCleared: function onCleared() { + this.$node.toggleClass(this.classes.empty, this._allDatasetsEmpty()); + this.trigger("datasetCleared"); + }, + _propagate: function propagate() { + this.trigger.apply(this, arguments); + }, + _allDatasetsEmpty: function allDatasetsEmpty() { + return _.every(this.datasets, _.bind(function isDatasetEmpty(dataset) { + var isEmpty = dataset.isEmpty(); + this.$node.attr("aria-expanded", !isEmpty); + return isEmpty; + }, this)); + }, + _getSelectables: function getSelectables() { + return this.$node.find(this.selectors.selectable); + }, + _removeCursor: function _removeCursor() { + var $selectable = this.getActiveSelectable(); + $selectable && $selectable.removeClass(this.classes.cursor); + }, + _ensureVisible: function ensureVisible($el) { + var elTop, elBottom, nodeScrollTop, nodeHeight; + elTop = $el.position().top; + elBottom = elTop + $el.outerHeight(true); + nodeScrollTop = this.$node.scrollTop(); + nodeHeight = this.$node.height() + parseInt(this.$node.css("paddingTop"), 10) + parseInt(this.$node.css("paddingBottom"), 10); + if (elTop < 0) { + this.$node.scrollTop(nodeScrollTop + elTop); + } else if (nodeHeight < elBottom) { + this.$node.scrollTop(nodeScrollTop + (elBottom - nodeHeight)); + } + }, + bind: function() { + var that = this, onSelectableClick; + onSelectableClick = _.bind(this._onSelectableClick, this); + this.$node.on("click.tt", this.selectors.selectable, onSelectableClick); + this.$node.on("mouseover", this.selectors.selectable, function() { + that.setCursor($(this)); + }); + this.$node.on("mouseleave", function() { + that._removeCursor(); + }); + _.each(this.datasets, function(dataset) { + dataset.onSync("asyncRequested", that._propagate, that).onSync("asyncCanceled", that._propagate, that).onSync("asyncReceived", that._propagate, that).onSync("rendered", that._onRendered, that).onSync("cleared", that._onCleared, that); + }); + return this; + }, + isOpen: function isOpen() { + return this.$node.hasClass(this.classes.open); + }, + open: function open() { + this.$node.scrollTop(0); + this.$node.addClass(this.classes.open); + }, + close: function close() { + this.$node.attr("aria-expanded", false); + this.$node.removeClass(this.classes.open); + this._removeCursor(); + }, + setLanguageDirection: function setLanguageDirection(dir) { + this.$node.attr("dir", dir); + }, + selectableRelativeToCursor: function selectableRelativeToCursor(delta) { + var $selectables, $oldCursor, oldIndex, newIndex; + $oldCursor = this.getActiveSelectable(); + $selectables = this._getSelectables(); + oldIndex = $oldCursor ? $selectables.index($oldCursor) : -1; + newIndex = oldIndex + delta; + newIndex = (newIndex + 1) % ($selectables.length + 1) - 1; + newIndex = newIndex < -1 ? $selectables.length - 1 : newIndex; + return newIndex === -1 ? null : $selectables.eq(newIndex); + }, + setCursor: function setCursor($selectable) { + this._removeCursor(); + if ($selectable = $selectable && $selectable.first()) { + $selectable.addClass(this.classes.cursor); + this._ensureVisible($selectable); + } + }, + getSelectableData: function getSelectableData($el) { + return $el && $el.length ? Dataset.extractData($el) : null; + }, + getActiveSelectable: function getActiveSelectable() { + var $selectable = this._getSelectables().filter(this.selectors.cursor).first(); + return $selectable.length ? $selectable : null; + }, + getTopSelectable: function getTopSelectable() { + var $selectable = this._getSelectables().first(); + return $selectable.length ? $selectable : null; + }, + update: function update(query) { + var isValidUpdate = query !== this.query; + if (isValidUpdate) { + this.query = query; + _.each(this.datasets, updateDataset); + } + return isValidUpdate; + function updateDataset(dataset) { + dataset.update(query); + } + }, + empty: function empty() { + _.each(this.datasets, clearDataset); + this.query = null; + this.$node.addClass(this.classes.empty); + function clearDataset(dataset) { + dataset.clear(); + } + }, + destroy: function destroy() { + this.$node.off(".tt"); + this.$node = $("
"); + _.each(this.datasets, destroyDataset); + function destroyDataset(dataset) { + dataset.destroy(); + } + } + }); + return Menu; + }(); + var Status = function() { + "use strict"; + function Status(options) { + this.$el = $("", { + role: "status", + "aria-live": "polite" + }).css({ + position: "absolute", + padding: "0", + border: "0", + height: "1px", + width: "1px", + "margin-bottom": "-1px", + "margin-right": "-1px", + overflow: "hidden", + clip: "rect(0 0 0 0)", + "white-space": "nowrap" + }); + options.$input.after(this.$el); + _.each(options.menu.datasets, _.bind(function(dataset) { + if (dataset.onSync) { + dataset.onSync("rendered", _.bind(this.update, this)); + dataset.onSync("cleared", _.bind(this.cleared, this)); + } + }, this)); + } + _.mixin(Status.prototype, { + update: function update(event, suggestions) { + var length = suggestions.length; + var words; + if (length === 1) { + words = { + result: "result", + is: "is" + }; + } else { + words = { + result: "results", + is: "are" + }; + } + this.$el.text(length + " " + words.result + " " + words.is + " available, use up and down arrow keys to navigate."); + }, + cleared: function() { + this.$el.text(""); + } + }); + return Status; + }(); + var DefaultMenu = function() { + "use strict"; + var s = Menu.prototype; + function DefaultMenu() { + Menu.apply(this, [].slice.call(arguments, 0)); + } + _.mixin(DefaultMenu.prototype, Menu.prototype, { + open: function open() { + !this._allDatasetsEmpty() && this._show(); + return s.open.apply(this, [].slice.call(arguments, 0)); + }, + close: function close() { + this._hide(); + return s.close.apply(this, [].slice.call(arguments, 0)); + }, + _onRendered: function onRendered() { + if (this._allDatasetsEmpty()) { + this._hide(); + } else { + this.isOpen() && this._show(); + } + return s._onRendered.apply(this, [].slice.call(arguments, 0)); + }, + _onCleared: function onCleared() { + if (this._allDatasetsEmpty()) { + this._hide(); + } else { + this.isOpen() && this._show(); + } + return s._onCleared.apply(this, [].slice.call(arguments, 0)); + }, + setLanguageDirection: function setLanguageDirection(dir) { + this.$node.css(dir === "ltr" ? this.css.ltr : this.css.rtl); + return s.setLanguageDirection.apply(this, [].slice.call(arguments, 0)); + }, + _hide: function hide() { + this.$node.hide(); + }, + _show: function show() { + this.$node.css("display", "block"); + } + }); + return DefaultMenu; + }(); + var Typeahead = function() { + "use strict"; + function Typeahead(o, www) { + var onFocused, onBlurred, onEnterKeyed, onTabKeyed, onEscKeyed, onUpKeyed, onDownKeyed, onLeftKeyed, onRightKeyed, onQueryChanged, onWhitespaceChanged; + o = o || {}; + if (!o.input) { + $.error("missing input"); + } + if (!o.menu) { + $.error("missing menu"); + } + if (!o.eventBus) { + $.error("missing event bus"); + } + www.mixin(this); + this.eventBus = o.eventBus; + this.minLength = _.isNumber(o.minLength) ? o.minLength : 1; + this.input = o.input; + this.menu = o.menu; + this.enabled = true; + this.autoselect = !!o.autoselect; + this.active = false; + this.input.hasFocus() && this.activate(); + this.dir = this.input.getLangDir(); + this._hacks(); + this.menu.bind().onSync("selectableClicked", this._onSelectableClicked, this).onSync("asyncRequested", this._onAsyncRequested, this).onSync("asyncCanceled", this._onAsyncCanceled, this).onSync("asyncReceived", this._onAsyncReceived, this).onSync("datasetRendered", this._onDatasetRendered, this).onSync("datasetCleared", this._onDatasetCleared, this); + onFocused = c(this, "activate", "open", "_onFocused"); + onBlurred = c(this, "deactivate", "_onBlurred"); + onEnterKeyed = c(this, "isActive", "isOpen", "_onEnterKeyed"); + onTabKeyed = c(this, "isActive", "isOpen", "_onTabKeyed"); + onEscKeyed = c(this, "isActive", "_onEscKeyed"); + onUpKeyed = c(this, "isActive", "open", "_onUpKeyed"); + onDownKeyed = c(this, "isActive", "open", "_onDownKeyed"); + onLeftKeyed = c(this, "isActive", "isOpen", "_onLeftKeyed"); + onRightKeyed = c(this, "isActive", "isOpen", "_onRightKeyed"); + onQueryChanged = c(this, "_openIfActive", "_onQueryChanged"); + onWhitespaceChanged = c(this, "_openIfActive", "_onWhitespaceChanged"); + this.input.bind().onSync("focused", onFocused, this).onSync("blurred", onBlurred, this).onSync("enterKeyed", onEnterKeyed, this).onSync("tabKeyed", onTabKeyed, this).onSync("escKeyed", onEscKeyed, this).onSync("upKeyed", onUpKeyed, this).onSync("downKeyed", onDownKeyed, this).onSync("leftKeyed", onLeftKeyed, this).onSync("rightKeyed", onRightKeyed, this).onSync("queryChanged", onQueryChanged, this).onSync("whitespaceChanged", onWhitespaceChanged, this).onSync("langDirChanged", this._onLangDirChanged, this); + } + _.mixin(Typeahead.prototype, { + _hacks: function hacks() { + var $input, $menu; + $input = this.input.$input || $("
"); + $menu = this.menu.$node || $("
"); + $input.on("blur.tt", function($e) { + var active, isActive, hasActive; + active = document.activeElement; + isActive = $menu.is(active); + hasActive = $menu.has(active).length > 0; + if (_.isMsie() && (isActive || hasActive)) { + $e.preventDefault(); + $e.stopImmediatePropagation(); + _.defer(function() { + $input.focus(); + }); + } + }); + $menu.on("mousedown.tt", function($e) { + $e.preventDefault(); + }); + }, + _onSelectableClicked: function onSelectableClicked(type, $el) { + this.select($el); + }, + _onDatasetCleared: function onDatasetCleared() { + this._updateHint(); + }, + _onDatasetRendered: function onDatasetRendered(type, suggestions, async, dataset) { + this._updateHint(); + if (this.autoselect) { + var cursorClass = this.selectors.cursor.substr(1); + this.menu.$node.find(this.selectors.suggestion).first().addClass(cursorClass); + } + this.eventBus.trigger("render", suggestions, async, dataset); + }, + _onAsyncRequested: function onAsyncRequested(type, dataset, query) { + this.eventBus.trigger("asyncrequest", query, dataset); + }, + _onAsyncCanceled: function onAsyncCanceled(type, dataset, query) { + this.eventBus.trigger("asynccancel", query, dataset); + }, + _onAsyncReceived: function onAsyncReceived(type, dataset, query) { + this.eventBus.trigger("asyncreceive", query, dataset); + }, + _onFocused: function onFocused() { + this._minLengthMet() && this.menu.update(this.input.getQuery()); + }, + _onBlurred: function onBlurred() { + if (this.input.hasQueryChangedSinceLastFocus()) { + this.eventBus.trigger("change", this.input.getQuery()); + } + }, + _onEnterKeyed: function onEnterKeyed(type, $e) { + var $selectable; + if ($selectable = this.menu.getActiveSelectable()) { + if (this.select($selectable)) { + $e.preventDefault(); + $e.stopPropagation(); + } + } else if (this.autoselect) { + if (this.select(this.menu.getTopSelectable())) { + $e.preventDefault(); + $e.stopPropagation(); + } + } + }, + _onTabKeyed: function onTabKeyed(type, $e) { + var $selectable; + if ($selectable = this.menu.getActiveSelectable()) { + this.select($selectable) && $e.preventDefault(); + } else if (this.autoselect) { + if ($selectable = this.menu.getTopSelectable()) { + this.autocomplete($selectable) && $e.preventDefault(); + } + } + }, + _onEscKeyed: function onEscKeyed() { + this.close(); + }, + _onUpKeyed: function onUpKeyed() { + this.moveCursor(-1); + }, + _onDownKeyed: function onDownKeyed() { + this.moveCursor(+1); + }, + _onLeftKeyed: function onLeftKeyed() { + if (this.dir === "rtl" && this.input.isCursorAtEnd()) { + this.autocomplete(this.menu.getActiveSelectable() || this.menu.getTopSelectable()); + } + }, + _onRightKeyed: function onRightKeyed() { + if (this.dir === "ltr" && this.input.isCursorAtEnd()) { + this.autocomplete(this.menu.getActiveSelectable() || this.menu.getTopSelectable()); + } + }, + _onQueryChanged: function onQueryChanged(e, query) { + this._minLengthMet(query) ? this.menu.update(query) : this.menu.empty(); + }, + _onWhitespaceChanged: function onWhitespaceChanged() { + this._updateHint(); + }, + _onLangDirChanged: function onLangDirChanged(e, dir) { + if (this.dir !== dir) { + this.dir = dir; + this.menu.setLanguageDirection(dir); + } + }, + _openIfActive: function openIfActive() { + this.isActive() && this.open(); + }, + _minLengthMet: function minLengthMet(query) { + query = _.isString(query) ? query : this.input.getQuery() || ""; + return query.length >= this.minLength; + }, + _updateHint: function updateHint() { + var $selectable, data, val, query, escapedQuery, frontMatchRegEx, match; + $selectable = this.menu.getTopSelectable(); + data = this.menu.getSelectableData($selectable); + val = this.input.getInputValue(); + if (data && !_.isBlankString(val) && !this.input.hasOverflow()) { + query = Input.normalizeQuery(val); + escapedQuery = _.escapeRegExChars(query); + frontMatchRegEx = new RegExp("^(?:" + escapedQuery + ")(.+$)", "i"); + match = frontMatchRegEx.exec(data.val); + match && this.input.setHint(val + match[1]); + } else { + this.input.clearHint(); + } + }, + isEnabled: function isEnabled() { + return this.enabled; + }, + enable: function enable() { + this.enabled = true; + }, + disable: function disable() { + this.enabled = false; + }, + isActive: function isActive() { + return this.active; + }, + activate: function activate() { + if (this.isActive()) { + return true; + } else if (!this.isEnabled() || this.eventBus.before("active")) { + return false; + } else { + this.active = true; + this.eventBus.trigger("active"); + return true; + } + }, + deactivate: function deactivate() { + if (!this.isActive()) { + return true; + } else if (this.eventBus.before("idle")) { + return false; + } else { + this.active = false; + this.close(); + this.eventBus.trigger("idle"); + return true; + } + }, + isOpen: function isOpen() { + return this.menu.isOpen(); + }, + open: function open() { + if (!this.isOpen() && !this.eventBus.before("open")) { + this.input.setAriaExpanded(true); + this.menu.open(); + this._updateHint(); + this.eventBus.trigger("open"); + } + return this.isOpen(); + }, + close: function close() { + if (this.isOpen() && !this.eventBus.before("close")) { + this.input.setAriaExpanded(false); + this.menu.close(); + this.input.clearHint(); + this.input.resetInputValue(); + this.eventBus.trigger("close"); + } + return !this.isOpen(); + }, + setVal: function setVal(val) { + this.input.setQuery(_.toStr(val)); + }, + getVal: function getVal() { + return this.input.getQuery(); + }, + select: function select($selectable) { + var data = this.menu.getSelectableData($selectable); + if (data && !this.eventBus.before("select", data.obj, data.dataset)) { + this.input.setQuery(data.val, true); + this.eventBus.trigger("select", data.obj, data.dataset); + this.close(); + return true; + } + return false; + }, + autocomplete: function autocomplete($selectable) { + var query, data, isValid; + query = this.input.getQuery(); + data = this.menu.getSelectableData($selectable); + isValid = data && query !== data.val; + if (isValid && !this.eventBus.before("autocomplete", data.obj, data.dataset)) { + this.input.setQuery(data.val); + this.eventBus.trigger("autocomplete", data.obj, data.dataset); + return true; + } + return false; + }, + moveCursor: function moveCursor(delta) { + var query, $candidate, data, suggestion, datasetName, cancelMove, id; + query = this.input.getQuery(); + $candidate = this.menu.selectableRelativeToCursor(delta); + data = this.menu.getSelectableData($candidate); + suggestion = data ? data.obj : null; + datasetName = data ? data.dataset : null; + id = $candidate ? $candidate.attr("id") : null; + this.input.trigger("cursorchange", id); + cancelMove = this._minLengthMet() && this.menu.update(query); + if (!cancelMove && !this.eventBus.before("cursorchange", suggestion, datasetName)) { + this.menu.setCursor($candidate); + if (data) { + if (typeof data.val === "string") { + this.input.setInputValue(data.val); + } + } else { + this.input.resetInputValue(); + this._updateHint(); + } + this.eventBus.trigger("cursorchange", suggestion, datasetName); + return true; + } + return false; + }, + destroy: function destroy() { + this.input.destroy(); + this.menu.destroy(); + } + }); + return Typeahead; + function c(ctx) { + var methods = [].slice.call(arguments, 1); + return function() { + var args = [].slice.call(arguments); + _.each(methods, function(method) { + return ctx[method].apply(ctx, args); + }); + }; + } + }(); + (function() { + "use strict"; + var old, keys, methods; + old = $.fn.typeahead; + keys = { + www: "tt-www", + attrs: "tt-attrs", + typeahead: "tt-typeahead" + }; + methods = { + initialize: function initialize(o, datasets) { + var www; + datasets = _.isArray(datasets) ? datasets : [].slice.call(arguments, 1); + o = o || {}; + www = WWW(o.classNames); + return this.each(attach); + function attach() { + var $input, $wrapper, $hint, $menu, defaultHint, defaultMenu, eventBus, input, menu, status, typeahead, MenuConstructor; + _.each(datasets, function(d) { + d.highlight = !!o.highlight; + }); + $input = $(this); + $wrapper = $(www.html.wrapper); + $hint = $elOrNull(o.hint); + $menu = $elOrNull(o.menu); + defaultHint = o.hint !== false && !$hint; + defaultMenu = o.menu !== false && !$menu; + defaultHint && ($hint = buildHintFromInput($input, www)); + defaultMenu && ($menu = $(www.html.menu).css(www.css.menu)); + $hint && $hint.val(""); + $input = prepInput($input, www); + if (defaultHint || defaultMenu) { + $wrapper.css(www.css.wrapper); + $input.css(defaultHint ? www.css.input : www.css.inputWithNoHint); + $input.wrap($wrapper).parent().prepend(defaultHint ? $hint : null).append(defaultMenu ? $menu : null); + } + MenuConstructor = defaultMenu ? DefaultMenu : Menu; + eventBus = new EventBus({ + el: $input + }); + input = new Input({ + hint: $hint, + input: $input, + menu: $menu + }, www); + menu = new MenuConstructor({ + node: $menu, + datasets: datasets + }, www); + status = new Status({ + $input: $input, + menu: menu + }); + typeahead = new Typeahead({ + input: input, + menu: menu, + eventBus: eventBus, + minLength: o.minLength, + autoselect: o.autoselect + }, www); + $input.data(keys.www, www); + $input.data(keys.typeahead, typeahead); + } + }, + isEnabled: function isEnabled() { + var enabled; + ttEach(this.first(), function(t) { + enabled = t.isEnabled(); + }); + return enabled; + }, + enable: function enable() { + ttEach(this, function(t) { + t.enable(); + }); + return this; + }, + disable: function disable() { + ttEach(this, function(t) { + t.disable(); + }); + return this; + }, + isActive: function isActive() { + var active; + ttEach(this.first(), function(t) { + active = t.isActive(); + }); + return active; + }, + activate: function activate() { + ttEach(this, function(t) { + t.activate(); + }); + return this; + }, + deactivate: function deactivate() { + ttEach(this, function(t) { + t.deactivate(); + }); + return this; + }, + isOpen: function isOpen() { + var open; + ttEach(this.first(), function(t) { + open = t.isOpen(); + }); + return open; + }, + open: function open() { + ttEach(this, function(t) { + t.open(); + }); + return this; + }, + close: function close() { + ttEach(this, function(t) { + t.close(); + }); + return this; + }, + select: function select(el) { + var success = false, $el = $(el); + ttEach(this.first(), function(t) { + success = t.select($el); + }); + return success; + }, + autocomplete: function autocomplete(el) { + var success = false, $el = $(el); + ttEach(this.first(), function(t) { + success = t.autocomplete($el); + }); + return success; + }, + moveCursor: function moveCursoe(delta) { + var success = false; + ttEach(this.first(), function(t) { + success = t.moveCursor(delta); + }); + return success; + }, + val: function val(newVal) { + var query; + if (!arguments.length) { + ttEach(this.first(), function(t) { + query = t.getVal(); + }); + return query; + } else { + ttEach(this, function(t) { + t.setVal(_.toStr(newVal)); + }); + return this; + } + }, + destroy: function destroy() { + ttEach(this, function(typeahead, $input) { + revert($input); + typeahead.destroy(); + }); + return this; + } + }; + $.fn.typeahead = function(method) { + if (methods[method]) { + return methods[method].apply(this, [].slice.call(arguments, 1)); + } else { + return methods.initialize.apply(this, arguments); + } + }; + $.fn.typeahead.noConflict = function noConflict() { + $.fn.typeahead = old; + return this; + }; + function ttEach($els, fn) { + $els.each(function() { + var $input = $(this), typeahead; + (typeahead = $input.data(keys.typeahead)) && fn(typeahead, $input); + }); + } + function buildHintFromInput($input, www) { + return $input.clone().addClass(www.classes.hint).removeData().css(www.css.hint).css(getBackgroundStyles($input)).prop({ + readonly: true, + required: false + }).removeAttr("id name placeholder").removeClass("required").attr({ + spellcheck: "false", + tabindex: -1 + }); + } + function prepInput($input, www) { + $input.data(keys.attrs, { + dir: $input.attr("dir"), + autocomplete: $input.attr("autocomplete"), + spellcheck: $input.attr("spellcheck"), + style: $input.attr("style") + }); + $input.addClass(www.classes.input).attr({ + spellcheck: false + }); + try { + !$input.attr("dir") && $input.attr("dir", "auto"); + } catch (e) {} + return $input; + } + function getBackgroundStyles($el) { + return { + backgroundAttachment: $el.css("background-attachment"), + backgroundClip: $el.css("background-clip"), + backgroundColor: $el.css("background-color"), + backgroundImage: $el.css("background-image"), + backgroundOrigin: $el.css("background-origin"), + backgroundPosition: $el.css("background-position"), + backgroundRepeat: $el.css("background-repeat"), + backgroundSize: $el.css("background-size") + }; + } + function revert($input) { + var www, $wrapper; + www = $input.data(keys.www); + $wrapper = $input.parent().filter(www.selectors.wrapper); + _.each($input.data(keys.attrs), function(val, key) { + _.isUndefined(val) ? $input.removeAttr(key) : $input.attr(key, val); + }); + $input.removeData(keys.typeahead).removeData(keys.www).removeData(keys.attr).removeClass(www.classes.input); + if ($wrapper.length) { + $input.detach().insertAfter($wrapper); + $wrapper.remove(); + } + } + function $elOrNull(obj) { + var isValid, $el; + isValid = _.isJQuery(obj) || _.isElement(obj); + $el = isValid ? $(obj).first() : []; + return $el.length ? $el : null; + } + })(); +}); \ No newline at end of file diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/search.json b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/search.json new file mode 100644 index 0000000000..0c9c6c854d --- /dev/null +++ b/6.23.2/docsets/Braintree.docset/Contents/Resources/Documents/search.json @@ -0,0 +1 @@ +{"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV19isPayPalRecommendedSbvp":{"name":"isPayPalRecommended","abstract":"\u003cp\u003eIf true, display the PayPal button with high priority.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV18isVenmoRecommendedSbvp":{"name":"isVenmoRecommended","abstract":"\u003cp\u003eIf true, dislpay the Venmo button with high priority.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV25isEligibleInPayPalNetworkSbvp":{"name":"isEligibleInPayPalNetwork","abstract":"\u003cp\u003eIf true, buyer is a member of the PayPal Inc. (PayPal, Venmo, Honey) network.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/Phone.html#/s:24BraintreeShopperInsights5PhoneV11countryCode14nationalNumberACSS_SStcfc":{"name":"init(countryCode:nationalNumber:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest.Phone\u003c/code\u003e.\u003c/p\u003e","parent_name":"Phone"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5email5phoneACSS_AA5PhoneVtcfc":{"name":"init(email:phone:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5emailACSS_tcfc":{"name":"init(email:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5phoneAcA5PhoneV_tcfc":{"name":"init(phone:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTPayPalMessagingRequest.html#/s:24BraintreePayPalMessaging05BTPaycD7RequestV6amount8pageType05offerI012buyerCountry04logoI013textAlignment5colorACSdSg_AA0ecd4PageI0OSgAA0ecd5OfferI0OSgSSSgAA0ecd4LogoI0OAA0ecd4TextO0OAA0ecD5ColorOtcfc":{"name":"init(amount:pageType:offerType:buyerCountry:logoType:textAlignment:color:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTPayPalMessaging\u003c/code\u003e\u003c/p\u003e","parent_name":"BTPayPalMessagingRequest"},"Structs/BTPayPalMessagingRequest.html":{"name":"BTPayPalMessagingRequest","abstract":"\u003cp\u003eUsed to initialize a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e"},"Structs/BTShopperInsightsRequest.html":{"name":"BTShopperInsightsRequest","abstract":"\u003cp\u003eBuyer data required to use the Shopper Insights feature.\u003c/p\u003e"},"Structs/Phone.html":{"name":"Phone","abstract":"\u003cp\u003eBuyer\u0026rsquo;s phone number details for use with the Shopper Insights feature.\u003c/p\u003e"},"Structs/BTShopperInsightsResult.html":{"name":"BTShopperInsightsResult","abstract":"\u003cp\u003eA summary of the buyer\u0026rsquo;s recommended payment methods.\u003c/p\u003e"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9didSelectyyAA0ecD4ViewCF":{"name":"didSelect(_:)","abstract":"\u003cp\u003eFunction invoked when the message is tapped\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9willApplyyyAA0ecD4ViewCF":{"name":"willApply(_:)","abstract":"\u003cp\u003eFunction invoked when a user has begun the PayPal Credit application\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP10willAppearyyAA0ecD4ViewCF":{"name":"willAppear(_:)","abstract":"\u003cp\u003eFunction invoked when the message first starts to fetch data\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9didAppearyyAA0ecD4ViewCF":{"name":"didAppear(_:)","abstract":"\u003cp\u003eFunction invoked when the message has rendered\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP7onError_5erroryAA0ecD4ViewC_s0H0_ptF":{"name":"onError(_:error:)","abstract":"\u003cp\u003eFunction invoked when the message encounters an error\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTThreeDSecureRequestDelegate.html#/c:@M@BraintreeThreeDSecure@objc(pl)BTThreeDSecureRequestDelegate(im)onLookupComplete:lookupResult:next:":{"name":"onLookupComplete(_:lookupResult:next:)","abstract":"\u003cp\u003eRequired delegate method which returns the ThreeDSecure lookup result before the flow continues.","parent_name":"BTThreeDSecureRequestDelegate"},"Protocols/BTLocalPaymentRequestDelegate.html#/c:@M@BraintreeLocalPayment@objc(pl)BTLocalPaymentRequestDelegate(im)localPaymentStarted:paymentID:start:":{"name":"localPaymentStarted(_:paymentID:start:)","abstract":"\u003cp\u003eRequired delegate method which returns the payment ID before the flow starts.\u003c/p\u003e","parent_name":"BTLocalPaymentRequestDelegate"},"Protocols/BTLocalPaymentRequestDelegate.html":{"name":"BTLocalPaymentRequestDelegate"},"Protocols/BTThreeDSecureRequestDelegate.html":{"name":"BTThreeDSecureRequestDelegate","abstract":"\u003cp\u003eProtocol for ThreeDSecure Request flow\u003c/p\u003e"},"Protocols/BTPayPalMessagingDelegate.html":{"name":"BTPayPalMessagingDelegate","abstract":"\u003cp\u003eProtocol for \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e events\u003c/p\u003e"},"Extensions/BTThreeDSecureV2Provider.html#/s:21BraintreeThreeDSecure07BTThreeC10V2ProviderC15cardinalSessionAD15stepUpValidated9serverJWTySo08CardinalH0CSg_So0N8ResponseCSgSSSgtF":{"name":"cardinalSession(cardinalSession:stepUpValidated:serverJWT:)","parent_name":"BTThreeDSecureV2Provider"},"Extensions.html#/c:objc(cs)UIApplication":{"name":"UIApplication"},"Extensions/BTThreeDSecureV2Provider.html":{"name":"BTThreeDSecureV2Provider"},"Enums/BTShopperInsightsError.html#/s:24BraintreeShopperInsights09BTShopperC5ErrorO17emptyBodyReturnedyA2CmF":{"name":"emptyBodyReturned","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:24BraintreeShopperInsights09BTShopperC5ErrorO20invalidAuthorizationyA2CmF":{"name":"invalidAuthorization","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTShopperInsightsError"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO4leftyA2CmF":{"name":"left","abstract":"\u003cp\u003eText aligned to the left\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO6centeryA2CmF":{"name":"center","abstract":"\u003cp\u003eText aligned to the center\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO5rightyA2CmF":{"name":"right","abstract":"\u003cp\u003eText aligned to the right\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO4homeyA2CmF":{"name":"home","abstract":"\u003cp\u003eHome view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO14productDetailsyA2CmF":{"name":"productDetails","abstract":"\u003cp\u003eIndividual product details view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO4cartyA2CmF":{"name":"cart","abstract":"\u003cp\u003eShopping cart view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO8miniCartyA2CmF":{"name":"miniCart","abstract":"\u003cp\u003ePopover shopping cart view that covers part of the view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO8checkoutyA2CmF":{"name":"checkout","abstract":"\u003cp\u003eCheckout view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO13searchResultsyA2CmF":{"name":"searchResults","abstract":"\u003cp\u003eSearch results\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO17payLaterShortTermyA2CmF":{"name":"payLaterShortTerm","abstract":"\u003cp\u003ePay Later short term installment\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO16payLaterLongTermyA2CmF":{"name":"payLaterLongTerm","abstract":"\u003cp\u003ePay Later long term installments\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO08payLaterB5InOneyA2CmF":{"name":"payLaterPayInOne","abstract":"\u003cp\u003ePay Later deferred payment\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO03payC16CreditNoInterestyA2CmF":{"name":"payPalCreditNoInterest","abstract":"\u003cp\u003ePayPal Credit No Interest\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO6inlineyA2CmF":{"name":"inline","abstract":"\u003cp\u003ePayPal logo positioned inline within the message\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO7primaryyA2CmF":{"name":"primary","abstract":"\u003cp\u003ePrimary logo including both the PayPal monogram and logo\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO11alternativeyA2CmF":{"name":"alternative","abstract":"\u003cp\u003eAlternative logo including just the PayPal monogram\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO4noneyA2CmF":{"name":"none","abstract":"\u003cp\u003e\u0026ldquo;PayPal\u0026rdquo; as bold text inline with the message\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingError.html#/s:24BraintreePayPalMessaging05BTPaycD5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:24BraintreePayPalMessaging05BTPaycD5ErrorO03payC16ClientIDNotFoundyA2CmF":{"name":"payPalClientIDNotFound","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO5blackyA2CmF":{"name":"black","abstract":"\u003cp\u003eBlack text with a color logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO5whiteyA2CmF":{"name":"white","abstract":"\u003cp\u003eWhite text with a white logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO10monochromeyA2CmF":{"name":"monochrome","abstract":"\u003cp\u003eBlack text with a black logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO9grayscaleyA2CmF":{"name":"grayscale","abstract":"\u003cp\u003eBlack text with a desaturated logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTVenmoPaymentMethodUsage.html#/c:@M@BraintreeVenmo@E@BTVenmoPaymentMethodUsage@BTVenmoPaymentMethodUsageMultiUse":{"name":"multiUse","abstract":"\u003cp\u003eThe Venmo payment will be authorized for future payments and can be vaulted.\u003c/p\u003e","parent_name":"BTVenmoPaymentMethodUsage"},"Enums/BTVenmoPaymentMethodUsage.html#/c:@M@BraintreeVenmo@E@BTVenmoPaymentMethodUsage@BTVenmoPaymentMethodUsageSingleUse":{"name":"singleUse","abstract":"\u003cp\u003eThe Venmo payment will be authorized for a one-time payment and cannot be vaulted.\u003c/p\u003e","parent_name":"BTVenmoPaymentMethodUsage"},"Enums/BTVenmoLineItemKind.html#/c:@M@BraintreeVenmo@E@BTVenmoLineItemKind@BTVenmoLineItemKindDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTVenmoLineItemKind"},"Enums/BTVenmoLineItemKind.html#/c:@M@BraintreeVenmo@E@BTVenmoLineItemKind@BTVenmoLineItemKindCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTVenmoLineItemKind"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO15appNotAvailableyA2CmF":{"name":"appNotAvailable","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO24bundleDisplayNameMissingyA2CmF":{"name":"bundleDisplayNameMissing","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO16invalidReturnURLyACSScACmF":{"name":"invalidReturnURL(_:)","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO19invalidBodyReturnedyA2CmF":{"name":"invalidBodyReturned","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO18invalidRedirectURLyACSScACmF":{"name":"invalidRedirectURL(_:)","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO28enrichedCustomerDataDisabledyA2CmF":{"name":"enrichedCustomerDataDisabled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO27invalidRedirectURLParameteryA2CmF":{"name":"invalidRedirectURLParameter","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTVenmoError"},"Enums/BTVenmoAppSwitchError.html#/s:14BraintreeVenmo21BTVenmoAppSwitchErrorO14returnURLErroryACSi_SSSgtcACmF":{"name":"returnURLError(_:_:)","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTVenmoAppSwitchError"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeLogin":{"name":"login","abstract":"\u003cp\u003eLogin\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeBilling":{"name":"billing","abstract":"\u003cp\u003eBilling\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalPaymentType.html#/c:@M@BraintreePayPal@E@BTPayPalPaymentType@BTPayPalPaymentTypeCheckout":{"name":"checkout","abstract":"\u003cp\u003eCheckout\u003c/p\u003e","parent_name":"BTPayPalPaymentType"},"Enums/BTPayPalPaymentType.html#/c:@M@BraintreePayPal@E@BTPayPalPaymentType@BTPayPalPaymentTypeVault":{"name":"vault","abstract":"\u003cp\u003eVault\u003c/p\u003e","parent_name":"BTPayPalPaymentType"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNone":{"name":"none","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeDa_DK":{"name":"da_DK","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeDe_DE":{"name":"de_DE","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_AU":{"name":"en_AU","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_GB":{"name":"en_GB","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_US":{"name":"en_US","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEs_ES":{"name":"es_ES","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEs_XC":{"name":"es_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_CA":{"name":"fr_CA","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_FR":{"name":"fr_FR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_XC":{"name":"fr_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeId_ID":{"name":"id_ID","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeIt_IT":{"name":"it_IT","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeJa_JP":{"name":"ja_JP","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeKo_KR":{"name":"ko_KR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNl_NL":{"name":"nl_NL","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNo_NO":{"name":"no_NO","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePl_PL":{"name":"pl_PL","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePt_BR":{"name":"pt_BR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePt_PT":{"name":"pt_PT","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeRu_RU":{"name":"ru_RU","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeSv_SE":{"name":"sv_SE","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeTh_TH":{"name":"th_TH","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeTr_TR":{"name":"tr_TR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_CN":{"name":"zh_CN","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_HK":{"name":"zh_HK","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_TW":{"name":"zh_TW","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_XC":{"name":"zh_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_A":{"name":"UPC_A","abstract":"\u003cp\u003eUpc Type A\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_B":{"name":"UPC_B","abstract":"\u003cp\u003eUpc Type B\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_C":{"name":"UPC_C","abstract":"\u003cp\u003eUpc Type C\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_D":{"name":"UPC_D","abstract":"\u003cp\u003eUpc Type D\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_E":{"name":"UPC_E","abstract":"\u003cp\u003eUpc Type E\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_2":{"name":"UPC_2","abstract":"\u003cp\u003eUpc Type 2\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_5":{"name":"UPC_5","abstract":"\u003cp\u003eUpc Type 5\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemKind.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemKind@BTPayPalLineItemKindDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTPayPalLineItemKind"},"Enums/BTPayPalLineItemKind.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemKind@BTPayPalLineItemKindCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTPayPalLineItemKind"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO015httpPostRequestE0yACSDySSypGcACmF":{"name":"httpPostRequestError(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO10invalidURLyACSScACmF":{"name":"invalidURL(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO36asWebAuthenticationSessionURLInvalidyACSScACmF":{"name":"asWebAuthenticationSessionURLInvalid(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO16invalidURLActionyA2CmF":{"name":"invalidURLAction","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO010webSessionE0yACs0E0_pcACmF":{"name":"webSessionError(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO29appSwitchReturnURLPathInvalidyA2CmF":{"name":"appSwitchReturnURLPathInvalid","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO14missingBATokenyA2CmF":{"name":"missingBAToken","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO07missingbC7RequestyA2CmF":{"name":"missingPayPalRequest","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalRequestUserAction.html#/c:@M@BraintreePayPal@E@BTPayPalRequestUserAction@BTPayPalRequestUserActionNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalRequestUserAction"},"Enums/BTPayPalRequestUserAction.html#/c:@M@BraintreePayPal@E@BTPayPalRequestUserAction@BTPayPalRequestUserActionPayNow":{"name":"payNow","abstract":"\u003cp\u003ePay Now\u003c/p\u003e","parent_name":"BTPayPalRequestUserAction"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentAuthorize":{"name":"authorize","abstract":"\u003cp\u003eAuthorize\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentSale":{"name":"sale","abstract":"\u003cp\u003eSale\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentOrder":{"name":"order","abstract":"\u003cp\u003eOrder\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/s:15BraintreePayPal05BTPayC13RequestIntentO11stringValueSSvp":{"name":"stringValue","parent_name":"BTPayPalRequestIntent"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO11integrationyA2CmF":{"name":"integration","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO20customerInputInvalidyACSDySSypGcACmF":{"name":"customerInputInvalid(_:)","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO17cardAlreadyExistsyACSDySSypGcACmF":{"name":"cardAlreadyExists(_:)","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTCardError"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeVerify":{"name":"verify","abstract":"\u003cp\u003eVerify button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeContinue":{"name":"continue","abstract":"\u003cp\u003eContinue button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeNext":{"name":"next","abstract":"\u003cp\u003eNext button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeCancel":{"name":"cancel","abstract":"\u003cp\u003eCancel button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeResend":{"name":"resend","abstract":"\u003cp\u003eResend button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeNative":{"name":"native","abstract":"\u003cp\u003eNative\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeHtml":{"name":"html","abstract":"\u003cp\u003eHTML\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeBoth":{"name":"both","abstract":"\u003cp\u003eBoth\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodSameDay":{"name":"sameDay","abstract":"\u003cp\u003eSame Day\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodExpedited":{"name":"expedited","abstract":"\u003cp\u003eExpedited\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodPriority":{"name":"priority","abstract":"\u003cp\u003ePriority\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodGround":{"name":"ground","abstract":"\u003cp\u003eGround\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodElectronicDelivery":{"name":"electronicDelivery","abstract":"\u003cp\u003eElectronic Delivery\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodShipToStore":{"name":"shipToStore","abstract":"\u003cp\u003eShip to Store\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeLowValue":{"name":"lowValue","abstract":"\u003cp\u003eLow value\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeSecureCorporate":{"name":"secureCorporate","abstract":"\u003cp\u003eSecure corporate\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeTrustedBeneficiary":{"name":"trustedBeneficiary","abstract":"\u003cp\u003eTrusted beneficiary\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeTransactionRiskAnalysis":{"name":"transactionRiskAnalysis","abstract":"\u003cp\u003eTransaction risk analysis\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO12failedLookupyACSDySSypGcACmF":{"name":"failedLookup(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO20failedAuthenticationyACSScACmF":{"name":"failedAuthentication(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO13configurationyACSScACmF":{"name":"configuration(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO14noBodyReturnedyA2CmF":{"name":"noBodyReturned","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO16invalidAPIClientyA2CmF":{"name":"invalidAPIClient","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO20exceededTimeoutLimityA2CmF":{"name":"exceededTimeoutLimit","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeRequested":{"name":"requested","abstract":"\u003cp\u003eRequested\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeNotRequested":{"name":"notRequested","abstract":"\u003cp\u003eNot Requested\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO11integrationyA2CmF":{"name":"integration","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO13noAccountDatayA2CmF":{"name":"noAccountData","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO8canceledyACSScACmF":{"name":"canceled(_:)","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO18missingRedirectURLyA2CmF":{"name":"missingRedirectURL","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO16missingReturnURLyA2CmF":{"name":"missingReturnURL","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO010webSessionE0yACs0E0_pcACmF":{"name":"webSessionError(_:)","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO16errorDescriptionSSvp":{"name":"errorDescription","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTLocalPaymentError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO11unsupportedyA2CmF":{"name":"unsupported","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO02nobC13CardsReturnedyA2CmF":{"name":"noApplePayCardsReturned","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTApplePayError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO15encodingFailureyA2CmF":{"name":"encodingFailure","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTDataCollectorError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO13noRewardsDatayA2CmF":{"name":"noRewardsData","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAmericanExpressError"},"Enums/BTSEPADirectDebitMandateType.html#/c:@M@BraintreeSEPADirectDebit@E@BTSEPADirectDebitMandateType@BTSEPADirectDebitMandateTypeOneOff":{"name":"oneOff","parent_name":"BTSEPADirectDebitMandateType"},"Enums/BTSEPADirectDebitMandateType.html#/c:@M@BraintreeSEPADirectDebit@E@BTSEPADirectDebitMandateType@BTSEPADirectDebitMandateTypeRecurrent":{"name":"recurrent","parent_name":"BTSEPADirectDebitMandateType"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO15webFlowCanceledyA2CmF":{"name":"webFlowCanceled","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO16resultURLInvalidyA2CmF":{"name":"resultURLInvalid","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO17resultReturnedNilyA2CmF":{"name":"resultReturnedNil","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO18approvalURLInvalidyA2CmF":{"name":"approvalURLInvalid","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO23authenticationResultNilyA2CmF":{"name":"authenticationResultNil","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO14noBodyReturnedyA2CmF":{"name":"noBodyReturned","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTSEPADirectDebitError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO14invalidRequestyA2CmF":{"name":"invalidRequest","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO03payC10NotEnabledyA2CmF":{"name":"payPalNotEnabled","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO03payC16ClientIDNotFoundyA2CmF":{"name":"payPalClientIDNotFound","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO18invalidEnvironmentyA2CmF":{"name":"invalidEnvironment","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO19orderCreationFailedyACs0G0_pcACmF":{"name":"orderCreationFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO17checkoutSDKFailedyAC0bcE00G4InfoCcACmF":{"name":"checkoutSDKFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO18tokenizationFailedyACs0G0_pcACmF":{"name":"tokenizationFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO31parsingTokenizationResultFailedyA2CmF":{"name":"parsingTokenizationResultFailed","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO19invalidJSONResponseyA2CmF":{"name":"invalidJSONResponse","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO16missingReturnURLyA2CmF":{"name":"missingReturnURL","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO12indexInvalidyACSicACmF":{"name":"indexInvalid(_:)","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO10keyInvalidyACSScACmF":{"name":"keyInvalid(_:)","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTJSONError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO32responseContentTypeNotAcceptableyACSDySSypGcACmF":{"name":"responseContentTypeNotAcceptable(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11clientErroryACSDySSypGcACmF":{"name":"clientError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11serverErroryACSDySSypGcACmF":{"name":"serverError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO14missingBaseURLyACSDySSypGcACmF":{"name":"missingBaseURL(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO14rateLimitErroryACSDySSypGcACmF":{"name":"rateLimitError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO12dataNotFoundyA2CmF":{"name":"dataNotFound","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO19httpResponseInvalidyA2CmF":{"name":"httpResponseInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO16urlStringInvalidyA2CmF":{"name":"urlStringInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO19clientApiURLInvalidyA2CmF":{"name":"clientApiURLInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO31invalidAuthorizationFingerprintyA2CmF":{"name":"invalidAuthorizationFingerprint","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO18serializationErroryACSScACmF":{"name":"serializationError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11deallocatedyACSScACmF":{"name":"deallocated(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTHTTPError"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUnknown":{"name":"unknown","abstract":"\u003cp\u003eUnknown card\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkAMEX":{"name":"AMEX","abstract":"\u003cp\u003eAmerican Express\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkDinersClub":{"name":"dinersClub","abstract":"\u003cp\u003eDiners Club\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkDiscover":{"name":"discover","abstract":"\u003cp\u003eDiscover\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkMasterCard":{"name":"masterCard","abstract":"\u003cp\u003eMastercard\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkVisa":{"name":"visa","abstract":"\u003cp\u003eVisa\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkJCB":{"name":"JCB","abstract":"\u003cp\u003eJCB\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkLaser":{"name":"laser","abstract":"\u003cp\u003eLaser\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkMaestro":{"name":"maestro","abstract":"\u003cp\u003eMaestro\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUnionPay":{"name":"unionPay","abstract":"\u003cp\u003eUnion Pay\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkHiper":{"name":"hiper","abstract":"\u003cp\u003eHiper\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkHipercard":{"name":"hipercard","abstract":"\u003cp\u003eHipercard\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkSolo":{"name":"solo","abstract":"\u003cp\u003eSolo\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkSwitch":{"name":"switch","abstract":"\u003cp\u003eSwitch\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUkMaestro":{"name":"ukMaestro","abstract":"\u003cp\u003eUK Maestro\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO24configurationUnavailableyA2CmF":{"name":"configurationUnavailable","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO13notAuthorizedyA2CmF":{"name":"notAuthorized","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO20failedBase64EncodingyA2CmF":{"name":"failedBase64Encoding","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAPIClientError"},"Enums/TokenizationKeyError.html#/s:13BraintreeCore20TokenizationKeyErrorO7invalidyA2CmF":{"name":"invalid","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"TokenizationKeyError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO31invalidAuthorizationFingerprintyA2CmF":{"name":"invalidAuthorizationFingerprint","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO16invalidConfigURLyA2CmF":{"name":"invalidConfigURL","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO13invalidFormatyACSScACmF":{"name":"invalidFormat(_:)","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO18unsupportedVersionyA2CmF":{"name":"unsupportedVersion","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO14failedDecodingyACSScACmF":{"name":"failedDecoding(_:)","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTClientTokenError"},"Enums/BTAnalyticsServiceError.html#/s:13BraintreeCore23BTAnalyticsServiceErrorO16invalidAPIClientyA2CmF":{"name":"invalidAPIClient","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html":{"name":"BTAnalyticsServiceError","abstract":"\u003cp\u003eError codes associated with a API Client.\u003c/p\u003e"},"Enums/BTClientTokenError.html":{"name":"BTClientTokenError","abstract":"\u003cp\u003eError codes associated with a client token.\u003c/p\u003e"},"Enums/TokenizationKeyError.html":{"name":"TokenizationKeyError","abstract":"\u003cp\u003eError codes associated with a Tokenization Key.\u003c/p\u003e"},"Enums/BTAPIClientError.html":{"name":"BTAPIClientError","abstract":"\u003cp\u003eError codes associated with a API Client.\u003c/p\u003e"},"Enums/BTCardNetwork.html":{"name":"BTCardNetwork","abstract":"\u003cp\u003eCard type\u003c/p\u003e"},"Enums/BTHTTPError.html":{"name":"BTHTTPError","abstract":"\u003cp\u003eError codes associated with BTHTTP\u003c/p\u003e"},"Enums/BTJSONError.html":{"name":"BTJSONError"},"Enums/BTPayPalNativeCheckoutError.html":{"name":"BTPayPalNativeCheckoutError","abstract":"\u003cp\u003eError returned from the native PayPal flow\u003c/p\u003e"},"Enums/BTSEPADirectDebitError.html":{"name":"BTSEPADirectDebitError","abstract":"\u003cp\u003eError details associated with SEPA Direct Debit.\u003c/p\u003e"},"Enums/BTSEPADirectDebitMandateType.html":{"name":"BTSEPADirectDebitMandateType","abstract":"\u003cp\u003eMandate type for the SEPA Direct Debit request.\u003c/p\u003e"},"Enums/BTAmericanExpressError.html":{"name":"BTAmericanExpressError","abstract":"\u003cp\u003eError details associated with American Express.\u003c/p\u003e"},"Enums/BTDataCollectorError.html":{"name":"BTDataCollectorError","abstract":"\u003cp\u003eError details associated with Braintree Data Collector.\u003c/p\u003e"},"Enums/BTApplePayError.html":{"name":"BTApplePayError","abstract":"\u003cp\u003eError codes associated with Apple Pay.\u003c/p\u003e"},"Enums/BTLocalPaymentError.html":{"name":"BTLocalPaymentError","abstract":"\u003cp\u003eError codes associated with Payment Flow\u003c/p\u003e"},"Enums/BTThreeDSecureAccountType.html":{"name":"BTThreeDSecureAccountType","abstract":"\u003cp\u003eThe account type\u003c/p\u003e"},"Enums/BTThreeDSecureCardAddChallenge.html":{"name":"BTThreeDSecureCardAddChallenge","abstract":"\u003cp\u003eThe card add challenge request\u003c/p\u003e"},"Enums/BTThreeDSecureError.html":{"name":"BTThreeDSecureError"},"Enums/BTThreeDSecureRequestedExemptionType.html":{"name":"BTThreeDSecureRequestedExemptionType","abstract":"\u003cp\u003e3D Secure requested exemption type\u003c/p\u003e"},"Enums/BTThreeDSecureShippingMethod.html":{"name":"BTThreeDSecureShippingMethod","abstract":"\u003cp\u003eThe shipping method\u003c/p\u003e"},"Enums/BTThreeDSecureUIType.html":{"name":"BTThreeDSecureUIType","abstract":"\u003cp\u003eThe interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e"},"Enums/BTThreeDSecureV2ButtonType.html":{"name":"BTThreeDSecureV2ButtonType","abstract":"\u003cp\u003eButton types that can be customized in 3D Secure 2 flows.\u003c/p\u003e"},"Enums/BTCardError.html":{"name":"BTCardError"},"Enums/BTPayPalRequestIntent.html":{"name":"BTPayPalRequestIntent","abstract":"\u003cp\u003ePayment intent.\u003c/p\u003e"},"Enums/BTPayPalRequestUserAction.html":{"name":"BTPayPalRequestUserAction","abstract":"\u003cp\u003eThe call-to-action in the PayPal Checkout flow.\u003c/p\u003e"},"Enums/BTPayPalError.html":{"name":"BTPayPalError","abstract":"\u003cp\u003eError codes associated with PayPal.\u003c/p\u003e"},"Enums/BTPayPalLineItemKind.html":{"name":"BTPayPalLineItemKind","abstract":"\u003cp\u003eUse this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e"},"Enums/BTPayPalLineItemUPCType.html":{"name":"BTPayPalLineItemUPCType","abstract":"\u003cp\u003eUse this option to specify the UPC type of the line item.\u003c/p\u003e"},"Enums/BTPayPalLocaleCode.html":{"name":"BTPayPalLocaleCode","abstract":"\u003cp\u003eA locale code to use for a transaction.\u003c/p\u003e"},"Enums/BTPayPalPaymentType.html":{"name":"BTPayPalPaymentType"},"Enums/BTPayPalRequestLandingPageType.html":{"name":"BTPayPalRequestLandingPageType","abstract":"\u003cp\u003eUse this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.\u003c/p\u003e"},"Enums/BTVenmoAppSwitchError.html":{"name":"BTVenmoAppSwitchError","abstract":"\u003cp\u003eError codes associated with Venmo App Switch\u003c/p\u003e"},"Enums/BTVenmoError.html":{"name":"BTVenmoError","abstract":"\u003cp\u003eError codes associated with Venmo\u003c/p\u003e"},"Enums/BTVenmoLineItemKind.html":{"name":"BTVenmoLineItemKind","abstract":"\u003cp\u003eUse this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e"},"Enums/BTVenmoPaymentMethodUsage.html":{"name":"BTVenmoPaymentMethodUsage","abstract":"\u003cp\u003eUsage type for the tokenized Venmo account\u003c/p\u003e"},"Enums/BTPayPalMessagingColor.html":{"name":"BTPayPalMessagingColor","abstract":"\u003cp\u003eText and logo color option for a PayPal Message\u003c/p\u003e"},"Enums/BTPayPalMessagingError.html":{"name":"BTPayPalMessagingError","abstract":"\u003cp\u003eError details associated with PayPal Messaging.\u003c/p\u003e"},"Enums/BTPayPalMessagingLogoType.html":{"name":"BTPayPalMessagingLogoType","abstract":"\u003cp\u003eLogo type option for a PayPal Message\u003c/p\u003e"},"Enums/BTPayPalMessagingOfferType.html":{"name":"BTPayPalMessagingOfferType","abstract":"\u003cp\u003ePreferred message offer to display\u003c/p\u003e"},"Enums/BTPayPalMessagingPageType.html":{"name":"BTPayPalMessagingPageType","abstract":"\u003cp\u003eMessage location within an application\u003c/p\u003e"},"Enums/BTPayPalMessagingTextAlignment.html":{"name":"BTPayPalMessagingTextAlignment","abstract":"\u003cp\u003eText alignment option for a PayPal Message\u003c/p\u003e"},"Enums/BTShopperInsightsError.html":{"name":"BTShopperInsightsError"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC03apiE0AC0A4Core11BTAPIClientC_tcfc":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a \u003ccode\u003eBTShopperInsightsClient\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC28getRecommendedPaymentMethods7requestAA0dC6ResultVAA0dC7RequestV_tYaKF":{"name":"getRecommendedPaymentMethods(request:)","abstract":"\u003cp\u003eThis method confirms if the customer is a user of PayPal services using their email and phone number.\u003c/p\u003e","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC24sendPayPalPresentedEventyyF":{"name":"sendPayPalPresentedEvent()","abstract":"\u003cp\u003eCall this method when the PayPal button has been successfully displayed to the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC23sendPayPalSelectedEventyyF":{"name":"sendPayPalSelectedEvent()","abstract":"\u003cp\u003eCall this method when the PayPal button has been selected/tapped by the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC23sendVenmoPresentedEventyyF":{"name":"sendVenmoPresentedEvent()","abstract":"\u003cp\u003eCall this method when the Venmo button has been successfully displayed to the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC22sendVenmoSelectedEventyyF":{"name":"sendVenmoSelectedEvent()","abstract":"\u003cp\u003eCall this method when the Venmo button has been selected/tapped by the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTPayPalMessagingView/Representable.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC13RepresentableV9apiClient7request8delegateAE0A4Core11BTAPIClientC_AA0ecD7RequestVAA0ecD8Delegate_pSgtcfc":{"name":"init(apiClient:request:delegate:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"Representable"},"Classes/BTPayPalMessagingView/Representable.html#/s:7SwiftUI19UIViewRepresentableP04makeC07context0C4TypeQzAA0cD7ContextVyxG_tF":{"name":"makeUIView(context:)","parent_name":"Representable"},"Classes/BTPayPalMessagingView/Representable.html#/s:7SwiftUI19UIViewRepresentableP06updateC0_7contexty0C4TypeQz_AA0cD7ContextVyxGtF":{"name":"updateUIView(_:context:)","parent_name":"Representable"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC8delegateAA0ecD8Delegate_pSgvp":{"name":"delegate","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC9apiClientAC0A4Core11BTAPIClientC_tcfc":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003eBTPayPalMessagingView\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC5startyyAA0ecD7RequestVF":{"name":"start(_:)","abstract":"\u003cp\u003eCreates a view to be displayed to promote offers such as Pay Later and PayPal Credit to customers.\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView/Representable.html":{"name":"Representable","abstract":"\u003cp\u003ePayPal Messaging for SwiftUI\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewEventDelegateP7onClickyyAA0abdE0CF":{"name":"onClick(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewEventDelegateP7onApplyyyAA0abdE0CF":{"name":"onApply(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP9onLoadingyyAA0abdE0CF":{"name":"onLoading(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP9onSuccessyyAA0abdE0CF":{"name":"onSuccess(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP7onError_5erroryAA0abdE0C_AA0abdI0OtF":{"name":"onError(_:error:)","parent_name":"BTPayPalMessagingView"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)profileID":{"name":"profileID","abstract":"\u003cp\u003eOptional. The Venmo profile ID to be used during payment authorization. Customers will see the business name and logo associated with this Venmo profile, and it may show up in the","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)vault":{"name":"vault","abstract":"\u003cp\u003eWhether to automatically vault the Venmo account on the client. For client-side vaulting, you must initialize BTAPIClient with a client token that was created with a customer ID.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)paymentMethodUsage":{"name":"paymentMethodUsage","abstract":"\u003cp\u003eIf set to \u003ccode\u003e.multiUse\u003c/code\u003e, the Venmo payment will be authorized for future payments and can be vaulted.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional. The business name that will be displayed in the Venmo app payment approval screen. Only used by merchants onboarded as PayFast channel partners.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)collectCustomerBillingAddress":{"name":"collectCustomerBillingAddress","abstract":"\u003cp\u003eWhether the customer\u0026rsquo;s billing address should be collected and displayed on the Venmo paysheet.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)collectCustomerShippingAddress":{"name":"collectCustomerShippingAddress","abstract":"\u003cp\u003eWhether the customer\u0026rsquo;s shipping address should be collected and displayed on the Venmo paysheet.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)isFinalAmount":{"name":"isFinalAmount","abstract":"\u003cp\u003eIndicates whether the purchase amount is the final amount.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)subTotalAmount":{"name":"subTotalAmount","abstract":"\u003cp\u003eOptional. The subtotal amount of the transaction to be displayed on the paysheet. Excludes taxes, discounts, and shipping amounts.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)discountAmount":{"name":"discountAmount","abstract":"\u003cp\u003eOptional. The total discount amount applied on the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)taxAmount":{"name":"taxAmount","abstract":"\u003cp\u003eOptional. The total tax amount for the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)shippingAmount":{"name":"shippingAmount","abstract":"\u003cp\u003eOptional. The shipping amount for the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)totalAmount":{"name":"totalAmount","abstract":"\u003cp\u003eOptional. The grand total amount on the transaction that should be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)lineItems":{"name":"lineItems","abstract":"\u003cp\u003eOptional. The line items for this transaction. It can include up to 249 line items.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)fallbackToWeb":{"name":"fallbackToWeb","abstract":"\u003cp\u003eOptional. Used to determine if the customer should fallback to the web flow if Venmo app is not installed.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(im)initWithPaymentMethodUsage:":{"name":"init(paymentMethodUsage:)","abstract":"\u003cp\u003eInitialize a Venmo request with a payment method usage.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)quantity":{"name":"quantity","abstract":"\u003cp\u003eNumber of units of the item purchased. This value must be a whole number and can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)unitAmount":{"name":"unitAmount","abstract":"\u003cp\u003ePer-unit price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)name":{"name":"name","abstract":"\u003cp\u003eItem name. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)kind":{"name":"kind","abstract":"\u003cp\u003eIndicates whether the line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)unitTaxAmount":{"name":"unitTaxAmount","abstract":"\u003cp\u003eOptional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)itemDescription":{"name":"itemDescription","abstract":"\u003cp\u003eOptional: Item description. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional: Product or UPC code for the item. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)url":{"name":"url","abstract":"\u003cp\u003eOptional: The URL to product information.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(im)initWithQuantity:unitAmount:name:kind:":{"name":"init(quantity:unitAmount:name:kind:)","abstract":"\u003cp\u003eInitialize a BTVenmoLineItem\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an Apple Pay client\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)tokenizeWithVenmoRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eInitiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/s:14BraintreeVenmo13BTVenmoClientC8tokenizeyAA0C12AccountNonceCAA0C7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eInitiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)isVenmoAppInstalled":{"name":"isVenmoAppInstalled()","abstract":"\u003cp\u003eReturns true if the proper Venmo app is installed and configured correctly, returns false otherwise.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)openVenmoAppPageInAppStore":{"name":"openVenmoAppPageInAppStore()","abstract":"\u003cp\u003eSwitches to the App Store to download the Venmo application.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003eThe email associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)externalID":{"name":"externalID","abstract":"\u003cp\u003eThe external ID associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003eThe first name associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003eThe last name associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)phoneNumber":{"name":"phoneNumber","abstract":"\u003cp\u003eThe phone number associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)username":{"name":"username","abstract":"\u003cp\u003eThe username associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe primary billing address associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe primary shipping address associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(py)userAuthenticationEmail":{"name":"userAuthenticationEmail","abstract":"\u003cp\u003eOptional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)initWithUserAuthenticationEmail:enablePayPalAppSwitch:offerCredit:":{"name":"init(userAuthenticationEmail:enablePayPalAppSwitch:offerCredit:)","abstract":"\u003cp\u003eInitializes a PayPal Vault request for the PayPal App Switch flow\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)initWithOfferCredit:userAuthenticationEmail:":{"name":"init(offerCredit:userAuthenticationEmail:)","abstract":"\u003cp\u003eInitializes a PayPal Vault request\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)parametersWith:universalLink:":{"name":"parameters(with:universalLink:)","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultBaseRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultBaseRequest(py)offerCredit":{"name":"offerCredit","abstract":"\u003cp\u003eOptional: Offers PayPal Credit if the customer qualifies. Defaults to \u003ccode\u003efalse\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalVaultBaseRequest"},"Classes/BTPayPalVaultBaseRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultBaseRequest(im)initWithOfferCredit:":{"name":"init(offerCredit:)","abstract":"\u003cp\u003eInitializes a PayPal Native Vault request\u003c/p\u003e","parent_name":"BTPayPalVaultBaseRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)isShippingAddressRequired":{"name":"isShippingAddressRequired","abstract":"\u003cp\u003eDefaults to false. When set to true, the shipping address selector will be displayed.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)isShippingAddressEditable":{"name":"isShippingAddressEditable","abstract":"\u003cp\u003eDefaults to false. Set to true to enable user editing of the shipping address.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)localeCode":{"name":"localeCode","abstract":"\u003cp\u003eOptional: A locale code to use for the transaction.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)shippingAddressOverride":{"name":"shippingAddressOverride","abstract":"\u003cp\u003eOptional: A valid shipping address to be displayed in the transaction flow. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)landingPageType":{"name":"landingPageType","abstract":"\u003cp\u003eOptional: Landing page type. Defaults to \u003ccode\u003e.none\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional: The merchant name displayed inside of the PayPal flow; defaults to the company name on your Braintree account\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: A non-default merchant account to use for tokenization.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)lineItems":{"name":"lineItems","abstract":"\u003cp\u003eOptional: The line items for this transaction. It can include up to 249 line items.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)billingAgreementDescription":{"name":"billingAgreementDescription","abstract":"\u003cp\u003eOptional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)riskCorrelationID":{"name":"riskCorrelationID","abstract":"\u003cp\u003eOptional: A risk correlation ID created with Set Transaction Context on your server.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)quantity":{"name":"quantity","abstract":"\u003cp\u003eNumber of units of the item purchased. This value must be a whole number and can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)unitAmount":{"name":"unitAmount","abstract":"\u003cp\u003ePer-unit price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)name":{"name":"name","abstract":"\u003cp\u003eItem name. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)kind":{"name":"kind","abstract":"\u003cp\u003eIndicates whether the line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)unitTaxAmount":{"name":"unitTaxAmount","abstract":"\u003cp\u003eOptional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)itemDescription":{"name":"itemDescription","abstract":"\u003cp\u003eOptional: Item description. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)url":{"name":"url","abstract":"\u003cp\u003eOptional: The URL to product information.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional: Product or UPC code for the item. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)imageURL":{"name":"imageURL","abstract":"\u003cp\u003eOptional: The URL to product image information.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)upcCode":{"name":"upcCode","abstract":"\u003cp\u003eOptional: UPC code for the item.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)upcType":{"name":"upcType","abstract":"\u003cp\u003eOptional: UPC type for the item.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(im)initWithQuantity:unitAmount:name:kind:":{"name":"init(quantity:unitAmount:name:kind:)","abstract":"\u003cp\u003eInitialize a PayPayLineItem\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalCreditFinancingAmount.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancingAmount(py)currency":{"name":"currency","abstract":"\u003cp\u003e3 letter currency code as defined by \u003ca href=\"http://www.iso.org/iso/home/standards/currency_codes.htm\"\u003eISO 4217\u003c/a\u003e.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancingAmount"},"Classes/BTPayPalCreditFinancingAmount.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancingAmount(py)value":{"name":"value","abstract":"\u003cp\u003eAn amount defined by \u003ca href=\"http://www.iso.org/iso/home/standards/currency_codes.htm\"\u003eISO 4217\u003c/a\u003e for the given currency.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancingAmount"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)cardAmountImmutable":{"name":"cardAmountImmutable","abstract":"\u003cp\u003eIndicates whether the card amount is editable after payer\u0026rsquo;s acceptance on PayPal side.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)monthlyPayment":{"name":"monthlyPayment","abstract":"\u003cp\u003eEstimated amount per month that the customer will need to pay including fees and interest.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)payerAcceptance":{"name":"payerAcceptance","abstract":"\u003cp\u003eStatus of whether the customer ultimately was approved for and chose to make the payment using the approved installment credit.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)term":{"name":"term","abstract":"\u003cp\u003eLength of financing terms in months.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)totalCost":{"name":"totalCost","abstract":"\u003cp\u003eEstimated total payment amount including interest and fees the user will pay during the lifetime of the loan.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)totalInterest":{"name":"totalInterest","abstract":"\u003cp\u003eEstimated interest or fees amount the payer will have to pay during the lifetime of the loan.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new PayPal client instance.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)initWithAPIClient:universalLink:":{"name":"init(apiClient:universalLink:)","abstract":"\u003cp\u003eInitialize a new PayPal client instance for the PayPal App Switch flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)tokenizeWithVaultRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Vault flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/s:15BraintreePayPal05BTPayC6ClientC8tokenizeyAA0dC12AccountNonceCAA0dC12VaultRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Vault flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)tokenizeWithCheckoutRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/s:15BraintreePayPal05BTPayC6ClientC8tokenizeyAA0dC12AccountNonceCAA0dC15CheckoutRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eUsed for a one-time payment.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)intent":{"name":"intent","abstract":"\u003cp\u003eOptional: Payment intent. Defaults to \u003ccode\u003e.authorize\u003c/code\u003e. Only applies to PayPal Checkout.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)userAction":{"name":"userAction","abstract":"\u003cp\u003eOptional: Changes the call-to-action in the PayPal Checkout flow. Defaults to \u003ccode\u003e.none\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)offerPayLater":{"name":"offerPayLater","abstract":"\u003cp\u003eOptional: Offers PayPal Pay Later if the customer qualifies. Defaults to \u003ccode\u003efalse\u003c/code\u003e. Only available with PayPal Checkout.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)currencyCode":{"name":"currencyCode","abstract":"\u003cp\u003eOptional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)requestBillingAgreement":{"name":"requestBillingAgreement","abstract":"\u003cp\u003eOptional: If set to \u003ccode\u003etrue\u003c/code\u003e, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout. Defaults to \u003ccode\u003efalse\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)userAuthenticationEmail":{"name":"userAuthenticationEmail","abstract":"\u003cp\u003eOptional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(im)initWithAmount:intent:userAction:offerPayLater:currencyCode:requestBillingAgreement:":{"name":"init(amount:intent:userAction:offerPayLater:currencyCode:requestBillingAgreement:)","abstract":"\u003cp\u003eInitializes a PayPal Native Checkout request\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient metadata id associated with this transaction.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)payerID":{"name":"payerID","abstract":"\u003cp\u003eOptional. Payer id associated with this transaction.","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)creditFinancing":{"name":"creditFinancing","abstract":"\u003cp\u003eOptional. Credit financing details if the customer pays with PayPal Credit.","parent_name":"BTPayPalAccountNonce"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)acsTransactionID":{"name":"acsTransactionID","abstract":"\u003cp\u003eUnique transaction identifier assigned by the Access Control Server (ACS) to identify a single transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)authenticationTransactionStatus":{"name":"authenticationTransactionStatus","abstract":"\u003cp\u003eOn authentication, the transaction status result identifier.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)authenticationTransactionStatusReason":{"name":"authenticationTransactionStatusReason","abstract":"\u003cp\u003eOn authentication, provides additional information as to why the transaction status has the specific value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)cavv":{"name":"cavv","abstract":"\u003cp\u003eCardholder authentication verification value or \u0026ldquo;CAVV\u0026rdquo; is the main encrypted message issuers and card networks use to verify authentication has occured.","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)dsTransactionID":{"name":"dsTransactionID","abstract":"\u003cp\u003eDirectory Server Transaction ID is an ID used by the card brand\u0026rsquo;s 3DS directory server.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)eciFlag":{"name":"eciFlag","abstract":"\u003cp\u003eThe ecommerce indicator flag indicates the outcome of the 3DS authentication.","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)enrolled":{"name":"enrolled","abstract":"\u003cp\u003eIndicates whether a card is enrolled in a 3D Secure program or not. Possible values:\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)liabilityShifted":{"name":"liabilityShifted","abstract":"\u003cp\u003eIf the 3D Secure liability shift has occurred.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)liabilityShiftPossible":{"name":"liabilityShiftPossible","abstract":"\u003cp\u003eIf the 3D Secure liability shift is possible.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)lookupTransactionStatus":{"name":"lookupTransactionStatus","abstract":"\u003cp\u003eOn lookup, the transaction status result identifier.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)lookupTransactionStatusReason":{"name":"lookupTransactionStatusReason","abstract":"\u003cp\u003eOn lookup, provides additional information as to why the transaction status has the specific value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)paresStatus":{"name":"paresStatus","abstract":"\u003cp\u003eThe Payer Authentication Response (PARes) Status, a transaction status result identifier. Possible Values:\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)status":{"name":"status","abstract":"\u003cp\u003eThe 3D Secure status value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureAuthenticationID":{"name":"threeDSecureAuthenticationID","abstract":"\u003cp\u003eUnique identifier assigned to the 3D Secure authentication performed for this transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureServerTransactionID":{"name":"threeDSecureServerTransactionID","abstract":"\u003cp\u003eUnique transaction identifier assigned by the 3DS Server to identify a single transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureVersion":{"name":"threeDSecureVersion","abstract":"\u003cp\u003eThe 3DS version used in the authentication, example \u0026ldquo;1.0.2\u0026rdquo; or \u0026ldquo;2.1.0\u0026rdquo;.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)wasVerified":{"name":"wasVerified","abstract":"\u003cp\u003eIndicates if the 3D Secure lookup was performed.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)xid":{"name":"xid","abstract":"\u003cp\u003eTransaction identifier resulting from 3D Secure authentication. Uniquely identifies the transaction and sometimes required in the authorization message.","parent_name":"BTThreeDSecureInfo"},"Classes/BTCardRequest.html#/c:@M@BraintreeCard@objc(cs)BTCardRequest(py)card":{"name":"card","abstract":"\u003cp\u003eThe \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html\"\u003eBTCard\u003c/a\u003e\u003c/code\u003e associated with this instance.\u003c/p\u003e","parent_name":"BTCardRequest"},"Classes/BTCardRequest.html#/c:@M@BraintreeCard@objc(cs)BTCardRequest(im)initWithCard:":{"name":"init(card:)","abstract":"\u003cp\u003eInitialize a Card request with a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html\"\u003eBTCard\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTCardRequest"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)cardNetwork":{"name":"cardNetwork","abstract":"\u003cp\u003eThe card network.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)expirationMonth":{"name":"expirationMonth","abstract":"\u003cp\u003eThe expiration month of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)expirationYear":{"name":"expirationYear","abstract":"\u003cp\u003eThe expiration year of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)cardholderName":{"name":"cardholderName","abstract":"\u003cp\u003eThe name of the cardholder, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)lastTwo":{"name":"lastTwo","abstract":"\u003cp\u003eThe last two digits of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)lastFour":{"name":"lastFour","abstract":"\u003cp\u003eThe last four digits of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)bin":{"name":"bin","abstract":"\u003cp\u003eThe BIN number of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)binData":{"name":"binData","abstract":"\u003cp\u003eThe BIN data for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)threeDSecureInfo":{"name":"threeDSecureInfo","abstract":"\u003cp\u003eThe 3D Secure info for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)authenticationInsight":{"name":"authenticationInsight","abstract":"\u003cp\u003eDetails about the regulatory environment and applicable customer authentication regulation for a potential transaction.","parent_name":"BTCardNonce"},"Classes/BTCardClient.html#/c:@M@BraintreeCard@objc(cs)BTCardClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a card client\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCardClient.html#/c:@M@BraintreeCard@objc(cs)BTCardClient(im)tokenizeCard:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenizes a card\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCardClient.html#/s:13BraintreeCard12BTCardClientC8tokenizeyAA0C5NonceCAA0C0CYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenizes a card\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)number":{"name":"number","abstract":"\u003cp\u003eThe card number\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)expirationMonth":{"name":"expirationMonth","abstract":"\u003cp\u003eThe expiration month as a one or two-digit number on the Gregorian calendar\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)expirationYear":{"name":"expirationYear","abstract":"\u003cp\u003eThe expiration year as a two or four-digit number on the Gregorian calendar\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)cvv":{"name":"cvv","abstract":"\u003cp\u003eThe card verification code (like CVV or CID).\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eThe postal code associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)cardholderName":{"name":"cardholderName","abstract":"\u003cp\u003eOptional: the cardholder\u0026rsquo;s name.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)firstName":{"name":"firstName","abstract":"\u003cp\u003eOptional: first name on the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)lastName":{"name":"lastName","abstract":"\u003cp\u003eOptional: last name on the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)company":{"name":"company","abstract":"\u003cp\u003eOptional: company name associated with the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eOptional: the street address associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional: the extended address associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)locality":{"name":"locality","abstract":"\u003cp\u003eOptional: the city associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)region":{"name":"region","abstract":"\u003cp\u003eOptional: either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryName":{"name":"countryName","abstract":"\u003cp\u003eOptional: the country name associated with the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003eOptional: the ISO 3166-1 alpha-2 country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeAlpha3":{"name":"countryCodeAlpha3","abstract":"\u003cp\u003eOptional: the ISO 3166-1 alpha-3 country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeNumeric":{"name":"countryCodeNumeric","abstract":"\u003cp\u003eOptional: The ISO 3166-1 numeric country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)shouldValidate":{"name":"shouldValidate","abstract":"\u003cp\u003eControls whether or not to return validations and/or verification results. By default, this is not enabled.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)authenticationInsightRequested":{"name":"authenticationInsightRequested","abstract":"\u003cp\u003eOptional: If authentication insight is requested. If this property is set to true, a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)merchantAccountID\"\u003emerchantAccountID\u003c/a\u003e\u003c/code\u003e must be provided. Defaults to false.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: The merchant account ID.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTAuthenticationInsight.html#/c:@M@BraintreeCard@objc(cs)BTAuthenticationInsight(py)regulationEnvironment":{"name":"regulationEnvironment","abstract":"\u003cp\u003eThe regulation environment for the associated nonce to help determine the need for 3D Secure.","parent_name":"BTAuthenticationInsight"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)toolbarCustomization":{"name":"toolbarCustomization","abstract":"\u003cp\u003eToolbar customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)labelCustomization":{"name":"labelCustomization","abstract":"\u003cp\u003eLabel customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)textBoxCustomization":{"name":"textBoxCustomization","abstract":"\u003cp\u003eText box customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(im)setButtonCustomization:buttonType:":{"name":"setButton(_:buttonType:)","abstract":"\u003cp\u003eSet button customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)backgroundColor":{"name":"backgroundColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)headerText":{"name":"headerText","abstract":"\u003cp\u003eText for the header.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)buttonText":{"name":"buttonText","abstract":"\u003cp\u003eText for the button. For example, “Cancel”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)borderWidth":{"name":"borderWidth","abstract":"\u003cp\u003eWidth (integer value) of the text box border.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)borderColor":{"name":"borderColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)cornerRadius":{"name":"cornerRadius","abstract":"\u003cp\u003eRadius (integer value) for the text box corners.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextColor":{"name":"headingTextColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextFontName":{"name":"headingTextFontName","abstract":"\u003cp\u003eFont type for the heading label text.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextFontSize":{"name":"headingTextFontSize","abstract":"\u003cp\u003eFont size for the heading label text.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(py)backgroundColor":{"name":"backgroundColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(py)cornerRadius":{"name":"cornerRadius","abstract":"\u003cp\u003eRadius (integer value) for the button corners.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textFontName":{"name":"textFontName","abstract":"\u003cp\u003eFont type for the UI element.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textColor":{"name":"textColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textFontSize":{"name":"textFontSize","abstract":"\u003cp\u003eFont size for the UI element.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)tokenizedCard":{"name":"tokenizedCard","abstract":"\u003cp\u003eThe \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCardNonce.html\"\u003eBTCardNonce\u003c/a\u003e\u003c/code\u003e resulting from the 3D Secure flow\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)lookup":{"name":"lookup","abstract":"\u003cp\u003eThe result of a 3D Secure lookup. Contains liability shift and challenge information.\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)errorMessage":{"name":"errorMessage","abstract":"\u003cp\u003eThe error message when the 3D Secure flow is unsuccessful\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eA nonce to be verified by ThreeDSecure\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)customFields":{"name":"customFields","abstract":"\u003cp\u003eObject where each key is the name of a custom field which has been configured in the Control Panel. In the Control Panel you can configure 3D Secure Rules which trigger on certain values.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eThe amount for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)accountType":{"name":"accountType","abstract":"\u003cp\u003eOptional. The account type selected by the cardholder\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eOptional. The billing address used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)mobilePhoneNumber":{"name":"mobilePhoneNumber","abstract":"\u003cp\u003eOptional. The mobile phone number used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)email":{"name":"email","abstract":"\u003cp\u003eOptional. The email used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)shippingMethod":{"name":"shippingMethod","abstract":"\u003cp\u003eOptional. The shipping method chosen for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)additionalInformation":{"name":"additionalInformation","abstract":"\u003cp\u003eOptional. The additional information used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)challengeRequested":{"name":"challengeRequested","abstract":"\u003cp\u003eOptional. If set to true, an authentication challenge will be forced if possible.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)exemptionRequested":{"name":"exemptionRequested","abstract":"\u003cp\u003eOptional. If set to true, an exemption to the authentication challenge will be requested.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)requestedExemptionType":{"name":"requestedExemptionType","abstract":"\u003cp\u003eOptional. The exemption type to be requested. If an exemption is requested and the exemption\u0026rsquo;s conditions are satisfied, then it will be applied.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)dataOnlyRequested":{"name":"dataOnlyRequested","abstract":"\u003cp\u003eOptional. Indicates whether to use the data only flow. In this flow, frictionless 3DS is ensured for Mastercard cardholders as the card scheme provides a risk score","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)cardAddChallenge":{"name":"cardAddChallenge","abstract":"\u003cp\u003eOptional. An authentication created using this property should only be used for adding a payment method to the merchant\u0026rsquo;s vault and not for creating transactions.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)cardAddChallengeRequested":{"name":"cardAddChallengeRequested","abstract":"\u003cp\u003eOptional. An authentication created using this flag should only be used for vaulting operations (creation of customers\u0026rsquo; credit cards or payment methods) and not for creating transactions.","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)v2UICustomization":{"name":"v2UICustomization","abstract":"\u003cp\u003eOptional. UI Customization for 3DS2 challenge views.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)uiType":{"name":"uiType","abstract":"\u003cp\u003eOptional. Sets all UI types that the device supports for displaying specific challenge user interfaces in the 3D Secure challenge.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)renderTypes":{"name":"renderTypes","abstract":"\u003cp\u003eOptional. List of all the render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)threeDSecureRequestDelegate":{"name":"threeDSecureRequestDelegate","abstract":"\u003cp\u003eA delegate for receiving information about the ThreeDSecure payment flow.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRenderType.html#/s:SY8rawValue03RawB0Qzvp":{"name":"rawValue","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/s:s9OptionSetP8rawValuex03RawD0Qz_tcfc":{"name":"init(rawValue:)","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)otp":{"name":"otp","abstract":"\u003cp\u003eOTP\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)html":{"name":"html","abstract":"\u003cp\u003eHTML\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)singleSelect":{"name":"singleSelect","abstract":"\u003cp\u003eSingle select\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)multiSelect":{"name":"multiSelect","abstract":"\u003cp\u003eMulti Select\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)oob":{"name":"oob","abstract":"\u003cp\u003eOOB\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)givenName":{"name":"givenName","abstract":"\u003cp\u003eOptional. Given name associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)surname":{"name":"surname","abstract":"\u003cp\u003eOptional. Surname associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eOptional. Line 1 of the Address (eg. number, street, etc)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional. Line 2 of the Address (eg. suite, apt #, etc.)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)line3":{"name":"line3","abstract":"\u003cp\u003eOptional. Line 3 of the Address (eg. suite, apt #, etc.)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)locality":{"name":"locality","abstract":"\u003cp\u003eOptional. City name\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)region":{"name":"region","abstract":"\u003cp\u003eOptional. Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eOptional. Zip code or equivalent is usually required for countries that have them.","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003eOptional. 2 letter country code\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)phoneNumber":{"name":"phoneNumber","abstract":"\u003cp\u003eOptional. The phone number associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)paReq":{"name":"paReq","abstract":"\u003cp\u003eThe \u0026ldquo;PAReq\u0026rdquo; or \u0026ldquo;Payment Authentication Request\u0026rdquo; is the encoded request message used to initiate authentication.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)md":{"name":"md","abstract":"\u003cp\u003eThe unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)acsURL":{"name":"acsURL","abstract":"\u003cp\u003eThe URL which the customer will be redirected to for a 3DS Interface.","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)termURL":{"name":"termURL","abstract":"\u003cp\u003eThe termURL is the fully qualified URL that the customer will be redirected to once the authentication completes.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)threeDSecureVersion":{"name":"threeDSecureVersion","abstract":"\u003cp\u003eThe full version string of the 3DS lookup result.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)isThreeDSecureVersion2":{"name":"isThreeDSecureVersion2","abstract":"\u003cp\u003eIndicates a 3DS 2 lookup result.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)transactionID":{"name":"transactionID","abstract":"\u003cp\u003eThis a secondary unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)requiresUserAuthentication":{"name":"requiresUserAuthentication","abstract":"\u003cp\u003eIndicates that a 3DS challenge is required.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new BTThreeDSecureClient instance.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)startPaymentFlow:completion:":{"name":"startPaymentFlow(_:completion:)","abstract":"\u003cp\u003eStarts the 3DS flow using a BTThreeDSecureRequest.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)prepareLookup:completion:":{"name":"prepareLookup(_:completion:)","abstract":"\u003cp\u003eCreates a stringified JSON object containing the information necessary to perform a lookup.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)prepareLookup:completionHandler:":{"name":"prepareLookup(_:)","abstract":"\u003cp\u003eCreates a stringified JSON object containing the information necessary to perform a lookup.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initializeChallengeWithLookupResponse:request:completion:":{"name":"initializeChallenge(lookupResponse:request:completion:)","abstract":"\u003cp\u003eInitialize a challenge from a server side lookup call.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initializeChallengeWithLookupResponse:request:completionHandler:":{"name":"initializeChallenge(lookupResponse:request:)","abstract":"\u003cp\u003eInitialize a challenge from a server side lookup call.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eOptional. The shipping address used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingMethodIndicator":{"name":"shippingMethodIndicator","abstract":"\u003cp\u003eOptional. The 2-digit string indicating the shipping method chosen for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional. The 3-letter string representing the merchant product code\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)deliveryTimeframe":{"name":"deliveryTimeframe","abstract":"\u003cp\u003eOptional. The 2-digit number indicating the delivery timeframe\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)deliveryEmail":{"name":"deliveryEmail","abstract":"\u003cp\u003eOptional. For electronic delivery, email address to which the merchandise was delivered\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)reorderIndicator":{"name":"reorderIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating whether the cardholder is reordering previously purchased merchandise\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)preorderIndicator":{"name":"preorderIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating whether the cardholder is placing an order with a future availability or release date\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)preorderDate":{"name":"preorderDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating expected date that a pre-ordered purchase will be available\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardAmount":{"name":"giftCardAmount","abstract":"\u003cp\u003eOptional. The purchase amount total for prepaid gift cards in major units\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardCurrencyCode":{"name":"giftCardCurrencyCode","abstract":"\u003cp\u003eOptional. ISO 4217 currency code for the gift card purchased\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardCount":{"name":"giftCardCount","abstract":"\u003cp\u003eOptional. Total count of individual prepaid gift cards purchased\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountAgeIndicator":{"name":"accountAgeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountCreateDate":{"name":"accountCreateDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder\u0026rsquo;s account was last changed.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountChangeIndicator":{"name":"accountChangeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountChangeDate":{"name":"accountChangeDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder\u0026rsquo;s account was last changed.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPwdChangeIndicator":{"name":"accountPwdChangeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the cardholder changed or reset the password on the account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPwdChangeDate":{"name":"accountPwdChangeDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder last changed or reset password on account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddressUsageIndicator":{"name":"shippingAddressUsageIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating when the shipping address used for transaction was first used.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddressUsageDate":{"name":"shippingAddressUsageDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date when the shipping address used for this transaction was first used.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)transactionCountDay":{"name":"transactionCountDay","abstract":"\u003cp\u003eOptional. Number of transactions (successful or abandoned) for this cardholder account within the last 24 hours.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)transactionCountYear":{"name":"transactionCountYear","abstract":"\u003cp\u003eOptional. Number of transactions (successful or abandoned) for this cardholder account within the last year.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)addCardAttempts":{"name":"addCardAttempts","abstract":"\u003cp\u003eOptional. Number of add card attempts in the last 24 hours.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPurchases":{"name":"accountPurchases","abstract":"\u003cp\u003eOptional. Number of purchases with this cardholder account during the previous six months.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)fraudActivity":{"name":"fraudActivity","abstract":"\u003cp\u003eOptional. The 2-digit value indicating whether the merchant experienced suspicious activity (including previous fraud) on the account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingNameIndicator":{"name":"shippingNameIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating if the cardholder name on the account is identical to the shipping name used for the transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)paymentAccountIndicator":{"name":"paymentAccountIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating the length of time that the payment account was enrolled in the merchant account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)paymentAccountAge":{"name":"paymentAccountAge","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the payment account was added to the cardholder account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)addressMatch":{"name":"addressMatch","abstract":"\u003cp\u003eOptional. The 1-character value (Y/N) indicating whether cardholder billing and shipping addresses match.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountID":{"name":"accountID","abstract":"\u003cp\u003eOptional. Additional cardholder account information.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)ipAddress":{"name":"ipAddress","abstract":"\u003cp\u003eOptional. The IP address of the consumer. IPv4 and IPv6 are supported.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)orderDescription":{"name":"orderDescription","abstract":"\u003cp\u003eOptional. Brief description of items purchased.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)taxAmount":{"name":"taxAmount","abstract":"\u003cp\u003eOptional. Unformatted tax amount without any decimalization (ie. $123.67 = 12367).\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)userAgent":{"name":"userAgent","abstract":"\u003cp\u003eOptional. The exact content of the HTTP user agent header.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)authenticationIndicator":{"name":"authenticationIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating the type of authentication request.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)installment":{"name":"installment","abstract":"\u003cp\u003eOptional. An integer value greater than 1 indicating the maximum number of permitted authorizations for installment payments.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)purchaseDate":{"name":"purchaseDate","abstract":"\u003cp\u003eOptional. The 14-digit number (format: YYYYMMDDHHMMSS) indicating the date in UTC of original purchase.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)recurringEnd":{"name":"recurringEnd","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date after which no further recurring authorizations should be performed.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)recurringFrequency":{"name":"recurringFrequency","abstract":"\u003cp\u003eOptional. Integer value indicating the minimum number of days between recurring authorizations.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)sdkMaxTimeout":{"name":"sdkMaxTimeout","abstract":"\u003cp\u003eOptional. The 2-digit number of minutes (minimum 05) to set the maximum amount of time for all 3DS 2.0 messages to be communicated between all components.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)workPhoneNumber":{"name":"workPhoneNumber","abstract":"\u003cp\u003eOptional. The work phone number used for verification. Only numbers; remove dashes, parenthesis and other characters.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient Metadata ID associated with this transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eThe one-time use payment method nonce.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)payerID":{"name":"payerID","abstract":"\u003cp\u003ePayer ID associated with this transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)type":{"name":"type","abstract":"\u003cp\u003eThe type of the tokenized payment.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)paymentType":{"name":"paymentType","abstract":"\u003cp\u003eThe type of payment.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)paymentTypeCountryCode":{"name":"paymentTypeCountryCode","abstract":"\u003cp\u003eThe country code of the local payment.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: The address of the customer. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)address":{"name":"address","abstract":"\u003cp\u003eOptional: The address of the customer. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eThe amount for the transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)currencyCode":{"name":"currencyCode","abstract":"\u003cp\u003eOptional: A valid ISO currency code to use for the transaction. Defaults to merchant currency code if not set.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional: The merchant name displayed inside of the local payment flow.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)email":{"name":"email","abstract":"\u003cp\u003eOptional: Payer email of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)givenName":{"name":"givenName","abstract":"\u003cp\u003eOptional: Given (first) name of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)surname":{"name":"surname","abstract":"\u003cp\u003eOptional: Surname (last name) of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)phone":{"name":"phone","abstract":"\u003cp\u003eOptional: Phone number of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)isShippingAddressRequired":{"name":"isShippingAddressRequired","abstract":"\u003cp\u003eIndicates whether or not the payment needs to be shipped. For digital goods, this should be false. Defaults to false.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)bic":{"name":"bic","abstract":"\u003cp\u003eOptional: Bank Identification Code of the customer (specific to iDEAL transactions).\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)localPaymentFlowDelegate":{"name":"localPaymentFlowDelegate","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new \u003ccode\u003eBTLocalPaymentClient\u003c/code\u003e instance.\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)startPaymentFlow:completion:":{"name":"startPaymentFlow(_:completion:)","abstract":"\u003cp\u003eStarts a payment flow using a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTLocalPaymentRequest.html\"\u003eBTLocalPaymentRequest\u003c/a\u003e\u003c/code\u003e\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)startPaymentFlow:completionHandler:":{"name":"startPaymentFlow(_:)","abstract":"\u003cp\u003eStarts a payment flow using a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTLocalPaymentRequest.html\"\u003eBTLocalPaymentRequest\u003c/a\u003e\u003c/code\u003e\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an Apple Pay client\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)makePaymentRequest:":{"name":"makePaymentRequest(completion:)","abstract":"\u003cp\u003eCreates a \u003ccode\u003ePKPaymentRequest\u003c/code\u003e with values from your Braintree Apple Pay configuration.","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/s:17BraintreeApplePay07BTAppleC6ClientC18makePaymentRequestSo09PKPaymentH0CyYaKF":{"name":"makePaymentRequest()","abstract":"\u003cp\u003eCreates a \u003ccode\u003ePKPaymentRequest\u003c/code\u003e with values from your Braintree Apple Pay configuration.","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)tokenizeApplePayPayment:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenizes an Apple Pay payment.\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/s:17BraintreeApplePay07BTAppleC6ClientC8tokenizeyAA0dC9CardNonceCSo9PKPaymentCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenizes an Apple Pay payment.\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayCardNonce.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayCardNonce(py)binData":{"name":"binData","abstract":"\u003cp\u003eThe BIN data for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTApplePayCardNonce"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003eBTDataCollector\u003c/code\u003e instance with a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTAPIClient.html\"\u003eBTAPIClient\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)clientMetadataID:":{"name":"clientMetadataID(_:)","abstract":"\u003cp\u003eReturns a client metadata ID.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)collectDeviceData:":{"name":"collectDeviceData(_:)","abstract":"\u003cp\u003eCollects device data based on your merchant configuration.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/s:22BraintreeDataCollector06BTDataC0C013collectDeviceB0SSyYaKF":{"name":"collectDeviceData()","abstract":"\u003cp\u003eCollects device data based on your merchant configuration.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)errorCode":{"name":"errorCode","abstract":"\u003cp\u003eOptional. An error code when there was an issue fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)errorMessage":{"name":"errorMessage","abstract":"\u003cp\u003eOptional. An error message when there was an issue fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)conversionRate":{"name":"conversionRate","abstract":"\u003cp\u003eOptional. The conversion rate associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)currencyAmount":{"name":"currencyAmount","abstract":"\u003cp\u003eOptional. The currency amount associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)currencyIsoCode":{"name":"currencyIsoCode","abstract":"\u003cp\u003eOptional. The currency ISO code associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)requestID":{"name":"requestID","abstract":"\u003cp\u003eOptional. The request ID used when fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)rewardsAmount":{"name":"rewardsAmount","abstract":"\u003cp\u003eOptional. The rewards amount associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)rewardsUnit":{"name":"rewardsUnit","abstract":"\u003cp\u003eOptional. The rewards unit associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressClient.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an American Express client.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTAmericanExpressClient.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressClient(im)getRewardsBalanceForNonce:currencyIsoCode:completion:":{"name":"getRewardsBalance(forNonce:currencyISOCode:completion:)","abstract":"\u003cp\u003eGets the rewards balance associated with a Braintree nonce. Only for American Express cards.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTAmericanExpressClient.html#/s:24BraintreeAmericanExpress010BTAmericanC6ClientC17getRewardsBalance8forNonce15currencyISOCodeAA0dcgH0CSS_SStYaKF":{"name":"getRewardsBalance(forNonce:currencyISOCode:)","abstract":"\u003cp\u003eGets the rewards balance associated with a Braintree nonce. Only for American Express cards.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)accountHolderName":{"name":"accountHolderName","abstract":"\u003cp\u003eRequired. The account holder name.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)iban":{"name":"iban","abstract":"\u003cp\u003eRequired. The full IBAN.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)customerID":{"name":"customerID","abstract":"\u003cp\u003eRequired. The customer ID.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC7RequestC11mandateTypeAA0dc7MandateG0OSgvp":{"name":"mandateType","abstract":"\u003cp\u003eOptional. The \u003ccode\u003eBTSEPADebitMandateType\u003c/code\u003e. If not set, defaults to \u003ccode\u003e.oneOff\u003c/code\u003e\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eRequired. The user\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional. A non-default merchant account to use for tokenization.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)locale":{"name":"locale","abstract":"\u003cp\u003eOptional. A locale code to use for creating a mandate.","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC7RequestC17accountHolderName4iban10customerID11mandateType14billingAddress015merchantAccountK06localeACSSSg_A2kA0dc7MandateM0OSg0A4Core08BTPostalO0CSgA2Ktcfc":{"name":"init(accountHolderName:iban:customerID:mandateType:billingAddress:merchantAccountID:locale:)","abstract":"\u003cp\u003eInitialize a new SEPA Direct Debit request.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitNonce.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitNonce(py)ibanLastFour":{"name":"ibanLastFour","abstract":"\u003cp\u003eThe IBAN last four characters.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitNonce.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitNonce(py)customerID":{"name":"customerID","abstract":"\u003cp\u003eThe customer ID.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitNonce.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5NonceC11mandateTypeAA0dc7MandateG0OSgvp":{"name":"mandateType","abstract":"\u003cp\u003eThe \u003ccode\u003eBTSEPADebitMandateType\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitClient.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a SEPA Direct Debit client.\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTSEPADirectDebitClient.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitClient(im)tokenizeWithSEPADirectDebitRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eInitiates an \u003ccode\u003eASWebAuthenticationSession\u003c/code\u003e to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTSEPADirectDebitClient.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC6ClientC8tokenizeyAA0dC5NonceCAA0dC7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eInitiates an \u003ccode\u003eASWebAuthenticationSession\u003c/code\u003e to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTPayPalNativeVaultRequest.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeVaultRequest(im)initWithOfferCredit:billingAgreementDescription:":{"name":"init(offerCredit:billingAgreementDescription:)","abstract":"\u003cp\u003eInitializes a PayPal Native Vault request\u003c/p\u003e","parent_name":"BTPayPalNativeVaultRequest"},"Classes/BTPayPalNativeCheckoutRequest.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutRequest(im)initWithAmount:intent:offerPayLater:currencyCode:requestBillingAgreement:billingAgreementDescription:userAuthenticationEmail:":{"name":"init(amount:intent:offerPayLater:currencyCode:requestBillingAgreement:billingAgreementDescription:userAuthenticationEmail:)","abstract":"\u003cp\u003eInitializes a PayPal Native Checkout request\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutRequest"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a PayPal Native client.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)tokenizeWithNativeCheckoutRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Checkout flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE6ClientC8tokenizeyAA0fcdE12AccountNonceCAA0fcdE7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Checkout flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)tokenizeWithNativeVaultRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Vault flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE6ClientC8tokenizeyAA0fcdE12AccountNonceCAA0fcD12VaultRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Vault flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient metadata id associated with this transaction.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)payerID":{"name":"payerID","abstract":"\u003cp\u003eOptional. Payer id associated with this transaction.","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)recipientName":{"name":"recipientName","abstract":"\u003cp\u003eOptional. Recipient name for shipping address.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eLine 1 of the Address (eg. number, street, etc).\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional line 2 of the Address (eg. suite, apt #, etc.).\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)locality":{"name":"locality","abstract":"\u003cp\u003eCity name\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003e2 letter country code.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eZip code or equivalent is usually required for countries that have them.","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)region":{"name":"region","abstract":"\u003cp\u003eEither a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(cpy)sharedParser":{"name":"shared","abstract":"\u003cp\u003eThe singleton instance\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(py)allTypes":{"name":"allTypes","abstract":"\u003cp\u003eAn array of the tokenization types currently registered\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)isTypeAvailable:":{"name":"isTypeAvailable(_:)","abstract":"\u003cp\u003eIndicates whether a tokenization type is currently registered\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)registerType:withParsingBlock:":{"name":"registerType(_:withParsingBlock:)","abstract":"\u003cp\u003eRegisters a parsing block for a tokenization type.\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)parseJSON:withParsingBlockForType:":{"name":"parseJSON(_:withParsingBlockForType:)","abstract":"\u003cp\u003eParses tokenized payment information that has been serialized to JSON, and returns a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPaymentMethodNonce.html\"\u003eBTPaymentMethodNonce\u003c/a\u003e\u003c/code\u003e object.\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eThe payment method nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)type":{"name":"type","abstract":"\u003cp\u003eThe string identifying the type of the payment method.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)isDefault":{"name":"isDefault","abstract":"\u003cp\u003eThe boolean indicating whether this is a default payment method.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:":{"name":"init(nonce:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:type:":{"name":"init(nonce:type:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:type:isDefault:":{"name":"init(nonce:type:isDefault:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)prepaid":{"name":"prepaid","abstract":"\u003cp\u003eWhether the card is a prepaid card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)healthcare":{"name":"healthcare","abstract":"\u003cp\u003eWhether the card is a healthcare card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)debit":{"name":"debit","abstract":"\u003cp\u003eWhether the card is a debit card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)durbinRegulated":{"name":"durbinRegulated","abstract":"\u003cp\u003eA value indicating whether the issuing bank\u0026rsquo;s card range is regulated by the Durbin Amendment due to the bank\u0026rsquo;s assets. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)commercial":{"name":"commercial","abstract":"\u003cp\u003eWhether the card type is a commercial card and is capable of processing Level 2 transactions. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)payroll":{"name":"payroll","abstract":"\u003cp\u003eWhether the card is a payroll card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)issuingBank":{"name":"issuingBank","abstract":"\u003cp\u003eThe bank that issued the credit card, if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)countryOfIssuance":{"name":"countryOfIssuance","abstract":"\u003cp\u003eThe country that issued the credit card, if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)productID":{"name":"productID","abstract":"\u003cp\u003eThe code for the product type of the card (e.g. \u003ccode\u003eD\u003c/code\u003e (Visa Signature Preferred), \u003ccode\u003eG\u003c/code\u003e (Visa Business)), if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(im)initWithJSON:":{"name":"init(json:)","abstract":"\u003cp\u003eCreate a \u003ccode\u003eBTBinData\u003c/code\u003e object from JSON.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(cpy)sharedInstance":{"name":"sharedInstance","abstract":"\u003cp\u003eSingleton for shared instance of \u003ccode\u003eBTAppContextSwitcher\u003c/code\u003e\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(py)returnURLScheme":{"name":"returnURLScheme","abstract":"\u003cp\u003eThe URL scheme to return to this app after switching to another app or opening a SFSafariViewController.","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)handleOpenURLContext:":{"name":"handleOpenURL(context:)","abstract":"\u003cp\u003eDetermine whether the return URL can be handled.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)handleOpenURL:":{"name":"handleOpen(_:)","abstract":"\u003cp\u003eComplete payment flow after returning from app or browser switch.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)registerAppContextSwitchClient:":{"name":"register(_:)","abstract":"\u003cp\u003eRegisters a class \u003ccode\u003eType\u003c/code\u003e that can handle a return from app context switch with a static method.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAPIClient.html#/s:13BraintreeCore11BTAPIClientC13authorizationAA19ClientAuthorization_pvp":{"name":"authorization","abstract":"\u003cp\u003eThe TokenizationKey or ClientToken used to authorize the APIClient\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/s:13BraintreeCore11BTAPIClientC8metadataAA16BTClientMetadataCvp":{"name":"metadata","abstract":"\u003cp\u003eClient metadata that is used for tracking the client session\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)initWithAuthorization:":{"name":"init(authorization:)","abstract":"\u003cp\u003eInitialize a new API client.\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)fetchPaymentMethodNonces:":{"name":"fetchPaymentMethodNonces(_:)","abstract":"\u003cp\u003eFetches a customer\u0026rsquo;s vaulted payment method nonces.","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)fetchPaymentMethodNonces:completion:":{"name":"fetchPaymentMethodNonces(_:completion:)","abstract":"\u003cp\u003eFetches a customer\u0026rsquo;s vaulted payment method nonces.","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html":{"name":"BTAPIClient","abstract":"\u003cp\u003eThis class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.\u003c/p\u003e"},"Classes/BTAppContextSwitcher.html":{"name":"BTAppContextSwitcher","abstract":"\u003cp\u003eHandles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.\u003c/p\u003e"},"Classes/BTBinData.html":{"name":"BTBinData","abstract":"\u003cp\u003eContains the bin data associated with a payment method\u003c/p\u003e"},"Classes/BTPaymentMethodNonce.html":{"name":"BTPaymentMethodNonce","abstract":"\u003cp\u003eBTPaymentMethodNonce is for generic tokenized payment information.\u003c/p\u003e"},"Classes/BTPaymentMethodNonceParser.html":{"name":"BTPaymentMethodNonceParser","abstract":"\u003cp\u003eA JSON parser that parses \u003ccode\u003eBTJSON\u003c/code\u003e into concrete \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPaymentMethodNonce.html\"\u003eBTPaymentMethodNonce\u003c/a\u003e\u003c/code\u003e objects. It supports registration of parsers at runtime.\u003c/p\u003e"},"Classes/BTPostalAddress.html":{"name":"BTPostalAddress","abstract":"\u003cp\u003eGeneric postal address\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutAccountNonce.html":{"name":"BTPayPalNativeCheckoutAccountNonce","abstract":"\u003cp\u003eContains information about a PayPal payment method.\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutClient.html":{"name":"BTPayPalNativeCheckoutClient","abstract":"\u003cp\u003eClient used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutRequest.html":{"name":"BTPayPalNativeCheckoutRequest","abstract":"\u003cp\u003eOptions for the PayPal Checkout flow.\u003c/p\u003e"},"Classes/BTPayPalNativeVaultRequest.html":{"name":"BTPayPalNativeVaultRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTSEPADirectDebitClient.html":{"name":"BTSEPADirectDebitClient","abstract":"\u003cp\u003eUsed to integrate with SEPA Direct Debit.\u003c/p\u003e"},"Classes/BTSEPADirectDebitNonce.html":{"name":"BTSEPADirectDebitNonce","abstract":"\u003cp\u003eA payment method nonce representing a SEPA Direct Debit payment.\u003c/p\u003e"},"Classes/BTSEPADirectDebitRequest.html":{"name":"BTSEPADirectDebitRequest","abstract":"\u003cp\u003eParameters for creating a SEPA Direct Debit tokenization request.\u003c/p\u003e"},"Classes/BTAmericanExpressClient.html":{"name":"BTAmericanExpressClient","abstract":"\u003cp\u003e\u003ccode\u003eBTAmericanExpressClient\u003c/code\u003e enables you to look up the rewards balance of American Express cards.\u003c/p\u003e"},"Classes/BTAmericanExpressRewardsBalance.html":{"name":"BTAmericanExpressRewardsBalance","abstract":"\u003cp\u003eContains information about an American Express rewards balance.\u003c/p\u003e"},"Classes/BTDataCollector.html":{"name":"BTDataCollector","abstract":"\u003cp\u003eBraintree\u0026rsquo;s advanced fraud protection solution.\u003c/p\u003e"},"Classes/BTApplePayCardNonce.html":{"name":"BTApplePayCardNonce","abstract":"\u003cp\u003eContains information about a tokenized Apple Pay card.\u003c/p\u003e"},"Classes/BTApplePayClient.html":{"name":"BTApplePayClient","abstract":"\u003cp\u003eUsed to process Apple Pay payments\u003c/p\u003e"},"Classes/BTLocalPaymentClient.html":{"name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentRequest.html":{"name":"BTLocalPaymentRequest","abstract":"\u003cp\u003eUsed to initialize a local payment flow\u003c/p\u003e"},"Classes/BTLocalPaymentResult.html":{"name":"BTLocalPaymentResult"},"Classes/BTThreeDSecureAdditionalInformation.html":{"name":"BTThreeDSecureAdditionalInformation","abstract":"\u003cp\u003eAdditional information for a 3DS lookup. Used in 3DS 2.0+ flows.\u003c/p\u003e"},"Classes/BTThreeDSecureClient.html":{"name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureLookup.html":{"name":"BTThreeDSecureLookup","abstract":"\u003cp\u003eThe result of a 3DS lookup."},"Classes/BTThreeDSecurePostalAddress.html":{"name":"BTThreeDSecurePostalAddress","abstract":"\u003cp\u003ePostal address for 3D Secure flows\u003c/p\u003e"},"Classes/BTThreeDSecureRenderType.html":{"name":"BTThreeDSecureRenderType","abstract":"\u003cp\u003eRender types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e"},"Classes/BTThreeDSecureRequest.html":{"name":"BTThreeDSecureRequest","abstract":"\u003cp\u003eUsed to initialize a 3D Secure payment flow\u003c/p\u003e"},"Classes/BTThreeDSecureResult.html":{"name":"BTThreeDSecureResult","abstract":"\u003cp\u003eThe result of a 3D Secure payment flow\u003c/p\u003e"},"Classes/BTThreeDSecureV2BaseCustomization.html":{"name":"BTThreeDSecureV2BaseCustomization","abstract":"\u003cp\u003eBase customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2ButtonCustomization.html":{"name":"BTThreeDSecureV2ButtonCustomization","abstract":"\u003cp\u003eButton customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2LabelCustomization.html":{"name":"BTThreeDSecureV2LabelCustomization","abstract":"\u003cp\u003eLabel customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2TextBoxCustomization.html":{"name":"BTThreeDSecureV2TextBoxCustomization","abstract":"\u003cp\u003eText box customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2ToolbarCustomization.html":{"name":"BTThreeDSecureV2ToolbarCustomization","abstract":"\u003cp\u003eToolbar customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2UICustomization.html":{"name":"BTThreeDSecureV2UICustomization","abstract":"\u003cp\u003eUI customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTAuthenticationInsight.html":{"name":"BTAuthenticationInsight","abstract":"\u003cp\u003eInformation pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.\u003c/p\u003e"},"Classes/BTCard.html":{"name":"BTCard","abstract":"\u003cp\u003eThe card tokenization request represents raw credit or debit card data provided by the customer."},"Classes/BTCardClient.html":{"name":"BTCardClient","abstract":"\u003cp\u003eUsed to process cards\u003c/p\u003e"},"Classes/BTCardNonce.html":{"name":"BTCardNonce","abstract":"\u003cp\u003eContains information about a tokenized card.\u003c/p\u003e"},"Classes/BTCardRequest.html":{"name":"BTCardRequest","abstract":"\u003cp\u003eContains information about a card to tokenize\u003c/p\u003e"},"Classes/BTThreeDSecureInfo.html":{"name":"BTThreeDSecureInfo","abstract":"\u003cp\u003eContains information about the 3D Secure status of a payment method\u003c/p\u003e"},"Classes/BTPayPalAccountNonce.html":{"name":"BTPayPalAccountNonce","abstract":"\u003cp\u003eContains information about a PayPal payment method\u003c/p\u003e"},"Classes/BTPayPalCheckoutRequest.html":{"name":"BTPayPalCheckoutRequest","abstract":"\u003cp\u003eOptions for the PayPal Checkout flow.\u003c/p\u003e"},"Classes/BTPayPalClient.html":{"name":"BTPayPalClient"},"Classes/BTPayPalCreditFinancing.html":{"name":"BTPayPalCreditFinancing","abstract":"\u003cp\u003eContains information about a PayPal credit financing option\u003c/p\u003e"},"Classes/BTPayPalCreditFinancingAmount.html":{"name":"BTPayPalCreditFinancingAmount","abstract":"\u003cp\u003eContains information about a PayPal credit amount\u003c/p\u003e"},"Classes/BTPayPalLineItem.html":{"name":"BTPayPalLineItem","abstract":"\u003cp\u003eA PayPal line item to be displayed in the PayPal checkout flow.\u003c/p\u003e"},"Classes/BTPayPalRequest.html":{"name":"BTPayPalRequest","abstract":"\u003cp\u003eBase options for PayPal Checkout and PayPal Vault flows.\u003c/p\u003e"},"Classes/BTPayPalVaultBaseRequest.html":{"name":"BTPayPalVaultBaseRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTPayPalVaultRequest.html":{"name":"BTPayPalVaultRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTVenmoAccountNonce.html":{"name":"BTVenmoAccountNonce","abstract":"\u003cp\u003eContains information about a Venmo Account payment method\u003c/p\u003e"},"Classes/BTVenmoClient.html":{"name":"BTVenmoClient","abstract":"\u003cp\u003eUsed to process Venmo payments\u003c/p\u003e"},"Classes/BTVenmoLineItem.html":{"name":"BTVenmoLineItem","abstract":"\u003cp\u003eA Venmo line item to be displayed in the Venmo Paysheet.\u003c/p\u003e"},"Classes/BTVenmoRequest.html":{"name":"BTVenmoRequest","abstract":"\u003cp\u003eA BTVenmoRequest specifies options that contribute to the Venmo flow\u003c/p\u003e"},"Classes/BTPayPalMessagingView.html":{"name":"BTPayPalMessagingView","abstract":"\u003cp\u003eUse \u003ccode\u003eBTPayPalMessagingView\u003c/code\u003e to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.\u003c/p\u003e"},"Classes/BTShopperInsightsClient.html":{"name":"BTShopperInsightsClient","abstract":"\u003cp\u003eUse \u003ccode\u003eBTShopperInsightsClient\u003c/code\u003e to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI."},"Classes.html":{"name":"Classes","abstract":"\u003cp\u003eThe following classes are available globally.\u003c/p\u003e"},"Enums.html":{"name":"Enumerations","abstract":"\u003cp\u003eThe following enumerations are available globally.\u003c/p\u003e"},"Extensions.html":{"name":"Extensions","abstract":"\u003cp\u003eThe following extensions are available globally.\u003c/p\u003e"},"Protocols.html":{"name":"Protocols","abstract":"\u003cp\u003eThe following protocols are available globally.\u003c/p\u003e"},"Structs.html":{"name":"Structures","abstract":"\u003cp\u003eThe following structures are available globally.\u003c/p\u003e"}} \ No newline at end of file diff --git a/6.23.2/docsets/Braintree.docset/Contents/Resources/docSet.dsidx b/6.23.2/docsets/Braintree.docset/Contents/Resources/docSet.dsidx new file mode 100644 index 0000000000000000000000000000000000000000..92279bcb9abeb5352d32cdb833d04d25ae6dc3fe GIT binary patch literal 249856 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⪙}4|IHU2#J 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⋘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%0AEmI!E>U6i zv}j>V^CEWNh7S29KqRnry}0jFeZBl9mbkHuEJG3(slN*0&}9cD;hmx7^wjxb1tWn3 zR4+8Z(&S1$)K{Aa8BgPmf=uGd~}4wfv)x0SX{b}9JFGwh}1Vd z#r*l+^U~G<1j^Dkb7~HnxFczqh0I-ekS3$lcn#}e91El3SUb|HR+C`cWjoY#eu`+p zWbZ5!)Qz@QIoTNOYn)1_FJLhZvm-N|Xyw}5VuhZPFeY`v0O!4R7^fB@hPfU~13G`q zEE0kg6VwI*c{6E`mv6at2gGJsy%w10cb$Fcr#cL>UkHr`i%AMn$(SA{VchAVUr%4r zuH5;padiawZAfb@X(Muw1o!pJ_lMGdj-2ak5HZeTy+d@0jZjKq*`M^MEblVFEtkTq zW?ak-QyYK2U&8)D-4<*)8*eT{QbV=JP)dW;PtCrV%tf#$Pi=C%QO06aBD^@~$w)WP zk#{fwP`+Ll-ZUACf3`bNpJFmQ%5$_})CC*q;}qYLJJ6|GAUJ7ZU&dROIT4m~5yEaY z6;G2f^DT`2!(W47(U)iA|yAu~L z4f&nfLX)voIa)Qaa}vm4Hy3mxrNA5FhDtxKC#)ep6*^NNZ#RRd8~XLM8b@uCg z3O%LZi4C&Zy?&%`53!?7Oe;`7)32g1957|~%PCBIIXuKMl$2^i%UVP3ORF9SyV?IR z$z8$C`-VTq=aO z3c3jPfP}VX23pdF0YWNWg%#{w>uv)!%69vSJoWr~LHS$8-m&b153?AnmI7m7w3iC! z!HxXvo+u)%%#t!4A4vl`8FUSaeOAy=s9ZjE#I-_8?3z2*8wY=ucAK(zPUT|6g{&FX z`PqVI-6p|NylkslzVB42RMaFFt<^hAZ1S;y8AD2kZW}FX+Hi|@r23+iI+aej@=-{f znVT-NgcI6l-Zs)4i_U(3^fylyu;N}Z)H7*JNM*!Ae|b#JAg^$kJ2@H_v}+gdtjJ~d z)*0J(S19jRHu-R!Y~E8}(X^nI&87+VC#)Jqo@G6>2n<6Zaqm;VToVWtN(; z4eiw1LC&HJ`jsqp--|N#u0y$*VP^`u(8j{oXIi}djZa!dzdhKDs}x`!V%v)0QGx9n zumcV-qr{mj)e0QVN+~S?k)IC2^Np-mjwjXB)2d&=iH5t7c?6-Gk;|U3SnkXeO_v{w zrr#;BYYZ`>wBp~8;6s~KH|D-0@^4=@z2V=uP(({J66hV5{)VvpFzEfh_A)WH*8pvY z*aTEXXYXJvbL4Wwe9xpJ{`<47^YLh;c0gJ>0ec9(6OU+qO>?6&G{qrW$cBf}ZzE~a zMyxkJ8|;OzB4O}Ubn@-f&r{eTAh!)C!jj)M=KD^S4!IpGDs#JdY_Kz12Dhw?OdA^S zX-WUt>Su=&ZX8mq=ba~yatO>yAZ=(Z6}n2FJF%u}#4X>|RqpulDSdW6a5#l6y>nNT zc$0HWzI_^rk4yu81T~2^Fn^tq+eaF*N(cT8N{P&#_ds+c8$Ky&{+lUc&F$2=XD`JX zewIWkCs);JYPlZlnns8#qw~#448wDYTMY9XOT?;rfY$A!H4k~vMjs;i2swjA!-MkT zlqL{Ba6D8}$+;RtXuAy2H~LskW})3PmwOOBEz!Fu%Gn&U{O+%i@(Fd#&y2DTPaGz; zuhC}49XW-ItCqeOU?Q1@icLM2+JTg4$gjU-yxx^nk zh2be2!r2-0H6Qo%#vMPz zBAL!jhSjH1)SGw>zlFK)Jw_|=d=@E_HfQGJHoeWFa{cie-YZS&Dq=Q$S6lsKab8A} z{wks0NOIWRiKX9YgPXU#^XnVp@M*3{j32;i%FzkeG55x*nj^?s<72zXL9jpZ49hL} z76>^7{^hCcyKbU_2&#bsX%u+*eQ@9YwZ0+PmMHxzg+~d#j+qxTd){GOmFcys-Kb!$ zy*Zsm4)1&xa=C$C(CG zU}Kzp*)WcPY%2m{$vM9=oi75umNIia)wbWLSS0xt+mUqM=6mOOD6UDJe??xsXubBbtkFj8$uzzng zl5m4sjl(d~U_%*ih_ZAQ#buWwQDFbT%Z2L{0eHC@UBYrb^;H3{SBsY~`D2bemRpO? zcxsVQdVM)9k0N%M@MljyajHl8V^p(8tAyNUQuYjI>vzlPnSCtR1=@{pNgq$-qZ(0u zwHw9$Xg3B7rId{n8IBhl3Q+}F>ob?8Mzxp+1afccFByq#gNI@wrD?@xqQLz9@B?>S zc_CiMOlwM#=}V`r%$nay^YnEp;)<6PG7glICTzD2#p6U}D>~_g8svoF<}^WNw%;)w z;hESVOoz#^{XM3m$y;yY*X4&@!+E`3q$2BWdHw&u;Ya$C!}b5|^79`zOYF39KCDp= zrFSQxpLoTW+pH+t-llQAi|sV-mBDHXBHDW3q1wRzuG>2QAAs2M@D+ak5AB^dr39&B zh@Qi2I4XEK!9211YHWiclrml}n+^viuuxw@_$_-f5bNPXr8VYAe*mlZ{=8&r3WKsA zz+l%kYc#s$r1t@A?1&JKJaP$CaN|zaXn%Q1K~H+yUDr47M8PN{hL;;_*%hN}0~NS) z`2{Jw)JGm}fHS{3wxu>dp{6JS7<4n^%L)J=Zljf*e$&PeKwyU~D?srWwfNk$VU2Na zV&dZ4yrSVc{9MXMlVZxqlorO%Q>wpR2#LVFDUZ>f%JKvPem1L3QcvJ7PKQoy>?F2G zF>b=k`Yb=7W=SWBTPQRUV~P%UF@b`wnt<&KO;1I}-SNm}O{rW+)Eh@hO&Vvz?h#?t zbtz`kpqC`1qJ}uCzVR4C2&dK8t;kO~zoF*@4c~V3h-Kj1@wt3$`dk&(0efY|(@A|U z(R6Ud>;4t^=zNY7;=&_M|v;xLF`lnot#e_%3d0S6_s$nOUw4I`jyOr$I=fSm{Z zIz{RcA9mdJSG2(AadnHpL5a?U`?qD)0NN~^a4d3>&Ei*{8l#DCrqH*t6`FG@s9cd% zn%jiDPJ&1*`O7Iy5`vQ|lORHsuu}(S9B@`b9h?^R?hP8lK^H}fX=0tFPEa4??zviS z4eNf0j#6FYCtOJA^=-&DC3~bBNX!+H=WuHg~Cw2 zpDi12Nl)6~<`<>eWQIbwIG{Nh*EZ-bib4z%UYLD!gG8Z=|BPe%$r**4Is6+_TNLFZ z)P^p-RT1l>U>Sq22G9N9Od1Q37#{Jd=^bfzd7U$01WksAeySn~e_uVh>R!|%Z6*~@ zp$%z*)%astam2T*U4b+kGTBNqsS$=FgjnBl0}3n zN=0D98IhIDJ@mh3RpOqP;{qSa=Q$rR`8E{jQ|38VSAEg3_%xYXi90ZE8IQpQkMAHu zoX%1uVwPT>w%?o{IVy@`P*2pJj>bm!ICOVXZkC|beK4WFCdz;j=NDeSN zCN3ze1R0E~sb!c@GGwDwbeVK^QS2;Ea#DowX4_NxIhrNEj?W?eG=W8b^NCG{6_MvG zniM@#gpZ>s=N%at1 zK*mvpJ)1@^|=dbqNpxjF#IsMpkX3E%G7suXz^QJMjhS)Gaws?)>c`Suq9X&ca zbt5l%viSgp=CL9ce}M{egPO?sBo=G6cenJ~mhv(@B3*-2A3GAp7vX1lO~v@4`~-`p zMzh;$T+kbQp+&8e!TNTqbGHXJ)Ac=Cg3gs3-c#d0uP!^GK~`syLXFC}&V8;Q@}93i z^*^@(EGC$ubIZlt z(|Ehw09ipQi(J`Ya+h&>dECHZt_hOC@BuOyx>~#wR;?3Och8Lu)q}q44QI>Y>*~Q} z7-O9A8_}~BXO21lioJ6mcP74R?fe)DZ_gkyw{W*w=pTK*Cl0M&ZaISF6<^~_GXXA9 zIUYDc&0|(%!j(~imtBiM_NtzX3!L}-jn;w8Q_O4Ij~vr;3v;9iT=jHSRd3GDsvLT> zT|QP%kH;{-RnVb^wK*lz>=vNZcQU9-gE*=HU`W z@3C)R^X%~RgKjUQFMi!#Y)d#Xu4{1$Vh53?Pd3-v$hhR+6MemIv!yhpb|xfUKyQd# zzb(ew=tv5#e4~MV(dP}5asDYn6M6?e`qRmW18ZQCP69!hwL7OORtEtn^HVkRmMq=G z^S;np&L5L>E5HOn66<8@$BVfDF+pqqk0UAU8TvJ7l5S3PRqOn^E{OwyyvHI7gYAT9 zwMk4CWIfjCM-BZ=(JtR=&3+m%!=w}>JnGIPs@R@>6Tn%4HAM_r6`|frJ)z5SN#xI+ zsA?mOTj1x9e9qBWN<`*r!LT9eKcuJz3x&U)C-7-gM3=wcR`@8;N1VChzW7%GD*hSu zc?`DT#z_x&7ge4mIj4bOf#=Zg>Dr!nG&XLs7)lzZ+&zHFKH6kpjBYH*R2ITaV zTM`3eQozJ4C}}2l4`i134rDf~1}5g|k2z_UaCsw2BLsu26a%uEER>|5x2Gdu8Pe3> zlpvAqw^R563=ml;WJHzlNdL%M09#i&tFxR#8O#O3)}_b;*gB7e;XYJ=0dkW7Vt^E= zu$fi7u@|oR{FEgl@3AUEe^vJ@C|tzr3mIH68;Bni=J~%-m_Hnf`d+}D>1SYlPJaXd z>-OV|adV<|m3{#0gzkZLqicY0F0=r~+K%HMSjYH{)7-gz=y3{aoKSzQn-t5);SU1H z<_`i0)*l2Amf>Z-oF>7H_|LtVn1nWpQNL?ossIg4$5-pjTJ?faik(yXqc(Y7wv}vk z6hgin5CCMFLRqML;8~-TCRDZ51%qN|_xI>iM_3xAKya~iJblK5K&wx8x~1yBBh`&< zAHnUYh})d8p@^`rvxxJ0@Kq)z#_0Rh>!#lDUz&P3x#WIKy#ian|MK9+)GO%{?RD>h!MbS$1)sASi&>K=c`)D8Uurp_nWmf8Ka7O41F;uQ#`s16!}<{ z*sAS%GvFr^U(zcIcMS>0YX~MLG9RTW0Sdr$f@+N3dWKj3dX76 zM7q74gzLX3b$x%M)QK%7`CZh47pSXhwy_@_XLW?{w0EU07?9e7%OTA8zk=hE5HO} z(ET<|lB`75+;?4Zo4^HBI|SDer)|I4)3gI z;?hLYl5|`KmO!SR{Bd^2V?kY5+EfWlZ0?Om*r+frSVwHAH1ui6n7AI$lcG{X{@~^w zg2>ZqVl)qD5PZ9xmY~E)AEIp`EkJ1RmQ61;=z*g{u6fv>M`q6pXP2`Rn$W^CA{rt; zzhd=wOMu{ejuAK?3&Uy8jzT|gWc~`ywhdA(@tI4tY&)x3MU zhbTSYTsAtFKqr1Adw-ORTbadDep;KtwOse4!rd7jS2+qC1;vf5lQB=FQ?E_H7W+Ey zGbQA}`dcIM@RL@5bzg?DDJ(N;QIo3~<6MayJGSESuMW8hUI=tWAE2W z*iV;q6$hDX*Bcg@4pSFqov9=JibhGYSY)Y~WMj<3AtGvG9cUz9jBQb*#Md#TxT_GK zjcql+txE+Oma3p;l09H7w+Ibm_kVKJ1 zpkGz$iu4#Jf5RF5P=lTJX`62&!juhp;J|4k-DHE3Y$!2~9+zXLf%%}3<27@@SYW{W z4_1ufVHlrJ^4DW7=ZyC*ahYf})z+hk=%=5pS(kLQ76lEOpG?Id9a_iWcldc+mGJ2A zEvY)@ZWM3j3(ktyueNC5JA9K=8I;_j`?@~m*R)4P!z+amqs6Nh;h;Q_j=6C=K+owo z$@!Mb?jo4N%)U3ZeILSMxq=5KVTNzL(-&iHSQ0U@2e_^?d{W#ltx;Z^uYKxQm^*dFVmcLo8Yg{mk_4>Z6G1-BaoH$@BTK zy*CWTPW5$^Da%_W#_ABAqS`g8Q`&3At+Mn6N1-pn*G)J2(6?4XmLmm`!gNqScU+FX z+@T7!zj%zePeQ#$Xouihq#h6_yl`YGnB{ZibAUP+`#`4kSqO$N{g6WVAwzKCC4Eg% z%(BpGS#j}0`}A**Uv{b}WKHH$Ol&H21Mr$$^}N;z)qq15y|gn$u~UB*fD)zWJd(Z7 zqE&>Rgw!6F9^<~U-9^_Y8d12y?5dRT?&zf*9X5`VYU+owL6es86+C?w(@w9E9pNCw z2U|Cf6ZibkjF_}EyV$4=S=kpe;x-2E4rtHMG|%mf>g{V2E^=ljqomQ0XZJTejVwy0 zz_hy4z{~BsmG?taavEW;(yv<;B0C|}(wZ(>)m{-JnFdTqVnF9h6CYd11^5!v>r>Lo zR3~5I@;LB%pu6a4yE3N~6N{dTmN`gSrYqc0t84>B)= z5ucA-$zSekeVD30);K@ud=N7=w zWqLO3t@tJPg9f~_H%Ay@wAft->A%R}xQy)s$sn~&`?q9~rnOQh8cFA6jN@wX`FUa= zb2#DaCL(vZq7fE*=hdw|v~s7{&|w*gF*x!LAE)N=x{tNJFTW0xjDI(4X8&GcY2XCz z5^hb`w^}wln-)!*7LTBY;;aq=CML`}1>MSt8vfN8L>u>uL>;3*TGc!m0eSezPnyc6U*m$XH_7w(` zTLh|q$&mykwjq_8IDJ(K;J|SQ0UUUWR!{RyGfp#K-SyfoJhG=QJ}GUfUl&Blv z7{OIHLxFx!WMo`x26Cva0vLew}=G^uxY#Y z5B(dCVKEAFL0%h2kk_WZ>l>Q71Lx$dy~Pq8Hf`VnzKnAkpJCD#LnC40vb2^3)ZjTr zaoI|ws?A2Xm2w~h>wz4@;1w{L5Pb?Z9MgGNt=*ieG9tcJ||B=5H$$!LJpn z`&;Ui0+0D>V`ExK`U&NmbJ8*boEIalO;J-iZgqO^)&@~kMbL5-MH^MdYbR>(7*?g0 ziPptpdrjhA>TiyY(ta1)3~dGd5Zl1nR#v_~kkx!0I?57N?7s56zx>6a`U`R1=D+Pw z)z@ROlD~+G9Eku?(E)Y(IeOHIhVe_2qgSYD{JFuF>KRzWo3hiHjHpkeIt9;a!z6}BtpIa=dO z^V{u=1aSH~l4rgBF14v?BYLUmr3{L$@#O$go6g3x7z%&^{*4X909QV?o-p3q_BXC& zFcpzUtH1#e;H3zhc)YLriSzWH7ys02Uj0E-talg9jUe#5UAcihk&)&QG0|dkCHFG?MN{QW32}GLAJPSSB3k<@<+a+$%PHi3JtCa5R#bbwmn2cp!#pO;r55)EepM zFSW|$`dPbHl*MEjz*WJZdO!v%|I%Y(rE;T;Ch1SPy@$wDanYI+o7_Ls6)pdwD~hto zfEU^S30K@YI+FYl7eny;JS5=!tHS@;ZKG@?`onGWf}H2^Uv3+dq40xywLRFq+8zr~ z+f)Cgw$Fcj@i9f^FSm`)54X*_xUnM$t_WF>26^w<4E^cZZ2S5Xu9ySB6%k+BJ~QW5 z?_}nz_{+0t{|e;UY&KW{;ED|j%HKVkr~l;H9JUT7MS9i`@@z(h9;W)=3-0p)&*plx zv=jJtJj&zj{O*g|*q?&?RlyhG)u!}g#!kf4PJj}i`z`yTT2j|q2R}(!tVa|_6 z%fz%~d*OEO0gEVc*IcZAfZ?95)Toy0|Hl)6{_jW?4C8PNfSthg>jdEM2s#09+zt71 zZUiw|FiXelkk{Eh39JUBHYUjX(c2z(DiM0=`6+OS#(Lhf=nry{-!ED5r-@Cm{v!&B53{$t*tR+SV^D99CzM z7L*I!!!Y%ASN)7dq6gwVgy@R9xjw#=6q-Vt2%^x6hMR6adVX`HR@}rD0lDWk!ZSZ( zf>iEy`SJ1`@ATWt7*iXFZhM^>gfG2X_{|L$YxUiA%YGA(a~qQbJFR!uZ*doBO3-Zk zV+X|6Zwfon3@Y&^Yf!v`4zG(3YlDz!06b>*6budT+qgaZgp50XV^6D zN70+WxPXC&X~fME{c!Zk{W)FKtd%gSUQ+FO6Q}&qyK_6+V;N)V zafLD)d@%}x0gdxxRC8jlrHE61JDq`nTAaT))LcqXXq11|Iq+Kn&h~LaFdU9ecE~bWxLC8jeeK)i%;Uue4fT}{kDov|L*v#ul z6d99HcvB7g1e(>jzLLN1>l^U)tNqU((O*yF48mS%ndvFj+8*E9o2iDzq0@dT5_1BN zC=2Mz+;kv@L!{$|8(>FbdnN>WuXhDn5?Z#}y-R<+*JpOE?cg88PpkE6y&x}c?>uPx zYs4%&?7bf`1+8XEE}})R37{#a!Y=1L_V>dCftp0~oB%OeW+&O~QvX4FPk|?73MPnrvUf8J}tj-%vvP`UJ?IcntUx!*}?tj)kpI*d3({ zA)5Q$K=O9C9h~I%U1ComUW28_lo!32b9DpKMxH_MnsDEIJX|%qi|G>?g4vBFy&<+1 z;oDCcW5?b5-Md@6xEWcaGqUnU+I)9GpnW&P zj@;CF|3Hsk6EyXOADI??H4*4WJM}xuN^w5|QwXg8!RNEPc!#%MR+cth{pD5NepeHW z@W_w%d2~|=`S@3_N67s78T!Lz&+DbLOF`8L{3kOFVL&xP?`Jh)_Vs&V!%5-J?HmBk z2bG_E59g!fhkAA3>P#`3CEGRbzbn>hD>;z$)m3YgXGH0g+grk;7%!iUS;baeQ_~*3 zJL(AOL53_t+|tg1HN?%Ge9KxTSp60Ojp0XcfGKh7 zvAf9q<9S{R^gK@}AjWv2BKI(UCJppFADR{@^w2KFF$!1L+O`uYMk_Zbt$~WsT{1t5 z(J3wywM#>5uR4W1={H)o*NMpLh40_zp?-Ux=Ph(y?*I8d4+(YuKED~FV&p6-0c}+| zrab4a-t&R3z%eNLGsn>!8nHioxkBKvD<)%3XKBWa-K!RwX}VlAqPz>onJ-ULSox~r=EUhgD&$gNq?im2> z&Kb^bd60iy$Z6P`zEIe8>iZD(@h3W&G+F6@L4e`cQo$R55;V|vt-ZJ9Erl{|w z05F|aJ+J;!cUbnKtTvd6LU>6ke^!s4tQTY&XPtGB>GOwyG>~Fq|T?jh+3d7iJOqV_u;*++&P@q!6lP{k6D(BYiY0Or#t) zyS)!Ttxz1TpV45S+(2n_UJaS={)tX>0zIEeuAz%Uz*Mr|M>}yDK{Eo~mVU#o3tX#o-Y zWB_7c=x@Y6ML;ma^qXL2_=jLd9R?n8+wa+!Hp}>PPhNWlI5}e3;Z&(90qKi*$zuvq z{&w$+@uQ^eho;3|K|TesB0g1R*{b}a@71|j(-0(30AYN!Bu=4FRLnNz_euosKU5-c zI0t2u-%UH-3Ksm!!#xW5&xiZY4*2is6=Hl-H2sSbY04|D(9q?9v#(ULeP~G97+j$` zcljHCWg(;E&=~?YQc3_K%E%$ zvx%zma!{DpxLlUhs7 zz<{$ohX#G{CA8E(2$aL(KV~P`g<1J#t$XR$w~Ho5YDtYpf}r*4be*S7#7Tf=gCmZi zA5BLNTCde{$3c&H?>$zUIg*XrTG|=J_^8GKbJcCY-u~A5LIC8$vzQQTH>(e+W)Jg7 zr-Ia_qNOS{gRUU$F9rNtI*hngI@r{}*0C8XQ)-xtyVK-Q`Y!}thp~!eX4|Y)kP8On z$)lGMsv)lt&Ujzj!{G5BS|+IOLc=?}T%n(`xap~KFYq=MJnSYglDV04*}dk~B@ml= z9T|4YoXBVU#e9OfQ4@+e+c2@-;8N_$VWGsbx>P@lFDfXc?la%{N_n_KQ2qdHg`H-q z9w%_XV4Cs^q^8T}IU0gF6_adDAnI4i9EvN-Ad%LBEbW+k5s}TP_vVW;9;TcjBnXi; zzEv6Ly}!OXVSu%bqpl`vK$#ZbT4wH%MsRRz-s6St$iBGTi+5uGw2&>h?~8NMtoGU- z5yLBpl&H)}ZJxr`I&yQgw{rNLxY^ps?gU=i6&_(DzD0K77Ypa>;NWq!rK^yE#`)_- zx~FTpW_MY0CVUufB-i|eDSW8z`*><^wxx4Ki}#coQ!XkQ`ASoI@%t;u z)gorgD1F#PW_`9vM~_L%wT{Z3S-+bPJ}m0M<2Zr&An&T1$MkVeMd)+b^rL<(J-0S= z!n?f5>#$F(Zc&2UcvUas3)uo%)DF$=GAcv--#mC%z91xx z$9W!Z?k1^sE9qP&`W}(djAl}qrnDP21AzNd%FsHr^KufJ?{;qPh0~cw z>5dU>I%w$vH>*~f^nFIVkE|*49LQeZ0QM*beY}T5gYuSMr^d=wFI>@_*{-%0OiX*VMXtfDNuVD2Y8%qH(W+`U49<|#mE{|ql_a6_RYl1|4u_-f z6ZzE`jSZS$$L2LoO42Co0pz?dI*B-oW3Qs-)Ixd~4-_d)2d2P^_S&eaDn&jJ_N}WO zA!ON^)oY|Y3$gHp150NSMKlaBhiV z)ILa!1t>3FEEZA7OU=A7>qU=$Z-=q+y5F=N;S)m;FcN<-tckHMFmvKrFOHtV(lvX6 z-$8|^oZql<74ED>_QV= zC+i0e=&Yj*s4#JkMU6-1RI~ss(}hq)r;54u!cgR0os(d?lfiKX%U+1_tQpihuD-YI zW1nfAX<3!Su-!Nxr~5j;4P0;;DgV6S-2c(NL{8Ss2H$uD#W{XjSUDm>PgitYJeQc7 zT-~oBaDPxNM9Lvy0qr(4FPlM%94psGEtHI@hTf|`X>IO<|3$7`(u5%;F7J?Im8`! z&qj*pz`(#>qefY6`IWAjnUR&1OAK69HB^1QO!pE4=X)uWqWd}mitn~_;jFR37=n@E z^P{1X)x}$_;6;3mTbna)=-LGzM0Nr$!**fzCs!z@99yAFkd28QO7CvG0$}bVRLOg) z+@t{1mdac2#|?n<`Z=?$_YCyjoHaE>ul}Of?dIXp?Yvq~B5sv=PF1 z@*IOrnibH`K5(L1C=SKckWkBEOvvXHI??i#a7y$hjY2=jk!7%Vw+fe1f-!ep`E5gs z$)^`G;h||M0A!%78pYw){wws!ud|@#i%VAxyDdk?23nV}S2AZ~IEQSeh$BfvQz8JZ z{pDjoYtQpIodS6Omp;tr5|We#0#tiDt+*PX0M*662BOZh;2_PFs-B@FjBi{+s`G-(HyT?4uZlIXiM7xUw0FWfk8 zs{9uR;)cfsti*&%!_Kd~d6P$>v*#1KJuXIsm9LaEeQvgbPyMPX&}%7Q6(B@3}h~A#c?ORP3qrV12PscCNX{QdxQ$S+DkR2M%KDWB5kN!*`cc z&3wG-4MVT3*t(Sn~i;-5dDcQf}cQ5NX(q`WtQ z<_%^HCa7_)r9Cv0CXdZ0`m#YJwL}dR*DqiG_qzbD6l+P};wb01NuLaAOscVF`RQn} z%$W|r4qH^LcZ+}9r+!?l;S(?QmR~ccBliZ5Kdv0QUzzOVvsjV%O&s!nyaC|LhXl`{ z=Ik@NC>aH%6WgX0sYbEqrV{g89jHs-jF0nkJf#ImmS$ceEdqjjJwR|DO?dnPkSvM7 ze3vZQqZ4D2*{qRNg!w->pCLIY59_(pY=w@@yL#tMd>7u;^qb&5^_cYGbrjONM>5M# zxD*7_Vv0E}f^OILChjo1rt6pCbMN$eud)peyoJ%NP!Sc=3c$uS&%}6F&ZvFUw$Hes zQ4sw8Zhz$liO7&Gz}^aO=zc{D7P9e;t?7iI(uF6aLlz9R=9goAL2^OR&fJkikWrbZ^xlY#TcbGg9*I7QAuwn9KDW5n)|I38L$Vd#mfD#o$a@X@^fD zx}&B`3Mm3fsg2}sC$Y+WSoGyb28w8|oXu5u8C7koAZ@G0;>+uIoU%DfOu(<$Hk53% zJhNH6`!lx+^B2|1&j<|n!ZGvGGhj$Mi3`(O-UM`{6cH9Uo-n}2@nWgUS3$~8lIApp zxTXk)rW(_>(JW3y<^}068DJG`pHD{eBvMFl#lLFEQIq!`jWo$fV=)M^>a7YjD81#B zni0b()J~DKg3n{UeuayQH{R04~X^Xu<#eh zqS5vU%5|T3UZxbSIn(z=oiT85kd{9UMB9z7RMU$sjAn*Yb*Y4OnOLRP_YA%$pQX|) z3$GNaq_G3|rwW&|vn5a!T5X(_JHD~-v5e@d#8r^QXYb59_KW69-Z}`A23C8Gy@w&q zqANOde*J|-Z~k*UZAZ35py%Xko~Gs5g*JnllllT+s?_wYbgJ&Cv-@tXgcNo8v96;%ZuqN_Ske;CW&{CSta4Mk&*xnGY`UvK4YH zttS#@D1z^%S-s{v3klzEC&~IQu`6$d9bp$UMvX$o564wd{6_csk73e_p`8yZ!E>*5 zop$E)%)8Rc%JOR9ssB~a!umc6qhlaKY^P-R{Zqee{=a|fe~Nr{z~5r44JPII?0%Hg zURh{$-#SI1#RlH`$<22e44!TKZ)nE`j9`=5hIFBb$4w>m3$AC7nLj_@V~_U0`e-FE zf8ywLw_mjC>Nh(YNh%2;MLlN%?$6+| zrQaxkZmWBK&V9F4V)!9?L*`#7q(dC}=)4EJuzM7<`N_K0V)Wa-+kQ%uq!{taNu*D* zxnYn16p}FzCMi^Wlu!vYTg&I*i5*OZZF^v-s1;OYVC$CwMWy)E7$01Ext0SYVoje~9t|^*O$O%q$@~n;VY(ZStwhEy%@V zLh{qab5*OH1beFXZ?(CP`&} zD+~&g1j~%n{tT0-TKdCe`H$weE7ELFo2rLAEy#ZjbG&P^_STeKZpS1-{XULg&B{^I zQUZ0}+5)`u_jFniJ?fBqHWUwf=g)EbBGw-%l=!!Ievv^*&pfoB@BAcMeLvs%kM`64 z_RjAk6A60fXM7TWjGEq}Qfi(B6)8-TM?W}7`+wsg z-ARklfx4?h+E$?MD&^AizjKfZ!+vm(o`HC!b&(I-K^&w3>$JY_9Hh)KfP>`Pa-P{u zq%FN+lK+2>lH5;`6PXeN-OynL`JbN)`l_h-&_oOq-hPB&a?b#%d6;?h6ulK1@kBHo z(WgW{N173>Zj58emB4VV`9s&%W>)v?ELFkqW#>QTc>Ku9SU8BCQ9-zSWI_zZutJsm z0?98-st*w0;5EdzQ$#JdzM3U@DSo&#jtg0fWRNYH%*@fp*ngY7vJa51d{k7ouQSu) zH`Qn~U7l=@{>dh#Gq&6NPi#`~Uv8cd%j8y#|AEOd^1G=s^yOn&75ks2&avcY%Zh+V zJ^?ZjD5+jDKZSx+p&dCSbmPM^DHu>hJJ8`P|I5^g!1Ke@88v*6n*53pUP%!CzMo2P z-%qupS@l{RU{29}!ffsE+h4Ly8wl{}P6Yj@{sHIP zul_;S>Cv%Bx&F`3{a}|S$G;e*|57PM%Hs&=di%d!DSi4|o&-YB>Pfd2j4i-FlK<)I zY&pK^F%*VF7a6X##1Uw=W_~L;qLDs#OoC{&W%nY3J&3ZoQ~~;}$hw=7NEzFCSelIm z_w`iFU8W#Q?HNVhXy}~zwIs-dqNRV!8%U{&-!4|A6?PaQ~*|3Eg zwRjJ%8-2ogT{Gj=3tmIWvsyZ{SSs#3aYMCsm3e!w#*i#1%NXwfZ$jFP5;$LWVB~cR`R(J()jT)BkfbJ2JO(+{ zgrn!q+tMkug|@dnBId5B=WFvvXTFs_yv*n0kLN3ji~twn#sZuv`MH(%NNc&Ng2h>K zR{1%qUNC)J8e1Mt!T>QD@>B>49%JReye;C_brY3^l=;qyLs8vW1(G!rOoU@x{1&CVrI(~?ut=uS2z2}sD2a&r% zoiAtR9cgMuDFFnW9W&+X^D6;6XBWuMx%~mkhgYYpYr$7L`%Qx(Id(-;ESgfrSrLQt zO@a~H^Vogr5s8|+OFgp$NOQMEo_YT0icL~DqpnykJzX?vQ9}e}P5R-5_@kodN!bN=?PTpf`?Qo6uhA`geG?<^aH$8MC4_V z*L4PKHY;73+CHCal105EYi?O=)o=x@;-FRsV1yC~*-*BRPuBlG;@&E#4s~0%4H5|M zA-Fri-QC^Y-Q6X)ySoOr;3P;0?(XjH5FGA+Ov&17u6_2sr)u9Po+zru!{G0|e_v~% zmGTTcqVNa>L!?C#h_gQ_LuDbvzbW8RD>ly_WO}tlm=~{8WO_Uq+`_s~QDph8XS%%C zP#)qwpQmr zs_O4a9D(+~lQ^P6ug`RuAn2Fv?^@{p;h7Gu{q1Mc?a0+)_N{eB2hu1DMBXZayKTU{ z0^praeTh1OZBdJ3!D0IR*!Q&MSG)u2BoX%%!=ia>HU7k6-YB;nxn3 zVFrEQSw4n(f?)FnL~)oK>KmN;U&cBbBGrbNa@eqqI+YbfIdb2#fop z%P)NbA%Zl@kg6n1n70NZ0Oi*M9jRb!8_#n}G#T~)ufkEo?Lsw{U8& zJqE1~rj1||7g{>0P5@WocsCc$Qte8BgNC^6@!JFaT@8`eKRnQXW0js^*1#1*A42)z z&6jB1Z^p`eCN5Ftt}$v_Y~E*xr{B_jBbKM93D+vB6)Ltn?;{+_{cVZHu26{~DSh|{ zL*Z5Jfm_AN=)$CGB1gGKCE}U|Vu65u-&rhHS7Dl8J9DRK9i?OD*02hxXlSdB>L(*G z&QmNHCWC5x**8n1T9!d7i^ukpw+qwMm`z?R;`wKjcsa&%4u~#?J6euZH}-4j zk4^TQ4HQBjFq|;v*LR{_z5n%rt~&f$n01u#?K( zFS{V>pWEIkt%(Rb#cUHVKfrm;hwK=b5b{Z z6|(>4Z5|{KzvOnA3yY5}mV!O?!j@UJtb$fRnT2^_%Z!i>qUpK<*fOCf18q-|FIs^q z224h^Z(s4%tin^r6yAOWH&Qn!^NS3Edw(Ia{~?+Jm(Myd9FF9Kt9RK7tSs&eUL|h? zv@Jr*w|rDaM7d7mDrthLuqpMjM*^Q2fER6wwl2Pe3y?%bak7N6U4(2c8=> zCY_Yb3zMnE7G&jI%40UZKHfnY$~<>N*d4+Uk*#wyO{kfNC+H``JFX!<0xe#?pjit? za&rKnRLWCWeAJZqKj*wRsT6M$E?;uqtl8-Qmh(m&Z~gCc-bzFNG3UKKw?;NojcNFj z^R9i#c@xzQ0CL`@z<`{0VHL$c<-9*TGyYF<-XqUN|6g+6==O&IHtVTY1{T?Xh7e$% zi<@&vY9sc^9vHpsmi2uBr}&Rj#4}wc7#4s$^TLz{7P?v^cZ2`Qi(yz6S#Bw{H%}SJJOrgkGd!fdlmj$B#(q@|dq0NM7OEcx_A~czW&r)lZ=j0hm zsQSO$?V2$B<8Bv*cW>&C`Ya%YgQp(E!fN`z8}Y^tpw#^FzgwYYf_ShnIB!#?0XE$C z%3AAf%a{F59}M6OelsmFt_rW6gWZGP*OcxV!I(?)W)FG{mOQzlf z*SlnsK((I&mOZB%BWtdDHC7IVcoz(F)ZkBy5#JZwhf^B}%xI1D2l8yWbMfjB>C%Vv z^=@I&z<@v_qD%$wAF}p(;9cXLp=g%QSw74Ii8Ud&Kt8hWLJXmbciA4 zj%l}p7{0h|65jsm+E!H{rgXrKNcB#p@;B;v589u@kae&aLbIJNnsj4?B-_^G3K%FB z6Tu4SdwggJ0|P2X^42K-1v;YQ7gQKK{-Nkxkdn0znJlUVnBE=lQf_&>*B2$C|-rM zP(aMihkz6BI(XhmO93d%mgWpAaESDpsyu_?a6Rij*qIla#ly6Y1kH_Ae9#g0v!rlX zfrgC&3t|`M6<}umJTWHRM*Oq4Re79$#yPI=kVL?bLfqvB*TPKYBz>()lEI_`8yl0h zG;Necnq1|?kfZE#L<-i~HYhA*&t~8pJ@AihNb7hA_0LCxx283q%Uufr0-tEc6UCmK zmsoqjw?nHRKE4xQ+P0}I<(-Z}laBqwZD-XS;G06Mak1eqeD@?z^g~^5JeIqDyKi7x z>e|5^RXLO;zIAunSwA&h{-;&}{6@R16Y53_!`a5#+IQA@lmT0uo1_*8*|UzyKI-Wa z?&SgPa{f~W!73(dCqt~s-~pzNYn-05?Z`?M4Znb@7z{~$kvTHzzV`7rA|*h&41pb% z@O=aG1_K65>4}iP)W?|(3PU_f9wcujtnpo2nH=j2ltx zk_6L>Q(g9UE?4OfE>G#0ZLU&MRB%~w&eoAxam=X3BM_Lrw-N+!UqPO}-K97>fSSZ! z_T0#Z6tod>FG}%@3*#_Lx@I_OI89fF4sKG+n)9b*JuI`^9%)dPP8g9TQ7l;#*T=3A zZ<`c%L|b~n7~7+7sk1GPf3-7d=N{vz@M2kF&$)$E2xA*~nx{{tW;I^&0yG#fYVD`H z}!-rI;vwlb&I^FEg$~xBeDT-Tx7}fGwGptiT>Hf!H6! z4x0u(yaxg>K-1pQ%5l`B5C;p>M-4GyGQ)D34;u-I$|UD62Xb)xqeAT9j^A*~*z>i} zaEky%eXi!EbL}HB?Scr`iZPz}F2e5U8eJ?tg>i%qaR9Ct`u2!3F?4*bE$p}q`CRSwCTgVsdm#XciEJ=u_pzM+lsZLblXb1;pOGG z0l*1i`TXUCF!*{xaCkW(;L+Dz{1!|hJ~w1^Q9ab$sw8R|M(;2`_&b==jqOgHyIcy} zV%YZM66Oq`Qq#cLIf4HAO&B(%I?TTS$eZeq1H!7A**n=c8Gp7=IpP9|Iv$)&5cfZg zmx7gxstA0vo_{v+eB!W%O;aWT@O(x9H39Jo@RlLe7Rl9BR*j3|N5dz3PG*xQ^_^2t z2B~DNr(P`$+dIve`o~t5*6)*gzlx|0tJ+i^e-=@XreBMw#Va(2?Tusk|EvOI}x|GBMWeekO%phxWg3i2sZ{Ldht@MJ(wV3o4UhZHjg z&_o@#7rbA@qY)0o(_rakT|7dSiYcPR2Ia&JbpEr5dXp7oK^$F$umUIwgu1o2LU>O8 zDhk}=n~4ts)vg}eAp1R~5ak^^&!KJ2MlMD-QN;{l-1bJ(faSSb@87jVmBE0k_{#@3 z>s`qMBnlvk(ytPQq-+pM7xCX5YODp4@({DA`--)SoG}}*I!cIBagAlNRE(8u5e5>j z$UJo1oLOY;%zc@qpiEfjB4@@87(&OBq1&-hN*}(|X1-79y25fx!zPRKh}FnLTuVbJ z;L`6CjL|IlV=}p-08A!U;-sP>TyH6P=qFGC4mAv^_pzj(q>wA?_$jUM02T$wgBaLX zl8?&22T=;)x1#_-lm`Q8=+_{M=5Ik1*J(fI#y^87JiiA~px1Dn{|KUtgyxz33Zi_S zjTZkEM2Y*?Ac}g*YY+wb_sN9%ugN4jfwwZoYPR>A8$S-8DQMKOBq$VUZ0u=yGwl5Y z)>A3Gxho|)t(N;+7=P;SRe(&8%r z={@uOSMOP8CE1=}gg^2bn#G6^W24|(%w0bgU3t(RpM)9UYK>6f!bDYte*yjQ^}T?8 zFruK8KxKFdNyPA#gCwmNzc)0;;V(zBZj}}jvw77f$q?u8L${cALV-G%Nc*i$P%^Be z0K5uAN`=*6Y!5r|=F}yk#c44B#hGH0Pau3vH7vky&;OtcWdtm2ik@xuXjv2#gX$&w z`Tu11mFEdjgNmcUmIKudtwPZ`h>C~E$*C6KNe(*p0a#yCn$ z4mP=$!wgfd5&DKGeM1&un@D7|B@beAKyE}Rgbw=M?QW~T`jZ;787Qbq!h{U@JRJnk zauyZ!hyvi>9J6jvkM0gdi9CLFRr&I40-hJhWzZ|+QXPu!NAdq4d;(AVKNwK{f2axE zR(jqW(ma@O*KHX8-^WnK(<{lme&HxX7i&|)ld0qPHW|f6A?XM<_?IaGT|L`>08tkG zel-xcjs=iW{eHh1@LU3}22;FlLSu7Qm~3sf$gfv}`Dd7i(AO&Jn(ORsgdzXR1^3Wo z{&~Gmj?*lwi|X9qx3Ft|Kq!xrsg>65TaFDkM`Ng91>TG^(#-kdNW6-{ee%0zLYO!y zAuStyv5YDM=*NVf;UxBk^=aWmiURkqtg{yIOy0M>SJ&9acdM~xb_pGI(sSo~Q;mJ) z1I%)rKwKMik3-X+nlL5Oh^Znd5NjtpVgJPAc+^shJ?p*Var#wVMU;kK@HnH!uXr3o z%ojY4;42f;mRoBJNyV=Rwo1)@Fr=srSK zDe2W(#50LK`S~;G9X(8e`=lB_i0OVj({ajFCx{O|m|Gq`TSZvZ#VlDy9Lg2+uG0#h zm}*T3O-CNo-_S6Zzp*G;QwT@4pC54>;9Y;lB!V0jWlt16KA7RZKl&?>k(W4qu+Mx1d4ui%H{E%o? zDf^$WYE=i*9r#lAb?sS*^*Genb-TxW4uDwI2Am0PXwx(bQU*YVF)737ZejFNhav5$ zKz>5iHhhWsX=<*8Gtt}+;wFlbrd~Lu;b>xMoA7bjEJ-1$MwNf&0yoA#n8{VzzKpTn zE3C}E5C8`~_nX_Q%?lxNLmy1+Fb>hHq-HN(kV3$j3EVsPhNE`^?J5nnT99H%VzN7m z-L^B*L8oaid|)Y1*=z)yKN=dm#K1$iMZcUyYM<*8?&?^l^Hh!g-hcewK!KVS*`2kFf!~ zd`hD~ceHrR?YcHTH{wdYCm!`_OsyTf#<$sfp-<~7FUr(RPS<*9U?VxnY0H*10h8iP z{MgjEwtL#z#^HEfa7?Y5c`h~kJ|(*>uP^?Z!6LtF(ptJm;pOj$;($^t3x1Oy&7aOy zRI7DLvF*FSDTw#K=3LXWuz&nn?yIbCYkq`%{2;!(()p3CIm1Vh`>se>XfRKA>zfrt zZ|c0%O(Ij&(U%dTlSacBsf%~%*DW2&RyL1;W1WUgWsD(kdWh0Ogar@j28ctu_CFj_ z81*N(xJ4~-`?TLS*>b{3S<^9^bQrcGK=`pZ1z}sB%*XW9#}^<}=cjmJfohqTmy}Hn zE18!kF3|Sp@>lk&p`mNE)zR6iQkj=e>8qADpSY4qoW4(~By|@pp8~WCI*dM$l~1XC zo^l&gEB}1yS^*Qk33gqpff7-%;-+Y8PGwy_+mUfkI{03r6G^uPasV_@iq^_XL*{m^ zQ^0C-f%M7p{R2FIE%Fx)6r`}dt7Npa55NJOL3d>dgblv9->l3*CWLV&z?35DP)?4@ z3ERcZO(=b>(OoD}>V&Rz3jzmEzmVZXK?&Wqd)i*7 zVTidvSY*4|V@I(@uyjk1d$>yp#SE~Xtu8P9JbU{=eZPl856uFiwQkluZ1t|m4ty!} zg8hQ9p2VU5q>djJUWfqDNzm&8tShSH7_2ZyK&gVN!3xWI467u@=QiROo`7jOUWlqg zKWKvUOYinj?r`;Lbb?*B+4Ne)@t`DVXX+M{(QYH0eOAhK{FJe1CE05ar7^+p+k=a> zmQkA9)Nt0mc!K&(n-um@)Gkxc*A$9djhi;1o_s?nW^V9W(A<`xHvM?*r*hnJo~SQS zP6!9v@zF6^3^s(MebCq6Itj6KzN?t>_TL*g|9Dkze~>14D)@aXbk;OnU`>j z@v@w>F1NPbUiz&>yMn!$Oa8P;Y70cx^1GFypD>q9my!EluJL#`4Pi#x)yw!zZt(W5 zww7!_1_(tF3Zp`nS6egeud}c(eBLY*&>u(GP#y+OCw)t!zGgm{x8pS59V>i3vETk) zL#*?4jld$L2om2|C>#-kt?)zJGPPI zcuV7US>Ml-uo2HhxC_M?wV*p*%zY#5tKORKgk^^7p=@%IOd_WEOi1vQy7%GZpPm^)<(;X* z7D<0_RKHhX=J1;SK1J0eYST;L97Vb8l;oOpebE9C&oG-RUgx`krml-y59Xx&fW&Sz zk^jja9``k|dO3lon(M|JtT=DxtHI`%q!}{?xo?B@d?&hTQKOFJEVFU~ubb8X54P)0*(+xmssqC8q1dt>-sc*T;HlMFVN8&dsfHE>~!V zJH_kf53HQU(iaF#tw5Ha8M>{vD^_<6=X>vlG`b^hEMVsSKGZ^`cKYwVsj{$%MvOF2 z31PY5t<+320w>Y4+JD`&z|xO6JT4_t;-o!RlVRavt6B^i&+Ugc+q+K9Yv$-iOT;f_ zLvpE6+`Um^z_6syYHwvL=HMU`InwP@lb;0>QvI3UdNTSB^q>_DY%_7%8X2WEpSs-D z1OCEgzZ*h&w4ahNnQm;Ov>~2ZB95{;ks@^UL3)-5bzpYO4+ToWx%{y8Hf@hpf6d%z zZO90h@#(e+QUyXAV=#-n9OW5p>jqpz27NX$>n(RfJZj#*`EQqc(yNk_TAFV7tt}u2^4{7G4x%Xl!kCiX#M-)jencEO; zHhN9dBtuXudnMfN`Tukif7&e>+JUL#TI#BuhRt%PJfNA11$9~lASi~t@{WDWIKmem zqd%8ZRF5LxKc*BWCSXrP=4&taij|StT2d=6$$4t(NBZK%EJIIdugvqZJo{L{)H@MU zY&AUA&Ciypd9y zdZv4B%EVxJF1L39Mh^m+0oYIuwk#;d>sN5Vh95pjHt~pKzMP^x-#(uMjlL9-QtpKZ zcYJIo0ZpWmkw`!jsV9-)imhhbIMKNij_GOlF43C)#CIX++!`9pZz%%{ILrMT^$kh5 z`4j7`f%mah>`=xMs=7M6yZbARtf__5<@G#WlMDk2MwEIhu~>TW#SEa)WKT~4>f>&U z^}hFJ_40PO9hk$w7disKoKK6A>EM^=Us(~WO*0NMXLk^&zi4EwLk=ZHRM>AV3F9UH ztRi_dB}j57FYhfxZ!$ZJ&NAnqxHmU@Un|)qNm`nUA%&4th4DfSztAEqiWy(jDA-!R zU}S@8!hgp{-&w)_QyEGA_cGGnr2^Q`fLK&O8A-8;P@y&nX;;7j&4Wj; z%XI5!9c!F}I14>O(3Q1h^`S|gB2`>UPgiQfty<9#YxgBVilyJj-hV}oFpQ@w#*mm! zG}i=p=YR0vPgfX_+fhB{35d<#t(gbl$bP)w$aGVMbKiXZ< z6~6Mw@Ns{X4!`xL>Pf{;^T)Vd(f~Egf`3^8v3&Y%3FJPr4SWw!qtqSDf7fPG`Ow0h zdC3Q_JD{(|-?*RAIzJ4aBo^7cPN)70Mn=PQ$W*(OiFYykuR9>WwAUSwh5A2Ur{VXr zXJn`?HkX=n;BeGkSeMd*O{r9QZ~o{a35GqUkc@rXAWaS^!4w^cb&a6f71f-lv}e?8 zr`(@1(^%>Z<=*4d0)j6=FX$$YmZ<|KoVW=xCK1jYxMR|$>=lQWSKC;;&^?nh-JDN+ z-e&SoU;A@y1kwvuB(X0-+1;c zGkl>ciRZ;=Ve|V1n~}J;wcKE51q6NW>ke?}lK={p|I}iN$;&o)H}PkWN%)A6bn>fQ zDDaM{j{0(n3eEIyz=`b-!1Kv?Ag@YJmRie3w=!}+ItYYyfbfU=ZB4AfhvHev^$U0dU11RwZFPK6~6m$1tT#D z+F+`uA`I}7@l48Z^~s8A9VlcX98>P2AH&xmktZw6C5-uNaQ`)`z(^R|pfW1b=gPn0J19xCeY+8f4=?;3h2m<=PTH&!}9D z@naj}2S9lnuT^{jK%;YYH%VYtcyb%gfdsUggf){YD~ z-X>C5FgXdA_d1f8nfFqZ6N9Lq26r>>9#QXu$x;ylypEz2f3e8`A*hS@*JciR-EE?G zqmLWwkL)O#TE1^GJO)JtRdaE9DC)l`0ED6F{wey`H3#hIGJp@^WNI#^deAU`ofigC zEDE>~l!YX_{eRYHGM-MJ<{jC+0VG7{a&{sgO>Y(Anh?>kCy~Sp+Rci5z&!W$KI9AK zX7i?11f-vSOWBr}@C}4HE8b$C0-4l+z<^VxjexZ@l&tfOeADD)!H1Pd4A@~=r?9Am zkW)`7(yS^=dzg4y;o^TUOFxB&I!sU>Lc~HlXWt1H?EIt3{IheqIm#(XogC zWMkF9LDYVSb9AC2o{FIh@fp={gY@2nxKSZ;;6>xO?;}FQ&+cytWD1V2(IOwj(W}_~ zSn4#|(gOPrL}KRC3^-);s-WDakwty0*z02Rkt004t5va7e8wEQF?K$fq*HyDaY#CS z=8)`GXTusN75A*g#&8zAbWFW2hgy0jprH>i_qY;t}YE)^FygzYT?*`REx#ajF1Px*^n=|$&4ImMw z=@76+H3?Us<%>*Zx`k~@yDFD%-5ATKYmc<8rA$%TafEmAu9sjQ3fE8DYiy#+qKjZT z+uoDw<+Mzgo^>0FA5OVzVU(g^kg{Iy%s7u1DE_Fo&g0^ZiWX_c{L=*07ZUlyB zPyT_E7=!k09!njU?2}1yfe6apTn?dk?-kyBXiuM>V`*Iipt5dgN>eA_h%#3>#02AF zPc-5%ciGz1niF!BO5XnVp^Z_Dfvt>Jon%lk*&)j>F>WNah!b)AhqoC9qtvOn*hx@#|YPlr()z}*vS zZ9O0PzY0v=yxcuou6z-g|K;qdMt>(jr;KWyA99zUIq`gGJ8U_!T4XtAX3O$K zS;QX11uD>f;G&Mq>anH!wrq*`%wt2O zs+I8Fh;{Ih+RN#i>|g=x8J}IYn0?&TMC-^oaMH4&RNf{hGC+>f6GF3;A~NiM_`tD% z4UnT)6=)RSH`~zQ1LPdI#WXgIv!|b7Lil(2&*a!U*XqObsFrJv3 zu@G;EgQfVhIFAK)Vpo)PP~<=S-~caFf0uPg4-}evAr4+#_T}(}?Rzda?_PfwM6+y> zTXzugsm z?exs6o4&2ELF$m08fzuSKA7Pp@QHlZ*QH604q@;7~Lf~+Gp zK&7wsD>cyTP4yBucw8HIsN$8rhRE$e)%%U)&9P0vG_^-<;Cl7?Io>&s-z|UY7kU&L-?1dCq#l7AnI8G#y_>y378Vp z`?lAs_aaciY=Udwahnd`>;0->Df~wCy`XtuhzkFc=v(ds`|OV1s7573|GOji26TguLG^qu8wv64V9%qF%c+H&1mj{*vTuWSgTDmygz=eyR&Q;1dHm{FdVbUz3%V!* zUY`X(g@C*#7aU0rZz2Vtt-lh{GjC?E`PO5WIvv8&H*?|)P^+&-T1f+~*)JxxCt~0z zB1x3+o00*6xf|@F5s47s^Sr4+UPs!=%1mw|1@3n$C)_*{kN@)eMfvsmHD@B5a4IUj zBzbZA)kr>R7gZ1G8x6#Lws9~`8?Z}z|RzT{cky~L-TbfGgwX4Ae6iq zmMU&b0uUT3)O#kav9MQU9I|Y#Iq*6$*f7Rf`tW~Pmm?!(#oUhE4aRqK(J5F#M?L>M zUxL@uY6w%ahOV+AwQ!OA$TwBVDbTVgyB$?rO?tKBJaP>?ziFn*sq)|_9L^;H=v}$m zaLU!`0(w^*Y3DxiYaS!O)K{1*_Yu=uqNeX2-N{BNB9QqVRi9AgnJM2=Q7CN@tCo8$ z`BIGXegpKb^wM#}C6V>NaW65Rj@dPnT0v}Xn0oQ24KESEeIT2Vbj0MmFdE^UW_{KH zsb{gh-*~jU2_^~z^sWX&n#;;}qGCID+5x?*D662evkNx`rs9!)QO|x_;pD+lb-nPX z0ehi-m;DHEFYsz$qa4Lv-zs@-$bCzFuPqwHkZ+D)sybe^ptDJX|Zv{;JI zbGc6=UM}|p7?ToW**G{%yrURiKT8)Gd~f;acff8ue&Q-t*M!uK5L4yM2%aA-DJK~W zvSkh;i9GDVZ)^u;$VA^uk|vhfM(*%FF7o1FPz({U^|VbFAV*wqhSW(=A0xmQZ1=59 z;Zseun`P^Y3CG1Coi%oDPwDDE*BLelQl@;BCj~C^`y_qEWDe1NnuV&|XE~p}P-oDAeyZZo z=f}kLNNOy^OPiuBc~trsV>M>%ao$OsFce6MAu(0z*QFpGMsOD7;qie&-1dRTo`J=2 z%S>va-6eoJfPz=8zZK<2982C&a15r#_n#+QHc1`pCs7UYFyzU5jVTWj-&wa5GfU!|+DsTv6@1oyxk>X-)Y4~Vh zJdLqrp=s#*a61w)WG~bm3ew*XU230hr01EnSHN~vcOk}J8Ba0iYN#1en8Cmhm2=II z(F1h5dSn0909ml-1UPn3SjVZ2Ak2n}*p{}YV;RO{LMOeP@$xFmytSsKZG@Nu{NCwD z&3>WCdR{XACaOn0UiYDUs(^0vC=PvBL;VqRhkVwpI8KO8>*c3ovv&F{^)2RwjFurU z1g8EKNVFcjK?6kemC@u=*Dx2^MK4Ba%lr_Fh@B@U|2H2}u~o@-B;q9hr$LA82W{Z z&|BoNxzRP>N<^h2wi1Y9&ACyE@}K)dg+<(L0U;zYe$8R`%Yg*4P z{(MYLvO8o8(IlZ&s6HSxL-{5pSA4yrMsjZgj9UM#j&aor z=gORr(_M=oNBw8nY&3BEX18sdgsZFKVHW7E*=r!rjs-H2oauP@-w6)9~O=HRW{>ZXz|9#9ZtrImwIi` zP-z@DAQ_9(_MEf`?Y3~=V!67?&O~AE^&*akTHrq5Tm*`sC&KXU|L9nPZz=4VvzTnA z3-aJ{K+*XeIzt%B+j{a9?{Li1uPs#>WA+X8(jbva%nc#;+Gk|Dp_eS80<5KS7QQ`^f zack<^M5(t{Gcli1)GC}0D=P-DUaL35XDOqTsGH`6^s*qEHQbZErMB0t)4V&>oP8Zrw+0+WQ@DY0aI$`LU{&;OAPfAgMA{eDX7%G0 zT|PygL=jR{0pm3-XQJr$7#WM)^1CZtDhMMY**4g8=Kjyyf`tj;WDUR~OxI*eWNTv8 z`Q$n5ke+f+hfaC3X{={_=iy=(F;f$WbuK>QCv-Sc=U|W#V*bJc$#)WjJ3LNCnU-*1 zEAY${m6M)YEYLB8M0e-rfJrXnWs-Zy%VhC?4aZ_yrLpX8-mw1Pt#h^Rle43rd3of;vPYg&Uo zY=H!f-N%_yLlT$Kdlu08o6ql+9(kM=Z8nlqhW8NtG~mhgX_ZTx|pl- zSFhHVGZ&Dv-929*;u5ZsD}9x;i2qFFV7`E=CNWk%aItFlFN1a~cj!99Eerfbsy^(O+%h0MWC0-4&6)mDA z2C2C|aJYfTyXb{T14Vd zL%$XJ09u%HG9gR;*+}_?+vX`ONnQ#Fh&qzdjKb?F)w7onA_of|FU5_Krh^xkK$j2- z1WOk>T#}_L6LyGn`Kx2O+u;$%(>k_X8dK|V)uKu`G?JrGAIG5uThYHdF?Y0hM&#Hg zbauLequ--_(|ub+mB#$y#cX>~xg@mYWKpzoKV4bp#uM;8Ck{bbnN%#H*E)Irn;a7d zb32CN_XI6P<)G$Xm2ECHUN2hc)|Er^vY5cnO9=p1spqwZFnKV?$x zch}py_00s-n!Otewo8ZKxNdb7?1KiFy@hy(5r$BecTyoSp}-9ut&Ibk%=wLjvUfojJh;9FmjA<+$fjLgX6 zd(Z_p0xrBDgfU*WzPekGfg_;4V1V&cT2y#Jax9|BwZX7Yy&ySqo%aS#D`0*hIrzPI zJIj9|Ij&SOUXdI(JbtPs8Uj$#fRPKXyPw!cE)=}*n5H+NTxMSze~)q6^YYY@ zCToj}=%GN>LCm5Mj#cXR5DzX=hVv5u_Txh5N^0|)KfYO{Mb=Jq1H)S2SI~Cu_n__j zm!R$EJOdOsqdFgl zzW`|52*1&|M><4JqPHNiaL%1KzSPfaC|**m`gZ=Kh~?PYEyeg8`1w*Q01 zJv7ZXeADpfIiv}x@#@z(WCkKaTBtwO3?WptOLHN7SXm@ZVi7uV zN$ak)1M!Q-U1B4{FYLR#+N8u{QuIROE;#du-{$Alc%^X%){ygW!vPK@NMbS}8fiPq zT)!*dwIw=maZ(y9D3ovjwr(H)p2>01hR4EqdcD7O7Kco>kKl@(bbyP0bE2>Y7_T zdg#Gx2c-1EQ>;iiLL)1YVjkz?;)rkGsEST2gBh10q;JU{%wU&m9nYrrvb+BHnsI#F z?iHqURoWBgefnVnJW(O86r;kmL`k}`d&p8gvyu+%^lj3PwG-Ijl1?ham5E&3N;#g@ z>E~5^^KcPK6ar7xpDgl)l!p9DgZ+}#YEN!&v3Zk@QURoFM_Y}xDjDR*y$YYwM15&n zJ6uiOi-iRTGk#YFQNUpCcc@zHf}P+Ve=RPbe07{l-7u*ZTitzeHX0vv3gjUef$;?` zbUvMdNjt0QYi}ZmZ808&_;e3vTnm}im$}p91ei*DkB!dlS_|e>he~>%rRRAAp*oa@ znDu&+OK}UxCHI33`B~sdRGVg7Phw#!no1_FauCaXhmo%hSV%xIF-O>7@R&;p!y>3#(%P=stWT?zRt>9@>ouXZFcv=0? z)lDi<4}(?;RwDVvE{;Np9ldg$+K7 zy97cdzyA>@`~V_}o^+_BP#|vofsQHN4bW4$Nj>-X5Pa-QpKHq>v2~_jTtZvP6}uyN zdK6Ad6FF<<+MP>#tQ6$CT?b1JcZ$r~Zld{7rho1q8IpTc7FCUaV`w~bM@pe;SwJQ% zPtx0=oY~@*?Jj3|vd4)85|w~|5LGsY;YRPu2*WX}&XOFtI&IBUMJU5KdH6b2L@!Q9z4r(sr(txon2=z*2`d zecoXBF}_YlyCi^Is3+8EuQyq|#jr}#d{~Lm_!|h|hx{{#aW{W?iV3I>?LedLK42Yh z-Je>0Px%yTwIyDw^LJSg(GbKzf&tQ}|bvHMHf>R<*6{Mdg2i^e)z_NI% zSr;8-*+mhBrZ>)D(@Zgv3&e&zDigJ66PJFBk`%=@Z1x<_K0>0kXP4Wg8v)N>h<9Zr z;13+ok(N6WK9ZX2GFj@0XG6KIswkejD0Und`xqPpb-^(R zjFjg$X={IUmkJ_P{W>9i$M=o!Hz~xMPGTvZdQRlq!i(RPwu~Wx#WcOhtwcnDsRO>^ zdjuZPdamCXAO>1tV-chT+OGtZ==Vq$xs^#Ft4=hSPR!6GD=`F7cZ@a&RZj2DvA~t0 zeac~W%Xam9pSc`u%N0n&Qf}+!pE4;rns1& z?h^$Agk!JG*c&yZvShZWvgfheqXt3uS%5lo`Spb7=B^Zt+x#+oS zu6nFl?f{TKL)PK#qAwxqQB2wQ;rN}~C-7-L+BRP$JT@$Q2bBH9t@tQ;Ux@D~GVU!M zCvnvbDQwRLo&S!5#GYxyU_zSqb`X)oR#D5dTZe{ac7fpZ`cxsz~Q0iQ${M_s! z+4+Xumm8D=hsi2H*^%LMWLkve@e<}tvljrZ(p;zyi9<|(MN$%`?pkJA0T=7AHen!U zI={wSoWeb#Am9ypwg`FRqY3eL8qi?8Z;)$LG83myrTfg}xDJXu{W7DSY$h5YyCYn5 zt|Pp_4}UM8 z?COsxJq|{R^JSzKWnFCz*)_S2nUWdz550-+-b#n8ASB@-stSpd?gwPoklpD?v_zgX zOmC~*)JmABZT2*`JH#R-a+E_(H{QwThHTFCdd=1xy^yqx)DpjrKxvc25(;KfCT6F! zK!Ygzal&q(0j_OAXJ+gIly|n1T?^CpVy?Ul(w_lnm6((8U53lK4J`+%ThF&jv{(3p zA+}!w-t`}2yv%5qQ@_nNU*BQCOg4 zG=GN6q!d>JT-$Ju^yeylmC*8y%?3Xk299va|1a%-p9K1CL(F-M+l^cnPNe~Ye= z%8@8&0$-AcF;fJ_;8t(>+mMEyXr@Uf=p(O1JM-rSPM_GsAvwX~KoJqL6M8IQ!kI#ecbDs2CGd`No-yWpmgU{UVKo>bJI=Qc^&8$-v+h$f4tf;1Tq{7of7@?;f~w*(yMf4B@h5;Nhvh_@Nb8^A(R$z?LcSC8(PJ# zUfB#U3_AJ<|#ij0@3gT{P~#YTRfmztI2oos>lm-6lxU_ zft$U*ef=t<`~D@m_ISRej-o01XLK#+x9D1v{&g5?~^*E z7Zf-C?Q) zBnVKjjuYa6NTk|zl_!MBJ029B5SzWs+jH_*(Gb?@4a(vJ@7gBIJ|j_)BO zH9xeAF*jmuV3nCkUYIS0v3_T#AbO>JEPFaK3b5b-9~!BEgaFgJc!%ILM)W7j^S-Kk z#(XK&!GO}^_!I-jrwbS^pNK`~+F2yAorX@`EYI6XO)zDezUp-@zUAz#`ubfQVY=d6 z3Etib@J3IDvMw0yM6vCUMd8DibqOU0^fx;ugXZV&-iG&FBw4)8i9b8jj1Pc|+6{m^ zz%!@8aplSoev#qk&7CU8OZe6>$SBNG3yxv<)ZIxNi5_L&Qd3T?R`_j87LSM?t=;SB z4f6zOJC1WQ`!PcnlNo=V`O>1+jpcXmRO+!$;X-o}jP{M5%)gC0F$yfOFRykraKX^F zU&WxFVhZWTxCm?|EVJ=cU$W>EG-k-VJ%#x*f9l$z^Dq#$X%0u9^)XLr8`!e0x=A_U zoou_?@+$T_wr~;Be=PX1)Y7q5_vy)W+s4ayVasd2yUl&eD@MCb^3GtA$J8{#;6#OB zK|WStj#!#yAXf79oP^jFSuJy>6uvHGdFiWg_{d?+@<{*J-RikC7M}$p=Xqkil%-wU zsQCja^FE_$&L#Y;k;8MkFqY;?QpAM=sYw4>U=W>E%95#lgQZh}u%KBrrzKX)$f2LO zH1Hwm@MYjRlpXL~KL~h!u~9RZmX25pOtJ%vCzE*oVxOQzH77SNFlhG#379nLrgAPV z%HE)wGi$BO$k~lJEM5{6n1Ndu;rSJvroby;fGKKTI{@owssP@z|K7NovkajOn76^@ zdCJb`bzoEje@2}J-UEDE@EjN{^t@=`_u?dA5S&ikTw2AkPBrJ;fz(x>HL!@cPQW5$ zk1-RAEr7)m)B`_;<_Tb`wJ1zrikxiypJNfc5LlW~C^vy$o^UgV4s&}yULVA8a4WHp z)v7B=uAiUo;X4!tOf?z61U$&9DfsTM6d;%!8kO}9Ql{>FT*qQ740%7~zyil`g({l$ zK5{o&{*?Fy=hE535_bxMm>&+$t1nab9!IQdDMhBPc;t=I{BvA}5QX10q79QXa!Ff* zQl<4uMQ)-tJI;nvxUW7cG_9 z3NaO&LiG;KSv6j0GFu^sQ5AHjw1=kllR{Z7jv=QImUfbYG;y|mr;wc$7NiAywcy#1 zE1+p>V*{GDn-WOw?lNJE55D$dovhcRO`H4U!&L*a`v<(k1+HVOB!>0AV&1ZE$@1z# z8}qxcDLCA<5f=~XgI81x9!8t7+iLnauCnpjcg>@?$FK( zsN@t0q_&eV8iUNm`aqMEJ`fOdrTMcS*p_~E89fRwlE&>ftE`Q0d9{yRK0-3B@T~=B zbCe!Cf|cp`ecfl?G=v9DOH%o~E2UnShsQ;?AJgWvdmi*!cd=iTElWKgj}m~If~%3R z>O*QeTC`z4)6kXSSk$l*Fwt`E#CGGx#4jL;O%+{Tuy4(ahk40r5#^2ieTf-&Y{saq zM~uUr3Cim#W?r$_M$da&CbFGl7JA=uOPm@Thx6h%jCoyy%#>CNa_od#Kx^74Z>OYv zOj;zlT0uvqiT;9%sxCm&sNTezdumi4q%)WnqMwVZVZq*g7HNUV2>p@AW0phU(c8Ff zP?Bc?RDjcpq~C*?k8u8*e{K0&1IXl#ug0zKsI_2{t~^M`4sI2k(65KgD@zgmC@i() zU9dYV+lI%V7*hf9dfMAJ#^-32_`XOV!LE(5fPgYJfX>Nu5#KPQ$4F{u4kKuD8v5(e zHEpXBqWo4F-KC20%U}^H@m^cD4LC~@CL<}lXHlQaz84aHAUA?E)zu{cg*r&S`vg3S ze(mUe4FwHLh1Cc2C<7k7EoLMUD{g!@r}xR?18S7YmYufwD#K@E@v#tw`m1CW6M&Ab z%k6jLhVug|ednwenuvT5p~1S+%1_aQB1wp{Q;I zA!{4Uf9kFFfFn!muxwcGnES_#Tz_0mQPItqAS0x8(OiLP_l$b)<8OsAX`O~AKG;Uz zHTaK`h_-2=Oh$(B<9JSqzK<+s4K9%&M+lvhmp4t@Q)`B!yXiGPUbO57=ye`( z_*BYf_OIuH=@==GX~eIlX>2k4&T^GB#ElgTW^3W)9h;|hXE<2ure(=UD6qfPi&m#< zoN)N(roNnutrEq2lGI=+3Tx5z%qP`f!E+g~*8EUr2)0k0afcl2x;2Jj+pd$$S2;Sc zdBYP5VXg&IIrPfOmG84bB0B2r#wb<_WUsrYnO~#&W9nN>tRKt0dl4^BdK<|Y)9>Jp zwxsF!mY4KVHd|PN03a(q~V^yfSyB4}l zY>jMt`f%lOw<@lYuQGXg*_w~?G^~EZ{AGU0ql?CgulsG#EI3kg^HUym|NXA>)l6-W z-qrOFP`^S0^f!;WuMnLIp2X*OdASVaca9KjC9~B1tW>bLQf=Qbz!*F#scL6@4(pPU zf^6^JTad+|@g(E~T-T;*l#o2$iCxQ*Cs>5hETkW2rU;5qq)l$K&-SC(IS%bBfCW&7DSO$~H9Z+KAhqL5~3oe|ZUY&&@Tv?WMbV)>ax+)DQCe&5rNV(o$N- zPyJn|FfEBMcpC&8;o?H2_M{;Tw*!{q(UbHk;_-BEY4;m1triM>>9hP!K|J|d&&>^x z-?vV2PE7Tfm+~HgU?S>idW0#p4{QjwAW>$6ACK5qf9Y6?JPLW0(4f|xck7Xl<41x<9M`3D{b+5b;Wf|zN-m2MJQyMblbZPcOP1VUhKa>N?GhBTJ9GP@M}ys$!0zC zd2UI2Mcug>s9f3>x>4Sob@-136=P-sWDXve`i+xjGq;SHWctLf0 ziDiw%)XEqa;&V4(4KG`EN~zt&7+>Hi<(vYrr5GHP_;Fl+9ttnON_{Yr>O#Ptn8!T2 zXIhm0r9IC%S)Q6**>IeBO#wMy4`pB`=0lh9!ZSB_#DUH+1N~8%STwSgP}9eVg$q^# z?vgFcm>51wplAOOvGTTG79Ba$*yqH@Bwb9uRDf^=bHa3|y02wN~6+-2!>({>pp3ArAm zv@N%Nh4Wm!*KIj}1rs?~Q0r@IM+oe%|8AsyV*6>N4vnM?{34=PWnevE&$vS1Zs$}R zvHe=2KP0QZDt(r+>4P}Flxkhhq2<9l!p5qCKaJFqGjVY;@ghBF~eBA2?eKXc=wE_ zs)B;!{{v68LiAi@?Z;<>b<2aBr&}}~FNezZz2^HT1tq{@yf3GdNzh%oY5h4y=8cx? z)hp=r_$!&pRRB))$ruA+FsVuFwi=xdfBqFIhemt|`qcpJ`+CflLf@c3d)iE6iZs)T zGr(NEQn8!BsQUq`gbz!@|GDOZ8)!@`J%xMFIC(hv6)U{0x6rZ?u>UcgS-bxqx-LwD zIOWQ`p;|B*cv8RI>D<&2)P=qWRCdkxSg=7IZLhVH70$DT_(QHi>ufe47PCR&&vj#} zD17!i2hE{X-wJ*_JH6-`prSRJJW+Po+0E}2=?PMgH$g!nGShTU0-#mW0<+jdueC1H zkcof_HP^)B+-u5hYVVfaQ*!z320=-OdlT9$z+sNzHW`EtwKJX`xK`k5&`l+>gP2k# zWeMkSy)xOJck+!e`(NDNI10-;UjGl?+VqS6{niHmGeFq=d20jExW9n~sfu`$#Rh^F zxcv+BwE~!Bw%)rmT(`;b!8|CLPIf#rU0I)(OX{DN15U^;EaJ$!yrUwm@Y;laE5INj zXuqp3DS3rv1YFfDtupHaKo zsg(af?J_w~dA|ZsyFKgxYM1JF)UGQVG+dQN7J%Bd;+j@U*?&guu1T1noTvUo?WSEX z6DKMDGiulPZ2;d-)b5;GKjst5q(_M8cm)BEGibf1_a`ddjWv#}lL3+cTL*UZ_`h^u zQ-kKs*zk8KpkeYR%G3IIP_1v~MkCb1Fx<}=*FMmS^dE2CUDXzThk>dH#qB3Y#{Z|n zYyV$`*PnhCUQ<2{L~DyCi+E-YvP1^^*(Y8^NSY$gDv#8wg@QU@mw{J>v^EEIVUOh* zp=ifs$UVmoxzb&~j_xzgA`cTvIz+^a$1!v@F~SLFWrRxDhD++f=xjyKYRhIw&7v0U z>R)~tMG1)*_OCNjT+0lIc-hinUuH8d1NmL2L1N>Ed?e7PLGL+=2y3hu0Bpo|H_75M zksDdY$~{K)h&SGUPW5AvLt1T33gF{mxH)1Ddzb7sWy}^5O8w{zZ@cBf$NDOMCfbg- zWq+YbHw3q?$Ttn*f`DM|6&ghTU4rInKSkY)Kk=J%?ecr|o zKzE0iCGj#U{et#EC9x!judeE|)_Hus+K}S38xO~nM|fmco`+&&5sQ1&NSw)MJY0c- z)18ssF;e@ovQ-YWdR@n?I>@L|3}wpvvC+4uzR~7%A=$Vdujx0+uT3r2 zuq+9VWTSV#z3N}t!9|*2blWsmk~+c>NuY}9j2JAA8gdpH075TbZI2(H?l!caGHO#d zDX5KEh)d`0V}`d7md?^Xn6uz>O*EZ*s?RvYu=)%EjaPlljAbeUY~1o-)mac}qoU)J1Je_ncoj%UX%#^(_gp2lKAq zGG(z|$<7VUhxc=-<@?;(DoqhA+xtQ`3#sKP?=9?GdEn(z&K!TtT8z%z5!JA3;|EM^ zc`UuuOF6r!L<9z5_gdPwTEW+k+}sw5SdPv}=G3!m+wO`2&xwrmcf$<^Gz!z^Df`AVd2mph4cz{XK7d=}{VJ9K;VF zyJ+6)kg3kvFl?ZNuqH zjPU}!pY%M+Qa|U@S(bF4l>t!)S{j0pmXYg2t1Az5)!W+Fm?rZJ=Z>2n(T$GQL|4z8 z)KZ4R4ZN+lB5EX_(rZrzH$AHuIkvzzL|9`r;JxxD{y zD1-$f-+BW13ThnkE6u=b8~hNvotM#`Ni*oXfv)nU0;&bjN{Tgl;<8LaOIinuo;LUF zBOPkaw*-ghVs6`7=`2xwXPLcl_=!yx!5JfSGas(C&Ci5-Z#u8kJdT;Wl}q_fHM!kc zaYf6^d!fE)e+o-2lz6478qOr8qqOe>X@X^6ymw@_BJSkY{x2>91m{OHl#+OV96666 zKs0PgW1j@Y;yZhq9JF@u9JNK?-M({}+r4V6Qcq2V?G3AFAwmeBEIp^2#4dPp@Vs%= zggB)joh3pl~Ixgi^nGu(}Mp(OIp4-wc)y~NLUo-IL*F>1M~B~{Um z1$*2+YZcfW;gfpVFstA>CX#q*4sX!8y*f`)_|VeX(w~yCZS`ys*GI?6|~N z=d`dseED^(6$5e|Y+OP(@xqZ+2PfckCS^FtlM^PVN7}%+qMEGH>onNd#rB{Dt(^Ss zp7x{i>|ZBr3K1u1i3fCCx4v{_I(1Y(-S>^!GE*Uk3%3&N$tDIJ5iA8!r47s2+D&9ES(0$3xmO z2HJAkzPLHNU5tg!ybn7jx)x{$GYk=MsTY>tYe=?R)yk*OqF<}xTb`s3?;$hK{@j2t zl`t+O+H`EnkjG@WXNEL^o)$+@_u?rc+3|1=R-G)0jMVYFwL9?`tA zJqe%0{(cxYLikH`BrLQ(oz}UL*7#ljyv;{Jn*f)d+h(@MChWb#(`~*ld$E~dI4+_s zu)BlgD0|&GrXwFDZj3=~h)X}3lz7?(iTlV3Pn9Emx3tRw3=>4UgK002NGor$AvHut z1I2bC_%q^oo0rHhjikOrr4D^vH@c|V!PZ*++C1!@fK$kyhWvb}=0q9Dh}uEKe>`AC^wTndH1wCPeWpAR?;p1IF2CPw?X-TZD}Puf_NlaLe_1AG^}qmI`xyp9 z!RX&??I$14e%ji}v;MNR+r#{_wSQ(o+OL&`Q5VFw-qk02#Wm3qjtjLZ?_|D;>NqQH zolSd?*K%qcc8;;3JoHN4j5 z7)j7W%{DOvs!~C;CO^93&DPC|%WFo%tWy3Ce`OTQJPgRMt{jFcRpZI3Otr`r!6Bem z;dS6YviX80GbmMGoD(A2rk8LQA!&BoW5;B#V~=Qr#fLQ z0SxRtaoM`ku$t4BASE~AC|#_iDt`ca81g?SJ|2J%2VVLF!z<^l_k3Ugo3Ipm2K8jc zls*?m)&#Y|it{>F{wj>*9?{F^5a3nz@cN@K(o>QQQ|7sGeCxPHgk9yNL|B2V)Z-Kq z+Kth`gU$7-#R1vuXBUn2JD`gu*}EY7XBQ261r;{yuP&O{I7y`60?P9ue+wv!e$;&q zD3dmh{}E9By8APr9O3o4U8p9 zi#)I#C{Ph@ZiOu8(RMYn+$R<5ZIZ)2WTDir_sgIW2+tT>CQX=StqK?jvCzmXk-Hq5 z!2?ibNPWZDcN9Io^3E8W{BcDLuG5=bBXoC?Ju@Xh(fF2YQD|&{S-y4c^+2_Zvef^z zy|AKa&mOc>ZBG!%)Gn%-ds=Fl>HKf<0dIKq>7)NB?J2Bn;3L zDX}ekb%C2En0b!%N8h;Jo*-fY@E<+4z#5D=$IFigR9 z0D4`DWuk(J?Va6etWjJnQ<14CrL0{onp`KKna9h1O5MP?l5p?;XXiL4OP;8XHuH)Z z4GhpZ{<@#?_K*9LVPoW3`=p0=RL$YYgGrIZXI4 z>mhu?tgjhT6)_pSWb$J(WPHRn=egQW*+ZklP#W!!=S2j)@AR-BZu&RdW}ZuFWHZ*t z-&T1qvv((NfG<%iXbHm{Et8G}A~$G`pXG~S2`weZ=Eox*3Qzv{bVPy4x83B3958)@ z3M+Ue<#ZV^8o(qKR+OPeEW65U4tAe%*PrUM?@57pcoJ;Y9QUI4%|!rze@&;d{PPK! zomHHKLi}ODDw=*ZngKki4P(>})MJI4_qtV(-}{^XDX)vg9++J5z&F$x6-DzRP}bPUelxtoDwoyteP8j-QRs@9%^!#C^xUIH8DgO zgzP^JYrQhA36Mb;%HP&x&q=Bfk9Z>b$SupClvphZ@RnhZSLSCJ-`JbTw`Mf1&szlDev zBq?i?ikBH+JTTZ(GP{W_G-qfo=Z3RM8f$#JUbeOfvGuYRH3j$2ner*m!;4uAaExHc z=t$v)JbRg3Up_K;AdL0SyPkU7uyyH5A8MOGFsU6MKMwyj-czYibe+p(lieVX>J0Pg z7|Q4;^)=$gB6qTaTD-JIH{v4L0dSOkSl22QOC+Bbd_pZm=RGX>n6+8&49bu2A~32AzXu#Z*%i%d zd*S5(MG^H&*)59lftJP}N=KVib?L(EqYU4^UrxG3U7XQM=dX>hq*$_r8?zRel_kgc z3`VO92X?8=5SdM9qyg3@i_>IJAj8yfvM!TKUw5N+3m!s|ktz!K*XPoY9ln6BILzf`phED+9T& zT&-_sSAh+ZyJL7)C}i=7Yf|^99>y|rWVr${V@WxP%0-bcSYo`0j8anC3v`BrW~J{K9_v5$^o1a`TOlLXvor z<2@U~7wpRvVeq^2iW{Z5)9MAYNokG&wa%Id4T<77F(=B}<)XN>H)S_;y8V94ml|jA z6pK9RkQdb@B6iuzN&1cvx?iS7&66x5S_Zg|?iG!7lnZDMt&oA58<%&Zy8vOPlA<*^>Pan!N zaOnXfFzcQM_iVWBuRv{By~i}N7NR>Z0N(Cqoq_&R3@@7I!as?grX478RpqX?*S0gx zd5OAp82bj6XfRykB>h?5>%I~l=FKFIVqj^_vWn#5bdHG|CW12j{@73N2pPDv)L}15 z!#M2aPnrdf`4;P)xg45&-+!U+E&pBL3(OG%@S{`(G$A#(7d`hMlY1O`{kBWOpQyBq z#^8jZ0pIp|N=5EdI_X@y2U^6IhEy&sge%=KVV2+-BZO~9$1>i>wm?YWJk?MB#5udn zv&geZu;31P$I0m)7}yMHP+`wDyY%qWv3=&(qVO|T`|aC*5~~FTbUl#mQ0O|FgNXd8 z0n$O?#SV@HE#5W4=krI(=-GyDc1R(7jwoylvF0^XvfQUC*_xnPYEr|Ed|ol+T`&_T z5+TRP#H*tfv9*aJnvvDv4HK9ffjRQ@f{nwg8`GX=%eMWCjbD~+fZP06uJ*Wt>R%v| zj`Dv;B<ohhbs#_-z# zgezI@hw()X!f6Yj>dh&S$Dq+VkRsv1>cTKYhczAe{Rv3o0{}^M=h4JSw;DAsN5TX# z8n7(-6-Cz(o20&U!rL}Tt`&yX7khymfKPD6_euu7Z)MD$95;@1pJ?2?LR0A(j-Y#W z=HHS*q>9n=WGBS8 zh6UwyXB{~)T}2H}5sU1n3ur{aaODzVp`MrwW1W9HfY^5b%+=EEDzR@0BFB=ri>Ifk zJ{}Cred9=1rvstPoXLc)3yE0z3Mp}k>;CN6&J>uS11|J3plf&_gn-ab3b@a;hX*0;S>~pW9TBh0DeGKeFA;_QZMAivfKzW0d+4o%#Rh zn<3$yz5F+Vp4eBTT7VEr2v1ddHPvGRj-@pGaD}=RRuRE^Zr^j&_h%<&m>Qf~bL&5M zVnTku_YMYO&ZfjVH|oE(SthceCjDu?ev4xJr+CMr^)JOcd2#%LWGo^yA}hsg$@gJ} zR9VO2Ks5H7&Q()t641ayHFvAQ(z2$VkqTaMcR-#@l{o#rFY*$(7)T9gv4*>R^oIZ8 zisAW5Sm=unP`vY3E|zAdE;$Ubv3L-U$uBA1aTeeNts`*Kp|E|=h&6JZ-;*QR`^iXR zultXTqy(@3oRK6@{O=h_$$ixYTf0JY)|9P#0?&*jY4vAD(ql2eND8m}myD!*r~f@h z(&)d9!Tu+Vr2kG3)()@wGqjuRf6T!W?u)^B^jDjOz*-PtE8xD6-LCwKY7(H74 zIS7jxslD)*NEecHf<#6Z?op^1wbsT{^23XdKY(?mtz7UANa&Vo`cx%=d*QQq5dxE8 zTU5;7;iJT^`C)|Aa30<<{&BPa=BsDjz|$+mI#&te)aFuW3$fVtRV6Elb?D4zlf*uc7gXGg5CaV8lfk3UL5#55 z6t*IisV;jlNZqvz-*?sNAs*)S$GWIw*M$v1wx7+@uyyJ$Q?|Qeaoj zD_O^ylA|c81fa#jy%`^^zju)5>!GBtZv8%qb|Ez#bsY z@lZ2Czwlr)=P&i!Q*T#^^H@PUc-*tnfcdob%H^y%rud@YMvGOh68)i{Vf+t zrD!}3m=b0O6iS^2T2tocYSR{K?{Ey<37h8C(7MV}w8&!fmet~gD=0ZRr;C|P^a6-l zn&9wFq)wGsEQMjt=Mc=XG&+1W+iIkXC@FA>MYv1d=60JI0TKRejnt?9^raDhCjPV$ z#Mp`-Gx`-X`rCaKmd2o0=F!-Q(@Jcosc}u43E^5oSIEf69mX{MC@P5bpm;Vg*Qg;k z+hVkW<~^9JiQliQ0!SFC-KQ&<3bzz)8!+W$xW_vcJ}uM~6`kfJs%%snZB*Zd1TBBh zpjJciTY9Mo*{xNr?BnN=$VH@}$7D2be_x|2+e)d40M*Ek}%P=qxa)-$bF zHlf#&4cm}mkTK<(6|!q^$Z3i}3k7HOg>4flF&L$x8_6~@01?cGY#dZQ|4a70)ird& z7=bKQMx1+uG{&blw(nu*%BbjEiSk7PEj$$?m2y;^{fJ_(VwUIP(rD z=oR$jUMUO=7ekeTlcdyTGUqtZ7@c=dIVBetNb$~I^cV>=2U>iPMG)0*a5Y_g)%y`j zhKN%1!m)=FUVyy`R^E3dqSNFAWe)S;Ky*t2e)Wa5UrSW>5fRc8@ki&$ztjOZ%iq+2 z5p=)dS-X9iFBs42z{v;Xvnc+92)|y|sUOkC+ZD7tk#8ER|8n5v$&S%Ip?%tn4O+_v zsUa1jcf419$~jxG4!x{!bv*4mdU}pm#-#9BySLTD;du0+di=9Ga2?&!pw$6@QH39L zciy@TzsiS;sBf)$LcFJX`Q=Xso;>MK2VUAw2OeikIwV}rH@8q@pbx;eg&Wih0papS z8>1c|-`weJAKL`}jeIlOq4Ts##o*#_ILEt%&Q9-(JO)NO`lt79bl4l!i#OIw*vs|e z@O&==y*wBrUidiByR8eN`8W^Qq}x`5jC}Y+tp>LC_1&{ZKoLnsQkYFjj-JK%D^y95 zlAjwIBxx;|FLawj98H*8NtLzf1~dXZDZxC6TAKFa7&Cn0umu&feAWn@?aUcNT7nwY zPl8xaqX}*@*u&9VlF`q3s#r91kUUVeDj(lQv>gUCHQ&1;mfsTZynxgarxj>o81&;f zF;TO}m!FuU;zj0AuTkXX{2mi!>VMm4vJ8VBi;i23O5q3sks^eO!qX75_yVAqI{xOo zyRpvuF|=oDd;8OQS5Mi<;2%TWX-ygmEui%Rhww<6A*wSjuapA#Euo1r$Hwzb`TsHA+?%swXt^3V)C!g^P zU>e^jHCFnvE`(?4YoFNbv(N6>oQUhy2fghSdlebW@3mp+{6iJ}jh3P<5*>B9Kf?u7 z#^)cp>U}pWHbhmeuT>cQ$M#&*1K6HRC7@RqaQi{wk~2 z-*ej?(`xrHp-tMcQKZybBx6KeGWuCoe;Q}v)_U_y?Xy_PjkmcmB0KAIeaxu-)$1tK7(lPwo!GH^lf=R{yMt zh`0Ih`CoFu@{SPwSygWaRMkJFL%a;o&(|Ff zNimc3yHDj5*sIqqP(vbMRX%_FpJPn%P3T^Q4*`BPyf2@+DB{;TROX0f#7ZGO+!6?1&={i8!@R7WaSXsf*z%kq(cFJfwmW z$o#9bzAOfD^eN?BG&PD;00}mIw{OEK0@=s|l?g90YE99p}|#I@+3I@HJfuM5ifZ-1_pF z5RdC-|Gh{6s<>@iR6Zv4K1v_yhj8P23dT~-NgLGL#(vb9S>pT`Mvp-cXcxPFlD40C zjK=o4vi{qt$iq-mj7_50C#^21xFX>X0XYr*{HEK8#u4Za)iSQQ6nbtcaS&qE4t!%N zgr*pd#!{b@va|6e>q83#4+=(&_hlZ+at^UW4p9U%$QoP(2u1*BM9PX9#S{R-mg#DlKV&kGt1o1#7Sd&- zsR&dW3CLd3Ci6jdop{CJw7@lg?h~?0?~DKD)7Yo2&jGEEfEu?UFCwB7KAaye zVW^{GUTtJvZC*CQK=L5H$K|k>#e7LzCsdK8r7nKvl3>(vtBiqVq}x6oHs?~40MU|% zw9$$6i5dG7n7PR?mYak9*}HvE8jJB+zq_-LhT2G3wHUxG(B>p@P?*D{&%l9s z@m0k&81zQ^N55E4d?yL-&|zjb8-cLf@tRn)E2*jbRpz&(+4|KT5AC{JeY34Mm5HxS_C#Da|W)6P58R`%3I}qeDBk(Y~f45J@T*F61 z-bL%B9@}6POWve3%jaaycIskwuFfLYV+(r8(Hb86lpM%QVz6_=BQM-NAfP)hI%Omo z#D!Q&qFPNdSDlb+#MAj0V$fsVa}x|Xk~h`M!d~`uR;IknP&LO8pz4UM^1fzy@8F;- z`c5LOU^qmm^uZ;JB8c>KI-qne07ng5PpMU(R_ZHrQe;&coEki|$I0Y;sBk6v7q3Q) z%@o$m>e8Y&DJ*C)nd(%PT2z(h(wX1L)gW|ng|bbId|9&n(x0kcugg-ubSP&=+)`&X zeIrI+f2lii*^!P}qTUH@EW!2~LDOeYZEka39-iw?*Rm^THlWnm-?eaIw4%<(!efad z(aoH4+Jf?+s2nRi17X=%X|j5(jL|Fo;h=rZw277 zUOb^20v^J&A9k=*CWcAtMPPOSE14qR(Ky<^mbvJ-dW;>h3QCm`N|m)_kSao-LucQX zFRaLPKg5VIy!w4@{)VgsSnfzLbf*rsNqC!H&b2j8W=)%n`Tj;(v&rLiI2+1kgC7YN69kj>M) zD)nAAIx`3fDO2@l08Me?7RT>PN5Kgqj8n1Uw6F^*{+ieY66nNSMrdSI*T{#L`#4kV zkkg`w^*qtBGUW98B&BoW6(vxP8A4KBjYpm~9%GJQ1JkL;u@*9&Gpm7rQOb3~wK^yS z@B%>qS7s?Oy43!m^}_g_?3if>l(H|9~~&Pi_BE4I@_PokYeg?Y8;dr@>)Z;D|A@ zL;OuG1Ct<_@s7N6nN+7Ee-C4CDooFpo$G(?s4vgH28bJ>)}g zVGknFnvmupf|>Ch@7THWPJs)T`Y+O~|&HFGEbzDf}nKgy&SF+TGo0 z=6wD6G(mjpKkRlsjX+nudoTRZSe~G01r+v?S$`*y8eW9wo%99@ z`%c2T=;F0NpTg0~}DsF(MUb8?VizCf}~Z!_`J6G0d&D(-z$8PsR-< zFUmw^Byhc^pLXsq7qYo6w9=kIM~~MJZJS2p3(H5AV2~aV@p-1 z>T(|G9MJpJCB&;JdQYa6@3kj7xM!hrOz~e+t#MzhOcG;blvmZ(zW-FB!4~?e&ui%X z5RNqLP~I%k;&%vt=oH5~@d!4ITscbAH>C!fXRw$dFNYvaEk&ksi**MMN$@i&Oa zO7>_JM)DIboh4Q6NJZ>O?0KZ&sP!Y`)1w{Q^5rzGhqHBNBstrcUQn~bq!yi*c#=gM zMxZ^GtF{~aWEvvC-cBc-v|?0Rh_T_#G~H%pH$k!{#e-q!C|w$U$HoP3|cov+MN#umJRKM)q&Z151Ke$ zOK^_PH)n6OE=0#c;J=h<1vnT2e`S+sW$p1NagvE~pcP}Rw`N9=8i<*wLT?B7m)R22 z(bM7$q)b8IO*Wj*15{c=%8!j(zaP!<^FYV;2Ha8|^U)j5BdGX#Oew}RpxS)tYCnl= zsXCGU#L|kmV~xFv#TAvykroykm-rF*v7`ep@Fc98z#-pd1b3^>*KxHll(pP-QCJIc zMBdcGQDl>oh_cG{k4#*rA=&V2&Lw^vL)w?mhw~kz${7)^pi^h2mIPUe?#(HWO@a;Qb9sTl7mjOOg9aJiB={ z7h7H8$W^b?nTzU1wHs2FyM4~bH!rxNm2>x5AlpgmiyBkatmj0muv1|LJgL} z)DFbGxR)X*E>PFEOTEAArm-|7%CqaE4F=Tp8RO~f{kJ^cN^ zD-q_Ql;D;F#H{!Kp}8?zM#XtcD*S;&fHe?XDW za0m^wf(*rf$JYjIcr!$&+{ja&Tt2+k&{z5gW97vz#ZTbY}F;AT2wDreM;(c|S%HZv6%6+s{fr%1VMsk*s%l z;7RfOQY!=feQns0wcoayV6H2)*-++Rau;j}z?T@3wX#AReUq2m5;Jj;k)}?DD9M7r zI!_MOjlv4{fv~K5ZP(j2!jz$h%w!QXmeyW|pSdMA>(U@);=v#{tzfI;Cq$ zxZZUi5bPUUd@8364(55$9XP!WK?piL2#rwLuGRdFdLkOAR7pUY;ZEakFV)ctC|Bn1 z1?v6KU>Iry<3?wk9eTkwnE$Bv`#u#)XyozVrP#J1W0GIjZT<~o3wl?4qhv1YZIx5| zPHDm!o$$QjuZk0RTRf-hzmbtD4ki9ySDd`U{;lGqebusahKiu=_llFp4@^s1mqm0X zS=B2XO&kYvM-4?}WcdY263BzTVx_*ogTGv=P_raH4T$&pTo=~Z_mIdyW6?3F4 z&xv+-tj;l1(d-zxULH3(XZ)yf7C{Dc3J=$uPnaFX|~oJp=Q-0((1VyObP zq4WnpJkoq}eD(PqJ>VYPgG#ffW|rMaesq{=7ap3pe5$`H8?wZnYdTYxp2#W6EscZH zA{neYz*3bmV%q5DNJz7H`cXXu4l0RE52f=$CQ%}-_yPWI=1b?YbvzmS2e5Hv#9Wi2 zwW!bUiEn+Z9m}=M9djl!5UF(KQf~3wEI@IV`q$VD%pj(#b!-tcr*BtGL?$P#q`|9y|>8 zc&eyMKb`o}ov4TM(UhH-jsEDzv)l_zo7Y~73G>0>QE+d?$iUIzPO-t*=x5A=Msf>( z(7e??-P4EoP{py~!`2DX1q#{=zx@I$FHxb#q(Xn}#VNZSzrxG8x2W>p>EGGUUL#U3 zx+5|Q4IblFj3c#kqLyT>fO!+<>UH0nU#!=?j5NIOykQ~nQhrG#=*}Ev z@0gQ~Llw6TT~h)jGGC^N#z*1K168O&ILB=HI`Ea&4*2m~emCFkZy>~&dEW$#$HF}% z_HiLXU+g0dGC+9Jy^?7`397-05$uyYI#%eqSt?0D-TFX-CA17W0E5ft^#Td;rF`~F zJa!Gxhh8D7B*O5o6a=9`FCUuu_+Ff-*7NZwI~+TgOX=Y})|yPR%VD7|IMHDfoN9|$ zzb#*J6!Lw<@B;B4eEbbt{3CvyRViO&QI_(s>q z5CKVR3w)p1Z3RwMz~ud$mWX%q!CjT=3+sGKMw;%*@l-$v81g#!FfuXTr2AMT6WfM_ zm%S0F!-niFTAX1Zep{d-NTr@!Fx07lN7y3li6JyAWn_RDXKvAL78C0cOwtjfE-y32b{`$ycp`9udRUw{!p zKLz6wU!^7m$uw%Iq6^+wX+ky&{51$kk^>{>%d3-^QD>Pqh)22~3N&?amWUNO$&b6V z6*LFs_VA{xT>@N@3hxgcR~j77YInFjV-em_qbSw>uiDNkC=TFT^SHa~5Zv88xDyEO z5+t|{?oNVha0Z9L-JPJp8DMZH1h*hTmjA82b+>BwbsxH)yG~bE{l4$?IVVJHZH#*U zGMEkif>+rC@%WoSv17kSa<&`MkGS}bNpU=jI*qx)kS42hxOpRkQaz@gAW{_T{!QDx zgBpIXoV1^(P){D8O<#XL$NG~JDSs5zJIqNtL8y|^Dqp0Yv#%81ET*<L3cg$q^14?YlC%>RU@yixUXvhbC8VDUI!bZ8S+a17_L zZ<{4nj+^(Z67=)$DD(-kO$vc=te}6(!Eb---e3jA%Y*lC8xW$$gci55)~8W-5AXdF zRg#Vo(5`}{DD|L3Qft$lz@!4thByC~`{*r5xi%g0%#`_N4`{8m@!UU?+vqCF&EK{v zacF6?c=?1fQ6A=vl8P$1&nFC83M;C zD5o)R9kDo)i*22w?(m0t@b=?l8+}2OWUsIH)y`IJFS7Q(nMId8&T9fEV) z{o~%hV;)($31j%# z%@cl2Q7nXg&}#fuo|pPEIFh>EyHEXwNG;{e+2c(lwf`LU=dvN@0aj%ED~H@=4qB#i zttEN=kpNAGA$US( zu3tAkD9^4plPUeX{RS1onmaQ+H%oP=*X`Ux0rd}_rA>@RYm>-9A9S9z5A-3_B2ZnR z@=b{TW(ozH&F7xb=mXX$ROO55Lv_3{TLyWUblzM(l6+k zLS-Y?U8)-Wd;Z7n+?Ct9yLy#K=>)q&MM8|_(Ny8z@lsTBlhS=y&nLs+ylnqEkl(XM zZaal84D+3)v-dD2erRRy@yO|X(8&k8(YE~x??vMEHOf10;nGZReHmE=NAd6Z4KG8$ zN%dkM4a7e~zb~|u(xzHhcWRTn^+mTi|FNwzAt-SxA6h=;l4UA>9W<6eB&L%zFS5EXssel7Tw7^l`K!Zd)*aDB-AFCgF;%oegk4PZ2HzjhBy-dpTo*9B zK+BB|YoitHloXsDWKQ7tcDeW^`qdaiVT4aPj>zs;nW6@tfR(!2MAOIjbGK2B);)2T zdtZ66>jla^uNCt^3h)OcZQs;JR8p&Ds_#WcD3;#E46T_Zbe_>D#+dKm zzanx{Z=d2B6AakS`iKwkrZ0$Z#G#3npRW*RPdlm+4Yj~`TZ|)84mUV39rae*pR;b! zEE2+EbY4}YQPV}IfAWFKk}&@ubk}eu*x)HmvBWlI-rlc;hHLsNelTu9E~ntSB(4!- zE68Qj!-)r7B;`|n-8diGMd)@fFC4q0H4SnHkXir8kI+s13U9;5+dBi#*%fuHwyi|r zw5m<6(WK^rXZQ+6WV(_7;9B_p!~;qWJPW8x#`+ik<|oHVnNw5DEwM?%W9w%*jl!D) zD-mtKoJ3>m(fqppj`;i4>*bsg*TnZH9Pn9y5%>Lgu!c`0Dx-!@#M11V`Po*Kn~8eF zWP`TM5Wu3o47G%j3X(B{et66JXjpZ5QMYALV5TR$x@t4_&6*F91JFRJ4O>{ax(>@P zYe3=@X~KtoLt@{j>FS|r_RGMrpY!}7Y1KIOE3A!0 zG_r}gpoIP5JiAPSp3!vRn`OcbVyundgFC~d6%IsBsR4t%$#?ec6^moc!iQg!0BFFT zdgKS7Lv@z`9+l`~amQLeNSczZ6)+e?wfO|O$WGbT!-xjLWzpUK^mnVapLdk1hP5Y@ zIQyKQVu@~O;eDsT$DEq4QT3k;Cfiw4^mB0Z;1_^NO5P`fi`g`Wp&6Z6g_;Az6F_su z7=gcc`iNjC_8mvBa*%R7?i%Th3ejyc73USLl-K<5E9*{qx=467Z(@%Sn|9f=Q_e_Q z|1D=jUnq5MA+!3%$rV~ZsF`UxZ zisji_%wI4u*(S z4H-~-*dP&OYMsrJniIJl&+@h0EAZvLqGH&2y^#-&I0QSbw6{1CLfL%W6L-^ zsn?*%TMGKf<((~xI{2Xv8A{Q@(4S^++Teo-ckanfsdAl-eB|=dAJF@9cY)Jzb9Hs~ z(1SF(R~Ib(5X|t-Ee7eeogts(2Yq#W&<;Crc8YPI5#1@dW5yYk#g|{rQ*_rW zTZ0-RM91BKrPx;Y0u{ERB+9&dL=@uxIVtykVSw)P(4rD1<|42KuwNsmnPbSeqX+b7 zX7z^+A4lwt5G%PytTsDW%R;qxpA^g4xT$*lv<{4=;@0`Zz}d}?Z)}&`-Y$S5yk#Hl z8uN1~T`o8_?XTHJd!+y>zC%;tE&bPKs>lbwc$jjwzgD5@!B)hmNoV;EJCd_bg=qQf zwieVxoya6|eW%?JhE01?#Id#{UwoeWu}D>T)s_tF0k$FxHNu|=3{P`H)wF+Me(DQ?fdn!c<4(qh8-@8R_fegnH|f80ca8snwQ zL(a%cu0n0#OziT|Z`Udyh;6e@v0NhUnMjnn`;%Z^Cjj`DgVx>JRnZ<~`^_(@8bdzh zFIhJ4qffRhb8d1n7MJGN7Ba;is8csaAkH2|8*G{QC-`}J>T6f(GI+BOI&wE0znH!& zc}@QDp2ikyyhgVnk~^ z(|Y62WRaZ=`@+>$T6uMBlBupb^)t_5tP1d-GrVDP5Vl0NwyYHlR#Rf{Ut z=`fEOx{;rz^4H?A7Bq}CEd_YY++E4qh6Li(DPty)ga}FjM=#juYw|bAy*+q%R zC92AOWd(keqdU{&q}_A%<5=@ZMQ^6vxIA>4hj>byTVlWwy2ZQwUIje0hmIRQqdcnQ zXblu)ibrR^zO}R~ejir5?o$S>#NFN~(fgK!_)*bVcq^K*WR=0xFyyDk?C%BZ4G>f( z^|g*}PM!`L?B?GXvHpy#@YS@>c}H-GXB~e=`kiZAA0R9Y6?7AHg3|LVBSp zyl#)yynOLrUR#W<2zu{!_g@i7ZjorG&u=cecQ~ZQwY}t}x5~y{ZO_8j)oi(fJKpTV zMrc`52QLpKx@Ek-t>egYyQ>ZBW{5}Ttic{JnW~R>t@zj>mkEyj4zYFFU_+inDENL< zfTx^ud)}bDvmxu-H-!ZRkUVY&V z_q`A6rOx);8j6cA5o~Cq+gOcA(eg+%t@9QmgMIc62#|fXOs5H+E8T=KIZaGRL<*nt z5fek|vFKZte1-pABik1_!y^+I0xFqAX=xUwnh?laT9k=|J=n?!n0|dY-1r$C-1P*| zh!h?QhWT5dh+XL-kt4Hg+bJJV5(*^5IfJ>_At+1IAe~!prUM{r_cT3AL_jG9DURO) z!*-V_>;jf2dCmzCZetS^qKz+{O;wHyerCU$1OHSPFcSN$CC+kBiKFIJ!Vx-d7HQL; z!;(P9!G0HPVPlVokex5M$wwumQ>7?DTCiG`uB4?Wo2Y^zv0dX9ip%m@Qi6AfQSM{e zT!cc!hmlLx`Cd3`T>7Xt0mT*R6;qQhHiisoKe;Rn<*pxykLHFE2x_B2PpijtcJ;0c z{u~08zl0_k^B}mg65U^Hfv%<=_Hy~Cw8c*D{kC8Vvh;sbr6q{&+{)$` zX@e$pSO5YNQm`f5&T^{_|3Yd5a2Bo2CXta4G#h_)%r#@D%-(JPACxcPFAIR4rJ;?D z()<_XZ)^S!bqr_xD)%Z!TERf>B{rrLD=Yg8xy3d#_%m})2ZtCjTpQ>e1$LZC_l)DMlG;|I3h8TYRZe{PE^1au;)}e;3}<( zMTE_FS(`zCRq>IojGwfM10uhEu~U=t1a%<(=|E9w<-{SnuZYJp(>{4T*QjCsH8sUi zN;PH=e4kWlFH#)iH|`<-#w96}kUq<;+#jIZqVG)AezNP1Z){x|ji77yg> zLERn0

&>Wyh`H_`j)tjSxI!gyXCqrGMcWCtN-B29TFfb%@c8wL(vhEi+EFp|-K0 z)P2`QS2OTp`0XDQ9JwtO@Y}$-Gx7!~Zw|C}i@8J-H%oc__1}c-<W2Hkr?_63C!T!IE^Kt^lXv`A#N~L$|0nzZ7ye73HgiCb79AIIA~O2yVU@cR z6=d~I8xS@=arMP7%ve5zy<=x(a2R?Nbna-kx@b(oveaEnz$R zO#1#Q$?BOlz)<#0Dalrr=!axTjNrMsFIP+HBX|X4)0n|cFd9VP??EE#f0e4WAoDM2 z_~8CS+vXV{t3Hq*vJxjeAjCf#swQ{+j}+J%Y0@vARPGEM+fpl^w{Kz&4_v8RC#?=Q zEm@1EsLRNU9$+)9=*qs$s!o<#Zzv(J&Zbxb*-}TzJG2ux%r>?psa!jk1rg(`HDO*E z30_aZYZr_QkdEQX|}So{uGtyM`b|8eg_956Qc_F{r?vONH>gW ziH4KtOX6SIlbQdXv&6f=QT;IqNPkWvqiyAtXlobBf7qiBqSMb8V|#A?Y^&jM*gzZ| zIg!@qw2+CH`AYv+kSl_h?`NfdR?pZ?1b9e=y2g+hk7S-*s_vUHA*%hgzA#Dc4ewch75G(s>fsom+nJ7$}QE&FFl)G<8k& zUihANlTrufvooTz_N@Ru*HQkP$Ux2FG%I*RkXCi)lABUdXHYmuI$6Q34Vij&5#Lcp z@!)MJ1^pH+t5>-3dg(R6V5@PJ0{D)jsu=+$yvKE{qW|sCSM^>P&t#ZP&x??!7+?H)jK z;m!t=1m{uvjxR0G^VJz$pB84yo(ra?6Uy%O2i}B5&g1D{XLhdU65eh!CCIOW(I_z| zdWejQUf0R~l{eADY1nFEy)QBiTV4i@BMU3gH1QsMDGLo*%!n9>wdG8S`D0#dV~B_- z&Foan$Gj!iP!a4Rcu&9>ilGw&G=c!=?_Fnm#I!0qv0Ghq=7VyZPUKX#7%T3(*cQ{= z9153ND88GaDy4H;!a+#g`n{(a%Wo1zRZi1z(1Io088*HW&{(QkMzf-uoP{=fw#Q4j z4VAS6!!#vBv|;V28Y=CD)Z7i>*G%)Zrkclsz*?BUTkG@w zfQ*!U!0@Yh(+iMUBPo9{?vUx>LfIs1Msh)In3MQhrF@8&7O0k>0+X$RHS#MmE?6_J z)wR$bp*|f;2fjr-u7crGH?>IO^gvfsYVA`z3z|8W;21fkM%w&qZ=2Hsg*4UE#O zqgn}fTNlm-VM>__sFa^={ai){yY?&F9$^Ept6hxZw5?tP>%tpokLl=7svQqnQz|lK zR9ErUc96AaOt+8!cxJ6tgAZS*%#IbaXP8QmVijMx%9qnxict zm8OTydDiLCt29MA0I#ZcUEgipg&OydXI94PFsn+P6XA}q7c9ta?2A(w?7 z>>ykIa2G-1cM#C=-o$`9kr8(Sq+B7oaLCR?9134!Tg2i8(N|K;kO0I}0~rc)cv zoUp(<6Sg>@zB-tDdm74JvVfeZN2^v>Ys!2*4To?41h8Axsjoen=G7HkL+r3msupZ^ z^~$H#>+ZH|%7Q(EW-#jK(eIsTf~FM9Njq@q#+T?FUVOe`v&`x=itp;!hkdjQ@8?s8 zwWxUTv7;>qTk&8jd`_eDP{?b0nVU<{xpVW0DyjWVnY?+m8RuGVd>b9c^7g#02G{A~ znEUz2ZMW&e{`0@h$KN#S7JV~kd_51qpv~~j9PS%_$%O(&x!>2!9r*{Fi)(S^G3rrW zQUv=m%2wqVP`l96+iewBVuJ!&3JO@fdFO(=Qx5NQCEdvl|c+Ry03?o5zuD z#!NZ zl^lxQTq!ks_CF1TnU$VaA>S2n5?M*t zWl-173&;8YUEen!&5(%ZK1%=oSYZZ?u(6 z^X}i%v1I7Y zqp{cEo(!su;Jfj53imIyj^U76WTC+kR&z4}x)ouo8W{j)y$k?)kmMbAC@O!`%9C9; z`c^Z`EZC_a{^ou06}XQ7*oUmJx8pkc_Ciu{{{9Com=?YS{txmx-~lTH-O6q(6Ipg) zz^&MyLlcH(; z1f-sGke~=@Zk(G^Ihs8M_A`Dw0K0(1747wwB2Zo36vV1k(n2YX7K9eIF4r)He);w{ zqKHc^a`4`9hf*i-} z0zaTCX^k@lg56GUux(RhTdf9>yj!yY*|j<9fwyxyJL@%Cv9S{N?De%&dMMP#1u7FP z9fzH*TJDHba#w-tbe$|qb~wvF)ryvASpK3uR&>aUi_uW=6YJzaI)#mt*()!qx|RHc z{|W%I3e*gtps$U-bHJM-%h))11%>QsL&ZA>LJf+Ypx~1I7~{%({M%1c{K+1aeE@KW z80Dork3!=CWC&+;L8-2M3bC{S+I?JHSzD39YR{uyWIP8$xst;WR&20Xwn~?go0JGv zU0_&k&J>)WCl?Ro=oq?t5;dso&uSBi?Gu?af1koBG8y2RVeXmH1u?KXxqg1!)}Mly znIu!dgSO2mSMZ%eXpTCQotkyiU2Njr$CXQ_2qTc_{r>m_t`*!J1zYjV`kY5g-re*` zxvX4F-t@hi3%>cM%@j|)^@<{F<*9G;sZ+lms(UD^P0{t9SPj%k@yR56@I~7trS8NK zD=J1s=1hnECQwXfMx8I`Y}XW_z(Sw#M0*+?H)*?w8+bLd@PX$(7I{GB*m z;d335N$SvC8lSCE3Zx#sC;>JO-=VPBCav$Bj8UpfAp1s-JjDu4AJJ{Zk0F@|hFeJt zq4RyyqSA@vz|A^*VHuP&m^HRY8jRd^9$iEv4!h4ActGL!h<%&;B`t4}FUdi=5l~|Q zt*>yb&|RwF=*UktoG~}iU{sKEQc!jx*YoU72Md{yCytgJ%4%!g*3F!E$odg#38u97 zep)P4c*Xpx6F`l1LKoLF^QJ!{tPQR;cjf<^SmBk?aDw})K$y&AhElHBs_Bm0D1;Gk z$>dX=Qv4AfZk*E@`=MJ>4!|mn*8!zo z2_{!v8GqUy75bjc_<$>K5fF3Dwg6K#0cSGOBYo?NEg4#MIzq$(9Ii?F09yysJ5HUX zH3(7$o2KrgyXsB;B0FFs2iqUPLTEwj%@sYsg%ONl|7DQClEwiOcvev_eTm*4&HlVf zttJc$GVV=blhH6vOMS__^48arzqZB+X?NV4cupylRQQ~dokUa=&|GK0p0~F6(}ghA zeGG@bFgEQgnKVzrxD6F85stJv50~N)CANuGYOfH?8u7}b!B#9^xY(jfkLwtw=2@JimfbEHq3RmQ2Vej zvn`b$u}TaI*v8?PQ}XD`(bbDgdg|tQN50*&*`}jI{%W!}YpKpK325!f{`kKtxCiMo zLjin?^p$*9tG^h#&HD^G2Id5R5^~s+{3YReW;X0iI`h#k)yW71Jbca9SW0kK;3E}H z2ku14g%v(3;yDdA1Jx|iE#o=2>dOO3kVuWnF81$Ht10whvyfDJ8kIWs7*`xiYnQD8 zf9n_)R%$@3#ln+$Qg~V3o3OHEM14-AQn$3Azb^H2a6}!*mg7FhGihOYz;|Yjl;jD~ z8x4~2)SmD_6K3k{k~i)c(&133F_;~>SwB2I1EO^PLcXor_BxKJpC@V@)olT`cZp|a z9qbm9(>fYf)68LVqaM)c!Cu_)59JqjUwHak`yI74cmIO$d#&#`l=im-&S&IU1pPIl z*8sDvR?A@5^kkz^gZ^hGjB(ic?DOpjp@}uI>T>Y+byPg>EExfE8lE0=O;mnK|HbY( z32Vu$tS@~fK^HZ!$^%+xBee?~pi88>N1Z6x5HnHOY`{kPQ2X)Ax;x6GXR1^YdVDEU z)vqFZcyzsz#~+*BIu>>6p9s{r<77T>Qv1hX$C~l2?{;;uk;z)IC^=LdHnuZg)rf@8 zdwf^_s&8y#qE@HdaR9;a9rG@-#FP?LN~!kBQVEQxImL25L}6Z^4*5oHbY%Iba(S>w z@Sh`l5sXxxkQ0gkA-ytJ*;eWKDlcYd(NieFzi+Q0n+oaGBVNoq027K2x_BN|d*))^ z9uJPd{UN9nZadOof)lp{CvDnll%;*0te*ClbWs$5W+JqmrN4AXfXUeW)1t+y$aj0< zjbJ+ZT;*guC}O<4UW2b;lNUFRILGT$H^Ek*0-R4&-)+$SXPM-+MoA#HKw@a$v|$3d z;S756e&qp3@xxyJLL_~DtFJTCofDn@(=}t;NvJ7PM(GdIUgqIjov@B#9{TdaSXCMW z{$1VjZe9|?p`f1l!RV08-7DH3RB8^4N zL3{D(5E~Kkkt>2_47oFR;>ou8@|*jbWIK@>!1>JQ`yjlnE3P|-u=zi%FxHyf^Q?Cv zs+pG*cf35_51)|DELgODLKN5xcUgYLCe)H|ALtLA3HQGZz3IRk<|}Z{a-kIlloM>6 z0?A4ghjy8-hM(OzSe4<(->G#WFv&#o;K(*k^<0ybexhp)GX8us=s({BDXQ5yy7R1} zsy-Oj33IQEhp^orC~?zQG`4>in7hO5)?6955Qc4?cSC7cS+|UIHOXF%HI=JuoyOLg z;}I}@%O9Z*_%Gl2EmS(!D(lDD6DZmxKzry=n=XJQ;MP1XW>QDoQ&TqUn|3&-=Zkq( z9?>Ve`t0MRCMKNvAZIKrni0!hzryXt88 zzYn8EJg&Q&Lgqf3u5VYM`jJ_{D{IA zNV}2MEl2xvW8YV8G~B|1 MdFnb0PzC0H0h5}WmH+?% literal 0 HcmV?d00001 diff --git a/6.23.2/img/carat.png b/6.23.2/img/carat.png new file mode 100755 index 0000000000000000000000000000000000000000..29d2f7fd4955fca6bc6fb740e0373a2c358c398e GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRo!3HEV4DF?Wlw^r(L`iUdT1k0gQ7VIDN`6wR zf@f}GdTLN=VoGJ<$y6JlqAi{-jv*Ddl5#RKJQ5NTUZgiPI4RUKGIKU?u8L&ndhX1t za+0CMVUnT(Gnb}ei=c~x==tMH^F1_tBocXwcoSWoO-SZY-o>!8%^=Bms)(~h;m_U( zXNixk28L}0LS5-jKyq@#2gyS|J&f#pGCLkTc<@2s1dqeyqJ*Rc0tSIETAgmODY;(s z2y|Mcp&2}7rpBprBBB~1qM1`N+}4SoxYVPqsXi&l`rxZp{(w0iSy$Nv5*Vy!RapG^ S^0y4=eg;ohKbLh*2~7a!Pg}VF literal 0 HcmV?d00001 diff --git a/6.23.2/img/dash.png b/6.23.2/img/dash.png new file mode 100755 index 0000000000000000000000000000000000000000..6f694c7a012b417908da3687a0a39aa182e91c74 GIT binary patch literal 1338 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 literal 0 HcmV?d00001 diff --git a/6.23.2/index.html b/6.23.2/index.html new file mode 100644 index 0000000000..76c64f8d81 --- /dev/null +++ b/6.23.2/index.html @@ -0,0 +1,554 @@ + + + + Braintree Reference + + + + + + + + + + + + + + + +

+

+ + Braintree 6.23.2 Docs + + (100% documented) +

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Braintree iOS SDK

+ +

CocoaPods compatible +Swift Package Manager compatible +Carthage compatible

+ +

GitHub Actions Tests

+ +

Welcome to Braintree’s iOS SDK. This library will help you accept card and alternative payments in your iOS app.

+

📣 Announcements

+ +
    +
  • Upgrade your integration to continue accepting Braintree payments 📣 The SSL certificates for current iOS SDK versions (v5 and v6) are set to expire by June 31, 2025. Upgrade to v5.26.0+ and v6.17.0+, respectively, to continue using the Braintree SDK. Click here for more details

  • +
  • v6 is the latest major version of Braintree iOS. To update from v5, see the v6 migration guide. If you have not yet migrated to v5, see the v5 migration guide

  • +
+ +

The Braintree iOS SDK permits a deployment target of iOS 14.0 or higher. It requires Xcode 15.0+ and Swift 5.9+.

+

Supported Payment Methods

+ + +

Installation

+ +

We recommend using Swift Package Manager, CocoaPods, or Carthage to integrate the Braintree SDK with your project.

+

Swift Package Manager

+ +

This feature is only available in v5+.

+ +

To add the Braintree package to your Xcode project, select File > Swift Packages > Add Package Dependency and enter https://github.com/braintree/braintree_ios as the repository URL. Tick the checkboxes for the specific Braintree libraries you wish to include.

+ +

If you look at your app target, you will see that the Braintree libraries you chose are automatically linked as a frameworks to your app (see General > Frameworks, Libraries, and Embedded Content).

+ +

BraintreePayPal and BraintreePaymentFlow also require the inclusion of the PayPalDataCollector module.

+ +

In your app’s source code files, use the following import syntax to include Braintree’s libraries:

+
import BraintreeCore
+import BraintreeCard
+import BraintreeApplePay
+import BraintreePayPal
+
+

CocoaPods

+
# Includes Cards and PayPal
+pod 'Braintree'
+
+# Optionally include additional Pods
+pod 'Braintree/DataCollector'
+pod 'Braintree/Venmo'
+
+

Carthage

+ +

Braintree 6.0.0+ requires Carthage 0.38.0+ and the --use-xcframeworks option when running carthage update.

+ +

Add github "braintree/braintree_ios" to your Cartfile, and add the frameworks to your project.

+ +

Note: Long term support for Carthage is not guaranteed. Please update to SPM, if possible. If there are concerns, please comment on this Discussion thread.

+

Documentation

+ +

Start with ‘Hello, Client!’ for instructions on basic setup and usage.

+ +

Next, read the full documentation for information about integrating with additional payment methods, such as PayPal and Venmo, as well as explore our pre-built Drop-In UI offering.

+

Versions

+ +

This SDK abides by our Client SDK Deprecation Policy. For more information on the potential statuses of an SDK check our developer docs.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Major version numberStatusReleasedDeprecatedUnsupported
6.x.xActiveJune 2023TBATBA
5.x.xInactiveFebruary 2021June 2024June 2025
4.x.xUnsupportedNovember 2015February 2022February 2023
+ +

Versions 4.9.6 and below use outdated SSL certificates and are unsupported.

+

Demo

+ +
    +
  1. Our Xcode project uses SwiftLint. To ensure you have it installed see DEVELOPMENT.md
  2. +
  3. Run pod install + +
      +
    • There is a known M1 mac issue with CocoaPods. See this solution to resolve ffi dependency issues.
    • +
  4. +
  5. Resolve the Swift Package Manager packages if needed: File > Packages > Resolve Package Versions or by running swift package resolve in Terminal
  6. +
  7. Open Braintree.xcworkspace in Xcode
  8. +
  9. Select the Demo scheme, and then run
  10. +
+ +

Xcode 15.0+ is required to run the demo app.

+

Contributing

+ +

We welcome PRs to this repo. See our development doc.

+

Feedback

+ +

The Braintree iOS SDK is in active development, we welcome your feedback!

+ +

Here are a few ways to get in touch:

+ + +

Help

+ + +

License

+ +

The Braintree iOS SDK is open source and available under the MIT license. See the LICENSE file for more info.

+ +
+
+ + +
+
+ + + diff --git a/6.23.2/js/jazzy.js b/6.23.2/js/jazzy.js new file mode 100755 index 0000000000..198441660c --- /dev/null +++ b/6.23.2/js/jazzy.js @@ -0,0 +1,74 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + +window.jazzy = {'docset': false} +if (typeof window.dash != 'undefined') { + document.documentElement.className += ' dash' + window.jazzy.docset = true +} +if (navigator.userAgent.match(/xcode/i)) { + document.documentElement.className += ' xcode' + window.jazzy.docset = true +} + +function toggleItem($link, $content) { + var animationDuration = 300; + $link.toggleClass('token-open'); + $content.slideToggle(animationDuration); +} + +function itemLinkToContent($link) { + return $link.parent().parent().next(); +} + +// On doc load + hash-change, open any targetted item +function openCurrentItemIfClosed() { + if (window.jazzy.docset) { + return; + } + var $link = $(`a[name="${location.hash.substring(1)}"]`).nextAll('.token'); + $content = itemLinkToContent($link); + if ($content.is(':hidden')) { + toggleItem($link, $content); + } +} + +$(openCurrentItemIfClosed); +$(window).on('hashchange', openCurrentItemIfClosed); + +// On item link ('token') click, toggle its discussion +$('.token').on('click', function(event) { + if (window.jazzy.docset) { + return; + } + var $link = $(this); + toggleItem($link, itemLinkToContent($link)); + + // Keeps the document from jumping to the hash. + var href = $link.attr('href'); + if (history.pushState) { + history.pushState({}, '', href); + } else { + location.hash = href; + } + event.preventDefault(); +}); + +// Clicks on links to the current, closed, item need to open the item +$("a:not('.token')").on('click', function() { + if (location == this.href) { + openCurrentItemIfClosed(); + } +}); + +// KaTeX rendering +if ("katex" in window) { + $($('.math').each( (_, element) => { + katex.render(element.textContent, element, { + displayMode: $(element).hasClass('m-block'), + throwOnError: false, + trust: true + }); + })) +} diff --git a/6.23.2/js/jazzy.search.js b/6.23.2/js/jazzy.search.js new file mode 100644 index 0000000000..359cdbb8b2 --- /dev/null +++ b/6.23.2/js/jazzy.search.js @@ -0,0 +1,74 @@ +// Jazzy - https://github.com/realm/jazzy +// Copyright Realm Inc. +// SPDX-License-Identifier: MIT + +$(function(){ + var $typeahead = $('[data-typeahead]'); + var $form = $typeahead.parents('form'); + var searchURL = $form.attr('action'); + + function displayTemplate(result) { + return result.name; + } + + function suggestionTemplate(result) { + var t = '
'; + t += '' + result.name + ''; + if (result.parent_name) { + t += '' + result.parent_name + ''; + } + t += '
'; + return t; + } + + $typeahead.one('focus', function() { + $form.addClass('loading'); + + $.getJSON(searchURL).then(function(searchData) { + const searchIndex = lunr(function() { + this.ref('url'); + this.field('name'); + this.field('abstract'); + for (const [url, doc] of Object.entries(searchData)) { + this.add({url: url, name: doc.name, abstract: doc.abstract}); + } + }); + + $typeahead.typeahead( + { + highlight: true, + minLength: 3, + autoselect: true + }, + { + limit: 10, + display: displayTemplate, + templates: { suggestion: suggestionTemplate }, + source: function(query, sync) { + const lcSearch = query.toLowerCase(); + const results = searchIndex.query(function(q) { + q.term(lcSearch, { boost: 100 }); + q.term(lcSearch, { + boost: 10, + wildcard: lunr.Query.wildcard.TRAILING + }); + }).map(function(result) { + var doc = searchData[result.ref]; + doc.url = result.ref; + return doc; + }); + sync(results); + } + } + ); + $form.removeClass('loading'); + $typeahead.trigger('focus'); + }); + }); + + var baseURL = searchURL.slice(0, -"search.json".length); + + $typeahead.on('typeahead:select', function(e, result) { + window.location = baseURL + result.url; + }); +}); diff --git a/6.23.2/js/jquery.min.js b/6.23.2/js/jquery.min.js new file mode 100644 index 0000000000..7f37b5d991 --- /dev/null +++ b/6.23.2/js/jquery.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.7.1 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(ie,e){"use strict";var oe=[],r=Object.getPrototypeOf,ae=oe.slice,g=oe.flat?function(e){return oe.flat.call(e)}:function(e){return oe.concat.apply([],e)},s=oe.push,se=oe.indexOf,n={},i=n.toString,ue=n.hasOwnProperty,o=ue.toString,a=o.call(Object),le={},v=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},y=function(e){return null!=e&&e===e.window},C=ie.document,u={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var r,i,o=(n=n||C).createElement("script");if(o.text=e,t)for(r in u)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[i.call(e)]||"object":typeof e}var t="3.7.1",l=/HTML$/i,ce=function(e,t){return new ce.fn.init(e,t)};function c(e){var t=!!e&&"length"in e&&e.length,n=x(e);return!v(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+ge+")"+ge+"*"),x=new RegExp(ge+"|>"),j=new RegExp(g),A=new RegExp("^"+t+"$"),D={ID:new RegExp("^#("+t+")"),CLASS:new RegExp("^\\.("+t+")"),TAG:new RegExp("^("+t+"|[*])"),ATTR:new RegExp("^"+p),PSEUDO:new RegExp("^"+g),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ge+"*(even|odd|(([+-]|)(\\d*)n|)"+ge+"*(?:([+-]|)"+ge+"*(\\d+)|))"+ge+"*\\)|)","i"),bool:new RegExp("^(?:"+f+")$","i"),needsContext:new RegExp("^"+ge+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ge+"*((?:-\\d)?\\d*)"+ge+"*\\)|)(?=[^-]|$)","i")},N=/^(?:input|select|textarea|button)$/i,q=/^h\d$/i,L=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,H=/[+~]/,O=new RegExp("\\\\[\\da-fA-F]{1,6}"+ge+"?|\\\\([^\\r\\n\\f])","g"),P=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},M=function(){V()},R=J(function(e){return!0===e.disabled&&fe(e,"fieldset")},{dir:"parentNode",next:"legend"});try{k.apply(oe=ae.call(ye.childNodes),ye.childNodes),oe[ye.childNodes.length].nodeType}catch(e){k={apply:function(e,t){me.apply(e,ae.call(t))},call:function(e){me.apply(e,ae.call(arguments,1))}}}function I(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(V(e),e=e||T,C)){if(11!==p&&(u=L.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return k.call(n,a),n}else if(f&&(a=f.getElementById(i))&&I.contains(e,a)&&a.id===i)return k.call(n,a),n}else{if(u[2])return k.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&e.getElementsByClassName)return k.apply(n,e.getElementsByClassName(i)),n}if(!(h[t+" "]||d&&d.test(t))){if(c=t,f=e,1===p&&(x.test(t)||m.test(t))){(f=H.test(t)&&U(e.parentNode)||e)==e&&le.scope||((s=e.getAttribute("id"))?s=ce.escapeSelector(s):e.setAttribute("id",s=S)),o=(l=Y(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+Q(l[o]);c=l.join(",")}try{return k.apply(n,f.querySelectorAll(c)),n}catch(e){h(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return re(t.replace(ve,"$1"),e,n,r)}function W(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function F(e){return e[S]=!0,e}function $(e){var t=T.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function B(t){return function(e){return fe(e,"input")&&e.type===t}}function _(t){return function(e){return(fe(e,"input")||fe(e,"button"))&&e.type===t}}function z(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&R(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function X(a){return F(function(o){return o=+o,F(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function U(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function V(e){var t,n=e?e.ownerDocument||e:ye;return n!=T&&9===n.nodeType&&n.documentElement&&(r=(T=n).documentElement,C=!ce.isXMLDoc(T),i=r.matches||r.webkitMatchesSelector||r.msMatchesSelector,r.msMatchesSelector&&ye!=T&&(t=T.defaultView)&&t.top!==t&&t.addEventListener("unload",M),le.getById=$(function(e){return r.appendChild(e).id=ce.expando,!T.getElementsByName||!T.getElementsByName(ce.expando).length}),le.disconnectedMatch=$(function(e){return i.call(e,"*")}),le.scope=$(function(){return T.querySelectorAll(":scope")}),le.cssHas=$(function(){try{return T.querySelector(":has(*,:jqfake)"),!1}catch(e){return!0}}),le.getById?(b.filter.ID=function(e){var t=e.replace(O,P);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(O,P);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):t.querySelectorAll(e)},b.find.CLASS=function(e,t){if("undefined"!=typeof t.getElementsByClassName&&C)return t.getElementsByClassName(e)},d=[],$(function(e){var t;r.appendChild(e).innerHTML="",e.querySelectorAll("[selected]").length||d.push("\\["+ge+"*(?:value|"+f+")"),e.querySelectorAll("[id~="+S+"-]").length||d.push("~="),e.querySelectorAll("a#"+S+"+*").length||d.push(".#.+[+~]"),e.querySelectorAll(":checked").length||d.push(":checked"),(t=T.createElement("input")).setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),r.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&d.push(":enabled",":disabled"),(t=T.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||d.push("\\["+ge+"*name"+ge+"*="+ge+"*(?:''|\"\")")}),le.cssHas||d.push(":has"),d=d.length&&new RegExp(d.join("|")),l=function(e,t){if(e===t)return a=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!le.sortDetached&&t.compareDocumentPosition(e)===n?e===T||e.ownerDocument==ye&&I.contains(ye,e)?-1:t===T||t.ownerDocument==ye&&I.contains(ye,t)?1:o?se.call(o,e)-se.call(o,t):0:4&n?-1:1)}),T}for(e in I.matches=function(e,t){return I(e,null,null,t)},I.matchesSelector=function(e,t){if(V(e),C&&!h[t+" "]&&(!d||!d.test(t)))try{var n=i.call(e,t);if(n||le.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){h(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(O,P),e[3]=(e[3]||e[4]||e[5]||"").replace(O,P),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||I.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&I.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return D.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&j.test(n)&&(t=Y(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(O,P).toLowerCase();return"*"===e?function(){return!0}:function(e){return fe(e,t)}},CLASS:function(e){var t=s[e+" "];return t||(t=new RegExp("(^|"+ge+")"+e+"("+ge+"|$)"))&&s(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=I.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function T(e,n,r){return v(n)?ce.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?ce.grep(e,function(e){return e===n!==r}):"string"!=typeof n?ce.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(ce.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||k,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:S.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof ce?t[0]:t,ce.merge(this,ce.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:C,!0)),w.test(r[1])&&ce.isPlainObject(t))for(r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=C.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(ce):ce.makeArray(e,this)}).prototype=ce.fn,k=ce(C);var E=/^(?:parents|prev(?:Until|All))/,j={children:!0,contents:!0,next:!0,prev:!0};function A(e,t){while((e=e[t])&&1!==e.nodeType);return e}ce.fn.extend({has:function(e){var t=ce(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Ce=/^$|^module$|\/(?:java|ecma)script/i;xe=C.createDocumentFragment().appendChild(C.createElement("div")),(be=C.createElement("input")).setAttribute("type","radio"),be.setAttribute("checked","checked"),be.setAttribute("name","t"),xe.appendChild(be),le.checkClone=xe.cloneNode(!0).cloneNode(!0).lastChild.checked,xe.innerHTML="",le.noCloneChecked=!!xe.cloneNode(!0).lastChild.defaultValue,xe.innerHTML="",le.option=!!xe.lastChild;var ke={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function Se(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&fe(e,t)?ce.merge([e],n):n}function Ee(e,t){for(var n=0,r=e.length;n",""]);var je=/<|&#?\w+;/;function Ae(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function Re(e,t){return fe(e,"table")&&fe(11!==t.nodeType?t:t.firstChild,"tr")&&ce(e).children("tbody")[0]||e}function Ie(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function We(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Fe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(_.hasData(e)&&(s=_.get(e).events))for(i in _.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),C.head.appendChild(r[0])},abort:function(){i&&i()}}});var Jt,Kt=[],Zt=/(=)\?(?=&|$)|\?\?/;ce.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Kt.pop()||ce.expando+"_"+jt.guid++;return this[e]=!0,e}}),ce.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Zt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Zt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Zt,"$1"+r):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||ce.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=ie[r],ie[r]=function(){o=arguments},n.always(function(){void 0===i?ce(ie).removeProp(r):ie[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Kt.push(r)),o&&v(i)&&i(o[0]),o=i=void 0}),"script"}),le.createHTMLDocument=((Jt=C.implementation.createHTMLDocument("").body).innerHTML="
",2===Jt.childNodes.length),ce.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(le.createHTMLDocument?((r=(t=C.implementation.createHTMLDocument("")).createElement("base")).href=C.location.href,t.head.appendChild(r)):t=C),o=!n&&[],(i=w.exec(e))?[t.createElement(i[1])]:(i=Ae([e],t,o),o&&o.length&&ce(o).remove(),ce.merge([],i.childNodes)));var r,i,o},ce.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(ce.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},ce.expr.pseudos.animated=function(t){return ce.grep(ce.timers,function(e){return t===e.elem}).length},ce.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=ce.css(e,"position"),c=ce(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=ce.css(e,"top"),u=ce.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),v(t)&&(t=t.call(e,n,ce.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},ce.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){ce.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===ce.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===ce.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=ce(e).offset()).top+=ce.css(e,"borderTopWidth",!0),i.left+=ce.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-ce.css(r,"marginTop",!0),left:t.left-i.left-ce.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===ce.css(e,"position"))e=e.offsetParent;return e||J})}}),ce.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;ce.fn[t]=function(e){return M(this,function(e,t,n){var r;if(y(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),ce.each(["top","left"],function(e,n){ce.cssHooks[n]=Ye(le.pixelPosition,function(e,t){if(t)return t=Ge(e,n),_e.test(t)?ce(e).position()[n]+"px":t})}),ce.each({Height:"height",Width:"width"},function(a,s){ce.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){ce.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return M(this,function(e,t,n){var r;return y(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?ce.css(e,t,i):ce.style(e,t,n,i)},s,n?e:void 0,n)}})}),ce.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){ce.fn[t]=function(e){return this.on(t,e)}}),ce.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.on("mouseenter",e).on("mouseleave",t||e)}}),ce.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){ce.fn[n]=function(e,t){return 00){var c=e.utils.clone(r)||{};c.position=[a,l],c.index=s.length,s.push(new e.Token(i.slice(a,o),c))}a=o+1}}return s},e.tokenizer.separator=/[\s\-]+/,e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,r){r in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+r),t.label=r,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){var r=t.label&&t.label in this.registeredFunctions;r||e.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",t)},e.Pipeline.load=function(t){var r=new e.Pipeline;return t.forEach(function(t){var i=e.Pipeline.registeredFunctions[t];if(!i)throw new Error("Cannot load unregistered function: "+t);r.add(i)}),r},e.Pipeline.prototype.add=function(){var t=Array.prototype.slice.call(arguments);t.forEach(function(t){e.Pipeline.warnIfFunctionNotRegistered(t),this._stack.push(t)},this)},e.Pipeline.prototype.after=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,r)},e.Pipeline.prototype.before=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(i==-1)throw new Error("Cannot find existingFn");this._stack.splice(i,0,r)},e.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);t!=-1&&this._stack.splice(t,1)},e.Pipeline.prototype.run=function(e){for(var t=this._stack.length,r=0;r1&&(se&&(r=n),s!=e);)i=r-t,n=t+Math.floor(i/2),s=this.elements[2*n];return s==e?2*n:s>e?2*n:sa?l+=2:o==a&&(t+=r[u+1]*i[l+1],u+=2,l+=2);return t},e.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},e.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,r=0;t0){var o,a=s.str.charAt(0);a in s.node.edges?o=s.node.edges[a]:(o=new e.TokenSet,s.node.edges[a]=o),1==s.str.length&&(o["final"]=!0),n.push({node:o,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(0!=s.editsRemaining){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new e.TokenSet;s.node.edges["*"]=u}if(0==s.str.length&&(u["final"]=!0),n.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&n.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),1==s.str.length&&(s.node["final"]=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new e.TokenSet;s.node.edges["*"]=l}1==s.str.length&&(l["final"]=!0),n.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var c,h=s.str.charAt(0),d=s.str.charAt(1);d in s.node.edges?c=s.node.edges[d]:(c=new e.TokenSet,s.node.edges[d]=c),1==s.str.length&&(c["final"]=!0),n.push({node:c,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return i},e.TokenSet.fromString=function(t){for(var r=new e.TokenSet,i=r,n=0,s=t.length;n=e;t--){var r=this.uncheckedNodes[t],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r["char"]]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}},e.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},e.Index.prototype.search=function(t){return this.query(function(r){var i=new e.QueryParser(t,r);i.parse()})},e.Index.prototype.query=function(t){for(var r=new e.Query(this.fields),i=Object.create(null),n=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},e.Builder.prototype.k1=function(e){this._k1=e},e.Builder.prototype.add=function(t,r){var i=t[this._ref],n=Object.keys(this._fields);this._documents[i]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return e.QueryLexer.EOS;var t=this.str.charAt(this.pos);return this.pos+=1,t},e.QueryLexer.prototype.width=function(){return this.pos-this.start},e.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},e.QueryLexer.prototype.backup=function(){this.pos-=1},e.QueryLexer.prototype.acceptDigitRun=function(){var t,r;do t=this.next(),r=t.charCodeAt(0);while(r>47&&r<58);t!=e.QueryLexer.EOS&&this.backup()},e.QueryLexer.prototype.more=function(){return this.pos1&&(t.backup(),t.emit(e.QueryLexer.TERM)),t.ignore(),t.more())return e.QueryLexer.lexText},e.QueryLexer.lexEditDistance=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.EDIT_DISTANCE),e.QueryLexer.lexText},e.QueryLexer.lexBoost=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.BOOST),e.QueryLexer.lexText},e.QueryLexer.lexEOS=function(t){t.width()>0&&t.emit(e.QueryLexer.TERM)},e.QueryLexer.termSeparator=e.tokenizer.separator,e.QueryLexer.lexText=function(t){for(;;){var r=t.next();if(r==e.QueryLexer.EOS)return e.QueryLexer.lexEOS;if(92!=r.charCodeAt(0)){if(":"==r)return e.QueryLexer.lexField;if("~"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexEditDistance;if("^"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexBoost;if("+"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if("-"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if(r.match(e.QueryLexer.termSeparator))return e.QueryLexer.lexTerm}else t.escapeCharacter()}},e.QueryParser=function(t,r){this.lexer=new e.QueryLexer(t),this.query=r,this.currentClause={},this.lexemeIdx=0},e.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var t=e.QueryParser.parseClause;t;)t=t(this);return this.query},e.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},e.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},e.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},e.QueryParser.parseClause=function(t){var r=t.peekLexeme();if(void 0!=r)switch(r.type){case e.QueryLexer.PRESENCE:return e.QueryParser.parsePresence;case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(i+=" with value '"+r.str+"'"),new e.QueryParseError(i,r.start,r.end)}},e.QueryParser.parsePresence=function(t){var r=t.consumeLexeme();if(void 0!=r){switch(r.str){case"-":t.currentClause.presence=e.Query.presence.PROHIBITED;break;case"+":t.currentClause.presence=e.Query.presence.REQUIRED;break;default:var i="unrecognised presence operator'"+r.str+"'";throw new e.QueryParseError(i,r.start,r.end)}var n=t.peekLexeme();if(void 0==n){var i="expecting term or field, found nothing";throw new e.QueryParseError(i,r.start,r.end)}switch(n.type){case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expecting term or field, found '"+n.type+"'";throw new e.QueryParseError(i,n.start,n.end)}}},e.QueryParser.parseField=function(t){var r=t.consumeLexeme();if(void 0!=r){if(t.query.allFields.indexOf(r.str)==-1){var i=t.query.allFields.map(function(e){return"'"+e+"'"}).join(", "),n="unrecognised field '"+r.str+"', possible fields: "+i;throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.fields=[r.str];var s=t.peekLexeme();if(void 0==s){var n="expecting term, found nothing";throw new e.QueryParseError(n,r.start,r.end)}switch(s.type){case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var n="expecting term, found '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseTerm=function(t){var r=t.consumeLexeme();if(void 0!=r){t.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(t.currentClause.usePipeline=!1);var i=t.peekLexeme();if(void 0==i)return void t.nextClause();switch(i.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+i.type+"'";throw new e.QueryParseError(n,i.start,i.end)}}},e.QueryParser.parseEditDistance=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="edit distance must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.editDistance=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseBoost=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="boost must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.boost=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.lunr=t()}(this,function(){return e})}(); diff --git a/6.23.2/js/typeahead.jquery.js b/6.23.2/js/typeahead.jquery.js new file mode 100644 index 0000000000..bcb734befc --- /dev/null +++ b/6.23.2/js/typeahead.jquery.js @@ -0,0 +1,1695 @@ +/*! + * typeahead.js 1.3.3 + * https://github.com/corejavascript/typeahead.js + * Copyright 2013-2024 Twitter, Inc. and other contributors; Licensed MIT + */ + + +(function(root, factory) { + if (typeof define === "function" && define.amd) { + define([ "jquery" ], function(a0) { + return factory(a0); + }); + } else if (typeof module === "object" && module.exports) { + module.exports = factory(require("jquery")); + } else { + factory(root["jQuery"]); + } +})(this, function($) { + var _ = function() { + "use strict"; + return { + isMsie: function() { + return /(msie|trident)/i.test(navigator.userAgent) ? navigator.userAgent.match(/(msie |rv:)(\d+(.\d+)?)/i)[2] : false; + }, + isBlankString: function(str) { + return !str || /^\s*$/.test(str); + }, + escapeRegExChars: function(str) { + return str.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"); + }, + isString: function(obj) { + return typeof obj === "string"; + }, + isNumber: function(obj) { + return typeof obj === "number"; + }, + isArray: $.isArray, + isFunction: $.isFunction, + isObject: $.isPlainObject, + isUndefined: function(obj) { + return typeof obj === "undefined"; + }, + isElement: function(obj) { + return !!(obj && obj.nodeType === 1); + }, + isJQuery: function(obj) { + return obj instanceof $; + }, + toStr: function toStr(s) { + return _.isUndefined(s) || s === null ? "" : s + ""; + }, + bind: $.proxy, + each: function(collection, cb) { + $.each(collection, reverseArgs); + function reverseArgs(index, value) { + return cb(value, index); + } + }, + map: $.map, + filter: $.grep, + every: function(obj, test) { + var result = true; + if (!obj) { + return result; + } + $.each(obj, function(key, val) { + if (!(result = test.call(null, val, key, obj))) { + return false; + } + }); + return !!result; + }, + some: function(obj, test) { + var result = false; + if (!obj) { + return result; + } + $.each(obj, function(key, val) { + if (result = test.call(null, val, key, obj)) { + return false; + } + }); + return !!result; + }, + mixin: $.extend, + identity: function(x) { + return x; + }, + clone: function(obj) { + return $.extend(true, {}, obj); + }, + getIdGenerator: function() { + var counter = 0; + return function() { + return counter++; + }; + }, + templatify: function templatify(obj) { + return $.isFunction(obj) ? obj : template; + function template() { + return String(obj); + } + }, + defer: function(fn) { + setTimeout(fn, 0); + }, + debounce: function(func, wait, immediate) { + var timeout, result; + return function() { + var context = this, args = arguments, later, callNow; + later = function() { + timeout = null; + if (!immediate) { + result = func.apply(context, args); + } + }; + callNow = immediate && !timeout; + clearTimeout(timeout); + timeout = setTimeout(later, wait); + if (callNow) { + result = func.apply(context, args); + } + return result; + }; + }, + throttle: function(func, wait) { + var context, args, timeout, result, previous, later; + previous = 0; + later = function() { + previous = new Date(); + timeout = null; + result = func.apply(context, args); + }; + return function() { + var now = new Date(), remaining = wait - (now - previous); + context = this; + args = arguments; + if (remaining <= 0) { + clearTimeout(timeout); + timeout = null; + previous = now; + result = func.apply(context, args); + } else if (!timeout) { + timeout = setTimeout(later, remaining); + } + return result; + }; + }, + stringify: function(val) { + return _.isString(val) ? val : JSON.stringify(val); + }, + guid: function() { + function _p8(s) { + var p = (Math.random().toString(16) + "000000000").substr(2, 8); + return s ? "-" + p.substr(0, 4) + "-" + p.substr(4, 4) : p; + } + return "tt-" + _p8() + _p8(true) + _p8(true) + _p8(); + }, + noop: function() {} + }; + }(); + var WWW = function() { + "use strict"; + var defaultClassNames = { + wrapper: "twitter-typeahead", + input: "tt-input", + hint: "tt-hint", + menu: "tt-menu", + dataset: "tt-dataset", + suggestion: "tt-suggestion", + selectable: "tt-selectable", + empty: "tt-empty", + open: "tt-open", + cursor: "tt-cursor", + highlight: "tt-highlight" + }; + return build; + function build(o) { + var www, classes; + classes = _.mixin({}, defaultClassNames, o); + www = { + css: buildCss(), + classes: classes, + html: buildHtml(classes), + selectors: buildSelectors(classes) + }; + return { + css: www.css, + html: www.html, + classes: www.classes, + selectors: www.selectors, + mixin: function(o) { + _.mixin(o, www); + } + }; + } + function buildHtml(c) { + return { + wrapper: '', + menu: '
' + }; + } + function buildSelectors(classes) { + var selectors = {}; + _.each(classes, function(v, k) { + selectors[k] = "." + v; + }); + return selectors; + } + function buildCss() { + var css = { + wrapper: { + position: "relative", + display: "inline-block" + }, + hint: { + position: "absolute", + top: "0", + left: "0", + borderColor: "transparent", + boxShadow: "none", + opacity: "1" + }, + input: { + position: "relative", + verticalAlign: "top", + backgroundColor: "transparent" + }, + inputWithNoHint: { + position: "relative", + verticalAlign: "top" + }, + menu: { + position: "absolute", + top: "100%", + left: "0", + zIndex: "100", + display: "none" + }, + ltr: { + left: "0", + right: "auto" + }, + rtl: { + left: "auto", + right: " 0" + } + }; + if (_.isMsie()) { + _.mixin(css.input, { + backgroundImage: "url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)" + }); + } + return css; + } + }(); + var EventBus = function() { + "use strict"; + var namespace, deprecationMap; + namespace = "typeahead:"; + deprecationMap = { + render: "rendered", + cursorchange: "cursorchanged", + select: "selected", + autocomplete: "autocompleted" + }; + function EventBus(o) { + if (!o || !o.el) { + $.error("EventBus initialized without el"); + } + this.$el = $(o.el); + } + _.mixin(EventBus.prototype, { + _trigger: function(type, args) { + var $e = $.Event(namespace + type); + this.$el.trigger.call(this.$el, $e, args || []); + return $e; + }, + before: function(type) { + var args, $e; + args = [].slice.call(arguments, 1); + $e = this._trigger("before" + type, args); + return $e.isDefaultPrevented(); + }, + trigger: function(type) { + var deprecatedType; + this._trigger(type, [].slice.call(arguments, 1)); + if (deprecatedType = deprecationMap[type]) { + this._trigger(deprecatedType, [].slice.call(arguments, 1)); + } + } + }); + return EventBus; + }(); + var EventEmitter = function() { + "use strict"; + var splitter = /\s+/, nextTick = getNextTick(); + return { + onSync: onSync, + onAsync: onAsync, + off: off, + trigger: trigger + }; + function on(method, types, cb, context) { + var type; + if (!cb) { + return this; + } + types = types.split(splitter); + cb = context ? bindContext(cb, context) : cb; + this._callbacks = this._callbacks || {}; + while (type = types.shift()) { + this._callbacks[type] = this._callbacks[type] || { + sync: [], + async: [] + }; + this._callbacks[type][method].push(cb); + } + return this; + } + function onAsync(types, cb, context) { + return on.call(this, "async", types, cb, context); + } + function onSync(types, cb, context) { + return on.call(this, "sync", types, cb, context); + } + function off(types) { + var type; + if (!this._callbacks) { + return this; + } + types = types.split(splitter); + while (type = types.shift()) { + delete this._callbacks[type]; + } + return this; + } + function trigger(types) { + var type, callbacks, args, syncFlush, asyncFlush; + if (!this._callbacks) { + return this; + } + types = types.split(splitter); + args = [].slice.call(arguments, 1); + while ((type = types.shift()) && (callbacks = this._callbacks[type])) { + syncFlush = getFlush(callbacks.sync, this, [ type ].concat(args)); + asyncFlush = getFlush(callbacks.async, this, [ type ].concat(args)); + syncFlush() && nextTick(asyncFlush); + } + return this; + } + function getFlush(callbacks, context, args) { + return flush; + function flush() { + var cancelled; + for (var i = 0, len = callbacks.length; !cancelled && i < len; i += 1) { + cancelled = callbacks[i].apply(context, args) === false; + } + return !cancelled; + } + } + function getNextTick() { + var nextTickFn; + if (window.setImmediate) { + nextTickFn = function nextTickSetImmediate(fn) { + setImmediate(function() { + fn(); + }); + }; + } else { + nextTickFn = function nextTickSetTimeout(fn) { + setTimeout(function() { + fn(); + }, 0); + }; + } + return nextTickFn; + } + function bindContext(fn, context) { + return fn.bind ? fn.bind(context) : function() { + fn.apply(context, [].slice.call(arguments, 0)); + }; + } + }(); + var highlight = function(doc) { + "use strict"; + var defaults = { + node: null, + pattern: null, + tagName: "strong", + className: null, + wordsOnly: false, + caseSensitive: false, + diacriticInsensitive: false + }; + var accented = { + A: "[AaªÀ-Åà-åĀ-ąǍǎȀ-ȃȦȧᴬᵃḀḁẚẠ-ảₐ℀℁℻⒜Ⓐⓐ㍱-㍴㎀-㎄㎈㎉㎩-㎯㏂㏊㏟㏿Aa]", + B: "[BbᴮᵇḂ-ḇℬ⒝Ⓑⓑ㍴㎅-㎇㏃㏈㏔㏝Bb]", + C: "[CcÇçĆ-čᶜ℀ℂ℃℅℆ℭⅭⅽ⒞Ⓒⓒ㍶㎈㎉㎝㎠㎤㏄-㏇Cc]", + D: "[DdĎďDŽ-džDZ-dzᴰᵈḊ-ḓⅅⅆⅮⅾ⒟Ⓓⓓ㋏㍲㍷-㍹㎗㎭-㎯㏅㏈Dd]", + E: "[EeÈ-Ëè-ëĒ-ěȄ-ȇȨȩᴱᵉḘ-ḛẸ-ẽₑ℡ℯℰⅇ⒠Ⓔⓔ㉐㋍㋎Ee]", + F: "[FfᶠḞḟ℉ℱ℻⒡Ⓕⓕ㎊-㎌㎙ff-fflFf]", + G: "[GgĜ-ģǦǧǴǵᴳᵍḠḡℊ⒢Ⓖⓖ㋌㋍㎇㎍-㎏㎓㎬㏆㏉㏒㏿Gg]", + H: "[HhĤĥȞȟʰᴴḢ-ḫẖℋ-ℎ⒣Ⓗⓗ㋌㍱㎐-㎔㏊㏋㏗Hh]", + I: "[IiÌ-Ïì-ïĨ-İIJijǏǐȈ-ȋᴵᵢḬḭỈ-ịⁱℐℑℹⅈⅠ-ⅣⅥ-ⅨⅪⅫⅰ-ⅳⅵ-ⅸⅺⅻ⒤Ⓘⓘ㍺㏌㏕fiffiIi]", + J: "[JjIJ-ĵLJ-njǰʲᴶⅉ⒥ⒿⓙⱼJj]", + K: "[KkĶķǨǩᴷᵏḰ-ḵK⒦Ⓚⓚ㎄㎅㎉㎏㎑㎘㎞㎢㎦㎪㎸㎾㏀㏆㏍-㏏Kk]", + L: "[LlĹ-ŀLJ-ljˡᴸḶḷḺ-ḽℒℓ℡Ⅼⅼ⒧Ⓛⓛ㋏㎈㎉㏐-㏓㏕㏖㏿flfflLl]", + M: "[MmᴹᵐḾ-ṃ℠™ℳⅯⅿ⒨Ⓜⓜ㍷-㍹㎃㎆㎎㎒㎖㎙-㎨㎫㎳㎷㎹㎽㎿㏁㏂㏎㏐㏔-㏖㏘㏙㏞㏟Mm]", + N: "[NnÑñŃ-ʼnNJ-njǸǹᴺṄ-ṋⁿℕ№⒩Ⓝⓝ㎁㎋㎚㎱㎵㎻㏌㏑Nn]", + O: "[OoºÒ-Öò-öŌ-őƠơǑǒǪǫȌ-ȏȮȯᴼᵒỌ-ỏₒ℅№ℴ⒪Ⓞⓞ㍵㏇㏒㏖Oo]", + P: "[PpᴾᵖṔ-ṗℙ⒫Ⓟⓟ㉐㍱㍶㎀㎊㎩-㎬㎰㎴㎺㏋㏗-㏚Pp]", + Q: "[Qqℚ⒬Ⓠⓠ㏃Qq]", + R: "[RrŔ-řȐ-ȓʳᴿᵣṘ-ṛṞṟ₨ℛ-ℝ⒭Ⓡⓡ㋍㍴㎭-㎯㏚㏛Rr]", + S: "[SsŚ-šſȘșˢṠ-ṣ₨℁℠⒮Ⓢⓢ㎧㎨㎮-㎳㏛㏜stSs]", + T: "[TtŢ-ťȚțᵀᵗṪ-ṱẗ℡™⒯Ⓣⓣ㉐㋏㎔㏏ſtstTt]", + U: "[UuÙ-Üù-üŨ-ųƯưǓǔȔ-ȗᵁᵘᵤṲ-ṷỤ-ủ℆⒰Ⓤⓤ㍳㍺Uu]", + V: "[VvᵛᵥṼ-ṿⅣ-Ⅷⅳ-ⅷ⒱Ⓥⓥⱽ㋎㍵㎴-㎹㏜㏞Vv]", + W: "[WwŴŵʷᵂẀ-ẉẘ⒲Ⓦⓦ㎺-㎿㏝Ww]", + X: "[XxˣẊ-ẍₓ℻Ⅸ-Ⅻⅸ-ⅻ⒳Ⓧⓧ㏓Xx]", + Y: "[YyÝýÿŶ-ŸȲȳʸẎẏẙỲ-ỹ⒴Ⓨⓨ㏉Yy]", + Z: "[ZzŹ-žDZ-dzᶻẐ-ẕℤℨ⒵Ⓩⓩ㎐-㎔Zz]" + }; + return function hightlight(o) { + var regex; + o = _.mixin({}, defaults, o); + if (!o.node || !o.pattern) { + return; + } + o.pattern = _.isArray(o.pattern) ? o.pattern : [ o.pattern ]; + regex = getRegex(o.pattern, o.caseSensitive, o.wordsOnly, o.diacriticInsensitive); + traverse(o.node, hightlightTextNode); + function hightlightTextNode(textNode) { + var match, patternNode, wrapperNode; + if (match = regex.exec(textNode.data)) { + wrapperNode = doc.createElement(o.tagName); + o.className && (wrapperNode.className = o.className); + patternNode = textNode.splitText(match.index); + patternNode.splitText(match[0].length); + wrapperNode.appendChild(patternNode.cloneNode(true)); + textNode.parentNode.replaceChild(wrapperNode, patternNode); + } + return !!match; + } + function traverse(el, hightlightTextNode) { + var childNode, TEXT_NODE_TYPE = 3; + for (var i = 0; i < el.childNodes.length; i++) { + childNode = el.childNodes[i]; + if (childNode.nodeType === TEXT_NODE_TYPE) { + i += hightlightTextNode(childNode) ? 1 : 0; + } else { + traverse(childNode, hightlightTextNode); + } + } + } + }; + function accent_replacer(chr) { + return accented[chr.toUpperCase()] || chr; + } + function getRegex(patterns, caseSensitive, wordsOnly, diacriticInsensitive) { + var escapedPatterns = [], regexStr; + for (var i = 0, len = patterns.length; i < len; i++) { + var escapedWord = _.escapeRegExChars(patterns[i]); + if (diacriticInsensitive) { + escapedWord = escapedWord.replace(/\S/g, accent_replacer); + } + escapedPatterns.push(escapedWord); + } + regexStr = wordsOnly ? "\\b(" + escapedPatterns.join("|") + ")\\b" : "(" + escapedPatterns.join("|") + ")"; + return caseSensitive ? new RegExp(regexStr) : new RegExp(regexStr, "i"); + } + }(window.document); + var Input = function() { + "use strict"; + var specialKeyCodeMap; + specialKeyCodeMap = { + 9: "tab", + 27: "esc", + 37: "left", + 39: "right", + 13: "enter", + 38: "up", + 40: "down" + }; + function Input(o, www) { + var id; + o = o || {}; + if (!o.input) { + $.error("input is missing"); + } + www.mixin(this); + this.$hint = $(o.hint); + this.$input = $(o.input); + this.$menu = $(o.menu); + id = this.$input.attr("id") || _.guid(); + this.$menu.attr("id", id + "_listbox"); + this.$hint.attr({ + "aria-hidden": true + }); + this.$input.attr({ + "aria-owns": id + "_listbox", + "aria-controls": id + "_listbox", + role: "combobox", + "aria-autocomplete": "list", + "aria-expanded": false + }); + this.query = this.$input.val(); + this.queryWhenFocused = this.hasFocus() ? this.query : null; + this.$overflowHelper = buildOverflowHelper(this.$input); + this._checkLanguageDirection(); + if (this.$hint.length === 0) { + this.setHint = this.getHint = this.clearHint = this.clearHintIfInvalid = _.noop; + } + this.onSync("cursorchange", this._updateDescendent); + } + Input.normalizeQuery = function(str) { + return _.toStr(str).replace(/^\s*/g, "").replace(/\s{2,}/g, " "); + }; + _.mixin(Input.prototype, EventEmitter, { + _onBlur: function onBlur() { + this.resetInputValue(); + this.trigger("blurred"); + }, + _onFocus: function onFocus() { + this.queryWhenFocused = this.query; + this.trigger("focused"); + }, + _onKeydown: function onKeydown($e) { + var keyName = specialKeyCodeMap[$e.which || $e.keyCode]; + this._managePreventDefault(keyName, $e); + if (keyName && this._shouldTrigger(keyName, $e)) { + this.trigger(keyName + "Keyed", $e); + } + }, + _onInput: function onInput() { + this._setQuery(this.getInputValue()); + this.clearHintIfInvalid(); + this._checkLanguageDirection(); + }, + _managePreventDefault: function managePreventDefault(keyName, $e) { + var preventDefault; + switch (keyName) { + case "up": + case "down": + preventDefault = !withModifier($e); + break; + + default: + preventDefault = false; + } + preventDefault && $e.preventDefault(); + }, + _shouldTrigger: function shouldTrigger(keyName, $e) { + var trigger; + switch (keyName) { + case "tab": + trigger = !withModifier($e); + break; + + default: + trigger = true; + } + return trigger; + }, + _checkLanguageDirection: function checkLanguageDirection() { + var dir = (this.$input.css("direction") || "ltr").toLowerCase(); + if (this.dir !== dir) { + this.dir = dir; + this.$hint.attr("dir", dir); + this.trigger("langDirChanged", dir); + } + }, + _setQuery: function setQuery(val, silent) { + var areEquivalent, hasDifferentWhitespace; + areEquivalent = areQueriesEquivalent(val, this.query); + hasDifferentWhitespace = areEquivalent ? this.query.length !== val.length : false; + this.query = val; + if (!silent && !areEquivalent) { + this.trigger("queryChanged", this.query); + } else if (!silent && hasDifferentWhitespace) { + this.trigger("whitespaceChanged", this.query); + } + }, + _updateDescendent: function updateDescendent(event, id) { + this.$input.attr("aria-activedescendant", id); + }, + bind: function() { + var that = this, onBlur, onFocus, onKeydown, onInput; + onBlur = _.bind(this._onBlur, this); + onFocus = _.bind(this._onFocus, this); + onKeydown = _.bind(this._onKeydown, this); + onInput = _.bind(this._onInput, this); + this.$input.on("blur.tt", onBlur).on("focus.tt", onFocus).on("keydown.tt", onKeydown); + if (!_.isMsie() || _.isMsie() > 9) { + this.$input.on("input.tt", onInput); + } else { + this.$input.on("keydown.tt keypress.tt cut.tt paste.tt", function($e) { + if (specialKeyCodeMap[$e.which || $e.keyCode]) { + return; + } + _.defer(_.bind(that._onInput, that, $e)); + }); + } + return this; + }, + focus: function focus() { + this.$input.focus(); + }, + blur: function blur() { + this.$input.blur(); + }, + getLangDir: function getLangDir() { + return this.dir; + }, + getQuery: function getQuery() { + return this.query || ""; + }, + setQuery: function setQuery(val, silent) { + this.setInputValue(val); + this._setQuery(val, silent); + }, + hasQueryChangedSinceLastFocus: function hasQueryChangedSinceLastFocus() { + return this.query !== this.queryWhenFocused; + }, + getInputValue: function getInputValue() { + return this.$input.val(); + }, + setInputValue: function setInputValue(value) { + this.$input.val(value); + this.clearHintIfInvalid(); + this._checkLanguageDirection(); + }, + resetInputValue: function resetInputValue() { + this.setInputValue(this.query); + }, + getHint: function getHint() { + return this.$hint.val(); + }, + setHint: function setHint(value) { + this.$hint.val(value); + }, + clearHint: function clearHint() { + this.setHint(""); + }, + clearHintIfInvalid: function clearHintIfInvalid() { + var val, hint, valIsPrefixOfHint, isValid; + val = this.getInputValue(); + hint = this.getHint(); + valIsPrefixOfHint = val !== hint && hint.indexOf(val) === 0; + isValid = val !== "" && valIsPrefixOfHint && !this.hasOverflow(); + !isValid && this.clearHint(); + }, + hasFocus: function hasFocus() { + return this.$input.is(":focus"); + }, + hasOverflow: function hasOverflow() { + var constraint = this.$input.width() - 2; + this.$overflowHelper.text(this.getInputValue()); + return this.$overflowHelper.width() >= constraint; + }, + isCursorAtEnd: function() { + var valueLength, selectionStart, range; + valueLength = this.$input.val().length; + selectionStart = this.$input[0].selectionStart; + if (_.isNumber(selectionStart)) { + return selectionStart === valueLength; + } else if (document.selection) { + range = document.selection.createRange(); + range.moveStart("character", -valueLength); + return valueLength === range.text.length; + } + return true; + }, + destroy: function destroy() { + this.$hint.off(".tt"); + this.$input.off(".tt"); + this.$overflowHelper.remove(); + this.$hint = this.$input = this.$overflowHelper = $("
"); + }, + setAriaExpanded: function setAriaExpanded(value) { + this.$input.attr("aria-expanded", value); + } + }); + return Input; + function buildOverflowHelper($input) { + return $('').css({ + position: "absolute", + visibility: "hidden", + whiteSpace: "pre", + fontFamily: $input.css("font-family"), + fontSize: $input.css("font-size"), + fontStyle: $input.css("font-style"), + fontVariant: $input.css("font-variant"), + fontWeight: $input.css("font-weight"), + wordSpacing: $input.css("word-spacing"), + letterSpacing: $input.css("letter-spacing"), + textIndent: $input.css("text-indent"), + textRendering: $input.css("text-rendering"), + textTransform: $input.css("text-transform") + }).insertAfter($input); + } + function areQueriesEquivalent(a, b) { + return Input.normalizeQuery(a) === Input.normalizeQuery(b); + } + function withModifier($e) { + return $e.altKey || $e.ctrlKey || $e.metaKey || $e.shiftKey; + } + }(); + var Dataset = function() { + "use strict"; + var keys, nameGenerator; + keys = { + dataset: "tt-selectable-dataset", + val: "tt-selectable-display", + obj: "tt-selectable-object" + }; + nameGenerator = _.getIdGenerator(); + function Dataset(o, www) { + o = o || {}; + o.templates = o.templates || {}; + o.templates.notFound = o.templates.notFound || o.templates.empty; + if (!o.source) { + $.error("missing source"); + } + if (!o.node) { + $.error("missing node"); + } + if (o.name && !isValidName(o.name)) { + $.error("invalid dataset name: " + o.name); + } + www.mixin(this); + this.highlight = !!o.highlight; + this.name = _.toStr(o.name || nameGenerator()); + this.limit = o.limit || 5; + this.displayFn = getDisplayFn(o.display || o.displayKey); + this.templates = getTemplates(o.templates, this.displayFn); + this.source = o.source.__ttAdapter ? o.source.__ttAdapter() : o.source; + this.async = _.isUndefined(o.async) ? this.source.length > 2 : !!o.async; + this._resetLastSuggestion(); + this.$el = $(o.node).attr("role", "presentation").addClass(this.classes.dataset).addClass(this.classes.dataset + "-" + this.name); + } + Dataset.extractData = function extractData(el) { + var $el = $(el); + if ($el.data(keys.obj)) { + return { + dataset: $el.data(keys.dataset) || "", + val: $el.data(keys.val) || "", + obj: $el.data(keys.obj) || null + }; + } + return null; + }; + _.mixin(Dataset.prototype, EventEmitter, { + _overwrite: function overwrite(query, suggestions) { + suggestions = suggestions || []; + if (suggestions.length) { + this._renderSuggestions(query, suggestions); + } else if (this.async && this.templates.pending) { + this._renderPending(query); + } else if (!this.async && this.templates.notFound) { + this._renderNotFound(query); + } else { + this._empty(); + } + this.trigger("rendered", suggestions, false, this.name); + }, + _append: function append(query, suggestions) { + suggestions = suggestions || []; + if (suggestions.length && this.$lastSuggestion.length) { + this._appendSuggestions(query, suggestions); + } else if (suggestions.length) { + this._renderSuggestions(query, suggestions); + } else if (!this.$lastSuggestion.length && this.templates.notFound) { + this._renderNotFound(query); + } + this.trigger("rendered", suggestions, true, this.name); + }, + _renderSuggestions: function renderSuggestions(query, suggestions) { + var $fragment; + $fragment = this._getSuggestionsFragment(query, suggestions); + this.$lastSuggestion = $fragment.children().last(); + this.$el.html($fragment).prepend(this._getHeader(query, suggestions)).append(this._getFooter(query, suggestions)); + }, + _appendSuggestions: function appendSuggestions(query, suggestions) { + var $fragment, $lastSuggestion; + $fragment = this._getSuggestionsFragment(query, suggestions); + $lastSuggestion = $fragment.children().last(); + this.$lastSuggestion.after($fragment); + this.$lastSuggestion = $lastSuggestion; + }, + _renderPending: function renderPending(query) { + var template = this.templates.pending; + this._resetLastSuggestion(); + template && this.$el.html(template({ + query: query, + dataset: this.name + })); + }, + _renderNotFound: function renderNotFound(query) { + var template = this.templates.notFound; + this._resetLastSuggestion(); + template && this.$el.html(template({ + query: query, + dataset: this.name + })); + }, + _empty: function empty() { + this.$el.empty(); + this._resetLastSuggestion(); + }, + _getSuggestionsFragment: function getSuggestionsFragment(query, suggestions) { + var that = this, fragment; + fragment = document.createDocumentFragment(); + _.each(suggestions, function getSuggestionNode(suggestion) { + var $el, context; + context = that._injectQuery(query, suggestion); + $el = $(that.templates.suggestion(context)).data(keys.dataset, that.name).data(keys.obj, suggestion).data(keys.val, that.displayFn(suggestion)).addClass(that.classes.suggestion + " " + that.classes.selectable); + fragment.appendChild($el[0]); + }); + this.highlight && highlight({ + className: this.classes.highlight, + node: fragment, + pattern: query + }); + return $(fragment); + }, + _getFooter: function getFooter(query, suggestions) { + return this.templates.footer ? this.templates.footer({ + query: query, + suggestions: suggestions, + dataset: this.name + }) : null; + }, + _getHeader: function getHeader(query, suggestions) { + return this.templates.header ? this.templates.header({ + query: query, + suggestions: suggestions, + dataset: this.name + }) : null; + }, + _resetLastSuggestion: function resetLastSuggestion() { + this.$lastSuggestion = $(); + }, + _injectQuery: function injectQuery(query, obj) { + return _.isObject(obj) ? _.mixin({ + _query: query + }, obj) : obj; + }, + update: function update(query) { + var that = this, canceled = false, syncCalled = false, rendered = 0; + this.cancel(); + this.cancel = function cancel() { + canceled = true; + that.cancel = $.noop; + that.async && that.trigger("asyncCanceled", query, that.name); + }; + this.source(query, sync, async); + !syncCalled && sync([]); + function sync(suggestions) { + if (syncCalled) { + return; + } + syncCalled = true; + suggestions = (suggestions || []).slice(0, that.limit); + rendered = suggestions.length; + that._overwrite(query, suggestions); + if (rendered < that.limit && that.async) { + that.trigger("asyncRequested", query, that.name); + } + } + function async(suggestions) { + suggestions = suggestions || []; + if (!canceled && rendered < that.limit) { + that.cancel = $.noop; + var idx = Math.abs(rendered - that.limit); + rendered += idx; + that._append(query, suggestions.slice(0, idx)); + that.async && that.trigger("asyncReceived", query, that.name); + } + } + }, + cancel: $.noop, + clear: function clear() { + this._empty(); + this.cancel(); + this.trigger("cleared"); + }, + isEmpty: function isEmpty() { + return this.$el.is(":empty"); + }, + destroy: function destroy() { + this.$el = $("
"); + } + }); + return Dataset; + function getDisplayFn(display) { + display = display || _.stringify; + return _.isFunction(display) ? display : displayFn; + function displayFn(obj) { + return obj[display]; + } + } + function getTemplates(templates, displayFn) { + return { + notFound: templates.notFound && _.templatify(templates.notFound), + pending: templates.pending && _.templatify(templates.pending), + header: templates.header && _.templatify(templates.header), + footer: templates.footer && _.templatify(templates.footer), + suggestion: templates.suggestion ? userSuggestionTemplate : suggestionTemplate + }; + function userSuggestionTemplate(context) { + var template = templates.suggestion; + return $(template(context)).attr("id", _.guid()); + } + function suggestionTemplate(context) { + return $('
').attr("id", _.guid()).text(displayFn(context)); + } + } + function isValidName(str) { + return /^[_a-zA-Z0-9-]+$/.test(str); + } + }(); + var Menu = function() { + "use strict"; + function Menu(o, www) { + var that = this; + o = o || {}; + if (!o.node) { + $.error("node is required"); + } + www.mixin(this); + this.$node = $(o.node); + this.query = null; + this.datasets = _.map(o.datasets, initializeDataset); + function initializeDataset(oDataset) { + var node = that.$node.find(oDataset.node).first(); + oDataset.node = node.length ? node : $("
").appendTo(that.$node); + return new Dataset(oDataset, www); + } + } + _.mixin(Menu.prototype, EventEmitter, { + _onSelectableClick: function onSelectableClick($e) { + this.trigger("selectableClicked", $($e.currentTarget)); + }, + _onRendered: function onRendered(type, dataset, suggestions, async) { + this.$node.toggleClass(this.classes.empty, this._allDatasetsEmpty()); + this.trigger("datasetRendered", dataset, suggestions, async); + }, + _onCleared: function onCleared() { + this.$node.toggleClass(this.classes.empty, this._allDatasetsEmpty()); + this.trigger("datasetCleared"); + }, + _propagate: function propagate() { + this.trigger.apply(this, arguments); + }, + _allDatasetsEmpty: function allDatasetsEmpty() { + return _.every(this.datasets, _.bind(function isDatasetEmpty(dataset) { + var isEmpty = dataset.isEmpty(); + this.$node.attr("aria-expanded", !isEmpty); + return isEmpty; + }, this)); + }, + _getSelectables: function getSelectables() { + return this.$node.find(this.selectors.selectable); + }, + _removeCursor: function _removeCursor() { + var $selectable = this.getActiveSelectable(); + $selectable && $selectable.removeClass(this.classes.cursor); + }, + _ensureVisible: function ensureVisible($el) { + var elTop, elBottom, nodeScrollTop, nodeHeight; + elTop = $el.position().top; + elBottom = elTop + $el.outerHeight(true); + nodeScrollTop = this.$node.scrollTop(); + nodeHeight = this.$node.height() + parseInt(this.$node.css("paddingTop"), 10) + parseInt(this.$node.css("paddingBottom"), 10); + if (elTop < 0) { + this.$node.scrollTop(nodeScrollTop + elTop); + } else if (nodeHeight < elBottom) { + this.$node.scrollTop(nodeScrollTop + (elBottom - nodeHeight)); + } + }, + bind: function() { + var that = this, onSelectableClick; + onSelectableClick = _.bind(this._onSelectableClick, this); + this.$node.on("click.tt", this.selectors.selectable, onSelectableClick); + this.$node.on("mouseover", this.selectors.selectable, function() { + that.setCursor($(this)); + }); + this.$node.on("mouseleave", function() { + that._removeCursor(); + }); + _.each(this.datasets, function(dataset) { + dataset.onSync("asyncRequested", that._propagate, that).onSync("asyncCanceled", that._propagate, that).onSync("asyncReceived", that._propagate, that).onSync("rendered", that._onRendered, that).onSync("cleared", that._onCleared, that); + }); + return this; + }, + isOpen: function isOpen() { + return this.$node.hasClass(this.classes.open); + }, + open: function open() { + this.$node.scrollTop(0); + this.$node.addClass(this.classes.open); + }, + close: function close() { + this.$node.attr("aria-expanded", false); + this.$node.removeClass(this.classes.open); + this._removeCursor(); + }, + setLanguageDirection: function setLanguageDirection(dir) { + this.$node.attr("dir", dir); + }, + selectableRelativeToCursor: function selectableRelativeToCursor(delta) { + var $selectables, $oldCursor, oldIndex, newIndex; + $oldCursor = this.getActiveSelectable(); + $selectables = this._getSelectables(); + oldIndex = $oldCursor ? $selectables.index($oldCursor) : -1; + newIndex = oldIndex + delta; + newIndex = (newIndex + 1) % ($selectables.length + 1) - 1; + newIndex = newIndex < -1 ? $selectables.length - 1 : newIndex; + return newIndex === -1 ? null : $selectables.eq(newIndex); + }, + setCursor: function setCursor($selectable) { + this._removeCursor(); + if ($selectable = $selectable && $selectable.first()) { + $selectable.addClass(this.classes.cursor); + this._ensureVisible($selectable); + } + }, + getSelectableData: function getSelectableData($el) { + return $el && $el.length ? Dataset.extractData($el) : null; + }, + getActiveSelectable: function getActiveSelectable() { + var $selectable = this._getSelectables().filter(this.selectors.cursor).first(); + return $selectable.length ? $selectable : null; + }, + getTopSelectable: function getTopSelectable() { + var $selectable = this._getSelectables().first(); + return $selectable.length ? $selectable : null; + }, + update: function update(query) { + var isValidUpdate = query !== this.query; + if (isValidUpdate) { + this.query = query; + _.each(this.datasets, updateDataset); + } + return isValidUpdate; + function updateDataset(dataset) { + dataset.update(query); + } + }, + empty: function empty() { + _.each(this.datasets, clearDataset); + this.query = null; + this.$node.addClass(this.classes.empty); + function clearDataset(dataset) { + dataset.clear(); + } + }, + destroy: function destroy() { + this.$node.off(".tt"); + this.$node = $("
"); + _.each(this.datasets, destroyDataset); + function destroyDataset(dataset) { + dataset.destroy(); + } + } + }); + return Menu; + }(); + var Status = function() { + "use strict"; + function Status(options) { + this.$el = $("", { + role: "status", + "aria-live": "polite" + }).css({ + position: "absolute", + padding: "0", + border: "0", + height: "1px", + width: "1px", + "margin-bottom": "-1px", + "margin-right": "-1px", + overflow: "hidden", + clip: "rect(0 0 0 0)", + "white-space": "nowrap" + }); + options.$input.after(this.$el); + _.each(options.menu.datasets, _.bind(function(dataset) { + if (dataset.onSync) { + dataset.onSync("rendered", _.bind(this.update, this)); + dataset.onSync("cleared", _.bind(this.cleared, this)); + } + }, this)); + } + _.mixin(Status.prototype, { + update: function update(event, suggestions) { + var length = suggestions.length; + var words; + if (length === 1) { + words = { + result: "result", + is: "is" + }; + } else { + words = { + result: "results", + is: "are" + }; + } + this.$el.text(length + " " + words.result + " " + words.is + " available, use up and down arrow keys to navigate."); + }, + cleared: function() { + this.$el.text(""); + } + }); + return Status; + }(); + var DefaultMenu = function() { + "use strict"; + var s = Menu.prototype; + function DefaultMenu() { + Menu.apply(this, [].slice.call(arguments, 0)); + } + _.mixin(DefaultMenu.prototype, Menu.prototype, { + open: function open() { + !this._allDatasetsEmpty() && this._show(); + return s.open.apply(this, [].slice.call(arguments, 0)); + }, + close: function close() { + this._hide(); + return s.close.apply(this, [].slice.call(arguments, 0)); + }, + _onRendered: function onRendered() { + if (this._allDatasetsEmpty()) { + this._hide(); + } else { + this.isOpen() && this._show(); + } + return s._onRendered.apply(this, [].slice.call(arguments, 0)); + }, + _onCleared: function onCleared() { + if (this._allDatasetsEmpty()) { + this._hide(); + } else { + this.isOpen() && this._show(); + } + return s._onCleared.apply(this, [].slice.call(arguments, 0)); + }, + setLanguageDirection: function setLanguageDirection(dir) { + this.$node.css(dir === "ltr" ? this.css.ltr : this.css.rtl); + return s.setLanguageDirection.apply(this, [].slice.call(arguments, 0)); + }, + _hide: function hide() { + this.$node.hide(); + }, + _show: function show() { + this.$node.css("display", "block"); + } + }); + return DefaultMenu; + }(); + var Typeahead = function() { + "use strict"; + function Typeahead(o, www) { + var onFocused, onBlurred, onEnterKeyed, onTabKeyed, onEscKeyed, onUpKeyed, onDownKeyed, onLeftKeyed, onRightKeyed, onQueryChanged, onWhitespaceChanged; + o = o || {}; + if (!o.input) { + $.error("missing input"); + } + if (!o.menu) { + $.error("missing menu"); + } + if (!o.eventBus) { + $.error("missing event bus"); + } + www.mixin(this); + this.eventBus = o.eventBus; + this.minLength = _.isNumber(o.minLength) ? o.minLength : 1; + this.input = o.input; + this.menu = o.menu; + this.enabled = true; + this.autoselect = !!o.autoselect; + this.active = false; + this.input.hasFocus() && this.activate(); + this.dir = this.input.getLangDir(); + this._hacks(); + this.menu.bind().onSync("selectableClicked", this._onSelectableClicked, this).onSync("asyncRequested", this._onAsyncRequested, this).onSync("asyncCanceled", this._onAsyncCanceled, this).onSync("asyncReceived", this._onAsyncReceived, this).onSync("datasetRendered", this._onDatasetRendered, this).onSync("datasetCleared", this._onDatasetCleared, this); + onFocused = c(this, "activate", "open", "_onFocused"); + onBlurred = c(this, "deactivate", "_onBlurred"); + onEnterKeyed = c(this, "isActive", "isOpen", "_onEnterKeyed"); + onTabKeyed = c(this, "isActive", "isOpen", "_onTabKeyed"); + onEscKeyed = c(this, "isActive", "_onEscKeyed"); + onUpKeyed = c(this, "isActive", "open", "_onUpKeyed"); + onDownKeyed = c(this, "isActive", "open", "_onDownKeyed"); + onLeftKeyed = c(this, "isActive", "isOpen", "_onLeftKeyed"); + onRightKeyed = c(this, "isActive", "isOpen", "_onRightKeyed"); + onQueryChanged = c(this, "_openIfActive", "_onQueryChanged"); + onWhitespaceChanged = c(this, "_openIfActive", "_onWhitespaceChanged"); + this.input.bind().onSync("focused", onFocused, this).onSync("blurred", onBlurred, this).onSync("enterKeyed", onEnterKeyed, this).onSync("tabKeyed", onTabKeyed, this).onSync("escKeyed", onEscKeyed, this).onSync("upKeyed", onUpKeyed, this).onSync("downKeyed", onDownKeyed, this).onSync("leftKeyed", onLeftKeyed, this).onSync("rightKeyed", onRightKeyed, this).onSync("queryChanged", onQueryChanged, this).onSync("whitespaceChanged", onWhitespaceChanged, this).onSync("langDirChanged", this._onLangDirChanged, this); + } + _.mixin(Typeahead.prototype, { + _hacks: function hacks() { + var $input, $menu; + $input = this.input.$input || $("
"); + $menu = this.menu.$node || $("
"); + $input.on("blur.tt", function($e) { + var active, isActive, hasActive; + active = document.activeElement; + isActive = $menu.is(active); + hasActive = $menu.has(active).length > 0; + if (_.isMsie() && (isActive || hasActive)) { + $e.preventDefault(); + $e.stopImmediatePropagation(); + _.defer(function() { + $input.focus(); + }); + } + }); + $menu.on("mousedown.tt", function($e) { + $e.preventDefault(); + }); + }, + _onSelectableClicked: function onSelectableClicked(type, $el) { + this.select($el); + }, + _onDatasetCleared: function onDatasetCleared() { + this._updateHint(); + }, + _onDatasetRendered: function onDatasetRendered(type, suggestions, async, dataset) { + this._updateHint(); + if (this.autoselect) { + var cursorClass = this.selectors.cursor.substr(1); + this.menu.$node.find(this.selectors.suggestion).first().addClass(cursorClass); + } + this.eventBus.trigger("render", suggestions, async, dataset); + }, + _onAsyncRequested: function onAsyncRequested(type, dataset, query) { + this.eventBus.trigger("asyncrequest", query, dataset); + }, + _onAsyncCanceled: function onAsyncCanceled(type, dataset, query) { + this.eventBus.trigger("asynccancel", query, dataset); + }, + _onAsyncReceived: function onAsyncReceived(type, dataset, query) { + this.eventBus.trigger("asyncreceive", query, dataset); + }, + _onFocused: function onFocused() { + this._minLengthMet() && this.menu.update(this.input.getQuery()); + }, + _onBlurred: function onBlurred() { + if (this.input.hasQueryChangedSinceLastFocus()) { + this.eventBus.trigger("change", this.input.getQuery()); + } + }, + _onEnterKeyed: function onEnterKeyed(type, $e) { + var $selectable; + if ($selectable = this.menu.getActiveSelectable()) { + if (this.select($selectable)) { + $e.preventDefault(); + $e.stopPropagation(); + } + } else if (this.autoselect) { + if (this.select(this.menu.getTopSelectable())) { + $e.preventDefault(); + $e.stopPropagation(); + } + } + }, + _onTabKeyed: function onTabKeyed(type, $e) { + var $selectable; + if ($selectable = this.menu.getActiveSelectable()) { + this.select($selectable) && $e.preventDefault(); + } else if (this.autoselect) { + if ($selectable = this.menu.getTopSelectable()) { + this.autocomplete($selectable) && $e.preventDefault(); + } + } + }, + _onEscKeyed: function onEscKeyed() { + this.close(); + }, + _onUpKeyed: function onUpKeyed() { + this.moveCursor(-1); + }, + _onDownKeyed: function onDownKeyed() { + this.moveCursor(+1); + }, + _onLeftKeyed: function onLeftKeyed() { + if (this.dir === "rtl" && this.input.isCursorAtEnd()) { + this.autocomplete(this.menu.getActiveSelectable() || this.menu.getTopSelectable()); + } + }, + _onRightKeyed: function onRightKeyed() { + if (this.dir === "ltr" && this.input.isCursorAtEnd()) { + this.autocomplete(this.menu.getActiveSelectable() || this.menu.getTopSelectable()); + } + }, + _onQueryChanged: function onQueryChanged(e, query) { + this._minLengthMet(query) ? this.menu.update(query) : this.menu.empty(); + }, + _onWhitespaceChanged: function onWhitespaceChanged() { + this._updateHint(); + }, + _onLangDirChanged: function onLangDirChanged(e, dir) { + if (this.dir !== dir) { + this.dir = dir; + this.menu.setLanguageDirection(dir); + } + }, + _openIfActive: function openIfActive() { + this.isActive() && this.open(); + }, + _minLengthMet: function minLengthMet(query) { + query = _.isString(query) ? query : this.input.getQuery() || ""; + return query.length >= this.minLength; + }, + _updateHint: function updateHint() { + var $selectable, data, val, query, escapedQuery, frontMatchRegEx, match; + $selectable = this.menu.getTopSelectable(); + data = this.menu.getSelectableData($selectable); + val = this.input.getInputValue(); + if (data && !_.isBlankString(val) && !this.input.hasOverflow()) { + query = Input.normalizeQuery(val); + escapedQuery = _.escapeRegExChars(query); + frontMatchRegEx = new RegExp("^(?:" + escapedQuery + ")(.+$)", "i"); + match = frontMatchRegEx.exec(data.val); + match && this.input.setHint(val + match[1]); + } else { + this.input.clearHint(); + } + }, + isEnabled: function isEnabled() { + return this.enabled; + }, + enable: function enable() { + this.enabled = true; + }, + disable: function disable() { + this.enabled = false; + }, + isActive: function isActive() { + return this.active; + }, + activate: function activate() { + if (this.isActive()) { + return true; + } else if (!this.isEnabled() || this.eventBus.before("active")) { + return false; + } else { + this.active = true; + this.eventBus.trigger("active"); + return true; + } + }, + deactivate: function deactivate() { + if (!this.isActive()) { + return true; + } else if (this.eventBus.before("idle")) { + return false; + } else { + this.active = false; + this.close(); + this.eventBus.trigger("idle"); + return true; + } + }, + isOpen: function isOpen() { + return this.menu.isOpen(); + }, + open: function open() { + if (!this.isOpen() && !this.eventBus.before("open")) { + this.input.setAriaExpanded(true); + this.menu.open(); + this._updateHint(); + this.eventBus.trigger("open"); + } + return this.isOpen(); + }, + close: function close() { + if (this.isOpen() && !this.eventBus.before("close")) { + this.input.setAriaExpanded(false); + this.menu.close(); + this.input.clearHint(); + this.input.resetInputValue(); + this.eventBus.trigger("close"); + } + return !this.isOpen(); + }, + setVal: function setVal(val) { + this.input.setQuery(_.toStr(val)); + }, + getVal: function getVal() { + return this.input.getQuery(); + }, + select: function select($selectable) { + var data = this.menu.getSelectableData($selectable); + if (data && !this.eventBus.before("select", data.obj, data.dataset)) { + this.input.setQuery(data.val, true); + this.eventBus.trigger("select", data.obj, data.dataset); + this.close(); + return true; + } + return false; + }, + autocomplete: function autocomplete($selectable) { + var query, data, isValid; + query = this.input.getQuery(); + data = this.menu.getSelectableData($selectable); + isValid = data && query !== data.val; + if (isValid && !this.eventBus.before("autocomplete", data.obj, data.dataset)) { + this.input.setQuery(data.val); + this.eventBus.trigger("autocomplete", data.obj, data.dataset); + return true; + } + return false; + }, + moveCursor: function moveCursor(delta) { + var query, $candidate, data, suggestion, datasetName, cancelMove, id; + query = this.input.getQuery(); + $candidate = this.menu.selectableRelativeToCursor(delta); + data = this.menu.getSelectableData($candidate); + suggestion = data ? data.obj : null; + datasetName = data ? data.dataset : null; + id = $candidate ? $candidate.attr("id") : null; + this.input.trigger("cursorchange", id); + cancelMove = this._minLengthMet() && this.menu.update(query); + if (!cancelMove && !this.eventBus.before("cursorchange", suggestion, datasetName)) { + this.menu.setCursor($candidate); + if (data) { + if (typeof data.val === "string") { + this.input.setInputValue(data.val); + } + } else { + this.input.resetInputValue(); + this._updateHint(); + } + this.eventBus.trigger("cursorchange", suggestion, datasetName); + return true; + } + return false; + }, + destroy: function destroy() { + this.input.destroy(); + this.menu.destroy(); + } + }); + return Typeahead; + function c(ctx) { + var methods = [].slice.call(arguments, 1); + return function() { + var args = [].slice.call(arguments); + _.each(methods, function(method) { + return ctx[method].apply(ctx, args); + }); + }; + } + }(); + (function() { + "use strict"; + var old, keys, methods; + old = $.fn.typeahead; + keys = { + www: "tt-www", + attrs: "tt-attrs", + typeahead: "tt-typeahead" + }; + methods = { + initialize: function initialize(o, datasets) { + var www; + datasets = _.isArray(datasets) ? datasets : [].slice.call(arguments, 1); + o = o || {}; + www = WWW(o.classNames); + return this.each(attach); + function attach() { + var $input, $wrapper, $hint, $menu, defaultHint, defaultMenu, eventBus, input, menu, status, typeahead, MenuConstructor; + _.each(datasets, function(d) { + d.highlight = !!o.highlight; + }); + $input = $(this); + $wrapper = $(www.html.wrapper); + $hint = $elOrNull(o.hint); + $menu = $elOrNull(o.menu); + defaultHint = o.hint !== false && !$hint; + defaultMenu = o.menu !== false && !$menu; + defaultHint && ($hint = buildHintFromInput($input, www)); + defaultMenu && ($menu = $(www.html.menu).css(www.css.menu)); + $hint && $hint.val(""); + $input = prepInput($input, www); + if (defaultHint || defaultMenu) { + $wrapper.css(www.css.wrapper); + $input.css(defaultHint ? www.css.input : www.css.inputWithNoHint); + $input.wrap($wrapper).parent().prepend(defaultHint ? $hint : null).append(defaultMenu ? $menu : null); + } + MenuConstructor = defaultMenu ? DefaultMenu : Menu; + eventBus = new EventBus({ + el: $input + }); + input = new Input({ + hint: $hint, + input: $input, + menu: $menu + }, www); + menu = new MenuConstructor({ + node: $menu, + datasets: datasets + }, www); + status = new Status({ + $input: $input, + menu: menu + }); + typeahead = new Typeahead({ + input: input, + menu: menu, + eventBus: eventBus, + minLength: o.minLength, + autoselect: o.autoselect + }, www); + $input.data(keys.www, www); + $input.data(keys.typeahead, typeahead); + } + }, + isEnabled: function isEnabled() { + var enabled; + ttEach(this.first(), function(t) { + enabled = t.isEnabled(); + }); + return enabled; + }, + enable: function enable() { + ttEach(this, function(t) { + t.enable(); + }); + return this; + }, + disable: function disable() { + ttEach(this, function(t) { + t.disable(); + }); + return this; + }, + isActive: function isActive() { + var active; + ttEach(this.first(), function(t) { + active = t.isActive(); + }); + return active; + }, + activate: function activate() { + ttEach(this, function(t) { + t.activate(); + }); + return this; + }, + deactivate: function deactivate() { + ttEach(this, function(t) { + t.deactivate(); + }); + return this; + }, + isOpen: function isOpen() { + var open; + ttEach(this.first(), function(t) { + open = t.isOpen(); + }); + return open; + }, + open: function open() { + ttEach(this, function(t) { + t.open(); + }); + return this; + }, + close: function close() { + ttEach(this, function(t) { + t.close(); + }); + return this; + }, + select: function select(el) { + var success = false, $el = $(el); + ttEach(this.first(), function(t) { + success = t.select($el); + }); + return success; + }, + autocomplete: function autocomplete(el) { + var success = false, $el = $(el); + ttEach(this.first(), function(t) { + success = t.autocomplete($el); + }); + return success; + }, + moveCursor: function moveCursoe(delta) { + var success = false; + ttEach(this.first(), function(t) { + success = t.moveCursor(delta); + }); + return success; + }, + val: function val(newVal) { + var query; + if (!arguments.length) { + ttEach(this.first(), function(t) { + query = t.getVal(); + }); + return query; + } else { + ttEach(this, function(t) { + t.setVal(_.toStr(newVal)); + }); + return this; + } + }, + destroy: function destroy() { + ttEach(this, function(typeahead, $input) { + revert($input); + typeahead.destroy(); + }); + return this; + } + }; + $.fn.typeahead = function(method) { + if (methods[method]) { + return methods[method].apply(this, [].slice.call(arguments, 1)); + } else { + return methods.initialize.apply(this, arguments); + } + }; + $.fn.typeahead.noConflict = function noConflict() { + $.fn.typeahead = old; + return this; + }; + function ttEach($els, fn) { + $els.each(function() { + var $input = $(this), typeahead; + (typeahead = $input.data(keys.typeahead)) && fn(typeahead, $input); + }); + } + function buildHintFromInput($input, www) { + return $input.clone().addClass(www.classes.hint).removeData().css(www.css.hint).css(getBackgroundStyles($input)).prop({ + readonly: true, + required: false + }).removeAttr("id name placeholder").removeClass("required").attr({ + spellcheck: "false", + tabindex: -1 + }); + } + function prepInput($input, www) { + $input.data(keys.attrs, { + dir: $input.attr("dir"), + autocomplete: $input.attr("autocomplete"), + spellcheck: $input.attr("spellcheck"), + style: $input.attr("style") + }); + $input.addClass(www.classes.input).attr({ + spellcheck: false + }); + try { + !$input.attr("dir") && $input.attr("dir", "auto"); + } catch (e) {} + return $input; + } + function getBackgroundStyles($el) { + return { + backgroundAttachment: $el.css("background-attachment"), + backgroundClip: $el.css("background-clip"), + backgroundColor: $el.css("background-color"), + backgroundImage: $el.css("background-image"), + backgroundOrigin: $el.css("background-origin"), + backgroundPosition: $el.css("background-position"), + backgroundRepeat: $el.css("background-repeat"), + backgroundSize: $el.css("background-size") + }; + } + function revert($input) { + var www, $wrapper; + www = $input.data(keys.www); + $wrapper = $input.parent().filter(www.selectors.wrapper); + _.each($input.data(keys.attrs), function(val, key) { + _.isUndefined(val) ? $input.removeAttr(key) : $input.attr(key, val); + }); + $input.removeData(keys.typeahead).removeData(keys.www).removeData(keys.attr).removeClass(www.classes.input); + if ($wrapper.length) { + $input.detach().insertAfter($wrapper); + $wrapper.remove(); + } + } + function $elOrNull(obj) { + var isValid, $el; + isValid = _.isJQuery(obj) || _.isElement(obj); + $el = isValid ? $(obj).first() : []; + return $el.length ? $el : null; + } + })(); +}); \ No newline at end of file diff --git a/6.23.2/search.json b/6.23.2/search.json new file mode 100644 index 0000000000..0c9c6c854d --- /dev/null +++ b/6.23.2/search.json @@ -0,0 +1 @@ +{"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV19isPayPalRecommendedSbvp":{"name":"isPayPalRecommended","abstract":"\u003cp\u003eIf true, display the PayPal button with high priority.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV18isVenmoRecommendedSbvp":{"name":"isVenmoRecommended","abstract":"\u003cp\u003eIf true, dislpay the Venmo button with high priority.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/BTShopperInsightsResult.html#/s:24BraintreeShopperInsights09BTShopperC6ResultV25isEligibleInPayPalNetworkSbvp":{"name":"isEligibleInPayPalNetwork","abstract":"\u003cp\u003eIf true, buyer is a member of the PayPal Inc. (PayPal, Venmo, Honey) network.\u003c/p\u003e","parent_name":"BTShopperInsightsResult"},"Structs/Phone.html#/s:24BraintreeShopperInsights5PhoneV11countryCode14nationalNumberACSS_SStcfc":{"name":"init(countryCode:nationalNumber:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest.Phone\u003c/code\u003e.\u003c/p\u003e","parent_name":"Phone"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5email5phoneACSS_AA5PhoneVtcfc":{"name":"init(email:phone:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5emailACSS_tcfc":{"name":"init(email:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTShopperInsightsRequest.html#/s:24BraintreeShopperInsights09BTShopperC7RequestV5phoneAcA5PhoneV_tcfc":{"name":"init(phone:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTShopperInsightsRequest\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsRequest"},"Structs/BTPayPalMessagingRequest.html#/s:24BraintreePayPalMessaging05BTPaycD7RequestV6amount8pageType05offerI012buyerCountry04logoI013textAlignment5colorACSdSg_AA0ecd4PageI0OSgAA0ecd5OfferI0OSgSSSgAA0ecd4LogoI0OAA0ecd4TextO0OAA0ecD5ColorOtcfc":{"name":"init(amount:pageType:offerType:buyerCountry:logoType:textAlignment:color:)","abstract":"\u003cp\u003eInitialize a \u003ccode\u003eBTPayPalMessaging\u003c/code\u003e\u003c/p\u003e","parent_name":"BTPayPalMessagingRequest"},"Structs/BTPayPalMessagingRequest.html":{"name":"BTPayPalMessagingRequest","abstract":"\u003cp\u003eUsed to initialize a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e"},"Structs/BTShopperInsightsRequest.html":{"name":"BTShopperInsightsRequest","abstract":"\u003cp\u003eBuyer data required to use the Shopper Insights feature.\u003c/p\u003e"},"Structs/Phone.html":{"name":"Phone","abstract":"\u003cp\u003eBuyer\u0026rsquo;s phone number details for use with the Shopper Insights feature.\u003c/p\u003e"},"Structs/BTShopperInsightsResult.html":{"name":"BTShopperInsightsResult","abstract":"\u003cp\u003eA summary of the buyer\u0026rsquo;s recommended payment methods.\u003c/p\u003e"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9didSelectyyAA0ecD4ViewCF":{"name":"didSelect(_:)","abstract":"\u003cp\u003eFunction invoked when the message is tapped\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9willApplyyyAA0ecD4ViewCF":{"name":"willApply(_:)","abstract":"\u003cp\u003eFunction invoked when a user has begun the PayPal Credit application\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP10willAppearyyAA0ecD4ViewCF":{"name":"willAppear(_:)","abstract":"\u003cp\u003eFunction invoked when the message first starts to fetch data\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP9didAppearyyAA0ecD4ViewCF":{"name":"didAppear(_:)","abstract":"\u003cp\u003eFunction invoked when the message has rendered\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTPayPalMessagingDelegate.html#/s:24BraintreePayPalMessaging05BTPaycD8DelegateP7onError_5erroryAA0ecD4ViewC_s0H0_ptF":{"name":"onError(_:error:)","abstract":"\u003cp\u003eFunction invoked when the message encounters an error\u003c/p\u003e","parent_name":"BTPayPalMessagingDelegate"},"Protocols/BTThreeDSecureRequestDelegate.html#/c:@M@BraintreeThreeDSecure@objc(pl)BTThreeDSecureRequestDelegate(im)onLookupComplete:lookupResult:next:":{"name":"onLookupComplete(_:lookupResult:next:)","abstract":"\u003cp\u003eRequired delegate method which returns the ThreeDSecure lookup result before the flow continues.","parent_name":"BTThreeDSecureRequestDelegate"},"Protocols/BTLocalPaymentRequestDelegate.html#/c:@M@BraintreeLocalPayment@objc(pl)BTLocalPaymentRequestDelegate(im)localPaymentStarted:paymentID:start:":{"name":"localPaymentStarted(_:paymentID:start:)","abstract":"\u003cp\u003eRequired delegate method which returns the payment ID before the flow starts.\u003c/p\u003e","parent_name":"BTLocalPaymentRequestDelegate"},"Protocols/BTLocalPaymentRequestDelegate.html":{"name":"BTLocalPaymentRequestDelegate"},"Protocols/BTThreeDSecureRequestDelegate.html":{"name":"BTThreeDSecureRequestDelegate","abstract":"\u003cp\u003eProtocol for ThreeDSecure Request flow\u003c/p\u003e"},"Protocols/BTPayPalMessagingDelegate.html":{"name":"BTPayPalMessagingDelegate","abstract":"\u003cp\u003eProtocol for \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e events\u003c/p\u003e"},"Extensions/BTThreeDSecureV2Provider.html#/s:21BraintreeThreeDSecure07BTThreeC10V2ProviderC15cardinalSessionAD15stepUpValidated9serverJWTySo08CardinalH0CSg_So0N8ResponseCSgSSSgtF":{"name":"cardinalSession(cardinalSession:stepUpValidated:serverJWT:)","parent_name":"BTThreeDSecureV2Provider"},"Extensions.html#/c:objc(cs)UIApplication":{"name":"UIApplication"},"Extensions/BTThreeDSecureV2Provider.html":{"name":"BTThreeDSecureV2Provider"},"Enums/BTShopperInsightsError.html#/s:24BraintreeShopperInsights09BTShopperC5ErrorO17emptyBodyReturnedyA2CmF":{"name":"emptyBodyReturned","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:24BraintreeShopperInsights09BTShopperC5ErrorO20invalidAuthorizationyA2CmF":{"name":"invalidAuthorization","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTShopperInsightsError"},"Enums/BTShopperInsightsError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTShopperInsightsError"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO4leftyA2CmF":{"name":"left","abstract":"\u003cp\u003eText aligned to the left\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO6centeryA2CmF":{"name":"center","abstract":"\u003cp\u003eText aligned to the center\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingTextAlignment.html#/s:24BraintreePayPalMessaging05BTPaycD13TextAlignmentO5rightyA2CmF":{"name":"right","abstract":"\u003cp\u003eText aligned to the right\u003c/p\u003e","parent_name":"BTPayPalMessagingTextAlignment"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO4homeyA2CmF":{"name":"home","abstract":"\u003cp\u003eHome view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO14productDetailsyA2CmF":{"name":"productDetails","abstract":"\u003cp\u003eIndividual product details view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO4cartyA2CmF":{"name":"cart","abstract":"\u003cp\u003eShopping cart view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO8miniCartyA2CmF":{"name":"miniCart","abstract":"\u003cp\u003ePopover shopping cart view that covers part of the view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO8checkoutyA2CmF":{"name":"checkout","abstract":"\u003cp\u003eCheckout view\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingPageType.html#/s:24BraintreePayPalMessaging05BTPaycD8PageTypeO13searchResultsyA2CmF":{"name":"searchResults","abstract":"\u003cp\u003eSearch results\u003c/p\u003e","parent_name":"BTPayPalMessagingPageType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO17payLaterShortTermyA2CmF":{"name":"payLaterShortTerm","abstract":"\u003cp\u003ePay Later short term installment\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO16payLaterLongTermyA2CmF":{"name":"payLaterLongTerm","abstract":"\u003cp\u003ePay Later long term installments\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO08payLaterB5InOneyA2CmF":{"name":"payLaterPayInOne","abstract":"\u003cp\u003ePay Later deferred payment\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingOfferType.html#/s:24BraintreePayPalMessaging05BTPaycD9OfferTypeO03payC16CreditNoInterestyA2CmF":{"name":"payPalCreditNoInterest","abstract":"\u003cp\u003ePayPal Credit No Interest\u003c/p\u003e","parent_name":"BTPayPalMessagingOfferType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO6inlineyA2CmF":{"name":"inline","abstract":"\u003cp\u003ePayPal logo positioned inline within the message\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO7primaryyA2CmF":{"name":"primary","abstract":"\u003cp\u003ePrimary logo including both the PayPal monogram and logo\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO11alternativeyA2CmF":{"name":"alternative","abstract":"\u003cp\u003eAlternative logo including just the PayPal monogram\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingLogoType.html#/s:24BraintreePayPalMessaging05BTPaycD8LogoTypeO4noneyA2CmF":{"name":"none","abstract":"\u003cp\u003e\u0026ldquo;PayPal\u0026rdquo; as bold text inline with the message\u003c/p\u003e","parent_name":"BTPayPalMessagingLogoType"},"Enums/BTPayPalMessagingError.html#/s:24BraintreePayPalMessaging05BTPaycD5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:24BraintreePayPalMessaging05BTPaycD5ErrorO03payC16ClientIDNotFoundyA2CmF":{"name":"payPalClientIDNotFound","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalMessagingError"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO5blackyA2CmF":{"name":"black","abstract":"\u003cp\u003eBlack text with a color logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO5whiteyA2CmF":{"name":"white","abstract":"\u003cp\u003eWhite text with a white logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO10monochromeyA2CmF":{"name":"monochrome","abstract":"\u003cp\u003eBlack text with a black logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTPayPalMessagingColor.html#/s:24BraintreePayPalMessaging05BTPaycD5ColorO9grayscaleyA2CmF":{"name":"grayscale","abstract":"\u003cp\u003eBlack text with a desaturated logo\u003c/p\u003e","parent_name":"BTPayPalMessagingColor"},"Enums/BTVenmoPaymentMethodUsage.html#/c:@M@BraintreeVenmo@E@BTVenmoPaymentMethodUsage@BTVenmoPaymentMethodUsageMultiUse":{"name":"multiUse","abstract":"\u003cp\u003eThe Venmo payment will be authorized for future payments and can be vaulted.\u003c/p\u003e","parent_name":"BTVenmoPaymentMethodUsage"},"Enums/BTVenmoPaymentMethodUsage.html#/c:@M@BraintreeVenmo@E@BTVenmoPaymentMethodUsage@BTVenmoPaymentMethodUsageSingleUse":{"name":"singleUse","abstract":"\u003cp\u003eThe Venmo payment will be authorized for a one-time payment and cannot be vaulted.\u003c/p\u003e","parent_name":"BTVenmoPaymentMethodUsage"},"Enums/BTVenmoLineItemKind.html#/c:@M@BraintreeVenmo@E@BTVenmoLineItemKind@BTVenmoLineItemKindDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTVenmoLineItemKind"},"Enums/BTVenmoLineItemKind.html#/c:@M@BraintreeVenmo@E@BTVenmoLineItemKind@BTVenmoLineItemKindCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTVenmoLineItemKind"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO15appNotAvailableyA2CmF":{"name":"appNotAvailable","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO24bundleDisplayNameMissingyA2CmF":{"name":"bundleDisplayNameMissing","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO16invalidReturnURLyACSScACmF":{"name":"invalidReturnURL(_:)","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO19invalidBodyReturnedyA2CmF":{"name":"invalidBodyReturned","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO18invalidRedirectURLyACSScACmF":{"name":"invalidRedirectURL(_:)","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO28enrichedCustomerDataDisabledyA2CmF":{"name":"enrichedCustomerDataDisabled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:14BraintreeVenmo12BTVenmoErrorO27invalidRedirectURLParameteryA2CmF":{"name":"invalidRedirectURLParameter","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTVenmoError"},"Enums/BTVenmoError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTVenmoError"},"Enums/BTVenmoAppSwitchError.html#/s:14BraintreeVenmo21BTVenmoAppSwitchErrorO14returnURLErroryACSi_SSSgtcACmF":{"name":"returnURLError(_:_:)","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTVenmoAppSwitchError"},"Enums/BTVenmoAppSwitchError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTVenmoAppSwitchError"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeLogin":{"name":"login","abstract":"\u003cp\u003eLogin\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalRequestLandingPageType.html#/c:@M@BraintreePayPal@E@BTPayPalRequestLandingPageType@BTPayPalRequestLandingPageTypeBilling":{"name":"billing","abstract":"\u003cp\u003eBilling\u003c/p\u003e","parent_name":"BTPayPalRequestLandingPageType"},"Enums/BTPayPalPaymentType.html#/c:@M@BraintreePayPal@E@BTPayPalPaymentType@BTPayPalPaymentTypeCheckout":{"name":"checkout","abstract":"\u003cp\u003eCheckout\u003c/p\u003e","parent_name":"BTPayPalPaymentType"},"Enums/BTPayPalPaymentType.html#/c:@M@BraintreePayPal@E@BTPayPalPaymentType@BTPayPalPaymentTypeVault":{"name":"vault","abstract":"\u003cp\u003eVault\u003c/p\u003e","parent_name":"BTPayPalPaymentType"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNone":{"name":"none","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeDa_DK":{"name":"da_DK","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeDe_DE":{"name":"de_DE","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_AU":{"name":"en_AU","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_GB":{"name":"en_GB","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEn_US":{"name":"en_US","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEs_ES":{"name":"es_ES","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeEs_XC":{"name":"es_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_CA":{"name":"fr_CA","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_FR":{"name":"fr_FR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeFr_XC":{"name":"fr_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeId_ID":{"name":"id_ID","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeIt_IT":{"name":"it_IT","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeJa_JP":{"name":"ja_JP","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeKo_KR":{"name":"ko_KR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNl_NL":{"name":"nl_NL","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeNo_NO":{"name":"no_NO","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePl_PL":{"name":"pl_PL","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePt_BR":{"name":"pt_BR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodePt_PT":{"name":"pt_PT","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeRu_RU":{"name":"ru_RU","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeSv_SE":{"name":"sv_SE","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeTh_TH":{"name":"th_TH","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeTr_TR":{"name":"tr_TR","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_CN":{"name":"zh_CN","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_HK":{"name":"zh_HK","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_TW":{"name":"zh_TW","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLocaleCode.html#/c:@M@BraintreePayPal@E@BTPayPalLocaleCode@BTPayPalLocaleCodeZh_XC":{"name":"zh_XC","parent_name":"BTPayPalLocaleCode"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_A":{"name":"UPC_A","abstract":"\u003cp\u003eUpc Type A\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_B":{"name":"UPC_B","abstract":"\u003cp\u003eUpc Type B\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_C":{"name":"UPC_C","abstract":"\u003cp\u003eUpc Type C\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_D":{"name":"UPC_D","abstract":"\u003cp\u003eUpc Type D\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_E":{"name":"UPC_E","abstract":"\u003cp\u003eUpc Type E\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_2":{"name":"UPC_2","abstract":"\u003cp\u003eUpc Type 2\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemUPCType.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemUPCType@BTPayPalLineItemUPCTypeUPC_5":{"name":"UPC_5","abstract":"\u003cp\u003eUpc Type 5\u003c/p\u003e","parent_name":"BTPayPalLineItemUPCType"},"Enums/BTPayPalLineItemKind.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemKind@BTPayPalLineItemKindDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTPayPalLineItemKind"},"Enums/BTPayPalLineItemKind.html#/c:@M@BraintreePayPal@E@BTPayPalLineItemKind@BTPayPalLineItemKindCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTPayPalLineItemKind"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO015httpPostRequestE0yACSDySSypGcACmF":{"name":"httpPostRequestError(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO10invalidURLyACSScACmF":{"name":"invalidURL(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO36asWebAuthenticationSessionURLInvalidyACSScACmF":{"name":"asWebAuthenticationSessionURLInvalid(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO16invalidURLActionyA2CmF":{"name":"invalidURLAction","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO010webSessionE0yACs0E0_pcACmF":{"name":"webSessionError(_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO29appSwitchReturnURLPathInvalidyA2CmF":{"name":"appSwitchReturnURLPathInvalid","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO14missingBATokenyA2CmF":{"name":"missingBAToken","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:15BraintreePayPal05BTPayC5ErrorO07missingbC7RequestyA2CmF":{"name":"missingPayPalRequest","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalError"},"Enums/BTPayPalError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTPayPalError"},"Enums/BTPayPalRequestUserAction.html#/c:@M@BraintreePayPal@E@BTPayPalRequestUserAction@BTPayPalRequestUserActionNone":{"name":"none","abstract":"\u003cp\u003eDefault\u003c/p\u003e","parent_name":"BTPayPalRequestUserAction"},"Enums/BTPayPalRequestUserAction.html#/c:@M@BraintreePayPal@E@BTPayPalRequestUserAction@BTPayPalRequestUserActionPayNow":{"name":"payNow","abstract":"\u003cp\u003ePay Now\u003c/p\u003e","parent_name":"BTPayPalRequestUserAction"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentAuthorize":{"name":"authorize","abstract":"\u003cp\u003eAuthorize\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentSale":{"name":"sale","abstract":"\u003cp\u003eSale\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/c:@M@BraintreePayPal@E@BTPayPalRequestIntent@BTPayPalRequestIntentOrder":{"name":"order","abstract":"\u003cp\u003eOrder\u003c/p\u003e","parent_name":"BTPayPalRequestIntent"},"Enums/BTPayPalRequestIntent.html#/s:15BraintreePayPal05BTPayC13RequestIntentO11stringValueSSvp":{"name":"stringValue","parent_name":"BTPayPalRequestIntent"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO11integrationyA2CmF":{"name":"integration","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO20customerInputInvalidyACSDySSypGcACmF":{"name":"customerInputInvalid(_:)","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO17cardAlreadyExistsyACSDySSypGcACmF":{"name":"cardAlreadyExists(_:)","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:13BraintreeCard11BTCardErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTCardError"},"Enums/BTCardError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTCardError"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeVerify":{"name":"verify","abstract":"\u003cp\u003eVerify button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeContinue":{"name":"continue","abstract":"\u003cp\u003eContinue button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeNext":{"name":"next","abstract":"\u003cp\u003eNext button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeCancel":{"name":"cancel","abstract":"\u003cp\u003eCancel button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureV2ButtonType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureV2ButtonType@BTThreeDSecureV2ButtonTypeResend":{"name":"resend","abstract":"\u003cp\u003eResend button\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeNative":{"name":"native","abstract":"\u003cp\u003eNative\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeHtml":{"name":"html","abstract":"\u003cp\u003eHTML\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureUIType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureUIType@BTThreeDSecureUITypeBoth":{"name":"both","abstract":"\u003cp\u003eBoth\u003c/p\u003e","parent_name":"BTThreeDSecureUIType"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodSameDay":{"name":"sameDay","abstract":"\u003cp\u003eSame Day\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodExpedited":{"name":"expedited","abstract":"\u003cp\u003eExpedited\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodPriority":{"name":"priority","abstract":"\u003cp\u003ePriority\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodGround":{"name":"ground","abstract":"\u003cp\u003eGround\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodElectronicDelivery":{"name":"electronicDelivery","abstract":"\u003cp\u003eElectronic Delivery\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureShippingMethod.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureShippingMethod@BTThreeDSecureShippingMethodShipToStore":{"name":"shipToStore","abstract":"\u003cp\u003eShip to Store\u003c/p\u003e","parent_name":"BTThreeDSecureShippingMethod"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeLowValue":{"name":"lowValue","abstract":"\u003cp\u003eLow value\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeSecureCorporate":{"name":"secureCorporate","abstract":"\u003cp\u003eSecure corporate\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeTrustedBeneficiary":{"name":"trustedBeneficiary","abstract":"\u003cp\u003eTrusted beneficiary\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureRequestedExemptionType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureRequestedExemptionType@BTThreeDSecureRequestedExemptionTypeTransactionRiskAnalysis":{"name":"transactionRiskAnalysis","abstract":"\u003cp\u003eTransaction risk analysis\u003c/p\u003e","parent_name":"BTThreeDSecureRequestedExemptionType"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO12failedLookupyACSDySSypGcACmF":{"name":"failedLookup(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO20failedAuthenticationyACSScACmF":{"name":"failedAuthentication(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO13configurationyACSScACmF":{"name":"configuration(_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO14noBodyReturnedyA2CmF":{"name":"noBodyReturned","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO16invalidAPIClientyA2CmF":{"name":"invalidAPIClient","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:21BraintreeThreeDSecure07BTThreeC5ErrorO20exceededTimeoutLimityA2CmF":{"name":"exceededTimeoutLimit","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTThreeDSecureError"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeRequested":{"name":"requested","abstract":"\u003cp\u003eRequested\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureCardAddChallenge.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureCardAddChallenge@BTThreeDSecureCardAddChallengeNotRequested":{"name":"notRequested","abstract":"\u003cp\u003eNot Requested\u003c/p\u003e","parent_name":"BTThreeDSecureCardAddChallenge"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeUnspecified":{"name":"unspecified","abstract":"\u003cp\u003eUnspecified\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeCredit":{"name":"credit","abstract":"\u003cp\u003eCredit\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTThreeDSecureAccountType.html#/c:@M@BraintreeThreeDSecure@E@BTThreeDSecureAccountType@BTThreeDSecureAccountTypeDebit":{"name":"debit","abstract":"\u003cp\u003eDebit\u003c/p\u003e","parent_name":"BTThreeDSecureAccountType"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO8disabledyA2CmF":{"name":"disabled","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO15appSwitchFailedyA2CmF":{"name":"appSwitchFailed","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO11integrationyA2CmF":{"name":"integration","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO13noAccountDatayA2CmF":{"name":"noAccountData","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO8canceledyACSScACmF":{"name":"canceled(_:)","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO18missingRedirectURLyA2CmF":{"name":"missingRedirectURL","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO16missingReturnURLyA2CmF":{"name":"missingReturnURL","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO010webSessionE0yACs0E0_pcACmF":{"name":"webSessionError(_:)","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:21BraintreeLocalPayment07BTLocalC5ErrorO16errorDescriptionSSvp":{"name":"errorDescription","parent_name":"BTLocalPaymentError"},"Enums/BTLocalPaymentError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTLocalPaymentError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO11unsupportedyA2CmF":{"name":"unsupported","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO02nobC13CardsReturnedyA2CmF":{"name":"noApplePayCardsReturned","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:17BraintreeApplePay07BTAppleC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTApplePayError"},"Enums/BTApplePayError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTApplePayError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:22BraintreeDataCollector06BTDataC5ErrorO15encodingFailureyA2CmF":{"name":"encodingFailure","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTDataCollectorError"},"Enums/BTDataCollectorError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTDataCollectorError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO13noRewardsDatayA2CmF":{"name":"noRewardsData","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:24BraintreeAmericanExpress010BTAmericanC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAmericanExpressError"},"Enums/BTAmericanExpressError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAmericanExpressError"},"Enums/BTSEPADirectDebitMandateType.html#/c:@M@BraintreeSEPADirectDebit@E@BTSEPADirectDebitMandateType@BTSEPADirectDebitMandateTypeOneOff":{"name":"oneOff","parent_name":"BTSEPADirectDebitMandateType"},"Enums/BTSEPADirectDebitMandateType.html#/c:@M@BraintreeSEPADirectDebit@E@BTSEPADirectDebitMandateType@BTSEPADirectDebitMandateTypeRecurrent":{"name":"recurrent","parent_name":"BTSEPADirectDebitMandateType"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO15webFlowCanceledyA2CmF":{"name":"webFlowCanceled","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO16resultURLInvalidyA2CmF":{"name":"resultURLInvalid","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO17resultReturnedNilyA2CmF":{"name":"resultReturnedNil","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO18approvalURLInvalidyA2CmF":{"name":"approvalURLInvalid","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO23authenticationResultNilyA2CmF":{"name":"authenticationResultNil","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO14noBodyReturnedyA2CmF":{"name":"noBodyReturned","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO19failedToCreateNonceyA2CmF":{"name":"failedToCreateNonce","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTSEPADirectDebitError"},"Enums/BTSEPADirectDebitError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTSEPADirectDebitError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO14invalidRequestyA2CmF":{"name":"invalidRequest","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO24fetchConfigurationFailedyA2CmF":{"name":"fetchConfigurationFailed","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO03payC10NotEnabledyA2CmF":{"name":"payPalNotEnabled","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO03payC16ClientIDNotFoundyA2CmF":{"name":"payPalClientIDNotFound","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO18invalidEnvironmentyA2CmF":{"name":"invalidEnvironment","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO19orderCreationFailedyACs0G0_pcACmF":{"name":"orderCreationFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO8canceledyA2CmF":{"name":"canceled","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO17checkoutSDKFailedyAC0bcE00G4InfoCcACmF":{"name":"checkoutSDKFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO18tokenizationFailedyACs0G0_pcACmF":{"name":"tokenizationFailed(_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO31parsingTokenizationResultFailedyA2CmF":{"name":"parsingTokenizationResultFailed","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO19invalidJSONResponseyA2CmF":{"name":"invalidJSONResponse","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE5ErrorO16missingReturnURLyA2CmF":{"name":"missingReturnURL","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTPayPalNativeCheckoutError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTPayPalNativeCheckoutError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO24jsonSerializationFailureyA2CmF":{"name":"jsonSerializationFailure","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO12indexInvalidyACSicACmF":{"name":"indexInvalid(_:)","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:13BraintreeCore11BTJSONErrorO10keyInvalidyACSScACmF":{"name":"keyInvalid(_:)","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTJSONError"},"Enums/BTJSONError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTJSONError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO7unknownyA2CmF":{"name":"unknown","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO32responseContentTypeNotAcceptableyACSDySSypGcACmF":{"name":"responseContentTypeNotAcceptable(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11clientErroryACSDySSypGcACmF":{"name":"clientError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11serverErroryACSDySSypGcACmF":{"name":"serverError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO14missingBaseURLyACSDySSypGcACmF":{"name":"missingBaseURL(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO14rateLimitErroryACSDySSypGcACmF":{"name":"rateLimitError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO12dataNotFoundyA2CmF":{"name":"dataNotFound","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO19httpResponseInvalidyA2CmF":{"name":"httpResponseInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO16urlStringInvalidyA2CmF":{"name":"urlStringInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO19clientApiURLInvalidyA2CmF":{"name":"clientApiURLInvalid","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO31invalidAuthorizationFingerprintyA2CmF":{"name":"invalidAuthorizationFingerprint","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO18serializationErroryACSScACmF":{"name":"serializationError(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:13BraintreeCore11BTHTTPErrorO11deallocatedyACSScACmF":{"name":"deallocated(_:)","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"BTHTTPError"},"Enums/BTHTTPError.html#/s:SQ2eeoiySbx_xtFZ":{"name":"==(_:_:)","parent_name":"BTHTTPError"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUnknown":{"name":"unknown","abstract":"\u003cp\u003eUnknown card\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkAMEX":{"name":"AMEX","abstract":"\u003cp\u003eAmerican Express\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkDinersClub":{"name":"dinersClub","abstract":"\u003cp\u003eDiners Club\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkDiscover":{"name":"discover","abstract":"\u003cp\u003eDiscover\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkMasterCard":{"name":"masterCard","abstract":"\u003cp\u003eMastercard\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkVisa":{"name":"visa","abstract":"\u003cp\u003eVisa\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkJCB":{"name":"JCB","abstract":"\u003cp\u003eJCB\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkLaser":{"name":"laser","abstract":"\u003cp\u003eLaser\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkMaestro":{"name":"maestro","abstract":"\u003cp\u003eMaestro\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUnionPay":{"name":"unionPay","abstract":"\u003cp\u003eUnion Pay\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkHiper":{"name":"hiper","abstract":"\u003cp\u003eHiper\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkHipercard":{"name":"hipercard","abstract":"\u003cp\u003eHipercard\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkSolo":{"name":"solo","abstract":"\u003cp\u003eSolo\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkSwitch":{"name":"switch","abstract":"\u003cp\u003eSwitch\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTCardNetwork.html#/c:@M@BraintreeCore@E@BTCardNetwork@BTCardNetworkUkMaestro":{"name":"ukMaestro","abstract":"\u003cp\u003eUK Maestro\u003c/p\u003e","parent_name":"BTCardNetwork"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO24configurationUnavailableyA2CmF":{"name":"configurationUnavailable","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO13notAuthorizedyA2CmF":{"name":"notAuthorized","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO11deallocatedyA2CmF":{"name":"deallocated","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:13BraintreeCore16BTAPIClientErrorO20failedBase64EncodingyA2CmF":{"name":"failedBase64Encoding","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAPIClientError"},"Enums/BTAPIClientError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAPIClientError"},"Enums/TokenizationKeyError.html#/s:13BraintreeCore20TokenizationKeyErrorO7invalidyA2CmF":{"name":"invalid","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"TokenizationKeyError"},"Enums/TokenizationKeyError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"TokenizationKeyError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO31invalidAuthorizationFingerprintyA2CmF":{"name":"invalidAuthorizationFingerprint","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO16invalidConfigURLyA2CmF":{"name":"invalidConfigURL","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO13invalidFormatyACSScACmF":{"name":"invalidFormat(_:)","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO18unsupportedVersionyA2CmF":{"name":"unsupportedVersion","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:13BraintreeCore18BTClientTokenErrorO14failedDecodingyACSScACmF":{"name":"failedDecoding(_:)","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTClientTokenError"},"Enums/BTClientTokenError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTClientTokenError"},"Enums/BTAnalyticsServiceError.html#/s:13BraintreeCore23BTAnalyticsServiceErrorO16invalidAPIClientyA2CmF":{"name":"invalidAPIClient","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation13CustomNSErrorP11errorDomainSSvpZ":{"name":"errorDomain","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation13CustomNSErrorP9errorCodeSivp":{"name":"errorCode","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html#/s:10Foundation14LocalizedErrorP16errorDescriptionSSSgvp":{"name":"errorDescription","parent_name":"BTAnalyticsServiceError"},"Enums/BTAnalyticsServiceError.html":{"name":"BTAnalyticsServiceError","abstract":"\u003cp\u003eError codes associated with a API Client.\u003c/p\u003e"},"Enums/BTClientTokenError.html":{"name":"BTClientTokenError","abstract":"\u003cp\u003eError codes associated with a client token.\u003c/p\u003e"},"Enums/TokenizationKeyError.html":{"name":"TokenizationKeyError","abstract":"\u003cp\u003eError codes associated with a Tokenization Key.\u003c/p\u003e"},"Enums/BTAPIClientError.html":{"name":"BTAPIClientError","abstract":"\u003cp\u003eError codes associated with a API Client.\u003c/p\u003e"},"Enums/BTCardNetwork.html":{"name":"BTCardNetwork","abstract":"\u003cp\u003eCard type\u003c/p\u003e"},"Enums/BTHTTPError.html":{"name":"BTHTTPError","abstract":"\u003cp\u003eError codes associated with BTHTTP\u003c/p\u003e"},"Enums/BTJSONError.html":{"name":"BTJSONError"},"Enums/BTPayPalNativeCheckoutError.html":{"name":"BTPayPalNativeCheckoutError","abstract":"\u003cp\u003eError returned from the native PayPal flow\u003c/p\u003e"},"Enums/BTSEPADirectDebitError.html":{"name":"BTSEPADirectDebitError","abstract":"\u003cp\u003eError details associated with SEPA Direct Debit.\u003c/p\u003e"},"Enums/BTSEPADirectDebitMandateType.html":{"name":"BTSEPADirectDebitMandateType","abstract":"\u003cp\u003eMandate type for the SEPA Direct Debit request.\u003c/p\u003e"},"Enums/BTAmericanExpressError.html":{"name":"BTAmericanExpressError","abstract":"\u003cp\u003eError details associated with American Express.\u003c/p\u003e"},"Enums/BTDataCollectorError.html":{"name":"BTDataCollectorError","abstract":"\u003cp\u003eError details associated with Braintree Data Collector.\u003c/p\u003e"},"Enums/BTApplePayError.html":{"name":"BTApplePayError","abstract":"\u003cp\u003eError codes associated with Apple Pay.\u003c/p\u003e"},"Enums/BTLocalPaymentError.html":{"name":"BTLocalPaymentError","abstract":"\u003cp\u003eError codes associated with Payment Flow\u003c/p\u003e"},"Enums/BTThreeDSecureAccountType.html":{"name":"BTThreeDSecureAccountType","abstract":"\u003cp\u003eThe account type\u003c/p\u003e"},"Enums/BTThreeDSecureCardAddChallenge.html":{"name":"BTThreeDSecureCardAddChallenge","abstract":"\u003cp\u003eThe card add challenge request\u003c/p\u003e"},"Enums/BTThreeDSecureError.html":{"name":"BTThreeDSecureError"},"Enums/BTThreeDSecureRequestedExemptionType.html":{"name":"BTThreeDSecureRequestedExemptionType","abstract":"\u003cp\u003e3D Secure requested exemption type\u003c/p\u003e"},"Enums/BTThreeDSecureShippingMethod.html":{"name":"BTThreeDSecureShippingMethod","abstract":"\u003cp\u003eThe shipping method\u003c/p\u003e"},"Enums/BTThreeDSecureUIType.html":{"name":"BTThreeDSecureUIType","abstract":"\u003cp\u003eThe interface types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e"},"Enums/BTThreeDSecureV2ButtonType.html":{"name":"BTThreeDSecureV2ButtonType","abstract":"\u003cp\u003eButton types that can be customized in 3D Secure 2 flows.\u003c/p\u003e"},"Enums/BTCardError.html":{"name":"BTCardError"},"Enums/BTPayPalRequestIntent.html":{"name":"BTPayPalRequestIntent","abstract":"\u003cp\u003ePayment intent.\u003c/p\u003e"},"Enums/BTPayPalRequestUserAction.html":{"name":"BTPayPalRequestUserAction","abstract":"\u003cp\u003eThe call-to-action in the PayPal Checkout flow.\u003c/p\u003e"},"Enums/BTPayPalError.html":{"name":"BTPayPalError","abstract":"\u003cp\u003eError codes associated with PayPal.\u003c/p\u003e"},"Enums/BTPayPalLineItemKind.html":{"name":"BTPayPalLineItemKind","abstract":"\u003cp\u003eUse this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e"},"Enums/BTPayPalLineItemUPCType.html":{"name":"BTPayPalLineItemUPCType","abstract":"\u003cp\u003eUse this option to specify the UPC type of the line item.\u003c/p\u003e"},"Enums/BTPayPalLocaleCode.html":{"name":"BTPayPalLocaleCode","abstract":"\u003cp\u003eA locale code to use for a transaction.\u003c/p\u003e"},"Enums/BTPayPalPaymentType.html":{"name":"BTPayPalPaymentType"},"Enums/BTPayPalRequestLandingPageType.html":{"name":"BTPayPalRequestLandingPageType","abstract":"\u003cp\u003eUse this option to specify the PayPal page to display when a user lands on the PayPal site to complete the payment.\u003c/p\u003e"},"Enums/BTVenmoAppSwitchError.html":{"name":"BTVenmoAppSwitchError","abstract":"\u003cp\u003eError codes associated with Venmo App Switch\u003c/p\u003e"},"Enums/BTVenmoError.html":{"name":"BTVenmoError","abstract":"\u003cp\u003eError codes associated with Venmo\u003c/p\u003e"},"Enums/BTVenmoLineItemKind.html":{"name":"BTVenmoLineItemKind","abstract":"\u003cp\u003eUse this option to specify whether a line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e"},"Enums/BTVenmoPaymentMethodUsage.html":{"name":"BTVenmoPaymentMethodUsage","abstract":"\u003cp\u003eUsage type for the tokenized Venmo account\u003c/p\u003e"},"Enums/BTPayPalMessagingColor.html":{"name":"BTPayPalMessagingColor","abstract":"\u003cp\u003eText and logo color option for a PayPal Message\u003c/p\u003e"},"Enums/BTPayPalMessagingError.html":{"name":"BTPayPalMessagingError","abstract":"\u003cp\u003eError details associated with PayPal Messaging.\u003c/p\u003e"},"Enums/BTPayPalMessagingLogoType.html":{"name":"BTPayPalMessagingLogoType","abstract":"\u003cp\u003eLogo type option for a PayPal Message\u003c/p\u003e"},"Enums/BTPayPalMessagingOfferType.html":{"name":"BTPayPalMessagingOfferType","abstract":"\u003cp\u003ePreferred message offer to display\u003c/p\u003e"},"Enums/BTPayPalMessagingPageType.html":{"name":"BTPayPalMessagingPageType","abstract":"\u003cp\u003eMessage location within an application\u003c/p\u003e"},"Enums/BTPayPalMessagingTextAlignment.html":{"name":"BTPayPalMessagingTextAlignment","abstract":"\u003cp\u003eText alignment option for a PayPal Message\u003c/p\u003e"},"Enums/BTShopperInsightsError.html":{"name":"BTShopperInsightsError"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC03apiE0AC0A4Core11BTAPIClientC_tcfc":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a \u003ccode\u003eBTShopperInsightsClient\u003c/code\u003e\u003c/p\u003e","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC28getRecommendedPaymentMethods7requestAA0dC6ResultVAA0dC7RequestV_tYaKF":{"name":"getRecommendedPaymentMethods(request:)","abstract":"\u003cp\u003eThis method confirms if the customer is a user of PayPal services using their email and phone number.\u003c/p\u003e","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC24sendPayPalPresentedEventyyF":{"name":"sendPayPalPresentedEvent()","abstract":"\u003cp\u003eCall this method when the PayPal button has been successfully displayed to the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC23sendPayPalSelectedEventyyF":{"name":"sendPayPalSelectedEvent()","abstract":"\u003cp\u003eCall this method when the PayPal button has been selected/tapped by the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC23sendVenmoPresentedEventyyF":{"name":"sendVenmoPresentedEvent()","abstract":"\u003cp\u003eCall this method when the Venmo button has been successfully displayed to the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTShopperInsightsClient.html#/s:24BraintreeShopperInsights09BTShopperC6ClientC22sendVenmoSelectedEventyyF":{"name":"sendVenmoSelectedEvent()","abstract":"\u003cp\u003eCall this method when the Venmo button has been selected/tapped by the buyer.","parent_name":"BTShopperInsightsClient"},"Classes/BTPayPalMessagingView/Representable.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC13RepresentableV9apiClient7request8delegateAE0A4Core11BTAPIClientC_AA0ecD7RequestVAA0ecD8Delegate_pSgtcfc":{"name":"init(apiClient:request:delegate:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPayPalMessagingView.html\"\u003eBTPayPalMessagingView\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"Representable"},"Classes/BTPayPalMessagingView/Representable.html#/s:7SwiftUI19UIViewRepresentableP04makeC07context0C4TypeQzAA0cD7ContextVyxG_tF":{"name":"makeUIView(context:)","parent_name":"Representable"},"Classes/BTPayPalMessagingView/Representable.html#/s:7SwiftUI19UIViewRepresentableP06updateC0_7contexty0C4TypeQz_AA0cD7ContextVyxGtF":{"name":"updateUIView(_:context:)","parent_name":"Representable"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC8delegateAA0ecD8Delegate_pSgvp":{"name":"delegate","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC9apiClientAC0A4Core11BTAPIClientC_tcfc":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003eBTPayPalMessagingView\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:24BraintreePayPalMessaging05BTPaycD4ViewC5startyyAA0ecD7RequestVF":{"name":"start(_:)","abstract":"\u003cp\u003eCreates a view to be displayed to promote offers such as Pay Later and PayPal Credit to customers.\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView/Representable.html":{"name":"Representable","abstract":"\u003cp\u003ePayPal Messaging for SwiftUI\u003c/p\u003e","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewEventDelegateP7onClickyyAA0abdE0CF":{"name":"onClick(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewEventDelegateP7onApplyyyAA0abdE0CF":{"name":"onApply(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP9onLoadingyyAA0abdE0CF":{"name":"onLoading(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP9onSuccessyyAA0abdE0CF":{"name":"onSuccess(_:)","parent_name":"BTPayPalMessagingView"},"Classes/BTPayPalMessagingView.html#/s:14PayPalMessages0aB24MessageViewStateDelegateP7onError_5erroryAA0abdE0C_AA0abdI0OtF":{"name":"onError(_:error:)","parent_name":"BTPayPalMessagingView"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)profileID":{"name":"profileID","abstract":"\u003cp\u003eOptional. The Venmo profile ID to be used during payment authorization. Customers will see the business name and logo associated with this Venmo profile, and it may show up in the","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)vault":{"name":"vault","abstract":"\u003cp\u003eWhether to automatically vault the Venmo account on the client. For client-side vaulting, you must initialize BTAPIClient with a client token that was created with a customer ID.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)paymentMethodUsage":{"name":"paymentMethodUsage","abstract":"\u003cp\u003eIf set to \u003ccode\u003e.multiUse\u003c/code\u003e, the Venmo payment will be authorized for future payments and can be vaulted.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional. The business name that will be displayed in the Venmo app payment approval screen. Only used by merchants onboarded as PayFast channel partners.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)collectCustomerBillingAddress":{"name":"collectCustomerBillingAddress","abstract":"\u003cp\u003eWhether the customer\u0026rsquo;s billing address should be collected and displayed on the Venmo paysheet.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)collectCustomerShippingAddress":{"name":"collectCustomerShippingAddress","abstract":"\u003cp\u003eWhether the customer\u0026rsquo;s shipping address should be collected and displayed on the Venmo paysheet.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)isFinalAmount":{"name":"isFinalAmount","abstract":"\u003cp\u003eIndicates whether the purchase amount is the final amount.","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)subTotalAmount":{"name":"subTotalAmount","abstract":"\u003cp\u003eOptional. The subtotal amount of the transaction to be displayed on the paysheet. Excludes taxes, discounts, and shipping amounts.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)discountAmount":{"name":"discountAmount","abstract":"\u003cp\u003eOptional. The total discount amount applied on the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)taxAmount":{"name":"taxAmount","abstract":"\u003cp\u003eOptional. The total tax amount for the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)shippingAmount":{"name":"shippingAmount","abstract":"\u003cp\u003eOptional. The shipping amount for the transaction to be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)totalAmount":{"name":"totalAmount","abstract":"\u003cp\u003eOptional. The grand total amount on the transaction that should be displayed on the paysheet.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)lineItems":{"name":"lineItems","abstract":"\u003cp\u003eOptional. The line items for this transaction. It can include up to 249 line items.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(py)fallbackToWeb":{"name":"fallbackToWeb","abstract":"\u003cp\u003eOptional. Used to determine if the customer should fallback to the web flow if Venmo app is not installed.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoRequest.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoRequest(im)initWithPaymentMethodUsage:":{"name":"init(paymentMethodUsage:)","abstract":"\u003cp\u003eInitialize a Venmo request with a payment method usage.\u003c/p\u003e","parent_name":"BTVenmoRequest"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)quantity":{"name":"quantity","abstract":"\u003cp\u003eNumber of units of the item purchased. This value must be a whole number and can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)unitAmount":{"name":"unitAmount","abstract":"\u003cp\u003ePer-unit price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)name":{"name":"name","abstract":"\u003cp\u003eItem name. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)kind":{"name":"kind","abstract":"\u003cp\u003eIndicates whether the line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)unitTaxAmount":{"name":"unitTaxAmount","abstract":"\u003cp\u003eOptional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)itemDescription":{"name":"itemDescription","abstract":"\u003cp\u003eOptional: Item description. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional: Product or UPC code for the item. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(py)url":{"name":"url","abstract":"\u003cp\u003eOptional: The URL to product information.\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoLineItem.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoLineItem(im)initWithQuantity:unitAmount:name:kind:":{"name":"init(quantity:unitAmount:name:kind:)","abstract":"\u003cp\u003eInitialize a BTVenmoLineItem\u003c/p\u003e","parent_name":"BTVenmoLineItem"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an Apple Pay client\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)tokenizeWithVenmoRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eInitiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/s:14BraintreeVenmo13BTVenmoClientC8tokenizeyAA0C12AccountNonceCAA0C7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eInitiates Venmo login via app switch, which returns a BTVenmoAccountNonce when successful.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)isVenmoAppInstalled":{"name":"isVenmoAppInstalled()","abstract":"\u003cp\u003eReturns true if the proper Venmo app is installed and configured correctly, returns false otherwise.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoClient.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoClient(im)openVenmoAppPageInAppStore":{"name":"openVenmoAppPageInAppStore()","abstract":"\u003cp\u003eSwitches to the App Store to download the Venmo application.\u003c/p\u003e","parent_name":"BTVenmoClient"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003eThe email associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)externalID":{"name":"externalID","abstract":"\u003cp\u003eThe external ID associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003eThe first name associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003eThe last name associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)phoneNumber":{"name":"phoneNumber","abstract":"\u003cp\u003eThe phone number associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)username":{"name":"username","abstract":"\u003cp\u003eThe username associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe primary billing address associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTVenmoAccountNonce.html#/c:@M@BraintreeVenmo@objc(cs)BTVenmoAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe primary shipping address associated with the Venmo account\u003c/p\u003e","parent_name":"BTVenmoAccountNonce"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(py)userAuthenticationEmail":{"name":"userAuthenticationEmail","abstract":"\u003cp\u003eOptional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)initWithUserAuthenticationEmail:enablePayPalAppSwitch:offerCredit:":{"name":"init(userAuthenticationEmail:enablePayPalAppSwitch:offerCredit:)","abstract":"\u003cp\u003eInitializes a PayPal Vault request for the PayPal App Switch flow\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)initWithOfferCredit:userAuthenticationEmail:":{"name":"init(offerCredit:userAuthenticationEmail:)","abstract":"\u003cp\u003eInitializes a PayPal Vault request\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)parametersWith:universalLink:":{"name":"parameters(with:universalLink:)","parent_name":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultBaseRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultBaseRequest(py)offerCredit":{"name":"offerCredit","abstract":"\u003cp\u003eOptional: Offers PayPal Credit if the customer qualifies. Defaults to \u003ccode\u003efalse\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalVaultBaseRequest"},"Classes/BTPayPalVaultBaseRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultBaseRequest(im)initWithOfferCredit:":{"name":"init(offerCredit:)","abstract":"\u003cp\u003eInitializes a PayPal Native Vault request\u003c/p\u003e","parent_name":"BTPayPalVaultBaseRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)isShippingAddressRequired":{"name":"isShippingAddressRequired","abstract":"\u003cp\u003eDefaults to false. When set to true, the shipping address selector will be displayed.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)isShippingAddressEditable":{"name":"isShippingAddressEditable","abstract":"\u003cp\u003eDefaults to false. Set to true to enable user editing of the shipping address.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)localeCode":{"name":"localeCode","abstract":"\u003cp\u003eOptional: A locale code to use for the transaction.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)shippingAddressOverride":{"name":"shippingAddressOverride","abstract":"\u003cp\u003eOptional: A valid shipping address to be displayed in the transaction flow. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)landingPageType":{"name":"landingPageType","abstract":"\u003cp\u003eOptional: Landing page type. Defaults to \u003ccode\u003e.none\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional: The merchant name displayed inside of the PayPal flow; defaults to the company name on your Braintree account\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: A non-default merchant account to use for tokenization.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)lineItems":{"name":"lineItems","abstract":"\u003cp\u003eOptional: The line items for this transaction. It can include up to 249 line items.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)billingAgreementDescription":{"name":"billingAgreementDescription","abstract":"\u003cp\u003eOptional: Display a custom description to the user for a billing agreement. For Checkout with Vault flows, you must also set","parent_name":"BTPayPalRequest"},"Classes/BTPayPalRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalRequest(py)riskCorrelationID":{"name":"riskCorrelationID","abstract":"\u003cp\u003eOptional: A risk correlation ID created with Set Transaction Context on your server.\u003c/p\u003e","parent_name":"BTPayPalRequest"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)quantity":{"name":"quantity","abstract":"\u003cp\u003eNumber of units of the item purchased. This value must be a whole number and can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)unitAmount":{"name":"unitAmount","abstract":"\u003cp\u003ePer-unit price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)name":{"name":"name","abstract":"\u003cp\u003eItem name. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)kind":{"name":"kind","abstract":"\u003cp\u003eIndicates whether the line item is a debit (sale) or credit (refund) to the customer.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)unitTaxAmount":{"name":"unitTaxAmount","abstract":"\u003cp\u003eOptional: Per-unit tax price of the item. Can include up to 2 decimal places. This value can\u0026rsquo;t be negative or zero.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)itemDescription":{"name":"itemDescription","abstract":"\u003cp\u003eOptional: Item description. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)url":{"name":"url","abstract":"\u003cp\u003eOptional: The URL to product information.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional: Product or UPC code for the item. Maximum 127 characters.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)imageURL":{"name":"imageURL","abstract":"\u003cp\u003eOptional: The URL to product image information.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)upcCode":{"name":"upcCode","abstract":"\u003cp\u003eOptional: UPC code for the item.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(py)upcType":{"name":"upcType","abstract":"\u003cp\u003eOptional: UPC type for the item.\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalLineItem.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalLineItem(im)initWithQuantity:unitAmount:name:kind:":{"name":"init(quantity:unitAmount:name:kind:)","abstract":"\u003cp\u003eInitialize a PayPayLineItem\u003c/p\u003e","parent_name":"BTPayPalLineItem"},"Classes/BTPayPalCreditFinancingAmount.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancingAmount(py)currency":{"name":"currency","abstract":"\u003cp\u003e3 letter currency code as defined by \u003ca href=\"http://www.iso.org/iso/home/standards/currency_codes.htm\"\u003eISO 4217\u003c/a\u003e.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancingAmount"},"Classes/BTPayPalCreditFinancingAmount.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancingAmount(py)value":{"name":"value","abstract":"\u003cp\u003eAn amount defined by \u003ca href=\"http://www.iso.org/iso/home/standards/currency_codes.htm\"\u003eISO 4217\u003c/a\u003e for the given currency.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancingAmount"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)cardAmountImmutable":{"name":"cardAmountImmutable","abstract":"\u003cp\u003eIndicates whether the card amount is editable after payer\u0026rsquo;s acceptance on PayPal side.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)monthlyPayment":{"name":"monthlyPayment","abstract":"\u003cp\u003eEstimated amount per month that the customer will need to pay including fees and interest.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)payerAcceptance":{"name":"payerAcceptance","abstract":"\u003cp\u003eStatus of whether the customer ultimately was approved for and chose to make the payment using the approved installment credit.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)term":{"name":"term","abstract":"\u003cp\u003eLength of financing terms in months.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)totalCost":{"name":"totalCost","abstract":"\u003cp\u003eEstimated total payment amount including interest and fees the user will pay during the lifetime of the loan.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalCreditFinancing.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCreditFinancing(py)totalInterest":{"name":"totalInterest","abstract":"\u003cp\u003eEstimated interest or fees amount the payer will have to pay during the lifetime of the loan.\u003c/p\u003e","parent_name":"BTPayPalCreditFinancing"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new PayPal client instance.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)initWithAPIClient:universalLink:":{"name":"init(apiClient:universalLink:)","abstract":"\u003cp\u003eInitialize a new PayPal client instance for the PayPal App Switch flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)tokenizeWithVaultRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Vault flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/s:15BraintreePayPal05BTPayC6ClientC8tokenizeyAA0dC12AccountNonceCAA0dC12VaultRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Vault flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalClient(im)tokenizeWithCheckoutRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalClient.html#/s:15BraintreePayPal05BTPayC6ClientC8tokenizeyAA0dC12AccountNonceCAA0dC15CheckoutRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Checkout or Pay Later flow.\u003c/p\u003e","parent_name":"BTPayPalClient"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eUsed for a one-time payment.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)intent":{"name":"intent","abstract":"\u003cp\u003eOptional: Payment intent. Defaults to \u003ccode\u003e.authorize\u003c/code\u003e. Only applies to PayPal Checkout.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)userAction":{"name":"userAction","abstract":"\u003cp\u003eOptional: Changes the call-to-action in the PayPal Checkout flow. Defaults to \u003ccode\u003e.none\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)offerPayLater":{"name":"offerPayLater","abstract":"\u003cp\u003eOptional: Offers PayPal Pay Later if the customer qualifies. Defaults to \u003ccode\u003efalse\u003c/code\u003e. Only available with PayPal Checkout.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)currencyCode":{"name":"currencyCode","abstract":"\u003cp\u003eOptional: A three-character ISO-4217 ISO currency code to use for the transaction. Defaults to merchant currency code if not set.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)requestBillingAgreement":{"name":"requestBillingAgreement","abstract":"\u003cp\u003eOptional: If set to \u003ccode\u003etrue\u003c/code\u003e, this enables the Checkout with Vault flow, where the customer will be prompted to consent to a billing agreement during checkout. Defaults to \u003ccode\u003efalse\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(py)userAuthenticationEmail":{"name":"userAuthenticationEmail","abstract":"\u003cp\u003eOptional: User email to initiate a quicker authentication flow in cases where the user has a PayPal Account with the same email.\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalCheckoutRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalCheckoutRequest(im)initWithAmount:intent:userAction:offerPayLater:currencyCode:requestBillingAgreement:":{"name":"init(amount:intent:userAction:offerPayLater:currencyCode:requestBillingAgreement:)","abstract":"\u003cp\u003eInitializes a PayPal Native Checkout request\u003c/p\u003e","parent_name":"BTPayPalCheckoutRequest"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient metadata id associated with this transaction.\u003c/p\u003e","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)payerID":{"name":"payerID","abstract":"\u003cp\u003eOptional. Payer id associated with this transaction.","parent_name":"BTPayPalAccountNonce"},"Classes/BTPayPalAccountNonce.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalAccountNonce(py)creditFinancing":{"name":"creditFinancing","abstract":"\u003cp\u003eOptional. Credit financing details if the customer pays with PayPal Credit.","parent_name":"BTPayPalAccountNonce"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)acsTransactionID":{"name":"acsTransactionID","abstract":"\u003cp\u003eUnique transaction identifier assigned by the Access Control Server (ACS) to identify a single transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)authenticationTransactionStatus":{"name":"authenticationTransactionStatus","abstract":"\u003cp\u003eOn authentication, the transaction status result identifier.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)authenticationTransactionStatusReason":{"name":"authenticationTransactionStatusReason","abstract":"\u003cp\u003eOn authentication, provides additional information as to why the transaction status has the specific value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)cavv":{"name":"cavv","abstract":"\u003cp\u003eCardholder authentication verification value or \u0026ldquo;CAVV\u0026rdquo; is the main encrypted message issuers and card networks use to verify authentication has occured.","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)dsTransactionID":{"name":"dsTransactionID","abstract":"\u003cp\u003eDirectory Server Transaction ID is an ID used by the card brand\u0026rsquo;s 3DS directory server.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)eciFlag":{"name":"eciFlag","abstract":"\u003cp\u003eThe ecommerce indicator flag indicates the outcome of the 3DS authentication.","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)enrolled":{"name":"enrolled","abstract":"\u003cp\u003eIndicates whether a card is enrolled in a 3D Secure program or not. Possible values:\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)liabilityShifted":{"name":"liabilityShifted","abstract":"\u003cp\u003eIf the 3D Secure liability shift has occurred.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)liabilityShiftPossible":{"name":"liabilityShiftPossible","abstract":"\u003cp\u003eIf the 3D Secure liability shift is possible.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)lookupTransactionStatus":{"name":"lookupTransactionStatus","abstract":"\u003cp\u003eOn lookup, the transaction status result identifier.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)lookupTransactionStatusReason":{"name":"lookupTransactionStatusReason","abstract":"\u003cp\u003eOn lookup, provides additional information as to why the transaction status has the specific value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)paresStatus":{"name":"paresStatus","abstract":"\u003cp\u003eThe Payer Authentication Response (PARes) Status, a transaction status result identifier. Possible Values:\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)status":{"name":"status","abstract":"\u003cp\u003eThe 3D Secure status value.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureAuthenticationID":{"name":"threeDSecureAuthenticationID","abstract":"\u003cp\u003eUnique identifier assigned to the 3D Secure authentication performed for this transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureServerTransactionID":{"name":"threeDSecureServerTransactionID","abstract":"\u003cp\u003eUnique transaction identifier assigned by the 3DS Server to identify a single transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)threeDSecureVersion":{"name":"threeDSecureVersion","abstract":"\u003cp\u003eThe 3DS version used in the authentication, example \u0026ldquo;1.0.2\u0026rdquo; or \u0026ldquo;2.1.0\u0026rdquo;.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)wasVerified":{"name":"wasVerified","abstract":"\u003cp\u003eIndicates if the 3D Secure lookup was performed.\u003c/p\u003e","parent_name":"BTThreeDSecureInfo"},"Classes/BTThreeDSecureInfo.html#/c:@M@BraintreeCard@objc(cs)BTThreeDSecureInfo(py)xid":{"name":"xid","abstract":"\u003cp\u003eTransaction identifier resulting from 3D Secure authentication. Uniquely identifies the transaction and sometimes required in the authorization message.","parent_name":"BTThreeDSecureInfo"},"Classes/BTCardRequest.html#/c:@M@BraintreeCard@objc(cs)BTCardRequest(py)card":{"name":"card","abstract":"\u003cp\u003eThe \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html\"\u003eBTCard\u003c/a\u003e\u003c/code\u003e associated with this instance.\u003c/p\u003e","parent_name":"BTCardRequest"},"Classes/BTCardRequest.html#/c:@M@BraintreeCard@objc(cs)BTCardRequest(im)initWithCard:":{"name":"init(card:)","abstract":"\u003cp\u003eInitialize a Card request with a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html\"\u003eBTCard\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTCardRequest"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)cardNetwork":{"name":"cardNetwork","abstract":"\u003cp\u003eThe card network.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)expirationMonth":{"name":"expirationMonth","abstract":"\u003cp\u003eThe expiration month of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)expirationYear":{"name":"expirationYear","abstract":"\u003cp\u003eThe expiration year of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)cardholderName":{"name":"cardholderName","abstract":"\u003cp\u003eThe name of the cardholder, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)lastTwo":{"name":"lastTwo","abstract":"\u003cp\u003eThe last two digits of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)lastFour":{"name":"lastFour","abstract":"\u003cp\u003eThe last four digits of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)bin":{"name":"bin","abstract":"\u003cp\u003eThe BIN number of the card, if available.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)binData":{"name":"binData","abstract":"\u003cp\u003eThe BIN data for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)threeDSecureInfo":{"name":"threeDSecureInfo","abstract":"\u003cp\u003eThe 3D Secure info for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTCardNonce"},"Classes/BTCardNonce.html#/c:@M@BraintreeCard@objc(cs)BTCardNonce(py)authenticationInsight":{"name":"authenticationInsight","abstract":"\u003cp\u003eDetails about the regulatory environment and applicable customer authentication regulation for a potential transaction.","parent_name":"BTCardNonce"},"Classes/BTCardClient.html#/c:@M@BraintreeCard@objc(cs)BTCardClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a card client\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCardClient.html#/c:@M@BraintreeCard@objc(cs)BTCardClient(im)tokenizeCard:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenizes a card\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCardClient.html#/s:13BraintreeCard12BTCardClientC8tokenizeyAA0C5NonceCAA0C0CYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenizes a card\u003c/p\u003e","parent_name":"BTCardClient"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)number":{"name":"number","abstract":"\u003cp\u003eThe card number\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)expirationMonth":{"name":"expirationMonth","abstract":"\u003cp\u003eThe expiration month as a one or two-digit number on the Gregorian calendar\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)expirationYear":{"name":"expirationYear","abstract":"\u003cp\u003eThe expiration year as a two or four-digit number on the Gregorian calendar\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)cvv":{"name":"cvv","abstract":"\u003cp\u003eThe card verification code (like CVV or CID).\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eThe postal code associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)cardholderName":{"name":"cardholderName","abstract":"\u003cp\u003eOptional: the cardholder\u0026rsquo;s name.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)firstName":{"name":"firstName","abstract":"\u003cp\u003eOptional: first name on the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)lastName":{"name":"lastName","abstract":"\u003cp\u003eOptional: last name on the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)company":{"name":"company","abstract":"\u003cp\u003eOptional: company name associated with the card.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eOptional: the street address associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional: the extended address associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)locality":{"name":"locality","abstract":"\u003cp\u003eOptional: the city associated with the card\u0026rsquo;s billing address\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)region":{"name":"region","abstract":"\u003cp\u003eOptional: either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryName":{"name":"countryName","abstract":"\u003cp\u003eOptional: the country name associated with the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003eOptional: the ISO 3166-1 alpha-2 country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeAlpha3":{"name":"countryCodeAlpha3","abstract":"\u003cp\u003eOptional: the ISO 3166-1 alpha-3 country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)countryCodeNumeric":{"name":"countryCodeNumeric","abstract":"\u003cp\u003eOptional: The ISO 3166-1 numeric country code specified in the card\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)shouldValidate":{"name":"shouldValidate","abstract":"\u003cp\u003eControls whether or not to return validations and/or verification results. By default, this is not enabled.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)authenticationInsightRequested":{"name":"authenticationInsightRequested","abstract":"\u003cp\u003eOptional: If authentication insight is requested. If this property is set to true, a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)merchantAccountID\"\u003emerchantAccountID\u003c/a\u003e\u003c/code\u003e must be provided. Defaults to false.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTCard.html#/c:@M@BraintreeCard@objc(cs)BTCard(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: The merchant account ID.\u003c/p\u003e","parent_name":"BTCard"},"Classes/BTAuthenticationInsight.html#/c:@M@BraintreeCard@objc(cs)BTAuthenticationInsight(py)regulationEnvironment":{"name":"regulationEnvironment","abstract":"\u003cp\u003eThe regulation environment for the associated nonce to help determine the need for 3D Secure.","parent_name":"BTAuthenticationInsight"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)toolbarCustomization":{"name":"toolbarCustomization","abstract":"\u003cp\u003eToolbar customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)labelCustomization":{"name":"labelCustomization","abstract":"\u003cp\u003eLabel customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(py)textBoxCustomization":{"name":"textBoxCustomization","abstract":"\u003cp\u003eText box customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2UICustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2UICustomization(im)setButtonCustomization:buttonType:":{"name":"setButton(_:buttonType:)","abstract":"\u003cp\u003eSet button customization options for 3D Secure 2 flows.\u003c/p\u003e","parent_name":"BTThreeDSecureV2UICustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)backgroundColor":{"name":"backgroundColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)headerText":{"name":"headerText","abstract":"\u003cp\u003eText for the header.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(py)buttonText":{"name":"buttonText","abstract":"\u003cp\u003eText for the button. For example, “Cancel”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2ToolbarCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ToolbarCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2ToolbarCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)borderWidth":{"name":"borderWidth","abstract":"\u003cp\u003eWidth (integer value) of the text box border.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)borderColor":{"name":"borderColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(py)cornerRadius":{"name":"cornerRadius","abstract":"\u003cp\u003eRadius (integer value) for the text box corners.\u003c/p\u003e","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2TextBoxCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2TextBoxCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2TextBoxCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextColor":{"name":"headingTextColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextFontName":{"name":"headingTextFontName","abstract":"\u003cp\u003eFont type for the heading label text.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(py)headingTextFontSize":{"name":"headingTextFontSize","abstract":"\u003cp\u003eFont size for the heading label text.\u003c/p\u003e","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2LabelCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2LabelCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2LabelCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(py)backgroundColor":{"name":"backgroundColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(py)cornerRadius":{"name":"cornerRadius","abstract":"\u003cp\u003eRadius (integer value) for the button corners.\u003c/p\u003e","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2ButtonCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2ButtonCustomization(im)init":{"name":"init()","parent_name":"BTThreeDSecureV2ButtonCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textFontName":{"name":"textFontName","abstract":"\u003cp\u003eFont type for the UI element.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textColor":{"name":"textColor","abstract":"\u003cp\u003eColor code in Hex format. For example, the color code can be “#999999”.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureV2BaseCustomization.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureV2BaseCustomization(py)textFontSize":{"name":"textFontSize","abstract":"\u003cp\u003eFont size for the UI element.\u003c/p\u003e","parent_name":"BTThreeDSecureV2BaseCustomization"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)tokenizedCard":{"name":"tokenizedCard","abstract":"\u003cp\u003eThe \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTCardNonce.html\"\u003eBTCardNonce\u003c/a\u003e\u003c/code\u003e resulting from the 3D Secure flow\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)lookup":{"name":"lookup","abstract":"\u003cp\u003eThe result of a 3D Secure lookup. Contains liability shift and challenge information.\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureResult.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureResult(py)errorMessage":{"name":"errorMessage","abstract":"\u003cp\u003eThe error message when the 3D Secure flow is unsuccessful\u003c/p\u003e","parent_name":"BTThreeDSecureResult"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eA nonce to be verified by ThreeDSecure\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)customFields":{"name":"customFields","abstract":"\u003cp\u003eObject where each key is the name of a custom field which has been configured in the Control Panel. In the Control Panel you can configure 3D Secure Rules which trigger on certain values.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eThe amount for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)accountType":{"name":"accountType","abstract":"\u003cp\u003eOptional. The account type selected by the cardholder\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eOptional. The billing address used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)mobilePhoneNumber":{"name":"mobilePhoneNumber","abstract":"\u003cp\u003eOptional. The mobile phone number used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)email":{"name":"email","abstract":"\u003cp\u003eOptional. The email used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)shippingMethod":{"name":"shippingMethod","abstract":"\u003cp\u003eOptional. The shipping method chosen for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)additionalInformation":{"name":"additionalInformation","abstract":"\u003cp\u003eOptional. The additional information used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)challengeRequested":{"name":"challengeRequested","abstract":"\u003cp\u003eOptional. If set to true, an authentication challenge will be forced if possible.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)exemptionRequested":{"name":"exemptionRequested","abstract":"\u003cp\u003eOptional. If set to true, an exemption to the authentication challenge will be requested.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)requestedExemptionType":{"name":"requestedExemptionType","abstract":"\u003cp\u003eOptional. The exemption type to be requested. If an exemption is requested and the exemption\u0026rsquo;s conditions are satisfied, then it will be applied.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)dataOnlyRequested":{"name":"dataOnlyRequested","abstract":"\u003cp\u003eOptional. Indicates whether to use the data only flow. In this flow, frictionless 3DS is ensured for Mastercard cardholders as the card scheme provides a risk score","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)cardAddChallenge":{"name":"cardAddChallenge","abstract":"\u003cp\u003eOptional. An authentication created using this property should only be used for adding a payment method to the merchant\u0026rsquo;s vault and not for creating transactions.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)cardAddChallengeRequested":{"name":"cardAddChallengeRequested","abstract":"\u003cp\u003eOptional. An authentication created using this flag should only be used for vaulting operations (creation of customers\u0026rsquo; credit cards or payment methods) and not for creating transactions.","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)v2UICustomization":{"name":"v2UICustomization","abstract":"\u003cp\u003eOptional. UI Customization for 3DS2 challenge views.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)uiType":{"name":"uiType","abstract":"\u003cp\u003eOptional. Sets all UI types that the device supports for displaying specific challenge user interfaces in the 3D Secure challenge.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)renderTypes":{"name":"renderTypes","abstract":"\u003cp\u003eOptional. List of all the render types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRequest.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRequest(py)threeDSecureRequestDelegate":{"name":"threeDSecureRequestDelegate","abstract":"\u003cp\u003eA delegate for receiving information about the ThreeDSecure payment flow.\u003c/p\u003e","parent_name":"BTThreeDSecureRequest"},"Classes/BTThreeDSecureRenderType.html#/s:SY8rawValue03RawB0Qzvp":{"name":"rawValue","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/s:s9OptionSetP8rawValuex03RawD0Qz_tcfc":{"name":"init(rawValue:)","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)otp":{"name":"otp","abstract":"\u003cp\u003eOTP\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)html":{"name":"html","abstract":"\u003cp\u003eHTML\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)singleSelect":{"name":"singleSelect","abstract":"\u003cp\u003eSingle select\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)multiSelect":{"name":"multiSelect","abstract":"\u003cp\u003eMulti Select\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecureRenderType.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureRenderType(cpy)oob":{"name":"oob","abstract":"\u003cp\u003eOOB\u003c/p\u003e","parent_name":"BTThreeDSecureRenderType"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)givenName":{"name":"givenName","abstract":"\u003cp\u003eOptional. Given name associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)surname":{"name":"surname","abstract":"\u003cp\u003eOptional. Surname associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eOptional. Line 1 of the Address (eg. number, street, etc)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional. Line 2 of the Address (eg. suite, apt #, etc.)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)line3":{"name":"line3","abstract":"\u003cp\u003eOptional. Line 3 of the Address (eg. suite, apt #, etc.)\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)locality":{"name":"locality","abstract":"\u003cp\u003eOptional. City name\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)region":{"name":"region","abstract":"\u003cp\u003eOptional. Either a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eOptional. Zip code or equivalent is usually required for countries that have them.","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003eOptional. 2 letter country code\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecurePostalAddress.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecurePostalAddress(py)phoneNumber":{"name":"phoneNumber","abstract":"\u003cp\u003eOptional. The phone number associated with the address\u003c/p\u003e","parent_name":"BTThreeDSecurePostalAddress"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)paReq":{"name":"paReq","abstract":"\u003cp\u003eThe \u0026ldquo;PAReq\u0026rdquo; or \u0026ldquo;Payment Authentication Request\u0026rdquo; is the encoded request message used to initiate authentication.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)md":{"name":"md","abstract":"\u003cp\u003eThe unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)acsURL":{"name":"acsURL","abstract":"\u003cp\u003eThe URL which the customer will be redirected to for a 3DS Interface.","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)termURL":{"name":"termURL","abstract":"\u003cp\u003eThe termURL is the fully qualified URL that the customer will be redirected to once the authentication completes.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)threeDSecureVersion":{"name":"threeDSecureVersion","abstract":"\u003cp\u003eThe full version string of the 3DS lookup result.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)isThreeDSecureVersion2":{"name":"isThreeDSecureVersion2","abstract":"\u003cp\u003eIndicates a 3DS 2 lookup result.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)transactionID":{"name":"transactionID","abstract":"\u003cp\u003eThis a secondary unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureLookup.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureLookup(py)requiresUserAuthentication":{"name":"requiresUserAuthentication","abstract":"\u003cp\u003eIndicates that a 3DS challenge is required.\u003c/p\u003e","parent_name":"BTThreeDSecureLookup"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new BTThreeDSecureClient instance.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)startPaymentFlow:completion:":{"name":"startPaymentFlow(_:completion:)","abstract":"\u003cp\u003eStarts the 3DS flow using a BTThreeDSecureRequest.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)prepareLookup:completion:":{"name":"prepareLookup(_:completion:)","abstract":"\u003cp\u003eCreates a stringified JSON object containing the information necessary to perform a lookup.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)prepareLookup:completionHandler:":{"name":"prepareLookup(_:)","abstract":"\u003cp\u003eCreates a stringified JSON object containing the information necessary to perform a lookup.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initializeChallengeWithLookupResponse:request:completion:":{"name":"initializeChallenge(lookupResponse:request:completion:)","abstract":"\u003cp\u003eInitialize a challenge from a server side lookup call.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureClient.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureClient(im)initializeChallengeWithLookupResponse:request:completionHandler:":{"name":"initializeChallenge(lookupResponse:request:)","abstract":"\u003cp\u003eInitialize a challenge from a server side lookup call.\u003c/p\u003e","parent_name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eOptional. The shipping address used for verification\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingMethodIndicator":{"name":"shippingMethodIndicator","abstract":"\u003cp\u003eOptional. The 2-digit string indicating the shipping method chosen for the transaction\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)productCode":{"name":"productCode","abstract":"\u003cp\u003eOptional. The 3-letter string representing the merchant product code\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)deliveryTimeframe":{"name":"deliveryTimeframe","abstract":"\u003cp\u003eOptional. The 2-digit number indicating the delivery timeframe\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)deliveryEmail":{"name":"deliveryEmail","abstract":"\u003cp\u003eOptional. For electronic delivery, email address to which the merchandise was delivered\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)reorderIndicator":{"name":"reorderIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating whether the cardholder is reordering previously purchased merchandise\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)preorderIndicator":{"name":"preorderIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating whether the cardholder is placing an order with a future availability or release date\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)preorderDate":{"name":"preorderDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating expected date that a pre-ordered purchase will be available\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardAmount":{"name":"giftCardAmount","abstract":"\u003cp\u003eOptional. The purchase amount total for prepaid gift cards in major units\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardCurrencyCode":{"name":"giftCardCurrencyCode","abstract":"\u003cp\u003eOptional. ISO 4217 currency code for the gift card purchased\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)giftCardCount":{"name":"giftCardCount","abstract":"\u003cp\u003eOptional. Total count of individual prepaid gift cards purchased\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountAgeIndicator":{"name":"accountAgeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountCreateDate":{"name":"accountCreateDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder\u0026rsquo;s account was last changed.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountChangeIndicator":{"name":"accountChangeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the last change to the cardholder account. This includes shipping address, new payment account or new user added.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountChangeDate":{"name":"accountChangeDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder\u0026rsquo;s account was last changed.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPwdChangeIndicator":{"name":"accountPwdChangeIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value representing the length of time since the cardholder changed or reset the password on the account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPwdChangeDate":{"name":"accountPwdChangeDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the cardholder last changed or reset password on account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddressUsageIndicator":{"name":"shippingAddressUsageIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating when the shipping address used for transaction was first used.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingAddressUsageDate":{"name":"shippingAddressUsageDate","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date when the shipping address used for this transaction was first used.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)transactionCountDay":{"name":"transactionCountDay","abstract":"\u003cp\u003eOptional. Number of transactions (successful or abandoned) for this cardholder account within the last 24 hours.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)transactionCountYear":{"name":"transactionCountYear","abstract":"\u003cp\u003eOptional. Number of transactions (successful or abandoned) for this cardholder account within the last year.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)addCardAttempts":{"name":"addCardAttempts","abstract":"\u003cp\u003eOptional. Number of add card attempts in the last 24 hours.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountPurchases":{"name":"accountPurchases","abstract":"\u003cp\u003eOptional. Number of purchases with this cardholder account during the previous six months.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)fraudActivity":{"name":"fraudActivity","abstract":"\u003cp\u003eOptional. The 2-digit value indicating whether the merchant experienced suspicious activity (including previous fraud) on the account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)shippingNameIndicator":{"name":"shippingNameIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating if the cardholder name on the account is identical to the shipping name used for the transaction.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)paymentAccountIndicator":{"name":"paymentAccountIndicator","abstract":"\u003cp\u003eOptional. The 2-digit value indicating the length of time that the payment account was enrolled in the merchant account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)paymentAccountAge":{"name":"paymentAccountAge","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date the payment account was added to the cardholder account.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)addressMatch":{"name":"addressMatch","abstract":"\u003cp\u003eOptional. The 1-character value (Y/N) indicating whether cardholder billing and shipping addresses match.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)accountID":{"name":"accountID","abstract":"\u003cp\u003eOptional. Additional cardholder account information.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)ipAddress":{"name":"ipAddress","abstract":"\u003cp\u003eOptional. The IP address of the consumer. IPv4 and IPv6 are supported.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)orderDescription":{"name":"orderDescription","abstract":"\u003cp\u003eOptional. Brief description of items purchased.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)taxAmount":{"name":"taxAmount","abstract":"\u003cp\u003eOptional. Unformatted tax amount without any decimalization (ie. $123.67 = 12367).\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)userAgent":{"name":"userAgent","abstract":"\u003cp\u003eOptional. The exact content of the HTTP user agent header.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)authenticationIndicator":{"name":"authenticationIndicator","abstract":"\u003cp\u003eOptional. The 2-digit number indicating the type of authentication request.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)installment":{"name":"installment","abstract":"\u003cp\u003eOptional. An integer value greater than 1 indicating the maximum number of permitted authorizations for installment payments.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)purchaseDate":{"name":"purchaseDate","abstract":"\u003cp\u003eOptional. The 14-digit number (format: YYYYMMDDHHMMSS) indicating the date in UTC of original purchase.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)recurringEnd":{"name":"recurringEnd","abstract":"\u003cp\u003eOptional. The 8-digit number (format: YYYYMMDD) indicating the date after which no further recurring authorizations should be performed.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)recurringFrequency":{"name":"recurringFrequency","abstract":"\u003cp\u003eOptional. Integer value indicating the minimum number of days between recurring authorizations.","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)sdkMaxTimeout":{"name":"sdkMaxTimeout","abstract":"\u003cp\u003eOptional. The 2-digit number of minutes (minimum 05) to set the maximum amount of time for all 3DS 2.0 messages to be communicated between all components.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTThreeDSecureAdditionalInformation.html#/c:@M@BraintreeThreeDSecure@objc(cs)BTThreeDSecureAdditionalInformation(py)workPhoneNumber":{"name":"workPhoneNumber","abstract":"\u003cp\u003eOptional. The work phone number used for verification. Only numbers; remove dashes, parenthesis and other characters.\u003c/p\u003e","parent_name":"BTThreeDSecureAdditionalInformation"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient Metadata ID associated with this transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eThe one-time use payment method nonce.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)payerID":{"name":"payerID","abstract":"\u003cp\u003ePayer ID associated with this transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentResult.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentResult(py)type":{"name":"type","abstract":"\u003cp\u003eThe type of the tokenized payment.\u003c/p\u003e","parent_name":"BTLocalPaymentResult"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)paymentType":{"name":"paymentType","abstract":"\u003cp\u003eThe type of payment.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)paymentTypeCountryCode":{"name":"paymentTypeCountryCode","abstract":"\u003cp\u003eThe country code of the local payment.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional: The address of the customer. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)address":{"name":"address","abstract":"\u003cp\u003eOptional: The address of the customer. An error will occur if this address is not valid.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)amount":{"name":"amount","abstract":"\u003cp\u003eThe amount for the transaction.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)currencyCode":{"name":"currencyCode","abstract":"\u003cp\u003eOptional: A valid ISO currency code to use for the transaction. Defaults to merchant currency code if not set.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)displayName":{"name":"displayName","abstract":"\u003cp\u003eOptional: The merchant name displayed inside of the local payment flow.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)email":{"name":"email","abstract":"\u003cp\u003eOptional: Payer email of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)givenName":{"name":"givenName","abstract":"\u003cp\u003eOptional: Given (first) name of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)surname":{"name":"surname","abstract":"\u003cp\u003eOptional: Surname (last name) of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)phone":{"name":"phone","abstract":"\u003cp\u003eOptional: Phone number of the customer.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)isShippingAddressRequired":{"name":"isShippingAddressRequired","abstract":"\u003cp\u003eIndicates whether or not the payment needs to be shipped. For digital goods, this should be false. Defaults to false.\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)bic":{"name":"bic","abstract":"\u003cp\u003eOptional: Bank Identification Code of the customer (specific to iDEAL transactions).\u003c/p\u003e","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentRequest.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentRequest(py)localPaymentFlowDelegate":{"name":"localPaymentFlowDelegate","parent_name":"BTLocalPaymentRequest"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitialize a new \u003ccode\u003eBTLocalPaymentClient\u003c/code\u003e instance.\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)startPaymentFlow:completion:":{"name":"startPaymentFlow(_:completion:)","abstract":"\u003cp\u003eStarts a payment flow using a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTLocalPaymentRequest.html\"\u003eBTLocalPaymentRequest\u003c/a\u003e\u003c/code\u003e\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentClient.html#/c:@M@BraintreeLocalPayment@objc(cs)BTLocalPaymentClient(im)startPaymentFlow:completionHandler:":{"name":"startPaymentFlow(_:)","abstract":"\u003cp\u003eStarts a payment flow using a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTLocalPaymentRequest.html\"\u003eBTLocalPaymentRequest\u003c/a\u003e\u003c/code\u003e\u003c/p\u003e","parent_name":"BTLocalPaymentClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an Apple Pay client\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)makePaymentRequest:":{"name":"makePaymentRequest(completion:)","abstract":"\u003cp\u003eCreates a \u003ccode\u003ePKPaymentRequest\u003c/code\u003e with values from your Braintree Apple Pay configuration.","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/s:17BraintreeApplePay07BTAppleC6ClientC18makePaymentRequestSo09PKPaymentH0CyYaKF":{"name":"makePaymentRequest()","abstract":"\u003cp\u003eCreates a \u003ccode\u003ePKPaymentRequest\u003c/code\u003e with values from your Braintree Apple Pay configuration.","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayClient(im)tokenizeApplePayPayment:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenizes an Apple Pay payment.\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayClient.html#/s:17BraintreeApplePay07BTAppleC6ClientC8tokenizeyAA0dC9CardNonceCSo9PKPaymentCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenizes an Apple Pay payment.\u003c/p\u003e","parent_name":"BTApplePayClient"},"Classes/BTApplePayCardNonce.html#/c:@M@BraintreeApplePay@objc(cs)BTApplePayCardNonce(py)binData":{"name":"binData","abstract":"\u003cp\u003eThe BIN data for the card number associated with this nonce.\u003c/p\u003e","parent_name":"BTApplePayCardNonce"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a \u003ccode\u003eBTDataCollector\u003c/code\u003e instance with a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTAPIClient.html\"\u003eBTAPIClient\u003c/a\u003e\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)clientMetadataID:":{"name":"clientMetadataID(_:)","abstract":"\u003cp\u003eReturns a client metadata ID.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/c:@M@BraintreeDataCollector@objc(cs)BTDataCollector(im)collectDeviceData:":{"name":"collectDeviceData(_:)","abstract":"\u003cp\u003eCollects device data based on your merchant configuration.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTDataCollector.html#/s:22BraintreeDataCollector06BTDataC0C013collectDeviceB0SSyYaKF":{"name":"collectDeviceData()","abstract":"\u003cp\u003eCollects device data based on your merchant configuration.\u003c/p\u003e","parent_name":"BTDataCollector"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)errorCode":{"name":"errorCode","abstract":"\u003cp\u003eOptional. An error code when there was an issue fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)errorMessage":{"name":"errorMessage","abstract":"\u003cp\u003eOptional. An error message when there was an issue fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)conversionRate":{"name":"conversionRate","abstract":"\u003cp\u003eOptional. The conversion rate associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)currencyAmount":{"name":"currencyAmount","abstract":"\u003cp\u003eOptional. The currency amount associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)currencyIsoCode":{"name":"currencyIsoCode","abstract":"\u003cp\u003eOptional. The currency ISO code associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)requestID":{"name":"requestID","abstract":"\u003cp\u003eOptional. The request ID used when fetching the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)rewardsAmount":{"name":"rewardsAmount","abstract":"\u003cp\u003eOptional. The rewards amount associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressRewardsBalance.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressRewardsBalance(py)rewardsUnit":{"name":"rewardsUnit","abstract":"\u003cp\u003eOptional. The rewards unit associated with the rewards balance\u003c/p\u003e","parent_name":"BTAmericanExpressRewardsBalance"},"Classes/BTAmericanExpressClient.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates an American Express client.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTAmericanExpressClient.html#/c:@M@BraintreeAmericanExpress@objc(cs)BTAmericanExpressClient(im)getRewardsBalanceForNonce:currencyIsoCode:completion:":{"name":"getRewardsBalance(forNonce:currencyISOCode:completion:)","abstract":"\u003cp\u003eGets the rewards balance associated with a Braintree nonce. Only for American Express cards.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTAmericanExpressClient.html#/s:24BraintreeAmericanExpress010BTAmericanC6ClientC17getRewardsBalance8forNonce15currencyISOCodeAA0dcgH0CSS_SStYaKF":{"name":"getRewardsBalance(forNonce:currencyISOCode:)","abstract":"\u003cp\u003eGets the rewards balance associated with a Braintree nonce. Only for American Express cards.\u003c/p\u003e","parent_name":"BTAmericanExpressClient"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)accountHolderName":{"name":"accountHolderName","abstract":"\u003cp\u003eRequired. The account holder name.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)iban":{"name":"iban","abstract":"\u003cp\u003eRequired. The full IBAN.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)customerID":{"name":"customerID","abstract":"\u003cp\u003eRequired. The customer ID.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC7RequestC11mandateTypeAA0dc7MandateG0OSgvp":{"name":"mandateType","abstract":"\u003cp\u003eOptional. The \u003ccode\u003eBTSEPADebitMandateType\u003c/code\u003e. If not set, defaults to \u003ccode\u003e.oneOff\u003c/code\u003e\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eRequired. The user\u0026rsquo;s billing address.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)merchantAccountID":{"name":"merchantAccountID","abstract":"\u003cp\u003eOptional. A non-default merchant account to use for tokenization.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitRequest(py)locale":{"name":"locale","abstract":"\u003cp\u003eOptional. A locale code to use for creating a mandate.","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitRequest.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC7RequestC17accountHolderName4iban10customerID11mandateType14billingAddress015merchantAccountK06localeACSSSg_A2kA0dc7MandateM0OSg0A4Core08BTPostalO0CSgA2Ktcfc":{"name":"init(accountHolderName:iban:customerID:mandateType:billingAddress:merchantAccountID:locale:)","abstract":"\u003cp\u003eInitialize a new SEPA Direct Debit request.\u003c/p\u003e","parent_name":"BTSEPADirectDebitRequest"},"Classes/BTSEPADirectDebitNonce.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitNonce(py)ibanLastFour":{"name":"ibanLastFour","abstract":"\u003cp\u003eThe IBAN last four characters.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitNonce.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitNonce(py)customerID":{"name":"customerID","abstract":"\u003cp\u003eThe customer ID.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitNonce.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC5NonceC11mandateTypeAA0dc7MandateG0OSgvp":{"name":"mandateType","abstract":"\u003cp\u003eThe \u003ccode\u003eBTSEPADebitMandateType\u003c/code\u003e.\u003c/p\u003e","parent_name":"BTSEPADirectDebitNonce"},"Classes/BTSEPADirectDebitClient.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eCreates a SEPA Direct Debit client.\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTSEPADirectDebitClient.html#/c:@M@BraintreeSEPADirectDebit@objc(cs)BTSEPADirectDebitClient(im)tokenizeWithSEPADirectDebitRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eInitiates an \u003ccode\u003eASWebAuthenticationSession\u003c/code\u003e to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTSEPADirectDebitClient.html#/s:24BraintreeSEPADirectDebit012BTSEPADirectC6ClientC8tokenizeyAA0dC5NonceCAA0dC7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eInitiates an \u003ccode\u003eASWebAuthenticationSession\u003c/code\u003e to display a mandate to the user. Upon successful mandate creation, tokenizes the payment method and returns a result\u003c/p\u003e","parent_name":"BTSEPADirectDebitClient"},"Classes/BTPayPalNativeVaultRequest.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeVaultRequest(im)initWithOfferCredit:billingAgreementDescription:":{"name":"init(offerCredit:billingAgreementDescription:)","abstract":"\u003cp\u003eInitializes a PayPal Native Vault request\u003c/p\u003e","parent_name":"BTPayPalNativeVaultRequest"},"Classes/BTPayPalNativeCheckoutRequest.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutRequest(im)initWithAmount:intent:offerPayLater:currencyCode:requestBillingAgreement:billingAgreementDescription:userAuthenticationEmail:":{"name":"init(amount:intent:offerPayLater:currencyCode:requestBillingAgreement:billingAgreementDescription:userAuthenticationEmail:)","abstract":"\u003cp\u003eInitializes a PayPal Native Checkout request\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutRequest"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)initWithAPIClient:":{"name":"init(apiClient:)","abstract":"\u003cp\u003eInitializes a PayPal Native client.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)tokenizeWithNativeCheckoutRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Checkout flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE6ClientC8tokenizeyAA0fcdE12AccountNonceCAA0fcdE7RequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Checkout flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutClient(im)tokenizeWithNativeVaultRequest:completion:":{"name":"tokenize(_:completion:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Vault flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutClient.html#/s:29BraintreePayPalNativeCheckout05BTPaycdE6ClientC8tokenizeyAA0fcdE12AccountNonceCAA0fcD12VaultRequestCYaKF":{"name":"tokenize(_:)","abstract":"\u003cp\u003eTokenize a PayPal request to be used with the PayPal Native Vault flow.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutClient"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)email":{"name":"email","abstract":"\u003cp\u003ePayer\u0026rsquo;s email address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)firstName":{"name":"firstName","abstract":"\u003cp\u003ePayer\u0026rsquo;s first name.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)lastName":{"name":"lastName","abstract":"\u003cp\u003ePayer\u0026rsquo;s last name.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)phone":{"name":"phone","abstract":"\u003cp\u003ePayer\u0026rsquo;s phone number.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)billingAddress":{"name":"billingAddress","abstract":"\u003cp\u003eThe billing address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)shippingAddress":{"name":"shippingAddress","abstract":"\u003cp\u003eThe shipping address.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)clientMetadataID":{"name":"clientMetadataID","abstract":"\u003cp\u003eClient metadata id associated with this transaction.\u003c/p\u003e","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPayPalNativeCheckoutAccountNonce.html#/c:@M@BraintreePayPalNativeCheckout@objc(cs)BTPayPalNativeCheckoutAccountNonce(py)payerID":{"name":"payerID","abstract":"\u003cp\u003eOptional. Payer id associated with this transaction.","parent_name":"BTPayPalNativeCheckoutAccountNonce"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)recipientName":{"name":"recipientName","abstract":"\u003cp\u003eOptional. Recipient name for shipping address.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)streetAddress":{"name":"streetAddress","abstract":"\u003cp\u003eLine 1 of the Address (eg. number, street, etc).\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)extendedAddress":{"name":"extendedAddress","abstract":"\u003cp\u003eOptional line 2 of the Address (eg. suite, apt #, etc.).\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)locality":{"name":"locality","abstract":"\u003cp\u003eCity name\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)countryCodeAlpha2":{"name":"countryCodeAlpha2","abstract":"\u003cp\u003e2 letter country code.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)postalCode":{"name":"postalCode","abstract":"\u003cp\u003eZip code or equivalent is usually required for countries that have them.","parent_name":"BTPostalAddress"},"Classes/BTPostalAddress.html#/c:@M@BraintreeCore@objc(cs)BTPostalAddress(py)region":{"name":"region","abstract":"\u003cp\u003eEither a two-letter state code (for the US), or an ISO-3166-2 country subdivision code of up to three letters.\u003c/p\u003e","parent_name":"BTPostalAddress"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(cpy)sharedParser":{"name":"shared","abstract":"\u003cp\u003eThe singleton instance\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(py)allTypes":{"name":"allTypes","abstract":"\u003cp\u003eAn array of the tokenization types currently registered\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)isTypeAvailable:":{"name":"isTypeAvailable(_:)","abstract":"\u003cp\u003eIndicates whether a tokenization type is currently registered\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)registerType:withParsingBlock:":{"name":"registerType(_:withParsingBlock:)","abstract":"\u003cp\u003eRegisters a parsing block for a tokenization type.\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonceParser.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonceParser(im)parseJSON:withParsingBlockForType:":{"name":"parseJSON(_:withParsingBlockForType:)","abstract":"\u003cp\u003eParses tokenized payment information that has been serialized to JSON, and returns a \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPaymentMethodNonce.html\"\u003eBTPaymentMethodNonce\u003c/a\u003e\u003c/code\u003e object.\u003c/p\u003e","parent_name":"BTPaymentMethodNonceParser"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)nonce":{"name":"nonce","abstract":"\u003cp\u003eThe payment method nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)type":{"name":"type","abstract":"\u003cp\u003eThe string identifying the type of the payment method.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(py)isDefault":{"name":"isDefault","abstract":"\u003cp\u003eThe boolean indicating whether this is a default payment method.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:":{"name":"init(nonce:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:type:":{"name":"init(nonce:type:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTPaymentMethodNonce.html#/c:@M@BraintreeCore@objc(cs)BTPaymentMethodNonce(im)initWithNonce:type:isDefault:":{"name":"init(nonce:type:isDefault:)","abstract":"\u003cp\u003eInitialize a new Payment Method Nonce.\u003c/p\u003e","parent_name":"BTPaymentMethodNonce"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)prepaid":{"name":"prepaid","abstract":"\u003cp\u003eWhether the card is a prepaid card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)healthcare":{"name":"healthcare","abstract":"\u003cp\u003eWhether the card is a healthcare card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)debit":{"name":"debit","abstract":"\u003cp\u003eWhether the card is a debit card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)durbinRegulated":{"name":"durbinRegulated","abstract":"\u003cp\u003eA value indicating whether the issuing bank\u0026rsquo;s card range is regulated by the Durbin Amendment due to the bank\u0026rsquo;s assets. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)commercial":{"name":"commercial","abstract":"\u003cp\u003eWhether the card type is a commercial card and is capable of processing Level 2 transactions. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)payroll":{"name":"payroll","abstract":"\u003cp\u003eWhether the card is a payroll card. Possible values: Yes/No/Unknown\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)issuingBank":{"name":"issuingBank","abstract":"\u003cp\u003eThe bank that issued the credit card, if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)countryOfIssuance":{"name":"countryOfIssuance","abstract":"\u003cp\u003eThe country that issued the credit card, if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(py)productID":{"name":"productID","abstract":"\u003cp\u003eThe code for the product type of the card (e.g. \u003ccode\u003eD\u003c/code\u003e (Visa Signature Preferred), \u003ccode\u003eG\u003c/code\u003e (Visa Business)), if available.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTBinData.html#/c:@M@BraintreeCore@objc(cs)BTBinData(im)initWithJSON:":{"name":"init(json:)","abstract":"\u003cp\u003eCreate a \u003ccode\u003eBTBinData\u003c/code\u003e object from JSON.\u003c/p\u003e","parent_name":"BTBinData"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(cpy)sharedInstance":{"name":"sharedInstance","abstract":"\u003cp\u003eSingleton for shared instance of \u003ccode\u003eBTAppContextSwitcher\u003c/code\u003e\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(py)returnURLScheme":{"name":"returnURLScheme","abstract":"\u003cp\u003eThe URL scheme to return to this app after switching to another app or opening a SFSafariViewController.","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)handleOpenURLContext:":{"name":"handleOpenURL(context:)","abstract":"\u003cp\u003eDetermine whether the return URL can be handled.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)handleOpenURL:":{"name":"handleOpen(_:)","abstract":"\u003cp\u003eComplete payment flow after returning from app or browser switch.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAppContextSwitcher.html#/c:@M@BraintreeCore@objc(cs)BTAppContextSwitcher(im)registerAppContextSwitchClient:":{"name":"register(_:)","abstract":"\u003cp\u003eRegisters a class \u003ccode\u003eType\u003c/code\u003e that can handle a return from app context switch with a static method.\u003c/p\u003e","parent_name":"BTAppContextSwitcher"},"Classes/BTAPIClient.html#/s:13BraintreeCore11BTAPIClientC13authorizationAA19ClientAuthorization_pvp":{"name":"authorization","abstract":"\u003cp\u003eThe TokenizationKey or ClientToken used to authorize the APIClient\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/s:13BraintreeCore11BTAPIClientC8metadataAA16BTClientMetadataCvp":{"name":"metadata","abstract":"\u003cp\u003eClient metadata that is used for tracking the client session\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)initWithAuthorization:":{"name":"init(authorization:)","abstract":"\u003cp\u003eInitialize a new API client.\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)fetchPaymentMethodNonces:":{"name":"fetchPaymentMethodNonces(_:)","abstract":"\u003cp\u003eFetches a customer\u0026rsquo;s vaulted payment method nonces.","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(im)fetchPaymentMethodNonces:completion:":{"name":"fetchPaymentMethodNonces(_:completion:)","abstract":"\u003cp\u003eFetches a customer\u0026rsquo;s vaulted payment method nonces.","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html":{"name":"BTAPIClient","abstract":"\u003cp\u003eThis class acts as the entry point for accessing the Braintree APIs via common HTTP methods performed on API endpoints.\u003c/p\u003e"},"Classes/BTAppContextSwitcher.html":{"name":"BTAppContextSwitcher","abstract":"\u003cp\u003eHandles return URLs when returning from app context switch and routes the return URL to the correct app context switch client class.\u003c/p\u003e"},"Classes/BTBinData.html":{"name":"BTBinData","abstract":"\u003cp\u003eContains the bin data associated with a payment method\u003c/p\u003e"},"Classes/BTPaymentMethodNonce.html":{"name":"BTPaymentMethodNonce","abstract":"\u003cp\u003eBTPaymentMethodNonce is for generic tokenized payment information.\u003c/p\u003e"},"Classes/BTPaymentMethodNonceParser.html":{"name":"BTPaymentMethodNonceParser","abstract":"\u003cp\u003eA JSON parser that parses \u003ccode\u003eBTJSON\u003c/code\u003e into concrete \u003ccode\u003e\u003ca href=\"36f8f5912051ae747ef441d6511ca4cbClasses/BTPaymentMethodNonce.html\"\u003eBTPaymentMethodNonce\u003c/a\u003e\u003c/code\u003e objects. It supports registration of parsers at runtime.\u003c/p\u003e"},"Classes/BTPostalAddress.html":{"name":"BTPostalAddress","abstract":"\u003cp\u003eGeneric postal address\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutAccountNonce.html":{"name":"BTPayPalNativeCheckoutAccountNonce","abstract":"\u003cp\u003eContains information about a PayPal payment method.\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutClient.html":{"name":"BTPayPalNativeCheckoutClient","abstract":"\u003cp\u003eClient used to collect PayPal payment methods. If possible, this client will present a native flow; otherwise, it will fall back to a web flow.\u003c/p\u003e"},"Classes/BTPayPalNativeCheckoutRequest.html":{"name":"BTPayPalNativeCheckoutRequest","abstract":"\u003cp\u003eOptions for the PayPal Checkout flow.\u003c/p\u003e"},"Classes/BTPayPalNativeVaultRequest.html":{"name":"BTPayPalNativeVaultRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTSEPADirectDebitClient.html":{"name":"BTSEPADirectDebitClient","abstract":"\u003cp\u003eUsed to integrate with SEPA Direct Debit.\u003c/p\u003e"},"Classes/BTSEPADirectDebitNonce.html":{"name":"BTSEPADirectDebitNonce","abstract":"\u003cp\u003eA payment method nonce representing a SEPA Direct Debit payment.\u003c/p\u003e"},"Classes/BTSEPADirectDebitRequest.html":{"name":"BTSEPADirectDebitRequest","abstract":"\u003cp\u003eParameters for creating a SEPA Direct Debit tokenization request.\u003c/p\u003e"},"Classes/BTAmericanExpressClient.html":{"name":"BTAmericanExpressClient","abstract":"\u003cp\u003e\u003ccode\u003eBTAmericanExpressClient\u003c/code\u003e enables you to look up the rewards balance of American Express cards.\u003c/p\u003e"},"Classes/BTAmericanExpressRewardsBalance.html":{"name":"BTAmericanExpressRewardsBalance","abstract":"\u003cp\u003eContains information about an American Express rewards balance.\u003c/p\u003e"},"Classes/BTDataCollector.html":{"name":"BTDataCollector","abstract":"\u003cp\u003eBraintree\u0026rsquo;s advanced fraud protection solution.\u003c/p\u003e"},"Classes/BTApplePayCardNonce.html":{"name":"BTApplePayCardNonce","abstract":"\u003cp\u003eContains information about a tokenized Apple Pay card.\u003c/p\u003e"},"Classes/BTApplePayClient.html":{"name":"BTApplePayClient","abstract":"\u003cp\u003eUsed to process Apple Pay payments\u003c/p\u003e"},"Classes/BTLocalPaymentClient.html":{"name":"BTLocalPaymentClient"},"Classes/BTLocalPaymentRequest.html":{"name":"BTLocalPaymentRequest","abstract":"\u003cp\u003eUsed to initialize a local payment flow\u003c/p\u003e"},"Classes/BTLocalPaymentResult.html":{"name":"BTLocalPaymentResult"},"Classes/BTThreeDSecureAdditionalInformation.html":{"name":"BTThreeDSecureAdditionalInformation","abstract":"\u003cp\u003eAdditional information for a 3DS lookup. Used in 3DS 2.0+ flows.\u003c/p\u003e"},"Classes/BTThreeDSecureClient.html":{"name":"BTThreeDSecureClient"},"Classes/BTThreeDSecureLookup.html":{"name":"BTThreeDSecureLookup","abstract":"\u003cp\u003eThe result of a 3DS lookup."},"Classes/BTThreeDSecurePostalAddress.html":{"name":"BTThreeDSecurePostalAddress","abstract":"\u003cp\u003ePostal address for 3D Secure flows\u003c/p\u003e"},"Classes/BTThreeDSecureRenderType.html":{"name":"BTThreeDSecureRenderType","abstract":"\u003cp\u003eRender types that the device supports for displaying specific challenge user interfaces within the 3D Secure challenge.\u003c/p\u003e"},"Classes/BTThreeDSecureRequest.html":{"name":"BTThreeDSecureRequest","abstract":"\u003cp\u003eUsed to initialize a 3D Secure payment flow\u003c/p\u003e"},"Classes/BTThreeDSecureResult.html":{"name":"BTThreeDSecureResult","abstract":"\u003cp\u003eThe result of a 3D Secure payment flow\u003c/p\u003e"},"Classes/BTThreeDSecureV2BaseCustomization.html":{"name":"BTThreeDSecureV2BaseCustomization","abstract":"\u003cp\u003eBase customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2ButtonCustomization.html":{"name":"BTThreeDSecureV2ButtonCustomization","abstract":"\u003cp\u003eButton customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2LabelCustomization.html":{"name":"BTThreeDSecureV2LabelCustomization","abstract":"\u003cp\u003eLabel customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2TextBoxCustomization.html":{"name":"BTThreeDSecureV2TextBoxCustomization","abstract":"\u003cp\u003eText box customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2ToolbarCustomization.html":{"name":"BTThreeDSecureV2ToolbarCustomization","abstract":"\u003cp\u003eToolbar customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTThreeDSecureV2UICustomization.html":{"name":"BTThreeDSecureV2UICustomization","abstract":"\u003cp\u003eUI customization options for 3D Secure 2 flows.\u003c/p\u003e"},"Classes/BTAuthenticationInsight.html":{"name":"BTAuthenticationInsight","abstract":"\u003cp\u003eInformation pertaining to the regulatory environment for a credit card if authentication insight is requested during tokenization.\u003c/p\u003e"},"Classes/BTCard.html":{"name":"BTCard","abstract":"\u003cp\u003eThe card tokenization request represents raw credit or debit card data provided by the customer."},"Classes/BTCardClient.html":{"name":"BTCardClient","abstract":"\u003cp\u003eUsed to process cards\u003c/p\u003e"},"Classes/BTCardNonce.html":{"name":"BTCardNonce","abstract":"\u003cp\u003eContains information about a tokenized card.\u003c/p\u003e"},"Classes/BTCardRequest.html":{"name":"BTCardRequest","abstract":"\u003cp\u003eContains information about a card to tokenize\u003c/p\u003e"},"Classes/BTThreeDSecureInfo.html":{"name":"BTThreeDSecureInfo","abstract":"\u003cp\u003eContains information about the 3D Secure status of a payment method\u003c/p\u003e"},"Classes/BTPayPalAccountNonce.html":{"name":"BTPayPalAccountNonce","abstract":"\u003cp\u003eContains information about a PayPal payment method\u003c/p\u003e"},"Classes/BTPayPalCheckoutRequest.html":{"name":"BTPayPalCheckoutRequest","abstract":"\u003cp\u003eOptions for the PayPal Checkout flow.\u003c/p\u003e"},"Classes/BTPayPalClient.html":{"name":"BTPayPalClient"},"Classes/BTPayPalCreditFinancing.html":{"name":"BTPayPalCreditFinancing","abstract":"\u003cp\u003eContains information about a PayPal credit financing option\u003c/p\u003e"},"Classes/BTPayPalCreditFinancingAmount.html":{"name":"BTPayPalCreditFinancingAmount","abstract":"\u003cp\u003eContains information about a PayPal credit amount\u003c/p\u003e"},"Classes/BTPayPalLineItem.html":{"name":"BTPayPalLineItem","abstract":"\u003cp\u003eA PayPal line item to be displayed in the PayPal checkout flow.\u003c/p\u003e"},"Classes/BTPayPalRequest.html":{"name":"BTPayPalRequest","abstract":"\u003cp\u003eBase options for PayPal Checkout and PayPal Vault flows.\u003c/p\u003e"},"Classes/BTPayPalVaultBaseRequest.html":{"name":"BTPayPalVaultBaseRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTPayPalVaultRequest.html":{"name":"BTPayPalVaultRequest","abstract":"\u003cp\u003eOptions for the PayPal Vault flow.\u003c/p\u003e"},"Classes/BTVenmoAccountNonce.html":{"name":"BTVenmoAccountNonce","abstract":"\u003cp\u003eContains information about a Venmo Account payment method\u003c/p\u003e"},"Classes/BTVenmoClient.html":{"name":"BTVenmoClient","abstract":"\u003cp\u003eUsed to process Venmo payments\u003c/p\u003e"},"Classes/BTVenmoLineItem.html":{"name":"BTVenmoLineItem","abstract":"\u003cp\u003eA Venmo line item to be displayed in the Venmo Paysheet.\u003c/p\u003e"},"Classes/BTVenmoRequest.html":{"name":"BTVenmoRequest","abstract":"\u003cp\u003eA BTVenmoRequest specifies options that contribute to the Venmo flow\u003c/p\u003e"},"Classes/BTPayPalMessagingView.html":{"name":"BTPayPalMessagingView","abstract":"\u003cp\u003eUse \u003ccode\u003eBTPayPalMessagingView\u003c/code\u003e to display PayPal messages to promote offers such as Pay Later and PayPal Credit to customers.\u003c/p\u003e"},"Classes/BTShopperInsightsClient.html":{"name":"BTShopperInsightsClient","abstract":"\u003cp\u003eUse \u003ccode\u003eBTShopperInsightsClient\u003c/code\u003e to optimize your checkout experience by prioritizing the customer’s preferred payment methods in your UI."},"Classes.html":{"name":"Classes","abstract":"\u003cp\u003eThe following classes are available globally.\u003c/p\u003e"},"Enums.html":{"name":"Enumerations","abstract":"\u003cp\u003eThe following enumerations are available globally.\u003c/p\u003e"},"Extensions.html":{"name":"Extensions","abstract":"\u003cp\u003eThe following extensions are available globally.\u003c/p\u003e"},"Protocols.html":{"name":"Protocols","abstract":"\u003cp\u003eThe following protocols are available globally.\u003c/p\u003e"},"Structs.html":{"name":"Structures","abstract":"\u003cp\u003eThe following structures are available globally.\u003c/p\u003e"}} \ No newline at end of file diff --git a/6.23.2/undocumented.json b/6.23.2/undocumented.json new file mode 100644 index 0000000000..d7d84e6967 --- /dev/null +++ b/6.23.2/undocumented.json @@ -0,0 +1,6 @@ +{ + "warnings": [ + + ], + "source_directory": "/Users/runner/work/braintree_ios/braintree_ios" +} \ No newline at end of file diff --git a/current b/current index b5ffb110b0..d344de00fd 120000 --- a/current +++ b/current @@ -1 +1 @@ -6.23.1 \ No newline at end of file +6.23.2 \ No newline at end of file