From c80a4d3719af330e6f0ec515d8276ea602143dd8 Mon Sep 17 00:00:00 2001 From: braintreeps Date: Mon, 18 Mar 2024 17:22:13 +0000 Subject: [PATCH] Publish 6.15.0 docs to github pages --- 6.15.0/Classes.html | 2092 +++++++++++++++++ 6.15.0/Classes/BTAPIClient.html | 648 +++++ 6.15.0/Classes/BTAmericanExpressClient.html | 505 ++++ .../BTAmericanExpressRewardsBalance.html | 622 +++++ 6.15.0/Classes/BTAppContextSwitcher.html | 610 +++++ 6.15.0/Classes/BTApplePayCardNonce.html | 412 ++++ 6.15.0/Classes/BTApplePayClient.html | 672 ++++++ 6.15.0/Classes/BTAuthenticationInsight.html | 423 ++++ 6.15.0/Classes/BTBinData.html | 683 ++++++ 6.15.0/Classes/BTCard.html | 1041 ++++++++ 6.15.0/Classes/BTCardClient.html | 578 +++++ 6.15.0/Classes/BTCardNonce.html | 692 ++++++ 6.15.0/Classes/BTCardRequest.html | 461 ++++ 6.15.0/Classes/BTClientToken.html | 533 +++++ 6.15.0/Classes/BTDataCollector.html | 604 +++++ 6.15.0/Classes/BTLocalPaymentClient.html | 575 +++++ 6.15.0/Classes/BTLocalPaymentRequest.html | 814 +++++++ 6.15.0/Classes/BTLocalPaymentResult.html | 681 ++++++ 6.15.0/Classes/BTPayPalAccountNonce.html | 654 ++++++ 6.15.0/Classes/BTPayPalCheckoutRequest.html | 710 ++++++ 6.15.0/Classes/BTPayPalClient.html | 741 ++++++ 6.15.0/Classes/BTPayPalCreditFinancing.html | 562 +++++ .../BTPayPalCreditFinancingAmount.html | 442 ++++ 6.15.0/Classes/BTPayPalLineItem.html | 820 +++++++ .../BTPayPalNativeCheckoutAccountNonce.html | 632 +++++ .../Classes/BTPayPalNativeCheckoutClient.html | 713 ++++++ .../BTPayPalNativeCheckoutRequest.html | 566 +++++ .../Classes/BTPayPalNativeVaultRequest.html | 456 ++++ 6.15.0/Classes/BTPayPalRequest.html | 709 ++++++ 6.15.0/Classes/BTPayPalVaultRequest.html | 483 ++++ 6.15.0/Classes/BTPaymentMethodNonce.html | 678 ++++++ .../Classes/BTPaymentMethodNonceParser.html | 600 +++++ 6.15.0/Classes/BTPostalAddress.html | 593 +++++ 6.15.0/Classes/BTSEPADirectDebitClient.html | 580 +++++ 6.15.0/Classes/BTSEPADirectDebitNonce.html | 472 ++++ 6.15.0/Classes/BTSEPADirectDebitRequest.html | 725 ++++++ .../BTThreeDSecureAdditionalInformation.html | 1714 ++++++++++++++ 6.15.0/Classes/BTThreeDSecureClient.html | 799 +++++++ 6.15.0/Classes/BTThreeDSecureInfo.html | 949 ++++++++ 6.15.0/Classes/BTThreeDSecureLookup.html | 633 +++++ .../Classes/BTThreeDSecurePostalAddress.html | 697 ++++++ 6.15.0/Classes/BTThreeDSecureRenderType.html | 590 +++++ 6.15.0/Classes/BTThreeDSecureRequest.html | 962 ++++++++ 6.15.0/Classes/BTThreeDSecureResult.html | 481 ++++ .../BTThreeDSecureV2BaseCustomization.html | 481 ++++ .../BTThreeDSecureV2ButtonCustomization.html | 493 ++++ .../BTThreeDSecureV2LabelCustomization.html | 523 +++++ .../BTThreeDSecureV2TextBoxCustomization.html | 523 +++++ .../BTThreeDSecureV2ToolbarCustomization.html | 523 +++++ .../BTThreeDSecureV2UICustomization.html | 556 +++++ 6.15.0/Classes/BTVenmoAccountNonce.html | 631 +++++ 6.15.0/Classes/BTVenmoClient.html | 642 +++++ 6.15.0/Classes/BTVenmoLineItem.html | 730 ++++++ 6.15.0/Classes/BTVenmoRequest.html | 896 +++++++ 6.15.0/Enums.html | 1423 +++++++++++ 6.15.0/Enums/BTAPIClientError.html | 567 +++++ 6.15.0/Enums/BTAmericanExpressError.html | 567 +++++ 6.15.0/Enums/BTAnalyticsServiceError.html | 501 ++++ 6.15.0/Enums/BTApplePayError.html | 600 +++++ 6.15.0/Enums/BTCardError.html | 674 ++++++ 6.15.0/Enums/BTCardNetwork.html | 832 +++++++ 6.15.0/Enums/BTClientTokenError.html | 633 +++++ 6.15.0/Enums/BTDataCollectorError.html | 567 +++++ 6.15.0/Enums/BTHTTPError.html | 939 ++++++++ 6.15.0/Enums/BTJSONError.html | 566 +++++ 6.15.0/Enums/BTLocalPaymentError.html | 873 +++++++ 6.15.0/Enums/BTPayPalError.html | 840 +++++++ 6.15.0/Enums/BTPayPalLineItemKind.html | 442 ++++ 6.15.0/Enums/BTPayPalLineItemUPCType.html | 622 +++++ 6.15.0/Enums/BTPayPalLocaleCode.html | 1194 ++++++++++ 6.15.0/Enums/BTPayPalNativeCheckoutError.html | 939 ++++++++ 6.15.0/Enums/BTPayPalPaymentType.html | 441 ++++ 6.15.0/Enums/BTPayPalRequestIntent.html | 510 ++++ .../Enums/BTPayPalRequestLandingPageType.html | 472 ++++ 6.15.0/Enums/BTPayPalRequestUserAction.html | 449 ++++ 6.15.0/Enums/BTSEPADirectDebitError.html | 765 ++++++ .../Enums/BTSEPADirectDebitMandateType.html | 440 ++++ 6.15.0/Enums/BTThreeDSecureAccountType.html | 472 ++++ .../Enums/BTThreeDSecureCardAddChallenge.html | 472 ++++ 6.15.0/Enums/BTThreeDSecureError.html | 806 +++++++ .../BTThreeDSecureRequestedExemptionType.html | 532 +++++ .../Enums/BTThreeDSecureShippingMethod.html | 592 +++++ 6.15.0/Enums/BTThreeDSecureUIType.html | 472 ++++ 6.15.0/Enums/BTThreeDSecureV2ButtonType.html | 532 +++++ 6.15.0/Enums/BTVenmoAppSwitchError.html | 501 ++++ 6.15.0/Enums/BTVenmoError.html | 864 +++++++ 6.15.0/Enums/BTVenmoLineItemKind.html | 442 ++++ 6.15.0/Enums/BTVenmoPaymentMethodUsage.html | 442 ++++ 6.15.0/Extensions.html | 440 ++++ .../Extensions/BTThreeDSecureV2Provider.html | 413 ++++ 6.15.0/Protocols.html | 434 ++++ .../BTLocalPaymentRequestDelegate.html | 414 ++++ .../BTThreeDSecureRequestDelegate.html | 414 ++++ 6.15.0/badge.svg | 28 + 6.15.0/css/highlight.css | 202 ++ 6.15.0/css/jazzy.css | 404 ++++ .../Braintree.docset/Contents/Info.plist | 20 + .../Contents/Resources/Documents/Classes.html | 2092 +++++++++++++++++ .../Documents/Classes/BTAPIClient.html | 648 +++++ .../Classes/BTAmericanExpressClient.html | 505 ++++ .../BTAmericanExpressRewardsBalance.html | 622 +++++ .../Classes/BTAppContextSwitcher.html | 610 +++++ .../Classes/BTApplePayCardNonce.html | 412 ++++ .../Documents/Classes/BTApplePayClient.html | 672 ++++++ .../Classes/BTAuthenticationInsight.html | 423 ++++ .../Documents/Classes/BTBinData.html | 683 ++++++ .../Resources/Documents/Classes/BTCard.html | 1041 ++++++++ .../Documents/Classes/BTCardClient.html | 578 +++++ .../Documents/Classes/BTCardNonce.html | 692 ++++++ .../Documents/Classes/BTCardRequest.html | 461 ++++ .../Documents/Classes/BTClientToken.html | 533 +++++ .../Documents/Classes/BTDataCollector.html | 604 +++++ .../Classes/BTLocalPaymentClient.html | 575 +++++ .../Classes/BTLocalPaymentRequest.html | 814 +++++++ .../Classes/BTLocalPaymentResult.html | 681 ++++++ .../Classes/BTPayPalAccountNonce.html | 654 ++++++ .../Classes/BTPayPalCheckoutRequest.html | 710 ++++++ .../Documents/Classes/BTPayPalClient.html | 741 ++++++ .../Classes/BTPayPalCreditFinancing.html | 562 +++++ .../BTPayPalCreditFinancingAmount.html | 442 ++++ .../Documents/Classes/BTPayPalLineItem.html | 820 +++++++ .../BTPayPalNativeCheckoutAccountNonce.html | 632 +++++ .../Classes/BTPayPalNativeCheckoutClient.html | 713 ++++++ .../BTPayPalNativeCheckoutRequest.html | 566 +++++ .../Classes/BTPayPalNativeVaultRequest.html | 456 ++++ .../Documents/Classes/BTPayPalRequest.html | 709 ++++++ .../Classes/BTPayPalVaultRequest.html | 483 ++++ .../Classes/BTPaymentMethodNonce.html | 678 ++++++ .../Classes/BTPaymentMethodNonceParser.html | 600 +++++ .../Documents/Classes/BTPostalAddress.html | 593 +++++ .../Classes/BTSEPADirectDebitClient.html | 580 +++++ .../Classes/BTSEPADirectDebitNonce.html | 472 ++++ .../Classes/BTSEPADirectDebitRequest.html | 725 ++++++ .../BTThreeDSecureAdditionalInformation.html | 1714 ++++++++++++++ .../Classes/BTThreeDSecureClient.html | 799 +++++++ .../Documents/Classes/BTThreeDSecureInfo.html | 949 ++++++++ .../Classes/BTThreeDSecureLookup.html | 633 +++++ .../Classes/BTThreeDSecurePostalAddress.html | 697 ++++++ .../Classes/BTThreeDSecureRenderType.html | 590 +++++ .../Classes/BTThreeDSecureRequest.html | 962 ++++++++ .../Classes/BTThreeDSecureResult.html | 481 ++++ .../BTThreeDSecureV2BaseCustomization.html | 481 ++++ .../BTThreeDSecureV2ButtonCustomization.html | 493 ++++ .../BTThreeDSecureV2LabelCustomization.html | 523 +++++ .../BTThreeDSecureV2TextBoxCustomization.html | 523 +++++ .../BTThreeDSecureV2ToolbarCustomization.html | 523 +++++ .../BTThreeDSecureV2UICustomization.html | 556 +++++ .../Classes/BTVenmoAccountNonce.html | 631 +++++ .../Documents/Classes/BTVenmoClient.html | 642 +++++ .../Documents/Classes/BTVenmoLineItem.html | 730 ++++++ .../Documents/Classes/BTVenmoRequest.html | 896 +++++++ .../Contents/Resources/Documents/Enums.html | 1423 +++++++++++ .../Documents/Enums/BTAPIClientError.html | 567 +++++ .../Enums/BTAmericanExpressError.html | 567 +++++ .../Enums/BTAnalyticsServiceError.html | 501 ++++ .../Documents/Enums/BTApplePayError.html | 600 +++++ .../Documents/Enums/BTCardError.html | 674 ++++++ .../Documents/Enums/BTCardNetwork.html | 832 +++++++ .../Documents/Enums/BTClientTokenError.html | 633 +++++ .../Documents/Enums/BTDataCollectorError.html | 567 +++++ .../Documents/Enums/BTHTTPError.html | 939 ++++++++ .../Documents/Enums/BTJSONError.html | 566 +++++ .../Documents/Enums/BTLocalPaymentError.html | 873 +++++++ .../Documents/Enums/BTPayPalError.html | 840 +++++++ .../Documents/Enums/BTPayPalLineItemKind.html | 442 ++++ .../Enums/BTPayPalLineItemUPCType.html | 622 +++++ .../Documents/Enums/BTPayPalLocaleCode.html | 1194 ++++++++++ .../Enums/BTPayPalNativeCheckoutError.html | 939 ++++++++ .../Documents/Enums/BTPayPalPaymentType.html | 441 ++++ .../Enums/BTPayPalRequestIntent.html | 510 ++++ .../Enums/BTPayPalRequestLandingPageType.html | 472 ++++ .../Enums/BTPayPalRequestUserAction.html | 449 ++++ .../Enums/BTSEPADirectDebitError.html | 765 ++++++ .../Enums/BTSEPADirectDebitMandateType.html | 440 ++++ .../Enums/BTThreeDSecureAccountType.html | 472 ++++ .../Enums/BTThreeDSecureCardAddChallenge.html | 472 ++++ .../Documents/Enums/BTThreeDSecureError.html | 806 +++++++ .../BTThreeDSecureRequestedExemptionType.html | 532 +++++ .../Enums/BTThreeDSecureShippingMethod.html | 592 +++++ .../Documents/Enums/BTThreeDSecureUIType.html | 472 ++++ .../Enums/BTThreeDSecureV2ButtonType.html | 532 +++++ .../Enums/BTVenmoAppSwitchError.html | 501 ++++ .../Documents/Enums/BTVenmoError.html | 864 +++++++ .../Documents/Enums/BTVenmoLineItemKind.html | 442 ++++ .../Enums/BTVenmoPaymentMethodUsage.html | 442 ++++ .../Resources/Documents/Extensions.html | 440 ++++ .../Extensions/BTThreeDSecureV2Provider.html | 413 ++++ .../Resources/Documents/Protocols.html | 434 ++++ .../BTLocalPaymentRequestDelegate.html | 414 ++++ .../BTThreeDSecureRequestDelegate.html | 414 ++++ .../Resources/Documents/css/highlight.css | 202 ++ .../Resources/Documents/css/jazzy.css | 404 ++++ .../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 | 498 ++++ .../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 | 1694 +++++++++++++ .../Contents/Resources/Documents/search.json | 1 + .../Contents/Resources/docSet.dsidx | Bin 0 -> 221184 bytes 6.15.0/docsets/Braintree.tgz | Bin 0 -> 306837 bytes 6.15.0/img/carat.png | Bin 0 -> 274 bytes 6.15.0/img/dash.png | Bin 0 -> 1338 bytes 6.15.0/img/gh.png | Bin 0 -> 1571 bytes 6.15.0/img/spinner.gif | Bin 0 -> 1849 bytes 6.15.0/index.html | 498 ++++ 6.15.0/js/jazzy.js | 74 + 6.15.0/js/jazzy.search.js | 74 + 6.15.0/js/jquery.min.js | 2 + 6.15.0/js/lunr.min.js | 6 + 6.15.0/js/typeahead.jquery.js | 1694 +++++++++++++ 6.15.0/search.json | 1 + 6.15.0/undocumented.json | 6 + current | 2 +- 218 files changed, 127371 insertions(+), 1 deletion(-) create mode 100644 6.15.0/Classes.html create mode 100644 6.15.0/Classes/BTAPIClient.html create mode 100644 6.15.0/Classes/BTAmericanExpressClient.html create mode 100644 6.15.0/Classes/BTAmericanExpressRewardsBalance.html create mode 100644 6.15.0/Classes/BTAppContextSwitcher.html create mode 100644 6.15.0/Classes/BTApplePayCardNonce.html create mode 100644 6.15.0/Classes/BTApplePayClient.html create mode 100644 6.15.0/Classes/BTAuthenticationInsight.html create mode 100644 6.15.0/Classes/BTBinData.html create mode 100644 6.15.0/Classes/BTCard.html create mode 100644 6.15.0/Classes/BTCardClient.html create mode 100644 6.15.0/Classes/BTCardNonce.html create mode 100644 6.15.0/Classes/BTCardRequest.html create mode 100644 6.15.0/Classes/BTClientToken.html create mode 100644 6.15.0/Classes/BTDataCollector.html create mode 100644 6.15.0/Classes/BTLocalPaymentClient.html create mode 100644 6.15.0/Classes/BTLocalPaymentRequest.html create mode 100644 6.15.0/Classes/BTLocalPaymentResult.html create mode 100644 6.15.0/Classes/BTPayPalAccountNonce.html create mode 100644 6.15.0/Classes/BTPayPalCheckoutRequest.html create mode 100644 6.15.0/Classes/BTPayPalClient.html create mode 100644 6.15.0/Classes/BTPayPalCreditFinancing.html create mode 100644 6.15.0/Classes/BTPayPalCreditFinancingAmount.html create mode 100644 6.15.0/Classes/BTPayPalLineItem.html create mode 100644 6.15.0/Classes/BTPayPalNativeCheckoutAccountNonce.html create mode 100644 6.15.0/Classes/BTPayPalNativeCheckoutClient.html create mode 100644 6.15.0/Classes/BTPayPalNativeCheckoutRequest.html create mode 100644 6.15.0/Classes/BTPayPalNativeVaultRequest.html create mode 100644 6.15.0/Classes/BTPayPalRequest.html create mode 100644 6.15.0/Classes/BTPayPalVaultRequest.html create mode 100644 6.15.0/Classes/BTPaymentMethodNonce.html create mode 100644 6.15.0/Classes/BTPaymentMethodNonceParser.html create mode 100644 6.15.0/Classes/BTPostalAddress.html create mode 100644 6.15.0/Classes/BTSEPADirectDebitClient.html create mode 100644 6.15.0/Classes/BTSEPADirectDebitNonce.html create mode 100644 6.15.0/Classes/BTSEPADirectDebitRequest.html create mode 100644 6.15.0/Classes/BTThreeDSecureAdditionalInformation.html create mode 100644 6.15.0/Classes/BTThreeDSecureClient.html create mode 100644 6.15.0/Classes/BTThreeDSecureInfo.html create mode 100644 6.15.0/Classes/BTThreeDSecureLookup.html create mode 100644 6.15.0/Classes/BTThreeDSecurePostalAddress.html create mode 100644 6.15.0/Classes/BTThreeDSecureRenderType.html create mode 100644 6.15.0/Classes/BTThreeDSecureRequest.html create mode 100644 6.15.0/Classes/BTThreeDSecureResult.html create mode 100644 6.15.0/Classes/BTThreeDSecureV2BaseCustomization.html create mode 100644 6.15.0/Classes/BTThreeDSecureV2ButtonCustomization.html create mode 100644 6.15.0/Classes/BTThreeDSecureV2LabelCustomization.html create mode 100644 6.15.0/Classes/BTThreeDSecureV2TextBoxCustomization.html create mode 100644 6.15.0/Classes/BTThreeDSecureV2ToolbarCustomization.html create mode 100644 6.15.0/Classes/BTThreeDSecureV2UICustomization.html create mode 100644 6.15.0/Classes/BTVenmoAccountNonce.html create mode 100644 6.15.0/Classes/BTVenmoClient.html create mode 100644 6.15.0/Classes/BTVenmoLineItem.html create mode 100644 6.15.0/Classes/BTVenmoRequest.html create mode 100644 6.15.0/Enums.html create mode 100644 6.15.0/Enums/BTAPIClientError.html create mode 100644 6.15.0/Enums/BTAmericanExpressError.html create mode 100644 6.15.0/Enums/BTAnalyticsServiceError.html create mode 100644 6.15.0/Enums/BTApplePayError.html create mode 100644 6.15.0/Enums/BTCardError.html create mode 100644 6.15.0/Enums/BTCardNetwork.html create mode 100644 6.15.0/Enums/BTClientTokenError.html create mode 100644 6.15.0/Enums/BTDataCollectorError.html create mode 100644 6.15.0/Enums/BTHTTPError.html create mode 100644 6.15.0/Enums/BTJSONError.html create mode 100644 6.15.0/Enums/BTLocalPaymentError.html create mode 100644 6.15.0/Enums/BTPayPalError.html create mode 100644 6.15.0/Enums/BTPayPalLineItemKind.html create mode 100644 6.15.0/Enums/BTPayPalLineItemUPCType.html create mode 100644 6.15.0/Enums/BTPayPalLocaleCode.html create mode 100644 6.15.0/Enums/BTPayPalNativeCheckoutError.html create mode 100644 6.15.0/Enums/BTPayPalPaymentType.html create mode 100644 6.15.0/Enums/BTPayPalRequestIntent.html create mode 100644 6.15.0/Enums/BTPayPalRequestLandingPageType.html create mode 100644 6.15.0/Enums/BTPayPalRequestUserAction.html create mode 100644 6.15.0/Enums/BTSEPADirectDebitError.html create mode 100644 6.15.0/Enums/BTSEPADirectDebitMandateType.html create mode 100644 6.15.0/Enums/BTThreeDSecureAccountType.html create mode 100644 6.15.0/Enums/BTThreeDSecureCardAddChallenge.html create mode 100644 6.15.0/Enums/BTThreeDSecureError.html create mode 100644 6.15.0/Enums/BTThreeDSecureRequestedExemptionType.html create mode 100644 6.15.0/Enums/BTThreeDSecureShippingMethod.html create mode 100644 6.15.0/Enums/BTThreeDSecureUIType.html create mode 100644 6.15.0/Enums/BTThreeDSecureV2ButtonType.html create mode 100644 6.15.0/Enums/BTVenmoAppSwitchError.html create mode 100644 6.15.0/Enums/BTVenmoError.html create mode 100644 6.15.0/Enums/BTVenmoLineItemKind.html create mode 100644 6.15.0/Enums/BTVenmoPaymentMethodUsage.html create mode 100644 6.15.0/Extensions.html create mode 100644 6.15.0/Extensions/BTThreeDSecureV2Provider.html create mode 100644 6.15.0/Protocols.html create mode 100644 6.15.0/Protocols/BTLocalPaymentRequestDelegate.html create mode 100644 6.15.0/Protocols/BTThreeDSecureRequestDelegate.html create mode 100644 6.15.0/badge.svg create mode 100644 6.15.0/css/highlight.css create mode 100644 6.15.0/css/jazzy.css create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Info.plist create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTClientToken.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css create mode 100755 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/img/carat.png create mode 100755 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/img/dash.png create mode 100755 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/img/gh.png create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/img/spinner.gif create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/index.html create mode 100755 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/lunr.min.js create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/search.json create mode 100644 6.15.0/docsets/Braintree.docset/Contents/Resources/docSet.dsidx create mode 100644 6.15.0/docsets/Braintree.tgz create mode 100755 6.15.0/img/carat.png create mode 100755 6.15.0/img/dash.png create mode 100755 6.15.0/img/gh.png create mode 100644 6.15.0/img/spinner.gif create mode 100644 6.15.0/index.html create mode 100755 6.15.0/js/jazzy.js create mode 100644 6.15.0/js/jazzy.search.js create mode 100644 6.15.0/js/jquery.min.js create mode 100644 6.15.0/js/lunr.min.js create mode 100644 6.15.0/js/typeahead.jquery.js create mode 100644 6.15.0/search.json create mode 100644 6.15.0/undocumented.json diff --git a/6.15.0/Classes.html b/6.15.0/Classes.html new file mode 100644 index 0000000000..bbc1b98063 --- /dev/null +++ b/6.15.0/Classes.html @@ -0,0 +1,2092 @@ + + + + Classes Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTClientToken + +
    +
    +
    +
    +
    +
    +

    An authorization string used to initialize the Braintree SDK

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
     @objcMembers public class BTClientToken : NSObject, NSCoding, NSCopying
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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 : BTPayPalVaultRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    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
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalVaultRequest + +
    +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalVaultRequest : BTPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.15.0/Classes/BTAPIClient.html b/6.15.0/Classes/BTAPIClient.html new file mode 100644 index 0000000000..e279946c7b --- /dev/null +++ b/6.15.0/Classes/BTAPIClient.html @@ -0,0 +1,648 @@ + + + + BTAPIClient Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAPIClient

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

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 +

+
+
+
    +
  • +
    + + + + tokenizationKey + +
    +
    +
    +
    +
    +
    +

    The tokenization key used to authorize the APIClient

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var tokenizationKey: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientToken + +
    +
    +
    +
    +
    +
    +

    The client token used to authorize the APIClient

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var clientToken: BTClientToken?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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 convenience 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.15.0/Classes/BTAmericanExpressClient.html b/6.15.0/Classes/BTAmericanExpressClient.html new file mode 100644 index 0000000000..492f4b1c6f --- /dev/null +++ b/6.15.0/Classes/BTAmericanExpressClient.html @@ -0,0 +1,505 @@ + + + + BTAmericanExpressClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTAmericanExpressRewardsBalance.html b/6.15.0/Classes/BTAmericanExpressRewardsBalance.html new file mode 100644 index 0000000000..22ae561668 --- /dev/null +++ b/6.15.0/Classes/BTAmericanExpressRewardsBalance.html @@ -0,0 +1,622 @@ + + + + BTAmericanExpressRewardsBalance Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTAppContextSwitcher.html b/6.15.0/Classes/BTAppContextSwitcher.html new file mode 100644 index 0000000000..f981d16494 --- /dev/null +++ b/6.15.0/Classes/BTAppContextSwitcher.html @@ -0,0 +1,610 @@ + + + + BTAppContextSwitcher Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.

    + +
    +
    +

    Declaration

    +
    +

    Swift

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

Public Methods +

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

    Determine whether the return URL can be handled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @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

    +
    @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.15.0/Classes/BTApplePayCardNonce.html b/6.15.0/Classes/BTApplePayCardNonce.html new file mode 100644 index 0000000000..d4dea1ff50 --- /dev/null +++ b/6.15.0/Classes/BTApplePayCardNonce.html @@ -0,0 +1,412 @@ + + + + BTApplePayCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTApplePayClient.html b/6.15.0/Classes/BTApplePayClient.html new file mode 100644 index 0000000000..62a586f969 --- /dev/null +++ b/6.15.0/Classes/BTApplePayClient.html @@ -0,0 +1,672 @@ + + + + BTApplePayClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTAuthenticationInsight.html b/6.15.0/Classes/BTAuthenticationInsight.html new file mode 100644 index 0000000000..48540818ff --- /dev/null +++ b/6.15.0/Classes/BTAuthenticationInsight.html @@ -0,0 +1,423 @@ + + + + BTAuthenticationInsight Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTBinData.html b/6.15.0/Classes/BTBinData.html new file mode 100644 index 0000000000..c43c9d8c89 --- /dev/null +++ b/6.15.0/Classes/BTBinData.html @@ -0,0 +1,683 @@ + + + + BTBinData Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTCard.html b/6.15.0/Classes/BTCard.html new file mode 100644 index 0000000000..ada4f73d2f --- /dev/null +++ b/6.15.0/Classes/BTCard.html @@ -0,0 +1,1041 @@ + + + + BTCard Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTCardClient.html b/6.15.0/Classes/BTCardClient.html new file mode 100644 index 0000000000..f48facd390 --- /dev/null +++ b/6.15.0/Classes/BTCardClient.html @@ -0,0 +1,578 @@ + + + + BTCardClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTCardNonce.html b/6.15.0/Classes/BTCardNonce.html new file mode 100644 index 0000000000..00e5d254c2 --- /dev/null +++ b/6.15.0/Classes/BTCardNonce.html @@ -0,0 +1,692 @@ + + + + BTCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTCardRequest.html b/6.15.0/Classes/BTCardRequest.html new file mode 100644 index 0000000000..a5d9fe316b --- /dev/null +++ b/6.15.0/Classes/BTCardRequest.html @@ -0,0 +1,461 @@ + + + + BTCardRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTClientToken.html b/6.15.0/Classes/BTClientToken.html new file mode 100644 index 0000000000..e74a116a6d --- /dev/null +++ b/6.15.0/Classes/BTClientToken.html @@ -0,0 +1,533 @@ + + + + BTClientToken Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTClientToken

+
+
+ +
 @objcMembers public class BTClientToken : NSObject, NSCoding, NSCopying
+ +
+
+

An authorization string used to initialize the Braintree SDK

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

NSCoding conformance +

+
+
+
    +
  • +
    + + + + encode(with:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func encode(with coder: NSCoder)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(coder:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public required convenience init?(coder: NSCoder)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

NSCopying conformance +

+
+
+
    +
  • +
    + + + + copy(with:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(copyWithZone:)
    +public func copy(with zone: NSZone? = nil) -> Any
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

NSObject override +

+
+
+
    +
  • +
    + + + + isEqual(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override func isEqual(_ object: Any?) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.15.0/Classes/BTDataCollector.html b/6.15.0/Classes/BTDataCollector.html new file mode 100644 index 0000000000..df28c2f323 --- /dev/null +++ b/6.15.0/Classes/BTDataCollector.html @@ -0,0 +1,604 @@ + + + + BTDataCollector Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTLocalPaymentClient.html b/6.15.0/Classes/BTLocalPaymentClient.html new file mode 100644 index 0000000000..08b7e14e32 --- /dev/null +++ b/6.15.0/Classes/BTLocalPaymentClient.html @@ -0,0 +1,575 @@ + + + + BTLocalPaymentClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTLocalPaymentRequest.html b/6.15.0/Classes/BTLocalPaymentRequest.html new file mode 100644 index 0000000000..cc3732d533 --- /dev/null +++ b/6.15.0/Classes/BTLocalPaymentRequest.html @@ -0,0 +1,814 @@ + + + + BTLocalPaymentRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTLocalPaymentResult.html b/6.15.0/Classes/BTLocalPaymentResult.html new file mode 100644 index 0000000000..8fe831e020 --- /dev/null +++ b/6.15.0/Classes/BTLocalPaymentResult.html @@ -0,0 +1,681 @@ + + + + BTLocalPaymentResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTPayPalAccountNonce.html b/6.15.0/Classes/BTPayPalAccountNonce.html new file mode 100644 index 0000000000..1173d2f190 --- /dev/null +++ b/6.15.0/Classes/BTPayPalAccountNonce.html @@ -0,0 +1,654 @@ + + + + BTPayPalAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTPayPalCheckoutRequest.html b/6.15.0/Classes/BTPayPalCheckoutRequest.html new file mode 100644 index 0000000000..c7caa3e42f --- /dev/null +++ b/6.15.0/Classes/BTPayPalCheckoutRequest.html @@ -0,0 +1,710 @@ + + + + BTPayPalCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

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.15.0/Classes/BTPayPalClient.html b/6.15.0/Classes/BTPayPalClient.html new file mode 100644 index 0000000000..d85d3d4e3f --- /dev/null +++ b/6.15.0/Classes/BTPayPalClient.html @@ -0,0 +1,741 @@ + + + + BTPayPalClient Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalClient

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

Initializer +

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

    Initialize a new PayPal client instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

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

    Parameters

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

    The API Client

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

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.15.0/Classes/BTPayPalCreditFinancing.html b/6.15.0/Classes/BTPayPalCreditFinancing.html new file mode 100644 index 0000000000..02cac8a76c --- /dev/null +++ b/6.15.0/Classes/BTPayPalCreditFinancing.html @@ -0,0 +1,562 @@ + + + + BTPayPalCreditFinancing Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTPayPalCreditFinancingAmount.html b/6.15.0/Classes/BTPayPalCreditFinancingAmount.html new file mode 100644 index 0000000000..ee22b292b0 --- /dev/null +++ b/6.15.0/Classes/BTPayPalCreditFinancingAmount.html @@ -0,0 +1,442 @@ + + + + BTPayPalCreditFinancingAmount Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTPayPalLineItem.html b/6.15.0/Classes/BTPayPalLineItem.html new file mode 100644 index 0000000000..25181caff2 --- /dev/null +++ b/6.15.0/Classes/BTPayPalLineItem.html @@ -0,0 +1,820 @@ + + + + BTPayPalLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTPayPalNativeCheckoutAccountNonce.html b/6.15.0/Classes/BTPayPalNativeCheckoutAccountNonce.html new file mode 100644 index 0000000000..2bc14ff83c --- /dev/null +++ b/6.15.0/Classes/BTPayPalNativeCheckoutAccountNonce.html @@ -0,0 +1,632 @@ + + + + BTPayPalNativeCheckoutAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTPayPalNativeCheckoutClient.html b/6.15.0/Classes/BTPayPalNativeCheckoutClient.html new file mode 100644 index 0000000000..90d9b8fec2 --- /dev/null +++ b/6.15.0/Classes/BTPayPalNativeCheckoutClient.html @@ -0,0 +1,713 @@ + + + + BTPayPalNativeCheckoutClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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)
    + +
    +
    +
    +

    Parameters

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

    The Braintree API client

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

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.15.0/Classes/BTPayPalNativeCheckoutRequest.html b/6.15.0/Classes/BTPayPalNativeCheckoutRequest.html new file mode 100644 index 0000000000..10b97595bd --- /dev/null +++ b/6.15.0/Classes/BTPayPalNativeCheckoutRequest.html @@ -0,0 +1,566 @@ + + + + BTPayPalNativeCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeCheckoutRequest

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

Options for the PayPal Checkout 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?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

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.15.0/Classes/BTPayPalNativeVaultRequest.html b/6.15.0/Classes/BTPayPalNativeVaultRequest.html new file mode 100644 index 0000000000..88eeec05c1 --- /dev/null +++ b/6.15.0/Classes/BTPayPalNativeVaultRequest.html @@ -0,0 +1,456 @@ + + + + BTPayPalNativeVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeVaultRequest

+
+
+ +
@objcMembers
+public class BTPayPalNativeVaultRequest : BTPayPalVaultRequest
+ +
+
+

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.15.0/Classes/BTPayPalRequest.html b/6.15.0/Classes/BTPayPalRequest.html new file mode 100644 index 0000000000..384c7a9329 --- /dev/null +++ b/6.15.0/Classes/BTPayPalRequest.html @@ -0,0 +1,709 @@ + + + + BTPayPalRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTPayPalVaultRequest.html b/6.15.0/Classes/BTPayPalVaultRequest.html new file mode 100644 index 0000000000..2b6c364d0e --- /dev/null +++ b/6.15.0/Classes/BTPayPalVaultRequest.html @@ -0,0 +1,483 @@ + + + + BTPayPalVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalVaultRequest

+
+
+ +
@objcMembers
+open class BTPayPalVaultRequest : 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.15.0/Classes/BTPaymentMethodNonce.html b/6.15.0/Classes/BTPaymentMethodNonce.html new file mode 100644 index 0000000000..5c8f594dc3 --- /dev/null +++ b/6.15.0/Classes/BTPaymentMethodNonce.html @@ -0,0 +1,678 @@ + + + + BTPaymentMethodNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTPaymentMethodNonceParser.html b/6.15.0/Classes/BTPaymentMethodNonceParser.html new file mode 100644 index 0000000000..c2b45e6248 --- /dev/null +++ b/6.15.0/Classes/BTPaymentMethodNonceParser.html @@ -0,0 +1,600 @@ + + + + BTPaymentMethodNonceParser Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTPostalAddress.html b/6.15.0/Classes/BTPostalAddress.html new file mode 100644 index 0000000000..fadb3029af --- /dev/null +++ b/6.15.0/Classes/BTPostalAddress.html @@ -0,0 +1,593 @@ + + + + BTPostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTSEPADirectDebitClient.html b/6.15.0/Classes/BTSEPADirectDebitClient.html new file mode 100644 index 0000000000..3330f39b4c --- /dev/null +++ b/6.15.0/Classes/BTSEPADirectDebitClient.html @@ -0,0 +1,580 @@ + + + + BTSEPADirectDebitClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTSEPADirectDebitNonce.html b/6.15.0/Classes/BTSEPADirectDebitNonce.html new file mode 100644 index 0000000000..0a9dea4f57 --- /dev/null +++ b/6.15.0/Classes/BTSEPADirectDebitNonce.html @@ -0,0 +1,472 @@ + + + + BTSEPADirectDebitNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTSEPADirectDebitRequest.html b/6.15.0/Classes/BTSEPADirectDebitRequest.html new file mode 100644 index 0000000000..d54b1f63f5 --- /dev/null +++ b/6.15.0/Classes/BTSEPADirectDebitRequest.html @@ -0,0 +1,725 @@ + + + + BTSEPADirectDebitRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureAdditionalInformation.html b/6.15.0/Classes/BTThreeDSecureAdditionalInformation.html new file mode 100644 index 0000000000..57cc65ab35 --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureAdditionalInformation.html @@ -0,0 +1,1714 @@ + + + + BTThreeDSecureAdditionalInformation Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureClient.html b/6.15.0/Classes/BTThreeDSecureClient.html new file mode 100644 index 0000000000..014098d199 --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureClient.html @@ -0,0 +1,799 @@ + + + + BTThreeDSecureClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureInfo.html b/6.15.0/Classes/BTThreeDSecureInfo.html new file mode 100644 index 0000000000..4c9ad36b99 --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureInfo.html @@ -0,0 +1,949 @@ + + + + BTThreeDSecureInfo Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureLookup.html b/6.15.0/Classes/BTThreeDSecureLookup.html new file mode 100644 index 0000000000..c898d9e4a4 --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureLookup.html @@ -0,0 +1,633 @@ + + + + BTThreeDSecureLookup Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecurePostalAddress.html b/6.15.0/Classes/BTThreeDSecurePostalAddress.html new file mode 100644 index 0000000000..d11e568b86 --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecurePostalAddress.html @@ -0,0 +1,697 @@ + + + + BTThreeDSecurePostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureRenderType.html b/6.15.0/Classes/BTThreeDSecureRenderType.html new file mode 100644 index 0000000000..eaf4e1e009 --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureRenderType.html @@ -0,0 +1,590 @@ + + + + BTThreeDSecureRenderType Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureRequest.html b/6.15.0/Classes/BTThreeDSecureRequest.html new file mode 100644 index 0000000000..ba94e66804 --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureRequest.html @@ -0,0 +1,962 @@ + + + + BTThreeDSecureRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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.15.0/Classes/BTThreeDSecureResult.html b/6.15.0/Classes/BTThreeDSecureResult.html new file mode 100644 index 0000000000..bb0bb29cfc --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureResult.html @@ -0,0 +1,481 @@ + + + + BTThreeDSecureResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureV2BaseCustomization.html b/6.15.0/Classes/BTThreeDSecureV2BaseCustomization.html new file mode 100644 index 0000000000..4dd607a2ef --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureV2BaseCustomization.html @@ -0,0 +1,481 @@ + + + + BTThreeDSecureV2BaseCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureV2ButtonCustomization.html b/6.15.0/Classes/BTThreeDSecureV2ButtonCustomization.html new file mode 100644 index 0000000000..dee881346c --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureV2ButtonCustomization.html @@ -0,0 +1,493 @@ + + + + BTThreeDSecureV2ButtonCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureV2LabelCustomization.html b/6.15.0/Classes/BTThreeDSecureV2LabelCustomization.html new file mode 100644 index 0000000000..29b7622f96 --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureV2LabelCustomization.html @@ -0,0 +1,523 @@ + + + + BTThreeDSecureV2LabelCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureV2TextBoxCustomization.html b/6.15.0/Classes/BTThreeDSecureV2TextBoxCustomization.html new file mode 100644 index 0000000000..aea01fe3eb --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureV2TextBoxCustomization.html @@ -0,0 +1,523 @@ + + + + BTThreeDSecureV2TextBoxCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureV2ToolbarCustomization.html b/6.15.0/Classes/BTThreeDSecureV2ToolbarCustomization.html new file mode 100644 index 0000000000..f35a0dc9d3 --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureV2ToolbarCustomization.html @@ -0,0 +1,523 @@ + + + + BTThreeDSecureV2ToolbarCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTThreeDSecureV2UICustomization.html b/6.15.0/Classes/BTThreeDSecureV2UICustomization.html new file mode 100644 index 0000000000..cf0519d38d --- /dev/null +++ b/6.15.0/Classes/BTThreeDSecureV2UICustomization.html @@ -0,0 +1,556 @@ + + + + BTThreeDSecureV2UICustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTVenmoAccountNonce.html b/6.15.0/Classes/BTVenmoAccountNonce.html new file mode 100644 index 0000000000..ae1dc81b24 --- /dev/null +++ b/6.15.0/Classes/BTVenmoAccountNonce.html @@ -0,0 +1,631 @@ + + + + BTVenmoAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTVenmoClient.html b/6.15.0/Classes/BTVenmoClient.html new file mode 100644 index 0000000000..a24be54f6d --- /dev/null +++ b/6.15.0/Classes/BTVenmoClient.html @@ -0,0 +1,642 @@ + + + + BTVenmoClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTVenmoLineItem.html b/6.15.0/Classes/BTVenmoLineItem.html new file mode 100644 index 0000000000..f5e55f8bb4 --- /dev/null +++ b/6.15.0/Classes/BTVenmoLineItem.html @@ -0,0 +1,730 @@ + + + + BTVenmoLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Classes/BTVenmoRequest.html b/6.15.0/Classes/BTVenmoRequest.html new file mode 100644 index 0000000000..d452fc98b6 --- /dev/null +++ b/6.15.0/Classes/BTVenmoRequest.html @@ -0,0 +1,896 @@ + + + + BTVenmoRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums.html b/6.15.0/Enums.html new file mode 100644 index 0000000000..4e112648ae --- /dev/null +++ b/6.15.0/Enums.html @@ -0,0 +1,1423 @@ + + + + Enumerations Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTClientTokenError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a client token.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTClientTokenError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.15.0/Enums/BTAPIClientError.html b/6.15.0/Enums/BTAPIClientError.html new file mode 100644 index 0000000000..abd99fa661 --- /dev/null +++ b/6.15.0/Enums/BTAPIClientError.html @@ -0,0 +1,567 @@ + + + + BTAPIClientError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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.15.0/Enums/BTAmericanExpressError.html b/6.15.0/Enums/BTAmericanExpressError.html new file mode 100644 index 0000000000..1d8d4a9ee9 --- /dev/null +++ b/6.15.0/Enums/BTAmericanExpressError.html @@ -0,0 +1,567 @@ + + + + BTAmericanExpressError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTAnalyticsServiceError.html b/6.15.0/Enums/BTAnalyticsServiceError.html new file mode 100644 index 0000000000..0d211aaa61 --- /dev/null +++ b/6.15.0/Enums/BTAnalyticsServiceError.html @@ -0,0 +1,501 @@ + + + + BTAnalyticsServiceError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTApplePayError.html b/6.15.0/Enums/BTApplePayError.html new file mode 100644 index 0000000000..e284993641 --- /dev/null +++ b/6.15.0/Enums/BTApplePayError.html @@ -0,0 +1,600 @@ + + + + BTApplePayError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTCardError.html b/6.15.0/Enums/BTCardError.html new file mode 100644 index 0000000000..e8b3084aa4 --- /dev/null +++ b/6.15.0/Enums/BTCardError.html @@ -0,0 +1,674 @@ + + + + BTCardError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTCardNetwork.html b/6.15.0/Enums/BTCardNetwork.html new file mode 100644 index 0000000000..0c0a022800 --- /dev/null +++ b/6.15.0/Enums/BTCardNetwork.html @@ -0,0 +1,832 @@ + + + + BTCardNetwork Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTClientTokenError.html b/6.15.0/Enums/BTClientTokenError.html new file mode 100644 index 0000000000..2d37fd125c --- /dev/null +++ b/6.15.0/Enums/BTClientTokenError.html @@ -0,0 +1,633 @@ + + + + BTClientTokenError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTDataCollectorError.html b/6.15.0/Enums/BTDataCollectorError.html new file mode 100644 index 0000000000..1ff6d3c5c0 --- /dev/null +++ b/6.15.0/Enums/BTDataCollectorError.html @@ -0,0 +1,567 @@ + + + + BTDataCollectorError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTHTTPError.html b/6.15.0/Enums/BTHTTPError.html new file mode 100644 index 0000000000..63e7d5eeca --- /dev/null +++ b/6.15.0/Enums/BTHTTPError.html @@ -0,0 +1,939 @@ + + + + BTHTTPError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTJSONError.html b/6.15.0/Enums/BTJSONError.html new file mode 100644 index 0000000000..ab77dc3f04 --- /dev/null +++ b/6.15.0/Enums/BTJSONError.html @@ -0,0 +1,566 @@ + + + + BTJSONError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTLocalPaymentError.html b/6.15.0/Enums/BTLocalPaymentError.html new file mode 100644 index 0000000000..2ba9429715 --- /dev/null +++ b/6.15.0/Enums/BTLocalPaymentError.html @@ -0,0 +1,873 @@ + + + + BTLocalPaymentError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTPayPalError.html b/6.15.0/Enums/BTPayPalError.html new file mode 100644 index 0000000000..eb32ef12b5 --- /dev/null +++ b/6.15.0/Enums/BTPayPalError.html @@ -0,0 +1,840 @@ + + + + BTPayPalError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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 approval or redirect URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidURL
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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.15.0/Enums/BTPayPalLineItemKind.html b/6.15.0/Enums/BTPayPalLineItemKind.html new file mode 100644 index 0000000000..3199f6feb1 --- /dev/null +++ b/6.15.0/Enums/BTPayPalLineItemKind.html @@ -0,0 +1,442 @@ + + + + BTPayPalLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTPayPalLineItemUPCType.html b/6.15.0/Enums/BTPayPalLineItemUPCType.html new file mode 100644 index 0000000000..b641975bc0 --- /dev/null +++ b/6.15.0/Enums/BTPayPalLineItemUPCType.html @@ -0,0 +1,622 @@ + + + + BTPayPalLineItemUPCType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTPayPalLocaleCode.html b/6.15.0/Enums/BTPayPalLocaleCode.html new file mode 100644 index 0000000000..5deec9a464 --- /dev/null +++ b/6.15.0/Enums/BTPayPalLocaleCode.html @@ -0,0 +1,1194 @@ + + + + BTPayPalLocaleCode Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTPayPalNativeCheckoutError.html b/6.15.0/Enums/BTPayPalNativeCheckoutError.html new file mode 100644 index 0000000000..b6d05ee37b --- /dev/null +++ b/6.15.0/Enums/BTPayPalNativeCheckoutError.html @@ -0,0 +1,939 @@ + + + + BTPayPalNativeCheckoutError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTPayPalPaymentType.html b/6.15.0/Enums/BTPayPalPaymentType.html new file mode 100644 index 0000000000..ab938be30b --- /dev/null +++ b/6.15.0/Enums/BTPayPalPaymentType.html @@ -0,0 +1,441 @@ + + + + BTPayPalPaymentType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTPayPalRequestIntent.html b/6.15.0/Enums/BTPayPalRequestIntent.html new file mode 100644 index 0000000000..2091a62bb3 --- /dev/null +++ b/6.15.0/Enums/BTPayPalRequestIntent.html @@ -0,0 +1,510 @@ + + + + BTPayPalRequestIntent Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTPayPalRequestLandingPageType.html b/6.15.0/Enums/BTPayPalRequestLandingPageType.html new file mode 100644 index 0000000000..28fddca693 --- /dev/null +++ b/6.15.0/Enums/BTPayPalRequestLandingPageType.html @@ -0,0 +1,472 @@ + + + + BTPayPalRequestLandingPageType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTPayPalRequestUserAction.html b/6.15.0/Enums/BTPayPalRequestUserAction.html new file mode 100644 index 0000000000..67907cce79 --- /dev/null +++ b/6.15.0/Enums/BTPayPalRequestUserAction.html @@ -0,0 +1,449 @@ + + + + BTPayPalRequestUserAction Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTSEPADirectDebitError.html b/6.15.0/Enums/BTSEPADirectDebitError.html new file mode 100644 index 0000000000..285d3a5214 --- /dev/null +++ b/6.15.0/Enums/BTSEPADirectDebitError.html @@ -0,0 +1,765 @@ + + + + BTSEPADirectDebitError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTSEPADirectDebitMandateType.html b/6.15.0/Enums/BTSEPADirectDebitMandateType.html new file mode 100644 index 0000000000..92fdf44b7d --- /dev/null +++ b/6.15.0/Enums/BTSEPADirectDebitMandateType.html @@ -0,0 +1,440 @@ + + + + BTSEPADirectDebitMandateType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTThreeDSecureAccountType.html b/6.15.0/Enums/BTThreeDSecureAccountType.html new file mode 100644 index 0000000000..c5721db716 --- /dev/null +++ b/6.15.0/Enums/BTThreeDSecureAccountType.html @@ -0,0 +1,472 @@ + + + + BTThreeDSecureAccountType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTThreeDSecureCardAddChallenge.html b/6.15.0/Enums/BTThreeDSecureCardAddChallenge.html new file mode 100644 index 0000000000..844ac72994 --- /dev/null +++ b/6.15.0/Enums/BTThreeDSecureCardAddChallenge.html @@ -0,0 +1,472 @@ + + + + BTThreeDSecureCardAddChallenge Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTThreeDSecureError.html b/6.15.0/Enums/BTThreeDSecureError.html new file mode 100644 index 0000000000..894b3805f4 --- /dev/null +++ b/6.15.0/Enums/BTThreeDSecureError.html @@ -0,0 +1,806 @@ + + + + BTThreeDSecureError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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.15.0/Enums/BTThreeDSecureRequestedExemptionType.html b/6.15.0/Enums/BTThreeDSecureRequestedExemptionType.html new file mode 100644 index 0000000000..35a114e76c --- /dev/null +++ b/6.15.0/Enums/BTThreeDSecureRequestedExemptionType.html @@ -0,0 +1,532 @@ + + + + BTThreeDSecureRequestedExemptionType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTThreeDSecureShippingMethod.html b/6.15.0/Enums/BTThreeDSecureShippingMethod.html new file mode 100644 index 0000000000..47edadedc1 --- /dev/null +++ b/6.15.0/Enums/BTThreeDSecureShippingMethod.html @@ -0,0 +1,592 @@ + + + + BTThreeDSecureShippingMethod Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTThreeDSecureUIType.html b/6.15.0/Enums/BTThreeDSecureUIType.html new file mode 100644 index 0000000000..1edf01270d --- /dev/null +++ b/6.15.0/Enums/BTThreeDSecureUIType.html @@ -0,0 +1,472 @@ + + + + BTThreeDSecureUIType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTThreeDSecureV2ButtonType.html b/6.15.0/Enums/BTThreeDSecureV2ButtonType.html new file mode 100644 index 0000000000..29e5f21bcb --- /dev/null +++ b/6.15.0/Enums/BTThreeDSecureV2ButtonType.html @@ -0,0 +1,532 @@ + + + + BTThreeDSecureV2ButtonType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTVenmoAppSwitchError.html b/6.15.0/Enums/BTVenmoAppSwitchError.html new file mode 100644 index 0000000000..9afae0aad6 --- /dev/null +++ b/6.15.0/Enums/BTVenmoAppSwitchError.html @@ -0,0 +1,501 @@ + + + + BTVenmoAppSwitchError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTVenmoError.html b/6.15.0/Enums/BTVenmoError.html new file mode 100644 index 0000000000..dd2c885434 --- /dev/null +++ b/6.15.0/Enums/BTVenmoError.html @@ -0,0 +1,864 @@ + + + + BTVenmoError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTVenmoLineItemKind.html b/6.15.0/Enums/BTVenmoLineItemKind.html new file mode 100644 index 0000000000..57e2c9c873 --- /dev/null +++ b/6.15.0/Enums/BTVenmoLineItemKind.html @@ -0,0 +1,442 @@ + + + + BTVenmoLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Enums/BTVenmoPaymentMethodUsage.html b/6.15.0/Enums/BTVenmoPaymentMethodUsage.html new file mode 100644 index 0000000000..851046dad1 --- /dev/null +++ b/6.15.0/Enums/BTVenmoPaymentMethodUsage.html @@ -0,0 +1,442 @@ + + + + BTVenmoPaymentMethodUsage Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Extensions.html b/6.15.0/Extensions.html new file mode 100644 index 0000000000..1081f42703 --- /dev/null +++ b/6.15.0/Extensions.html @@ -0,0 +1,440 @@ + + + + Extensions Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Extensions/BTThreeDSecureV2Provider.html b/6.15.0/Extensions/BTThreeDSecureV2Provider.html new file mode 100644 index 0000000000..27215426b9 --- /dev/null +++ b/6.15.0/Extensions/BTThreeDSecureV2Provider.html @@ -0,0 +1,413 @@ + + + + BTThreeDSecureV2Provider Extension Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2Provider

+
+
+ +
extension BTThreeDSecureV2Provider: CardinalValidationDelegate
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.15.0/Protocols.html b/6.15.0/Protocols.html new file mode 100644 index 0000000000..82586c6ba2 --- /dev/null +++ b/6.15.0/Protocols.html @@ -0,0 +1,434 @@ + + + + Protocols Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Protocols

+

The following protocols are available globally.

+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.15.0/Protocols/BTLocalPaymentRequestDelegate.html b/6.15.0/Protocols/BTLocalPaymentRequestDelegate.html new file mode 100644 index 0000000000..69edf6b788 --- /dev/null +++ b/6.15.0/Protocols/BTLocalPaymentRequestDelegate.html @@ -0,0 +1,414 @@ + + + + BTLocalPaymentRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/Protocols/BTThreeDSecureRequestDelegate.html b/6.15.0/Protocols/BTThreeDSecureRequestDelegate.html new file mode 100644 index 0000000000..beb5ec0f3f --- /dev/null +++ b/6.15.0/Protocols/BTThreeDSecureRequestDelegate.html @@ -0,0 +1,414 @@ + + + + BTThreeDSecureRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/badge.svg b/6.15.0/badge.svg new file mode 100644 index 0000000000..a096feca83 --- /dev/null +++ b/6.15.0/badge.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + documentation + + + documentation + + + 100% + + + 100% + + + diff --git a/6.15.0/css/highlight.css b/6.15.0/css/highlight.css new file mode 100644 index 0000000000..c170357ce7 --- /dev/null +++ b/6.15.0/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.15.0/css/jazzy.css b/6.15.0/css/jazzy.css new file mode 100644 index 0000000000..c7bb9fe22f --- /dev/null +++ b/6.15.0/css/jazzy.css @@ -0,0 +1,404 @@ +/*! 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; } + .item .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.15.0/docsets/Braintree.docset/Contents/Info.plist b/6.15.0/docsets/Braintree.docset/Contents/Info.plist new file mode 100644 index 0000000000..3d44f43bfe --- /dev/null +++ b/6.15.0/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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html new file mode 100644 index 0000000000..bbc1b98063 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes.html @@ -0,0 +1,2092 @@ + + + + Classes Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTClientToken + +
    +
    +
    +
    +
    +
    +

    An authorization string used to initialize the Braintree SDK

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
     @objcMembers public class BTClientToken : NSObject, NSCoding, NSCopying
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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 : BTPayPalVaultRequest
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    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
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    +

    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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTPayPalVaultRequest + +
    +
    +
    +
    +
    +
    +

    Options for the PayPal Vault flow.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objcMembers
    +open class BTPayPalVaultRequest : BTPayPalRequest
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html new file mode 100644 index 0000000000..e279946c7b --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAPIClient.html @@ -0,0 +1,648 @@ + + + + BTAPIClient Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTAPIClient

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

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 +

+
+
+
    +
  • +
    + + + + tokenizationKey + +
    +
    +
    +
    +
    +
    +

    The tokenization key used to authorize the APIClient

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var tokenizationKey: String?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + clientToken + +
    +
    +
    +
    +
    +
    +

    The client token used to authorize the APIClient

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public var clientToken: BTClientToken?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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 convenience 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html new file mode 100644 index 0000000000..492f4b1c6f --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressClient.html @@ -0,0 +1,505 @@ + + + + BTAmericanExpressClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html new file mode 100644 index 0000000000..22ae561668 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAmericanExpressRewardsBalance.html @@ -0,0 +1,622 @@ + + + + BTAmericanExpressRewardsBalance Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html new file mode 100644 index 0000000000..f981d16494 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAppContextSwitcher.html @@ -0,0 +1,610 @@ + + + + BTAppContextSwitcher Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.

    + +
    +
    +

    Declaration

    +
    +

    Swift

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

Public Methods +

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

    Determine whether the return URL can be handled.

    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @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

    +
    @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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html new file mode 100644 index 0000000000..d4dea1ff50 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayCardNonce.html @@ -0,0 +1,412 @@ + + + + BTApplePayCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html new file mode 100644 index 0000000000..62a586f969 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTApplePayClient.html @@ -0,0 +1,672 @@ + + + + BTApplePayClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html new file mode 100644 index 0000000000..48540818ff --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTAuthenticationInsight.html @@ -0,0 +1,423 @@ + + + + BTAuthenticationInsight Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html new file mode 100644 index 0000000000..c43c9d8c89 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTBinData.html @@ -0,0 +1,683 @@ + + + + BTBinData Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html new file mode 100644 index 0000000000..ada4f73d2f --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCard.html @@ -0,0 +1,1041 @@ + + + + BTCard Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html new file mode 100644 index 0000000000..f48facd390 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardClient.html @@ -0,0 +1,578 @@ + + + + BTCardClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html new file mode 100644 index 0000000000..00e5d254c2 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardNonce.html @@ -0,0 +1,692 @@ + + + + BTCardNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html new file mode 100644 index 0000000000..a5d9fe316b --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTCardRequest.html @@ -0,0 +1,461 @@ + + + + BTCardRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTClientToken.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTClientToken.html new file mode 100644 index 0000000000..e74a116a6d --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTClientToken.html @@ -0,0 +1,533 @@ + + + + BTClientToken Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTClientToken

+
+
+ +
 @objcMembers public class BTClientToken : NSObject, NSCoding, NSCopying
+ +
+
+

An authorization string used to initialize the Braintree SDK

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

NSCoding conformance +

+
+
+
    +
  • +
    + + + + encode(with:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public func encode(with coder: NSCoder)
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + init(coder:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public required convenience init?(coder: NSCoder)
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

NSCopying conformance +

+
+
+
    +
  • +
    + + + + copy(with:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    @objc(copyWithZone:)
    +public func copy(with zone: NSZone? = nil) -> Any
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

NSObject override +

+
+
+
    +
  • +
    + + + + isEqual(_:) + +
    +
    +
    +
    +
    +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public override func isEqual(_ object: Any?) -> Bool
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html new file mode 100644 index 0000000000..df28c2f323 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTDataCollector.html @@ -0,0 +1,604 @@ + + + + BTDataCollector Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html new file mode 100644 index 0000000000..08b7e14e32 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentClient.html @@ -0,0 +1,575 @@ + + + + BTLocalPaymentClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html new file mode 100644 index 0000000000..cc3732d533 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentRequest.html @@ -0,0 +1,814 @@ + + + + BTLocalPaymentRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html new file mode 100644 index 0000000000..8fe831e020 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTLocalPaymentResult.html @@ -0,0 +1,681 @@ + + + + BTLocalPaymentResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html new file mode 100644 index 0000000000..1173d2f190 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalAccountNonce.html @@ -0,0 +1,654 @@ + + + + BTPayPalAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html new file mode 100644 index 0000000000..c7caa3e42f --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCheckoutRequest.html @@ -0,0 +1,710 @@ + + + + BTPayPalCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html new file mode 100644 index 0000000000..d85d3d4e3f --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalClient.html @@ -0,0 +1,741 @@ + + + + BTPayPalClient Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalClient

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

Initializer +

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

    Initialize a new PayPal client instance.

    + +
    +
    +

    Declaration

    +
    +

    Swift

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

    Parameters

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

    The API Client

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

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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html new file mode 100644 index 0000000000..02cac8a76c --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancing.html @@ -0,0 +1,562 @@ + + + + BTPayPalCreditFinancing Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html new file mode 100644 index 0000000000..ee22b292b0 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalCreditFinancingAmount.html @@ -0,0 +1,442 @@ + + + + BTPayPalCreditFinancingAmount Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html new file mode 100644 index 0000000000..25181caff2 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalLineItem.html @@ -0,0 +1,820 @@ + + + + BTPayPalLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html new file mode 100644 index 0000000000..2bc14ff83c --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutAccountNonce.html @@ -0,0 +1,632 @@ + + + + BTPayPalNativeCheckoutAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html new file mode 100644 index 0000000000..90d9b8fec2 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutClient.html @@ -0,0 +1,713 @@ + + + + BTPayPalNativeCheckoutClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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)
    + +
    +
    +
    +

    Parameters

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

    The Braintree API client

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

Public Methods +

+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html new file mode 100644 index 0000000000..10b97595bd --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeCheckoutRequest.html @@ -0,0 +1,566 @@ + + + + BTPayPalNativeCheckoutRequest Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeCheckoutRequest

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

Options for the PayPal Checkout 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?
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ + +
+ +

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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html new file mode 100644 index 0000000000..88eeec05c1 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalNativeVaultRequest.html @@ -0,0 +1,456 @@ + + + + BTPayPalNativeVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalNativeVaultRequest

+
+
+ +
@objcMembers
+public class BTPayPalNativeVaultRequest : BTPayPalVaultRequest
+ +
+
+

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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html new file mode 100644 index 0000000000..384c7a9329 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalRequest.html @@ -0,0 +1,709 @@ + + + + BTPayPalRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html new file mode 100644 index 0000000000..2b6c364d0e --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPayPalVaultRequest.html @@ -0,0 +1,483 @@ + + + + BTPayPalVaultRequest Class Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTPayPalVaultRequest

+
+
+ +
@objcMembers
+open class BTPayPalVaultRequest : 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html new file mode 100644 index 0000000000..5c8f594dc3 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonce.html @@ -0,0 +1,678 @@ + + + + BTPaymentMethodNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html new file mode 100644 index 0000000000..c2b45e6248 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPaymentMethodNonceParser.html @@ -0,0 +1,600 @@ + + + + BTPaymentMethodNonceParser Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html new file mode 100644 index 0000000000..fadb3029af --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTPostalAddress.html @@ -0,0 +1,593 @@ + + + + BTPostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html new file mode 100644 index 0000000000..3330f39b4c --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitClient.html @@ -0,0 +1,580 @@ + + + + BTSEPADirectDebitClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html new file mode 100644 index 0000000000..0a9dea4f57 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitNonce.html @@ -0,0 +1,472 @@ + + + + BTSEPADirectDebitNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html new file mode 100644 index 0000000000..d54b1f63f5 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTSEPADirectDebitRequest.html @@ -0,0 +1,725 @@ + + + + BTSEPADirectDebitRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html new file mode 100644 index 0000000000..57cc65ab35 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureAdditionalInformation.html @@ -0,0 +1,1714 @@ + + + + BTThreeDSecureAdditionalInformation Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html new file mode 100644 index 0000000000..014098d199 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureClient.html @@ -0,0 +1,799 @@ + + + + BTThreeDSecureClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html new file mode 100644 index 0000000000..4c9ad36b99 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureInfo.html @@ -0,0 +1,949 @@ + + + + BTThreeDSecureInfo Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html new file mode 100644 index 0000000000..c898d9e4a4 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureLookup.html @@ -0,0 +1,633 @@ + + + + BTThreeDSecureLookup Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html new file mode 100644 index 0000000000..d11e568b86 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecurePostalAddress.html @@ -0,0 +1,697 @@ + + + + BTThreeDSecurePostalAddress Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html new file mode 100644 index 0000000000..eaf4e1e009 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRenderType.html @@ -0,0 +1,590 @@ + + + + BTThreeDSecureRenderType Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html new file mode 100644 index 0000000000..ba94e66804 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureRequest.html @@ -0,0 +1,962 @@ + + + + BTThreeDSecureRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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?
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html new file mode 100644 index 0000000000..bb0bb29cfc --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureResult.html @@ -0,0 +1,481 @@ + + + + BTThreeDSecureResult Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html new file mode 100644 index 0000000000..4dd607a2ef --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2BaseCustomization.html @@ -0,0 +1,481 @@ + + + + BTThreeDSecureV2BaseCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html new file mode 100644 index 0000000000..dee881346c --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ButtonCustomization.html @@ -0,0 +1,493 @@ + + + + BTThreeDSecureV2ButtonCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html new file mode 100644 index 0000000000..29b7622f96 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2LabelCustomization.html @@ -0,0 +1,523 @@ + + + + BTThreeDSecureV2LabelCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html new file mode 100644 index 0000000000..aea01fe3eb --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2TextBoxCustomization.html @@ -0,0 +1,523 @@ + + + + BTThreeDSecureV2TextBoxCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html new file mode 100644 index 0000000000..f35a0dc9d3 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2ToolbarCustomization.html @@ -0,0 +1,523 @@ + + + + BTThreeDSecureV2ToolbarCustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html new file mode 100644 index 0000000000..cf0519d38d --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTThreeDSecureV2UICustomization.html @@ -0,0 +1,556 @@ + + + + BTThreeDSecureV2UICustomization Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html new file mode 100644 index 0000000000..ae1dc81b24 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoAccountNonce.html @@ -0,0 +1,631 @@ + + + + BTVenmoAccountNonce Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html new file mode 100644 index 0000000000..a24be54f6d --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoClient.html @@ -0,0 +1,642 @@ + + + + BTVenmoClient Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html new file mode 100644 index 0000000000..f5e55f8bb4 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoLineItem.html @@ -0,0 +1,730 @@ + + + + BTVenmoLineItem Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html new file mode 100644 index 0000000000..d452fc98b6 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Classes/BTVenmoRequest.html @@ -0,0 +1,896 @@ + + + + BTVenmoRequest Class Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html new file mode 100644 index 0000000000..4e112648ae --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums.html @@ -0,0 +1,1423 @@ + + + + Enumerations Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + BTClientTokenError + +
    +
    +
    +
    +
    +
    +

    Error codes associated with a client token.

    + + See more +
    +
    +

    Declaration

    +
    +

    Swift

    +
    public enum BTClientTokenError : Error, CustomNSError, LocalizedError, Equatable
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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
    + +
    +
    + +
    +
    +
  • +
+
+
+
+ +
+
+ + + diff --git a/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html new file mode 100644 index 0000000000..abd99fa661 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAPIClientError.html @@ -0,0 +1,567 @@ + + + + BTAPIClientError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html new file mode 100644 index 0000000000..1d8d4a9ee9 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAmericanExpressError.html @@ -0,0 +1,567 @@ + + + + BTAmericanExpressError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html new file mode 100644 index 0000000000..0d211aaa61 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTAnalyticsServiceError.html @@ -0,0 +1,501 @@ + + + + BTAnalyticsServiceError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html new file mode 100644 index 0000000000..e284993641 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTApplePayError.html @@ -0,0 +1,600 @@ + + + + BTApplePayError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html new file mode 100644 index 0000000000..e8b3084aa4 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardError.html @@ -0,0 +1,674 @@ + + + + BTCardError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html new file mode 100644 index 0000000000..0c0a022800 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTCardNetwork.html @@ -0,0 +1,832 @@ + + + + BTCardNetwork Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html new file mode 100644 index 0000000000..2d37fd125c --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTClientTokenError.html @@ -0,0 +1,633 @@ + + + + BTClientTokenError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html new file mode 100644 index 0000000000..1ff6d3c5c0 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTDataCollectorError.html @@ -0,0 +1,567 @@ + + + + BTDataCollectorError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html new file mode 100644 index 0000000000..63e7d5eeca --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTHTTPError.html @@ -0,0 +1,939 @@ + + + + BTHTTPError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html new file mode 100644 index 0000000000..ab77dc3f04 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTJSONError.html @@ -0,0 +1,566 @@ + + + + BTJSONError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html new file mode 100644 index 0000000000..2ba9429715 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTLocalPaymentError.html @@ -0,0 +1,873 @@ + + + + BTLocalPaymentError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html new file mode 100644 index 0000000000..eb32ef12b5 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalError.html @@ -0,0 +1,840 @@ + + + + BTPayPalError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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 approval or redirect URL is invalid
    2. +
    + +
    +
    +

    Declaration

    +
    +

    Swift

    +
    case invalidURL
    + +
    +
    + +
    +
    +
  • +
  • + +
    +
    +
    +
    +
    + +
      +
    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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html new file mode 100644 index 0000000000..3199f6feb1 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemKind.html @@ -0,0 +1,442 @@ + + + + BTPayPalLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html new file mode 100644 index 0000000000..b641975bc0 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLineItemUPCType.html @@ -0,0 +1,622 @@ + + + + BTPayPalLineItemUPCType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html new file mode 100644 index 0000000000..5deec9a464 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalLocaleCode.html @@ -0,0 +1,1194 @@ + + + + BTPayPalLocaleCode Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html new file mode 100644 index 0000000000..b6d05ee37b --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalNativeCheckoutError.html @@ -0,0 +1,939 @@ + + + + BTPayPalNativeCheckoutError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html new file mode 100644 index 0000000000..ab938be30b --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalPaymentType.html @@ -0,0 +1,441 @@ + + + + BTPayPalPaymentType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html new file mode 100644 index 0000000000..2091a62bb3 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestIntent.html @@ -0,0 +1,510 @@ + + + + BTPayPalRequestIntent Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html new file mode 100644 index 0000000000..28fddca693 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestLandingPageType.html @@ -0,0 +1,472 @@ + + + + BTPayPalRequestLandingPageType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html new file mode 100644 index 0000000000..67907cce79 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTPayPalRequestUserAction.html @@ -0,0 +1,449 @@ + + + + BTPayPalRequestUserAction Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html new file mode 100644 index 0000000000..285d3a5214 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitError.html @@ -0,0 +1,765 @@ + + + + BTSEPADirectDebitError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html new file mode 100644 index 0000000000..92fdf44b7d --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTSEPADirectDebitMandateType.html @@ -0,0 +1,440 @@ + + + + BTSEPADirectDebitMandateType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html new file mode 100644 index 0000000000..c5721db716 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureAccountType.html @@ -0,0 +1,472 @@ + + + + BTThreeDSecureAccountType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html new file mode 100644 index 0000000000..844ac72994 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureCardAddChallenge.html @@ -0,0 +1,472 @@ + + + + BTThreeDSecureCardAddChallenge Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html new file mode 100644 index 0000000000..894b3805f4 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureError.html @@ -0,0 +1,806 @@ + + + + BTThreeDSecureError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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
    + +
    +
    + +
    +
    +
  • +
  • +
    + + + + 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html new file mode 100644 index 0000000000..35a114e76c --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureRequestedExemptionType.html @@ -0,0 +1,532 @@ + + + + BTThreeDSecureRequestedExemptionType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html new file mode 100644 index 0000000000..47edadedc1 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureShippingMethod.html @@ -0,0 +1,592 @@ + + + + BTThreeDSecureShippingMethod Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html new file mode 100644 index 0000000000..1edf01270d --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureUIType.html @@ -0,0 +1,472 @@ + + + + BTThreeDSecureUIType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html new file mode 100644 index 0000000000..29e5f21bcb --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTThreeDSecureV2ButtonType.html @@ -0,0 +1,532 @@ + + + + BTThreeDSecureV2ButtonType Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html new file mode 100644 index 0000000000..9afae0aad6 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoAppSwitchError.html @@ -0,0 +1,501 @@ + + + + BTVenmoAppSwitchError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html new file mode 100644 index 0000000000..dd2c885434 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoError.html @@ -0,0 +1,864 @@ + + + + BTVenmoError Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html new file mode 100644 index 0000000000..57e2c9c873 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoLineItemKind.html @@ -0,0 +1,442 @@ + + + + BTVenmoLineItemKind Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html new file mode 100644 index 0000000000..851046dad1 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Enums/BTVenmoPaymentMethodUsage.html @@ -0,0 +1,442 @@ + + + + BTVenmoPaymentMethodUsage Enumeration Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html new file mode 100644 index 0000000000..1081f42703 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Extensions.html @@ -0,0 +1,440 @@ + + + + Extensions Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html new file mode 100644 index 0000000000..27215426b9 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Extensions/BTThreeDSecureV2Provider.html @@ -0,0 +1,413 @@ + + + + BTThreeDSecureV2Provider Extension Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

BTThreeDSecureV2Provider

+
+
+ +
extension BTThreeDSecureV2Provider: CardinalValidationDelegate
+ +
+
+ + +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html new file mode 100644 index 0000000000..82586c6ba2 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols.html @@ -0,0 +1,434 @@ + + + + Protocols Reference + + + + + + + + + + + + + + + + +
+

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

+ +
+
+ +
+
+ +

+ + GitHub + View on GitHub + +

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

Protocols

+

The following protocols are available globally.

+ +
+
+ +
+
+
+ +
+
+
+ +
+
+ + + diff --git a/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html new file mode 100644 index 0000000000..69edf6b788 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTLocalPaymentRequestDelegate.html @@ -0,0 +1,414 @@ + + + + BTLocalPaymentRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html new file mode 100644 index 0000000000..beb5ec0f3f --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/Protocols/BTThreeDSecureRequestDelegate.html @@ -0,0 +1,414 @@ + + + + BTThreeDSecureRequestDelegate Protocol Reference + + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/css/highlight.css new file mode 100644 index 0000000000..c170357ce7 --- /dev/null +++ b/6.15.0/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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css new file mode 100644 index 0000000000..c7bb9fe22f --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/css/jazzy.css @@ -0,0 +1,404 @@ +/*! 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; } + .item .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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/img/carat.png b/6.15.0/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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/img/dash.png b/6.15.0/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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/index.html b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/index.html new file mode 100644 index 0000000000..e0cb065b85 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/index.html @@ -0,0 +1,498 @@ + + + + Braintree Reference + + + + + + + + + + + + + + + +
+

+ + Braintree 6.15.0 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.

+ +

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 14.3+ and Swift 5.8+.

+

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. Run pod install + +
      +
    • There is a known M1 mac issue with CocoaPods. See this solution to resolve ffi dependency issues.
    • +
  2. +
  3. Resolve the Swift Package Manager packages if needed: File > Packages > Resolve Package Versions or by running swift package resolve in Terminal
  4. +
  5. Open Braintree.xcworkspace in Xcode
  6. +
  7. Select the Demo scheme, and then run
  8. +
+ +

Xcode 14+ 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.js new file mode 100755 index 0000000000..198441660c --- /dev/null +++ b/6.15.0/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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/jazzy.search.js new file mode 100644 index 0000000000..359cdbb8b2 --- /dev/null +++ b/6.15.0/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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/jquery.min.js new file mode 100644 index 0000000000..7f37b5d991 --- /dev/null +++ b/6.15.0/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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js new file mode 100644 index 0000000000..3a2d2ab031 --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/js/typeahead.jquery.js @@ -0,0 +1,1694 @@ +/*! + * typeahead.js 1.3.1 + * https://github.com/corejavascript/typeahead.js + * Copyright 2013-2020 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", + 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.15.0/docsets/Braintree.docset/Contents/Resources/Documents/search.json b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/search.json new file mode 100644 index 0000000000..d0c5ab8a1e --- /dev/null +++ b/6.15.0/docsets/Braintree.docset/Contents/Resources/Documents/search.json @@ -0,0 +1 @@ +{"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"},"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/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:15BraintreePayPal05BTPayC5ErrorO10invalidURLyA2CmF":{"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: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: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/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/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: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/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/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/BTClientTokenError.html":{"name":"BTClientTokenError","abstract":"\u003cp\u003eError codes associated with a client token.\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"},"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)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":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)initWithOfferCredit:":{"name":"init(offerCredit:)","abstract":"\u003cp\u003eInitializes a PayPal Native Vault request\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"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)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(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)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(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":"BTPayPalNativeCheckoutRequest"},"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/BTClientToken.html#/c:@M@BraintreeCore@objc(cs)BTClientToken(im)encodeWithCoder:":{"name":"encode(with:)","parent_name":"BTClientToken"},"Classes/BTClientToken.html#/c:@M@BraintreeCore@objc(cs)BTClientToken(im)initWithCoder:":{"name":"init(coder:)","parent_name":"BTClientToken"},"Classes/BTClientToken.html#/c:@M@BraintreeCore@objc(cs)BTClientToken(im)copyWithZone:":{"name":"copy(with:)","parent_name":"BTClientToken"},"Classes/BTClientToken.html#/c:@M@BraintreeCore@objc(cs)BTClientToken(im)isEqual:":{"name":"isEqual(_:)","parent_name":"BTClientToken"},"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#/c:@M@BraintreeCore@objc(cs)BTAPIClient(py)tokenizationKey":{"name":"tokenizationKey","abstract":"\u003cp\u003eThe tokenization key used to authorize the APIClient\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(py)clientToken":{"name":"clientToken","abstract":"\u003cp\u003eThe client token 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/BTClientToken.html":{"name":"BTClientToken","abstract":"\u003cp\u003eAn authorization string used to initialize the Braintree SDK\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/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.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"}} \ No newline at end of file diff --git a/6.15.0/docsets/Braintree.docset/Contents/Resources/docSet.dsidx b/6.15.0/docsets/Braintree.docset/Contents/Resources/docSet.dsidx new file mode 100644 index 0000000000000000000000000000000000000000..021e62d418ef1d64e1a19dcd5013c105748c8f8f GIT binary patch literal 221184 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 literal 0 HcmV?d00001 diff --git a/6.15.0/docsets/Braintree.tgz b/6.15.0/docsets/Braintree.tgz new file mode 100644 index 0000000000000000000000000000000000000000..9f1ca9c9ce9ed180eefa531046343f2729a95e4e GIT binary patch literal 306837 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 q$k#FOr6Nqk`-(`c%ktc^EM?DLl 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 eMCYiB4R)rm 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%0D6lS@2_~Jfoola{cf$OLQg+# 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ɘpcJg1y$6m}^!qk+nW*w^X= z7MW6HWXG8RIecCQAEe+O^5W!4vzy=LrcJ^yY~Dmh|Io9Is3NjrmtL)01ftcDS9d z%3-|zEAx1E(1YXZc(!uBJw3XOoQg)@Q)x+C60CdBog+|iXFq|0+n53hu00zlI5$23 z6>;NJ?FSBvL9^#RHbB9>tN{i0)Cv^bog+|i8*)IwwPyogfP%Yo1PTtAWEy)zuJ6g* zjSu(&6dW)k5o>!kP;hR1Y|%^SK1V>oz03gx_f!fL+?^v(aA&4K!QBCCQ~?F|vIZ2~ zQ!7w#Ppv?~-8ljUcjpKc+}Tf{;5Md!f@{wP3hs{ufPy>w2^8GM6i{&O*+9XyX9EQX zEEOl|`oNvpD z{!`{i8KXnEWAiW;*esZOh)J?@mmcKuxlUV>Qzlr-`Kzm_$2_nD#X{KeNH@%B zTe|TE?AaDE^!JZ%xjjTIR{X}AGy}Cw+HL5F(~>XRNVe}{FVZ3id9|Hb3$nh}dw*N9 z*P;92ypmi`x2b5@A%Q*B(8YS_{F(CCip=#jn@sQV0J08Bv;*JZoHhX;Ph*Y)w!3#c zwC9NQ5`v0SYO;p>33&YHEC12=rt+QNe$ArVi@nKLSInk8AU%I>gash0`iz#G_Va3de2L4!_d0NJ;q?koA);)XXDZ zBaCuaPd4I$vzE)@ELzt$vxU))<*qxJd*@ zS}Pg@7>)0XW|KaOcDcoUWcH=;>(j`JgPl*@ZciC9C*`gvh zQw-gGNxfSkh6K`=zy8#_ua_Hiwd!?+m6*c%nOl6Nr(xSZMAkk8v&&;qan^mK>V)&X zx5*nqMCR3$dmxQx;P|+CIJvv6etHi1WSXPuc=%qd+7 zH^IVAIGOtJ>Sf)9n&q{cYRbF2o$EvoJ0&DM z86IlrJj~wLFWBI`?LVVwHU-eeG@1Nx5EJ-8yi(6Y>b`9gyYa$&1!-42)xaY%dtNel zfWABJ`LWy|1J95)*pEa8lBSl;_>g(6?CTJD&xo#AmNUdi)`cuUn%5{l+NzG^f01Lh ziq~L}P&E*#Q?f#**r>V;S>LI4W){t?shjY5hQcN*{VqVf8+ooqQpn6rIrc zmYfUXq>lh(#~0$s%nN9otE*~8WM z{g)3Q_DyqKdk7G}xdUzlksMscR^q{FP#1tafcq6LCnSz@)LxLX($VMgHo(hv1ikOe zAMb?Bm@@B|G)K{!#CGUY*XfnY5-d}m-}U-@2Xq2J@?3MiItxyG`+-or3+56Le@Z$QjO@C(%Z{tA>d#X+m07RA&{iU0agN=g zbGCN?)w4MpZ}^Dr6!m&?6CE8T3v5On++P>Cdd!{OD4cB-xH>(99#zt9Jp1++Ya;n0 z%XnW>lpV)f^y$lRDW%|zzWI>8O}@GSwEpYeDqD#88~`9}m51ilv2R&L(2^^Q9s!xp zpdl8Z0Q}G1%Z!dpZOo#t$KV|upBlW&I7rejYeEP;fx-mV=7Qt+&^^q?%FlJ};rgKB zuu0#>t}FU~m5p{vVq8XFKyg zsrR1g_(n}rnW>5riekAuPxPopuEk|p;Q~=ET{i)t9k05-Z3YYq%y2~iKXy-+@@rOs z-4p7}-@7M~4eV?g*b@B)@WM0(r)TTF?yQKZJ4mCONcGFCyp%#78In0ssHH3Hz&;S>)9Tr8JWo1K;aiSo>ADczy}v znSY5<`jvbddRL~n6=&-hdh8Dc?Oa%{g1*9>v&5|a1A&!QOOs;gj!5~4>FQoT z&*hRM@tH~#Stg&1`2|6TqKe`LK$;P|C@SSg1Q9s$)AP4ToAf=%{@OVygWS=fTgi+u~e&BTbyt06J^iR(QQvth|uA3S!ZrYVKM(HjGCAO}4*5DET)tyCPnKS8}JC2B0gQ42yY^Y8v; zhcRKUA#Fzk{hv#h=GIBFGT2ISylBY{0u)g;9il8bu_Gp}mL7UEC78-iks5j*p)lu} zBLSvAK1+(Y_;)Os`e#&QEQ6?G9n?Q!)^;I2D@G-UGYe*1T#x)SUhRLiQ4(6F(_Vq3 z7|U2c7^I{+r-Jo^U0Hcr<$a^E(!#WC5RhvW?fm}yZ{{HFb-vaVJs*D>@q+eOod`>d zIyldFNPEFv-XVX~uJ=s7$}kzoBV|VaHBXK1e3_Hv+7Wc~vI>TbkmahftjOh3Tv8Wk zwZ2&Ue6Eq(0UaE~}X739R!DYos2%|}^S5`GS1=~aia{|Lj9bd1i9TkQFa;;y9ZoInB9 z?vKh6C$69@6w0f`h9p{6_!TEYNUQO`BlR_y1V0xwM(}3)A%w z!6m>K>_+>AP)LztV;`|RpC+9vb9Uqfg6AB-5Am9d){Xf6Y zKsWoMytb=iUXvHZdhq#E&Ud&fVeE!OuODfhZ+RPcCdO@qowZ&=H)72TP}FT2+7fJ- zy#4HLHD8^h!yMpZq%;F}YLrlqf*;uO;8lo@q?}RV&SALHtOQCOEWc7O!g7q$(c%1b zfKC1M9E;VdCGiPU*qJ`jEQqxcf64tSkem=B<}Wb675kgMI4lR3eSU&aMIPoW!eZjf zR2Xw#`iZJ?-afUNUuI=XFrlY{JWhESlQtr?pT$=>4i=#KJ3xg!@s6-bbS6sr@1QlI z-UhEy-maW=LGP#vBR-q_tsdu^6=Sr4Z*#b{*@V;jNsH%wH{eonLmRjMulGQx{(yzKEmxY~E?#GVho#iTb=9~-W6sJO@erkV z27C>G;$Sc}VNf{^A*zpPxHlLBov=S9q#|uuf6dFh z%o;413hUIf7Lh(al2T~M4XF6r^m9b|EL8g+j8q8HRb(u7a|?+)ep-=_S#4`=B9fJw zoZLR#2Za)0+Bm94_*D{p&O-&_*g{<enk^SJnRLR@U~nLpg(b{oSn$gYdgs`Gy1N zR$k5gvs*cqmfdUETl?*rc{m;}v_L)R1=Z1@IFeZX$D;9jLbY^sPwHO~ zw%NK{h)fJ#2u7?NzTS9ace5H=cvT0Rp-E5YV@K;h4Mf!>#uRPct@xi!$V-L>l3k~O z5i@^H`*;vBS5QNXp!hT;p8gB=t>pLHe|pBiRCSc*kHWUxY)3+=>1Jn zX11C+9Vu(mgn1%K(EYkw5{pNYE8!T}1JfO0MZTlldkX`K;^~EAg1Av^{5lhS2Me!| zm3#Pg3fYA%-Y}P@0}l4{2eDmx)*X7YH$|3VR@-h9OjZA;6DoEQHXVZwot^I){N)S{ zV7;6f!W-jg-ohX}Pe$DRqTFCk)%J)-n$3p(%9=h!RP$@pHxslOU(&eTS?mn zCjqrxZcm84TBG-pVeOdiZGZ9-ⅆztX`k|uKL!Q*nMfz)G87uG{uWqUDqn4 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ⅈK3J9wwS{$-0`vIG#M`&8qrY;6Wo=~&sylPEu|oQbznLkA=jo;fVtj6 z7=E6vY>Du_zV5H;29kz0xdzWXcD!cKLHO-bJg8NnsLS{g8g%pzs*gn1r=%Z1uRs#@ z+T%lGsqmcH6mDi-CuD`Qvhw{rNd~u0Go`8y)F8dx zOVD)b(!4|m2ra+H@K9tQ3F zo8zJLudKWVV)50dsbn+Rr7HkLeIbLrWv|iR^9G6ncs&Nc6-Js>1kVY=A?M>>8@`R* z><3 zqf8v?Y*@l@r5gme@(re^#1kIvGb4ep<}q%_F{+k?-MD zNby^+{|@>Bn?h6sMRWojI{Jt645nkhHK6FHE~Id!f_lRWW}azGtTk)xnm{PnsKoAH z5GaU5kMI4&sp)x}mX^U`35m0~zS+7Vllm(@ONsB{WMOZp{To>a^qd)vo(;zoF-`u# z0N8!{e=z_;@Bq!bMlO$NP0n(_`+vN5rc z6?01z(o4^FtRMRbowsCT?hiiXDe*_seT04XYBFGvz(R$u3aJ*C)lk^vpVXFit&}$D zCOb%djc@QxkZv|5xdmWvs-xlO2KTO`#W=);XIbX_Tw9xU@5wjEDHZsc-G!{XS=lo- zNJ#Es5?5xDzO))$;?`lx=R$Iqvqq5SaHGLFiW5HSDw7^9)WD-?(P7cL@k1mjARl_n zu=5O(ld^-r9Co&(Vpt#GvwPBUr=H^Z@KEnnw7-Z+;d6%bqA0IZ7TStMTkL!A0YSR!EsCYQVzk1X;w~bEtR&fU;KZ4|jFAr}%^2YT&k<5wUeWL1X1C{G zpDWwbPY|^ng-@7jDpOcsyWDzyyfBR@jAKTpzTLr*Ov|#aedDi03v@{CmaI&0>XYM@ zv_hcPo_YSU^!3y={OS^}grIha?AH)#?ooK=;BZq*x3t5jY8tTgxKXUB@EGaRNTM$B)FD!yBsJ!c{Z@orxT5>k~kpabCd3sFhZ-GY9s> z&rOq-Cy#W#2(!$)mcF(+JcMQ5&qPYjw!V>>3bWA});^Kx6v!T%_|pU;(kJcfb$IKW zZy$i1Ov1&J(GHkN$AIaieJUHrgwe?>j7#=SW`m-|o1n6td#|U{!s{eLVzdTAe!jBE z=k71csdpAbfSbge1UvJ-(fh!^u1Sx>n)wyV26tP-l1EhX1@(^{RvNxP5x=n?uJE+D zJ^%bHkgJp}PE?1k!#YoqTi#y?@cY1;C^v!klkU=cV13}~>?Sknj8Q%2@KWp68nZZ& zxS|%VHC}~+V>|6~Unsg7v$9)}nr5<%dl7N&c`Esfp6V?OonT}UO)6u4p?~DjYIpYn zxV@2w0*lX9291;W1Np~!wU`6DQx?pN*Ne+-f3k9wOBhH3MUY=bNeUx*p>{&Z0Ye=r z=2Y{Lq>vij1j*OQkK119-ag_z!F7)Ag6=Ppsyui-lUAsW;}-}uud%CTKQU08r`);! zOrg^ak+cT%xXEq=yNci2`1Vo-!M6yEESzr=3(A}VuHq2=5M@eF{abhZL)Ls`DlwJy z%Y!pFEImWo>e)|e$^R_o+cl$?Eyyz~_1X@P9Blzf`v~}_Kn32!GWnN#D zHJ&>}R|p0|JVcV*ll%t3k*ZpFONmfufSQ;G4)`Lt^HZAm*cDoXkJ)^T5#0q0l-|pZ za#vg^rbp)6OX&r3i&EfjZ?pS1R8KhVK6>D4fphgC=xpY^sY{j3Jl*(~>t|P-U-Wo0 z#rfDXAUer^)SsNgeUMlq@W2*J%K5s!(p@jvOp-^zD*0hqh4Zvm^k|GZ$j7aM znaY*#WhE%h>RT%5PM*Hh=o0~j*So%ry5z}KOtR<=f?!`{m_9Wu2YYSG68+ZHsQ1Zr zio?`MQCKi3aD|pwWx0fD>z8Vy@_pZC4w~CrHlL+NeJ=pH_n?%kvqdQ}pLaR^dPSvs z2}V->L3ZUhZVztzbY1E}nl00~qiw(I#fqmtrgQki*F5^KO<=wNFXQ)pu!ona7_z#>fmASkd3EE&9bx|&-+j;My5d@K2>k_6r*J|I+s=YT(V$U|D zA;&A?cqv`W26`Qn2Kf@lYnP|pF$>a(zq4n3n8A;Yy^Q1nhYW4vGqu+n7H+E#QRX+t zu5g{;cLN?7-m#wfp*H07fQvcYl=4gO+^jjW-}1tG?zsnNywkn}-;39-;CIf+NI-m)dh5c)_dfo&*tod`x#EZ?Op-XeZT3~wh)V7qSl)w9q!{4- zO&{_}+tQuFtR_V4zwkAlsTG3tk2T8ASzz-&srU;kArW5xxfmQes zv(pYdG~pQ>odB>&vjA4s0X4?tv^V_rX*)SjHtoii zEX|W&qWl2ZH5#xBz&sJduqVGxJYc79Jp0(&`v|M86 z`c}OA^6d!cLjpanyscy0V;)Ln!i5h{I|G;99QRN#-~3Ezc5i266*b|7nTT!qu4n($ z&}@K!hZdEU!yRE@yBmI6WwY2eZ4E2B%a@+RegU)fHT|5MWaY=EH2Zn^oc0_uo$_gS z?JTmhg^gXw_w~j7w3imi7aYh!D$Rl_$)tc~3IJ!_*e+0@tx7JEnJWO*!@q4GWe5w}tTIjnKkg&KJwX508GwU|?)bCeU zXtuhHBW_K*zdmnZYBio|&V)_to|L}kGyj(3S)^Q|XS{W0p5(Zm!UxFP6PHH-skZ-C%VWZs7z;Jr>Jvf-e^CO-S zEQ(+8#9lkuT2jAiJ`5=0Z!RO&YmOf`j$&OEu75OcTyM0LlZ=*C)^YWuYC00H+T;QT zZgELf-w-cb9hNm#avX2vBr~F;;iJNKDP0>osC#*?7g2hCA3jpWa!lrV1&rr^NX%x9 zrF*cF<+Ck}_cR^2!;WRkJmZic3M`?u#02)&-b7#~C7FeI1+KQk*Mx}pwG1MW7-j>s z5e^SrQKT~-VxM`R*gO=*eoD^jx#W}<5c&*`a>zFd!B;pZ)Afa+cTcpCg5No7rtjHi z+UNshblU~8Zcyg?aj$f0n@AEgHYLPC=qMM262yY=Hfq^Ch7(WZpJ3^9afDN~QL2;N zhi{M!;$l{Ic_2y>w&xggb-X-y#VCm0s`mQjC50uXwocm~ODO>ye{8ZcMULRue;kTO zN(+djePRKwWtt1!@MkI;;Vww23_Y$OxhaoXNb8hhF;6qedXOdshh>U|lbWF#6ce8wXcY*Q`=0eK-Pd&AxZ;p(3TwRcfs7bE zBswH#BxI!Z9siVtx+#~^tYHoqnf(;0Q8&2$Ww@)*43Or`LhQp5>s!YAA>eA`_xS1j2xn)IoRaXQI z=5-#o*;SbRa?GUoE1fEO90*i_hB_p2t(H~{=<}PUgzX~cpqordRpL(gI!S1#RT!aF!Z!TfT_l~as;d+rQoc(FFMP%<$l{Hqd9 z&~`pdMqMUY9nw7iBwZEDm#2?hAg`&!F6HhKsU@eLQ6f`^#KzgxMSMArwR`yfUMcfI z&|)v{mho+5g7gh|^K^kx$Rd)=nLimXS4`5pzet1t6NHJ=EwVCZvDP8V5ZP$RPe#kO zxOCA>8(oLKX3Du>?sUBX>R}UY;wb}?&RoI!`P`{ITb`w_K$`86r^{$-iVVkaG?U9i zH70W(X+5Ztef3-BB39NWG=4JDhz}3wh5ENye{cz(3CefO%Q@v|<~ora_T^G-Gl=Ze z)$%xva#lgYa*(st+C0{(#^%0*9CW3$V>47^qRVR(kQxZ{*^)(!U%f1;!SZI&D&Sm> ze>Ny_9!w#sD?n!Fo1Wx4p6v9{7kdAD2nrA8L~k;hDwpTqTVREwOBj|IkCZko%JN_l zC4`7`auGzV%7CA?iU9G*!hBp(fsb^352rfJT2_OO!AZlp-Uy}x}};jPSOhw6x&q>iG()G1j(Z* z*=Kj`AjSp1V$}i7ST=pDb(f5_Skb|9aG0@yjRA^nv5pEGN7V2awXD|uAV!rL8~6J6 z6Q6kLCex@9G`p66+i0H!v_UZP^=kGM-#Wh*WIULKAFfmKv|GX^%6fLFAHkZ6CcQuA z<@4St2q|?*v(G(2_RdR1`8+*s3U3n6OAStZPIz8Kvvb$%`Q6VTYoko(&^&>6dT>Fy5<9_cVdJbBmZ^m$G;Xi*O-Bexew zxo>CIvYg@GBxa{jSf=XG5=OdDme>&pvvDT?uaw;EUQ|Z%Eg(>@srocKl6WzTsKI

n9>E-W+ghJ>fQH1f z%uRs_&eY^kR6S$tqkj1Y8p8gFSD+a_vTw480ey`vrPQ3JMS{u*O(qMbk`ARo2a>bK z;!gsgu>ZEohe5ZNGNAK-59LZz*EvEVJ3fT|%Nkt`#4nDi$^ugl#=iqg;Bn9{t9Q>* zVDn~E6{|>x2;rVhK4E1)>w_%#8@l F{{k5?#?Jr% literal 0 HcmV?d00001 diff --git a/6.15.0/img/carat.png b/6.15.0/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.15.0/img/dash.png b/6.15.0/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.15.0/index.html b/6.15.0/index.html new file mode 100644 index 0000000000..e0cb065b85 --- /dev/null +++ b/6.15.0/index.html @@ -0,0 +1,498 @@ + + + + Braintree Reference + + + + + + + + + + + + + + + +

+

+ + Braintree 6.15.0 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.

+ +

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 14.3+ and Swift 5.8+.

+

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. Run pod install + +
      +
    • There is a known M1 mac issue with CocoaPods. See this solution to resolve ffi dependency issues.
    • +
  2. +
  3. Resolve the Swift Package Manager packages if needed: File > Packages > Resolve Package Versions or by running swift package resolve in Terminal
  4. +
  5. Open Braintree.xcworkspace in Xcode
  6. +
  7. Select the Demo scheme, and then run
  8. +
+ +

Xcode 14+ 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.15.0/js/jazzy.js b/6.15.0/js/jazzy.js new file mode 100755 index 0000000000..198441660c --- /dev/null +++ b/6.15.0/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.15.0/js/jazzy.search.js b/6.15.0/js/jazzy.search.js new file mode 100644 index 0000000000..359cdbb8b2 --- /dev/null +++ b/6.15.0/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.15.0/js/jquery.min.js b/6.15.0/js/jquery.min.js new file mode 100644 index 0000000000..7f37b5d991 --- /dev/null +++ b/6.15.0/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.15.0/js/typeahead.jquery.js b/6.15.0/js/typeahead.jquery.js new file mode 100644 index 0000000000..3a2d2ab031 --- /dev/null +++ b/6.15.0/js/typeahead.jquery.js @@ -0,0 +1,1694 @@ +/*! + * typeahead.js 1.3.1 + * https://github.com/corejavascript/typeahead.js + * Copyright 2013-2020 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", + 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.15.0/search.json b/6.15.0/search.json new file mode 100644 index 0000000000..d0c5ab8a1e --- /dev/null +++ b/6.15.0/search.json @@ -0,0 +1 @@ +{"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"},"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/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:15BraintreePayPal05BTPayC5ErrorO10invalidURLyA2CmF":{"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: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: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/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/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: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/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/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/BTClientTokenError.html":{"name":"BTClientTokenError","abstract":"\u003cp\u003eError codes associated with a client token.\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"},"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)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":"BTPayPalVaultRequest"},"Classes/BTPayPalVaultRequest.html#/c:@M@BraintreePayPal@objc(cs)BTPayPalVaultRequest(im)initWithOfferCredit:":{"name":"init(offerCredit:)","abstract":"\u003cp\u003eInitializes a PayPal Native Vault request\u003c/p\u003e","parent_name":"BTPayPalVaultRequest"},"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)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(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)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(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":"BTPayPalNativeCheckoutRequest"},"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/BTClientToken.html#/c:@M@BraintreeCore@objc(cs)BTClientToken(im)encodeWithCoder:":{"name":"encode(with:)","parent_name":"BTClientToken"},"Classes/BTClientToken.html#/c:@M@BraintreeCore@objc(cs)BTClientToken(im)initWithCoder:":{"name":"init(coder:)","parent_name":"BTClientToken"},"Classes/BTClientToken.html#/c:@M@BraintreeCore@objc(cs)BTClientToken(im)copyWithZone:":{"name":"copy(with:)","parent_name":"BTClientToken"},"Classes/BTClientToken.html#/c:@M@BraintreeCore@objc(cs)BTClientToken(im)isEqual:":{"name":"isEqual(_:)","parent_name":"BTClientToken"},"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#/c:@M@BraintreeCore@objc(cs)BTAPIClient(py)tokenizationKey":{"name":"tokenizationKey","abstract":"\u003cp\u003eThe tokenization key used to authorize the APIClient\u003c/p\u003e","parent_name":"BTAPIClient"},"Classes/BTAPIClient.html#/c:@M@BraintreeCore@objc(cs)BTAPIClient(py)clientToken":{"name":"clientToken","abstract":"\u003cp\u003eThe client token 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/BTClientToken.html":{"name":"BTClientToken","abstract":"\u003cp\u003eAn authorization string used to initialize the Braintree SDK\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/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.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"}} \ No newline at end of file diff --git a/6.15.0/undocumented.json b/6.15.0/undocumented.json new file mode 100644 index 0000000000..d7d84e6967 --- /dev/null +++ b/6.15.0/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 b033f869bf..32a4522f9e 120000 --- a/current +++ b/current @@ -1 +1 @@ -6.14.0 \ No newline at end of file +6.15.0 \ No newline at end of file